Windows下编译FFmpeg

FFmpeg是一套跨平台的音视频录制、编码、解码以及转码方案,支持多种编码算法和多种文件格式,是应用最为广泛的多媒体开源项目之一。由于其代码是在Linux平台下开发,所以无法直接在Windows下编译,本文简单记录了Windows下使用MinGW编译FFmpeg代码的过程。

1. 安装MinGW和MSYS

编译 ffmpeg需要用到MinGW和MSYS,可以分别单独安装二者,也可以直接使用他人整合好的统一安装包。

下载地址:http://sourceforge.net/projects/mingwbundle/files/

选择最后的版本mingw-msys-bundle-0.6下载。

mingw-msys

解压后,运行mingw-msys-0.6-x86.exe。

mingw-msys-wizard

默认安装目录为C:\MinGW和C:\msys。

2. 下载yasm

下载地址:http://yasm.tortall.net/Download.html

根据自己的系统选择win32.exe或者win64.exe。

yasm

下载后,将文件改名为yasm.exe,拷贝到C:\MinGW\bin目录下。

3. 下载ffmpeg源码

下载地址:http://ffmpeg.org/download.html

找到windows版本:

ffmpeg-windows

windows版本是第三方提供的,其地址为:https://ffmpeg.zeranoe.com/builds/

在此站点下实际上有编译好的windows版本可以直接使用,如下所示:

ffmpeg-zeranoe-build

1) Static: 采用静态链接的ffmpeg应用程序(包括ffmpeg.exe、ffplay.exe等)
2) Shared: 采用动态链接的ffmpeg应用程序和ffmpeg动态链接库(如avcodec.dll等)
3) Dev: ffmpeg的头文件和库文件

如果想使用ffmpeg静态库,只需下载Dev压缩包。如果想使用ffmpeg动态库,则需下载Dev和Shared两个压缩包,其中头文件和lib文件从Dev里获取,dll文件从Shared里获取。

本文选择自己编译ffmpeg库,所以需要下载源码:

ffmpeg-zeranoe-source

使用7z解压下载的压缩包。

4. 编译ffmpeg

以管理员身份运行开始菜单中的MinGW-MSYS。

run-mingw-msys

假设前面解压后的ffmpeg位于E盘下,文件夹名字为ffmpeg,则通过命令行cd /e/ffmpeg进入到源代码目录中,后续的编译安装过程就跟linux下的一致了。

先运行configure进行配置(可通过./configure –help查看有哪些选项):

./configure

配置完毕后,运行make和install进行编译安装:

make install

编译的最终结果位于C:\msys\1.0\local目录下,其中头文件位于include下,动态链接库(*.dll)位于bin目录下,动态链接库对应的库文件(*.lib)位于bin目录下。

分享到

《Windows下编译FFmpeg》有1个想法

  1. Pingback: Cıvata

发表评论

电子邮件地址不会被公开。 必填项已用*标注