Video
Texto → video, imagen → video, o primer fotograma → último fotograma. Muchos modelos de primer nivel a través de un solo punto de entrada.
Genera video a partir de texto o de una imagen. La plataforma ofrece dos motores: fal es el principal (muchos modelos), y Higgsfield es una opción de imagen a video estilo DoP.
Qué puedes hacer
Tres formas de generar video:
- Texto → video (t2v) — describe una escena, obtén un clip.
- Imagen → video (i2v) — anima una imagen estática.
- Primer fotograma → último fotograma — interpola el movimiento entre dos imágenes estáticas.
Algunos modelos también admiten referencia a video, extender/continuar y editar. Los modos disponibles dependen del modelo que elijas:
| Motor | Texto → video | Imagen → video | Primer / último fotograma | Referencia / Extender |
|---|---|---|---|---|
| fal (Veo, Seedance, Kling, Grok, Happy-horse) | ✓ | ✓ | ✓ (Veo, Kling) | ✓ (varía según el modelo) |
| Higgsfield (DoP) | tejiendo una imagen | ✓ | ✓ | — |
Cómo elegir un modelo
fal_generate_video es el caballo de batalla: un solo punto de entrada a muchos modelos de primer nivel. Elige un modelo con model_id, y pasa los parámetros de ese modelo en input. Cada familia admite modos y campos distintos:
| Familia | Ejemplos de model_id | Modos | Campos destacados de input |
|---|---|---|---|
| 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, primer/último fotograma, referencia, extender | 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, referencia | 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", por defecto "5"), generate_audio |
| Grok Imagine (xAI) | xai/grok-imagine-video/text-to-video, .../image-to-video | t2v, i2v, referencia, editar, extender | prompt, image_url, duration (entero 1–15), resolution (480p/720p), aspect_ratio |
| Happy-horse (Alibaba) | alibaba/happy-horse/text-to-video, .../image-to-video | t2v, i2v, referencia, editar | image_url, prompt, resolution (720p/1080p), duration (3–15, por defecto 5) |
higgsfield_generate_video — imagen a video estilo DoP. Modelos: higgsfield-ai/dop/lite / dop/standard / dop/turbo (cada uno con una variante /first-last-frame). No tiene texto a video puro — para texto → video, teje una imagen primero (ver más abajo).
El nombre del campo del primer fotograma varía según el modelo. Kling usa start_image_url; el resto de familias (Veo, Seedance, Grok, Happy-horse) usan image_url. Pasa el que espera el modelo que elegiste.
El formato de duration varía según el modelo. Veo quiere "8s", Seedance "auto" o "8", Kling "5", Grok y Happy-horse usan enteros. Sigue la fila de tu modelo.
Interfaz
fal_generate_video — envía un trabajo. Entradas: model_id (un endpoint id) e input (el objeto de parámetros completo de ese modelo, pasado tal cual). Devuelve un request_id.
fal_get_video_status — consulta el estado de un trabajo. Pasa ambos, model_id y request_id. Devuelve IN_QUEUE / IN_PROGRESS, o COMPLETED con la URL del video.
higgsfield_generate_video — envía. Entradas: prompt, image_url (obligatorio), model_id, params (específico del modelo, pasado tal cual). Devuelve un request_id.
higgsfield_get_video_status — consulta el estado. Pasa solo request_id. Devuelve in_progress, completed (con la URL del video), o failed / nsfw.
Cómo usarlo en un Skill
La generación de video es asíncrona — dos pasos:
- Envía con
*_generate_video→ obtén unrequest_id. - Consulta
*_get_video_statushasta que estéCOMPLETED→ obtén la URL del video.
La generación puede tardar unos minutos — sigue consultando hasta que termine. Para fal, pasa ambos, model_id y request_id, al consultar; para Higgsfield, solo request_id.
Texto → video en un motor que solo admite imagen a video (o siempre que quieras un encuadre dirigido artísticamente): genera primero una imagen, y luego pásala como el fotograma inicial.
# Texto → video (Veo 3.1, con audio, 8 segundos)
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 }
)
# Imagen → video (Kling — nota que es start_image_url, no 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" }
)Tejido para imagen → video:
1. google_generate_image / openai_generate_image(prompt) → imagen
2. fal_generate_video(model_id=".../image-to-video",
input={ prompt: movimiento, image_url: <imagen> }) → request_id
(o higgsfield_generate_video, con image_url)
3. consulta *_get_video_status hasta COMPLETED → URL del video