想编译一个Android可用的二进制文件(要求:支持libx264/liblamemp3)

github资源:

    1.首先编译一个带lame库的ffmpeg

    https://github.com/aksalj/ffmpeg-android

    好了一次编译通过这个包之后你会发现多了ffmpeg、 ffmplay等二进制文件,关键是参考这边的配置文件confi.sh,这个达不到楼主的需要我们还需要libx264包

    2.先下载下面的 资源文件

    包含@x264的资源包 如果想要省事,请直接 git clone xxxx  -recursive(迭代下载所有引用资源文件)

    https://github.com/Cheers-Dev/android-ffmpeg

    3.拷贝x264包到步骤一中的根目录

     拷贝old下的config_x264.sh 和 make_x264.sh到步骤一目录并分别执行下 这样x264目录下会产生x264.a的静态文件留待下一步编译使用

    4.修改config.sh  

    --extra-ldflags=" -L${ARM_LIB} -L${MP3LAME}/lib" \ 修改为

    --extra-ldflags=" -L${ARM_LIB} -L${MP3LAME}/lib -L../x264" \

     同理增加cflag参数: --extra-cflags=" -I../x264" \

    放开libx264

    -enable libx264 \

    -enable statics \

    -disable shared \

    -disable ffmplay \

    -enable ffmpeg \

  ok,执行编译 如无意外您在 build/bin下面会发现 期待已久的ffmpeg大概12M左右

  注意:由于这是在win下发的博客,所以配置文件没有详细贴出,

    在这里我只是提供下我的解决思路,祝大家好运!

    

参考文档:-qscale的用法

    https://trac.ffmpeg.org/wiki/Encode/MPEG-4

    freetype2 not fond error! (下面给出了解决方案)

    https://github.com/jdpxiaoming/ffmpeg-android

        

安卓的用法 /data/data/com.xx.xx/ffmpeg -y -%03d.jpeg ...

    

注意及错误处理:

  1)ERROR: libmp3lame >= 3.98.3 not found

  编译器环境为 对应的platform/aroid-9/arch-arm/usr (lib/include)

  将我们的 lame对应头文件和.a拷贝到上面的编译目录即可。

 

FFMpeg那些事——独立运行的二进制文件ffmpeg编译的更多相关文章

  1. [转].NET程序在windows操作系统上独立运行的技术要点

    发现一个不错的网站,转载一篇文章方便查看 转自 http://www.linuxdot.net/bbsfile-3354   ===================================== ...

  2. 【FFMPEG】Windows下使用Visual Studio 2010编译ffmpeg全过程

    原文  http://www.cnblogs.com/xylc/p/3683203.html 主题 FFmpegWindowsVisual Studio ffmpeg是一个开源的多媒体库,使用非常广泛 ...

  3. FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建

    前言   本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8.   FFmpeg简介   FFmpeg是领先的多媒体框架,能够解码 ...

  4. FFmpeg开发笔记(四):ffmpeg解码的基本流程详解

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  5. FFmpeg开发笔记(五):ffmpeg解码的基本流程详解(ffmpeg3新解码api)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  6. FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台

    FFmpeg和SDL开发专栏(点击传送门) 上一篇:<FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放>下一篇:敬请期待   前言   将ffmpeg移植到海思H ...

  7. 【转】如何使用VS 2013发布一个可以在Windows XP中独立运行的可执行文件

    问题描述: 用VS2013写好一个程序,在本机上运行一切正常.但是如果直接把exe文件放到另一台机器上用,则会出现: Windows XP:不是一个正常的win32程序 Window 7:缺少msvc ...

  8. hadoop:将WordCount打包成独立运行的jar包

    hadoop示例中的WordCount程序,很多教程上都是推荐以下二种运行方式: 1.将生成的jar包,复制到hadoop集群中的节点,然后运行 $HADOOP_HOME/bin/hadoop xxx ...

  9. VS2013 help viewer搜索结果显示源码以及桌面独立运行help viewer

    安装好VS2013后,启动help viewer2.1在搜索栏中搜搜时结果会出现HTML源码. 要解决这个问题先来看看MINE,即Multipurpose Internet Mail Extensio ...

随机推荐

  1. 处理jquery版本之间冲突

    处理jquery版本之间冲突 前端开发们都知道jquery版本有好多,之间冲突很纠结.比如我刚来这公司的时候,后端的哥们用的是jQuery 1.3.2,我了个去,那哥们好久没更新了.我写的效果插件都是 ...

  2. 层叠水平(stacking level)

    运用上图的逻辑,上面的题目就迎刃而解,inline-blcok 的 stacking level 比之 float 要高,所以无论 DOM 的先后顺序都堆叠在上面. 不过上面图示的说法有一些不准确,按 ...

  3. JAVA多线程学习2--线程同步

    一.线程同步介绍 同步:就是协同步调,按照预定的先后顺序执行.比如:你说完我再说. 线程同步:访问同一个共享资源的时候多个线程能够保证数据的安全性.一致性. 二.JAVA中实现线程同步的方法 实现进程 ...

  4. JavaScript移除数组元素减少长度的方法

    JavaScript移除数组元素减少长度的方法,代码如下: //数组移除长度方法 var array=[];  array[0]="张三";  array[1]="李四& ...

  5. Hadoop2安装

    http://wenku.baidu.com/view/fe1b2f22de80d4d8d15a4f6e.html http://wenku.baidu.com/view/e4607031581b6b ...

  6. phonegap ios插件开发及无限后台运行解决

    1.首先开发插件:因为我的项目前需要所以要做(根据情况) 在项目的plugins文件中新建obj c文件.如 Demo,此时会产生出Demo.h和Demo.m两个文件. .h文件主要就是定义一些方法, ...

  7. 小兵眼中的Java Struts2

        老魏终于可以回园子了,但是这次要慢慢的回来,不能一下子回来,这段时间除了要照顾刚出生的小女儿,还要做项目.说实在的老魏时间真是有限,不能照顾到园子的文章了,所以只能慢慢的回来写文章了.抱歉! ...

  8. 微软职位内部推荐-SDE2 (Windows - Audio)

    微软近期Open的职位: SDE2 (Windows - Audio) Windows Partner Enablement team in Operating System Group is loo ...

  9. SharePoint 101 Code Samples are now available

    The Microsoft Office Developer Center has created 101 code samples for SharePoint 2010. These sample ...

  10. C# Windows - SDI和MDI应用程序

    生成MDI应用程序 MDI应用程序至少要由两个截然不同的窗口组成.第一个窗口叫做MDI容器(Container),可以在容器中显示的窗口叫做MDI子窗口. 要把应用程序的主窗口从一个窗体改为MDI容器 ...