Android 音频系统可以通过各种路由、外围设备和配置播放和录制音频信号。在复杂的系统上手动测试基本音频功能既缓慢又繁琐。为了解决这个问题,CTS 验证程序实现了多项数据路径测试,这些测试可以自动验证大量路由和配置的基本音频功能。
音频数据路径测试分为三个区域
- 模拟耳机插孔路径(如果可用)
- 设备扬声器和麦克风路径
- USB 音频外围设备(USB 耳机和 USB 音频接口)路径
图 1. 音频数据路径测试列表面板。
常用元素
在运行测试之前,测试面板会显示以下内容
音频属性列表,以及 DUT 是否支持这些属性。此列表确定可以运行哪些数据路径和属性规范。例如,不支持 MMAP 的设备上不运行 MMAP 路径的数据路径或属性。
- 麦克风 - DUT 包含内置麦克风。
- 扬声器 - DUT 包含内置扬声器。
- MMAP - DUT 支持 MMAP 音频模式。
- MMAP Exclusive - DUT 支持 MMAP Exclusive 音频模式。
音频 API 选择
- Java API - 播放和录制使用 Java 音频 API 完成。
- Native API - 播放和录制使用原生音频 API 完成。
校准音频按钮,用于调用音频环回校准面板,以便在运行测试之前设置信号电平
测试过程按钮
开始 - 启动测试序列。将测试任何可测试的、失败的数据路径或配置。
取消 - 停止当前测试序列。
清除结果 - 清除所有数据路径的结果代码。此选项可用于在之前的测试(可能已失败)之后运行完整的测试序列。
信号显示面板(示波器)。此面板显示测试运行时的信号。显示的信号未显示清晰的高振幅正弦波,则表明数据路径存在问题。
显示的样本数量因数据路径或配置而异,因此出现不同数量的正弦波周期是正常的。
正在测试的数据路径或配置规范列表。此列表列出了可在音频 I/O 外围设备上运行的可能配置,这些配置与选定的数据路径测试相关联。对于 DUT 有效且可用的外围设备连接到 DUT 的数据路径或配置,会以星号显示,以及测试状态(通过、失败或未测试)。
测试运行时,当前数据路径或配置以 >> << 围绕规范指示。
有关详情,请参见下图
图 2. 音频数据路径测试面板。
音频数据路径模拟插孔测试
音频数据路径模拟插孔测试通过模拟耳机路径测试基本音频功能。如果 DUT 没有模拟耳机插孔,则会自动授予通过。
所需外围设备
有关详情,请参阅音频环回插头。
下图显示了音频数据路径音频插孔测试在完成前后的屏幕
图 3. 音频数据路径模拟插孔测试已准备就绪,可以运行。
图 4. 音频数据路径模拟插孔测试成功完成后。
执行以下操作以运行音频数据路径模拟插孔测试
- 将环回插头插入 DUT 上的模拟耳机插孔。测试列表更新,以显示有效的数据路径。
- 使用音频环回校准面板设置适当的信号电平。
按开始。测试会逐步执行每个数据路径或配置,并测量信号幅度和抖动,以确定数据路径或配置是否正常运行。
您可以监控信号显示,以直观地确定信号是否看起来正确。测试会在每个数据路径或配置运行后显示结果。
测试序列完成后,信号显示和数据路径或配置列表将替换为显示结果的面板。失败测试部分的失败(例如幅度或抖动)将以红色文本显示,以及未满足的阈值或要求。
根据需要点击通过或失败。
音频数据路径扬声器和麦克风测试
音频数据路径扬声器和麦克风测试通过设备上的扬声器和麦克风路径测试基本音频功能。
所需外围设备
此测试不需要外部外围设备。
下图显示了音频数据路径扬声器和麦克风测试在完成前后的屏幕。错误以红色标记
图 5. 音频数据路径扬声器和麦克风测试已准备就绪,可以运行。
图 6. 音频数据路径扬声器和麦克风测试成功完成后。
要运行音频数据路径扬声器和麦克风测试,请执行以下操作
- 将 DUT 平放在安静环境中的桌子或桌面上。测试运行时的大声噪音可能会干扰对捕获音频的分析。
- 使用音频环回校准面板设置适当的信号电平。
按开始。测试会逐步执行每个数据路径或配置,测量信号幅度和抖动,以确定数据路径或配置是否正常运行。
您可以监控信号显示,以直观地确定信号是否看起来正确。测试会在测试序列进行时显示每个数据路径或配置的结果。
测试序列完成后,信号显示和数据路径或配置列表将替换为显示结果的面板。失败测试部分的失败(例如幅度或抖动)将以红色文本显示,以及未满足的阈值或要求。
根据需要点击通过或失败。
音频数据路径 USB 测试
音频数据路径 USB 测试通过 USB 音频外围设备(USB 耳机和 USB 音频接口)路径测试基本音频功能。
所需外围设备
有关详情,请参阅USB 音频接口。
下图显示了音频数据路径 USB 测试在完成前后的屏幕
图 7. 音频数据路径 USB 测试已准备就绪,可以运行。
图 8. 音频数据路径 USB 测试成功完成后。
要运行音频数据路径 USB 测试,请执行以下操作
将USB 音频外围设备连接到 DUT。必须为以下每种情况分别运行测试序列
- 插入了环回插头的 USB 转模拟耳机适配器
- 使用跳线将输出连接到输入的 USB 音频接口
使用音频环回校准面板设置适当的信号电平。
按开始。测试会逐步执行每个数据路径或配置,测量信号幅度和抖动,以确定数据路径或配置是否正常运行。
您可以监控信号显示,以直观地确定信号是否看起来正确。测试会在测试序列进行时显示每个数据路径或配置的结果。
测试序列完成后,信号显示和数据路径或配置列表将替换为显示结果的面板。失败测试部分的失败(例如幅度或抖动)将以红色文本显示,以及未满足的阈值或要求。
针对未经测试的 USB 外围设备重复步骤 1 到 3。
根据需要点击通过或失败。
解读测试结果
对于每个配置,输出端都会生成正弦波,并捕获输入。测试会尝试在输入端检测到与生成的音调频率相同的正弦波。
对于每个配置,都会显示幅度和抖动测量值,定义如下
幅度:输入正弦波的幅度(或电平)以类似于快速傅里叶变换 (FFT) 的方式进行分析。如果幅度太低,则可能意味着信号被阻止或特定通道未正常工作。这也可能意味着输出音量或输入增益太低。幅度必须达到一定水平才能通过测试。
抖动:还测量捕获的正弦波的相位相对于生成信号的相位。恒定的相对相位表示捕获的信号与生成的信号相对应。如果相对相位正在变化,则表示生成的信号已损坏,或者正在捕获其他信号(例如噪音)。相对相位的变化称为抖动。
如果输入只是捕获到很大的噪音,则幅度可能会很高,因为噪音可能包含所有正弦波频率。在这种情况下,分析器无法锁定生成的正弦波,从而表现出高抖动。
下表解释了幅度测量值和抖动测量值各种组合的结果
幅度 | 抖动 | 结果 | 解释 |
---|---|---|---|
高 | 低 | 通过 | 捕获了输出正弦波的清晰版本。 |
高 | 高 | 失败 | 捕获到很大的噪音或非常损坏的信号。 |
低 | 低 | 失败 | 以过低的电平录制清晰的信号。 |
低 | 高 | 失败 | 捕获到损坏或嘈杂的静音信号。 |
如果 CTS 验证程序测试失败,请在最新版本的 OboeTester 中运行数据路径测试。OboeTester 工具会打印详细报告,可以帮助您调试问题。