Instrumente dialog

    Generați voce cu instrumentul generate_dialogue. Alegeți unul dintre cei patru furnizori prin parametrul provider:

    • ElevenLabs v3 (provider: "elevenlabs", opțiunea implicită): 26 de voci cu nume umane, prosodia cea mai naturală. O singură voce per apel.
    • Google Gemini 3.1 Flash TTS (provider: "google" sau "gemini"): 30 de voci, peste 70 de limbi, un prompt de stil în limbaj natural și etichete expresive inline ([sigh], [laughing], [whispering], [shouting], [extremely fast], [like dracula]) care sunt efectiv interpretate. O singură voce per apel.
    • Gemini 3.8 Flash TTS (provider: "gemini-3.8"): o conversație între doi vorbitori într-un singur apel, cu un stil de livrare pentru fiecare replică și etichete între paranteze unghiulare, precum <laugh>. 70 de voci.
    • Seed 1.0 Audio (provider: "seed"): audio generativ pornind de la un prompt. Descrieți în proză vocile, efectele sonore și muzica în loc să alegeți o voce, iar din referințe audio puteți clona până la 3 voci.

    Tarifele diferă de la un furnizor la altul și nu sunt fixate în această documentație: citiți-le din get_models (filtru model_type: "speech") sau apelați estimate înainte de generare. ElevenLabs, Gemini 3.1 și Gemini 3.8 se facturează la 1000 de caractere; Seed se facturează pe secundă de audio generat.

    Pentru dublarea unui video existent în alte limbi, folosiți generate_dubbing de mai jos.


    #ElevenLabs v3 (implicit)

    elevenlabs/v3 acceptă aceste 26 de voci (sensibile la majuscule). Orice altă valoare este respinsă cu 400 Unsupported voice și nu se taxează creditele. Etichetele audio precum [laughs] sunt eliminate pe server înainte de sinteză (nu sunt rostite).

    #Voci feminine

    ID voceDescrierePrevizualizare
    RachelAmericancă, calmă și articulată
    AriaAmericancă, expresivă, voce răgușită
    DomiAmericancă tânără, puternică, încrezătoare
    SarahAmericancă tânără, blândă și caldă
    JaneAustraliancă matură și demnă
    JuniperAmericancă, naturală și articulată
    ArabellaNaratoare britanică misterioasă
    HopeAmericancă luminoasă și optimistă
    BlondieAmericancă, ton conversațional relaxat
    PriyankaIndianică, voce senzuală și liniștitoare
    AlexandraAmericancă tânără, conversațională
    MonikaIndianică, voce profundă și naturală

    #Voci masculine

    ID voceDescrierePrevizualizare
    DrewNarator american echilibrat
    ClydePersonaj veteran de război, voce aspră
    PaulReporter de teren, ton autoritar
    DaveBritanic tânăr, ton conversațional
    RogerAmerican elegant, ton de business
    FinPersonaj de marinar cu accent irlandez
    JamesNarator australian calm
    BradfordBritanic teatral și articulat
    ReginaldPersonaj britanic intens și dramatic
    GamingPersonaj de gaming, energic și expresiv
    AustinAmerican country, ton degajat
    KuonVoce de personaj veselă și constantă
    MarkAmerican, ton casual și relaxat
    GrimblewoodPersonaj fantasy, voce gravă și răgușită

    #Google Gemini 3.1 Flash TTS

    Transmite provider: "google". Gemini adaugă un prompt de stil în limbaj natural (setează tonul, ritmul, accentul, emoția sau un personaj) și interpretează etichetele [tags] inline în loc să le elimine. Acceptă 30 de voci (sensibile la majuscule) și coduri de limbă BCP-47.

    Etichetele inline sunt interpretate, nu eliminate: [sigh], [laughing], [uhm], [whispering], [shouting], [sarcasm], [robotic], [extremely fast], [short pause] / [medium pause] / [long pause], și etichete descriptive libere precum [like dracula] sau [excitedly].

    #Voci feminine

    ID voceCaracterPrevizualizare
    KoreFermă
    ZephyrLuminoasă
    LedaTinerească
    AoedeDegajată
    CallirrhoeRelaxată
    AutonoeLuminoasă
    DespinaFluentă
    ErinomeClară
    LaomedeiaOptimistă
    AchernarDelicată
    GacruxMatură
    PulcherrimaDirectă
    VindemiatrixBlândă
    SulafatCaldă

    #Voci masculine

    ID voceCaracterPrevizualizare
    PuckOptimist
    CharonInformativ
    FenrirExcitabil
    OrusFerm
    EnceladusRăsuflet
    IapetusClar
    UmbrielRelaxat
    AlgenibGrav
    AlgiebaFluid
    SchedarEgal
    AchirdPrietenos
    ZubenelgenubiCasual
    SadachbiaVioi
    SadaltagerInformat
    AlnilamFerm
    RasalgethiInformativ

    Limbi: Coduri BCP-47 (de ex. en-US, en-GB, es-ES, es-MX, pt-BR, fr-FR, de-DE, it-IT, ja-JP, ko-KR, hi-IN, ar-001, ru-RU, ro-RO, tr-TR, vi-VN, th-TH și peste 70 altele), sau auto pentru detectare automată. Implicit en-US. Apelați get_limits_for_model('text-to-dialogue-gemini') pentru lista completă.


    <a id="gemini-3-8"></a>

    #Gemini 3.8 Flash TTS

    Transmiteți provider: "gemini-3.8". Acesta este furnizorul potrivit pentru o conversație între două voci sau pentru o singură voce a cărei interpretare se schimbă de la o replică la alta. Rezultatul este un fișier WAV (24 kHz mono).

    • Simplu: text + voice (implicit Fola), iar style_prompt dă tonul replicii.
    • Dialog: speakers este o listă cu 1 sau 2 elemente, [{"voice": "Fola"}, {"voice": "Zephyr"}], numerotate Speaker 1 și Speaker 2 în ordine. dialogue_turns este scenariul ordonat, [{"speaker": "Speaker 1", "text": "...", "style": "slow and dry"}, ...], cu cel mult 50 de replici. Vorbitorul fiecărei replici trebuie declarat în speakers. Când există dialogue_turns, text este ignorat.
    • style pe replică (opțional): ton, emoție sau ritm descrise liber, de exemplu "tired night-shift radio host, slow and dry". Cel mult 500 de caractere pe replică și 2000 în total.
    • filler_words: true adaugă ezitări naturale, precum „ăă” sau „mm”. Funcționează doar cu doi vorbitori.
    • Etichetele folosesc paranteze unghiulare, direct în textul replicii: <laugh>, <sigh>, <whispers>, <short pause>, <long pause>, <gasp>, <chuckle>, <breath>, <cough>, <yawn> și restul celor 40 de etichete acceptate. Etichetele [pătrate] nu sunt interpretate de acest model.
    • Fără language_code: modelul deduce limba din text.
    • Limită: cel mult 5000 de caractere pentru toate replicile, etichetele incluse. Vocile sau vorbitorii necunoscuți sunt respinși înainte de facturare.
    • Facturare: la 1000 de caractere din textul replicilor, cu tot cu etichete, minimum 1 credit.

    Voci (70), grupate după utilizare:

    UtilizareVoci
    TutoreBodi, Lumi, Sadaltager, Sola, Sulafat, Varo, Zephyr
    Voiceover comercialKoda, Kore, Nika, Tavi, Zeno
    InstructajAlgenib, Despina, Erinome, Kira, Ludo, Mako, Rasalgethi, Rina
    PodcastAlnilam, Brio, Jori, Laomedeia, Rami, Veda
    PovestitorAchird, Enzo, Riko, Sami, Zali, Zubenelgenubi
    Asistent digitalAlgieba, Aoede, Autonoe, Callirrhoe, Enceladus, Gero, Iapetus, Neno, Olin, Tari, Umbriel
    Call centerAchernar, Charon, Daro, Fola, Hali, Milo, Puck
    ConciergeArlo, Cleo, Fenrir, Finn, Leda, Lora, Orus
    Suport tehnicEnya, Jett, Knox, Nyla, Sadachbia, Vindemiatrix
    ProfesionalCruz, Elio, Gacrux, Pulcherrima, Schedar, Tova, Zuri

    Apelați get_limits_for_model('gemini-3-8-flash-tts') pentru lista actuală.


    <a id="seed"></a>

    #Seed 1.0 Audio

    Transmiteți provider: "seed". Seed pornește de la un prompt: text este un „scenariu de regizor” liber, din care pot ieși împreună voci, efecte sonore și muzică de fundal, nu o voce fixă care citește cuvânt cu cuvânt. Nu există parametrul voice, etichetele [...] nu se folosesc, iar parametrii de reglaj ElevenLabs nu se aplică. Descrieți fiecare voce (gen, vârstă, accent, timbru, emoție) în proză. Încărcați skill-ul seed-audio-prompting înainte de a scrie promptul; o replică seacă dă un rezultat sec.

    • text (obligatoriu): promptul, cel mult 2048 de caractere.
    • Referințe (opțional; imaginea și audio-ul nu se pot combina):
      • o imagine, prin image_url (HTTPS) sau image_data în base64, care ghidează vocea și atmosfera; sau
      • până la 3 referințe audio pentru clonarea vocii, prin audio_references: o listă în care fiecare element este unul dintre {"audio_url": "..."}, {"audio_data": "<base64>"} sau {"speaker": "..."}, fiecare clip de cel mult 30 de secunde. Marcați fiecare voce clonată în text, în ordinea încărcării, cu <<TGT_SPK1>>, <<TGT_SPK2>>, <<TGT_SPK3>> (de exemplu Marcus (..., the actor is <<TGT_SPK1>>) says: "..."). Sunt acceptate și @Voice1, @Audio1 și @Speaker1, normalizate pe server.
    • audio_config (opțional): format (mp3, wav, ogg_opus, pcm), sample_rate, speech_rate (-50 până la 100), loudness_rate (-50 până la 100), pitch_rate (-12 până la 12).
    • Limite: fiecare referință are cel mult 10 MB, maximum 3 referințe audio sau 1 imagine, iar audio-ul generat are cel mult 120 de secunde.
    • Facturare: pe secundă de audio generat (plafonat la 120 de secunde), minimum 1 credit.

    Exemplu (Seed, două voci descrise în proză):

    {
      "provider": "seed",
      "text": "A quiet coffee shop at dawn, soft rain on the windows. A warm, low-voiced barista in her fifties says: \"First cup's on the house.\" A sleepy young man laughs and answers: \"You say that every morning.\""
    }
    

    #generate_dialogue

    Generează un clip vocal.

    Parametri:

    ParametruTipObligatoriuDescriere
    text (sau prompt)stringDa (cu excepția Gemini 3.8 cu dialogue_turns)ElevenLabs: între 5 și 5000 de caractere (după eliminarea etichetelor [bracket]). Google: până la 4000 de bytes (UTF-8), etichetele [tags] inline sunt păstrate. Gemini 3.8: până la 5000 de caractere, cu tot cu etichete. Seed: promptul, până la 2048 de caractere.
    providerstringNuelevenlabs (implicit), google (sau gemini), gemini-3.8 ori seed.
    voicestringNuID de voce pentru furnizorul ales. Implicit: Rachel (ElevenLabs) / Kore (Google) / Fola (Gemini 3.8). Nu se folosește la Seed.
    speakersarrayNuDoar Gemini 3.8. 1 sau 2 elemente {"voice": "..."}, numerotate Speaker 1 și Speaker 2 în ordine.
    dialogue_turnsarrayNuDoar Gemini 3.8. Elemente ordonate {"speaker", "text", "style"}, cel mult 50.
    filler_wordsbooleanNuDoar Gemini 3.8. Adaugă ezitări naturale; doar cu doi vorbitori. Implicit false.
    image_url / image_datastringNuDoar Seed. O referință de imagine (URL HTTPS sau base64). Nu se combină cu referințe audio.
    audio_referencesarrayNuDoar Seed. Până la 3 referințe pentru clonarea vocii.
    audio_configobjectNuDoar Seed. Formatul de ieșire, rata de eșantionare, viteza vorbirii, volumul și tonalitatea.
    style_promptstringNuGoogle și Gemini 3.8. Instrucțiune de livrare în limbaj natural (ton, ritm, accent, emoție, personaj). Google: până la 4000 de bytes; text + style_prompt trebuie să fie ≤ 8000 de bytes în total. Implicit: Say the following. Gemini 3.8: tonul unei cereri simple, cu o singură replică.
    language_codestringNuElevenLabs: cod ISO (implicit en; 29 acceptate). Google: cod BCP-47 (implicit en-US) sau auto. Nu se folosește la Gemini 3.8 și Seed.
    stabilitynumberNuDoar ElevenLabs. 0..1, implicit 0.5. Valori mai mari = mai stabilă, mai mici = mai expresivă.
    similarity_boostnumberNuDoar ElevenLabs. 0..1, implicit 0.75.
    stylenumberNuDoar ElevenLabs. 0..1, implicit 0. Exagerare a stilului.
    speednumberNuDoar ElevenLabs. 0.7..1.2, implicit 1.0.
    previous_text / next_textstringNuDoar ElevenLabs. Context înconjurător pentru prozodie consistentă între fragmente concatenate.

    ElevenLabs elimină [HEY] / [laughs] / [whispers] înainte de sinteză. Google interpretează etichetele inline (vezi lista de etichete de mai sus).

    Exemplu (Google Gemini):

    {
      "provider": "google",
      "text": "[whispering] I have a secret. [laughing] Just kidding!",
      "voice": "Callirrhoe",
      "style_prompt": "Speak playfully, like sharing a fun secret with a friend.",
      "language_code": "en-US"
    }
    

    Exemplu (Gemini 3.8, doi vorbitori):

    {
      "provider": "gemini-3.8",
      "speakers": [{ "voice": "Fola" }, { "voice": "Zephyr" }],
      "dialogue_turns": [
        { "speaker": "Speaker 1", "text": "Ai auzit? <short pause> S-a mișcat ceva.", "style": "nervous, whispering" },
        { "speaker": "Speaker 2", "text": "<laugh> E pisica. Mereu e pisica.", "style": "amused, relaxed" }
      ],
      "filler_words": true
    }
    

    Exemplu (ElevenLabs):

    {
      "text": "Bun venit înapoi, ești gata să generezi?",
      "voice": "Rachel",
      "stability": 0.5,
      "language_code": "ro"
    }
    

    Răspuns: Întoarce un generation_id. Verificați progresul cu get_status.

    #Scene cu mai multe voci

    Pentru o conversație între doi vorbitori, folosiți Gemini 3.8 (provider: "gemini-3.8") cu speakers și dialogue_turns: întregul schimb de replici vine într-un singur fișier. Și Seed poate da glas mai multor personaje într-un singur prompt. ElevenLabs și Gemini 3.1 sunt monovoce: apelați instrumentul o dată per replică (ElevenLabs: transmițând previous_text / next_text pentru continuitate prosodică) și concatenați apoi fișierele audio rezultate.

    #get_status

    Folosiți generation_id returnat de generate_dialogue pentru a verifica progresul. Când statusul este completed, URL-ul fișierului audio se află în array-ul outputs (media_type: "audio").


    <a id="generate_dubbing"></a>

    #generate_dubbing

    Traduce și redublează vorbirea care există deja într-un video și întoarce câte un MP4 dublat pentru fiecare limbă. Două motoare: sonilo-dubbing (implicit) și elevenlabs-dubbing (ElevenLabs, peste 90 de limbi, inclusiv româna, clonarea vocii, un preț pe secundă mai mic). Nu creează muzică, efecte sau subtitrări și nu poate adăuga vorbire unui clip fără sunet. Este cel mai scump model de pe platformă, iar generările nu pot fi rambursate, așa că cereți întâi o cotație cu estimate și acordul explicit al utilizatorului.

    Parametri:

    ParametruTipObligatoriuDescriere
    video_urlstringDaURL HTTPS al clipului, cel mult 300 de secunde. Pentru un fișier local, apelați get_upload_url(model_id=<id-ul motorului>), lăsați utilizatorul să încarce fișierul, apoi get_upload_session(token); încărcarea pe această cale măsoară și durata, ceea ce face prețul exact.
    languagesarrayDaUna sau mai multe dintre en, zh_cn, ja, ko, pt, pt_br, es, es_419, de, fr, it, ru, th, ar, tr, vi, id. Fără valoare implicită. pt_br este portugheza braziliană, iar es_419 spaniola latino-americană; pt și es simple sunt opțiuni separate, nu sinonime. Româna nu este disponibilă pe Sonilo. Pentru elevenlabs-dubbing: coduri BCP-47 precum es, es-MX, pt-BR, fr-CA, ro, pl, hi, între 1 și 10 pe rulare; lista completă este în get_models. Întrebați utilizatorul ce limbi vrea, pentru că fiecare se taxează integral.
    modelstringNusonilo-dubbing (implicit) sau elevenlabs-dubbing. Opțiunile unui motor sunt refuzate pe celălalt.
    duckingbooleanNuDoar Sonilo. Coboară muzica și efectele clipului cât timp vorbește vocea dublată. Gratuit, implicit false.
    source_languagestringNuDoar ElevenLabs. Limba vorbită în clip sau auto (implicit) pentru detectare automată.
    cloning_strengthintegerNuDoar ElevenLabs. Între 0 și 10, implicit 7: cât de fidel clonează vocile dublate vorbitorii originali. O valoare mai mică dă o rostire mai naturală în limba țintă.
    duration_secondsnumberNuDurata clipului, dacă nu e deja cunoscută dintr-o încărcare sau dintr-o generare proprie.

    Facturare: secundele clipului înmulțite cu numărul de limbi, la tariful pe secundă al motorului ales. Sonilo aplică un minim de 10 secunde totalului, nu fiecărei limbi; ElevenLabs nu are minim. Trei limbi costă de trei ori cât una. Cereți cotația cu estimate(model=<id-ul motorului>, reference_video_seconds=<secundele clipului>, variant_count=<numărul de limbi>).

    Răspuns: {generation_id, status: "pending", languages}. Verificați cu get_status până la completed sau failed: interogarea este și cea care încheie rularea, așa că mergeți până la capăt. Câmpul metadata.language al fiecărui rezultat indică limba.


    #Credite și limite

    • Cost: citiți tariful curent din get_models sau apelați estimate; tarifele diferă de la un furnizor la altul. ElevenLabs, Gemini 3.1 și Gemini 3.8 se facturează la 1000 de caractere (rotunjire: zecimal ≤ 0.3 în jos, > 0.3 în sus; la Gemini 3.8 etichetele contează ca și caractere). Seed se facturează pe secundă de audio generat, plafonat la 120 de secunde.
    • Minim: 1 credit pentru orice cerere nevidă.
    • Lungime minimă: 5 caractere după eliminarea etichetelor audio.
    • Lungime maximă: ElevenLabs 5000 de caractere; Google 4000 de bytes pentru text (și ≤ 8000 de bytes pentru text + style_prompt combinate); Gemini 3.8 5000 de caractere pentru toate replicile, cu tot cu etichete; Seed 2048 de caractere de prompt.

    Vedeți Limitări pentru detalii complete.