SDK do Amazon IVS Player: integração com JW Player - Amazon Interactive Video Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

SDK do Amazon IVS Player: integração com JW Player

Esse documento descreve as funções mais importantes disponíveis na integração do JW Player do Amazon Interactive Video Service (IVS).

Versão mais recente da integração com o JW Player: 1.24.0 (notas de lançamento)

Conceitos básicos

O suporte do Amazon IVS ao JW Player é implementado por meio de um provedor. O provedor do Amazon IVS só é compatível com o player da Web do JW Player. O provedor é carregado por meio de uma tag de script. Quaisquer streams que exijam a reprodução do provedor do Amazon IVS devem ser marcados com type: 'ivs' na lista de reprodução. O Amazon IVS é compatível com a versão 8.18.4 e posterior do JW Player.

Configuração

Nessas instruções, JW_PLAYER_DIV é o nome de <div> da sua instância do JW Player e IVS_STREAM é a sua URL de reprodução do IVS. Para configurar o provedor do Amazon IVS e habilitar a reprodução:

  1. Inclua a seguinte script tag (para a versão mais recente da integração do player; nesse caso, 1.24.0):

    <script src="https://player.live-video.net/1.24.0/amazon-ivs-jw-provider.min.js"></script>
  2. Use o tipo ivs para marcar os seus itens da lista de reprodução do IVS. Defina o valor cast no seu setup() para null (uma vez que o Chromecast não é compatível).

    jwplayer(JW_PLAYER_DIV).setup({ playlist: [{ file:IVS_STREAM, type: 'ivs', }] });
  3. Se você quiser uma referência ao Player do Amazon IVS subjacente para fazer chamadas de API do Player do Amazon IVS ou referências a enumerações específicas do Amazon IVS para lidar com retornos de chamada, adicione um listener ao evento 'providerPlayer':

    jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) { // player object has 'ivsPlayer' and 'ivsEvents' properties // ...callback code... });

Código de exemplo

Neste exemplo, JW_PLAYER_LIB é a URL para o script da biblioteca do JW Player e IVS_STREAM é a sua URL de reprodução do IVS.

<!DOCTYPE html> <html lang="en"> <head> <script src=JW_PLAYER_LIB></script> <script src="https://player.live-video.net/1.24.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>

Eventos

Para ouvir eventos padrão do JW Player, use a função ligar do JW Player.

Para ouvir eventos específicos do Amazon IVS ou adicionar e remover listeners de eventos no player da Web do Amazon IVS, você deve ouvir o evento 'providerPlayer' para obter uma referência do Player do Amazon IVS e, em seguida, adicionar a atividade de escuta de eventos a ela. Por exemplo:

// 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);

em que callback é um retorno de chamada que você define e event é um dos itens a seguir: PlayerEventType, PlayerState ou ErrorType. Para obter informações sobre eventos, consulte Amazon IVS Player SDK: Web Reference (SDK do Amazon IVS Player: referência para Web).

O evento 'providerPlayer' é emitido pelo JW Player e o retorno de chamada que você registrar com ele receberá um objeto com os seguintes campos:

Campo Descrição

ivsPlayer

Retorna a instância subjacente do player do Amazon IVS. A API da Web completa do player do Amazon IVS está disponível por meio dessa instância. Recomendamos usar a API básica de reprodução do JW Player tanto quanto possível e usar essa função apenas para acessar recursos específicos do Amazon IVS. As funções mais comuns que você provavelmente precisará acessar na instância do Player do Amazon IVS são addEventListener() e removeEventListener().

ivsEvents

Ela retorna um objeto com os campos PlayerEventType, PlayerState e ErrorType, que são mapeados para as suas enumerações associadas específicas do Amazon IVS. Para obter mais informações, consulte Amazon IVS Player SDK: Web Reference (SDK do Amazon IVS Player: referência para Web).

Erros

Para erros gerais do JW Player, use a função on (ligar) do JW Player para ouvir eventos de erro.

Para erros específicos do Amazon IVS, veja no player do Amazon IVS seus próprios erros:

// 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);

O retorno de chamada receberá um objeto com os seguintes campos:

Campo Descrição

type

O tipo de erro. Corresponde a eventos ErrorType. Para obter mais informações, consulte Amazon IVS Player SDK: Web Reference (SDK do Amazon IVS Player: referência para Web).

code

O código do erro.

source

Origem do erro.

message

Mensagem de erro legível por humanos.

Política de segurança de conteúdo

A API do provedor do Amazon IVS está configurada para funcionar em páginas que usam a Política de segurança de conteúdo (CSP). Consulte a seção “Como trabalhar com a Política de segurança de conteúdo” em SDK do Amazon IVS Player: guia para Web.

Limitações

O provedor não oferece suporte para lançamentos. Se você habilitou a opção de lançamento no painel do JW Player, poderá desabilitá-la definindo cast para null ao acionar a setup(). Isso esconde o botão de lançamento.