用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
来源:互联网 发布:淘宝软件订购 编辑:程序博客网 时间:2024/05/19 10:54
用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
转载请注明出处 http://www.mingjianhua.com
本文参照 http://www.roman10.net/how-to-build-ffmpeg-with-ndk-r9/ 在linux下的编译,在MAC下也差不多,只需做一点点小改动,在LINUX下也可以参考。最好不要在windows下用cygwin,各种错误会搞得各种烦燥。
1、下载NDK,到 http://developer.android.com/tools/sdk/ndk/index.html#download 下载最新的NDKr9,选择Mac下的NDKr9版本,一般你的系统都是64bit的,选64bit的版本下载。查看你的系统版本可以在终端里输入 uname -a 查询
下载完,只要找个地方解压就好了,后面我们用$NDK代替解压后的全路径。
2、下载最新的ffmpeg http://www.ffmpeg.org/download.html
目前最新的release版是2.0.1.
下载后,解压到$NDK/sources文件夹下。
3、复制以下代码,在ffmpeg目录下建立build_android.sh文件 (这个编译文件最好用xcode编译,文本编辑器编译出来的貌似不太好用)
#!/bin/bash
NDK=$HOME/NDK //这里应该修改为 NDK=/Users/xxxx/Desktop/iOS/NDK 在NDK上面右键显示简介那个路径
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64 #这里要注意,如果是linux换成linux-x86_64,看你的系统情况定
function build_one
{
./configure \
--prefix=$PREFIX \
--enable-shared \
--disable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--disable-doc \
--disable-symver \
--disable-everything \
--enable-decoder=h264 \ #要什么解码器或编码器看着办
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
build_one
做完后就可以开始编译了
在终端上运行:
sudo chmod +x build_android.sh
./build_android.sh
接下来就等编完了,完了后,可以在ffmpeg/android下发现一个arm文件夹,里面有lib和include两个目录,lib里就有你想要的.so文件了。
具体怎么用这个.so,这里有个例 子,https://github.com/roman10/android-ffmpeg-tutorial
最后,祝你们好运。编译(ffmpeg2.0.2)也一样的,没什么区别
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- 用NDKr9编译最新ffmpeg2.0.1到android平台
- 用NDKr9编译最新ffmpeg2.0.1到android平台
- 用NDKr9编译最新ffmpeg2.0.1到android平台
- 编译最新ffmpeg2.0.1到iOS设备
- ffmpeg2
- android ndk r9 移植 live555 ffmpeg2.0 sdl2.0.1最新库整合编译
- Android NDK 编译移植FFmpeg2.5
- xcode5编译FFmpeg2.0.2的编译问题
- ffmpeg2.0如何编译
- ffmpeg2.5编译方法
- linux编译ffmpeg2.6.2
- linux编译ffmpeg2.8.4
- linux编译ffmpeg2.8.4
- 《程序员》 -- 风投过后,初创公司胜算几成?
- mysql 的基本操作
- 数据库的读写分离
- android 单元测试方法 类继承 Instrumentation
- 设计模式之不变设计模式
- 用NDKr9编译最新ffmpeg2.0.1(ffmpeg2.0.2)到android平台
- ios扫描公共区域内wifi信息
- ALSA声卡驱动中的DAPM详解之二:widget-具备路径和电源管理信息的kcontrol
- Java基础知识学习笔记——嵌套类(Nested Classes)
- Android之高仿手机QQ聊天
- SharedPreferences跨应用读取数据问题
- ACM->uvalive->Sentry Robots(二分图匹配的最小点覆盖)
- C++练习之程序编写
- IOS 如何获得 WIFI SSID