Google Cast להתקני אודיו תומך רק בהפעלת אודיו. במדריך הזה נסביר איך לבצע אופטימיזציה של אפליקציות Cast למכשירים עם אודיו בלבד ולנצל הביקושים המופחתים על ניצול רוחב הפס בזיכרון, במעבד (CPU) וברוחב הפס.
אפליקציה שתומכת ב-Google Cast לאודיו חייבת להעביר את: התעניינות ברכישה:
- ב-Google Cast להתקני אודיו לא מוצגים וידאו או גרפיקה. אבל, לפעמים בהתקני אודיו רבים יש מסך שמציג מטא-נתונים, כמו השמעה את המצב (מופעל או מושהה) ואת ההתקדמות. אסור להציג את האפליקציה מידע חיוני כזה על המשתמש רק בצד המקבל; מידע קריטי, ורוב ממשק המשתמש, חייבים להופיע על השולח.
- כדי להריץ אפליקציות של מקלט אינטרנט באופן תקין, Google Cast למכשירי אודיו עדיין צריך לעבד את הגרפיקה, גם אם היא לא מוצגת. מאז ייתכן שמכשירים לא תומכים בפעולות גרפיקה עם שיפור מהירות באמצעות חומרה, על האפליקציות המקלטות להימנע משימוש בפעולות עתירות גרפיקה כמו הדרגתיות של צבעים, סיבוב, מיזוג אלפא וציור מחדש אובייקטים כמו פסי התקדמות יותר מפעם אחת בשנייה.
- Google Cast למכשירי אודיו תומך רק ב-Widevine for Digital Rights תוכן המוגן על-ידי ניהול (DRM).
- ברוב התקני אודיו, אפליקציית השולח שולטת ב-Google Cast טווח עוצמת הקול המלא של המכשיר (למשל, רמקול), לא רק עוצמת הקול ��ל מקור האודיו בטלוויזיה, כמו במכשיר Chromecast.
- בנוסף לשליטה בהפעלה באמצעות המכשיר השולח (טלפון, לדוגמה), האפליקציה צריכה לספק כדי לשלוט בהפעלה באמצעות הבקרים של המכשיר עצמו, כמו שלט רחוק, לחצנים במכשיר אפליקציה מרוחקת חיצונית.
- ייתכן ש-Google Cast להתקן אודיו תומך בהצגת מטא-נתונים של תוכן עם מסך LCD קטן, פלט HDMI (למקרני קול או אודיו-וידאו מותאם אישית), או אפליקציה מרוחקת חיצונית, בהתאם ממשק המשתמש של המכשיר.
פיתוח
השלב הראשון בפיתוח אפליקציה להפעלת Cast לתמיכה ב-Google Cast לאודיו הוא לפתח אפליקציה להפעלת Cast בשביל אודיו-וידאו, ולוודא שהיא פועלת Chromecast. המסמך הזה מניח שפיתחתם ובדקתם אפליקציה כזו.
אפליקציה מסוימת עשויה לתמוך גם באודיו-וידאו וגם במכשירים עם אודיו בלבד. הוא צריך לדעת כשהוא מעביר נתונים לאחד מהשניים ונוקטים אמצעים כדי להבטיח חוויית המשתמש בתרחיש הנתון.
לדוגמה, אפליקציות כפולות של וידאו ואודיו (כמו הפעלה מקומית או הפעלת קובץ NAS) אפליקציות) לאפשר העברה למכשירים עם אודיו בלבד כדי לתמוך קובצי אודיו מופעלים, אבל האפליקציה לא צריכה לאפשר למשתמשים לשלוח קובצי וידאו למכשיר עם אודיו בלבד. האפליקציה יכולה להשתמש ממשקי API של יכולות המכשיר לשולחים שמתואר בהמשך כדי לקבוע את התוכן המתאים למכשיר.
כדי לתמוך ב-Google Cast לאודיו, האפליקציה צריכה לבצע את הפעולות הבאות:
תמיכה באודיו בלבד: סטרימינג של מוזיקה, קובצי אודיו, רדיו וכו'. שמשודרים אל האפליקציה 'מקלט אינטרנט' לא יכול להיות סטרימינג של וידאו. כמו כן, יש להימנע סטרימינג של גרפיקה ותמונות לשיפור זמן ההפעלה של האפליקציה ושימוש בזיכרון. פרטים נוספים מופיעים בקטע הנחיות לשימוש בזיכרון שבהמשך.
אפשר להפעיל אותם כרגיל במכשירי Cast לאודיו, וגם ב-Chromecast רגיל.
יכולות המכשיר
האפליקציה שלך יכולה לדעת אם היא פועלת במכשיר עם אודיו בלבד בגלל ממשקי API של יכולות המכשיר, שזמינים מהמכשיר עצמו או דרך השולח או ממשקי ה-API של המקלט.
כותרת HTTP של המכשיר
כותרת ה-HTTP CAST-DEVICE-CAPABILITIES
שסופקה על ידי מכשיר Cast במהלך
מתארת את יכולות המכשיר. המכשיר שולח בקשה
עם הכותרת הזו לשרת שמארח את אפליקציית Web Acceptr. הכותרת של
מכשיר עם אודיו בלבד מתאר את יכולות המכשיר עם
CAST-DEVICE-CAPABILITIES: {"display_supported":false}
כשהשרת מקבל את הבקשה מהמכשיר, אפשר להשתמש מידע בכותרת הזו כדי להפנות את הבקשה לאפליקציה של מקלט האינטרנט, מותאם להתקני אודיו.
ממשק API של WebReceiver
אפשר לקבל את אותן תכונות של המכשיר בקריאה ל-CastReceiverManager.getDeviceCapabilities()
כשהאפליקציה של מקלט האינטרנט נטענת.
מידע נוסף זמין במאמר יכולות המכשיר מידע.
ממשקי API לשולחים
כל אחד מממשקי ה-API של שליחת Cast כוללים גם את המידע על יכולות המכשיר. כך, אפליקצי��ת השולח תקבע איזה סוג מדיה לשלוח למקבל התשלום. אם האפליקציה תומכת גם באודיו וגם בווידאו, היא יכולה למנוע שליחה של תוכן וידאו אל מכשירים עם אודיו בלבד. בנוסף, האפליקציה יכולה לשלוט בעוצמת הקול באמצעות השיטה שמתאימות למכשיר, כפי שמתואר ברשימת המשימות לעיצוב. ממשקי ה-API הבאים של יכולות המכשיר לשולחים:
- Android: CastDevice.hasCapabilities
- iOS: deviceCapabilities
- Chrome: chrome.cast.Capability
הנחיות לשימוש בזיכרון
אפליקציות של מקלטי אינטרנט שפועלות בהתקני אודיו חייבות לנהל את השימוש בזיכרון באופן הבא:
- כדי לצמצם את הזיכרון, מומלץ לא להוריד נכסי תמונה או נכסי גרפיקה או להשתמש בהם טביעת הרגל ולקצר את משך הזמן עד להתחלת ההפעלה.
- כשמשתמשים בתוספי מקור מדיה (MSE), אפליקציות חייבות להגביל את הסטרימינג ל-2MB. אם משתמשים בספריית Media Player (MPL), הגודל של מאגר הנתונים הזמני של השידור כבר מוגדר על ידי MPL.
- כשמשתמשים ב-HTMLMediaElement, גודל מאגר הנתונים הזמני של האפליקציה מוגדר של Chrome לפי קצב הסטרימינג. הגבלת קצב העברת הנתונים של האודיו ל-2 מגה-ביט לכל שנייה, שתומך בכל רכיבי הקודק שמתוארים מדיה נתמכת (עד 48KHz/16bit).
בקרת עוצמת הקול
ברוב התקני אודיו, אפליקציית השולח שולטת את טווח עוצמת הקול המלא של המכשיר, לא רק את עוצמת הקלט של מקור האודיו, כמו מכשיר Chromecast כלומר, המרווחי זמן ��ל ��י��ו�� ��וצמת הק��ל צריכים להיות קטנים יותר אפליקציות עם אודיו בלבד. כדי לקבל הנחיות לגבי מתן הנחיות, אפשר לעיין במסמכים הבאים בקרת עוצמת הקול באפליקציה:
- אמצעי בקרה של עוצמת הקול לשולחים ב רשימת משימות לעיצוב
- נפח השולח ב-Android
- נפח השולחים ב-iOS
- נפח השולח באינטרנט
ממשק השליטה במכשירים
ל-Google Cast עבור התקני אודיו עשויים להיות פקדי הפעלה משלהם (כמו
לחצנים, שלטים רחוקים). הקבצים האלה משתמשים בהודעות של הפעלת מדיה שהוגדרו עבור
מרחב השמות urn:x-cast:com.google.cast.media
, כפי שמתואר ב
Media הפעלת Messages, כדי לשלוט בהפעלה
באפליקציה של המקבל. האפליקציה של המקבל צריכה לתמוך
הודעות אלה להפעלת מדיה כדי לתמוך בפקדי ההפעלה של המכשיר.
בנוסף, אפליקציית השולח צריכה לתמוך בהודעות מנמען לשולח כך שאם המשתמש משנה את מצב המדיה באמצעות לחצני המכשיר, האפליקציה השולח יכולה לקבל הודעת סטטוס מהנמען ולעדכן את ממשק המשתמש בהתאם.
מסך המכשיר
מכשיר Google Cast להתקן אודיו עשוי להכיל מסך LCD במכשיר או אפליקציית בקרה ספציפית למכשיר שמציגה מטא-נתונים של מדיה. המקבל שלך האפליקציה חייבת לספק את המטא-נתונים האלה עבור כל טראקים של אודיו ולוודא שהיא מסונכרנת בתוכן שמושמע כרגע כדי להבטיח שהמטא-נתונים יוצגו המתאים במסך. אם האפליקציה משתמשת במטא-נתונים מותאמים אישית, עליו לספק גם את המטא-נתונים הרגילים של האודיו (שם הטראק, שם האומן, אלבום title, וכו') כפי שמתואר לגבי כל אחת מהפלטפורמות שבהמשך.
הנמען מקבל את המטא-נתונים מהשולח כשהוא טוען את המדיה. לחשבון באפליקציית השולח, באמצעות הפקודה לטעינת המדיה במקלט, עליכם לציין את השדות המתוארים למטה כך שהמטא-נתונים יוצגו Google Cast למכשיר אודיו. משתמשים בממשקי ה-API הבאים:
Android
MediaMetadata
עםMEDIA_TYPE_MUSIC_TRACK
וגם:iOS
GCKMediaMetadata
עםGCKMediaMetadataType
GCKMediaMetadataTypeMusicTrack
וגם:Chrome
MediaInfo
עםMusicTrackMediaMetadata
וגם:
אם אפליקציית Cast מנהלת תור מדיה במקלט או בענן,
מקלט האינטרנט חייב לשדר עדכוני סטטוס מדיה באמצעות
מרחב השמות urn:x-cast:com.google.cast.media
, כך שכל השולחים
מסונכרן.
הרשמה
עליך לרשום את Google Cast למכשיר אודיו לצורך בדיקה והרשמה כדי לתמוך ב-Google Cast עבור התקני אודיו, באמצעות Developer Console של Google Cast SDK.
- מידע נוסף זמין בקטע מכשירים על רישום מכשירים.
- צריך לסמן את התיבה יש תמיכה בהעברה (cast) למכשירים עם אודיו בלבד, אם רישום האפליקציה כדי לאפשר לאפליקציה לגלות את Google Cast והתקני אודיו. מידע נוסף זמין בקטע רישום הבקשה.
צריך לבחור גם באפליקציות שלא פורסמו, כמו אפליקציות שמשמשות לבדיקה אפשרות לתמוך במכשירים עם אודיו בלבד כדי שהאפליקציה תוכל לגלות מכשירים עם אודיו בלבד.
Google Cast לאודיו 2.0
Google Cast for Audio (GC4A) 2.0 היא פלטפורמת האודיו החדשה של Cast מדור קודם. שנועד לטרגט מכשירים עם זיכרון נמוך, להרחיב את הסביבה העסקית של מכשירים יכול לשדר את התוכן שלכם. מערכת GC4A 2.0 מטרגטת פלטפורמות אודיו, ולכן ה-Web API ההגדרה תוקטן כדי להתאים למכשירים ללא תצוגה. אנחנו משיקים את GC4A 2.0 לממשק חדש וברמקולים קיימים שתומכים בהעברה (cast).
בדיקה וניפוי באגים
מאחר שכל הרמקולים הנתמכים יעברו ל-GC4A 2.0, חשוב מפתחי אפליקציות אודיו בודקים את האפליקציות שלהם ב-GC4A 2.0. אפשר לבדוק את אפליקציית Cast עבור GC4A 2.0 ברמקולי Bose Wi-Fi בסביבת ייצור, JBL Charge 5 Wi-Fi, JBL Authentics, Cambridge Audio, Teuful Motiv Home, LG 2024 Soundbars.
GC4A 2.0 לא תומך בכלי לניפוי באגים מרחוק של Chrome. אם רוצים לנפות באגים Google ממליצה להשתמש ב-Cast Debug Logger.
מקרי בדיקה בסיסיים מומלצים
מומלץ לבדוק את כל תכונות האפליקציה ב-GC4A 2.0. חשוב לכלול בדיקה של הפעלה של כל סוגי המדיה (פודקאסטים, סטרימינג וכו'), השהיה, קרצוף, דילוג, שינוי פלייליסטים, עצירה וחיבור מחדש של Cast.
ממשקי API נתמכים
GC4A 2.0 תומך בממשקי ה-API הבאים:
- HTML
- JavaScript ECMA 6
- DOMParser
- XMLSerializer
- מסמכים וכיתות משנה
- DocumentFragment
- HTMLMediaElement ו- HTMLAudioElement
- HTMLVideoElement (ניתן להפעיל תוכן אודיו בלבד)
- HTMLScriptElement
- HTMLBaseElement
- HTMLTemplateElement
- רכיבים מותאמים אישית
- DOM של הצללה
- מודולים של סקריפט / אסינכרוניים / דחויים
- שליפה / XHR
- WebSocket
- MessagePort
- עוגיות
- MSE (תוספי מקור מדיה)
- EME (תוספי מדיה מוצפנים)
- אחסון מקומי / סשן
ב-GC4A 2.0 אין תמיכה בפלטפורמות הבאות:
- ייבוא מודול דינמי (הפרטים יתווספו ב-2024)
- CSS
- IFrame
- TextTracks
יצירת קשר
צריך ליצור קשר עם gc4a-support-external@google.com אם דרושה לך עזרה בהגדרה לצורך בדיקה, או שאין לך אפשרות להשתמש ברמקול של Bose.