Panduan ini membahas cara mengonfigurasi manipulator manifes untuk meminta segmen iklan atau slate menggunakan metode segmen pod iklan.
Pilih protokol streaming:
Prasyarat
Sebelum melanjutkan, Anda harus menyiapkan acara livestream untuk jenis Penyisipan Iklan Dinamis (DAI) Penayangan pod pengalihan dan profil encoding. Untuk menyiapkan acara livestream, pilih salah satu metode berikut:
- UI Ad Manager: Siapkan live stream untuk DAI.
- Ad Manager API: Gunakan library klien untuk memanggil metode
LiveStreamEventService.createLiveStreamEvents. Tetapkan parameterLiveStreamEvent.dynamicAdInsertionTypekePOD_SERVING_REDIRECT. - Mengautentikasi permintaan: Setiap permintaan segmen yang dibuat menggunakan penayangan pod pengalihan segmen harus menyertakan token yang ditandatangani HMAC untuk autentikasi. Hitung token ini sekali per jeda iklan dan bagikan token di semua sesi streaming. Untuk menghitung token HMAC, lihat Mengautentikasi permintaan pod iklan.
Setelah menyiapkan acara live stream, ambil profil encoding acara
dari UI atau API Ad Manager dengan memanggil
metode DaiEncodingProfileService.getDaiEncodingProfilesByStatement.
Mengambil aliran data konten
Saat pengguna memilih acara live stream, aplikasi klien akan membuat permintaan streaming ke Google Ad Manager. Dalam respons streaming, aplikasi mengekstrak ID dan metadata sesi Google DAI untuk disertakan dalam permintaan manifes streaming.
Contoh berikut meneruskan ID sesi DAI Google ke manipulator manifes:
https://MANIFEST_MANIPULATOR_URL/manifest.m3u8?DAI_stream_ID=SESSION_ID&network_code=NETWORK_CODE&DAI_custom_asset_key=CUSTOM_ASSET_KEY
Saat memproses permintaan pemutaran konten video, simpan ID sesi Google DAI dan CUSTOM_ASSET_KEY dari permintaan untuk bersiap melakukan penyambungan iklan.
Mengidentifikasi segmen jeda iklan dan menyisipkan diskontinuitas
Saat memproses setiap manifes varian, identifikasi tag EXT-X-CUE-IN dan
EXT-X-CUE-OUT dalam aliran Anda, yang menunjukkan awal dan akhir jeda
iklan.
Ganti tag EXT-X-CUE-IN dan EXT-X-CUE-OUT dengan elemen
EXT-X-DISCONTINUITY agar pemutar video klien dapat beralih antara
konten dan iklan.
Contoh manifes berikut menggantikan tag EXT-X-CUE-IN dan 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
Contoh berikut menunjukkan manifes yang diganti:
#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
Segmen iklan DAI Google tidak dienkripsi. Jika konten Anda dienkripsi, hapus
enkripsi dengan menyisipkan elemen EXT-X-KEY:METHOD=NONE sebelum segmen iklan
pertama dari setiap jeda iklan. Di akhir jeda iklan, tambahkan kembali enkripsi dengan
menyisipkan EXT-X-KEY yang sesuai.
Melacak waktu mulai, durasi, dan indeks jeda iklan mendatang.
Membangun URL segmen iklan
Ganti setiap segmen konten di antara tag EXT-X-DISCONTINUITY dengan URL yang mengarah ke metode segmen pod iklan.
Contoh berikut merakit segmen pod iklan. Perhatikan bahwa segmen iklan menggunakan indeks berbasis nol:
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
Contoh berikut menyisipkan segmen pod iklan ke dalam manifes:
#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
Opsional: Menjadwalkan jeda iklan
Untuk meningkatkan rasio pengisian, kirim Early Ad Break Notification (EABN) dengan durasi pod iklan, parameter penargetan kustom, dan data sinyal SCTE-35. Untuk mengetahui detail selengkapnya, lihat Mengirim notifikasi jeda iklan awal.