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

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

Задержка звука в обе стороны на устройстве

Рисунок 1. Задержка звука в обоих направлениях на устройстве: выход T — вход T

На этой странице представлены измерения задержки звука в обоих направлениях для некоторых устройств Nexus/Pixel и версий платформы Android.

Почему мы измеряем задержку

Google измеряет и сообщает о задержке, чтобы разработчики приложений Android имели данные, необходимые для принятия обоснованных решений о доступной задержке на реальных устройствах. Делясь данными о задержке для некоторых устройств Nexus и Pixel, мы надеемся побудить все сообщество Android измерять, публиковать и снижать задержку на всех устройствах Android. Присоединяйтесь к нам в нашем стремлении уменьшить задержку звука!

Влияние приложения на задержку

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

  • Алгоритмический . Эта задержка присуща и не зависит от процессора. Примером может служить задержка, добавляемая фильтром с конечной импульсной характеристикой (FIR).
  • Вычислительный . Эта задержка связана с количеством требуемых циклов ЦП. Например, ослабление сигнала обычно выполняется с помощью операции умножения, которая занимает различное количество циклов в зависимости от процессора.

Как мы измеряем

Мы выполнили измерения, перечисленные на этой странице, с использованием ключа звуковой обратной связи доктора Рика О'Ранга и теста звуковой обратной связи (эффект Ларсена) . Измерения предполагают, что обработка сигнала приложением добавляет нулевую алгоритмическую задержку и почти нулевую вычислительную задержку.

Мы измеряем задержку туда и обратно через разъем гарнитуры по нескольким причинам:

Задержка в обе стороны через разъем гарнитуры

Рис. 2. Задержка в обоих направлениях через разъем гарнитуры: выход T — вход T

  • Важные музыкальные приложения (например, гитара и обработка голоса) используют разъем гарнитуры.
  • Измерение двусторонней задержки микрофона и динамика на устройстве может оказаться затруднительным, поскольку на открытом воздухе трудно уберечь петлю обратной связи от неконтролируемых колебаний.
  • Преобразователи, встроенные в устройство, имеют небольшие размеры и жертвуют частотной характеристикой ради достижения небольшого размера. Для компенсации применяется цифровая обработка сигнала, но увеличивается алгоритмическая задержка для тракта на устройстве.

Бывают случаи, когда задержки микрофона и динамика на устройстве имеют значение, но обычно они относятся к одному направлению, а не туда и обратно. Методы измерения однонаправленной задержки описаны в разделах «Измерение задержки вывода» и «Измерение задержки ввода» .

Пример измерений

Размеры, перечисленные ниже, относятся к номеру сборки . Устройства перечислены примерно в порядке первоначальной версии и версии платформы; Вы также можете просмотреть задержки в виде диаграммы . Тестовое приложение использует собственный аудио API Android на основе OpenSL ES.

Модель Платформа
версия
Строить
число
Частота дискретизации
(Гц)
Размер буфера
(кадры)
Размер буфера
(РС)
Поездка туда и обратно
задержка (мс)
± один буфер
Нексус Один 2.3.6 ГРК39Ф 44100 768 17,4 345
Нексус С 2.3.6 ГРК39Ф 44100 1024 23.2 260
Нексус С 4.0.4 ИММ76Д 44100 1024 23.2 260
Нексус С 4.1.2 ДЖЗО54К 44100 880 20 210
Галактика Нексус 4.0.1 ITL41D 44100 976 22.1 270
Галактика Нексус 4.3 JWR66Y 44100 144 3.3 130
Нексус 4 4.2.2 JDQ39E 48000 240 5 195
Нексус 4 5.1 LMY47O 48000 240 5 58
Нексус 10 5.0.2 LRX22G 44100 256 5,8 36
Нексус 10 5.1 LMY47D 44100 256 5,8 35
Нексус 7
2013
4.3 JSR78D 48000 240 5 149
Нексус 7
2013
4.4 КРТ16С 48000 240 5 85
Нексус 7
2013
5.0.2 LRX22G 48000 240 5 64
Нексус 7
2013
5.1 LMY47O 48000 240 5 55
Нексус 7
2013
6.0 МРА58К 48000 240 5 55
Нексус 5 4.4.4 КТУ84П 48000 240 5 95
Нексус 5 5.0.0 LRX21O 48000 240 5 47
Нексус 5 5.1 LMY47I 48000 240 5 42
Нексус 5 6.0 МРА58К 48000 192 4 38
Нексус 9 5.0.0 LRX21L 48000 256 5.3 35
Нексус 9 5.0.1 LRX22C 48000 256 5.3 38
Нексус 9 5.1.1 LMY47X 48000 256 5.3 32
Нексус 9 6.0 МРА58К 48000 128 2.6 15
Нексус 6 5.0.1 LRX22C 48000 240 5 65
Нексус 6 5.1 LMY47I 48000 240 5 42
Нексус 6 6.0 МРА58К 48000 192 4 33
Нексус 5X 6.0 MDA89E 48000 192 4 18
Нексус 5X 8.0.0 ОПР4.170623.020 48000 192 4 18
Нексус 5X 8.1.0 ОПМ2.171019.029.С1 48000 192 4 18
Нексус 6П 6.0 МДА89Д 48000 192 4 18
Нексус 6П 8.0.0 ОПР5.170623.014 48000 192 4 18
Нексус 6П 8.1.0 ОПМ5.171019.019 48000 192 4 18
Пиксель 7.1.2 НХГ47Л 48000 192 4 18
Пиксель 8.0.0 ОПР3.170623.013 48000 192 4 18
Пиксель 8.1.0 ОПМ1.171019.021 48000 192 4 18
Пиксель XL 7.1.2 НХГ47Л 48000 192 4 18
Пиксель XL 8.0.0 ОПР3.170623.013 48000 192 4 18

Рисунок 3. Задержки в обоих направлениях