Windows下VVC参考软件VTM10.0编译和运行

2023-10-10 02:10

本文主要是介绍Windows下VVC参考软件VTM10.0编译和运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 预备工作

①VTM软件下载:

链接https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/-/tree/masterhttps://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/-/tree/master

 ②cmake下载:

链接https://cmake.org/download/https://cmake.org/download/

 cmake安装:链接https://blog.csdn.net/qq_42951560/article/details/115905723https://blog.csdn.net/qq_42951560/article/details/115905723

请下载该文件,然后按照上述博客进行安装

 然后安装好之后文件如下图所示(正常来说,环境变量是不需要手动配置的,软件提供了自动配置选项,请参考上述博客)

③visual studio 2017下载

 首先下载安装器 链接https://my.visualstudio.com/Downloads?q=visual%20studio%202017&wt.mc_id=o~msft~vscom~older-downloadshttps://my.visualstudio.com/Downloads?q=visual%20studio%202017&wt.mc_id=o~msft~vscom~older-downloads

然后安装visual studio 2017 社区版(建议这个地方将自己的安装目录、缓存目录、插件目录配置好,以免后期出现问题 )

推荐安装模块:

 至此,准备工作完成。

 2. 使用cmake编译VTM

 在这个地方有两种方案进行编译,既然已经下载了cmake-gui,那直接使用cmake-gui会更加方便。

打开cmake-gui,其主界面如图所示(两张图)

序号说明:

1:这里应填入VTM的主目录,例如F:/VVCSoftware_VTM-master/VVCSoftware_VTM-master

2:这里应该填入VTM的编译结果目录(一般为build),例如F:/VVCSoftware_VTM-master/VVCSoftware_VTM-master/build

3:上述过程配置完之后,点击configure,此时应该会弹出来一个窗口,

 

 第一行是选择visual studio版本(下图是版本对应的,按需选择即可。注意不要选择过旧版本)

 <2017版本测试通过>

 第二行是选择generate平台(默认为32,此处应选择x64!!!)

如果这个地方不选,就会在visual studio里面生成时出现x64与x86冲突"

 问题是如果没有弹出这个选择版本的窗口,在cmake主界面file--delete cache(清除缓存),然后重新配置上述信息即可。

 4:点击generate

此时,VTM文件夹中出现了build子文件夹

3. 使用visual studio生成

 打开build子文件夹中的该文件

 1:配置release/debug(release编码速度更快)

2:配置win32/x64(这里应该是x64,因为cmake那里设置的是x64)

3、4、5:右键EncoderApp属性--调试--设置工作目录(这个地方是生成EncoderApp.exe的目录)

6:点击”应用“

然后将EncoderApp设置为启动项目

 ctrl + F5(或者点击本地Windows调试器)以生成所需文件

然后等待生成完成后在对应的工作目录下可以看到所生成的EncoderApp.exe文件

4. 视频编码

  1.  新建一个文件夹A中
  2. 将生成的EncoderApp.exe和DecoderApp.exe拷贝到A中,然后将对应的cfg文件拷贝到文件夹A 
  3. 将对应视频文件拷贝到文件夹A

 两个文件分别为:BasketBallDrill.cfg和encoder_intra_vtm.cfg

 将视频序列对应的cfg文件内容复制粘贴到encoder_intra_vtm.cfg文件中(注意位置)

(额外修改FramesToBeEncoded,将500修改为30,减少编码时间)

 然后cmd至文件夹A路径下,执行

EncoderApp.exe -c encoder_intra_vtm.cfg >Enc.txt

 这个过程大概3-5分钟。

然后在文件夹A下会出现rec.yuv、str.bin等文件

 进阶修改:

将encoder_intra_vtm.cfg中的TemporalSubsampleRatio对应数值修改为1

建议将编码帧数进一步减小

 参考博客

链接1https://blog.csdn.net/Peter_Red_Boy/article/details/90321778https://blog.csdn.net/Peter_Red_Boy/article/details/90321778

链接2https://blog.csdn.net/zhang2039/article/details/105624481?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0.no_search_link&spm=1001.2101.3001.4242https://blog.csdn.net/zhang2039/article/details/105624481?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0.no_search_link&spm=1001.2101.3001.4242

