视频解码知识
纯净的视频解码流程
1.压缩编码数据->像素数据。
2.例如解码H.264,就是“H.264码流->YUV”。
一般的视频解码流程
1.视频码流一般存储在一定的封装格式(例如MP4、AVI等)中。封装
格式中通常还包含音频码流等内容。
2.对于封装格式中的视频,需要先从封装格式中提取中视频码流,然 后再进行解码。
▫ 例如解码MKV格式的视频文件,就是“MKV->H.264码流->YUV”。

FFmpeg解码函数简介
av_register_all():注册所有组件。
avformat_open_input():打开输入视频文件。
avformat_find_stream_info():获取视频文件信息。
avcodec_find_decoder():查找解码器。
avcodec_open2():打开解码器。
av_read_frame():从输入文件读取一帧压缩数据。
avcodec_decode_video2():解码一帧压缩数据。
avcodec_close():关闭解码器。
avformat_close_input():关闭输入视频文
FFmpeg解码的数据结构
FFmpeg解码的数据结构如下所示

FFm