我正在编写一个从我的网络摄像头捕获视频的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最新版本
答案 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
这应该为您提供支持的像素格式的分辨率。