

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# SynthesizeSpeech
<a name="API_SynthesizeSpeech"></a>

UTF-8 입력, 일반 텍스트 또는 SSML을 바이트 스트림으로 합성합니다. SSML 입력은 유효하고 올바른 형식의 SSML이어야 합니다. 음소 매핑을 사용하지 않는 한 일부 음성에서 일부 알파벳을 사용할 수 없습니다(예: 키릴 문자는 영어 음성으로 전혀 읽히지 않을 수 있음). 자세한 내용은 [작동 방식](https://docs.aws.amazon.com/polly/latest/dg/how-text-to-speech-works.html)을 참조하세요.

## Request Syntax
<a name="API_SynthesizeSpeech_RequestSyntax"></a>

```
POST /v1/speech HTTP/1.1
Content-type: application/json

{
   "Engine": "string",
   "LanguageCode": "string",
   "LexiconNames": [ "string" ],
   "OutputFormat": "string",
   "SampleRate": "string",
   "SpeechMarkTypes": [ "string" ],
   "Text": "string",
   "TextType": "string",
   "VoiceId": "string"
}
```

## URI 요청 파라미터
<a name="API_SynthesizeSpeech_RequestParameters"></a>

요청은 URI 파라미터를 사용하지 않습니다.

## 요청 본문
<a name="API_SynthesizeSpeech_RequestBody"></a>

요청은 JSON 형식으로 다음 데이터를 받습니다.

 ** [Engine](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-Engine"></a>
스피치 합성을 위한 입력 텍스트를 처리할 때 Amazon Polly의 엔진(`standard`, `neural`, `long-form` 또는 `generative`)을 지정합니다. 선택한 음성에서 지원되는 엔진을 제공합니다. 엔진을 제공하지 않으면 표준 엔진이 기본적으로 선택됩니다. 선택한 음성이 표준 엔진에서 지원되지 않는 경우 오류가 발생합니다. Amazon Polly 음성 및 각 엔진에서 사용할 수 있는 음성에 대한 자세한 내용은 [사용 가능한 음성](https://docs.aws.amazon.com/polly/latest/dg/voicelist.html)을 참조하세요.  
타입: 문자열  
유효 값: `standard | neural | long-form | generative`   
필수 여부: 아니요

 ** [LanguageCode](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-LanguageCode"></a>
스피치 합성 요청을 위한 옵션 언어 코드입니다. 이는 인도 영어(en-IN) 또는 힌디어(hi-IN)에 사용할 수 있는 Aditi와 같은 이중 언어 음성을 사용하는 경우에만 필요합니다.  
이중 언어 음성을 사용하지만 언어 코드를 지정하지 않은 경우 Amazon Polly는 이중 언어 음성의 기본 언어를 사용합니다. 모든 음성의 기본 언어는 `LanguageCode` 파라미터와 관련하여 [DescribeVoices](https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html) 작업에서 반환되는 언어입니다. 예를 들어 언어 코드를 지정하지 않은 경우 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 | cs-CZ | de-CH | en-SG`   
필수 여부: 아니요

 ** [LexiconNames](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-LexiconNames"></a>
합성 과정에서 서비스에 적용하려는 하나 이상의 발음 어휘 이름의 목록입니다. 어휘는 어휘의 언어가 음성의 언어와 동일한 경우에만 적용됩니다. 어휘 저장에 대한 자세한 내용은 [PutLexicon](https://docs.aws.amazon.com/polly/latest/dg/API_PutLexicon.html)을 참조하세요.  
유형: 문자열 배열  
배열 멤버: 최대 항목 수는 5개입니다.  
패턴: `[0-9A-Za-z]{1,20}`   
필수 여부: 아니요

 ** [OutputFormat](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-OutputFormat"></a>
 반환된 출력이 인코딩되는 형식입니다. 오디오 스트림의 경우 mp3, ogg\$1vorbis, ogg\$1opus, mu-law, a-law 또는 pcm입니다. 스피치 마크의 경우 json이 됩니다.  
pcm을 사용하면 반환되는 콘텐츠는 부호가 있는 16비트, 1채널(모노), 리틀 엔디안 형식의 오디오/pcm입니다.  
타입: 문자열  
유효 값: `json | mp3 | ogg_opus | ogg_vorbis | pcm | mulaw | alaw`   
필수 사항 여부: 예

 ** [SampleRate](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-SampleRate"></a>
Hz로 지정된 오디오 주파수입니다.  
mp3 및 ogg\$1vorbis의 유효한 값은 ‘8000’, ‘16000’, ‘22050’, ‘24000’, ‘44100’ 및 ‘48000’입니다. 표준 음성의 기본값은 “22050”이고 신경 음성의 기본값은 “24000”입니다. 롱폼 음성의 기본값은 ‘24000’입니다. 생성형 음성의 기본값은 ‘24000’입니다.  
pcm의 유효한 값은 “8000”과 “16000”입니다. 기본값은 “16000”입니다.  
ogg\$1opus의 유효한 값은 "48000"입니다.  
mu-law 및 a-law의 유효한 값은 "8000"입니다.  
유형: 문자열  
필수 항목 여부: 아니요

 ** [SpeechMarkTypes](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-SpeechMarkTypes"></a>
입력 텍스트에 대해 반환되는 스피치 마크의 유형입니다.  
유형: 문자열 배열  
배열 멤버: 최대 항목 수는 4개입니다.  
유효 값: `sentence | ssml | viseme | word`   
필수 여부: 아니요

 ** [Text](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-Text"></a>
 합성할 입력 텍스트입니다. `ssml`을 `TextType`으로 지정하는 경우 입력 텍스트의 SSML 형식을 따라야 합니다.  
유형: 문자열  
필수 항목 여부: 예

 ** [TextType](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-TextType"></a>
 입력 텍스트가 일반 텍스트인지 SSML인지 지정합니다. 기본값은 일반 텍스트입니다. 자세한 내용은 [SSML 사용](https://docs.aws.amazon.com/polly/latest/dg/ssml.html)을 참조하세요.  
타입: 문자열  
유효 값: `ssml | text`   
필수 여부: 아니요

 ** [VoiceId](#API_SynthesizeSpeech_RequestSyntax) **   <a name="polly-SynthesizeSpeech-request-VoiceId"></a>
 합성에 사용할 음성 ID입니다. [DescribeVoices](https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html) 작업을 호출하여 사용 가능한 음성 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 | Jitka | Sabrina | Jasmine | Jihye | Ambre | Beatrice | Florian | Lennart | Lorenzo | Tiffany`   
필수 여부: 예

## 응답 구문
<a name="API_SynthesizeSpeech_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-Type: ContentType
x-amzn-RequestCharacters: RequestCharacters

AudioStream
```

## 응답 요소
<a name="API_SynthesizeSpeech_ResponseElements"></a>

작업이 성공하면 서비스가 HTTP 200 응답을 반송합니다.

응답에 다음 HTTP 헤더가 반환됩니다.

 ** [ContentType](#API_SynthesizeSpeech_ResponseSyntax) **   <a name="polly-SynthesizeSpeech-response-ContentType"></a>
 오디오 스트림 유형을 지정합니다. 여기에는 요청의 `OutputFormat` 파라미터가 반영되어야 합니다.  
+  `mp3`를 `OutputFormat`으로 요청하면 `ContentType`이 audio/mpeg를 반환합니다.
+  `ogg_vorbis`를 `OutputFormat`으로 요청하면 `ContentType`이 audio/ogg를 반환합니다.
+  `ogg_opus`를 `OutputFormat`으로 요청하면 `ContentType`이 audio/ogg를 반환합니다.
+  `pcm`을 `OutputFormat`으로 요청하면 `ContentType`이 부호가 있는 16비트, 1채널(모노), 리틀 엔디안 형식의 audio/pcm을 반환합니다.
+  를 `mu-law`로 요청하면 `ContentType` 반환`OutputFormat`된는 오디오/멀로우입니다.
+  를 `a-law`로 요청하면 `ContentType` 반환`OutputFormat`된는 오디오/동결입니다.
+ `json`을 `OutputFormat`으로 요청하면 반환되는 `ContentType`은 application/x-json-stream입니다.
 

 ** [RequestCharacters](#API_SynthesizeSpeech_ResponseSyntax) **   <a name="polly-SynthesizeSpeech-response-RequestCharacters"></a>
합성된 문자 수입니다.

응답은 다음 내용을 HTTP 본문으로 반환합니다.

 ** [AudioStream](#API_SynthesizeSpeech_ResponseSyntax) **   <a name="polly-SynthesizeSpeech-response-AudioStream"></a>
 합성된 스피치가 포함된 스트림입니다.

## 오류
<a name="API_SynthesizeSpeech_Errors"></a>

 ** EngineNotSupportedException **   
이 엔진은 지정한 음성과 호환되지 않습니다. 엔진과 호환되는 새 음성을 선택하거나 엔진을 교체하고 작업을 다시 시작하세요.  
HTTP 상태 코드: 400

 ** InvalidSampleRateException **   
지정한 샘플 속도가 유효하지 않습니다.  
HTTP 상태 코드: 400

 ** InvalidSsmlException **   
제공한 SSML이 유효하지 않습니다. SSML 구문, 태그의 철자 및 값을 확인한 다음 다시 시도하세요.  
HTTP 상태 코드: 400

 ** LanguageNotSupportedException **   
Amazon Polly의 현재 용량에서는 지정된 언어를 지원하지 않습니다.  
HTTP 상태 코드: 400

 ** LexiconNotFoundException **   
Amazon Polly에서 지정한 어휘를 찾을 수 없습니다. 이는 어휘가 없거나, 이름의 철자가 틀렸거나, 다른 리전에 있는 어휘를 지정했기 때문일 수 있습니다.  
어휘가 존재하고, 해당 리전([ListLexicons](API_ListLexicons.md) 참조)에 있고, 입력한 이름의 철자가 올바른지 확인하세요. 그런 다음 다시 시도하세요.  
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

## 참고
<a name="API_SynthesizeSpeech_SeeAlso"></a>

언어별 AWS SDKs
+  [AWS 명령줄 인터페이스 V2](https://docs.aws.amazon.com/goto/cli2/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS .NET V4용 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS Go용 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS Java V2용 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS PHP V3용 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS Python용 SDK](https://docs.aws.amazon.com/goto/boto3/polly-2016-06-10/SynthesizeSpeech) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/polly-2016-06-10/SynthesizeSpeech) 