Como usar
- Solte um arquivo de áudio na área de upload ou clique para escolher um: MP3, WAV, OGG, M4A, FLAC ou outro formato.
- Toque-o no player de prévia para conferir se é o som certo.
- Escolha Data URI para um elemento audio do HTML, ou Base64 para obter o Base64 puro de uma requisição de API.
- Copie o resultado ou baixe-o como arquivo .txt.
Como tocar áudio em Base64 em uma página web
Um data URI com tipo MIME de áudio funciona em qualquer lugar em que o navegador espera uma URL de áudio:
<audio controls src="data:audio/mpeg;base64,..."></audio>
// JavaScript: toca um som curto quando um botão é clicado
const click = new Audio('data:audio/wav;base64,...');
button.addEventListener('click', () => click.play());
Os navegadores geralmente impedem que um som comece a tocar antes de o visitante interagir com a página, então chame play() a partir de um manipulador de clique ou de tecla, e não no carregamento da página.
Bons usos para áudio em Base64
- Sons curtos de interface. Cliques, sinais de notificação e bipes de erro de poucos kilobytes podem ficar dentro do seu bundle JavaScript e tocar instantaneamente, sem nenhuma requisição extra.
- Aplicativos offline e de arquivo único. Jogos, quiosques, pacotes de e-learning e relatórios HTML que precisam funcionar a partir de um único arquivo, sem servidor, podem levar seus sons embutidos.
- APIs de conversão de fala em texto. Muitos serviços de reconhecimento de fala na nuvem aceitam uma gravação curta como campo Base64, geralmente chamado
contentouaudio, em uma requisição JSON. Eles costumam exigir um formato, uma taxa de amostragem e um número de canais específicos. Esta ferramenta codifica o arquivo exatamente como ele é e não o converte nem o reamostra. - Dados de teste. Testes de código de processamento de áudio podem guardar uma amostra minúscula como constante de string.
Quando não usar Base64 para áudio
O Base64 acrescenta cerca de um terço ao tamanho, e o navegador precisa receber a string inteira antes que a reprodução comece. Não há streaming, nem cache separado, nem requisições de intervalo (range requests) para avançar ou voltar. Um MP3 de 5 minutos a 128 kbps tem cerca de 4,8 MB, o que vira aproximadamente 6,4 MB de texto dentro do seu HTML ou JavaScript, baixados de novo sempre que esse arquivo mudar. Para música, podcasts e outras gravações longas, sirva um arquivo de áudio comum. Como regra prática, incorpore apenas sons que durem poucos segundos.
Formatos de áudio e tipos MIME
| Formato | Prefixo do data URI | Observações |
|---|---|---|
| MP3 | data:audio/mpeg;base64, | Compacto, toca em todos os navegadores |
| WAV | data:audio/wav;base64, | Sem compressão e grande; bom para sons muito curtos |
| OGG (Vorbis, Opus) | data:audio/ogg;base64, | Compacto; versões antigas do Safari não o reproduzem |
| M4A (AAC) | data:audio/mp4;base64, | Compacto e amplamente compatível |
| FLAC | data:audio/flac;base64, | Sem perdas, bem maior que MP3 ou AAC |
Dependendo do sistema operacional, um arquivo pode ser identificado com uma variante do tipo, como audio/x-wav ou audio/x-m4a. Os navegadores geralmente também reproduzem esses tipos, e você pode editar o prefixo se uma plataforma exigir um tipo específico.
Perguntas frequentes
Qual é o tipo MIME do MP3 em um data URI?
audio/mpeg, então o data URI começa com data:audio/mpeg;base64,. Você também vai encontrar audio/mp3 por aí; alguns navegadores o aceitam, mas audio/mpeg é a escolha segura.Por que a prévia não toca meu arquivo?
O player depende dos codecs embutidos no seu navegador. Se o navegador não for compatível com um formato, como o OGG em versões antigas do Safari, a prévia fica muda, mas a saída Base64 continua sendo uma cópia exata do arquivo.
Qual pode ser a duração de um clipe de áudio em Base64?
A ferramenta codifica arquivos de até 100 MB, mas isso é grande demais para incorporar. Para uso embutido, limite os clipes a poucos segundos e a algumas dezenas de kilobytes. Para APIs de fala, verifique o limite para áudio enviado inline, que muitas vezes é bem menor que o do áudio enviado para um serviço de armazenamento.
Posso converter MP3 para WAV aqui?
Não. A ferramenta codifica o arquivo como ele é, sem alterar o formato, a taxa de bits nem a taxa de amostragem. Converta o áudio antes em um editor de áudio ou em uma ferramenta de linha de comando como o FFmpeg e depois codifique o resultado.
Meu áudio é enviado para algum servidor?
Não. A codificação e a reprodução acontecem no seu navegador, e o arquivo permanece no seu dispositivo.