2010-01-13 说明
Windows下的FFmpeg和MPlayer已经在SourceForge上创建了项目,在此可以下载到最新版本的FFmpeg和MPlayer二进制包。
要编译成功FFmpeg,并支持大部分主流视频编码格式,首先还要做一些准备工作。
1. 支持MP3
下载LAME()。
# tar zxvf lame-*.tar.gz
# cd lame-*
# ./configure --prefix=/usr --enable-shared
# make
# make install
2. 支持OGG和Vorbis
RPM安装libogg、libogg-devel、libvorbis和libvorbis-devel。
3. 支持Xvid和x264
下载Xvid()。
# tar zxvf xvidcore-*.tar.gz
# cd xvidcore-*/build/generic
# ./configure --prefix=/usr
# make
# make install
下载x264(http://www.videolan.org/developers/x264.html)。
# bunzip2 x264-*.tar.bz2
# tar xvf x264-*.tar
# cd x264-*
# ./configure --prefix=/usr --enable-shared --disable-asm
# make
# make install
4. 支持AC3和DTS
下载liba52()。
# tar zxvf a52dec-*.tar.gz
# cd a52dec-*
# ./configure --prefix=/usr --enable-shared
# make
# make install
2010-01-13 说明
新版FFmpeg貌似不支持liba52了,不知道是什么原因,配置参数中删除--enable-liba52 --enable-liba52bin。
下载libdca(http://www.videolan.org/developers/libdca.html)。
# bunzip2 libdca-*.tar.bz2
# tar xvf libdca-*.tar
# cd libdca-*
# ./configure --prefix=/usr
# make
# make install
5. 支持MPEG4和AAC
下载FAAC和FAAD2()。
# tar zxvf faac-*.tar.gz
# cd faac-*
# ./bootstrap
# ./configure --prefix=/usr --enable-shared
# make
# make install
# tar zxvf faad2-*.tar.gz
# autoreconf -vif
# ./configure --prefix=/usr --enable-shared
# make
# make install
注:编译FAAD2需要使用autoreconf,需要预先RPM安装autoconf、automake和libtool。
6. 支持3GP
下载libamrnb和libamrwb(~utx/amr)。
# tar zxvf amrnb-*.tar.gz
# cd amrnb-*
# ./configure --prefix=/usr --enable-shared
# make
# make install
# tar zxvf amrwb-*.tar.gz
# cd amrwb-*
# ./configure --prefix=/usr --enable-shared
# make
# make install
2010-01-13 说明
新版FFmpeg中已将libamrnb和libamrwb用libopencore-amrnb和libopencore-amrwb代替,配置参数由原来的--enable-libamr-nb --enable-libamr-wb变为--enable-libopencore-amrnb --enable-libopencore-amrwb。
7. 编译FFmpeg
完成了以上准备工作后,开始编译FFmpeg了。FFmpeg的最新源码可以使用Subversion获取。
# ./configure --prefix=/usr/local/ffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-version3 --enable-libmp3lame --enable-libvorbis --enable-libxvid --enable-libx264 --enable-liba52 --enable-liba52bin --enable-libfaad --enable-libfaadbin --enable-libfaac --enable-libamr-nb --enable-libamr-wb --enable-libopencore-amrnb --enable-libopencore-amrwb
# make
# make install
至此,FFmpeg就编译安装成功了。找一段视频测试一下:
# /usr/local/ffmpeg/bin/ffmpeg -i /tmp/test.avi -y -f image2 -ss 00:00:02 -t 0.001 -s 320x240 /tmp/test.jpg
其中/tmp/test.avi为视频文件,/tmp/test.jpg为截图文件,00:00:02表示截2秒时候的一屏。
如果这时遇到“error while loading shared libraries”,是因为找不到库文件。编辑/etc/ld.so.conf,加入/usr/local/ffmpeg/lib,执行ldconfig即可。
PS: 这个FFmpeg折腾了我好久,终于搞定了,记下笔记,希望对朋友们有所帮助。
阅读(1298) | 评论(0) | 转发(0) |