Учитывая сложность измерения задержки ввода или вывода по отдельности с помощью специализированного оборудования, задержка звука измеряется как задержка в обоих направлениях , которая представляет собой суммарную задержку ввода и вывода.
Техника
Следующие шаги автоматизированы тестовым программным обеспечением:
- Программа генерирует сложный тон, используя короткие импульсы белого шума различной длины, создавая легко узнаваемую структуру.
- Звуковой сигнал воспроизводится через аудиовыход устройства.
- В ходе теста аудиовыход замыкается на аудиовход.
- Для подключения динамика и микрофона дополнительное оборудование не требуется, поскольку встроенный микрофон записывает звук, воспроизводимый через встроенный динамик.
- Для аналоговых 3,5-мм разъемов используется специальный аудиоадаптер с обратной связью .
- Для подключения USB-портов используется либо адаптер USB на 3,5 мм в сочетании с петлевым адаптером, либо USB-аудиоинтерфейс с кабелями, соединяющими выход с входом.
- Тестовое программное обеспечение записывает зацикленный аудиопоток.
- Тестовое программное обеспечение использует полнодуплексный поток для синхронизации и одновременной записи выходного и входного аудиопотоков.
На следующем рисунке показана схема установки для тестирования:

Рисунок 1. Измерение задержки звука.
Задержка передачи сигнала в обоих направлениях определяется путем измерения временного смещения между выходом и входом с использованием алгоритма нормализованной корреляции для определения местоположения выходного тона в потоке входного сигнала.
На следующем рисунке показано, как рассчитывается задержка передачи данных в обоих направлениях:

Рисунок 2. Рассчитайте задержку в обоих направлениях.
Дополнительную информацию об оборудовании обратной связи см. в разделе «Аудиопериферийные устройства CTS Verifier» .
Тестовые приложения
В этом разделе описаны два основных приложения для измерения задержки. Оба используют идентичные методы и, как ожидается, дадут сопоставимые результаты.
OboeTester
OboeTester, набор тестов, разработанный для библиотеки Oboe, предлагает полезные тесты, в том числе измерение задержки передачи данных в обоих направлениях.
Приобрести OboeTester можно двумя способами:
- Соберите приложение из исходного кода, который можно найти на GitHub .
- Установите приложение из Google Play Store .
Выполните следующие действия, чтобы измерить задержку в приложении OboeTester:
- Запустите OboeTester.
- Нажмите «Задержка передачи туда и обратно» .
- Нажмите «ИЗМЕРИТЬ» .
- Проверьте значение
latency.msec, чтобы узнать задержку в обоих направлениях.
Этот тест можно запустить с помощью Intent для непрерывной интеграции .
Верификатор CTS
Проверьте задержку обратной связи аудиосигнала с помощью теста CTS Verifier, чтобы определить, соответствует ли задержка передачи данных требованиям CDD.