Inhalt
1. Was ist VAST
VAST(Video Ad Serving Template) – IAB-Standard für die Übertragung von Videoanzeigen-Metadaten vom Werbeserver zum Player. Version 4.0 ist aktuell.
Funktioniert so:
- Vor dem Hauptinhaltsvideo ruft der Player die VAST-URL ab
- Erhält XML mit der Werbebeschreibung: Speicherort der mp4, Dauer, nach wie vielen Sekunden Skip möglich ist, wohin der Klick führt
- Spielt Werbung ab (Pre-Roll)
- Sendet einen Impression-Tracking-Pixel, dass die Anzeige gezählt wurde
- Enthält das Hauptvideo
الميزة مقارنةً بأداة JS الخاصة بنا:funktioniert in deinem bestehenden PlayerKeine Änderungen an der UI erforderlich.
2. Wo bekomme ich die VAST URL
VAST-Format verfügbarnur für Blöcke im Formatvideo(In-Stream 16:9). Auf der Seite des Blocks/pub/zones/{id}siehst du ein rosa Banner «🎬 VAST URL - für deinen Videoplayer»:
https://sladu.net/vast/{subid}.xml
Beispiel:https://sladu.net/vast/tvid9234f7.xml
3. Struktur der VAST-Antwort
<?xml version="1.0" encoding="UTF-8"?>
<VAST version="4.0" xmlns="http://www.iab.com/VAST">
<Ad id="impression-uuid-here">
<InLine>
<AdSystem version="1.0">Sladu Network</AdSystem>
<AdTitle><![CDATA[Заголовок креатива]]></AdTitle>
<Impression><![CDATA[https://sladu.net/openrtb/imptracker/impression-uuid]]></Impression>
<Creatives>
<Creative id="creative-id" sequence="1">
<Linear skipoffset="00:00:05">
<Duration>00:00:30</Duration>
<MediaFiles>
<MediaFile delivery="progressive" type="video/mp4" width="640" height="360">
<![CDATA[https://cdn.advertiser.com/video.mp4]]>
</MediaFile>
</MediaFiles>
<VideoClicks>
<ClickThrough><![CDATA[https://sladu.net/c/impression-uuid/tracking-token]]></ClickThrough>
</VideoClicks>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
4. VAST-Felder
- Titel des Creatives- Pixel-URL zur Impression-Zählung. Der Player feuert ihn, wenn die Werbung tatsächlich angezeigt wurde.– MP4-Video-URL, Abmessungen (immer 16:9), MIME-Typ- Videodauer im Format HH:MM:SSskipoffset="00:00:05"- nach 5 Sek. kann der Skip-Button angezeigt werden- URL, zu der der Nutzer nach dem Klick weitergeleitet wird. Enthält bereits unsere Weiterleitung zum Werbetreibenden + Click-Tracking.
5. Leerer VAST (no_match)
Wenn kein passender Creative verfügbar ist (keine aktiven Kampagnen für dein Geo, Antifraud-Filter) – geben wir ein gültiges leeres VAST zurück:
<?xml version="1.0" encoding="UTF-8"?> <VAST version="4.0"></VAST>
Der Player muss dies als „keine Werbung" behandeln und sofort den Hauptinhalt starten. Alle normalen Player tun das.
6. JW Player 8+
jwplayer("player").setup({
file: "your-content.mp4",
advertising: {
client: "vast",
tag: "https://sladu.net/vast/abc12345.xml"
}
});
Für Midroll / Postroll:
advertising: {
client: "vast",
schedule: {
preroll: { offset: "pre", tag: "https://sladu.net/vast/abc12345.xml" },
mid: { offset: "50%", tag: "https://sladu.net/vast/abc12345.xml" },
postroll:{ offset: "post", tag: "https://sladu.net/vast/abc12345.xml" }
}
}
7. video.js + videojs-ima
8. Google IMA SDK (universell)
9. HLS.js + Google IMA
HLS.js hat keine integrierte VAST-Unterstützung. Verwende eine Kombination aus HLS.js (für Inhalte) + IMA SDK (für Werbung):
if (Hls.isSupported()) {
const hls = new Hls();
hls.loadSource('your-stream.m3u8');
hls.attachMedia(videoElement);
}
// VAST через IMA SDK как в примере выше
const adsRequest = new google.ima.AdsRequest();
adsRequest.adTagUrl = "https://sladu.net/vast/abc12345.xml";
adsLoader.requestAds(adsRequest);
10. Plyr / Flowplayer / Bitmovin / Brightcove
- Plyr- kein integriertes VAST, benötigt wirdplyr-adsPlugin mit Google IMA-Unterstützung
- Flowplayer- VAST wird in der Commercial-Version out of the box unterstützt, Plugin
flowplayer-ima - Bitmovin Player- integriertes AdsModule, Konfiguration:
{ ads: [{ tag: { url: "https://sladu.net/vast/...", type: "vast" }, position: "pre" }] } - Brightcove- über das Plugin
bc-vast-ads-plugin - Shaka Player -
shaka-player-imafügt Google IMA hinzu
11. Testen
Öffne einfach die VAST-URL im Browser
Sollte XML anzeigen. Wenn leer () - bedeutet, es gibt kein passendes Creative für dein Geo.
Google IMA Sample Player
googleads.github.io/googleads-ima-html5/vsi- füge die VAST-URL ein, klicke auf Play – und sieh, wie das IMA SDK unseren VAST verarbeitet.
IAB VAST Inspector
vasttester.iabtechlab.com- offizieller IAB-Inspektor. Prüft die Übereinstimmung des XML mit der Spezifikation.
curl
curl -v "https://sladu.net/vast/abc12345.xml" \
-H "Referer: https://yoursite.com/page" \
-H "User-Agent: Mozilla/5.0 (X11; Linux) Chrome/120"
12. Event-Tracking
Aktuell senden wir im VAST-Response einen minimalen Satz an Trackern:
- Impression wurde gezählt- URL mit unserem Click-Tracking
Auf Anfrage können wir hinzufügenfür:
start- Video hat begonnen abzuspielenfirstQuartile,midpoint,thirdQuartile- تم مشاهدة 25/50/75%complete- Video bis zum Ende angesehenskip- User hat Skip gedrücktmute,unmute,pause,resume,fullscreen
Standardmäßig werden sie derzeit nicht für die Abrechnung benötigt – wir zählen die Impression selbst. Wenn der Werbetreibende CPV zahlt (Cost per View, 100% Completion) – wird es per Support-Ticket aktiviert.
Integration funktioniert nicht?Öffne die VAST-URL im Browser – es sollte XML angezeigt werden. Wenn leer – keine Creatives für das Geo. Bei Fehler – schreib an@sladu_support with example URL and player.