当前位置: 首页 > web >正文

Linux查看相机支持帧率和格式

Linux查看相机支持帧率和格式

  • 1. 使用 v4l2-ctl 工具
    • 1. 安装 v4l-utils
    • 2. 查看相机设备
  • 2. 使用 ffmpeg 查看相机参数

在 Linux 系统中,要查看相机(如 USB 摄像头或内置摄像头)支持的 帧率(FPS) 和 视频格式(Pixel Format),可以使用以下工具和方法:

1. 使用 v4l2-ctl 工具

v4l2-ctl 是 Video4Linux2 (V4L2) 的实用工具,用于查询和控制视频设备(如摄像头)。

1. 安装 v4l-utils

sudo apt install v4l-utils   # Debian/Ubuntu
sudo dnf install v4l-utils   # Fedora
sudo pacman -S v4l-utils     # Arch Linux

2. 查看相机设备

v4l2-ctl --list-devices

输出示例:

/dev/video0: Integrated Camera (usb-0000:00:14.0-1):/dev/video1/dev/media0

这里 /dev/video0 是相机设备节点。查看支持的视频格式(Pixel Formats)

v4l2-ctl -d /dev/video0 --list-formats-ext

输出示例:

ioctl: VIDIOC_ENUM_FMTIndex       : 0Type        : Video CapturePixel Format: 'MJPG' (Motion-JPEG)Name        : Motion-JPEGSize: Discrete 1280x720Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.000 fps)Interval: Discrete 0.050s (20.000 fps)Size: Discrete 640x480Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.040s (25.000 fps)Index       : 1Pixel Format: 'YUYV' (YUYV 4:2:2)Name        : YUYV 4:2:2Size: Discrete 1280x720Interval: Discrete 0.033s (30.000 fps)Size: Discrete 640x480Interval: Discrete 0.033s (30.000 fps)

关键信息:

  1. Pixel Format:支持的视频格式(如 MJPG、YUYV、NV12 等)。

  2. Size:分辨率(如 1280x720、640x480)。

  3. Interval:帧间隔时间(0.033s ≈ 30 FPS)。

2. 使用 ffmpeg 查看相机参数

ffmpeg 也可以列出相机支持的格式和帧率:

ffmpeg -f v4l2 -list_formats all -i /dev/video0
[video4linux2,v4l2 @ 0x55a6a3b8e0] Raw       :     yuyv422 :           YUYV 4:2:2
[video4linux2,v4l2 @ 0x55a6a3b8e0] Compressed:       mjpeg :          Motion-JPEG

使用工具(如ffplay或cheese)打开每个节点,观察输出内容:

ffplay -f v4l2 /dev/video0

检查内核日志:

dmesg | grep video
http://www.xdnf.cn/news/20265.html

相关文章:

  • Linux系统安全加固:构建云计算安全的第一道防线
  • 迁移学习-ResNet
  • VBA 中使用 ADODB 操作 SQLite 插入中文乱码问题
  • JVM新生代和老生代比例如何设置?
  • Vue 3 项目中引入 Iconify
  • Spring Boot 和 Spring Cloud: 区别与联系
  • Oracle到ClickHouse:异构数据库ETL的坑与解法
  • HTML 各种事件的使用说明书
  • Spring Boot AOP:优雅解耦业务与非业务逻辑的利器
  • 如何将 Android 设备的系统底层日志(如内核日志、系统服务日志等)拷贝到 Windows 本地
  • WeaveFox AI智能开发平台介绍
  • Docker部署Drawnix开源白板工具
  • 【RelayMQ】基于 Java 实现轻量级消息队列(六)
  • React Fiber 风格任务调度库
  • 2025Android开发面试题
  • 目标检测双雄:一阶段与二阶段检测器全解析
  • Nextcloud 实战:打造属于你的私有云与在线协作平台
  • Oracle 数据库:视图与索引
  • 没 iCloud, 如何数据从iPhone转移到iPhone
  • ZooKeeper架构深度解析:分布式协调服务的核心设计与实现
  • Conda环境隔离和PyCharm配置,完美同时运行PaddlePaddle和PyTorch
  • 机器学习(七)决策树-分类
  • [论文阅读] 人工智能 + 软件工程 | 当ISO 26262遇上AI:电动车安全标准的新玩法
  • 中国移动浪潮云电脑CD1000-系统全分区备份包-可瑞芯微工具刷机-可救砖
  • 乐观并发: TCP 与编程实践
  • 华锐视点VR风电场培训课件:多模块全面覆盖风机知识与操作​
  • UniApp 页面通讯方案全解析:从 API 到状态管理的最佳实践
  • 【Docker-Day 24】K8s网络解密:深入NodePort与LoadBalancer,让你的应用走出集群
  • B 题 碳化硅外延层厚度的确定
  • 【Linux学习笔记】信号的深入理解之软件条件产生信号