Qual é a diferença entre um codec e um contêiner?

Um codec especifica como os dados de áudio, vídeo ou imagem são codificados e decodificados, enquanto um contêiner empacota fluxos, informações de temporização, metadados e legendas. MP4 é um contêiner que pode transportar codecs como H.264 e AAC.

Como funcionam codecs e contêineres

Fluxos elementares comprimidos não descrevem, por si só, um arquivo completo que possa ser reproduzido. Um contêiner intercala uma ou mais faixas e registra temporização, sincronização, idioma, informações de capítulos e outros metadados, enquanto cada faixa identifica como suas amostras foram comprimidas. A remultiplexação altera o empacotamento sem reconstruir a mídia; a transcodificação altera a codificação de um fluxo. A reprodução depende, portanto, do codec, de seu perfil e parâmetros, de sua associação com o contêiner e da combinação de decodificador e demultiplexador.

Informações essenciais

  1. Uma extensão .mp4 ou .webm identifica o empacotamento, não a compressão em seu interior; dois arquivos com a mesma extensão podem exigir decodificadores de vídeo ou áudio diferentes.
  2. A navegação pela linha do tempo depende tanto dos índices do contêiner quanto dos quadros de acesso aleatório do codec: um índice válido não pode tornar um quadro com predição interquadros decodificável de forma independente.
  3. Copiar faixas entre contêineres só é uma operação sem perdas quando o formato de destino permite aquelas entradas de amostra do codec, timestamps, metadados e representações de legendas.

Quando codecs e contêineres são importantes

Selecione o codec e o contêiner em conjunto, pois o suporte a um não garante o suporte à combinação dos dois. Um arquivo válido em outros aspectos pode falhar quando um navegador, editor ou player rejeita seu perfil de codec ou empacotamento.

Transforme conhecimento sobre mídia em um pipeline funcional

Conecte uploads, processamento, IA, armazenamento e entrega por meio de uma única API declarativa, com o stack de codificação, o ajuste de escala e as constantes mudanças de formatos gerenciados para você.

Experimente a Transloadit gratuitamente