[Armadillo:09167] Re: Armadillo800EVAでの音声ストリーミング再生がすぐに止まります
nakai
email@hidden
2013年 9月 4日 (水) 13:37:37 JST
中井です。
少し調査していましたが、aplayで--buffer-sizeや
--buffer-timeなどを設定したとしても、
正しく該当パラメータが変更されていないようでした。
(aplayに-vオプションをつけると、設定されるパラメータが参照可能です)
そこでaplayではなく、gstreamerを使用するとうまくいったりしないでしょうか?
アンダーランが発生するような状況の場合に、
次のようにすると若干改善するようです。
cat sample.wav | gst-launch fdsrc fd=0 ! wavparse ! alsasink latency-time=20000 buffer-time=400000
parec --device="bt device name" | gst-launch fdsrc fd=0 ! wavparse ! alsasink latency-time=20000 buffer-time=400000
※ wavparseでよいのか分かりません。
pulsesrcを利用する方がよいかもしれません。
gst-launch pulsesrc device=DEVICE ! audioconvert ! audioresample ! alsasink latency-time=20000 buffer-time=400000
(2013年08月29日 14:53), Takeshi Inoue wrote:
>> --buffer-time=2000000 や -buffer-size=20
>
> --buffer-size=20は不適切でした。
> 中村さんのコメントも合わせて、 --buffer-size=65536 --period-size=2048 など
> 試してみましたが、状況は特に変わらず、途中でエラー終了します。
>
> 井上
>
> 2013年8月29日 14:14 Takeshi Inoue <email@hidden>:
>> nakaiさん、コメントありがとうございます。
>>
>> --buffer-time=2000000 や -buffer-size=20
>> などを試してみましたが、音が止まる状況は変わりません。
>> (ただし、buffer-sizeを指定すると、実行開始から継続して
>> underrun!!!の表示は出ます)。
>>
>> そもそも、--buffer-time=2000000 をすると
>> aplayで2秒分バッファリングしてから再生開始という
>> 動作を期待できると思うんですが、コマンド実行後
>> 即再生が始まります。
>>
>> なお、-start-time=1000000 なども試してみましたが
>> カーネルパニックして以下の様なログが出ました。
>> SH4周りも絡んでるとなると厳しいですね…
>>
armadillo メーリングリストの案内