SpeechSynthesis APIを使用してWebアプリケーションを作成し、スタートボタンをクリックしてからプログラムを実行してから、AndroidおよびiOSデバイスでユーザーの聴き取りを開始しようとしています。ユーザーはプログラムを実行するために何かを話すことができました。その後、3秒ごとにオーディオファイルを再生できます。以下は私のコードです。私の論理は間違っていますか?クリック後にプログラムを起動してサウンドを聞くことができません。AndroidとSafariデバイスでSpeechSynthesis APIを起動する
このSpeechSynthesis APIはAndroidとiOSデバイスをサポートすることができますが、「サウンドスタートイベント」などのイベントを見たときにSafari Mobileはサポートされません。彼らの関係は何ですか?私は本当に混乱した。 SpeechRecognition APIはChromeブラウザのみをサポートしていますが、サウンドスタートのようなイベントをユーザーにする必要はありませんか?
ありがとうございました。ほんとうにありがとう。
<p id="msg" align="center"></p>
<script>
var utterance = new SpeechSynthesisUtterance("Hello");
//window.speechSynthesis.speak(utterance);
var supportMsg = document.getElementById('msg');
if ('speechSynthesis' in window)
{
supportMsg.innerHTML = 'Your browser <strong>supports</strong> speech synthesis.';
console.log("Hi");
utterance.onstart = function(event)
{
console.log('Hhhh')
};
var playList = ["1_hello", "2_how_old", "3_what_did_you_make"];
var dir = "sound/";
var extention = ".wav";
audio.src = dir + playList[audioIndex] + extention;
audio.load();
var audioIndex = 0;
setTimeout(function(){audio.play();}, 1000);
window.speechSynthesis.speak(utterance);
}
else
{
supportMsg.innerHTML = 'Sorry your browser <strong>does not support</strong> speech synthesis.<br>Try this in <a href="https://www.google.co.uk/intl/en/chrome/browser/canary.html">Chrome Canary</a>.';
}
//window.speechSynthesis(utterance);
</script>
<div class="container">
<button id="runProgram" onclick='utterance.onstart();'
class="runProgram-button">Start</button>
</div>
私は、これは変に聞こえる場合でもそうだと思います。これは良いヒントです。あまりにもアレックスありがとう。このAPIを私たちがannyangのためにやったように動作させるようにします。あなたは私がonClick = 'window.speechSynthesis.soundstart()'を作ることができると思いますか?また、SpeechSynthesis APIとSpeechRecognition APIの関係は何ですか? Cuz SpeechSynthesisはAndroidとSafariをサポートしていますが、SpeechRecognitionはChromeのみをサポートしています。 – Johnny
いいえ。「SoundStart」は、ITが完了したときにITが「onend」のように発声を開始すると起動するイベントです。彼らはあなたが直接発動する方法ではありません。 'speechSynthesis.speak'は、話し始めたときに' SoundStart'を起動します。両方のAPIは、ドラフトステータスで** **実験中**です。グーグルは、回復についての残りの部分にジャンプしているだけです。 –
返信ありがとう、Alexander。そうですか。 ITを使って話すのではなく、ピッチやレートのようなオーディオファイルを調整できるかどうかは疑問です。 – Johnny