toolsmith

Sem upload · tudo roda no seu navegador

O que é um códec — e como ele difere do MP4?

Quase tudo que confunde nos arquivos de vídeo vem de uma única distinção: a extensão nomeia a caixa, não o que está dentro dela. Separe as duas coisas e a maior parte do mistério desaparece.

Atualizado

A caixa e o conteúdo

Um contêiner — MP4, MOV, WebM, MKV — descreve como as partes de um arquivo estão dispostas: onde fica o fluxo de vídeo, onde fica o de áudio, como os dois se encaixam no tempo e onde mora o índice.

Um códec — H.264, HEVC, VP9, AV1 para imagem; AAC, Opus, MP3 para som — é como esse conteúdo foi comprimido em primeiro lugar.

Então `.mp4` informa o formato da caixa e quase nada sobre o que ela guarda. Dois arquivos terminados em `.mp4` podem conter códecs completamente diferentes, e um deles pode não tocar num aparelho em que o outro funciona perfeitamente.

É por isso que algumas conversões saem de graça e outras não

MOV para MP4 é quase de graça. Os dois são da mesma família de formato e o vídeo dentro de um MOV normalmente já é H.264, que o MP4 aceita. Então os dados comprimidos são copiados sem alteração e um índice novo é escrito em volta. Nada é decodificado e nada é recomprimido. É sem perdas e quase instantâneo. O nome próprio disso é remux.

MP4 para WebM é o oposto. WebM não aceita H.264, então cada quadro precisa ser decodificado e comprimido de novo como VP9, e o áudio como Opus. Isso leva tempo real e custa uma geração de qualidade.

As duas operações compartilham a palavra "converter" e nada mais, e é por isso que o nosso conversor diz qual das duas você está prestes a rodar antes de você apertar qualquer coisa.

Dá para fazer bastante coisa sem códec nenhum

Cortar, por exemplo, é só escolher quais amostras já comprimidas ficam. Nada é decodificado, então a qualidade é idêntica bit a bit e a operação termina quase na hora.

Há um custo, e ele sai direto de como a compressão funciona. Você só pode começar num quadro-chave, um quadro que se sustenta sozinho. Os quadros intermediários são guardados como descrições de quanto diferem dos anteriores, então cortar no meio dessa corrente deixa os primeiros segundos sem referência e eles saem quebrados.

Por isso puxamos o início de volta para o quadro-chave mais próximo antes do ponto que você pediu, e mostramos onde o corte vai cair de verdade. A alternativa é recodificar o começo para acertar o quadro exato, e isso custa qualidade — deve ser a sua escolha, não uma troca silenciosa.

Extrair o áudio como M4A funciona do mesmo jeito: os dados AAC comprimidos são erguidos para outro contêiner sem serem tocados.

O suporte é por códec, não por extensão

Quando um aparelho diz que não consegue tocar um MP4, o contêiner quase nunca é o problema. Em geral significa que o códec de dentro não é suportado — HEVC dentro de um `.mp4` é o caso típico, já que é o que os celulares novos gravam e o que os softwares antigos recusam.

Isso também explica por que renomear não muda nada. Trocar `.mov` por `.mp4` reetiqueta a caixa deixando caixa e conteúdo exatamente como estavam.

De onde vêm os nossos próprios limites

Nosso demuxer lê ISOBMFF, a família a que MP4, MOV e M4V pertencem. Não temos código que abra Matroska, que é a base do WebM — então "WebM para MP4" não está na lista, embora soe como o inverso de algo que já fazemos. Colocá-lo lá seria reivindicar uma capacidade que não temos.

Codificar é tarefa do navegador, não nossa, e quais códecs ele consegue codificar varia por máquina e sistema. Então perguntamos diretamente a ele e oferecemos só isso, em vez de imprimir um cardápio e falhar no meio.

Faça agora, sem enviar nada

Por que meu .mp4 não toca neste aparelho?

Quase sempre por causa do códec de dentro, e não do contêiner. Vídeo HEVC num MP4 é o suspeito de sempre: celulares novos gravam assim e players antigos não decodificam. Recodificar para H.264 resolve; renomear o arquivo não.

Trocar a extensão converte o vídeo?

Não. A extensão é um rótulo, não o formato. Renomear pode ocasionalmente fazer um player tentar abrir um arquivo que ele ignoraria, mas os bytes de dentro continuam iguais e ele vai falhar se realmente não conseguir lê-los.

Converter MOV para MP4 perde qualidade?

Não quando o vídeo de dentro já é H.264, o que costuma ser o caso. Os dados comprimidos são copiados para o novo contêiner sem serem tocados, então o resultado é a mesma imagem em outra caixa.

Vale a leitura