במדריך הזה מוסבר איך להטמיע סימון של מיקום בסרטון באמצעות IMA DAI SDK כשמשתמשים בהטמעה דינמית של מודעות (DAI) לשידורים של סרטונים על פי דרישה (VOD). ההנחה היא שיש לכם הטמעה תקינה של IMA DAI, כמו זו שמוצגת במאמר תחילת העבודה.
מה זה הוספה לסימנייה?
סימנייה היא אפשרות לשמור נקודה ספציפית בתוכן ואז לחזור אליה. נניח שמשתמש צופה בחמש דקות של תוכן, יוצא משידור הווידאו ואז חוזר אליו. הוספת סימנייה שומרת את המיקום של המשתמש בשידור, כך שהשידור יכול להמשיך מהמקום שבו הוא הפסיק, ולספק לצופים חוויה חלקה.
הוספת סימניות ב-DAI
כשמוסיפים לסימנייה סטרימינג של DAI, צריך לתעד את מזהה הסטרימינג ואת השעה שבה המשתמש יוצא מהסרטון. כשהמשתמש חוזר, צריך לשלוח שוב בקשה לסטרימינג ולחפש את השעה שנשמרה. מכיוון שלכל מופע של הסטרימינג המבוקש יכולים להיות הפסקות פרסום באורכים שונים, שמירת זמן הסטרימינג לא תעבוד. מה שאתם באמת רוצים לעשות זה להמשיך מאותו מיקום בתוכן.
שיטות המרה שיעזרו לכם
ערכת IMA DAI SDK מספקת זוג שיטות לבקשת זמן התוכן עבור זמן שידור נתון, וזמן השידור עבור זמן תוכן נתון. באמצעות שיטות ההמרה האלה, אפשר לאחסן את השעה בתוכן שסומן בסימנייה, ואז לעבור אל השעה בשידור התואמת במופע החדש של השידור. הנה הגישה, כולל קישור לאפליקציה לדוגמה שבה מוצגת הטמעה של סימון דפים במועדפים.
שמירת סימניות
שמירת סימנייה כשהסרטון Activity מושהה.
private double bookmarkTime;
@Override
public void onPause() {
super.onPause();
double streamTime = videoPlayer.getCurrentPosition() / 1000.0; // ms to s.
bookmarkTime = streamManager.getContentTimeForStreamTime(streamTime);
}
הסימניות בטעינה
טוענים את הסימנייה כשמבקשים שוב להפעיל שידור. היא חלק מההטמעה של ממשק VideoStreamPlayer.
public void loadUrl(String url, List<HashMap<String, String>> subtitles) {
// Set video player's stream URL and subtitles, and play the stream.
...
// Bookmarking.
if (bookmarkTime > 0) {
double streamTime =
streamManager.getStreamTimeForContentTime(bookmarkTime);
videoPlayer.seek((long) (streamTime * 1000.0)); // s to ms.
}
}
אפליקציה לדוגמה
כדי לראות הטמעה של סימניות, מורידים את האפליקציה לדוגמה.