有没有办法告诉亚马逊的 Polly 服务直接将音频文件转储到 S3?
使用 SDK,您可以获得响应流,然后我可以将其上传到 S3,但我希望跳过该步骤并直接执行。
我已经尝试将 Polly S3 预签名的帖子网址作为文件位置发送,但没有得到它的工作。
有没有办法告诉亚马逊的 Polly 服务直接将音频文件转储到 S3?
使用 SDK,您可以获得响应流,然后我可以将其上传到 S3,但我希望跳过该步骤并直接执行。
我已经尝试将 Polly S3 预签名的帖子网址作为文件位置发送,但没有得到它的工作。
更新:自从提出问题以来,这成为可能。请参阅Amazon Polly 现在支持 100K 的输入字符限制并将输出文件存储在 S3 中。
嘿,你可以看看 startSpeechSynthesisTask
根据https://aws.amazon.com/about-aws/whats-new/2018/07/amazon-polly-now-supports-input-character-limit-of-100k,截至 2018 年 7 月 17 日,这是可能的-and-stores-output-files-in-s3/:
从今天开始,您可以...将输出文件存储在 S3 中。
@Mohit 是正确的 - 虽然我不知道 AWS Polly Ruby SDK 中是否有本机支持,但它肯定是通过 REST API 支持的。根据该操作的文档StartSpeechSynthesisTask
,StartSpeechSynthesisTask
:
...此操作需要语音合成所需的所有标准信息,以及用于存储合成任务输出的服务的 Amazon S3 存储桶的名称和两个可选参数(OutputS3KeyPrefix 和 SnsTopicArn)。
请求语法是:
POST /v1/synthesisTasks HTTP/1.1
Content-type: application/json
{
"Engine": "string",
"LanguageCode": "string",
"LexiconNames": [ "string" ],
"OutputFormat": "string",
"OutputS3BucketName": "string",
"OutputS3KeyPrefix": "string",
"SampleRate": "string",
"SnsTopicArn": "string",
"SpeechMarkTypes": [ "string" ],
"Text": "string",
"TextType": "string",
"VoiceId": "string"
}