nvstreamdemux error

gst-launch-1.0 nvstreammux name=mux ! nvstreamdemux name=demux \
filesrc location=./sample_720p.h264 ! h264parse ! nvdec_h264 ! queue ! mux.sink_0 \
filesrc location=./sample_720p2.h264 ! h264parse ! nvdec_h264 ! queue ! mux.sink_1 \
demux.src_0 ! "video/x-raw(memory:NVMM), format=NV12" ! queue ! nvvidconv ! "video/x-raw(memory:NVMM), format=RGBA" ! nvvidconv ! "video/x-raw, format=RGBA" ! videoconvert ! "video/x-raw, format=NV12" ! x264enc ! qtmux ! filesink location=./out3.mp4 \
demux.src_1 ! "video/x-raw(memory:NVMM), format=NV12" ! queue ! nvvidconv ! "video/x-raw(memory:NVMM), format=RGBA" ! nvvidconv ! "video/x-raw, format=RGBA" ! videoconvert ! "video/x-raw, format=NV12" ! x264enc ! qtmux ! filesink location=./out4.mp4

hi,i tried it to test demux, with inference part removed. But it doesn’t work, print:

Settint pipeline to paused
pipeline is prerolling
redistribute latency
redistribute latency

and it was stuck here.

Interrupt: stopping pipeline
error: pipeline doesn't want to preroll
setting pipeline to null

when i removed one sink branch, it throwed some warnings, but worked:

gstreamer-critical gst-pad-push-event: assertion gst_is pad failed
gstreamer-critical gst-pad-peer-query: assertion gst_is pad failed

in addition, i cannot set mux’s batch-size, it print:

warning: errorneous pipeline: could not set property "batch-size" in element "mux" to 2

whatever number i input, it said i cannot set property to it

can you help me?

The below demux case can work in my side:

gst-launch-1.0 nvstreammux name=mux batch-size=2 ! nvinfer config-file-path=./dstest1_pgie_config.txt ! nvstreamdemux name=demux
filesrc location=./sample_720p.h264 ! h264parse ! nvdec_h264 ! queue ! mux.sink_0
filesrc location=./sample_720p2.h264 ! h264parse ! nvdec_h264 ! queue ! mux.sink_1
demux.src_0 ! “video/x-raw(memory:NVMM), format=NV12” ! queue ! nvvidconv ! “video/x-raw(memory:NVMM), format=RGBA” ! nvosd font-size=15 ! nvvidconv ! “video/x-raw, format=RGBA” ! videoconvert ! “video/x-raw, format=NV12” ! x264enc ! qtmux ! filesink location=./out3.mp4
demux.src_1 ! “video/x-raw(memory:NVMM), format=NV12” ! queue ! nvvidconv ! “video/x-raw(memory:NVMM), format=RGBA” ! nvosd font-size=15 ! nvvidconv ! “video/x-raw, format=RGBA” ! videoconvert ! “video/x-raw, format=NV12” ! x264enc ! qtmux ! filesink location=./out4.mp4

The “nvstreammux” element queries “nvinfer” for the batch size.
Don’t use them like this streammux -> streamDemux, maybe there are some issues in DS 2.0. It’s OK in DS 3.0 which will be released in the end of this month.

Hi mh_ding,

The DeepStream SDK 3.0 for Tesla has been released, please download it from :
https://developer.nvidia.com/deepstream-sdk

Thanks

Hi @ChrisDing,
I wanted a modified pipeline where after demux for the second stream I want to have some other pipeline, but when I try this out the pipeline gets stuck with no error

gst-launch-1.0 nvstreammux name=mux batch-size=2 width=1920 height=1080 ! nvinfer config-file-path=dstest1_pgie_config.txt ! nvstreamdemux name=demux filesrc location=…/…/…/…/samples/streams/sample_720p.h264 ! h264parse ! nvv4l2decoder ! queue ! mux.sink_0 filesrc location=…/…/…/…/samples/streams/sample_720p.h264 ! h264parse ! nvv4l2decoder ! queue ! mux.sink_1 demux.src_0 ! “video/x-raw(memory:NVMM), format=NV12” ! queue ! nvvideoconvert ! “video/x-raw(memory:NVMM), format=RGBA” ! nvdsosd ! nvvideoconvert ! “video/x-raw, format=RGBA” ! videoconvert ! “video/x-raw, format=NV12” ! x264enc ! qtmux ! filesink location=./out3.mp4 demux.src_1 ! fakesink

Hi duttaneil16,

Please open a new topic with more details. Thanks

Hi,
I have created new topic: