你好!这里是风筝的博客,

欢迎和我一起交流。


测试音频延时的话,一般使用WALT来测试是最为准确的,他是借助了外部硬件来捕获音频信号,某宝上有卖:

就是有丢丢小贵,本打工人还是想想白嫖的法子…

谷歌有cts测试工具:CtsVerifier.apk,专门做兼容性测试的,其中里面有关于audio的测试。

Cts工具下载链接:https://source.android.com/docs/compatibility/cts/downloads?hl=zh-cn

不过CtsVerifier.apk不是专门的audio的工具,最近发现一个工具挺好用的,专门测试audio的。
在google商店可以下载:OboeTster。

Oboe是一个C ++库,可以轻松在Android上构建高性能音频应用程序。它主要是为了允许开发人员针对简化的API,该API跨多个API级别回到API级别16(Jelly Bean)
下载地址:https://apkpure.com/tw/oboetester/com.mobileer.oboetester/download

打开APK,主要有几个测试项可用:

  • TEST OUTPUT:测试播放
  • TEST INPUT:测试录音
  • TAP TO TONE Latency:测试播放延时
  • ROUND TRIP Latency:测试播放+录音往返延时
  • ECHO INPUT TO OUTPUT:回音测试
  • RECORD AND PLAY:录音然后播放
  • GLITCH TEST:故障测试
  • AUTO GLITCH TEST:自动故障测试
  • TEST DISCONNECT:断开测试?
  • DEVICE REPORT:设备信息
  • DATA PATHS:数据通路
  • EXTRAS TEST:额外的测试

每个TEST项都有很详细的测试数据可以查看。
我主要关注两个测试项:TAP TO TONE Latency和ROUND TRIP Latency
两个都是测试latency,延时是音频很重要的一个指标,外放延时,数字耳机延时,模拟耳机延时,蓝牙耳机延时,非常影响用户的体验。

TAP TO TONE Latency

在TAP TO TONE Latency,测试点击屏幕播放到设备出声的这段时间延时:

点击START之后即可测试,用指甲和指腹一起敲击屏幕下方绿色区域即可测试播放latency。
参数可以用默认参数,比如aaudio,这里我设备没有支持aaudio,MMAP也是灰色的。
播放latency避免泄漏我就不放了,开启aaudio之后外放能做到20ms的latency。
bufferSize下面的三个圆框属于period count,设置设置2.
既bufferSize = 256 * 2 = 512.

Device可以选择测试的设备,数字耳机、模拟耳机或者蓝牙耳机,speaker,都行。

ROUND TRIP Latency

在ROUND TRIP Latency,可以测试播放+录音往返延时。

MEASURE是测量单次,AVERAGE是测量五次平均值。

这里input burst是128,output burst是256,bufferSize还是512.

latency主要看latency.msec即可,关于timestamp.latency,只是时间戳信息,可以不用关注。
倒是看到有人提了一个issues:Why the “latency.msec” is not equals to input’s “timestamp.latency” plus output’s “timestamp.latency” in “Round Trip Latency”

还有其他TEST项就不一一列举了,例如DEVICE REPORT:
我插入一款华为的数字耳机就有信息report

可以看出这款华为数字耳机最高支持96K播放等等信息。

最后,GitHub上也可以找到这个oboe源码:https://github.com/google/oboe

