SDK do IVS Player
Para usar o Amazon Interactive Video Service (IVS), você deve usar o player do Amazon IVS. O player é um conjunto de SDKs entre plataformas para reprodução de streams do Amazon IVS. Ele foi projetado para aproveitar a arquitetura do Amazon IVS e otimizado para reprodução do Amazon IVS.
O único player cujo performance podemos garantir é o player do Amazon IVS. Para obter baixa latência, o player do Amazon IVS é necessário.
Os principais recursos do player do Amazon IVS são:
-
Streaming de baixa latência: a baixa latência é um componente crítico na criação de boas experiências de usuário interativas que enriquecem a experiência do público. A latência se arrasta incrementalmente ao longo do caminho de transmissão entre o transmissor e o visualizador, prejudicando a capacidade de resposta.
Latência de ponta a ponta é o atraso a partir do momento em que um stream ao vivo é capturado na câmera, até ela aparecer na tela de um visualizador. O Amazon IVS foi projetado para oferecer baixa latência de ponta a ponta (menos de cinco segundos, dependendo do local de transmissão e das configurações do transmissor). Para alcançar essa baixa latência, o player do Amazon IVS é necessário.
-
Consistência entre plataformas: os visualizadores assistem a transmissões em uma variedade de plataformas. Desde dispositivos móveis até navegadores da Web, o player do Amazon IVS oferece a todos os visualizadores uma experiência semelhante. Essa consistência é possível porque cada plataforma usa a mesma biblioteca de funções do player. A biblioteca do player é um componente integral da arquitetura do Amazon IVS. O uso de uma pilha de vídeo garante que todos os comportamentos de reprodução de vídeo, incluindo o modo de baixa latência, metadados cronometrados, análises, rastreamento de erros, relatórios e registro em log, estejam disponíveis de forma consistente em todas as plataformas suportadas.
-
Streaming adaptativa de taxa de bits (ABR): o player do Amazon IVS usa algoritmos ABR otimizados para ambientes de baixa latência. O player mede a qualidade do serviço e a disponibilidade da largura de banda em tempo real e adapta a qualidade do vídeo e os níveis de buffer, para fornecer reprodução ininterrupta. Quando a qualidade da conexão é atingida, o ABR muda para uma taxa de bits mais baixa; quando a qualidade da conexão melhora, ele muda para uma taxa de bits mais alta.
-
Metadados temporizados: o Player do Amazon IVS é compatível com metadados cronometrados, que pode ser usado para construir elementos interativos, como pesquisas e questionários. Metadados é um conjunto de dados que descreve e fornece informações sobre outros dados. Com metadados “cronometrados”, um código de tempo acompanha a parte dos dados sobre o stream. Durante a reprodução, o código de tempo serve como um ponto de sinalização para acionar a ação com base nos dados, como:
-
Enviando estatísticas de players para um stream de esportes
-
Enviar detalhes do produto para um stream de compras ao vivo
-
Enviando perguntas para um stream de perguntas ao vivo
-
-
Tratamento de erros robusto: o tratamento de erros transitórios evita interrupções na experiência de visualização. O tratamento de erros robusto do Reprodutor do Amazon IVS detecta muitos possíveis erros de streaming, alternando automaticamente para uma representação alternativa. Os visualizadores continuam assistindo a transmissão sem interrupções, sem ter que tomar nenhuma ação corretiva.
-
Facilidade de integração: a API do player do Amazon IVS preenche a lacuna entre as aplicações dos clientes do Amazon IVS e a biblioteca do player. A API tem ligações para todas as plataformas suportadas, facilitando a integração do player às aplicações, usando ambientes e técnicas de codificação familiares. Com controle total sobre elementos de interface do usuário, os clientes podem personalizar os aspectos de branding e apresentação de suas aplicações.
O player do Amazon IVS não é compatível com a transmissão via Airplay. A transmissão com o Chromecast pode ser implementada fora do player via aplicações de receptor padrão do Chromecast. No entanto, a latência nessas aplicações é maior do que no SDK do player do Amazon IVS. Portanto, o chaveamento não será contínuo. Consulte também nossa documentação sobre o SDK de Transmissão do Amazon IVS: para streaming de baixa latência e para streaming em tempo real.
Requisitos de navegador e da plataforma
Para obter detalhes sobre as versões mais recentes lançadas de vários navegadores, consulte:
Embora o Amazon IVS possa funcionar com alguns navegadores mais antigos, não corrigimos bugs relacionados a navegadores mais antigos.
O SDK do Reprodutor da Web do IVS (incluindo as integrações para Video.js e reprodutor JW) não tem suporte em ambientes semelhantes a navegadores. Isso inclui WebViews nativas e “dispositivos de 10 pés” (TVs, consoles, decodificadores) que são compatíveis com aplicações da Web. Entre em contato com o suporte do IVS se ficar em dúvida quanto à compatibilidade de um navegador específico não incluído nas tabelas listadas abaixo.
Navegadores desktop
Navegador desktop | Plataformas com suporte | Versões compatíveis |
---|---|---|
Chrome | Windows, macOS | Duas versões principais (versão anterior atual e mais recente) |
Firefox | Windows, macOS | Duas versões principais (versão anterior atual e mais recente) |
Borda | Windows 8.1 e posteriores | 44.0 e posterior (No modo de qualidade automática no Microsoft Edge Legacy |
Safari | macOS | Duas versões principais (versão anterior atual e mais recente) (No modo de qualidade automática no Safari para macOS 14 e posteriores, o Reprodutor do IVS 1.3.0 e posteriores oferecem suporte à reprodução de baixa latência. Para versões anteriores do Safari e do Reprodutor do IVS, apenas há suporte para a reprodução de latência normal. Consulte acima sobre o "modo de qualidade automática".) |
Navegadores móveis
Navegadores móveis | Versões compatíveis |
---|---|
Chrome para iOS, Safari para iOS | Duas versões principais (versão anterior atual e mais recente) (Não há suporte para a reprodução de baixa latência. Há suporte para a reprodução de latência normal. Essa restrição se aplica a todos os navegadores para iOS.) (Só há suporte para metadados cronometrados no Player 1.3.0 e posterior.) |
Chrome para iPadOS, Safari para iPOS | Duas versões principais (versão anterior atual e mais recente) (Quando a opção “Request Mobile Website” [Solicitar site móvel] estiver selecionada:
|
Chrome para Android | Duas versões principais (versão anterior atual e mais recente) |
Plataformas nativas
Plataforma | Versões compatíveis | Dispositivos compatíveis |
---|---|---|
Android | 5.0 (Lollipop) e posteriores | Telefones e tablets |
iOS | 13+ |
Todos |
O IVS suporta no mínimo 4 versões principais do iOS e 6 versões principais do Android. Nosso suporte à versão atual pode ir além desses mínimos. Os clientes serão notificados por meio das notas de lançamento do SDK pelo menos 3 meses antes do fim do suporte para uma versão principal.
Reduzir a latência em players de terceiros
Para os tipos de canal Basic e Standard: [ara obter a menor latência possível, é necessário usar o reprodutor do Amazon IVS. Em players de terceiros (incluindo o iOS Safari), é possível reduzir a latência para cerca de 10 segundos usando a seguinte configuração:
-
Defina o intervalo de quadros-chave do seu codificador (por exemplo, OBS) para 2 segundos ou menos.
-
Adicione
?keyframeInterval=2
ao URL do RTMP(S). Por exemplo:rtmps://a1b2c3d4e5f6.global-contribute.live-video.net:443/app/sk_us-west-2_abcd1234efgh5678ijkl?keyframeInterval=2
Observação: o intervalo de quadros-chave especificado como parte do URL RTMP deverá ser maior ou igual ao valor configurado no codificador; caso contrário, poderá haver problemas de reprodução. É possível definir o valor para qualquer número inteiro entre 2 e 6, inclusive, mas 2 permite a menor latência.
Para tipos avançados de canal: a orientação acima não se aplica. Os tipos avançados de canal geram intervalos de quadros-chave automaticamente para eficiência de codificação, com no máximo 2 segundos entre os quadros-chave, independentemente da configuração do intervalo do quadro-chave de codificação de origem.
iOS Safari
No iOS Safari, você pode reduzir a latência para aproximadamente 6 a 8 segundos usando o Reprodutor do IVS e configurando-o para usar um operador de serviço. Consulte Configurar o operador de serviço no SDK do Reprodutor: guia da Web para obter detalhes de implementação e um exemplo de referência.
Observação: a obtenção da menor latência requer uma transmissão do IVS com o intervalo do quadro-chave definido para 2 segundos.
Reprodução somente de áudio
Todos os tipos de canais do IVS oferecem suporte a representações somente de áudio. Isso pode ser particularmente valioso para aplicações de dispositivos móveis. Por exemplo, em sua aplicação de dispositivo móvel, é possível mudar o reprodutor para a representação somente de áudio quando o usuário coloca a aplicação em segundo plano para conservar a largura de banda.
Para canais ADVANCED-SD e ADVANCED-HD, a representação somente de áudio é incluída automaticamente na lista de reprodução multivariante. Para canais BASIC e STANDARD, você deve anexar o parâmetro de consulta ?allow_audio_only=true
ao URL de reprodução para permitir a inclusão da representação somente de áudio.
Observação: o SDK do reprodutor para a Web do IVS oferece suporte à reprodução somente de áudio nas versões 1.24.0 e posteriores.
Suporte
Se você encontrar um erro de reprodução ou outro problema de reprodução com seu stream, determine o identificador exclusivo da sessão de reprodução por meio da API do player.
Para este player do Amazon IVS: | Use este: |
---|---|
Android | Função do |
iOS | Propriedade |
Web | Função do |
Compartilhe esse identificador de sessão de reprodução com o AWS Support. Com ele, eles podem obter informações para ajudar a solucionar seu problema.
Observação: o player é continuamente melhorado. Consulte Notas de release do Amazon IVS para ver as versões disponíveis e problemas corrigidos. Se apropriado, antes de entrar em contato com o suporte, atualize sua versão do Player e veja se isso resolve seu problema.
Versionamento
Os SDKs do Player do Amazon IVS usam versionamento semântico
Para esta discussão, suponha que:
-
A versão mais recente é 4.1.3.
-
A versão mais recente da versão principal anterior é 3.2.4.
-
A versão mais recente da versão 1.x é 1.5.6.
Novos recursos compatíveis com versões anteriores são adicionados como versões secundárias da versão mais recente. Nesse caso, o próximo conjunto de novos recursos vai ser adicionado como versão 4.2.0.
Compatíveis com versões anteriores, pequenas correções de bugs são adicionadas como lançamentos de patch da versão mais recente. Aqui, o próximo conjunto de pequenas correções de bugs vai ser adicionado como versão 4.1.4.
Compatíveis com versões anteriores, as principais correções de bugs são tratadas de forma diferente; estas são adicionadas a várias versões:
-
Versão do patch da versão mais recente. Aqui, esta é a versão 4.1.4.
-
Lançamento do patch da versão secundária anterior. Aqui, esta é a versão 3.2.5.
-
Versão do patch da versão 1.x mais recente. Aqui, esta é a versão 1.5.7.
As principais correções de bugs são definidas pela equipe de produtos do Amazon IVS. Exemplos típicos são atualizações de segurança críticas e outras correções selecionadas necessárias para os clientes.
Observação: nos exemplos acima, versões lançadas incrementam sem ignorar nenhum número (por exemplo, de 4.1.3 para 4.1.4). Na realidade, um ou mais números de patch podem permanecer internos e não ser liberados, de modo que a versão lançada pode ser incrementada de 4.1.3 para, digamos, 4.1.6.