Home Technische Artikel Bessere Transparenz und Fehlerbehebung für serverseitige Anzeigeneinfügung (SSAI)
Applications

Bessere Transparenz und Fehlerbehebung für serverseitige Anzeigeneinfügung (SSAI)

About The Author

Outline

Verbesserung der Beschaffung, Wiedergabe und Verifizierung von OTT-Werbung

OTT ist eine ausgezeichnete Gelegenheit für Fernsehsender und Content-Ersteller, über das lineare Fernseherlebnis hinauszugehen, indem es die Möglichkeit bietet, Videostreams auf der Grundlage der Interessen jedes Zuschauers zu personalisieren. Dieser hohe Grad an Personalisierung ist auch ein entscheidender Faktor für die Gewinnung von Werbeeinnahmen in OTT-Streams, da er die Bereitstellung von zielgerichteter Werbung zu Premium-CPM-Raten ermöglicht.

Diese Chance wird jedoch durch Herausforderungen bei der Beschaffung, Wiedergabe und Verifizierung von Werbeanzeigen behindert. Viele der Standards für OTT-Werbung sind im Entstehen begriffen und entwickeln sich noch weiter. Darüber hinaus sind detaillierte Debugging- und Analysen zur Quality of Service (QoS) oft begrenzt. Außerdem ist es wichtig, die Qualität des Erlebnisses (Quality of Experience, QoE) zu verstehen, z. B. ob eine Werbeanzeige bei gleichbleibender Lautstärke gespielt wird.

Vor dem Hintergrund dieser Herausforderungen und unseres kontinuierlichen Engagements zur Verbesserung der Skalierung und Verringerung der Latenz haben wir einen dedizierten Ad-Proxy-Service als Teil unserer Plattform entwickelt. Ursprünglich als Back-End-Erweiterung konzipiert, um die Skalierbarkeit unserer Streaming-Plattform zu verbessern, bietet sie auch mehrere Verwaltungsvorteile, darunter eine weitaus größere Transparenz und Kontrolle des Anzeigenbeschaffungs- und -Bereitstellungs-Workflows. Mit diesen Tools können Publisher die Bereitstellung der richtigen Werbung für den richtigen Betrachter optimieren und sowohl QoS als auch viele Aspekte der QoE überwachen.

Personalisierte Streams mit dem Manifest-Server

In einem vorherigen Blogbeitrag haben wir die Rolle des Manifest-Servers bei der Personalisierung von Streams erläutert, um maßgeschneiderte Werbeinhalte zu integrieren. Wie in diesem Beitrag besprochen, ist der Manifest-Server dafür verantwortlich, Anzeigenanfragen zu stellen, die Antwort zu analysieren und Werbemittel wie alle anderen Inhalte herunterzuladen und zu verarbeiten. Der Manifest-Server sendet dann einen integrierten Stream an den Player, der den Zuschauern ein konsistentes Erlebnis bietet, die Gerätekompatibilität maximiert und Werbeblocker umgeht.

Der Manifest-Server ist zwar gut für die Wiedergabe und Personalisierung gerüstet, aber die Arbeit, die mit der Beschaffung und Überprüfung von Werbung verbunden ist, bringt eine zusätzliche Komplexität und neue Herausforderungen mit sich. Da wir weiterhin die Streaming-Architekturen optimieren, die Millionen von Zuschauern personalisierte Erlebnisse ermöglichen, führte dies zur Entwicklung eines Ad-Proxy-Services, der sich auf die Unterstützung dieser Aktivitäten konzentriert.

Herausforderungen bei der Beschaffung und Verifizierung

Um Werbeanzeigen zu erhalten, die in einen Stream eingefügt werden sollen, muss der Anzeigeninhalt von einem Anzeigenentscheidungsserver (ADS) wie FreeWheel oder Google Ad Manager abgerufen werden. Bei diesem Prozess werden Werbeanzeigen angefordert, der Stream und alle zugehörigen Informationen weitergeleitet, damit die richtigen Werbeanzeigen platziert werden. Die Herausforderung besteht darin, dass viele Anzeigen auf einem bestimmten Server nur Wrapper sind, die auf die tatsächlichen Anzeigen auf einem anderen Server verweisen.

Wenn beispielsweise vier Anzeigenplätze besetzt werden müssen, können zwei direkt eingefügt werden, die anderen beiden haben jedoch möglicherweise keine Werbeelemente und sind stattdessen Wrapper, die sagen: „Ihre Anzeige ist nicht hier, sie ist woanders und Sie müssen sie hier abholen.“ Wir versuchen, für jede Werbeanzeige, die wir sehen, ein abspielbares Videoelement auszupacken und zu beschaffen. Wir validieren die Antworten beim Auspacken, um sicherzustellen, dass ein spielbares Werbematerial in den Stream eingehängt werden kann. Da unsere Architektur so konzipiert ist, dass jedem Zuschauer ein personalisiertes Manifest zur Verfügung gestellt wird, wird dieser Prozess für jede Sitzung wiederholt, was eine erhebliche Belastung darstellen kann.

