[gst-devel] Problem with GST_STATE_CHANGE_ASYNC

S Boucher stbya at yahoo.com
Mon Dec 14 16:41:52 CET 2009



--- On Sat, 12/12/09, thiagossantos at gmail.com <thiagossantos at gmail.com> wrote:

> If the state you're setting to is GST_STATE_PLAYING,
> the sink needs to receive data in order to preroll and
> effectively change to the PLAYING state (that's when the
> get_state call would return). Are you sure your src element
> is providing data to the pipeline?

I changed the code to explicitly go through each intermediate states.  gst_get_element_state() hangs right after changing from READY->PAUSED.

And with:
 msg = gst_bus_timed_pop_filtered (bus, 5 * GST_SECOND,
     GST_MESSAGE_ASYNC_DONE | GST_MESSAGE_ERROR);

I get NULL.

And with:
   g_signal_connect (G_OBJECT (bus), "message", G_CALLBACK (on_message), media);

I do receive GST_MESSAGE_STATE_CHANGED in the callback.

Maybe I'm missing something with regards to threads...


      __________________________________________________________________
The new Internet Explorer® 8 - Faster, safer, easier.  Optimized for Yahoo!  Get it Now for Free! at http://downloads.yahoo.com/ca/internetexplorer/




More information about the gstreamer-devel mailing list