Prevent or recover from GST_STATE_CHANGE_FAILURE

Nicolas Dufresne nicolas at ndufresne.ca
Fri May 29 01:42:06 UTC 2020


Le mardi 26 mai 2020 à 22:49 +0000, Erasmo Alonso Iglesias a écrit :
> Hello,
> 
> The ARAS radio automation system uses two GStreamer playbin elements in order
> to play media continuously. Every time a new file has to be played, state is
> changed from GST_STATE_READY to GST_STATE_PLAYING.
> 
> Function gst_element_set_state is used to set state GST_STATE_PLAYING from
> state GST_STATE_READY. It usually returns GST_STATE_CHANGE_SUCCESS and
> everything works fine. However, in some systems after a number of played files
> it returns GST_STATE_CHANGE_FAILURE, and after that it seems not possible to
> perform more state transitions without getting a GST_STATE_CHANGE_FAILURE
> again.
> 
> Anybody knows how to prevent this condition or recover from it?

At very minimum, you should transition to NULL if you have hit such an error.
Though, for best help, we'd need some debgging traces, maybe try setting
GST_DEBUG=3 to start with and sharing what you see ?

> 
> libgstreamer1.0-0:amd64 version 1.14.4-1 

Would be nice to bump your distro to latest 1.14, which is .6. Or maybe give a
try and Debian 9 to see if the issue is still present.

> Linux version 4.19.0-9-rt-amd64 (debian-kernel at lists.debian.org) (gcc version
> 8.3.0 (Debian 8.3.0-6)) #1 SMP PREEMPT RT Debian 4.19.118-2 (2020-04-29)
> 
> Best regards and thank you in advance,
> Erasmo
> 
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list