לקבלת השהיה הנמוכה ביותר האפשרית בשמע, אנו ממליצים להשתמש ב-Oboe .
אַבּוּב
Oboe משתמש באודיו מקורי ובנוי על AAudio עבור אנדרואיד 8.1+ ו-OpenSL ES עבור גרסאות ישנות יותר של אנדרואיד. כדי להשיג את זמן האחזור הנמוך ביותר האפשרי עבור מכשיר, הגדר את setPerformanceMode(oboe::PerformanceMode::LowLatency)
ו- setSharingMode(oboe::SharingMode::Exclusive)
. עיין במדריך התחלת העבודה , README.md
ובמדריך המלא למידע נוסף על אבוב. עיין באפליקציית Soundboard לקבלת אפליקציה לדוגמה באמצעות אבוב.
הערה: אם אתה משתמש ב-AudioTrack ליצירת זרמי שמע פלט ב-Java עבור יישומים רגישים לאחזור, השתמש במצב PERFORMANCE_MODE_LOW_LATENCY
.
רשימת בדיקה ליישום
כדי להשתמש באודיו מקורי של Android:
- הורד והתקן את ה- Android NDK .
- עקוב אחר המדריך לתחילת העבודה עבור אבוב.
- התקשר ל-
setPerformanceMode(oboe::PerformanceMode::LowLatency)
ול-setSharingMode(oboe::SharingMode::Exclusive)
ב-Oboe Builder. - השתמש בגודל המאגר המקורי המומלץ ובקצב הדגימה המוחזרים על ידי android.media.AudioManager.getProperty(java.lang.String) .
הערה: יש להשתמש באותו גודל מאגר וקצב דגימה גם עבור קלט.
- שמור על המטפלים בהתקשרות חוזרת קצרים, ללא שימוש מתפרץ במעבד או חסימה בלתי מוגבלת. הימנע מהיפוך עדיפות.
- שקול להשתמש באלגוריתמים שאינם חוסמים כדי לתקשר בין מטפלי התקשרות חוזרים בקלט ופלט, ובין המטפלים בהתקשרות חוזרת לבין שאר האפליקציה שלך.
משאבים אחרים
source.android.com
האתר source.android.com מיועד בעיקר ליצרני OEM הבונים מכשירי אנדרואיד, ולספקי SoC המספקים רכיבים ליצרני OEM אלה.
עם זאת, קיים שפע של מידע שימושי על חביון באתר זה, אז אולי כדאי שתבדוק אותו. עיין במאמרים ב- Audio latency.
אנדרואיד-ndk
אם יש לך שאלות לגבי אופן השימוש באודיו מקורי של אנדרואיד, תוכל לשאול בקבוצת הדיון android-ndk .
דווח על באגים באבוב
אם יש לך בעיות בשימוש ב-Oboe, אתה יכול להגיש באג .
סרטונים
- תחילת העבודה עם אבוב
- אודיו עם חביון נמוך - כי האוזניים שלך שוות את זה
- Android Dev Summit 2018.
- מנצח באנדרואיד - כיצד לבצע אופטימיזציה של אפליקציית אודיו לאנדרואיד
- אתגר מפתחי אנדרואיד 2018.
- אודיו עם ביצועים גבוהים באנדרואיד (Google I/O 2013)
- הסרטון כולו עוסק בחביון.
- בניית חוויות מולטימדיה נהדרות באנדרואיד (Google I/O 2014)
- 14 הדקות הראשונות עוסקות באודיו בכלל ובזמן השהיית קלט בפרט.
- אחזור אודיו: גדלי מאגר (100 ימים של Google Dev)
- מתאר את הקשר בין זמן השהיית אודיו, גדלי מאגר ותזמון משימות.