התקני אודיו

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

באפליקציה שתומכת ב-Google Cast לאודיו צריך להביא בחשבון את הדברים הבאים:

  • במכשירי אודיו עם Google Cast לא מוצגים סרטונים או גרפיקה. עם זאת, במכשירי אודיו רבים יש מסך שבו מוצגים מטא-נתונים, כמו מצב ההפעלה (הפעלה או השהיה) וההתקדמות. אסור שהאפליקציה תציג מידע חיוני כזה של משתמשים רק אצל הנמען. המידע החיוני ורובה של ממשק המשתמש צריכים להופיע אצל השולח.
  • כדי להפעיל אפליקציות של Web Receiver כראוי, Google Cast למכשירי אודיו עדיין צריך לבצע רינדור של גרפיקה, גם אם היא לא מוצגת. יכול להיות שמכשירים לא תומכים בפעולות גרפיקה שמואצות בחומרה, ולכן באפליקציות המקבלות צריך להימנע משימוש בפעולות גרפיקה עתירות, כמו שימוש בצבעים מדורגים, סיבוב, שילוב אלפא ורישום מחדש של אובייקטים גדולים כמו סרגל התקדמות יותר מפעם בשנייה.
  • Google Cast למכשירי אודיו תומך ב-Widevine רק לתוכן שמוגן באמצעות ניהול זכויות דיגיטלי (DRM).
  • ברוב המכשירים עם Google Cast אודיו, אפליקציית השולח קובעת את כל טווח עוצמת הקול של המכשיר (רמקול, למשל), ולא רק את עוצמת הקול של קלט מקור האודיו לטלוויזיה, כמו במכשיר Chromecast.
  • בנוסף לשליטה בהפעלה באמצעות מכשיר השולח (טלפון, למשל), יכול להיות שהאפליקציה תצטרך לספק אפשרות לשלוט בהפעלה באמצעות אמצעי הבקרה של המכשיר, כמו שלט רחוק, לחצנים במכשיר או אפליקציה חיצונית לשלט רחוק.
  • מכשיר Google Cast לאודיו עשוי לתמוך בהצגת מטא-נתונים של תוכן באמצעות מסך LCD קטן, יציאת HDMI (לרמקולים עם בס או למקלטי אודיו-וידאו) או אפליקציה חיצונית מרחוק, בהתאם לממשק המשתמש הספציפי של המכשיר.

פיתוח

השלב הראשון בפיתוח אפליקציית Cast שתומכת ב-Google Cast לאודיו הוא לפתח אפליקציית Cast לאודיו-וידאו ולוודא שהיא פועלת ב-Chromecast. המסמך הזה מבוסס על ההנחה שפיתחתם אפליקציה כזו ובדקתם אותה.

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

לדוגמה, אפליקציות עם תמיכה בסרטונים ובאודיו (כמו אפליקציות להפעלת קבצים מקומיים או קבצים ב-NAS) צריכות לאפשר העברה (cast) למכשירים עם תמיכה באודיו בלבד כדי לתמוך בהפעלת קובצי אודיו, אבל האפליקציה לא אמורה לאפשר למשתמש לשלוח קובצי וידאו למכשיר עם תמיכה באודיו בלבד. האפליקציה יכולה להשתמש בממשקי ה-API של יכולות המכשיר לשולחים שמתוארים בהמשך כדי לקבוע את התוכן שמתאים למכשיר.

כדי לתמוך ב-Google Cast לאודיו, האפליקציה צריכה:

  • תמיכה באודיו בלבד: סטרימינג של מוזיקה וקובצי אודיו, רדיו וכו'. המדיה שמשודרת לאפליקציית Web Receiver לא יכולה להיות סטרימינג של וידאו. בנוסף, כדאי להימנע מהעברה בסטרימינג של גרפיקה ותמונות כדי לשפר את זמן ההפעלה של האפליקציה ואת השימוש בזיכרון. הנחיות לשימוש בזיכרון

  • הפעלה כצפוי במכשיר Cast for Audio וגם ב-Chromecast רגיל.

יכולות המכשיר

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

כותרת HTTP של המכשיר

