3

I attempted the command below:

v4l2-ctl -d 0 --get-standard

But I get the error

VIDIOC_G_STD: failed: Inappropriate ioctl for device

The below command however works completely fine.

v4l2-ctl -d 0 --all

Any help would be appreciated. In my program when resetting the controls for my camera I am getting the Inappropriate ioctl for device.

v4l2-compliance

The above command fails four tests. I showed some of the failed tests below. I definitely need VIDIOC_QUERYCTRL to work.

    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:
pd109
  • 335
  • 2
  • 3
  • 12

0 Answers0