Stream muxing after demuxing

Hello!
Is there any way to mux streams using nvstreammux after demuxing (nvstreamdemux)? Does the nvstreammux rewrite the metadata?

**• Hardware Platform ** GTX 1060
• DeepStream Version 4.0
• TensorRT Version 6.0

1 Like

Hi
Sorry for a late,
Is there any way to mux streams using nvstreammux after demuxing (nvstreamdemux)?
-> it should work, you may refer to test1 sample to see how streammux linked with other comonent,
more info about nvstreamdemux, please see this,
https://docs.nvidia.com/metropolis/deepstream/plugin-manual/index.html#page/DeepStream%20Plugins%20Development%20Guide/deepstream_plugin_details.3.04.html#

Does the nvstreammux rewrite the metadata?
-> The basic metadata structure NvDsBatchMeta starts with batch level metadata, created inside the Gst-nvstreammux plugin. if your upstream coponent have NvDsUserMeta, it will be get and transformed in nvstreammux, details see this,
https://docs.nvidia.com/metropolis/deepstream/plugin-manual/index.html#page/DeepStream%20Plugins%20Development%20Guide/deepstream_plugin_metadata.2.4.html#
streammux doc, https://docs.nvidia.com/metropolis/deepstream/plugin-manual/index.html#page/DeepStream%20Plugins%20Development%20Guide/deepstream_plugin_details.3.03.html#

Hi amycao,
But what if basic metadata structure already created? I want to have 2 nvstreammux plugins in the pipeline. I create batches from 8 streams using nvstreammux. The first 3 streams have to be processed only by nvinfer before sending the data, but other streams have to continue batch processing. So I think about splitting the streams using nvstreamdemux plugin and merging the last 5 of them into batches again (nvstreammux). Is it possible or is there a better way?

How about the other 5 streams? getting processed by nvinfer or not?

Yes, all 8 streams have the shared nvinfer processing part before the demuxing. After the second muxing the 5 streams will be processed by nvinfer and my plugins.

I am sorry to say it seems it’s impossible to seperate 3 streams and other 5 streams into different branch with one of branch to take the 5 streams muxing into one buffer and then other processing…

1 Like

Hi,
can I ask you if you found any solution? I am faced to the similar problem. If I link nvstreamdemux with nvstreammux in my pipeline, only the first frame is processed and then the pipeline is stucked without any error.

Is it really impossible?