最简单的检测设备存在不
ls /dev/video*
你会看到列出了单个设备,但是这样的信息量太少,通常无法判断到底哪个编号是哪个摄像头。
要更进一步检测摄像头数量与详细规格,就需要 v4l2-utils 这个工具协助,安装方法很简单,如下指令:
sudo apt-geat install v4l-utlis
安装完之后,可以用以下指令检测比较完整的信息:
v4l2-ctl- --list-devices
本例中执行这个命令后,会看到下面截屏信息,将USB个摄像头都列清楚:
- UVC Camera (046d:0825) (usb-70090000.xusb-2):
- /dev/video0
这台设备的csi摄像头有点问题,文件系统可能被我搞坏了没显示出来网上的图是下面的

这里就能非常清楚看到第一个(/dev/video0)属于 imx219 规格(CSI)摄像头,第二个(dev/video2)是 USB2.0 的摄像头,接到 xusb-2(规格是 USB3)接口,第三个(/dev/video1)是 USB 摄像头,接到 xusb-3.2 (规格是 USB2)接口,这样就能一目了然知道哪个编号对应哪个摄像头。
接下来还可以用这个指令,进一步检测每个摄像头的更细致规格,包括所支持的图像种类、宽高、帧数等等,这些在后面使用代码时很重要。
请执行以下指令,来看一下第一个USB 摄像头的规格参数:
- v4l2-ctl --device=/dev/video0 --list-formats-ext
- ioctl: VIDIOC_ENUM_FMT
- Index : 0
- Type : Video Capture
- Pixel Format: 'YUYV'
- Name : YUYV 4:2:2
- Size: Discrete 640x480
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 160x120
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 176x144
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 320x176
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 320x240
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 352x288
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 432x240
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 544x288
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 640x360
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 752x416
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 800x448
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 800x600
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 864x480
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 960x544
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 960x720
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1024x576
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1184x656
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1280x720
- Interval: Discrete 0.133s (7.500 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1280x960
- Interval: Discrete 0.133s (7.500 fps)
- Interval: Discrete 0.200s (5.000 fps)
-
- Index : 1
- Type : Video Capture
- Pixel Format: 'MJPG' (compressed)
- Name : Motion-JPEG
- Size: Discrete 640x480
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 160x120
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 176x144
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 320x176
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 320x240
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 352x288
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 432x240
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 544x288
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 640x360
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 752x416
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 800x448
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 800x600
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 864x480
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 960x544
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 960x720
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1024x576
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1184x656
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1280x720
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
- Size: Discrete 1280x960
- Interval: Discrete 0.033s (30.000 fps)
- Interval: Discrete 0.040s (25.000 fps)
- Interval: Discrete 0.050s (20.000 fps)
- Interval: Discrete 0.067s (15.000 fps)
- Interval: Discrete 0.100s (10.000 fps)
- Interval: Discrete 0.200s (5.000 fps)
-
网上的是csi的

这里更精确地列出了这个摄像头的细节参数,例如显示的“RG10”就算代表这个摄像头的数据格式,下面的“10-bit Bayer RGRG/GBGB”则是进一步说明这个格式使用的算法与通道对应的参数。
再下面的尺寸,例如 3264x2464,其下还有对应的 Interval 性能参数,表示所支持的分辨率,以及该分辨率的最高执行帧率,这样的信息量才能够帮助我们在后面开发应用时作为设定的依据。
其他的设备,请自行修改。
- v4l2-ctl -d /dev/video0 --all
- Driver Info (not using libv4l2):
- Driver name : uvcvideo
- Card type : UVC Camera (046d:0825)
- Bus info : usb-70090000.xusb-2
- 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 1: ok)
- Format Video Capture:
- Width/Height : 640/480
- Pixel Format : 'YUYV'
- Field : None
- Bytes per Line : 1280
- Size Image : 614400
- Colorspace : sRGB
- Transfer Function : Default (maps to sRGB)
- YCbCr/HSV Encoding: Default (maps to ITU-R 601)
- Quantization : Default (maps to Limited Range)
- Flags :
- Crop Capability Video Capture:
- Bounds : Left 0, Top 0, Width 640, Height 480
- Default : Left 0, Top 0, Width 640, Height 480
- Pixel Aspect: 1/1
- Selection: crop_default, Left 0, Top 0, Width 640, Height 480
- Selection: crop_bounds, Left 0, Top 0, Width 640, Height 480
- Streaming Parameters Video Capture:
- Capabilities : timeperframe
- Frames per second: 30.000 (30/1)
- Read buffers : 0
- brightness 0x00980900 (int) : min=0 max=255 step=1 default=128 value=128
- contrast 0x00980901 (int) : min=0 max=255 step=1 default=32 value=32
- saturation 0x00980902 (int) : min=0 max=255 step=1 default=32 value=32
- white_balance_temperature_auto 0x0098090c (bool) : default=1 value=1
- gain 0x00980913 (int) : min=0 max=255 step=1 default=64 value=64
- power_line_frequency 0x00980918 (menu) : min=0 max=2 default=2 value=2
- white_balance_temperature 0x0098091a (int) : min=0 max=10000 step=10 default=4000 value=4000 flags=inactive
- sharpness 0x0098091b (int) : min=0 max=255 step=1 default=24 value=24
- backlight_compensation 0x0098091c (int) : min=0 max=1 step=1 default=0 value=0
- exposure_auto 0x009a0901 (menu) : min=0 max=3 default=3 value=3
- exposure_absolute 0x009a0902 (int) : min=1 max=10000 step=1 default=166 value=166 flags=inactive
- exposure_auto_priority 0x009a0903 (bool) : default=0 value=1
可以看到摄像头的所有的参数,并且可以看到摄像头的默认参数。
还有输入v4l2-ctl help 查看不同参数的具体意思
要是可以让设备树工程师帮你看看
