Issue in encoding with nvv4l2h264enc in gstreamer

Hi, I’m currently working on a project involving an AR0521-based stereo camera setup, streaming data from a Jetson AGX ORIN custom carrier board to a Windows PC via network streaming. Here are the specifics of my setup:

  • Camera: AR0521
  • Platform: Jetson AGX ORIN
  • MIPI Output: 1920x1080 resolution, two-lane, 10-bit raw output with NVIDIA ISP
  • Software: Jetpack 5.1 (L4T35.2.1)

I’m using a gstreamer-based application to merge the streams from the left and right cameras and transmit them to the Windows PC. The application works flawlessly in a loop for local streaming within the ORIN itself. However, when attempting network streaming, I encounter an abnormal termination issue after the third iteration of starting and stopping the API in a loop.

The error message I receive from the application is as follows:
NvMMLiteVideoEncDoWork:NvEncNvVicconvertsurfaceFormat Failed
NvVideoEncTransferOutputBufferToBlock: Do Work failed line# 680
NvVideoEnc: NvVideoEncTransferOutputBufferToBlock TransferBufferToBlock failed Line=691

We had also tried removing the gstreamer cache as mentioned in another nvidia topic using below command. But it doesn’t help in my case.
rm .cache/gstreamer-1.0/registry.aarch64.bin

Reproduction Rate: 8/10
Note: The iteration may differ sometimes from 2-11 after which the above same error stopping the process.

Currently, the only workaround I’ve found is to terminate the application and restart the nvargus-daemon.service once the error occurs.

Expected Result: I expect the gstreamer network transfer application to open and close in a loop continuously without any issue

Gstreamer Pipeline:

Sender: nveglstreamsrc name=glst_source ! video/x-raw(memory:NVMM),format=RGBA,width=3840,height=1080,framerate=60/1 ! nvvidconv flip-method=6 ! video/x-raw,format=I420 ! nvvidconv ! nvv4l2h264enc ! rtph264pay pt=96 mtu=1400 ! udpsink port=5000 host= sync=false async=false name=vrtpsink

Receiver:gst-launch-1.0 udpsrc port=5000 ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! avdec_h264 ! queue ! videoconvert ! fpsdisplaysink sync=false

Please use nvarguscamerasrc plugin instead of veglstreamsrc. For using Argus stack, we would suggest use nvarguscamerasrc.

And there are later Jetpack releases like 6.0GA(r36.3) and 5.1.3(r35.5.0). We would suggest upgrade to later version.