由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类似Linux的编译环境。本文主要记录Windows下FFmpeg编译的过程。

1.资源准备

准备编译过程所需的软件工具和源代码。

(1). MinGW-MSYS Bundle http://sourceforge.net/projects/mingwbundle/

(2). Yasm http://yasm.tortall.net/Download.html

(3). SDL http://www.libsdl.org/download-1.2.php

(4). X264 http://www.videolan.org/developers/x264.html

(5). FFmpeg http://www.ffmpeg.org/download.html

2.软件安装

(1).MinGW+Msys编译环境安装

  一种方法是先安装mingw,再通过网络下载的方法来安装mingw和msys软件。安装好之后,再通过烦琐的配置,来搭建编译环境。另一种直接安装配置好的MinGW+Msys系统。为了降低安装过程的烦琐程度,选择第二种方法,安装MinGW+Msys编译环境。下载MinGW-MSYS Bundle软件后,直接安装程序,配置安装路径,按照软件默认的安装向导,即可把软件安装好。

  安装完成后,需要配置msys.bat,用于启动类似于Linux环境的终端。若安装完成后,安装目标”C:\msys\1.0”下没有msys.bat,则需添加msys.bat文件,参考:https://code.google.com/p/msysgit/source/browse/msys.bat,然后,在msys.bat首行添加命令。

  call "C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin/vcvars32.bat"

(2).安装Yasm

下载yasm源码包,解压到E:\ffmpeg1.2\yasm-1.2.0目录。

进行yasm目录,依次执行:

复制代码
./configure –-prefix=/usr/local/yasm

make

make install
复制代码

然后通过以下命令导入yasm环境变量。

export PATH=”$PATH:/usr/local/yasm/bin”

(3).安装SDL

下载SDL的源码包,解压到E:\ffmpeg1.2\SDL-1.12.15目录

进入SDL目录,依次执行

复制代码
./configure -–prefix=/usr/local/SDL

make

make install
复制代码

通过以下命令导入SDL环境变量。

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

(4).安装x264

下载X264源代码包,解压到E:\ffmpeg1.2\x264

进入到x264目示,依次执行

复制代码
./configure  --enable-shared –-disable-asm -–prefix=/usr/local/x264

make

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”

(5).安装FFmpeg

下载ffmpeg源代码包,解压到E:\ffmpeg1.2\ffmpeg1.2

进入到ffmpeg1.2目录,依次执行

复制代码
./configure –-enable-shared -–disable-static –-enable-memalign-hack --enable-libx264 --enable-gpl –-prefix=/usr/local/ffmpeg1.2

make

make install
复制代码

安装完成后,可到D:\msys\1.0\local\ffmpeg1.2目录,查看安装结果。

注意:

若需要ffmpeg支持其他视频音频编解码器,只需下载相应源代码,按照以下步骤安装:

配置(./configure)--->编译(make)--->安装(make install)--->导入环境变量(export)。

另外,在编译ffmpeg时,开启相应编解码器的配置即可。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