首页 > 系统 > Linux > 正文

linux系统中ffmpeg安装配置步骤

2024-08-27 23:59:40
字体:
来源:转载
供稿:网友

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,下面我们来给各位介绍在linux系统中ffmpeg安装配置步骤,有需要的可以和小编来看看具体步骤如下.

http://ffmpeg.org/download.html

windows版本比较容易.

Linux,安装环境CentOS,下载tar.bz2安装包.

  1. tar -xvf XX.tar.bz2 
  2. yasm/nasm not found or too old. Use –disable-yasm for a crippled build. 
  3. If you think configure made a mistake, make sure you are using the latest 
  4. version from Git. If the latest version fails, report the problem to the 
  5. ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net. 
  6. Include the log file “config.log” produced by configure as this will help 
  7. solve the problem. 
  8. http://yasm.tortall.net/Download.html 下载yasm 
  9. tar -zxvf yasm.tar.gz 
  10. ./configure 
  11. make 
  12. make install 

再来,ffmpeg下面 ./configure 安装完毕,发现无法将amr转成MP3.

  1. ./ffmpeg -i x.amr x.mp3 
  2. ./configure –enable-libmp3lame 

少这个libmp3lame:

  1. # wget http://downloads.sourceforge.net/lame/lame-3.97.tar.gz 
  2. # tar xzf lame-3.97.tar.gz 
  3. # cd lame-3.97 
  4. # ./configure 
  5. # make 
  6. # make install 
  7. ERROR: libmp3lame >= 3.98.3 not found 
  8. http://downloads.sourceforge.net/lame/去这里找最新的版本,下载一个。 
  9. 我下到的是lame-3.99.5.tar.gz 
  10. # ./configure 
  11. # make 
  12. # make install 
  13. ./ffmpeg -i x.amr x.mp3 
  14. ffmpeg: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory 
  15. 发生这个我们这样弄 

编辑/etc/ld.so.conf文件加入如下内容:

/usr/local/lib

保存退出后执行ldconfig命令,大功告成,你缺少的库,可能都在下面了,FFmpeg软件只是个解码编码软件,如果支持多种格式必须先安装好对应的库,下面就说下我装的库:

1.安装faad2

  1. # wget http://downloads.sourceforge.net/faac/faad2-2.6.1.tar.gz 
  2. # tar xvfz faad2-2.6.1.tar.gz 
  3. # cd faad2 
  4. # ./bootstrap 
  5. # ./configure 
  6. # make 
  7. # make install 

2.安装liba52

  1. # wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz 
  2. # tar xvfz a52dec-0.7.4.tar.gz 
  3. # cd a52dec-0.7.4 
  4. # ./configure 
  5. # make 
  6. # make install 

3.安装libdirac

  1. # wget http://downloads.sourceforge.net/dirac/dirac-0.10.0.tar.gz 
  2. # tar xvfz dirac-0.10.0.tar.gz 
  3. # cd dirac-0.10.0 
  4. # ./configure 
  5. # make 
  6. # make install 

4.安装faac2

  1. # wget http://downloads.sourceforge.net/faac/faac-1.26.tar.gz 
  2. # tar xvfz faac-1.26.tar.gz 
  3. # cd faac 
  4. # ./bootstrap 
  5. # ./configure 
  6. # make 
  7. # make install 

5.安装libamrnb

  1. # wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2 
  2. # tar xvfj amrnb-7.0.0.2.tar.bz2 
  3. # cd amrnb-7.0.0.2 
  4. # ./configure 
  5. # make 
  6. # make install 

6.安装libamrwb

  1. # wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2 
  2. # tar xvfj amrwb-7.0.0.3.tar.bz2 
  3. # cd amrwb-7.0.0.3 
  4. # ./configure 
  5. # make 
  6. # make install 

7.安装libmp3lame

  1. # wget http://downloads.sourceforge.net/lame/lame-3.97.tar.gz 
  2. # tar xzf lame-3.97.tar.gz 
  3. # cd lame-3.97 
  4. # ./configure 
  5. # make 
  6. # make install 

8.安装libx264

此软件包需要用git来获取,所以要先安装git:

  1. # wget http://kernel.org/pub/software/scm/git/git-1.6.2.tar.gz (地址要确认) 
  2. # tar zxvf git-1.6.2.tar.gz 
  3. # cd git-1.6.2 
  4. # ./configure 
  5. # make 
  6. # make install 

然后安装libx264.

  1. # /usr/local/bin/git clone git://git.videolan.org/x264.git x264 
  2. # cd x264 
  3. # ./configure –enable-pthread –enable-shared –disable-asm 
  4. # make 
  5. # make install 

