HLS bei der Migration von Shaka-Spielern

Übersicht

Das Cast Web Receiver SDK unterstützt die Wiedergabe von Inhalten mit mehreren Webstreaming-Protokollen. Je nach verwendetem Protokoll lädt das SDK einen Player zum Abspielen der Inhalte. Bei HLS-Inhalten wird die Media Player Library (MPL) geladen. Bei DASH-Inhalten wird der Shaka Player geladen.

Künftig werden die Entwicklerteams des Cast SDK und des Shaka Players ihre Bemühungen bündeln, um die Unterstützung der Wiedergabe von HLS-Inhalten auf dem Shaka Player zu verbessern. MPL erhält keine kritischen Updates mehr. Wir empfehlen, für die Wiedergabe von HLS-Inhalten in Ihrer Anwendung den Shaka Player zu verwenden.

Vorteile von Shaka Player

Wenn Sie den Player wechseln, profitieren Sie von folgenden Vorteilen:

  • Stabilere Streamingsitzungen für Nutzer, mit weniger Ladezeitausfällen und Latenz.
  • Weiterer Einsatz der neuesten HLS-Funktionen
  • Klarere Ursachenanalyse bei Problemen mit der Kompatibilität von Playern und Inhalten aufgrund der Open-Source-Natur von Shaka Player.
  • Dank der Open-Source-Player-Codebase können Partner zum Shaka Player-Projekt beitragen.
  • Die Zeit bis zur Produktionseinführung von Funktionen und Fehlerkorrekturen wird deutlich verkürzt, da die Release-Taktung von Shaka Player häufig und unabhängig von den Releases des Web Receiver SDKs ist.
  • Bessere Kontrolle über die Wiedergabeumgebung über die shakaVersion API
  • Erweiterter Wiedergabesupport von Google: Die technischen Ressourcen konzentrieren sich auf die HLS-Wiedergabe im Shaka Player, wie in der Roadmap zu sehen.

Zeitachse

Im Web Receiver SDK wird der Shaka Player als Standardplayer für die Wiedergabe von HLS-Inhalten verwendet. Die Migration erfolgt in mehreren Phasen, um Partner durch den Migrationsprozess zu begleiten.

Phase Startdatum Übersicht
1 Oktober 2022 Das Cast Web Receiver SDK führt APIs ein, mit denen sich HLS-Inhalte im Shaka Player abspielen lassen.
2 1. Halbjahr 2025 Das Cast Web Receiver SDK ersetzt den Standardplayer durch den Shaka Player, um HLS-Inhalte wiederzugeben.

Die Entwicklungsteams des Web Receiver SDK verfolgen einen leistungsorientierten Ansatz und gehen erst dann zur nächsten Phase über, wenn die Leistung des Shaka-Players der Grundlegenden Leistung von MPL entspricht. Diese Änderungen werden in der Google-Gruppe cast-sdk-announcements angekündigt und in diesem Leitfaden aktualisiert.

Aktivieren

Ab CAF-Version 3.0.0105 gibt es eine Konfiguration auf Anwendungsebene, mit der die Verwendung von Shaka Player für die HLS-Wiedergabe aktiviert werden kann. Mit dieser Version wird auch eine API eingeführt, mit der aus einem unterstützten Bereich von Shaka Player-Versionen ausgewählt werden kann, die geladen werden sollen. Diese Flags werden in der Klasse CastReceiverOptions über die Eigenschaften useShakaForHls und shakaVersion bereitgestellt und beim Starten der CastReceiverContext ausgewertet. Für alle Anwendungen, für die Shaka für HLS aktiviert ist, sollte eine Shaka Player-Version von mindestens 4.3.4 festgelegt werden, um die neuesten HLS-Verbesserungen zu nutzen. So aktivierst du die Funktion:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

Inhalte validieren

Partner sollten die Wiedergabe ihrer Inhalte in Shaka Player prüfen, bevor sie Shaka Player in ihrer Produktions-App aktivieren. Wir empfehlen, die folgenden Inhaltsvarianten zu testen:

  • Streamtypen: LIVE oder VOD
  • Containerformate: TS, MP4 oder elementare Streams
  • Inhalte mit Unterbrechungen oder eingebetteter Werbung
  • Wiedergabe auf den folgenden Gerätetypen: Smart-Displays, Chromecast-Dongles, Android TV-Geräte, Fernseher mit integrierter Chromecast-Technologie, intelligente Lautsprecher

