如何检测我的网络摄像头支持哪种像素格式?

时间:2013-02-22 03:16:15

标签: linux debian linux-device-driver v4l2

我正在编写一个从我的网络摄像头捕获视频的C应用程序。 我无法确定我的网络摄像头能够处理哪种像素格式。

的lsusb:

  

总线002设备003:ID 1e4e:0100 Cubeternet WebCam

dmesg的

[ 1064.735472] usb 2-1.4: new high speed USB device using ehci_hcd and address 4
[ 1064.837577] usb 2-1.4: New USB device found, idVendor=1e4e, idProduct=0100
[ 1064.837583] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1064.837587] usb 2-1.4: Product: USB2.0 Camera
[ 1064.837589] usb 2-1.4: Manufacturer: Etron Technologies
[ 1064.837715] usb 2-1.4: configuration #1 chosen from 1 choice
[ 1064.838484] uvcvideo: Found UVC 1.00 device USB2.0 Camera (1e4e:0100)
[ 1064.843070] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
[ 1064.844229] input: USB2.0 Camera as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0/input/input7

我能够确定图像尺寸'640x480'但不是像素格式: 我试过了

  

YUV420   RGB565   RGB32

没有成功。任何帮助请。 我使用的是Debian最新版本

2 个答案:

答案 0 :(得分:1)

因为它是一个UVC视频,所以在这里查看wiki:

http://www.wikiwand.com/en/USB_video_device_class

您将看到UVC支持

未压缩的YUV格式YUY2,NV12。

实际上YUY2也称为YUYV,它是YUV 4:2:2。

您可以在此处找到RGB转换:

https://bitbucket.org/neuralassembly/simplewebcam/src/a940256eda0d/jni/ImageProc.h

答案 1 :(得分:0)

您可以使用:

v4l2-ctl --list-formats 

应该会为您提供受支持的像素格式

此外,您还可以使用:

v4l2-ctl --list-formats-ext

这应该为您提供支持的像素格式的分辨率。