[gst-devel] scale-renegotiation

David Schleef ds at schleef.org
Fri Nov 7 11:50:29 CET 2003


On Fri, Nov 07, 2003 at 03:55:09PM +0100, Ronald Bultje wrote:
> When the window is resized (e.g. widget resize, toplevel window resize
> via the window manager, etc.), an XEvent will be queued in the x socket
> connection and it can be read by ximagesink. We assume that ximagesink
> reads from this queue at the *end* of the chain function (this is
> important!). When such an event comes in, it will send a GstEvent into
> the pipeline with the "wanted" new caps (not size!).

This is silly.  Just call gst_pad_try_set_caps() with the new size.
If the new caps negotiation succeeds, good, you will now be getting
a stream with the new size.  (If it fails, I think you need to recall
gst_pad_try_set_caps() with the old size.)

Back in the 0.6 days, I had this working with videotestsrc ! xvideosink.
However, I never checked it in, since we were in a freeze, and
subsequently lost the patch.



dave...





More information about the gstreamer-devel mailing list