HiAPI
Blog

Tutorial

API de generación de video con referencia Seedance 2.5: cambia el sujeto conservando el movimiento de cámara del video de referencia

La duración del video de referencia también sefactura: cómo se calcula el costo y cómo escribir @video1 en el prompt, todo explicado en un solo artículo.

Oct 15, 2026
API de generación de video con referencia Seedance 2.5: cambia el sujeto conservando el movimiento de cámara del video de referencia

TL;DR

  • seedance-2.5/reference-to-video toma un video existente como referencia, conserva su movimiento de cámara, ritmo y acción, y cambia el sujeto, el estilo visual o añade música de referencia. Abre la página del modelo para generar en línea; los nuevos usuarios reciben 200 créditos al registrarse.
  • Se factura por segundo, y la duración del video de referencia también cuesta: costo = precio unitario × (duración del video de referencia + duración de salida). 480p $0.1215 por segundo, 720p $0.2715, 1080p $0.68.
  • 5 segundos de referencia + 5 segundos de salida: 480p $1.215, 720p $2.715. Ajustar el prompt primero en 480p es lo más económico.

Primero veamos un resultado real: cambiar el sujeto conservando el movimiento de cámara

El video de referencia es un anuncio de zapatillas para correr, y la imagen de referencia es una botella de perfume. El prompt hace que el modelo siga la secuencia de planos y el movimiento de cámara del anuncio de zapatillas, sustituyendo por completo el zapato por el perfume:

Use @video1 strictly as the reference for shot progression, product rotation, camera paths, pacing, macro close-ups, and lighting transitions. Replace the shoe completely with the perfume bottle from @image1. Preserve the bottle's exact silhouette, amber glass color, cap proportions, label placement, and premium material appearance in every shot. Present it as a luxury fragrance commercial on a dark obsidian pedestal, with warm amber rim light, controlled reflections, fine atmospheric mist, and precise macro detail. Follow the visual rhythm and camera choreography of @video1 while keeping one consistent perfume bottle throughout. Do not transfer shoe laces, soles, fabric textures, or shoe-shaped geometry into the bottle. Do not invent extra products, readable brand text, logos, hands, or people.

Genera con este prompt → (sube tu video de referencia y tu imagen de producto, 480p, 9:16)

seedance-2.5/reference-to-video, 480p, 9:16, salida de 4 segundos, audio generado por el modelo.

@video1 y @image1 son los identificadores de material en el prompt, y corresponden a la primera dirección de reference_video_urls y reference_image_urls según el orden en que se pasan. La frase final «no transfieras los cordones ni la suela al frasco de perfume» es tan importante como la descripción positiva anterior: si no se especifica claramente, el modelo arrastrará detalles del video de referencia.

curl: el primer video

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer $HIAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5/reference-to-video",
    "input": {
      "prompt": "沿用 @video1 的运镜和节奏,把主体换成 @image1 里的产品,光线和构图保持一致",
      "reference_video_urls": ["https://your-cdn.example.com/reference-clip.mp4"],
      "reference_image_urls": ["https://your-cdn.example.com/product.jpg"],
      "duration": 5,
      "resolution": "480p",
      "aspect_ratio": "9:16"
    }
  }'

Si el video de referencia dura 5 segundos, esta solicitud se factura como 10 segundos en 480p: $1.215.

Devuelve taskId; luego consulta el resultado:

curl https://api.hiapi.ai/v1/tasks/tk-hiapi-... \
  -H "Authorization: Bearer $HIAPI_KEY"

Cuando status sea success, descarga el video desde output[0].url.

Python: enviar, consultar y descargar

# pip install requests;先 export HIAPI_KEY=你的 Key
import os, time, uuid, requests

KEY = os.environ["HIAPI_KEY"]
H = {"Authorization": f"Bearer {KEY}"}

def generate(prompt, model="seedance-2.5/reference-to-video", timeout_s=900, **params):
    body = {"model": model, "input": {"prompt": prompt, **params}}
    # 重试提交同一个任务时带同一个 Idempotency-Key,避免重复扣费
    headers = {**H, "Idempotency-Key": str(uuid.uuid4())}
    r = requests.post("https://api.hiapi.ai/v1/tasks", json=body, headers=headers, timeout=30)
    r.raise_for_status()
    res = r.json()
    if res.get("code") != 200:
        raise RuntimeError(res)
    task_id = res["data"]["taskId"]
    deadline = time.time() + timeout_s
    while time.time() < deadline:
        d = requests.get(f"https://api.hiapi.ai/v1/tasks/{task_id}", headers=H, timeout=30).json()["data"]
        if d["status"] == "success":
            return d["output"][0]["url"]
        if d["status"] == "fail":
            raise RuntimeError(d)
        time.sleep(10)
    raise TimeoutError(task_id)

url = generate(
    "保留 @video1 里柯基奔跑的节奏和低机位跟拍,把整个画面改成毛毡定格动画风格",
    reference_video_urls=["https://your-cdn.example.com/corgi-run.mp4"],
    duration=5, resolution="480p", aspect_ratio="16:9",
)
with open("clip.mp4", "wb") as f:
    f.write(requests.get(url).content)

