在ubuntu下编译ijkplayer-android的方法

所属分类: 软件编程 / Android 阅读数: 62
收藏 0 赞 0 分享

我前面一片文字讲的是在windows的cygwin中去编译,那真是各种坑啊,软链接无法识别,x86和86_64的so文件无法编译出来等等,我折腾了几天还是没有在cygwin中完美编译ijkplayer,今天我用了一下同事的ubuntu的电脑,变异ijkplayer-android真的是很快,很快的。

1.前提:

下面是官方的提示:

# install homebrew, git, yasm
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
brew install yasm
# 需要配置 SDK和NDK路径
# add these lines to your ~/.bash_profile or ~/.profile
# export ANDROID_SDK=<your sdk path>
# export ANDROID_NDK=<your ndk path>
# Cygwin下需要安装的软件
# on Cygwin (unmaintained)
# install git, make, yasm

在ubuntu环境下,进入home/xxx/

xxx代表你的名字,进入目录后按Ctrl+H就可以看到隐藏的文件,你就可以看到:

.bashrc 文件,这里可以配置类似windows下的path环境变量,

打开后加上你的ANDROID_NDK和ANDROID_SDK 路径,我的配置如下:

NDK=/home/hudong/platform-tools/android-ndk-r11b
export NDK
ADB=/home/hudong/Android/Sdk/platform-tools
export ADB
# 我们的ANDROID_NDK和ANDROID_SDK 路径
ANDROID_NDK=/home/hudong/platform-tools/android-ndk-r11b
export ANDROID_NDK
ANDROID_SDK=/home/hudong/android-sdk
export ANDROID_SDK 
# 加入到PATH路径
PATH=${PATH}:${NDK}:${ADB}:${ANDROID_NDK}:&{ANDROID_SDK}

在编译之前我们需要安装一些软件,make我们就不用安装了,make是在cygwin下需要安装的,

至于git我想大家都安装了吧,要是没有安装的话输入下面的命令就可以安装git和yasm了:

sudo apt-get update
sudo apt-get install git
sudo apt-get install yasm

2.系统版本:

3.编译步骤:

# 直接拉取源代码到本地
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
cd ijkplayer-android
# 检查更新代码
git checkout -B latest k0.5.1
# 初始化,会把ffmpeg的代码拉取到本地等等操作
./init-android.sh
cd android/contrib
./compile-ffmpeg.sh clean
# 编译ffmpeg软解码库
./compile-ffmpeg.sh all
cd ..
# 会生成各种版本的so文件
./compile-ijk.sh all

执行./compile-ffmpeg.sh all是编译ffmpeg,需要的时间久一点,只要你的配置和软件安装没有问题你就可以看到:

说明ffmpeg编译成功了,接下来就是编译ijkplayer了。

4.导入Android Studio:

这个不用我说明了吧,跟导入普通的项目是一样的:

5.最新精简源代码:

code地址: https://github.com/Dawish/ijkplayer-demo

精简代码后的目录:

以上这篇在ubuntu下编译ijkplayer-android的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Android网络编程之获取网络上的Json数据实例

这篇文章主要介绍了Android网络编程之获取网络上的Json数据实例,本文用完整的代码实例讲解了在Android中读取网络中Json数据的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中的windowSoftInputMode属性详解

这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下
收藏 0 赞 0 分享

Android网络编程之UDP通信模型实例

这篇文章主要介绍了Android网络编程之UDP通信模型实例,本文给出了服务端代码和客户端代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中使用ListView实现漂亮的表格效果

这篇文章主要介绍了Android中使用ListView实现漂亮的表格效果,本文用详细的代码实例创建了一个股票行情表格,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中刷新界面的二种方法

这篇文章主要介绍了Android中刷新界面的二种方法,本文使用Handler、postInvalidate两种方法实现界面刷新,需要的朋友可以参考下
收藏 0 赞 0 分享

Android SDK三种更新失败及其解决方法

这篇文章主要介绍了Android SDK三种更新失败及其解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(一)

Android3.0(API level 11)开始,Android设备不再需要专门的菜单键。随着这种变化,Android app应该取消对传统6项菜单的依赖。取而代之的是提供anction bar来提供基本的用户功能
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(二)

这次将继续上一篇文章没有讲完的Menu的学习,上下文菜单(Context menu)和弹出菜单(Popup menu)
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(三)

今天继续昨天没有讲完的Menu的学习,主要是Popup Menu的学习,需要的朋友可以参考下
收藏 0 赞 0 分享

Android显示网络图片实例

这篇文章主要介绍了Android显示网络图片的方法,以实例形式展示了Android程序显示网络图片的方法,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多