סימניות

במדריך הזה מוסבר איך להטמיע סימניות באמצעות IMA DAI SDK כשמשתמשים בתכונה 'הטמעת מודעות דינמיות (DAI)' בשידורי וידאו על פי דרישה (VOD). ההנחה היא שהטמעת IMA DAI פעילה, כמו זו שהוצגה שנתחיל?

מהי הוספה לסימניות?

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

הוספת סימנייה של DAI

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

שיטות המרה להצלה

ב-IMA DAI SDK יש שתי שיטות לבקש את מועד הצגת התוכן עבור זמן זרם וזמן זרם נתון של תוכן שעה. בעזרת שיטות ההמרה האלה, אפשר לשמור את הדפים content time ולאחר מכן עוברים למועד הסטרימינג המתאים המופע החדש של השידור. זו הגישה, כולל קישור לאפליקציה לדוגמה שמראה הטמעה תקינה של סימניות.

מתבצעת שמירה של סימניות

שמירת סימנייה כשנגן התוכן מושהה.

onPause() {
   var bookmarkTime = Math.floor(
   streamManager.contentTimeForStreamTime(videoElement.currentTime));
}

הסימניות בטעינה

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

function loadUrl(url) {
  hls.on(Hls.Events.MANIFEST_PARSED, () => {
    var startTime = 0;
    if (bookmarkTime) {
      var startTime = streamManager.streamTimeForContentTime(bookmarkTime);
      // Seeking on load triggers the onSeekEnd event, so treat this seek as
      // if it's snapback. Without this, resuming at a bookmark kicks you
      // back to the ad before the bookmark.
      isSnapback = true;
    }
    hls.startLoad(startTime);
    videoElement.addEventListener('loadedmetadata', () => { videoElement.play(); });
  });
  hls.loadSource(url);
  hls.attachMedia(videoElement);
}

אפליקציה לדוגמה

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