Skip to content

Modelos de streams

Quando há dezenas de streams, ninguém quer redigitar os mesmos ajustes de transcodificador e de arquivo em cada um. Um modelo é um conjunto de valores padrão para as seções de configuração do stream. Um stream aponta para um modelo, e as seções do modelo valem onde o stream não tem as suas próprias.

Um modelo não é uma programação nem um grupo: ele não inicia nada e não é dono de nenhum stream. Tudo o que faz é fornecer valores aos streams que o referenciam.

Quais seções um modelo define

Um modelo pode definir seis seções de configuração, e apenas essas:

  • Transcodificador — escada, presets, regras de áudio, GOP; veja Transcodificação e MBR.
  • DVR — gravação do arquivo: profundidade, discos, retenção; veja Arquivo DVR.
  • Miniaturas — veja Miniaturas.
  • Timeouts das fontes — comportamento quando uma entrada some; veja Reserva de fontes.
  • Janela ao vivo — o comprimento da janela ao vivo em segmentos.
  • Voz para texto — a seção existe no contrato do modelo, mas o console ainda não tem um formulário para ela: não dá para defini-la pela interface.

Todo o resto — fontes, o nome, a referência a um backend de autorização — o modelo não define: são propriedades de um stream específico.

A regra de resolução: a seção própria vence inteira

Não há fusão campo a campo. A seção é tomada inteira: se o stream tem a sua própria seção de transcodificador, nem um campo da seção do modelo se aplica. Se não tem, vale a do modelo.

Daí decorrem duas consequências práticas:

  • Para mudar um único campo em relação ao modelo, o stream terá de carregar a seção inteira — com o restante dos seus campos junto.
  • Uma seção vazia e uma seção ausente são a mesma coisa. Uma lista de miniaturas vazia e null contam como não definidas, e o modelo assume o lugar delas.

Uma referência a um modelo que não existe equivale a não ter referência: o stream roda com as suas próprias seções. A página do stream diz isso — O modelo {name} não existe.

A lista de modelos

A tela Modelos contém todos os modelos da instalação. Digite um nome em Nome do novo modelo e pressione Criar. A coluna Seções mostra quais seções o modelo realmente define — um modelo vazio não afeta nada.

A lista de modelos: a coluna Seções mostra o que um modelo define

Excluir um modelo que algo ainda referencia é recusado: Não é possível excluir: streams ainda referenciam este modelo. Remova a referência neles primeiro. É uma proteção contra perder em silêncio os ajustes de dezenas de streams de uma vez.

A página do modelo

As abas espelham as seções: Transcodificador, DVR, Miniaturas, Timeouts das fontes (que também carrega o campo Janela ao vivo) e Streams que usam este modelo.

Os formulários são os mesmos da página do stream, com uma ressalva: um modelo não tem entrada por definição. A escada do transcodificador é editada sem dicas das faixas da fonte, e não há prévia de entrada nem substituição a partir de um fluxo real — não há de onde tirá-la.

A página do modelo: as abas espelham as seções de configuração

Um ponto em uma aba significa edições não salvas naquela seção. Salvar e Cancelar se comportam como na página do stream: Salvar só fica ativo enquanto houver edições não salvas, Cancelar reverte para a base aceita.

A aba Streams que usam este modelo lista os streams que o referenciam; em uma lista longa ela informa que são mostrados os primeiros N. Olhe para ela antes de editar: editar um modelo muda o comportamento de todos esses streams de uma vez.

O modelo visto de um stream

O modelo é escolhido na aba de ajustes básicos do stream pelo campo Modelo (Sem modelo remove a referência). A lista de streams tem uma coluna Modelo.

Cada seção da página do stream está em um de quatro estados:

  • Própria — a seção está definida no stream e o modelo não a define.
  • Do modelo {name} — não há seção própria, então vale a do modelo. Exibida somente para leitura.
  • Sobrepõe o modelo {name} — a seção está definida nos dois lugares e a do stream vence. Esse estado é destacado de propósito: caso contrário, um desvio consciente do modelo seria indistinguível de um stream que nada sabe de modelos.
  • Vazia — nem o stream nem o modelo definem a seção.

Dois botões alternam o estado:

  • Sobrescrever — copia a seção do modelo para o stream e a torna editável. A seção passa a sobrepor.
  • Voltar ao modelo — exclui a seção própria do stream, e a do modelo volta a valer.

A lista de streams e as colunas que leem seções — transcodificador, DVR, reserva de entrada — mostram os valores efetivos, ou seja com o modelo já substituído, e não o documento bruto do stream.