
简介
该用户还未填写简介
擅长的技术栈
未填写擅长的技术栈
可提供的服务
暂无可提供的服务
视频解码实战:把 H.264 码流变成 YUV
前面我们学习了解封装(从 MP4 提取数据包),现在到了最关键的一步——**解码**!本篇用最通俗的语言,带你从"压缩的 H.264 码流"到"可显示的 YUV 像素",彻底搞懂 FFmpeg 的 send/receive 解码循环

FFmpeg 核心 API 快速入门
前面学习了音视频的基础理论,现在是时候动手写代码了!这一篇带你快速掌握 FFmpeg 的核心 API,用 50 行代码实现一个简单的视频解码器,为后续开发打下坚实基础。

音频解码实战:从 AAC 到可播放的 PCM
上一篇我们学习了视频解码(H.264 → YUV),这一篇轮到音频了!音频解码看似简单,实则有很多细节:planar/packed 布局、采样率、声道数、nb_samples 字段...本篇用最通俗的语言,带你从"压缩的 AAC 码流"到"可播放的 PCM 音频",彻底搞懂音频解码的全流程

时间戳与同步:音画不同步的罪魁祸首
音视频同步的核心在于时间戳管理。PTS(呈现时间戳)决定帧的显示时间,DTS(解码时间戳)控制解码顺序,两者差异尤其在B帧处理中显现。视频和音频采用不同时间基(如视频90kHz,音频44.1kHz),需通过时间基转换实现统一时钟。FFmpeg通过av_rescale_q()处理容器与流的时间基差异,确保精确同步。典型场景中,B帧因依赖前后帧会导致DTS>PTS,需通过缓冲区重排序。实验显示I

到底了