8.安装libnut,该软件需要用svn获取源代码,svn可以直接用yum install svn来装,先下载:

# svn co svn://svn.mplayerhq.hu/nut/src/trunk libnut

下载后代码保存在新建立的libnut目录下,对于64位Linux需要修改配置文件:

  1. # cd libnut 
  2. # vi config.mak 

在最后一个CFLAGS下一行增加:CFLAGS += -fPIC 然后编译安装:

  1. # make 
  2. # make install 

9.安装libogg

  1. # wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz 
  2. # tar xvf libogg-1.1.3.tar.gz 
  3. # cd libogg-1.1.3 
  4. # ./configure 
  5. # make 
  6. # make install 

10.安装libtheora(svn获取)

  1. # svn co http://svn.xiph.org/trunk/theora theora 
  2. # cd theora 
  3. # ./autogen.sh 
  4. # ./configure 
  5. # make 
  6. # make install 

11.安装libvorbis

  1. # wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.0.tar.gz 
  2. # tar xvfz libvorbis-1.2.0.tar.gz 
  3. # cd libvorbis-1.2.0 
  4. # ./configure 
  5. # make 
  6. # make install 

12.安装libxvid

  1. # wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz 
  2. # tar xvf xvidcore-1.2.1.tar.gz 
  3. # cd xvidcore-1.2.1/build/generic 
  4. # ./bootstrap.sh  --Vevb.com 
  5. # ./configure –disable-assembly 
  6. # make 
  7. # make install 

上面的媒体支持库安装完后,可以设置下环境准备编译FFmpeg了.

13.修改环境变量

# vi /etc/ld.so.conf

在文件末增加一行:/usr/local/lib

然后生效之:# ldconfig

14.安装FFmpeg

可以通过svn获取,不过文件比较大,所以特别慢:

  1. # svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg 
  2. # cd ffmpeg 
  3. //也可以自己下载: 
  4. # http://www.ffmpeg.org/releases/ffmpeg-0.5.tar.bz2 
  5. # bzip2 -d ffmpeg-0.5.tar.bz2 
  6. # tar -xf ffmpeg-0.5.tar 
  7. # cd ffmpeg-0.5 

编译(64位系统需要设置PKG_CONFIG_PATH参数):

  1. # export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig CFLAGS=”-fPIC -m64″ 
  2. # ./configure –enable-shared / 
  3. –enable-gpl / 
  4. –enable-nonfree / 
  5. –enable-postproc / 
  6. –enable-avfilter / 
  7. –enable-avfilter-lavf / 
  8. –enable-pthreads / 
  9. –enable-libamr-nb / 
  10. –enable-libamr-wb / 
  11. –enable-libdirac / 
  12. –enable-libfaac / 
  13. –enable-libfaad / 
  14. –enable-libfaadbin / 
  15. –enable-libmp3lame / 
  16. –enable-libnut / 
  17. –enable-libtheora / 
  18. –enable-libvorbis / 
  19. –enable-libx264 / 
  20. –enable-libxvid / 
  21. –enable-decoder=libx264 / 
  22. –enable-encoder=libx264 
  23. # make 
  24. # make install 

14.可能出现的错误:

  1. /usr/include/linux/videodev.h:56: error: syntax error before “ulong” 
  2. /usr/include/linux/videodev.h:72: error: syntax error before ‘}’ token 
  3. libavdevice/v4l.c: In function `grab_read_header’: 
  4. libavdevice/v4l.c:75: error: storage size of ‘tuner’ isn’t known 
  5. libavdevice/v4l.c:133: error: invalid application of `sizeof’ to incomplete type `video_tuner’ 
  6. libavdevice/v4l.c:140: error: invalid application of `sizeof’ to incomplete type `video_tuner’ 
  7. libavdevice/v4l.c:75: warning: unused variable `tuner’ 

这可能是源代码videodev.h不是针对次版本Linux写的,标准C没有ulong类型,所以要改成unsigned long.

15.运行ffmpeg -formats,可能出的错误:

  1. ffmpeg: error while loading shared libraries:libavfilter.so.0: cannot open shared object file: No such file or directory 

这事没有设置环境路径造成了,增加一个ffmpeg.conf配置文件:

  1. # cd /etc/ld.so.conf.d 
  2. # vi ffmpeg.conf 
  3. //在文件内写上: 
  4. /usr/local/lib 
  5. //然后确认生效: 
  6. # ldconfig

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表