首先要安装各种解码器

1、lame

lame-3.99.5.tar.gz

Url:http://sourceforge.net/project/showfiles.php?group_id=290&package_id=309

wget http://sourceforge.net/projects/lame/files/latest/download?source=files

tar -zxvf lame-3.99.5.tar.gz

cd lame-3.99.5

./configure --enable-shared

make

make install

cd ../

2、libogg

libogg-1.3.1.tar.gz

Url:http://www.xiph.org/downloads/

wget http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz

tar -zxvf libogg-1.3.2.tar.gz

cd libogg-1.3.2

./configure

make

make install

cd ../

3、libvorbis

libvorbis-1.3.4.tar.gz

Url:http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz

(libvorbis依赖于libogg, 所以libogg必须先于libvorbis安装)

wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz

tar -zxvf libvorbis-1.3.4.tar.gz

cd libvorbis-1.3.4

./configure

make

make install

cd ../

4、xvid

xvidcore-1.3.2.tar.gz

Url:http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz

wget http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz

tar -zxvf xvidcore-1.3.2.tar.gz

cd xvidcore

cd build/generic/

./configure

make

make install

cd ../../../

5、x264

latest_x264.tar.bz2 (其中包含的目录是 x264-snapshot-20141218-2245)

Url:http://www.videolan.org/developers/x264.html

wget ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2

tar -jxvf last_x264.tar.bz2

cd x264-snapshot-20141218-2245/

./configure

出现如下的报错,

Found no assembler

Minimum version is yasm-1.2.0

If you really want to compile without asm, configure with --disable-asm.

这个时候需要先安装yasm

cd ../

wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz

tar -zxvf yasm-1.2.0.tar.gz

cd yasm-1.2.0

./configure

make

make install

cd ../

cd x264-snapshot-20141218-2245/

./configure

make

make install

cd ../

6、libdts

libdca-0.0.5.tar.bz2

Url: http://www.videolan.org/developers/libdca.html

wget http://download.videolan.org/pub/videolan/libdca/0.0.5/libdca-0.0.5.tar.bz2

tar -jxvf libdca-0.0.5.tar.bz2

cd libdca-0.0.5

./configure

make

make install

cd ../

7、a52

a52dec-0.7.4.tar.gz (这个库从2002年就没有更新过了)

http://liba52.sourceforge.net/downloads.html

wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz (这个需要翻墙才能下载)

现在的做法是,通过chrome浏览器下载后,再rz到服务上:

浏览器下载的地址为:http://liba52.sourceforge.net/downloads.html

tar -zxvf a52dec-0.7.4.tar.gz

cd a52dec-0.7.4

./configure

make

make install

cd ../

8、faad2

faad2-2.7.tar.gz (要选择这个扩展名的文件)

http://www.audiocoding.com/downloads.html

wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz

tar -zxvf faad2-2.7.tar.gz

cd faad2-2.7

autoreconf -vif

出现这样的错误

[root@Csss faad2-2.7]# autoreconf -vif

autoreconf: Entering directory `.'

autoreconf: configure.in: not using Gettext

autoreconf: running: aclocal --force

autoreconf: configure.in: tracing

autoreconf: configure.in: not using Libtool

autoreconf: running: /usr/bin/autoconf --force

configure.in:14: error: possibly undefined macro: AC_PROG_LIBTOOL

If this token and others are legitimate, please use m4_pattern_allow.

See the Autoconf documentation.

autoreconf: /usr/bin/autoconf failed with exit status: 1

出现这样的错误,解决办法:

yum install libtool

继续安装:

autoreconf -vif

./configure --with-mp4v2 --enable-shared

出现了如下的错误:

configure: WARNING: unrecognized options: --with-mp4v2

解决办法,通过./configure --help 查看并没有--with-mp4v2 这个编译参数,找到一个类似的--with-mpeg4ip;

./configure --with-mpeg4ip --enable-shared (编译成功)

make

make install

cd ../

9、faac

faac-1.28.tar.gz (要选择这个扩展名的文件)

http://www.audiocoding.com/downloads.html

wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz

tar zxvf faac-1.28.tar.gz

cd faac-1.28

./bootstrap

./configure

make

make install

安装出现如下的错误:

make[2]: Leaving directory /software/faac-1.28/libfaac' Making all in common make[2]: Entering directory /software/faac-1.28/common'

Making all in mp4v2

make[3]: Entering directory /software/faac-1.28/common/mp4v2' g++ -DHAVE_CONFIG_H -I. -I../.. -I../../include -Wall -g -O2 -MT 3gp.o -MD -MP -MF .deps/3gp.Tpo -c -o 3gp.o 3gp.cpp In file included from mp4common.h:29, from 3gp.cpp:28: mpeg4ip.h:126: error: new declaration ‘char* strcasestr(const char*, const char*)’ /usr/include/string.h:369: error: ambiguates old declaration ‘const char* strcasestr(const char*, const char*)’ make[3]: *** [3gp.o] Error 1 make[3]: Leaving directory /software/faac-1.28/common/mp4v2'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory /software/faac-1.28/common' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory /software/faac-1.28'

make: *** [all] Error 2

根据提示信息,解决办法是:

vim /software/faac-1.28/common/mp4v2/mpeg4ip.h 126删除掉

然后再执行如下的命令:

make clean

make

make install

cd ../

10、amr-nb

amrnb-10.0.0.0.tar.bz2

http://ftp.penguin.cz/pub/users/utx/amr/ ( 该链接已经forbidden 了 )

重新找了一个连接,需要翻墙才可以下载;

https://code.google.com/p/ostube/downloads/detail?name=amrnb-10.0.0.0.tar.bz2&can=2&q=amrnb

我是通过浏览器下载,然后再传到服务器上;

tar -jxvf amrnb-10.0.0.0.tar.bz2

cd amrnb-10.0.0.0

./configure

make

出现报错,连接服务器进行下载26104-a00.zip;显示连接不上服务器,还是需要用浏览器下载,然后传到服务器上;

26104-a00.zip

下载地址为 https://code.google.com/p/ostube/downloads/detail?name=26104-a00.zip&can=2&q=26104-a00.zip

下载完成之后,将此压缩包放到跟make同一级的目录中

继续安装:

make

make install

cd ../

11、amr-wb

https://code.google.com/p/ostube/downloads/detail?name=amrwb-10.0.0.0.tar.bz2&can=2&q=amrwb (该地址可以下载)

tar -jxvf amrwb-10.0.0.0.tar.bz2

cd amrwb-10.0.0.0

./configure

make

make出现如下的报错:

make ./26204-a00_ANSI-C_source_code.zip

make[1]: Entering directory `/software/amrwb-10.0.0.0'

cd . && /usr/bin/wget -N http://ostube.googlecode.com/files/26204-a00.zip

--2015-02-08 20:44:09-- http://ostube.googlecode.com/files/26204-a00.zip

Resolving ostube.googlecode.com... 74.125.203.82, 2404:6800:4008:c07::52

Connecting to ostube.googlecode.com|74.125.203.82|:80... ^Cmake[1]: *** [26204-a00.zip] Interrupt

make: *** [readme.txt] Interrupt

根据报错信息,解决办法:

https://code.google.com/p/ostube/downloads/detail?name=26204-a00.zip&can=2&q=26204-a00.zip 通过这个地址下载26204-a00.zip压缩包传到跟make同一级目录;

继续安装

make

make install

cd ../

12、最后一步,安装ffmpeg

wget http://www.ffmpeg.org/releases/ffmpeg-2.5.3.tar.gz

./configure --enable-shared --prefix=/usr/local/ffmpeg2 --enable-libmp3lame --enable-libvorbis --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfaac --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libxvid --enable-postproc --enable-ffserver --enable-ffplay

编译这条语句出错,去掉三个参数,可以成功编译;

./configure --enable-shared --prefix=/usr/local/ffmpeg2 --enable-libmp3lame --enable-libvorbis --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-ffserver --enable-ffplay

才可以编译通过

make

make install

测试报错:

[root@C21318 ffmpeg-2.5.3]# /usr/local/ffmpeg2/bin/ffmpeg --help

/usr/local/ffmpeg2/bin/ffmpeg: error while loading shared libraries: libavdevice.so.56: cannot open shared object file: No such file or directory

好的参考文章

http://www.fanjun.me/?tag=centos

ffmpeg安装步骤的更多相关文章

  1. linux下ffmpeg安装

    1.ffmpeg下载地址: http://www.ffmpeg.org/download.html 2.解压 1 $ tar zvfj ffmpeg.tar.bz2 这里作者假设已经重命名为ffmpe ...

  2. linux下ffmpeg安装(转)

    1.ffmpeg下载地址: http://www.ffmpeg.org/download.html 2.解压   1 $ tar xzvf ffmpeg.tar.bz2 这里作者假设已经重命名为ffm ...

  3. ffmpeg 安装,转视频格式为m3u8,压缩视频

    # ffmpegffmpeg 安装,转视频格式为m3u8,压缩视频 ## ffmpeg 安装直接安装: apt-get install ffmpeg 运行 `ffmpeg` 看是否出现版本号以判断是否 ...

  4. 如何搭建SVN服务器,详细安装步骤。

    SVN服务器端安装 下载: VisualSVN是一款图形化svn服务器.官网 http://www.visualsvn.com/server/ 下载地址: http://www.visualsvn.c ...

  5. arcgis10.2.2桌面版具体的安装步骤过程

    先声明一下,这里的截图虽说是ArcGIS10.1版本的,但是安装步骤是对的,本人用ArcGIS10.2.2软件测试成功安装上 一.ArcGIS许可证管理器安装 1.在软件包文件夹license man ...

  6. LoadRunner 11 安装步骤

    loadrunner 安装步骤: LoadRunner11下载:  在网上可以搜索到,在这个就不提供了. LoadRunner11原理: 破解方法和以前版本相同,我用的是LR8.0的破解文件,同样实用 ...

  7. MySQL安装步骤

    MySQL安装步骤 1. 下载MySQL Community Server 5.6.21,注意选择系统类型(32位/64位) 2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下. ...

  8. Java开发工具安装步骤内容如下

    Java开发工具安装步骤内容如下 安装 开发工具 STS 链接下载网址 eclipse 链接下载网址 JDK安装 jdk链接下载地址 Marven环境 marven链接下载地址 Tomcat tomc ...

  9. PhantomJS linux系统下安装步骤及使用方法(网页截屏功能)

    PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API.它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, ...

随机推荐

  1. Idea中的Maven

    IDEA作为java开发必不可少的一个工具,对于老Eclipse开发人员刚接触的时候可能会有些陌生,同时,maven也是java开发经常使用的工具,有些人可能会不清楚怎么在idea里面使用maven, ...

  2. Java笔记(十七) 异步任务执行服务

    异步任务执行服务 一.基本原理和概念 一)基本接口 1)Runnable和Callable:表示要执行的异步任务. 2)Executor和ExecutorService:表示执行服务. 3)Futur ...

  3. Linux下载软件

    .yum yum install tree yum install telnet 直接安装与更新 .查询软件是否装上 rpm -qa tree telnet .查询软件包的内容 rpm -ql tre ...

  4. node cluster模块,仿多线程并发调用,

    worker.js var cluster = require('cluster')function fibo(n) { return n == 0 ? 0 : n > 1 ? fibo(n - ...

  5. HTTP 500 Invalid bound statement错误

    整合SSM框架的时候出现的错误,根据提示信息,找不到 dao.IUserDao.insertUser 方法,可能是mybatis的配置文件出现了问题. 在网上查了一些解决办法,说的最多的是mapper ...

  6. [模板][P4719]动态dp

    Description: 给定一棵n个点的树,点带点权. 有m次操作,每次操作给定x,y,表示修改点x的权值为y. 你需要在每次操作之后求出这棵树的最大权独立集的权值大小. Hint: \(n,m&l ...

  7. 全局解释器锁 GIL

    1.什么是GIL? GIL本质上是互斥锁,可以将并发运行变为串行,以此来控制同一时间内共享数据只能被一个任务修改,保证时间安全 2.GIL应用场景 使用原因:Cpython解释器自带垃圾回收机制不是线 ...

  8. [POJ3614]Sunscreen (贪心)

    题意 (依然来自洛谷) 有C个奶牛去晒太阳 (1 <=C <= 2500),每个奶牛各自能够忍受的阳光强度有一个最小值和一个最大值,太大就晒伤了,太小奶牛没感觉. 而刚开始的阳光的强度非常 ...

  9. HTML(一)

    html基本结构 一个html的基本结构如下: <!DOCTYPE html> <html lang="en"> <head> <meta ...

  10. pointer-net

    Pointer network 主要用在解决组合优化类问题(TSP, Convex Hull等等),实际上是Sequence to Sequence learning中encoder RNN和deco ...