第四章 音视频-FFmpeg实现播放器思维

第四章 音视频-FFmpeg实现播放器思维

第一章 音视频-FFmpeg解码流程和对应结构参数意
第二章 音视频-FFmpeg对应解析格式说明
第三章 音视频-FFmpeg对应AVFrame解码处理思路和用途
第四章 音视频-FFmpeg实现播放器思维
第五章 音视频-FFmpeg实现播放器解封装、读AVPacket包
第六章 音视频-FFmpeg实现播放器解码和对应数据处理

播放器实现架构

下图是播放器实现解码原理图

下图播放器上层输出的对应接口设计图,按照播放器调用习惯去设计,可以根据自己需求。

通过以上的解码原理和要实现接口框架,我们就可以形成做播放器的思维,可以根据前面几章节就可以知道,我们要先解封装,创建解码器,实现读包,这里要对应线程去读包,分别去解码音频和视频,在播放时候,视频跟音频同步,最后提供正常播放器接口给调用者。

播放器实现步骤

通过上图的步骤我们清楚知道播放器大概实在,这里的循环解码,写在一起,正常情况,会用到队列分别存储音频和视频的avpaket的包,在音频线程解码音频,在视频线程解码视频,然后进行同步,想要做自己播放器,要先会用别人的,在成熟框架懂得原理,再自己写会更好,这里我们先去学习开源的ijk的播放器,因为ijk包涵ffplay和移动端平台的硬解码播放器,先把思想打开,再开始写自己播放器,上面都为了让你明白播放器流程,可以去git下载ijkplayer,通过下图是ijk的整体流程图:

通过上图就可以查看ijk的实现播放器整个流程,对应创建的线程,可以自己去写一个播放器,这样思维会写更具好,可以参考音视频同步策略,丢帧策略、音频的重采样、视频对应格式转染(格式转换),全搞明白去写自己播放器才能上线使用。

ijkplayer对应git:https://github.com/bilibili/ijkplayer

相关推荐
归秋1426 小时前
多轨音频智能混音软件怎么选:从 demo 到更完整作品的 AI 后期工具思路
人工智能·音视频
小猴子爱上树8 小时前
跨马翻译:批量图片翻译与视频字幕、智能抠图一站式在线图片翻译工具
大数据·人工智能·python·音视频
每天死循环9 小时前
ComfyUI MiniMax H3文生视频(t2v)提示词教程:四段式写法+5秒768p实测(附模板和参数)
音视频·文生视频·comfyui·ai视频·minimax
企业数字化笔记10 小时前
视频像素分割怎么选?HSV 阈值、传统掩膜、语义分割和实例分割的效果与代价
opencv·音视频
Maynor99611 小时前
6张商品图→17秒带货短视频:开源12个Claude Skills,配音、字幕花字、BGM本地一条命令出片
ffmpeg·ai编程·claude·电商·agent skills
youdexiang11 小时前
AI 生成会议纪要好用吗?多款 APP 功能分析
java·人工智能·音视频
AI创界者11 小时前
【开源实战】MiniMax-H3 本地离线高自由度 ComfyUI 工作流搭建指南(含规则松绑与提示词映射)
人工智能·aigc·音视频
AIGC小尼12 小时前
8G 显存零基础本地部署 AI 漫剧全流程|ComfyUI+Wan2.2+FFmpeg 离线成片完整方案(含代码 / 指令 / 排坑)
人工智能·ffmpeg·php·comfyui·ai漫剧
hai31524754312 小时前
文本矩阵化拆解与视频矩阵化构建
线性代数·矩阵·音视频
昨日之日200612 小时前
Visual Enhancer:一键让模糊照片视频变清晰,升分辨率、插帧、转HDR,一键搞定素材修复
计算机视觉·音视频