Procedimento para configurar manifestos redundantes
Há duas partes na configuração de manifestos redundantes nas saídas HLS do MediaLive. Você deve ativar o recurso no grupo de saídas. Além disso, é necessário fazer ajustes no design dos nomes de saída e caminhos de destino (em comparação com saídas HLS que não implementam manifestos redundantes).
O campo a seguir se relaciona especificamente a manifestos redundantes:
-
Campo HLS output group – Manifests and Segments – Redundant manifests (Grupo de saída HLS – Manifestos e segmentos – Manifestos redundantes)
Como configurar manifestos redundantes
-
Fale com o operador do sistema downstream para descobrir se ele oferece suporte a manifestos redundantes.
-
Leia as informações em Campos do destino da saída: envio para um servidor HTTP. Os manifestos são considerados como saídas do MediaLive. Portanto, as regras gerais sobre destinos de saída se aplicam a manifestos redundantes.
-
Projetar os URLs para os dois pipelines. Existem requisitos especiais para URLs de arquivos HLS. Leia a seção apropriada:
Essas regras complementam as informações em Campos do destino da saída: envio para um servidor HTTP.
-
Se você também precisar de caminhos personalizados para manifestos, leia as informações em Como os caminhos personalizados funcionam. É necessário considerar as regras para caminhos personalizados ao projetar os URLs.
-
Na seção HLS output group (Grupo de saída HLS), para Manifest and segments (Manifesto e segmentos), em Redundant manifest (Manifesto redundante), selecione ENABLED (Habilitado). Esse campo se aplica a todas as saídas do grupo de saídas.
-
Preencha estes campos de acordo com seu projeto:
-
Seção Output group – HLS group destination (Grupo de saída – Destino do grupo HLS)
-
Seção Output group – HLS settings – CDN (Grupo de saída – Configurações HLS – CDN)
-
Output group – Location – Directory structure (Grupo de saída – Local – Estrutura de diretórios)
-
Output group – Location – Segments per subdirectory (Grupo de saída – Local – Segmentos por subdiretório)
-
Saídas HLS — Configurações de saída — Modificador de nome
-
Saídas HLS — Configurações de saída — Modificador de segmento
-
Grupo de saídas HLS — Local — Manifesto do URL base (se você também estiver configurando caminhos personalizados)
-
Grupo de saídas HLS — Local — Conteúdo do URL base (se você também estiver configurando caminhos personalizados)
-
Para obter informações sobre como esse recurso altera o conteúdo dos manifestos HLS, consulte O conteúdo de mídia de um manifesto HLS.
Os resultados dessa configuração
Veja a seguir informações sobre como os manifestos redundantes funcionam em três cenários de falha.
Cenário A: a ação de perda da entrada é emitir saída
Se a entrada for perdida em um dos pipelines e o campo Ação de perda de entrada estiver definido como EMIT_OUTPUT, o MediaLive continuará atualizando os manifestos mestre e filho.
Do ponto de vista do sistema downstream, não há nenhuma alteração nos manifestos pai ou filho para nenhum pipeline. O conteúdo dentro dos arquivos de mídia é conteúdo de preenchimento, mas isso não afeta a forma como o sistema de downstream lê os manifestos.
Cenário B: a ação de perda de entrada é pausar a saída
Se a entrada for perdida em um dos pipelines (por exemplo, no pipeline 0) e o campo Ação de perda de entrada for definido como PAUSE_OUTPUT, o MediaLive fará o seguinte:
-
Removerá a listagem dos manifestos filhos para o pipeline 0.
-
Enviará uma solicitação ao local do manifesto filho para que o pipeline 0 exclua os manifestos filhos.
O resultado para o sistema de downstream que está lendo o manifesto principal no pipeline 0: o sistema não encontrará mais uma listagem para os manifestos filhos do pipeline 0. O sistema procurará um manifesto filho alternativo no manifesto principal do pipeline 0. Se encontrar o manifesto filho do pipeline 1, ele mudará para a leitura desse manifesto filho.
Os sistemas de downstream que estão lendo o manifesto principal do pipeline 1 não são afetados, pois esses sistemas provavelmente estão lendo os manifestos filhos do pipeline 1 (já que eles aparecem primeiro no manifesto).
Cenário C: falha no pipeline
Também pode ocorrer uma falha no pipeline. Essa falha não é a mesma que uma falha de entrada. Quando um pipeline falha (por exemplo, o pipeline 0), acontece o seguinte:
-
A saída é interrompida.
-
O manifesto principal do pipeline 0 não é excluído. Ele ainda contém uma listagem dos manifestos filhos do pipeline 0.
-
Os manifestos filhos não são atualizados porque nenhum arquivo de mídia novo está sendo produzido. Os manifestos filhos ficam obsoletos.
-
O manifesto principal do pipeline 1 não muda. Ele ainda contém uma listagem dos manifestos filhos do pipeline 0 (e do pipeline 1).
O resultado para o sistema de downstream que está lendo o manifesto principal do pipeline 0: o sistema encontrará uma listagem de manifestos filhos do pipeline 0, mas esse manifesto ficará obsoleto. Se o sistema detectar que o manifesto está obsoleto, ele poderá retornar ao manifesto principal do pipeline 0 e procurar um manifesto filho alternativo. Se encontrar o manifesto filho do pipeline 1, ele mudará para a leitura desse manifesto filho.
Os sistemas de downstream que estão lendo o manifesto principal do pipeline 1 não são afetados. Presumivelmente, esses sistemas estão lendo os manifestos filhos do pipeline 1 (já que eles aparecem primeiro no manifesto).
nota
Se o sistema downstream da saída HLS for o AWS Elemental MediaStore, você poderá configurar o MediaStore para excluir entradas obsoletas. Consulte Componentes de uma política de ciclo de vida de objetos. Depois que o manifesto filho foi excluído, o MediaStore volta a seguir a lógica "o manifesto foi excluído" do cenário B.