Texto para fala
Voz neural (Kokoro) e voz do navegador · tudo roda localmente no seu navegador.
Sobre esta ferramenta
A voz neural (Kokoro IA) usa um modelo de síntese de voz de ponta com 82 milhões de parâmetros. Ele é executado 100 % no seu navegador via WebAssembly e ONNX Runtime · nenhum texto é enviado a um servidor. No primeiro uso, o modelo (~100 MB) é baixado e armazenado em cache pelo seu navegador. Depois, carrega instantaneamente. Você tem à disposição 13 vozes com sotaques americano e britânico, masculinas e femininas, cada uma com entonação e prosódia naturais. O áudio gerado pode ser reproduzido e baixado no formato WAV.
As vozes do navegador usam a Web Speech API integrada ao seu sistema. São instantâneas e sem download, mas a qualidade e a disponibilidade das vozes dependem do seu SO e do seu navegador. O Chrome geralmente oferece a maior variedade. Ideal para pré-visualizações rápidas e testes de acessibilidade.
Como a Web Speech API funciona
Os navegadores expõem uma interface SpeechSynthesis (parte da Web Speech API, originalmente esboçada pelo W3C Speech API Community Group) que recebe um texto e uma voz escolhida e produz uma fala audível através do motor de TTS do sistema operacional subjacente. A superfície da API é pequena, mas poderosa: speechSynthesis.speak(utterance) inicia a fala, cancel() / pause() / resume() controlam a reprodução, e getVoices() lista todas as vozes que o SO expõe. Cada SpeechSynthesisUtterance carrega o texto, a tag de idioma, a voz, a velocidade, o tom e o volume.
O áudio em si é gerado pelo SO, não pelo navegador. O macOS e o iOS vêm com dezenas de vozes de alta qualidade embutidas no sistema. O Windows disponibiliza vozes instaladas via Configurações → Hora e Idioma → Fala. O Android usa o motor de Conversão de Texto em Voz do Google (ou alternativas como o Samsung TTS). O Linux recai sobre qualquer configuração de speech-dispatcher / espeak que a distribuição oferecer, muitas vezes com som robótico por padrão, a menos que você tenha instalado um motor mais rico.
A distinção de privacidade entre nuvem e local
Nem toda voz de «navegador» roda no seu dispositivo. Alguns navegadores enviam o texto a um servidor remoto para renderizar o áudio das vozes de maior qualidade, depois transmitem o resultado de volta. Isso importa para a privacidade:
- Safari (macOS / iOS): a síntese roda inteiramente no dispositivo. As vozes da Apple, incluindo as naturais no estilo Siri, vêm embutidas no SO. Nenhum texto sai do dispositivo.
- Chrome (desktop e Android): para algumas vozes rotuladas como «Google», o texto é enviado ao serviço de TTS do Google para renderizar o áudio. Outras vozes do Chrome que espelham as vozes locais do SO permanecem no dispositivo. A propriedade
SpeechSynthesisVoice.localServicediz qual é qual (true= no dispositivo,false= nuvem). - Microsoft Edge: padrão semelhante. As vozes «Online Natural» de alta qualidade do Edge encaminham o texto ao TTS em nuvem da Microsoft; as vozes padrão do SO são locais.
- Firefox: o suporte à Web Speech API tem sido historicamente limitado; nos sistemas em que funciona, ele usa o motor do SO.
Se o seu texto é sensível (rascunhos de documentos confidenciais, memorandos internos da empresa, qualquer coisa que você não queira copiada para terceiros), escolha uma voz marcada como local. Se você não vir vozes locais na lista suspensa, instale pacotes de voz do SO e elas aparecerão lá.
Casos de uso comuns
- Acessibilidade. Os leitores de tela (VoiceOver, NVDA, JAWS, TalkBack) fazem o trabalho pesado para usuários cegos e com baixa visão, mas uma ferramenta de TTS rápida ajuda qualquer pessoa (dislexia, fadiga ocular, cansaço) a ouvir um texto de vez em quando.
- Revisão. Ouvir a sua própria escrita lida de volta revela frases estranhas, palavras faltando e problemas de ritmo que a leitura silenciosa deixa passar. Um truque comum de escritores profissionais.
- Pronúncia no aprendizado de idiomas. Ouça palavras faladas no idioma-alvo; útil ao ler um artigo estrangeiro e não ter certeza de como uma palavra soa.
- Ler artigos em voz alta enquanto faz tarefas. Cozinhar, limpar, se exercitar, ir e voltar do trabalho: qualquer lugar em que ler não é prático, mas ouvir é.
- Rascunhos de narração. Monte rapidamente uma narração para testar o ritmo antes de gravar com um locutor de verdade ou contratar um serviço pago de TTS como o ElevenLabs.
- Educação. Gerar material falado para conteúdo de sala de aula, exercícios de vocabulário, prática de ditado e acessibilidade para alunos diversos.
Peculiaridades e limitações que vale conhecer
- Corte de texto longo no Chrome. Um bug antigo do Chromium (679437) faz o
speak()parar depois de cerca de 15 segundos, normalmente por volta de 200-250 caracteres. As soluções alternativas dividem o texto em pedaços do tamanho de frases e chamam ospeak()para cada um. - O evento
voiceschanged. A primeira chamada aspeechSynthesis.getVoices()no Chrome retorna um array vazio. As vozes são populadas de forma assíncrona; as páginas precisam escutar o eventovoiceschangedantes de mostrar a lista de vozes. - Exigência de gesto do usuário. Assim como a reprodução automática com áudio, os navegadores bloqueiam a síntese de fala até o usuário clicar ou tocar em algo. O botão Reproduzir satisfaz esse gesto; a fala programática ao carregar a página não funciona.
- Modo de Pouca Energia do iOS. Quando o iPhone está no Modo de Pouca Energia, o Safari às vezes se recusa a iniciar a síntese de fala até o modo ser desativado.
- Bugs de pausar / retomar no Chrome do Android. Pausar e retomar às vezes descarta a fila. Se a confiabilidade importa, recomece a partir do
speak()em vez de depender depause()/resume(). - Velocidade / tom fora do intervalo falha silenciosamente. Definir a velocidade acima de ~3,0 ou abaixo de 0,1, ou o tom acima de 2,0, faz alguns motores não produzirem áudio nenhum em vez de limitar o valor.
Por que a qualidade da voz varia tanto
A qualidade de uma voz de TTS depende inteiramente do motor subjacente, que depende do SO, que depende do que você instalou. As vozes da era dos anos 1990 (eSpeak, Microsoft Anna, o antigo «Fred» do Mac) eram sintetizadas a partir de amostras de fonemas concatenadas e soam robóticas e travadas. As vozes modernas (as vozes Siri da Apple, as vozes Online Natural da Microsoft, as vozes baseadas em WaveNet do Google, as vozes por assinatura do ElevenLabs) usam aprendizado profundo para gerar um áudio quase indistinguível de um leitor humano.
Se as vozes na sua lista suspensa soam robóticas, a solução não é esta ferramenta: é instalar vozes melhores no seu SO:
- Windows: Configurações → Hora e Idioma → Fala → Adicionar vozes. As vozes «Online Natural» da Microsoft são drasticamente melhores do que as padrão offline.
- macOS: Ajustes do Sistema → Acessibilidade → Conteúdo Falado → Voz do Sistema → Gerenciar Vozes. Procure as vozes «Premium» / «Enhanced»; elas baixam em segundo plano e melhoram significativamente a qualidade.
- iOS: Ajustes → Acessibilidade → Conteúdo Falado → Vozes. Mesma convenção de nomes do macOS.
- Android: Configurações → Acessibilidade → Saída de conversão de texto em voz → Google → Instalar dados de voz.
- Linux: instale o
festivalou ombrolapara uma qualidade melhor do que a do eSpeak, ou use um TTS em nuvem via API.
Erros comuns
- Esperar que o Firefox tenha suporte. O suporte do Firefox à Web Speech API ficou para trás. O botão Reproduzir ficará desativado quando você acessar pelo Firefox; use um navegador baseado em Chromium ou o Safari para um TTS confiável.
- Colar texto confidencial em uma sessão do Chrome e presumir que é local. As vozes «Google» padrão do Chrome enviam o texto ao serviço de TTS do Google. Escolha uma voz local ou use o Safari para conteúdo sensível.
- Grandes blocos de texto no Chrome. O corte de 15 segundos / ~250 caracteres pega qualquer um que cola um parágrafo e espera que ele seja lido até o fim. Ou divida o texto, ou use o Safari (sem corte).
- Definir a velocidade ou o tom muito fora do intervalo. O motor não limita; ele silenciosamente não produz áudio. Mantenha a velocidade entre 0,5-2,5 e o tom entre 0,5-1,5 para resultados previsíveis.
- Tratar o TTS do navegador como uma narração de qualidade de produção. Mesmo as melhores vozes de navegador são boas o suficiente para revisão, acessibilidade e rascunhos, não para podcasts publicados ou narração comercial. Para isso, veja o ElevenLabs, o Murf ou serviços pagos semelhantes.
- Esquecer que as vozes são baixadas de forma assíncrona. A primeira visita à página no Chrome pode não mostrar nenhuma voz; atualize depois de um instante e elas aparecerão.
Mais perguntas frequentes
Como sei se uma voz é local ou baseada em nuvem?
Programaticamente, a propriedade SpeechSynthesisVoice.localService é true para vozes no dispositivo e false para as baseadas em nuvem. Na prática, as convenções de nomes de voz ajudam: as vozes do Chrome rotuladas como «Google» geralmente são baseadas em nuvem; as vozes que correspondem às vozes instaladas no seu SO (Microsoft David, Apple Samantha, Google Wavenet en-US-Wavenet-D) são locais se o SO as tiver. As vozes do Safari são sempre locais.
Posso salvar o áudio como um arquivo MP3?
Não diretamente com a Web Speech API do navegador: a especificação não expõe o fluxo de áudio para captura. Se você precisa de um MP3 / WAV para baixar, as opções incluem: um app de narração dedicado como o Audacity gravando o áudio do seu sistema, uma API de TTS paga (Google Cloud TTS, Amazon Polly, ElevenLabs) que retorna o arquivo de áudio, ou um app de gravação de tela capturando a reprodução.
Por que o áudio está cortado ou parando no meio da frase?
A causa mais comum no Chrome é o bug de texto longo: a fala para por volta de 15 segundos. Atualize e tente de novo com um trecho mais curto, ou mude para o Safari, que não tem esse limite. Outras causas: uma falha do sistema no motor de fala do SO (reiniciar costuma resolver), ou uma voz em nuvem que não consegue ser buscada quando offline (mude para uma voz local).
Isso funciona em qualquer idioma?
Qualquer idioma para o qual o seu sistema operacional tenha uma voz instalada. O macOS e o iOS vêm com dezenas de idiomas embutidos. O Windows exige a instalação de pacotes de fala por idioma (Configurações → Hora e Idioma → Fala → Adicionar vozes). O Android precisa do Google TTS ou de um motor de terceiros para ter os dados do idioma baixados. A lista suspensa de Voz mostra tudo o que está disponível; a tag de idioma (en-US, fr-FR, ja-JP, etc.) diz qual idioma cada voz produz.
Isso é útil para podcasting?
Para rascunhos e testes de ritmo, sim. Para episódios publicados, o nível de qualidade é mais alto: mesmo as melhores vozes de navegador têm artefatos sutis que os ouvintes percebem rapidamente. Serviços pagos como o ElevenLabs e o Murf oferecem modelos de voz treinados para narração de formato longo e produzem resultados nitidamente melhores, muitas vezes por alguns centavos por mil caracteres.
Posso usar isto para usuários cegos / com baixa visão no meu próprio site?
Geralmente um site não precisa embutir TTS para acessibilidade: tecnologias assistivas como os leitores de tela (VoiceOver em dispositivos Apple, NVDA / JAWS no Windows, TalkBack no Android) cuidam disso de forma universal. O TTS embutido é mais útil para a conveniência de leitura em voz alta ocasional, para usuários enxergantes com fadiga de leitura ou para quem está aprendendo. Para acessibilidade, foque em HTML semântico, rótulos ARIA, navegação por teclado e contraste: isso ajuda todo leitor de tela a funcionar melhor, inclusive o do próprio usuário.
Ferramentas relacionadas
Voz para texto
Dite texto com seu microfone, alimentado pela Web Speech API.
Contador de palavras & caracteres
Conte palavras, caracteres, frases, parágrafos e tempo de leitura.
Conversor de caixa
Converta um texto em MAIÚSCULAS, minúsculas, Caixa de Título, camelCase e mais.
Texto em manuscrito
Renderize texto digitado em estilo de letra manuscrita.