X265代码学习专栏传送
上一篇:无
下一篇:持续创作中…
前言
x265是一个基于H.265/HEVC的免费开源的视频编码解码器,其面向商用需求开发,有配置方便、效率高等特点。
本文是笔者对X265代码的一点学习记录,若文中存在错误欢迎批评指正,也欢迎广大视频编码学习者沟通交流、共同进步。
本文作为X265代码学习的第一篇博文将主要介绍X265的源码下载、编译和Visual Studio调试配置相关内容。在笔者下载配置时主要参考了一位大佬的博文,该博主的系列文章也为我学习X265的前期提供了相当程度的帮助,在此一并感谢。本文主要参考上述博文,在关于Visual Studio版本等问题上提供补充,力图使读者更方便的完成X265代码的安装配置。
一、下载Cmake及X265代码
- Cmake将用于X265代码编译,若电脑中没有Cmake,请前往官网https://cmake.org/download/下载安装
- 进入X265官网:http://x265.org/
官网的安全证书出现过期的情况,因此在进入官网过程中,若浏览器页面不安全等提示,请选择继续浏览。
- 点击进入官网右上角的“Downloads”下载界面
- 在下载列表中选择最新版本的X265代码进行下载,等待下载完成后解压。
二、使用Cmake编译
- 进入Cmake安装目录下的“…\cmake-3.22.0-win64-x86\bin”文件夹,双击cmake-gui.exe,出现下图界面。
- 选择最上方两个条目源码地址和binaries地址分别为…\x265_3.3\source和…x265_3.3\build\vc16-x86_64。
其中第二个binaries地址需要根据自己使用的Visual Studio版本进行选择,不同版本的Visual Studio对应VC版本如下:
对于build文件夹下没有对应VC版本的文件夹解决方案:
若X265安装目录的build文件夹下没有对应VC版本的文件夹则可以自己创建,文件夹名与其他文件夹类似(如不存在VC16的文件夹,则参考VC15文件夹命名,创建文件夹vc16-x86_64)
创建后将较低版本但系统相同的文件夹下的bat文件复制到新建文件夹中(对于64位系统为3个bat文件,否则2个bat文件)
将所有bat文件分别以Notepad++打开(没有Notepad++可使用记事本打开),根据自己的版本做对应修改。下面以将原vc15-x86_64中的文件修改为vc16-x86_64中的文件为例:
- 修改build-all.bat中的 %VS150COMNTOOLS% 为 %VS160COMNTOOLS%;修改build-all.bat中的 Visual Studio 15 为 Visual Studio 16
- 修改make-solutions.bat中的 “Visual Studio 15 Win64” 为 “Visual Studio 16 Win64”
- 修改multilib.bat中的 %VS150COMNTOOLS% 为 %VS160COMNTOOLS%;修改multilib.bat中的 Visual Studio 15 为 Visual Studio 16
修改完毕后保存,并在cmake界面将新创建的文件夹设为binaries目录。
- 点击Configure,出现项目编译器平台选择(根据自己的平台进行选择),如下图;
-
点击finish,完成后出现Configuring done则说明成功
-
点击generate,完成后出现Generate done则说明成功
-
进入X265安装目录下的build文件夹下对应VC版本的文件夹,双击“build-all.bat”,进行编译
-
用Visual Studio打开上一步生成的x265.sln,即可进入工程
三、生成可执行文件并测试
- 进入工程后选择Release模式,点击生成-重新生成解决方案
- X265_3.3\build\vc16-x86_64\Release文件夹下放入一个测试yuv文件(以BasketballPass_416x240_50.yuv为例),创建一个.bat文件用于调用exe测试,.bat文件内容暂设如下:
x265 --input-res 416x240 --fps 50 BasketballPass_416x240_50.yuv -o BasketballPass_416x240_50.h265
- 双击运行上一步创建的.bat文件,出现如下的界面则成功。
- 待程序执行完毕后目录下会生成.h265文件,此即编码的视频。
四、配置Visual Studio调试X265
- 进入X265工程,设置为debug模式,并将cli设置为启动项目
- 右键点击cli,选择属性
- 在“调试”中设置命令参数与工作目录
命令参数如下:
--input-res 416x240 --fps 50 BasketballPass_416x240_50.yuv -o BasketballPass_416x240_50.h265
工作目录则可以随意设置,但在工作目录下必须保存有待编码的序列!
设置完成后即可调试X265
上一篇:无
下一篇:持续创作中…