WIN32 下 编译 ffmpeg

来源:互联网 发布:韩国网络剧短剧 编辑:程序博客网 时间:2024/06/09 14:32

http://blog.csdn.net/mimepp/archive/2008/04/26/2332751.aspx

转载时请注明出处和作者联系方式:http://blog.csdn.net/mimepp
作者联系方式:YU TAO <yut616 at sohu dot com>

近来回顾了一下在win32下编译ffmpeg的过程,这里做个笔记。

在win32下,对ffmpeg的编译中,需要用到
mingw (Minimalist GNU for Windows) 主要是gcc编译器
msys (Minimal SYStem) 主要是提供linux shell环境

1、下载:
建立一个目录,如c:/tmp_download
下载链接:
http://sourceforge.net/project/showfiles.php?group_id=2435

msys部分:
msysCORE-1.0.11-2007.01.19-1.tar.bz2 (最基本的内容,主执行程序)
bash-3.1-MSYS-1.0.11-1.tar.bz2 (主要是使用更新的bash版本)
coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2 (主要是使用其中的pr.exe,在执行configure时需要)

mingw部分:
MinGW-5.1.3.exe 是一个安装引导工具,需要在后面继续连上网络,下载软件包,再安装真正的内容。
会下载到的内容包括:
binutils-xxxxxxxx.tar.gz
gcc-core-xxxxxxxx.tar.gz
gcc-g++-xxxxxxxx.tar.gz
w32api-xxxxxxxx.tar.gz
mingw-runtime-xxxxxxxx.tar.gz

2、安装:
先安装msys,手动建立一个目录:
C:/msys/

先解压 msysCORE-1.0.11-2007.01.19-1.tar.bz2
会出现C:/msys/bin
然后解压bash-3.1-MSYS-1.0.11-1.tar.bz2中的bin内容到上面的bin目录,提示覆盖的话,选择是,覆盖即可。
然后解压coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2 中的bin/pr.exe到bin目录中

运行MinGW-5.1.3.exe,下载的内容会同时出现在c:/tmp_download中,这个安装过程实际上只是一个解压缩包的过程。

手工建立目录C:/msys/mingw
将c:/tmp_download中的内容解压到这个目录,即
binutils-xxxxxxxx.tar.gz
gcc-core-xxxxxxxx.tar.gz
gcc-g++-xxxxxxxx.tar.gz
w32api-xxxxxxxx.tar.gz
mingw-runtime-xxxxxxxx.tar.gz
这些内容

3、修改“C:/msys/msys.bat”
在它的第一行增加vc6中的vcvars32.bat的路径,如
call "H:/Program Files/Microsoft Visual Studio/VC98/Bin/vcvars32.bat"

4、修改c:/msys/etc/fstab
复制c:/msys/etc/fstab.sample为c:/msys/etc/fstab
修改
c:/mingw        /mingw

c:/msys/mingw        /mingw

5、ffmpeg svn 代码
进到d:根目录
用TortoiseSVN工具下载
svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
即得到d:/ffmpeg目录

6、编译ffmpeg
运行C:/msys/msys.bat,进入shell
cd /d/ffmpeg
./configure --enable-memalign-hack
make

这个时候编译应该能完成了。

7、编译sample :
make output_example.exe
即能得到做转码用的例子程序了。
运行
output_example.exe /d/1.mpg
可以得到一个mpeg格式的video

上面的configure参数可以多次调整,得到你希望的配置方式。

--enable-gpl --enable-pp --enable-swscaler --enable-pthreads --enable-liba52 --enable-avisynth --enable-libdts --enable-libfaac --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libogg --enable-libtheora --enable-libvorbis --enable-x264 --enable-xvid --enable-amr_nb --enable-amr_wb --cpu=i686 --enable-memalign-hack --extra-ldflags=-static

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/mimepp/archive/2008/04/26/2332751.aspx

原创粉丝点击