flv demux failures on YouTube 240p FLV audio tracks

Dave Milici davemilici at sbcglobal.net
Tue May 21 22:25:31 PDT 2013


I have a followup finding and question after experimenting with a playbin2 example with both video-sink and audio-sink components.

Modifying some of the gstreamer custom playbin examples, I found that if I explicitly add an "ffdec_mp3" element to custom "audio-sink" bin, I can get audio and video streams to play.

What I'm confused about is whether adding a decoder element to a head of a "sink" bin is the appropriate thing to do in this case. Is that expected protocol?

Wouldn't it be more logical to add the decoder element to the "src" pad of the flv demuxer? Is there an example of fixing up incomplete demuxer connections?

Thanks for any pointers.

--DaveM


--- On Mon, 5/20/13, Dave Milici <davemilici at sbcglobal.net> wrote:

> From: Dave Milici <davemilici at sbcglobal.net>
> Subject: flv demux failures on YouTube 240p FLV audio tracks
> To: gstreamer-devel at lists.freedesktop.org
> Date: Monday, May 20, 2013, 7:52 AM
> Hi all--
> 
> I've been using gstreamer 0.10 stack with QT 4.8.4 on ARM
> embedded device, and encounter a problem with demuxer on
> YouTube 240p FLV audio tracks.
> 
> Attached is log session with GST_DEBUG set for flvdemux
> element. (Snippey below.)
> 
> We have to use the smallest size videos YouTube serves up
> with "low" quality tag (itag = 5). These videos are 426x240
> FLV with 22KHz MP3 audio track.
> 
> When playing downloaded copies of these FLVs, the audio
> track is decoded OK with other libav playback methods, or
> with audio-only gstreamer pipeline.
> 
> gstreamer 0.10.36
> gst-plugins-base 0.10.36
> gst-plugins-good 0.10.31
> gst-ffmpeg-0.10.13
> 
> Is the flv demuxer component good to go with YouTube FLVs?
> Is there an ffmpeg component which needs to be added to
> pipeline for MP3 decoding?
> 
> --DaveM
> 
> 
> 0:00:01.177995133 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:1129:gst_flv_demux_video_negotiate:<'':video>
> fps to be used on caps 23.976087 (as a fraction =
> 3417000/142517)
> 0:00:01.179577619 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:1156:gst_flv_demux_video_negotiate:<'':video>
> successfully negotiated caps video/x-flash-video,
> pixel-aspect-ratio=(fraction)1/1, width=(int)426,
> height=(int)240, framerate=(fraction)3417000/142517
> 0:00:01.180605005 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:1257:gst_flv_demux_parse_tag_video:<flvdemux0>
> created video pad with caps video/x-flash-video,
> pixel-aspect-ratio=(fraction)1/1, width=(int)426,
> height=(int)240, framerate=(fraction)3417000/142517
> 0:00:01.670504592 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:752:gst_flv_demux_push_tags:<flvdemux0>
> Waiting for audio stream pad to come up before we can push
> tags
> 0:00:01.671758356 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:1385:gst_flv_demux_parse_tag_video:<flvdemux0>
> pushing newsegment from 0:00:00.000000000 to
> 99:99:99.999999999
> 0:00:01.674638162 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:735:gst_flv_demux_audio_negotiate:<'':audio>
> successfully negotiated caps audio/mpeg, mpegversion=(int)1,
> layer=(int)3, parsed=(boolean)true, rate=(int)22050,
> channels=(int)2
> 0:00:01.675454406 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:887:gst_flv_demux_parse_tag_audio:<flvdemux0>
> created audio pad with caps audio/mpeg, mpegversion=(int)1,
> layer=(int)3, parsed=(boolean)true, rate=(int)22050,
> channels=(int)2
> shm_open() failed: No such file or directory
> 0:00:01.903369789 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:910:gst_flv_demux_parse_tag_audio:<flvdemux0>
> emitting no more pads
> 0:00:01.904342878 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:762:gst_flv_demux_push_tags:<flvdemux0>
> pushing tags out taglist, duration=(guint64)142517000000,
> video-codec=(string)"Sorenson\ Spark\ Video",
> audio-codec=(string)"MPEG-1\ Layer\ 3\ \(MP3\)";
> 0:00:01.905969118 20935   0x157888
> DEBUG           
>    flvdemux
> gstflvdemux.c:1018:gst_flv_demux_parse_tag_audio:<flvdemux0>
> pushing pre-generated newsegment event
> 0:00:01.909721426 20935   0x1898a0
> DEBUG           
>    flvdemux
> gstflvdemux.c:2994:gst_flv_demux_query:<flvdemux0:audio>
> duration query, replying 0:02:22.681000000
> shm_open() failed: No such file or directory
> 0:00:01.942318882 20935   0x1898a0
> DEBUG           
>    flvdemux
> gstflvdemux.c:2988:gst_flv_demux_query:<flvdemux0>
> duration query only supported for time format
> 0:00:02.118523899 20935   0x157888 WARN 
>               flvdemux
> gstflvdemux.c:1063:gst_flv_demux_parse_tag_audio:<flvdemux0>
> failed pushing a 210 bytes audio buffer: not-linked
> 0:00:02.271207434 20935   0x157888 WARN 
>               flvdemux
> gstflvdemux.c:1063:gst_flv_demux_parse_tag_audio:<flvdemux0>
> failed pushing a 210 bytes audio buffer: not-linked
> 0:00:02.272537957 20935   0x157888 WARN 
>               flvdemux
> gstflvdemux.c:1063:gst_flv_demux_parse_tag_audio:<flvdemux0>
> failed pushing a 210 bytes audio buffer: not-linked
> 0:00:02.406257604 20935   0x157888 WARN 
>               flvdemux
> gstflvdemux.c:1063:gst_flv_demux_parse_tag_audio:<flvdemux0>
> failed pushing a 210 bytes audio buffer: not-linked
> 0:00:02.407601019 20935   0x157888 WARN 
>               flvdemux
> gstflvdemux.c:1063:gst_flv_demux_parse_tag_audio:<flvdemux0>
> failed pushing a 210 bytes audio buffer: not-linked
> 0
> 
> 
> -----Inline Attachment Follows-----
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> 


More information about the gstreamer-devel mailing list