本文共 559 字,大约阅读时间需要 1 分钟。
FFmpeg是一款音视频编解码库,是多媒体开发者的必备技能。FFmepg提供了多种媒体格式的封装和解封装,包括音视频编码、多种协议的流媒体、多种色彩格式转换、多种采样率转换、多种码率转换等。
1 FFmepg的基本组成 FFmpeg框架的基本组成包含AVFormat、AVCodec、AVFilter、AVDevice、AVUtil等模块库。 (1)FFmpeg的封装模块AVFormat AVFormat实现了多媒体领域绝大数媒体封装格式,包括封装和解封装,如MP4、FLV、KV、 TS等文件封装格式,RTMP、RTSP、MMS、HLS等网络协议封装格式。FFmepg是否支持某种媒体封装格式取决于编译时是否包含了该格式的封装库。 (2)FFmpeg的编解码模块AVCodec AVCodec包括大多数常用的编解码格式,既支持编码也支持解码。除了支持MPEG4、AAC、MJPEG等自带的媒体格式也支持H.264(x264编码器)、H.265(X265编码器)、MP3(libMP3lame编码器)。 (3)FFmepg的滤镜模块AVFilter AVFilter库提供了一个通用的音频、视频、字幕等滤镜处理框架。在AVFilter中,滤镜框架可以有多个输入和多个输出。 (4)FFmpeg的视频图像转换计算模块s