1.先安装相关环境,详细在这里http://blog.163.com/zhuowr2006@126/blog/static/98334653201612310647799/

 依据上面那个安装之后,会直接有个eclipse+sdk。sdk那个仅仅有一个版本号可是临时不用去升级。不影响。

2.依据这个官方https://github.com/Bilibili/ijkplayer 的api要求去下载个ndk r10e

下载地址:http://blog.csdn.net/ultrapro/article/details/46008805

 依据你ubuntu安装是多少位来下载,我的是64位的。所下面载android-ndk-r10e-linux-x86_64.bin
 3.通过命令去安装ndk。

3.1 下载好后,直接拉进去ubuntu 里面

3.2  打开控制台,由于直接在根文件夹下了。所以直接使用
chmod a+x android-ndk-r10e-linux-x86_64.bin
然后右击查看路径,输入:/home/admins/android-ndk-r10e-linux-x86_64.bin
等他安装好就能在这个文件夹里面看到他了
 

4.环境变量设置

4.1 直接在根文件夹,alt+h,显示隐藏文件,找到.bashrc文件。加入下面环境变量
  1. export ANDROID_SDK=~/Development/adt-bundle-linux-x86-20130917/sdk
  2. export ANDROID_NDK=~/Development/android-ndk-r9b
  3. export PATH=$PATH:$ANDROID_SDK:$ANDROID_NDK:$ANDROID_SDK/platform-tools/
详细的文件名称依据实际来。由于sdk之前我们已经有了,所以也是须要配置的。
配置完毕后长这样:

保存下就OK了

5.之后就进入怎么编译第三方库ijkplayer

5.1确保你的机器上已经安装了git和yasm,假设没有请在终端运行下面命令:
sudo apt-get update
sudo apt-get install git
sudo apt-get install yasm

