1.基础知识
- 容器/文件(Container/File):特定格式的多媒体文件
- 媒体流(Stream):时间轴上的一段连续数据
- 数据帧/数据包(Frame/Packet):一般Frame对应压缩前的数据,Packet对应压缩后的数据
- 编解码器(Codec):以帧为单位实现压缩数据和原始数据之前的相互转换,
例如:H264编/解码器:YUV图像-H264帧;AAC编/解码器:声音PCM数据-AAC帧 - 复用(mux):把不同的(音频流、视频流、字幕流等)流按照某种容器的规则放入容器(MP4/FLV等)
- 解复用(demux):把不同的流从某种容器中解析出来
- 帧率:视频文件每一秒的帧数
- 码率:秒为单位处理的位数
2.音视频处理流程
3. FFmpeg命令分类查询
命令参数 | 内容 | 命令参数 | 内容 |
-version | 显示版本 | -bsfs | 显示可用比特流filter |
-buildconf | 显示编译配置 | -protocols | 显示可用的协议 |
-formats | 显示可用格式 (muxers+demuxers) | -fileter | 显示可用的过滤器 |
-muxers | 显示可用复用器 | -pix_fmts | 显示可用的像素格式 |
-demuxers | 显示可用解复用器 | -layout | 显示标准声道名称 |
-codecs | 显示可用格式 (decoders+encoders) | -sample_fmts | 显示可用的音频采样格式 |
-decoders | 显示可用解码器 | -colors | 显示可用的颜色名称 |
-encoders | 显示可用编码器 | -h type=name | 查看具体分类支持参数 |