[gst-devel] FLV demuxing and decoding

Michael Smith msmith at xiph.org
Wed Jan 7 19:34:18 CET 2009


On Wed, Jan 7, 2009 at 3:06 AM, Darren Staples <dstaples at friendmts.co.uk> wrote:
> Hi again,
>
> As an experiment I've been trying to get flash video (.flv) files to play in
> an x-window.
> I can get a video-test signal to display using: "gst-launch-0.10
> videotestsrc ! Ximagesink", so I know the basic infra-structure is working
> :)
>
> As for getting .flv files to play I've tried variations on: "gst-launch-0.10
> filesrc location=file.flv ! flv_demux ! ffdec_flv ! ximagesink".
> But I keep getting an internal data stream error at the flvdemux element.

The suggestions from other people to use decodebin or decodebin2
rather than manually selecting demuxers/decoders are good - you should
do that.

That's not what's causing the problem here though. ximagesink can only
display RGB image data, and most (almost all) video decoders output
some form of YUV data. So, you need to either use a sink that can
directly handle YUV data (like xvimagesink - this is recommended if
you can use it), or you need to convert. The 'ffmpegcolorspace'
element can do this conversion.

For some videos, you'll also need 'videoscale' if you're using
ximagesink, because ximagesink can only display square pixels, and
some videos have non-square pixels.

Mike




More information about the gstreamer-devel mailing list