v4l2-ctl使用帮助可以参考:https://www.mankier.com/1/v4l2-ctl

1 v4l2-ctl --list-devices

列出所有设备

USB 2.0 Camera: USB Camera (usb-0000:00:14.0-9):/dev/video0/dev/video1

一个USB camera对应两个设备:一个是图像/视频采集,一个是metadata采集。

2 v4l2-ctl --list-formats-ext --device path/to/video_device

列出指定设备的预览支持格式
v4l2-ctl --list-formats-ext --device /dev/video0

ioctl: VIDIOC_ENUM_FMTType: Video Capture[0]: 'MJPG' (Motion-JPEG, compressed)Size: Discrete 2592x1944Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 2560x1440Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.050s (20.000 fps)Interval: Discrete 0.067s (15.000 fps)Interval: Discrete 0.100s (10.000 fps)Size: Discrete 2048x1536Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 1920x1080Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 1600x1200Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 1280x960Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 1280x720Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 1024x768Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 800x600Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 640x480Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 320x240Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 2592x1944Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)[1]: 'YUYV' (YUYV 4:2:2)Size: Discrete 2592x1944Interval: Discrete 0.200s (5.000 fps)Interval: Discrete 0.200s (5.000 fps)Size: Discrete 2048x1536Interval: Discrete 0.200s (5.000 fps)Size: Discrete 1920x1080Interval: Discrete 0.200s (5.000 fps)Size: Discrete 1600x1200Interval: Discrete 0.200s (5.000 fps)Size: Discrete 1280x960Interval: Discrete 0.200s (5.000 fps)Size: Discrete 1280x720Interval: Discrete 0.100s (10.000 fps)Size: Discrete 1024x768Interval: Discrete 0.100s (10.000 fps)Size: Discrete 800x600Interval: Discrete 0.050s (20.000 fps)Size: Discrete 640x480Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 320x240Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.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.200s (5.000 fps)Size: Discrete 2592x1944Interval: Discrete 0.200s (5.000 fps)Interval: Discrete 0.200s (5.000 fps)

v4l2-ctl --list-formats-ext --device /dev/video1

ioctl: VIDIOC_ENUM_FMTType: Video Capture

3 v4l2-ctl --all --device path/to/video_device

获取指定设备的所有信息
v4l2-ctl --all --device /dev/video0

Driver Info:Driver name      : uvcvideoCard type        : USB 2.0 Camera: USB CameraBus info         : usb-0000:00:14.0-9Driver version   : 5.11.22Capabilities     : 0x84a00001Video CaptureMetadata CaptureStreamingExtended Pix FormatDevice CapabilitiesDevice Caps      : 0x04200001Video CaptureStreamingExtended Pix Format
Priority: 2
Video input : 0 (Camera 1: ok)
Format Video Capture:Width/Height      : 1920/1080Pixel Format      : 'MJPG' (Motion-JPEG)Field             : NoneBytes per Line    : 0Size Image        : 4147789Colorspace        : DefaultTransfer Function : Default (maps to Rec. 709)YCbCr/HSV Encoding: Default (maps to ITU-R 601)Quantization      : Default (maps to Full Range)Flags             :
Crop Capability Video Capture:Bounds      : Left 0, Top 0, Width 1920, Height 1080Default     : Left 0, Top 0, Width 1920, Height 1080Pixel Aspect: 1/1
Selection Video Capture: crop_default, Left 0, Top 0, Width 1920, Height 1080, Flags:
Selection Video Capture: crop_bounds, Left 0, Top 0, Width 1920, Height 1080, Flags:
Streaming Parameters Video Capture:Capabilities     : timeperframeFrames per second: 30.000 (30/1)Read buffers     : 0brightness 0x00980900 (int)    : min=-64 max=64 step=1 default=0 value=0contrast 0x00980901 (int)    : min=0 max=64 step=1 default=32 value=32saturation 0x00980902 (int)    : min=0 max=128 step=1 default=70 value=70hue 0x00980903 (int)    : min=-40 max=40 step=1 default=0 value=0
white_balance_temperature_auto 0x0098090c (bool)   : default=1 value=1gamma 0x00980910 (int)    : min=72 max=500 step=1 default=100 value=100gain 0x00980913 (int)    : min=0 max=100 step=1 default=0 value=0power_line_frequency 0x00980918 (menu)   : min=0 max=2 default=1 value=10: Disabled1: 50 Hz2: 60 Hzwhite_balance_temperature 0x0098091a (int)    : min=2800 max=6500 step=1 default=4600 value=4600 flags=inactivesharpness 0x0098091b (int)    : min=0 max=6 step=1 default=3 value=3backlight_compensation 0x0098091c (int)    : min=0 max=2 step=1 default=1 value=1exposure_auto 0x009a0901 (menu)   : min=0 max=3 default=3 value=31: Manual Mode3: Aperture Priority Modeexposure_absolute 0x009a0902 (int)    : min=1 max=5000 step=1 default=157 value=157 flags=inactive