Wenn Sie Fehler oder unerwartetes Verhalten feststellen, melden Sie den Fehler. Sobald du bestätigt hast, dass es keine kritischen Wiedergabefehler in deinen Inhalten gibt, kannst du die Änderungen in deine Produktionsumgebung übertragen.

Deaktivieren

Das Web Receiver SDK wird gemäß der Zeitleiste auf ein Opt-out-Modell für die Wiedergabe von HLS-Inhalten des Shaka-Players umgestellt. Der Standardwert der Eigenschaft useShakaForHls ändert sich von false in true. Zu diesem Zeitpunkt können Anwendungen MPL für die HLS-Wiedergabe verwenden, indem sie diese Property manuell auf false festlegen. Wenn die CastReceiverContext gestartet wird, lädt das Web Receiver SDK wieder MPL anstelle von Shaka Player. Im Beispiel unten wird gezeigt, wie Sie die Funktion deaktivieren:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

Probleme melden

Wir empfehlen unseren Partnern, alle Probleme beim Abspielen von HLS-Inhalten zu melden. Wie bereits erwähnt, erhält MPL keine kritischen Updates mehr. Wenn Probleme mit MPL auftreten, folge der Anleitung im Abschnitt Aktivieren, um zu prüfen, ob das Problem durch den Wechsel zu Shaka Player behoben wird. Führe die folgenden Schritte aus, wenn das Problem weiterhin besteht oder du beim Wechseln des Wiedergabegeräts ein anderes Problem feststellst.

  1. Versuchen Sie, shakaVersion auf eine andere Version des Branches festzulegen, um das Problem zu beheben. Wenn das Problem beispielsweise im 4.3-Branch auftritt, versuchen Sie, ihn auf die neueste Version der 4.2.x- oder 3.3.x-Version festzulegen. In den Shaka Player-Versionshinweisen findest du die Releases mit den relevantesten Updates. Die shakaVersion API hat eine minimale und eine maximale unterstützte Version, wie in der Referenzdokumentation beschrieben. Wenn du eine Regression feststellst, melde das Problem im Issuetracker für Shaka Player.
  2. Versuche, die Player-Konfigurationsparameter zu ändern. Der Shaka Player kann über das Objekt PlayerConfiguration konfiguriert werden. Das Web Receiver SDK definiert eine Reihe von Standardwerten und ermöglicht es Anwendungen, diese Konfiguration über die Eigenschaft shakaConfig im PlaybackConfig-Objekt zu ändern. Dieser Wert wird während der Ladezeit beim Erstellen der Playerinstanz ausgewertet. Weitere Informationen finden Sie unter

    Anwendungskonfiguration und ‑optionen Die vom Web Receiver SDK festgelegten Standardwerte sind die empfohlenen Werte.

  3. Prüfen, ob das Problem im Shaka Player-Issuetracker oder im Cast-Issuetracker gemeldet wurde. Kommentieren Sie den Fehler und fügen Sie alle relevanten Informationen hinzu, falls er auch Ihr Problem beschreibt.

  4. Teste deine Inhalte auf der Shaka Player-Demowebsite. Wenn sich das Problem auf der Demo-Website für deine Inhalte reproduziert, melde einen Fehler beim Shaka Player-Projekt.

  5. Melden Sie einen Fehler im Cast-Issue-Tracker, wenn ein Problem nur bei Shaka Player auf Cast-Endpunkten auftritt.

Häufig gestellte Fragen

Ein Wechsel des Spielers kann viele Fragen aufwerfen. Im Folgenden finden Sie Antworten auf die am häufigsten gestellten Fragen zur Migration.

Sollte ich zu Shaka Player migrieren?

Wir empfehlen unseren Partnern, die HLS-Inhalte verwenden, so bald wie möglich mit der Migration zu beginnen. So können Sie Ihren Nutzern ein stabileres Streaming bieten. Weitere Vorteile findest du im Abschnitt Vorteile von Shaka Player dieses Leitfadens. Partner sollten prüfen, ob ihre Apps mit Shaka Player ordnungsgemäß funktionieren, um einen reibungslosen Übergang zu ermöglichen. Wenn Partner nicht im Voraus prüfen, ob ihre Inhalte im Shaka Player ordnungsgemäß wiedergegeben werden, kann es sein, dass einige Apps nicht mehr funktionieren, wenn das Web Receiver SDK zu einem Opt-out-Modell übergeht.

