When I ssh into the board via ethernet, I get the following:
CSI Camera 1 detected
device = /dev/video2
name = imx219
format = [fmt:SRGGB10_1X10/1920x1080]
subdev_id = /dev/v4l-subdev2
isp_required = yes
When I do v4l2-ctl --list-devices --list-formats-ext, I get:
TI-CSI2RX (platform:4500000.ticsi2rx):
/dev/media0
j721e-csi2rx (platform:4510000.ticsi2rx):
/dev/video2
/dev/video3
/dev/video4
/dev/video5
/dev/video6
/dev/video7
/dev/video8
/dev/video9
/dev/video10
/dev/video11
/dev/video12
/dev/video13
/dev/video14
/dev/video15
/dev/video16
/dev/video17
/dev/media1
vxd-dec (platform:vxd-dec):
/dev/video1
vxe-enc (platform:vxe-enc):
/dev/video0
ioctl: VIDIOC_ENUM_FMT
Type: Video Capture Multiplanar
[0]: 'H264' (H.264, compressed)
Size: Continuous 1x1 - 1920x1080
When I run the following command:
gst-launch-1.0 v4l2src device=/dev/video-rpi-cam0 io-mode=5 ! queue leaky=2 ! video/x-bayer, width=1920, height=1080, format=rggb10 ! tiovxisp sensor-name=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/linear/dcc_viss.bin format-msb=7 sink_0::dcc-2a-file=/opt/imaging/imx219/linear/dcc_2a.bin sink_0::device=/dev/v4l-rpi-subdev0 ! video/x-raw,format=NV12, width=1920, height=1080 ! queue ! kmssink driver-name=tidss sync=false
I get:
APP: Init ... !!!
MEM: Init ... !!!
MEM: Initialized DMA HEAP (fd=5) !!!
MEM: Init ... Done !!!
IPC: Init ... !!!
IPC: Init ... Done !!!
REMOTE_SERVICE: Init ... !!!
REMOTE_SERVICE: Init ... Done !!!
1208.476466 s: GTC Frequency = 200 MHz
APP: Init ... Done !!!
1208.476737 s: VX_ZONE_INIT:Enabled
1208.476805 s: VX_ZONE_ERROR:Enabled
1208.476854 s: VX_ZONE_WARNING:Enabled
1208.477583 s: VX_ZONE_INIT:[tivxInitLocal:130] Initialization Done !!!
1208.477944 s: VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done for HOST !!!
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstKMSSink:kmssink0: Could not get allowed GstCaps of device
Additional debug info:
../gst-plugins-bad-1.16.3/sys/kms/gstkmssink.c(892): gst_kms_sink_start (): /GstPipeline:pipeline0/GstKMSSink:kmssink0:
driver does not provide mode settings configuration
Setting pipeline to NULL ...
Freeing pipeline ...
1208.484944 s: VX_ZONE_ERROR:[vxGetStatus:700] Reference is NULL
1208.485143 s: VX_ZONE_INIT:[tivxHostDeInitLocal:107] De-Initialization Done for HOST !!!
1208.489755 s: VX_ZONE_INIT:[tivxDeInitLocal:193] De-Initialization Done !!!
APP: Deinit ... !!!
REMOTE_SERVICE: Deinit ... !!!
REMOTE_SERVICE: Deinit ... Done !!!
IPC: Deinit ... !!!
IPC: DeInit ... Done !!!
MEM: Deinit ... !!!
DDR_SHARED_MEM: Alloc's: 0 alloc's of 0 bytes
DDR_SHARED_MEM: Free's : 0 free's of 0 bytes
DDR_SHARED_MEM: Open's : 0 allocs of 0 bytes
DDR_SHARED_MEM: Total size: 536870912 bytes
MEM: Deinit ... Done !!!
APP: Deinit ... Done !!!
How do I solve this error? How do I open the camera using gst-launch-1.0? And how do I open it using OpenCV?
All the above is outside docker. Just plain ssh.
Also, How do I access the camera inside the Ubuntu 20.04 ROS noetic Docker container?