Cortador de áudio
Corte e apare arquivos de áudio na duração exata desejada. Defina o início e o fim, pré-visualize e exporte. Nenhum envio, nenhuma instalação.
MP3, WAV, OGG, AAC, FLAC, M4A
Como funciona
- Carregar um arquivo de áudio. Solte ou selecione um arquivo MP3, WAV, OGG, AAC, FLAC ou M4A. O navegador o decodifica localmente para desenhar a forma de onda; nada é enviado a um servidor.
- Definir os pontos de início e fim. Arraste as alças diretamente sobre a forma de onda, ou digite carimbos de tempo precisos até o milissegundo. A seleção destaca a região mantida.
- Pré-visualizar a fonte enquanto ajusta. O reprodutor de áudio toca o arquivo original com um cursor sobreposto à forma de onda, útil para encontrar o ponto exato de corte de ouvido.
- Escolher o formato de saída e cortar. MP3 (LAME VBR ~190 kbps), WAV (PCM 16 bits, sem perdas) ou OGG Vorbis (~160 kbps VBR). O corte roda através de ffmpeg.wasm no seu navegador; o arquivo cortado é baixado quando estiver pronto.
Uma breve história da Web Audio API
A Web Audio API é a interface JavaScript padronizada pelo W3C para processar e sintetizar áudio em navegadores web, a tecnologia fundadora que permite a uma página decodificar um MP3 na memória, desenhar uma forma de onda, encaminhar áudio através de filtros ou tocar tons sintetizados sem plugins. O primeiro protótipo foi construído por Chris Rogers na Apple, dentro do projeto WebKit, em 2010. O W3C Audio Working Group publicou seu First Public Working Draft em 14 de dezembro de 2011; após quase uma década de revisões e ciclos de implementação pelos navegadores, o W3C publicou a Web Audio API como Recomendação W3C em 17 de junho de 2021. O documento de Recomendação agradece explicitamente Chris Rogers como "former specification editor and original author of this specification". Três classes fazem o trabalho principal em qualquer ferramenta de áudio do lado do navegador: AudioContext (o contêiner de mais alto nível), AudioBuffer (um pedaço em memória de áudio PCM decodificado, com dados por canal expostos como Float32Array) e AudioBufferSourceNode (um nó de reprodução de uso único). O modelo completo de grafo suporta muitos outros tipos de nó (ganho, filtro, panner, analisador, convolvedor, atraso) e pode construir desde um afinador de guitarra até um sintetizador. Este cortador usa apenas a parte de decodificação (AudioContext.decodeAudioData()) para a visualização da forma de onda; o corte propriamente dito roda através de ffmpeg.wasm.
Tour pelos formatos de áudio suportados
WAV (1991, Microsoft + IBM) é o Waveform Audio File Format, um contêiner RIFF que abriga amostras PCM lineares não comprimidas. Um WAV de qualidade CD é de 44.100 amostras × 2 canais × 16 bits por segundo ≈ 10,1 MB por minuto, razão pela qual uma música de quatro minutos em WAV pesa cerca de 40 MB. O cabeçalho de tamanho do data-chunk do WAV é de 32 bits, o que limita um arquivo único a 4 GB; gravações mais longas exigem as extensões RF64 ou W64. WAV é o formato universal de intercâmbio precisamente por ser não comprimido, simples de parsear e livre de patentes. MP3 (ISO/IEC 11172-3, 1993) é o nome coloquial de MPEG-1 Audio Layer III, desenvolvido no Instituto Fraunhofer em Erlangen, na Alemanha, com contribuições-chave de Karlheinz Brandenburg, Heinz Gerhäuser, Bernhard Grill, Jürgen Herre e Harald Popp. O MP3 ficou por duas décadas onerado por patentes; a última dessas patentes expirou em 16 de abril de 2017 nos Estados Unidos, e a Fraunhofer anunciou formalmente o encerramento de seu programa de licenciamento de MP3 em 23 de abril de 2017. Essa expiração é a razão pela qual codificadores MP3 livres e sem royalties (libmp3lame, lamejs) passaram a ser implantáveis sem ressalvas em ferramentas do navegador.
AAC (ISO/IEC 13818-7, 1997) e M4A: o AAC foi projetado como sucessor do MP3, com melhor qualidade no mesmo bitrate. M4A não é um codec separado: é um arquivo MPEG-4 Part 14 (.mp4) que carrega apenas áudio. A Apple popularizou a extensão .m4a no lançamento da iTunes Music Store em 28 de abril de 2003, com AAC a 128 kbps como formato de compra padrão. OGG Vorbis (Xiph.Org, 2000-2002) é um codec com perdas livre, aberto e sem encargos de patente, a resposta da Xiph ao clima de patentes em torno do MP3 no fim dos anos 1990. O codificador de referência, libvorbis, alcançou a versão 1.0 em julho de 2002. Wikipédia, Spotify (no início), incontáveis jogos e distribuições Linux entregam Vorbis. FLAC (Free Lossless Audio Codec, Xiph.Org, 20 de julho de 2001) comprime sem perdas: a saída decodificada é bit a bit idêntica à entrada. A compressão típica fica entre 50 e 60 % do tamanho do WAV de origem. FLAC é o formato de arquivamento de fato para a distribuição de música sem perdas (Bandcamp, Qobuz, HDtracks, Internet Archive). Opus (IETF RFC 6716, setembro de 2012) é o codec moderno livre de royalties por excelência, projetado em conjunto por Xiph.Org, Mozilla e Skype/Microsoft; funde o codec de fala SILK da Skype com o codec musical CELT da Xiph em um único codec variável, excelente em toda a faixa, da fala a 6 kbps até a música estéreo a 510 kbps. Opus é de implementação obrigatória em WebRTC.
Como a decodificação de áudio funciona de fato no navegador
Quando você solta um MP3 de 4 MB sobre a página do cortador, esta sequência roda inteiramente no seu navegador. FileReader.readAsArrayBuffer(file) lê os bytes do disco local para um ArrayBuffer JavaScript: é uma leitura local, sem upload. A página cria um AudioContext (com fallback para os prefixos antigos do WebKit). audioCtx.decodeAudioData(arrayBuffer) executa o decodificador de áudio nativo do navegador de forma assíncrona (tipicamente o codec do sistema) e devolve um AudioBuffer. O AudioBuffer expõe getChannelData(0), que devolve um Float32Array das amostras do canal esquerdo normalizadas entre −1,0 e +1,0. Para uma fonte mono de 4 minutos a 44,1 kHz são cerca de 10,6 milhões de floats, ou seja 42 MB de memória. A rotina de desenho da forma de onda subamostra esse array para produzir um pico por coluna de pixels do canvas. O AudioContext é então fechado; nada mais segura referência ao buffer, e a memória é recuperada. Para o corte de fato, o ffmpeg.wasm opera sobre os bytes codificados originais em seu sistema de arquivos virtual: a decodificação Web Audio serve apenas para o desenho. Quais formatos decodeAudioData aceita depende do navegador hospedeiro, não da especificação. Na prática em 2026: MP3 e WAV são decodificados universalmente; OGG Vorbis funciona no Chrome, Firefox e Safari recente; AAC/M4A no Safari, Chrome, Edge e Firefox modernos; FLAC em todos os grandes navegadores desde aproximadamente 2017; Opus em todos os navegadores modernos.
Renderização da forma de onda, técnica do pico por pixel
Desenhar uma forma de onda é conceitualmente simples, mas fácil de fazer mal. A técnica padrão, usada aqui, é a envoltória mín./máx.: escolhe-se uma largura-alvo em pixels (a do canvas); calcula-se o passo como samples.length / width; para cada coluna de pixels da saída, percorrem-se suas step amostras procurando o mínimo e o máximo locais; desenha-se uma única linha vertical da amostra mínima até a máxima. O resultado é o aspecto de envoltória espelhada que se vê em qualquer DAW moderna. Por que envoltória mín./máx. em vez de RMS ou amostra única? Uma abordagem ingênua "para cada pixel, plote uma amostra" perde detalhe transitório: uma amostra silenciosa pode cair em um pixel que deveria representar um transitório forte, produzindo uma forma de onda enganosamente plana. O RMS (raiz quadrada da média) entrega uma curva de loudness perceptualmente justa, mas perde a informação de pico. A envoltória mín./máx. é o compromisso visual que domina a interface de DAWs pelo menos desde o Pro Tools e continua sendo a convenção em wavesurfer.js, peaks.js (BBC R&D, projetado para jornalistas anotando áudio longo) e Audacity. A implementação aqui usa devicePixelRatio para escala em alta densidade, de modo que a forma de onda permaneça nítida em telas Retina. Uma limitação honesta: getChannelData(0) devolve apenas o primeiro canal, então arquivos estéreo são renderizados a partir do canal esquerdo. O corte em si, executado por ffmpeg, preserva todos os canais.
Matemática de um corte preciso à amostra
Um corte é conceitualmente simples: produzir um novo arquivo contendo apenas as amostras entre o instante t_start e o instante t_end da fonte. Há dois caminhos. A abordagem em nível de amostra converte tempos em índices de amostra (start_frame = round(t_start × sampleRate)), aloca um novo AudioBuffer de comprimento end_frame − start_frame, copia amostras por canal e, então, recodifica: é o que se faria apenas com a Web Audio API. O corte em nível de contêiner (o que esta ferramenta faz via FFmpeg) passa -ss start -to end ao FFmpeg e deixa que ele transmita o bitstream codificado de volta, recodificando pelo codec de saída escolhido. O corte conduzido pelo FFmpeg é mais robusto porque o codificador cuida de framing, cabeçalhos e metadados; o caminho só Web Audio exige escrever seu próprio codificador MP3 ou Vorbis para a saída, o que é muito mais delicado. A taxa de amostragem importa: 44,1 kHz é o padrão do Compact Disc e a taxa dominante para música, escolhida para ficar acima do limite de Nyquist da audição humana (~20 kHz × 2 = 40 kHz mínimo) e compatível com os videocassetes PAL/NTSC usados para masterizar os primeiros CDs. 48 kHz é o padrão de cinema, TV e vídeo digital. 16 kHz é a taxa de fato para reconhecimento de voz e VoIP; 8 kHz, a telefonia fixa clássica. 96 kHz e 192 kHz são taxas de áudio de alta resolução. Esta ferramenta herda a taxa de amostragem da entrada via FFmpeg por padrão, preservando a fidelidade salvo necessidade explícita. A interface aceita tempos com uma casa decimal de segundo (0:03.5); o FFmpeg internamente é preciso à amostra, então uma granularidade de 0,1 segundo equivale a cerca de 4.410 amostras a 44,1 kHz, bem abaixo do limiar perceptível humano.
Por que ffmpeg.wasm e não lamejs
A maior dor de cabeça histórica da edição de áudio no navegador foi a codificação de MP3. A decodificação é grátis: o navegador faz isso. A codificação exige um codificador MP3 em JavaScript ou WebAssembly. Duas opções dominam. lamejs é uma porta puramente em JavaScript do veterano codificador LAME (originalmente por Andreas Krennmair / zhuker no GitHub, por transpilação mecânica do código C do LAME para JS). Vantagem: pegada leve (~150 KB minificados) e zero dependências; basta uma tag script e codifica-se MP3 em cinquenta linhas de código. Desvantagens: só faz MP3, a API é incômoda e o desempenho em arquivos longos é mediano por se tratar de JS interpretado e não de WebAssembly compilado. ffmpeg.wasm é um build WebAssembly do FFmpeg, o canivete suíço universal do processamento de áudio e vídeo. Vantagem: a universalidade, ou seja, todo codec que o FFmpeg suporta (MP3, WAV, OGG, AAC, FLAC, Opus, dezenas de formatos obscuros), todo contêiner, toda transformação. Desvantagem: o tamanho, o bundle WebAssembly pesa vários MB, bem mais que o lamejs sozinho. Esta ferramenta usa ffmpeg.wasm porque ela oferece três codecs de saída reais (MP3 via libmp3lame, WAV via pcm_s16le, OGG via libvorbis) a partir de um único motor compartilhado, com a mesma mecânica de corte aplicada a todos; o lamejs teria limitado a saída a MP3 apenas. O compromisso é o custo em tamanho de bundle na primeira visita.
Casos de uso comuns
- Criação de toques. Toques de iPhone precisam ter menos de 30 segundos; muitos celulares Android limitam a 40-60 segundos. Cortar o gancho mais reconhecível de uma música é o caso clássico, e respeitoso da privacidade: enviar uma música protegida a um site terceiro para cortar é uma exposição pequena, porém real.
- Extração de trechos de podcast. Tirar um destaque de 30 segundos de um episódio de 90 minutos para promoção em redes sociais. A forma de onda torna muito mais fácil encontrar os pontos exatos de entrada e saída em uma fronteira de frase do que rebobinar às cegas em um player.
- Recorte de memorandos de voz. Memos de voz quase sempre têm ar morto no início (você aperta gravar, depois começa a falar) e no fim (você termina de falar, depois para). Cortar o silêncio reduz o tamanho do arquivo e aumenta a qualidade percebida.
- Extração de samples musicais para edição de vídeo. Um loop de 6 segundos de uma música para servir de fundo sob um trecho de vídeo. Corte, exporte como WAV (sem perdas, já que você vai recodificar depois no vídeo), importe para o seu editor de vídeo.
- Remoção de jingles de abertura. Limpar um rip de áudio de um podcast ou do YouTube para retirar a vinheta padrão do canal antes de enviá-lo a um serviço de transcrição.
- Preparação pedagógica e apresentações. Cortar um efeito sonoro, um trecho musical ou um excerto de fala para uso em um slide ou em uma aula interativa.
Escopo honesto: o que esta ferramenta não faz
Esta é uma ferramenta de corte mono-arquivo focada, não uma estação de trabalho de áudio digital. Coisas que ela não faz, e que concorrentes mais elaborados gerenciam: nada de fade in / fade out (o clipe exportado começa e termina abruptamente nos pontos de corte); nada de multipista ou mixagem (um arquivo na entrada, um arquivo cortado na saída); nada de efeitos (sem EQ, compressão, normalização, redução de ruído, reverberação); nada de dividir um arquivo em vários clipes em uma passada (para três trechos, você corta três vezes); nada de ajuste de ganho ou volume; nada de reprodução restrita à região cortada: o reprodutor toca o arquivo-fonte inteiro com um cursor animado sobre a forma de onda durante a reprodução. Para multipista, fades, efeitos e masterização, use Audacity (open-source, lançado por Dominic Mazzoni e Roger Dannenberg em 28 de maio de 2000 na Carnegie Mellon, ainda em desenvolvimento ativo em 2026), Adobe Audition (comercial) ou Reaper (comercial, com período de avaliação generoso). Para um corte pontual sem instalação, esta ferramenta tem o formato certo. O posicionamento de privacidade é genuíno: gravações de voz são dados pessoais, frequentemente com fala identificável ou som de fundo de um espaço privado; enviá-las a um "cortador de áudio online gratuito" é um risco real de privacidade que uma arquitetura puramente de navegador contorna por completo.
Privacidade: por que esta arquitetura importa para áudio
Gravações de áudio carregam mais informação identificadora do que a maioria dos arquivos. Um memo de voz contém fala identificável (impressões vocais são unicamente identificadoras). Uma música pode ser material protegido. Uma gravação de reunião pode conter discussões de negócios confidenciais ou detalhes médicos pessoais. Editores de áudio do lado do servidor exigem o envio do arquivo, o que significa que uma cópia fica nos logs do servidor, possivelmente em um cache de CDN, possivelmente em um pipeline de analytics, possivelmente em um backup. Para música comercial comum, isso é inócuo. Para memos de voz, gravações de reunião, ditado, descartes de podcast, gravações de família ou qualquer outra coisa que você não queira ver copiada no disco rígido de um estranho, não é. Esta ferramenta executa toda a cadeia (seleção de arquivo, decodificação, renderização da forma de onda, corte, recodificação, download) localmente no seu navegador. Sem upload, sem chamada de API, sem entrada de log. Você pode verificar abrindo a aba Network das DevTools enquanto corta: não há requisições de saída transportando dados de áudio. Uma vez carregado o bundle WebAssembly do FFmpeg, você pode pôr a página offline (modo avião) e a ferramenta segue funcionando, a prova empírica mais forte de que nada está sendo enviado.
Perguntas frequentes
Que formatos posso importar e exportar?
Entrada: MP3, WAV, OGG (Vorbis), AAC, FLAC, M4A, qualquer coisa que o decodeAudioData do seu navegador saiba ler. Os navegadores modernos cobrem todos. Saída: MP3 (LAME a bitrate variável ~190 kbps, o sweet spot para música), WAV (PCM linear de 16 bits, sem perdas) ou OGG Vorbis (~160 kbps VBR, qualidade transparente e livre de patentes). Codificação e decodificação rodam pelo ffmpeg.wasm no seu navegador, então nenhum servidor é envolvido.
Há limite de tamanho de arquivo?
Não há limite no servidor porque não acontece upload. O teto prático é a memória disponível no seu dispositivo: o arquivo precisa ser decodificado em um Float32Array de JavaScript para que a forma de onda apareça, o que demanda cerca de 42 MB de RAM para uma fonte mono de 4 minutos a 44,1 kHz durante o processamento. Arquivos de até cerca de 100 MB rodam confortavelmente em um laptop típico; arquivos mais longos (podcasts de várias horas, álbuns inteiros) podem ficar lentos ou falhar em celulares de gama baixa. Se um carregamento travar, tente um arquivo menor ou corte por segmentos.
Cortar reduz a qualidade do áudio?
Para saída WAV: não, WAV é sem perdas, então a região cortada é bit a bit idêntica às amostras-fonte entre os pontos de corte. Para saídas MP3 e OGG: uma pequena geração adicional de quantização com perdas é adicionada porque a fonte está sendo recodificada. Os ajustes de codificador usados aqui (LAME VBR ~190 kbps para MP3, libvorbis qualidade 5 ≈ 160 kbps para OGG) ficam bem acima do limiar que a maioria dos ouvintes consegue perceber. Se planeja reeditar o clipe cortado depois, escolha WAV; se quer um arquivo pequeno para distribuir, escolha MP3 ou OGG.
Suporta fade in / fade out?
Não, o corte é seco em ambas as pontas. Para fades, edição multipista, efeitos ou masterização, use Audacity (open-source, gratuito, multiplataforma, lançado em 28 de maio de 2000 na Carnegie Mellon) ou Adobe Audition. Esta ferramenta tem o formato certo para "só preciso de um clipe cortado limpo"; para algo mais elaborado, uma DAW de verdade é a ferramenta certa.
Por que a forma de onda mostra apenas um canal?
A forma de onda desenha o primeiro canal (o esquerdo em um arquivo estéreo) como uma única envoltória por coluna de pixels. Desenhar os dois canais em cores diferentes dobraria o espaço em tela ou exigiria sobrepor as formas de onda, ambas opções mais ruidosas que a exibição mono-canal para uma UI rápida de scrubbing. O corte em si preserva todos os canais, o FFmpeg os copia tal como estão da fonte, então uma gravação estéreo continua estéreo na saída, mesmo que um detalhe panoramizado totalmente à direita não apareça no desenho.
Meus arquivos de áudio são enviados?
Não. Cada passo (seleção de arquivo, decodificação, renderização da forma de onda, corte, recodificação, download) roda localmente no seu navegador via JavaScript e ffmpeg.wasm. Sem upload, sem chamada de API, sem entrada de log. Você pode verificar abrindo a aba Network das DevTools enquanto corta. Uma vez carregado o bundle ffmpeg.wasm, você pode pôr a página offline e a ferramenta segue funcionando, a prova mais forte de que nada está sendo enviado. Seguro para memos de voz, gravações de reunião, ditado médico ou qualquer áudio que você não queira ver copiado no disco rígido de um estranho.