5.1流说明符-FFmpeg文档教程-多媒体-IT技术博客

每个流会应用某些选项,例如比特率或编解码器。流说明符用于精确指定给定选项所属的流。


流说明符是通常附加到选项名称并由冒号分隔的字符串。例如。 -codec:a:1 ac3包含与第二个音频流匹配的a:1流说明符。因此,它将为第二个音频流选择ac3编解码器。


流说明符可以匹配多个流,因此该选项将应用于所有这些流。例如。 -b:128k中的流说明符匹配所有音频流。


空的流说明符匹配所有流。例如,-codec copy或-codec:copy将复制所有流而无需重新编码。


流说明符的可能形式为:


stream_index

将流与此索引匹配。例如。 -threads:1 4会将第二个流的线程计数设置为4。如果将stream_index用作附加的流说明符(请参见下文),则它将从匹配的流中选择流号stream_index。流编号基于libavformat检测到的流顺序,除非还指定了程序ID。在这种情况下,它基于程序中流的顺序。


stream_type[:additional_stream_specifier]

stream_type是以下内容之一:"v”或"V”表示视频,"a”表示音频,"s”表示字幕,"d”表示数据,"t”表示附件。 "v”匹配所有视频流,"v”仅匹配未附加图片,视频缩略图或封面艺术的视频流。如果使用了extra_stream_specifier,则它将匹配具有这种类型的流,并匹配Additional_stream_specifier。否则,它将匹配指定类型的所有流。


p:program_id[:additional_stream_specifier]

匹配程序中ID为program_id的流。如果使用了extra_stream_specifier,则它匹配既是程序一部分又匹配Additional_stream_specifier的流。


#stream_id或i:stream_id

按流ID匹配流(例如MPEG-TS容器中的PID)。


m:key[:value]

将流与具有指定值的元数据标签键匹配。如果未提供value,则将包含给定标签的流与任何值进行匹配。


u

将流与可用配置匹配,必须定义编解码器,并且必须提供基本信息,例如视频尺寸或音频采样率。


请注意,在ffmpeg中,按元数据进行的匹配仅适用于输入文件。


标签: FFmpegffmpeg教程ffmpeg命令ffmpeg参数ffmpeg文档ffmpeg手册