libavformat库为音频、视频和字幕流的多路复用和解复用(muxing和demuxing)提供了一个通用框架。它包含多个多媒体容器格式的多复用器和解复用器。
它还支持几种输入和输出协议来访问媒体资源。
libavutil库是一个辅助便携式多媒体编程的实用程序库。它包含安全的可移植字符串函数、随机数生成器、数据结构、额外的数学函数、密码学和多媒体相关功能(如像素和样本格式的枚举)。它不是libavcodec和libavformat所需要的代码库。
libswscale库执行高度优化的图像缩放、颜色空间和像素格式转换操作。
libswresample库执行高度优化的音频重采样、重矩阵和样本格式转换操作。
libavfilter库提供了一个通用的音频/视频过滤框架,包含几个过滤器、源和接收器。
libavdevice库提供了一个通用框架,用于从许多常见的多媒体输入/输出设备中抓取和呈现,并支持多种输入和输出设备,包括Video4Linux2、VfW、DShow和ALSA。
libavcodec库提供了一个通用的编码/解码框架,包含音频、视频和字幕流的多个解码器和编码器,以及几个比特流过滤器。共享架构提供了从比特流I/O到DSP优化的各种服务,并使其适合于实现健壮和快速的编解码器以及实验。