ffmpeg整体结构

2021/12/2 6:07:48

本文主要是介绍ffmpeg整体结构,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • 整体结构
  • 模块

整体结构

整体结构如图所示

模块

  1. AVUtil:核心工具库,该模块是最基础的模块,许多其他的模块都会依赖该库做一些基本的音视频处理。
  2. AVFormat:文件格式和协议库,该模块是最重要的模块之一,封装了Protocol层和Demuxer,Muxer层,使得协议和格式对于开发者来说是透明的。
  3. AVCodec:编解码库,最重要的模块之一,封装了Codec层。但是有些Codec是具备自己license的,FFmpeg不会默认添加libx264,FDK-AAC,lame等库,但是FFmpeg就像一个平台,可以将其他的第三方库的codec以插件的形式添加进来,然后为开发者提供统一的接口。
  4. AVFilter:音视频滤镜库,该模块提供来包括音频特效和视频特效的处理。
  5. AVDevice:输入输出设备库,该设备模块播放声音和播放视频使用的是libSDL库。
  6. SwrResample:音频重采样库,提供对数字音频进行声道数,数据格式,采样率等多种基本信息的转换。
  7. SWScale:图像格式转换库,该模块提供图像格式转换,比例缩放等功能,比如YUV与RGB的数据转换。
  8. PostProc:后期效果处理,使用AVFilter的时候需要打开该模块的开关,因为Filter中会使用到该模块的一些基础函数。


这篇关于ffmpeg整体结构的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程