כותרת ה-HTTP‏ CAST-DEVICE-CAPABILITIES שסופקו על ידי מכשיר ה-Cast במהלך ההפעלה של האפליקציה מתארת את יכולות המכשיר. המכשיר שולח בקשה עם הכותרת הזו לשרת שמארח את אפליקציית Web Receiver. הכותרת של מכשיר אודיו בלבד מתארת את יכולות המכשיר באמצעות CAST-DEVICE-CAPABILITIES: {"display_supported":false}.

כשהבקשה מהמכשיר תתקבל בשרת, תוכלו להשתמש במידע שבכותרת הזו כדי להפנות את הבקשה לאפליקציית Web Receiver שמותאמת למכשירי אודיו.

Web Receiver API

אפשר לקבל את אותו אובייקט של יכולות המכשיר על ידי קריאה ל-CastReceiverManager.getDeviceCapabilities() כשאפליקציית Web Receiver נטענת.

מידע נוסף זמין במאמר יכולות המכשיר.

ממשקי API לשולחים

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

הנחיות לשימוש בזיכרון

אפליקציות Web Receiver שפועלות במכשירי אודיו צריכות לנהל את השימוש בזיכרון באופן הבא:

  • כדי לצמצם את טביעת הזיכרון ולקצר את הזמן עד שההפעלה תתחיל, מומלץ להימנע משימוש בנכסי תמונות או גרפיקה או מהורדה שלהם.
  • כשמשתמשים בתוספים של מקורות מדיה (MSE), האפליקציות צריכות להגביל את מאגר הנתונים של הסטרימינג ל-2MB. אם משתמשים בספריית Media Player Library‏ (MPL), גודל מאגר הנתונים הזמני של הסטרימינג באפליקציה כבר מוגדר על ידי MPL.
  • כשמשתמשים ב-HTMLMediaElement, גודל מאגר הנתונים הזמני של הסטרימינג באפליקציה מוגדר על ידי Chrome על סמך קצב הסטרימינג. להגביל את קצב העברת הנתונים של האודיו ל-2 מגהביט לשניה, שתומך בכל הקודקים שמפורטים בקטע מדיה נתמכת (עד 48KHz/16bit).

בקרת עוצמת הקול

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

ממשק השליטה במכשירים

יכול להיות שלמכשירי אודיו עם Google Cast יהיו אמצעי בקרה משלהם להפעלה (כמו לחצנים או שלטים רחוקים). הם משתמשים בהודעות של הפעלת מדיה שמוגדרות למרחב השמות urn:x-cast:com.google.cast.media, כפי שמתואר בקטע הודעות של הפעלת מדיה, כדי לשלוט בהפעלה באפליקציית המכשיר המקבל. כדי לתמוך בפקדי ההפעלה של המכשיר, אפליקציית המקלט צריכה לתמוך בהודעות האלה על הפעלת מדיה.

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

מסך המכשיר

