首页 > 解决方案 > 一些动作后的语音到文本识别

问题描述

如何对一系列歌曲进行识别?歌曲 -> 识别 -> 歌曲 -> 识别 -> ... 例如,我运行歌曲,然后语音识别开始,然后等到它完成并运行另一首歌曲?现在我在第一首歌曲之后运行识别,但下一首歌曲同时开始播放。

document.getElementById('btnPlay').addEventListener('click', ()=> {
    song.src = songs[currentSong]
    song.play()
})

song.addEventListener('ended', ()=>{

    // recognition starts

    recognition.onresult = function(event) {
        var last = event.results.length - 1;
        var command = event.results[last][0].transcript;
        message.textContent = command + '.';
    }
    recognition.start();

    //I suppose something should be added here to wait when recognition finishes

    currentSong++
    if(currentSong>=songs.length) return
    song.src = songs[currentSong]
    song.play()
})

标签: javascript

解决方案


识别完成后我只需要开始下一首歌recognition.addEventListener('end', ()=>{ ...


推荐阅读