streaming thread and gst_element_set_state in gstreamer

Taeho Oh ohhara at gmail.com
Wed Jul 9 01:11:07 PDT 2014


Hello

I am a newbie in gstreamer and have several questions about gstreamer. I am
sorry if it is a silly question.

According to
http://lists.freedesktop.org/archives/gstreamer-devel/2006-July/012776.html
( gst_element_set_state hangs ? ), Mike said that
"You are not - ever - allowed to call gst_element_set_state() from one of
these streaming threads."

And according to
http://lists.freedesktop.org/archives/gstreamer-devel/2011-January/030114.html
( What is 'streaming thread'? ), 'streaming thread' is any thread not
created by the application, but by GStreamer.

Q1) In gstreamer user's point of view, where can I meet 'streaming thread'?
Should I assume that all callback functions(ex. typefind have-type
callback, pad-added callback, etc) run in 'streaming thread'? Are there any
other 'streaming thread' cases other than the callback functions?

Q2) Are there any allowed scenarios where gst_element_set_state() can be
called in the streaming thread?
I am a little bit confused, because according to
http://debathena.mit.edu/trac/browser/trunk/third/gstreamer/docs/manual/helloworld2.xml?rev=21005,
gst_element_set_state() is called in gst_play_have_type callback function.

Q3) Are there any other gstreamer APIs not allowed to be called in the
'streaming thread'?

Best regards,
Taeho
-- 
Taeho Oh ( ohhara at postech.edu )
http://ohhara.sarang.net
Postech ( Pohang University of Science and Technology )
http://www.postech.edu
Alticast Corp.
http://www.alticast.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140709/b4526e05/attachment.html>


More information about the gstreamer-devel mailing list