RTMP 4 Android
2015-09-30 12:16
435 查看
http://blog.csdn.net/simongyley/article/details/9273189
http://pan.baidu.com/s/1eQtvmKi
编译环境:(rtmpdump-master.zip和Polar SSL版本已经打包上传,具体路径在http://download.csdn.net/detail/gyley2/5721061)
win7操作系统
centos 6.0-64位虚拟机
android-ndk-r8e,下载地址:http://developer.android.com/tools/sdk/ndk/index.html
rtmpdump-master.zip,下载路径:https://github.com/S74ck3r/rtmpdump
Polar SSL,下载路径:https://polarssl.org/download,我用的是polarssl-1.2.0-gpl.tgz
当然你可以使用openssl作为ssl的库,下载路径为:https://github.com/aluvalasuman/OpenSSL1.0.1cForAndroid,使用NDK-bulid在此不作介绍,网上搜一下。
编译开始:
1、下载android-NDK,配置android编译环境。不会的问google。我的NDK环境在/home/android-ndk-r8e路径。
2、在home路径下创建rtmpdump文件夹路径,并且赋权限。
mkdir /home/rtmpdump
chmod 777 -R /home/rtmpdump
3、配置NDK standalone 交叉编译环境。
/home/android-ndk-r8e/build/tools/make-standalone-toolchain.sh platform=android-14
4、在环境变量中添加android NDK的交叉编译环境。
export PATH="/home/rtmpdump/android-toolchain/bin:$PATH
5、下载Polar SSL,并且解压。进入解压后的Polar SSL路径
6、编译Polar SSL。
make CC=arm-linux-androideabi-gcc APPS=
如果系统提示找不到arm-linux-androideabi-gcc:1、export一下,看看”/home/rtmpdump/android-toolchain/bin“是否存在PATH路径下。2、进入“/home/rtmpdump/android-toolchain/bin”看看arm-linux-androideabi-gcc是否存在。如果上两步都没有问题,可以使用“make CC=/home/rtmpdump/android-toolchain/bin/arm-linux-androideabi-gcc
APPS=”进行编译。
7、安装Polar SSL。
make install DESTDIR=/home/rtmpdump/android-toolchain/sysroot
8、下载rtmpdump版本,并且解压,进入rtmpdump解压后的目录。
9、编译(librtmp为动态库)
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL
同样,如果提示找不到问题,处理方法同6.
如果想使用librtmp的静态库,使用
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/compiler/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL SHARED=
注: 编译成功的是 librtmp.so.0 ,这个很讨厌,在Java层load时会有问题。
想要编译成为librtmp.so,这时要修改Makefile : SO_android=.$(SOX).$(SO_VERSION) --》 SO_android=.$(SOX)。
编译会报链接失败(ln), 但是,who cares~
http://pan.baidu.com/s/1eQtvmKi
编译环境:(rtmpdump-master.zip和Polar SSL版本已经打包上传,具体路径在http://download.csdn.net/detail/gyley2/5721061)
win7操作系统
centos 6.0-64位虚拟机
android-ndk-r8e,下载地址:http://developer.android.com/tools/sdk/ndk/index.html
rtmpdump-master.zip,下载路径:https://github.com/S74ck3r/rtmpdump
Polar SSL,下载路径:https://polarssl.org/download,我用的是polarssl-1.2.0-gpl.tgz
当然你可以使用openssl作为ssl的库,下载路径为:https://github.com/aluvalasuman/OpenSSL1.0.1cForAndroid,使用NDK-bulid在此不作介绍,网上搜一下。
编译开始:
1、下载android-NDK,配置android编译环境。不会的问google。我的NDK环境在/home/android-ndk-r8e路径。
2、在home路径下创建rtmpdump文件夹路径,并且赋权限。
mkdir /home/rtmpdump
chmod 777 -R /home/rtmpdump
3、配置NDK standalone 交叉编译环境。
/home/android-ndk-r8e/build/tools/make-standalone-toolchain.sh platform=android-14
--toolchain=arm-linux-androideabi-4.6--install-dir=/home/rtmpdump/android-toolchain --system=linux-x86_64
4、在环境变量中添加android NDK的交叉编译环境。
export PATH="/home/rtmpdump/android-toolchain/bin:$PATH
5、下载Polar SSL,并且解压。进入解压后的Polar SSL路径
6、编译Polar SSL。
make CC=arm-linux-androideabi-gcc APPS=
如果系统提示找不到arm-linux-androideabi-gcc:1、export一下,看看”/home/rtmpdump/android-toolchain/bin“是否存在PATH路径下。2、进入“/home/rtmpdump/android-toolchain/bin”看看arm-linux-androideabi-gcc是否存在。如果上两步都没有问题,可以使用“make CC=/home/rtmpdump/android-toolchain/bin/arm-linux-androideabi-gcc
APPS=”进行编译。
7、安装Polar SSL。
make install DESTDIR=/home/rtmpdump/android-toolchain/sysroot
8、下载rtmpdump版本,并且解压,进入rtmpdump解压后的目录。
9、编译(librtmp为动态库)
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL
同样,如果提示找不到问题,处理方法同6.
如果想使用librtmp的静态库,使用
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/compiler/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL SHARED=
注: 编译成功的是 librtmp.so.0 ,这个很讨厌,在Java层load时会有问题。
想要编译成为librtmp.so,这时要修改Makefile : SO_android=.$(SOX).$(SO_VERSION) --》 SO_android=.$(SOX)。
编译会报链接失败(ln), 但是,who cares~
相关文章推荐
- Android——init可执行程序
- Android事件分发机制
- AndroidStudio快捷键设置
- 【Android】 Activity启动模式singleTask的数据传输 onNewIntent方法
- Android启动脚本init.rc(2)
- Android正则表达式
- Android中手机号、车牌号正则表达式大全
- Android studio中右键项目没有subversion(SVN)解决办法
- android Get请求错误的问题 关于编码
- android线程间的通信机制
- 【Android】Broadcast Receiver的基本使用,推一条广播给多个Receiver
- 在android中画圆形图片的几种办法
- Flux Architecture on Android
- Android注入完全剖析
- [Android Pro] Fragment中使用SurfaceView切换时闪一下黑屏的解决办法
- Error:Cause: org/gradle/api/publication/maven/internal/DefaultMavenFactory Android
- Android中获取屏幕物理尺寸的方法
- Android之Activity之间的数据通信方式大全(二)
- Android系统下获取本地IP和mac地址的方法
- Android基础入门教程——2.5.4 其他几种常用对话框基本使用