Jetson Nano IMX219-160 Streaming issue

I am using Jetson nano with Waveshare IMX219-160 Camera. I am using R32.7.6 L4T Version.
As the camera is detected and their formats too but I wont be able to see the video feed. Here below I provided my gstreamer pipeline I used. Kindly help me to resolve this issue and if my pipeline is incorrect then kindly provide me the updated pipeline for that.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! ‘video/x-raw(memory:NVMM), width=3264, height=2464, framerate=21/1, format=NV12’ ! nvvidconv ! ‘video/x-raw, format=I420’ ! x264enc tune=zerolatency bitrate=500 ! rtph264pay ! udpsink host=192.168.55.100 port=5000

gst-launch-1.0 udpsrc port=5000 caps=‘application/x-rtp, encoding-name=H264’ ! rtph264depay ! avdec_h264 ! autovideosink

List of available formats:

v4l2-ctl --list-formats-ext
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: ‘RG10’
Name : 10-bit Bayer RGRG/GBGB
Size: Discrete 3264x2464
Interval: Discrete 0.048s (21.000 fps)
Size: Discrete 3264x1848
Interval: Discrete 0.036s (28.000 fps)
Size: Discrete 1920x1080
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 1640x1232
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.017s (60.000 fps)

Hello @Sunim_1

The pipelines that you shared worked for me in a Jetson Orin Nano.

Could you please test the camera capture stability by following the next command?

Could you please run the following commands?

 sudo apt install v4l-utils

and then

v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=RG10 --stream-mmap --stream-count=300 -d /dev/video0

This command will start streaming from camera port 0 (cam0). If you want to check the camera port 1 (cam1), change the video device to video1. After running the command you must see the next output in your terminal window:

<<<<<<<<<<<<<<<<<<<<<<< 21.19 fps
<<<<<<<<<<<<<<<<<<<<< 21.19 fps
<<<<<<<<<<<<<<<<<<<<< 21.19 fps

Then, if you could dequeue buffers. Please try the following standalone simple pipeline as:

GST_DEBUG=2 gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! fakesink silent=false -v

If the pipeline works, you should see messages in the terminal similar to the following:

/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (64 bytes, dts: 0:00:01.199904278, pts: 0:00:01.199904278, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0xaaaae722a6c0

If not, please attach the output of the GStreamer pipeline here.

PS: I would suggest to change your connection from USB to ethernet.

Regards!
Eduardo Salazar
Embedded SW Engineer at RidgeRun

Contact us: support@ridgerun.com
Developers wiki: https://developer.ridgerun.com/
Website: www.ridgerun.com

As I wont be able to see any output after while running this pipeline:

v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=RG10 --stream-mmap --stream-count=300 -d /dev/video0

I have attached the dmesg logs for your reference kindly have a look once and provide me solution to solve this issue.

IMX219_dmesglogs.txt (82.1 KB)

Hello @Sunim_1

Could you please run the following script?

# Activate debug
sudo echo 7 >/sys/class/video4linux/video0/dev_debug
sudo echo 8 > /proc/sys/kernel/printk
cd /sys/kernel/debug/dynamic_debug/
sudo echo file capture_common.c +p > control
sudo echo file tegracam_ctrls.c +p > control
sudo echo file vi4_fops.c +p > control
sudo echo file vi2_fops.c +p > control
sudo echo file tegracam_v4l2.c +p > control
sudo echo file csi4_fops.c +p > control
sudo echo file csi5_fops.c +p > control
sudo echo file csi2_fops.c +p > control
sudo echo file capture.c +p > control
sudo echo file channel.c +p > control
sudo echo file capture_vi_channel.c +p > control
sudo echo file capture.c +p > control
sudo echo file channel.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*
sudo echo file camera_common.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*
sudo echo file sensor_common.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*
sudo echo file vi2_fops.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*
sudo echo file csi.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*
sudo echo file csi2_fops.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*echo file core.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*echo file mc_common.c +p > /sys/kernel/debug/dynamic_debug/control    *# '-p' to disable debug*echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 2 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
echo > /sys/kernel/debug/tracing/trace
cat /sys/kernel/debug/tracing/trace

# Clear the buffer ring:
sudo ./debug.sh
sudo dmesg -c
clear
sudo sh -c "echo > /sys/kernel/debug/tracing/trace"

And try with the v4l2-ctl command again and share the dmesg and /sys/kernel/debug/tracing/trace logs please

Regards!

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