teltek / gst-plugin-ndi

GStreamer NDI Plugin for Linux
GNU Lesser General Public License v2.1
154 stars 27 forks source link

Random Crashing, Audio Only #104

Closed triggerfinger-debug closed 2 years ago

triggerfinger-debug commented 2 years ago

Hello, I have been facing an issue with audio only streaming and was hoping someone could guide me in figuring out why this might be. I am trying on various ARM dev kits. (Radxa and Raspberry Pi)

The pipeline will always crash my whole system regardless which device. Sometimes after only a few minutes, and sometimes after a few hours.

rock     pts/1        10.0.1.142       Fri Jun 24 09:47   still logged in
rock     pts/0        10.0.1.142       Fri Jun 24 09:45   still logged in
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00   still running
rock     pts/1        10.0.1.142       Fri Jun 24 09:32 - crash (-19167+13:32)
rock     pts/0        10.0.1.142       Fri Jun 24 09:17 - crash (-19167+13:17)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00   still running
rock     pts/1        tmux(2122).%0    Fri Jun 24 09:15 - crash (-19167+13:15)
rock     pts/0        10.0.1.142       Fri Jun 24 09:15 - crash (-19167+13:15)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00   still running
rock     pts/0        10.0.1.142       Thu Jun 23 17:17 - 21:25  (04:07)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00 - 21:25 (19167+01:25)
rock     pts/0        tmux(2003).%3    Thu Jun 23 16:16 - crash (-19166+20:16)
rock     pts/4        tmux(2003).%2    Thu Jun 23 14:38 - crash (-19166+18:38)
rock     pts/3        192.168.12.1     Thu Jun 23 14:38 - crash (-19166+18:38)
rock     pts/2        tmux(2003).%1    Thu Jun 23 14:34 - crash (-19166+18:34)
rock     pts/1        tmux(2003).%0    Thu Jun 23 14:31 - crash (-19166+18:31)
rock     pts/0        10.0.1.142       Thu Jun 23 14:31 - 14:54  (00:23)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00 - 21:25 (19167+01:25)
rock     pts/4        192.168.12.1     Thu Jun 23 14:08 - crash (-19166+18:08)
rock     pts/3        tmux(2007).%2    Thu Jun 23 13:50 - crash (-19166+17:50)
rock     pts/2        tmux(2007).%1    Thu Jun 23 13:47 - crash (-19166+17:47)
rock     pts/0        192.168.12.1     Thu Jun 23 13:47 - crash (-19166+17:47)
rock     pts/1        tmux(2007).%0    Thu Jun 23 13:45 - crash (-19166+17:45)
rock     pts/0        192.168.12.1     Thu Jun 23 13:45 - 13:46  (00:00)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00 - 21:25 (19167+01:25)
rock     pts/0        10.0.1.171       Thu Jun 23 13:44 - 13:44  (00:00)
reboot   system boot  5.10.69-11-amlog Wed Dec 31 19:00 - 13:44 (19166+17:44)
rock     pts/0        192.168.12.1     Thu Jun 23 13:04 - crash (-19166+17:04)
rock     pts/0        10.0.1.142       Thu Jun 23 11:48 - 12:29  (00:40)

For example:

$ gst-launch-1.0 -v alsasrc device=hw:1,0 ! audioconvert ! ndisink ndi-name=pi sync=false
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSrcClock
/GstPipeline:pipeline0/GstAlsaSrc:alsasrc0: actual-buffer-time = 200000
/GstPipeline:pipeline0/GstAlsaSrc:alsasrc0: actual-latency-time = 10000
Redistribute latency...
/GstPipeline:pipeline0/GstAlsaSrc:alsasrc0.GstPad:src: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = audio/x-raw, rate=(int)44100, format=(string)F32LE, channels=(int)1, layout=(string)interleaved
/GstPipeline:pipeline0/NdiSink:ndisink0.GstPad:sink: caps = audio/x-raw, rate=(int)44100, format=(string)F32LE, channels=(int)1, layout=(string)interleaved
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1
Redistribute latency...
0:05:43.4 / 99:99:99.

crash

I have had the best luck with setting alsasrc property "provide-clock=false". That once, I was able to stream for nearly 9 hours before thinking that was the fix. But no. The problem is still present.

How can I debug this?

triggerfinger-debug commented 2 years ago

I am closing this issue because it seems to be unrelated to ndi plugin.

Note: Apparently decreasing CPU frequency fixed any problems I had with alsasrc.