Could you tell me async-start and async-done message in playbin?

Sebastian Dröge sebastian at centricular.com
Sat Jan 25 02:52:03 PST 2014


On Fr, 2014-01-24 at 02:50 -0800, HoonHee Lee wrote:
> Hello~~
> I have a question about async-start and async-done message in playbin.
> 
> In normal case, async-start message is posting to upper layer of pipeline by
> gstbin when bin is top level.
> But I am not sure, async-done message is posting once to upper layer of
> pipeline??
> If not,  async-done message is posting to upper layer of pipeline whenever
> async-done message is generated by element in pipeline??
> 
> If I use playbin to play contents with autovideosink and autoaudiosink.
> After configuring pipeline(playbin), I perform flush seek using
> gst_element_seek (playbin....).
> After seek event has done with flush, each async-done messages that are
> generated by autovideosink and autoaudiosink are posting to upper layer of
> pipeline???
> 
> Aayway, I am wondering that async-start and async-done messages are posting
> once to upper layer of pipeline? or not??

Elements that do async state changes post async-start when they start
that state change. The parent bin is aggregating all async-start
messages and takes care of the state change of itself and all its
children. It will also aggregate all async-done message, and once there
was one for every async-start, it will continue the state change.

IIRC async-start is only propagated to higher-level bins if the bin is
not the top-level bin. async-done you will also get from the top-level
bin, exactly once for the state change and not for every child element.

-- 
Sebastian Dröge, Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 949 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140125/33075b19/attachment.pgp>


More information about the gstreamer-devel mailing list