Google 的所有 ML 相关工具的“一般用户”用户体验都非常差,并且专为编程使用而设计。如果您只是在寻找一些具有合理用途的基本工具,那么目前可能不是 GCP。
鉴于此,如果您愿意在开始时稍作努力,那么将样品变成更多东西并不难。我建议使用command line described here.
我将添加一些初始步骤。
1)Download and setup the Gcloud SDK tools.
2) 在终端运行gcloud auth application-default login。这将打开一个浏览器,像登录 GCP 控制台一样登录。
3)他们提供了一个通用文件的示例请求:
curl -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
--data "{
'input':{
'text':'Android is a mobile operating system developed by Google,
based on the Linux kernel and designed primarily for
touchscreen mobile devices such as smartphones and tablets.'
},
'voice':{
'languageCode':'en-gb',
'name':'en-GB-Standard-A',
'ssmlGender':'FEMALE'
},
'audioConfig':{
'audioEncoding':'MP3'
}
}" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
这就是我说的体验差的意思,代码https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt将文本转语音操作的结果写入synthesize-text.txt,txt里面就是你的mp3文件。但是等等,他们希望您以编程方式使用它,因此 MP3 不仅仅是一个直接文件,您可能想用它做其他事情,因此它以称为 Base64 的编码返回,这使得通过 http 使用二进制数据变得更容易(文本最常见)。因此,您得到的不是 mp3,而是一个 json 文件,例如:
{ "音频内容":
"//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
以 // 开头的文本是您的音频。但是因为您是手动执行此操作,所以您需要将引号内的所有内容(这将是一个非常长的以 //... 开头的文本字符字符串保留 // 字符)复制到一个名为任何您想要的新文件中,他们将其命名为 synthesize-output-base64.txt。然后运行
base64 synthesize-output-base64.txt --decode > synthesized-audio.mp3
你已经完成了......原始请求允许你指定文本、语音等。但实际上,如果你正在寻找具有漂亮 UI 的休闲文本到语音,GCP 还不存在。