Ijkplayer编译
时间:2022-06-13
本文章向大家介绍Ijkplayer编译,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
背景
希望能够打印Ijkplayer在各个阶段运行时的时间,以此为标准进行优化
编译过程
- 下载源代码 进入github/Bilibili/ijkplayer,clone该项目到本地
git clone https://github.com/Bilibili/ijkplayer.git
- 配置NDK以及SDK目录
在mac上进入
~/.bash_profile
或者~/.profile
文件中,加入路径配置
# add these lines to your ~/.bash_profile or ~/.profile
export ANDROID_SDK=<your sdk path>
export ANDROID_NDK=<your ndk path>
在添加完路径后,需要使用时,需要在Termianl中输入
source ~/.bash_profile
让当前路径在Terminal中生效,否则无法找到NDK路径
- 配置完NDK路径后,开始执行初始化脚本
./ijkplayer/init-android.sh
,该脚本主要下载了ffmpeg的源码,并且将其clone到extra目录下 - 配置编译模块
cd config
rm module.sh
ln -s module-default.sh module.sh
在module.sh
中可以选择要编译的配置
Options
- 开始编译
cd android/contrib/
./compile-ffmpeg.sh clean
:清理ffmpeg的目录./compile-ffmpeg.sh all
:编译所有架构的ffmpeg库cd ..
./compile-ijk.sh all
:编译所有版本的ijkplayer
编译完成
备注
ijkplayer最好用ndk-r10e来进行编译,否则会出现很多Cmake等等问题
测试
- 打开Android Studio,打开
/android/ijkplayer
工程,配置一下Gradle版本 - 运行
ijkplayer-example
即可
- C语言/C加加新手入门学习经验资料分享,基础知识大汇总!
- 云数据服务蜂拥而至...好难选呀
- ASP.NET MVC的Razor引擎:View编译原理
- ASP.NET Core中的依赖注入(4): 构造函数的选择与服务生命周期管理
- 通过Knockout.js + ASP.NET Web API构建一个简单的CRUD应用
- 自动驾驶车辆在2017年的七大光辉历史时刻
- 简单的实现Javascript的MVC
- 谷歌再出黑科技!人工智能模拟的人声和真人几乎难以分辨
- 【Scikit-Learn 中文文档】高斯混合模型 - 无监督学习 - 用户指南 | ApacheCN
- “E+单拼”组合域名eqi.com小六位结拍
- ASP.NET Core中的依赖注入(3): 服务的注册与提供
- 【Scikit-Learn 中文文档】使用 scikit-learn 介绍机器学习 | ApacheCN
- 哈萨比斯:2018年AI最大突破在生物或化学领域
- ASP.NET Core中的依赖注入(5): ServiceProvider实现揭秘 【总体设计 】
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法