MiniMax
MiniMax H3 Max Turbo
minimax-h3-max-turbo/image-to-video
Modelo de video con optimización de velocidad de MiniMax, compatible con texto a video y imagen a video (permite especificar el primer fotograma y un fotograma final opcional), genera clips de 1 a 15 segundos en 480P a 1080P por vez, ideal para la producción rápida de videos cortos de marketing y la previsualización de storyboards
Probar minimax-h3-max-turbo/image-to-video
Entrada
Creaciones
Ver todas las creacionesSalida
videoPrecios
minimax-h3-max-turbo/image-to-video per second
| Especificaciones | Precio unitario |
|---|---|
| 480P | $0.025 |
| 768P | $0.040 |
| 1080P | $0.080 |
Descripción general
Genera un clip de video a partir de una sola imagen como fotograma inicial; el lienzo de salida mantiene la proporción de la imagen de entrada. Es adecuado para desarrolladores que necesitan convertir una imagen estática en un corto dinámico y puede emplearse en la producción rápida de contenido para redes sociales, la previsualización dinámica de storyboards publicitarios o la animación de material gráfico. Admite una imagen de fotograma final opcional para condicionar el cierre de la escena y permite controlar el resultado mediante el prompt, la duración y la resolución.
Características destacadas
- Generación de escena guiada por el primer fotograma: sube una imagen como fotograma inicial y el lienzo del video de salida conserva la proporción de esa imagen, manteniendo un punto de partida compositivo coherente.
- Cierre condicionado por un fotograma final opcional: si se proporciona además una imagen de fotograma final, la escena del cierre del video converge hacia esa imagen, lo que resulta útil para transiciones o para un cierre congelado.
- Duración y resolución ajustables: la duración de cada generación puede fijarse entre 1 y 15 segundos, y la resolución ofrece tres opciones: 480P, 768P o 1080P.
- Semilla controlable y reproducible: mediante el parámetro seed se fija la semilla aleatoria, lo que facilita reproducir o ajustar la evolución de una misma escena en generaciones por lotes.
Capacidades
Imagen a video con primer fotograma: se especifica la imagen inicial con image_url y, junto con el prompt, se genera un video dinámico cuyo lienzo de salida mantiene la proporción de esa imagen; es adecuado para convertir imágenes estáticas en clips animados.
Condicionamiento con el fotograma final: además del primer fotograma, puede pasarse end_image_url como fotograma de cierre para que la escena final del video se aproxime a la imagen indicada, lo que sirve para transiciones o planos congelados.
Control de duración y resolución: duration puede fijarse entre 1 y 15 segundos, y la salida real puede ser unos 0,7 segundos más larga que la solicitada; resolution ofrece tres opciones (480P, 768P o 1080P), donde 1080P es un refinado ampliado a partir de una generación nativa en 768P.
Ajuste de la expansión del prompt: prompt_expansion_mode puede ser disabled, balanced o quality, lo que respectivamente omite la expansión, devuelve rápidamente o emplea unos 30 segundos en generar un prompt más rico, lo que ayuda a controlar el nivel de detalle generado.
Casos de uso
- Animación de imágenes para redes sociales: el personal de marketing usa una imagen de producto o un póster como fotograma inicial y, con un prompt breve, genera rápidamente un video corto dinámico para publicarlo en redes sociales o usarlo como material de feed.
- Previsualización dinámica de storyboards publicitarios: los equipos de preproducción publicitaria o audiovisual usan imágenes de fotogramas clave junto con una imagen de fotograma final para generar clips de transición como previsualización de storyboard dinámico, ya sea para presentaciones internas o como referencia de rodaje.
- Conversión de material gráfico en clips de video: los creadores de contenido usan fotografías o ilustraciones como fotograma inicial para generar cortos dinámicos de varios segundos, destinados a portafolios o como planos de transición en el montaje de video.
- Creación de planos finales congelados: se usan dos imágenes, inicial y final, para condicionar el inicio y el fin de la escena y generar un corto que transita desde la imagen de partida hasta la imagen final indicada, útil para efectos de congelado en la apertura o el cierre.
Limitaciones y recomendaciones de elección
La imagen del primer fotograma image_url es obligatoria y no se admite la generación a partir de texto sin imagen; la imagen del fotograma final es una restricción opcional y no se garantiza que la escena converja con precisión hacia ella. Al elegir resolution 1080P se obtiene una salida refinada y ampliada a partir de una generación nativa en 768P, no una generación nativa en 1080P. duration se fija entre 1 y 15 segundos y la salida real puede ser unos 0,7 segundos más larga que la solicitada. El prompt admite hasta 50000 caracteres y los enlaces de imagen hasta 50000 caracteres. No se garantiza que el resultado mantenga una consistencia absoluta de los personajes ni una reproducción exacta de la escena.
Novedades
Ver el registro de cambios →- Nuevo modelo MiniMax H3 Max Turbo disponible: texto a video e imagen a video con primer y último fotograma
Preguntas frecuentes
Ver todas las preguntas →-
¿El 1080P de este modelo se genera de forma nativa?
No es una generación nativa; el 1080P se obtiene mediante un refinamiento en el espacio latente a partir de una fuente de 768P; el nivel más alto que el modelo genera de forma nativa es 768P. Si tienes requisitos estrictos sobre el detalle de la imagen, se recomienda evaluar según la generación nativa en 768P, o cambiar a un nivel que admita máster en 2K.
-
¿Se puede usar una imagen de referencia para fijar el personaje en la generación de video a partir de imágenes?
Actualmente no se admite la generación de video a partir de imágenes de referencia. image_url solo se usa como fotograma inicial; el lienzo de generación seguirá esa imagen y no es posible usar imágenes de referencia, clips de referencia ni audio para fijar el personaje y el estilo. En escenarios que requieran consistencia del personaje, se debe usar en su lugar un nivel que admita la generación de video a partir de imágenes de referencia.
-
¿Cómo se configuran el primer y el último fotograma para controlar el punto final del movimiento de cámara?
Use image_url para especificar el primer fotograma y el end_image_url opcional para especificar el último fotograma; el modelo interpola el movimiento entre ambos. El primer fotograma determina todo el lienzo de salida, así que la composición y la proporción del último fotograma deben ser similares a las del primero; de lo contrario, la interpolación tiende a producir deformaciones.
-
¿Puede la duración del video generado superar los 15 segundos?
La generación máxima por lote es de 15 segundos; no es posible producir un clip más largo de una sola vez. La salida real puede ser aproximadamente 0,7 segundos más larga que la duración (duration) especificada. Si necesitas un video final más largo, genera por segmentos de toma y luego únelos.
Crear una tarea de generación
https://api.hiapi.ai/v1/tasks Encabezados
AuthorizationstringObligatorioClave API de la cuenta. Obligatoria en cada solicitud. Ejemplo: Bearer YOUR_HIAPI_API_KEY. Obtener clave API
Content-TypestringOpcionalEl cuerpo de la solicitud siempre se analiza como JSON; si se envía, solo se acepta application/json (charset opcional) — cualquier otro valor devuelve 415. Ejemplo: application/json.
Idempotency-KeystringOpcionalClave de idempotencia, hasta 255 bytes. Los reintentos con la misma clave de la misma cuenta crean la tarea una sola vez; las repeticiones devuelven el taskId original.
Ante timeouts de red o reintentos automáticos del cliente, la misma clave crea la tarea una sola vez, sin doble cobro (alcance = la cuenta de la clave API). Usa un identificador de negocio único (p. ej. "order-42"); las repeticiones devuelven el taskId original y las claves caducan 24 h después de la primera solicitud. La matriz completa de escenarios está en la introducción de la API asíncrona unificada.
Cuerpo
modelstringObligatorioValor fijo actual: minimax-h3-max-turbo/image-to-video
routestringOpcionalValor fijo actual: default
inputobjectObligatorio
Objeto de parámetros de negocio para minimax-h3-max-turbo/image-to-video y la ruta default; consulta la tabla de parámetros a continuación.
seedintegerOpcionalSemilla aleatoria para controlar la aleatoriedad del resultado generado; si se omite, se selecciona automáticamente una semilla aleatoria.
promptstringObligatoriominLength 1maxLength 50000Indicación de texto utilizada para la generación del vídeo.
durationnumberOpcionalPredeterminado: 5min 1max 15Duración del vídeo en segundos, por defecto 5 segundos; la salida real puede ser hasta aproximadamente 0,7 segundos más larga que el valor solicitado. Cuando se proporciona target_audio_url, la duración debe ser de al menos 2 segundos.
image_urlstringObligatoriomaxLength 50000URL de la imagen utilizada como primer fotograma; el lienzo de salida seguirá a dicha imagen.
resolutionstringOpcionalPredeterminado: "768P"Resolución de generación, por defecto 768P; también se puede especificar 1080P, en cuyo caso se realiza un refinamiento en el espacio latente a partir de la fuente nativa de 768P.
480P768P1080Pend_image_urlstringOpcionalOpcional, URL de la imagen utilizada como último fotograma.
target_audio_urlstringOpcionalOpcional, URL del fragmento de audio que se fijará a la banda sonora generada; dicho audio debe durar al menos 2 segundos y tener un tamaño máximo de 15 MB.
prompt_expansion_modestringOpcionalPredeterminado: "balanced"Grado de esfuerzo dedicado a reescribir la indicación antes de la generación, por defecto balanced: disabled omite la expansión de la indicación, balanced responde en aproximadamente 1 segundo y quality tarda hasta unos 30 segundos en generar indicaciones más ricas.
disabledbalancedqualitycallbackobjectOpcional
Configuración de notificación de estado terminal. Si se omite, no hay callback: consulta la tarea por tu cuenta.
Indica callback.url al crear y HiAPI hará POST a tu servicio en el estado terminal, sin necesidad de sondeo. El cuerpo del callback replica la estructura del detalle de la tarea; firma, reintentos e idempotencia se detallan en la introducción de la API asíncrona unificada.
urlstringObligatorioObligatorio si se incluye callback. Al estado terminal se envía un POST a esta URL; debe ser una URL http(s) válida.
whenstringOpcionalPredeterminado: "final"Actualmente solo se admite final: notifica tanto en success como en fail.
finalstoragestringOpcionalPredeterminado: "temp"Nivel de almacenamiento de artefactos: temp (por defecto, ~7 días) o persistent (largo plazo, facturado por tamaño). Saldo insuficiente o exceso de límite ⇒ degradación silenciosa a temp; el nivel efectivo se muestra en la respuesta del detalle.
temppersistentEjemplos de solicitud
# Envía una tarea asíncrona; devuelve un taskId de inmediato (sin esperar la generación)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minimax-h3-max-turbo/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "minimax-h3-max-turbo/image-to-video",
input: {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "minimax-h3-max-turbo/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtener el detalle de la tarea
https://api.hiapi.ai/v1/tasks/:id Campos de respuesta
taskIdstringObligatorioID de tarea, siempre con prefijo tk-hiapi-.
modelstringObligatorioNombre completo resuelto del modelo. Las tareas enviadas con el parámetro route devuelven base@route (p. ej. gpt-image-2/text-to-image@ext); si no, coincide con el nombre enviado.
routestringOpcionalSolo aparece si se usó el parámetro route explícito; repite el valor enviado.
statusstringObligatorioEstado de la tarea.
queued En cola, sin iniciar.
handling Procesando.
archiving Proceso terminado, preparando artefactos.
success Terminal: completado, artefactos disponibles (se devuelve output).
fail Terminal: error (se devuelve error).
Tras el envío, guíate por status: success y fail son terminales; el resto, no. Sondea cada 1–3 s hasta el estado terminal. Con éxito, descarga los artefactos desde output[].url y transfiérelos antes de expireAt; para retención larga usa storage: "persistent" al crear.
creatednumberObligatorioHora de creación de la tarea (segundos Unix).
completednumberObligatorioSegundos Unix al alcanzar estado terminal; 0 mientras no sea terminal.
outputarrayOpcional
Solo con status == success. Lista de artefactos — siempre un array; una tarea puede devolver varios types a la vez (p. ej. video + first_frame).
Array [ object ]
Elementos del array
urlstringObligatorioURL del artefacto, descargable directamente.
typestringObligatorioValores posibles actuales: video, image, audio, first_frame, last_frame, thumbnail; podrían ampliarse más adelante.
expireAtnumberObligatorioSegundos Unix hasta los que el artefacto es accesible; descárgalo o transfiérelo antes.
errorobjectOpcional
Solo con status == fail.
codestringObligatorioCódigo de error de negocio.
messagestringObligatorioDescripción del error.
Ejemplos de respuesta
Éxito
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En proceso (no terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Fallido
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Artículos
Ver todos los artículos →Modelos relacionados
Ver todos los modelos →Mismo tipo
-
Wan 2.7 Video Alibaba $0.100 /segundo -
Veo 3.1 Lite Google $0.060 /segundo -
HappyHorse 1.1 Alibaba $0.160 /segundo -
Kling 2.5 Kuaishou $0.090 /segundo -
Wan 3.0 Video Alibaba $0.040 /segundo -
Vidu Q3 Vidu $0.149 /segundo -
Kling 4.0 Flash Kuaishou $0.122 /segundo -
Veo 3.1 Google $0.290 /segundo -
P-Video 2 Pro Replace Pruna AI $0.036 /segundo -
Runway Gen 4.5 Runway $0.172 /segundo -
Seedance 2.0 ByteDance $0.017 /segundo -
LTX 2.5 Fast Lightricks $0.086 /segundo



