Texto a vídeo frente a imagen a vídeo: los cinco modos de la API explicados
La mayoría de los modelos de vídeo aceptan algo más que un prompt. Puedes partir de una imagen, fijar el primer y el último fotograma, pasar imágenes de referencia para personajes y productos, o trabajar a partir de un clip existente. Esta guía explica cada modo, cuándo usarlo y cómo llamarlo.
Los cinco modos de un vistazo
Todos los modos usan el mismo endpoint, POST /v1/generations. Lo que cambia es la entrada que envías junto al prompt.
| Modo | Qué envías | Ideal para |
|---|---|---|
| Texto a vídeo | a prompt | explorar ideas, material de apoyo, escenas para las que no tienes imágenes |
| Imagen a vídeo | un fotograma inicial como image_url, más un prompt | animar fotos de producto, ilustraciones e imágenes fijas con un aspecto exacto |
| Primer y último fotograma | image_url y end_image_url, más un prompt | transiciones, revelaciones y tomas que deben terminar en una imagen determinada |
| Imágenes de referencia | varias imágenes como image_urls, más un prompt | mantener la coherencia de personajes, productos y lugares entre tomas |
| Vídeo a vídeo | un clip de origen, más un prompt | cambiar el estilo o retocar material que ya tienes |
No todos los modelos admiten todos los modos. La tabla de compatibilidad de abajo cubre los modelos principales, y la ficha de cada modelo en la página de modelos enumera sus tareas.
Texto a vídeo
Texto a vídeo es el modo más simple: describes la toma y el modelo decide todo lo demás, desde los rostros y el decorado hasta los colores y el encuadre. Esa libertad es útil cuando exploras ideas o necesitas material genérico, como material de apoyo, planos de situación o fondos abstractos.
Es el modo equivocado cuando el vídeo tiene que mostrar algo concreto: tu producto, tu logotipo, una persona determinada o una composición que debe ajustarse a una guía de marca. Cada generación inventa esos detalles de nuevo, así que dos clips del mismo prompt no coincidirán.
Un buen prompt de texto cubre el sujeto, la acción, el escenario, la cámara y la luz, y el sonido si el modelo lo genera. Nuestra guía de Seedance 2.0 tiene más consejos para prompts.
Imagen a vídeo
Con imagen a vídeo, tu imagen se convierte en el primer fotograma. Todo lo que contiene (el producto, el rostro, la composición y los colores) queda fijado al inicio, y el prompt solo tiene que describir lo que ocurre después. Es el modo para animar fotos de producto, ilustraciones e imágenes principales, y para cualquier toma en la que el aspecto deba ser exacto.
Un flujo de trabajo habitual es crear primero la imagen fija con un modelo de imagen como Nano Banana Pro o GPT Image 2, dejarla bien y luego animarla. Iterar con imágenes fijas es más barato y rápido que hacerlo con vídeo.
Esta es una solicitud de imagen a vídeo para Seedance 2.0: un clip de 5 segundos a 720p con sonido, que cuesta $0.75. La relación de aspecto adaptive ajusta el encuadre a la forma de tu imagen.
export REVANA_API_KEY="sr_live_..."
# 1. Submit the job (returns 202 with the generation id)
curl https://api.revana.si/v1/generations \
-H "Authorization: Bearer $REVANA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.0",
"input": {
"prompt": "The coffee in the cup starts to steam, and a hand reaches in from the right and lifts the cup off the table. Morning light, quiet cafe ambience.",
"image_url": "https://example.com/coffee.jpg",
"resolution": "720p",
"duration": 5,
"aspect_ratio": "adaptive",
"audio": true
},
"max_cost_usd": 2
}'
# 2. Poll with the id from step 1 until status is "succeeded" or "failed"
curl https://api.revana.si/v1/generations/gen_01JBX7Q2M4 \
-H "Authorization: Bearer $REVANA_API_KEY"import os
import time
import requests
API = "https://api.revana.si/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['REVANA_API_KEY']}"}
resp = requests.post(f"{API}/generations", headers=HEADERS, json={
"model": "seedance-2.0",
"input": {
"prompt": "The coffee in the cup starts to steam, and a hand reaches in from the right and lifts the cup off the table. Morning light, quiet cafe ambience.",
"image_url": "https://example.com/coffee.jpg",
"resolution": "720p",
"duration": 5,
"aspect_ratio": "adaptive",
"audio": True,
},
"max_cost_usd": 2,
})
resp.raise_for_status()
job = resp.json()
while job["status"] in ("queued", "running"):
time.sleep(5)
job = requests.get(f"{API}/generations/{job['id']}", headers=HEADERS).json()
if job["status"] == "succeeded":
print(job["output"]["urls"], job["cost_usd"])
else:
print("Failed:", job["error"])// Node 18 or later. Save as generate.mjs and run: node generate.mjs
const API = "https://api.revana.si/v1";
const headers = {
Authorization: `Bearer ${process.env.REVANA_API_KEY}`,
"Content-Type": "application/json",
};
const res = await fetch(`${API}/generations`, {
method: "POST",
headers,
body: JSON.stringify({
model: "seedance-2.0",
input: {
prompt: "The coffee in the cup starts to steam, and a hand reaches in from the right and lifts the cup off the table. Morning light, quiet cafe ambience.",
image_url: "https://example.com/coffee.jpg",
resolution: "720p",
duration: 5,
aspect_ratio: "adaptive",
audio: true,
},
max_cost_usd: 2,
}),
});
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
let job = await res.json();
while (job.status === "queued" || job.status === "running") {
await new Promise((r) => setTimeout(r, 5000));
job = await (await fetch(`${API}/generations/${job.id}`, { headers })).json();
}
if (job.status === "succeeded") console.log(job.output.urls, job.cost_usd);
else console.error("Failed:", job.error);Describe el movimiento, no la imagen: el modelo ya la ve. "El vapor sube y se levanta la taza" funciona mejor que repetir "una taza blanca de café sobre una mesa de madera".
Fotogramas inicial y final
Añade end_image_url y el modelo genera el movimiento entre dos imágenes que elijas. Como el final está fijado, este modo sirve para transiciones entre escenas, tomas de antes y después, revelaciones de producto y clips que deben enlazar limpiamente con el siguiente. Para un bucle, prueba la misma imagen en ambos extremos.
Los dos fotogramas deben ser finales plausibles de una misma toma: la misma escena, el mismo encuadre y la misma luz. Si son demasiado distintos, el modelo tiene que inventar un cambio grande en pocos segundos y los resultados son menos predecibles. Este clip silencioso de Kling 3.0 de 5 segundos a 1080p cuesta $0.60:
{
"model": "kling-3.0",
"input": {
"prompt": "Time-lapse: the empty plot fills with a small wooden cabin as the camera holds still, clouds racing overhead",
"image_url": "https://example.com/plot-empty.jpg",
"end_image_url": "https://example.com/plot-cabin.jpg",
"resolution": "1080p",
"duration": 5,
"audio": false
},
"max_cost_usd": 1
}Seedance 2.5, Seedance 2.0, Seedance 2.0 Mini, Veo 3.1, Veo 3.1 Fast, Veo 3.1 Lite, Kling 3.0, Kling 3.0 Omni, Wan 3.0 y Grok Imagine Video 1.5 incluyen primer y último fotograma en el catálogo. Hailuo 2.3 admite un fotograma inicial pero no uno final.
Imágenes de referencia
Las imágenes de referencia no son fotogramas. El modelo las usa para aprender cómo se ve una persona, un producto o un lugar, y luego los coloca en una toma nueva que describe el prompt. Eso convierte las referencias en el modo de la coherencia: el mismo personaje en diez tomas, o el mismo producto en distintos entornos.
Envía las imágenes como image_urls y haz referencia a cada una por su posición en el prompt, por ejemplo "la mujer de la primera imagen sostiene el bolso de la segunda imagen". El límite depende del modelo: Seedance 2.5 admite hasta 30, Wan 3.0 hasta 10, Seedance 2.0 hasta 9, Seedance 2.0 Mini hasta 9, Veo 3.1 Fast hasta 3 y Veo 3.1 Lite hasta 3. En los modelos de Seedance, envía fotogramas o referencias en una solicitud, pero no ambos.
Esta solicitud de Veo 3.1 Fast de 8 segundos a 720p con sonido cuesta $0.80:
{
"model": "veo-3.1-fast",
"input": {
"prompt": "The man from the first image walks into the bakery from the second image, picks up a loaf and smiles at the camera. Bell over the door, quiet chatter.",
"image_urls": [
"https://example.com/man.jpg",
"https://example.com/bakery.jpg"
],
"resolution": "720p",
"duration": 8,
"aspect_ratio": "16:9",
"audio": true
},
"max_cost_usd": 1.5
}Vídeo a vídeo
Vídeo a vídeo parte de un clip que ya tienes. El origen guía el movimiento y el ritmo, y el prompt describe qué debe cambiar: un estilo nuevo, un entorno nuevo o detalles distintos. Sirve para cambiar el estilo de imágenes reales, retocar una generación anterior o conservar una interpretación cambiando el aspecto.
Entre los modelos de esta guía, Seedance 2.5, Kling 3.0 Omni y Wan 3.0 incluyen vídeo a vídeo, y Kling 3.0 Motion Control también trabaja a partir de un vídeo de origen. Las entradas para un clip de origen varían según el modelo, así que revisa la ficha del modelo antes de construir sobre él.
Los trabajos con un vídeo de entrada tienen un precio distinto en algunos modelos. En Seedance 2.5, los segundos facturados son los de salida más los del clip de entrada, a una tarifa menor con vídeo de entrada: un clip de 10 segundos a 720p hecho a partir de un origen de 10 segundos cuesta $3.00, frente a $2.50 del mismo clip a partir de un prompt. Kling 3.0 Omni indica su propia tarifa para trabajos con vídeo de entrada, $0.13 por segundo a 720p.
Qué modelos admiten cada modo
Del catálogo de Revana en octubre de 2026:
| Modelo | Texto | Imagen | Primero y último | Referencias | Vídeo |
|---|---|---|---|---|---|
| Seedance 2.5 | yes | yes | yes | yes | yes |
| Seedance 2.0 | yes | yes | yes | yes | no |
| Seedance 2.0 Mini | yes | yes | yes | yes | no |
| Veo 3.1 | yes | yes | yes | no | no |
| Veo 3.1 Fast | yes | yes | yes | yes | no |
| Veo 3.1 Lite | yes | yes | yes | yes | no |
| Kling 3.0 | yes | yes | yes | no | no |
| Kling 3.0 Omni | yes | yes | yes | yes | yes |
| Wan 3.0 | yes | yes | yes | yes | yes |
| Hailuo 2.3 | yes | yes | no | no | no |
| Grok Imagine Video 1.5 | yes | yes | yes | yes | no |
¿El modo cambia el precio?
Casi nunca. Los modelos de vídeo se cobran por segundos de salida, resolución y, en algunos modelos, sonido. Un clip de Seedance 2.0 de 5 segundos a 720p cuesta $0.75 tanto si parte de un prompt como de una imagen, y añadir un fotograma final o imágenes de referencia no cambia el precio del catálogo. La excepción es el vídeo de entrada, que se explicó arriba.
El precio de cada trabajo se retiene de tu saldo prepago al enviarlo y solo se cobra si el trabajo se completa. La página de precios enumera todas las tarifas.
Cómo elegir un modo
- Aún no tienes recursos: empieza con texto a vídeo, o crea una imagen fija con un modelo de imagen y anímala.
- El aspecto debe ser exacto: imagen a vídeo, a partir de un fotograma que hayas aprobado.
- El final importa: primer y último fotograma.
- El mismo personaje o producto en muchas tomas: imágenes de referencia.
- Ya tienes material grabado: vídeo a vídeo.
Un campo o valor que un modelo no admite se rechaza con un 422 antes de cobrar nada, así que equivocarse de modo no cuesta nada. Referencia completa de campos: la documentación.
¿Listo para probarlos? Obtén una clave de API y envía tu primera solicitud.
Preguntas frecuentes
¿Qué diferencia hay entre texto a vídeo e imagen a vídeo?
Texto a vídeo funciona solo con un prompt, así que el modelo inventa todo lo que aparece en la toma. Imagen a vídeo usa tu imagen como primer fotograma, de modo que el aspecto queda fijado y el prompt solo describe el movimiento.
¿Imagen a vídeo cuesta más que texto a vídeo?
No según los precios del catálogo. Los modelos de vídeo se cobran por segundos de salida, resolución y, en algunos modelos, sonido. Un clip de Seedance 2.0 de 5 segundos a 720p cuesta $0.75 de cualquiera de las dos formas en octubre de 2026.
¿Qué son el primer y el último fotograma?
Envías una imagen inicial como image_url y una imagen final como end_image_url, y el modelo genera el movimiento entre ambas. Es útil para transiciones, revelaciones y bucles.
¿Cuántas imágenes de referencia puedo enviar?
Depende del modelo: Seedance 2.5 hasta 30, Wan 3.0 hasta 10, Seedance 2.0 hasta 9, Seedance 2.0 Mini hasta 9, Veo 3.1 Fast hasta 3 y Veo 3.1 Lite hasta 3.
¿Puedo combinar un fotograma inicial con imágenes de referencia?
No en los modelos de Seedance: envía fotogramas o referencias en una solicitud, pero no ambos.
¿Qué modelos admiten vídeo a vídeo?
Entre los modelos principales, Seedance 2.5, Kling 3.0 Omni y Wan 3.0 incluyen vídeo a vídeo, igual que Kling 3.0 Motion Control. La página de modelos enumera las tareas de cada modelo.
Prueba todos los modos con una sola clave
Los trabajos de texto, imagen, fotogramas y referencias usan la misma solicitud en Revana. Crédito prepago desde $10.