使用 UVC 1.5 制作以 60 fps 运行的 1080p 网络摄像头

Ada*_*zek 11 webcam logitech uvc 20.04

我想将我的网络摄像头升级到一个以 60 fps(实际运行 60 fps)提供 FHD (1920x1080) 分辨率的摄像头,它在 Ubuntu 20.04 下完全支持,据我所知,我应该寻找一个UVC 1.5(USB 视频设备类) 兼容设备。但是,我有点担心以下帖子的结论: Logitech Streamcam 未在 Manjaro 上提供所有模式

长话短说,在UVC 维基百科 上指出,Linux 只检测 1.5 台设备而没有提供全部功能,只是试图安全地降到 1.0 或 1.1 版本。即使在最新的内核中,这个声明仍然有效吗?我们还没有完全成熟的 1.5 UVC 吗?

总结:

  • 最新的 Ubuntu 20.04(即使内核提升到 5.6)是否支持 UVC 1.5,如果没有如何修补? (内核 5.6 应该为我们提供早期的 USB4 支持,因此是摆脱过去所有缺乏功能的好时机。)

  • 我们是否需要完整的 1.5 UVC 支持才能获得 1080p @ 60 fps 或者是否有任何解决方法? (在https://www.ideasonboard.org/uvc/ 上说当前的 UVC 实现已经支持 MJPEG 有效负载,并且上述帖子中的 StreamCam 支持它。所以也许,我不应该坚持 1.5 版本,它只需要在配置中稍作修改?)

ph0*_*nix 6

密切关注此线程和前面提到的https://superuser.com/questions/1540980/logitech-streamcam-not-offering-all-modes-on-manjaro的线程,我最近买了 StreamCam 。我很高兴地向您报告,它在我的 Thinkpad X1 Carbon R6 笔记本电脑(配备 Sunrise Point-LP USB 3.0 xHCI 控制器的 Intel i7-8550U CPU)和 Ubuntu 20.04、内核 5.4.0 的两个 USB-C 端口上运行良好。Cheese 应用程序仅记录 1920\xc3\x971080@30fps,但这可能是因为它没有设置帧速率的选项。有了guvcview它,我可以以 60fps 的速度进行全高清录制。

\n

为了便于将来参考,我将在下面列出有关相机的一些信息。首先是一些lsusb输出:

\n
$ lsusb | grep StreamCam\nBus 004 Device 002: ID 046d:0893 Logitech, Inc. Logitech StreamCam\n\n$ lsusb -t | awk \'BEGIN{RS="/:"} $2 ~ "04" {print $0}\' \n  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M\n    |__ Port 2: Dev 2, If 0, Class=Video, Driver=uvcvideo, 5000M\n    |__ Port 2: Dev 2, If 1, Class=Video, Driver=uvcvideo, 5000M\n    |__ Port 2: Dev 2, If 2, Class=Audio, Driver=snd-usb-audio, 5000M\n    |__ Port 2: Dev 2, If 3, Class=Audio, Driver=snd-usb-audio, 5000M\n    |__ Port 2: Dev 2, If 4, Class=Vendor Specific Class, Driver=, 5000M\n    |__ Port 2: Dev 2, If 5, Class=Human Interface Device, Driver=usbhid, 5000M\n
Run Code Online (Sandbox Code Playgroud)\n

v4l2-ctl上面列出的命令的输出:

\n
$ v4l2-ctl --list-devices | grep -A2 Stream\nLogitech StreamCam (usb-0000:3b:00.0-2):\n    /dev/video2\n    /dev/video3\n\n$ v4l2-ctl --list-formats-ext -d /dev/video2 \nioctl: VIDIOC_ENUM_FMT\n    Type: Video Capture\n\n    [0]: \'YUYV\' (YUYV 4:2:2)\n        Size: Discrete 640x480\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 176x144\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 320x240\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 424x240\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 640x360\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 848x480\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 960x540\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1280x720\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1600x896\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1920x1080\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 2304x1296\n            Interval: Discrete 0.200s (5.000 fps)\n    [1]: \'MJPG\' (Motion-JPEG, compressed)\n        Size: Discrete 640x480\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 176x144\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 320x240\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 424x240\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 640x360\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 848x480\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 960x540\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1280x720\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1600x896\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1920x1080\n            Interval: Discrete 0.017s (60.000 fps)\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n    [2]: \'NV12\' (Y/CbCr 4:2:0)\n        Size: Discrete 640x480\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 640x360\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1280x720\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n        Size: Discrete 1920x1080\n            Interval: Discrete 0.033s (30.000 fps)\n            Interval: Discrete 0.042s (24.000 fps)\n            Interval: Discrete 0.050s (20.000 fps)\n            Interval: Discrete 0.067s (15.000 fps)\n            Interval: Discrete 0.100s (10.000 fps)\n            Interval: Discrete 0.133s (7.500 fps)\n            Interval: Discrete 0.200s (5.000 fps)\n
Run Code Online (Sandbox Code Playgroud)\n

不幸的是,坏消息是,在我的配备 AMD Ryzen 3600 CPU 和 B450 主板的台式电脑上,StreamCam 在 1280\xc3\x97720 下工作guvcview,但当我尝试切换到更高的帧速率或更高分辨率时,某些东西会崩溃......也许有缺陷的 USB3.1 控制器?我将尝试进一步调查此事,并在了解更多信息后向此处报告。

\n

更新

\n

由于我的主板 (Gigabyte B450 Aorus Pro) 只有一个 USB-C 端口,我购买了一个 USB-A(公头)转 USB-C(母头)适配器来尝试其他 USB 端口之一,现在 StreamCam 可在我的桌面上使用也。有趣的是,即使它连接到与 USB-C 端口相同的 USB 控制器,它现在也可以工作。我不知道为什么C口的相机会出现这些问题。

\n

根据记录,主板有两个 USB 3 控制器:一个来自 CPU(USB 3.1 Gen 1,5Gbps,背面 4 个端口),一个来自芯片组(USB3.1 Gen 2,10Gbps,1\xc3\x97 类型) C、1\xc3\x97 A 型、2\xc3\x97 通过内部接头连接到我机箱顶部的 2 个 A 型连接器)。有趣的是,该相机适用于所有端口,除了连接到内部接头连接器的两个端口(当然还有 Type C 端口)。我在日志中看到一些消息,但经过几次尝试后,我看到usb usb2-port3: unable to enumerate USB device并停止了进一步的检测。我想这可能是因为总电缆长度太长。IIRC USB 3.1 的最大长度为 1.5m,因此使用内部电缆和相机电缆我已经非常接近了。

