centos6.8 安装 ffmpeg

ffmpeg简介

     FFmpeg是进行视频转换和视频抽帧的重要开源工具,支持linux和windows环境下的视频转换和视频抽帧操作。本文记录在linux安装ffmpeg的过程。ffmpeg集成视频编码/解码,视频抽帧、视频流采集、视频录制综合的开源视频解决方案。ffmpeg基于linux开发,但是可以很好的在主流的操作系统上运行。

    FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等90多种解码.TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg

准备工作

1、下载FFmpeg及其组件

    FFmpeg-n3.4.2.tar.gz
    26104-b00.zip
    26204-b00.zip
    a52dec-0.7.4.tar
    amrnb-11.0.0.0.tar.bz2
    amrwb-11.0.0.0.tar.bz2
    faac-1.28.tar.bz2  全称是Free Advanced Audio Coder,是MPEG-4和MPEG-2 AAC的一款常用的开源编解码器
    faad2-2.7.tar.bz2
    fdk-aac-0.1.6.tar.gz
    lame-3.100.tar 一款常见的mp3的开源编解码器;
    last_x264.tar.bz2 目前最流行,最常见的H.264视频格式的一个开源的编解码器;
    libdca-0.0.5.tar.bz2
    libogg-1.3.3.tar
    libvorbis-1.3.5.tar  这个库主要用于处理ogg格式的音频文件,而ogg全称是ogg vorbis,一种类似mp3的音频压缩格式。不同于mp3的是ogg完全免费、开放和没有专利限制的。ogg文件格式可以不断地进行大小和音质的改良,而不影响旧有的编码器或播放器,主要由Xiph.org基金会开发
    nasm-2.13.02.tar.gz
    -- opencore-amr-0.1.2.tar.gz-- 
    xvidcore-1.3.5.tar.gz 是一个开放源代码的MPEG-4视频编解码器
    yasm-1.3.0.tar

2、安装工具支持

[root@location ~]yum install -y unzip
[root@location ~]yum install gcc gcc-c++
[root@location ~]yum install autoreconf automake libtool -y
[root@location ~]yum install libtool libsysfs -y

开始安装

1、安装组件

遵循以下安装顺序

创建组件存放路径
mkdir -p /home/server/ffmpegTools

 1> 安装 lame 
    [root@location ffmpegTools] wget http://sourceforge.net/project/showfiles.php?group_id=290&package_id=309
    [root@location ffmpegTools]tar xvf lame-3.99.5.tar.gz 
    [root@location ffmpegTools]cd lame-3.99.5
    [root@location ffmpegTools]./configure --enable-shared
    [root@location ffmpegTools]make && make install
 2> 安装 nasm 
    [root@location ffmpegTools] wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.02/nasm-2.13.02.tar.gz
    [root@location ffmpegTools]tar xvf nasm-2.13.02.tar.gz 
    [root@location ffmpegTools]cd nasm-2.13.02
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 3> 安装 libogg 
    [root@location ffmpegTools]wget http://downloads.xiph.org/releases/ogg/libogg-1.3.1.tar.gz
    [root@location ffmpegTools]tar xvf libogg-1.3.1.tar.gz 
    [root@location ffmpegTools]cd libogg-1.3.1
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 4> 安装 libvorbis
    [root@location ffmpegTools]wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
    [root@location ffmpegTools]tar xvf libvorbis-1.1.2.tar.gz 
    [root@location ffmpegTools]cd libvorbis-1.1.2
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 5> 安装 xvidcore
    [root@location ffmpegTools]wget http://downloads.xvid.org/downloads/xvidcore-1.3.5.tar.gz
    [root@location ffmpegTools]tar xvf xvidcore-1.3.5.tar.gz 
    [root@location ffmpegTools]cd xvidcore/build/generic
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 6> 安装 yasm  暂时没用到
    [root@location ffmpegTools]wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
    [root@location ffmpegTools]tar xvf yasm-1.3.0.tar.gz 
    [root@location ffmpegTools]cd yasm-1.3.0
    [root@location ffmpegTools]./configure --enable-shared
    [root@location ffmpegTools]make && make install
 7> 安装 x264 
    [root@location ffmpegTools]wget http://download.videolan.org/pub/videolan/x264/snapshots/last_x264.tar.bz2
    [root@location ffmpegTools]tar xvf last_x264.tar.gz2 
    [root@location ffmpegTools]cd x264
    [root@location ffmpegTools]./configure --enable-shared
    [root@location ffmpegTools]make && make install
 8> 安装 libdca  
    [root@location ffmpegTools]wget http://download.videolan.org/pub/videolan/libdca/0.0.5/libdca-0.0.5.tar.bz2
    [root@location ffmpegTools]tar xvf libdca-0.0.5.tar.gz2
    [root@location ffmpegTools]cd libdca-0.0.5
    [root@location ffmpegTools]./configure --enable-shared
    [root@location ffmpegTools]make && make install
 9> 安装 a52dec  
    [root@location ffmpegTools]wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
    [root@location ffmpegTools]tar xvf a52dec-0.7.4.tar.gz
    [root@location ffmpegTools]cd a52dec-0.7.4
    [root@location ffmpegTools]./configure --enable-shared
    [root@location ffmpegTools]make && make install  
 10> 安装 faad2  
    [root@location ffmpegTools]wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz
    [root@location ffmpegTools]tar xvf faad2-2.7.tar.gz
    [root@location ffmpegTools]cd faad2-2.7
    [root@location ffmpegTools]autoreconf -vif
    [root@location ffmpegTools]./configure  --with-mp4v2 --enable-shared 
    [root@location ffmpegTools]make && make install
 11> 安装 faac  
    [root@location ffmpegTools]wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
    [root@location ffmpegTools]tar xvf faac-1.28.tar.gz
    [root@location ffmpegTools]cd faac-1.28
    [root@location ffmpegTools]./bootstrap
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 11> 安装 amr-nb
    [root@location ffmpegTools]wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-10.0.0.0.tar.bz2
    [root@location ffmpegTools]tar xvf amrnb-10.0.0.0.tar.bz2
    [root@location ffmpegTools]cd amrnb
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 12> 安装 amr-wb
    [root@location ffmpegTools]wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-10.0.0.0.tar.bz2
    [root@location ffmpegTools]tar xvf amrwb-10.0.0.0.tar.bz2
    [root@location ffmpegTools]cd amrwb
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 13> 安装 fdk-aac
    [root@location ffmpegTools]wget https://jaist.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.6.tar.gz
    [root@location ffmpegTools]tar xvf fdk-aac-0.1.6.tar.bz2
    [root@location ffmpegTools]cd fdk-aac
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install
 14> 安装 opencore-amr
    [root@location ffmpegTools]wget https://jaist.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz
    [root@location ffmpegTools]tar xvf opencore-amr-0.1.3.tar.gz
    [root@location ffmpegTools]cd opencore-amr-0.1.3
    [root@location ffmpegTools]./configure
    [root@location ffmpegTools]make && make install

