CSI camera not working inside docker in JetPack 6.1

Hi all,
I have two Jetson Orin Nano developer kit one of them has Jetpack 6.0 (R36 (release), REVISION: 3.0) and the other has JetPack 6.1 (R36 (release), REVISION: 4.2) and I am running a docker image which is based on dustynv/l4t-ml:r36.2.0 image.
I could access the camera inside the docker for Orin running JetPack 6.0. But the camera is not working with me inside the docker for the case of the Orin running JetPack 6.1 as shown below.

root@ubuntu:/jetson_orin_examples# gst-launch-1.0 nvarguscamerasrc ! \
     'video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, \
     format=(string)NV12, framerate=(fraction)30/1' ! nvvidconv ! \
     video/x-raw, format=I420 ! x264enc ! \
     h264parse ! qtmux ! filesink \
     location=output.mp4 -e
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3280 x 2464 FR = 21.000000 fps Duration = 47619048 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3280 x 1848 FR = 28.000001 fps Duration = 35714284 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1640 x 1232 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
   Camera index = 0 
   Camera mode  = 2 
   Output Stream W = 1920 H = 1080 
   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.
double free or corruption (out)
Aborted (core dumped)

Do you confirm out side of the docker?

Please have the step to run camera in the docker.

The CSI camera works outside the docker of the two Jetson Orin running JetPack 6.0 and JetPack 6.1. It doesn’t work inside docker for JetPack 6.1. The following command to run the docker with csi camera accessibility

sudo docker run --runtime nvidia --privileged --device /dev/video0 --volume /tmp/argus_socket:/tmp/argus_socket -it --rm --network=host dustynv/l4t-ml:r36.2.0

Then, I need to install GStreamer inside the docker

apt-get update
apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

To test capture video inside the docker, I use the following command

gst-launch-1.0 nvarguscamerasrc ! \
     'video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, \
     format=(string)NV12, framerate=(fraction)30/1' ! nvvidconv ! \
     video/x-raw, format=I420 ! x264enc ! \
     h264parse ! qtmux ! filesink \
     location=output.mp4 -e

Have a reference to below topic for r36.4 docker.

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