日期:2014-05-16  浏览次数:20765 次

安装和使用ffmpeg转换视频为flv文件(windows和linux)
安装和使用ffmpeg转换视频为flv文件(windows和linux)

环境winxp-sp2下:从 http://ffdshow.faireal.net/mirror/ffmpeg/ 下载最新版本的 FFMpeg.exe直接用就行(须rar解压)。以下的东西是为对ffmpeg无法解析的文件格式(wmv9,rm,rmvb等)转换用的,从http://mediacoder.sourceforge.net/download_zh.htm下载 最新版本的mediacoder的安装后;找到其中的mencoder.exe;drv43260.dll和pncrt.dll三个文件。2、环境linuxas4。3下:a、先装mp3在linux下的包:lame-3.97.tar.gz;   tar -xvzf lame-3.97.tar.gz;   cd lame-3.97;
   //(默认是装在/usr/local下);   //--prefix=/usr/此参数一定要(便于调用os的其它系统包)   //--enable-shared此参数一定要   ./configure --enable-shared --prefix=/usr/;   make;   make install;b、支持3gp格式,这也是现在好多手机支持的格式,因为手机用户是我们的主要用户,所以也得支持编译
编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,所以我们得下载一些编译3gp所需得文件。

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/

c、mp4;mov格式支持,这里我们安装faad2和faac。
下载请到http://packman.iu-bremen.de/suse/10.1/i586/

libmp4v2-1.4.1-2.i586.rpm;faad2-2.5-0.pm.2.i586.rpm和faac-1.25-0.pm.3.i586.rpm三个rpm包;

ffmpeg编译的时候加上--enable-faad --enable-faac参数就行。

rpm -ivh libmp4v2-1.4.1-2.i586.rpm;

rpm -ivh faad2-2.5-0.pm.2.i586.rpm;

rpm -ivh faac-1.25-0.pm.3.i586.rpm;

d、支持xvid; x264,现在最流行的两种高质量的压缩格式
xvid的编译安装
wget http://downloads.xvid.org/downloads/xvidcore-1.1.2.tar.gz
tar zvxf xvidcore-1.1.2.tar.gz

cd xvidcore-1.1.2/build/generic
./configure --prefix=/usr --enable-shared
make
make install

x264的获取同样是采用svn方式:
svn co svn://svn.videolan.org/x264/trunk x264

linux下须从http://www.kernel.org/pub/software/devel/nasm/binaries/linux/下载nasm-0.98.39-1.i386.rpm

在linux下安装就行了。。。

rpm -ivh nasm-0.98.39-1.i386.rpm(如-ivh不行就用-Uvh)

cd x264
./configure --prefix=/usr --enable-shared
make
make install

e、安装ffmpeg:
//as4.3系统已经支持ac3编码,只要加--enable-a52 --enable-gpl参数就行//我加--enable-shared参数没有成功./configure --prefix=/opt/ffmpeg/ --enable-mp3lame --enable-amr_nb --enable-amr_wb --enable-a52 --enable-xvid --enable-x264 --enable-faad --enable-faac --enable-gpl --enable-pthreads;make clean;//一定要;否则有可能没声音。make;make install;在相应windows和linux目录下(有ffmpeg文件的;以下用linux下说明):3、使用ffmpeg转换视频为flv文件:./ffmpeg -i "/opt/input/1.mpg" -y -ab 32 -ar 22050 -b 800000 -s 640*480 /opt/output/1.flv"ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)对ffmpeg无法解析的文件格式(wmv9,rm,rmvb等),可以先用别的工具(mencoder)转换为avi(ffmpeg能解析的)格式../mencoder /input/a.rmvb -oac lavc -lavcopts acodec=mp3:abitrate=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o /output/a.avi在执行./ffmpeg -i "/opt/input/a.avi" -y -ab 32 -ar 22050 -b 800000 -s 640*480 /opt/output/a.flv"就可以转了。4、视频抓图:                    ./ffmpeg -i "/opt/input/a.flv" -y -f image2 -t 1 -s 300*200 "/opt/output/1.jpg" //获取静态图
    ./ffmpeg -i "/opt/input/a.mpg" -vframes 30 -y -f gif "/output/1.gif" //获取动态图;不提倡抓gif文件;因为抓出的gif文件大而播放不流畅。