> CentOS > CentOS服务器 >

CentOS 用fms2作流媒体服务器 ffmpeg 安装成功

要使用fms2作流媒体服务器,必定要两个工具把其他格式的视频文件转换成flv,它们就是ffmpeg和mencoder,ffmpeg主要负责除了rm、rmvb和wmv9等之外的其他各种格式的转换成flv,mencoder则是把rm、rmvb和wmv9等格式转换成flv。这里先讲ffmpeg的安装:
 
    必需的软件包包括:ffmpeg、lame、ogg vorbis、nasm、x264、xvid、libdts、faac、faad2、3gp
   
    1、ffmpeg,下载ffmpeg,解压:tar jxvf ffmpeg-checkout-20070130.tar.bz2
    svn svn://svn.mplayerhq.hu/mplayer/trunk
    http://ffmpeg.mplayerhq.hu/ffmpeg-checkout-snapshot.tar.bz2
 
    2、lame,下载lame,安装:./configure --prefix=/usr --enable-shared,make,make install
    tar jxvf lame
    tar -zxvf lame
    http://prdownloads.sourceforge.net/lame/lame-3.97b2.tar.gz
 
    3、ogg vorbis,这个一般的redhat自带,不需要下载,可以去看看/usr/lib/libvorbis.a在不在,如果不在可以yum install或apt-get install  
 
    4、nasm,下载nasm,安装:rpm -ivh nasm-0.98.39-1.i386.rpm
    http://www.kernel.org/pub/software/devel/nasm/binaries/linux/nasm-0.98.39-1.i386.rpm
 
    5、x264,下载x264,安装:./configure --prefix=/usr --enable-shared,make,make install
    svn://svn.videolan.org/x264/trunk
    chmod 777 configure
    chmod 777 config.guess
chmod 777 config.sub
chmod 777 version.sh
 
 
    yasm下載網址:http://www.tortall.net/projects/yasm/releases/yasm-0.6.0.tar.gz
    tar xzvf yasm-0.6.0.tar.gz
    cd yasm-0.6.0
    ./configure --prefix=/usr/local/yasm    ./configure --prefix=/usr--enable-shared
    make
    make install
    export PATH="$PATH:/usr/local/yasm/bin"
    vi /etc/profile
    --[在最後,插入]--
    export PATH="$PATH:/usr/local/yasm/bin"
    --[存檔並關閉]--
 
    6、xvid,下载xvid,安装:./configure --prefix=/usr --enable-shared,make,make install
    tar -zxvf
    cd xvidcore-1.1.0/build/generic
    http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz
 
    7、libdts,下载libdts,安装:./configure --prefix=/usr --enable-shared,make,make install
    tar -zxvf
    http://down1.chinaunix.net/distfiles/libdts-0.0.2.tar.gz
 
    8、faac,下载faac,安装:./configure --prefix=/usr --enable-shared,make,make install
    tar -zxvf
    http://jaist.dl.sourceforge.net/sourceforge/faac/faac-1.25.tar.gz
 
 
    sed -i 's//r//' bootstrap
    sed -i 's//r//' configure.in
    ./bootstrap
    ./configure --prefix=/usr --with-mp4v2 --enable-shared
 
http://downloads.sourceforge.net/faac/faac-1.26.tar.gz
tar zxvf faac-1.26.tar.gz
cd faac
./bootstrap
./configure --prefix=/usr --with-mp4v2 --enable-shared
make
make install
 
    9、faad2,下载faad2,安装:./configure --prefix=/usr --enable-shared,make,make install
    http://jaist.dl.sourceforge.net/sourceforge/faac/faad2-2.5.tar.gz
 
    echo > plugins/Makefile.am
    echo > plugins/xmms/src/Makefile.am
    sed -i '/E_B/d' configure.in
    autoreconf -vif
    ./configure --prefix=/usr --with-mp4v2 --enable-shared
 
    10、3gp,包括两个包:amrwb_float下载、amr_float下载,安装:解压ffmpeg的源码包后,进入ffmpeg-checkout-20070130/libavcodec/,新建两个新目录amrwb_float和amr_float,然后解压这两个包,把amrwb_float里面的所有文件复制到amrwb_float,把amr_float的所有文件复制到amr_float
    amrwb_float ttp://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-510.zip
    amr_float http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip
 
    unzip .zip –d dir
 
    --------
