Ubuntu20.04安装ffmpeg,并捕获视频流

工控机:幻影峡谷
系统:Ubuntu20.04
摄像头:杰瑞微通环星光USB摄像头杰瑞微通环星光USB摄像头

安装ffmpeg步骤

依次运行以下命令:

sudo apt update  
sudo apt install ffmpeg

在这里插入图片描述
安装完成后,通过运行ffmpeg -version来验证安装是否成功,并查看FFmpeg的版本信息。

ffmpeg -version

在这里插入图片描述上图表明,ffmpeg已经安装。

接入USB摄像头后,使用ffmpeg拉取视频流

查找可用的摄像头设备

在Ubuntu系统中,USB摄像头通常会被识别为/dev/videoX设备,其中X是一个数字。可以使用FFmpeg的-list_formats选项来查看可用的摄像头设备和它们支持的格式:

ffmpeg -f v4l2 -list_formats all -i /dev/video0

在这里插入图片描述上图表明已经成功运行了 ffmpeg 命令来列出 /dev/video0 设备上可用的视频格式。从输出中可以看到,Compressed和Raw部分列出了设备支持的视频格式和分辨率:Compressed: mjpeg 表示设备支持Motion-JPEG压缩格式,并且列出了支持的分辨率。Raw: yuyv422表示设备支持原始YUV格式(特别是YUYV 4:2:2)。Compressed: h264表示设备支持H.264压缩格式,也列出了支持的分辨率。

捕获摄像头的视频流

(1)如果想要捕获摄像头的视频流并将其保存为文件,例如保存为MP4格式,使用以下的命令:

ffmpeg -f v4l2 -video_size 640x480 -i /dev/video0 -c:v libx264 -preset ultrafast -crf 23 -y output.mp4

这个命令的含义是:

-f v4l2:指定输入格式为 Video4Linux2(Linux下USB摄像头常用的格式)。
-video_size 640x480:设置视频捕获的分辨率为 640x480。可以根据需要选择其他分辨率。
-i /dev/video0:指定输入设备为 /dev/video0。
-c:v libx264:指定视频编码器为 libx264,它将视频编码为 H.264 格式。
-preset ultrafast:设置 x264 编码器的预设为 ultrafast,以获得最快的编码速度(但可能牺牲一些压缩效率)。
-crf 23:设置 Constant Rate Factor(CRF)为 23,这是一个控制视频质量的参数。值越小,质量越好,但文件也会越大。
-y:如果输出文件已存在,则覆盖它。
output.mp4:输出文件的名称。

(2)如果想要实时查看摄像头的视频流而不保存为文件,使用 ffplay 命令(它是 FFmpeg 套件的一部分):
ffplay -f v4l2 -video_size 640x480 -i /dev/video0

验证

只是实时查看摄像头的视频流:
运行上述命令之后,右侧出现了摄像头的视频流

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/17652.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Postgresql源码(134)优化器针对volatile函数的排序优化分析

相关 《Postgresql源码(133)优化器动态规划生成连接路径的实例分析》 上一篇对路径的生成进行了分析,通过make_one_rel最终拿到了一个带着路径的RelOptInfo。本篇针对带volatile函数的排序场景继续分析subquery_planner的后续流程。 subquer…

SAM遥感图像处理开源新SOTA!在GPU上实现40倍加速,不损准确性

在遥感图像处理领域,通过SAM捕捉复杂图像特征和细微差异,可以实现高精度的图像分割,提升遥感数据的处理效率。这种高度的准确性让SAM遥感展现出了比传统方法更优越的性能。 不仅如此,这种策略灵活普适的特性还能拓展遥感技术的应…

4款让人骄傲的国产软件,功能过于强大,却被误认为是外国佬研发

说到国产软件,许多人可能会有“流氓软件、弹屏广告多、隐藏消费套路”等负面印象。 这种偏见导致一些功能强大、用户友好的国产软件被误认为是外国人开发的。 1、格式工厂 格式工厂是一个很实用的国产格式转换工具,它完全免费且没有广告,不…

实现echarts多图联动效果

实现echarts多图联动效果 文章目录 实现echarts多图联动效果业务场景实现关键api代码示例(vue) 业务场景 提示:主要是记录一下多个echarts联动效果实现方案 这本来就是echarts本身自带的api,并没有多高级,奈何寻找的过…

使用DockerFile 编写 指令来构建镜像

文章目录 前言使用DockerFile 编写 指令来构建镜像1. 构建2. 验证 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差,实在白嫖的话&#x…

混合A*算法详解(二)路径平滑

描述 上一篇文章混合A*算法详解(一)路径搜索 路径损失函数使用Voroni势能图 根据之前的文章分析,决定A*路径长度的有两点:路径长度和距离障碍物远近。Voroni图用于权衡这两者。之前我在记录二维点云的阿尔法形状算法时简单介绍过…

grafana大盘展示node_expod节点

