本站首页    管理页面    写新日志    退出


«October 2025»
1234
567891011
12131415161718
19202122232425
262728293031


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7630258
建立时间:2006年5月29日




[视频处理]FFMPEG在LINUX下的编译
软件技术

lhwork 发表于 2007/2/5 14:59:53

FFMPEG项目现在只是发展到了0.4.9版本,不过别小看这个0.4.9,已经开始了1年多的项目了。 和PHP类似,这个类库也依赖了无数的第三方类库,FFMPEG做的很重要的一件事情,就是作为一个胶水,把这些东西 都粘合到一起。 最痛苦的事情莫过于在WINDOWS上编译FFMPEG,需要安装无数的东西(Cygwin那一套)。 同样,在Redhat9 上的编译也是痛苦的。因为FFMPEG用到的某些类库要求高版本的AUTOMAKE之类的东西。 因此,还是用回RHEL 4.2版本的LINUX上编译为妥。 1。准备所有的软件包 首先是FFPMEG,从SVN里边获取最新的源代码 svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg 为了对MP3进行解码,我们需要lame-3.97; 从这里下载:lame.sourceforge.net 为了处理手机类的音频,我们需要libgsm packages.qa.debian.org/libgsm 获取libnut svn co svn://svn.mplayerhq.hu/nut/trunk libnut 获取libogg-1.1.3,和libvorbis-1.1.2 ,放XVID电影的时候常用的音频库 lists.xiph.org/pipermail/vorbis/2005-November/026129.html 还需要H264的支持和XVID(OPEN SOURCE MP4)的支持 developers.videolan.org/x264.html  wget http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz 还有mpg4 aac格式支持,需要faac和faad2, http://www.audiocoding.com/modules/mydownloads/ 下载回来这些代码后,做一轮的解压后,开始逐个编译。 2。编译代码 1。x264 直接configure --prefix=/usr/local/flvtool/后make x264在redhat 9上编译有问题,一定要禁止编译pthread 2.xvid ./configure --prefix=/usr/local/flvtool/ make make install 3.ogg ./configure --prefix=/usr/local/flvtool/ make;make install 4.vorbis ./configure --prefix=/usr/local/flvtool/ --with-ogg=/usr/local/flvtool/ make ;make install 5.libnut make -C libnut make install 有必要的话,可能需要改一下config.mak PREFIX = /usr/local/flvtool 6.libgsm 手工修改一下Makefile make make install 7.faac ./configure --prefix=/usr/local/flvtool/ make make install 8.faad2 cd faad2 echo > plugins/Makefile.am                         echo > plugins/xmms/src/Makefile.am sed -i '/E_B/d' configure.in autoreconf -vif ./configure --prefix=/usr/local/flvtool/make make install 这里边碰到的最大问题可能是某个类库编译的时候少了某个symbol,或者找不到INCLUDE的文件,这个时候就需要修改 Makefile或者增加环境变量, 比如修改Makefile CC=gcc -I/usr/src/flvtool/include LD_FLAGS= -L/usr/src/flvtool/lib 并且修改LD_LIBRARY_PATH增加上述类库的编译好的SO所在的路径的环境变量让link程序可以找到这些文件。 最后,就是ffmpeg了。 ./configure --enable-mp3lame --enable-libnut --enable-libogg --enable-vorbis   --enable-libgsm  --enable-xvid  --enable-x264    --prefix=/usr/local/flvtool/ --enable-gpl  --enable-faac --enable-faad make make install 如果希望增加对WMV9的支持,那么可以增加--enable-decoder=vc1 不过效果好像差强人意。


阅读全文(1880) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 1.112 second(s), page refreshed 144785155 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号