ב-video_player.js, מגדירים מחלקה של wrapper לנגן וידאו כדי להפעיל ולשלוט בנגן dash.js.
הגדרת נגן הפס הרחב
כדי להגדיר איפה באפליקציה להציב את נגן הפס הרחב, יוצרים תגי וידאו ותגי wrapper:
יצירת נגן הווידאו
מאתחלים את המחלקה של נגן הווידאו עם משתנים לרכיבי HTML, לנגן dash.js ולקריאות חוזרות ששיטות אחרות של המחלקה יכולות להשתמש בהן.
הגדרת הפונקציות של אמצעי הבקרה להפעלה
כדי להציג את נגן המודעות ולצרף את צפיית הווידאו, צריך ליצור את השיטה VideoPlayer.play(). לאחר מכן, יוצרים את השיטה VideoPlayer.stop() כדי לטפל בניקוי אחרי שמסיימים את הפסקות הפרסום.
טעינה מראש של מניפסט של זרם מודעות
כדי לוודא שהמודעות נטענות מספיק זמן במהלך שידור התוכן ולפני תחילת הפסקה למודעה, משתמשים ב-VideoPlayer.preload() וב-VideoPlayer.isPreloaded().
1. טעינה מראש של סטרימינג המודעה
יוצרים את השיטה VideoPlayer.preload() לטעינה מראש של מניפסט של זרם המודעות וליצירת מאגר מודעות לפני הפסקת הפרסום. צריך לעדכן את הגדרות הסטרימינג של הנגן 'cacheInitSegments' ל-true. עדכון ההגדרות מאפשר שמירה במטמון של פלחי ההפעלה, וכך נמנעים עיכובים במעבר למודעות.
2. בדיקת מאגר המודעות שנטענו מראש
יוצרים את השיטה VideoPlayer.isPreloaded() כדי לבדוק אם נטען מראש מספיק שטח אחסון זמני למודעות בהשוואה לסף של שטח אחסון זמני שהוגדר באפליקציה:
צירוף פונקציות listener לנגן
כדי להוסיף מאזינים לאירועים של נגן dash.js, יוצרים את השיטה
VideoPlayer.attachPlayerListener(): PLAYBACK_PLAYING,
PLAYBACK_ENDED, LOG ו-ERROR. השיטה הזו מטפלת גם באירועים של מזהה הסכימה URI, בנוסף להגדרת פונקציית הניקוי להסרת מאזינים כאלה.
הגדרת קריאות חוזרות (callbacks) של אירועים בנגן
כדי לנהל את ההפעלה של רצף המודעות על סמך אירועים בנגן, יוצרים את השיטות VideoPlayer.onAdPodPlaying(), VideoPlayer.onAdPodEnded() ו-VideoPlayer.onAdPodError():
יצירת פונקציית setter לאירוע onAdPodEnded
כדי להגדיר פונקציית קריאה חוזרת שתפעל כשסדרה של מודעות מסתיימת, צריך ליצור את השיטה VideoPlayer.setOnAdPodEnded(). השיטה הזו משמשת את מחלקת האפליקציה כדי להמשיך את שידור התוכן אחרי הפסקות הפרסום.
טיפול באירועים של מטא-נתונים בסטרימינג
כדי להגדיר פונקציית קריאה חוזרת שפועלת על סמך אירועי emsg, צריך ליצור את השיטה VideoPlayer.setEmsgEventHandler(). במדריך הזה, צריך לכלול את הפרמטר scope
כי מפעילים את setEmsgEventHandler() מחוץ ל-video_player.js.
הצגה והסתרה של נגן הווידאו בהפסקות הפרסום
כדי להציג את נגן הווידאו במהלך הפסקות הפרסום ולהסתיר אותו אחרי שההפסקות מסתיימות, צריך ליצור את השיטות VideoPlayer.show() ו-VideoPlayer.hide():
לאחר מכן, יוצרים מחלקה לניהול מודעות כדי להשתמש ב-IMA SDK לשליחת בקשה לסטרימינג, לקבל מניפסט של רצף מודעות, להאזין לאירועי סטרימינג של IMA ולהעביר אירועי emsg אל IMA SDK.