ffmpeg命令介绍

ffmpeg.exe(linux/imac一般不带后缀,ffmpeg),
是一款音视频编解码的命令行工具软件, 常用于多媒体测试的文件制作与转码。
我们常用的:格式工厂,MediaCoder等多媒体格式转换软件,
其关键技术有一部分是直接或间接依赖ffmpeg.exe的,
ffmpeg可以说是编解码界使用最广泛的工具了。
不管是做多媒体测试,音视频编解码测试,还是普通测试人员日常工作,
比如一个Bug的视频太大了,无法作为附件上传到Bug系统,
则需要对视频用ffmpeg重新编码,比如降低分辨率,降低帧率等。
最终降低了视频的比特率,视频文件自然变小了很多,
这些我认为是测试人员的必备能力之一。

Windows版下载地址

https://ffmpeg.zeranoe.com/builds/win64/static/ffmpeg-20181210-a271025-win64-static.zip
下载后解压,把bin文件夹下的ffmpeg.exe丢到path环境变量里去,能在cmd端访问即可。

常用参数(暂只列出针对测试人员的常见参数)

-i 表示inputfile, 就是ffmpeg需要处理的文件(音频文件,视频文件,图片文件,原始音视频流)
-s 表示size, 分辨率设置, 视频相关的参数
-b 表示Video bitrate, 视频比特率,即每秒种的数据量,一般数据量越大,视频质量越好。
-r 表示frame rate, 视频的帧率,即每秒钟显示多少张图片,一般图片数越多,表示采样的越精细,视频质量越好

-ab 表示Audio bitrate,音频比特率,即每秒钟的数据量,-一般数据量越大,音频质量越好。
-ar 表示Audio rate, 即音频采样率,即每秒钟采集音频多少次,一般采集的次数(频率)越大,音频质量越好。
-an 表示Audio Notavaliable, 即去除音频数据

常见用法(暂只列出针对测试人员的常见用法)

table.dataframe {
font-family: verdana,arial,sans-serif;
font-size:13px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
width:80%;
white-space:nowrap;
}
table.dataframe th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:center;
}
table.dataframe tr {
background-color:whit;
}
table.dataframe td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:left;
white-space:nowrap;

}

序号 ffmpeg命令常见用法 释义
1 ffmpeg -i input.mp4 -r 12 -s 640x480 output.mp4 将input.mp4进行重编码(按帧率12fps,
分辨率640x480)并另存为outpu.mp4
2 ffmpeg -i input.mp4 output.mp3 提取input.mp4视频里的音频文件,
并另存为output.mp3
3 ffmpeg - input.jpg output.png 将input.jpg图片重新编码转换成png格式,
并另存为output.png
4 ffmpeg -i input.mov output.mp4 将input.mov进行重编码(帧率不变,
分辨率不变,编码格式会变成h.264)
并另存为outpu.mp4
5 ffmpeg -i input.mp4 -an output.mp4 将input.mp4视频进行去音频处理,
并另存为output.mp4
6 ffmpeg -i input.mp3 -ar 44.1 output.mp3 将input.mp3进行重编码(按采样率44.1khz),
并另存为output.mp3
7 ffmpeg -i input.mp4 -f image2 C:\img_%04d.jpg 将input.mp4视频转换成jpg图片帧
执行效果

tips 想了解更多ffmpeg命令及其参数,可以用ffmpeg --help来查看帮助文档

tips 下载ffmpeg.exe的过程中,还有一个ffplay.exe,ffprobe.exe.
ffplay.exe是ffplay解码播放器,ffplay.exe video.mp4 播放一个视频试试。
ffprobe.exe是查看多媒体信息流的,其实和mediainfo.exe差不多

更多更好的原创文章,请访问官方网站:www.zipython.com

原文链接:https://www.zipython.com/#/detail?id=5d3b9961790443ce9696fb8617225959

