Text-zu-Sprache-Generierung (TTS)
Mit der Gemini API kann Texteingabe mithilfe der Gemini-TTS-Funktionen (Text-to-Speech) in Audio für einen einzelnen Sprecher oder mehrere Sprecher umgewandelt werden. Die TTS-Generierung (Text-to-Speech) ist steuerbar. Das bedeutet, dass Sie mit natürlicher Sprache Interaktionen strukturieren und Stil, Akzent, Tempo und Ton des Audiosignals festlegen können.
Die TTS-Funktion unterscheidet sich von der Sprachgenerierung über die Live API, die für interaktive, unstrukturierte Audio- sowie multimodale Ein- und Ausgaben konzipiert ist. Während sich die Live API durch dynamische Konversationskontexte auszeichnet, ist TTS über die Gemini API für Szenarien konzipiert, in denen eine genaue Textwiedergabe mit detaillierter Steuerung von Stil und Klang erforderlich ist, z. B. bei der Generierung von Podcasts oder Hörbüchern.
In dieser Anleitung erfahren Sie, wie Sie Audio mit einem oder mehreren Sprechern aus Text generieren.
Hinweis
Achten Sie darauf, dass Sie eine Gemini 2.5-Modellvariante mit Gemini-TTS-Funktionen (Text-zu-Sprache) verwenden, wie im Abschnitt Unterstützte Modelle aufgeführt. Für optimale Ergebnisse sollten Sie überlegen, welches Modell am besten zu Ihrem spezifischen Anwendungsfall passt.
Es kann hilfreich sein, [die Gemini 2.5-TTS-Modelle in AI Studio zu testen].
TTS mit einem einzelnen Sprecher
Wenn Sie Text in Audio mit einem einzelnen Sprecher umwandeln möchten, legen Sie die Antwortmodalität auf „audio“ fest und übergeben Sie ein speech_config-Objekt mit einem Sprachnamen.
Sie müssen einen Namen für die Stimme aus den vordefinierten Ausgabestimmen auswählen.
In diesem Beispiel wird die Audioausgabe des Modells in einer WAV-Datei gespeichert:
Python
from google import genai
import wave
def wave_file(filename, pcm, channels=1, rate=24000, sample_width=2):
with wave.open(filename, "wb") as wf:
wf.setnchannels(channels)
wf.setsampwidth(sample_width)
wf.setframerate(rate)
wf.writeframes(pcm)
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.1-flash-tts-preview",
input="Say cheerfully: Have a wonderful day!",
response_modalities=["audio"],
speech_config=[
{"voice": "Kore"}
]
)
data = None
for step in interaction.steps:
for content_block in step.content:
if content_block.type == "audio":
data = content_block.data
break
if data:
break
wave_file('out.wav', data)
JavaScript
import {GoogleGenAI} from '@google/genai';
import wav from 'wav';
async function saveWaveFile(
filename,
pcmData,
channels = 1,
rate = 24000,
sampleWidth = 2,
) {
return new Promise((resolve, reject) => {
const writer = new wav.FileWriter(filename, {
channels,
sampleRate: rate,
bitDepth: sampleWidth * 8,
});
writer.on('finish', resolve);
writer.on('error', reject);
writer.write(pcmData);
writer.end();
});
}
async function main() {
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
model: "gemini-3.1-flash-tts-preview",
input: "Say cheerfully: Have a wonderful day!",
response_modalities: ['audio'],
speech_config: [
{ voice: 'Kore' }
],
});
let data = null;
for (const step of interaction.steps) {
for (const contentBlock of step.content) {
if (contentBlock.type === 'audio') {
data = contentBlock.data;
break;
}
}
if (data) break;
}
const audioBuffer = Buffer.from(data, 'base64');
await saveWaveFile('out.wav', audioBuffer);
}
await main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-tts-preview",
"input": "Say cheerfully: Have a wonderful day!",
"response_modalities": ["audio"],
"speech_config": [
{ "voice": "Kore" }
]
}'
TTS mit mehreren Sprechern
Für Audio mit mehreren Sprechern benötigen Sie ein multi_speaker_voice_config-Objekt, in dem jeder Sprecher (bis zu 2) als speaker_voice_config konfiguriert ist.
Sie müssen jedes speaker mit denselben Namen definieren, die im Prompt verwendet werden:
Python
from google import genai
import wave
def wave_file(filename, pcm, channels=1, rate=24000, sample_width=2):
with wave.open(filename, "wb") as wf:
wf.setnchannels(channels)
wf.setsampwidth(sample_width)
wf.setframerate(rate)
wf.writeframes(pcm)
client = genai.Client()
prompt = """TTS the following conversation between Joe and Jane:
Joe: How's it going today Jane?
Jane: Not too bad, how about you?"""
interaction = client.interactions.create(
model="gemini-3.1-flash-tts-preview",
input=prompt,
response_modalities=["audio"],
speech_config=[
{"speaker": "Joe", "voice": "Kore"},
{"speaker": "Jane", "voice": "Puck"}
]
)
data = None
for step in interaction.steps:
for content_block in step.content:
if content_block.type == "audio":
data = content_block.data
break
if data:
break
wave_file('out.wav', data)
JavaScript
import {GoogleGenAI} from '@google/genai';
import wav from 'wav';
async function saveWaveFile(
filename,
pcmData,
channels = 1,
rate = 24000,
sampleWidth = 2,
) {
return new Promise((resolve, reject) => {
const writer = new wav.FileWriter(filename, {
channels,
sampleRate: rate,
bitDepth: sampleWidth * 8,
});
writer.on('finish', resolve);
writer.on('error', reject);
writer.write(pcmData);
writer.end();
});
}
async function main() {
const client = new GoogleGenAI({});
const prompt = `TTS the following conversation between Joe and Jane:
Joe: How's it going today Jane?
Jane: Not too bad, how about you?`;
const interaction = await client.interactions.create({
model: "gemini-3.1-flash-tts-preview",
input: prompt,
response_modalities: ['audio'],
speech_config: [
{ speaker: 'Joe', voice: 'Kore' },
{ speaker: 'Jane', voice: 'Puck' }
]
});
let data = null;
for (const step of interaction.steps) {
for (const contentBlock of step.content) {
if (contentBlock.type === 'audio') {
data = contentBlock.data;
break;
}
}
if (data) break;
}
const audioBuffer = Buffer.from(data, 'base64');
await saveWaveFile('out.wav', audioBuffer);
}
await main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-tts-preview",
"input": "TTS the following conversation between Joe and Jane: Joe: Hows it going today Jane? Jane: Not too bad, how about you?",
"response_modalities": ["audio"],
"speech_config": [
{ "speaker": "Joe", "voice": "Kore" },
{ "speaker": "Jane", "voice": "Puck" }
]
}'
Sprachstil mit Prompts steuern
Sie können Stil, Ton, Akzent und Tempo sowohl für TTS mit einem als auch mit mehreren Sprechern über Prompts in natürlicher Sprache steuern. Bei einem Prompt mit nur einem Sprecher können Sie beispielsweise Folgendes sagen:
Say in an spooky whisper:
"By the pricking of my thumbs...
Something wicked this way comes"
Geben Sie in einem Prompt mit mehreren Sprechern den Namen jedes Sprechers und das entsprechende Transkript an. Sie können auch für jeden Lautsprecher einzeln Anweisungen geben:
Make Speaker1 sound tired and bored, and Speaker2 sound excited and happy:
Speaker1: So... what's on the agenda today?
Speaker2: You're never going to guess!
Verwenden Sie eine Stimmoption, die dem Stil oder der Emotion entspricht, die Sie vermitteln möchten, um diese noch stärker zu betonen. Im vorherigen Prompt könnte beispielsweise die gehauchte Stimme von Enceladus die Wörter „müde“ und „gelangweilt“ betonen, während der fröhliche Ton von Puck die Wörter „aufgeregt“ und „glücklich“ ergänzen könnte.
Prompt zum Konvertieren in Audio generieren
Die TTS-Modelle geben nur Audio aus. Sie können jedoch andere Modelle verwenden, um zuerst ein Transkript zu generieren, das Sie dann dem TTS-Modell zum Vorlesen übergeben.
Python
from google import genai
client = genai.Client()
transcript_interaction = client.interactions.create(
model="gemini-3-flash-preview",
input="""Generate a short transcript around 100 words that reads
like it was clipped from a podcast by excited herpetologists.
The hosts names are Dr. Anya and Liam."""
)
transcript = transcript_interaction.steps[-1].content[0].text
tts_interaction = client.interactions.create(
model="gemini-3.1-flash-tts-preview",
input=transcript,
response_modalities=["audio"],
speech_config=[
{"speaker": "Dr. Anya", "voice": "Kore"},
{"speaker": "Liam", "voice": "Puck"}
]
)
# ...Code to stream or save the output
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
async function main() {
const transcriptInteraction = await client.interactions.create({
model: "gemini-3-flash-preview",
input: "Generate a short transcript around 100 words that reads like it was clipped from a podcast by excited herpetologists. The hosts names are Dr. Anya and Liam.",
})
const ttsInteraction = await client.interactions.create({
model: "gemini-3.1-flash-tts-preview",
input: transcriptInteraction.steps.at(-1).content[0].text,
response_modalities: ['audio'],
speech_config: [
{ speaker: "Dr. Anya", voice: "Kore" },
{ speaker: "Liam", voice: "Puck" }
]
});
}
// ..JavaScript code for exporting .wav file for output audio
await main();
Stimmoptionen
TTS-Modelle unterstützen die folgenden 30 Sprachoptionen im Feld voice_name:
| Zephyr – Hell | Puck – Upbeat | Charon – Informative |
| Kore – Firm | Fenrir – Leicht aufgeregt | Leda – Jugendlich |
| Orus – Unternehmen | Aoede – Breezy | Callirrhoe – Gelassen |
| Autonoe – Hell | Enceladus – Breathy | Iapetus – Clear |
| Umbriel – Gelassen | Algieba – Smooth | Despina – Smooth |
| Erinome – Wolkenlos | Algenib – Kiesig | Rasalgethi – Informativ |
| Laomedeia – Upbeat | Achernar – Weich | Alnilam – Firm |
| Schedar – Gerade | Gacrux – Nicht jugendfrei | Pulcherrima – Vorwärts |
| Achird – Freundlich | Zubenelgenubi – Casual | Vindemiatrix – Sanft |
| Sadachbia – Lively | Sadaltager – Sachkundig | Sulafat – Warm |
Alle Sprachoptionen können Sie sich unter
Unterstützte Sprachen
Die TTS-Modelle erkennen die Eingabesprache automatisch. Folgende Sprachen werden unterstützt:
| Sprache | BCP-47-Code | Sprache | BCP-47-Code |
|---|---|---|---|
| Arabisch | ar | Filipino | fil |
| Bengalisch | bn | Finnisch | fi |
| Niederländisch | nl | Galizisch | gl |
| Englisch | de | Georgisch | ka |
| Französisch | fr | Griechisch | el |
| Deutsch | de | Gujarati | gu |
| Hindi | hi | Haitianisch | ht |
| Indonesisch | id | Hebräisch | er |
| Italienisch | it | Ungarisch | hu |
| Japanisch | ja | Isländisch | ist |
| Koreanisch | ko | Javanisch | jv |
| Marathi | mr | Kannada | kn |
| Polnisch | pl | Konkani | kok |
| Portugiesisch | pt | Lao | lo |
| Rumänisch | ro | Latin | la |
| Russisch | ru | Lettisch | lv |
| Spanisch | es | Litauisch | lt |
| Tamil | ta | Luxemburgisch | lb |
| Telugu | te | Mazedonisch | mk |
| Thailändisch | th | Maithili | mai |
| Türkisch | tr | Malagasy | mg |
| Ukrainisch | uk | Malaiisch | ms |
| Vietnamesisch | vi | Malayalam | ml |
| Afrikaans | af | Mongolisch | mn |
| Albanisch | sq | Nepalesisch | ne |
| Amharisch | am | Norwegisch (Bokmål) | nb |
| Armenisch | hy | Norwegisch (Nynorsk) | nn |
| Aserbaidschanisch | az | Oriya | oder |
| Baskisch | eu | Paschtu | ps |
| Belarussisch | be | Persisch | fa |
| Bulgarisch | bg | Punjabi | pa |
| Burmesisch | my | Serbisch | sr |
| Katalanisch | ca | Sindhi | sd |
| Cebuano | ceb | Singhalesisch | si |
| Chinesisch (Mandarin) | cmn | Slowakisch | sk |
| Kroatisch | Std. | Slowenisch | sl |
| Tschechisch | cs | Swahili | sw |
| Dänisch | da | Schwedisch | sv |
| Estnisch | et | Urdu | ur |
Unterstützte Modelle
| Modell | Einzelner Sprecher | Mehrere Sprecher |
|---|---|---|
| Gemini 3.1 Flash TTS (Vorabversion) | ✔️ | ✔️ |
| Gemini 2.5 Flash Preview TTS | ✔️ | ✔️ |
| Gemini 2.5 Pro Preview TTS | ✔️ | ✔️ |
Anleitung zu Prompts
Das Modell Gemini Native Audiogenerierung Text-to-Speech (TTS) unterscheidet sich von herkömmlichen TTS-Modellen dadurch, dass es ein Large Language Model verwendet, das nicht nur weiß, was gesagt werden soll, sondern auch, wie es gesagt werden soll.
Sie können sich einen erweiterten Prompt als Systemanweisung für das Modell vorstellen. So können Sie dem Modell mehr Kontext und Kontrolle über die Leistung geben.
Um diese Funktion nutzen zu können, müssen Nutzer sich vorstellen, dass sie Regisseure sind, die eine Szene für ein virtuelles Voice-Talent festlegen. Für einen Prompt empfehlen wir, die folgenden Komponenten zu berücksichtigen: ein Audioprofil, das die Kernidentität und den Archetyp der Figur definiert, eine Szenenbeschreibung, die die physische Umgebung und die emotionale Stimmung festlegt, und Regieanweisungen, die genauere Leistungsrichtlinien in Bezug auf Stil, Akzent und Tempo bieten.
Durch die Angabe differenzierter Anweisungen wie eines präzisen regionalen Akzents, spezifischer paralinguistischer Merkmale (z.B. Behauchtheit) oder des Tempos können Nutzer die Kontextsensitivität des Modells nutzen, um sehr dynamische, natürliche und ausdrucksstarke Audioinhalte zu generieren. Für eine optimale Leistung empfehlen wir, dass das Transkript und die Regieanweisungen übereinstimmen, sodass „wer es sagt“ mit „was gesagt wird“ und „wie es gesagt wird“ übereinstimmt.
Ziel dieses Leitfadens ist es, grundlegende Anleitungen zu geben und Ideen zu wecken, wenn Sie Audioinhalte mit der Gemini TTS-Audioerstellung entwickeln. Wir sind gespannt, was Sie damit alles schaffen.
Audio-Tags
Tags sind Inline-Modifikatoren wie [whispers] oder [laughs], mit denen Sie die Auslieferung detailliert steuern können. Damit können Sie den Ton, das Tempo und die emotionale Stimmung einer Zeile oder eines Abschnitts des Transkripts ändern. Sie können damit auch Zwischenrufe und einige andere nicht verbale Geräusche wie [cough], [sighs] oder [gasp] hinzufügen.
Es gibt keine vollständige Liste der Tags, die funktionieren und nicht funktionieren. Wir empfehlen, mit verschiedenen Emotionen und Ausdrücken zu experimentieren, um zu sehen, wie sich die Ausgabe ändert.
Wenn Ihr Transkript nicht auf Englisch ist, empfehlen wir, trotzdem englische Audio-Tags zu verwenden, um optimale Ergebnisse zu erzielen.
Kreative Audiotags
Um zu zeigen, welche Art von Variabilität mit Audio-Tags möglich ist, finden Sie hier eine Reihe von Beispielen, die alle dasselbe aussagen, aber je nach verwendeten Tags unterschiedlich formuliert sind.
Sie können die Betonung der Wiedergabe ändern, indem Sie am Anfang einer Zeile Tags hinzufügen, um den Sprecher aufgeregt, gelangweilt oder widerwillig klingen zu lassen:
[excitedly]Hallo, ich bin ein neues Text-zu-Sprache-Modell und kann Dinge auf viele verschiedene Arten sagen. Was kann ich für Sie tun?[bored]Hallo, ich bin ein neues Text-zu-Sprache-Modell…[reluctantly]Hallo, ich bin ein neues Text-zu-Sprache-Modell…
Tags können auch verwendet werden, um das Tempo der Wiedergabe zu ändern oder das Tempo mit der Betonung zu kombinieren:
[very fast]Hallo, ich bin ein neues Text-zu-Sprache-Modell…[very slow]Hallo, ich bin ein neues Text-zu-Sprache-Modell…[sarcastically, one painfully slow word at a time]Hallo, ich bin ein neues Modell für die Sprachausgabe…
Außerdem hast du die Möglichkeit, bestimmte Abschnitte zu flüstern oder zu schreien.
[whispers]Hallo, ich bin ein neues Text-zu-Sprache-Modell,[shouting], und ich kann Dinge auf viele verschiedene Arten sagen.[whispers]Was kann ich für Sie tun?
Sie können auch mit jeder beliebigen kreativen Idee experimentieren:
[like a cartoon dog]Hallo, ich bin ein neues Text-zu-Sprache-Modell…[like dracula]Hallo, ich bin ein neues Text-zu-Sprache-Modell…
Häufig verwendete Tags sind:
[amazed] |
[crying] |
[curious] |
[excited] |
[sighs] |
[gasp] |
[giggles] |
[laughs] |
[mischievously] |
[panicked] |
[sarcastic] |
[serious] |
[shouting] |
[tired] |
[trembling] |
[whispers] |
Mit Tags können Sie die Zustellung Ihres Transkripts schnell steuern. Für noch mehr Kontrolle können Sie sie mit einem Kontext-Prompt kombinieren, um den allgemeinen Ton und die Stimmung der Performance festzulegen.
Prompt-Struktur
Ein guter Prompt enthält idealerweise die folgenden Elemente, die zusammen eine hervorragende Leistung ermöglichen:
- Audioprofil: Hier wird eine Persona für die Stimme erstellt, die eine Charakteridentität, einen Archetyp und andere Merkmale wie Alter, Hintergrund usw. definiert.
- Szene: Legt die Bühne fest. Beschreibt sowohl die physische Umgebung als auch die Atmosphäre.
- Hinweise des Regisseurs: Hier finden Sie Leistungsrichtlinien, in denen Sie aufschlüsseln können, welche Anweisungen für Ihr virtuelles Talent wichtig sind. Beispiele sind Stil, Atmung, Tempo, Artikulation und Akzent.
- Beispielkontext: Bietet dem Modell einen Kontext als Ausgangspunkt, damit Ihr virtueller Schauspieler auf natürliche Weise in die von Ihnen eingerichtete Szene eintritt.
- Transkript: Der Text, der vom Modell gesprochen wird. Für eine optimale Leistung sollten das Thema des Transkripts und der Schreibstil mit den Anweisungen übereinstimmen, die Sie geben.
- Audio-Tags: Modifikatoren, die Sie in ein Transkript einfügen können, um die Wiedergabe des entsprechenden Textteils zu ändern, z. B.
[whispers]oder[shouting].
Beispiel für einen vollständigen Prompt:
# AUDIO PROFILE: Jaz R.
## "The Morning Hype"
## THE SCENE: The London Studio
It is 10:00 PM in a glass-walled studio overlooking the moonlit London skyline,
but inside, it is blindingly bright. The red "ON AIR" tally light is blazing.
Jaz is standing up, not sitting, bouncing on the balls of their heels to the
rhythm of a thumping backing track. Their hands fly across the faders on a
massive mixing desk. It is a chaotic, caffeine-fueled cockpit designed to wake
up an entire nation.
### DIRECTOR'S NOTES
Style:
* The "Vocal Smile": You must hear the grin in the audio. The soft palate is
always raised to keep the tone bright, sunny, and explicitly inviting.
* Dynamics: High projection without shouting. Punchy consonants and elongated
vowels on excitement words (e.g., "Beauuutiful morning").
Pace: Speaks at an energetic pace, keeping up with the fast music. Speaks
with A "bouncing" cadence. High-speed delivery with fluid transitions - no dead
air, no gaps.
Accent: Jaz is from Brixton, London
### SAMPLE CONTEXT
Jaz is the industry standard for Top 40 radio, high-octane event promos, or any
script that requires a charismatic Estuary accent and 11/10 infectious energy.
#### TRANSCRIPT
Yes, massive vibes in the studio! You are locked in and it is absolutely
popping off in London right now. If you're stuck on the tube, or just sat
there pretending to work... stop it. Seriously, I see you. Turn this up!
We've got the project roadmap landing in three, two... let's go!
Detaillierte Prompt-Strategien
Schlüsseln Sie die einzelnen Elemente des Prompts so auf:
Audioprofil
Beschreiben Sie kurz die Persönlichkeit des Charakters.
- Name: Wenn Sie Ihrem Charakter einen Namen geben, kann das Modell die Leistung besser anpassen. Beziehen Sie sich beim Festlegen der Szene und des Kontexts auf den Charakter.
- Rolle: Die grundlegende Identität und das Archetyp des Charakters, der in der Szene dargestellt wird, z. B. Radiomoderator, Podcaster, Nachrichtenreporter usw.
Beispiele:
# AUDIO PROFILE: Jaz R.
## "The Morning Hype"
# AUDIO PROFILE: Monica A.
## "The Beauty Influencer"
Szene
Legen Sie den Kontext für die Szene fest, einschließlich Ort, Stimmung und Umgebungsdetails, die den Ton und die Atmosphäre bestimmen. Beschreibe, was um die Figur herum passiert und wie sich das auf sie auswirkt. Die Szene bietet den Umgebungs-Kontext für die gesamte Interaktion und lenkt die schauspielerische Leistung auf subtile, organische Weise.
Beispiele:
## THE SCENE: The London Studio
It is 10:00 PM in a glass-walled studio overlooking the moonlit London skyline,
but inside, it is blindingly bright. The red "ON AIR" tally light is blazing.
Jaz is standing up, not sitting, bouncing on the balls of their heels to the
rhythm of a thumping backing track. Their hands fly across the faders on a
massive mixing desk. It is a chaotic, caffeine-fueled cockpit designed to
wake up an entire nation.
## THE SCENE: Homegrown Studio
A meticulously sound-treated bedroom in a suburban home. The space is
deadened by plush velvet curtains and a heavy rug, but there is a
distinct "proximity effect."
Hinweise für Regisseure
Dieser wichtige Abschnitt enthält spezifische Leistungsrichtlinien. Sie können alle anderen Elemente überspringen, wir empfehlen jedoch, dieses Element einzufügen.
Definieren Sie nur, was für die Leistung wichtig ist, und achten Sie darauf, nicht zu viele Angaben zu machen. Zu viele strenge Regeln schränken die Kreativität der Modelle ein und können zu einer schlechteren Leistung führen. Die Rollen- und Szenenbeschreibung muss mit den spezifischen Leistungsregeln in Einklang stehen.
Die häufigsten Anweisungen sind Stil, Tempo und Akzent. Das Modell ist jedoch nicht auf diese beschränkt und erfordert sie auch nicht. Sie können benutzerdefinierte Anweisungen hinzufügen, um zusätzliche Details zu berücksichtigen, die für Ihre Leistung wichtig sind. Dabei können Sie so viele oder so wenige Details angeben, wie nötig.
Beispiel:
### DIRECTOR'S NOTES
Style: Enthusiastic and Sassy GenZ beauty YouTuber
Pacing: Speaks at an energetic pace, keeping up with the extremely fast, rapid
delivery influencers use in short form videos.
Accent: Southern california valley girl from Laguna Beach |
Stil:
Legt den Ton und Stil der generierten Sprache fest. Geben Sie beispielsweise „fröhlich“, „energisch“, „entspannt“ oder „gelangweilt“ an, um die Leistung zu beeinflussen. Sei beschreibend und gib so viele Details wie nötig an: „Ansteckende Begeisterung. Der Zuhörer sollte das Gefühl haben, Teil eines riesigen, aufregenden Community-Events zu sein.“ ist besser als „energetisch und enthusiastisch“.
Sie können sogar Begriffe aus der Voiceover-Branche wie „vocal smile“ (Stimm-Lächeln) ausprobieren. Sie können beliebig viele Stilmerkmale kombinieren.
Beispiele:
Simple Emotion
DIRECTORS NOTES
...
Style: Frustrated and angry developer who can't get the build to run.
...
Mehr Tiefe
DIRECTORS NOTES
...
Style: Sassy GenZ beauty YouTuber, who mostly creates content for YouTube Shorts.
...
Komplex
DIRECTORS NOTES
Style:
* The "Vocal Smile": You must hear the grin in the audio. The soft palate is
always raised to keep the tone bright, sunny, and explicitly inviting.
*Dynamics: High projection without shouting. Punchy consonants and
elongated vowels on excitement words (e.g., "Beauuutiful morning").
Akzent:
Beschreibe den ausgewählten Akzent. Je genauer Sie sind, desto besser sind die Ergebnisse. Verwenden Sie beispielsweise „Britischer Akzent, wie er in Croydon, England, zu hören ist“ anstelle von „Britischer Akzent“.
Beispiele:
### DIRECTORS NOTES
...
Accent: Southern california valley girl from Laguna Beach
...
### DIRECTORS NOTES
...
Accent: Jaz is a from Brixton, London
...
Budgetabstufung:
Gesamtes Pacing und Variation des Tempos im gesamten Stück.
Beispiele:
Einfach
### DIRECTORS NOTES
...
Pacing: Speak as fast as possible
...
Mehr Tiefe
### DIRECTORS NOTES
...
Pacing: Speaks at a faster, energetic pace, keeping up with fast paced music.
...
Komplex
### DIRECTORS NOTES
...
Pacing: The "Drift": The tempo is incredibly slow and liquid. Words bleed into each other. There is zero urgency.
...
Jetzt ausprobieren
Probieren Sie einige dieser Beispiele selbst in der TTS App aus und lassen Sie Gemini die Regie übernehmen. Hier sind einige Tipps für gute Gesangsleistungen:
- Achten Sie darauf, dass der gesamte Prompt kohärent ist. Das Skript und die Regie gehen Hand in Hand, um eine gute Performance zu erzielen.
- Sie müssen nicht alles beschreiben. Manchmal hilft es, dem Modell Raum zu lassen, die Lücken zu füllen, um die Natürlichkeit zu erhöhen. (Just like a talented actor)
- Wenn du einmal nicht weiterkommst, kannst du dir von Gemini helfen lassen, dein Skript oder deine Performance zu erstellen.
Beschränkungen
- TTS-Modelle können nur Texteingaben empfangen und Audioausgaben generieren.
- Eine TTS-Sitzung hat ein Kontextfenster-Limit von 32.000 Tokens.
- Im Abschnitt Sprachen finden Sie Informationen zur Sprachunterstützung.
- TTS unterstützt kein Streaming.
Die folgenden Einschränkungen gelten speziell für die Verwendung des Gemini 3.1 Flash TTS Preview-Modells für die Sprachgenerierung:
- Stimme stimmt nicht mit den Prompt-Anweisungen überein:Die Ausgabe des Modells stimmt möglicherweise nicht immer genau mit dem ausgewählten Sprecher überein, sodass sich das Audio anders anhört als erwartet. Um zu vermeiden, dass der Ton nicht zum Sprecher passt (z. B. wenn eine tiefe Männerstimme versucht, wie ein junges Mädchen zu sprechen), sollten Sie darauf achten, dass der geschriebene Ton und Kontext Ihres Prompts natürlich zum Profil des ausgewählten Sprechers passen.
- Qualität längerer Ausgaben:Die Sprachqualität und ‑konsistenz können bei generierten Ausgaben, die länger als einige Minuten sind, nachlassen. Wir empfehlen, Ihre Transkripte in kleinere Abschnitte aufzuteilen.
- Gelegentliche Rückgabe von Text-Tokens:Das Modell gibt gelegentlich Text-Tokens anstelle von Audio-Tokens zurück, was dazu führt, dass der Server die Anfrage mit einem
500-Fehler ablehnt. Da dies nur zufällig und bei einem sehr geringen Prozentsatz der Anfragen auftritt, sollten Sie in Ihrer Anwendung eine automatische Wiederholungslogik implementieren, um diese Fehler zu beheben. - Falsche Ablehnungen durch den Prompt-Klassifikator:Bei vagen Prompts wird der Sprachsynthese-Klassifikator möglicherweise nicht ausgelöst, was zu einer abgelehnten Anfrage (
PROHIBITED_CONTENT) führt oder dazu, dass das Modell Ihre Stilanweisungen und Regieanweisungen vorliest. Validieren Sie Ihre Prompts, indem Sie eine klare Präambel hinzufügen, in der das Modell angewiesen wird, Sprache zu synthetisieren, und explizit angeben, wo das eigentliche gesprochene Transkript beginnt.
Nächste Schritte
- Die Live API von Gemini bietet interaktive Optionen zur Audiogenerierung, die Sie mit anderen Modalitäten kombinieren können.
- Informationen zum Arbeiten mit Audioeingaben finden Sie im Leitfaden Verständnis von Audioinhalten.