ijkplayer编译.so
来源:互联网 发布:网络水军 编辑:程序博客网 时间:2024/05/20 04:09
最近做直播平台,包括推流端、服务器、及播放端。现在用到手机播放rtmp流,查找第三方库ijkplayer可以实现该功能。
ijkplayer开源库地址https://github.com/Bilibili/ijkplayer
环境:Mac 或者ubunt
准备:git工具
NDKr10e及以上版本
环境变量配置ANDROID_NDK
集成步骤
1 下载ijkplayer源码
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android我下载的版本是0.7.5
进入ijkplayer下载的目录
cd ijkplayer-android
创建一个分支
2 执行初始化操作
./init-android.sh脚本会去下载ffmpeg的代码(下载比较慢,当然这还得看网速)
3 编译ffmpeg
cd android/contrib./compile-ffmpeg.sh clean./compile-ffmpeg.sh all如果出现此问题:“You must define ANDROID_NDK, ANDROID_SDK before starting.They must point to your NDK and SDK directories.\n”
这说明NDK配置问题。需要在用户名录下的.bash_profile文件配置ANDROID_NDK,当然路径要修改成自己ndk的路径了。
export PATH=$PATH:/Users/user/tools/android-ndk-r10e/
ANDROID_NDK=/Users/user/tools/android-ndk-r10e/
export ANDROID_NDK
ffmpeg编译x86_64时出现问题如下:
/Users/user/tools/ijkplayer-android/android/contrib/build/ffmpeg-x86_64/toolchain/bin//x86_64-linux-android-gcc
yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
这是需要更新或者安装一下yasm。yasm安装方法:
curl http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz >yasm.tar.gztar zxvf yasm-1.3.0.tar.gzcd yasm-1.3.0/./configure --prefix=/usr/local/yasmmakemake install
/etc/profile 文件末尾添加export PATH="$PATH:/usr/local/yasm/bin"
mac 下用 sudo make install 获取管理员权限安装。
这些配置后编译还是出现上述问题,
网上说只会对当前的终端生效,想要永久生效的话可以直接在.bash_profile文件中添加配置环境变量,做法如下:
$vim ~/.bash_profile
然后在打开的bash_profile中添加:export PATH=$PATH:/usr/local/yasm/bin
保存后就可以,如果有问题重启下电脑。
重新编译ffmpeg,通过。
4 编译.so
cd .. ./compile-ijk.sh all如果./compile-ijk.sh不带all,只会编译arm-v7a的。
在android/ijkplayer/目录,各种芯片目录下会生成对应的三个.so,(分别在ijkplayer-arm64、ijkplayer-armv5、ijkplayer-armv7a、ijkplayer-x86、ijkplayer-x86_64这些项目的src/main/libs/对应的名称 目录下分别生成libijkffmpeg.so、libijkplayer.so、libijksdl.so这三个so文件)。
- ijkplayer编译.so
- ijkplayer 编译so库过程
- 关于编译ijkplayer下的so经验分享
- 编译ijkplayer
- 编译ijkplayer
- ijkplayer编译
- ijkplayer编译
- Ubuntu16.04 编译ijkplayer so,并导入android,运行官方demo
- win7下安装VM虚拟机,VM中安装Linux系统,Linux系统编译Android ijkplayer so
- Android开发-直播视讯(4)-Ubuntu编译ijkplayer的so文件-基础知识
- android-ijkplayer编译记录
- Eclipse编译ijkplayer
- 编译ijkplayer-android
- ijkPlayer的编译
- ijkplayer编译(mac)
- Android编译IJKPlayer
- android ijkplayer编译
- Ubuntu 编译ijkplayer
- 使用locust做服务器压力测试
- JVM垃圾回收总结
- jenkins 插件下载地址
- 年终总结
- 怎么测试UI
- ijkplayer编译.so
- 卡普雷卡数
- [编程题]学英语
- ichart添加click事件
- SpringRedis
- ElasticSearch搜索实例含高亮显示及搜索的特殊字符过滤
- 解释器模式
- Latex用到的整理
- 基于配置的ORMapping框架浅析之1