Texto em fala no React Native: das vozes do sistema ao seu próprio servidor
Um app React Native pode falar de três jeitos: com as vozes do celular, com arquivos de áudio gerados antes ou com um servidor que dá voz a texto novo na hora. As vozes do celular são grátis e offline, mas soam diferente em cada aparelho; os outros dois dão ao app uma voz reconhecível.
A SuperClonica oferece vozes naturais em 31 idiomas para testar grátis online, um motor gratuito para gerar as falas do app no seu computador e um servidor Docker para texto que muda. Este guia mostra cada abordagem no React Native e no Expo.
Três jeitos de fazer um app falar
A SuperClonica fala 31 idiomas; o chinês ainda não é suportado, então uma interface em chinês precisa de outra voz.
- expo-speech ou react-native-tts: as vozes instaladas no celular, grátis e offline, diferentes em cada aparelho, e não salvam áudio.
- Assets pré-gerados: cada fala fixa gerada uma vez com a SuperClonica e incluída no app.
- Um servidor de voz: o app envia o texto ao seu servidor SuperClonica e toca a resposta.
- A maioria dos apps combina os três: assets para falas fixas, servidor para texto do usuário e voz do sistema como reserva.
Escolha uma voz grátis online
Na página de qualquer voz, escreva uma fala do seu app, de 30 a 100 caracteres, escolha o idioma e clique no botão para gerar. Em poucos segundos você sabe se combina com o app, sem conta e também pelo celular.
Falas pré-geradas com expo-audio
Dê aos arquivos o nome da chave que você já usa nas traduções, e cada idioma terá os mesmos nomes na sua pasta.
- Instale o motor gratuito no seu computador: python -m pip install superclonica-cpu.
- Gere cada fala: superclonica --text "Bem-vindo de volta!" --voice F1 --lang pt --output assets/voice/welcome.mp3.
- Toque com o expo-audio: const player = useAudioPlayer(require('./assets/voice/welcome.mp3')); player.play();
- Assets funcionam offline e sem atraso; em MP3 uma frase ocupa algumas dezenas de kilobytes.
Um servidor de voz para texto do usuário
Para texto que muda, como mensagens de chat, notas do usuário ou um tutor que responde, rode o servidor numa máquina que você controla: docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu. Coloque-o atrás de HTTPS e defina SUPERCLONICA_API_KEY para que só o seu app possa chamá-lo. O app envia um JSON com text, voice e lang para /synthesize e recebe um WAV; salve num arquivo com a sua biblioteca de sistema de arquivos e passe ao player. Guarde em cache as respostas de textos que se repetem: o mesmo texto, voz e semente geram sempre o mesmo arquivo.
Quando a voz do sistema basta
A voz do sistema basta quando só precisa ser entendida: ler uma notificação, um recurso de acessibilidade ou um protótipo que funciona sem rede. Escolha a sua própria voz quando ela faz parte do produto, como um tutor, um personagem de jogo ou uma meditação guiada. Para um app que você publica, use as dez vozes padrão, de M1 a M5 e de F1 a F5, grátis pela licença OpenRAIL-M, ou a sua própria voz treinada no estúdio da SuperClonica; vozes de personagens feitas por fãs não são para apps de loja.