Die Gemini-Modelle für Text-zu-Sprache (TTS) wandeln Text in Audioinhalte mit einem oder mehreren Sprechern um. Mit strukturierten Metadaten für Turns (speech_metadata) und Inline-Vokal-Tags können Sie den Stil, den Akzent, das Tempo und den Ton des Audios steuern.
Auf dieser Seite erfahren Sie, wie Sie mit den folgenden Modellen Sprache generieren. Dazu verwenden Sie die Methoden generateContent und streamGenerateContent der Gemini Enterprise API:
- Gemini 3.8 Flash TTS
(
gemini-3.8-flash-tts) - Gemini 3.8 Flash-Lite TTS
(
gemini-3.8-flash-lite-tts)
Die TTS-Modelle sind auf die genaue Textrezitation mit detaillierter Steuerung von Stil und Klang zugeschnitten, z. B. für Erzählungen, Hörbücher und Antworten von Sprachassistenten. Für interaktive Echtzeitunterhaltungen mit Audioeingabe und -ausgabe verwenden Sie stattdessen die Live API.
Wenn Sie ein älteres Gemini TTS-Modell wie gemini-3.1-flash-tts-preview verwenden, lesen Sie den Migrationsleitfaden.
Unterstützte Modelle
| Modell | Einzelner Sprecher | Mehrere Sprecher | Streaming | Voice-Design | Stimmreplikation |
|---|---|---|---|---|---|
Gemini 3.8 Flash TTS (gemini-3.8-flash-tts) |
|||||
Gemini 3.8 Flash-Lite TTS (gemini-3.8-flash-lite-tts) |
|||||
Gemini 3.1 Flash TTS Preview (gemini-3.1-flash-tts-preview) |
|||||
Gemini 2.5 Pro TTS (gemini-2.5-pro-tts) |
|||||
Gemini 2.5 Flash TTS (gemini-2.5-flash-tts) |
Die Beispiele und Funktionen auf dieser Seite gelten für die Gemini 3.8-TTS-Modelle. Informationen zu den früheren Modellen finden Sie in derGoogle Cloud Text-to-Speech-Dokumentation unter Gemini-TTS.
Wann welches Modell verwendet werden sollte
Beide Gemini 3.8-TTS-Modelle haben dasselbe Anfrageschema und Prompting-Format. Sie können also zwischen ihnen wechseln, indem Sie die Modell-ID ändern:
- Gemini 3.8 Flash TTS (
gemini-3.8-flash-tts) verwenden, wenn akustische Wiedergabetreue, nuancierte Darstellung und ausdrucksstarke Steuerung oberste Priorität haben. Es eignet sich für kreative Arbeiten in Studioqualität, komplexe Dialoge mit mehreren Sprechern, häufige Tags für Gesangseinlagen, schwierige Aussprachen, regionale oder Minderheitendialekte und lange Erzählungen, die eine stabile Stimme und einen stabilen Raumton erfordern. - Gemini 3.8 Flash-Lite TTS (
gemini-3.8-flash-lite-tts) für schnelle, kostengünstige Produktions-Workloads verwenden. Es ist der empfohlene Ersatz fürgemini-3.1-flash-tts-previewund eignet sich für die Batchproduktion in großen Mengen, Konversations-Voice-Agent-Kaskaden, Vorlesefunktionen, Sprachreplikation und die alltägliche Sprachausgabe über einen einzelnen Lautsprecher in den wichtigsten Sprachen.
Hinweis
- Projekt einrichten und Gemini Enterprise API aktivieren
- Konfigurieren Sie Standardanmeldedaten für Anwendungen für Ihre Entwicklungsumgebung.
Wenn Sie die Python-Beispiele verwenden möchten, installieren Sie Version 2.25.0 oder höher des Google Gen AI SDK:
pip install --upgrade "google-genai>=2.25.0"
Die Gemini 3.8-TTS-Modelle sind am Standort global verfügbar. Senden Sie Anfragen an den aiplatform.googleapis.com-Endpunkt.
TTS für einen einzelnen Sprecher
Wenn Sie Text in Audio mit einem einzelnen Sprecher umwandeln möchten, übergeben Sie das wörtliche Transkript in parts[].text, fügen Sie optionales Styling auf Turn-Ebene in parts[].speech_metadata hinzu und legen Sie die Stimme in speechConfig.voiceConfig.voice fest. Im Feld voice kann ein Name für eine vorgefertigte Stimme, eine Sprach-ID aus der Extended Voice Library oder die ID (voice_...) einer entwickelten oder replizierten Stimme (oder ein optionaler statusloser voicekey_...-Schlüssel) angegeben werden.
Standardmäßig wird bei unären Anfragen eine vollständige WAV-Datei (16-Bit-PCM, 24 kHz, Mono) zurückgegeben. Sie können die Audiobytes also direkt in eine .wav-Datei schreiben. Bei Streaminganfragen werden stattdessen rohe PCM-Chunks zurückgegeben. Weitere Informationen und andere Codierungen finden Sie unter Audioausgabeformate.
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.models.generate_content(
model="gemini-3.8-flash-tts",
contents=[{
"role": "user",
"parts": [{
"text": "Have a wonderful day!",
"speech_metadata": {"style": "cheerful and friendly"},
}],
}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {"voice_config": {"voice": "Kore"}},
},
)
# The SDK has already decoded the base64 audio, so inline_data.data is a
# complete WAV file by default.
with open("out.wav", "wb") as f:
f.write(response.candidates[0].content.parts[0].inline_data.data)
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.8-flash-tts:generateContent \
-d '{
"contents": [{
"role": "user",
"parts": [{
"text": "Have a wonderful day!",
"speechMetadata": {"style": "cheerful and friendly"}
}]
}],
"generationConfig": {
"responseModalities": ["AUDIO"],
"speechConfig": {
"voiceConfig": {"voice": "Kore"}
}
}
}' | jq -r '.candidates[0].content.parts[0].inlineData.data' | base64 --decode > out.wav
TTS für Streaming mit einem einzelnen Sprecher
Wenn Sie Audioinhalte erhalten möchten, während das Modell sie noch synthetisiert, verwenden Sie die Methode streamGenerateContent. Streamingantworten geben Header ohne 16‑Bit-PCM-Chunks (24 kHz, Mono) zurück. Sie können jeden Chunk an einen Player, einen Socket oder eine andere Audio-Pipeline übergeben, sobald er eintrifft. Im folgenden Python-Beispiel steht die Funktion emit_audio für dieses Ziel.
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
def emit_audio(pcm: bytes) -> None:
"""Sends a chunk of raw 16-bit PCM audio (24 kHz, mono) downstream."""
# Replace with your audio destination, such as a player, a WebSocket,
# or a telephony stream.
print(f"Received {len(pcm)} bytes of audio")
response_stream = client.models.generate_content_stream(
model="gemini-3.8-flash-lite-tts",
contents=[{
"role": "user",
"parts": [{
"text": "Have a wonderful day!",
"speech_metadata": {"style": "cheerful and friendly"},
}],
}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {"voice_config": {"voice": "Kore"}},
},
)
for chunk in response_stream:
if not chunk.candidates or not chunk.candidates[0].content:
continue
for part in chunk.candidates[0].content.parts or []:
if part.inline_data and part.inline_data.data:
emit_audio(part.inline_data.data)
REST
curl -N -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.8-flash-lite-tts:streamGenerateContent?alt=sse" \
-d '{
"contents": [{
"role": "user",
"parts": [{
"text": "Have a wonderful day!",
"speechMetadata": {"style": "cheerful and friendly"}
}]
}],
"generationConfig": {
"responseModalities": ["AUDIO"],
"speechConfig": {
"voiceConfig": {"voice": "Kore"}
}
}
}' | sed -n 's/^data: //p' \
| jq -r '.candidates[0].content.parts[0].inlineData.data // empty' \
| while read -r chunk; do echo "$chunk" | base64 --decode; done > streamed.pcm
Die Datei streamed.pcm enthält unformatierte 16‑Bit-PCM-Audiodaten mit 24 kHz, Mono.
TTS mit mehreren Sprechern
Für einen Dialog zwischen zwei Sprechern konfigurieren Sie beide Sprecher in speechConfig.multiSpeakerVoiceConfig.speakerVoiceConfigs. Übergeben Sie dann jede Äußerung als separate part, legen Sie speech_metadata.speaker für jede Äußerung auf einen der konfigurierten Sprechernamen fest und fügen Sie optional eine style auf Äußerungsebene hinzu.
Für Anfragen mit mehreren Sprechern sind genau zwei Sprecher erforderlich.
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.models.generate_content(
model="gemini-3.8-flash-tts",
contents=[{
"role": "user",
"parts": [
{
"text": "How's it going today, Jane?",
"speech_metadata": {"speaker": "Joe", "style": "cheerful and friendly"},
},
{
"text": "Not too bad, how about you? Ready to test these new voices?",
"speech_metadata": {"speaker": "Jane", "style": "calm and relaxed"},
},
],
}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {
"multi_speaker_voice_config": {
"speaker_voice_configs": [
{"speaker": "Joe", "voice_config": {"voice": "Puck"}},
{"speaker": "Jane", "voice_config": {"voice": "Kore"}},
]
}
},
},
)
with open("dialogue.wav", "wb") as f:
f.write(response.candidates[0].content.parts[0].inline_data.data)
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.8-flash-tts:generateContent \
-d '{
"contents": [{
"role": "user",
"parts": [
{
"text": "How'\''s it going today, Jane?",
"speechMetadata": {"speaker": "Joe", "style": "cheerful and friendly"}
},
{
"text": "Not too bad, how about you? Ready to test these new voices?",
"speechMetadata": {"speaker": "Jane", "style": "calm and relaxed"}
}
]
}],
"generationConfig": {
"responseModalities": ["AUDIO"],
"speechConfig": {
"multiSpeakerVoiceConfig": {
"speakerVoiceConfigs": [
{"speaker": "Joe", "voiceConfig": {"voice": "Puck"}},
{"speaker": "Jane", "voiceConfig": {"voice": "Kore"}}
]
}
}
}
}' | jq -r '.candidates[0].content.parts[0].inlineData.data' | base64 --decode > dialogue.wav
TTS für Streaming mit mehreren Sprechern
Anfragen mit mehreren Sprechern unterstützen auch Streaming. Verwenden Sie dieselbe Anfrage wie in TTS mit mehreren Sprechern mit der Methode streamGenerateContent.
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
def emit_audio(pcm: bytes) -> None:
"""Sends a chunk of raw 16-bit PCM audio (24 kHz, mono) downstream."""
# Replace with your audio destination, such as a player, a WebSocket,
# or a telephony stream.
print(f"Received {len(pcm)} bytes of audio")
response_stream = client.models.generate_content_stream(
model="gemini-3.8-flash-tts",
contents=[{
"role": "user",
"parts": [
{
"text": "How's it going today, Jane?",
"speech_metadata": {"speaker": "Joe", "style": "cheerful and friendly"},
},
{
"text": "Not too bad, how about you? Ready to test these new voices?",
"speech_metadata": {"speaker": "Jane", "style": "calm and relaxed"},
},
],
}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {
"multi_speaker_voice_config": {
"speaker_voice_configs": [
{"speaker": "Joe", "voice_config": {"voice": "Puck"}},
{"speaker": "Jane", "voice_config": {"voice": "Kore"}},
]
}
},
},
)
for chunk in response_stream:
if not chunk.candidates or not chunk.candidates[0].content:
continue
for part in chunk.candidates[0].content.parts or []:
if part.inline_data and part.inline_data.data:
emit_audio(part.inline_data.data)
REST
curl -N -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.8-flash-tts:streamGenerateContent?alt=sse" \
-d '{
"contents": [{
"role": "user",
"parts": [
{
"text": "How'\''s it going today, Jane?",
"speechMetadata": {"speaker": "Joe", "style": "cheerful and friendly"}
},
{
"text": "Not too bad, how about you? Ready to test these new voices?",
"speechMetadata": {"speaker": "Jane", "style": "calm and relaxed"}
}
]
}],
"generationConfig": {
"responseModalities": ["AUDIO"],
"speechConfig": {
"multiSpeakerVoiceConfig": {
"speakerVoiceConfigs": [
{"speaker": "Joe", "voiceConfig": {"voice": "Puck"}},
{"speaker": "Jane", "voiceConfig": {"voice": "Kore"}}
]
}
}
}
}' | sed -n 's/^data: //p' \
| jq -r '.candidates[0].content.parts[0].inlineData.data // empty' \
| while read -r chunk; do echo "$chunk" | base64 --decode; done > dialogue_streamed.pcm
Die Datei dialogue_streamed.pcm enthält unformatierte 16-Bit-PCM-Audiodaten mit 24 kHz im Monobetrieb.
Sprachstil mit Metadaten und Tags steuern
Die Gemini 3.8 TTS-Modelle behandeln das Feld text als wörtliches Transkript.
Anweisungen, die in den Text geschrieben sind, z. B. "Say cheerfully: Hello!" oder "Speaker 1: Hello!", werden möglicherweise vorgelesen. Um die Ausgabe zu steuern, unterteilen Sie Ihre Anweisungen nach Umfang:
- Kontinuierliche Bereitstellung auf Turn-Ebene (
speech_metadata.style): Geben Sie Emotionen, Bereitstellungsstil, Prosodie, Tempo und Lautstärke an, die für einen ganzen Turn inspeech_metadata.stylegelten. Beispiel:"style": "whispered urgently","style": "out of breath"oder"style": "warm and enthusiastic". - Zeitpunktbezogene Ereignisse (Inline-Tags): Setzen Sie kurze nicht sprachliche Geräusche und Pausen im Transkript in spitze Klammern. Beispiel:
"Wait... <short pause> did you hear that? <sigh>"oder"Excuse me <cough> as I was saying...".
Weitere Informationen finden Sie in der Prompt-Anleitung.
Stimmoptionen
Die Gemini 3.8 TTS-Modelle unterstützen vier Möglichkeiten zum Auswählen oder Erstellen von Stimmen:
- Vordefinierte Stimmen: 30 ausgewählte Stimmen.
- Erweiterte Stimmenbibliothek: Mehr als 2.000 kuratierte voreingestellte Stimmen in verschiedenen Sprachen, regionalen Akzenten und Charakteren.
- Sprachdesign: Erstellen Sie mit der Voices API-Methode
create(client.voices.create()im Google Gen AI SDK oderPOST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/voices) eine benutzerdefinierte Stimme aus einer Beschreibung in natürlicher Sprache. Legen SietypeaufVOICE_TYPE_PROMPTEDundstoreauftruefest. Die Antwort enthält eine gespeichertevoice_...-ID und eine Sprachprobe. - Stimmreplikation:
Die Stimme einer sprechenden Person wird anhand von Referenz- und Einwilligungs-Audio mit derselben
create-Methode repliziert. SetzetypeaufVOICE_TYPE_REPLICATED. Beistore: truewird in der Antwort eine gespeichertevoice_...-ID zurückgegeben. Mitstore: falsewird ein zustandsloservoicekey_...-Schlüssel zurückgegeben.
Benutzerdefinierte Sprachlimits und TTL
| Stimmtyp | Speichermodus | Verwaltung | Ablauffrist |
|---|---|---|---|
Gespeicherte Stimmen (voice_..., erstellt oder repliziert) |
store: true |
Voices API-Methoden list, get und delete |
1 Jahr nach der letzten Nutzung |
Schlüssel für die Sprachreplikation (voicekey_...) |
store: false |
Wird von Ihrer Anwendung verwaltet. Google speichert den Schlüssel nicht. | 7 Tage nach Erstellung |
Wenn Sie Sprache mit einer gespeicherten Stimme generieren, wird die einjährige Aufbewahrungsdauer neu gestartet. Eine Stimme, die Sie regelmäßig verwenden, läuft also nicht ab. Für Anfragen zur Stimmerstellung gilt ein Kontingent pro Projekt und Minute. Wenn Sie das Limit überschreiten, gibt die Methode create einen RESOURCE_EXHAUSTED-Fehler zurück. Weitere Informationen finden Sie unter Kontingente und Systemlimits.
Vordefinierte Stimmen
In der folgenden Liste sind die Namen der einzelnen integrierten Stimmen und ihre Merkmale aufgeführt:
- Achernar: Weich
- Achird: Freundlich
- Algenib: Kiesig
- Algieba: Weich
- Alnilam: Bestimmt
- Aoede: Breezy
- Autonoe: Aufgeweckt
- Callirrhoe: gelassen
- Charon: informativ
- Despina: ruhig
- Enceladus: gehaucht
- Erinome: Deutlich
- Fenrir: Aufgeregt
- Gacrux: Nicht jugendfrei
- Iapetus: Deutlich
- Kore: Firma
- Laomedeia: optimistisch
- Leda: jugendlich
- Orus: Fest
- Puck: Upbeat
- Pulcherrima: kess
- Rasalgethi: informativ
- Sadachbia: Lebhaft
- Sadaltager: klug
- Schedar: Gleichmäßig
- Sulafat: Warm
- Umbriel: Gelassen
- Vindemiatrix: sanft
- Zephyr: Hell
- Zubenelgenubi: Lässig
Erweiterte Voice-Bibliothek
Neben den 30 vordefinierten Stimmen bietet die erweiterte Stimmenbibliothek über 2.000 kuratierte voreingestellte Stimmen in verschiedenen Sprachen, regionalen Akzenten, Charakteren und Anwendungsfällen wie Hörbücher, Conversational Agents und Nachrichten.
Wenn Sie eine Bibliotheksstimme verwenden möchten, übergeben Sie ihre ID in speechConfig.voiceConfig.voice, so wie Sie einen vordefinierten Stimmnamen übergeben.
Rufen Sie zum Durchsuchen der Bibliothek die list-Methode (ListVoices) der Voices API auf. Sie gibt die in Ihrem Projekt gespeicherten benutzerdefinierten Stimmen zurück, gefolgt von den Stimmen aus der integrierten und der Extended Voice Library. Jede Bibliotheksstimme enthält ihre id und Metadaten wie language_code, accent, gender, pitch, persona und description. Mit den folgenden Filtern können Sie die Ergebnisse eingrenzen:
type: Die Sprachquelle:prebuiltfür integrierte und Bibliotheksstimmen,promptedfür entwickelte Stimmen oderreplicatedfür replizierte Stimmen. Wenn Sie mehr als einen Wert übergeben, gibt die Methode Stimmen zurück, die mit einem der Werte übereinstimmen.search: Text, der ohne Berücksichtigung der Groß-/Kleinschreibung mit dem Anzeigenamen und der Beschreibung jeder Stimme abgeglichen wird.
Im folgenden Beispiel wird in der Bibliothek nach Sprecherstimmen gesucht:
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.voices.list(type_=["prebuilt"], search="narrator", page_size=50)
for voice in response.voices or []:
print(voice.id, voice.language_code, voice.gender, voice.description)
REST
curl -G \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/voices \
--data-urlencode "type=prebuilt" \
--data-urlencode "search=narrator" \
--data-urlencode "pageSize=50"
Die Methode list gibt bis zu 50 Stimmen pro Seite zurück. Um die nächste Seite abzurufen, übergeben Sie den next_page_token-Wert aus der Antwort als page_token-Parameter.
Audioausgabeformate
Die Standard-Audio-Codierung hängt von der Methode ab:
- Unäre Anfragen (
generateContent) geben eine vollständige WAV-Datei (audio/wav) mit einem RIFF-Header zurück: 16-Bit-PCM, 24 kHz, Mono. - Streaminganfragen (
streamGenerateContent) geben headerlose Rohdaten in Form von 16‑Bit-PCM-Chunks mit Vorzeichen im Little-Endian-Format (audio/l16) mit 24 kHz und im Monomodus zurück.
Wenn Sie eine andere Codierung anfordern möchten, legen Sie generationConfig.responseFormat auf ein Audioformat fest. Die Gemini 3.8 TTS-Modelle unterstützen die folgenden mimeType-Werte:
mimeType Wert |
Format | Beschreibung |
|---|---|---|
AUDIO_WAV (Standard für unäre Operationen) |
WAV (audio/wav) |
Vollständige WAV-Datei mit einem RIFF-Header (16-Bit-PCM, 24 kHz, Mono). |
AUDIO_L16 (Streaming-Standard) |
Linear PCM (audio/l16) |
Headerloser roher 16-Bit-PCM-Stream mit vorzeichenbehafteter Ganzzahl und Little Endian. Für Streaming, benutzerdefinierte Audio-Pipelines oder das Verketten von Mehrfachdialog-Clips. |
AUDIO_MULAW |
μ-law (audio/mulaw) |
G.711 μ-law-komprimiertes Audio (8 kHz, Mono), das häufig in der nordamerikanischen und japanischen Telefonie verwendet wird. |
AUDIO_ALAW |
A-law (audio/alaw) |
G.711 A-law-kompandiertes Audio (8 kHz, Mono), das häufig in der europäischen und internationalen Telefonie verwendet wird. |
Die Modelle ignorieren das Feld sampleRate. Die Ausgabe von linearer PCM und WAV erfolgt mit 24 kHz und die Ausgabe von μ-law und A-law mit 8 kHz, unabhängig von der Rate in der Antwort mimeType. Führen Sie auf dem Client ein Resampling der Ausgabe durch, wenn für Ihre Pipeline eine andere Stichprobenrate erforderlich ist.
Im folgenden Beispiel wird die μ-law-Ausgabe für eine Telefonie-Pipeline angefordert. Das Google Gen AI SDK for Python macht responseFormat in GenerateContentConfig nicht verfügbar. Daher wird es im Python-Beispiel mit http_options.extra_body im Anfragebody übergeben.
Python
from google import genai
client = genai.Client(enterprise=True, project="PROJECT_ID", location="global")
response = client.models.generate_content(
model="gemini-3.8-flash-tts",
contents=[{"role": "user", "parts": [{"text": "Have a wonderful day!"}]}],
config={
"response_modalities": ["AUDIO"],
"speech_config": {"voice_config": {"voice": "Kore"}},
"http_options": {
"extra_body": {
"generationConfig": {
"responseFormat": [{"audio": {"mimeType": "AUDIO_MULAW"}}]
}
}
},
},
)
# The response is headerless μ-law audio at 8 kHz, mono.
with open("out.mulaw", "wb") as f:
f.write(response.candidates[0].content.parts[0].inline_data.data)
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.8-flash-tts:generateContent \
-d '{
"contents": [{"role": "user", "parts": [{"text": "Have a wonderful day!"}]}],
"generationConfig": {
"responseModalities": ["AUDIO"],
"responseFormat": [{"audio": {"mimeType": "AUDIO_MULAW"}}],
"speechConfig": {
"voiceConfig": {"voice": "Kore"}
}
}
}' | jq -r '.candidates[0].content.parts[0].inlineData.data' | base64 --decode > out.mulaw
Unterstützte Sprachen
Die Gemini 3.8-TTS-Modelle erkennen die Eingabesprache automatisch. Gemini 3.8 Flash TTS unterstützt 130 Sprachen und Gemini 3.8 Flash-Lite TTS unterstützt 101 Sprachen:
Beschränkungen
- Die TTS-Modelle akzeptieren nur Texteingaben und geben nur Audioausgaben zurück.
- Für Anfragen mit mehreren Sprechern sind genau zwei Sprecher erforderlich. Wenn Sie entworfene (
voice_...) oder replizierte (voice_...odervoicekey_...) Stimmen in einem Dialog mit mehreren Figuren kombinieren oder mehr als zwei Sprecher verwenden möchten, müssen Sie die Äußerungen der einzelnen Sprecher separat synthetisieren und die Audioinhalte zusammenfügen. Fordern Sie für jeden Turn eineAUDIO_L16-Ausgabe an oder entfernen Sie den WAV-Header aus jedem Clip, bevor Sie die Clips zusammenfügen. - Die Modelle sind nur am Standort
globalverfügbar. - Systemanweisungen werden nicht unterstützt.
- Die Ausgabestichprobenrate kann nicht festgelegt werden. Die Ausgabe in MP3 und Ogg Opus wird nicht unterstützt.
Nächste Schritte
- Weitere Informationen
- Mit Voice Design können Sie benutzerdefinierte Stimmen aus einer Textbeschreibung erstellen.
- Die Stimme eines Sprechers mit der Stimmreplikation replizieren.
- Die Modellspezifikationen finden Sie auf den Modellseiten Gemini 3.8 Flash TTS und Gemini 3.8 Flash-Lite TTS.