[gst-devel] Re: [gst-cvs] dolphy gstreamer: gstreamer/ gstreamer/gst/

in7y118 at public.uni-hamburg.de in7y118 at public.uni-hamburg.de
Wed Feb 18 06:49:19 CET 2004


You've fixed the other stuff that might happen if you let functions from the 
outside trigger renego?
Like you're element not being in the right state (What's the minimum state for 
caps nego btw?) or whatever?

And this goes to everyone (probably including me): If you are not absolutely 
sure why a g_return_if_fail or a g_assert was put somewhere and that the 
reason for putting it there is wrong, don't remove it. Ask the one that put it 
there. 
At least I use these functions heavily to guard the code I write against 
disallowed behaviour. (I try to put comments on why I put those lines there, 
too.)

Benjamin


Quoting Julien MOUTTE <julien at moutte.net>:

> 
> > I don't like this change.  The reason this is a g_return_if_fail() is
> > because it indicates a bug.  Either a bug in an element, or a legitimate
> > but complex pipeline that is showing bugs in negotiation, but still a
> > bug.  Why was this disabled?
> > 
> 
> I have implemented caps renegotiation on expose in ximagesink. Because
> if the video window has not been touched there's no configure event and
> ximagesink needs to tell videoscale what size it needs.
> 
> I tried implementing something like putting the window geometry in the
> caps from the _getcaps function but that makes caps nego to fail...
> 
> So i just made that on expose (sent by the application through
> gst_x_overlay_expose) ximagesink updates window size even if the
> pipeline is not playing and renegotiates if needed. As you can guess
> expose events might arrive during caps negotiation.. I m fine with
> gst_pad_try_set_caps returning REFUSED but i don't like the big warning
> it pukes on the output..
> 
> That's why i made that change...
> 
> If you have another solution my eyes are wide open...
> 
> 
> -- 
> Julien MOUTTE (aka Dolphy)
> 
> Homepage : http://dolphy-tech.net
> 






More information about the gstreamer-devel mailing list