Video capture did not work on jetson nano

Hi,

I try to capture video stream from IMX219-83 cameras on Jetson Nano 4G. I tests with command:
v4l2-ctl --list-devices
vi-output, imx219 7-0010 (platform:54080000.vi:0):
/dev/video0

vi-output, imx219 8-0010 (platform:54080000.vi:4):
/dev/video1
So the Jetson Nano can recognise the cameras. But when I ran:
$ nvgstcapture-1.0 --camsrc=0 --cap-dev-node=/dev/video0
I got errors:
** Message: 16:41:05.005: main:4670 iterating capture loop …
ERROR on bus: by /GstPipeline:capture_native_pipeline/GstBin:cap_bin/GstV4l2Src:v4l2src0: Internal data stream error.
debug info:
gstbasesrc.c(3055): gst_base_src_loop (): /GstPipeline:capture_native_pipeline/GstBin:cap_bin/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
** Message: 16:41:05.034: main:4680 Capture completed
** Message: 16:41:05.034: main:4729 Camera application will now exit

Some one please help me. Thank you so much!

hello nguyem34,

it looks strange to enable the camera stream by v4l2src, since that’s only support with USB-cam or YUV sensors.
may I know what’s these IMX219-83 cameras? are they same as Raspberry pi v2, imx219?

Hi JerryChang

imx219-83 cameras are imx219. I can detect the cameras as below:
$ v4l2-ctl --list-devices
vi-output, imx219 7-0010 (platform:54080000.vi:0):
/dev/video0

vi-output, imx219 8-0010 (platform:54080000.vi:4):
/dev/video1

$ v4l2-ctl -d /dev/video0 --all
Driver Info (not using libv4l2):
Driver name : tegra-video
Card type : vi-output, imx219 7-0010
Bus info : platform:54080000.vi:0
Driver version: 4.9.253
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Priority: 2
Video input : 0 (Camera 0: no power)
Format Video Capture:
Width/Height : 3264/2464
Pixel Format : ‘RG10’
Field : None
Bytes per Line : 6528
Size Image : 16084992
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :

Camera Controls

                 group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                sensor_mode 0x009a2008 (int64)  : min=0 max=0 step=0 default=0 value=0 flags=slider
                       gain 0x009a2009 (int64)  : min=0 max=0 step=0 default=0 value=16 flags=slider
                   exposure 0x009a200a (int64)  : min=0 max=0 step=0 default=0 value=13 flags=slider
                 frame_rate 0x009a200b (int64)  : min=0 max=0 step=0 default=0 value=2000000 flags=slider
                bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0
            override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0
               height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                 size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0
           write_isp_format 0x009a2068 (bool)   : default=0 value=0
   sensor_signal_properties 0x009a2069 (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
    sensor_image_properties 0x009a206a (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
  sensor_control_properties 0x009a206b (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
          sensor_dv_timings 0x009a206c (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
           low_latency_mode 0x009a206d (bool)   : default=0 value=0
           preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
               sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=6 flags=read-only

But I cannot capture the video streams, I got error:

$ nvgstcapture-1.0
bitrate = 4000000
Encoder Profile = High
Encoder control-rate = 1
Encoder EnableTwopassCBR = 0
Opening in BLOCKING MODE
** Message: 09:57:14.668: main:4670 iterating capture loop …
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:736 Failed to create CaptureSession
NvMMLiteOpen : Block : BlockType = 4
===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4
^C** Message: 09:57:26.308: <_intr_handler:4261> User Interrupted…

Terminating the camera pipeline …
** Message: 09:57:26.691: main:4680 Capture completed
** Message: 09:57:26.691: main:4729 Camera application will now exit

and:

$ gst-launch-1.0 nvarguscamerasrc sensor_id=0 ! nvoverlaysink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:736 Failed to create CaptureSession
Got EOS from element “pipeline0”.
Execution ended after 0:00:00.007070573
Setting pipeline to PAUSED …
Setting pipeline to READY …
Setting pipeline to NULL …
Freeing pipeline …

hello nguyem34,

please use V4L2 IOCTL to verify basic camera functionality during sensor bringup, i.e. Applications Using V4L2 IOCTL Directly

Hi JerryChang

I have opened other topic as

Thank you!

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