Re: Gstreamer and SIGTERM/SIGUSR2

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: Gstreamer and SIGTERM/SIGUSR2

Emile Semmes
Hi Jeff,

This is a TI issue. In the xxx_chain functions, they spawn a pthread that may not be getting the pipeline state change and passing that information along. I've experienced your probably quite a bit and it's basically an architectural issue with the plugin.

You will have to use SIGUSR2 as long as you run from gst-launch. Programmatically(sp?) creating your pipeline and performing GST_STATE_PAUSED, READY or NULL will get the result you desire.

So, yeah. You're stuck with SIGUSR2 as long as you use a TIxxxx element in your pipeline. Maybe you should cross post to the TI forum. It's a long shot but maybe they'll add a bit more state change detection for that thread. We'd all benefit from it.

https://gforge.ti.com/gf/project/gstreamer_ti/forum/?action=ForumBrowse&forum_id=187

Emile

On 8/18/2012 1:18 PM, jlancaster wrote:
Here's a different question or topic:

In my Linux embedded app, using the TI 814x processor and TI's SDK, I use
callback functions from a library to control gstreamer actions such as play,
pause, record, playback, etc.

In rare instances I need to remove the app using SIGTERM. This removes the
app and the gstreamer callback library. If gstreamer is not doing anything
it all works just dandy, gstreamer functions are restored again on app start
up.

However, if I happen to be live streaming cameras while SIGTERM is executed,
then gstreamer does not go down very gracefully and I need to reboot to get
all the functionality restored.

If I used SIGUSR2 rather than SIGTERM everything goes down nicely and the
functionality is also restored. Perhaps this is my solution, to use SIGUSR2,
but it is also very curious to me.

Question: Does gstreamer use any of the system SIGxxx functions to terminate
pipelines or any other functions?

Are there any theories why a SIGTERM on our app would hang gstreamer
functions if gstreamer happens to be running?

If so, can we override those function which use SIG utilities?

-Jeff.





--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Gstreamer-and-SIGTERM-SIGUSR2-tp4655991.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel