您的位置:首页 > 运维架构 > Linux

Linux下安装视频转换工具ffmpeg

2015-03-26 16:03 453 查看
Linux下安装视频转换工具ffmpeg

最近在做项目的时候,遇到一个问题就是要将用户上传的视频转成flv格式或mp4格式并用flash插件在前端播放, 我决定采用ffmpeg (http://www.ffmpeg.org/ )实现。之前已经做过在windows系统上使用ffmpeg,但是放到Linux中不能用。通过参考网上的一些资料以及结合项目的实际的情况,花了两天时间终于将他搞定。下面先说一下ffmpeg在Linux上的安装方法:

解码器集合(包含安装ffmpeg用到的所有解码器)下载地址:http://download.csdn.net/detail/lintianlin/8547057

一、首先是安装各种解码器

1. lame

lame-398-1.tar.gz

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

安装方法如下:

tar -zxvf /opt/spzh/lame-398-1.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/lame-398-1
./configure --enable-shared --prefix=/usr
make
make install
<span style="color:#3333FF;">
</span>
<span style="color:#3333FF;">注:tar -zxvf 解码器压缩包路径 -C 解压好的文件存放位置     
--prefix=安装位置</span>


2. libogg

libogg-1.3.2.tar.gz

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

安装方法如下:

tar -zxvf /opt/spzh/libogg-1.3.2.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/libogg-1.3.2
./configure --prefix=/usr
make
make install


3. libvorbis

libvorbis-1.3.5.tar.gz

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

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

安装方法如下:

tar -zxvf /opt/spzh/libvorbis-1.3.5.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/libvorbis-1.3.5
./configure --prefix=/usr
make
make install


4. xvid

xvidcore-1.1.3.tar.gz

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

安装方法如下:

tar -zvxf /opt/spzh/xvidcore-1.1.3.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/xvidcore-1.1.3/build/generic
./configure --prefix=/usr
make
make install


5. x264

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

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

ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
安装方法如下:

tar -jxvf /opt/spzh/last_x264.tar.bz2 -C /opt/spzh/wj
cd /opt/spzh/wj/x264-snapshot-20141218-2245
./configure --prefix=/usr --enable-shared
make
make install


6. libdts

libdca-0.0.5.tar.bz2

Url: http://www.videolan.org/developers/libdca.html
安装方法如下:

tar -jxvf /opt/spzh/libdca-0.0.5.tar.bz2 -C /opt/spzh/wj
cd /opt/spzh/wj/libdca-0.0.5
./configure --prefix=/usr
make
make install


7. a52

a52dec-0.7.4.tar.gz

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

安装方法如下:

tar -zvxf /opt/spzh/a52dec-0.7.4.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/a52dec-0.7.4
./configure --prefix=/usr
make
make install


8. faad2

faad2-2.7.tar.gz

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

安装方法如下:

tar -zvxf /opt/spzh/faad2-2.7.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/faad2-2.7
autoreconf -vif
./configure --prefix=/usr --with-mp4v2 --enable-shared
make
make install


9. faac

faac-1.28.tar.gz

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

安装方法如下:

tar -zvxf /opt/spzh/faac-1.28.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/faac-1.28
./bootstrap
./configure --prefix=/usr
make
make install


10. amr-nb

amrnb-10.0.0.0.tar.bz2

url:http://pan.baidu.com/s/1eQxUnYy

安装方法如下:

tar -jxvf /opt/spzh/amrnb-10.0.0.0.tar.bz2 -C /opt/spzh/wj
cd /opt/spzh/wj/amrnb-10.0.0.0
./configure --prefix=/usr
make
make install


11. amr-wb

amrwb-7.0.0.1.tar.bz2

url:http://pan.baidu.com/s/1eQxUnYy

安装方法如下:

tar -jxvf /opt/spzh/amrwb-7.0.0.1.tar.bz2 -C /opt/spzh/wj
cd /opt/spzh/wj/amrwb-7.0.0.1
./configure --prefix=/usr
make
make install


至此,解码器安装完毕,开始安装ffmpeg。

二、安装ffmpeg

ffmpeg-0.8.3

tar -jxvf /opt/spzh/ffmpeg-0.8.3.tar.bz2 -C /opt/spzh/wj
cd /opt/spzh/wj/ffmpeg-0.8.3
<code class="cpp plain">./configure --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-ffpla</code><pre name="code" class="java">make
make install



不出意外的话,ffmpeg到此已经安装完成了。

运行ffmpeg,

/usr/local/ffmpeg2/bin/./ffmpeg


出现如下代码说明安装成功:

ffmpeg version 0.8.3, Copyright (c) 2000-2011 the FFmpeg developers
built on Mar 25 2015 18:40:19 with gcc 4.4.5 20110214 (NeoKylin 4.4.5-6)
configuration: --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
libavutil    51.  9. 1 / 51.  9. 1
libavcodec   53.  7. 0 / 53.  7. 0
libavformat  53.  4. 0 / 53.  4. 0
libavdevice  53.  1. 1 / 53.  1. 1
libavfilter   2. 23. 0 /  2. 23. 0
libswscale    2.  0. 0 /  2.  0. 0
libpostproc  51.  2. 0 / 51.  2. 0


接下来说一下我在安装过程中出现的一些问题以及解决方法:

1.最后在安装ffmpeg时,可能会提示找不到yasm,所以需要安装一下yasm

yasm-1.3.0.tar.gz
安装方法如下:

<pre name="code" class="java">tar -zvxf /opt/spzh/yasm-1.3.0.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/yasm-1.3.0
./configure --prefix=/usr
make
make install



2.提示找不到libopencore-amrnb和libopencore-amrwb,需要安装opencore-amr-0.1.3.tar.gz

安装过程如下:

tar -zvxf /opt/spzh/opencore-amr-0.1.3.tar.gz -C /opt/spzh/wj
cd /opt/spzh/wj/opencore-amr-0.1.3
./configure --prefix=/usr
make
make install


3.我开始的时候将解码器都安装在/opt/spzh/jmq文件夹下面,安装的ffmpeg的时候安装失败,通过在网上找资料发现资料中解码器大都安装在/usr下面,所以我又在没有卸载原来的解码器的情况下,在/usr下面又安装了一遍,再安装ffmpeg时就报找不到各种解码器的错误,其实我这些解码器已经安装了,后来才发现第二次安装ffmpeg的时候,他找的是第一次解码器安装的路径,所以有的解码器会找不到。解决方法:我们只需将第一次装解码器的那些文件删除或者 clean一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: