转贴:51cto论坛
2008-07-08 15:35
288 查看
最近想通过FFmpeg库来练习在Android中使用其他第三方库进行开发。本文基本按照Ubuntu
10.10 64bit下使用Android NDK r6编译FFmpeg 0.8.1实现,感谢原作者辛苦的工作。
1 下载相应的Android
NDK r6文件
2 下载FFmpeg0.8.1的版本
截至到2011年10月2日已经发布了FFmpeg 0.8.5版本。
本文中系统之前已经配置过了NDK r6,我们通过控制台使用ndk-build不会出现找不到命令的情况。
本文的相关路径如下。
帮助
3 创建一个可执行脚本:
帮助
文件下载:
config.sh
本文为放到/root/develop/workspace/jni目录
4 使用命令
帮助
执行后会有一个warning提示,但不影响最后编译.
帮助
5 创建一个Android.mk文件,放在 /root/develop/workspace/jni目录
内容参考Android.mk
本文使用的文件为
Android.mk
6 在/root/develop/workspace/jni目录下,执行
帮助
7 本文中会在/root/develop/workspace/libs/armeabi/中生成一个libffmpeg.so文件。
注意:
本人在做这个操作的时候,参考过How to
Build FFmpeg for Android,但是并不成功。当然他提到的Android NDK r5 我没有测试过。
参考文章:
1 http://www.cnblogs.com/mcodec/articles/2114674.html
2 http://www.cnblogs.com/mcodec/articles/2114714.html
3 http://www.cnblogs.com/scottwong/archive/2010/12/17/1909455.html
4 http://blog.csdn.net/fsfcvictor/article/details/5972044
5 https://gist.github.com/1126971
6 http://www.cnblogs.com/shaobin0604/archive/2011/08/05/2128619.html
7 http://www.roman10.net/?p=389
主参考
http://www.cnblogs.com/shaobin0604/archive/2011/08/05/2128619.html
10.10 64bit下使用Android NDK r6编译FFmpeg 0.8.1实现,感谢原作者辛苦的工作。
1 下载相应的Android
NDK r6文件
2 下载FFmpeg0.8.1的版本
截至到2011年10月2日已经发布了FFmpeg 0.8.5版本。
本文中系统之前已经配置过了NDK r6,我们通过控制台使用ndk-build不会出现找不到命令的情况。
本文的相关路径如下。
帮助
1 2 | NDK目录为 /root/develop/android-ndk-r6 FFmpeg目录为 /root/develop/workspace/jni |
帮助
1 2 3 4 5 6 7 8 9 10 11 12 13 | ./configure --disable-static --enable-shared --enable-gpl --enable-version3 --enable-nonfree --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-avfilter --disable-postproc --enable-small --cross-prefix=/root/develop/android-ndk-r6/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi- --enable-cross-compile --target-os=linux --extra-cflags='-I/root/develop/android-ndk-r6/platforms/android-9/arch-arm/usr/include' --extra-ldflags='-L/root/develop/android-ndk-r6/platforms/android-9/arch-arm/usr/lib -nostdlib' --arch=arm --disable-symver --disable-debug --disable-stripping sed -i 's/HAVE_LRINT 0/HAVE_LRINT 1/g' config.h sed -i 's/HAVE_LRINTF 0/HAVE_LRINTF 1/g' config.h sed -i 's/HAVE_ROUND 0/HAVE_ROUND 1/g' config.h sed -i 's/HAVE_ROUNDF 0/HAVE_ROUNDF 1/g' config.h sed -i 's/HAVE_TRUNC 0/HAVE_TRUNC 1/g' config.h sed -i 's/HAVE_TRUNCF 0/HAVE_TRUNCF 1/g' config.h |
config.sh
本文为放到/root/develop/workspace/jni目录
4 使用命令
帮助
1 2 | chmod 777 ./config.sh ./config.sh |
帮助
1 | WARNING: /root/develop/android-ndk-r6/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-pkg-config not found, library detection may fail. |
内容参考Android.mk
本文使用的文件为
Android.mk
6 在/root/develop/workspace/jni目录下,执行
帮助
1 | ndk-build |
注意:
本人在做这个操作的时候,参考过How to
Build FFmpeg for Android,但是并不成功。当然他提到的Android NDK r5 我没有测试过。
参考文章:
1 http://www.cnblogs.com/mcodec/articles/2114674.html
2 http://www.cnblogs.com/mcodec/articles/2114714.html
3 http://www.cnblogs.com/scottwong/archive/2010/12/17/1909455.html
4 http://blog.csdn.net/fsfcvictor/article/details/5972044
5 https://gist.github.com/1126971
6 http://www.cnblogs.com/shaobin0604/archive/2011/08/05/2128619.html
7 http://www.roman10.net/?p=389
主参考
http://www.cnblogs.com/shaobin0604/archive/2011/08/05/2128619.html
相关文章推荐
- 【IT职场生存手册】他山之石,可以攻玉【51CTO技术论坛】
- 精品无敌电子书---2006年51cto论坛大奉献
- 被论坛封口?!悲哀啊51CTO
- 偶然发现51cto论坛中界面风格选择“钢铁森林”会出现问题
- 2012年51CTO论坛杰出版主获奖感言 推荐
- 中国软件业只能招超人(转贴自 中华英才网论坛 )
- [转贴]除了MVP奖之外,参与微软论坛的人可以参选MCC奖项
- 庆贺51CTO论坛注册会员突破15000人
- 51CTO论坛资料共享改版细分等您来!
- 纪念我在51CTO论坛的第10000贴
- 转贴(天极论坛):vb.net和c#语法比较
- 转贴:吃惊!看美国愤青们在论坛上如此议论中美较量 :
- ARCIMS(转贴自其他论坛)
- 51CTO论坛中网络工程师精华资源列表
- [转贴]『经济论坛』 [经济杂谈]中国未来十年经济形势预测 (2005年POSTED)
- 手工kill病毒小方法--转自51CTO论坛
- [转贴]在某论坛看到的好文,觉得很有些启示意义,转过来大家一起看看
- 获得51CTO论坛2010年十大杰出版主感言
- 转贴(天极论坛):代码换肤术——C#和VB
- [转贴]国内十大破解论坛