คำแนะนำนี้ครอบคลุมการกำหนดค่าตัวจัดการไฟล์ Manifest เพื่อขอกลุ่มโฆษณาหรือกลุ่มแถบสเลทโดยใช้วิธีกลุ่มพ็อดโฆษณา กลุ่ม
เลือกโปรโตคอลการสตรีม
ข้อกำหนดเบื้องต้น
ก่อนดำเนินการต่อ คุณต้องตั้งค่ากิจกรรมไลฟ์สดสำหรับประเภทการแทรกโฆษณาแบบไดนามิก (DAI) การเปลี่ยนเส้นทางเพื่อแสดงพ็อด และโปรไฟล์การเข้ารหัส หากต้องการตั้งค่ากิจกรรมไลฟ์สด ให้เลือกวิธีใดวิธีหนึ่งต่อไปนี้
- UI ของ Ad Manager: ตั้งค่าไลฟ์สดสำหรับ DAI
- Ad Manager API: ใช้ไลบรารีของไคลเอ็นต์เพื่อเรียกใช้
LiveStreamEventService.createLiveStreamEventsเมธอด ตั้งค่าพารามิเตอร์LiveStreamEvent.dynamicAdInsertionTypeเป็นPOD_SERVING_REDIRECT - ตรวจสอบสิทธิ์คำขอ: คำขอแต่ละกลุ่มที่ส่งโดยใช้การเปลี่ยนเส้นทางกลุ่มเพื่อแสดงพ็อดต้องมีโทเค็นที่ลงนามด้วย HMAC เพื่อการตรวจสอบสิทธิ์ คำนวณโทเค็นนี้ 1 ครั้งต่อช่วงพักโฆษณาและแชร์โทเค็นในเซสชันสตรีมทั้งหมด หากต้องการคำนวณโทเค็น HMAC โปรดดู ตรวจสอบสิทธิ์คำขอพ็อดโฆษณา
หลังจากตั้งค่ากิจกรรมไลฟ์สดแล้ว ให้เรียกโปรไฟล์การเข้ารหัสของกิจกรรม
จาก UI หรือ API ของ Ad Manager โดยเรียกใช้
DaiEncodingProfileService.getDaiEncodingProfilesByStatement
เมธอด
เรียกสตรีมเนื้อหา
เมื่อผู้ใช้เลือกกิจกรรมไลฟ์สด แอปไคลเอ็นต์จะส่งคำขอสตรีมไปยัง Google Ad Manager ในการตอบกลับของสตรีม แอปจะแยก ID เซสชัน DAI ของ Google และข้อมูลเมตาเพื่อรวมไว้ในคำขอไฟล์ Manifest ของสตรีม
ตัวอย่างต่อไปนี้ส่ง ID เซสชัน DAI ของ Google ไปยังตัวจัดการไฟล์ Manifest
https://MANIFEST_MANIPULATOR_URL/manifest.m3u8?DAI_stream_ID=SESSION_ID&network_code=NETWORK_CODE&DAI_custom_asset_key=CUSTOM_ASSET_KEY
เมื่อประมวลผลคำขอการเล่นเนื้อหาวิดีโอ ให้จัดเก็บ ID เซสชัน DAI ของ Google และ CUSTOM_ASSET_KEYจากคำขอเพื่อเตรียมพร้อมสำหรับการเย็บโฆษณา
ระบุกลุ่มช่วงพักโฆษณาและแทรกการหยุดชะงัก
ขณะประมวลผลไฟล์ Manifest ของตัวแปรแต่ละรายการ ให้ระบุแท็ก EXT-X-CUE-IN และ EXT-X-CUE-OUT ในสตรีม ซึ่งระบุจุดเริ่มต้นและจุดสิ้นสุดของช่วงพักโฆษณา
แทนที่แท็ก EXT-X-CUE-IN และ EXT-X-CUE-OUT ด้วยองค์ประกอบ EXT-X-DISCONTINUITY เพื่อให้โปรแกรมเล่นวิดีโอของไคลเอ็นต์สลับระหว่างเนื้อหากับโฆษณา
ไฟล์ Manifest ตัวอย่างต่อไปนี้แทนที่แท็ก EXT-X-CUE-IN และ EXT-X-CUE-OUT
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.000,
contentorigin.com/1.ts
#EXTINF:5.000,
contentorigin.com/2.ts
#EXT-X-CUE-OUT:15.000
#EXTINF:5.000,
contentorigin.com/3.ts
#EXTINF:5.000,
contentorigin.com/4.ts
#EXTINF:5.000,
contentorigin.com/5.ts
#EXT-X-CUE-IN
#EXTINF:5.000,
contentorigin.com/6.ts
#EXTINF:5.000,
contentorigin.com/7.mp4
#EXTINF:5.000,
contentorigin.com/8.mp4
ตัวอย่างต่อไปนี้แสดงไฟล์ Manifest ที่ถูกแทนที่
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.000,
contentorigin.com/1.ts
#EXTINF:5.000,
contentorigin.com/2.ts
#EXTINF:5.000,
#EXT-X-DISCONTINUITY
{... Insert ad segments here ...}
#EXT-X-DISCONTINUITY
#EXTINF:5.000,
contentorigin.com/6.mp4
#EXTINF:5.000,
contentorigin.com/7.mp4
#EXTINF:5.000,
contentorigin.com/8.mp4
กลุ่มโฆษณา DAI ของ Google ไม่ได้เข้ารหัส หากเนื้อหาของคุณเข้ารหัสไว้ ให้นำการเข้ารหัสออกโดยแทรกองค์ประกอบ EXT-X-KEY:METHOD=NONE ก่อนกลุ่มโฆษณาแรกของช่วงพักโฆษณาแต่ละช่วง เมื่อสิ้นสุดช่วงพักโฆษณา ให้เพิ่มการเข้ารหัสกลับโดยแทรก EXT-X-KEY ที่เหมาะสม
ติดตามเวลาเริ่มต้น ระยะเวลา และดัชนีของช่วงพักโฆษณาที่จะเกิดขึ้น
สร้าง URL กลุ่มโฆษณา
แทนที่กลุ่มเนื้อหาแต่ละกลุ่มระหว่างแท็ก EXT-X-DISCONTINUITY ด้วย URL ที่ชี้ไปยังวิธีกลุ่มพ็อดโฆษณา
ตัวอย่างต่อไปนี้ประกอบกลุ่มพ็อดโฆษณา โปรดทราบว่ากลุ่มโฆษณาใช้ดัชนีที่อิงตาม 0
https://dai.google.com/linear/pods/v1/seg/network/NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/0.ts?sd=AD_SEGMENT_DURATION&pd=AD_BREAK_DURATION&stream_id=SESSION_ID&auth-token=HMAC
ตัวอย่างต่อไปนี้แทรกกลุ่มพ็อดโฆษณาลงในไฟล์ Manifest
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.00,
contentorigin.com/1.ts
#EXTINF:5.00,
contentorigin.com/2.ts
#EXT-X-DISCONTINUITY
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/0.ts?sd=5000&so=0&pd=15000&stream_id=SESSION_ID
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/1.ts?sd=5000&so=5000&pd=15000&stream_id=SESSION_ID
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/2.ts?sd=5000&so=10000&pd=15000&stream_id=SESSION_ID
#EXT-X-DISCONTINUITY
#EXTINF:5.00,
contentorigin.com/6.mp4
#EXTINF:5.00,
contentorigin.com/7.mp4
#EXTINF:5.00,
contentorigin.com/8.mp4
ไม่บังคับ: กำหนดเวลาช่วงพักโฆษณา
ส่งการแจ้งเตือนช่วงพักโฆษณาล่วงหน้า (EABN) พร้อมระยะเวลาพ็อดโฆษณา พารามิเตอร์การกำหนดเป้าหมายเอง และข้อมูลสัญญาณ SCTE-35 เพื่อเพิ่มอัตราการส่งโฆษณา ดูรายละเอียดเพิ่มเติมได้ที่ส่งการแจ้งเตือนช่วงพักโฆษณา ล่วงหน้า