สําหรับการสตรีมแบบสดหรือฟีดสด เพลย์ลิสต์ต้องมีจุด "CUE-OUT" และ "CUE-IN" ที่แสดงถึงจุดเชื่อมต่อการแทรกโฆษณา เช่น
#EXT-X-CUE-OUT:DURATION=<time>
#EXT-X-CUE-IN
แท็ก EXT-X-CUE-OUT
แสดงจุดเริ่มต้นของการเชื่อมต่อ และ EXT-X-CUE-IN
แสดงจุดสิ้นสุดของการเชื่อมต่อ ควรสิ้นสุด EXT-X-CUE-OUT
ด้วย EXT-X-CUE-IN
ซึ่งระบุจุดสิ้นสุดของช่วงพักโฆษณา เซิร์ฟเวอร์โฆษณานำเนื้อหาโฆษณาวิดีโอมาแทนที่พื้นที่ทั้งหมดของส่วนระหว่าง EXT-X-CUE-OUT
กับ EXT-X-CUE-IN
จำเป็นต้องมี DURATION=<time>
และค่านี้เป็นระยะเวลาโดยประมาณเป็นจำนวนวินาทีหรือค่าทศนิยมของช่วงพักโฆษณา (กล่าวอีกนัยหนึ่งคือ ความแตกต่างของเวลาระหว่าง EXT-X-CUE-IN
และ EXT-X-CUE-OUT
) อีกทางเลือกหนึ่งคือ คุณจะใช้ EXT-X-CUE-OUT:<time>
แทน #EXT-X-CUE-OUT:DURATION=<time>
ได้
จุดเริ่มต้นและจุดสิ้นสุดของการเชื่อมต่อ
#EXTINF:10,
http://media.example.com/fileSequence7796.ts
#EXTINF:6,
http://media.example.com/fileSequence7797.ts
#EXT-X-CUE-OUT:DURATION=30
#EXTINF:4,
http://media.example.com/fileSequence7798.ts
#EXTINF:10,
http://media.example.com/fileSequence7799.ts
#EXTINF:10,
http://media.example.com/fileSequence7800.ts
#EXTINF:6,
http://media.example.com/fileSequence7801.ts
#EXT-X-CUE-IN
#EXTINF:4,
http://media.example.com/fileSequence7802.ts
#EXTINF:10,
http://media.example.com/fileSequence7803.ts
#EXTINF:3,
http://media.example.com/fileSequence7804.ts
เซิร์ฟเวอร์โฆษณา DAI นำเนื้อหาวิดีโอของโฆษณานาน 30 วินาทีมาแทนที่เนื้อหาระหว่าง OUT
และ IN
#EXTINF:10,
http://media.example.com/fileSequence7796.ts
#EXTINF:6,
http://media.example.com/fileSequence7797.ts
#EXT-X-CUE-OUT:DURATION=30
#EXTINF:10,
http://ads.example.com/fileSequence0001.ts
#EXTINF:10,
http://ads.example.com/fileSequence0002.ts
#EXTINF:10,
http://ads.example.com/fileSequence0003.ts
#EXT-X-CUE-IN
#EXTINF:4,
http://media.example.com/fileSequence7802.ts
#EXTINF:10,
http://media.example.com/fileSequence7803.ts
#EXTINF:3,
http://media.example.com/fileSequence7804.ts
ทำให้ช่วงพักโฆษณาสั้นลง
หากต้องการสิ้นสุดช่วงพักโฆษณาก่อนเวลา ตัวเข้ารหัสควรส่ง "CUE-IN" ในสตรีมเพื่อระบุว่าสตรีม DAI ควรสิ้นสุดช่วงพักโฆษณาทันทีและเริ่มแสดงเนื้อหาดิบอีกครั้ง
โปรดทราบว่าหากช่วงพักโฆษณาสิ้นสุดลงเร็วเกินไป เครื่องมือตรวจสอบกิจกรรมการสตรีมจะยังคงแสดงค่าเดิมของ "ระยะเวลาของช่วงพักโฆษณา", "ระยะเวลาที่ส่งโฆษณา" และ "ระยะเวลาที่แสดงโฆษณา"
สร้างช่วงพักโฆษณาเพิ่มเติม
คุณจะทำให้ช่วงพักโฆษณายาวขึ้นไม่ได้ในขณะที่ช่วงพักโฆษณากำลังเล่นให้ผู้ใช้ดู แต่ตัวเข้ารหัสอาจส่ง "CUE-OUT" เพิ่มเติมไปในสตรีมทันทีหลังจาก "CUE-IN" ของช่วงพักโฆษณาก่อนหน้า ซึ่งจะสร้างช่วงพักโฆษณาเพิ่มเติมพร้อมด้วยโฆษณาที่เพิ่งกำหนดขึ้นใหม่
เติมพื้นที่ช่วงพักโฆษณาที่เหลือ
หากไม่มีโฆษณาที่จะแสดงหรือไม่มีพื้นที่ที่จะเติม ผู้ใช้จะเห็นเนื้อหาที่เป็นแถบสเลทหรือเนื้อหาที่ใช้อ้างอิง ซึ่งขึ้นอยู่กับการตั้งค่าช่วงพักโฆษณาที่เลือกไว้เมื่อกําหนดค่าสตรีมแบบสดใน Ad Manager
ตัวทําเครื่องหมายโฆษณาที่รองรับสําหรับสตรีมแบบสด
ระบบรองรับเครื่องหมายต่อไปนี้สําหรับการแทรกโฆษณาในเนื้อหาสตรีมแบบสด
มาร์กอัปประเภทเหล่านี้สร้างขึ้นโดยโซลูชันการเข้ารหัสหลายอย่าง ซึ่งรวมถึง AWS Elemental
โดยมีรูปแบบดังนี้
CUE-OUT
#EXT-X-CUE-OUT:DURATION=10.50,K=V
#EXT-X-CUE-OUT:10.50,K=V
ขณะนี้ Ad Manager รองรับเฉพาะการส่ง BREAKID
เป็นคีย์-ค่าใน CUE-OUT
CUE-IN
#EXT-X-CUE-IN
CUE-OUT
#EXT-X-CUE:ID=31264,TYPE="SpliceOut",DURATION=30.00,TIME=77892728.264567
CUE-IN
มาร์กอัปเหล่านี้ไม่มีตัวบ่งชี้ CUE-IN
ที่ชัดเจน แต่จะทำเครื่องหมายทุกกลุ่มหลังจาก CUE-OUT
ด้วยข้อมูลต่อไปนี้
#EXT-X-CUE:ID=31264,TYPE="SpliceOut",DURATION=30.00,TIME=77892728.264567,ELAPSED=5.00
ข้อมูลนี้บ่งชี้ถึงตำแหน่งของกลุ่มภายในช่วงพักโฆษณา ตัวทำเครื่องหมาย CUE-IN
จะคำนวณโดยใช้ค่าของแอตทริบิวต์ ELAPSED
ร่วมกับระยะเวลาของกลุ่มเพื่อบ่งชี้กลุ่มสุดท้ายของช่วงพักโฆษณา
CUE-OUT
#EXT-X-DATERANGE:ID="splice-80f",PLANNED-DURATION=90.5,START-DATE="2017-03-24T13:46:04Z",SCTE35-OUT=0xFC301B00000000000000FFF00A05000001027FDF000000
ค่าของแอตทริบิวต์ PLANNED-DURATION
จะใช้เป็นระยะเวลาของช่วงพักโฆษณาที่คาดไว้
CUE-IN
#EXT-X-DATERANGE:ID="splice-7ef",START-DATE="2017-03-24T13:38:04Z",SCTE35-IN=0xFC301B00000000000000FFF00A05000000FF7F5F0000000000007B7BA160
ตัวบ่งชี้การเชื่อมต่อตอนเข้าและออกของ SCTE35 จะระบุได้ผ่านสัญญาณเวลาในแท็ก HLS ข้อมูล SCTE จะพร้อมใช้งานในรูปแบบไบนารีและต้องถอดรหัสเพื่อระบุประเภทของสัญญาณที่กำลังส่ง
CUE-OUT
#EXT-OATCLS-SCTE35:/DAlAAAAAAAAAP/wFAUAAA+if+/+INAJ0P4AKTLgAAAAAAAA9UTkTA==
CUE-IN
#EXT-OATCLS-SCTE35:/DAgAAAAAAAAAP/wDwUAAAPvf0//ahTGjwAAAAAAALda4HI=
ข้อมูลไบนารีของ SCTE-35 (เข้ารหัสแบบ base64) ต้องได้รับการถอดรหัสและแยกวิเคราะห์เพื่อระบุว่ามี CUE-OUT/CUE-IN ที่ถูกต้องหรือไม่ รวมถึงข้อมูลการกำหนดเป้าหมายช่วงพักโฆษณาใดก็ตาม
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-OUT ที่ถูกต้อง
CUE-OUT
/DAsAAAAAyiYAP/wBQb/PVbrDQAWAhRDVUVJB48zWH//AAEuGvsAACIAAdRJqiI=
เมื่อถอดรหัสแล้ว ข้อความจะมีช่องต่อไปนี้
splice_command_type
ที่ตั้งค่าเป็น 6 บ่งชี้ว่านี่คือสัญญาณเวลาsegmentation_type_id
บ่งชี้ถึงประเภทของสัญญาณเวลา
ระบบยอมรับค่า segmentation_type_id
ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-OUT ที่ถูกต้อง
34
: การเริ่มช่วงพัก
ระบบยอมรับค่า segmentation_type_id
(เมื่อ splice_command_type = 6
) ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-IN ที่ถูกต้อง
35
: การสิ้นสุดช่วงพัก
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-IN ที่ถูกต้อง
CUE-IN
/DAnAAAAAyiYAP/wBQb/PX1ezQARAg9DVUVJB48zWH+/AAAjAAGwzKWt
ข้อมูลไบนารีของ SCTE-35 (เข้ารหัสแบบ base64) ต้องได้รับการถอดรหัสและแยกวิเคราะห์เพื่อระบุว่ามี CUE-OUT/CUE-IN ที่ถูกต้องหรือไม่ รวมถึงข้อมูลการกำหนดเป้าหมายช่วงพักโฆษณาใดก็ตาม
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-OUT ที่ถูกต้อง
CUE-OUT
/DAxAAAAAAAAAP/wBQb//ciI8QAbAhlDVUVJXQk9EX/fAAEuK3sBBUMxNDY0MAEBpOBiAg==
เมื่อถอดรหัสแล้ว ข้อความจะมีช่องต่อไปนี้
splice_command_type
ที่ตั้งค่าเป็น 6 บ่งชี้ว่านี่คือสัญญาณเวลาsegmentation_type_id
บ่งชี้ถึงประเภทของสัญญาณเวลา
ระบบยอมรับค่า segmentation_type_id
ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-OUT ที่ถูกต้อง
48
: จุดเริ่มต้นสำหรับโฆษณาของผู้ให้บริการ
ระบบยอมรับค่า segmentation_type_id
(เมื่อ splice_command_type = 6
) ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-IN ที่ถูกต้อง
49
: จุดสิ้นสุดสำหรับโฆษณาของผู้ให้บริการ
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-IN ที่ถูกต้อง
CUE-IN
/DAsAAAAAAAAAP/wBQb//e78sQAWAhRDVUVJXQk9EX+fAQVDMTQ2NDEBAaKNu/4=
ข้อมูลไบนารีของ SCTE-35 (เข้ารหัสแบบ base64) ต้องได้รับการถอดรหัสและแยกวิเคราะห์เพื่อระบุว่ามี CUE-OUT/CUE-IN ที่ถูกต้องหรือไม่ รวมถึงข้อมูลการกำหนดเป้าหมายช่วงพักโฆษณาใดก็ตาม
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-OUT ที่ถูกต้อง
CUE-OUT
/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==
เมื่อถอดรหัสแล้ว ข้อความจะมีช่องต่อไปนี้
splice_command_type
ที่ตั้งค่าเป็น 6 บ่งชี้ว่านี่คือสัญญาณเวลาsegmentation_type_id
บ่งชี้ถึงประเภทของสัญญาณเวลา
ระบบยอมรับค่า segmentation_type_id
ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-OUT ที่ถูกต้อง
52
: จุดเริ่มต้นสำหรับโอกาสในตำแหน่งโฆษณาของผู้ให้บริการ
ระบบยอมรับค่า segmentation_type_id
(เมื่อ splice_command_type = 6
) ต่อไปนี้ว่าเป็นสัญญาณเวลา CUE-IN ที่ถูกต้อง
53
: จุดสิ้นสุดสำหรับโอกาสในตำแหน่งโฆษณาของผู้ให้บริการ
ตัวอย่างเช่น ข้อมูลไบนารีต่อไปนี้มีสัญญาณ CUE-IN ที่ถูกต้อง
CUE-IN
/DAvAAAAAAAA///wBQb+cuN0EAAZAhdDVUVJSAAAjn+PCAgAAAAALKChijUCALdPwUA=
มาโครสําหรับมาร์กอัป SCTE-35
หากฟีดมีมาร์กอัป EXT-OATCLS-SCTE35
หรือ EXT-X-DATERANGE
ระบบจะแยกข้อมูลเมตาและทำให้พร้อมใช้งานผ่านคีย์-ค่าที่กำหนดเองโดยอัตโนมัติ คุณต้องกำหนดคีย์-ค่าที่กำหนดเองและแทรกเป็นมาโครเมื่อสร้างแท็กโฆษณา
เมื่อคุณตั้งค่าคีย์-ค่าใหม่ที่กำหนดเองสำหรับช่อง SCTE-35 ให้ใช้คีย์ที่กำหนดเอง (เช่น "scte35") และตั้งค่าเป็นมาโครที่สอดคล้องกับประเภทช่องที่มีในฟีด ดังนี้
มาโคร | คำอธิบาย |
---|---|
%%SPLICE_INSERT_EVENT_ID%% |
ระบบจะแปลงจํานวนเต็มที่ไม่มีเครื่องหมายในข้อความ SCTE35 เป็นสตริงเป็นตัวเลขทศนิยม |
%%SPLICE_INSERT_UPID%% |
|
%%TIME_SIGNAL_EVENT_ID%% |
|
%%TIME_SIGNAL_UPID%% |
แสดงผลเป็นเลขฐานสิบหกตัวพิมพ์เล็กที่ไม่มี 0x นำหน้า |
%%TIME_SIGNAL_UPID_RAW%% |
แทรกไบต์ดิบจากข้อความ SCTE โดยไม่มีการแปลงเลขฐาน 16 (สตริงเริ่มต้นต้องเป็นสตริงที่เข้ารหัส UTF-8 ที่ถูกต้อง) |
%%AFMM_CBC%% |
แยกโค้ดช่วงพักโฆษณาจากข้อมูลการเชื่อมต่อ (สิ่งนี้จำเป็นสําหรับข้อกําหนดเฉพาะของ AF2M ในฝรั่งเศส) |