具体的编译环境: Windows 7(64bit) + Visual Stdio 2010 + Cmake 3.4.3 + vsyasm-1.3.0-win64
a、从X265官方网站获取源代码,然后使用Cmake编译生成VS2010工程。
代码克隆命令中的hg表示Mercurial的缩写(水银在元素周期表中符号),在Windows环境下安装TortoiseHg工具获取源代码。
在X265源代码的build路径下README.txt具体说明X265编译需要的环境以及编译过程的详细说明。
b、下载Cmake,并配置环境变量Path
c、下载yasm,并将yasm.exe可执行文件复制到C:\Windows\SysWOW64(64bit)或者C:\Windows\System32(32bit)路径下
d、运行${x265}\build\vc10-x86_64路径下build-all.bat启动cmake配置界面
e、点击Configure,若没有显示Found Yasm 1.3.0 to build assembly primitives,则表示YASM未配置正确;然后点击Generate,输出界面中显示Generate Done表示完成;最后,关闭cmake窗口,在DOS窗口中,看到编译过程的输出。
f、使用VS2010打开${x265}\build\vc10-x86_64路径下的x265.sln,点击生成解决方案,提示如下错误信息,错误原因是使用汇编器yasm对asm源代码文件进行汇编后生成的obj文件与链接时的文件名不一致:pixel-a.asm文件生成的文件名不是pixel-a.asm.obj,而是pixel-a.obj;其中所有obj文件位于${x265}\build\vc10-x86_64下。
最简单的解决方案就是对上述全部的obj文件重命名,修改成*.asm.obj,然后重新生成解决方案。
g、获取X265的版本以及编译平台和指令集信息等
h、在Release路径下,执行x265.exe --input E:\video\bxjg_352x288.yuv --fps 30 --input-res 352x288 --output out_2.h265 --bitrate 512对yuv文件进行编码,可以使用Elecard HEVC Player Sample对编码后的文件进行解码播放。
Build with assembly enabled fails with Visual Studio (2010 tested) due to missing .asm in file names
原文:http://www.cnblogs.com/zhouLee/p/5207347.html