个人技术分享

VVenC介绍

Fraunhofer通用视频编码器(VVenC)的开发是为了提供一种公开可用的、快速和有效的VVC编码器实现。VVenC软件基于VTM,其优化包括软件重新设计以减轻性能瓶颈、广泛的SIMD优化、改进的编码器搜索算法和基本的多线程支持以利用并行。此外,VVenC支持真实世界的编码器功能,包括帧级速率控制和感知优化编码,以便为VVC标准提供灵活、快速和易于使用的视频编码解决方案。

VVenC 编码器是由德国佛朗霍夫海因里希研究所(Fraunhofer Heinrich Hertz Institute,HHI)所开发,HHI 是欧洲最大的研究组织 Fraunhofer 协会的成员,该协会是德国的一个大型非营利性组织。

  • 组织机构网址:https://www.hhi.fraunhofer.de/en/
    在这里插入图片描述
    VVenC 编码器几乎与 VTM 同时发布,从其 v0.1.0.0文档介绍可以看到,2020 年 9 月 7 号就发布了 VVenC 编码器 v0.1.0.0 版本,目前已经开发到v1.11.1版本。
  • 相关文档介绍:
文档 链接🔗
v0.1.0.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v0.1-v1.pdf
v0.2.0.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v0.2-r1.pdf
v0.2.1.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v0.2.1-v1.pdf
v0.3.0.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v0.3-v1.pdf
v0.3.1.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v0.3.1-v1.pdf
v1.0.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v1.0.0-v1.pdf
v1.1.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v1.1.0-v1.pdf
v1.2.0 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v1.2.0-v1.pdf
v1.3.1 https://github.com/fraunhoferhhi/vvenc/wiki/data/vvenc-v1.3.1-v1.pdf

VVenC源码编译过程

  1. 源码下载:https://github.com/fraunhoferhhi/vvenc
  2. 编译过程可以参考源码项目中README.m或者git地址中wiki介绍:https://github.com/fraunhoferhhi/vvenc/wiki/Build
  3. 依赖工具介绍:Windows中需要CMake 3.13和Visual Studio 15以上版本。(已经提前配置好)
    在这里插入图片描述
  4. cd到源码文件位置 :cd vvenc-master
  5. 新建build文件夹:mkdir build
  6. cd到build目录:cd build
  7. 在build目录里利用cmake编译:cmake ..
    在这里插入图片描述
  8. 编译完成,可以发现在build目录里生成sln文件。
    在这里插入图片描述
  9. 打开sln文件,点击运行,一段时间的等待,提示 8 成功0 失败0 已跳过
    在这里插入图片描述
  10. 在源码vvenc-master\bin\debug-static目录里生成exe可执行文件。
    在这里插入图片描述
  11. 在源码vvenc-master\lib\debug-static目录生成lib库文件。
    在这里插入图片描述
  12. 至此,编译VVenC源码生成VS工程成功,后期可以调试和分析VVenC源码了。