Video
Testo → video, immagine → video, oppure primo fotogramma → ultimo fotogramma. Molti modelli di punta attraverso un unico punto di accesso.
Genera un video da un testo o da un'immagine. La piattaforma offre due motori: fal è quello principale (molti modelli), e Higgsfield è un'opzione image-to-video in stile DoP.
Cosa puoi fare
Tre modi per generare un video:
- Testo → video (t2v) — descrivi una scena, ottieni una clip.
- Immagine → video (i2v) — anima un'immagine statica.
- Primo fotogramma → ultimo fotogramma — interpola il movimento tra due immagini statiche.
Alcuni modelli supportano anche reference-to-video, extend/continue ed edit. Le modalità disponibili dipendono dal modello che scegli:
| Motore | Testo → video | Immagine → video | Primo / ultimo fotogramma | Reference / Extend |
|---|---|---|---|---|
| fal (Veo, Seedance, Kling, Grok, Happy-horse) | ✓ | ✓ | ✓ (Veo, Kling) | ✓ (varia in base al modello) |
| Higgsfield (DoP) | tramite immagine | ✓ | ✓ | — |
Scegliere un modello
fal_generate_video è il cavallo di battaglia: un unico punto di accesso a molti modelli di punta. Scegli un modello con model_id e passa i parametri di quel modello in input. Ogni famiglia supporta modalità e campi diversi:
| Famiglia | Esempi di model_id | Modalità | Campi input rilevanti |
|---|---|---|---|
| Veo 3.1 (Google) | fal-ai/veo3.1, fal-ai/veo3.1/image-to-video, .../first-last-frame-to-video, .../reference-to-video, .../extend-video | t2v, i2v, first/last, reference, extend | prompt, image_url, duration (4s/6s/8s), resolution (720p/1080p/4k), generate_audio, aspect_ratio |
| Seedance 2.0 (ByteDance) | bytedance/seedance-2.0/text-to-video, .../image-to-video, .../reference-to-video | t2v, i2v, reference | prompt, image_url, resolution (480p/720p), duration (auto/"4"–"15"), aspect_ratio, generate_audio |
| Kling 3.0 | fal-ai/kling-video/v3/pro/text-to-video, .../pro/image-to-video | t2v, i2v | prompt, start_image_url (i2v), end_image_url, duration ("3"–"15", predefinito "5"), generate_audio |
| Grok Imagine (xAI) | xai/grok-imagine-video/text-to-video, .../image-to-video | t2v, i2v, reference, edit, extend | prompt, image_url, duration (int 1–15), resolution (480p/720p), aspect_ratio |
| Happy-horse (Alibaba) | alibaba/happy-horse/text-to-video, .../image-to-video | t2v, i2v, reference, edit | image_url, prompt, resolution (720p/1080p), duration (3–15, predefinito 5) |
higgsfield_generate_video — image-to-video in stile DoP. Modelli: higgsfield-ai/dop/lite / dop/standard / dop/turbo (ciascuno con una variante /first-last-frame). Non ha una vera modalità text-to-video — per il testo → video, genera prima un'immagine intermedia (vedi sotto).
Il nome del campo per il primo fotogramma varia in base al modello. Kling usa start_image_url; tutte le altre famiglie (Veo, Seedance, Grok, Happy-horse) usano image_url. Passa quello che il modello scelto si aspetta.
Il formato di duration varia in base al modello. Veo vuole "8s", Seedance "auto" oppure "8", Kling "5", Grok e Happy-horse usano numeri interi. Segui la riga relativa al tuo modello.
Interfaccia
fal_generate_video — invia un job. Input: model_id (un id di endpoint) e input (l'oggetto completo dei parametri di quel modello, passato così com'è). Restituisce un request_id.
fal_get_video_status — interroga un job. Passa entrambi model_id e request_id. Restituisce IN_QUEUE / IN_PROGRESS, oppure COMPLETED con l'URL del video.
higgsfield_generate_video — invia. Input: prompt, image_url (obbligatorio), model_id, params (specifico del modello, passato così com'è). Restituisce un request_id.
higgsfield_get_video_status — interroga. Passa solo request_id. Restituisce in_progress, completed (con l'URL del video), oppure failed / nsfw.
Utilizzo in una Skill
La generazione video è asincrona — due passaggi:
- Invia con
*_generate_video→ ottieni unrequest_id. - Interroga
*_get_video_statusfinché non èCOMPLETED→ ottieni l'URL del video.
La generazione può richiedere alcuni minuti — continua a interrogare finché non finisce. Per fal, passa entrambi model_id e request_id durante l'interrogazione; per Higgsfield, solo request_id.
Testo → video su un motore solo-immagine (o ogni volta che vuoi un'inquadratura art-directed): genera prima un'immagine, poi usala come fotogramma di partenza.
# Text → video (Veo 3.1, with audio, 8 seconds)
fal_generate_video(
model_id="fal-ai/veo3.1",
input={ "prompt": "A cinematic drone shot over a misty mountain lake at dawn",
"duration": "8s", "resolution": "1080p", "generate_audio": true }
)
# Image → video (Kling — note start_image_url, not image_url)
fal_generate_video(
model_id="fal-ai/kling-video/v3/pro/image-to-video",
input={ "prompt": "the character slowly turns and smiles",
"start_image_url": "https://…", "duration": "5" }
)Generare un video passando da un'immagine:
1. google_generate_image / openai_generate_image(prompt) → image
2. fal_generate_video(model_id=".../image-to-video",
input={ prompt: motion, image_url: <image> }) → request_id
(or higgsfield_generate_video with image_url)
3. poll *_get_video_status until COMPLETED → video URL