我从互联网上找到了这段代码,它使用Google翻译的文本到URL的语音功能。这是代码:
http://translate.google.com/translate_tts?tl=en&q="hello world"
我知道如何在我的vb.net中称呼此文件,但不知道如何从Google翻译保存MP3文件。我在vb.net中使用了system.speech来具有此功能,但是我特别需要从Google翻译中获取语音。因此,有人知道如何使用该URL从Google翻译保存声音文件吗?谢谢。
最佳答案
编辑2015-12-26
自2015年12月21日起,对Google TTS API进行进一步更改后,此代码将不再起作用。如@ncpierson所示,需要一个新的附加参数tk
,我很难确定如何在Shell脚本中计算它。如有可能,我将通过新的修改来修改此答案。
我不确定Windows,但是在Linux中,从命令行非常简单。我使用命令行脚本来下载文本字符串的英语音频:
#!/bin/bash
# write an English text string as an audio file using Google Translate
# usage: en2audio.sh <text>
wget -q -U Mozilla -O "$*.mp3" "http://translate.google.com/translate_tts?ie=UTF-8&client=t&tl=en&q=$*"
我用中文做同样的事情(脚本有点简单,因为单词之间没有空格可解析):
#!/bin/bash
# write a Chinese text string as an audio file using Google Translate
# usage: zh2audio.sh <text>
wget -q -U Mozilla -O $1.mp3 "http://translate.google.com/translate_tts?ie=UTF-8&client=t&tl=zh&q=$1"
大多数Linux发行版都包含wget作为标准配置,但可以轻松下载(例如,参见this link)。
(感谢@ncpierson提供了
client=t
参数)。