O que é uma API de processamento de vídeo?
Uma API de processamento de vídeo disponibiliza transcodificação, redimensionamento, recorte de trechos, análise, empacotamento e geração de miniaturas de forma programática. Transformações de grande porte geralmente são enviadas como tarefas assíncronas, em vez de concluídas em uma única requisição.
Como funcionam as APIs de processamento de vídeo
Uma API de processamento converte operações de mídia em um grafo remoto de tarefas cujas entradas, parâmetros e saídas podem ser acompanhados independentemente da conexão do cliente. Unidades de processamento inspecionam as fontes, agendam transformações compatíveis, armazenam derivados e informam estados finais ou intermediários. Ela é mais abrangente que uma API de edição quando também realiza normalização, análise, empacotamento ou verificações de qualidade sem uma linha do tempo de edição. O serviço fica após a ingestão e o gerenciamento de ativos e antes da publicação ou reprodução.
Informações essenciais
- As chaves de idempotência impedem que uma nova tentativa após uma falha de rede crie tarefas duplicadas, cobranças duplicadas ou gravações concorrentes no mesmo local de saída somente quando a API as implementa; caso contrário, quem chama a API deve eliminar envios duplicados usando sua própria identificação de requisição.
- Os callbacks de conclusão devem ser autenticados e seguros para reenvio, pois a entrega pode ocorrer em duplicidade ou fora de ordem; um endpoint de status continua sendo necessário para reconciliar o estado dos recursos.
- Registrar as versões do processador, do codec e da predefinição com cada saída favorece a reprodutibilidade, pois os mesmos parâmetros de alto nível podem produzir bytes diferentes após atualizações do serviço.
Quando as APIs de processamento de vídeo são importantes
Use uma API de processamento para gerar automaticamente mídia pronta para a aplicação a partir dos arquivos mestres enviados por upload. Planeje novas tentativas, idempotência, callbacks de status e falhas parciais, pois as tarefas podem ter longa duração ou ser duplicadas.