Skip to content
abinglovenet edited this page May 20, 2021 · 5 revisions

简介

此项目是在调研Intel芯片硬解性能时候写的测试代码,为了更直观的观察解码并播放的性能效果,直接将其改进成一个简单的FLV 播放器,播放器仅支持H264&MP3压缩的FLV格式

该项目最大的优势是虽然简单却覆盖了解码、色彩空间转化、渲染、音视频同步等重要的音视频处理流程,非常适合直播等场景

目前播放器的总体性能仍然不尽理想,目前主要存在以下性能问题:

  1. NV12转RGB 效率有提升空间
  2. 渲染视频画面时耗时较多
  3. 播放相同视频,CPU占用与VLC相比性能有明显的差距

希望后面有兴趣改进的童鞋可以继续推进此项目,主要是提升性能,提升项目价值

项目中代码除违法用途外,允许任何人以任何形式使用或者修改后再发布

编译环境

  1. VS2012

  2. QT 5.5.1

https://download.qt.io/new_archive/qt/5.5/5.5.1/qt-opensource-windows-x86-msvc2012-5.5.1.exe

运行环境

WIN+INTEL

优化思路

目前解码到渲染流程中使用的硬件资源如下如下:

解码(GPU)-> NV12数据(显存) -> NV122RGB(CPU)->RGB数据(内存)->OPENGL Graphic (GPU+显存)

只要将NV122RGB->RGB这两个阶段全部在GPU完成,这样整条链路就全部在GPU完成,性能应该可以大幅提升

Clone this wiki locally