Tres usos habituales

1. Cambiar el sujeto conservando el movimiento de cámara (el ejemplo del perfume de arriba): video de referencia + imagen de referencia. El prompt debe especificar claramente «qué tomar de @video1», «qué tomar de @image1» y «qué no transferir».

2. Transferir solo la acción y cambiar todo el estilo visual: pasa solo el video de referencia. El siguiente convierte un video real de un corgi corriendo en animación stop-motion de fieltro, conservando el ritmo de carrera y el movimiento de cámara de seguimiento:

Use @video1 as the sole visual reference. Preserve the corgi's recognizable markings, running cadence, stride timing, body orientation, forward momentum, and the low side-tracking camera movement. Reimagine the entire scene as a handcrafted stop-motion film made from felt, wool, miniature grass, and painted paper scenery. Keep the warm sunset backlight and continuous chase rhythm, with subtle handmade texture and natural depth of field. Maintain one coherent corgi throughout the shot, anatomically stable legs, smooth forward motion, and a continuous camera path. Do not introduce additional animals, text, logos, abrupt cuts, or unrelated objects.

Genera con este prompt → (sube tu video de referencia)

seedance-2.5/reference-to-video, 480p, solo video de referencia, salida de 4 segundos.

3. Usar video + imagen + audio juntos: añade además reference_audio_urls y especifica en el prompt con @audio1 qué plano cae en qué punto de la música; es mucho más preciso que escribir solo «con música». El audio de referencia debe enviarse junto con el video de referencia.

Resumen de parámetros

Parámetro Valores Descripción
prompt cadena, obligatorio Usa @video1 @image1 @audio1 para referenciar materiales
reference_video_urls obligatorio, 1–10 segmentos MP4/MOV, cada segmento de 2–30 segundos, total no superior a 30 segundos, cada segmento menor de 200 MB
reference_image_urls máximo 30 imágenes JPEG/PNG/WebP, etc., cada una menor de 30 MB
reference_audio_urls máximo 10 segmentos WAV/MP3, debe usarse junto con el video de referencia
duration entero de 4–30, o -1 para que lo decida el modelo, por defecto 5 en segundos
resolution 480p / 720p / 1080p, por defecto 480p
aspect_ratio 16:9 4:3 1:1 3:4 9:16 21:9 adaptive Para vertical, escribe directamente 9:16
generate_audio por defecto true

Calcula el costo

Segundos facturados = duración total del video de referencia + duración de salida. La imagen de referencia y el audio de referencia no tienen cargo adicional.

Referencia + salida 480p ($0.1215/s) 720p ($0.2715/s) 1080p ($0.68/s)
5 s + 4 s $1.0935 $2.4435 $6.12
5 s + 5 s $1.215 $2.715 $6.8
10 s + 10 s $2.43 $5.43 $13.6

Cómo ahorrar: recorta el video de referencia para dejar solo la acción que necesitas, ajusta el prompt en 480p y, cuando esté definido, genera en 720p o 1080p. Para ver el desglose más detallado, consulta Precios de la API de Seedance 2.5.

Antes de publicar

  • Las direcciones de los materiales deben ser de acceso público: el video de referencia debe usar una dirección HTTPS de acceso público.
  • Usa callbacks en lugar de sondeo: añade en el nivel superior de la solicitud "callback": {"url": "https://tu-dominio/hiapi/callback"} y deduplica por taskId.
  • Guarda los archivos a tiempo: output[0].url es un enlace temporal; guárdalo en tu propio almacenamiento en cuanto lo obtengas.
  • Reintentos con clave de idempotencia: añade Idempotency-Key en la cabecera; reintentar con la misma clave solo crea la tarea una vez.
  • Reembolso automático en caso de fallo: solo se factura el video generado correctamente.

Preguntas frecuentes

¿Puedo usarlo sin video de referencia, solo con una imagen de referencia?

No, reference_video_urls es obligatorio. Si solo tienes imágenes, usa el modo de imagen de referencia de Seedance 2.5 imagen a video.

¿Por qué me cobran más de lo que calculé?

La duración del video de referencia también se factura. Un video de referencia de 10 segundos + 5 segundos de salida se calcula como 15 segundos.

¿Puedo generar directamente en vertical?

Sí, escribe aspect_ratio como 9:16 y el modelo genera directamente en vertical, no es un recorte posterior.

¿Cuantos más materiales de referencia, más caro?

La imagen de referencia y el audio de referencia no añaden costo; solo el video de referencia se factura por duración.

Si no tienes materiales de referencia y solo quieres generar un video con texto, consulta API de Seedance 2.5 texto a video. Si quieres probar uno primero, ve a la página del modelo y sube tu video de referencia.

Artículos relacionados

Ver todos los artículos →

Empieza a crear con artefactos de IA persistentes

Consigue tu API key y llama a modelos de imagen, vídeo y audio a través de una única API basada en tasks.

Leer la documentación de la API