Codificação de vídeo¶
media.transcode.video
A função media.transcode.video codifica a trilha de vídeo selecionada no codec de saída desejado e permite definir a taxa de bits, a resolução e a estrutura GOP.
A criação de várias qualidades de saída e os detalhes do processamento conjunto estão descritos na transcodificação multibitrate.
Codecs de saída¶
A função media.transcode.video inclui a codificação nos seguintes codecs de vídeo de saída:
| Codec de vídeo | Valor de codec |
|---|---|
| H.264 / AVC | {set: h264} |
| H.265 / HEVC | {set: hevc} |
| AV1 | {set: av1} |
| MPEG-2 Video | {set: mp2v} |
Configuração¶
Em transcoder.output, indique a trilha de vídeo de origem com source, o codec de destino com codec e a taxa de bits com bitrate:
streams:
- name: tv1
inputs:
- udp: {host: 239.0.0.1, port: 5000}
transcoder:
output:
- source: !best_quality video
codec: !set h264
bitrate: 2800000
Seleção da trilha de origem¶
Para uma única saída de vídeo, use source: {best_quality: video}: seleciona a trilha de vídeo com a maior taxa de bits declarada. Se souber o ID de entrada, use source: {exact: v1}. Com uma fonte reserva, esse ID deve identificar a trilha desejada em cada entrada.
Consulte a descrição detalhada da seleção de trilhas para ver todos os seletores, o comportamento na troca para reserva e os exemplos.
Sem correspondências, a regra ao vivo não cria saída. O processamento ao vivo não implementa os modos if_missing: blank e substitute; eles não fornecem um sinal ausente.
Codecs e parâmetros¶
codec— codec de vídeo de destino da lista acima.codec: samepreserva os quadros originais sem recodificá-los.bitrate— taxa de bits de destino em bits/s.gop_size— comprimento do GOP em quadros.gop_structure— estrutura da sequência de quadros, por exemploipouibbbp.
HEVC¶
streams:
- name: tv1
inputs:
- udp: {host: 239.0.0.1, port: 5000}
transcoder:
output:
- source: !best_quality video
codec: !set hevc
bitrate: 2800000
AV1¶
Na codificação por software, o servidor procura os codificadores disponíveis nesta ordem:
- SVT-AV1;
- libaom;
- rav1e.
Se nenhum estiver disponível, tenta o codificador AV1 padrão disponível. O preset de velocidade é convertido nas configurações do codificador escolhido. Na NVIDIA, usa-se AV1 NVENC; a GPU deve oferecer codificação AV1.
Para entrega segmentada, o servidor fixa o intervalo de quadros-chave e desativa a detecção de cenas nos codificadores AV1 por software. Eles não oferecem GOP aberto: o servidor usa GOP fechado e registra um aviso se um GOP aberto for solicitado.
AV1 por software usa VBR com GOP de acesso aleatório. Se CBR for solicitado, o servidor continua em VBR e registra um aviso. É uma limitação do codificador.
Redimensionamento¶
resize |
O que faz |
|---|---|
!scale |
escala exata para as dimensões indicadas |
!fit |
encaixar preservando a proporção de aspecto (com preenchimento, cor de fundo configurável) |
!crop |
recortar para as dimensões indicadas |
Verificação¶
Confira o codec e os parâmetros de vídeo da saída nas estatísticas do stream. Depois abra http://server/streaming/v/tv1/index.m3u8 em um reprodutor e verifique a reprodução.
Próximos passos¶
O formato do pixel e sua interação com o redimensionamento são descritos em SAR e vídeo anamórfico.