Latenz für Ad-Lookup

Die Verfolgung von Assets über mehrere Wrapper kann eine Hauptursache für Latenzzeiten sein, wenn sie nicht parallel behandelt werden. Manche Verpackungen werden nie zu einem echten Werbemittel. Um zu verhindern, dass das Videoerlebnis dadurch beeinträchtigt wird, beschränken wir diesen „Wasserfall“, bevor wir die nächste Werbung abholen. Die Offenlegung von Daten und Erkenntnissen während dieses Workflows hilft Publishern, Nachfragequellen zu identifizieren und zu beheben, die nicht dazu führen, dass Anzeigen angezeigt werden, und stellt sicher, dass die Zuschauer ein ununterbrochenes Fernseherlebnis genießen und gleichzeitig den Werbeeinsatz maximieren.

Um ein responsives Anzeigenerlebnis zu gewährleisten, müssen Sie sich auch die Auswirkungen der Anzeigensuche auf den Manifest-Server ansehen, der damit beschäftigt ist, personalisierte Streams mit minimaler Latenz zusammenzustellen. Der Manifest-Server verfügt nicht über unbegrenzte Ressourcen, die für die Generierung und Speicherung von Leistungsdaten für Werbeanzeigen vorgesehen sind. Es speichert nur die Anzeigeninformationen, die zur Erstellung des Manifests benötigt werden. Dies kann die Verfügbarkeit von Daten einschränken, um problematische Anzeigenaufrufe und die Wiedergabe zu debuggen.

Ad Proxy Service übernimmt die Funktion

Publisher benötigen heute eine skalierbare Plattform, die den zunehmend komplexeren Prozess der Anzeigeneinfügung interagiert und verwaltet und Transparenz in den Workflow und die Beziehung zu ihren Werbepartnern bietet.

Unten ist die Flussarchitektur des Ad Proxy Service dargestellt. Am vorderen Ende des Ablaufs fordert der Spieler den Manifestserver an, bis er genügend Informationen hat, um Anzeigen von den ANZEIGEN anzufordern. Sobald dies geschieht, übergibt der Manifest-Server diese Aufgabe an den Ad-Proxy-Service, anstatt sich an die ANZEIGEN selbst zu wenden. Diese Auslagerung funktioniert nicht nur vom Manifest-Server, sondern ermöglicht auch mehrere weitere Vorteile, wie eine geringere Latenz und die Erfassung von weit mehr Debug-Daten.

Das Abrufen und Überprüfen einer Werbeanzeige wird vom Ad Proxy Service erledigt, der dem Manifestserver Ressourcen freigibt, um die Anzeigen zur Wiedergabe in den Stream zu integrieren und ein nahtloses Fernseherlebnis zu ermöglichen.

  1. Der Spieler fordert ein Manifest an.
  2. Content fordert den Anzeigenvertreter auf, Anzeigen abzurufen. Nach Erhalt einer eindeutigen ID für die Arbeit wird der Inhalt zu anderen Schritten in einer Manifestgenerierung weitergeleitet.
  3. Ad Proxy beginnt mit der Ausführung der angeforderten Arbeit.
    1. Die Arbeit wird in eine Warteschlange gestellt, um auf die Verarbeitung der Arbeit zu warten.
    2. Der „Arbeiter“-Server zieht einen Job aus der Warteschlange und beginnt damit, Werbeelemente aus den ANZEIGEN anzufordern und sowohl die Arbeitsschritte als auch die daraus resultierenden Daten in der Datenbank zu speichern.
  4. Content fragt Ad Proxy, wo sind meine Anzeigen für Job x? Und verweist auf die eindeutige Kennung. Ad Proxy gibt die Werbeanzeigen an den Inhalt zurück, und der Inhalt fügt sie in das Manifest und gibt diese an den Player zurück.

Anzeigensuche wird skaliert

