기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
StartSpeechSynthesisTask
새로운 SpeechSynthesisTask
를 시작하여 비동기 합성 작업의 생성을 허용합니다. 이 작업을 수행하려면 스피치 합성에 필요한 모든 표준 정보와 함께 서비스가 합성 작업의 출력을 저장하는 Amazon S3 버킷의 이름과 두 개의 옵션 파라미터(OutputS3KeyPrefix
및 SnsTopicArn
)가 필요합니다. 합성 작업이 생성되면 이 작업은 이 작업의 식별자와 현재 상태를 포함하는 SpeechSynthesisTask
객체를 반환합니다. 비동기 합성 작업을 시작한 후 72시간 동안 SpeechSynthesisTask
객체를 사용할 수 있습니다.
Request Syntax
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
"
}
URI 요청 파라미터
요청은 URI 파라미터를 사용하지 않습니다.
요청 본문
요청은 JSON 형식으로 다음 데이터를 받습니다.
- Engine
-
Amazon Polly가 음성 합성을 위한 입력 텍스트를 처리할 때 사용할 엔진 (
standard
neural
,long-form
또는generative
) 을 지정합니다. 선택한 엔진에서 지원되지 않는 음성을 사용하면 오류가 발생합니다.타입: 문자열
유효 값:
standard | neural | long-form | generative
필수 여부: 아니요
- LanguageCode
-
스피치 합성 요청을 위한 옵션 언어 코드입니다. 이는 인도 영어(en-IN) 또는 힌디어(hi-IN)에 사용할 수 있는 Aditi와 같은 이중 언어 음성을 사용하는 경우에만 필요합니다.
이중 언어 음성을 사용하지만 언어 코드를 지정하지 않은 경우 Amazon Polly는 이중 언어 음성의 기본 언어를 사용합니다. 모든 음성의 기본 언어는
LanguageCode
파라미터 DescribeVoices연산에서 반환되는 언어입니다. 예를 들어 언어 코드를 지정하지 않은 경우 Aditi는 힌디어 대신 인도 영어를 사용합니다.타입: 문자열
유효 값:
arb | cmn-CN | cy-GB | da-DK | de-DE | en-AU | en-GB | en-GB-WLS | en-IN | en-US | es-ES | es-MX | es-US | fr-CA | fr-FR | is-IS | it-IT | ja-JP | hi-IN | ko-KR | nb-NO | nl-NL | pl-PL | pt-BR | pt-PT | ro-RO | ru-RU | sv-SE | tr-TR | en-NZ | en-ZA | ca-ES | de-AT | yue-CN | ar-AE | fi-FI | en-IE | nl-BE | fr-BE
필수 여부: 아니요
- LexiconNames
-
합성 과정에서 서비스에 적용하려는 하나 이상의 발음 어휘 이름의 목록입니다. 어휘는 어휘의 언어가 음성의 언어와 동일한 경우에만 적용됩니다.
유형: 문자열 배열
배열 멤버: 최대 항목 수는 5개입니다.
패턴:
[0-9A-Za-z]{1,20}
Required: No
- OutputFormat
-
반환된 출력이 인코딩되는 형식입니다. 오디오 스트림의 경우 mp3, ogg_vorbis 또는 pcm이 됩니다. 스피치 마크의 경우 json이 됩니다.
타입: 문자열
유효 값:
json | mp3 | ogg_vorbis | pcm
필수 사항 여부: 예
- OutputS3BucketName
-
출력 파일이 저장될 Amazon S3 버킷 이름입니다.
유형: String
패턴:
^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
필수 사항 여부: Yes
- OutputS3KeyPrefix
-
출력 스피치 파일의 Amazon S3 키 접두사입니다.
유형: String
패턴:
^[0-9a-zA-Z\/\!\-_\.\*\'\(\):;\$@=+\,\?&]{0,800}$
Required: No
- SampleRate
-
Hz로 지정된 오디오 주파수입니다.
mp3 및 ogg_vorbis의 유효한 값은 “8000”, “16000”, “22050”, “24000”입니다. 표준 음성의 기본값은 “22050”이고 신경 음성의 기본값은 “24000”입니다. 롱폼 음성의 기본값은 ‘24000’입니다. 제너레이티브 보이스의 기본값은 “24000"입니다.
pcm의 유효한 값은 “8000”과 “16000”입니다. 기본값은 “16000”입니다.
타입: 문자열
필수사항: 아니요
- SnsTopicArn
-
스피치 합성 작업에 대한 상태 알림을 제공할 때 옵션으로 사용되는 SNS 주제용 ARN입니다.
유형: String
패턴:
^arn:aws(-(cn|iso(-b)?|us-gov))?:sns:[a-z0-9_-]{1,50}:\d{12}:[a-zA-Z0-9_-]{1,251}([a-zA-Z0-9_-]{0,5}|\.fifo)$
Required: No
- SpeechMarkTypes
-
입력 텍스트에 대해 반환되는 스피치 마크의 유형입니다.
유형: 문자열 어레이
배열 멤버: 최대 항목 수는 4개입니다.
유효 값:
sentence | ssml | viseme | word
필수 여부: 아니요
- Text
-
합성할 입력 텍스트입니다. ssml을 로 지정하는 경우 입력 텍스트의 TextType SSML 형식을 따르십시오.
타입: 문자열
필수 항목 여부: 예
- TextType
-
입력 텍스트가 일반 텍스트인지 SSML인지 지정합니다. 기본값은 일반 텍스트입니다.
타입: 문자열
유효 값:
ssml | text
필수 여부: 아니요
- VoiceId
-
합성에 사용할 음성 ID입니다.
타입: 문자열
유효 값:
Aditi | Amy | Astrid | Bianca | Brian | Camila | Carla | Carmen | Celine | Chantal | Conchita | Cristiano | Dora | Emma | Enrique | Ewa | Filiz | Gabrielle | Geraint | Giorgio | Gwyneth | Hans | Ines | Ivy | Jacek | Jan | Joanna | Joey | Justin | Karl | Kendra | Kevin | Kimberly | Lea | Liv | Lotte | Lucia | Lupe | Mads | Maja | Marlene | Mathieu | Matthew | Maxim | Mia | Miguel | Mizuki | Naja | Nicole | Olivia | Penelope | Raveena | Ricardo | Ruben | Russell | Salli | Seoyeon | Takumi | Tatyana | Vicki | Vitoria | Zeina | Zhiyu | Aria | Ayanda | Arlet | Hannah | Arthur | Daniel | Liam | Pedro | Kajal | Hiujin | Laura | Elin | Ida | Suvi | Ola | Hala | Andres | Sergio | Remi | Adriano | Thiago | Ruth | Stephen | Kazuha | Tomoko | Niamh | Sofie | Lisa | Isabelle | Zayd | Danielle | Gregory | Burcu
필수 여부: 예
응답 구문
HTTP/1.1 200
Content-type: application/json
{
"SynthesisTask": {
"CreationTime": number,
"Engine": "string",
"LanguageCode": "string",
"LexiconNames": [ "string" ],
"OutputFormat": "string",
"OutputUri": "string",
"RequestCharacters": number,
"SampleRate": "string",
"SnsTopicArn": "string",
"SpeechMarkTypes": [ "string" ],
"TaskId": "string",
"TaskStatus": "string",
"TaskStatusReason": "string",
"TextType": "string",
"VoiceId": "string"
}
}
응답 요소
작업이 성공하면 서비스가 HTTP 200 응답을 반송합니다.
다음 데이터는 서비스에 의해 JSON 형식으로 반환됩니다.
- SynthesisTask
-
SynthesisTask 새로 제출된 음성 합성 작업에 대한 정보와 속성을 제공하는 객체입니다.
유형: SynthesisTask객체
Errors
- EngineNotSupportedException
-
이 엔진은 지정한 음성과 호환되지 않습니다. 엔진과 호환되는 새 음성을 선택하거나 엔진을 교체하고 작업을 다시 시작하세요.
HTTP 상태 코드: 400
- InvalidS3BucketException
-
제공된 Amazon S3 버킷 이름이 유효하지 않습니다. S3 버킷의 명명 규칙을 확인하고 다시 시도하세요.
HTTP 상태 코드: 400
- InvalidS3KeyException
-
제공된 Amazon S3 키 접두사가 유효하지 않습니다. 유효한 S3 객체 키 이름을 제공하세요.
HTTP 상태 코드: 400
- InvalidSampleRateException
-
지정한 샘플 속도가 유효하지 않습니다.
HTTP 상태 코드: 400
- InvalidSnsTopicArnException
-
제공된 SNS 주제 ARN이 유효하지 않습니다. 유효한 SNS 주제 ARN을 제공하고 다시 시도하세요.
HTTP 상태 코드: 400
- InvalidSsmlException
-
제공한 SSML이 유효하지 않습니다. SSML 구문, 태그의 철자 및 값을 확인한 다음 다시 시도하세요.
HTTP 상태 코드: 400
- LanguageNotSupportedException
-
Amazon Polly의 현재 용량에서는 지정된 언어를 지원하지 않습니다.
HTTP 상태 코드: 400
- LexiconNotFoundException
-
Amazon Polly에서 지정한 어휘를 찾을 수 없습니다. 이는 어휘가 없거나, 이름의 철자가 틀렸거나, 다른 리전에 있는 어휘를 지정했기 때문일 수 있습니다.
어휘가 존재하고, 해당 리전(ListLexicons 참조)에 있고, 입력한 이름의 철자가 올바른지 확인하세요. 그런 다음 다시 시도하세요.
HTTP 상태 코드: 404
- MarksNotSupportedForFormatException
-
선택한
OutputFormat
에서 스피치 마크를 지원하지 않습니다. 스피치 마크는json
형식의 내용에서만 사용할 수 있습니다.HTTP 상태 코드: 400
- ServiceFailureException
-
알 수 없는 상태로 인해 서비스 장애가 발생했습니다.
HTTP 상태 코드: 500
- SsmlMarksNotSupportedForTextTypeException
-
일반 텍스트 유형 입력에는 SSML 스피치 마크가 지원되지 않습니다.
HTTP 상태 코드: 400
- TextLengthExceededException
-
“Text” 파라미터 값이 허용된 한도보다 깁니다.
SynthesizeSpeech
API의 경우 입력 텍스트 한도는 최대 총 6,000자이며, 이 중 청구 가능한 문자 수는 3,000자를 초과할 수 없습니다.StartSpeechSynthesisTask
API의 경우 최대 200,000자이며, 이 중 청구 가능한 문자 수는 100,000자를 초과할 수 없습니다. SSML 태그는 청구 문자 수로 계산되지 않습니다.HTTP 상태 코드: 400
참고
언어별 AWS SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하십시오.