- 1 命令语法
- 2 描述/概览
- 3 详细说明
- 4 流的选择(指定)
- 5 选项
- 6 例子
- 7 语法
- 8 表达式计算/求值
- 9 OpenCL选项
- 10 编码选项
- 11 解码器
- 12 视频解码
- 13 音频解码
- 14 字幕解码
- 15 编码
- 16 音频编码器
- 17 视频编码器
- 18 字幕编码器
- 19 比特流滤镜(过滤器)
- 20 格式选项
- 21 分离器(解复用)
- 22 混合器
- 23 元数据
- 24 协议
- 25 设备选项
- 26 输入设备
- 27 输出设备
- 28 重采样(resampler)选项
- 29 放缩选项
- 30 滤镜入门
- 31 graph2dot
- 32 滤镜链图描述
- 33 时间线编辑
- 34 音频滤镜
- 35 音频源
- 36 音频槽
- 37 视频滤镜
- 38 视频源
- 39 视频槽
- 40 多媒体滤镜
- 41 多媒体源
- 42 参考
2 描述/概览
2 描述/概览
ffmpeg
是一个非常快的视频/音频转换器,其也可以现场抓取音频/视频源,并在任意采样率、尺寸之间调整视频,以及提供多种高品质的滤镜系统。
ffmpeg
从任意数量/形式的输入文件中进行读取(可以是普通文件,管道,网络流,设备源等等),通过输入文件选项对输入文件进行设定,通过-i
进行标记,并写入到任意数量/形式的输出文件中,任何在命令行中不能被解释为选项的字符串信息(当然也不是被-i
指定为输入文件的信息)都被作为一个输出文件。
原则上每个输入或输出文件都可包含数量不同的数据流(视频/音频/字幕/附件/数据….),具体文件中包含的数量和/或数据类型是文件的容器格式限定的,具体选择那些流从输入文件到输出文件则可能是自动或者依据-map
选项(在流的选择章中介绍)来指定。
为了明确指定输入文件,你必须采用从0开始的数字索引法,即第1个输入文件由0
索引,第2个则是1
。同样的,在一个文件中指定数据流也是通过同样规则的索引法,即2:3
表示第3个输入文件的第4个数据流。这些内容也可以参考流说明章节。
作为一般规则,选项用于指定紧接着的文件,因此命令中顺序很重要,你可以在命令中多次重复相同的选项,每次都可以应用于紧接着的下一个输入或者输出文件。例外的是全局选项(例如过程信息输出详细程度的选项),这些选项必须首先进行指定,会全局使用。
不要混淆输入和输出文件,要先指定所有的输入文件,然后才是所有的输出文件。也不要混淆选项应用的不同文件,所有的选项仅仅作用于紧接着的输入或者输出文件,除非重复指定选项才能作用于其他需要同样设定的文件。
为了设定输出视频码率为64kbit/s:
ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi
为了切换帧率到24fps:
ffmpeg -i input.avi -r 24 output.avi
为了强制把输入文件帧率设为1fps(仅为了建议raw格式数据), 并且把输出文件帧率设置为24fps:
ffmpeg -r 1 -i input.m2v -r 24 output.avi
注意这里的输入文件必须是raw格式的输入文件。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论