[gst-devel] divxenc testing

Ronald Bultje R.S.Bultje at pharm.uu.nl
Wed May 7 02:46:01 CEST 2003

Hey Thomas,

On Wed, 2003-05-07 at 11:25, Thomas Vander Stichele wrote:
> > Do the first, that's (long-term) the best solution. There's some minor
> > nitpicking to do there (xvid is also mpeg-4, so divx5 and xvid are
> > essentially interchangeable - however, you'd rather want to use divxdec
> > for divx decoding and xviddec for xvid decoding, so we need to find some
> > cluefull way of implementing this). That's not for now, though.
> How about "flavour=xvid" ? :)

Well, that wouldn't really apply, I think, since divx would say
'flavour=divx' in its caps, and they wouldn't match (or do they?) for
something like spider - that's one of our main concerns here: make sure
it "just works", I don't care how. What it should do is first try to use
the preferred caps and fallback to 'any' mpeg4 decoder if that fails.

My first idea was to let each mpeg4-compatible element (example: avimux
decoding a divx/mp3 video) try to use two capses, the first one being
the type-specific caps (video/divx) and try to set set using
gst_pad_try_set_caps(). If that fails, use a fallback caps of video/mpeg
with mpegversion=4 (and systemstream=false) as properties, and try to do
capsnego using that. Other mpeg4 elements would then pick that up using
the second (fallback) caps for mpeg4 in their template. This would work
with the autoplugger too. This is a bit ugly, though, and requires some
active negotiation in the elements, which we probably want to prevent
because it's extra work.

Anyone got better ideas?


More information about the gstreamer-devel mailing list