设为首页 加入收藏

TOP

Oboe,安卓上的低延迟音频应用开发库
2018-10-30 22:12:06 】 浏览:42
Tags:Oboe 安卓上 延迟 音频 应用开发

谷歌已经发布了第一个生产就绪的Oboe版本。Oboe是一个C++库,它用来构建在99%的安卓设备上都有着最低可能延迟的高性能音频应用。


需要构建音乐类游戏,音频应用等的开发者通常不得不处理延迟问题。Oboe的目标是通过提供一个简单的与安卓API 16+(Jelly Bean)版本兼容的API来解决这些延迟问题。在底层,Oboe利用了API 27+(Oreo MR1)里AAudio的性能和特性,在API 16+上使用了OpenSL ES


Oboe,安卓上的低延迟音频应用开发库


AAudio是一个安卓上的C语言API,它被设计用来开发要求低延迟的高性能音频应用。在安卓版本O中引入了它。应用通过读写流与AAudio交互。


安卓上的OpenSL ES是Khronos Group的OpenSL ES API规范的一种特定实现。类似AAudio,这个库也被设计用来开发要求低延迟的高性能音频应用。另外,OpenSL ES还暴露了一些与MediaPlayerMediaRecorder API中音频特性类似的特性。


安装安卓NDK版本r17或以上以后,克隆GitHub仓库,添加如下命令到CMakeLists.txt文件的末尾(如果你没有这个文件,那么应该为项目添加C++支持)。


开发者可以用Oboe的以下几行代码创建一个音频流:


可以在文档API指南代码样例上找到更多细节。此外,你可以在codelab上使用Oboe开发一个简单的音乐游戏;这个游戏的目标是通过点击屏幕复制听到的拍手模式。


查看英文原文https://www.infoq.com/news/2018/10/android-oboe 



编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Angular 7支持虚拟滚动、拖放、CL.. 下一篇详解C语言在字符串的指定位置插入..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(214) }