Live Ingest
Receba uma transmissão ao vivo do seu encoder por RTMP com Live Ingest, converta-a para HLS e entregue-a aos espectadores por meio de uma aplicação.
Uma transmissão ao vivo é assistida enquanto é produzida. Um encoder captura o áudio e o vídeo e envia a transmissão a um ponto de ingestão à medida que a captura. O ponto de ingestão empacota a transmissão em arquivos que um player busca por HTTP. Os espectadores nunca se conectam ao encoder: servidores que receberam a transmissão entregam esses arquivos a cada espectador.
Live Ingest recebe a transmissão ao vivo que o seu encoder envia por Real-Time Messaging Protocol (RTMP), na região de um connector do tipo live_ingest. Ele converte a transmissão para HTTP Live Streaming (HLS). Uma aplicação entrega a transmissão aos espectadores: uma regra cujo behavior Set Connector nomeia esse connector envia as requisições deles à transmissão. Use Live Ingest para entregar eventos ao vivo, partidas de e-sports e transmissões educacionais ao seu público.
Estrutura do connector de Live Ingest
Live Ingest age por meio de um connector do tipo live_ingest, que carrega um atributo: a região onde Live Ingest recebe a sua transmissão. Este corpo cria um em us-east-1, enviado como corpo de POST /v4/workspace/connectors:
typedefinido comolive_ingestdeixa o connector sem endereços e sem opções de conexão, então ele não recebe Load Balancer nem Origin Shield.attributes.regioné obrigatório e aceita uma região comous-east-1ouus-east-2. Uma requisição sem ele é recusada com10059, e um valor que Azion API não aceita, com10039. Para o campo e os erros dele, consulte Configurações de connector.- A API responde
202com"state": "pending", e o connector é lido de volta com"attributes": {"region": "us-east-1"}. Umbucketenviado com esse tipo é aceito e não é armazenado. - Azion Console oferece o tipo como o card Live Ingest de Connector Type, com Region como campo obrigatório.
Caminho da requisição
Live Ingest age no connector que a requisição de um espectador alcança. Quando você seleciona uma fonte Live Ingest em uma regra, a Azion adiciona o behavior Enforce HLS cache a essa regra da Request Phase. O behavior contorna as regras de cache da aplicação e aplica a política de cache que a Azion define para transmissões HLS ao vivo.
Este diagrama acompanha a transmissão, desde o encoder, e a requisição de um espectador até ela:
- O encoder envia a transmissão ao vivo a Live Ingest, na região do connector.
- Um espectador solicita a transmissão em um hostname do workload cujo deployment nomeia a aplicação.
- O behavior Set Connector de uma regra nomeia o connector do tipo
live_ingest, e o behavior Enforce HLS cache aplica a política de cache HLS ao vivo. - O connector serve a transmissão, e o espectador a recebe.
Para saber como Live Ingest recebe uma transmissão e a entrega, consulte Ingestão e entrega.
Escopo e limites
- Encoder: Live Ingest recebe a transmissão por RTMP, então o encoder precisa suportar RTMP com autenticação por usuário e senha. A Azion fornece as credenciais e as URLs de ingestão de um endpoint primário e de um endpoint de backup. Ela também pode exigir encoders, configurações e endpoints suportados ou aprovados. O encoder não precisa de uma saída HLS própria.
- Região: um connector do tipo
live_ingestaceita uma de cinco regiões. A região decide onde a transmissão entra na Azion, não onde os espectadores se conectam, então escolha a que tem o caminho mais curto a partir do encoder. - Cache: Enforce HLS cache mantém cada playlist,
.m3u8, em cache por 5 segundos e cada segmento,.ts, por 60 segundos. Uma configuração de cache da aplicação não tem efeito sobre essas requisições. Enquanto uma cópia é válida, ela responde a todo espectador que a solicita, então um público grande não envia cada uma das suas requisições a Live Ingest. - Interfaces: você cria o connector no Azion Console, pela API em
/v4/workspace/connectorsou comazion create connector --type live_ingest --file connector.jsonda Azion CLI. Para criar o connector e a regra de entrega em cada uma delas, consulte Entregue uma transmissão ao vivo a partir do Live Ingest. - Observabilidade: o dataset
connectedUsersMetricsda GraphQL API de Real-Time Metrics carrega dados agregados sobre os usuários conectados às suas transmissões ao vivo. - Limites: os limites de todo connector se aplicam a um connector do tipo
live_ingest, como umnamede 1 a 255 caracteres. Para a forma de cobrança de Live Ingest, consulte Limites de Connectors e, para os valores, Preços. - HLS da sua origem: para uma transmissão HLS da sua própria origem, dê às playlists e aos segmentos dela configurações de cache próprias, como descreve Implemente cache HLS para streaming ao vivo.
- Termos: o glossário de Connectors define as palavras às quais as páginas do Live Ingest dão um significado específico, como região de ingestão e tipo de connector.