API 참조텍스트 음성 변환실시간 텍스트 음성 변환
실시간 텍스트 음성 변환 v1
동결된 Realtime TTS WebSocket v1 프로토콜을 사용하는 기존 클라이언트를 유지보수합니다.
Realtime TTS v1은 동결된 호환 계약입니다. 새 통합은 상위 v3 계약을 사용해야 하며 v1, v2, v3의 이벤트와 필드는 서로 호환되지 않습니다.
엔드포인트, 인증 및 인코딩
| 항목 | 값 |
|---|---|
| WebSocket | wss://realtime.fishaudio.org/v1/tts/live |
| 하위 프로토콜 | realtime.tts.msgpack.v1 |
| 인코딩 | MessagePack 바이너리 프레임 |
Authorization: Bearer FISHAUDIO_API_KEY
Sec-WebSocket-Protocol: realtime.tts.msgpack.v1자격 증명을 URL이나 브라우저 코드에 넣지 마세요.
이벤트 흐름
authenticated → start → ready → text → flush → audio → usage → stop → finish클라이언트 이벤트는 start, text, flush, stop, ping이며 서버 이벤트는 authenticated, ready, audio, usage, pong, warning, finish, error입니다. 오디오는 audio.data에 있으며 stop 전에 여러 text → flush 세그먼트를 보낼 수 있습니다.
start.request
| 필드 | 규칙 |
|---|---|
model_id | 필수 공개 음성/모델 UUID. modelId도 허용됩니다. |
engine_model_id | 선택 사항. 별칭 engineModelId. |
format | mp3, wav, pcm, opus; 기본값 mp3. |
speed / volume | 0.5–2 / 0–10. |
language | 1–32자. |
chunk_length | 100–300 정수. |
latency | normal 또는 balanced. |
모든 메시지는 MessagePack Map이며 알 수 없는 필드는 거부됩니다. 과금은 승인된 flush 세그먼트별로 정산됩니다. v1에는 영구 재실행이나 세그먼트 멱등성이 없습니다. 오류에는 code, message, retryable이 포함됩니다. 새 기능은 Realtime TTS v3로 마이그레이션하세요.