Hueso de goma naranja, foto de producto
Galletas de chispas de chocolate, foto de producto
Vela de lavanda en frasco de vidrio, foto de producto

MiniMax H3 Max · imagen a video · fal.ai · todo lo que se mueve en esta página lo generó H3

LA FOTO
COBRA VIDA.

Una línea de script en la ficha de producto. El visitante escribe qué imagina y la propia foto se convierte, en segundos y en su sitio, en ese video. Escríbelo aquí y míralo pasar en esta misma foto.

Patitas Felices · juguetes para perro

¿Qué tipo de perro tienes?

Por qué importa

LA FOTO
COBRA VIDA

Una ficha de producto es una foto quieta y una promesa. Hasta hoy, animarla costaba un rodaje. Con MiniMax H3 un video de cinco segundos cuesta diez centavos y tarda menos de tres segundos de GPU.

El widget hace una sola pregunta —«¿qué tipo de perro tienes?», «¿con qué te comerías estas galletas?»— y devuelve el video que el visitante imaginó, con el producto idéntico: misma forma, mismo color, mismo sitio.

Todo pasa dentro de la foto que ya estaba. Sin recuadros, sin «generando…», sin cortes: la foto respira y el video se funde encima. Hasta el fondo de esta sección lo generó H3 a partir de un texto.

Ficha de producto con el widget instalado

Escribe tu perro. Míralo jugar con el hueso.

🐾 Patitas Felices · juguetes para perro tienda ficticia

Hueso de goma «Mordisco» naranja

Hueso de goma «Mordisco» naranja

$9.90 · envío gratis desde $25

Goma natural extra resistente, con textura para limpiar dientes y encías. Tamaño M (16 cm).

Prueba con tu propio producto

Sube tu foto. Dile qué pasa. Míralo.

Funciona con cualquier producto

Zapatillas, perfume, una planta. La misma línea.

Tres fotos de producto más, tres respuestas de visitante, tres videos generados por H3 con el mismo widget. Cuando la tarjeta entra en pantalla, la foto cobra vida.

Zapatillas de correr blancas y verde neón

Zapatillas de correr «Ruta 21»

¿Qué quieres que pase con este producto?

«una mano ajusta los cordones»

Frasco de perfume de vidrio con tapa de madera

Perfume «Bosque» 50 ml

¿Qué quieres que pase con este producto?

«una mano lo abre y se lo pone en el cuello»

Monstera en maceta de barro

Monstera en maceta de barro

¿Qué quieres que pase con este producto?

«alguien la riega con una regadera»

Cada video empieza y termina en la foto: por eso hace bucle sin corte. Hazlo con el tuyo ↑

Cómo funciona, de verdad · cada paso ilustrado con un clip H3 texto-a-video

Seis pasos entre tu frase y el video.

01

SANEAR

Lista blanca: letras, dígitos, espacio y puntuación básica. Máximo 60 caracteres. «Con un Café!!» y «cafe» comparten clave de caché.

sanear("Con un Café con Leche!!")
→ "Con un Café con Leche!!"
normalizar → "cafe con leche"
02

PLANTILLA

El texto va entre comillas dentro de una frase fija. Delante, la orden de cámara fija y producto fiel; detrás, el cierre fotorrealista.

A dog of exactly this kind appears:
"un labrador dorado". It comes in,
sniffs the toy, grabs it in its mouth,
chews it playfully, then drops it back
exactly where it was…
03

H3 MAX

minimax/h3-max/image-to-video: 5 s, 768P. La foto va como image_url y como end_image_url: el video tiene que terminar en la foto.

inferencia GPU  2,9 s
cola            0,3 s
envío→resultado 5,8 s (media)
costo           $0,10 (768P·5 s)
04

RECOMPRIMIR

ffmpeg en el servidor: H.264, 1152 px, CRF 27, moov al inicio. De 3,5 MB a 0,32 MB en 0,7 s, sin diferencia visible.

3 503 174 B → 324 227 B
(10,8× menos)
caché: 103,6 MB → 9,0 MB
05

CACHÉ

Clave = tienda · producto · versión de plantilla · resolución · duración · respuesta normalizada. La segunda persona que escribe lo mismo lo ve en 0,3 s.

