本文主要是介绍VTM编解码配置运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
一、新建测试文件夹
二、打开VTM工程
三、编码
四、解码
五、编码分析
六、编码结果可视化
一、新建测试文件夹
创建新的测试文件夹,并用日期标注一下自己的测试时间,测试目的;放入视频序列(需要提前下载好)。
视频序列资源:链接:https://pan.baidu.com/s/1mF1QuUQb7YQClv4ANWgPIw
提取码:1027
二、打开VTM工程
1.使用VS打开build中NextSoftware.sln。
2.工程打开后,常用的几个软件,EncoderApp:编码软件;DecoderApp:解码软件;DecoderAnalyserApp:编码分析软件。每个软件在lib中都有自己的库函数,其中做实验中使用到的EncoderLib最多,而每个软件中很少有功能型函数,大部分都是配置文件。
3.调试模式选择,调试模式有release和debug,常用release模式(比debug模式编码快很多)。选择调试模式release和x64:生成——生成解决方案。
(一般默认工作目录是:项目目录\bin\vs16\msvc-19.29\x86_64\release).完成后打开工作目录。把所需要的编码软件,解码软件,解析软件,复制到测试文件夹。
4.VTM使用是需要配置参数的,参数包括cfg和输入参数。VTM目录下cfg文件夹中存储了公共测试的配置文件,分为4种
下面就以encoder_intra_vtm.cfg为例,将encoder_intra_vtm.cfg复制到测试文件夹下。打开encoder_intra_vtm.cfg。在File I/O部分设置编码视频序列和输出序列名等信息(这些信息下载的视频序列中包含此文档,复制粘贴部分修改即可)。
注:InputFile 为视频序列所在文件夹下的地址
5.目前测试文件夹中包含encoder_intra_vtm.cfg,EncoderApp.exe,DecoderApp.exe,DecoderAnalyserApp.exe,视频序列
三、编码
第一步:打开右键EncoderApp属性——调试——命令参数(-c encoder_intra_vtm.cfg >out.txt)——工作目录(修改为测试文件夹地址)。
注:-c 后面的就是测试文件夹中设置好的配置文件
>out.txt 是将编码过程中的在控制台界面输出的信息,写入到out.txt中
第二步,右键EncoderApp——调试——启动新实例。
第三步,测试文件夹中,多出了xxx.bin、xxx.yuv(这两个文件是encoder_intra_vtm.cfg在File I/O部分设置编码视频序列和输出序列名)和out.txt
注:测试文件夹生成的.bin文件是码流,在作为解码器的输入文件之一。xxx.yuv是编码视频序列
四、解码
第一步:打开右键DencoderApp属性——调试——命令参数(-b xxx.bin -o dePartyScene.yuv)——工作目录(修改为测试文件夹地址)。
注:-b指定输入的二进制码流,即编码输出码流文件,-o指定输出的yuv文件。
第二步,右键DencoderApp——调试——启动新实例。
第三步,测试文件夹中,多出了dePartyScene.yuv(是解码视频序列)
五、编码分析
第一步,要使用块统计扩展,需要在编译时将宏ENABLE_TRACING和K0149_BLOCK_STATISTICS设置为1。(在VS中搜索全部文档可以搜索到)统计信息在编码段和解码端都可以获取到。 此扩展为测试软件在“dtrace”功能中添加了额外的跟踪通道,主要是以下两个:D_BLOCK_STATISTICS_ALL:所有的语法元素都将被记录,无论他们是实际编码的还是获得的。D_BLOCK_STATISTICS_CODED:仅记录将进行编码的语法元素。
第二步,打开右键DecoderAnalyserApp属性——调试——命令参数(-b intra_akiyo_cif.bin --TraceFile=“De_VTM7_xxxxx.vtmbmsstats” --TraceRule=“D_BLOCK_STATISTICS_ALL:poc>=0”)——工作目录(修改为测试文件夹地址)。
第三步,测试文件夹中,多出了De_VTM7_xxxxx.vtmbmsstats(是分析视频序列)
六、编码结果可视化
1.下载并安装YUView软件,链接:https://pan.baidu.com/s/1es1bkt9P-ATf0Upi6YpbWQ
提取码:1027
2.添加文件步骤
2.1.在软件的右上角Item里右键新建Ovelay Item
3.2将编码生成的.yuv文件和AnalyseserApp生成的.vtmbmsstats文件添加到Ovelay Item里,拖动调整使得.yuv在上,.vtmbmsstats在下
3.3点击Item窗口中的.yuv文件,在YUV File Properties窗口内设置 YUV Format设置.yuv显示格式,如果使用默认cfg配置文件,选择YUV 4:2:0 10-bit LE
4.点击Overlay Item,在Overlay Properties窗口将Overlay打钩。下面一列打钩的可选择查看的信息
本笔记参考其他博主;原文链接:https://blog.csdn.net/Zzhaoyongbo/article/details/109136642
这篇关于VTM编解码配置运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!