链接3https://blog.csdn.net/sundy_ywz/article/details/107457957?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2.no_search_linkhttps://blog.csdn.net/sundy_ywz/article/details/107457957?utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~default-2.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~default-2.no_search_link

链接4https://blog.csdn.net/Zzhaoyongbo/article/details/109136642?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.no_search_link&spm=1001.2101.3001.4242https://blog.csdn.net/Zzhaoyongbo/article/details/109136642?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.no_search_link&spm=1001.2101.3001.4242

链接5https://blog.csdn.net/shmilyforyq/article/details/70903070https://blog.csdn.net/shmilyforyq/article/details/70903070

链接6https://blog.csdn.net/Peter_Red_Boy/article/details/90321778https://blog.csdn.net/Peter_Red_Boy/article/details/90321778

链接7https://blog.csdn.net/diaodaa/article/details/106122943https://blog.csdn.net/diaodaa/article/details/106122943

链接8https://blog.csdn.net/Zzhaoyongbo/article/details/109136642https://blog.csdn.net/Zzhaoyongbo/article/details/109136642

链接9https://blog.csdn.net/qq_37950762/article/details/102722205?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.no_search_link&spm=1001.2101.3001.4242https://blog.csdn.net/qq_37950762/article/details/102722205?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.no_search_link&spm=1001.2101.3001.4242

 链接10https://blog.csdn.net/jiamenghu/article/details/106296844https://blog.csdn.net/jiamenghu/article/details/106296844

链接11 https://blog.csdn.net/weixin_45615071/article/details/108754261?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-1.no_search_linkicon-default.png?t=M85Bhttps://blog.csdn.net/weixin_45615071/article/details/108754261?utm_medium=distribute.pc_relevant.none-task-blog-2~default~OPENSEARCH~default-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~OPENSEARCH~default-1.no_search_link

 ------------------------------------------------------------------------

暂时写这些吧,没有写之前以为能用比较少的字把流程描述清楚。但是实际上开始写,才发现里面细节还是比较多的。

动手之前多看,动手的时候细心。

这篇关于Windows下VVC参考软件VTM10.0编译和运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/177193

相关文章

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Windows自动化Python pyautogui RPA操作实现

《Windows自动化PythonpyautoguiRPA操作实现》本文详细介绍了使用Python的pyautogui库进行Windows自动化操作的实现方法,文中通过示例代码介绍的非常详细,对大... 目录依赖包睡眠:鼠标事件:杀死进程:获取所有窗口的名称:显示窗口:根据图片找元素:输入文字:打开应用:依

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

Ubuntu 怎么启用 Universe 和 Multiverse 软件源?

《Ubuntu怎么启用Universe和Multiverse软件源?》在Ubuntu中,软件源是用于获取和安装软件的服务器,通过设置和管理软件源,您可以确保系统能够从可靠的来源获取最新的软件... Ubuntu 是一款广受认可且声誉良好的开源操作系统,允许用户通过其庞大的软件包来定制和增强计算体验。这些软件

windows端python版本管理工具pyenv-win安装使用

《windows端python版本管理工具pyenv-win安装使用》:本文主要介绍如何通过git方式下载和配置pyenv-win,包括下载、克隆仓库、配置环境变量等步骤,同时还详细介绍了如何使用... 目录pyenv-win 下载配置环境变量使用 pyenv-win 管理 python 版本一、安装 和

Python使用pysmb库访问Windows共享文件夹的详细教程

《Python使用pysmb库访问Windows共享文件夹的详细教程》本教程旨在帮助您使用pysmb库,通过SMB(ServerMessageBlock)协议,轻松连接到Windows共享文件夹,并列... 目录前置条件步骤一:导入必要的模块步骤二:配置连接参数步骤三:实例化SMB连接对象并尝试连接步骤四:

PostgreSQL如何用psql运行SQL文件

《PostgreSQL如何用psql运行SQL文件》文章介绍了两种运行预写好的SQL文件的方式:首先连接数据库后执行,或者直接通过psql命令执行,需要注意的是,文件路径在Linux系统中应使用斜杠/... 目录PostgreSQ编程L用psql运行SQL文件方式一方式二总结PostgreSQL用psql运

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p