Forcing Caps renegotiation.

Stirling Westrup swestrup at gmail.com
Mon Jan 21 10:46:44 PST 2013


Right now I am working with using ximagesrc in my application rather
than a file source, which has been working fine. However I'm running
into problems with incompletely negotiated caps.

Right now I set up my pipeline and go into PAUSED state, at which
point I read the caps out of the end of the video processing pipeline
to determine what the final output form will be (as there are possible
rotations and rescalings in the processing).

Up to this point, gst_pad_query_caps has always returned me a set of
fixed caps I could use. Now instead, I'm getting this:

video/x-raw, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)25/1, format=(string)BGRx, width=(int)1920,
height=(int)1080; video/x-raw, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)25/1, width=(int)1920, height=(int)1080,
format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR,
RGBA, BGRA, ARGB, ABGR, RGB, BGR, YVYU, Y444 }

Clearly this is a pair of compatible structures, but for some reason
the negotiation didn't complete and it hasn't collapsed into a set of
fixed caps.

Is there something I can do at this point to trigger a renegotiation
so as to ensure I have fixed caps? Failing that, does anyone have any
suggestions as to how to determine WHY the caps negotiation is
incomplete?



--
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup


More information about the gstreamer-devel mailing list