mingw编译ffmpeg(移植到android)

原创 2013年12月06日 10:34:54
直接上图:
 图片
这个就是NDK所在目录;
个人所用的NDK的版本: android-ndk-r8e;
 

图片
这个是ffmpeg所在目录;

在该目录下创建configure.sh文件,内容如下:
#!/bin/bash

export TMPDIR="G:/temp/android"
export LLLIB="C:/MinGW/msys/1.0/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/lib/gcc/arm-linux-androideabi/4.4.3"
export LLSCRIPT="C:/MinGW/msys/1.0/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/arm-linux-androideabi/lib/ldscripts"
export NNLIBS="C:/MinGW/msys/1.0/ndk/platforms/android-8/arch-arm"
export NNINC="C:/MinGW/msys/1.0/ndk/platforms/android-8/arch-arm/usr/include"

PREBUILT=/usr/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
PLATFORM=/usr/ndk/platforms/android-8/arch-arm

./configure --target-os=linux \
        --arch=arm \
        --disable-debug \
        --disable-ffmpeg \
        --disable-ffplay \
        --disable-ffserver \
        --disable-ffprobe \
        --disable-encoders \
        --disable-muxers \
        --disable-demuxers \
        --disable-parsers \
        --disable-devices \
        --disable-protocols \
        --disable-filters \
        --disable-decoders \
        --enable-decoder=h264 \
        --disable-avfilter \
        --disable-network \
        --disable-avdevice \
        --disable-avformat \
        --disable-swresample \
        --disable-swscale \
        --disable-avresample \
        --disable-bsfs \
        --disable-bzlib \
        --disable-iconv \
        --disable-zlib \
        --disable-error-resilience \
        --disable-doc \
        --enable-cross-compile \
        --cc=$PREBUILT/bin/arm-linux-androideabi-gcc \
        --cross-prefix=$PREBUILT/bin/arm-linux-androideabi- \
        --nm=$PREBUILT/bin/arm-linux-androideabi-nm \
        --extra-cflags="-I$NNINC -fPIC -DANDROID" \
        --enable-neon \
        --enable-armv5te \
        --extra-ldflags="-Wl,-T,$LLSCRIPT/armelf_linux_eabi.x -Wl,-rpath-link=$NNLIBS/usr/lib -L$NNLIBS/usr/lib -nostdlib $LLLIB/crtbegin.o $LLLIB/crtend.o -lc -lm -ldl" 


文件结构截图: 
图片 
个人使用的时候限制只解码h264数据,禁用了其他的协议、模块等等,根据自己需要去更改; 
至于configure.sh文件里面的路径,自己去设置了;
configure.sh文件写的比较挫,没办法,实在是不精通这玩意儿,能过就好; 


 然后在minggw命令行里面运行如下:
 图片

然后make即可;
生成了两个.a文件:
图片
至于.a文件的大小可能不同,个人的是裁剪过的,至于如何裁剪那就是根据个人需要了;

现在只是编译通过,至于能不能跑起来明天的事了,今天手机始终无法连接上,悲剧!@!!!!!

相关文章推荐

Android:WIN10+MinGW+NDK编译FFmpeg

Android:WIN10+MinGW+NDK编译FFmpeg

android_mingw编译ndk

1.下载mingw:http://sourceforge.net/projects/mingw/ 2.安装mingw:1.建议默认位置,否则注意不要有空格;2.在Basic Setup中勾选除min...

Android NDK 工具链的使用方法(Standalone Toolchain)

首先需要确定目标机器的指令集。 如果是 x86 的机器,用 x86-4.4.3 版本的工具链;如果是 arm 指令的,用 arm-linux-androideabi-4.4.3 版本 (x86-4....

windows10下编译ffmpeg for android

本文记录在windows10下编译ffmpeg的过程: 第一步:下载ffmpeg,我下载的是ffmpeg-3.1.4(下载地址:https://ffmpeg.org/download.html) ...

使用MinGW编译FFmpeg

编译FFmpeg本来就是一件体力活, 使用MinGW来编更是相当蛋疼, 因此, 如果你没有刚刚作出一个非常艰难的决定, 请立即停止这种自虐行为.FFmpeg的人估计恨死Window$了, 如果你曾经有...

(android高仿系列)今日头条 --新闻阅读器 (二)

高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一)    上次,已经完成了头部新闻分类栏目的拖动效果。 这篇文章是继续去完善APP 今日头条  这个新闻阅...

android 仿 新闻阅读器 菜单弹出效果(附源码DEMO)

这一系列博文都是:(android高仿系列)今日头条 --新闻阅读器 (一) 开发中碰到问题之后实现的,觉得可能有的开发者用的到或则希望独立成一个小功能DEMO,所以就放出来这么一个DEMO。 原本...

移植带X264库的FFMPEG到ANDROID(win7上,用MINGW)

编译FFMPEG到ANDROID,可以有两种选择,一种是在UBUNTU上,另外一种是在WINDOWS上用MINGW或者CYGWIN编译,UBUNTU上的编译过程比较简单,CYCWIN可以参考http:...

详解-FFmpeg2.7移植android-(一)- 源码编译

需求: Linux环境(本人用的虚拟机,linux 14.04) make工具(自行安装,可以下载离线包,也可以git,不过才装的linux不带git,可以安上,这个很常用) android NDK...

手把手图文并茂教你用Android Studio编译FFmpeg库并移植

之前曾写过一篇[《FFmpeg在Linux下安装编译过程》](http://blog.csdn.net/hejjunlin/article/details/52402759),今天有空就用Androi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mingw编译ffmpeg(移植到android)
举报原因:
原因补充:

(最多只允许输入30个字)