学习ffmpeg之前,我们应该对ffmpeg的组织结构有一个大体的了解。
ffmpeg安装好之后,使用cd /usr/local/ffmpeg命令进入到ffmpeg目录下,会看到ffmpeg的4个主要目录。
- bin
- include
- lib
- share
下面是ffmpeg的组织结构图:
一、bin目录
bin目录下主要是编译好的三个工具,ffmpeg、ffplay、ffprobe。
ffmpeg主要是提供对音视频进行抽取、滤镜、裁剪等等各种操作的。
ffplay主要提供音视频的播放。
ffprobe主要是查看音视频的各种信息的。
二、include目录构成和说明
下方是ffmpeg的include目录下的组织结构和说明。
目录 | 说明 |
---|---|
libavcodec | 提供了一系列编码器的实现 |
libavformat | 实现在流协议,容器格式及其基本IO访问。 |
libavutil | 包括了hash器,解码器和各种工具函数。 |
libavfilter | 提供了各种音视频过滤器。 |
libavdevice | 提供了访问捕获设备和回放设备的接口。 |
libswresample | 实现了混音和重采样。 |
libswscale | 实现了色彩转换和缩放功能。 |
三、lib目录
lib目录下的文件,基本上include目录下对应文件的.a & dylib文件。
lib目录下的内容如下入所示:
四、share目录
share目录下又分为ffmpeg和man两个目录。
ffmpeg有一个重要的目录examples,里面有一些示例代码,学习者可以拜读借鉴。
man目录下有man1和man3,不知道具体是干什么的。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。