Nvidia gstreamer plugin -nvarguscamerasrc element error

Device is Jetson agx xavier
BSP is 35.6.0
CMD : GST_DEBUG=3 gst-launch-1.0 -e nvarguscamerasrc sensor-id
=2 wbmode=1 ! “video/x-raw(memory:NVMM), width=(int)3840, height=(int)2160, fo
rmat=(string)NV12, framerate=(fraction)30/1” ! nvvidconv ! videoconvert ! queuee
max-size-buffers=100 ! xvimagesink

the error log is :
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected…
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3840 x 2160 FR = 29.999999 fps Duration = 33333334 ; Analog Gain rangg
e min 1.000000, max 31.622776; Exposure Range min 59000, max 33333000;

GST_ARGUS: Running with following settings:
Camera index = 2
Camera mode = 0
Output Stream W = 3840 H = 2160
seconds to Run = 0
Frame Rate = 29.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
nvbuf_utils: dmabuf_fd -1 mapped entry NOT found
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarr
guscamera/gstnvarguscamerasrc.cpp, threadExecute:723 NvBufSurfaceFromFd Failed.
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarr
guscamera/gstnvarguscamerasrc.cpp, threadFunction:242 (propagating)
ERROR: from element /GstPipeline:pipeline0/GstNvArgusCameraSrc:nvarguscamerasrc00
: CANCELLED
Additional debug info:
Argus Error Status
EOS on shutdown enabled – waiting for EOS after Error
Waiting for EOS…
^Chandling interrupt.
Interrupt: Stopping pipeline …
Interrupt while waiting for EOS - stopping pipeline…
Execution ended after 0:00:29.190735616
Setting pipeline to NULL …
GST_ARGUS: Cleaning up
but when i use the below v4l2 method to capture image , i can captured successed
CMD :
kk@kk-desktop:~$ v4l2-ctl --set-fmt-video=width=3840,height=2160,pixelformat=RG12 --set-ctrl bypass_mode=0 --stream-skip=100 --stream-mmap --stream-count=1 --stream-to=ar0820.raw -d /dev/video2
[ 91.289112] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<
kk@kk-desktop:~$

so how to fix it ?

hello bob53,

this failure usually due to camera initialization has failed.

let’s narrow down the issue,
had you validate this sensor driver on any previous Jetpack release? please refer to Camera Driver Porting for driver examination.
you may see-also Debugging Tips section for troubleshooting.

hello JerryChang ,
thank you for your support , i have validate this sensor driver on previous Jetpack 5.12. (now is 5.14 ) but got the same issue .
I go though my sensor driver and device tree follow your tips . no wrong was found .
but the issue still can’t resolved .
why v4l2 method to capture image is nomal ? and i have opened the saved image . it looks fine .
kk@kk-desktop:~$ v4l2-ctl --set-fmt-video=width=3840,height=2160,pixelformat=RG12 --set-ctrl bypass_mode=0 --stream-skip=100 --stream-mmap --stream-count=1 --stream-to=ar0820.raw -d /dev/video2
[ 91.289112] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 29.92 fps
<<<<<<<<<<

hello bob53,

here’s one thing crucial.

as you can see, it’s discarding frame reported before camera steaming even you’ve skip 100-frames.
here’s error recovery mechanism within VI driver, which will drop the (current) capture request and waiting for next frame. however, there’s no such tolerance of nvarguscamerasrc plugin.

I assume there’s something wrong of your camera stream-on sequence,
please review your sensor driver for the operations.

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