《自拍教程19》ffmpeg_音视频图像转码工具的更多相关文章

  1. 《自拍教程19》aapt_apk信息查看工具

    aapt命令行工具介绍 aapt.exe(Linux/Ubuntu/imac操作系统下是未带后缀的aapt), 是android sdk自带的用于打包apk,解析apk的命令行工具软件. aapt.e ...

  2. FFmpeg命令行工具和批处理脚本进行简单的音视频文件编辑

    FFmpeg_Tutorial FFmpeg工具和sdk库的使用demo 一.使用FFmpeg命令行工具和批处理脚本进行简单的音视频文件编辑 1.基本介绍 对于每一个从事音视频技术开发的工程师,想必没 ...

  3. Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载

    ☞ ░ 前往老猿Python博文目录 ░ 一.简介 MoviePy是一个用于视频编辑的Python模块,可用于进行视频的基本操作(如剪切.拼接.标题插入).视频合成(也称非线性编辑).视频处理或创建高 ...

  4. 个人永久性免费-Excel催化剂功能第83波-遍历文件夹内文件信息特别是图像、音视频等特有信息

    在过往的功能中,有体现出在Excel上管理文件的极大优势,在文件的信息元数据中,有图片和音视频这两类特有的属性数据,此篇对过往功能的一个补充,特别增加了图片和音视频信息的遍历功能. 使用场景 在文件管 ...

  5. 实时音视频互动系列(上):又拍云UTUN网络详解

    如何定义实时音视频互动, 延迟 400ms 内才能无异步感 实时音视频互动如果存在1秒左右的延时会给交流者带来异步感,必须将视频播放延迟限制在400ms以内,才能给用户较好的交互体验. 当延迟控制在4 ...

  6. 音视频入门-04-BMP图像四字节对齐的问题

    * 音视频入门文章目录 * BMP 图像四字节对齐 表示 BMP 位图中像素的位元是以行为单位对齐存储的,每一行的大小都向上取整为4字节(32 位 DWORD)的倍数.如果图像的高度大于 1,多个经过 ...

  7. Python MoviePy中文教程导览及可执行音视频剪辑工具下载

    ☞ ░ 前往老猿Python博文目录 ░ <Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载>是老猿两个关于moviepy的专栏<PyQt+moviepy ...

  8. Android视频录制从不入门到入门系列教程(二)————显示视频图像

    1.创建一个空的工程,注意声明下列权限: <uses-permission android:name="android.permission.CAMERA"/> < ...

  9. Python音视频开发:消除抖音短视频Logo的图形化工具实现

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在<Python音视频开发:消除抖音短视频Logo和去电视台标的实现详解>节介绍了怎么通过Python+Moviepy+OpenCV实现 ...

随机推荐

  1. 图解kubernetes scheduler基于map/reduce无锁设计的优选计算

    优选阶段通过分离计算对象来实现多个node和多种算法的并行计算,并且通过基于二级索引来设计最终的存储结果,从而达到整个计算过程中的无锁设计,同时为了保证分配的随机性,针对同等优先级的采用了随机的方式来 ...

  2. python 条件判断的三元表达式

    示例:求两数中最大者 在JavaScript中代码如下: x = 1; y = 2; console.log(x > y ? x : y) 在python中代码如下: # 条件为真时的返回结果 ...

  3. 架构师JavaScript 的对象继承方式,有几种程序写法?

    架构师JavaScript 的对象继承方式,有几种程序写法?   一.对象冒充 其原理如下:构造函数使用 this 关键字给所有属性和方法赋值(即采用类声明的构造函数方式).因为构造函数只是一个函数, ...

  4. JMeter——分布式压测

    一.Jmeter4.0分布式压测准备工作 压测注意事项            the firewalls on the systems are turned off or correct ports ...

  5. 打包一份py给大家用!!!

    好不容易写完了代码,却发现对面无法使用自己的python代码,其无奈可想而知 在这里就给大家介绍一下pyinstaller的简单用法 你所需要的就是在电脑上安装好 https://blog.csdn. ...

  6. Docker windows 容器启动失败 network not found

    前几天由于重启了服务器,docker配置的网络出了些问题导致在docker容器中安装的mysql识别用户权限时发生错误.(从宿主机A以user身份 登入到容器B中安装的Mysql时,用户竟然不是use ...

  7. 异想家IDEA的偏好配置

    最好将配置文件位置改为软件安装目录下,因为只有自己用,易于便携. 修改bin目录下的idea.properties,注释#去掉修改idea.config.path.idea.system.path配置 ...

  8. 自定义BeanDefinitionRegistryPostProcessor

    自定义BeanDefinitionRegistryPostProcessor 概述 BeanDefinitionRegistryPostProcessor继承自BeanFactoryPostProce ...

  9. Docker基础学习相关网址

    中文学习地址:https://yeasy.gitbooks.io/docker_practice/content/ 官网介绍地址:https://www.docker.com 官网学习地址:https ...

  10. freemark 基本使用

    实际上用程序语言编写的程序就是模板. FTL (代表FreeMarker模板语言). 这是为编写模板设计的非常简单的编程语言. 模板(FTL编程)是由如下部分混合而成的: 文本:文本会照着原样来输出. ...