如果浏览器不支持我的项目的语音合成,则尝试使用谷歌的 translate_tts 作为我的后备。
现在我在让 html5 音频正常工作方面遇到了一些麻烦。一整天都在挠头并在谷歌上搜索为什么它对我不起作用。然后我看到一些文章/论坛说这与 IIS 有关。所以我在我的站点之外做了一个测试代码来看看会发生什么,并且很惊讶它可以正常工作!但是,当在 IIS 中运行的原始项目中使用相同的代码时,它不起作用。它在使用 IIS EXPRESS 时有效。我检查了 IIS 中的 MIME 类型,并且那里有 mpeg 和 mp3。
即使在 javascript 中执行此操作在 IIS 中也不起作用。
TextToSpeech.Audio = document.createElement("AUDIO");
TextToSpeech.Audio.src = url;
TextToSpeech.Audio.playbackRate = 1;
TextToSpeech.Audio.preload = 'auto';
TextToSpeech.Audio.volume = 1; // 0 to 1;
TextToSpeech.Audio.addEventListener('ended', function () {
//i have some code here...
});
TextToSpeech.Audio.addEventListener('error', function (error) { });
TextToSpeech.Audio.play();
有没有人遇到过这个问题并碰巧解决了它?您的帮助将不胜感激,谢谢!
更新:在谷歌搜索之后,这可能是因为我是从托管在 IIS 中的站点中调用它的,该站点具有正确的主机名,并且我的 IIS Express 在 localhost:PORT 中运行该站点,Google 将其视为 noreferrer?