Задержка — важный показатель производительности системы. Несмотря на то, что существует множество видов показателей задержки звука , одним из полезных и хорошо понятных показателей является двусторонняя задержка , определяемая как время, необходимое аудиосигналу для поступления на вход мобильного устройства и обработки приложением, работающим в этом приложении. процессор и выходим из вывода.
На этой странице представлены измерения задержки звука в обоих направлениях для некоторых устройств Nexus/Pixel и версий платформы Android.
Почему мы измеряем задержку
Google измеряет и сообщает о задержке, чтобы разработчики приложений Android имели данные, необходимые для принятия обоснованных решений о доступной задержке на реальных устройствах. Делясь данными о задержке для некоторых устройств Nexus и Pixel, мы надеемся побудить все сообщество Android измерять, публиковать и снижать задержку на всех устройствах Android. Присоединяйтесь к нам в нашем стремлении уменьшить задержку звука!
Влияние приложения на задержку
Обработка сигнала может добавлять к задержке следующие типы задержек:
- Алгоритмический . Эта задержка присуща и не зависит от процессора. Примером может служить задержка, добавляемая фильтром с конечной импульсной характеристикой (FIR).
- Вычислительный . Эта задержка связана с количеством требуемых циклов ЦП. Например, ослабление сигнала обычно выполняется с помощью операции умножения, которая занимает различное количество циклов в зависимости от процессора.
Как мы измеряем
Мы выполнили измерения, перечисленные на этой странице, с использованием ключа звуковой обратной связи доктора Рика О'Ранга и теста звуковой обратной связи (эффект Ларсена) . Измерения предполагают, что обработка сигнала приложением добавляет нулевую алгоритмическую задержку и почти нулевую вычислительную задержку.
Мы измеряем задержку туда и обратно через разъем гарнитуры по нескольким причинам:
- Важные музыкальные приложения (например, гитара и обработка голоса) используют разъем гарнитуры.
- Измерение двусторонней задержки микрофона и динамика на устройстве может оказаться затруднительным, поскольку на открытом воздухе трудно уберечь петлю обратной связи от неконтролируемых колебаний.
- Преобразователи, встроенные в устройство, имеют небольшие размеры и жертвуют частотной характеристикой ради достижения небольшого размера. Для компенсации применяется цифровая обработка сигнала, но увеличивается алгоритмическая задержка для тракта на устройстве.
Бывают случаи, когда задержки микрофона и динамика на устройстве имеют значение, но обычно они относятся к одному направлению, а не туда и обратно. Методы измерения однонаправленной задержки описаны в разделах «Измерение задержки вывода» и «Измерение задержки ввода» .
Пример измерений
Размеры, перечисленные ниже, относятся к номеру сборки . Устройства перечислены примерно в порядке первоначальной версии и версии платформы; Вы также можете просмотреть задержки в виде диаграммы . Тестовое приложение использует собственный аудио 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 |