HLS בהעברה של Shaka Player

סקירה כללית

ה-SDK של Cast Web Receiver תומך בהפעלת תוכן באמצעות כמה פרוטוקולים של סטרימינג באינטרנט. בהתאם לפרוטוקול שבו נעשה שימוש, ה-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.
  • צמצום משמעותי בזמן הייצור של תכונות ותיקוני באגים, מאחר שקצב הגרסאות של Shaaka Player הוא תדיר, ללא קשר לגרסאות של ה-Web Receiver SDK.
  • שליטה רבה יותר על סביבת ההפעלה שמסופקת על ידי shakaVersion API.
  • תמיכה מוגברת בהפעלה מ-Google עם משאבי הנדסה שמתמקדים בהפעלה בפרוטוקול HLS ב-Shaka Player כפי שניתן לראות במפת הדרכים.

ציר הזמן

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

שלב Start Date סקירה כללית
1 אוקטובר 2022 ערכת ה-SDK של Cast Web Receiver כוללת ממשקי API שאפשר להצטרף אליהם להפעלת תוכן בפרוטוקול HLS בנגן Shaka Player.
2 H2 '24 ערכת ה-SDK של Cast Web Receiver משנה את הנגן שמוגדר כברירת מחדל ל-Shaka Player בשביל הפעלת תוכן בפרוטוקול HLS.

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

הצטרפות

החל מגרסת CAF 3.0.0105, קיימת הגדרה ברמת האפליקציה שמאפשרת הצטרפות כדי להשתמש ב-Shaka Player להפעלה בפרוטוקול HLS. בגרסה הזו יש גם API לבחירה מתוך מגוון נתמך של גרסאות Shaka Player לטעינה. הסימונים האלה מסופקים במחלקה CastReceiverOptions באמצעות המאפיינים useShakaForHls ו-shakaVersion, והם נבדקים כשמתחילים את CastReceiverContext. בכל אפליקציה שמצטרפת ל-Shaka עבור HLS צריך להגדיר גרסת Shaka Player של 4.3.4 לפחות כדי לנצל את השיפורים האחרונים ב-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 או שידורים בסיסיים
  • תוכן עם הפסקות או מודעות מוטמעות
  • הפעלה בסוגי המכשירים הבאים: מסכים חכמים, מתאמים ל-Chromecast, מכשירי Android TV, טלוויזיות עם Chromecast מובנה, רמקולים חכמים

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

ביטול הסכמה

ה-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, תוכלו להיעזר בהוראות שבקטע Opt in במדריך כדי לבדוק אם המעבר ל-Shaka Player יבטל את חסימת הבעיה. אם הבעיה עדיין קיימת או אם נתקלתם בבעיה אחרת בזמן החלפת שחקן, יש לבצע את השלבים הבאים.

  1. כדי לפתור את הבעיה, נסו להגדיר ל-shakaVersion גרסת הסתעפות אחרת. לדוגמה, אם הבעיה מתרחשת בהסתעפות 4.3, כדאי לנסות להגדיר אותה לגרסה האחרונה בגרסה 4.2.x או 3.3.x. עיינו בנתוני הגרסה של Shaaka Player כדי למצוא את הגרסאות עם העדכונים הרלוונטיים ביותר. שימו לב של-API shakaVersion יש גרסה נתמכת מינימלית ומקסימלית, כפי שמפורט במסמכי התיעוד. אם תראו שיש רגרסיה, דווחו על הבעיה במעקב הבעיות של Shaaka Player.
  2. כדאי לנסות לשנות את הפרמטרים של הגדרות הנגן. אפשר להגדיר את Shaka Player באמצעות האובייקט PlayerConfiguration. ה-Web Receiver SDK מגדיר קבוצה של ערכי ברירת מחדל ומאפשר לאפליקציות לשנות את התצורה הזו דרך המאפיין shakaConfig באובייקט PlaybackConfig. ההערכה הזו מתבצעת במהלך זמן הטעינה, כשמופע הנגן נוצר. למידע נוסף ב-

    אפשרויות והגדרות של אפליקציות. ערכי ברירת המחדל שמוגדרים על ידי Web Receiver SDK הם הערכים המומלצים.

  3. בודקים אם הבעיה דווחה בכלי למעקב אחר בעיות של Shaka Player או במעקב אחר בעיות בהעברה. הגיבו על הבאג והוסיפו כל מידע רלוונטי אם הוא מתאר גם את הבעיה שבה נתקלתם.

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

  5. לדווח על באג במעקב אחר בעיות בהעברה (cast) אם יש בעיה שייחודית ל-Shaka Player בנקודות הקצה של ההעברה.

שאלות נפוצות

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

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

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

מהי רמת המאמץ הצפויה בעת החלפת שחקנים?

השותפים יצטרכו לבדוק את האפליקציה והתוכן שלהם בסביבת בדיקה כדי לוודא שחוויית המשתמש דומה או משופרת בהשוואה ל-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, איך זה משפיע על האפליקציה שלי?

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