X265代码学习1-X265源码下载编译及VS调试配置
X265代码学习专栏传送
目录
- X265代码学习专栏传送
- 前言
- 一、下载Cmake及X265代码
- 二、使用Cmake编译
- 三、生成可执行文件并测试
- 四、配置Visual Studio调试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
上一篇:无
下一篇:持续创作中…
X265代码学习1-X265源码下载编译及VS调试配置相关推荐
- FreeMarker_模板引擎_代码自动生成器_源码下载
首先我们先来认识一下Freemarker 1.what is the FreeMarker? 你可以到freemarker的官网上去,那里有很详细的介绍:http://freemarker.org/ ...
- Android AOSP和Android-X86源码下载编译终极普法
Android AOSP和Android-X86源码下载编译终极普法 引言 最近有朋友在询问怎么下载Android AOSP源码和Android-X86源码,编译学习!其实这个说简单也简单 ...
- Ubuntu20.4 Android-9.0.0_r46源码下载编译
Ubuntu20.4 Android-9.0.0_r46源码下载编译调试 安装Ubuntu虚拟机 ubuntu镜像下载地址: https://ubuntu.com/download 官网下载地址较慢可 ...
- JAVA毕业设计计算机类专业考研交流学习平台计算机源码+lw文档+系统+调试部署+数据库
JAVA毕业设计计算机类专业考研交流学习平台计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计计算机类专业考研交流学习平台计算机源码+lw文档+系统+调试部署+数据库 本源码技术栈: 项目 ...
- Android FrameWork学习(一)Android 7 0系统源码下载 编译
最近计划着研究下 Android 7.0 的系统源码,之前也没做过什么记录,这次正好将学习的内容记录下来,方便以后复习巩固. 既然要学习我们的系统源码,那我们第一步要做的就是下载源码并进行编译了. # ...
- python代码加密运行_python源码下载后怎样进行加密
python源码下载后怎样进行加密 发布时间:2020-11-19 09:23:24 来源:亿速云 阅读:60 作者:小新 这篇文章主要介绍了python源码下载后怎样进行加密,具有一定借鉴价值,需要 ...
- 这下终于可以方便地发表测试型网页代码了(附源码下载)
前言 色彩斑斓的"马" 虽然利用插入代码功能可以很华丽的插入色彩斑斓的代码,但是就html(Xhtml)代码.js代码.css代码而言,我更喜欢想蓝色理想论坛中的那种:有个文本框, ...
- Android FrameWork学习(一)Android 7.0系统源码下载\编译
重点内容 转载. http://blog.csdn.net/cjpx00008/article/details/60474883 硬件环境要求 1. 编译环境 按照官方的说法,编译Android 2. ...
- Edxposed学习研究(四)Magisk(面具)源码下载编译详细实战教程
说明:本文操作在Windows 平台实现. 一.Magisk源码下载 在终端执行如下git命令下载Magisk源码. E:\workspace\androidstudio\EdXposedProj\2 ...
- QEMU零知识学习2 —— QEMU源码下载
QEMU源代码有多种方式进行下载.本文只介绍其中2种方法. 1. 通过git进行下载开发中的最新的qemu.git (1)获取源码 $ git clone http://git.qemu.org/qe ...
最新文章
- 《剑指offer》-- 链表中倒数第k个节点、反转链表、合并两个排序的链表
- powwr shell_Powershell Do While 循环
- mysql左键关联_MySQL的:左键删除重复列加入,3个表
- JavaFX图表(六)之条形图
- vue 二进制文件的下载(解决乱码和解压报错)
- 众咖齐聚!2018智能汽车跨界融合高峰论坛开幕在即
- 后端开发 java_Java后端开发三年,你不得不了解的JVM
- 关于oracle sql语句查询时表名和字段名要加双引号的问题详解
- java 23种设计模式学习。
- android 抽屉关闭时的卡顿
- android文字多行滚动显示,Android实现在TextView文字过长时省略部分或滚动显示的方法...
- pgm图像缩小C语言,C++将二进制(P5)图像转换为ascii(P2)图像(.pgm)
- PyQt5中打开网址方法
- SQL Server 开窗函数Over的使用(计算结存金额)
- C语言实现系统日历查询系统
- 电脑桌面文件删除了怎么找回?
- 删除后别人的微信号变成wxid_微信偷偷更新:终于能改微信号,每年改一次
- pandas操作excel 笔记
- 蚂蚁集团副总裁,任复旦大学人工智能学院院长!
- Kinect能掀起体感应用开发热潮吗?