#每日一个小代码#利用Google翻译实现云TTS

之前看到一个能够将回复转换成声音的某个web服务,表示对原理很好奇。查了一些资料,发现php并不是很好实现tts。今天用Google翻译来听日语,突然想到用Google翻译的功能实现TTS。

稍微抓个包,得到地址:http://translate.google.cn/translate_tts?ie=UTF-8&q=字符串&tl=语言。直接写了个函数实现301转向,测试了下,发现如果有referer的话就会出现404错误。(Google真奇怪,为啥不是403……)

于是经典的file_get_contents法了,如下:

	function googletts($text,$lang='zh-CN'){
		header('Content-Type: audio/mp3');
		echo file_get_contents('http://translate.google.cn/translate_tts?ie=UTF-8&q=' . urlencode($text) . '&tl=' . $lang);
	}