gstreamer pipeline states

Thiago Santos thiagoss at osg.samsung.com
Sat Sep 13 09:47:02 PDT 2014


On 09/12/2014 09:29 AM, Mayank Agarwal wrote:
> Hi,
>
>
> I have gstreamer plugin by the name firstplugin:
>
> gst_firstplugin_init{
>
> }
> gst_firstplugin_base_init
> {
>
>
>
> }
> gst_firstplugin_class_init
> {
>
>
> gobject_class->set_property = gst_firstplugin_set_property;
> gobject_class->get_property = gst_firstplugin_get_property;
> gobject_class->finalize = gst_firstplugin_finalize;
>
>
> and  functons like:
> gstelement_class->change_state = gst_qamtunersrc_change_state;
> gstbasesrc_class->start = gst_firstplugin_start;
> gstbasesrc_class->stop = gst_firstplugin_stop;
>
>
> }
>
>
>
>
> I am getting logs to the function set property but
> gstreamer pipeline is not starting.I want to ask when does the gst
> plugin pipeline state changes
> 1.GST_STATE_CHANGE_NULL_TO_READY
> 2.GST_STATE_CHANGE_READY_TO_PAUSED
> 3.GST_STATE_CHANGE_PAUSED_TO_PLAYING
>
> how the gstreamer pipeline changes state internally.
> Is there anyway to debug the internal state of the pipeline.
> if the pipeline is not starting what can be the reasons for that.
> when does the function pointer functions in class_init gets
> executed.
Why doesn't it start? What error do you get? Is the set_state call 
failing? With what error?

It is hard to guess the reason without more details.

When the pipeline changes state it will go over every internal element 
and set its state towards the requested one step by step and your 
element will get all transitions called: null to ready, ready to paused, 
paused to playing.

The gstreamer documentation has a few topics about states, you can find 
them here:
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-elements-states.html
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/chapter-statemanage-states.html
http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/design/part-states.txt



>
> Regards,
> Mayank
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


-- 
Thiago Sousa Santos
Senior Multimedia Engineer, Open Source Group
Samsung Research America - Silicon Valley



More information about the gstreamer-devel mailing list