资源准备:

ffmpeg-3.4.tar.bz2

yasm-1.3.0.tar.gz

编译安装:

本人二进制包存放在 /opt/moudles中, 解压缩在 /opt/softwares

解包 ffmpeg-3.4.tar.bz2

[root@localhost moudles]# tar -jxvf ffmpeg-3.4.tar.bz2 -C ../softwares/

在 /opt/softwares 中生成 文件夹。

解包 yasm-1.3.0.tar.gz

[root@localhost moudles]# tar -zxvf yasm-1.3.0.tar.gz -C ../softwares/

 /opt/softwares 中生成文件夹。

编译 yasm:

[root@localhost moudles]# cd /opt/softwares/yasm-1.3.0/

[root@localhost yasm-1.3.0]# ./configure

[root@localhost yasm-1.3.0]# make && make install

编译 ffmpeg-3.4:

[root@localhost yasm-1.3.0]# cd /opt/softwares/ffmpeg-3.4/

[root@localhost ffmpeg-3.4]# ./configure --enable-shared --prefix=/usr/local/ffmpeg

[root@localhost ffmpeg-3.4]# make && make install

时间比较长, 耐心等待……

检测ffmpeg是否安装成功:

[root@localhost ffmpeg-3.4]# /usr/local/ffmpeg/bin/ffmpeg --version

注意:会报错,提示库找不到。

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

解决:修改文件/etc/ld.so.conf 内容增加/usr/local/ffmpeg/lib/

[root@localhost ffmpeg-3.4]# vim /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/ffmpeg/lib/

使修改生效:

[root@localhost ffmpeg-3.4]# ldconfig 

 配置环境变量:

[root@localhost ffmpeg-3.4]# vim /etc/profile

 特别注意:若是不安装yasm, 直接编译ffmpeg会抛出异常。

yasm/nasm not found or too old. Use --disable-yasm for a crippled build.

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.

编译FFMPEG时,出现了 ffmpeg yasm not found, use --disable-yasm for a crippled build,是因为 FFMPEG为了提高编译速度,使用了汇编指令,如果系统中没有yasm指令的话,就会出现上述的问题。

附注:查找适合自己系统的yasm

yasm-releases

Linux 安装编译 FFMPEG的更多相关文章

  1. linux下编译ffmpeg 引入外部库x264

    Found no assembler Minimum version is nasm-2.13 If you really want to compile without asm, configure ...

  2. Linux下编译ffmpeg并用GDB调试

    1.在Ubuntu界面上调处命令行界面,最方便的方式是使用快捷键Ctrl+Alt+T. 2.安装SDL SDL是一个开源的多媒体开发库,可以设置图像和视频的绘制等操作.如果不安装SDL,FFMPEG将 ...

  3. 【转】Linux下编译ffmpeg

    1.下载ffmpeg.下载网址:http://www.ffmpeg.org/download.html 2.解压缩tar -zxvf ffmpeg-2.0.1.tar.gz 3.配置,生成Makefi ...

  4. Java调用Lua脚本(LuaJava使用、安装及Linux安装编译)

    依赖包(附件有下载): 包名 类型 操作系统 luajava-1.1.jar jar ALL libluajava-1.1.so .so linux luajava-1.1.dll .dll wind ...

  5. linux安装x264 ffmpeg

    1. 安装yasm 2. 安装x264 3. 安装ffmpeg 安装网上很多例子,以下是我主要参考的两篇博客: http://www.cnblogs.com/lidabo/p/3987378.html ...

  6. Linux下FFmpeg的安装编译过程【转】

    本文转载自:http://www.linuxidc.com/Linux/2013-06/85628.htm 详细说下在Linux下FFmpeg的安装编译过程.参考 Ubuntu 10.04安装编译FF ...

  7. Ubuntu下安装和编译ffmpeg

    参考:http://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu   1.安装依赖包 sudo apt-get update sudo apt-get -y ...

  8. Windows下使用Visual Studio 2010编译ffmpeg全过程

    在visual studio 2010中调用ffmpeg http://blog.sina.com.cn/s/blog_4178f4bf01018wqh.html Windows下使用Visual S ...

  9. Windows下使用Visual Studio 2010 编译ffmpeg全过程

    (注意:请务必先阅读:七,后记补充:) ffmpeg是一个开源的多媒体库,使用非常广泛. 在linux下编译ffmpeg非常简单,而在windows下编译就不是那么容易了.一般在windows下使用M ...

随机推荐

  1. 线程基础四 使用Monitor类锁定资源

    前面我们讲过了lock的用法以及竞争条件导致的错误,实际上lock关键字是Monitor类用例的一个语法糖.如果我们分解使用了lock关键字的代码,将会看到它如下面代码片段所示: bool acqui ...

  2. python2.7练习小例子(十八)

    19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数.      #!/usr/bin/python # -*- ...

  3. WebSocket 的使用

    Java 控制台程序实现类似广播功能 服务器端代码 添加 maven 依赖 <dependency> <groupId>javax.websocket</groupId& ...

  4. javascript 自定义发布与订阅

    //声明一个类,与普通的类的声明不一样, function Girl() { //将类的事件声明成一个私有的属性,里面是一个对象 this._events = {} } /* { "失恋&q ...

  5. Spring MVC - URL路径映射

    1. 普通映射 A. @RequestMapping("/test1") B. @RequestMapping(value={"/test1", "/ ...

  6. jmeter使用BeanShell断言

    1. 首先存储一个接口的响应结果,如在http请求的BeanShell PostProcessor: import java.io.UnsupportedEncodingException; Syst ...

  7. Linux-Shell脚本编程-学习-2-Linux基本命令

    接上篇,接着学习Linux下的部分命令,后面的这些命令用到的频率可能没有那么多,不过也是经常需要的. 第一部分:程序监测部分,ps和top top命令可能比较眼熟,所以我们先说ps ps命令最烦人了, ...

  8. Python-类-函数参数-takes 0 positional arguments but 1 was given

    在学习Python基础的时候,在创建某一个shownametest()函数,解析器会报错 TypeError: shownametest() takes 0 positional arguments ...

  9. Dijkstra模板 dj斯特拉

    图论里非常常用的dijkstra,自己加了个路径查找,做个模板吧: ; struct Edge { int from,to,dist; Edge(int u, int v, int d):from(u ...

  10. 使用vue和web3创建你的第一个以太坊APP

    欢迎回到这个很牛的教程系列的第2部分,在教程中我们亲手构建我们的第一个分布式应用程序. 在第二部分中,我们将介绍VueJS和Vuex的核心概念,并引入web3js以与metamask进行交互. 如果你 ...