Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

[Dúvida] Não aparece mensagem no console ao falar algo!

Eu testei o microfone do notebook e está funcionando, mas quando falo algo no site não aparece nada no console, eu ja ativei o microfone no site também. Oque eu faço?!

JS

window.SpeechRecognition = window.SpeechRecognition || 
webkitSpeechRecognition;

const recognition = new SpeechRecognition();
recognition.lang = 'pt-br'
recognition.start()

recognition.addEventListener('result', onSpeak) 

function onSpeak(e) {
    console.log(e)
}

Imagem demonstrando que meu microfone está ligado

5 respostas
solução!

Olá Lui!

Neste caso o seu console só mostra o objeto com suas propriedades, devemos mostrar no console o resultado(results) e a trancrição(transcript), sendo assim você deve adicionar a seguinte linha no seu código dentro da função Onspeak:

console.log(e.results[0][0].transcript)

Seu código completo fica assim:

window.SpeechRecognition = window.SpeechRecognition || 
webkitSpeechRecognition;

const recognition = new SpeechRecognition();
recognition.lang = 'pt-br'
recognition.start()

recognition.addEventListener('result', onSpeak) 

function onSpeak(e) {
    console.log(e.results[0][0].transcript)
}

Obtemos o seguinte resultado:

Console com o projeto funcionando

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

oi victor,o complicado é que não aparece nada! tipo n reconhece oque eu falo! acho que o problema é no meu notebook mesmo, pois o mesmo código funcionou no seu pc!

Opa Lui!

Tenta utilizar um microfone e testar em outro navegador, de preferência um que reconheça a biblioteca de reconhecimento de voz, como o edge ou firefox, para testar se está funcionado ou não seu microfone, tente fazer uma pesquisa no youtube por voz: Pesquisa por voz no youtube

Estou tendo o mesmo problema. Mesmo realizando as mudanças sugeridas, não aparece nada após o uso do microfone. O meu código:

window.SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;

const recognition = new SpeechRecognition();
recognition.lang = 'pt-Br'
recognition.start()

recognition.addEventListener('result', onSpeak)

function onSpeak(e) {
    console.log(e)
}

Olá Joabe!

Nesse caso peço que teste o seguinte código:

window.SpeechRecognition = window.SpeechRecognition || 
webkitSpeechRecognition;

const recognition = new SpeechRecognition();
recognition.lang = 'pt-br'
recognition.start()

recognition.addEventListener('result', onSpeak) 

function onSpeak(e) {
    console.log(e.results[0][0].transcript)
}

Esse é o mesmo código enviado para o Lui, esse código tem uma saída no terminal, o que você falar deve sair no termina, desse modo conseguimos testar melhor o erro.

Caso o erro persista, peço que crie um novo tópico indicando maiores detalhes, pois analisando seu código ele não tem nenhum erro.

Espero ter ajudado!