HLS bei der Migration von Shaka-Spielern

Überblick

Das Cast Web Receiver SDK unterstützt die Wiedergabe von Inhalten über verschiedene Web-Streaming-Protokolle. Basierend auf dem verwendeten Protokoll lädt das SDK einen Player, der die Wiedergabe des Inhalts verarbeitet. Bei HLS-Inhalten wird die Media Player-Bibliothek (MPL) geladen. Bei DASH-Inhalten wird der Shaka Player geladen.

Zukünftig konsolidieren die Entwicklerteams von Cast SDK und Shaka Player die Unterstützung der Wiedergabe von HLS-Inhalten auf Shaka Player. MPL erhält keine wichtigen Updates mehr. Wir empfehlen dir, den Shaka Player für die Wiedergabe von HLS-Inhalten in deiner Anwendung zu aktivieren.

Vorteile des Shaka Players

Anwendungen profitieren von folgenden Vorteilen:

  • Stabilere Streamingsitzungen für Nutzer mit Verbesserungen bei Ladezeitfehlern und Latenz.
  • Kontinuierliche Nutzung der neuesten HLS-Funktionen
  • Mehr Klarheit bei der Ursachenanalyse für Kompatibilitätsprobleme mit Player-Inhalten aufgrund der Open-Source-Struktur von Shaka Player.
  • Open-Source-Spieler-Codebasis ermöglicht Partnern, zum Shaka-Spielerprojekt beizutragen.
  • Eine deutliche Reduzierung der Zeit bis zur Produktion von Funktionen und Fehlerkorrekturen, da der Releaserhythmus von Shaka Player häufig und unabhängig von den Releases des Web Receiver SDK erfolgt.
  • Mehr Kontrolle über die Wiedergabeumgebung, die über die shakaVersion API bereitgestellt wird.
  • Erhöhte Unterstützung bei der Wiedergabe von Google mit Entwicklerressourcen, die sich auf die HLS-Wiedergabe auf Shaka Player konzentrieren, wie auf der Roadmap zu sehen.

Zeitplan

Beim Web Receiver SDK wird Shaka Player als Standardplayer für die Wiedergabe von HLS-Inhalten verwendet. Dies erfolgt in einem schrittweisen Ansatz, um Partner durch den Migrationsprozess zu führen.

Phase Startdatum Überblick
1 Okt. 2022 Das Cast Web Receiver SDK führt APIs ein, mit denen die Wiedergabe von HLS-Inhalten auf Shaka Player aktiviert werden kann.
2 2. Halbjahr 2024 Das Cast Web Receiver SDK ändert den Standardplayer für die Wiedergabe von HLS-Inhalten in den Shaka-Player.

Die Entwicklungsteams des Web Receiver SDK verfolgen einen leistungsorientierten Ansatz und gehen erst in die nächste Phase über, wenn die Leistung von Shaka Player der Basisleistung 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 kann die Verwendung von Shaka Player für die HLS-Wiedergabe auf Anwendungsebene aktiviert werden. Außerdem wird mit dieser Version eine API eingeführt, mit der aus einer unterstützten Reihe von Shaka Player-Versionen zum Laden ausgewählt werden kann. Diese Flags werden in der Klasse CastReceiverOptions über die Attribute useShakaForHls und shakaVersion bereitgestellt und beim Start von CastReceiverContext ausgewertet. Jede Anwendung, die Shaka für HLS aktiviert, sollte eine Shaka Player-Version von mindestens 4.3.4 festlegen, um von den neuesten HLS-Verbesserungen zu profitieren. Folgen Sie dem Code-Snippet unten, um diese Option zu aktivieren:

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

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

context.start(castReceiverOptions);

Inhalte validieren

