ניהול משאבי אודיו במהלך השהיה

כדי להבטיח את יציבות המערכת ואת היכולת להיכנס למצבי צריכת חשמל נמוכה כמו השעיה ל-RAM‏ (S2R) או השעיה לדיסק (S2D), חשוב מאוד לנהל את משאבי האודיו בצורה נכונה במהלך מעברים בין מצבי צריכת חשמל.

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

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

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

הטמעת ניהול צריכת החשמל

כדי להטמיע ניהול צריכת חשמל חזק ב-Audio HAL, פועלים לפי השלבים הבאים:

  1. זיהוי שינויים במצב ההפעלה של המערכת, במיוחד המעבר למצב השהיה.

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

    • משחררים זרמי פלט של חומרה ומשליכים נתונים נכנסים ממסגרת האודיו.
    • שחרור של זרמי קלט בחומרה ושליחה של אודיו שקט למסגרת.

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

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

ההשפעה על אפליקציות

הניהול של משאבי אודיו ברמת HAL במהלך השהיה משפיע על האפליקציות בדרכים הבאות:

  • השהיה שקופה: באפליקציות שמשתמשות במיקרופון, השהיית המערכת (כניסה למצב S2D או S2R) שקופה.
  • השתקת האודיו במהלך המעבר: אחרי הפעלת המעבר להשעיה, הזרמים הפעילים מושתקים ב-HAL. האפליקציה ממשיכה לפעול, אבל היא מקבלת רק אודיו מושתק במהלך ההשהיה.
  • המשך אוטומטי: אחרי שהמערכת חוזרת לפעולה, האפליקציה מתחילה אוטומטית לקבל או לשלוח נתוני אודיו בזמן אמת, בלי שנדרשת פעולה של השגת משאבים מחדש או שחזור.