一、Oboe 简介

Oboe 简介 :

① 函数库 : Oboe 是 C++ 函数库 , 用于在 Android 平台中中构建高性能音频 ;

② 主要功能 : 让开发者使用一套 API , 就可以 跨 API 使用高性能音频 ;

③ 原理 : Android 的高性能音频框架有两个 , OpenSL ES 和 AAudio ; 但是 AAudio 只有在 Android 8.0 Oreo( API Level 26 ) 以上的 系统才可以使用 , 8.0 以下的系统只能使用 OpenSL ES ;





二、Oboe 特点

Oboe 特点 :

① 版本兼容 :Android 4.1 Jelly Bean( API Level 16 ) 及以上版本的 Android 系统中运行 , 兼容 99 % 99\% 99% 的 Android 设备 ;

② OpenSL ES : Android 4.1 Jelly Bean( API Level 16 ) 以上系统 , 使用 OpenSL ES 播放音频 ;

③ AAudio : Android 8.0 Oreo( API Level 26 ) 以上系统 , 使用 AAudio 播放音频 ;

④ 音频延迟自适应调整

⑤ 代码整洁 : 使用 C++ 语言 , 可以编写 干净 , 优雅的 播放器代码 ;

⑥ 解决了一些已知的音频相关问题





三、Oboe 编译工具

Oboe 编译工具 :

① 编译 Oboe : 编译 Oboe 函数库 , 需要使用 支持 C++14 的编译器 , 和 Android 头文件 ;

② 交叉编译工具 : 最简单的方法就是使用 NDK 17 及以上的版本的 NDK 工具 , 进行交叉编译 ;

③ Android Studio 中下载 : 在 Android Studio 中可以使用 SDK Manager 下载 ;

④ 直接下载 : NDK 下载





四、Oboe 文档

Oboe 相关资料 :

GitHub 主页 : GitHub/Oboe

① 简单使用 : Getting Started

② Oboe 全指南 : Full Guide To Oboe

③ Oboe API 参考 : API reference

④ Android 音频框架发展 : Android audio history





五、Oboe 测试

Oboe 测试 :

① Oboe 测试应用 : OboeTester 可用于测试 Oboe 各种特征 , OpenSL ES , AAudio 等 ; 还可以测量 设备 音频延迟 和 故障 ;

② 测试方式 : 既可以作为一个交互式应用运行 ( 交互式用法 ) , 又可以进行自动化测试 ( 自动化测试用法 ) ;

③ Oboe 测试应用编译 : 参考文档 , 就是个 Android 应用 , 导入到 Android Studio 中运行即可 ;