FFmpeg 组件介绍
FFmpeg 是一个功能强大的开源多媒体框架,它由多个核心组件(库)组成,每个组件负责不同的功能。FFmpeg 的组件交互遵循一个典型的媒体处理流程,pipline 如下流程:
输入设备/文件 → 解复用 → 解码 → 处理 → 编码 → 复用 → 输出设备/文件
各个组件的关系大致可以描述如下图:
libavcodec
-
功能:是 FFmpeg 的核心编解码库,负责将原始音视频数据(如 PCM、YUV)压缩为编码格式(如 H.264、AAC),或将编码数据解码为原始数据。支持几乎所有主流编解码格式,包括 MPEG-4、H.265/HEVC、VP9、AAC、MP3 等,覆盖了从传统格式到现代高效编码标准的需求。
- <