HLS בהעברה של Shaka Player

סקירה כללית

‫Cast Web Receiver SDK תומך בהפעלה של תוכן באמצעות כמה פרוטוקולים להזרמת תוכן באינטרנט. בהתאם לפרוטוקול שבו נעשה שימוש, ה-SDK טוען נגן כדי לטפל בהפעלה של התוכן. במקרה של תוכן HLS, ספריית Media Player‏ (MPL) נטענת. במקרה של תוכן DASH, ‏ Shaka Player נטען.

מעכשיו, צוותי ההנדסה של Cast SDK ו-Shaka Player משלבים כוחות כדי להרחיב את התמיכה בהפעלת תוכן HLS ב-Shaka Player. ‫MPL לא יקבל יותר עדכונים קריטיים. מומלץ להפעיל את Shaka Player להפעלת תוכן HLS באפליקציה.

היתרונות של Shaka Player

היתרונות של שינוי השחקנים באפליקציות:

  • סשנים חזקים יותר של סטרימינג למשתמשים, עם שיפורים בזמן הטעינה ובחביון.
  • המשך אימוץ התכונות העדכניות של HLS.
  • שיפור הבהירות בניתוח שורש הבעיה בבעיות תאימות בין נגנים לתוכן, בגלל האופי של Shaka Player כקוד פתוח.
  • בסיס הקוד של הנגן בקוד פתוח מאפשר לשותפים לתרום לפרויקט Shaka Player.
  • קיצור משמעותי של הזמן שנדרש להטמעה של תכונות ותיקוני באגים בסביבת הייצור, כי מחזור הפרסום של Shaka Player הוא תדיר ולא תלוי בפרסומים של Web Receiver SDK.
  • שליטה רבה יותר בסביבת ההפעלה שניתנת על ידי shakaVersion API.
  • תמיכה משופרת בהפעלה מ-Google עם משאבי הנדסה שמתמקדים בהפעלת HLS ב-Shaka Player, כפי שניתן לראות בתוכנית הדרך.

ציר הזמן

ה-SDK של Web Receiver יעבור לשימוש ב-Shaka Player כנגן ברירת המחדל להפעלת תוכן HLS. ההשקה תתבצע בשלבים כדי להדריך את השותפים בתהליך ההעברה.

שלב תאריך התחלה סקירה כללית
1 אוקטובר 2022 ב-Cast Web Receiver SDK הוספנו ממשקי API להסכמה להפעלת תוכן HLS ב-Shaka Player.
2 נובמבר 2025 ערכת ה-SDK של Cast Web Receiver משנה את נגן ברירת המחדל ל-Shaka Player להפעלת תוכן HLS.

צוותי ההנדסה של Web Receiver SDK נוקטים גישה שמבוססת על ביצועים, ויעברו לשלב הבא רק כשהביצועים של Shaka Player יהיו ברמה של ביצועי הבסיס של MPL. השינויים האלה יפורסמו בקבוצת Google cast-sdk-announcements ויתעדכנו במדריך הזה.

הצטרפות

החל מגרסה 3.0.0105 של CAF, יש הגדרה ברמת האפליקציה שמאפשרת להביע הסכמה לשימוש ב-Shaka Player להפעלת HLS. בגרסה הזו יש גם API לבחירה מתוך טווח נתמך של גרסאות Shaka Player לטעינה. הדגלים האלה מסופקים במחלקה CastReceiverOptions באמצעות המאפיינים useShakaForHls ו-shakaVersion, והם מוערכים כשמתחילים את CastReceiverContext. כל אפליקציה שמשתמשת ב-Shaka ל-HLS צריכה להגדיר גרסת Shaka Player של לפחות 4.15.12 כדי ליהנות מהשיפורים האחרונים ב-HLS. כדי להביע הסכמה, משתמשים בקטע הקוד הבא:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

אימות תוכן

שותפים צריכים לאמת את הפעלת התוכן שלהם ב-Shaka Player לפני שהם בוחרים להשתמש ב-Shaka Player באפליקציית הייצור שלהם. מומלץ לבדוק כל אחת מהווריאציות של התוכן שמופיעות בהמשך:

  • סוגי סטרימינג: שידור חי או VOD
  • פורמטים של מאגרי תגים: TS,‏ MP4 או זרמי נתונים בסיסיים
  • תוכן עם שיבושים או מודעות מוטמעות
  • הפעלה בסוגי המכשירים הבאים: מסכים חכמים, מתאמי Google Cast, מכשירי Android TV, טלוויזיות עם Google Cast, רמקולים חכמים

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

ביטול ההסכמה

