[gst-devel] Re: [gst-cvs] wtay gstreamer: gstreamer/ gstreamer/gst/base/ gstreamer/gst/elements/
wim at fluendo.com
Mon May 2 10:46:22 CEST 2005
On Thu, 2005-03-31 at 12:53 +0200, Ronald S. Bultje wrote:
> Hey guys,
> On Thu, 2005-03-31 at 12:11, Wim Taymans wrote:
> > Added start/stop methods to transform base class so subclasses
> > don't need to deal with state changes even.
> So, Benjamin proposed something similar. Is this a good idea? Reason
> that I goubt it is because we're creating interfaces over our own
> interfaces. That seems like a bad idea, given the xvideosink debacle
> back in the 0.6-and-earlier days.
I thought it was more convenient given that the start should be done in
sinkpad activate function, a pad that is provided by the base class
Explaining to get the sinkpad from the base class, saving the old
function, inserting a new activate function, performing the start on the
right time seems more complicated than overriding a method and calling
method in the base class from wherever it is needed.
> What I'm trying to say is: can we please not create interfaces to wrap
> ourselves if there isn't a very very good reason, i.e. in this case just
> deal with state changes? The amount of code saved (=gain) by this is,
> well, zero, and it does make our iterfaces very fuzzy
One of the points of the base classes is to create a specific interface
a specific task. This interface can be different from the (extremely)
general core interfaces or it can simply be a wrapper. In most cases it
is not simply a wrapper though. The close method in the audiosink is
called when a newcaps arrives and possibly when the mute/release action
is done etc..
Wim Taymans <wim at fluendo.com>
More information about the gstreamer-devel