שיטות מומלצות לשימוש ב-Video Stitcher API

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

נכסי VOD עם תנאים

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

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

איך נמנעים מחוסר התאמה של הפסקות פרסומות ב-HLS

במקרה של שילוב מודעות בתוכן VOD, צריך להגדיר מראש את מניפסט סרטון המקור להפסקות למודעות באמצע הסרטון, ולהגדיר את תג המודעה של פלייליסט של מספר מודעות וידאו (VMAP) כך שיחזיר הפסקות למודעות באמצע הסרטון במיקומי ההיסט שהוגדרו מראש. ‫Video Stitcher API מקבל את התוצאה של הפלט שעבר המרת קידוד, ומוסיף מודעות קרוב ככל האפשר למיקום שציינתם. כדי שהתנהגות ההצמדה של המודעות תהיה עקבית ומדויקת, מומלץ להשתמש בקלט שעבר התניה מראש להפסקות למודעות באמצע הסרטון.

לדוגמה, בפלייליסט הווידאו הבא מוצגת הזדמנות להצבת מודעה בשנייה השביעית:

#EXTM3U

#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:4

#EXTINF:2.0
../video/180_250000/hls/segment_0.ts
#EXTINF:2.0
../video/180_250000/hls/segment_1.ts
#EXTINF:2.0
../video/180_250000/hls/segment_2.ts
#EXTINF:1.0
../video/180_250000/hls/segment_3.ts
#EXT-X-PLACEMENT-OPPORTUNITY
#EXTINF:2.0
../video/180_250000/hls/segment_4.ts

בפלייליסט האודיו הבא מוצגת הזדמנות למיקום מודעה בשנייה השביעית:

#EXTM3U

#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:4

#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_0.ts
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_1.ts
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_2.ts
#EXTINF:1.03
../audio/1_stereo_128000/hls/segment_3.ts
#EXT-X-PLACEMENT-OPPORTUNITY
#EXTINF:1.99
../audio/1_stereo_128000/hls/segment_4.ts

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

<vmap:VMAP xmlns:vmap="http://www.iab.net/videosuite/vmap" version="1.0">
  <vmap:AdBreak timeOffset="00:00:07.000" breakType="linear" breakId="midroll‑1">
    <vmap:AdSource id="midroll-1‑ad‑1" allowMultipleAds="false" followRedirects="true">
      <vmap:AdTagURI templateType="vast3">
      <![CDATA[
      https://securepubads.g.doubleclick.net/gampad/ads?...
      ]]>
      </vmap:AdTagURI>
    </vmap:AdSource>
  </vmap:AdBreak>
</vmap:VMAP>

הגדרת התג EXT-X-PROGRAM-DATE-TIME ל-HLS

כדי לוודא שהתזמונים של הפלחים מסונכרנים בכל העיבודים של HLS, מומלץ להגדיר את EXT-X-PROGRAM-DATE-TIME לכל עיבוד של HLS. כך השחקנים יכולים לעבור בצורה חלקה בין רכיבי עיבוד שונים במהלך ההפעלה.

שימוש במניפסטים של DASH עם כמה תקופות לנכסים בשידור חי ולנכסי VOD

מגדירים את מקודדי המקור ואת המקודדים לשינוי פורמט כך שיפיקו מניפסטים של DASH עם כמה תקופות במקום תקופה אחת. מסיבות דומות לסיבות שצוינו בנושא התאמת VOD, ה-API של Video Stitcher לא יפצל תקופות כדי להוסיף הפסקות למודעות, ולכן מניפסט DASH עם כמה תקופות יאפשר יותר הזדמנויות להוסיף הפסקות למודעות במשכי הזמן הצפויים.

הוספת כתוביות ל-ISOBMFF

כדי להבטיח תאימות לרוב נגני המדיה, כדאי להשתמש בפורמט קובץ מדיה בסיסי של ISO‏ (ISOBMFF) כמו MP4, כדי להוסיף כתוביות למניפסטים של DASH.

שימוש בקצב העברת נתונים קבוע

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

שימוש בסמני מודעות נתמכים

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

אימות הפעלת המקור

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

‫HLS:

DASH:

ניהול מפתחות CDN

אם המדיה במקור מוגנת באמצעות חתימת כתובת URL, צריך לרשום מפתחות CDN ב-Video Stitcher API. הפעולה הזו מאפשרת ל-API:

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

כאן אפשר לקרוא איך מנהלים מפתחות CDN.

הגדרה של Media CDN

כדי להגדיר את Media CDN להפצת נכסי המדיה, צריך לפעול לפי המדריך למתחילים בנושא Media CDN.

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

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

הוראות להגדרת HTTPS מופיעות במאמר הגדרת אישורי SSL‏ (TLS).

בקשות חתומות ב-Media CDN

כדי להשתמש ב-Media CDN עם בקשות חתומות, צריך לעיין במאמר בנושא שימוש בבקשות חתומות ולבצע את הפעולות הבאות:

  1. יוצרים זוג מפתחות אסימטריים. במאמר יצירת מפתח פרטי ל-Media CDN מוסבר איך ליצור מפתח פרטי שתואם ל-Video Stitcher API.

  2. רושמים את המפתח הפרטי של Media CDN ב-Video Stitcher API.

מגבלת משך הזמן לסשנים ארוכים בשידור חי

תוקף של משאב LiveSession לא יפוג אלא אם חלפו 5 דקות בלי בקשות לפלייליסט. עם זאת, יש מגבלה של 180 יום לכל היותר על משך החיים של כל כתובות ה-URI להפעלה. כדי להמשיך בהפעלה אחרי שעברו 180 יום, צריך ליצור סשן חדש של שידור חי. כדי להבטיח את האמינות, מומלץ ליצור סשן חדש של שידור חי לפחות כל 30 יום.