[gst-devel] Re: [gst-cvs] thomasvs gstreamer: gstreamer/docs/random/ds/

Thomas Vander Stichele thomas at apestaart.org
Wed Jul 14 02:46:02 CEST 2004


Hi,
> > 
> > Did I miss something ?
> 
> No. ;). Their purpose is different.

Yep, and I think that I knew that, but it's a different point then what
I was trying to make, see below.

>  The API documentation should state (it probably doesn't;
> what a surprise) that the child class is supposed to call
> parent_class->element_add() when its own implementation of element_add()
> is being called.

Hm, it's true that it doesn't state this, and I'm not sure it should
either.  There's no reason why a bin cannot override the vfunction so
that instead of putting it in itself, it puts it into a second bin that
is private to the given bin.  Why would you do this ? To make a bin that
can preroll would be one example; the private bin can be set to playing
to make sure everything is autoplugged, while the public bin that is put
in the app pipeline is still in paused.  This is one of the things that
currently is not done that Jorn complains about.

>  This means that in the end, the child table will always
> be the one represented directly in the GstBin object, and thus you don't
> need to virtualize get_child_list(). The purpose of this function is to
> have the derived class know about the added child *before* it is added
> to the actual GstBin struct.

I think that the purpose you state is your interpretation, but not
necessarily the only possible one.

>  It can then feed the child with an
> additional thread, scheduler or anything related so that the default one
> of the actual GstBin will not be used (and this is what GstThread does).
> 
> Can you understand why gstplay would need to virtualize get_list() and
> why it would need to differ in GstBin'ness behaviour? It's really all
> unclear to me.

The preroll case is a good example.

Thomas


Dave/Dina : future TV today ! - http://www.davedina.org/
<-*- thomas (dot) apestaart (dot) org -*->
ik kon liegen
ik kon jou bedriegen
mezelf verraden
zonder spijt
<-*- thomas (at) apestaart (dot) org -*->
URGent, best radio on the net - 24/7 ! - http://urgent.fm/






More information about the gstreamer-devel mailing list