Измерьте задержку звука

Учитывая сложность измерения задержки ввода или вывода изолированно с помощью специального оборудования, задержка звука измеряется как задержка приема-передачи , которая представляет собой объединенную задержку ввода и вывода.

Техника

Тестовое программное обеспечение автоматизирует следующие шаги:

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

На следующем рисунке показана схема испытания:

Измерение задержки звука

Рисунок 1. Измерение задержки звука.

Задержка приема-передачи определяется путем измерения смещения времени между выходом и входом с использованием алгоритма нормализованной корреляции для определения местоположения выходного тона во входном потоке.

На следующем рисунке показано, как рассчитывается задержка приема-передачи:

Рассчитать задержку приема-передачи

Рисунок 2. Расчет задержки приема-передачи.

Дополнительную информацию об оборудовании обратной связи см. в разделе «Аудиопериферийные устройства CTS Verifier» .

Тестовые приложения

В этом разделе описаны два основных приложения для измерения задержки. Оба используют идентичные методы и, как ожидается, дадут сопоставимые результаты.

OboeTester

OboeTester — тестовый набор, разработанный для библиотеки Oboe, предлагает ценные тесты, включая измерение задержки при передаче туда и обратно.

Вы можете получить OboeTester двумя способами:

  • Создайте приложение из исходного кода, который можно найти на GitHub .
  • Установите приложение из Google Play Store .

Чтобы измерить задержку в приложении OboeTester, выполните следующие действия:

  1. Запустите OboeTester.
  2. Нажмите ЗАДЕРЖКА ПЕРЕДАЧИ В ТУДА И ВСЮДУ .
  3. Нажмите ИЗМЕРИТЬ .
  4. Проверьте значение latency.msec для задержки приема-передачи.

Вы можете запустить этот тест, используя Intent for Continuous Integration .

CTS-верификатор

Чтобы определить, соответствует ли задержка приема-передачи требованиям CDD, см. тест задержки обратного сигнала CTS Verifier.