GNOME Bugzilla – Bug 659723
Rendering hangs at playing variant m3u8 playlist
Last modified: 2013-06-12 06:22:02 UTC
You get a hang at ~9s with this pipeline: [1] gst-launch souphttpsrc location=http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8 ! hlsdemux ! mpegtsdemux ! h264parse ! ffdec_h264 ! xvimagesink (using tsdemux here doesn't help. Same results) What's odd is that you can manually play from the first playlist file in that top level bipbopall.m3u8 variant playlist without it hanging: [2] gst-launch souphttpsrc location=http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8 ! hlsdemux ! mpegtsdemux ! h264parse ! ffdec_h264 ! xvimagesink You can also play from the other three playlist files pointed to from bipbopall.m3u8 with no hangs at all: gear2/prog_index.m3u8 gear3/prog_index.m3u8 gear4/prog_index.m3u8 Here are the relevant sections of the above mentioned playlist files: This is bipbopall.m3u8, the top level playlist: #EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=200000 gear1/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=311111 gear2/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=484444 gear3/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=737777 gear4/prog_index.m3u8 This is prog_index.m3u8 for gear1 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10, no desc fileSequence0.ts #EXTINF:10, no desc fileSequence1.ts ... This is prog_index.m3u8 for gear2 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10, no desc fileSequence0.ts #EXTINF:10, no desc fileSequence1.ts ... This is prog_index.m3u8 for gear3 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10, no desc fileSequence0.ts #EXTINF:10, no desc fileSequence1.ts .... This is prog_index.m3u8 for gear4 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10, no desc fileSequence0.ts #EXTINF:10, no desc fileSequence1.ts .... My gut feeling says this is a problem in the hls demuxer but I have yet to confirm whether this is the case. Maybe its worth mentioning that this bug was originally observed on a pandaboard with a diferent, omx/v4l2, decoding/rendering stage. I'm attaching *:4 logs for [1] (m3u8_full.log) and (m3u8_prog1.log). These logs were obtained with an uninstalled setup based on a gst- checkout from yesterday.
Created attachment 197162 [details] Logs for [1]
Created attachment 197163 [details] Logs for [2]
Hi with playbin2 uri="http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8", at around 9 sec I got: ** (gst-launch-0.10:26490): CRITICAL **: gst_adapter_take_buffer: assertion `nbytes > 0' failed Program received signal SIGSEGV, Segmentation fault.
+ Trace 229741
Thread 3024092016 (LWP 26501)
It works properly with tsdemux. tsdmux is now autopluged instead of mpegtsdemux in master, and as mpegtsdemux will not be maintained anymore, I think we should close as obsolete unless anyone have any reason not to.
Works fine with current master. Closing as obsolete (as per confirmation in above comment).