sha1("perros|hueso|3.3|768P|5|
      bucle|labrador dorado")
→ 167f8d4836ca96b4.mp4
06

EN SU SITIO

El widget descarga el video entero, comprueba que decodifica y solo entonces lo funde sobre la foto. Si algo falla, la foto se queda.

fetch → blob → loadeddata
→ fundido 0,7 s
→ bucle limpio (termina en la foto)
Tira de fotogramas: el hueso se encoge mientras entra el labrador
v1 · «nadie lo toca» · el hueso pasa de ⅓ a ⅛ del cuadro
Tira de fotogramas: el hueso mantiene tamaño y posición con end_image_url
v3 · end_image_url = la foto · mismo tamaño, misma posición
Tira de fotogramas: el pastor alemán levanta el hueso y lo devuelve
plantilla v3 · el pastor alemán levanta el hueso y lo deja donde estaba
Tira de fotogramas: una mano moja la galleta en el café y la devuelve
galletas · la mano moja la galleta de arriba y la devuelve a la pila

Lo que salió mal y cómo se arregló

El producto tenía que quedarse quieto. Y luego, no.

1 · El modelo alejaba la cámara

Puerta de entrada: tres videos con las fotos reales. Forma y color intactos en los tres, pero con un labrador el modelo se alejaba para que cupiera el perro y el hueso se encogía. Endurecer el texto («no reframing, the camera never pulls back») no cambió nada.

2 · La solución no era el prompt

El endpoint admite end_image_url. Con la misma foto como último fotograma, el video no puede terminar alejado ni desplazado. Dos de dos aciertos donde el texto fallaba cero de dos. De regalo, bucle limpio.

3 · Que lo use, no que lo adorne

Un perro sentado junto al hueso era correcto y aburrido. La plantilla actual pide interacción real —morder, masticar, levantar— y confía la vuelta al sitio al fotograma final. Seis de seis tiras verificadas a dos fotogramas por segundo.

4 · Y sin tirones

El primer widget reproducía con el archivo a medias: iba a saltos. Ahora descarga el video entero (ya recomprimido a 0,3 MB) antes de tocar la foto. Si falla, la foto se queda.

Todas las pruebas, con fotogramas

Lo último que H3 generó en este servidor

Todos estos videos los pidió alguien.

Cargando la galería…

Números en vivo del servidor

Medido en el navegador, no prometido.

0solicitudes de visitantes
0servidas desde caché
0latencia media · video nuevo
0p90 · video nuevo
0de video generados
0gastados en fal (tarifa vigente)
Criterio de aceptación: visitante nuevo, respuesta nueva, video en menos de 15 s · medido por el widget en el navegador · 5 de 5
#TiendaRespuestaNavegadorServidorfal
1perros«un beagle tricolor»6,4 s5,8 s5,5 s
2perros«un caniche blanco»7,1 s6,4 s6,1 s
3perros«un corgi»7,6 s7,0 s6,4 s
4galletas«con un té chai»7,6 s7,0 s6,4 s
5galletas«con un batido de fresa»7,1 s6,5 s6,0 s

Tarifa leída en la página del modelo el 2026-09-05: $0,02 por segundo a 768P hasta el 7 de septiembre; después $0,08. Panel completo en /metricas.

Instálalo en tu tienda, con tu clave

Tu servidor, tu clave de fal, tus límites.

La herramienta es tuya: levantas tu propia copia con un comando, pones tu clave de fal.ai y cada video se genera y se cobra en tu cuenta. Nadie pasa por nuestro servidor.

<script src="https://TU-SERVIDOR/widget.js"
        data-tienda="mi-tienda" data-producto="mi-producto"
        data-imagen="#foto-producto"></script>
  1. Descarga el código (widget-video.zip) y arráncalo en tu servidor: cp .env.example .env, escribe tu FAL_KEY, y docker compose up -d --build. Un solo servicio, Docker + Caddy, sin bases de datos. Tu dominio, tu HTTPS.
  2. Configura tu tienda: un JSON con la pregunta, la escena y tu foto de producto; tus límites en el .env (por IP y día, totales, resolución, duración).
  3. Pega la línea en la ficha de producto apuntando a tu servidor. El widget envuelve tu foto, pregunta y la convierte en video. Desde cualquier dominio.

Instrucciones completas README Descargar el código