HM的下载及使用

下载HM代码

  1. 下载tortoisesvn并安装
  2. 打开tortoisesvn repository browser
  3. 复制链接https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/tags/到弹出的对话框并点击ok
  4. 找到你想要下载的版本并右键选择checkout,这里我下载的是HM-16.20

下载HEVC测试序列

https://pan.baidu.com/s/1zAbtVaA2fXLiGgoVlvMiMA 提取码:e671

运行HM代码

我这里使用的IDE是VS2017。

  1. 文件 - 打开 - 项目/解决方案
    在弹出的对话框中选择刚刚下载的 HM-16.20/build/HM_vc2015.sln
  2. 右键 解决方案HM_vc2015 选择 生成解决方案
    HM的下载及使用_第1张图片
    HM的下载及使用_第2张图片
    这时候在HM-16.20\bin\vc2015\x64\Debug 目录下会生成许多相关文件。这里的x64是因为我编译的时候选择的是x64,如果你选的是Win32,则对应的目录是Win32。
    HM的下载及使用_第3张图片
  3. 将测试序列拷到该文件夹下,我这里选择的测试序列是BasketballPass_416x240_50.yuv,同时将HM-16.20\cfg\per-sequence\BasketballPass.cfg文件(与测试序列对应,测试序列相关参数)拷贝到该文件夹下,还有HM-16.20\cfg\encoder_intra_main.cfg(编码相关参数配置文件)也拷贝过来。最后该文件夹内容如下:HM的下载及使用_第4张图片
    注意:这里之所以将文件都拷贝到该目录只是为了后续填写相关目录方便,并不是必须的操作。
  4. 对相关配置文件进行更改。打开BasketballPass.cfg,如下:
    HM的下载及使用_第5张图片
    主要需要注意的有一下几点
    InputFile 测试序列(可以是绝对路径,也可以是相对路径)
    SourceWidth 分辨率(宽度)
    SourceHeight 分辨率(高度)
    FramesToBeEncoded 要编码的帧数
    这里为了节省时间我们把FramesToBeEncoded的500改为10,即只编码10帧。其余的配置检查一遍都没问题就不需要改了。
    另一个encoder_intra_main.cfg主要配置编码相关的参数,这里暂不需要改。
  5. 在VS2017 中右键TAppEncoder 选择 设为启动项目,表明我们想要对序列进行编码。HM的下载及使用_第6张图片
  6. 还是右键TAppEncoder,选择最下面的属性HM的下载及使用_第7张图片
    并进行如下配置
    HM的下载及使用_第8张图片
    这三个配置就是调用我们HM-16.20\bin\vc2015\x64\Debug目录下的TAppEncoder.exe并输入两个配置文件作为参数。
  7. 运行编码器
    HM的下载及使用_第9张图片
    编码成功的界面:HM的下载及使用_第10张图片

总结

本文主要介绍了HM代码及测试序列的下载,还有相关编码器的运行。

更新

h.266(vvc)的参考软件VTM使用同上,不过下载地址有变化:https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM

你可能感兴趣的:(HEVC代码)