当我使用此代码时,让google_tts说出语音,该代码可以,但是有问题。语音这个词必须先听http://translate.google.com/translate_tts?tl=en&q=dog(word)然后运行此代码,鲁棒是可以的,但是当我先不听http://translate.google.com/translate_tts?tl=en&q=dog(word)时,该代码不能说这个词。我引用Google Translate TTS problem,我想知道真正的问题以及如何解决它?
我想知道如何解决让IE和Firefox浏览器成功运行的问题,非常感谢
的HTML
<form id="say-form">
<button id="say-button">Say!</button>
<audio id="audio" preload controls>
<source id="s1" />
</audio>
</form>
jQuery查询
$('#say-form').submit(function(){
var ar = new Array("dog","egg","what","big")
var i=0,file = $("#audio")
console.log(ar[0])
$("#s1").attr("src", "http://translate.google.com/translate_tts?tl=en&q="+ar[0]).detach().appendTo("#audio");
file[0].load();
file[0].play();
i++;
// when it play end, play next word until ar array it's finish
file.on( "ended", function(){
if(i!=ar.length)
{
$("#s1").attr("src", "http://translate.google.com/translate_tts?tl=en&q="+ar[i]).detach().appendTo("#audio");
$(this)[0].load();
$(this)[0].play();
i++;
}
});
return false;
});
最佳答案
为什么不使用Php?
$text = urlencode('my text');
$url = "http://translate.google.com/translate_tts?ie=utf-8&tl=en&q=".$text;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
?>
像这样Google tts api giving me blank mp3
或这个http://ctrlq.org/code/19147-text-to-speech-php
关于javascript - jQuery的谷歌TTS没有声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20369130/