מכשיר Google Cast לאודיו עשוי לכלול מסך LCD או אפליקציית בקרה ספציפית למכשיר שמציגה מטא-נתונים של מדיה. כדי שהמטא-נתונים יוצגו בצורה תקינה במסך, אפליקציית המקלט צריכה לספק את המטא-נתונים האלה לכל הטראקים של האודיו ולוודא שהם מסונכרנים עם התוכן שמשודר כרגע. אם האפליקציה משתמשת במטא-נתונים מותאמים אישית, היא צריכה לספק גם את המטא-נתונים הרגילים של האודיו (שם הטראק, שם האומן, שם האלבום וכו') כפי שמתואר בהמשך לגבי כל פלטפורמה.

הנמען מקבל את המטא-נתונים מהשולח כשהוא טוען את המדיה. באפליקציה השולחת, בפקודה לטעינה של המדיה בנמען, צריך לציין את השדות שמפורטים בהמשך כדי שהמטא-נתונים יוצגו במכשיר Google Cast for Audio. משתמשים בממשקי ה-API הבאים:

אם אפליקציית Cast מנהלת תור מדיה במכשיר הקולט או בענן, מכשיר ה-Web Receiver צריך לשדר את כל עדכוני סטטוס המדיה באמצעות מרחב השמות urn:x-cast:com.google.cast.media כדי שכל השולחים יסתנכרנו.

הרשמה

כדי לבדוק את המכשיר של Google Cast for Audio, צריך לרשום אותו ולרשום את האפליקציה שלכם כך שתתמוך ב-Google Cast for Audio. לשם כך, משתמשים במסוף הפיתוח של Google Cast SDK.

  • מידע נוסף על רישום מכשירים זמין במאמר מכשירים.
  • כדי לאפשר לאפליקציה לזהות מכשירי אודיו עם Google Cast, צריך לסמן את התיבה Supports casting to audio-only devices (תמיכה בהעברה (cast) למכשירי אודיו בלבד) כשרושמים את האפליקציה. איך רושמים את האפליקציה

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

Google Cast for Audio 2.0

Google Cast for Audio‏ (GC4A) 2.0 היא פלטפורמת האודיו של Cast מדור הבא, שנועדה לטרגט מכשירים עם נפח זיכרון נמוך כדי להרחיב את הסביבה העסקית של מכשירים שיכולים להעביר את התוכן שלכם בסטרימינג. מכיוון ש-GC4A 2.0 מטרגט פלטפורמות אודיו, קבוצת ה-API לאינטרנט מצטמצמת כדי להתאים למכשירים ללא מסך. אנחנו משיקים את GC4A 2.0 לרמקולים חדשים וקיימים שתומכים בהעברה (cast).

בדיקה וניפוי באגים

כל הרמקולים הנתמכים יעברו ל-GC4A 2.0, ולכן חשוב שמפתחי אפליקציות אודיו יבדקו את האפליקציות שלהם ב-GC4A 2.0. אתם יכולים לבדוק את אפליקציית Cast ל-GC4A 2.0 בכל אחד מהמכשירים עם GC4A 2.0 שמפורטים כאן.

ב-GC4A 2.0 אין תמיכה ב-Chrome Remote Debugger. כדי לנפות באגים באפליקציה, Google ממליצה להשתמש ב-Cast Debug Logger.

מכשירים זמינים עם GC4A 2.0

זוהי רשימה חלקית של מכשירים עם GC4A 2.0:

  • Bose: רמקולים עם Wi-Fi וסאונדברים חכמים
  • JBL: ‏ Charge 5 Wi-Fi / ‏ Boombox 3 Wi-Fi / ‏ Authentics 200,‏ 300 ו-500
  • Samsung: ‏ Music Frame / מקרני קול
  • LG: פסאונד בר S90TY/‏SG10TY/‏SE70Q/‏S80Q/‏S90Q
  • Bang & Olufsen Beosound 2 / Beocore Connect
  • Sonoro Maestro 2 / Meisterstruck 2
  • Cambridge Audio MXN10
  • KEF LS60 / LSX II
  • Teufel Motiv Home
  • Nordic Argon Audio
  • WiiM CI MOD S / Ultra

מומלץ לבדוק את כל תכונות האפליקציה ב-GC4A 2.0. חשוב לכלול בדיקה של הפעלת כל סוגי המדיה (פודקאסטים, שידורים וכו'), השהיה, סריקה, דילוג, שינוי פלייליסטים, עצירה וחיבור מחדש של Cast.

ממשקי API נתמכים

ב-GC4A 2.0 יש תמיכה בממשקי ה-API הבאים:

  • HTML
  • JavaScript ECMA 6
  • DOMParser
  • XMLSerializer
  • מסמכים ותת-כיתות
  • DocumentFragment
  • HTMLMediaElement ו-HTMLAudioElement
  • HTMLVideoElement (אפשר להפעיל רק תוכן אודיו)
  • HTMLScriptElement
  • HTMLBaseElement
  • HTMLTemplateElement
  • רכיבים מותאמים אישית
  • Shadow DOM
  • מודולים של סקריפטים / אסינכרוני / מושהה
  • אחזור / XHR
  • WebSocket
  • MessagePort
  • עוגיות
  • MSE (Media Source Extensions)
  • EME (Encrypted Media Extensions)
  • אחסון מקומי / אחסון סשן

ב-GC4A 2.0 אין תמיכה באפשרויות הבאות:

  • ייבוא מודולים דינמיים (יתווסף בשנת 2024)
  • CSS
  • IFrame
  • TextTracks

יצירת קשר

אם אתם זקוקים לעזרה בהגדרה לצורך בדיקה או אם אתם לא מצליחים להשתמש ברמקולים של Bose, תוכלו לפנות אל gc4a-support-external@google.com.