ubuntu编译最新版ijkplayer-android
1.编译环境
- ubuntu版本 14.04
- ndk版本 r14b
- ijkplayer-android版本 k0.8.8
2.编译环境搭建(android-sdk、ndk)
1.安装相关的工具
sudo apt-get update
brew install git
brew install yasm
2.修改系统环境变量
执行如下命令:
sudo vim /etc/profile
添加
export ANDROID_SDK=<your sdk path>
export ANDROID_NDK=<your ndk path>
下图是我当前的路径,可以参考下
export ANDROID_NDK=/home/jcz/android/ndk/android-ndk-r14b
export PATH=$ANDROID_NDK:$PATH
export ANDROID_SDK=/home/jcz/android/android-sdk-linux
export PATH=${PATH}:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools
添加完成后执行如下命令,让设置的环境变量生效
sudo source /etc/profile
测试环境变量是否已经设置好
执行如下命令
ndk-build -v
出现下图信息,说明ndk配置好了
执行如下命令
adb version
出现下图类似信息,说明sdk配置成功
3.下载ijkplayer-android源码
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
4.开始编译ijkplayer-android
代码拉完之后进入到ijkplayer-android目录
cd ijkplayer-android
初始化,会从网上自动拉代码,时间比较长
./init-android.sh
如果视频播放需要支持Https协议,需要执行如下命令
./init-android-openssl.sh
编译各个平台的编译openssl
cd android/contrib
./compile-openssl.sh clean
./compile-openssl.sh all
编译各个平台的ffmpeg,如果需要更多的编解码格式,需要先执行下面的命令
cd ../..
cd config
rm module.sh
ln -s module-lite.sh module.sh
cd ..
cd android/contrib
./compile-ffmpeg.sh clean
注:此时,最新版本上如果执行的是(ln -s module-lite.sh module.sh),会出现如下错误:
编译各个cpu架构的ffmpeg
./compile-ffmpeg.sh all
接下来,编译ijkplayer
cd ..
./compile-ijk.sh all
编译成功后,目录如下所示