Задержка — важный показатель производительности системы. Несмотря на то, что существует много видов метрик задержки звука , одной полезной и хорошо понятной метрикой является задержка приема- передачи , определяемая как время, необходимое для того, чтобы аудиосигнал поступил на вход мобильного устройства и был обработан приложением, работающим в приложении. процессор и выйти из вывода.
На этой странице представлены измерения задержки звука туда и обратно для некоторых устройств Nexus/Pixel и версий платформы Android.
Почему мы измеряем задержку
Google измеряет и сообщает о задержке, чтобы разработчики приложений для Android имели данные, необходимые им для принятия обоснованных решений о доступной задержке на реальных устройствах. Сообщая показатели задержки для некоторых устройств Nexus и Pixel, мы надеемся побудить все сообщество Android измерять, публиковать и сокращать задержки на всех устройствах Android. Пожалуйста, присоединяйтесь к нам в нашем стремлении сократить задержку звука!
Влияние приложения на задержку
Обработка сигнала может добавить к задержке следующие типы задержек:
- Алгоритмический . Эта задержка присуща и не зависит от процессора. Примером может служить задержка, добавляемая фильтром с конечной импульсной характеристикой (КИХ).
- Вычислительный . Эта задержка связана с количеством требуемых циклов ЦП. Например, затухание сигнала обычно выполняется операцией умножения, которая занимает различное количество циклов в зависимости от процессора.
Как мы измеряем
Мы выполнили измерения, перечисленные на этой странице, с помощью звукового петлевого донгла доктора Рика О'Ранга и теста звуковой обратной связи (эффект Ларсена) . Измерения предполагают, что обработка сигналов приложения добавляет нулевую алгоритмическую задержку и почти нулевую вычислительную задержку.
Мы измеряем задержку приема-передачи через разъем для гарнитуры по нескольким причинам:
- Важные музыкальные приложения (такие как гитара и обработка голоса) используют разъем для гарнитуры.
- Измерение задержки приема-передачи микрофона и динамика на устройстве может быть обременительным, так как трудно предотвратить попадание в петлю обратной связи на открытом воздухе неконтролируемых колебаний.
- Преобразователи на устройстве имеют небольшие размеры и жертвуют частотной характеристикой, чтобы достичь их небольшого размера. Для компенсации применяется цифровая обработка сигнала, но она увеличивает алгоритмическую задержку для пути на устройстве.
Бывают случаи, когда задержки микрофона и динамика на устройстве имеют значение, но обычно они относятся к одному направлению, а не туда-обратно. Методы измерения однонаправленной задержки описаны в разделах « Измерение задержки вывода» и « Измерение задержки ввода» .
Пример измерений
Приведенные ниже размеры относятся к номеру сборки . Устройства перечислены в приблизительном порядке первоначального выпуска и версии платформы; Вы также можете просмотреть задержки на графике . В тестовом приложении используется собственный 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 | IMM76D | 44100 | 1024 | 23,2 | 260 |
Нексус С | 4.1.2 | JZO54K | 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 |
Нексус 6P | 6,0 | MDA89D | 48000 | 192 | 4 | 18 |
Нексус 6P | 8.0.0 | ОПР5.170623.014 | 48000 | 192 | 4 | 18 |
Нексус 6P | 8.1.0 | ОПМ5.171019.019 | 48000 | 192 | 4 | 18 |
Пиксель | 7.1.2 | NHG47L | 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 | NHG47L | 48000 | 192 | 4 | 18 |
Пиксель XL | 8.0.0 | ОПР3.170623.013 | 48000 | 192 | 4 | 18 |