POST
/
v1
/
predict-duration
/
{voice_id}
curl --request POST \
  --url https://supertoneapi.com/v1/predict-duration/{voice_id} \
  --header 'Content-Type: application/json' \
  --header 'x-sup-api-key: <x-sup-api-key>' \
  --data '{
  "text": "<string>",
  "language": "en",
  "style": "<string>",
  "model": "sona_speech_1",
  "voice_settings": {
    "pitch_shift": 0,
    "pitch_variance": 1,
    "speed": 1
  }
}'
{
  "duration": 123
}

이 API는 음성을 실제로 생성하지 않고,
입력된 텍스트를 기반으로 예상 음성 길이(초 단위)만 반환합니다.

TTS 호출 전에 예상 크레딧 소모량을 파악하거나, 텍스트 길이를 조절할 때 유용합니다.

사용 방식

  • 호출 방식과 Request Body는 text-to-speech API와 거의 동일합니다.
  • 단, 결과로 오디오가 아닌 duration 값만 반환됩니다.
  • Predict Duration API 호출 시에는 크레딧이 소진되지 않습니다.

Request Body 항목 설명

항목필수설명
text분석 대상 텍스트. 최대 300자
language텍스트 언어. ko, en, ja 중 하나
style감정 스타일. 지정하지 않으면 default 스타일이 사용됩니다
model기본값은 sona_speech_1. 현재는 해당 모델만 사용 가능
voice_settings발화 속도나 피치 조절 값. 결과 길이에 영향 줄 수 있음

사용 예시

POST /v1/predict-duration/{voice_id}
Content-Type: application/json
x-sup-api-key: [YOUR_API_KEY]

{
  "text": "This is a long-form sentence for duration prediction.",
  "language": "en",
  "style": "neutral"
}

응답 예시

{
  "duration": 3.57381983
}

해당 텍스트를 생성하면 약 3.57초 분량의 오디오가 만들어진다는 의미입니다.

활용 팁

  • 크레딧은 실제로 차감되지 않습니다. (음성 생성이 이루어지지 않기 때문)
  • 동일한 텍스트를 실제 호출할 때와 거의 유사한 결과를 얻을 수 있습니다.
  • voice_settings.speed를 조절하면 길이가 달라지므로, 고정된 발화 속도로 테스트하는 것이 좋습니다.

Headers

x-sup-api-key
string
required

API key for the service

Path Parameters

voice_id
string
required

Body

application/json

Response

200
application/json

Returns predicted duration of the audio in seconds

The response is of type object.