Limpe um arquivo de áudio

Notas de voz, entrevistas e gravações de aula têm algo em comum: uma pessoa falando com o som da sala ao fundo. Esta página traz as especificações: quais arquivos entram, o que acontece com eles, o que volta e onde esta etapa entra no restante do seu fluxo de trabalho.

Formatos de entrada

mp3, wav, m4a, aac, flac e ogg, além da trilha de áudio da maioria dos arquivos de vídeo. Trate isso como um guia e não como promessa: decidimos lendo o começo do próprio arquivo, não confiando na extensão, então um arquivo renomeado é tratado pelo que ele realmente é.

Se o seu navegador não conseguir decodificar um arquivo específico, você vê um erro que diz isso, e converter para mp3 ou wav antes quase sempre resolve. É uma solução real, não uma desculpa — o que falta nesses casos é compatibilidade com o contêiner, não a limpeza de ruído.

Como o arquivo é processado

Para mp4, m4a e fluxos de aac ou mp3 sem contêiner, extraímos somente o trecho necessário: percorremos o índice do próprio arquivo e lemos apenas aqueles bytes. Uma gravação longa nunca precisa caber na memória: num arquivo grande isso mediu cerca de 103 vezes menos memória do que decodificar tudo.

Os formatos sem perda e abertos — wav, flac, ogg, webm — ainda não têm esse atalho, então são decodificados inteiros. Funciona bem em durações normais, e é o único caso em que um arquivo muito longo pode esgotar a memória do seu navegador. Se acontecer, um mp3 ou m4a da mesma gravação usa a rota mais eficiente.

Duas coisas acontecem com todo arquivo antes de o modelo vê-lo, e vale saber as duas:

Formato e volume da prévia

Um WAV mono de 16 bits a 48 kHz, cerca de 2,9 MB para os 30 segundos. WAV porque os navegadores não têm um codificador de áudio de uso geral — gerar um mp3 exigiria baixar também um codificador, além dos 9 MB do motor, e isso não se justifica apenas para oferecer outro formato.

Não igualamos o volume das duas versões. Na amostra da nossa página inicial, o original mede −11,6 LUFS e a versão limpa −13,7, cerca de 2 LU mais baixa. Não é bug: remover ruído remove energia, e com o seu arquivo vai acontecer o mesmo. Igualar os níveis deixaria a comparação artificialmente favorável e esconderia algo que você precisa saber antes de ajustar os níveis.

Onde esta etapa entra no fluxo de trabalho