v4l2-ctl --all --device /dev/video1

Driver Info:Driver name      : uvcvideoCard type        : USB 2.0 Camera: USB CameraBus info         : usb-0000:00:14.0-9Driver version   : 5.11.22Capabilities     : 0x84a00001Video CaptureMetadata CaptureStreamingExtended Pix FormatDevice CapabilitiesDevice Caps      : 0x04a00000Metadata CaptureStreamingExtended Pix Format
Priority: 2
Format Metadata Capture:Sample Format   : 'UVCH' (UVC Payload Header Metadata)Buffer Size     : 1024

4 v4l2-ctl --device path/to/video_device --set-fmt-video=width=width,height=height,pixelformat=MJPG --stream-mmap --stream-to=path/to/output.jpg --stream-count=1

从特定设备以特定分辨率抓图
v4l2-ctl --device /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=MJPG --stream-mmap --stream-to=./output_1920.jpg --stream-count=1
v4l2-ctl --device /dev/video0 --set-fmt-video=width=2560,height=1440,pixelformat=MJPG --stream-mmap --stream-to=./output_2560.jpg --stream-count=1
v4l2-ctl --device /dev/video0 --set-fmt-video=width=2592,height=1944,pixelformat=MJPG --stream-mmap --stream-to=./output_2592.jpg --stream-count=1
FastStoneImageViewer对比看图,1920x1080先scale到2560*1080。
v4l2-ctl --device /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=YUYV --stream-mmap --stream-to=./output_1920.yuyv --stream-count=1
...

5 v4l2-ctl --device path/to/video_device --set-fmt-video=width=width,height=height,pixelformat=format --stream-mmap --stream-to=path/to/output --stream-count=number_of_frames_to_capture

从特定设备以特定分辨率抓流
v4l2-ctl --device /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=MJPG --stream-mmap --stream-to=./output --stream-count=100
支持264的可以编码为h264看
v4l2-ctl --device /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=H264 --stream-mmap --stream-to=./output --stream-count=100
v4l2-ctl --device /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=MJPG --stream-mmap --stream-to=./output.mjpg --stream-count=300
找到了可以播放mjpg格式的软件:完美解码的PotPlayer

注意:output.mjpg是输出的文件,默认用PotPlayer软件打开
v4l2-ctl --device /dev/video0 --set-fmt-video=width=2560,height=1440,pixelformat=MJPG --stream-mmap --stream-to=./output_2560.mjpg --stream-count=30
v4l2-ctl --device /dev/video0 --set-fmt-video=width=2592,height=1944,pixelformat=MJPG --stream-mmap --stream-to=./output_2592.mjpg --stream-count=300

6 v4l2-ctl --list-ctrls --device /path/to/video_device

列出设备控制值
v4l2-ctl --list-ctrls --device /dev/video0

                     brightness 0x00980900 (int)    : min=-64 max=64 step=1 default=0 value=0contrast 0x00980901 (int)    : min=0 max=64 step=1 default=32 value=32saturation 0x00980902 (int)    : min=0 max=128 step=1 default=70 value=70hue 0x00980903 (int)    : min=-40 max=40 step=1 default=0 value=0
white_balance_temperature_auto 0x0098090c (bool)   : default=1 value=1gamma 0x00980910 (int)    : min=72 max=500 step=1 default=100 value=100gain 0x00980913 (int)    : min=0 max=100 step=1 default=0 value=0power_line_frequency 0x00980918 (menu)   : min=0 max=2 default=1 value=1white_balance_temperature 0x0098091a (int)    : min=2800 max=6500 step=1 default=4600 value=4600 flags=inactivesharpness 0x0098091b (int)    : min=0 max=6 step=1 default=3 value=3backlight_compensation 0x0098091c (int)    : min=0 max=2 step=1 default=1 value=1exposure_auto 0x009a0901 (menu)   : min=0 max=3 default=3 value=3exposure_absolute 0x009a0902 (int)    : min=1 max=5000 step=1 default=157 value=157 flags=inactive

7 v4l2-ctl --stream-mmap --stream-to-host <hostname>

Stream video from /dev/video0 and stream it over the network

8 v4l2-ctl --stream-dmabuf --export-device /dev/video2

Stream video from /dev/video0 using DMABUFs exported from /dev/video2

9 v4l2-ctl --stream-mmap --stream-out-mmap

Stream video from a memory-to-memory device

10 v4l2-ctl -d1 --stream-mmap --out-device /dev/video2 --stream-out-dmabuf

Stream video from a capture video device (/dev/video1) to an output video device (/dev/video2)

