Components
组件描述
- libavutil:描述时间、视频大小、帧率、码率、颜色、渠道语法格式- 包括字符串处理函数、随机数生成器、数学函数、加密函数
 
- libswscale:图形变换,图片rescaling和像素格式变换- 视频rescaling:改变视频大小
- 改变图片格式和颜色空间
 
- libswresample:音频重采样- 音频48KHz降采到8KHz
- 多声道到单声道
 
- libavcodec:编解码- Bitstream Filters:执行bitstream级别的修改,但不执行解码
 
- libavformat:混流与分流.支持多种不同协议的读取,例如rtmp,hls- 解封和封装一些音视频容器格式
 
- libavdevice:类似mux和demux,从不同的输入设备demux,然后到输出设备mux
- libavfilter:
命令行
语法:
https://ffmpeg.org/ffmpeg.html#Stream-specifiers-1
| 1 | ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ... | 
- 所有在命令行中无法解释为option的都当输出考虑 
- -map选项制定输入和输出的对应关系 
- 选项中制定输入文件可以用从0开始的index制定,stream也是从0开始指定 
- copy选项说明不需要进行decode和encode,适用于改变容器类型 
- stream specifiers: - -codec:a:1 ac3 第二个输入文件的audio使用ac3 codec
- stream_index 流索引
- stream_type[:additional_stream_specifier] v:video,a:audio,s:subtitle,d:data,t:attachments
- p:program_id[:additional_stream_specifier]
- #stream_id or i:stream_id PID in MPEG-TS container
- m:key[:value] 匹配metadata tag中有特定key和值的流
- u
 
- 通用命令 - 1 
 2- ffmpge -codecs 列出可用codec 
 ffmpeg -muxers 列出可用muxers