\n


Ada*_*zek 5

问题解决了(至少在我的情况下)。

首先,我要感谢 Laurent Pinchart 给我提供的所有线索以及他在 uvcvideo 内核模块(他是作者)方面的出色工作。

根据他的建议,我购买了 Logitech Brio Stream(Brio 4K Stream Edition,PN:960-001194,vId:pId = 046d: 086b),它比Logitech Streamcam 中提到的 Stream Cam稍旧,不提供 Manjaro 上的所有模式,所以我认为它可能不那么成问题。

什么?Brio 支持所有宣传的分辨率和 fps 开箱即用 1080p @ 60fps 甚至 4K @ 30fps。

(在这个答案的早期版本中,我说我在输入命令后遇到了问题# lsusb -v -d 046d:086b,但今天我无法重现这个错误。我同时在许多不同的应用程序中尝试它,也许有些东西重叠了。所以这个 Brio 是 100% 好的。)

我可以根据这个使用guvcview 中的所有设置:

# v4l2-ctl --list-devices

BRIO 4K Stream Edition (usb-0000:00:14.0-6.2):
    /dev/video0
    /dev/video1
    /dev/media0       # This entry was only visible under root.


# v4l2-ctl --list-formats-ext

ioctl: VIDIOC_ENUM_FMT
    Type: Video Capture

    [0]: 'YUYV' (YUYV 4:2:2)
        Size: Discrete 640x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 160x120
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 176x144
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x180
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 352x288
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 340x340
            Interval: Discrete 0.033s (30.000 fps)
        Size: Discrete 424x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 440x440
            Interval: Discrete 0.033s (30.000 fps)
        Size: Discrete 480x270
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 640x360
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 800x448
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 800x600
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 848x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 960x540
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1024x576
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1280x720
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1600x896
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1920x1080
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
    [1]: 'MJPG' (Motion-JPEG, compressed)
        Size: Discrete 640x480
            Interval: Discrete 0.008s (120.000 fps)
            Interval: Discrete 0.011s (90.000 fps)
            Interval: Discrete 0.017s (60.000 fps)
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 160x120
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 176x144
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x180
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 352x288
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 424x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 480x270
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 640x360
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 800x448
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 800x600
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 848x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 960x540
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1024x576
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1280x720
            Interval: Discrete 0.011s (90.000 fps)
            Interval: Discrete 0.017s (60.000 fps)
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1600x896
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1920x1080
            Interval: Discrete 0.017s (60.000 fps)
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 2560x1440
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 3840x2160
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 4096x2160
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
    [2]: 'NV12' (Y/CbCr 4:2:0)
        Size: Discrete 640x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 640x360
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1280x720
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1920x1080
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.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.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
Run Code Online (Sandbox Code Playgroud)

我希望这会帮助别人。