Поток Gstreamer остановлен автоматически - PullRequest
0 голосов
/ 06 марта 2019

Я использую аудиопроигрыватель, используя gstreamer API, работающий на Yocto.

, когда я воспроизводил URL-адрес потокового радио, он всегда останавливался через 2 часа 3 минуты, но я не установил тайм-аут для потокового воспроизведения.

Мои элементы конвейера имеют следующий вид:

gst_element_factory_make("uridecodebin","src");
gst_element_factory_make ("mpegaudioparse", "mpegaudioparse");
gst_element_factory_make ("avdec_mp3", "avdec_mp3");
gst_element_factory_make ("audioconvert", "audioconvert");
gst_element_factory_make ("autoaudiosink", "audio-output");

Через 2 часа 3 минуты мой слушатель конвейера получил GST_MESSAGE_ERROR, затем потоковая передача остановилась.

Internal data stream error.

ИтакЯ протестировал его с помощью команды gst-launch-1.0.

gst-launch-1.0 souphttpsrc location="http://ibabyradio-hichannel.cdn.hinet.net/live/pool/hich-ra000072/ra-hls/index.m3u8?token1=ymbOb0Q0Ryh7bFen9QWjJQ&token2=0T958wh7JBArVdmZsT70Og&expire1=1551838975&expire2=1551846175" ! hlsdemux ! decodebin ! audioconvert ! autoaudiosink

Он также автоматически завершился через 2 часа 3 минуты.

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock
Execution ended after 2:03:44.008588520
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

Я не знаю, почему потоковое вещание всегда прекращалосьчерез 2 часа 3 мин.Как заставить радиопоток воспроизводиться бесконечно?

...