IVS Player SDK: JW-Player-Integration
In diesem Dokument werden die wichtigsten Funktionen beschrieben, die bei Integration des Amazon Interactive Video Service (IVS) JW Player verfügbar sind.
Neueste Version der JW-Player-Integration: 1.36.0 (Versionshinweise)
Erste Schritte
Amazon IVS-Support für JW Player wird über einen Anbieter implementiert. Amazon IVS Provider wird nur auf dem Webplayer von JW Player unterstützt. Der Provider wird über ein Skript-Tag geladen, und alle Streams, welche die Wiedergabe über den Amazon IVS Provider erfordern, müssen in der Wiedergabeliste mit einem type: 'ivs'
-Tag versehen werden. Amazon IVS unterstützt JW Player Version 8.18.4 und höher.
Aufstellen
In diesen Anweisungen ist JW_PLAYER_DIV
der Name der <div>
Ihrer JW-Player-Instance und IVS_STREAM
die IVS-Wiedergabe-URL. So richten Sie den Amazon IVS-Anbieter ein und aktivieren die Wiedergabe:
-
Fügen Sie das folgende
script
-Tag ein (für die neueste Version der Player-Integration; in diesem Fall 1.36.0):<script src="https://player.live-video.net/1.36.0/amazon-ivs-jw-provider.min.js"></script>
-
Verwenden Sie den Typ
ivs
, um Elemente in Ihrer IVS-Wiedergabeliste zu markieren. Setzen Sie den Wertcast
in Ihremsetup()
aufnull
(da Chromecast nicht unterstützt wird).jwplayer(JW_PLAYER_DIV).setup({ playlist: [{ file:IVS_STREAM, type: 'ivs', }] });
-
Wenn Sie einen Verweis auf den zugrundeliegenden Amazon IVS Player wünschen, um Amazon IVS Player-API-Aufrufe durchzuführen, oder wenn Sie Verweise auf Amazon IVS-spezifische Enums für die Callback-Behandlung wünschen, fügen Sie dem
'providerPlayer'
-Ereignis einen Listener hinzu:jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) { // player object has 'ivsPlayer' and 'ivsEvents' properties // ...callback code... });
Beispiel-Code
In diesem Beispiel ist JW_PLAYER_LIB
die URL zu Ihrem JW Player-Bibliotheksskript und IVS_STREAM
die URL zu Ihrer IVS-Wiedergabe.
<!DOCTYPE html> <html lang="en"> <head> <script src=JW_PLAYER_LIB></script> <script src="https://player.live-video.net/1.36.0/amazon-ivs-jw-provider.min.js"></script> </head> <body> <div id='player'></div> <script> // set default values for ivsPlayer and ivsEvents var ivsPlayer = {}; var ivsEvents = {}; // define our player setup const ivsConfig = { playlist: [{ file: IVS_STREAM, type: 'ivs', }] }; jwplayer('player') .setup(ivsConfig) .on('providerPlayer', function (player) { console.log('Amazon IVS Player: ', player.ivsPlayer); console.log('Amazon IVS Player Events: ', player.ivsEvents); // store the reference to the Amazon IVS Player ivsPlayer = player.ivsPlayer; // store the reference to the Amazon IVS Player Events ivsEvents = player.ivsEvents; }); </script> </body> </html>
--Ereignisse
Um Standard-JW Player-Ereignisse zu hören, verwenden Sie die an
Um Ereignisse zu hören, die für Amazon IVS spezifisch sind, oder um Ereignis-Listener auf dem Amazon IVS Web Player hinzuzufügen und zu entfernen, müssen Sie das 'providerPlayer'
-Ereignis hören, um einen Verweis auf den Amazon IVS Player zu erhalten und dann ein Ereignis hinzuzufügen, das ihn anhört. Beispiel:
// store a default value for ivsPlayer var ivsPlayer = {}; // store references to the Amazon IVS Player and Amazon IVS Events: jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) { ivsPlayer = player.ivsPlayer; }); // set up event listening ivsPlayer.addEventListener(event, callback); ivsPlayer.removeEventListener(event, callback);
wobei callback
ein Callback ist, den Sie definieren und event
einer hiervon ist: PlayerEventType
, PlayerState
, oder ErrorType
. Weitere Informationen zu Ereignissen finden Sie in Amazon IVS Player SDK: Webreferenz
Das 'providerPlayer'
-Ereignis wird von JW Player ausgegeben, und der Callback, bei dem Sie sich registrieren, erhält ein Objekt mit den folgenden Feldern:
Feld | Beschreibung |
---|---|
|
Gibt die zugrunde liegende Amazon IVS-Player-Instance zurück. Die vollständige Amazon IVS Player Web API ist über diese Instance verfügbar. Wir empfehlen, die Basic JW Player-Wiedergabe-API so weit wie möglich zu verwenden und diese Funktion nur für den Zugriff auf Amazon IVS-spezifische Funktionen zu verwenden. Die häufigsten Funktionen, auf die Sie wahrscheinlich auf der Amazon IVS-Player-Instance zugreifen müssen, sind |
|
Gibt ein Objekt mit |
Fehler
Für allgemeine JW Player-Fehler verwenden Sie die an
Bei Fehlern, die für Amazon IVS spezifisch sind, hören Sie den Amazon IVS-Player auf seine eigenen Fehler:
// set default values for ivsPlayer and ivsEvents var ivsPlayer = {}; var ivsEvents = {}; // store references to the Amazon IVS Player and Amazon IVS Events jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) { ivsPlayer = player.ivsPlayer; ivsEvents = player.ivsEvents; }); // set up event listening: let playerEvent = ivsEvents.PlayerEventType; ivsPlayer.addEventListener(playerEvent.ERROR, callback);
Der Callback erhält ein Objekt mit den folgenden Feldern:
Feld | Beschreibung |
---|---|
|
Der Fehlertyp. Entspricht |
|
Der Fehlercode. |
|
Quelle des Fehlers. |
|
Menschlich lesbare Fehlermeldung. |
Inhaltssicherheitsrichtlinie
Die Amazon IVS-Provider-API ist so konfiguriert, dass sie auf Seiten funktioniert, die Content Security Policy (CSP) verwenden. Weitere Informationen finden Sie im Abschnitt „Arbeiten mit Inhaltssicherheitsrichtlinie“ im IVS Player SDK: Leitfaden für Web.
Einschränkungen
Der Anbieter unterstützt kein Casting. Wenn Sie das Casting im JW Player-Dashboard aktiviert haben, können Sie es deaktivieren, indem Sie cast
auf null
beim Aufruf von setup()
setzen. Dadurch wird der Casting-Button ausgeblendet.