【视频编码学习】VTM15.0编译运行

  • Post author:
  • Post category:其他


VTM版本:15.0

操作系统:Win10 x64位

IDE:Visual Studio 2019

编译器:cmake




前言

初次学习使用H.266/VVC参考软件(VTM15.0),记录详细过程,避免遗忘。

ECM软件的编译过程与VTM类似,可参考如下过程。




一、下载VTM15.0

VTM下载地址:


https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM

点击下图左侧选择VTM版本,然后点击右侧下载选择下载格式(zip、tar.gz、tar等,我选择zip)

补充ECM参考软件下载地址:


https://vcgit.hhi.fraunhofer.de/ecm/ECM/-/tags/ECM-6.0


VTM

下载之后可以先解压,放置在你想保存的文件夹,我的保存位置是D:\VVC_study\VVCSoftware_VTM-VTM-15.0(后面使用cmake编译是需要用到此位置的),可以在此目录下新建文件夹build,cmake编译后会在build里生成相应的编译文件(cmake编译时需要此build目录,即D:\VVC_study\VVCSoftware_VTM-VTM-15.0\build)。

VTMzip

解压后未编译的VTM文件的根目录



二、下载安装cmake

阅读VTM参考软件的手册software-manual(在目录D:\VVC_study\VVCSoftware_VTM-VTM-15.0\doc中),知道编译VTM的方法之一是使用cmake,这种方法比较简单,下面使用此方法编译VTM。



1. 下载cmake并安装

cmake下载地址:



选择x64位的版本,如下图黄色标记的Files,然后双击msi文件出现对话框后选择“运行”,我设置的安装目录是D:\VVC_study\CMake。

在这里插入图片描述



安装过程中需要勾选“把cmake加入系统变量”这一选项,这样在安装结束后就无需再把cmake相关路径加入到系统变量中。



2. 检查cmake是否安装成功

win+r后输入cmd:然后命令行输入cmake,若出现如下信息表明cmake安装成功,接下来就可以使用cmake编译VTM。

cmake



三、VTM编译

至此正确编译VTM的所有准备工作已结束,下面是具体的编译步骤。

编译方法可打开cmake软件,使用对话框方式,也可使用命令行方法,但是初学者对命令行方法比较陌生,因此这里采用对话框方法。



1. 打开cmake-gui.exe

在cmake安装目录的bin文件夹双击打开exe文件

在这里插入图片描述



2. 设置待编译的VTM路径以及VS版本配置

首先黄色标记的第一行路径是VTM根目录的路径;

第二行路径是在VTM根目录下新建build的路径,设置完两个路径之后点击下面的Configure,就会出现另一个对话框,要求配置VS版本,选择与系统安装VS版本一致的(VS2019),然后选择x64位,也是得与系统一致,最后勾选第一项“use default native compilers”,点击Finish。

(第一次编译时中间的Name和Value是空白的,因为我已经编译成功,这是第二次打开,所以就显示了Configuring done,以及显示了中间的文件。)

在这里插入图片描述

在这里插入图片描述



3. 生成build文件

点击Generate,显示Generating done表示配置成功,此时已在build文件夹生成相应的编译文件(注意bin文件夹是在后面sln工程里生成解决方案时才有的,此时是没有的)。若cmake编译之后没有build文件里的相关编译文件,则表明编译出现错误,需要重新编译。

(若第一次编译,在Generating done之后,中间的Name和Value显示红色背景,包含的文件与下图相同。)

在这里插入图片描述

在这里插入图片描述



【补充命令行方法】

第一,win+R后cmd进入命令行窗口,然后进入VTM参考软件存放的目录(比如:cd D:\VVC_study\VVCSoftware_VTM-VTM-15.0);

第二,输入

mkdir build

(即在此目录下创建build文件夹,存放cmake编译的工程);

第三,输入

cd build



cmake .. -G "Visual Studio 16 2019"


(“Visual Studio 14 2015 Win64”)或( “Visual Studio 15 2017 Win64”)



4. 打开build文件的sln工程进行编译

使用cmake成功编译之后,在build文件夹可以找到VTM的sln工程,打开方式为VS2019。

在这里插入图片描述

第一步:右击EncoderApp,设置为启动项目;(编译方式默认Debug,可改为Release,区别是Release编译速度比Debug快,后面学习代码需要设置断点时必须为Degub模式)

第二步:点击生成或重新生成,此时工程会生成EncoderApp的可执行文件,VTM根目录会出现bin文件夹,此时生成的EncoderApp.exe在bin路径下(D:\VVC_study\VVCSoftware_VTM-VTM-15.0\bin\vs16\msvc-19.29\x86_64\release)。

第三步,若生成整个解决方案,则会出现其他exe,比如,设置DecoderApp为启动项目,生成exe的结果与EncoderApp相同。

第四步:ctrl+F5 运行程序,命令行显示运行结果,包括各种工具的激活状态等。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

EncoderApp.exe:编码器

DecoderApp.exe:解码器

在这里插入图片描述




总结

以上是H.266/VVC参考软件VTM的下载、安装、编译的过程,之后可在此基础上修改编码器的输入输出参数,进行调试。

ECM编译过程类似,可参考上述步骤。



版权声明:本文为hyljoyhyl原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。