微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

IBM Cloud-如何使用curl POST调整Watson TTS中的语速?

如何解决IBM Cloud-如何使用curl POST调整Watson TTS中的语速?

我在尝试使用curl调整IBM Watson的TTS服务中的韵律说话率时遇到问题。 这是我尝试过的代码,它确实可以合成音频,但是完全忽略了我插入的--header "prosody rate: +50%" ^行,因为我不确定如何实现并即兴创作,这是可以预期的。 有谁知道我如何使它按预期工作?我想将其速度提高50%,但在此请求格式方面,我在文档中找不到任何可帮助我的东西。

谢谢!

curl -X POST -u "apikey:apikey" ^
--header "Content-Type: application/json" ^
--header "Accept: audio/wav" ^
--header "prosody rate: +50%" ^
--data "{\"text\":\"Adult capybaras are one meter long.\"}" ^
--output hello_world.wav ^
"URL/v1/synthesize?voice=en-US_HenryV3Voice"

解决方法

prosody是一种SSML选项,因此,我希望它可以用作您正在合成的文本周围的标签。

--data "{\"text\":\"<prosody rate = \"fast\">Adult capybaras are one meter long.</prosody>\"}" 

,

这是一个POST调用的可行示例,

curl -X POST -u "apikey:{API_KEY}" \
--header "Accept: audio/wav" \
--header "Content-Type: application/json" \
--data '{"text": "<p><s><prosody rate=\"+50%\">This is the first sentence of the paragraph.</prosody></s><s>Here is another sentence.</s><s>Finally,this is the last sentence.</s></p>"}' \
--output result.wav \
"{URL}/v1/synthesize" -v

在Windows命令提示符(cmd)上

使用以下命令创建JSON文件input.json

echo {"text": "<p><s><prosody rate='+50%'>This is the first sentence of the paragraph.</prosody></s><s>Here is another sentence.</s><s>Finally,this is the last sentence.</s></p>"} > input.json

然后单击cURL以查看result.wav文件

curl -X POST -u "apikey:{API_KEY}" ^
--header "Accept: audio/wav" ^
--header "Content-Type: application/json" ^
--data @input.json ^
--output result.wav ^
"{URL}/v1/synthesize" -v

对于问题中的句子,将上面的JSON替换为您的

{"text":"<prosody rate='fast'>Adult capybaras are one meter long.</prosody>"}

下面是创建该代码示例的一些有用链接,这些示例将帮助您理解SSML属性。另外,在下面的链接中检查<prosody>的限制

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。