BazaarLinkBazaarLink
Anmelden
DokumentationAPI-ReferenzSDK-ReferenzAgentic-NutzungKI-Skills
Inhalt

Leitfaden zur Sprachsynthese (TTS)

Leitfaden zur Sprachsynthese (TTS)

POST /v1/audio/speech ist OpenAI-compatible: JSON senden und die Audiodatei als Binärdaten empfangen. Zur ElevenLabs-Familie gehören elevenlabs/eleven-v4, eleven-v4-turbo, eleven-v3, eleven-v3-conversational, eleven-multilingual-v2, eleven-flash-v2.5, eleven-flash-v2, eleven-turbo-v2.5 und eleven-turbo-v2. Die aktuelle Liste steht unter GET /v1/models?output_modalities=speech. GET /v1/models liefert standardmäßig nur Textmodelle; hängen Sie ?output_modalities=speech (oder all) an, um sie aufzulisten.

POST/v1/audio/speech

Parameter

ParameterTypErforderlichBeschreibung
modelstringJaID des Sprachmodells, z. B. elevenlabs/eleven-flash-v2.5.
inputstringJaZu synthetisierender Text: bis zu 4.096 Zeichen pro Anfrage (10.000 bei elevenlabs/eleven-v4 und eleven-v4-turbo). Längeren Text auf mehrere Anfragen verteilen.
voicestringJaZu verwendende Stimme; das Format hängt vom Modell ab. Siehe Stimmregeln unten.
response_formatstringNeinmp3 (Standard) oder pcm. opus, aac, flac und wav nimmt die API an, ElevenLabs-Modelle lehnen sie derzeit aber mit 400 ab.
speednumberNeinSprechgeschwindigkeit von 0.25 bis 4.0. Nicht jedes Modell wendet sie an.
instructionsstringNeinStilanweisungen für die Stimme. Nicht jedes Modell wendet sie an.
stabilitynumberNeinStabilität der Stimme, 0–1 (Standard 0,5). Niedriger klingt ausdrucksstärker, höher gleichmäßiger. Wirkt bei elevenlabs/*-Modellen, wenn die Anfrage über unsere direkte Sprachroute bedient wird; der Antwort-Header X-Voice-Settings zeigt applied oder ignored.
similarity_boostnumberNeinÄhnlichkeit zur Originalstimme, 0–1 (Standard 0,75). Wird von Eleven v3 nicht verwendet.
stylenumberNeinStilübertreibung, 0–1 (Standard 0). Werte über 0 erhöhen die Latenz. Wird von Eleven v4 nicht verwendet.
use_speaker_boostbooleanNeinVerstärkt die Ähnlichkeit zum ursprünglichen Sprecher (Standard true); erhöht die Latenz leicht.
clone_strengthnumberNeinKlon-Stärke, 0–1 (für die meisten Stimmen wird 0 empfohlen). Nur für Ihre eigenen professionellen Klonstimmen (voice_…), die für Eleven v4 trainiert wurden.
language_codestringNeinZweibuchstabiger Sprachcode in Kleinbuchstaben (ISO 639-1), z. B. ar, ja oder en, um die Sprechsprache festzulegen. Wird von multilingual-v2-Modellen nicht verwendet.
audio_effectsobjectNeinOptionales Audioeffekt-Objekt: filter_preset_id (z. B. phone, old_radio), environment_id (Hallraum, z. B. small_room, hall), background_noise_id (z. B. cafe), distance (0–1), send_level (Hallanteil, 0–1) und pan (−1…1). IDs bestehen aus Kleinbuchstaben, Ziffern und Unterstrichen; keine Zusatzkosten. Hall oder ein pan ungleich 0 erzeugt Stereo und ist mit pcm-Ausgabe nicht kombinierbar.

Die sieben Stimmeinstellungen oben sind optional; ohne sie ändert sich nichts. Ein Wert außerhalb des Bereichs ergibt 400 und wird weder gesendet noch berechnet. Der Antwort-Header X-Voice-Settings zeigt, ob Ihre Einstellungen verwendet wurden: applied = verwendet; ignored = eine Ersatzroute hat geantwortet, Ihre Einstellungen wurden nicht verwendet (das Audio wird trotzdem erzeugt); kein Header = Sie haben keine Stimmeinstellungen gesendet. Beispiel: stability 0 liest ausdrucksstärker, stability 1 gleichmäßiger.

Stimmregeln

ElevenLabs-Modelle (elevenlabs/…) akzeptieren einen dieser Stimmennamen (Groß-/Kleinschreibung egal): george, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will. Bei ElevenLabs-Modellen darf voice fehlen (Standard george). Jeder andere Wert liefert 400 invalid_voice. Ihre eigene Stimme (voice_…) ist im Abschnitt „Eigene Stimmen“ unten beschrieben.

OpenAI-style Stimmnamen wie alloy, echo oder nova funktionieren nur bei Modellen, die sie aufführen. Prüfen Sie die Stimmen auf der Modellseite.

Eigene Stimmen (Klonen) werden schrittweise freigeschaltet: siehe den Abschnitt „Eigene Stimmen“ unten (POST /v1/voices). Bis sie für Ihr Konto aktiviert sind, nutzen Sie einen der 21 Preset-Namen oben oder eine öffentliche Stimm-ID.

alloy bei einem ElevenLabs-Modell schlägt fehl
Erhält ein ElevenLabs-Modell eine Stimme, die weder Voice-ID noch einer der unterstützten Namen ist (z. B. alloy oder Rachel), antwortet es mit 400 invalid_voice; die Meldung nennt die akzeptierten Namen. Fehlgeschlagene Anfragen werden nicht berechnet.

Integrierte Stimmen

Setzen Sie voice auf einen der Namen unten (Kleinbuchstaben). Jede Stimme hat einen kurzen Hörbeispiel-Clip, und GET /api/v1/audio/voices liefert die vollständige Liste (Geschlecht, Altersgruppe, Akzent, Stil und Vorschau-URLs).

?lang= (en, zh-TW, zh-CN; Standard: Accept-Language) bestimmt nur die Sprache von description. Die Vorschau-URLs ändern sich nicht: preview_urls.en (wie preview_url) ist der englische Clip, preview_urls.zh (wie preview_url_zh) der chinesische.

StimmeBeschreibungVorschau
georgeMale, middle-aged, British accent. Mature and steady, suited to narration and storytelling.
sarahFemale, young adult, American accent. Professional and clear, suited to broadcast-style reading.
adamMale, middle-aged, American accent. Everyday and approachable, suited to short social videos.
aliceFemale, middle-aged, British accent. Professional and informative, suited to explainers and teaching.
bellaFemale, middle-aged, American accent. Professional and informative, suited to explainers and teaching.
billMale, senior, American accent. Crisp and direct, suited to advertising voice-overs.
brianMale, middle-aged, American accent. Polished and refined, suited to social and brand content.
callumMale, middle-aged, American accent. Expressive, suited to characters and animation.
charlieMale, young adult, Australian accent. Energetic and lively, suited to conversation.
chrisMale, middle-aged, American accent. Relaxed and casual, suited to conversation.
danielMale, middle-aged, British accent. Formal and measured, suited to news-style and educational reading.
ericMale, middle-aged, American accent. Polished and warm, suited to conversation.
harryMale, young adult, American accent. Rough and gritty, suited to character voices.
jessicaFemale, young adult, American accent. Bright and cute, suited to conversation.
lauraFemale, young adult, American accent. Playful with attitude, suited to social content.
liamMale, young adult, American accent. Confident and upbeat, suited to social content.
lilyFemale, middle-aged, British accent. Confident and clear, suited to explainers and teaching.
matildaFemale, middle-aged, American accent. Upbeat and friendly, suited to explainers and teaching.
riverNeutral voice, middle-aged, American accent. Calm and even, suited to conversation.
rogerMale, middle-aged, American accent. Polished and confident, suited to conversation.
willMale, young adult, American accent. Laid-back and easygoing, suited to conversation.

Emotions- und Aktions-Tags (Audio-Tags)

Schreiben Sie Tags in eckigen Klammern direkt in input, zum Beispiel [laughs], [whispers], [excited], [sighs], [crying], [curious] oder [softly]. Sie werden unverändert an das Modell gesendet und bestimmen, wie die folgenden Worte gesprochen werden. Lassen Sie die Tags auch bei deutschem Text auf Englisch.

curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-v3","input":"[laughs] That was actually funny. [whispers] Do not tell anyone.","voice":"george","response_format":"mp3"}' \
  --output audio-tags.mp3

Unterstützt von elevenlabs/eleven-v3 und der Familie elevenlabs/eleven-v4. Andere Sprachmodelle interpretieren Tags nicht und lesen die Klammern unter Umständen vor; probieren Sie zuerst einen kurzen Satz.

Tags zählen als Zeichen von input und werden wie der übrige Text berechnet.

Ausgabeformate

Ohne response_format gilt mp3 (Content-Type audio/mpeg); pcm (audio/pcm, rohes 16-Bit-PCM) funktioniert ebenfalls. Die API nimmt opus, aac, flac und wav an, ElevenLabs-Modelle lehnen sie derzeit jedoch mit 400 ab. Speichern Sie die Datei anhand des Content-Type-Headers.

Abrechnung

Sprachsynthese wird pro Eingabezeichen berechnet. Der Zeichenpreis steht auf der Modellseite unter /models sowie unter GET /v1/models als pricing.character. Modellseiten zeigen ihn pro Million Zeichen.

Beispiele

curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-flash-v2.5","input":"Hello from BazaarLink.","voice":"george","response_format":"mp3"}' \
  --output speech.mp3

Häufige Fehler

StatusUrsache und Lösung
400Ungültige Anfrage: model, input oder voice fehlt; input über 4.096 Zeichen; speed außerhalb 0.25–4.0; nicht unterstütztes response_format; Unknown voice; unknown_model (ID unter /models prüfen).
401API-Schlüssel fehlt oder ist ungültig. Senden Sie Authorization: Bearer mit Ihrem BazaarLink-Schlüssel.
402Guthaben reicht nicht aus. Aufladen und erneut versuchen.
403Ein Verwaltungsschlüssel kann keine Modelle aufrufen, oder das Konto ist gesperrt. Verwenden Sie einen regulären API-Schlüssel.
429Ratenlimit erreicht. Warten Sie gemäß Retry-After und versuchen Sie es erneut.
502Der Modelldienst ist vorübergehend nicht verfügbar oder die Audioübertragung wurde unterbrochen. Erneut versuchen; fehlgeschlagene Anfragen werden nicht berechnet.

Vollständige Parameterübersicht: Sprachsynthese

Sprachsynthese

Wandelt Text mit einer Modell-ID aus /v1/models?output_modalities=speech in Audio um. Abgerechnet wird zum Preis pro Million Zeichen der Modellseite. Das komplette Audio wird gepuffert und danach als Binärdaten zurückgegeben; schrittweises Streaming wird nicht unterstützt. Routing-Steuerfelder wie provider, transforms, route, service_tier und preset werden ignoriert.

POST/v1/audio/speech
curl https://api.bazaarlink.ai/v1/audio/speech \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"<speech-model-id>","input":"Hello","voice":"alloy","response_format":"mp3"}' \
  --output speech.mp3

# Voice settings (elevenlabs/* models; the X-Voice-Settings response header says applied or ignored)
curl -D - https://api.bazaarlink.ai/v1/audio/speech \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs/eleven-v4","input":"Hello","voice":"george","stability":0.4,"similarity_boost":0.8,"style":0.2,"use_speaker_boost":true,"language_code":"en","audio_effects":{"distance":0.3}}' \
  --output speech.mp3
POST/v1/chat/completions

audio oder input_audio mit /v1/chat/completions und einem Audiomodell verwenden. Die konfigurierten Eingabe-/Ausgabe-Tokenpreise gelten einheitlich für alle gemeldeten Text- und Audiotokens.

curl https://api.bazaarlink.ai/v1/chat/completions \
  -H "$BAZAARLINK_AUTH_HEADER" \
  -H "Content-Type: application/json" \
  -d '{"model":"<audio-chat-model-id>","messages":[{"role":"user","content":"Say hi."}],"stream":true,"modalities":["text","audio"],"audio":{"voice":"alloy","format":"pcm16"},"max_tokens":32}'
Support
Hi! How can we help you?
Send a message and we'll get back to you soon.
Leitfaden zur Sprachsynthese (TTS) | BazaarLink