ערכת Web Receiver SDK תעבור למודל ביטול הסכמה להפעלת תוכן HLS של Shaka Player בהתאם לציר הזמן. ערך ברירת המחדל של המאפיין useShakaForHls ישתנה מ-false ל-true. בשלב הזה, אפליקציות יכולות לבחור להשתמש ב-MPL להפעלת HLS על ידי הגדרה ידנית של המאפיין הזה לערך false. כשמפעילים את CastReceiverContext, ‏ Web Receiver SDK יחזור לטעינת MPL במקום Shaka Player. דוגמה לאופן ההשבתה:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

דיווח על בעיות

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

  1. כדי לפתור את הבעיה, אפשר לנסות להגדיר את shakaVersion לגרסה אחרת של הענף. לדוגמה, אם הבעיה מתרחשת בענף 4.15, נסו להגדיר אותו לגרסה העדכנית בענף אחר. כדי למצוא גרסאות עם העדכונים הרלוונטיים ביותר, אפשר לעיין בהערות לגבי הגרסה של Shaka Player. שימו לב של-API‏ shakaVersion יש גרסה מינימלית וגרסה מקסימלית נתמכות, כפי שמפורט במסמכי העזר. אם מזהים רגרסיה, צריך לדווח על הבעיה בכלי למעקב אחרי בעיות ב-Shaka Player.
  2. כדאי לנסות לשנות את פרמטרים ההגדרה של הנגן. אפשר להגדיר את Shaka Player באמצעות האובייקט PlayerConfiguration. ‫Web Receiver SDK מגדיר קבוצה של ערכי ברירת מחדל ומאפשר לאפליקציות לשנות את ההגדרה הזו באמצעות המאפיין shakaConfig באובייקט PlaybackConfig. ההערכה הזו מתבצעת בזמן הטעינה כשמופע הנגן נוצר. מידע נוסף זמין במאמר הגדרות ואפשרויות של אפליקציות. ערכי ברירת המחדל שמוגדרים על ידי Web Receiver SDK הם הערכים המומלצים.
  3. בודקים אם הבעיה דווחה בכלי למעקב אחרי בעיות ב-Shaka Player או בכלי למעקב אחרי בעיות ב-Cast. אם התיאור של הבאג מתאים לבעיה שנתקלתם בה, אתם יכולים להוסיף תגובה ולציין פרטים רלוונטיים.
  4. בודקים את התוכן באתר ההדגמה של Shaka Player. אם תגלו שהבעיה חוזרת באתר ההדגמה של התוכן שלכם, תוכלו לדווח על באג בפרויקט Shaka Player.
  5. אם נתקלתם בבעיה שייחודית ל-Shaka Player בנקודות קצה של Cast, אתם יכולים לדווח על באג בכלי למעקב אחר בעיות ב-Cast.

שאלות נפוצות

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

האם כדאי לעבור ל-Shaka Player?

אנחנו ממליצים לשותפים שלנו שמשתמשים בתוכן HLS להתחיל את תהליך ההעברה בהקדם האפשרי. כתוצאה מכך, האפליקציה תספק למשתמשים חוויית סטרימינג חזקה יותר. הטבות נוספות מפורטות בקטע ההטבות של Shaka Player במדריך הזה. השותפים צריכים לוודא שהאפליקציות שלהם פועלות בצורה תקינה באמצעות Shaka Player כדי להבטיח מעבר חלק. אפליקציות מסוימות עלולות להיות בסיכון כש-Web Receiver SDK עובר למודל ביטול הסכמה אם השותפים לא יאמתו מראש שהתוכן שלהם מוצג בצורה תקינה ב-Shaka Player.

מה רמת המאמץ הנדרשת כשמחליפים שחקנים?

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

בקרוב אשתמש ב-HLS כדי להזרים תוכן באפליקציה שלי. מה עלי לעשות?

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

התוכן או האפליקציה שלי לא פועלים עם Shaka Player, מה עושים?

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

‫MPL כבר לא מקבל עדכונים קריטיים. מה זה אומר בדיוק?

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

התוכן שלי משתמש בפרוטוקול Smooth Streaming, איך זה משפיע על האפליקציה שלי?

הקובצים הבינאריים של MPL עדיין יתארחו ויהיו נגישים לאפליקציית המקלט. עם זאת, לא תהיה תמיכה בבקשות לתכונות שקשורות ל-Smooth Streaming או בתיקוני באגים, כי המפרט של Smooth Streaming לא עודכן כבר יותר מארבע שנים. מומלץ להעביר את התוכן לשימוש בפרוטוקול הסטרימינג DASH או HLS כדי להמשיך לקבל עדכוני ביצועים ותמיכה בתוכן.

התוכן שלי לא משתמש בפרוטוקולים HLS או Smooth Stream, איך זה משפיע על האפליקציה שלי?

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