src_bin_muxer: number of surfaces not equal

Hi,
I try to run Yolo on a custom stream.
It works, when I run Yolo on the original, custom video recorded with nvarguscamersrc. check!

When I undistort that video using opencv (Reading: VideoCapture, undistort: remap, writing: VideoWriter) and apply the output in deepstreams yolo, I get the following error.

** INFO: <bus_callback:163>: Pipeline ready

** INFO: <bus_callback:149>: Pipeline running

Creating LL OSD context new
ERROR from src_bin_muxer: Input buffer number of surfaces (-1970632054) must be equal to mux->num_surfaces_per_frame (1)
	Set nvstreammux property num-surfaces-per-frame appropriately

Debug info: gstnvstreammux.c(308): gst_nvstreammux_chain (): /GstPipeline:pipeline/GstBin:multi_src_bin/GstNvStreamMux:src_bin_muxer
Quitting
ERROR from qtdemux0: Internal data stream error.
Debug info: qtdemux.c(6073): gst_qtdemux_loop (): /GstPipeline:pipeline/GstBin:multi_src_bin/GstBin:src_sub_bin0/GstURIDecodeBin:src_elem/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0:
streaming stopped, reason error (-5)
App run failed

Any idea why?

Hi,
We have Yolo sample in

deepstream_sdk_v4.0_jetson\sources\objectDetector_Yolo

Please base on it to share patch/config file so that we can reproduce it and do further investigation.

The codec of the video was the problem. The supported codecs are H.264, H.265, VP8, VP9, and MPEG2/4.

Hi,
We need to reproduce the issue first. Please help share a patch on our Yolo sample and steps of reproducing the failure.

I got a similar error:

ERROR: from element /GstPipeline:pipeline0/GstNvStreamMux:mux: Input buffer number of surfaces (-336860181) must be equal to mux->num_surfaces_per_frame (1)

-336860181 = 0xEBEBEBEB

While in your case, -1970632054 = 0x8A8A8A8A

Similar error can be found in another post https://devtalk.nvidia.com/default/topic/1058448/deepstream-sdk/deepstream-4-0-run-failed-with-my-own-media-file/

ERROR from src_bin_muxer: Input buffer number of surfaces (1196185182) must be equal to mux->num_surfaces_per_frame (1)

1196185182 = 0x474C565E‬ = “GLV^”

Looks like some memory/pointer issue?

Hi Harry16,
Your case looks different from this thread. You may kick off a new thread with steps to reproduce the issue.

Hi,

I am new to gstreamer / DS.
I am trying to create a pipeline using nvstreammux but facing similar issue

ERROR from element stream-muxer: Input buffer number of surfaces (0) must be equal to mux->num_surfaces_per_frame (1)

The pipeline contains an nvarguscamerasrc connected to video convert that is fed to nvstreammux.

Also, can you help with how to get the number of surfaces at the source

Hi,
Please check
https://devtalk.nvidia.com/default/topic/1066251/deepstream-sdk/save-camera-feed/post/5400303/#5400303
You should miss bufapi-version property.

Thanks, it helped