1
resposta

ResponsiveVoice não funciona corretamente.

A voz no projeto não esta ficando em português, fica parecendo de robô. Segui o passo a passo dos códigos em HTML e JS.

Alguém pode me ajudar?

Segue a mensagem no console e meus códigos no vs code.

Uncaught ReferenceError: rvApiKey is not defined
    ResponsiveVoice https://code.responsivevoice.org/responsivevoice.js:179
    ResponsiveVoice https://code.responsivevoice.org/responsivevoice.js:179
    <anonymous> https://code.responsivevoice.org/responsivevoice.js:179
responsivevoice.js:179:138
ResponsiveVoice r1.8.3 responsivevoice.js:24:448
ResponsiveVoice missing API key. See https://responsivevoice.org/register?devtools=http%3A%2F%2F127.0.0.1%3A5500%2Findex.html responsivevoice.js:133:477
GET
http://127.0.0.1:5500/favicon.ico
[HTTP/1.1 404 Not Found 0ms]

RV: Voice support ready responsivevoice.js:134:385
Array [ "Jogo do número secreto" ]
responsivevoice.js:140:312
SpeechSynthesisUtterance { voiceURI: "urn:moz-tts:speechd:Portuguese%20(Brazil)?pt-BR", rvIndex: 0, rvTotal: 1, text: "Jogo do número secreto", lang: "pt-BR", voice: SpeechSynthesisVoice, volume: 1, rate: 1.2000000476837158, pitch: 1, onstart: speech_onstart()
 }
responsivevoice.js:144:256
Array [ "Escolha um número entre 1 e 100" ]
responsivevoice.js:140:312
SpeechSynthesisUtterance { voiceURI: "urn:moz-tts:speechd:Portuguese%20(Brazil)?pt-BR", rvIndex: 0, rvTotal: 1, text: "Escolha um número entre 1 e 100", lang: "pt-BR", voice: SpeechSynthesisVoice, volume: 1, rate: 1.2000000476837158, pitch: 1, onstart: speech_onstart() }
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://code.responsivevoice.org/responsivevoice.js"></script>
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@700&family=Inter:wght@400;700&display=swap"
        rel="stylesheet">
    <link rel="stylesheet" href="style.css">
    <title>JS Game</title>
</head>
function exibirTextoNaTela(tag, texto) {
    let campo = document.querySelector(tag);
    campo.innerHTML = texto;
    responsiveVoice.speak(texto, 'Brazilian Portuguese Female', {rate:1.2});
}
1 resposta

Olá, André!

O erro "Uncaught ReferenceError: rvApiKey is not defined" indica que você não definiu a chave de API para o ResponsiveVoice. Esse erro está ocorrendo na linha 179 do arquivo responsivevoice.js.

Para resolver esse problema, você precisa registrar uma chave de API no site do ResponsiveVoice. Você pode fazer isso acessando o seguinte link: https://responsivevoice.org/register.

Após registrar a chave de API, você precisa adicioná-la ao seu código HTML, antes de importar o arquivo responsivevoice.js. Por exemplo:

<script>
    var rvApiKey = 'SUA_CHAVE_DE_API_AQUI';
</script>
<script src="https://code.responsivevoice.org/responsivevoice.js"></script>

Certifique-se de substituir 'SUA_CHAVE_DE_API_AQUI' pela chave de API que você recebeu ao se registrar no site do ResponsiveVoice.

Depois de adicionar a chave de API corretamente, o erro "ResponsiveVoice missing API key" deve desaparecer e a voz deve funcionar corretamente em português.

Bons estudos!