[gst-devel] caps nego

David Schleef ds at schleef.org
Fri Jul 16 12:02:24 CEST 2004


On Fri, Jul 16, 2004 at 10:18:28AM +0200, Wim Taymans wrote:
> First I want to know what specific use cases the current system solves
> that are really hard, please provide something concrete. Dave?

There are basically two features that are different, bidirectional
negotiation and ability for the application to optimize formats
globally.

Bidirectional negotiation is used for resizing output windows:

    ... ! videoscale ! ximagesink

or handling reconnection:

    ... ! audioconvert ! identity ! fakesink

    to

    ... ! audioconvert ! identity ! osssink

Bidirectional negotiation is a must-have feature.

Applications can choose a format in

   videotestsrc ! xvimagesink

by connecting to the fixate signal on either pad.  During negotiation,
the core determines which formats are possible and fires the signal.
The application can narrow down that set of caps according to its
preferences, and return the narrowed caps (or a fixed caps).
Obviously, this system is a bit heavy on the application, but it gets
the job done.



dave...





More information about the gstreamer-devel mailing list