ffmepg mingw + vs2012 编译

网上有很多mingw 编译ffmpeg的介绍,但是多很难顺利完成,整理了网上的一些资料把编译过程整理了一下,便于大家使用

1、搭建 MinGW 的编译环境,这里不做过多介绍,网上一大堆

2、安装yasm

地址:http://yasm.tortall.net/Download.html,如果不需要x264支持可以不安装

改名为yasm.exe放到C:\WINDOWS\system32 或者 C:\MinGW\msys\1.0\bin文件夹下。

3、安装pkg-config

下载pkg-config-0.23-2.zip及glib_2.18.4-1_win32.zip

http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip 
    http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.4-1_win32.zip 
    把pkg-config.exe 和 glib_2.18.4-1_win32.zip中的libglib-2.0-0.dll放在mingw的bin目录下

4、安装c99编译环境(如果是vs2013 + ,跳过此步

下载c99-to-c89 : https://github.com/libav/c99-to-c89/downloads  或http://pan.baidu.com/s/1mgHs18s

将c99conv.exe和c99wrap.exe复制到:d:/MinGW/msys/1.0/bin 目录下;

C99头文件inttypes.h和stdint.h : http://code.google.com/p/msinttypes/downloads/list 或http://pan.baidu.com/s/1o6sRThS

vs2012只需将inttypes.h头文件复制到: C:\Program Files\Microsoft Visual Studio 11.0\VC\include 目录下即可;

5、配置环境变量

     打开%MSYS_HOME%/1.0/etc/profile文件 ,添加如下代码

if [ -z "$pkg-config" ]; then

export pkg-config=/c/MinGW/bin/pkg-config.exe

fi

6、配置编译环境

1、复制:c/MinGW/msys/1.0/msys.bat 到同目录下,改名叫做msys_vs2012.bat

2、在msys_vs2012.bat开头部分添加:call " C:\Program Files\Microsoft Visual Studio 11.0\VC\bin\vcvars32.bat" ;

3、重命名 d:/MinGW/msys/1.0/bin/link.exe 为link_renamed.exe ,这一步是防止这个link.exe与vc的link.exe发生冲突,编译完成之后记得修改回来;

7、编译 

打开msys_vs2012.bat,进入要编译的目录

   1、 x264编译
    为了让编译出来的ffmpeg支持对x264格式的编解码,您需要先下载x264。
    到:http://www.videolan.org/developers/x264.html下载 
    文件名类似为:last_x264.tar.bz2 的包。

last_x264.tar.bz2 接压到:C:\MinGW\msys\1.0\home\duxp\plugin\  目录下,双击“C:\MinGW\msys\1.0\msys.bat”,启动“MinGW32”,切换到x264目录:
    再执行以下命令:
    $./configure --prefix=/usr/local/vs2012  --enable-static --enable-win32thread

$ make
    $ make install
    编译结果在:C:\MinGW\msys\1.0\local\vs2012 目录下

 2、ffmpeg编译

$ ./configure --prefix=./vs2012_build --enable-gpl --enable-nonfree --enable-postproc --enable-avfilter --enable-w32threads --enable-runtime-cpudetect --enable-memalign-hack --enable-libx264 --disable-debug --extra-cflags=‘-I/usr/local/vs2012/include‘ --extra-ldflags=‘-L/usr/local/vs2012/lib‘

make

make install

时间: 2024-10-26 23:44:53

ffmepg mingw + vs2012 编译的相关文章

用mingw静态编译Qt4.8.2和Qt5.1.1(需要修改不少源码)

因为一些乱七八糟的原因,我需要用mingw静态编译Qt4.8.2和Qt5.1.1.经历了一天的折腾之后,自觉编译一下Qt还是件颇为麻烦的事情,故将过程略作总结,以备不时之需. 首先,在编译之前,我需要下载mingw.qt-everywhere-opensource-src-4.8.2和qt-everywhere-opensource-src-5.1.1. 然后,准备开始编译了,当然先得把压缩包解压到一个合适的地方.我这里的路径是"C:\Qt"下面. 解压完毕后,先试着编译Qt4.8.2

在Windows下使用MinGW静态编译Assimp

使用MinGW静态编译Assimp 到了5月份了,没有写一篇日志,于是自己从知识库里面拿出一篇文章充数吧.这次将要讲解如何在Windows下使用MinGW静态编译Assimp. Assimp是目前比较全的3D格式解析库了,熟悉3D游戏开发的同行都知道,3D的格式非常混乱,各种3D格式在不同场合都有他们特定的应用,游戏引擎只能够解析少部分3D格式,更多实用的格式来自游戏公司自定义的格式.而在开源领域,Assimp算是比较全的3D格式导入库了.它对3D格式理解深入,很适合整合至3D图形引擎中,让你们

VS2012编译64位程序

安装64位操作系统不是编译64位程序的必要条件,关键是要装64位程序的编译器. 1. 选择“Build” – “Configuration Manager”菜单,打开配置管理器.点击新建解决方案平台. 2. 选择“x64”平台,点击确定按钮. 3. 这时候配置管理器中的平台已经改成刚才选择的x64了,这时候编译出来的就是64位程序了.可以在工具栏的平台下拉框中快速切换目标平台. 注意:一个工程调用的另一个工程的DLL时,位数必须一致,即本工程要编译为64位,DLL也必须编译为64位.如果本工程要

vs2012编译CZMQ-2.2.0

1.下载源码包 到地址http://download.zeromq.org/czmq-2.2.0.zip下载源码,解压缩到czmq-2.2.0目录下如图所示 将builds目录拷贝到czmq-2.2.0目录下(合并并覆盖),并将czmq-2.2.0移出来即文件目录由czmq-2.2.0\czmq-2.2.0变为czmq-2.2.0(这一步特别注意,下面的属性配置依赖这个配置) 2.编译 打开builds\msvc\vs2012目录,可以看到czmq.sln文件,打开该工程,编译出现以下错误: 该

用vs2012编译doxygen-1.8.7

1.下载bison,地址见上篇文件,我用的是2.4.1-setup.exe 2.下载flex,地址见上篇文件,我用的是flex-2.5.4a-1.exe 3.下载python,我用的是2.7版本 4.将前面三个软件安装后,将其安装后目录下的bin都添加到系统给的path路径中,将python的根目录增加到系统的path目录 5.使用vs2012打开doxgen的源代码,目录下有个winbuild,找到Doxygen.sln 4>------ 已启动生成: 项目: doxyindexer, 配置:

windows & gcc & mingw & mysy 编译 openssl

今天有一个项目需要使用到 https, 以前一直用的都是http请求, 用 socket() 实现 https 请求我还真是头一回遇到. 先网上搜索了一下相关资料,明白了 https 相比较 http 就是多了一个认证,发送与接收的数据都是经过加密的,不能是明文. 然后说下载个openssl,用这个能实现https请求. 我平时很少用c写代码,再加上学习c的时候选了一条现在看来不是很理想的路(c & gcc & mingw & windows & codeblocks) 我

windows 7下mingw+msys编译ffmpeg

windows 7下mingw+msys编译ffmpeg 1-->下载安装MingW,mingw-get-inst-20120426.exe  http://sourceforge.net/projects/mingw/ 安装路径 默认C:\MinGW .勾选了 <1> C Compiler  <2> C++ Compiler <3>MSYS Basic System <4>MinGW Developer ToolKit 其中 <3>就安装

cocos2dx-3.2 vs2012 编译总找不到文件

发现对应路径多了个2d,删除即可. 注意对应的android程序也有这个问题 cocos2dx-3.2 vs2012 编译总找不到文件

VS2012编译错误信息,错误列表却没显示

今天在写代码的时候,发现VS有编译错误,在错误列表里面却没有显示错误信息,百思不得其解. 后来终于发现,错误列表弄了个筛选,所以就看不到错误信息了,晕死.有遇到该问题的,可以参考下. VS2012编译错误信息,错误列表却没显示