Instrumente media

    Generează imagini și videoclipuri cu peste 40 de modele AI. Apelează întotdeauna get_models mai întâi pentru a vedea modelele disponibile, costurile și dacă un model necesită o imagine de intrare.

    Clienți REST HTTP: aceleași limite sunt centralizate în Cerințe modele API (în engleză) și în răspunsul GET /v1/models per model.

    #generate_media

    Pornește o generare de imagine sau video.

    Parametri:

    ParametruTipObligatoriuDescriere
    promptstringDaCe să genereze (ex. „Mașină roșie pe un drum de munte”).
    modelstringDaID model (de la get_models). Exemple: nano-banana, kling-2-6-image-to-video.
    generation_typestringNutext-to-image, text-to-video, image-to-video sau image-to-image. Implicit: text-to-image.
    negative_promptstringNuCe să evite în output.
    source_media_urlsstring sau arrayNuObligatoriu pentru image-to-video și image-to-image. URL-uri către imagine(i), sau pentru unele modele (ex. Kling 2.6 Motion) imagine + video. Vezi limitele de intrare mai jos. Omitere pentru text-to-image și text-to-video.
    aspect_ratiostringNuex. 1:1, 16:9, 9:16, 4:5, 21:9. Implicit: 1:1. Notă: fiecare model acceptă doar un subset — get_models returnează lista permisă.
    durationstringNuDurata video. Doar anumite modele video o folosesc. Vezi mai jos.
    qualitystringNuex. fast, standard, pro. Implicit: standard.
    resolutionstringNuTier-ul de rezoluție de ieșire. Doar anumite modele imagine îl folosesc: gpt-image-2 (1K/2K/4K), gpt-image-2-5-flare/gpt-image-2-5-sunburst (1K/2K/4K), nano-banana-pro/nano-banana-2/nano-banana-2-1 (1K/2K/4K), flux-2 (1K/2K), flux-3-klein (1K/2K/4K). Fiecare tier este un SKU de preț separat; get_models returnează costul în credite per tier. Un id de tier concret, de exemplu nano-banana-2-1-4K, își păstrează tier-ul și ignoră parametrul. nano-banana-2-lite are un singur tier și nu are resolution. Ignorat de modelele la care rezoluția e codificată în model_id-ul variantei (Seedance, Kling, Veo, P-Video, FLUX 3). Vezi tabelul Tiere de rezoluție mai jos pentru constrângerile pe fiecare model.
    soundbooleanNuCând true, solicită video cu audio generat. Doar anumite modele video. Implicit: true, deci audio-ul e pornit pe orice model care îl suportă, cu excepția cazului în care trimiți false pentru un clip fără sunet. Pe unele modele audio-ul costă mai mult (Kling 2.6, Kling 3.0, Kling 3.0 Omni Frames și References); pe Seedance 2, Seedance 2.5 și FLUX 3 e gratuit. Vezi mai jos.
    seednumberNuSeed pentru rezultate reproductibile.

    Exemplu (text-to-image):

    {
      "prompt": "Un oraș futurist la apus cu mașini zburătoare",
      "model": "nano-banana",
      "generation_type": "text-to-image",
      "aspect_ratio": "16:9",
      "quality": "pro"
    }
    

    Exemplu (image-to-video, o imagine de intrare):

    {
      "prompt": "Mișcare blândă și subtilă",
      "model": "kling-2-6-image-to-video",
      "generation_type": "image-to-video",
      "source_media_urls": ["https://example.com/your-image.jpg"],
      "aspect_ratio": "16:9",
      "duration": "5s"
    }
    

    Răspuns: Include generation_id, status (ex. pending) și adesea estimated_time_seconds și estimated_cost_credits. Interoghează cu get_status până când status este completed sau failed.

    Modele care suportă duration:

    Model(e)Valori suportateObservații
    kling-2-6-text-to-video, kling-2-6-image-to-video5s, 10sOpțional cu/fără audio (variantă model).
    wan-2-7-720p, wan-2-7-1080p (text-to-video, image-to-video)2s–15s (întreg, per secundă)Tarifare PER SECUNDĂ; rezoluția e codificată în model_id. Pasează duration (2–15) + generation_type.
    wan-3-0-480p, wan-3-0-720p, wan-3-0-1080p, wan-3-0-prime-480p, wan-3-0-prime-720p, wan-3-0-prime-1080p (text-to-video, image-to-video, reference-to-video)2s–30s (întreg, per secundă)Tarifare PER SECUNDĂ pe ambele niveluri; nivelul și rezoluția sunt codificate în model_id. Pasează duration (2–30) + generation_type. Când trimiți videoclipuri de referință, furnizorul limitează și durata intrării plus durata ieșirii la 30s.
    grok-imagine-video-1-5-preview-480p, grok-imagine-video-1-5-preview-720p (image-to-video)2s până la 15s (întreg, per secundă)Tarifare PER SECUNDĂ; rezoluția e codificată în model_id. Doar image-to-video: cere exact 1 URL de imagine în source_media_urls. Pasează duration (2 până la 15); aspect_ratio opțional (implicit auto).
    v1-pro-fast-i2v5s, 10s
    seedance-2 (Standard) / seedance-2-fast (Fast)întreg 4–15 secundeTier-ul este chiar familia de model — folosește seedance-2-fast pentru tier-ul ieftin și rapid, seedance-2 pentru cel de calitate mai înaltă. Fiecare familie expune model_ids concrete per rezoluție și combinație cu video de referință (ex. seedance-2-fast-480p, seedance-2-480p-video-ref). Pasează variantele complete la generate_media; o etichetă de familie singură întoarce o eroare variant_required cu opțiunile. Referințe multimodale (imagini/videouri/audio) în text-to-video; keyframe în image-to-video. Facturarea se modifică când trimiți video de referință — vezi secțiunea Seedance 2.
    gemini-omni-video (Google)4, 6, 8, 10 (incluse în id-ul variantei)Doar durate discrete — parametrul duration este ignorat; rezoluția este și ea inclusă în id-ul variantei (gemini-omni-video-720p-6s, gemini-omni-video-1080p-6s, gemini-omni-video-4k-10s, etc.). Trei variante video-ref (gemini-omni-video-720p-video-ref, gemini-omni-video-1080p-video-ref, gemini-omni-video-4k-video-ref) preiau durata din clipul sursă tăiat (≤ 10s). Pasarea etichetei de familie gemini-omni-video întoarce o eroare variant_required cu cele 15 opțiuni.
    grok-text-to-video-6s6s fixParametrul duration este ignorat.
    kling-3-0-turbo-720p, kling-3-0-turbo-1080p (text-to-video, image-to-video)3s–15s (întreg, per secundă)Frate mai rapid și mai simplu al Kling 3.0. Tarifare PER SECUNDĂ; rezoluția e codificată în model_id. Pasează duration (3–15) + generation_type. Include audio sincronizat (mereu activ); fără multi-cadru, fără @elemente.
    kling-3-0-4k (text-to-video, image-to-video)3s până la 15s (întreg, per secundă)Tier-ul Kling 3.0 cu cea mai mare rezoluție. Audio-ul e inclus la un singur tarif per secundă, deci parametrul sound nu schimbă prețul și nu există rând -audio.
    kling-3-0-omni-frames-720p, -1080p, -4k (fiecare și cu -audio) și kling-3-0-omni-ref-720p, -1080p, -4k (fiecare și cu -audio sau -video)3s până la 15s (întreg, per secundă)Benzile Frames și References din Kling 3.0 Omni. Se facturează durata pe care o trimiți. Excepție: o cerere References care conține doar un video nu primește duration și se facturează lungimea clipului.
    kling-3-0-omni-720p, kling-3-0-omni-1080p, kling-3-0-omni-4k (video-to-video)NeconfigurabilBanda Transform din Kling 3.0 Omni. Ieșirea are lungimea clipului sursă (3 până la 15s), și pe aceasta o plătești, rotunjită în sus la secunda întreagă. Un duration trimis este ignorat.
    kling-4-0-720p, kling-4-0-1080p (fiecare și cu -video) (text-to-video, reference-to-video)3s până la 30s (întreg, per secundă)Kling 4.0. Tarifare PER SECUNDĂ; rezoluția este codificată în model_id. Fără video de referință se facturează durata pe care o trimiți. Cu video, vezi Kling 4.0 pentru cum se adaugă lungimea clipului la cost.
    omnihuman-2-0 (audio-to-video)Nu se poate setaOmniHuman 2.0. Videoclipul durează exact cât fișierul audio trimis (între 4 și 300 de secunde), iar această lungime se facturează, per secundă. Vezi OmniHuman 2.0.
    seedance-2-5-480p, -720p, -1080p (fiecare și cu -video-ref)4s până la 30s (întreg)Seedance 2.5, model separat de familia Seedance 2.0. Până la 30 de secunde într-o singură generare. Vezi Seedance 2.5 mai jos.
    flux-3-720p, flux-3-1080p, flux-3-720p-draft și rândurile de continuare flux-3-v2v-720p, flux-3-v2v-1080p, flux-3-v2v-720p-draft5s până la 20s (întreg, obligatoriu)FLUX 3. Tarifare PER SECUNDĂ. Lungimea automată a furnizorului nu e expusă, așa că trimite mereu duration. Vezi FLUX 3 mai jos.
    Veo 3.1 (orice id veo3-1-*, veo3-1-fast-* și veo3-1-lite-*)Fix 8sNeconfigurabil. Scrie promptul, inclusiv vocea din off, astfel încât să încapă în 8 secunde; pentru materiale mai lungi înlănțuie clipuri cu generation_type: "extend".
    grok-image-to-videoNeconfigurabilDurata nu se setează prin acest parametru.

    Pentru modele doar imagine, duration este ignorat.

    Modele care suportă negative_prompt:

    Model(e)Observații
    wan-2-7-720p, wan-2-7-1080p (text-to-video, image-to-video)Până la 500 de caractere.
    wan-3-0-480p, wan-3-0-720p, wan-3-0-1080p, wan-3-0-prime-480p, wan-3-0-prime-720p, wan-3-0-prime-1080pNu este acceptat.

    Celelalte modele ignoră negative_prompt.

    Modele care suportă quality (sau echivalent):

    Model(e)Cum funcționeazăValori
    seedream-v4-5, seedream-v4-5-editFolosește quality direct.basic (2K, implicit), high (4K).
    5-lite-text-to-image, 5-lite-image-to-imageFolosește quality direct.basic (2K, implicit), high (4K).
    Veo 3.1 calitate vs fast vs liteID-uri de model diferite, nu un singur parametru quality.Tier-ul se alege după prefixul id-ului: veo3-1-* (calitate), veo3-1-fast-* (mai rapid, mai ieftin), veo3-1-lite-* (buget). Vezi id-urile Veo 3.1.
    flux-2, flux-3-klein, nano-banana-pro, nano-banana-2, nano-banana-2-1Rezoluție (1K/2K/4K), nu un string generic „quality”.Pasează prin parametrul dedicat resolution, vezi mai jos.
    flux-3quality alege rezoluția și modul draft.720p (implicit), 1080p, 720p-draft (draft simplu e sinonim). Nu există draft la 1080p.
    seedance-2-5-480pquality: "draft" randează un preview 480p pe care îl poți finaliza apoi la 1080p.Vezi Seedance 2.5.
    gpt-image-2 (t2i + i2i)Rezoluție prin parametrul resolution.Vezi Tiere de rezoluție mai jos.
    gpt-image-2-5-flare, gpt-image-2-5-sunburst (t2i + i2i)Rezolutia prin parametrul resolution. Impartirea Flare / Sunburst este id-ul modelului, nu un parametru de calitate.Vezi Tiere de rezoluție mai jos.

    Pentru celelalte modele, quality este ignorat.

    <a id="tiere-rezolutie"></a>

    Tiere de rezoluție (parametrul resolution):

    ModelValoriPrețConstrângere
    gpt-image-2 (t2i + i2i)1K (implicit), 2K, 4KVezi get_models2K și 4K necesită un aspect_ratio explicit, non-pătrat, non-auto — unul dintre 9:16, 16:9, 4:3, 3:4. Apelarea 2K/4K cu aspect_ratio=auto sau aspect_ratio=1:1 returnează HTTP 400 (error: "aspect_ratio_incompatible_with_high_res") și creditele NU sunt reținute. 1K acceptă toate raporturile inclusiv auto/1:1.
    gpt-image-2-5-flare, gpt-image-2-5-sunburst (t2i + i2i)1K (implicit), 2K, 4KVezi get_modelsNicio restrictie de raport de aspect la niciun nivel: toate cele 13 rapoarte functioneaza la 1K, 2K si 4K deopotriva. Ambele benzi se taxeaza identic, deci alegerea este viteza vs calitatea randarii, nu pretul.
    nano-banana-21K (implicit), 2K, 4KVezi get_modelsFiecare tier este un SKU de preț separat. Lista aspect_ratio neschimbată între tier-uri.
    nano-banana-2-11K (implicit), 2K, 4KVezi get_modelsNano Banana 2.1, model separat de nano-banana-2, cu prețuri proprii. Id-urile concrete nano-banana-2-1-2K / nano-banana-2-1-4K își păstrează tier-ul și ignoră resolution. Adaugă raporturile extreme 1:4, 4:1, 1:8, 8:1.
    nano-banana-pro1K (implicit), 2K, 4KVezi get_modelsAcelași pattern ca nano-banana-2.
    flux-2, flux-2-edit1K (implicit), 2KVezi get_modelsDoar două tier-uri.
    flux-3-klein, flux-3-klein-edit1K (implicit), 2K, 4KVezi get_modelsFLUX 3 Klein, un model de IMAGINE (nu familia video FLUX 3). Dacă atașezi între 1 și 10 imagini, cererea trece pe rândurile flux-3-klein-edit*. Un id concret de tier, de exemplu flux-3-klein-4K, își păstrează tier-ul.
    nano-banana-2-liteNiciunaVezi get_modelsUn singur tier, fără parametrul resolution. Cel mai rapid și mai accesibil model Nano Banana.

    Când să alegi fiecare tier (GPT Image 2):

    • 1K — implicit. Folosește pentru postări social, thumbnail-uri, prototipare, preview-uri in-app, orice ≤ 1024 × 1024. Cel mai ieftin; fără probleme de aspect ratio.
    • 2K — folosește când clientul are nevoie de un hero web clar, copertă de newsletter, ilustrație in-product la densitate retină. Trebuie să alegi un aspect direcțional (landscape sau portrait).
    • 4K — folosește pentru print, out-of-home, bannere, sau orice caz în care utilizatorul cere explicit dimensiunea maximă. Confirmă aspectul cu utilizatorul întâi; 1:1 / auto nu vor funcționa.

    Flare vs Sunburst (GPT Image 2.5):

    • gpt-image-2-5-flare este banda rapida. Alegerea implicita pentru explorare, iterare pe prompt si generare in volum.
    • gpt-image-2-5-sunburst este banda de calitate. Mai lenta, detaliu mai curat si tipografie mai stabila. Foloseste-o pentru randari finale si tipar 4K.
    • Ambele benzi accepta aceiasi parametri, aceleasi 16 imagini de referinta, acelasi prompt de 20.000 de caractere si aceleasi 13 rapoarte de aspect, si costa la fel la fiecare nivel de rezolutie.
    • Niciuna dintre benzi nu accepta 4:5. Foloseste nano-banana-2 cand o plasare il cere.

    Modelele care nu sunt listate ignoră resolution. Pentru familiile video (Seedance, Kling, Veo, P-Video, FLUX 3, Gemini Omni) rezoluția face parte din model_id-ul variantei concrete. Pasează varianta (ex. seedance-2-fast-480p, veo3-1-fast-text-to-video-1080p, p-video-1080p, gemini-omni-video-1080p-6s), nu acest parametru.

    Limite caractere prompt:

    Unele modele impun o lungime maximă a promptului. Depășirea poate returna eroare sau truncare.

    Model(e)Caractere max
    wan-2-7-720p, wan-2-7-1080p5.000
    wan-3-0-480p, wan-3-0-720p, wan-3-0-1080p, wan-3-0-prime-480p, wan-3-0-prime-720p, wan-3-0-prime-1080p20.000
    kling-2-6 (text-to-video, image-to-video)2.500
    seedance-2 (toate variantele)4.000
    seedance-2-5 (toate variantele)10.000
    kling-3-0-4k2.500
    kling-3-0-omni (toate variantele Transform, Frames și References)3.072
    kling-4-0 (toate variantele)8.000
    omnihuman-2-0300
    flux-3 (toate variantele)5.000
    flux-3-klein (toate variantele)5.000
    seedream-v4-5, seedream-v4-5-edit3.000
    seedream-5-pro (toate variantele)2.995
    gpt-1.5-image-medium, gpt-1.5-image-high3.000
    nano-banana, flux-2, Veo 3.1 (orice id veo3-1-*), v1-pro-fast-i2v, grok (image/video), p-image-edit5.000
    nano-banana-pro (toate variantele)20.000
    nano-banana-2 (toate variantele)20.000
    nano-banana-2-1 (toate variantele), nano-banana-2-lite20.000

    Altele pot să nu aibă limită documentată sau să folosească valorile implicite ale serverului.

    Limite fișiere de intrare (imagini și video):

    Pentru image-to-video și image-to-image, source_media_urls este o listă de URL-uri. Majoritatea modelelor acceptă doar imagini (JPEG, PNG, WebP, de obicei 10 MB max per fișier). Unele modele acceptă și intrări video; când acceptă, se aplică limite de format și mărime (ex. MP4, durată max).

    Model(e)Tip intrareLimităObservații
    kling-2-6-motion-control-720p, kling-2-6-motion-control-1080pImagine + video1 imagine + 1 videoMotion Control: video-ul de referință conduce mișcarea. Video max 30 s; fișier video de obicei până la 100 MB (MP4/WebM).
    kling-3-0-motion-control-720p, kling-3-0-motion-control-1080pImagine + video1 imagine + 1 videoKling 3.0 Motion Control: la fel ca Kling 2.6. Facturare pe secundă — vezi tabelul Motion Control mai jos. Video max 30 s; fișier video de obicei până la 100 MB (MP4/WebM).
    kling-2-6-image-to-video, grok-image-to-video, v1-pro-fast-i2vDoar imagini1 imagineExact o imagine de intrare.
    wan-2-7-720p, wan-2-7-1080p (image-to-video)Doar imagini1 imaginePrimul cadru în source_media_urls; opțional last_frame_url pentru o tranziție primul+ultimul cadru.
    wan-3-0-480p, wan-3-0-720p, wan-3-0-1080p, wan-3-0-prime-480p, wan-3-0-prime-720p, wan-3-0-prime-1080pImagini, video, audio, documente10 imagini + 5 videoclipuri + 5 piste audio, SAU 1 document, SAU 1 linkCinci moduri care se exclud reciproc. Cadre: primul cadru în source_media_urls, opțional last_frame_url. Referințe: reference_image_urls (≤10), reference_video_urls (≤5, 1–15s fiecare, ≤15s în total), reference_audio_urls (≤5, aceleași limite) — menționate în prompt ca Image1, Video1, Audio1, în ordinea din tablou. Document: o intrare reference_file_urls (docx, doc, xlsx, xls, pptx, ppt, pdf, txt, key, pages, numbers, md; ≤100MB, ≤50 pagini). Link: o intrare reference_link_urls, o pagină publică fără autentificare. Un cadru nu poate fi trimis împreună cu vreo referință, iar un document nu poate fi trimis împreună cu un link.
    grok-imagine-video-1-5-preview-480p, grok-imagine-video-1-5-preview-720pDoar imagini1 imagineExact o imagine de intrare (cadrul de început). Raport de aspect: auto (implicit, preluat din imagine), 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3. Ieșirea include audio.
    kling-3-0-std, kling-3-0-proDoar imagini1–2 imaginiCadru start, sau start + final. PNG/JPG/JPEG. Suportă elemente (vezi mai jos).
    kling-3-0-turbo-720p, kling-3-0-turbo-1080p (image-to-video)Doar imagini1 imagineDoar cadru de început. PNG/JPG/JPEG. Fără elemente.
    kling-3-0-4k (image-to-video)Doar imagini1 sau 2 imaginiCadru de început, sau început + final. Omite-le pentru text-to-video.
    kling-3-0-omni-720p, -1080p, -4k (Transform)Video + imagini1 video + până la 4 imaginiVideo-ul sursă vine PRIMUL în source_media_urls. Doar video: aspect_ratio e mereu auto. Video + imagini: 16:9, 9:16 sau 1:1, iar auto e respins. Clipul sursă: MP4 sau MOV, cel mult 200 MB, între 3 și 15 secunde; un clip mai lung se taie întâi cu trim_video.
    kling-3-0-omni-frames-* (Frames)Doar imaginiExact 2 imaginiPrimul cadru, apoi ultimul. O singură imagine nu e acceptată. Raportul de aspect e mereu auto.
    kling-3-0-omni-ref-* (References)Imagini, sau video + imaginiPână la 7 imagini, SAU 1 video + până la 4 imagini, SAU doar 1 videoDoar rândurile -video acceptă un clip, iar un clip oprește sunetul, deci -audio și -video nu se combină. Imagini de referință: JPG sau PNG, cel mult 50 MB fiecare, minimum 300 px pe latură. Nicio bandă Omni nu are text-to-video: un source_media_urls gol e respins.
    kling-4-0-*Imagini + videoPână la 10 imagini + până la 5 videoclipuri, toate opționaleFără media înseamnă text-to-video. Fiecare video de referință are între 3 și 30 de secunde, maximum 30 de secunde în total. Imaginile au minimum 300 px pe latură și un raport de aspect între 0,4 și 2,5. Imaginile primesc numele @image_1, @image_2, iar videoclipurile @video_1, @video_2, în ordinea în care le trimiți. Orice cerere cu video se facturează pe rândul -video.
    omnihuman-2-0Imagine + audioExact 1 imagine + 1 audioUn portret (JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC sau HEIF, sub 30 MB, între 300 și 6000 px pe latură, raport de aspect între 0,4 și 2,5) și un fișier audio MP3 sau WAV (sub 15 MB, între 4 și 300 de secunde). Trimite-le pe amândouă în source_media_urls (fiecare e clasificat după extensia fișierului) sau separat în reference_image_urls și reference_audio_urls. Fișierul audio trebuie încărcat mai întâi în Kubeez.
    seedance-2-5 (toate variantele)Imagini + video + audioDepinde de modText-to-video: până la 30 de imagini, 10 videoclipuri (în total ≤ 30s) și 10 clipuri audio (în total ≤ 30s), toate opționale; e permisă și doar o referință audio. Image-to-video: 1 imagine (primul cadru) sau 2 (primul + ultimul), plus până la 10 clipuri audio. Fără videoclipuri de referință în acest mod, iar 3 sau mai multe imagini sunt respinse cu too_many_images.
    flux-3 (toate variantele)Imagini SAU video0 până la 10 imagini, sau 1 videoModul se deduce din intrare: fără media = text-to-video; 1 imagine deschide clipul; 2 imagini = primul + ultimul cadru; 3 până la 10 imagini = storyboard; 1 MP4 (max 50 MB, 15s) continuă acel clip pe rândurile flux-3-v2v-*. Imaginile și un video nu pot fi trimise împreună.
    flux-3-klein (toate variantele)Doar imagini0 până la 10Fără imagine = text în imagine; între 1 și 10 imagini = editare, iar aspect_ratio=auto urmează imaginea 1. JPEG, PNG sau WebP, maximum 30 MB fiecare. Imaginile de referință în plus nu costă nimic.
    seedance-2 (Standard și Fast)Imagini + video + audioDepinde de modText-to-video: până la 9 imagini de referință, până la 3 videouri de referință (durata combinată ≤ 15s) și până la 3 clipuri audio de referință (durata combinată ≤ 15s) — toate opționale. Image-to-video: 1 imagine obligatorie (primul frame) + 1 imagine opțională (ultimul frame) + până la 3 clipuri audio opționale; videourile de referință nu sunt permise în acest mod. Pune toate URL-urile în source_media_urls — backend-ul clasifică fiecare URL după extensie (.jpg/.png/.webp → imagine, .mp4/.mov/.webm → video, .mp3/.wav/.m4a → audio).
    gemini-omni-video (toate variantele)Imagini + video7 sloturi de referințăUn singur video de referință consumă 2 sloturi; imaginile umplu restul. Maxim 1 video pe cerere; primele 10 secunde ale clipului devin clipul-driver (fără parametri de trim expuși). Un video de referință necesită o variantă -video-ref — apelarea unei variante de durată cu un URL video întoarce variant_mismatch. URL-urile de fișiere audio nu sunt acceptate; vocea de ieșire se controlează prin parametrul voice_id (una dintre cele 29 de voci built-in).
    seedream-5-pro-edit, seedream-5-pro-edit-2KDoar imagini10Seedream 5.0 Pro editare / multi-referință. Setează generation_type: "image-to-image". Tier-ul este model_id-ul (seedream-5-pro-edit = 1.5K, -edit-2K = 2K); nu există parametru quality/resolution. Prima imagine de referință este inclusă; fiecare referință suplimentară adaugă +1 credit.
    nano-banana, nano-banana-editDoar imagini10
    nano-banana-pro (toate variantele)Doar imagini8
    nano-banana-2 (toate variantele)Doar imagini8
    nano-banana-2-1 (toate variantele)Doar imagini10JPEG, PNG sau WebP, max 30 MB fiecare.
    nano-banana-2-liteDoar imagini10
    p-image-editDoar imagini1–8P Image Edit (Pruna AI). Doar image-to-image — setează generation_type: "image-to-image". 1–8 URL-uri în source_media_urls. aspect_ratio: auto potrivește prima imagine, sau 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3. Opțional turbo (implicit activ). Implicit disable_safety_checker: true (moderare oprită); disable_safety_checker: false activează verificarea de siguranță. Opțional seed.
    flux-2-edit (image-to-image)Doar imagini8
    gpt-1.5-image (image-to-image)Doar imagini16
    Veo 3.1, id-urile *-text-to-videoDoar imagini0 sau 1O singură imagine opțională care fixează cadrul de început. Niciodată 2 sau mai multe.
    Veo 3.1, id-urile *-first-and-last-framesDoar imaginiExact 2Cadrul de început, apoi cel final.
    Veo 3.1, id-urile *-reference-to-videoDoar imagini1 până la 3Imagini de referință pentru aspectul vizual. Raportul de aspect e fixat la 16:9.

    Folosește get_models pentru a confirma input_media_types și capabilitățile pentru un model dat. Vezi Instrumente cont pentru listă modele și prețuri.

    Kling 3.0 – elemente (opțional):

    Elementele permit referențierea imaginilor sau videoclipurilor în prompt cu @element_name. Trimite kling_elements ca array de obiecte cu name, description și fie element_input_urls (2–4 URL-uri imagine) fie element_input_video_urls (1 URL video). Imaginile de referință pentru fiecare element vin din element_input_urls propriu; image_urls principal poate rămâne gol pentru text-to-video, sau să țină cadre opționale de start/end pentru image-to-video. Fiecare element necesită titlu (name) și descriere. Imagini element: JPG/PNG, min 300×300px, max 10MB fiecare. Video element: MP4/MOV, max 50MB.

    Seedance 2 (ByteDance) – două familii de modele, două moduri, referințe multimodale:

    Seedance 2 este livrat pe Kubeez ca trei familii de modele separate: seedance-2-fast (ieftin, rapid), seedance-2 (standard, calitate mai mare) și seedance-2-mini (cel mai ieftin, ~50% sub Fast, doar 480p/720p). Fiecare familie expune model_ids concrete per rezoluție și combinație cu video de referință; pasează varianta completă (ex. seedance-2-fast-480p, seedance-2-mini-720p, seedance-2-720p-video-ref). Pasarea doar a etichetei de familie întoarce o eroare variant_required cu opțiunile disponibile. Standard acoperă 480p, 720p, 1080p și 4K (ids de variantă seedance-2-480p / -720p / -1080p / -4k, fiecare și cu forma -video-ref); Fast și Mini doar 480p și 720p. Durată întreg între 4 și 15 secunde, și aspect ratios 1:1, 4:3, 3:4, 16:9, 9:16, 21:9 și adaptive. Prompt-ul maxim este 4.000 de caractere. Audio-ul se comută prin generate_audio (implicit true) și este gratuit, spre deosebire de Kling 3.0, care aplică un surcharge pentru audio.

    Două moduri:

    ModIntrări permiseRegulă
    Text-to-videoPână la 9 imagini de referință, până la 3 videouri de referință (durata combinată ≤ 15s), până la 3 clipuri audio de referință (durata combinată ≤ 15s).Toate referințele sunt opționale. Pune toate URL-urile în source_media_urls; backend-ul clasifică fiecare URL după extensie (.jpg/.png/.webp → imagine, .mp4/.mov/.webm → video, .mp3/.wav/.m4a → audio) și le rutează automat către bucket-ul corect.
    Image-to-video1 imagine obligatorie (primul frame) + 1 imagine opțională (ultimul frame) + până la 3 clipuri audio de referință opționale.Videourile de referință nu sunt permise în acest mod — vor fi respinse cu o eroare clară.

    Limite stricte (aplicate ca erori 400):

    • 3 videouri de referință → too_many_videos

    • 3 clipuri audio de referință → too_many_audios

    • 9 imagini de referință → too_many_images

    • Durata combinată a videourilor de referință > 15s → respinsă
    • Durata combinată a clipurilor audio de referință > 15s → respinsă
    • Un singur fișier video sau audio de referință mai lung de 15s → respins

    Două căi de facturare (important):

    Seedance 2 are două formule de cost, alese în funcție de prezența sau absența unui video de referință:

    • Fără video de referință:
      credits = output_s × rate/s
      
    • Cu video de referință (ruta providerului upstream):
      credits = (ref_s + output_s) × rate/s
      
      unde ref_s este suma duratelor tuturor videourilor de referință, limitată la 15 secunde per cerere.

    Notă importantă pentru utilizatorii MCP și REST API: Backend-ul nu poate interoga durata unui video de la distanță dintr-un URL, așa că, pentru cererile cu video de referință primite prin MCP sau REST API, facturează cel mai pesimist caz (15 secunde) pentru ref_s. Web UI-ul Kubeez măsoară durata local și facturează valorile exacte. Pentru workflow-uri sensibile la cost cu clipuri de referință scurte, recomandăm să folosești web UI-ul.

    Tarife per secundă, în timp real (extrase din catalogul ai_models_config — mereu la zi):

    ModelNumeTarifUnitate
    seedance-2-1080pSeedance 2 (1080p)87credite / sec
    seedance-2-1080p-video-refSeedance 2 (1080p, video ref)55credite / sec
    seedance-2-480pSeedance 2 (480p)22credite / sec
    seedance-2-480p-video-refSeedance 2 (480p, video ref)17credite / sec
    seedance-2-4kSeedance 2 (4K)260credite / sec
    seedance-2-4k-video-refSeedance 2 (4K, video ref)165credite / sec
    seedance-2-5-1080pSeedance 2.5142credite / sec
    seedance-2-5-1080p-video-refSeedance 2.5 (video ref)85credite / sec
    seedance-2-5-480pSeedance 2.529credite / sec
    seedance-2-5-480p-video-refSeedance 2.5 (video ref)17credite / sec
    seedance-2-5-720pSeedance 2.561credite / sec
    seedance-2-5-720p-video-refSeedance 2.5 (video ref)36credite / sec
    seedance-2-720pSeedance 2 (720p)39credite / sec
    seedance-2-720p-video-refSeedance 2 (720p, video ref)29credite / sec
    seedance-2-fast-480pSeedance 2.0 Fast19credite / sec
    seedance-2-fast-480p-video-refSeedance 2.0 Fast (video ref)15credite / sec
    seedance-2-fast-720pSeedance 2.0 Fast31credite / sec
    seedance-2-fast-720p-video-refSeedance 2.0 Fast (video ref)22credite / sec
    seedance-2-mini-480pSeedance 2 Mini12credite / sec
    seedance-2-mini-480p-video-refSeedance 2 Mini (video ref)8credite / sec
    seedance-2-mini-720pSeedance 2 Mini24credite / sec
    seedance-2-mini-720p-video-refSeedance 2 Mini (video ref)15credite / sec

    <a id="seedance-2-5"></a>

    Seedance 2.5: cadre lungi dintr-o bucată și multe referințe:

    Seedance 2.5 este cea mai nouă generație Seedance și un model separat de familia Seedance 2.0 de mai sus, cu reguli proprii. Alege-l pentru un clip lung dintr-o singură bucată (până la 30 de secunde într-o generare, fără lipire), pentru lucru intens cu referințe multiple sau când utilizatorul vrea cel mai recent model. Alege un tier 2.0 când e nevoie de 4K sau de cel mai mic tarif per secundă.

    • Id-uri de variantă: seedance-2-5-480p, seedance-2-5-720p, seedance-2-5-1080p și aceleași trei cu -video-ref pentru cererile cu video de referință. Un seedance-2-5 simplu întoarce variant_required. Nu există 4K pe 2.5.
    • Durată: întreg între 4 și 30 de secunde. Raporturi de aspect: 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive. Prompt: maximum 10.000 de caractere.
    • Text-to-video: până la 30 de imagini, 10 videoclipuri și 10 clipuri audio, toate opționale. Pune toate URL-urile în source_media_urls; fiecare e clasificat după extensie. În prompt le numești @Image 1, @Video 1, @Audio 1, numerotate în ordine în cadrul fiecărui tip.
    • Image-to-video: 1 imagine (primul cadru) sau 2 (primul + ultimul), plus până la 10 clipuri audio. Ieșirea preia mereu raportul de aspect al primului cadru, deci aspect_ratio e ignorat, și nu se acceptă alte imagini sau videoclipuri de referință. Spre deosebire de Seedance 2.0, cererea nu e redirecționată tacit spre text-to-video. Ca să fixezi primul cadru și să păstrezi referințe suplimentare, folosește text-to-video și descrie cadrul în prompt.
    • Audio: pornit implicit și gratuit; sound: false costă la fel și doar elimină pista audio.
    • Facturare: per secundă de ieșire fără video de referință. Cu video de referință furnizorul numără și secundele de intrare, cu un minim de două treimi din lungimea ieșirii, iar pentru că serverul MCP nu poate măsura un clip de la distanță, facturează cazul cel mai pesimist de 30 de secunde de referință. Cere mereu întâi o cotație cu estimate.

    Modul draft (vezi întâi un preview, plătești 1080p doar când cadrul e bun):

    1. Randează un draft cu model: "seedance-2-5-480p" (sau seedance-2-5 simplu) și quality: "draft". E un preview 480p facturat ca o randare 480p obișnuită. quality: "draft" pe un id 720p sau 1080p e respins.
    2. Când draft-ul e completed, apelează din nou generate_media cu draft_generation_id: "<generation_id-ul draft-ului>". Promptul și modelul sunt ignorate în acest apel: varianta finală refolosește promptul, referințele, durata și raportul de aspect ale draft-ului, se randează la 1080p și se facturează pe rândul seedance-2-5-1080p (sau -1080p-video-ref). Un draft poate fi finalizat timp de 7 zile, iar finalizarea aceluiași draft de două ori întoarce varianta existentă fără o a doua taxare.
    ModelNumeTarifUnitate
    seedance-2-5-1080pSeedance 2.5142credite / sec
    seedance-2-5-1080p-video-refSeedance 2.5 (video ref)85credite / sec
    seedance-2-5-480pSeedance 2.529credite / sec
    seedance-2-5-480p-video-refSeedance 2.5 (video ref)17credite / sec
    seedance-2-5-720pSeedance 2.561credite / sec
    seedance-2-5-720p-video-refSeedance 2.5 (video ref)36credite / sec

    <a id="flux-3"></a>

    FLUX 3: video cu audio sincronizat:

    FLUX 3 randează un clip cu audio sincronizat (ambient, vorbire, efecte) dintr-un singur prompt. Nu există parametru de mod: modul rezultă din ce pui în source_media_urls (vezi tabelul de limite de intrare de mai sus).

    • Id-uri: trimite flux-3 simplu și rândul e ales pentru tine din quality (720p implicit, 1080p, 720p-draft sau draft) și din faptul că ai atașat sau nu un video. Poți trimite și un id concret: flux-3-720p, flux-3-1080p, flux-3-720p-draft pentru intrare text și imagine, flux-3-v2v-720p, flux-3-v2v-1080p, flux-3-v2v-720p-draft pentru continuarea unui video. O cerere cu video se facturează mereu pe un rând flux-3-v2v-*, indiferent de id-ul trimis.
    • Continuarea costă mai mult. Rândurile -v2v- sunt separate și mai scumpe. Citește fiecare tarif din get_models sau estimate, nu presupune.
    • Durată: întreg între 5 și 20 de secunde, obligatoriu. Trimite o durată explicită și pentru storyboard-uri.
    • Raporturi de aspect: auto (implicit), 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16.
    • Audio: pornit implicit; sound: false costă la fel și doar elimină pista audio.
    ModelNumeTarifUnitate
    flux-3-1080pFLUX 382credite / sec
    flux-3-720pFLUX 348credite / sec
    flux-3-720p-draftFLUX 3 Draft17credite / sec
    flux-3-v2v-1080pFLUX 3149credite / sec
    flux-3-v2v-720pFLUX 3115credite / sec
    flux-3-v2v-720p-draftFLUX 3 Draft34credite / sec

    <a id="kling-3-0-omni"></a>

    Kling 3.0 Omni: Transform, Frames și References:

    Kling 3.0 Omni este un singur model cu trei benzi, iar id-ul variantei alege banda. Nu există text-to-video: fiecare bandă are nevoie de media în source_media_urls. Storyboard-urile și elements din Kling 3.0 nu sunt disponibile aici.

    BandăId-uri de variantăIntrareDuratăAudio
    Transform (restilizează un video)kling-3-0-omni-720p, -1080p, -4kVideo-ul sursă primul, apoi până la 4 imagini de referințăNiciuna: se facturează lungimea clipului sursăsound: true adaugă o coloană sonoră generată
    Frames (animă între două imagini)kling-3-0-omni-frames-720p, -1080p, -4k, fiecare și cu -audioExact 2 imagini: primul cadru, ultimul cadru3 până la 15sAudio-ul pornit costă mai mult pe secundă, de aici id-urile -audio
    References (clip nou ghidat de referințe)kling-3-0-omni-ref-720p, -1080p, -4k, fiecare și cu -audio sau -videoPână la 7 imagini, sau 1 video + până la 4 imagini, sau doar 1 video3 până la 15s; un video singur nu primește durată și se facturează clipulDoar imagini e cel mai ieftin, -audio costă mai mult, -video costă și mai mult și oprește sunetul

    Toate benzile se facturează pe secundă, fiecare cu tariful ei, iar Frames e mai ieftin decât Transform. Citește tariful exact din get_models sau estimate.

    <a id="kling-4-0"></a>

    Kling 4.0:

    Kling 4.0 este un singur model pentru text-to-video și reference-to-video. Nu trimite nicio media pentru un clip doar din prompt, sau atașează până la 10 imagini de referință și până la 5 videoclipuri de referință (între 3 și 30 de secunde fiecare, maximum 30 de secunde în total), în orice combinație. Ieșirea are între 3 și 30 de secunde, la 720p sau 1080p, cu aspect_ratio auto, 16:9, 9:16, 1:1 sau 21:9. Dacă nu îl setezi, devine auto când ai referințe și 16:9 când nu ai.

    În prompt te referi la fișiere cu @image_1, @image_2 și @video_1, @video_2, numerotate în ordinea în care le trimiți. O mențiune care nu corespunde unui fișier atașat (de exemplu @image_3 cu două imagini) e respinsă înainte să se ia vreun credit. Poți trimite și elements cu nume (un subiect descris prin cel puțin 2 imagini sau printr-un video) și până la 3 voices (mostre de 5 până la 30 de secunde), pe care le menționezi în prompt ca @nume; se trimit doar cele menționate. Un element video contează ca video de intrare: mută cererea pe rândul -video, iar secundele lui se adună cu cele ale videoclipurilor de referință. Elementele din imagini și vocile nu costă în plus.

    Intrări: trimite imaginile și videoclipurile în source_media_urls, sau separat în reference_image_urls și reference_video_urls. Videoclipurile trebuie să fie MP4 sau MOV și încărcate mai întâi în Kubeez (get_upload_url în MCP, POST /v1/upload/media în REST). Un video cu link de pe alt site e respins cu clip_not_uploaded înainte să se ia vreun credit, pentru că fiecare video se facturează după lungimea măsurată de Kubeez. Păstrezi sunetul original al videoclipurilor cu keep_original_sound: true. kling-4-0 simplu întoarce variant_required; trimite unul dintre cele patru id-uri de mai jos.

    Id-uri de variantăCândSecunde facturate
    kling-4-0-720p, kling-4-0-1080pFără video de referință (doar prompt, sau imagini)Durata pe care o trimiți
    kling-4-0-720p-video, kling-4-0-1080p-videoCel puțin un video de referințăDurata pe care o trimiți, plus cea mai mare valoare dintre această durată și lungimea totală a videoclipurilor

    Rândurile -video au un tarif pe secundă mai mic, pentru că se facturează și lungimea clipului. Exemplu: 10s de ieșire cu un video de 5s înseamnă 20 de secunde facturate; cu un video de 15s, 25. Mai multe videoclipuri se adună.

    Audio: fără video de referință, clipul vine mereu cu sunet generat. Cu video, coloana sonoră e generată, cu excepția cazului în care ceri să păstrezi sunetul original al videoclipurilor.

    ModelNumeTarifUnitate
    kling-4-0-1080pKling 4.0 (1080p)58credite / sec
    kling-4-0-1080p-videoKling 4.0 (1080p, with video)35credite / sec
    kling-4-0-720pKling 4.0 (720p)39credite / sec
    kling-4-0-720p-videoKling 4.0 (720p, with video)23credite / sec

    <a id="omnihuman-2-0"></a>

    OmniHuman 2.0:

    OmniHuman 2.0 face un portret să vorbească sau să cânte. Trimiți o imagine cu o persoană și un fișier audio (vorbire sau o melodie) și primești un videoclip cu acea persoană, cu buzele sincronizate, la 720p, la fel de lung ca audio-ul. Nu ai durată, rezoluție sau raport de aspect de ales. Promptul e opțional (maximum 300 de caractere) și ghidează scena, mișcarea persoanei și camera.

    Fișierul audio trebuie să fie MP3 sau WAV, sub 15 MB, între 4 și 300 de secunde, și încărcat mai întâi în Kubeez (get_upload_url în MCP, POST /v1/upload/media în REST). Kubeez măsoară singur audio-ul și facturează după lungimea lui: secunde întregi, rotunjite în sus, cu o mică toleranță, așa că un fișier care are 5,02 secunde se facturează ca 5. Dacă audio-ul nu poate fi măsurat în acel moment, cererea e refuzată înainte să se ia vreun credit; încearcă din nou peste un minut.

    ModelNumeTarifUnitate
    omnihuman-2-0OmniHuman 2.019credite / sec

    <a id="veo-3-1"></a>

    Id-urile Veo 3.1:

    Veo 3.1 nu are un id de familie: veo3-1, veo3-1-fast și veo3-1-lite singure nu pot fi apelate, așa că trimite mereu un id complet. Id-ul se compune din trei părți:

    ParteOpțiuni
    Tierveo3-1 (calitate), veo3-1-fast, veo3-1-lite (buget)
    Mod-text-to-video (0 sau 1 imagine), -first-and-last-frames (exact 2 imagini), -reference-to-video (1 până la 3 imagini, doar 16:9)
    Rezoluțienimic pentru 720p, -1080p, -4k

    Exemple: veo3-1-text-to-video, veo3-1-fast-first-and-last-frames-1080p, veo3-1-lite-reference-to-video-4k. Fiecare clip are fix 8 secunde, cu audio inclus, în 16:9 sau 9:16. Fiecare combinație de tier, mod și rezoluție e un rând cu preț propriu în get_models. Ca să continui un clip terminat, folosește generation_type: "extend" cu source_task_id și extend_model (lite, fast sau quality).

    Etichete de familie: un nume de familie singur, de exemplu seedance-2, seedance-2-5, kling-3-0-omni, kling-4-0, gemini-omni-flash sau wan-3-0, întoarce eroarea variant_required cu available_variants și recommended_variant, fără să consume credite. Excepții: p-video și flux-3 acceptă id-ul simplu și aleg rândul din quality, iar seedance-2-5 simplu cu quality: "draft" devine seedance-2-5-480p.

    Gemini Omni Video — modelul multi-modal Google:

    Gemini Omni Video produce ieșire video cu audio built-in (29 de voci) și acceptă intrări multi-modale (text, referințe de imagine, un singur video de referință opțional). Modelul vine ca 15 variante concrete — alege-o pe cea care se potrivește rezoluției și duratei dorite. 720p și 1080p au același preț; 4K este un tier de preț separat.

    Id-uri variantă (pasate la generate_media ca model):

    Rezoluție4s6s8s10sVideo-ref (flat)
    720pgemini-omni-video-720p-4sgemini-omni-video-720p-6sgemini-omni-video-720p-8sgemini-omni-video-720p-10sgemini-omni-video-720p-video-ref
    1080pgemini-omni-video-1080p-4sgemini-omni-video-1080p-6sgemini-omni-video-1080p-8sgemini-omni-video-1080p-10sgemini-omni-video-1080p-video-ref
    4Kgemini-omni-video-4k-4sgemini-omni-video-4k-6sgemini-omni-video-4k-8sgemini-omni-video-4k-10sgemini-omni-video-4k-video-ref

    Variantele video-ref preiau durata din clipul sursă tăiat (se folosesc primele 10s; fără parametri de trim expuși). Variantele bazate pe durată acceptă 1–7 referințe de imagine; variantele video-ref acceptă 1 clip sursă (consumă 2 sloturi) + până la 5 referințe de imagine.

    Tarifare flat per task. Tarife în timp real (720p și 1080p împart fiecare rând — Google le facturează identic):

    ModelNumeTarifUnitate
    gemini-omni-video-4k-10sGemini Omni Video (4K)320credite
    gemini-omni-video-4k-4sGemini Omni Video (4K)230credite
    gemini-omni-video-4k-6sGemini Omni Video (4K)260credite
    gemini-omni-video-4k-8sGemini Omni Video (4K)290credite
    gemini-omni-video-4k-video-refGemini Omni Video (video ref, 4K)380credite
    gemini-omni-video-hd-10sGemini Omni Video200credite
    gemini-omni-video-hd-4sGemini Omni Video110credite
    gemini-omni-video-hd-6sGemini Omni Video140credite
    gemini-omni-video-hd-8sGemini Omni Video170credite
    gemini-omni-video-hd-video-refGemini Omni Video (video ref)260credite

    #Gemini Omni 1.1 Flash

    gemini-omni-flash-* este versiunea 1.1 a aceleiași familii, cu funcția ei edge și cu propriile rânduri de preț. Citește aceleași referințe de imagine, video și personaj și folosește același catalog de 29 de voci. Ce adaugă:

    • un nivel 360p. Spre deosebire de 1.0, fiecare rezoluție are aici rândul ei, deci 360p este și cea mai rapidă randare și cea mai ieftină, iar 1080p costă mai mult decât 720p
    • un mod primul și ultimul cadru: trimite cadrul de start în source_media_urls și cadrul de final în last_frame_url. Modul este exclusiv — nu poate fi combinat cu imagini de referință suplimentare, cu un video de referință sau cu character_ids, iar trimiterea lor împreună întoarce variant_mismatch.

    Id-uri de variantă (se pasează la generate_media ca model):

    Rezoluție4s6s8s10sVideo-ref (fix)
    360pgemini-omni-flash-360p-4sgemini-omni-flash-360p-6sgemini-omni-flash-360p-8sgemini-omni-flash-360p-10sgemini-omni-flash-360p-video-ref
    720pgemini-omni-flash-720p-4sgemini-omni-flash-720p-6sgemini-omni-flash-720p-8sgemini-omni-flash-720p-10sgemini-omni-flash-720p-video-ref
    1080pgemini-omni-flash-1080p-4sgemini-omni-flash-1080p-6sgemini-omni-flash-1080p-8sgemini-omni-flash-1080p-10sgemini-omni-flash-1080p-video-ref
    4Kgemini-omni-flash-4k-4sgemini-omni-flash-4k-6sgemini-omni-flash-4k-8sgemini-omni-flash-4k-10sgemini-omni-flash-4k-video-ref
    ModelNumeTarifUnitate
    gemini-omni-flash-1080p-10sGemini Omni 1.1 Flash (1080p)220credite
    gemini-omni-flash-1080p-4sGemini Omni 1.1 Flash (1080p)130credite
    gemini-omni-flash-1080p-6sGemini Omni 1.1 Flash (1080p)160credite
    gemini-omni-flash-1080p-8sGemini Omni 1.1 Flash (1080p)190credite
    gemini-omni-flash-1080p-video-refGemini Omni 1.1 Flash (video ref, 1080p)280credite
    gemini-omni-flash-360p-10sGemini Omni 1.1 Flash (360p)200credite
    gemini-omni-flash-360p-4sGemini Omni 1.1 Flash (360p)110credite
    gemini-omni-flash-360p-6sGemini Omni 1.1 Flash (360p)140credite
    gemini-omni-flash-360p-8sGemini Omni 1.1 Flash (360p)170credite
    gemini-omni-flash-360p-video-refGemini Omni 1.1 Flash (video ref, 360p)260credite
    gemini-omni-flash-4k-10sGemini Omni 1.1 Flash (4K)320credite
    gemini-omni-flash-4k-4sGemini Omni 1.1 Flash (4K)230credite
    gemini-omni-flash-4k-6sGemini Omni 1.1 Flash (4K)260credite
    gemini-omni-flash-4k-8sGemini Omni 1.1 Flash (4K)290credite
    gemini-omni-flash-4k-video-refGemini Omni 1.1 Flash (video ref, 4K)380credite
    gemini-omni-flash-720p-10sGemini Omni 1.1 Flash (720p)210credite
    gemini-omni-flash-720p-4sGemini Omni 1.1 Flash (720p)120credite
    gemini-omni-flash-720p-6sGemini Omni 1.1 Flash (720p)150credite
    gemini-omni-flash-720p-8sGemini Omni 1.1 Flash (720p)180credite
    gemini-omni-flash-720p-video-refGemini Omni 1.1 Flash (video ref, 720p)270credite

    Parametri specifici Gemini Omni:

    ParametruTipObservații
    resolution—Ignorat — inclus în id-ul variantei.
    duration—Ignorat — inclus în id-ul variantei. Variantele video-ref preiau durata din clipul sursă tăiat.
    aspect_ratiostringStrict 16:9 sau 9:16. Orice altă valoare întoarce aspect_ratio_invalid_for_model.
    voice_idstring (opțional)Una dintre cele 29 de voci built-in (ex. kore, puck, achernar, zephyr). Descoperă lista completă prin tool-ul list_gemini_omni_voices — id-urile necunoscute sunt respinse client-side înainte de a se factura vreun credit. Omite pentru vocea implicită a modelului.
    character_idsstring[] (opțional)Unul sau mai multe personaje salvate din biblioteca utilizatorului (create prin manage_library(kind="character", action="create", ...), listate prin list_gemini_omni_characters). Fiecare consumă 1 din cele 7 sloturi de referință. Providerul randează o identitate consistentă pe mai multe clipuri.
    video_trim_start_snumber (opțional)Începutul ferestrei de trim (secunde) pentru video-ul de referință. Implicit 0.
    video_trim_end_snumber (opțional)Sfârșitul ferestrei de trim (secunde) pentru video-ul de referință. Implicit: min(durata_sursei, start+10) când URL-ul există în media_upload_metadata, altfel start+10. Limite stricte de la provider: range ≤ 10s, ends ≤ 30s.
    seednumber (opțional)Pentru rezultate reproductibile.
    negative_prompt—Nu este suportat. Eliminat tacit.
    sound—Nu este suportat — audio-ul este intrinsec fiecărei ieșiri.

    Media sursă (source_media_urls): 7 sloturi de referință în total. Un singur video de referință consumă 2 sloturi; fiecare character_id consumă 1 slot; imaginile umplu restul. Maxim 1 video pe cerere; pasarea unui URL video necesită o variantă -video-ref (variantă de durată + video → variant_mismatch). Fereastra clipului-driver este implicit primele 10 secunde; suprascrie cu video_trim_start_s / video_trim_end_s. URL-urile de fișiere audio nu sunt acceptate (returnează unsupported_audio_url); folosește voice_id în schimb.

    Tool-uri companion (folosește-le alături de generările Gemini Omni):

    ToolScop
    list_gemini_omni_voicesCatalog static al celor 30 de voci (id, label, gen, caracter, preview_url către un sample mp3 de ~7s). Gratuit.
    play_gemini_omni_voiceReturnează preview_url-ul pentru un singur id de voce — mai rapid decât a aduce întregul catalog când știi deja vocea. Afișează URL-ul utilizatorului ca să o asculte înainte de a o folosi.
    list_gemini_omni_charactersListează personajele salvate ale utilizatorului. Fiecare rând are un character_id de pasat la generate_media și un id intern pentru ștergere.
    manage_library(kind="character", action="create", ...)Persistă un personaj nou dintr-o imagine de referință + descriere (+ opțional character_name, voice_id). Returnează character_id-ul opac al providerului.
    manage_library(kind="character", action="delete", character_id=...)Ștergere locală (providerul nu are endpoint de delete). Generările anterioare care au folosit acel personaj își păstrează ieșirile.
    trim_videoTaie un video sursă lung la fereastra de ≤10s pe care Gemini Omni o cere pentru variantele -video-ref. Returnează un URL găzduit, gata de folosit ca source_media_urls.

    Exemplu de cerere (1080p, 6s, vertical, refolosind un personaj salvat + voce aleasă):

    {
      "model": "gemini-omni-video-1080p-6s",
      "prompt": "Un barista face un espresso perfect, povestește procesul",
      "aspect_ratio": "9:16",
      "voice_id": "kore",
      "character_ids": ["char_4f2a9b7c"],
      "source_media_urls": ["https://media.kubeez.com/cafe-shot.jpg"]
    }
    

    Audio la video (două concepte):

    1. capabilities.video_audio în get_models — dacă ieșirea are sunet:
      • included: ieșirea include de obicei pistă audio fără parametrul sound (ex. Veo, Wan, Grok, Motion Control, Gemini Omni Video — acesta expune parametrul voice_id pentru alegerea uneia dintre cele 29 de voci built-in).
      • toggle_via_sound_param — audio generat se pornește/oprește cu sound: true / false (Kling 2.6, Kling 3.0, Seedance 2). Pentru Seedance 2 comutatorul este gratuit (implicit true); pentru celelalte modele prețul poate diferi. Kling 3.0 rutează sound: true către rânduri dedicate -audio în catalog — continui să folosești kling-3-0-std / kling-3-0-pro ca model id și doar comuți sound; serverul alege rândul cu tariful corect. Tarife în timp real:
    ModelNumeTarifUnitate
    kling-3-0-proKling 3.0 Pro21credite / sec
    kling-3-0-pro-audioKling 3.0 Pro (with audio)30credite / sec
    kling-3-0-stdKling 3.017credite / sec
    kling-3-0-std-audioKling 3.0 Std (with audio)23credite / sec

    Tarife per secundă de Motion Control (Kling 3.0 și Kling 2.6):

    Niciun model nu se potrivește acestei familii. kling-3-0-motion-control,kling-2-6-motion-control

    Seedance 2.5 și FLUX 3 se comută tot prin sound, la fel gratuit. Kling 3.0 Omni Frames și References tarifează audio-ul prin id-urile -audio.

    • always_on_flat_rate: audio-ul e produs mereu, iar prețul nu se schimbă (kling-3-0-4k). Parametrul sound e acceptat, dar nu influențează costul.
    • silent — fără audio generat (doar Seedance 1.0 / v1-pro-fast-i2v).
    1. supports_sound — înseamnă doar că API-ul acceptă comutatorul sound pentru acel model; nu înseamnă că celelalte modele video sunt fără sunet; majoritatea au video_audio: included.

    Modelele doar imagine ignoră sound.

    #Upscale

    Refaci o imagine existentă la o rezoluție mai mare, cu detalii mai clare, păstrând compoziția, culorile și conținutul. Apelează generate_media cu upscale-1k, upscale-2k sau upscale-4k și pune imaginea în source_media_urls. prompt e cerut de schemă, dar e ignorat, la fel ca aspect_ratio și negative_prompt. Rezultatul e un PNG.

    ModelNumeTarifUnitate
    upscale-1kUpscale 1K22credite
    upscale-2kUpscale 2K26credite
    upscale-4kUpscale 4K32credite
    • Intrare: exact un URL public .jpg / .jpeg / .png / .webp. Un URL de output dintr-o generare anterioară merge direct; pentru un fișier local apelează întâi get_upload_url(model_id="upscale-2k").
    • Nivel: îl alegi prin id-ul modelului sau trimiți model: "upscale" cu resolution: "1K", "2K" sau "4K".
    • Tarifare: fix per imagine, câte un preț pentru fiecare nivel. Apelează estimate pentru prețul exact și confirmă cu utilizatorul înainte.
    • Unde: deocamdată doar prin MCP. API-ul REST nu rulează încă upscale.

    Dacă vrei să schimbi ce apare în imagine, nu rezoluția, folosește un model image-to-image.

    #API REST: URL-uri pentru fișiere locale sau din browser

    Dacă folosești API-ul HTTP (POST /v1/generate/media) și intrările sunt fișiere pe disc sau selectate în browser—nu URL-uri publice deja—încarcă mai întâi fiecare fișier cu POST /v1/upload/media. Folosește valorile din urls ca source_media_urls.


    <a id="trim_video"></a>

    #trim_video

    Taie o fereastră din orice URL video accesibil public și găzduiește clipul tăiat. Kubeez gestionează trim-ul server-side și returnează un url public pe care îl pasezi direct la generate_media ca valoare în source_media_urls.

    Când să folosești acest tool:

    • Video-ul sursă al utilizatorului este mai lung decât limita modelului pentru clipul de referință și vrei rezultate deterministe în loc să te bazezi pe trim-ul providerului.
    • Vrei să folosești o fereastră specifică dintr-un asset mai lung (ex. „folosește secundele 5–12, nu primele 10").
    • Înlănțuiești mai multe generări și vrei un singur URL canonic tăiat reutilizabil în mai multe apeluri.

    Limite per model (sari peste trim când sursa deja se încadrează):

    ModelLimită clip referințăNote
    Gemini Omni Video (variante -video-ref)≤ 10s fereastră din primele 30s ale surseiNecesar când o variantă de durată + ref video întoarce variant_mismatch.
    Kling 2.6 / 3.0 Motion Control≤ 30s video de referințăProviderul trunchiează clipurile mai lungi; taie explicit pentru încadrare predictibilă.
    Seedance 2 / 2 Fast≤ 15s timp combinat video referințăDacă pasezi mai multe ref videouri, taie fiecare ca suma să se încadreze.

    Parametri:

    ParametruTipObligatoriuDescriere
    source_urlstringDaURL video sursă accesibil public (URL Kubeez upload, R2/S3, orice CDN public).
    end_snumberDaSfârșitul ferestrei de trim, în secunde. Trebuie să fie > start_s; intervalul rezultat end_s − start_s este plafonat la 60s.
    start_snumberNuÎnceputul ferestrei de trim, în secunde. Implicit 0.

    Returnează: { url, size_bytes, duration_s, start_s, end_s, elapsed_s }. url este un link public găzduit Kubeez care indică spre bucket-ul media-inputs din Supabase storage, safe de folosit ca valoare source_media_urls. Clipurile tăiate stau în același bucket cu inputurile încărcate de utilizator și împart aceeași curățare automată săptămânală — tratează-le ca efemere, nu ca asset permanent.

    Flux tipic (Gemini Omni Video cu sursă lungă de la utilizator):

    1. get_upload_url(model_id="gemini-omni-video-1080p-video-ref")
           → pagină upload presemnată
    2. (utilizatorul încarcă clipul de 25s prin link)
    3. get_upload_session(token) → { media_urls: ["https://.../source.mp4"] }
    4. trim_video(source_url=media_urls[0], start_s=5, end_s=15)
           → { url: "https://.../trims/<uuid>.mp4", duration_s: 10 }
    5. generate_media(
           model="gemini-omni-video-1080p-video-ref",
           prompt="...",
           source_media_urls=[<url-ul tăiat>]
       )
    

    Trim standalone (URL-ul sursă e deja public — fără pas de upload):

    trim_video(source_url="https://media.kubeez.com/<asset>.mp4", start_s=0, end_s=8)
           → { url, duration_s: 8 }
    generate_media(model="kling-3-0-motion-control-1080p", source_media_urls=[<imagine>, <url-ul tăiat>], ...)
    

    Erori:

    Cod eroareCauză
    missing_source_urlsource_url nu a fost furnizat.
    unsafe_source_urlsource_url folosește o schemă non-http(s), conține credențiale embedate sau se rezolvă la un IP privat/loopback/metadata. Kubeez refuză să acceseze host-uri interne — folosește un URL public.
    invalid_trim_rangeend_s ≤ start_s, start_s negativ sau valori non-numerice.
    trim_too_longend_s − start_s > 60s.
    source_too_largeVideo sursă > 500 MB.
    source_fetch_failedURL-ul sursă a întors 4xx, 5xx, a fost inaccesibil sau a depășit plafonul de redirect-uri.
    ffmpeg_failedffmpeg a respins fișierul (codec nesuportat / container corupt).
    processor_timeoutServiciul de trim a depășit bugetul de download/procesare.
    processor_unavailableServiciul de trim este temporar indisponibil. Reîncearcă mai târziu sau contactează suportul dacă persistă.

    Exemplu de cerere:

    {
      "source_url": "https://media.kubeez.com/u123/uploads/long-take.mp4",
      "start_s": 5.2,
      "end_s": 14.7
    }
    

    Exemplu de răspuns:

    {
      "url": "https://<project>.supabase.co/storage/v1/object/public/media-inputs/u123/trims/abc.mp4",
      "size_bytes": 1245678,
      "duration_s": 9.5,
      "start_s": 5.2,
      "end_s": 14.7,
      "elapsed_s": 1.83
    }
    

    Precizie pe frame: -c copy aliniază startul efectiv la cel mai apropiat keyframe precedent (deplasare ≤ 1 GOP, de obicei ≤ 1s). Comportament identic cu stream-copy-ul nativ MP4 din web UI. Pentru tăieri precise pe frame, re-encodează sursa în prealabil — compromisul fiind o operațiune mai lentă și cu pierderi, pe care o evităm deliberat aici.

    Nu păstra output-ul: URL-ul indică spre bucket-ul media-inputs care e curățat săptămânal. Dacă ai nevoie ca clipul tăiat să supraviețuiască următoarei generări, folosește manage_library(kind="asset", action="add", ...) pentru a-l copia în Biblioteca de Assets permanentă a utilizatorului.


    #remove_background

    Decupează subiectul dintr-o imagine. Output-ul e un PNG cu fundal transparent real (alpha), motiv pentru care nu ceri niciodată unui model de imagine „fundal transparent”: modelele de imagine coc un fill alb sau de tip tablă de șah în pixeli. Nu primește niciun prompt: e o operație pe o imagine existentă, nu un model generate_media.

    Se taxează fix per imagine. Apelează estimate cu model: "remove-background" pentru prețul exact și confirmă cu utilizatorul înainte.

    Parametri:

    ParametruTipObligatoriuDescriere
    image_urlstringDaURL HTTPS public al unei imagini .jpg / .jpeg / .png / .webp, maxim 5 MB. Un URL de output dintr-o generare anterioară funcționează direct; pentru un fișier local apelează întâi get_upload_url(model_id="remove-background").

    Răspuns: { generation_id, status: "pending" }. Consultă get_status până la completed; URL-ul de output e PNG-ul decupat.


    #regenerate

    Re-rulează o generare media anterioară cu suprascrieri opționale. Promptul, modelul, aspect ratio, source_media_urls și durata rândului original sunt reutilizate dacă nu le suprascrii. Doar media — muzica, separarea și dialogul trebuie apelate din nou din instrumentul original.

    Costul e identic cu o generare nouă, deci confirmă cu utilizatorul înainte, mai ales pentru modelele video taxate pe durată.

    Parametri:

    ParametruTipObligatoriuDescriere
    idstringDageneration_id al unei generări media care îți aparține.
    promptstringNuÎnlocuiește promptul original.
    seednumberNuForțează un seed nou. 0 lasă providerul să aleagă.
    aspect_ratiostringNuSuprascrie aspect ratio original.
    negative_promptstringNuSuprascrie negative prompt original.
    variant_countnumberNu1-4. Lansează N apeluri paralele și returnează N generation_ids.

    #get_status

    Consultă orice job după id — generare media, generare muzică sau separare audio. Serverul dispecerizează automat după id, deci un singur instrument acoperă toate trei.

    Parametri:

    ParametruTipObligatoriuDescriere
    idstringDageneration_id sau separation_id returnat de apelul generate_*.
    kindstringNumedia, music sau separation. Sare peste căutarea automată.

    Răspuns: kind (ce a rezolvat id-ul), status (pending, queued, processing, completed, failed), progress și, în funcție de kind, un array outputs (url, thumbnail_url, optimized_url, media_type, dimensiuni), un array songs, sau vocals_url + instrumental_url. error_message la eșec.


    #estimate

    Previzualizează și costul în credite și timpul de procesare al unei generări, fără să deducă nimic. Nu pornește niciun job. Obligatoriu pentru orice model taxat pe durată: citează numărul utilizatorului și așteaptă confirmarea, pentru că o generare finalizată nu poate fi rambursată.

    Parametri:

    ParametruTipObligatoriuDescriere
    modelstringDaAcelași ID de model pe care l-ai trimite la generate_media sau generate_music.
    generation_typestringNuLa fel ca în generate_media. Implicit: text-to-image.
    durationnumber sau stringNuSecunde de output, pentru modelele video taxate pe secundă.
    soundbooleanNuImplicit true, la fel ca generate_media. Trimite false pentru tariful silent la modelele care taxează audio separat.
    reference_video_secondsnumberNuDin get_upload_session.media[].duration_seconds. Dacă îl omiți, serverul taxează plafonul pesimist.
    reference_audio_secondsnumberNuPentru modele conduse de audio: separare, P-Video cu intrare audio.

    Răspuns: credits (estimated_credits, mode, rate_per_second, explanation, pessimistic) și time (estimated_seconds, source). Când credits.pessimistic e true suma reală taxată poate fi mai mică — pune utilizatorul să re-încarce prin get_upload_url ca durata să fie măsurată, apoi estimează din nou.


    #Reguli modele

    • Text-to-image și text-to-video: Nu trimite source_media_urls (decât dacă modelul suportă o imagine de referință opțională).
    • Image-to-video și image-to-image: Trimite URL-uri imagine (și când e suportat, video) în source_media_urls. Majoritatea modelelor au nevoie doar de imagini; unele (ex. Kling 2.6 Motion Control) necesită 1 imagine + 1 video. Respectă limitele de intrare ale fiecărui model de mai sus.
    • Audio video: Folosește capabilities.video_audio din get_models. included: audio fără parametrul sound. toggle_via_sound_param: sound este implicit true; trimite false doar când utilizatorul cere un clip fără sunet (Kling 2.6, Kling 3.0, Seedance 2.5, FLUX 3, Kling 3.0 Omni). always_on_flat_rate: audio mereu pornit, la un singur preț (kling-3-0-4k). silent: fără audio generat (doar Seedance 1.0). Nu deduce „fără audio” doar din supports_sound: false.
    • Folosește get_models pentru a vedea ce modele suportă ce tipuri de generare, input_media_types (ex. image, video) și numărul necesar de intrări.

    Vezi Limitări pentru limite de rată și credite. Pentru un singur tabel cu valorile implicite API (prompt, intrări, durată, flag-uri), vezi Cerințe modele API.