Gjenerimi i tekstit në të folur (TTS)
API-ja Gemini mund ta transformojë tekstin e futur në audio nga një ose shumë altoparlantë duke përdorur aftësitë e gjenerimit të tekstit në të folur (TTS) të Gemini. Gjenerimi i tekstit në të folur (TTS) është i kontrollueshëm , që do të thotë se mund të përdorni gjuhën natyrore për të strukturuar ndërveprimet dhe për të udhëhequr stilin , theksin , ritmin dhe tonin e audios.
Aftësia TTS ndryshon nga gjenerimi i të folurit i ofruar përmes Live API , i cili është projektuar për audio interaktive, të pastrukturuar dhe hyrje dhe dalje multimodale. Ndërsa Live API shkëlqen në kontekstet dinamike të bisedave, TTS përmes Gemini API është përshtatur për skenarë që kërkojnë recitim të saktë të tekstit me kontroll të imët mbi stilin dhe tingullin, siç është gjenerimi i podkasteve ose i audiolibrave.
Ky udhëzues ju tregon se si të gjeneroni audio me një dhe shumë altoparlantë nga teksti.
Para se të filloni
Sigurohuni që të përdorni një variant modeli Gemini 2.5 me aftësi tekst-në-fjalë (TTS) Gemini, siç listohen në seksionin Modelet e mbështetura . Për rezultate optimale, merrni në konsideratë se cili model i përshtatet më mirë rastit tuaj specifik të përdorimit.
Mund ta gjeni të dobishme të [testoni modelet Gemini 2.5 TTS në AI Studio]
TTS me një folës të vetëm
Për të konvertuar tekstin në audio me një altoparlant të vetëm, caktoni modalitetin e përgjigjes në "audio" dhe kaloni një objekt speech_config me një emër zëri. Do t'ju duhet të zgjidhni një emër zëri nga zërat e daljes të parapërgatitur.
Ky shembull ruan audion dalëse nga modeli në një skedar wave:
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();
PUSHTIM
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 me shumë folës
Për audio me shumë altoparlantë, do t'ju duhet një objekt multi_speaker_voice_config me secilin altoparlant (deri në 2) të konfiguruar si një speaker_voice_config . Do t'ju duhet të përcaktoni secilin speaker me të njëjtat emra të përdorur në njoftim :
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();
PUSHTIM
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" }
]
}'
Kontrolloni stilin e të folurit me anë të udhëzimeve
Mund të kontrolloni stilin, tonin, theksin dhe ritmin duke përdorur udhëzimet e gjuhës natyrore si për TTS me një folës ashtu edhe me shumë folës. Për shembull, në një kërkesë me një folës të vetëm, mund të thoni:
Say in an spooky whisper:
"By the pricking of my thumbs...
Something wicked this way comes"
Në një kërkesë për shumë folës, jepini modelit emrin e secilit folës dhe transkriptin përkatës. Gjithashtu mund të jepni udhëzime për secilin folës individualisht:
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!
Provo të përdorësh një opsion zëri që korrespondon me stilin ose emocionin që dëshiron të përcjellësh, për ta theksuar atë edhe më shumë. Në pyetjen e mëparshme, për shembull, frymëmarrja e Enceladus mund të theksojë "i lodhur" dhe "i mërzitur", ndërsa toni optimist i Puck mund të plotësojë "i ngazëllyer" dhe "i lumtur".
Gjenero një kërkesë për ta konvertuar në audio
Modelet TTS prodhojnë vetëm audio, por ju mund të përdorni modele të tjera për të gjeneruar së pari një transkript, pastaj t'ia kaloni atë transkript modelit TTS për ta lexuar me zë të lartë.
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();
Opsionet e zërit
Modelet TTS mbështesin 30 opsionet e mëposhtme të zërit në fushën voice_name :
| Zephyr -- I ndritshëm | Puck -- Optimist | Karoni -- Informues |
| Kore -- Firmë | Fenrir -- I emocionueshëm | Leda -- Rinor |
| Orus -- Firmë | Aoede -- Breezy | Callirrhoe -- I qetë |
| Autonoe -- E ndritshme | Enceladus -- Frymëmarrësi | Iapetus -- I Qartë |
| Umbriel -- I qetë | Algieba -- E lëmuar | Despina -- E butë |
| Erinome -- I qartë | Algenib -- Gravelly | Rasalgethi -- Informative |
| Laomedeia -- Optimiste | Achernar -- I butë | Alnilam -- Firmë |
| Schedar -- Madje | Gacrux -- I pjekur | Pulcherrima -- Përpara |
| Achird -- Miqësor | Zubenelgenubi -- I rastësishëm | Vindemiatrix -- E butë |
| Sadachbia -- Gjallë | Sadaltager -- I ditur | Sulafat -- I ngrohtë |
Mund të dëgjoni të gjitha opsionet e zërit në
Gjuhët e mbështetura
Modelet TTS e zbulojnë automatikisht gjuhën e hyrjes. Mbështeten gjuhët e mëposhtme:
| Gjuha | Kodi BCP-47 | Gjuha | Kodi BCP-47 |
|---|---|---|---|
| Arabisht | ar | Filipinase | fil |
| Banglaisht | miliardë | finlandez | fi |
| holandez | nl | galike | gl |
| Anglisht | en | gjeorgjian | ka |
| frëngjisht | fr | grek | el |
| gjermanisht | de | Guxharatisht | gu |
| Hindisht | përshëndetje | Kreolishtja e Haitit | lartësi |
| Indonezisht | ID | Hebraisht | ai |
| italiane | atë | hungareze | hu |
| Japonez | po | Islandeze | është |
| Koreane | ko | Javanisht | jv |
| Marathi | z. | Kannada | kn |
| polak | pl | Konkanisht | kok |
| portugalisht | pikë | Lao | lo |
| rumanisht | ro | latinisht | la |
| ruse | ru | letonisht | lv |
| Spanjisht | es | lituanisht | lt |
| Tamil | ta | Luksemburgase | lb |
| Teluguisht | te | maqedonase | mk |
| Tajlandeze | th | Maithili | maj |
| turk | tr | Malagasisht | mg |
| ukrainas | Mbretëria e Bashkuar | Malajisht | ms |
| Vietnamez | vi | Malajalamisht | ml |
| Afrikanisht | af | mongolisht | muaj |
| shqip | katror | Nepalisht | ne |
| Amarike | jam | Norvegjisht, Bokmål | shënim |
| armenisht | hy | Norvegjisht, Nynorsk | nn |
| Azerbajxhanisht | az | Odia | ose |
| bask | BE | Pashto | ps |
| Bjellorusisht | të jem | persisht | fa |
| bullgar | bg | Punjabi | pa |
| birmanisht | imja | serbisht | sr |
| Katalanisht | ca | Sindhi | sd |
| Cebuanisht | ceb | Sinhalisht | si |
| Kinezisht, Mandarinisht | cmn | Sllovakisht | sk |
| Kroatisht | orë | sllovenisht | sl |
| Çeke | cs | Suahili | jugperëndim |
| danez | da | suedeze | sv |
| Estonisht | etj. | Urdu | yti |
Modelet e mbështetura
| Model | Një folës i vetëm | Shumëaltoparlantë |
|---|---|---|
| Pamje paraprake e Gemini 3.1 Flash TTS | ✔️ | ✔️ |
| TTS për Pamjen e Flash-it Gemini 2.5 | ✔️ | ✔️ |
| TTS për Pamjen e Pamjes së Gemini 2.5 Pro | ✔️ | ✔️ |
Udhëzues nxitës
Modeli i Tekstit në të Folur (TTS) i Gjenerimit të Audios Native Gemini dallohet nga modelet konvencionale TTS duke përdorur një model të madh gjuhësor që di jo vetëm çfarë të thotë, por edhe si ta thotë atë .
Mund ta mendoni një kërkesë të avancuar si një udhëzim sistemi që modeli duhet të ndjekë. Është një mënyrë për t'i dhënë modelit më shumë kontekst dhe kontroll mbi performancën.
Për të zhbllokuar këtë mundësi, përdoruesit mund ta mendojnë veten si regjisorë që përgatisin një skenë për një talent zëri virtual për ta interpretuar. Për të krijuar një sugjerim, ne rekomandojmë të merrni në konsideratë komponentët e mëposhtëm: një Profil Audio që përcakton identitetin dhe arketipin thelbësor të personazhit; një përshkrim të Skenës që përcakton mjedisin fizik dhe "atmosferën" emocionale; dhe Shënimet e Regjisorit që ofrojnë udhëzime më të sakta të performancës në lidhje me stilin, theksin dhe kontrollin e ritmit.
Duke ofruar udhëzime të nuancuara, siç është një theks i saktë rajonal, karakteristika specifike paralinguistike (p.sh., frymëmarrja) ose ritmi, përdoruesit mund të shfrytëzojnë ndërgjegjësimin e kontekstit të modelit për të gjeneruar performanca audio shumë dinamike, natyrale dhe ekspresive. Për performancë optimale, ne rekomandojmë që Transkripti dhe sugjerimet regjisore të jenë në përputhje, në mënyrë që "kush po e thotë" të përputhet me "çfarë thuhet" dhe "si po thuhet".
Qëllimi i këtij udhëzuesi është të ofrojë udhëzime themelore dhe të nxisë ide gjatë zhvillimit të përvojave audio duke përdorur gjenerimin audio të Gemini TTS. Jemi të emocionuar të shohim atë që krijoni!
Etiketat audio
Etiketat janë modifikues të brendshëm si [whispers] ose [laughs] që ju japin kontroll të detajuar mbi transmetimin. Mund t'i përdorni ato për të ndryshuar tonin, ritmin dhe atmosferën emocionale të një rreshti ose pjese të transkriptit. Mund t'i përdorni gjithashtu për të shtuar ndërhyrje dhe disa tinguj të tjerë joverbalë në performancë, si [cough] , [sighs] ose [gasp] .
Nuk ka një listë të plotë se cilat etiketa funksionojnë dhe cilat jo, prandaj ne rekomandojmë të eksperimentoni me emocione dhe shprehje të ndryshme për të parë se si ndryshon rezultati.
Nëse transkripti juaj nuk është në anglisht, për rezultatet më të mira ju rekomandojmë të përdorni ende etiketa audio në anglisht.
Jini krijues me etiketat audio
Për të treguar llojin e ndryshueshmërisë që mund të merrni me etiketat audio, ja një sërë shembujsh që thonë të njëjtën gjë, por mënyra e përdorimit ndryshon në bazë të etiketave të përdorura.
Mund ta ndryshoni theksin e fjalimit duke shtuar etiketa në fillim të një rreshti për ta bërë folësin të ngazëllyer, të mërzitur ose të ngurruar:
-
[excitedly]Tungjatjeta, jam një model i ri i konvertimit të tekstit në të folur dhe mund t'i them gjërat në shumë mënyra të ndryshme. Si mund t'ju ndihmoj sot? -
[bored]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur… -
[reluctantly]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur…
Etiketat mund të përdoren gjithashtu për të ndryshuar ritmin e prezantimit ose për të kombinuar ritmin me theksin:
-
[very fast]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur… -
[very slow]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur… -
[sarcastically, one painfully slow word at a time]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur…
Gjithashtu keni kontroll të saktë mbi seksione specifike, që do të thotë se mund të pëshpëritni një pjesë dhe të bërtisni një tjetër.
-
[whispers]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur,[shouting]dhe mund t'i them gjërat në shumë mënyra të ndryshme.[whispers]Si mund t'ju ndihmoj sot?
Gjithashtu mund të eksperimentoni me çdo ide krijuese që dëshironi:
-
[like a cartoon dog]Tungjatjeta, unë jam një model i ri i tekstit në të folur… -
[like dracula]Tungjatjeta, unë jam një model i ri i konvertimit të tekstit në të folur…
Etiketat e përdorura zakonisht përfshijnë:
[amazed] | [crying] | [curious] | [excited] |
[sighs] | [gasp] | [giggles] | [laughs] |
[mischievously] | [panicked] | [sarcastic] | [serious] |
[shouting] | [tired] | [trembling] | [whispers] |
Etiketat japin kontroll të shpejtë mbi transmetimin e transkriptit tuaj. Për edhe më shumë kontroll, mund t'i kombinoni ato me një sugjerim kontekstual për të vendosur tonin dhe atmosferën e përgjithshme të performancës.
Struktura nxitëse
Një sugjerim i fuqishëm idealisht përfshin elementët e mëposhtëm që bashkohen për të krijuar një performancë të shkëlqyer:
- Profili Audio - Krijon një personalitet për zërin, duke përcaktuar identitetin e personazhit, arketipin dhe çdo karakteristikë tjetër si mosha, prejardhja etj.
- Skena - Përgatit skenën. Përshkruan si mjedisin fizik ashtu edhe "atmosferën".
- Shënime të Regjisorit - Udhëzime për performancën ku mund të analizoni udhëzimet e rëndësishme që talenti juaj virtual t'i marrë parasysh. Shembuj janë stili, frymëmarrja, ritmi, artikulimi dhe theksi.
- Shembull konteksti - I jep modelit një pikënisje kontekstuale, në mënyrë që aktori juaj virtual të hyjë natyrshëm në skenën që keni krijuar.
- Transkripti - Teksti që modeli do të flasë. Për performancën më të mirë, mos harroni se tema e transkriptit dhe stili i shkrimit duhet të korrespondojnë me udhëzimet që po jepni.
- Etiketat audio - Modifikues që mund t’i vendosni në një transkript për të ndryshuar mënyrën se si jepet ajo pjesë e tekstit, siç janë
[whispers]ose[shouting].
Shembull i kërkesës së plotë:
# 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!
Strategji të detajuara nxitëse
Zbërtheni secilin element të pyetjes si më poshtë:
Profili i audios
Përshkruani shkurtimisht personalitetin e personazhit.
- Emri. T’i japësh personazhit një emër ndihmon në bashkimin e modelit dhe performancës së ngushtë. Referoju personazhit me emër kur përcakton skenën dhe kontekstin.
- Roli. Identiteti thelbësor dhe arketipi i personazhit që po luan në skenë. p.sh., DJ radioje, podkaster, reporter lajmesh etj.
Shembuj:
# AUDIO PROFILE: Jaz R.
## "The Morning Hype"
# AUDIO PROFILE: Monica A.
## "The Beauty Influencer"
Skenë
Vendosni kontekstin për skenën, duke përfshirë vendndodhjen, gjendjen shpirtërore dhe detajet mjedisore që përcaktojnë tonin dhe atmosferën. Përshkruani se çfarë po ndodh rreth personazhit dhe si ndikon kjo tek ata. Skena ofron kontekstin mjedisor për të gjithë bashkëveprimin dhe udhëzon performancën aktoriale në një mënyrë delikate organike.
Shembuj:
## 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."
Shënime të drejtorëve
Ky seksion kritik përfshin udhëzime specifike për performancën. Mund t’i anashkaloni të gjithë elementët e tjerë, por ne ju rekomandojmë ta përfshini këtë element.
Përcaktoni vetëm atë që është e rëndësishme për performancën, duke pasur kujdes që të mos specifikoni shumë. Shumë rregulla të rrepta do të kufizojnë kreativitetin e modeleve dhe mund të rezultojnë në një performancë më të keqe. Balanconi përshkrimin e rolit dhe skenës me rregullat specifike të performancës.
Udhëzimet më të zakonshme janë Stili, Ritmi dhe Theksi , por modeli nuk kufizohet vetëm në këto, as nuk i kërkon ato. Mos ngurroni të përfshini udhëzime të personalizuara për të mbuluar çdo detaj shtesë të rëndësishëm për performancën tuaj dhe të jepni sa më shumë ose sa më pak detaje të jetë e nevojshme.
Për shembull:
### 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 |
Stili:
Përcakton tonin dhe stilin e fjalimit të gjeneruar. Përfshi gjëra të tilla si optimist, energjik, i relaksuar, i mërzitur etj., për të udhëhequr performancën. Ji përshkrues dhe jep sa më shumë detaje të jetë e nevojshme: "Entuziazëm ngjitës. Dëgjuesi duhet të ndihet sikur është pjesë e një ngjarjeje masive dhe emocionuese të komunitetit." funksionon më mirë sesa të thuash "energjik dhe entuziast".
Madje mund të provoni terma që janë të njohur në industrinë e zërit, si "buzëqeshje vokale". Mund të shtoni sa më shumë karakteristika stili që dëshironi.
Shembuj:
Emocion i thjeshtë
DIRECTORS NOTES
...
Style: Frustrated and angry developer who can't get the build to run.
...
Më shumë thellësi
DIRECTORS NOTES
...
Style: Sassy GenZ beauty YouTuber, who mostly creates content for YouTube Shorts.
...
Kompleks
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").
Theks:
Përshkruani theksin e zgjedhur. Sa më specifik të jeni, aq më të mira janë rezultatet. Për shembull, përdorni " theks britanik i anglishtes siç dëgjohet në Croydon, Angli " kundrejt " theks britanik ".
Shembuj:
### DIRECTORS NOTES
...
Accent: Southern california valley girl from Laguna Beach
...
### DIRECTORS NOTES
...
Accent: Jaz is a from Brixton, London
...
Ritmi:
Ritmi i përgjithshëm dhe ndryshimi i ritmit gjatë gjithë pjesës.
Shembuj:
E thjeshtë
### DIRECTORS NOTES
...
Pacing: Speak as fast as possible
...
Më shumë thellësi
### DIRECTORS NOTES
...
Pacing: Speaks at a faster, energetic pace, keeping up with fast paced music.
...
Kompleks
### DIRECTORS NOTES
...
Pacing: The "Drift": The tempo is incredibly slow and liquid. Words bleed into each other. There is zero urgency.
...
Provoje
Provoni vetë disa nga këto shembuj në aplikacionin TTS dhe lejoni që Gemini t'ju vendosë në karrigen e regjisorit. Mbani mend këto këshilla për të bërë performanca të shkëlqyera vokale:
- Mos harroni ta mbani të gjithë sugjerimin koherent – skenari dhe regjia shkojnë dorë për dore në krijimin e një performance të shkëlqyer.
- Mos mendo se duhet të përshkruash gjithçka, ndonjëherë t’i japësh modelit hapësirë për të plotësuar boshllëqet ndihmon natyralitetin. (Ashtu si një aktor i talentuar)
- Nëse ndonjëherë ndiheni të bllokuar, kërkojuni Binjakëve t'ju ndihmojnë të hartoni skenarin ose performancën tuaj.
Kufizime
- Modelet TTS mund të marrin vetëm hyrje teksti dhe të gjenerojnë dalje audio.
- Një seancë TTS ka një limit të dritares së kontekstit prej 32 mijë tokenësh.
- Rishikoni seksionin e Gjuhëve për mbështetje gjuhësore.
- TTS nuk mbështet transmetimin.
Kufizimet e mëposhtme zbatohen posaçërisht kur përdoret modeli Gemini 3.1 Flash TTS Preview për gjenerimin e të folurit:
- Mospërputhje zanore me udhëzimet e kërkesës: Dalja e modelit mund të mos përputhet gjithmonë në mënyrë strikte me folësin e zgjedhur, duke bërë që audioja të tingëllojë ndryshe nga sa pritet. Për të shmangur tonet e papërputhshme (siç është një zë i thellë mashkullor që përpiqet të flasë si një vajzë e re), sigurohuni që toni dhe konteksti i shkruar i kërkesës suaj të përputhen natyrshëm me profilin e folësit të zgjedhur.
- Cilësia e rezultateve më të gjata: Cilësia dhe qëndrueshmëria e të folurit mund të fillojnë të ndryshojnë me rezultatet e gjeneruara që zgjasin më shumë se disa minuta. Ne ju rekomandojmë t'i ndani transkriptet tuaja në pjesë më të vogla.
- Kthime të herëpashershme të tokenëve tekstualë: Modeli herë pas here kthen tokena tekstualë në vend të tokenave audio, duke bërë që serveri të dështojë në kërkesë me një gabim
500Meqenëse kjo ndodh rastësisht në një përqindje shumë të vogël të kërkesave, duhet të implementoni logjikën e ripërpjekjes automatike në aplikacionin tuaj për t'i trajtuar këto. - Refuzime të rreme të klasifikuesit të mesazheve: Mesazhet e paqarta mund të mos e aktivizojnë klasifikuesin e sintezës së të folurit, duke rezultuar në një kërkesë të refuzuar (
PROHIBITED_CONTENT) ose duke bërë që modeli të lexojë me zë të lartë udhëzimet tuaja të stilit dhe shënimet e regjisorit. Validoni mesazhet tuaja duke shtuar një parathënie të qartë që udhëzon modelin të sintetizojë të folurin dhe etiketoni në mënyrë të qartë se ku fillon transkriptimi aktual i folur.
Çfarë vjen më pas
- API-ja Live e Gemini ofron mundësi interaktive të gjenerimit të audios që mund t'i ndërthurni me modalitete të tjera.
- Për të punuar me hyrjet audio, vizitoni udhëzuesin e të kuptuarit të audios .