Troubleshooting gst-launch freezes/hangs - how?

Graham Leggett minfrin at sharp.fm
Tue Aug 4 16:41:11 PDT 2015


On 05 Aug 2015, at 1:13 AM, Thiago Santos <thiagoss at osg.samsung.com> wrote:

>> Alas, that’s generating about 3MB of logs every second. It’s a Pi, there is very little space available.
> Did you try running on a desktop to reproduce the issue? It should make debugging much easier.

The pipeline uses the native GPU encoder/decoders of the omx interface in the Pi, so running the pipeline elsewhere isn’t practical.

>> I am fairly sure what is causing the freeze - every time the freeze happens dvblast has reported discontinuities in the stream. What I can’t seem to work out is which part of the pipeline is dying. No warnings, no errors, the only way I know it’s frozen is there is no more hls fragments being created.
> That's a possibility, getting a GST_DEBUG log of the part of this failure could help. A trace of all threads of the application could show if they are blocked in some deadlock condition.

The trouble is the discontinuity seems to happen once a day-ish at a pretty much random time, so triggering the failure predictably is difficult.

Are there any elements on the following line that are known to crash/hang should it encounter a discontinuity?

gst-launch-1.0 -v udpsrc port=5004 multicast-group=239.255.1.31 "caps=application/x-rtp,media=(string)video,clock-rate=(int)90000" ! rtpbin ! rtpmp2tdepay ! tsparse ! tsdemux name=demux ! queue ! mpegvideoparse ! omxmpeg2videodec ! queue ! videoscale ! video/x-raw,width=384,height=256 ! videorate ! omxh264enc target-bitrate=500000 control-rate=variable inline-header=true periodicty-idr=25 ! queue ! mpegtsmux name=mux ! hlssink location=/var/www/stream/segment2%05d.ts playlist-location=/var/www/stream/output2.m3u8 playlist-root=http://192.168.225.3/stream/ target-duration=1 demux. ! queue ! mpegaudioparse ! mpg123audiodec ! audiorate ! voaacenc ! aacparse ! queue ! mux.

I did read that some encoders can’t handle discontinuities, and recommended adding the videorate and audiorate elements to work around this problem. Hasn’t working in this case though.

Regards,
Graham
—



More information about the gstreamer-devel mailing list