Anzeigen mit Segmentweiterleitung einfügen

In diesem Leitfaden wird beschrieben, wie Sie Ihren Manifest-Manipulator so konfigurieren, dass Anzeigen- oder Slate-Segmente mit der Methode für Anzeigengruppen-Segmente angefordert werden.

Wählen Sie ein Streamingprotokoll aus:

Vorbereitung

Bevor Sie fortfahren, müssen Sie ein Livestream-Ereignis für den Typ Weiterleitung für Anzeigengruppen-Bereitstellung der dynamischen Anzeigenbereitstellung (Dynamic Ad Insertion, DAI) und Codierungsprofile einrichten. Wählen Sie eine der folgenden Methoden aus, um ein Livestream-Ereignis einzurichten:

Nachdem Sie das Livestream-Ereignis eingerichtet haben, rufen Sie die Codierungsprofile des Ereignisses über die Ad Manager-UI oder API ab, indem Sie die DaiEncodingProfileService.getDaiEncodingProfilesByStatement Methode aufrufen.

Contentstream abrufen

Wenn ein Nutzer ein Livestream-Ereignis auswählt, sendet die Client-App eine Streamanfrage an Google Ad Manager. In der Streamantwort extrahiert die App die Google DAI-Sitzungs-ID und die Metadaten, die in die Manifestanfrage für den Stream aufgenommen werden sollen.

Im folgenden Beispiel wird eine Google DAI-Sitzungs-ID an einen Manifest-Manipulator übergeben:

https://MANIFEST_MANIPULATOR_URL/manifest.m3u8?DAI_stream_ID=SESSION_ID&network_code=NETWORK_CODE&DAI_custom_asset_key=CUSTOM_ASSET_KEY

Speichern Sie beim Verarbeiten der Wiedergabeanfrage für Videocontent die Google DAI-Sitzungs ID und CUSTOM_ASSET_KEY aus der Anfrage, um die Anzeigenzusammenführung vorzubereiten.

Segmente für Werbeunterbrechungen identifizieren und Unterbrechungen einfügen

Identifizieren Sie beim Verarbeiten der einzelnen Variantenmanifeste die Tags EXT-X-CUE-IN und EXT-X-CUE-OUT in Ihrem Stream, die den Beginn und das Ende einer Werbeunterbrechung angeben.

Ersetzen Sie die Tags EXT-X-CUE-IN und EXT-X-CUE-OUT durch die Elemente EXT-X-DISCONTINUITY, damit der Videoplayer des Clients zwischen Content und Anzeigen wechseln kann.

Im folgenden Beispielmanifest werden die Tags EXT-X-CUE-IN und EXT-X-CUE-OUT ersetzt:

#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

Das folgende Beispiel zeigt ein ersetzt 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

Anzeigensegmente der dynamischen Anzeigenbereitstellung von Google sind nicht verschlüsselt. Wenn Ihr Content verschlüsselt ist, entfernen Sie die Verschlüsselung, indem Sie das Element EXT-X-KEY:METHOD=NONE vor dem ersten Anzeigensegment jeder Werbeunterbrechung einfügen. Fügen Sie am Ende der Werbeunterbrechung die Verschlüsselung wieder hinzu, indem Sie ein entsprechendes EXT-X-KEY-Element einfügen.

Notieren Sie sich die Startzeit, Dauer und den Index der bevorstehenden Werbeunterbrechung.

URLs für Anzeigensegmente erstellen

Ersetzen Sie jedes Contentsegment zwischen den Tags EXT-X-DISCONTINUITY durch eine URL, die auf die Methode für Anzeigen-Pod-Segmente verweist.

Im folgenden Beispiel wird ein Anzeigen-Pod-Segment zusammengestellt. Anzeigensegmente verwenden einen nullbasierten Index:

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

Im folgenden Beispiel werden die Anzeigen-Pod-Segmente in das Manifest eingefügt:

#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

Optional: Werbeunterbrechung planen

Um die Ausführungsrate zu verbessern, senden Sie eine Benachrichtigung über eine frühe Werbeunterbrechung (Early Ad Break Notification, EABN) mit der Dauer des Anzeigen-Pods, benutzerdefinierten Targeting-Parametern und SCTE-35-Signaldaten. Weitere Informationen finden Sie unter Benachrichtigungen über frühe Werbeunterbrechungen senden.