Partner sollten ihre Inhaltswiedergabe auf Shaka Player validieren, bevor sie die Verwendung von Shaka Player in ihrer Produktions-App aktivieren. Wir empfehlen, alle unten aufgeführten Varianten Ihrer Inhalte zu testen:

  • Streamtypen: LIVE oder VOD
  • Containerformate: TS, MP4 oder Elementary Streams
  • Inhalte mit Unterbrechungen oder eingebetteten Anzeigen
  • Wiedergabe auf 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 dich vergewissert hast, dass deine Inhalte keine kritischen Wiedergabefehler aufweisen, kannst du die Änderungen an deine Produktionsumgebung übertragen.

Deaktivieren

Das Web Receiver SDK wird gemäß der Zeitachse auf ein Deaktivierungsmodell für die Wiedergabe von HLS-Inhalten im Shaka Player umgestellt. Das Attribut useShakaForHls ändert den Standardwert von false in true. Zu diesem Zeitpunkt können Anwendungen MPL für die HLS-Wiedergabe verwenden, indem sie dieses Attribut manuell auf false setzen. Wenn CastReceiverContext gestartet wird, lädt das Web Receiver SDK statt Shaka Player MPL wieder. Im folgenden Beispiel sehen Sie, wie Sie diese Funktion deaktivieren können:

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

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

context.start(castReceiverOptions);

Probleme melden

Wir empfehlen unseren Partnern, Probleme zu melden, die sie bei der Wiedergabe von HLS-Inhalten feststellen. Wie bereits erwähnt, erhält MPL keine wichtigen Updates mehr. Wenn Probleme mit MPL auftreten, folge den Schritten im Abschnitt Aktivieren der Anleitung, um zu prüfen, ob der Wechsel zu Shaka Player das Problem wieder entsperrt. Wenn das Problem weiterhin besteht oder beim Spielerwechsel ein anderes Problem auftritt, führen Sie die folgenden Schritte aus.

  1. Setzen Sie shakaVersion auf eine andere Zweigversion, um das Problem zu beheben. Wenn das Problem beispielsweise im Zweig 4.3 auftritt, versuchen Sie, ihn auf den neuesten Release in den Versionen 4.2.x oder 3.3.x festzulegen. In den Versionshinweisen für den Shaka Player findest du Versionen mit den relevantesten Updates. Für die shakaVersion API gibt es eine Mindest- und eine Höchstversion, wie in der Referenzdokumentation beschrieben. Wenn Sie feststellen, dass es eine Regression gibt, melden Sie das Problem in der Problemverfolgung für Shaka-Spieler.
  2. Versuche, die Konfigurationsparameter des Players zu ändern. Shaka Player kann über das Objekt PlayerConfiguration konfiguriert werden. Das Web Receiver SDK definiert eine Reihe von Standardwerten und ermöglicht Anwendungen, diese Konfiguration über die shakaConfig-Eigenschaft im PlaybackConfig-Objekt zu ändern. Dies wird während der Ladezeit beim Erstellen der Player-Instanz ausgewertet. Mehr unter

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

  3. Prüfen Sie, ob das Problem in der Problemverfolgung für Shaka-Player oder im Tracker von Streamingproblemen gemeldet wurde. Kommentieren Sie den Fehler und fügen Sie relevante Informationen hinzu, wenn er auch Ihr Problem beschreibt.

  4. Teste deine Inhalte auf der Demowebsite für den Shaka-Player. Wenn sich das Problem auf der Demowebsite für deine Inhalte reproduzieren lässt, melde den Fehler mit dem Shaka Player-Projekt.

  5. Wenn ein Problem nur bei Shaka Player auf Übertragungsendpunkten auftritt, melde den Fehler im Cast Issue Tracker.

Häufig gestellte Fragen

Der Spielerwechsel kann viele Fragen aufwirft. Im Folgenden finden Sie Antworten auf die am häufigsten gestellten Fragen als Orientierungshilfe für den Migrationsprozess.

Sollte ich zu Shaka Player migrieren?