Wenn der Ad Proxy Service Anfragen empfängt, werden sie in die Warteschlange gestellt, um neue Anforderungen zu erhalten, was die Skalierbarkeit verbessert. Außerdem erhält der Manifest-Server eine Job-ID als Platzhalter, während ADS nachverfolgt werden, sodass der Manifest-Server weitergehen kann, ohne auf Ad-Proxy warten zu müssen. Der WERBEARBEITER beginnt dann, die „Werbeaufträge“ in der Warteschlange zu durchstöbern, indem er die WERBEANZEIGEN anruft und alle erfassten Spielerdaten und andere Stream-Informationen mitsendet, damit die WERBEANZEIGEN die entsprechenden Werbeanzeigen bereitstellen können. Ein wichtiger Vorteil dieses Prozesses ist, dass die ADS-Mitarbeiter ADS parallel abrufen, wodurch potenzielle Engpässe beseitigt und Latenzzeiten reduziert werden.

Standardisierung von ADS-Daten

Während des gesamten Prozesses wird die Kommunikation zwischen dem Anzeigenvertreter und DEN ANZEIGEN zusammen mit den Anzeigen aufgezeichnet und in einer Datenbank gespeichert. Die Daten, die von Provider zu Provider variieren können, werden mit konsistenten Benennungskonventionen analysiert und normalisiert. Dadurch ist es wesentlich effizienter, die ADS-Daten während der Analyse oder des Debugging zu verwenden.

Die Werbeanzeigen bereitstellen

Der Prozess ist abgeschlossen, wenn der Manifest-Server den Punkt erreicht, an dem die ADS benötigt werden. Er ruft Ad Proxy an und sagt: „Hier ist die Job-ID, die du mir gegeben hast, gib mir die Anzeigen.“ Ad-Proxy ruft sie dann aus der Datenbank ab und sendet sie mit.

Indizieren und Speichern von Ad-Beacon-Aktivitäten

Der Ad Proxy Service ist auch für die Erfassung und Speicherung von Beacon-Informationen vom Spieler verantwortlich, ein Schlüssel zur ordnungsgemäßen Monetarisierung. Beacons werden als einzelne Objekte mit einem Primärschlüssel gespeichert. Aus diesem Grund stellt der Ad Proxy-Service, wenn der Manifestserver ADS anfordert, auch Beacon-Informationen bereit. Wenn der Spieler dann einen bestimmten Checkpoint erreicht, wird ein Beacon ausgelöst, der auf den Anweisungen im Manifest basiert. Der Beacon Worker ruft dann die Objekte aus der Datenbank ab und führt dann entsprechende Updates durch, um zu sagen, dass dies zu diesem Zeitpunkt ausgelöst wurde. Die Antwort von den ADS war x, es gab einen Fehler oder keinen Fehler, und alle diese Informationen werden gespeichert.

Fehlerbehebung bei der Anzeigenwiedergabe

Nachverfolgung und Analyse sind Bestandteil des Prozesses. Die Ad-Proxy-Architektur bietet umfassende Informationen über die Anzeigenleistung und die Zuschauerzahl über eine API, eine GUI und Push-Protokolle. Wir wissen, ob und warum es ein Problem mit der Anzeige gibt. Wenn eine Anzeige nicht geladen wird, müssen Sie also nicht mehr mit den Fingern zeigen. Sie können auf die Daten zeigen. Jede Sitzung ist ohne zusätzliche Konfiguration enthalten, und die Daten sind maximal 14 Tage lang zugänglich.

Über die API können Inhaltsanbieter folgende Informationen analysieren:

  • Raw-Anforderungs- und Antwortdaten von externen ANZEIGEN
  • Antwortzeit und -Größe
  • Anzahl der zurückgegebenen Anzeigen
  • Position des Ad-Pod
  • Gerätetyp
  • Anzahl der Wrapper
  • Fehler (z. B. keine Anzeige zurückgeben, Parsing-Fehler, Verbindungsfehler)
  • Warnungen von Werbeanbietern (z. B. ein optionaler, aber empfohlener Parameter fehlt)
  • Anforderungsfehler (z. B. VPAID)

Schlussfolgerung

Publisher, die jedem Zuschauer ein personalisiertes Videoerlebnis bieten möchten, müssen ihre Streaming-Workloads skalieren. Durch die Einrichtung eines dedizierten Dienstes für die Anzeigenverarbeitung wird nicht nur die Leistung des Manifest-Servers verbessert, der Engine, die personalisierte Anzeigen, Inhalte und Blackouts für einzelne Zuschauer ermöglicht, sondern auch ein leistungsstarkes Tool zur Fehlerbehebung werbeunterstützter Videostreams geschaffen und ein hochwertiges Fernseherlebnis gewährleistet.

Mit einem besseren Verständnis der Grundursache von Problemen mit Ad Proxy Services haben Inhaltsanbieter und Rundfunkanstalten Einblick in den betrieblichen Workflow der Werbung. Sie können mit anderen Daten korrelieren, um die Zuschauerbindung zu erhöhen und den Werbeeinsatz zu maximieren.