De onde vêm os arquivos WebM
O WebM foi lançado pelo Google em 2010 como um formato de vídeo livre de royalties para a web. Ele é baseado no contêiner Matroska e guarda vídeo VP8, VP9 ou AV1 com áudio Vorbis ou Opus. Normalmente você acaba com um arquivo WebM sem tê-lo escolhido:
- Gravações de tela feitas no navegador, por exemplo por extensões ou gravadores web, que usam o MediaRecorder embutido no navegador.
- Clipes salvos de sites e redes sociais que transmitem em VP9.
- Exportações de algumas ferramentas de animação, de memes e de captura de jogos.
- Gravações de serviços de videochamada e de mensagens de voz.
Os navegadores tocam WebM sem problema. As dificuldades começam em outros lugares: o iMovie e o Final Cut não o importam, o Premiere exige passos extras, iPhones mais antigos não o reproduzem no app Fotos, muitas TVs o ignoram, e alguns mensageiros e formulários de upload recusam a extensão.
Por que o WebM é sempre recodificado
Alguns conversores conseguem reembalar um arquivo em MP4 em segundos quando o codec já é compatível. No caso do WebM, esse atalho não ajuda: o objetivo da conversão é justamente obter H.264, e o WebM nunca contém H.264. Mesmo onde o MP4 tecnicamente pode carregar VP9 ou AV1, os aparelhos que recusam WebM geralmente recusam esses codecs também.
Por isso, a ferramenta sempre decodifica o WebM e codifica um novo fluxo:
- Vídeo: H.264 com CRF 23, cor padrão de 8 bits 4:2:0, a combinação com o suporte de hardware mais amplo.
- Áudio: Opus ou Vorbis convertidos para AAC a 128 kbit/s.
- Estrutura do arquivo: o índice é gravado no início do MP4, então ele pode começar a tocar num navegador ou mensageiro antes de terminar de baixar.
A resolução e a taxa de quadros não mudam. No navegador, o codificador usa o preset ultrafast; a opção de servidor usa o medium com o mesmo CRF, o que consome mais CPU, mas geralmente gera um arquivo menor.
Espere um MP4 maior
VP9 e AV1 são mais novos e mais eficientes que o H.264. Para a mesma qualidade visual, o H.264 precisa de aproximadamente 30 a 50% mais bits que o VP9, e ainda mais em comparação com o AV1. Somado ao preset rápido do navegador, um WebM de 40 MB pode facilmente virar um MP4 de 70 a 100 MB.
Há duas formas de reduzir isso:
- Use o processamento no servidor, que comprime melhor com a mesma qualidade. O uso grátis cobre uma tarefa por dia de até 500 MB; o Premium é ilimitado e aceita arquivos de até 4 GB.
- Passe o MP4 depois pelo comprimir vídeo com o preset Leve ou Média.
Gravações de tela: problemas específicos
As gravações de tela feitas no navegador são a origem mais comum de WebM e trazem suas próprias manias.
Duração ausente e busca
O MediaRecorder grava o arquivo durante a gravação e muitas vezes nunca registra a duração total. Os players então mostram 0:00 ou uma linha do tempo que não para de crescer, e a busca pula ou falha. A recodificação grava um índice correto, então o MP4 tem a duração certa e a busca funciona normalmente. Só isso já é um bom motivo para converter gravações antes de compartilhá-las ou editá-las.
Taxa de quadros variável
Os gravadores só capturam frames quando algo muda na tela, então a gravação de um slide estático pode ter longos intervalos entre frames. A conversão mantém imagem e som sincronizados ao longo desses intervalos. Se a gravação começa ou termina com minutos de tempo morto, corte-os antes com o cortar vídeo: a conversão fica mais curta, e o arquivo também.
Vídeo transparente
WebM com VP8 ou VP9 pode carregar um canal alfa, usado em figurinhas animadas e sobreposições. O H.264 não tem transparência, então as áreas transparentes ficam pretas no MP4. Se você precisa de uma imagem animada com transparência, mantenha o WebM; se precisa de algo que toque como um loop curto em chats ou documentos, converter vídeo para GIF pode servir melhor.
Velocidade e memória no navegador
Decodificar VP9 e AV1 é mais pesado do que decodificar H.264, e a tarefa inteira roda num único núcleo de CPU em WebAssembly. Expectativas aproximadas:
- Uma gravação de tela em 1080p converte perto do tempo real num notebook recente, então uma gravação de 10 minutos leva cerca de 10 minutos.
- Celulares são várias vezes mais lentos e podem ficar sem memória com arquivos acima de algumas centenas de megabytes.
- A entrada e a saída ficam na memória do navegador até você baixar, então feche outras abas pesadas ao trabalhar com arquivos grandes.
No modo navegador, nada é enviado e o WebM original fica intacto. Para gravações longas ou de alta resolução, a opção de servidor evita tanto o limite de memória quanto a espera no seu próprio dispositivo.