Shutting down gstreamer pipelines gracefully


I’m running multiple gstreamer pipelines using gst-launch-1.0. I am testing my pipelines for robustness by restarting them multiple times. To try to shut them down gracefully I am issuing a SIGINT, followed by a delay and then a SIGTERM. After terminating all gstreamer pipelines I SIGTERM and SIGKILL nvargus-daemon.

The issue is that nvargus-daemon hangs sometimes, and there are lots of error messages printed out during shutdown(even with no hang). So my question is if I am missing anything else that will help cleanly exit the pipelines and the daemon. Any input is much appreciated, thanks!

The warning/error messages are:

WARNING: CameraProvider was not destroyed before client connection terminated.
=== gst-launch-1.0[262]:          The client may have abnormally terminated. Destroying CameraProvider..

WARNING: Cleaning up 1 outstanding streams...SCF: Error InvalidState: 2 buffers still pending during 
EGLStreamProducer destruction

I’m using L4T 32.2.1, but saw these issues on 32.2.3 as well.

This is duplicate of

Let’s continue the discussion in original topic thread.