您的位置:首页 > 运维架构 > Linux

linphone编译(二) linux 下编译ffmpeg

2010-06-30 17:33 465 查看
1. ffmpeg下载,需要工具,这里介绍SubVersion。

1)下载berkeley DB, 这个版本很关键,要和你后面下载的apache版本对应,不然编译过程中会出现berkeley DB not found错误。我以前用的db-4.0.14,apr和apr-util(这是个apache的project,全名是Apache Portable Runtime),用的httpd-2.2.4,出错。后来换db-4.5.20编译通过。

下载版本:

http://download.oracle.com/berkeley-db/db-4.0.14.tar.gz

http://download.oracle.com/berkeley-db/db-4.6.18.tar.gz

http://download.oracle.com/berkeley-db/db-4.5.20.tar.gz

2) 编译安装db

cd ./db-4.5.20/build_unix

../dist/configure --prefix=/usr/local/db-4.5.20

make & make install

3)下载apcha(httpd-2.2.4),安装apr

http://apache.justdn.org/httpd/httpd-2.2.4.tar.gz,解压

cd ./httpd-2.2.4/srclib/apr/

./configure --prefix=/usr/local/apr-httpd

make & make install

4)安装apr-util

cd ../apr-util/

./configure --prefix=/usr/local/apr-util-httpd --with-apr=/usr/local/apr-httpd/ --with-berkeley-db=/usr/local/db-4.5.20

make & make install

5)安装subversion 和 补丁

下载:http://subversion.tigris.org/downloads/subversion-1.4.3.tar.bz2

http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.bz2

解压缩

tar -jxf subversion-1.4.3.tar.bz2

tar -jxf subversion-deps-1.4.3.tar.bz2(直接解压到subverstion-1.4.3目录了)

cd subversion-1.4.3

./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/
make & make install

装完后用svnadmin –version查看下是否有信息,有的话说明安装成功。

svn --version

6)获取ffmpeg

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg

我的端口和svn都是正确的,建立server,外面也能访问。访问公司svn server下载也 没有问题,没有防火墙,端口3690未占用,但访问上面两个点checkout,就timeout,郁闷啊

我只能http下载linux版本ffmpeg:ffmpeg-0.5.tar.bz2
http://download.chinaunix.net/download.php?id=25235&ResourceID=2990

但这个版本在后面编译,make后会出现头文件错误,怀疑库没有加载问题。

http://ffmpeg.org/download.html获得0.6版本

7)支持lame,下载

http://lame.sourceforge.net/download.php

tar -zxvf lame-3.98.4.tar.gz

cd lame-3.98.4

./configure --enable-shared --prefix=/usr(这里推荐尽量装在/usr下)

make & make install

8) 支持Ogg Vorbis:

需要libvorbis, libvorbis-devel,libogg, libogg-devel 这几个rpm包,系统已经安装。

9) 支持xvid

http://downloads.xvid.org/downloads/xvidcore-1.2.2.tar.gz 下载解压

cd xvidcore/build/generic

./configure --prefix=/usr --enable-shared

make & make install

10)支持x264(mmpeg版本要求必须大于0.65)

svn下载:

svn co svn://svn.videolan.org/x264/trunk x264

http下载linux版本

http://down1.chinaunix.net/distfiles/x264-svn-20060409.tar.bz2

./configure --prefix=/usr --enable-shared

make & make install

11)支持AC3和dts编码

AC3: as4已经有,在编译时加模块即可,增加--enable-a52 --enable-gpl编译选项。

libdts: http://download.chinaunix.net/download/0006000/5785.shtml

./configure --prefix=/usr

make & make install

12)支持mpg4 aac,这里我们安装faad2和faac
faad2 下载地址:http://download.chinaunix.net/download.php?id=5363&ResourceID=2885

patch:http://download.chinaunix.net/download.php?id=5364&ResourceID=2886

faac 下载地址:http://download.chinaunix.net/download/0003000/2884.shtml

上面这两个下载后编译,make会出现错误Makefile: missing separator. Stop.,修改为tab后还会有新的错误。

重新下载位置:

http://sourceforge.net/projects/faac/files/版本为faac-1.28 faad2-2.7

faad2编译:

autoreconf -ivf(生成自动配置软件源码的脚本例如configure 的工具)

./configure --prefix=/usr --with-mp4v2 --enable-shared
make & make install

faac编译

chmod +x bootstrap
./bootstrap

./configure --prefix=/usr --with-mp4v2 --enable-shared

(configure一定要带–enable-shared参数,不然,不会生成共享库 ... enable-shared=max是指除了so以外的所有标准模块都编译成DSO模块)

13)支持3gp格式
格式 模块是 编译时加--enable-amr_nb --enable-amr_wb 参数如果出现有错误提示需下载下面的模块

wget http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-510.zip 解压以后把里面的文件都拷贝到libavcodec/amrwb_float。

wget http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip 解压以后把里面的文件都拷贝到libavcodec/amr_float

14)ffmpeg支持VC1格式 以及 采用ffmpeg转码制作FLV文件的方法 因为功能暂不编译

15)编译ffmpeg

网上编译选项,一般如以下,但新版本的ffmpeg不支持,一些选项会有错误。

./configure --prefix=/usr --enable-gpl --enable-mp3lame --enable-amr_if2 --enable-amr_nb --enable-amr_wb --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-faadbin --enable-pp --enable-faad --enable-faac --enable-pthreads --disable-ffserver --disable-ffplay

运行./configure --help看允许选项。出现free选项,增加no freee选项在前面

./configure --prefix=/usr --enable-gpl --enable-shared --enable-nonfree --enable-libvorbis --enable-libxvid --enable-libfaadbin --enable-libfaad --enable-libfaac --enable-pthreads --disable-ffserver --disable-ffplay

make

make install

OK 成功!累啊,尤其我的svn总下载不下来,引起很多问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: