Pausing DeepStream playback in Python

Please provide complete information as applicable to your setup.

**• Hardware Platform (Jetson / GPU) : NX
• DeepStream Version 5.0
• JetPack Version (valid for Jetson only) 4.4
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)

Running: deepstream_imagedata-multistream.py

pipeline.set_state(Gst.State.PAUSED)
enum GST_STATE_CHANGE_ASYNC of type Gst.StateChangeReturn
pipeline.set_state(Gst.State.PLAYING)
enum GST_STATE_CHANGE_SUCCESS of type Gst.StateChangeReturn

Playing and pausing in DS is only possible if loop.run is NOT executed. Its unclear what the purpose of the loop object is as inference is done correctly if this code is bypassed. Executing loop.run causes the pipeline object to null out.

loop = GObject.MainLoop()
bus = pipeline.get_bus()
bus.add_signal_watch()
bus.connect ("message", bus_call, loop)

Hi @foobar.warren
Sorry for late!

The loop object is used to terminate the pipeline on EOS or other exceptions. Could you share sample code to help us understand what exactly you want to get done .

Thanks!

Hi Mchi,
Just by way of observation, I noticed the pipeline object context is lost once inside loop.run, for your python DS sample apps.

Really what I’m after is a post-processing pipeline component example. So once the frame goes thru the inference pipeline component, I’d like access to the generated metadata. I think the SSD example has a post-processing step, but it requires Triton, which I haven’t learned yet.