Wir empfehlen unseren Partnern, die HLS-Inhalte nutzen, um so schnell wie möglich mit der Migration zu beginnen. Dadurch bietet Ihre Anwendung ein robusteres Streaming für Ihre Nutzer. Weitere Vorteile werden im Abschnitt Vorteile von Shaka-Spielern dieses Leitfadens beschrieben. Partner sollten mit Shaka Player prüfen, ob ihre Anwendungen ordnungsgemäß funktionieren, um einen reibungslosen Übergang zu gewährleisten. Bei einigen Apps besteht das Risiko, dass das Web Receiver SDK auf ein Deaktivierungsmodell umgestellt wird, wenn Partner nicht im Voraus bestätigen, dass ihre Inhalte im Shaka Player richtig wiedergegeben werden.

Mit welchem Aufwand wird der Spielerwechsel erwartet?

Partner müssen ihre Anwendung und ihre Inhalte in einer Testumgebung testen, um sicherzustellen, dass die Nutzererfahrung im Vergleich zu HLS ähnlich oder verbessert ist. Dazu müssen sich Partner in einer internen Umgebung für die Funktion aktivieren und gründlich testen, ob ihre Inhalte mit dem Shaka Player wiedergegeben werden können. Unter Inhalte validieren finden Sie Details dazu, auf welche Aspekte Ihrer Inhalte Sie sich konzentrieren sollten. Nach der Validierung müssen Partner das Flag zur Aktivierung in ihrer Produktionsumgebung hinzufügen, um die Vorteile von Shaka Player nutzen zu können. Auf übergeordneter Ebene gibt es nur minimale Änderungen an der Softwareentwicklung und hauptsächlich QA-Anforderungen für eine erfolgreiche Migration unserer Partner.

In meinem Antrag wird bald HLS zum Streamen von Inhalten verwendet. Was soll ich tun?

Für neue Integrationen sollte die Verwendung von Shaka Player für die Wiedergabe aktiviert werden. Ihre Anwendung wird langfristig besser unterstützt und profitiert außerdem von den neuen HLS-Funktionen und Leistungsverbesserungen. Wenn bei Ihrer neuen Integration Probleme auftreten, melden Sie so bald wie möglich den Fehler, damit das Engineering-Team genug Zeit hat, das Problem zu beheben. Wenn es für Ihre Anwendung eine knappe Frist gibt, fügen Sie diese Informationen in den Fehlerbericht sowie die Auswirkungen auf, um entsprechend zu priorisieren. Unser Entwicklerteam arbeitet daran, eine Lösung zu finden, um Ihre Nutzer angemessen unterstützen zu können.

Mein Inhalt oder meine App funktionieren nicht mit Shaka Player. Was muss ich jetzt tun?

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

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

In der Vergangenheit hat MPL neue HLS-Funktionen übernommen und größere Fehler durch kritische Updates behoben. Da MPL sie jetzt nicht mehr erhält, werden dem Player keine neuen HLS-Funktionen hinzugefügt. Ebenso werden alle gemeldeten Probleme für die HLS-Wiedergabe in MPL nicht behoben. Diese Probleme sollten durch einen Wechsel zum Shaka Player für die Wiedergabe behoben werden. Wenn die Probleme weiterhin bestehen, sollte ein Programmfehler mit den entsprechenden Problemen in Shaka Player gemeldet werden. Partner sollten MPL nicht mehr verwenden.

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

Die MPL-Binärprogramme werden weiterhin gehostet und können von der Empfängeranwendung abgerufen werden. Anfragen zu Smooth Streaming-Funktionen und Fehlerkorrekturen werden jedoch nicht mehr unterstützt, da die Smooth Streaming-Spezifikation seit über vier Jahren nicht mehr aktualisiert wurde. Wir empfehlen Ihnen, Ihre Inhalte auf das DASH- oder HLS-Streamingprotokoll zu migrieren, damit Sie weiterhin Leistungsupdates und Support für Ihre Inhalte erhalten.

Bei meinen Inhalten werden nicht das HLS- oder Smooth Stream-Protokoll verwendet. Wie wirkt sich das auf meine App aus?

Wenn Ihre Inhaltsbibliothek keines dieser Streamingprotokolle verwendet, sind Sie von der Migration nicht betroffen. An Ihrer Anwendung sind keine Änderungen erforderlich.