ubuntu 14 编译视频第三方库ijkplayer,能够在winows下使用
- export ANDROID_SDK=~/Development/adt-bundle-linux-x86-20130917/sdk
- export ANDROID_NDK=~/Development/android-ndk-r9b
- export PATH=$PATH:$ANDROID_SDK:$ANDROID_NDK:$ANDROID_SDK/platform-tools/
保存下就OK了
git checkout -B latest k0.4.5
5.6 运行命令
./init-android.sh
注意:这里有可能会出现这个问题:
解决方式:
打开/ijkplayer-android/tools下的pull-repo-ref.sh文件:
将 “ --dissociate ” 删掉
- REMOTE_REPO=$1
- LOCAL_WORKSPACE=$2
- REF_REPO=$3
- if [ -z $1 -o -z $2 -o -z $3 ]; then
- echo "invalid call pull-repo.sh '$1' '$2' '$3'"
- elif [ ! -d $LOCAL_WORKSPACE ]; then
- git clone--dissociate --reference $REF_REPO $REMOTE_REPO $LOCAL_WORKSPACE#将--dissociate删掉
- cd$LOCAL_WORKSPACE
- git repack -a
- else
- cd $LOCAL_WORKSPACE
- git fetch --all --tags
- cd -
- fi
- #! /usr/bin/env bash
然后保存文件。再次运行./init-android.sh 接着继续进行......
或者升级git到最新版本号,当中会支持“dissociate”命令
5.7 下载好后,运行
cd android/contrib ./compile-ffmpeg.sh clean ./compile-ffmpeg.sh all (注:all是编译全部cpu下支持的库。是能够选择的,这里我们还是选默认,假设你的ANDROID_SDK=xxx和ANDROID_NDK=xxx的路径没有问题话。就開始成功运行编译了。
这是个漫长的等待过程)
最后出现下图,恭喜能够进行下一步了。
依照上图的提示。我们回到ijkplayer-android/android的文件夹下,运行这个脚本
cd ..
./compile-ijk.sh all (注:假设去掉all则仅仅会编译出armv7a架构的so文件,否则会是所有)
上述所有的命令所有运行成功后,如今就能够/ijkplayer-android/android/文件夹下的ijkplayer导入Android Studio中了。
特此更新一下:
我在其它文章中都是到这里就完了,在ubuntu中,依照上面编译完毕之后就是能够执行的了,可是无奈我的电脑太卡。或者习惯在winows下使用as的同学要怎么办根本没写,这里我试了下。用以下这样的方法就能够将编译好的项目拿到winows下使用了:
1.首先我们要直接在winows下,下载整个项目:https://github.com/Bilibili/ijkplayer
2.导入到as里面,这个时候你执行到播放器这里就会挂掉,没关系。
3.我们看下编译好的支持库里面会生成什么
这里我们选择当中一个arm64 ,生成了libs和obj两个目录
另一个比較重要的是他会在jni生成一个新的.mk文件,这个mk等下会用到
4.打开as我们如今这个坑爹项目,将在ubuntu里面编译好的libs、obj 复制过来。还有jni下的Android.mk覆盖掉原来那个
如图我选择的是arm-64。其它的支持库也是一样的
5.然后再执行一次。你就能够尽情的玩了~~哈哈
參考了下面文章:
http://www.jianshu.com/p/b447f6601501
http://blog.csdn.net/liuyuejinqiu/article/details/50728013
https://github.com/Bilibili/ijkplayer
最后:另一个将其改动为eclipse可用的教程附上:
http://blog.csdn.net/fatiao101/article/details/49586379