How to add new sourcebins to nvstreammux when all sourcebins are removed previously?

Please provide complete information as applicable to your setup.

• Hardware Platform - GPU
• DeepStream Version - 6.0
• Issue Type - questions

The attached pipeline image is implemented combining both deepstream_test4 and deepstream_reference_apps-runtime_source_add_delete samples.

Initially, rtsp sourcebins are added to nvstreammux and removed at runtime. Once all the sources are removed from the nvstreammux it outputs following warning.

Released StreamMux Pad: 0x7ed755a840
WARNING from element stream-muxer: No Sources found at the input of muxer. Waiting for sources.
Warning: No Sources found at the input of muxer. Waiting for sources.

Then another source is added and the pipeline stops with the queue element returning following error.

ERROR from element tee-que1: Internal data stream error.
Error details: gstqueue.c(988): gst_queue_handle_sink_event (): /GstPipeline:main-pipeline/GstQueue:tee-que1:
streaming stopped, reason error (-5)
Returned from main loop, stopping playback

How to gracefully handle this use case without pipeline going into error state?

please provide simplified code to reproduce, including configuration file. (11.9 KB)

Simplyfied code and config files can be found inside It’s a modified version of the deepstream_test_rt_src_add_del.c.
Two new elements are added to the pipeline namely tee and queue,

  • source bin → file-source ! h264-parser ! nvh264-decoder
  • Rest of the pipeline → streammux ! nvinfer ! nvtracker ! tee ! queue ! nvtiler ! nvvideoconvert ! nvosd ! nveglsink
    Initially one sourcebin is created and we wait until it becomes EOS. Then that sourcebin is removed from the nvstreammux. After that we try to add a new sourcebin to the nvstreammux. Then the above mentioned error is produced from the queue element.

I’ve also added the gst-debug-log of the pipeline with log level 4 enabled.

gst-debug-log.txt (463.3 KB)

  1. why I did not see “SourceBin:0 STATE NULL CHANGE SUCCESS”?
  2. it crash after video finished, need to narrow down this issue.

Did you run this sample inside DeepStream-6.0:devel docker container? I’m afraid the crash is due to dependency mismatch. Also can you please use this command to run.
./deepstream-test-rt-src-add-del file://$DS_SDK_ROOT/samples/streams/sample_1080p_h265.mp4

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)

• DeepStream Version

• JetPack Version (valid for Jetson only)

• TensorRT Version

• NVIDIA GPU Driver Version (valid for GPU only)

• Issue Type( questions, new requirements, bugs)

• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)

• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.