GNOME Bugzilla – Bug 750989
Pipeline with aacparse fails to play stream
Last modified: 2018-11-03 15:00:58 UTC
I've got a live stream here that plays fine in FFplay/MPV but fails to play in GStreamer if aacparse is present. Recording: http://pkgbuild.com/~heftig/foob.flv (Created via rtmpsrc ! filesink) Failing pipeline: GST_DEBUG='*:WARNING,aacparse:LOG' gst-launch-1.0 filesrc location='foob.flv' ! flvdemux name=demux multiqueue name=mq demux.video ! mq.sink_0 demux.audio ! mq.sink_1 mq.src_0 ! h264parse ! avdec_h264 ! queue ! videoconvert ! xvimagesink mq.src_1 ! aacparse ! faad ! queue ! audioconvert ! pulsesink Working pipeline (aacparse removed): GST_DEBUG='*:WARNING,aacparse:LOG' gst-launch-1.0 filesrc location='foob.flv' ! flvdemux name=demux multiqueue name=mq demux.video ! mq.sink_0 demux.audio ! mq.sink_1 mq.src_0 ! h264parse ! avdec_h264 ! queue ! videoconvert ! xvimagesink mq.src_1 ! faad ! queue ! audioconvert ! pulsesink The only interesting debug message seems to be 0:00:00.021212666 14233 0x7f91cc003000 DEBUG aacparse gstaacparse.c:290:gst_aac_parse_sink_setcaps:<aacparse0> setcaps: audio/mpeg, mpegversion=(int)4, framed=(boolean)true, stream-format=(string)raw, rate=(int)44100, channel s=(int)2 It reports the caps with channels=(int)2, even though the stream is mono.
playbin (gst-play-1.0) uses aacparse. Interesting messages: 0:00:00.032975401 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.032983104 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:814:gst_aac_parse_detect_stream:<aacparse0> Found signature at offset 65 0:00:00.032994572 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.033001060 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:814:gst_aac_parse_detect_stream:<aacparse0> Found signature at offset 0 0:00:00.033013373 17770 0x7fbcec003a80 INFO aacparse gstaacparse.c:837:gst_aac_parse_detect_stream: ADTS ID: 0, framesize: 283 0:00:00.033021889 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:843:gst_aac_parse_detect_stream:<aacparse0> impossible ADTS configuration 0:00:00.041334719 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.041991342 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:806:gst_aac_parse_detect_stream:<aacparse0> Not enough data to check 0:00:00.042003453 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.042009998 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:806:gst_aac_parse_detect_stream:<aacparse0> Not enough data to check 0:00:00.042026490 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.042032241 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:806:gst_aac_parse_detect_stream:<aacparse0> Not enough data to check 0:00:00.042039600 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:799:gst_aac_parse_detect_stream:<aacparse0> Parsing header data 0:00:00.042045483 17770 0x7fbcec003a80 DEBUG aacparse gstaacparse.c:806:gst_aac_parse_detect_stream:<aacparse0> Not enough data to check 0:00:00.042055454 17770 0x7fbcec003a80 WARN baseparse gstbaseparse.c:1155:gst_base_parse_sink_event_default:<aacparse0> error: No valid frames found before end of stream
I guess the file is corrupted.. flvmeta -C ../foob.flv 0x0000000d: error E70046: invalid onMetaData data type: 3, should be an associative array (8) 0x000b6e2c: fatal F20016: tag body length (868 bytes) exceeds file size 2 error(s), 0 warning(s) And while parsing the file in flvdemux, get the below errors 0:00:02.061978468 9657 0xb4c03320 DEBUG flvdemux gstflvdemux.c:2488:gst_flv_demux_get_metadata:<flvdemux0> last tag size: 2276612558 0:00:02.061995916 9657 0xb4c03320 WARN flvdemux gstflvdemux.c:2230:gst_flv_demux_pull_range:<flvdemux0> failed when pulling 12 bytes from offset 18446744071433688622: eos
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/192.