Fish Audio Docs
API ReferenzText-to-SpeechEchtzeit-Text-to-Speech

Echtzeit-Text-to-Speech v1

Pflege bestehender Clients mit dem eingefrorenen Realtime-TTS-WebSocket-v1-Protokoll.

Realtime TTS v1 ist ein eingefrorener Kompatibilitätsvertrag. Neue Integrationen verwenden den übergeordneten v3-Vertrag; die Ereignisse und Felder von v1, v2 und v3 sind nicht austauschbar.

Endpoint, Authentifizierung und Kodierung

ElementWert
WebSocketwss://realtime.fishaudio.org/v1/tts/live
Subprotokollrealtime.tts.msgpack.v1
KodierungMessagePack-Binärframes
Authorization: Bearer FISHAUDIO_API_KEY
Sec-WebSocket-Protocol: realtime.tts.msgpack.v1

Anmeldedaten gehören weder in die URL noch in Browsercode.

Ereignisablauf

authenticated → start → ready → text → flush → audio → usage → stop → finish

Clientereignisse: start, text, flush, stop, ping. Serverereignisse: authenticated, ready, audio, usage, pong, warning, finish, error. Audiodaten stehen in audio.data; vor stop können mehrere text- und flush-Segmente gesendet werden.

start.request

FeldRegel
model_idErforderliche öffentliche Voice-/Modell-UUID; modelId wird ebenfalls akzeptiert.
engine_model_idOptional; Alias engineModelId.
formatmp3, wav, pcm, opus; Standard mp3.
speed / volume0.5–2 / 0–10.
language1–32 Zeichen.
chunk_lengthGanzzahl 100–300.
latencynormal oder balanced.

Alle Nachrichten sind MessagePack-Maps; unbekannte Felder werden abgelehnt. Abgerechnet wird pro akzeptiertem flush-Segment. v1 bietet keine dauerhafte Wiederholung oder Segment-Idempotenz. Fehler enthalten code, message und retryable. Für neue Funktionen zu Realtime TTS v3 migrieren.