谷歌云文本到语音界面混乱(如何下载mp3文件?)



我想先说一句,我不是程序员/开发人员,我是一名多媒体设计师。我使用文本到语音来生成占位符音频文件,这些文件可以用于在录制官方音频旁白之前对动画进行计时。

以前我使用亚马逊Polly,但我想尝试一下谷歌云。然而,我最难弄清楚如何生成mp3文件并保存它们。

使用Amazon Polly,您只需访问一个网站,在字段中输入文本,然后单击一个按钮,它就会将您的文件保存为mp3文件。有了谷歌云,情况似乎远比这复杂。"快速入门"指南让我启用API,下载JSON文件,设置环境凭据,初始化SDK,并在命令提示符中输入代码。

我在他们的文档页面上读到的每一本指南似乎都不可避免地将我带到了一个我根本不理解的步骤。我不喜欢听起来像个十足的小丑,但这似乎有点让我难以理解。我不想创建软件或将机器学习集成到网站中,我只想输入几行文本并生成一个mp3文件。

有没有办法用谷歌云做到这一点?启动页面(https://cloud.google.com/text-to-speech/)提供了我想要的东西,但没有下载文件的选项,只是预览它们。

提前感谢你能为这个新手提供的任何帮助。

谷歌所有与ML相关的工具的"一般用户"用户体验都很差,而且都是专门为编程使用而设计的。如果你只是在寻找一些使用合理的基本工具,那么目前可能不是GCP。

考虑到这一点,如果你愿意在一开始就有点挣扎,那么样本就不难变成更多的东西。我建议使用此处描述的命令行。

我将添加一些初始步骤。1( 下载并设置Gcloud SDK工具。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文件,比如:

{"audioContent":"//NExAASCCIIAAEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."}

以//开头的文本是您的音频。但是,由于您是手动执行此操作的,您需要将引号内的所有内容(这将是一个以//开头的非常长的文本字符串…保留//字符(复制到一个名为任意名称的新文件中,他们将其命名为synthesize-output-base64.txt。然后运行base64 synthesize-output-base64.txt --decode > synthesized-audio.mp3

你完了。。。。最初的请求允许您指定文本、语音等。但实际上,如果您正在寻找具有漂亮UI的随意文本到语音,GCP还不存在。

或者这一行(需要jq(:

curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" 
-H "Content-Type: application/json; charset=utf-8" 
--data "{
'input':{
'text':'Hello 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" | jq --raw-output '.audioContent' | base64 --decode > synthesized-audio.mp3

尽管谷歌Wavenet语音似乎是最好的,但谷歌并不像微软那样提供流畅的语音工作室。只需在此处尝试LITE版本:https://speech.microsoft.com/audiocontentcreation

最新更新