5.2确保配置文件里ANDROID_SDK=xxx和ANDROID_NDK=xxx正确(注:声明路径变量的名字一定要以ANDROID_SDK和ANDROID_NDK命名,否则后边的编译会出问题,我的路径都声明在了.bashrc中)
5.3 首先从Bilibili在github上的代码库中可隆一份源代码git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android (注:须要点时间下载
5.4  cd ijkplayer-android (注:定位到此文件夹下)
5.5  切换分支

git checkout -B latest k0.4.5

5.6 运行命令

./init-android.sh

注意:这里有可能会出现这个问题:

解决方式:

打开/ijkplayer-android/tools下的pull-repo-ref.sh文件:

将 “ --dissociate ” 删掉

  1. REMOTE_REPO=$1
  2. LOCAL_WORKSPACE=$2
  3. REF_REPO=$3
  4. if [ -z $1 -o -z $2 -o -z $3 ]; then
  5. echo "invalid call pull-repo.sh '$1' '$2' '$3'"
  6. elif [ ! -d $LOCAL_WORKSPACE ]; then
  7. git clone--dissociate --reference $REF_REPO $REMOTE_REPO $LOCAL_WORKSPACE#将--dissociate删掉
  8. cd$LOCAL_WORKSPACE
  9. git repack -a
  10. else
  11. cd $LOCAL_WORKSPACE
  12. git fetch --all --tags
  13. cd -
  14. fi
  15. #! /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两个目录

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="border:0px; height:auto">

另一个比較重要的是他会在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

ubuntu 14 编译视频第三方库ijkplayer,能够在winows下使用的更多相关文章

  1. Ubuntu 如何编译安装第三方库

    在工程应用中都会用到第三方库,标准库是在我们安装IDE环境或系统自带已经编译好的库,我们是可以直接调用的,而第三方库需要我们自己下载,编译和安装后才能使用,这里我们说的是Ubuntu如何使用cmake ...

  2. Ubuntu 14 编译安装 PHP 5.4.45 + Nginx 1.4.7 + MySQL 5.6.26 笔记

    Ubuntu 14 编译安装 PHP 5.4.45 + Nginx  1.8.0/1.4.7 + MySQL 5.6.26 笔记,主要是给自己的PC机安装,非生产环境! 一.下载必要的源码 1.1.下 ...

  3. ubuntu 14.04 32位库

    如果是ubuntu 14.04,则请先执行: 方法1: sudo gedit /etc/apt/sources.list 然后在最后添加上: deb http://archive.ubuntu.com ...

  4. ubuntu 14 编译ARM g2o-20160424

    1. 安装eigen sudo apt-get install libeigen3-dev sudo apt-get install libsuitesparse-dev sudo apt-get i ...

  5. Ubuntu 14 编译安装 XDebug - 2.3.3 For PHP - 5.4.45

    安装过程如下: 1.下载XDebug源码:http://xdebug.org/files/xdebug-2.3.3.tgz 2.解压到某个目录,如 /opt/software/xdebug-2.3.3 ...

  6. Ubuntu 14.04 将一个sh文件制作成类似于windows下的可以双击执行的快捷方式

    # 创建文件 touch test.desktop # 在test.desktop中写入如下内容 [Desktop Entry] Version=1.0 Type=Application Termin ...

  7. ubuntu 14.04.5 编译Android 4.4.4 r1源码(最新)

    本文博客链接:http://blog.csdn.net/qq1084283172/article/details/54426189 吐槽:ubuntu系统真是让人又爱又恨,也有可能是VMware Wo ...

  8. 调用第三方库时需注意MD/MT的链接编译方式(遇到的坑记录)

    MD与/MT编译 1./MD是动态库链接方式编译 (DEBUG版本是/MDd) 2./MT是静态库链接方式编译 (DEBUG版本是/MTd) 编译器不会检查到的问题 我今天遇到的记录下来 当你调用第三 ...

  9. Ubuntu 12 编译安装 PHP 5.4 及 问题汇总

    参考先前的文章:Ubuntu 14 编译安装 PHP 5.4.45 + Nginx 1.4.7 + MySQL 5.6.26 笔记 安装过程: ############################ ...

随机推荐

  1. CentOS下编译安装PHP5.6

    目录 1 安装php依赖的扩展 2 下载解压PHP 3 编译PHP 4 让Apache支持PHP 5 测试安装  安装php依赖的扩展: yum install -y libxml2-devel op ...

  2. POJ 2227 FloodFill (priority_queue)

    题意: 思路: 搞一个priority_queue 先把边界加进去 不断取最小的 向中间扩散 //By SiriusRen #include <queue> #include <cs ...

  3. 暑假集训-二分图,网络流,2-SAT

    匈牙利算法DFS bool dfs(int u){ ; i <= n; i++){ if(a[u][i] && !visit[i]){ visit[i] = true; || d ...

  4. 分享一个jquery实现的双向选择组件

    <html><head> <meta charset="utf-8"> <title>数据删选组件</title> &l ...

  5. nodejs学习(二)--express热更新nodemon,自启动项目

    一.说一下 每次修改文件,我们都需要重启服务器npm start,很麻烦,所以使用引入nodemon插件,解决这个问题,实现保存文件,即自启动刷新项目 二.直接开码 npm install nodem ...

  6. ubuntu-12.04工作区内容变换所属工作区

    最近一直纠结于ubuntu12.04窗口更改所属工作区问题,今天在网上看到了方法.记录下来 主要就是利用快捷键. 1.打开你想移动的窗口 2.使用快捷键Shift + Ctrl + Alt + Dow ...

  7. IIS6下AD域设置

    简介:IIS6下AD域设置 IIS6下AD域设置 http://files.cnblogs.com/files/KingUp/AD%E5%9F%9F%E8%AE%BE%E7%BD%AE.rar

  8. Codeforces Round #194 (Div. 2) 部分题解

    http://codeforces.com/contest/334 A题意:1-n^2 平均分成 n 份,每份n个数,且和相同 解法 : 构造矩阵1-n^2的矩阵即可 ][]; int main() ...

  9. 字符设备驱动-------Linux异常处理体系结构

    裸机中断流程 外部触发 CPU 发生中断, 强制的跳到异常向量处 跳转到具体函数 保存被中断处的现场(各种寄存器的值) 执行中断处理函数,处理具体任务 恢复被中断的现场 Linux处理异常流程 异常发 ...

  10. MariaDB 安装 (YUM)

    在CentOS 7.0安装MariaDB的数据库,在这里记录下安装过程,以便以后查看. 1. 安装MariaDB 安装命令 yum -y install mariadb mariadb-server ...