FFplay说明文档(中文翻译)

英文原版: FFplay Documentation

摘要

ffplay [options] [input_file]

简介

FFplay是一个易用的并且可移植的,基于FFmpeg库和SDL库的媒体播放器。它是一个FFmpeg接口的测试器。

选项

所有有关数字的选项,如果没有特殊说明,接受字符串形式的数字,数字后面的SI单位可以带一个前缀,例如: ‘K’, ‘M’, ‘G’。

如果SI单位前带有 ‘i’ 前缀,那么这个完整的前缀代表了二进制形式的单位,单位的进制是1024,而不再是1000。如果SI单位带有 ‘B’ 后缀,那么SI单位需要乘以8。下面是一些数字前缀示例: ‘KB’, ‘MiB’, ‘G’, ‘B’。

如果选项没有添加任何前缀,表示设置选项为true。可以在选项名称加”no”前缀来表示设置选项为false。例如使用”-nofoo”来设置”foo”选项为false。

流标识符

每一路流可以使用一些选项,例如比特率,编解码器。流标识符用来说明给定的选项是属于哪一路流的。

流标识符是字符串形式的,添加在选项名称后面,且使用冒号分隔。例如 -codec:a:1 ac3 包含 a:1 流标识符,这个标识符代表选项适用于第二路音频流。结果是,第二路音频流使用 ac3 编解码器。

流标识符可以适配多个流,因此选项可以应用在所有流上。例如流标识符 -b:a 128k 适配所有的音频流。

没有流标识符代表适配所有的流。例如 -codec copy 或 -codec: copy 选项会原样拷贝所有的流而不会再次编码。

所有可能的流标识符如下:
stream_index
使用当前的索引适配流。例如 -threads:1 4 选项会设置第二路流的线程数为4。
注: 在编程中,索引默认是从0开始的,因此:1代表的是第二个。

stream_type[:stream_index]
stream_type代表流类型,可用类型如下:’v’或’V’代表视频,’a’代表音频,’s’代表字幕,’d’代表数据,’t’代表附件。其中,’v’适配所有的视频流,’V’只适配没有附加图片,缩略图,封面的视频流。如果有stream_index存在,此选项仅适配stream_index索引指定的流类型。否则,适配所有流类型。

p:program_id[:stream_index]
如果给定了stream_index,流标识符适配项目ID program_id指定的第stream_index路流。否则适配项目中的所有的流。

#stream_id 或 i:stream_id
适配stream_id标识的流(例如MPEG-TS中的PID)。

m:key[:value]
适配元数据中标签为key并且值为value的流。如果没有给定value,适配标签为key的所有流。

u
使用可用的配置信息适配流,必须指定编码解码器,同时必须指定必备的视频分辨率或音频采集率。

注: 在FFmpeg中,适配元数据仅对输入文件有效。

常用选项

当前选项适用于所有ff开头的工具。

-L
显示授权信息。

-h, -?, -help, –help [arg]
显示帮助信息。如果指定参数,那么只显示该参数的帮助信息。如果未指定参数,那么只显示基础选项信息,而不显示高级选项信息。

可用的参数取值如下:
long
显示高级选项信息。

full
显示所有的选项信息,包括共享的和私有的编码器,解码器,混流器,解流器,过滤器等选项。

未完待续…