【FFmpeg解码实战】(1)解码并分离视频文件中的音频流和视频流
本文作为FFmpeg 解码实战首篇,我们先来实现一个解复用功能,
也就是解码并分离视频文件中的音频流和视频流,并且将视频流 和 音频 流分别保存成不同的的文件
一、代码实现
代码流程如下:
- 打开文件,分配
AVFormatContext
结构体上下文 - 查找文件对应的流信息
- 打印流信息
- 视频解码器初始化
4.1 获取视频对应的stream_index
4.2 获取到stream 数据
4.3 根据codec_id
查找解码器
4.4 初始化解码器上下文信息
4.5 复制 codec 相关参数到解码器上下文中
4.6 初始化并打开解码器 - 音频解码器初始化
5.1 获取音频对应的stream_index
5.2 获取到stream 数据
5.3 根据codec_id
查找解码器
5.4 初始化解码器上下文信息
5.5 复制 codec 相关参数到解码器上下文中
5.6 初化并打开音频解码器 - 配置