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

  

上片篇博文介绍了linux下编译原生ffmpeg,本文介绍linux下编译ffmpeg如何引入外部库例如libx264,会了

添加libx264,引入其他编译库就不难了。linux环境:Ubuntu16.04,ffmpeg 版本3.4.2

一.下载libx264库,下载地址是:http://www.videolan.org/developers/x264.html 群里也有下载好的,也可以从
群里直接下载。

二.编译、安装libx264

打开命令终端(ctrl + Alt + T)cd 到libx264目录,首先配置libx264库:在命令终端输入

./configure --enable-static  --prefix=/home/wgg/work/compile/x264/static

--enable-static 表示生成静态库,如生成动态库将--enable-static替换为--enable-shared, --prefix后面跟

生成库安装路径。

首次配置libx264库 可能出现如下错误,解决的办法是将 --disable-asm 添加到命令行,或者安装nasm。

./configure --enable-static  --prefix=/home/wgg/work/compile/x264/static  --disable-asm

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

配置成功后,命令终端会list配置结果如图1所示。

图1 配置结果

接下来我们要做的是在命令终端输入make 编译x264,正常情况下编译不会有什么异常,make成功后,在

命令终端输入make install 将生成的库文件安装到指定的目录,安装完成后在指定的路径

/home/wgg/work/compile/x264/static 出现3个文件夹如下图所示:

图2 安装后指定目录下文件夹

include文件夹下下有两个文件x264.h及x264_config.h,lib文件夹下有文件libx264.a这3个文件在我们

编译ffmeg时会用到。

三. 编译、安装ffmpeg

ffmpeg 如何下载请参考上篇博文,将下载下来的ffmpeg源码解压,在解压后的文件内创建build文件夹

打开命令行终端cd 到build文件夹下执行命令:

../configure --enable-static --enable-libx264 --enable-gpl --disable-x86asm --prefix=/home/wgg/compile/ffmpeg/static --extra-cflags="-I/home/wgg/work/compile/x264/static/include" --extra-ldflags="-L/home/wgg/work/compile/x264/static/lib"
--extra-cflags 后面跟引入头文件目录,--extra-ldflags后面跟引入库目录。配置完成后出现如下界面:

图2 ffmpeg 配置完成界面

配置完成,接下来的直接在命令行终端执行make,正常情况不会出现编译错误。编译完成后 执行安装命令make install 将编译

生成完成的库安装到指定目录下(/home/wgg/compile/ffmpeg/static ),安装完成后,该路径下存在以下文件夹:

图3 ffmpeg 编译生成库文件图

如需交流可加群127903734群。

二群号为766718184 ,三群为1038388075,博主提供Ffmpeg、GB28181视频教程

播放地址: http://www.iqiyi.com/u/1426749687

源码及Demo下载地址:http://www.chungen90.com/?news_2/

视频下载地址:           http://www.chungen90.com/?news_3/

												

linux下编译ffmpeg 引入外部库x264的更多相关文章

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

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

  2. 【转】Linux下编译ffmpeg

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

  3. linux下编译时的默认库和头文件搜索路径

    链接库路径 默认的链接库路径,定义在搜索/etc/ld.so.conf下的一些路径,其包含了一些重要的系统位置:LIBRARY_PATH, 但如果定义了LD_LIBRARY_PATH, 动态库的搜索路 ...

  4. Linux下编译、使用静态库和动态库 自己测过的

    每个程序实质上都会链接到一个或者多个的库.比如使用C函数的程序会链接到C运行时库,GUI程序会链接到窗口库等等.无论哪种情况,你都会要决定是链接到静态库(static libary)还是动态库(dyn ...

  5. Linux下编译tinyxml生成动态库

    首先去到sourceforge下载tinyxml的源码,https://sourceforge.net/projects/tinyxml/?source=dlp,最新版本是2.6.2. 将下载成功的t ...

  6. windows下编译ffmpeg

    windows 编译ffmpeg 搞过很多次,每次总是磕磕碰碰,从头到尾不能一直顺利,浪费一些时间.终究起原因,都是当时记得,过段时间就忘了.好记性不如烂笔头,大好周末晚上,闲暇无事,记录最近一次编译 ...

  7. linux下编译qt5.6.0静态库——configure配置

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  8. linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  9. linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

随机推荐

  1. POJ2152 Fire 【树形dp】

    题目链接 POJ2152 题解 经典老题,还真暴力 \(n \le 1000\),所以可以\(O(n^2)\)做 所以可以枚举每个点依附于哪一个点 设\(f[u]\)表示以\(u\)为根的子树的最小代 ...

  2. codeforces round375(div.2)题解

    首先吐槽一下这套题...为什么EF全是图论QAQ 过了ABCD四个题...F的并查集死磕了好久... 不过似乎rank还算乐观...(因为ABC都是一次过的QAQ) Problem A: 啥都不想说Q ...

  3. 【winform】基于UserControl实现webBrower组件时html页面元素加载及onclick事件监听实现

    [背景]基于System.Windows.Forms.UserControl实现的webBrower组件在html内使用window.external调用winform事件失败. [解决思路]借助wi ...

  4. 共享VIM配置文件

    " progressively check higher values... falls out on first "true" " (note additio ...

  5. 从零开始学习OpenCL开发(一)架构【转】

    转自:http://blog.csdn.net/leonwei/article/details/8880012 多谢大家关注 转载本文请注明:http://blog.csdn.net/leonwei/ ...

  6. Lotus Notes Error: your mail file cannot be located. use file location manage location to ensure that your mail file is specified correctly

    在notes客户端中,当我们切换到另一个ID的时候,通过程序发送邮件,会报错:

  7. LeetCode OJ-- Reorder List **

    https://oj.leetcode.com/problems/reorder-list/ 将一个链表重新排序,比如 1 2 3 4 5,变成 1 5 2 4 3 1.找到中间节点 mid 2.将链 ...

  8. web前端生成图片之探索踩坑

    前段时间,产品和运营整了个非常变态的需求,要求将一个活动页面输出为图片,然后用户进行分享 开始以为是用户自己手动截图分享,没想到后来不是,细思极恐,感叹需求之变态. 从网上找了N个方案,最后确定使用  ...

  9. POJ1655 Balancing Act(树的重心)

    题目链接 Balancing Act 就是求一棵树的重心,然后统计答案. #include <bits/stdc++.h> using namespace std; #define REP ...

  10. 第十二届北航程序设计竞赛决赛网络同步赛 J题 两点之间

    题目链接  Problem J 这道题思路还是很直观的,但是有两个难点: 1.题目中说$1<=NM<=10^{6}$,但没具体说明$N$和$M$的值,也就是可能出现: $N = 1, M ...