[Armadillo:09169] Re: Armadillo800EVAでの音声ストリーミング再生がすぐに止まります

Takeshi Inoue email@hidden
2013年 9月 4日 (水) 15:48:19 JST


中井さんありがとうございます。

gstreamer経由ですと

gst-launch -v pulsesrc device=bluez_source.XXXX !
audio/x-raw-int,channels=2,width=16 ! alsasink

などのコマンドで一瞬なる程度で、parec + aplay に比べるとbuffer-size指定以前に
不安定な状況です。
(ソースにaudiotestsrc指定時は正常)
latency-time,buffer-timeを追加すると、確かにオプションは効いているようですが
全く音が鳴らなくなりました。pulsesinkもダメです。

>aplayで--buffer-sizeや
>--buffer-timeなどを設定したとしても、
>正しく該当パラメータが変更されていないようでした。

-vをつけて確認してみましたが、aplay file.wav の形ですと、buffer-size(maxは32768の模様),period-sizeともに
指定値が反映されているのですが、parec | aplay とパイプでつなげたときは
オプション設定は無視されるようです。

時間をみつけて、aplay.cを見てみます。

井上

2013年9月4日 13:37 nakai <email@hidden>:
> 中井です。
>
> 少し調査していましたが、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 mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo



armadillo メーリングリストの案内