概述
linux下编译FFmpeg
2020年01月11日
阅读数:12
这篇文章主要向大家介绍linux下编译FFmpeg,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。
1。首先获取ffmpeg
经过svn下载:
从
http://subversion.tigris.org下载SVN客户端程序。
先装subversion,确保已经安装了apr和apr-util,在apache.org网站能下到
wget
http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz
tar zvxf subversion-1.3.2.tar.gz
cd subversion-1.3.2
./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/
make ; make install
到此,咱们就能够经过svn命令获取最新的ffmpeg了
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
你会发如今你所在的目录,自动出现一个ffmpeg的目录,就是你下载的源代码。咱们还不能这么快编译ffmpeg,应该若是要让ffmpeg支持更多格式的转换,还需作一些前期工做
2.支持mp3,linux固然是lame,下载解压
cd lame-3.96.1
./configure --enable-shared --prefix=/usr
make ; make install
这里推荐尽可能装在/usr下,默认是装在/usr/local下。这样ffmpeg编译都能顺利的找到库文件
3.支持Ogg Vorbis:
as4自带相应的rpm包,你能够安装一下以下rpm包
libvorbis, libvorbis-devel,libogg, libogg-devel
4.支持xvid x264,如今最流行的两种高质量的压缩格式
xvid的编译安装
wget
http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz
tar zvxf xvidcore-1.1.0.tar.gz
./configure --prefix=/usr
make ; make install
x264的获取一样是采用svn方式
svn co svn://svn.videolan.org/x264/trunk x264
cd x264
./configure --prefix=/usr --enable-shared
make ; make install
5.AC3和dts编码的支持
as4系统彷佛已经支持ac3编码,编译的时候只要加--enable-a52 --enable-gpl参数就行
libdts编译参数
./configure --prefix=/usr
make ; make install
6.mpg4 aac格式支持,因为服务器还针对手机用户服务,因此,相似aac,mpg4铃声格式的支持,咱们也得作。这里咱们安装faad2和faac就行
下载请到
http://www.audiocoding.com/modules/mydownloads/
FAAD2的编译
cd faad2
autoreconf -vif
./configure --prefix=/usr --with-mp4v2 --enable-shared
make ; make install
faac的编译
cd faac
chmod +x bootstrap
./bootstrap
./configure --prefix=/usr --with-mp4v2 --enable-shared
make ; make install
7.支持3gp格式,这也是如今好多手机支持的格式,由于手机用户是咱们的主要用户,因此也得支持编译
编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,因此咱们得下载一些编译3gp所需得文件。
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.204/26204-510.zip
解压之后把里面的文件都拷贝到libavcodec/amrwb_float
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.104/26104-510.zip
解压之后把里面的文件都拷贝到libavcodec/amr_float
好了,基本ffmpeg支持的格式,咱们基本都作好前期准备了,下面是ffmpeg的编译
./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb --enable-amr_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
make ; make install
补充1:
关于3gp的编译,若是你们要编译--enable-amr_nb-fixed,那就不能跟--enable-amr_nb同时编译,我不大清楚这二者到底有什么区别,彷佛fixed是修正版,管他呢,编译的方法:
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.073/26073-510.zip
解压之后把里面的文件都拷贝到libavcodec/amr目录下
修改libavcodec/amr/makefile 找到CFLAGS = -Wall -pedantic-errors -I. $(CFLAGS_$(MODE)) -D$(VAD) 换成CFLAGS = -Wall -I. $(CFLAGS_$(MODE)) -D$(VAD) -DMMS_IO
总体编译参数就是
./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb-fixed --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-dts --enable-pp --enable-faad --enable-faadbin --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay
make
make install
补充2:
有朋友说在当在cpu是x86的状况下,不能编译过去,我这里没发生过这状况,若是你真编译不过去,能够试着加上cpu=cpu
补充3:
对于rm、wmv能够用wmplayer提供的Mencoder来处理.环境:RedHat AS4
1。首先获取ffmpeg
经过svn下载:
从
http://subversion.tigris.org下载SVN客户端程序。
先装subversion,确保已经安装了apr和apr-util,在apache.org网站能下到
wget
http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz
tar zvxf subversion-1.3.2.tar.gz
cd subversion-1.3.2
./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/
make ; make install
到此,咱们就能够经过svn命令获取最新的ffmpeg了
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
你会发如今你所在的目录,自动出现一个ffmpeg的目录,就是你下载的源代码。咱们还不能这么快编译ffmpeg,应该若是要让ffmpeg支持更多格式的转换,还需作一些前期工做
2.支持mp3,linux固然是lame,下载解压
cd lame-3.96.1
./configure --enable-shared --prefix=/usr
make ; make install
这里推荐尽可能装在/usr下,默认是装在/usr/local下。这样ffmpeg编译都能顺利的找到库文件
3.支持Ogg Vorbis:
as4自带相应的rpm包,你能够安装一下以下rpm包
libvorbis, libvorbis-devel,libogg, libogg-devel
4.支持xvid x264,如今最流行的两种高质量的压缩格式
xvid的编译安装
wget
http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz
tar zvxf xvidcore-1.1.0.tar.gz
./configure --prefix=/usr
make ; make install
x264的获取一样是采用svn方式
svn co svn://svn.videolan.org/x264/trunk x264
cd x264
./configure --prefix=/usr --enable-shared
make ; make install
5.AC3和dts编码的支持
as4系统彷佛已经支持ac3编码,编译的时候只要加--enable-a52 --enable-gpl参数就行
libdts编译参数
./configure --prefix=/usr
make ; make install
6.mpg4 aac格式支持,因为服务器还针对手机用户服务,因此,相似aac,mpg4铃声格式的支持,咱们也得作。这里咱们安装faad2和faac就行
下载请到
http://www.audiocoding.com/modules/mydownloads/
FAAD2的编译
cd faad2
autoreconf -vif
./configure --prefix=/usr --with-mp4v2 --enable-shared
make ; make install
faac的编译
cd faac
chmod +x bootstrap
./bootstrap
./configure --prefix=/usr --with-mp4v2 --enable-shared
make ; make install
7.支持3gp格式,这也是如今好多手机支持的格式,由于手机用户是咱们的主要用户,因此也得支持编译
编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,因此咱们得下载一些编译3gp所需得文件。
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.204/26204-510.zip
解压之后把里面的文件都拷贝到libavcodec/amrwb_float
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.104/26104-510.zip
解压之后把里面的文件都拷贝到libavcodec/amr_float
好了,基本ffmpeg支持的格式,咱们基本都作好前期准备了,下面是ffmpeg的编译
./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb --enable-amr_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
make ; make install
补充1:
关于3gp的编译,若是你们要编译--enable-amr_nb-fixed,那就不能跟--enable-amr_nb同时编译,我不大清楚这二者到底有什么区别,彷佛fixed是修正版,管他呢,编译的方法:
wget
http://www.3gpp.org/ftp/Specs/ar ... 6.073/26073-510.zip
解压之后把里面的文件都拷贝到libavcodec/amr目录下
修改libavcodec/amr/makefile 找到CFLAGS = -Wall -pedantic-errors -I. $(CFLAGS_$(MODE)) -D$(VAD) 换成CFLAGS = -Wall -I. $(CFLAGS_$(MODE)) -D$(VAD) -DMMS_IO
总体编译参数就是
./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb-fixed --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-dts --enable-pp --enable-faad --enable-faadbin --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay
make
make install
补充2:
有朋友说在当在cpu是x86的状况下,不能编译过去,我这里没发生过这状况,若是你真编译不过去,能够试着加上cpu=cpu
补充3:
对于rm、wmv能够用wmplayer提供的Mencoder来处理.
最后
以上就是怕孤单舞蹈为你收集整理的linux编译ffmpeg.exe,linux下编译FFmpeg的全部内容,希望文章能够帮你解决linux编译ffmpeg.exe,linux下编译FFmpeg所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复