7. 3GPP AMR Floating point  AMR-Wideband支援:libamrnblibamrwb
3GP影片的影像是h263編碼,而聲音就用AMR-NB或AMR-WB編碼,所以要轉換手機影片,就要安裝AMR程式庫。最初坊間的安裝方式都是到3GPP官網去下載那些連名字也搞不懂的檔案來,放在ffmpeg裡的指定目錄去跟ffmpeg一同編譯的,但現在已經有人抽取了出來而成為獨立的程式庫,安裝起來就簡單得多了。
下載網址:http://www.penguin.cz/~utx/amr
http://ftp.penguin.cz/pub/users/utx/amr/?C=M;O=A
http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.0.tar.bz2 http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.2.tar.bz2
libamrnb
#tar xjvf amrnb-6.1.0.3.tar.bz2
#cd amrnb-6.1.0.3
#./configure --prefix=/usr --enable-shared
#make
#make install
libamrwb
#tar xjvf amrwb-7.0.0.0.tar.bz2
#cd amrwb-7.0.0.0
#./configure --prefix=/usr --enable-shared
#make
#make install
 
 
11. AC3 支援:liba52
[2007-06-09修正]現在的ffmpeg又沒附有liba52了,所以,還是自己動手裝吧...
下載網站:http://liba52.sourceforge.net/downloads.html.
http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
# tar zxvf a52dec-0.7.4.tar.gz
# cd a52dec-0.7.4
# ./configure --enable-shared --prefix=/usr
# make
# make install
 
 
    现在可以开始编译安装ffmpeg了,
   
    : bad interpreter: No such file or directory
 dos2unix ./configure
 
./configure --prefix=/usr --enable-gpl --enable-shared --enable-libmp3lame --enable-libamr-nb --enable-libamr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-faadbin --enable-dts --enable-pp --enable-faad --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay 
 
--extra-cflags=-I/local/include --extra-ldflags=-L/local/lib
 
./configure --prefix=/usr --enable-gpl --enable-shared --enable-libmp3lame --enable-libogg --enable-libvorbis --enable-libamr-nb --enable-libamr-wb --enable-libxvid --enable-libx264 --enable-liba52 --enable-liba52bin --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-pp --enable-pthreads --disable-ffserver --disable-ffplay
 
 
 
    make
 
make install
 
使用的时候很方便,一般来说:
ffmpeg -i 源文件 -o 目标文件 [-codec 编码方式] [-b 码率]就可以了,码率默认200k,编码默认为目标扩展名类型。
 
ffmpeg -i copycd.wmv test.flv
 
ffmpeg -i intro.wmv -ab 96-ar 22050 -b 500 -r 15 -s 320x240 test2.flv
 
ffmpeg -i clock.avi -ab 96 -ar 24000 -b 500 -r 15 -s 320x240 test3.flv
-ac <数值> 设定声道数,1就是单声道,2就是立体声,转换单声道的TVrip可以用1(节省一半容量),高品质的DVDrip就可以用2 
-ar <采样率> 设定声音采样率,PSP只认24000 
-ab <比特率> 设定声音比特率,前面-ac设为立体声时要以一半比特率来设置,比如192kbps的就设成96,转换默认比特率都较小,要听到较高品质声音的话建议设到160kbps(80)以上
 
参考:
http://blog.csdn.net/chinalinuxzend/archive/2007/10/17/1828447.aspx
http://hi.baidu.com/liushui05/blog/item/577f19d83bb3e83432fa1c60.html
http://hi.baidu.com/injava/blog/item/56988d5064358a62843524fc.html
http://www.strongd.net/blog/show/150
 
http://jaist.dl.sourceforge.net/sourceforge/tortoisesvn/TortoiseSVN-1.4.5.10425-win32-svn-1.4.5.msi
 
http://blog.comicparty.com/post/1/352

(责任编辑:IT)