Text to Speech (Amazon)
TsgcTextToSpeechAmazon 使用 Amazon Polly 合成语音。AWS 请求会自动为您签名,引擎、语音和输出格式都是属性,合成出的音频通过您指定的音频播放器播放。
TsgcTextToSpeechAmazon 使用 Amazon Polly 合成语音。AWS 请求会自动为您签名,引擎、语音和输出格式都是属性,合成出的音频通过您指定的音频播放器播放。
一个 Amazon Polly 后端。填入 AWS 凭据和区域,选择一个引擎和一个语音,然后调用一个方法即可。
sgcAI 是自包含的。该组件随 sgcAI 一同交付,并附带它所基于的 sgcWebSockets Core 运行时,因此无需购买基础授权。
设置 AWS 凭据和区域,挑选引擎和语音,再关联一个音频播放器。
uses
sgcAI, sgcAI_TextToSpeech_Amazon, sgcAI_AudioPlayer_MCI;
var
oTTS: TsgcTextToSpeechAmazon;
begin
oTTS := TsgcTextToSpeechAmazon.Create(nil);
oTTS.AudioPlayer := sgcAudioPlayerMCI1;
oTTS.AmazonOptions.AWSOptions.AccessKey := 'AKIA...';
oTTS.AmazonOptions.AWSOptions.SecretKey := '...';
oTTS.AmazonOptions.AWSOptions.Region := 'eu-west-1';
oTTS.AmazonOptions.Engine := 'neural';
oTTS.AmazonOptions.VoiceId := 'Joanna';
oTTS.AmazonOptions.OutputFormat := 'mp3';
oTTS.AmazonOptions.FileName := 'speech.mp3';
oTTS.TextToSpeech('The order has been shipped.');
end;
// includes: sgcAI.hpp, sgcAI_TextToSpeech_Amazon.hpp
TsgcTextToSpeechAmazon *oTTS = new TsgcTextToSpeechAmazon(NULL);
oTTS->AudioPlayer = sgcAudioPlayerMCI1;
oTTS->AmazonOptions->AWSOptions->AccessKey = "AKIA...";
oTTS->AmazonOptions->AWSOptions->SecretKey = "...";
oTTS->AmazonOptions->AWSOptions->Region = "eu-west-1";
oTTS->AmazonOptions->VoiceId = "Joanna";
oTTS->TextToSpeech("The order has been shipped.");
您最常使用的成员。
AWSOptions 承载访问密钥、私密密钥和区域。Engine、VoiceId、OutputFormat、TextType 和 FileName 决定合成请求的形态。
请求由其他 Amazon 组件所用的同一套 AWS 客户端栈以 AWS Signature Version 4 签名,因此不涉及任何单独的 SDK 或 CLI。
TextType 在纯文本和 SSML 之间切换,您正是借此控制朗读输出中的停顿、重音和发音。
AudioPlayer 负责播放 Polly 返回的文件。指定一个 TsgcAudioPlayerMCI,响应一写入就会开始播放。
当 Polly 返回错误文档而不是音频时,临时文件会被删除,并抛出携带服务错误文本的异常,因此错误的语音 id 或区域会明确地报错。
与系统语音组件和 Google 语音组件共用同一个接口,因此它们中的任意一个都可以赋给聊天机器人、翻译器或助手。
该组件所用服务和协议的权威资料来源。