Android音频子系统(十三)------audio音频测试工具相关推荐

  1. 2022年Android官方模拟器安装Xposed教程+测试工具PatDroid安装教程

    碎碎念:截至笔者写此教程的2022.10.10,xposed官网貌似已经G了(?),网上有的教程已经过时,有的是针对奇怪的商用的Android模拟器的教程(以科研工作者的角度来说),在此环境下出一篇A ...

  2. android arp工具,Android内网攻击防御安全测试工具(开源)

    想必经历过4M宽带小水管年代的小伙伴,大多都晓得P2P终结者这枚网管神器,它可以通过ARP协议的漏洞来达到限制同一路由器下其他电脑网速的目的. 如今移动互联网时代飞速发展,大家都用上了50M.甚至10 ...

  3. Linux音频子系统(2) - ALSA ASoC

    1. linux音频子系统介绍 Linux音频系统比较复杂,各层间有很多交叉,可能是最无序的子系统. 1.1 ALSA ALSA 是 Advanced Linux Sound Architecture ...

  4. 正确选择合适的移动应用测试工具很重要

    您知道吗,据Statista称,到 2025 年,智能手机用户数量将达到 182.2 亿?其实也不用惊讶,数字化转型正在飞速发展,并将继续如此.这给移动应用程序开发市场带来了各种选择,并引发了对最佳移 ...

  5. 如何选择合适的移动应用测试工具?

    [内部资源] 想拿年薪30W+的软件测试人员,这份资料必须领取~ Python自动化测试全栈+性能测试全栈,挑战年薪40W+ 01 易于学习和使用 对于一款工具而言,如果它们学习难度或使用难度比较大, ...

  6. 整理了100个市面上常用的测试工具,希望能帮助到大家...

    哈喽,我是二黑,这里赠送一份软件测试资料. 1.软件测试学习路线 2.软件测试视频资料 3.软件测试相关文档 4.软件测试相关工具.安装包 5.高级测试工程师简历模板 6.面试题.模拟面试.PDF文档 ...

  7. Android系统源码分析/多媒体框架/音频子系统/常用结构体分析-audio.h

    audio_stream_type_t 定义音频流类型,主要是手机系统各类典型的音频流做出属性上的区分,举个例子:电话和媒体2种类型的音频不管从输出的设备(耳机.功放.还是蓝牙)都是存在明显的不同.把 ...

  8. Android音频子系统(十)------MTK Audio录音流程代码解析

    你好!这里是风筝的博客, 欢迎和我一起交流. Android framework中的代码每个平台基本都是大同小异,只有Hal上代码才是厂商特制,每个平台都不相同,这里以MTK平台为例,记录下MTK平台 ...

  9. Android音频子系统(十二)------抖音直播功耗问题解析

    你好!这里是风筝的博客, 欢迎和我一起交流. [前提条件] 移动卡纯5G,120HZ,最小亮度,最小音量,开启定位 [操作步骤] 1.从软件商店下载最新版本APK 2.进入抖音并登录账号,点击右上方的 ...

最新文章

  1. 简单剖析智能指针的思想
  2. linux重定向进程输出到文件删除,Linux文件编辑器vim输出输入重定向、管道以及进程(示例代码)...
  3. java 对象拷贝属性_使用Java对两个对象的属性进行拷贝
  4. android 百度开发论坛,Android 百度地图开发(一)
  5. mysql 主键倒序查询速度慢_一亿条数据order by主键降序速度很慢
  6. idea的英文是什么意思_idealisation是什么意思中文翻译
  7. 如何分析一个复杂系统
  8. mysql 根据状态输出_mysql show processlist 输出状态说明
  9. [debug] you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake ……
  10. Java中Set的使用
  11. scp拷贝服务器文件,scp 拷贝文件到远程服务器
  12. 【老生谈算法】matlab实现多元GARCH模型预测源码——GARCH模型
  13. 【老鸟进阶】deepfacelab错误人脸图片快速处理
  14. CC2430基础——定时器1试验
  15. 单片机管脚工作状态的解释
  16. 关于文件上传失败的问题
  17. 【学习OpenCV4】案例1:Windows OpenCV C++语言开发环境搭建
  18. 洛谷 P1361 小猫爬山
  19. Google Pay支付遇到的问题,妈妈再也不用担心我的面试
  20. 【可信计算】TPM核心功能

热门文章

  1. 全面的平板--Surface(各版本对比)
  2. Word学习笔记-使用技巧
  3. 淘宝店铺推广难?这些方法你还没掌握!
  4. 三种方法打印九九乘法表
  5. Python的import
  6. Spring Cloud Contract 初识之一 :简介
  7. 任正非:做好这件事情最重要
  8. JS事件—unload、beforeunload
  9. 通过matlab编程,对以下图像分别添加高斯噪声和椒盐噪声(参数自定),并使用理想低通滤波器、高斯低通滤波器和巴特沃斯低通滤波器进行去噪。
  10. Discuz3.4-SSRF-从触发点到构造payload