스피치 마크 예제 - Amazon Polly

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

스피치 마크 예제

다음과 같은 스피치 마크 요청의 예제는 일반적인 요청을 만드는 방법과 요청이 생성하는 출력을 보여줍니다.

예제 1 : SSML이 없는 스피치 마크

다음 예제는 "Mary have little lamb."이라는 간단한 문장에 대해 화면에서 요청된 메타데이터가 어떻게 표시되는지 보여줍니다. 이 예제에서는 간소화를 위해 SSML 스피치 마크를 포함하지 않습니다.

다음은 Unix, Linux, macOS용 형식으로 지정된 AWS CLI 예제입니다. Windows의 경우 각 줄 끝에 있는 백슬래시(\) Unix 연속 문자를 캐럿(^)으로 바꿉니다. 입력 텍스트는 큰 따옴표(")로 감싸고 내부 태그에는 작은 따옴표(')를 사용합니다.

aws polly synthesize-speech \ --output-format json \ --voice-id Joanna \ --text 'Mary had a little lamb.' \ --speech-mark-types='["viseme", "word", "sentence"]' \ MaryLamb.txt

이 요청을 하면 Amazon Polly에서 .txt 파일에 다음을 반환합니다.

{"time":0,"type":"sentence","start":0,"end":23,"value":"Mary had a little lamb."} {"time":6,"type":"word","start":0,"end":4,"value":"Mary"} {"time":6,"type":"viseme","value":"p"} {"time":73,"type":"viseme","value":"E"} {"time":180,"type":"viseme","value":"r"} {"time":292,"type":"viseme","value":"i"} {"time":373,"type":"word","start":5,"end":8,"value":"had"} {"time":373,"type":"viseme","value":"k"} {"time":460,"type":"viseme","value":"a"} {"time":521,"type":"viseme","value":"t"} {"time":604,"type":"word","start":9,"end":10,"value":"a"} {"time":604,"type":"viseme","value":"@"} {"time":643,"type":"word","start":11,"end":17,"value":"little"} {"time":643,"type":"viseme","value":"t"} {"time":739,"type":"viseme","value":"i"} {"time":769,"type":"viseme","value":"t"} {"time":799,"type":"viseme","value":"t"} {"time":882,"type":"word","start":18,"end":22,"value":"lamb"} {"time":882,"type":"viseme","value":"t"} {"time":964,"type":"viseme","value":"a"} {"time":1082,"type":"viseme","value":"p"}

이 출력에서 텍스트의 각 부분은 스피치 마크 용어로 구분됩니다.

  • sentence는 "Mary had a little lamb."입니다.

  • 텍스트의 각 word는 "Mary", "had", "a", "little", and "lamb."입니다.

  • 해당하는 오디오 스트림에서 각 사운드에 대한 viseme는 "p", "E", "r", "i" 등입니다. viseme에 대한 자세한 내용은 Viseme과 Amazon Polly을(를) 참조하세요.

예제 2 : SSML이 있는 스피치 마크

SSML로 확장된 텍스트에서 스피치 마크를 생성하는 과정은 SSML이 없는 경우와 유사합니다. synthesize-speech 명령을 사용하여 다음 예제와 같이 원하는 SSML 확장 텍스트와 스피치 마크 형식을 지정하세요. 예제를 더 쉽게 읽도록 viseme 스피치 마크는 포함하지 않았지만 포함할 수도 있습니다.

다음은 Unix, Linux, macOS용 형식으로 지정된 AWS CLI 예제입니다. Windows의 경우 각 줄 끝에 있는 백슬래시(\) Unix 연속 문자를 캐럿(^)으로 바꿉니다. 입력 텍스트는 큰 따옴표(")로 감싸고 내부 태그에는 작은 따옴표(')를 사용합니다.

aws polly synthesize-speech \ --output-format json \ --voice-id Joanna \ --text-type ssml \ --text '<speak><prosody volume="+20dB">Mary had <break time="300ms"/>a little <mark name="animal"/>lamb</prosody></speak>' \ --speech-mark-types='["sentence", "word", "ssml"]' \ output.txt

이 요청을 하면 Amazon Polly에서 .txt 파일에 다음을 반환합니다.

{"time":0,"type":"sentence","start":31,"end":95,"value":"Mary had <break time=\"300ms\"\/>a little <mark name=\"animal\"\/>lamb"} {"time":6,"type":"word","start":31,"end":35,"value":"Mary"} {"time":325,"type":"word","start":36,"end":39,"value":"had"} {"time":897,"type":"word","start":40,"end":61,"value":"<break time=\"300ms\"\/>"} {"time":1291,"type":"word","start":61,"end":62,"value":"a"} {"time":1373,"type":"word","start":63,"end":69,"value":"little"} {"time":1635,"type":"ssml","start":70,"end":91,"value":"animal"} {"time":1635,"type":"word","start":91,"end":95,"value":"lamb"}