O que é processamento de fluxos de vídeo?
O processamento de fluxos de vídeo transforma ou analisa dados audiovisuais continuamente à medida que chegam, em vez de aguardar um arquivo completo. As operações incluem transcodificação, composição, empacotamento, inferência, gravação e monitoramento de qualidade.
Como funciona o processamento de fluxos de vídeo
Um processador de fluxos recebe amostras com marcas de tempo por meio de um grafo com limites definidos e execução contínua, em vez de tratar um ativo completo como entrada. Decodificação, análise, sobreposições, mixagem de áudio, codificação e empacotamento consomem, cada um, parte do orçamento de latência e podem ocorrer em ritmos diferentes. Por isso, sistemas ao vivo coordenam o armazenamento em buffer, a contrapressão, a ordenação e a recuperação de falhas, enquanto emitem resultados ou eventos com rapidez suficiente para a reprodução nas etapas seguintes.
Informações essenciais
- A latência de ponta a ponta se acumula nos buffers de captura, na decodificação, no processamento, na codificação, no empacotamento e no armazenamento em buffer do reprodutor; otimizar apenas uma etapa pode não alterar significativamente o atraso percebido pelo espectador.
- Quando uma etapa não consegue acompanhar a taxa de entrada, um pipeline com limites definidos precisa descartar dados, reduzir o trabalho, aplicar contrapressão ou aumentar o atraso; uma fila sem limites acaba esgotando a memória.
- As marcas de tempo de apresentação e decodificação podem diferir quando os quadros são reordenados, portanto os processadores devem preservar a semântica das marcas de tempo, em vez de presumir que a ordem de chegada é a ordem de exibição.
Quando o processamento de fluxos de vídeo é importante
Legendas descritivas ao vivo, moderação, sobreposições, análise de dados e codificação em múltiplas taxas de bits dependem do processamento de quadros sob restrições temporais contínuas. Operações complexas melhoram a saída, mas podem aumentar a latência ou causar descarte de dados.