3、安装 FFmpeg

[root@location ffmpegTools]./configure --prefix=/home/server/ffmpeg --enable-libmp3lame --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfdk-aac --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libx264 --enable-libxvid --enable-postproc --enable-ffserver --enable-ffplay

问题汇总

1、安装 libvorbis 时如果出现 ogg未安装 解决方案:
[root@location ffmpegTools]vi /etc/ld.so.conf.d/local-libraries.conf
/usr/local/lib
[root@location ffmpegTools]ldconfig
然后继续安装即可
2、安装 faad2-2.7 出现 autoreconf: command not found
[root@location ffmpegTools]yum install autoreconf automake libtool -y
[root@location ffmpegTools]yum install libtool libsysfs -y

3、faac-1.28 安装时会出现错误 error: new declaration ‘char* strcasestr(const char*, const char*)’
解决方法:
从123行开始修改此文件faac-1.28/common/mp4v2/mpeg4ip.h,到129行结束。
修改前:
#ifdef __cplusplus
extern “C” {
#endif
char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif
修改后:
#ifdef __cplusplus
extern “C++” {
#endif
const char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif

4、安装amr-nb时候会联网下载26104-b00.zip插件包,若下载不成功可点击下面链接下载,直接 copy 到 amrnb-10.0.0.0目录即可
5、安装amr-wb时候会联网下载26204-b00.zip插件包,若下载不成功可点击下面链接下载,直接 copy 到 amrwb-10.0.0.0目录即可

6、 ERROR: libopencore_amrnb not found
解决方法
安装opencore-amr-0.1.2.tar.gz

7、/usr/bin/ld: imdct.lo: relocation R_X86_64_32 against `.bss' can not be used when making a shared object; recompile with -fPIC
imdct.lo: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [liba52.la] Error 1
make[1]: Leaving directory `/alidata/tools/a52dec-0.7.4/liba52'
make: *** [all-recursive] Error 1


使用下面的命令把四个lo文件的-fPIC参数加上重新make,具体命令如下
cd liba52
gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -g -O3 -fomit-frame-pointer -fPIC -c bit_allocate.c -o bit_allocate.lo
gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -g -O3 -fomit-frame-pointer -fPIC -c parse.c -o parse.lo
gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -g -O3 -fomit-frame-pointer -fPIC -c downmix.c -o downmix.lo
gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -g -O3 -fomit-frame-pointer -fPIC -c imdct.c -o imdct.lo
然后返回上级目录make成功。
make install

8、如果出现一下错误 执行软连 到 /usr/lib64 下面即可

./ffmpeg: error while loading shared libraries: libx264.so.155: cannot open shared object file: No such file or directory




  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值