Loading...
Loading...
Nivel Veo 3.1 más rápido y económico, con texto a vídeo, imagen a vídeo, referencia a vídeo y transiciones entre fotograma inicial y final.
Inicia sesión para ejecutar modelos
No output yet
Run the model to see generated results.
import requests
result = requests.post(
'https://api.e2x.ai/v1/jobs/submit',
headers={
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
},
json={
'model': 'google/veo-3.1-fast/text-to-video',
'input': {}
}
)import time
job_id = result.json()['jobId']
while True:
response = requests.get(
f'https://api.e2x.ai/v1/jobs/{'{job_id}'}',
headers={'Authorization': f'Bearer {'{API_KEY}'}'}
)
data = response.json()['data']
if data['status'] == 'completed':
print('Done!', data['outputs'][0]['url'])
break
elif data['status'] == 'failed':
raise Exception(f"Job failed: {'{'}data['error']['message']{'}'}")
time.sleep(2)Costo estimado por generación según duración y resolución. Solo pagas por lo que uses.
Veo 3.1 Fast es el Veo 3.1 de Google afinado para velocidad: las mismas resoluciones, las mismas duraciones de 4/6/8 segundos, el mismo audio nativo siempre activo, entregado más rápido y a un precio más bajo. Lo exponemos como google/veo-3.1-fast/text-to-video y facturamos por segundo de salida: $0.01 por segundo, ×1.5 cuando la pista de audio está encendida. Un clip de 8 segundos en 720p con sonido sale por $0.12. Nada que subir. El prompt es toda la entrada.
¿Tiene una imagen fija a la que quiere dar vida en lugar de eso? Entonces lo que quiere es Veo 3.1 Fast image-to-video: el mismo modelo, un fotograma inicial. ¿Necesita que la misma cara y la misma chaqueta sobrevivan a lo largo de un batch de tomas? Eso es Veo 3.1 Fast reference-to-video.
Todo proveedor serio de este modelo factura por segundo, nosotros incluidos. Así que la única comparación honesta es una configuración fija; aquí está a 720p con el audio encendido, comprobado el 26 de agosto de 2026:
| Proveedor de API | Facturación | Tarifa (720p, con audio) | Clip de 8 segundos | vs. nosotros |
|---|---|---|---|---|
| E2X (actual) | por segundo | $0.01/s ×1.5 audio | $0.12 | — |
| Google Gemini API | por segundo | $0.10/s | $0.80 | 6,7× nuestro precio |
| fal.ai | por segundo | $0.15/s | $1.20 | 10× nuestro precio |
| Replicate | por segundo | $0.15/s | $1.20 | 10× nuestro precio |
| Precio de lista E2X (antes del descuento) | por segundo | $0.10/s ×1.5 | $1.20 | nuestra tarifa sin descuento |
Lea la última fila contra fal.ai y Replicate. Nuestro precio de lista para un clip de 8 segundos es $1.20, exactamente lo que cobran ellos. Lo que usted paga hoy es una décima parte de eso, y sigue quedando 6,7× por debajo de la propia API de Google para el mismo request.
Presupueste teniendo en cuenta un matiz: pasar de 720p a 1080p es gratis en fal.ai y en Replicate, mientras que Google cobra más por segundo por ello. La resolución también es un multiplicador de nuestro lado, así que saque la cifra vigente del llms.txt de este modelo antes de comprometerse con un pipeline en 1080p.
Los precios y las condiciones de los productos pueden cambiar con el tiempo; consulte los precios vigentes de cada proveedor antes de tomar una decisión de compra. Los precios de Google Batch o Flex no son directamente equivalentes a un request estándar de API bajo demanda, porque la programación, la disponibilidad y las condiciones de procesamiento son distintas; por eso quedan excluidos de esta comparación. Se trata de una comparación acotada, no de una afirmación de que E2X sea la opción más barata del mundo en cualquier configuración.
La mayoría de los modelos text-to-video le entrega un MP4 mudo y le deja el sonido a usted. Veo 3.1 Fast no. La API de Google genera el audio de forma nativa y allí no se puede desactivar: diálogo sincronizado, foley y tono de sala, producidos junto a la imagen y anclados a los fotogramas. El propio prompt de ejemplo documentado por Google contiene líneas habladas.
Eso cambia lo que vale una sola llamada. Escriba "un pescadero deja caer una caja de golpe y grita recién llegado, hace cinco minutos" y obtiene el golpe y el grito en los fotogramas correctos, no un mimo al que hay que ponerle sonido después. Para cortes sociales y animáticas, desaparece un paso entero de post.
Lo que sí puede elegir:
has_sound, con valor por defecto true, que activa el multiplicador ×1.5.Ocho segundos es el techo de un clip. Las secuencias son varias llamadas.
Cree una key en el dashboard, manténgala en su servidor y envíe el job. Solo prompt es obligatorio.
curl -X POST https://api.e2x.ai/v1/jobs/submit \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google/veo-3.1-fast/text-to-video",
"input": {
"prompt": "Cámara al hombro bajando por un callejón de Osaka mojado por la lluvia, de noche. Un vendedor de ramen levanta el noren, sale un chorro de vapor y le grita a un ciclista que pasa: \"¡El último bol de la noche!\". Los reflejos de neón tiemblan en los charcos.",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": "8",
"has_sound": "true"
}
}'
Le devolvemos un job ID. Haga polling, o no:
const headers = {
Authorization: `Bearer ${process.env.E2X_API_KEY}`,
"Content-Type": "application/json",
};
const submitted = await fetch("https://api.e2x.ai/v1/jobs/submit", {
method: "POST",
headers,
body: JSON.stringify({
model: "google/veo-3.1-fast/text-to-video",
input: {
prompt:
"Push-in lento sobre una farera que escribe en un cuaderno de bitácora. El viento hace vibrar el cristal. Ella murmura: \"Tercera noche, sigue sin haber señal.\" La lámpara le barre la cara cada cuatro segundos.",
aspect_ratio: "9:16",
resolution: "720p",
duration: "6",
has_sound: "true",
seed: 41205,
},
}),
}).then((r) => r.json());
const jobId = submitted.data.jobId;
while (true) {
const job = await fetch(`https://api.e2x.ai/v1/jobs/${jobId}`, { headers })
.then((r) => r.json());
if (job.data.status === "completed") {
console.log(job.data.outputs[0].url);
break;
}
if (job.data.status === "failed") {
throw new Error(job.data.error?.message || "Generation failed");
}
await new Promise((r) => setTimeout(r, 5000));
}
Los status van pending → processing → completed, o acaban en failed / cancelled. Envíe un webhookUrl en su lugar y le llamamos nosotros. Presupueste unos cuatro minutos por job; Google publica un suelo de 11 segundos y un techo de 6 minutos en horas punta, así que construya para el techo.
Una trampa del schema: duration y resolution son strings. "8", no 8.
Los mismos pesos, el mismo precio por segundo, tres puertas distintas. Lo decide la entrada que ya tiene:
| Endpoint | Clip de 8s, 720p + audio | Elíjalo cuando |
|---|---|---|
| Veo 3.1 Fast text-to-video | $0.12 | Tiene palabras y nada más, y quiere 4s o 6s |
| Veo 3.1 Fast image-to-video | $0.12 | Ya existe una imagen fija y debe ser el primer fotograma |
| Veo 3.1 Fast reference-to-video | $0.12 | Una persona, un producto o un lugar debe quedar idéntico entre tomas |
El precio no va a deshacer el empate, así que siga el briefing. Si un cliente ya aprobó un key visual, mandarlo como fotograma inicial es mejor que volver a describirlo en prosa. Si seis clips tienen que parecer una misma campaña, cargue hasta tres referencias, pero sepa que reference-to-video obliga a 8 segundos, sin excepciones. Este endpoint conserva las duraciones cortas, lo que lo convierte en la forma más barata de llenar un storyboard de movimiento en bruto. El resto de lo que operamos está en la categoría text-to-video y en el catálogo completo de modelos.
Trate el prompt como una lista de planos con una mezcla de sonido incorporada. Cuatro cosas mueven la aguja más que los adjetivos:
Nombre el movimiento de cámara. "Plano general fijo", "dolly lento hacia dentro", "seguimiento a cámara en mano": el modelo los respeta. Un encuadre vago le da un movimiento a la deriva, sin compromiso.
Escriba el diálogo entre comillas. Líneas cortas, una o dos por clip. Ocho segundos no son mucho. La intención parafraseada ("dice algo alentador") produce relleno mascullado.
Pida el ambiente. Lluvia sobre chapa, el zumbido de una nevera, tráfico lejano. El modelo se inventa una base sonora si usted no la nombra, y puede que no encaje con su montaje.
Diga qué hace la luz. Mediodía nublado, farola de sodio, una sola lámpara práctica. La iluminación decide si un clip de nivel Fast se lee como algo deliberado o como un render.
El inglés está totalmente soportado; Google no ha evaluado aquí otros idiomas. Escriba el diálogo en el idioma que quiera que se hable y espere más variabilidad fuera del inglés.
Descargue antes de 48 horas. Google conserva el archivo dos días: su redacción es que usted debe descargar su vídeo dentro de los 2 días siguientes a la generación. Copie cada salida a su propio bucket en el mismo job que lee outputs[0].url. Un enlace de CDN no es un archivo histórico.
Cada fotograma lleva SynthID. El watermark imperceptible de Google se aplica a toda la salida de Veo y se puede comprobar en su plataforma de verificación. Nadie puede desactivarlo, nosotros incluidos.
Reglas regionales sobre personas. En la UE, el Reino Unido, Suiza y MENA, personGeneration queda restringido a allow_adult.
Facturamos por segundo: $0.01 por segundo de salida, multiplicado por 1,5 cuando el audio está activado. Un clip de 8 segundos en 720p con sonido son $0.12, uno de 6 segundos $0.09, y 4 segundos $0.06. La resolución por encima de 720p lleva su propio multiplicador.
En la configuración y en la fecha que comprobamos —8 segundos, 720p, audio activado, 26 de agosto de 2026—, sí: $0.12 con nosotros frente a $1.20 allí. Nuestro propio precio de lista sin descuento es ese mismo $1.20. La diferencia es un descuento, no un producto distinto.
Nuestro schema expone has_sound y lo dejamos en true por defecto. La propia API Gemini de Google no ofrece ningún interruptor para apagarlo, así que conviene tratar el audio como parte de lo que este modelo es; lo mismo vale para nuestro endpoint image-to-video. Es también el motivo del multiplicador de precio ×1.5.
Ocho segundos, en una sola llamada. En este endpoint puede pedir 4 o 6, pero 1080p y 4k requieren los 8 completos. Las secuencias más largas implican coser varios jobs usted mismo, o mantener un look estable con reference-to-video.
Solo 16:9 y 9:16, a 24fps, en 720p, 1080p o 4k. Nuestros valores por defecto son 16:9 y 720p. No hay opción cuadrada ni 4:5, así que recorte en post si necesita una.
Sí: toda salida de Veo lleva el watermark SynthID, el marcador de procedencia imperceptible de Google, y se puede verificar a través de su plataforma. Ningún proveedor expone un parámetro para desactivarlo.
Presupuestamos unos cuatro minutos por job. Google publica un mínimo de 11 segundos y un máximo de 6 minutos en horas punta, así que para trabajo en volumen use un webhook en vez de un bucle de polling apretado.