Oboe 测试应用 :
① Oboe GitHub 页面 : GitHub / Oboe ;
② Oboe 发布版本下载界面 : release 版本下载 , 这里我下载的是 1.4.3 版本 ; 下载 Source code ( zip ) 即可 ;
③ Oboe 测试应用 :
④ 测试方式 : 既可以作为一个交互式应用运行 ( 交互式用法 ) , 又可以进行自动化测试 ( 自动化测试用法 ) ;
⑤ Oboe 测试应用编译 : 参考文档 , 就是个 Android 应用 , 导入到 Android Studio 中编译运行即可 ;
OboeTester 测试内容 :
测试主界面 :
Oboe 输出测试 :
① 参数 显示 / 隐藏 : 点击 绿条 , 可以 显示 , 隐藏 输入 ( Input ) / 输出 ( Output ) 参数 ;
② 测试 音频流 的 打开 , 开始 , 暂停 , 停止 , 关闭 ;
③ 音频流参数设置 : 音频流 打开前 可以设置不同的参数 ;
④ 实时显示 : 音频流 播放时 , 会实时显示 帧计数 和 音频流状态 ;
⑤ 延迟信息 : 延迟信息是 根据 时间戳信息 , 估算的 ;
Oboe 缓冲区 与 工作负载修改 :
① 修改缓冲区测试 : 尝试 改变缓冲区的大小 , 设置缓冲区不同大小 , 查看是否有故障产生 ; 缓冲区越大 , 延迟越大 ;
② 修改工作负载 : 尝试 修改工作负载 , 即采样的速度 , 工作负载越大 , 采样速度越慢 ; 工作量大 , 采样慢 , 没有按时间交付音频采样 , 就会出现 欠载 ( UnderRun ) 的情况 ;
③ 修改工作负载目的 : 查看 帧计数器 和 XRun 值 , XRun 指的是 欠载 ( UnderRun ) 或 超限 ( OverRun ) 的情况 ;
④ XRun 概念 : XRun 是指 AAudio 音频流的 欠载 ( UnderRun ) 或 超限 ( OverRun ) ;
⑤ 额外工作负载 : 在采样循环中 , 通过计算一个随机值 , 生成额外负载 , 将该结果添加到输出中 ;
Oboe 输出测试 :
① 测试运行前 :
② 打开音频流 :
③ 开始播放音频流 : 可以看到输出延迟是
毫秒 ; Google 手机的音频延迟还是不错的 ;