node_expod添加lables标签 Prometheus查询 语句查询 node_exporter_build_infografna添加变量查询 正常有值 切换其他的是有值的 我的报错原因 因为有多个数据源,我选择错了,因为修改的lable标签是其他数据源,所以获取不到 查询语句 我的变量是 $app node_filesyste…

JavaScript的当前时间设置及Date的运算

作者:私语茶馆 1.场景描述 如下图,在HTML刚加载时,需要将开始时间设置为默认当前时间,结束时间设置为当前时间后7天的时间。手工填写时间时,时间段不超过30天。 这里涉及到两个技术点: 1)Input Date的当前时间设置 2)date的运算 由于是动态修改HTML,所以采用…

AI预测福彩3D采取888=3策略+和值012路一缩定乾坤测试5月28日预测第4弹

昨天的第二套方案已命中,第一套方案由于杀了对子,导致最终出错。 今天继续基于8883的大底,使用尽可能少的条件进行缩号,同时,同样准备两套方案,一套是我自己的条件进行缩号,另外一套是8883的大底…

freemarker ftl模板 格式、列表、图片

文章目录 前言一、freemarker实现内容替换二、ftl 模板1.word另存ftl2.编辑ftl文件2.1 了解一下常用的标记及其说明2.2 list处理2.3 红线2.4 图片 总结 前言 固定内容word生成:freemarker ftl模板 动态表格生成:https://blog.csdn.net/mr_wanter/articl…

Python爬虫入门到进阶:解锁网络数据的钥匙

Python爬虫入门到进阶:解锁网络数据的钥匙 一、Python爬虫基础1.1 爬虫基本概念1.2 Python爬虫必备库1.3 第一个爬虫示例 二、实战爬虫实例2.1 爬取天气数据2.2 高级技巧:异步爬虫 三、反爬机制与应对策略3.1 常见反爬机制3.2 应对策略 四、性能优化与安…

【经验分享】可视化的项目管理,轻松解决资源冲突和协作困难

在数字化时代,高效协同逐步成为提升组织效能的重要着力点,同时也是企业保持竞争力、实现持续发展的关键要素。一方面可以打破部门壁垒,促进信息流通,从而提升整体工作效率;另一方面还能帮助企业优化资源配置和管理流程…

keithely 2401 低压源表

Keithley 2401 低压源表提供精密电压和电流源以及测量功能(1V - 20V 和 10pA - 1A)。它既是高度稳定的直流电源,也是真正的仪器级 5 位万用表。电源特性包括低噪声、精度和回读。万用表功能包括高重复性和低噪声。结果是紧凑型单通道直流参数…

JavaSE:String类常用方法(巨详细)

1、引言 在学习C语言时,我们就已经了解了字符串,但是在C语言中字符串只能用字符数组或者指针来表示,没有特定的字符串类型,而在Java中,我们有了字符串这一特定的类型---String类。 2、String类的常用方法 2.1 字符串…

第98天:权限提升-WIN 全平台MSF 自动化CS 插件化EXP 筛选溢出漏洞

目录 思维导图 前置知识 案例一: Web&Win2008-人工手动&全自动msf-筛选&下载&利用 手动 全自动msf 案例二: Web&Win2019-CS 半自动-反弹&插件&利用 思维导图 前置知识 提权方式,这里讲的是溢出漏洞 windows权限 常…

Java处理CSV文件示例

Java处理CSV文件示例 1. 导入依赖 <dependency><groupId>org.apache.commons</groupId><artifactId>commons-csv</artifactId><version>1.10.0</version></dependency>文件示例 下面是示例文件文件数据 vscode和idea都有解析…

智慧林业云巡平台 客户端和移动端(支持语音和视频)自动定位巡护,后端离线路线监测

目前现状 无法客观、方便地掌握护林员的到位情况&#xff0c;因而无法有效地保证巡护人员按计划要求&#xff0c;按时按周期对所负责的林区开展巡护&#xff0c;使巡护工作的质量得不到保证。遇到火情、乱砍滥伐等灾情时无法及时上报处理&#xff0c;现场状况、位置等信息描述…

[IM002][Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序(0]

目录预览 一、问题描述二、原因分析三、解决方案四、参考链接 一、问题描述 使用navicat 连接sql server出现[IM002][Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序&#xff08;0] 二、原因分析 Navicat没有找到电脑安装的SQLServer驱动 三、解决方…

向传音手机学习产品市场定位与产品需求定义

2024 年第一季度全球智能手机发货量同比增长 11%&#xff0c;排在第一名的是三星&#xff0c;占比 21%&#xff0c;苹果占比 17% 排在第二位&#xff0c;小米 14%排在第三名&#xff0c;传音手机10% 排在第四位&#xff0c;OPPO为 9% 排在第五名。 「非洲之王」传音手机表现十…

【Python】 如何从日期中减去一天?

基本原理 在编程中&#xff0c;日期和时间的处理是一个常见的需求&#xff0c;尤其是在处理日志、调度任务、数据分析等场景中。Python 提供了多种方式来处理日期和时间&#xff0c;其中最常用的库是 datetime。datetime 模块包含了日期&#xff08;date&#xff09;、时间&am…