参考http://trac.ffmpeg.org/wiki/CompilationGuide/Centos#FFmpeg

先查看了官方文档,消化以后,开始自己编译ffmage2.7.1,所需要安装包,先下载好了。(也可以安装冠官方的git下载最新库)

我下载好的库,可从下面链接得到

链接:http://pan.baidu.com/s/1pJ1L6L9 密码:h6gr

首先需要

mkdir ~/ffmpeg_sources

把所有的安装包库文件都放在ffmpeg_sources下。

解压命令基本用的 tar xzvf ,有些步骤没有写,请自行解压。

1 )Yasm 

1. cd yasm-1.3.0

2. ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"

3. make

4. make install

5. make distclean

2)libx264

1. cd x264

2. ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static

3. make

4. make install

5. make distclean

make 出错

common/opencl.c: 在函数‘x264_opencl_cache_load’中:

common/opencl.c:***: 错误:‘x264_opencl_source_hash’未声明(在此函数内第一次使用)

解决方法:

加入红色部分

./configure --enable-static --disable-opencl

3)libfdk_aac  fdk-aac-0.1.4.tar.gz

1. cd fdk-aac-0.1.4

2. autoreconf -fiv

3. ./configure --prefix="$HOME/ffmpeg_build" --disable-shared

4. make

5. make install

6. make distclean

4)libmp3lame   lame-3.99.5.tar.gz

1. tar xzvf lame-3.99.5.tar.gz

2. cd lame-3.99.5

3. ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm

4. make

5. make install

6. make distclean

5)libopus

1. tar xzvf opus-1.0.3.tar.gz

2. cd opus-1.0.3

3. autoreconf -fiv

4. ./configure --prefix="$HOME/ffmpeg_build" --disable-shared

5. make

6. make install

7. make distclean

6)libogg

1. tar xzvf libogg-1.3.2.tar.gz

2.  cd libogg-1.3.2

3. ./configure --prefix="$HOME/ffmpeg_build" --disable-shared

4. make

5. make install

6. make distclean

    

7)libvorbis

1. cd libvorbis-1.3.4

2. LDFLAGS="-L$HOME/ffmpeg_build/lib" CPPFLAGS="-I$HOME/ffmpeg_build/include" ./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared

3. make

4. make install

5. make distclean

8)ibvpx

1. tar jxvf libvpx-v1.3.0.tar.bz2

2. cd libvpx-v1.3.0

3. ./configure --prefix="$HOME/ffmpeg_build" --disable-examples

4. make

5. make install

6. make clean

安装FFmpeg

1. cd ffmpeg-v2.7.1

2. PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265

3. make

4. make install

5. make distclean

6. hash -r

安装成功~~

可使用ffmpeg -version 查看是否成功

Centos7环境下 安装ffmage2.7.1过程的更多相关文章

  1. Linux centos7环境下安装JDK的步骤详解

    Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令:   java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...

  2. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  3. Linux centos7环境下安装Nginx

    Linux centos7环境下安装Nginx的步骤详解 1.    首先到Nginx官网下载Nginx安装包 http://nginx.org/download/nginx-1.5.9.tar.gz ...

  4. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...

  5. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  6. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  7. Centos7环境下安装python3.6.4 并与python2共存

    最近安装了新系统centos7,本身自带python2.7,但是由于需要使用python3 来运行一些应用,所以想到在centos环境下安装python3,并保证其和python2 可以共存. 步骤如 ...

  8. CentOS7环境下安装docker

    操作系统 : CentOS7.5.1804_x64 docker版本: docker-ce-18.06.3 准备环境 1.如之前安装过移除老旧版本 yum remove docker docker-c ...

  9. linux系统,在centos7环境下安装jdk步骤

    记录一下安装jdk1.8版本的出错过程: 按照这个博客内容安装的,以及修改文件权限博客 [Linux]CentOS7下安装JDK详细过程 [Linux]目录文件权限的查看和修改[转] 1.安装的jdk ...

随机推荐

  1. Linux程序设计:目录维护

    一.相关系统调用 1.1 chmod 改变访问权限. #include <sys/stat.h> int chmod(const char *path, mode_t mode) 1.2 ...

  2. Android : 按 Back 按钮不返回处于后台的 Activity

    在一个项目中,我有一种情况下启动一个新 Activity 后,按 Back 按钮时不想返回到后台的 Activity. 具体方法是, 在启动新的 Activity 的时候: Intent intent ...

  3. Gogland使用 - 非常简单查看Go语言源代码全貌!

    Go语言也支持面向对象开发,不过和以往我们所使用的面向对象开发还是有不同,Go语言主张组合方式形成类的概念,在Go语言中,结构起到很大作用,如果用结构组合字段和方法,那么单纯在源代码中看,真的是费时费 ...

  4. case when then end 用法

    select type,numbers,case monthst when 1 then '一月'when 2 then '二月'when 3 then '三月'else '其他月'end month ...

  5. mongodb 日志清理

    #!/bin/bash #Rotate the MongoDB logs to prevent a single logfile from consuming too much disk space. ...

  6. Sublime关于tab转空格的设置技巧

    在编写大的工程的代码的时候,会要求一些多余的字符不应该存在,比如说末尾不应该有空格或者Tab这样的字符,比如说所有的Tab应该变成空格,这样工程不管在什么样的编辑器下看,格式都会比较统一,等等,可是如 ...

  7. Dubbo 自定义异常,你是怎么处理的?

    前言 记录Dubbo对于自定义异常的处理方式. 实现目标 服务层异常,直接向上层抛出,web层统一捕获处理 如果是系统自定义异常,则返回{"code":xxx,"msg& ...

  8. day 02 ---class - homework

    # -*- coding: utf-8 -*-# @Time : 2018/12/20 14:34# @Author : Endless-cloud# @Site : # @File : day 02 ...

  9. python基础知识梳理-----4基本数据类型,list ,tuple 操作 ,增删该查,以及其他功能函数

    一:列表的增加 1: append() lis = ['张三','李四','王二码子','李鹏智障'] lis.append('赵武')      # 这种加法是放在最后 print(lis) 输出  ...

  10. 小M的作物 最小割最大流

    题目描述 小M在MC里开辟了两块巨大的耕地A和B(你可以认为容量是无穷),现在,小P有n中作物的种子,每种作物的种子有1个(就是可以种一棵作物)(用1...n编号). 现在,第i种作物种植在A中种植可 ...