Wie viel Aufwand ist beim Wechseln der Spieler zu erwarten?

Partner müssen ihre Anwendung und ihre Inhalte in einer Testumgebung testen, um sicherzustellen, dass die Nutzerfreundlichkeit im Vergleich zu HLS ähnlich oder besser ist. Dazu müssen Partner die Funktion in einer internen Umgebung aktivieren und gründlich testen, ob ihre Inhalte mit dem Shaka Player wiedergegeben werden können. Weitere Informationen dazu, auf welche Aspekte Sie sich bei der Validierung Ihrer Inhalte konzentrieren sollten, finden Sie unter Inhalte validieren. Nach der Validierung müssen Partner die Flagge in ihrer Produktionsanwendungsumgebung hinzufügen, um die Vorteile von Shaka Player nutzen zu können. Im Großen und Ganzen sind nur minimale Änderungen an der Softwareentwicklung und vor allem QA-Anforderungen für eine erfolgreiche Migration erforderlich.

Meine Anwendung verwendet bald HLS zum Streamen von Inhalten. Was sollte ich tun?

Bei neuen Integrationen sollte die Verwendung von Shaka Player für die Wiedergabe aktiviert werden. Deine Anwendung wird langfristig besser unterstützt und du kannst von den neuen HLS-Funktionen und Leistungsverbesserungen profitieren. Wenn bei Ihrer neuen Integration Probleme auftreten, melden Sie sie so schnell wie möglich, damit das Engineering-Team genügend Zeit hat, das Problem zu beheben. Wenn für Ihre Anwendung ein knapper Termin gilt, geben Sie diese Informationen sowie die Auswirkungen im Fehlerbericht an, damit wir die Priorität entsprechend festlegen können. Unser Entwicklerteam wird eine Lösung finden, um Ihre Nutzer bestmöglich zu unterstützen.

Meine Inhalte oder meine App funktionieren nicht mit dem Shaka Player. Was kann ich tun?

Sie sollten einen Fehler entweder beim Shaka Player-Projekt oder beim Cast-Projekt melden (siehe Probleme melden). Das Cast SDK-Entwicklerteam überwacht diese Tracker aktiv und arbeitet mit Ihnen zusammen, um alle Probleme zu beheben. Je früher diese Probleme erkannt werden, desto mehr Zeit haben wir, sie zu beheben.

MPL erhält keine kritischen Updates mehr. Was bedeutet das genau?

Bisher hat MPL neue HLS-Funktionen übernommen und wichtige Fehler durch wichtige Updates behoben. Da MPL sie nicht mehr empfängt, werden dem Player keine neuen HLS-Funktionen hinzugefügt. Ebenso werden gemeldete Probleme bei der HLS-Wiedergabe in MPL nicht in MPL behoben. Diese Probleme sollten behoben werden, wenn du zur Wiedergabe auf den Shaka Player umstellst. Wenn die Probleme weiterhin auftreten, sollte ein Fehlerbericht mit den entsprechenden Problemen im Shaka-Player eingereicht werden. Partner sollten die Verwendung von MPL beenden.

Meine Inhalte verwenden das Smooth Streaming-Protokoll. Wie wirkt sich das auf meine Anwendung aus?

Die MPL-Binärdateien werden weiterhin gehostet und sind für Ihre Empfängeranwendung zugänglich. Funktionsanfragen und Fehlerkorrekturen im Zusammenhang mit Smooth Streaming werden jedoch nicht unterstützt, da die Smooth Streaming-Spezifikation seit über vier Jahren nicht aktualisiert wurde. Wir empfehlen, deine Inhalte auf das DASH- oder HLS-Streamingprotokoll umzustellen, damit du weiterhin Leistungsupdates und Support für deine Inhalte erhältst.

Meine Inhalte verwenden nicht die Protokolle HLS oder Smooth Stream. Wie wirkt sich das auf meine Anwendung aus?

Wenn in deiner Inhaltsbibliothek keines dieser Streamingprotokolle verwendet wird, hat die Migration keine Auswirkungen auf dich. Es sind keine Änderungen an Ihrer Anwendung erforderlich.