텍스트로부터 음성을 생성하면서 단어·문자 단위 타임스탬프를 함께 반환합니다. 자막 싱크, 문자 단위 하이라이트 애니메이션, 발화 구간 시각화 등에 활용할 수 있습니다.
요청 본문은 표준 /v1/text-to-speech 엔드포인트와 동일합니다(voice_id, text, model, language, prompt, output, seed). 응답은 바이너리 오디오가 아닌 JSON 이며, base64 로 인코딩된 오디오와 함께 words / characters 배열을 포함합니다.
필요에 따라 granularity 쿼리 파라미터로 단어 단위 또는 문자 단위 중 한쪽만 받아 응답 크기를 줄일 수 있습니다.
언어 주의. 일본어(
jpn), 중국어(zho) 처럼 단어 사이에 공백이 없는 언어는 word 단위 정렬이 문장 전체를 하나의 "단어" 로 묶어 버립니다. 이런 언어에서는 항상granularity=char를 지정해 문자 단위 타임스탬프를 받으세요.
사용 가능한 보이스 목록은 보이스 목록 조회 를 참조하세요.
X-API-KEYstringheader필수인증을 위한 API 키입니다. Typecast API 콘솔에서 API 키를 발급받을 수 있습니다.
granularityword | char반환할 타임스탬프 배열을 선택합니다.
words 와 characters 모두 반환word: words 만 반환 (characters 는 null)char: characters 만 반환 (words 는 null)공백 없는 언어(예: jpn, zho): word 정렬은 문장 전체를 하나의 구간으로 반환하므로, 의미 있는 타임스탬프를 얻으려면 char 를 사용하세요.
wordcharTTSRequestWith-timestamps parameters
voice_idstringrequiredtextstringrequired음성으로 변환할 텍스트. 최소 1자, 최대 2000자. 텍스트 길이에 따라 크레딧이 소비됩니다. 영어, 한국어, 일본어, 중국어를 포함한 여러 언어를 지원합니다. 특수 문자와 구두점은 자동으로 처리됩니다.
modelssfm-v30 | ssfm-v21required음성 합성에 사용할 보이스 모델.
ssfm-v30ssfm-v21languagestringISO 639-3 표준을 따르는 언어 코드. 대소문자 구분 안 함("KOR"과 "kor" 모두 허용). 제공하지 않으면 텍스트 내용을 기반으로 자동 감지됩니다.
| 코드 | 언어 |
|---|---|
| ARA | 아랍어 |
| IND | 인도네시아어 |
| POR | 포르투갈어 |
| BEN | 벵골어 |
| ITA | 이탈리아어 |
| RON | 루마니아어 |
| BUL | 불가리아어 |
| JPN | 일본어 |
| RUS | 러시아어 |
| CES | 체코어 |
| KOR | 한국어 |
| SLK | 슬로바키아어 |
| DAN | 덴마크어 |
| MSA | 말레이어 |
| SPA | 스페인어 |
| DEU | 독일어 |
| NAN | 민남어 |
| SWE | 스웨덴어 |
| ELL | 그리스어 |
| NLD | 네덜란드어 |
| TAM | 타밀어 |
| ENG | 영어 |
| NOR | 노르웨이어 |
| TGL | 타갈로그어 |
| FIN | 핀란드어 |
| PAN | 펀자브어 |
| THA | 태국어 |
| FRA | 프랑스어 |
| POL | 폴란드어 |
| TUR | 터키어 |
| HIN | 힌디어 |
| UKR | 우크라이나어 |
| VIE | 베트남어 |
| HRV | 크로아티아어 |
| YUE | 광둥어 |
| ZHO | 중국어 |
| HUN | 헝가리어 |
| 코드 | 언어 |
|---|---|
| ARA | 아랍어 |
| IND | 인도네시아어 |
| RON | 루마니아어 |
| BUL | 불가리아어 |
| ITA | 이탈리아어 |
| RUS | 러시아어 |
| CES | 체코어 |
| JPN | 일본어 |
| SLK | 슬로바키아어 |
| DAN | 덴마크어 |
| KOR | 한국어 |
| SPA | 스페인어 |
| DEU | 독일어 |
| MSA | 말레이어 |
| SWE | 스웨덴어 |
| ELL | 그리스어 |
| NLD | 네덜란드어 |
| TAM | 타밀어 |
| ENG | 영어 |
| POL | 폴란드어 |
| TGL | 타갈로그어 |
| FIN | 핀란드어 |
| POR | 포르투갈어 |
| UKR | 우크라이나어 |
| FRA | 프랑스어 |
| HRV | 크로아티아어 |
| ZHO | 중국어 |
타임스탬프 엔드포인트 주의. 일본어(
jpn) · 중국어(zho) 처럼 단어 사이에 공백이 없는 언어는 word 단위 정렬이 문장 전체를 하나의 구간으로 묶어 버립니다. 이런 언어에서는 항상granularity=char를 함께 지정해 문자 단위 타임스탬프를 받으세요.
promptPrompt생성된 음성의 감정 및 스타일 설정, 감정 유형(happy/sad/angry/normal) 및 강도(0.0~2.0)를 포함하여 감정 표현을 제어합니다
emotion_typestring프롬프트 유형을 식별하는 판별자 필드. 컨텍스트 인식 감정 추론을 위해 "smart"로 설정해야 합니다.
previous_textstringTTSRequest의 text 필드 이전에 오는 텍스트. 감정 추론을 위한 후방 컨텍스트를 제공합니다.
모델은 흐름을 분석합니다: previous_text → text(합성됨) → next_text
next_textstringTTSRequest의 text 필드 이후에 오는 텍스트. 감정 추론을 위한 전방 컨텍스트를 제공합니다.
모델은 흐름을 분석합니다: previous_text → text(합성됨) → next_text
emotion_typestring프롬프트 유형을 식별하는 판별자 필드. 프리셋 기반 감정 제어를 위해 "preset"으로 설정해야 합니다.
emotion_presetnormal | sad | happy | angry | whisper | toneup | tonedown생성된 음성에 적용할 감정 프리셋.
지원되는 감정: normal, happy, sad, angry, whisper, toneup, tonedown
/v2/voices API를 통해 각 보이스에 사용 가능한 감정을 확인하세요.
normalsadhappyangrywhispertoneuptonedownemotion_intensitynumber생성된 음성의 감정 표현 강도를 제어합니다.
emotion_presetobject적용할 감정 프리셋.
ssfm-v21 지원 감정: normal, happy, sad, angry
/v2/voices API를 통해 각 보이스에 사용 가능한 감정을 확인하세요.
emotion_intensityobject감정 표현 강도 제어(0.0~2.0).
outputobject볼륨(0-200), 피치(-12~+12 반음), 템포(0.5배~2.0배), 형식(wav/mp3)을 포함한 오디오 출력 설정으로 최종 오디오 특성을 제어합니다
target_lufsinteger출력 음성의 목표 절대 음량(LUFS) 설정. 원본 음성의 크기와 상관없이 모든 음성을 일정한 크기로 정규화하여 생성합니다. 값이 0에 가까울수록 소리가 커지며, -70에 가까울수록 작아집니다.
volume 파라미터와 함께 사용할 수 없습니다. 절대적인 음량 기준이 필요할 때는 target_lufs를, 상대적인 비율 조절이 필요할 때는 volume을 선택하여 사용하세요.volumeinteger출력 음성의 상대적인 음량 조절: 0(완전 무음), 50(절반 볼륨), 100(표준 볼륨, 기본값), 150(표준보다 50% 크게), 200(최대 볼륨, 표준의 두 배).
출력된 음성마다 음량이 다를 경우, 단순 비율 조절인 volume을 사용하면 음성 간의 음량 편차가 더욱 커질 수 있습니다. 일정한 음량 출력이 필요한 경우 target_lufs 사용을 권장합니다.
target_lufs와 동시에 사용할 수 없습니다.필수 범위: 0 <= x <= 200
audio_pitchinteger성별과 나이에 영향을 주는 반음 단위의 피치 조정: -12(한 옥타브 낮게, 더 깊은 목소리), -6(반 옥타브 낮게), 0(원래 피치, 기본값), +6(반 옥타브 높게), +12(한 옥타브 높게, 더 높은 목소리)
audio_temponumber음성 속도 제어: 0.5(절반 속도, 매우 느리고 명확함), 0.75(보통보다 약간 느림), 1.0(보통 말하기 속도, 기본값), 1.5(보통보다 50% 빠름), 2.0(두 배 속도, 매우 빠른 음성)
audio_formatwav | mp3출력 오디오 형식.
WAV 형식:
MP3 형식:
wavmp3seedinteger재현 가능한 음성 생성을 위한 부호 없는 정수 시드. 동일한 시드와 동일한 입력 파라미터로 항상 같은 오디오 결과를 생성합니다.
application/jsonaudiostringbase64 로 인코딩된 오디오 바이트. audio_format 확장자로 디코딩해 파일로 저장할 수 있습니다.
audio_formatwav | mp3audio 필드의 오디오 인코딩 포맷 - wav 또는 mp3 (요청의 output.audio_format 에 따라 결정).
wavmp3audio_durationnumber생성된 오디오의 길이(초).
wordsobject[]단어 단위 타임스탬프(문장부호 포함). 요청이 granularity=char 일 때는 null.
textstring원본 transcript 의 텍스트 조각 (문장부호 포함).
startnumber이 구간의 시작 시각(오디오 시작 기준 초).
endnumber이 구간의 종료 시각(오디오 시작 기준 초).
charactersobject[]문자 단위 타임스탬프(문장부호와 공백 포함). 요청이 granularity=word 일 때는 null.
textstring원본 transcript 의 텍스트 조각 (문장부호/공백 포함).
startnumber이 구간의 시작 시각(오디오 시작 기준 초).
endnumber이 구간의 종료 시각(오디오 시작 기준 초).