זמן אחזור הוא מדד חשוב של ביצועי המערכת. יש סוגים רבים של מדדי זמן אחזור של אודיו, אבל מדד אחד שימושי וברור הוא זמן אחזור הלוך ושוב, שמוגדר כזמן שנדרש לאות אודיו להיכנס לקלט של מכשיר נייד, לעבור עיבוד באפליקציה שפועלת במעבד האפליקציות ולצאת מהפלט.

איור 1. זמן האחזור של האודיו הלוך ושוב במכשיר: Toutput - Tinput
בדף הזה מוצגים מדידות של זמן האחזור הלוך ושוב של אודיו במכשירי Nexus/Pixel נבחרים ובגרסאות של פלטפורמת Android נבחרות.
למה אנחנו מודדים את זמן האחזור
Google מודדת את זמן האחזור ומדווחת עליו כדי שמפתחי אפליקציות ל-Android יוכלו לקבל החלטות מושכלות לגבי זמן האחזור הזמין במכשירים בפועל. אנחנו משתפים את נתוני זמן האחזור של מכשירי Nexus ו-Pixel נבחרים, כדי לעודד את כל קהילת Android למדוד את זמן האחזור, לפרסם אותו ולצמצם אותו בכל מכשירי Android. אנחנו מחויבים לצמצם את זמן האחזור של האודיו, ועכשיו אנחנו מבקשים ממך להצטרף אלינו.
ההשפעה של האפליקציה על זמן האחזור
עיבוד האות יכול להוסיף את סוגי העיכובים הבאים לזמן האחזור:
- אלגוריתמי. העיכוב הזה הוא בלתי נמנע ולא משתנה בהתאם למעבד. דוגמה לכך היא העיכוב שמתווסף על ידי מסנן תגובת דחף סופית (FIR).
- חישובית. העיכוב הזה קשור למספר מחזורי המעבד הנדרשים. לדוגמה, פגיעה באות מתבצעת בדרך כלל באמצעות פעולת כפל שמתבצעת במספר מחזורים משתנה, בהתאם למעבד.
איך אנחנו מודדים
ביצענו את המדידות שמפורטות בדף הזה באמצעות מתאם ה-loopback של Dr. Rick O'Rang לאודיו ובדיקת משוב אודיו (אפקט Larsen). במדידות האלה, ההנחה היא שמעבד האותות של האפליקציה לא מוסיף עיכוב אלגוריתמי ועיכוב חישובי קרוב לאפס.
אנחנו מודדים את זמן האחזור הלוך ושוב דרך מחבר האוזניות מכמה סיבות:

איור 2. זמן אחזור הלוך ושוב דרך מחבר אוזניות: Tפלט - Tקלט
- אפליקציות מוזיקה חשובות (כמו גיטרה ועיבוד קול) משתמשות בחיבור של אוזניות.
- מדידת זמן האחזור הלוך ושוב של המיקרופון והרמקול במכשיר יכולה להיות מסורבלת, כי קשה למנוע ממעגל פידבק באוויר הפתוח להיכנס לתנודות בלתי מבוקרות.
- המרתנים במכשיר קטנים, והם משתמשים בתגובה לתדרים נמוכים כדי להגיע לגודל הקטן. כדי לפצות על כך, נעשה שימוש בעיבוד אותות דיגיטלי, אבל הוא מגביר את העיכוב האלגוריתמטי של הנתיב במכשיר.
יש מקרים שבהם זמן האחזור של המיקרופון והרמקול במכשיר כן משנה, אבל בדרך כלל מדובר בזמן אחזור לכיוון אחד, ולא הלוך ושוב. שיטות למדידת זמן אחזור חד-כיווני מתוארות במאמרים מדידת זמן האחזור של הפלט ומדידת זמן האחזור של הקלט.
מדידות לדוגמה
המדידות שמפורטות בהמשך ספציפיות למספר build. המכשירים מפורטים בסדר משוער של הגרסה הראשונית שלהם, לפי גרסת הפלטפורמה. אפשר גם להציג את זמני האחזור בתרשים. אפליקציית הבדיקה משתמשת ב-API האודיו המקורי של Android שמבוסס על OpenSL ES.
דגם | גרסת הפלטפורמה |
מספר Build |
תדירות הדגימה (Hz) |
גודל המאגר (מסגרות) |
גודל המאגר הזמני (אלפיות שנייה) |
זמן אחזור הלוך ושוב (ms) ± מאגר אחד |
---|---|---|---|---|---|---|
Nexus One | 2.3.6 | GRK39F | 44100 | 768 | 17.4 | 345 |
Nexus S | 2.3.6 | GRK39F | 44100 | 1024 | 23.2 | 260 |
Nexus S | 4.0.4 | IMM76D | 44100 | 1024 | 23.2 | 260 |
Nexus S | 4.1.2 | JZO54K | 44100 | 880 | 20 | 210 |
Galaxy Nexus | 4.0.1 | ITL41D | 44100 | 976 | 22.1 | 270 |
Galaxy Nexus | 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 |
Nexus 10 | 5.0.2 | LRX22G | 44100 | 256 | 5.8 | 36 |
Nexus 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 |
Nexus 9 | 5.0.0 | LRX21L | 48000 | 256 | 5.3 | 35 |
Nexus 9 | 5.0.1 | LRX22C | 48000 | 256 | 5.3 | 38 |
Nexus 9 | 5.1.1 | LMY47X | 48000 | 256 | 5.3 | 32 |
Nexus 9 | 6.0 | MRA58K | 48000 | 128 | 2.6 | 15 |
Nexus 6 | 5.0.1 | LRX22C | 48000 | 240 | 5 | 65 |
Nexus 6 | 5.1 | LMY47I | 48000 | 240 | 5 | 42 |
Nexus 6 | 6.0 | MRA58K | 48000 | 192 | 4 | 33 |
Nexus 5X | 6.0 | MDA89E | 48000 | 192 | 4 | 18 |
Nexus 5X | 8.0.0 | OPR4.170623.020 | 48000 | 192 | 4 | 18 |
Nexus 5X | 8.1.0 | OPM2.171019.029.C1 | 48000 | 192 | 4 | 18 |
Nexus 6P | 6.0 | MDA89D | 48000 | 192 | 4 | 18 |
Nexus 6P | 8.0.0 | OPR5.170623.014 | 48000 | 192 | 4 | 18 |
Nexus 6P | 8.1.0 | OPM5.171019.019 | 48000 | 192 | 4 | 18 |
Pixel | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
Pixel | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
Pixel | 8.1.0 | OPM1.171019.021 | 48000 | 192 | 4 | 18 |
Pixel XL | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
Pixel XL | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
איור 3. זמני אחזור הלוך ושוב