我尝试了以下命令:
v4l2-ctl -d 0 --get-standard
但我得到了错误
VIDIOC_G_STD: failed: Inappropriate ioctl for device
但是,下面的命令完全可以正常工作。
v4l2-ctl -d 0 --all
任何帮助,将不胜感激。在我的程序中,当我为我的相机重置控件时,我得到了 Inappropriate ioctl for device。
v4l2-compliance
上述命令未能通过四次测试。我在下面展示了一些失败的测试。我绝对需要 VIDIOC_QUERYCTRL 才能工作。
Driver name : uvcvideo
Card type : HD Web Camera
Bus info : usb-3610000.xhci-4.1
Driver version: 4.9.140
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Compliance test for device /dev/video0 (not using libv4l2):
Test input 0:
Control ioctls:
fail: v4l2-test-controls.cpp(202): invalid query_ext_ctrl return code (5)
test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: FAIL
fail: v4l2-test-controls.cpp(312): invalid queryctrl return code (5)
test VIDIOC_QUERYCTRL: FAIL
V4L2_CAP_TIMEPERFRAME
fail: v4l2-test-formats.cpp(1140): node->has_frmintervals && !cap->capability
test VIDIOC_G/S_PARM: FAIL
test VIDIOC_G_FMT: FAIL
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
fail: v4l2-test-buffers.cpp(574): VIDIOC_EXPBUF is supported, but the V4L2_MEMORY_MMAP support is missing, probably due to earlier failing format tests.
Test input 0: