Pengukuran latensi audio

Latensi adalah metrik kinerja sistem yang penting. Meskipun ada banyak jenis metrik latensi audio , salah satu metrik yang berguna dan dipahami dengan baik adalah latensi bolak-balik , yang didefinisikan sebagai waktu yang diperlukan sinyal audio untuk memasukkan input perangkat seluler, diproses oleh aplikasi yang berjalan di aplikasi tersebut. prosesor, dan keluar dari output.

Latensi audio bolak-balik di perangkat

Gambar 1. Latensi audio bolak-balik pada perangkat: T output - T input

Halaman ini menyediakan pengukuran latensi audio bolak-balik untuk perangkat Nexus/Pixel tertentu dan versi platform Android.

Mengapa kami mengukur latensi

Google mengukur dan melaporkan latensi sehingga pengembang aplikasi Android memiliki data yang mereka perlukan untuk mengambil keputusan yang tepat mengenai latensi yang tersedia di perangkat sebenarnya. Dengan membagikan angka latensi untuk perangkat Nexus dan Pixel tertentu, kami berharap dapat mendorong seluruh komunitas Android untuk mengukur, memublikasikan, dan mengurangi latensi di semua perangkat Android. Silakan bergabung dengan kami dalam komitmen kami untuk mengurangi latensi audio!

Dampak aplikasi pada latensi

Pemrosesan sinyal dapat menambahkan jenis penundaan berikut ke latensi:

  • Algoritma . Penundaan ini melekat dan tidak berbeda-beda pada CPU. Contohnya adalah penundaan yang ditambahkan oleh filter respon impuls terbatas (FIR).
  • Komputasi . Penundaan ini terkait dengan jumlah siklus CPU yang dibutuhkan. Misalnya, pelemahan sinyal biasanya dilakukan dengan operasi perkalian yang memerlukan jumlah siklus yang bervariasi tergantung pada CPU.

Bagaimana kita mengukur

Kami melakukan pengukuran yang tercantum di halaman ini menggunakan dongle loopback audio Dr. Rick O'Rang dan tes umpan balik audio (efek Larsen) . Pengukuran mengasumsikan pemrosesan sinyal aplikasi menambahkan penundaan algoritmik nol dan penundaan komputasi mendekati nol.

Kami mengukur latensi bolak-balik melalui konektor headset karena beberapa alasan:

Latensi bolak-balik melalui konektor headset

Gambar 2. Latensi bolak-balik melalui konektor headset: T output - T input

  • Aplikasi musik penting (seperti gitar dan pemrosesan suara) menggunakan konektor headset.
  • Mengukur latensi bolak-balik mikrofon dan speaker pada perangkat dapat menjadi rumit, karena sulit untuk menjaga loop umpan balik di udara terbuka agar tidak memasuki osilasi yang tidak terkendali.
  • Transduser pada perangkat berukuran kecil dan mengorbankan respons frekuensi untuk mencapai ukurannya yang kecil. Sebagai kompensasinya, pemrosesan sinyal digital diterapkan tetapi meningkatkan penundaan algoritmik untuk jalur pada perangkat.

Ada kalanya latensi mikrofon dan speaker pada perangkat memang penting, namun biasanya latensi tersebut berlaku untuk satu arah, bukan bolak-balik. Teknik untuk mengukur latensi searah dijelaskan di Mengukur Latensi Keluaran dan Mengukur Latensi Masukan .

Contoh pengukuran

Pengukuran yang tercantum di bawah ini khusus untuk nomor build . Perangkat dicantumkan berdasarkan perkiraan urutan rilis awal dan berdasarkan versi platform; Anda juga dapat melihat latensi dalam bagan . Aplikasi pengujian menggunakan API audio asli Android berbasis OpenSL ES.

Model Platform
Versi: kapan
Membangun
nomor
Tingkat sampel
(Hz)
Ukuran buffer
(bingkai)
Ukuran buffer
(MS)
Perjalanan pulang pergi
latensi (ms)
± satu penyangga
Nexus Satu 2.3.6 GRK39F 44100 768 17.4 345
Perhubungan S 2.3.6 GRK39F 44100 1024 23.2 260
Perhubungan S 4.0.4 IMM76D 44100 1024 23.2 260
Perhubungan S 4.1.2 JZO54K 44100 880 20 210
Galaksi Perhubungan 4.0.1 ITL41D 44100 976 22.1 270
Galaksi Perhubungan 4.3 JWR66Y 44100 144 3.3 130
Nexus 4 4.2.2 JDQ39E 48000 240 5 195
Nexus 4 5.1 LMY47O 48000 240 5 58
Perhubungan 10 5.0.2 LRX22G 44100 256 5.8 36
Perhubungan 10 5.1 LMY47D 44100 256 5.8 35
Nexus 7
2013
4.3 JSR78D 48000 240 5 149
Nexus 7
2013
4.4 KRT16S 48000 240 5 85
Nexus 7
2013
5.0.2 LRX22G 48000 240 5 64
Nexus 7
2013
5.1 LMY47O 48000 240 5 55
Nexus 7
2013
6.0 MRA58K 48000 240 5 55
Nexus 5 4.4.4 KTU84P 48000 240 5 95
Nexus 5 5.0.0 LRX21O 48000 240 5 47
Nexus 5 5.1 LMY47I 48000 240 5 42
Nexus 5 6.0 MRA58K 48000 192 4 38
Perhubungan 9 5.0.0 LRX21L 48000 256 5.3 35
Perhubungan 9 5.0.1 LRX22C 48000 256 5.3 38
Perhubungan 9 5.1.1 LMY47X 48000 256 5.3 32
Perhubungan 9 6.0 MRA58K 48000 128 2.6 15
Perhubungan 6 5.0.1 LRX22C 48000 240 5 65
Perhubungan 6 5.1 LMY47I 48000 240 5 42
Perhubungan 6 6.0 MRA58K 48000 192 4 33
Perhubungan 5X 6.0 MDA89E 48000 192 4 18
Perhubungan 5X 8.0.0 OPR4.170623.020 48000 192 4 18
Perhubungan 5X 8.1.0 OPM2.171019.029.C1 48000 192 4 18
Perhubungan 6P 6.0 MDA89D 48000 192 4 18
Perhubungan 6P 8.0.0 OPR5.170623.014 48000 192 4 18
Perhubungan 6P 8.1.0 OPM5.171019.019 48000 192 4 18
Piksel 7.1.2 NHG47L 48000 192 4 18
Piksel 8.0.0 OPR3.170623.013 48000 192 4 18
Piksel 8.1.0 OPM1.171019.021 48000 192 4 18
Piksel XL 7.1.2 NHG47L 48000 192 4 18
Piksel XL 8.0.0 OPR3.170623.013 48000 192 4 18

Gambar 3. Latensi bolak-balik