Text to Speech (Google)
TsgcTextToSpeechGoogle은 Google Cloud Text-to-Speech로 음성을 합성합니다. 서비스 계정 JWT에 서명하고 오디오를 요청한 다음, 이를 파일로 디코딩해 지정한 오디오 플레이어로 재생하므로, 속성 하나만 바꾸면 방대한 음성과 언어 카탈로그를 사용할 수 있습니다.
TsgcTextToSpeechGoogle은 Google Cloud Text-to-Speech로 음성을 합성합니다. 서비스 계정 JWT에 서명하고 오디오를 요청한 다음, 이를 파일로 디코딩해 지정한 오디오 플레이어로 재생하므로, 속성 하나만 바꾸면 방대한 음성과 언어 카탈로그를 사용할 수 있습니다.
Google Cloud 음성 백엔드입니다. 서비스 계정 JSON을 옵션에 붙여 넣고 언어와 성별, 음성을 고른 뒤 메서드 하나를 호출하면 됩니다.
sgcAI는 자체 완결형 제품입니다. 이 컴포넌트는 기반이 되는 sgcWebSockets Core 런타임과 함께 sgcAI에 포함되어 제공되므로, 별도로 구매해야 할 기본 라이선스가 없습니다.
서비스 계정 자격 증명을 지정하고 음성을 고른 뒤 오디오 플레이어를 연결하세요.
uses
sgcAI, sgcAI_TextToSpeech_Google, sgcAI_AudioPlayer_MCI;
var
oTTS: TsgcTextToSpeechGoogle;
begin
oTTS := TsgcTextToSpeechGoogle.Create(nil);
oTTS.AudioPlayer := sgcAudioPlayerMCI1;
// The service account JSON, pasted as-is.
oTTS.GoogleOptions.Settings.LoadFromFile('service-account.json');
oTTS.GoogleOptions.Language := 'en-US';
oTTS.GoogleOptions.VoiceId := 'en-US-Neural2-C';
oTTS.GoogleOptions.AudioEncoding := 'MP3';
oTTS.GoogleOptions.FileName := 'speech.mp3';
oTTS.TextToSpeech('The order has been shipped.');
end;
// includes: sgcAI.hpp, sgcAI_TextToSpeech_Google.hpp
TsgcTextToSpeechGoogle *oTTS = new TsgcTextToSpeechGoogle(NULL);
oTTS->AudioPlayer = sgcAudioPlayerMCI1;
oTTS->GoogleOptions->Settings->LoadFromFile("service-account.json");
oTTS->GoogleOptions->Language = "en-US";
oTTS->GoogleOptions->VoiceId = "en-US-Neural2-C";
oTTS->TextToSpeech("The order has been shipped.");
가장 자주 사용하게 되는 멤버들입니다.
Settings는 서비스 계정 JSON을 담고, Language와 VoiceId가 음성을 선택하며, ID를 지정하지 않으면 Gender가 기본 음성을 고릅니다. AudioEncoding과 FileName은 합성된 오디오를 제어합니다.
AudioPlayer가 합성된 파일을 재생합니다. TsgcAudioPlayerMCI를 할당하면 응답이 도착하는 즉시 재생이 시작됩니다.
컴포넌트가 서비스 계정의 개인 키로 JWT를 만들어 서명한 뒤, 만료될 때까지 액세스 토큰을 캐시합니다. 덕분에 오래 실행되는 애플리케이션이 문장마다 다시 인증하지 않습니다.
TextToSpeech(aText)가 요청, 디코딩, 기록, 재생, 임시 파일 정리까지 전체 과정을 수행합니다.
OnStart와 OnStop이 작업의 시작과 끝을 알려 주며, 덕분에 챗봇과 번역기 컴포넌트가 답변을 읽어 준 뒤 녹음을 다시 시작할 수 있습니다.
시스템 및 Amazon 음성 컴포넌트와 동일한 인터페이스를 사용하므로, 챗봇과 번역기, 어시스턴트가 코드 변경 없이 어느 것이든 받아들입니다.
이 컴포넌트가 사용하는 서비스와 프로토콜의 공식 자료입니다.