v4l2-ctl基本使用方法相关推荐

  1. HIGHGUI ERROR: V4L/V4L2: VIDIOC_S_CROP错误解决方法

    在树莓派上运行在windows上正确的程序,  报错: HIGHGUI ERROR: V4L/V4L2: VIDIOC_S_CROP OpenCV Error: Assertion failed (s ...

  2. 深入理解Java线程池:ThreadPoolExecutor

    线程池介绍 在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理.如果每次请求都新创建一个线程的话实现起来非常简便,但是存在一个问题: 如果并发的请求数量非常多,但每个线 ...

  3. JDK ThreadPoolExecutor核心原理与实践

    作者:vivo互联网服务器团队-Xu Weiteng 一.内容概括 本文内容主要围绕JDK中的ThreadPoolExecutor展开,首先描述了ThreadPoolExecutor的构造流程以及内部 ...

  4. C++中友元类使用场合

    在C++中我们可以將函数定义成类的友元函数,这样在函数中就可以访问类的私有成员.与函数相同,类也可以作为另一个类的友元类,在友元类中可以访问另外一个类的所有成员. 声明友元类的方法很简单,只需在类中写 ...

  5. 【多线程】ThreadPoolExecutor类源码解析----续(二进制相关运算)

    前言 在之前阅读 ThreadPoolExecutor 源码的时候,发现代码里用到了一些二进制相关的位运算之类的代码,看起来有些费劲了,所以现在大概总结了一些笔记,二进制这东西吧,不难,就跟数学一样, ...

  6. [并发编程] - Executor框架#ThreadPoolExecutor源码解读03

    文章目录 Pre execute源码分析 addWorker()解读 Worker解读 Pre [并发编程] - Executor框架#ThreadPoolExecutor源码解读02 说了一堆结论性 ...

  7. 深入理解 Java 线程池:ThreadPoolExecutor

    线程池介绍 在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理.如果每次请求都新创建一个线程的话实现起来非常简便,但是存在一个问题: 如果并发的请求数量非常多,但每个线 ...

  8. Java并发之线程池ThreadPoolExecutor源码分析学习

    线程池学习 以下所有内容以及源码分析都是基于JDK1.8的,请知悉. ​ 我写博客就真的比较没有顺序了,这可能跟我的学习方式有关,我自己也觉得这样挺不好的,但是没办法说服自己去改变,所以也只能这样想到 ...

  9. 学硕论文选题计算机,计算机硕士论文题目分享

    计算机硕士论文要确定题目不是一件容易的事情,下面是小编为大家整理的计算机硕士论文题目,希望对大家有帮助. 计算机硕士论文题目一 1.星连通圈网络和三角塔网络的若干性质研究 2.中职<计算机应用基 ...

  10. Java线程池ThreadPoolExecutor源码分析

    继承关系 Executor接口 public interface Executor {void execute(Runnable command); } ExecutorService接口 publi ...

最新文章

  1. vim设置行号等一系列配置
  2. Java 必须掌握的 12 种 Spring 常用注解!
  3. VMware虚拟机中,RHEL系统下挂载、卸载新硬盘的方法
  4. Mac 使用SSH远程登录
  5. Web三大组件的注册——Servlet、Filter、Listener(监听三大作用域: ServletContext、HttpSession、ServletRequest )
  6. Maven配置之pom.xml(一)
  7. 智能一代云平台(四十二):关于异常的一些事
  8. Redis详细下载安装教程
  9. 程序员微信名昵称_推荐几个高逼格的微信昵称?
  10. 功率曲线k值_一种基于DTW的改进K-means的日负荷曲线聚类方法技术
  11. 该死!辛苦制作的PDF文档被人随意传播,甚至还被拿去卖钱?
  12. xtu1395 字符频度
  13. macbook pro VK-QF9700网线转换器驱动下载安装与生效
  14. 虚拟机中Linux系统克隆
  15. 请教:Java字符串内部的大括号,与方法参数中的...,代表什么意思呢?
  16. GUET七星瓢虫2022年考核题目ctf部分复现
  17. 【转】解析IAR的ILINK链接器icf配置文件
  18. 美丽邂逅——解疑用户体验设计
  19. Spring Boot 线上项目管理
  20. python爬虫爬取某宝化妆品信息

热门文章

  1. 一元云购系统接入手机短信功能说明【V3版】
  2. mysql查询每月最后一天数据_Mysql查询每个月的最后一天
  3. 【人脸58点关键点】基于面积对比法的脑卒中识别算法
  4. 回文子串、回文子序列相关题目
  5. 【无标题】123123123
  6. less混合 + less计算
  7. qsnctf queen wp
  8. 【Android 逆向】ApkTool 工具使用 ( ApkTool 简介 | ApkTool 解包和打包 )
  9. 原生JavaScript贪吃蛇
  10. embed标签属性的介绍和用法