Windows10下编译X264

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_34732729/article/details/87708459

出于工作需求,需要将视频文件编码为H264。 在此记录一下。

一、数据准备

1. 需要下载MinGW          https://sourceforge.net/projects/mingw/

2. 需要下载 yasm              http://yasm.tortall.net/Download.html

看个人需要,我下载的是win32.exe版本的。 

3. 需要下载    UltraEdit, 用于编辑 .bat 文件

4. 需要下载 pexports.exe      https://sourceforge.net/projects/mingw/files/MinGW/Extension/pexports/

我找的是下载次数最多的那个。 用于将 .dll.a 生成 .lib

 

二、安装过程

一键setup

新修改路径,结果有warning, 然后就默认到了C盘。其实也可以放在其他盘,没有问题的。

路径修改时,会有warning,所以我就没有修改,其实也可以修改,看自己喜好,能找到就行。

 

选择Basic Setup,在每一个方框上,右键,有一个选项,勾选即可,完成后如下图: 

左上角,Installation -> Apply Changes

边下载边安装,整个过程需要等较长时间(网速好的除外)。

我这里网不太好,有好多文件没有下载成功。当然啦,并不影响。

两天之后,我继续setup,已经安装的还有,没有安装成功的,还会继续下载,直到安装完为止

三、编译x264

1. 把 下载的 yasm.exe  pexports.exe 放到c:\\MinGE\bin 文件夹下。(这是我的路径),如果下载下来的执行文件名称不是yasm.exe,修改成yasm.exe即可。

2、 使用UltraEdit 打开  C:\MinGW\msys\1.0 中 msys.bat

在第一行的上面,添加一条代码, 代码路径为我安装的VS2010的bin路径:

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvar32.bat"
@echo off
rem Copyright (C):  2001, 2002, 2003, 2004, 2005  Earnie Boyd
rem   mailto:earnie@users.sf.net

3、 双击打开 C:\MinGW\msys\1.0 中 msys.bat 执行文件,

使用Linux的输入命令,进入要编辑的X264的源文件中(红框内容为我的路径)。

输入: . /configure –enable-shared –disable-asm –prefix=/usr/local/x264

原因:没有asm, 所以忽略掉

蓝色为路径,在当前的C:\MinGW\msys\1.0\local  的路径下,添加一个x264文件。

输入: make

此处时间较长,编译文件较多,需要耐心等待。

输入:make install

运行完make install之后,出现如下:

通过以下命令,导入x264的环境变量。

export PATH=”$PATH:/usr/local/x264/bin"
export C_INCLUDE_PATH="$C_INCLUDE_PATH:/usr/local/x264/include"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/x264/lib”

发现一个问题,按道理来说,应该有 .lib文件,但是lib文件夹中,只有如下两个文件:

此链接   https://www.cnblogs.com/lihaiping/p/builtx264-2.html   说了如下一句话:

然后,我就这样改了,如下:。

不是我偷懒,是我尝试了各种办法,也没有生成.lib文件。至于是否可行,建一个工程先测试一下,

参考链接:https://blog.csdn.net/huibailingyu/article/details/40835825  此链接尝试结果 failed:

(如果你有好的办法,可以给我留言)

之后的解决方案https://blog.csdn.net/qq_34732729/article/details/87785734

四、测试工程

1、打开VS2010,新建一个win32控制台应用层序。

bin 文件夹中的 libx264-157.dll   

include 文件夹中的 x264.h  x264_config.h

lib 文件夹中的 libx264.lib

复制到新建的工程下。

另外需要找到:stdin.h  pthreadGC2.dll  也放到工程下。如图所示:

/

2、填写代码,编译通过!

 

参考博客:https://www.cnblogs.com/dwdxdy/p/3625766.html

展开阅读全文

没有更多推荐了,返回首页