我想讓我的小項目像AI,我的意思是我有一些音頻文件作爲數組。我使用annyang API作爲語音命令來開始運行程序。第一個音頻文件播放完畢後。程序暫停。我會說一些句子,直到程序檢測到我的聲音3秒(甚至更長)。它將播放第二個音頻文件,然後再次暫停。該程序將循環直到所有音頻文件播放完畢。無論如何要做到這一點?如何檢測用戶沒有語音並運行Html5和Javascript中的下一個音頻文件
這是我的代碼到目前爲止。
<script>
if (annyang)
{
var commands = {
'1': function()
{
var playList = ["1_hello", "2_how_old", "3_what_did_you_make"]
var dir = "sound/";
var extention = ".wav";
var index = 1;
var count = 4;
var agent = navigator.userAgent.toLowerCase();
if(agent.indexOf('firefox') != -1 || agent.indexOf('opera') != -1)
{
extention = ".wav";
}
audio = new Audio();
audio.src = dir + playList[0] + extention;
audio.load();
setTimeout(function(){audio.play();}, 1000);
audio.onended = function()
{
if(index < playList.length)
{
audio.src = dir + playList[index] + extention;
audio.load();
setTimeout(function(){audio.play();}, 1000);
index++;
}
}
audio.loop = false;
}
};
annyang.debug(true);
annyang.addCommands(commands);
}
</script>
我已經找到了visualizing sound可能做到這一點,但我不知道怎麼樣。
我一直在爲此奮鬥一週。並不能真正找到解決方案。我也對jQuery開放。先謝謝你。
你的問題是什麼? –
謝謝你的回覆。我的問題是,無論如何,我可以讓我的程序在播放第一個音頻文件3秒後檢測到沒有聲音,然後播放第二個音頻文件? – Johnny
你是什麼意思檢測到沒有聲音?您是否嘗試從麥克風讀取音頻,或者您是否嘗試檢測音頻文件是否已停止播放3秒? –