Ir para o conteúdo

MP4 · MOV · Sem recodificar · Sem limite de tamanho

Removedor de metadados de vídeo

Um removedor de metadados de vídeo grátis para MP4 e MOV. Filmagens de celular carregam coordenadas GPS e o modelo do seu dispositivo exatamente como as fotos — remova sem recodificar um único quadro.

O que um celular escreve no seu vídeo

Um clipe gravado em um celular normalmente carrega um átomo de localização QuickTime com suas coordenadas no formato ISO 6709, marcas de criação e modificação nos cabeçalhos de filme e de faixa, a marca e o modelo do dispositivo e o nome do codificador. Aplicativos de edição acrescentam depois os próprios campos de título, comentário e artista.

Nada disso é visível quando o vídeo é reproduzido, e tudo isso viaja com o arquivo quando você o envia.

Por que não recodificamos

O jeito óbvio de tirar metadados de vídeo é passá-lo por um transcodificador. É isso que ferramentas construídas sobre ffmpeg.wasm fazem, e isso tem três custos: é lento, baixa dezenas de megabytes de WebAssembly e recomprime seu vídeo, então a saída fica mensuravelmente pior que a entrada.

O contêiner permite uma abordagem melhor. Em MP4 e MOV, a tabela stco dentro de moov guarda deslocamentos absolutos de bytes que apontam para a caixa mdat, onde ficam os quadros. Apagar uma caixa de metadados deslocaria cada um desses valores e quebraria o arquivo. Mas o formato define uma caixa free: preenchimento que todo demultiplexador ignora. Então reescrevemos o tipo de cada caixa de metadados para free, zeramos o conteúdo e deixamos o tamanho intacto. Nada se move. Nada é decodificado.

O resultado é um arquivo com o mesmo comprimento do original, com quadros idênticos e sem metadados.

Streaming, não carregamento

Navegadores ficam sem memória com facilidade se você pedir que segurem um arquivo de 2 GB. Nós nunca fazemos isso. As caixas de nível superior são percorridas lendo cabeçalhos de 16 bytes via File.slice(), só a caixa moov é lida por inteiro, e a saída é montada como uma lista de referências preguiçosas a trechos do arquivo original. O pico de memória fica na casa de poucos megabytes, independentemente da duração do seu vídeo.

Perguntas

Perguntas frequentes

Limpar um vídeo o recodifica?
Não, e essa é a parte importante. Recodificar um vídeo é lento e o degrada visivelmente. Nunca tocamos no fluxo de vídeo: os átomos de metadados são substituídos por preenchimento `free` padrão exatamente do mesmo tamanho, e as marcas de tempo são zeradas no lugar. Cada deslocamento de chunk continua resolvendo, então nem um quadro é recomprimido.
Qual o tamanho máximo de vídeo que posso limpar?
Muito grande. O arquivo nunca é carregado na memória. Lemos apenas a caixa `moov` — normalmente algumas centenas de kilobytes mesmo em um clipe de vários gigabytes —, aplicamos o patch e remontamos a saída a partir de referências preguiçosas ao arquivo original.
Que metadados os vídeos realmente carregam?
Mais do que as pessoas esperam. Celulares escrevem coordenadas GPS em um átomo de localização QuickTime, além de marcas de criação e modificação, marca e modelo do dispositivo e o codificador usado. Softwares de edição acrescentam títulos, comentários e campos de artista.
Quais formatos de vídeo são suportados?
MP4 e MOV, que juntos cobrem essencialmente tudo o que um celular ou uma câmera produz. Os dois usam o mesmo contêiner ISO Base Media File Format, que é o que o motor entende. MKV, AVI e WebM ainda não são suportados.