我正在尝试将法语单词的发音保存为.wav或.mp3文件。
我想知道Google Translate API上是否有任何地方(因为它具有发音功能),这使我能够实现这一目标。其他图书馆也可以使用。
答案 0 :(得分:1)
Speech Synthesis API(正在开发中)提供了类似的功能。第三方库已经存在,例如ResponsiveVoice.JS。
答案 1 :(得分:-2)
自从提出这个问题以来,从谷歌翻译中“刮掉”MP3变得更加困难,但谷歌(终于)设置了TTS API。有趣的是,它是按输入字符计费的,每月前1或4百万个输入字符是免费的(取决于你使用的是WaveNet还是旧学校的声音)
现在要在命令行上使用gcloud
执行此操作(而不是将其构建到应用程序中),您将大致如下(我正在解释TTS quick start)。本演练需要base64
,curl
,gcloud
和jq
。
gcloud projects create example-throwaway-tts
Create
export GOOGLE_APPLICATION_CREDENTIALS="~/Downloads/service-account-file.json"
gcloud
使用该新项目:gcloud config set project example-throwaway-tts
TTS_ACCESS_TOKEN=gcloud auth application-default print-access-token
request.json
最后,运行以下
curl \
-H "Authorization: Bearer "$TTS_ACCESS_TOKEN \
-H "Content-Type: application/json; charset=utf-8" \
--data-raw @request.json \
"https://texttospeech.googleapis.com/v1/text:synthesize" \
| jq '.audioContent' \
| base64 --decode > very_simple_example.mp3
这是做什么的
jq
可以提取有效负载)request.json
作为要使用curl
的{{1}}标记--data-raw
的值audioContent
解码该内容 base64
的内容如下。您可以查看插入所需文字的位置,调整the voice或通过audioConfig更改输出格式:
request.json
原始答案
正如Hugolpz所说,如果你知道你想要的单词或短语(通过以前的Translate API调用),你可以从http://translate.google.com/translate_tts?ie=UTF-8&q=Bonjour&tl=fr
这样的网址获取MP3。请注意,{
'input':{
'text':'very simple example'
},
'voice':{
'languageCode':'en-gb',
'name':'en-GB-Standard-A',
'ssmlGender':'FEMALE'
},
'audioConfig':{
'audioEncoding':'MP3'
}
}
可确保您获得法语而非默认英语。
您需要对自己进行限价,但如果您正在寻找少量的单词或短语,那么您应该没问题。