首先感谢:http://hi.baidu.com/luanxian/item/d3b379113591370fb88a1a6c www-=感恩的心=-www,写的非常详细!
http://flash520.blog.163.com/blog/static/3441447520100711307952/ flash520,非常精炼!
在ubuntu和CentOS上面安装ffmpeg还是有很大区别的,用惯了ubuntu可能会觉得在CentOS上安装软件非常麻烦,而且网上可用的资料也少。根据网上找到的资料总结,有些已经过时了会产生错误,我已经做了修改,下面的方法亲测有效。
环境:CentOS 5.9
一、下载需要的包
先安装git:
$ wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
$ tar xzvf git-latest.tar.gz
$ cd git-{date}
$ autoconf
$ ./configure
$ make
$ make install
然后可以用git命令下载ffmpeg:
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
也可以到http://www.ffmpeg.org/download.html下载最新版ffmpeg
安装x264使用的yasm:
$ wget http://www.tortall.net/projects/yasm/releases/yasm-1.1.0.tar.gz
$ tar xvzf yasm-1.1.0.tar.gz
$ cd yasm-1.1.0
$ ./configure
$ make
$ make install
说明:yasm是汇编编译器,因为ffmpeg中为了提高效率用到了汇编指令,所以需要先安装。
安装nasm:
yum installl nasm
下载x264:
git clone git://git.videolan.org/x264.git
说明: 用来H.264/MPEG-4 AVC编码的。
下载libvpx:
git clone git://review.webmproject.org/libvpx.git
说明: 用来vp8编解码的,貌似找不到资源,我没安装成功,先不管。
下载lame:
wget http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz
说明: 用来做mp3编解码的。
下载xvidcore:
wget http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz
说明: 最新版的,能够编码和解码CD、DVD,可以编码MPEG-4 Simple和Advanced Simple Profile;
下载a52dec:
wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
说明: 用作ATSC A/52解码,同时也支持mpeg-1和mpeg-2解复用;
下载faad2:
wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz
说明: 用来解码mpeg-4和mpeg-2 aac;
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
说明: 也是用来解码mpge-4和mpge-2 aac;
下载libraw1394:
wget http://downloads.sourceforge.net/project/libraw1394/libraw1394/libraw1394-2.0.5.tar.gz
说明: 提供在Linux 1394子系统中用户空间直接访问IEEE1394总线;
下载libdc1394:
wget http://downloads.sourceforge.net/project/libdc1394/libdc1394-2/libdc1394-2.1.3.tar.gz
说明: 提供一个控制基于IEEE1394为基础的摄像头设备高级别的编程接口,用不到摄像头可以不装。
下载opencore-amr:
wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/0.1.2/opencore-amr-0.1.2.tar.gz
说明: 通过OpenCORE框架来实现的amr-nb, amr-wb和aac的解码;
下载libtheora:
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2
说明: 一个自由和开放的视频压缩格式;先用bzip2 -d XXX.tar.bz2解压,再用tar xvf解打包。
下载libogg:
wget http://downloads.xiph.org/releases/ogg/libogg-1.2.2.tar.gz
说明: 是ogg这种文件封装格式的官方程序;
下载libvorbis:
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.3.tar.gz
说明: 是一个完全自由的通用音频压缩格式,提供16到128k/bps这个范围内中、高质量的编码,在同样状态下提供比MPEG-4(AAC)更高的性能;
下载essential:
wget http://www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
说明: mplayer win32解码器;同样先解bz2,再解打包。
下载librtmp:
wget http://rtmpdump.mplayerhq.hu/download/rtmpdump-2.3.tgz
说明: 一个支持rtmp请求的工具。
二、解压安装
解压
for i in *.tar.gz; do tar -xzvf "$i"; done
for i in *.tar.bz2; do tar -xjvf "$i"; done
安装基本上都是以下三个步骤:
./configure
make
make install
以下几个例外:
xvidcore: cd build/generic; ./configure && make && make install
libx264: ./configure –enable-mp4-output –enable-shared –enable-pthread && make && make install
三、编译安装ffmpeg
export LD_LIBRARY_PATH=/usr/local/lib/
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-pthreads --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab --enable-libvorbis
make
make install
四、更新动态链接库
上面的第三方库默认安装的位置为/usr/local,所有要添加一个文件在/etc/ld.so.conf.d/这个目录里,告诉系统在搜索库的时候也要搜索这个目录;
添加方法一:
#echo "/usr/local/lib" >> /etc/ld.so.conf
#echo "/usr/lib" >> /etc/ld.so.conf
#ldconfig -v (这步必不可少!)
方法二:
在/etc/ld.so.conf.d/目录下新建一个文件 , 如“userlibs.conf”,然后将自己的库所在路径/usr/local/lib添加到这个conf文件中。然后
ldconfig -v (这步必不可少!)
好了,到这里基本上装完了!先测试一下,录制屏幕指定区域:
ffmpeg -f x11grab -s 640x480 -r 25 -i :0.0 ./out.mpg
先这样,发现问题我会继续更新。。