Todos los productos
Search
Centro de documentos

Alibaba Cloud Model Studio:Wan3.0 - Referencia de API de generación de video

Última actualización: Oct 15, 2026

Wan3.0 es un modelo todo en uno de generación de video basada en referencia que admite Texto a video, Imagen a video (primer fotograma/primer-último fotograma) y Generación de video basada en referencia. Puede generar videos de hasta 30 segundos de duración a 30fps. Actualmente en vista previa.

Para consultar la guía de uso, véase Wan3.0 - Generación de video.

Requisitos previos

Para garantizar una llamada exitosa a la API, asegúrese de que el modelo, la URL del endpoint y la API Key pertenezcan todos a la misma región. Las llamadas entre regiones fallarán.

NotaEl código de ejemplo en este tema se aplica a la región de Singapur.

Llamada HTTP

Dado que las tareas de generación de video toman un tiempo relativamente largo (típicamente 1-5 minutos), la API utiliza llamadas asíncronas. Todo el proceso consta de dos pasos principales: "Crear una tarea -> Sondear resultados", como se describe a continuación:

Paso 1: Cree una tarea y obtenga el ID de tarea

Singapore

POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Beijing

POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

EE. UU. (Virginia)

POST https://{WorkspaceId}.us-east-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Japan (Tokyo)

POST https://{WorkspaceId}.ap-northeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Germany (Frankfurt)

POST https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

China (Hong Kong)

POST https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Reemplace {WorkspaceId} con su ID de espacio de trabajo real.

Nota

  • Después de crear la tarea, utilice el task_id devuelto para consultar el resultado. El task_id es válido durante 24 horas. No cree tareas duplicadas. En su lugar, utilice el sondeo para recuperar el resultado.
  • Para obtener orientación para principiantes, consulte Llamar a APIs con Postman o cURL.

Parámetros de solicitud

Encabezados de solicitud (Headers)

Content-Type string (Requerido)

El tipo de contenido de la solicitud. Debe ser application/json.

Authorization string (Requerido)

Autentica la solicitud con una clave API de Model Studio. Ejemplo: Bearer sk-xxxx.

X-DashScope-Async string (Requerido)

Habilita el procesamiento asíncrono. Las solicitudes HTTP solo admiten llamadas asíncronas. Debe ser enable.

ImportanteSi falta este encabezado de solicitud, se devuelve el error "current user api does not support synchronous calls".

Cuerpo de la solicitud (Request Body)

model string (Obligatorio)

Nombre del modelo. Valores válidos:

  • wan3.0-video-prime: Versión de alta velocidad con capacidades alineadas a la versión estándar, con una velocidad de extremo a extremo significativamente mejorada.
  • wan3.0-video: Versión estándar.

input object (Obligatorio)

Información básica de entrada. Se debe proporcionar prompt o media.

Propiedades

prompt string (Condicionalmente obligatorio)

Indicación de texto utilizada para describir el contenido de video deseado. Debe proporcionarse este parámetro o media.

Admite tanto chino como inglés. Cada carácter chino o letra cuenta como un carácter, con un máximo de 20,000 caracteres. El contenido que exceda este límite se truncará automáticamente.

En el modo de referencia, puede usar "Imagen 1", "Video 1", etc. en la indicación para referirse a los recursos multimedia en el orden correspondiente dentro de la matriz multimedia.

media array (Condicionalmente obligatorio)

Matriz de recursos multimedia que admite imágenes, videos, audio, archivos y páginas web como entrada. Debe proporcionarse esta matriz o prompt.

  • Cada elemento de la matriz es un objeto multimedia que contiene los campos type y url.

  • En el modo de generación de video basado en referencia, el orden de la matriz define el orden de referencia de los recursos en el prompt. Las imágenes y los videos se cuentan por separado, lo que significa que la Imagen 1 y el Video 1 pueden coexistir.

    • El 1º reference_video en la matriz corresponde a Video 1, el 2º corresponde a Video 2, y así sucesivamente.
    • El 1º reference_image en la matriz corresponde a Imagen 1, el 2º corresponde a Imagen 2, y así sucesivamente.
    • El 1º reference_audio en la matriz corresponde a Audio 1, el 2º corresponde a Audio 2, y así sucesivamente.

Propiedades

type string (Obligatorio)

Tipo de recurso multimedia. Valores válidos:

  • first_frame: Imagen del primer fotograma. Máximo 1 imagen, utilizada estrictamente como el primer fotograma del video.
  • last_frame: Imagen del último fotograma. Máximo 1 imagen, utilizada estrictamente como el último fotograma del video.
  • reference_image: Imagen de referencia. Máximo 10 imágenes.
  • reference_video: Video de referencia. Máximo 5 clips, con una duración total no superior a 15 segundos.
  • reference_audio: Audio de referencia. Máximo 5 clips, con una duración total no superior a 15 segundos.
  • file: Archivo. Máximo 1 archivo, no se puede utilizar junto con link.
  • link: Enlace web. Máximo 1 enlace, no se puede utilizar junto con file.

ImportantePara conocer las reglas de combinación y restricciones para diferentes valores de type, consulte Combinaciones de materiales.

url string (Obligatorio)

URL del recurso multimedia o datos codificados en Base64.

Imagen de entrada (type=first_frame / last_frame / reference_image)

URL de imagen o datos codificados en Base64.

Límites de imagen:

  • Formato: JPEG, JPG, PNG (canal transparente no compatible), BMP, WEBP.
  • Resolución: [240, 8000] píxeles por lado.
  • Relación de aspecto: no superior a 8:1.
  • Tamaño del archivo: no superior a 20MB.

Formatos de entrada admitidos:

  1. URL pública:

  2. Cadena de imagen codificada en Base64:

    • Formato de datos: data:{MIME_type};base64,{base64_data}.
    • Ejemplo: data:image/png;base64,GDU7MtCZzEbTbmRZ...... (la cadena codificada es demasiado larga, solo se muestra un fragmento)
    • Para obtener más detalles, consulte Imagen de entrada.

Video de entrada (type=reference_video)

URL del video de referencia.

Límites de video:

  • Formato: mp4, mov.
  • Duración: [1, 15] segundos por clip, con una duración total no superior a 15 segundos.
  • Velocidad de fotogramas: ≥16 fps.
  • Resolución: [240, 4096] píxeles por lado.
  • Relación de aspecto: no superior a 8:1.
  • Tamaño de archivo por clip: no superior a 100MB.

Formatos de entrada admitidos:

  1. URL pública:

Audio de entrada (type=reference_audio)

URL del audio de referencia.

Límites de audio:

  • Formato: wav, mp3.
  • Duración: [1, 15] segundos por clip, con una duración total no superior a 15 segundos.
  • Tamaño del archivo: no superior a 15MB.

Formatos de entrada admitidos:

  1. URL pública:

Archivo de entrada (type=file)

URL del archivo.

Límites de archivo:

  • Formato: docx, doc, xlsx, xls, pptx, ppt, pdf, txt, key, pages, numbers, md.
  • Tamaño del archivo: no superior a 100MB.
  • Límite de páginas: no más de 50 páginas (validado para formatos pdf, docx, doc, pptx, ppt, key, pages).

Formatos de entrada admitidos:

  1. URL pública:

parameters object (Opcional)

Parámetros de procesamiento de video.

Propiedades

resolution string (Opcional)

Nivel de resolución del video generado. Valor predeterminado: 1080P. Valores válidos:

  • 1080P
  • 720P
  • 480P

ratio string (Opcional)

Relación de aspecto del video generado. Valores válidos:

  • adaptive (Valor predeterminado): Relación de aspecto adaptativa que recomienda automáticamente una relación de aspecto adecuada basada en las proporciones de los medios de entrada y la intención.
  • 21:9
  • 16:9
  • 4:3
  • 1:1
  • 3:4
  • 9:16

duration integer (Opcional)

Duración del video generado, en segundos. Valor predeterminado: 5.

  • Sin entrada de video: un número entero en el rango [2, 30].
  • Con entrada de video: la duración total del video de entrada + la duración del video de salida no debe exceder los 30 segundos.
  • Cuando se establece en -1: Modo de duración inteligente, donde el modelo recomienda automáticamente una duración adecuada basada en la indicación de entrada, el contenido y los recursos multimedia.

audio boolean (Opcional)

Indica si el video de salida contiene audio.

  • true: Valor predeterminado, el video de salida contiene audio.
  • false: El video de salida no contiene pista de audio.

Activar o desactivar el audio no afecta al precio.

seed integer (Opcional)

Semilla aleatoria. Utilizada para reproducir resultados de generación. Rango de valores: -1 o [0, 2147483647]. Cuando se establece en -1 o no se especifica, el sistema genera automáticamente una semilla aleatoria. Incluso con el mismo valor de semilla, los resultados de generación pueden no ser perfectamente idénticos.

prompt_extend boolean (Opcional)

Si se debe habilitar la reescritura inteligente de indicaciones. Cuando está habilitada, un modelo de lenguaje grande reescribe la indicación de entrada. Esto mejora significativamente la calidad de generación para indicaciones más cortas, pero aumenta la latencia.

  • true: Valor predeterminado, la reescritura inteligente está activada.
  • false: La reescritura inteligente está desactivada.

ImportanteCuando se proporciona un documento (file) o una página web (link) como entrada, prompt_extend debe establecerse en true.

watermark boolean (Opcional)

Si se debe añadir una marca de agua.

  • false: Valor predeterminado, no se añade marca de agua.
  • true: Se añade una marca de agua.

Referencia de archivo a video

Pase un archivo mediante el tipo file, y el modelo comprenderá automáticamente el contenido del archivo para generar un video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "A high-end smart glasses product advertisement with a minimalist, futuristic, and fashionable style. The color palette features black, silver-gray, and ice-blue tones with subtle white light accents and parameter UI graphics. Opening in pure black background, a pair of smart glasses slowly emerges from darkness with refined highlights on the temple edges. The camera captures ultra-close details of lenses, nose pads, hinges, temples, and material textures, showcasing metal and high-performance composite materials. The product then rotates slowly in mid-air with minimalist motion graphics displaying core parameters. Then the camera pulls back as all parts precisely reassemble into the complete product, transitioning to a young model wearing demonstration in minimalist spaces and urban lighting environments.",
        "media": [
            {
                "type": "file",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260806/ebapmr/glass.pptx"
            }
        ]
    },
    "parameters": {
        "resolution": "480P",
        "ratio": "adaptive",
        "duration": 10,
        "prompt_extend": true
    }
}'

Generación de video basada en referencia

Pase imágenes de referencia, videos, audio, archivos o enlaces web a través de input.media, y el modelo comprenderá automáticamente la intención para generar un video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "Video 1 holds Image 3 and plays a soothing country folk song on the chair in Image 4, saying: '\''The sunshine is so nice today.'\'' Image 1 holds Image 2, passes by Video 1, places Image 2 on the table next to Video 1, and says: '\''That sounds beautiful, can you sing it again?'\''",
        "media": [
            {
                "type": "reference_image",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"
            },
            {
                "type": "reference_video",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"
            },
            {
                "type": "reference_image",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"
            },
            {
                "type": "reference_image",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"
            },
            {
                "type": "reference_image",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"
            }
        ]
    },
    "parameters": {
        "resolution": "480P",
        "ratio": "adaptive",
        "duration": 5,
        "prompt_extend": true
    }
}'

Texto a video

Genere un video utilizando únicamente prompt, sin pasar ningún archivo multimedia.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "A kitten running on a rooftop under the moonlight, neon lights of the city flickering in the distance, cinematic quality, smooth camera movement."
    },
    "parameters": {
        "resolution": "480P",
        "ratio": "adaptive",
        "duration": 5,
        "prompt_extend": true
    }
}'

Primer fotograma a video

Pase únicamente first_frame para especificar estrictamente la imagen del primer fotograma del video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "A cat running on the grass",
        "media": [
            {
                "type": "first_frame",
                "url": "https://cdn.translate.alibaba.com/r/wanx-demo-1.png"
            }
        ]
    },
    "parameters": {
        "resolution": "480P",
        "ratio": "adaptive",
        "duration": 5,
        "prompt_extend": true
    }
}'

Primer-último fotograma a video

Solo se admiten first_frame y last_frame para especificar estrictamente las imágenes del primer y último fotograma del video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "At dawn, the sun just rises. In a pumpkin patch, a small pumpkin hangs with dewdrops. Suddenly, the pumpkin cracks open with a snap, golden light shines through, white mist appears, and a little rabbit emerges from the center of the cracked pumpkin.",
        "media": [
            {
                "type": "first_frame",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/welyei/wan2.7-i2v-first-frame.webp"
            },
            {
                "type": "last_frame",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/zongha/wan2.7-i2v-last-frame.webp"
            }
        ]
    },
    "parameters": {
        "resolution": "480P",
        "ratio": "adaptive",
        "duration": 5,
        "prompt_extend": true
    }
}'

Edición de video

Pase un video para editar mediante el tipo reference_video, combinado con una instrucción prompt para editar el contenido del video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "Transform the entire scene into a clay art style",
        "media": [
            {
                "type": "reference_video",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4"
            }
        ]
    },
    "parameters": {
        "resolution": "720P",
        "prompt_extend": true
    }
}'

Extensión de video

Pase el video original mediante el tipo reference_video, combinado con un prompt que contenga palabras clave de intención de extensión para ampliar el contenido del video. Establezca ratio en adaptive.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan3.0-video",
    "input": {
        "prompt": "Extend Video 1 forward: the baker brings out the brushed bread, sets the brush aside, and the camera follows the baker to the oven in the back for baking",
        "media": [
            {
                "type": "reference_video",
                "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4"
            }
        ]
    },
    "parameters": {
        "resolution": "720P",
        "ratio": "adaptive",
        "prompt_extend": true
    }
}'

Parámetros de respuesta

output object

Información de salida de la tarea.

Propiedades

task_id string

El ID de la tarea. Válido para consultas durante 24 horas.

task_status string

El estado de la tarea.

Valores de enumeración

  • PENDING
  • RUNNING
  • SUCCEEDED
  • FAILED
  • CANCELED
  • UNKNOWN: La tarea no existe o se desconoce su estado.

request_id string

Identificador único de solicitud para rastreo y solución de problemas.

code string

Código de error. Se devuelve solo para solicitudes fallidas. Consulte Códigos de error.

message string

Mensaje de error detallado. Se devuelve solo para solicitudes fallidas. Consulte Códigos de error.

Respuesta exitosa

Guarde el task_id para consultar el estado y el resultado de la tarea.

{
    "output": {
        "task_status": "PENDING",
        "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
    },
    "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

Respuesta de error

Error en la creación de la tarea. Consulte Códigos de error.

{
    "code": "InvalidApiKey",
    "message": "Invalid API-key provided.",
    "request_id": "7438d53d-6eb8-4596-8835-xxxxxx"
}

Paso 2: Consultar resultados por ID de tarea

Singapore

GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

Beijing

GET https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/tasks/{task_id}

EE. UU. (Virginia)

GET https://{WorkspaceId}.us-east-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

Japan (Tokyo)

GET https://{WorkspaceId}.ap-northeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

Germany (Frankfurt)

GET https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

China (Hong Kong)

GET https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/api/v1/tasks/{task_id}

Nota

  • Recomendación de sondeo: La generación de video tarda varios minutos. Utilice un mecanismo de sondeo con un intervalo razonable, como 15 segundos.
  • Transición de estado de la tarea: PENDING → RUNNING → SUCCEEDED o FAILED.
  • Enlace de resultado: Después de que una tarea tenga éxito, se devuelve una URL de video válida durante 24 horas. Descargue y guarde el video en un almacenamiento permanente, como OSS.
  • task_idvalidez: 24 horas. Después de este período, las consultas devuelven el estado de la tarea como UNKNOWN.

Parámetros de solicitud

Encabezados de solicitud (Headers)

Authorization string (Requerido)

Autentica la solicitud con una clave API de Model Studio. Ejemplo: Bearer sk-xxxx.

Parámetros de ruta URL (Path parameters)

task_id string (Obligatorio)

El ID de la tarea.

Consultar resultados de la tarea

Reemplace {task_id} con el valor task_id devuelto por la llamada a la API anterior. El task_id es válido para consultas durante 24 horas. Reemplace {WorkspaceId} con su ID de espacio de trabajo real.

curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

Parámetros de respuesta

output object

Información de salida de la tarea.

Propiedades

task_id string (Obligatorio)

El ID de la tarea.

task_status string

Estado de la tarea.

Valores de enumeración

  • PENDING
  • RUNNING
  • SUCCEEDED
  • FAILED
  • CANCELED
  • UNKNOWN: La tarea no existe o se desconoce su estado.

submit_time string

La hora en que se envió la tarea. La hora está en UTC+8 y el formato es YYYY-MM-DD HH:mm:ss.SSS.

scheduled_time string

La hora en que se ejecutó la tarea. La hora está en UTC+8 y el formato es YYYY-MM-DD HH:mm:ss.SSS.

end_time string

La hora en que se completó la tarea. La hora está en UTC+8 y el formato es YYYY-MM-DD HH:mm:ss.SSS.

orig_prompt string

El prompt de entrada original.

video_url string

URL del video generado. Se devuelve cuando la tarea se completa correctamente. El formato de video es MP4 (codificación H.264).

code string

Código de error. Se devuelve solo para solicitudes fallidas. Consulte Códigos de error.

message string

Mensaje de error detallado. Se devuelve solo para solicitudes fallidas. Consulte Códigos de error.

usage object

Estadísticas de salida. Solo cuenta resultados exitosos.

Propiedades

video_count integer

Número de videos generados. Fijo en 1.

duration float

Duración total del video, en segundos. Cuando no se proporciona ningún video de referencia de entrada, equivale a la duración del video de salida; cuando se proporciona un video de referencia de entrada, equivale a la suma de la duración del video de entrada y la duración del video de salida.

input_video_duration float

Duración del video de entrada, en segundos. Devuelve 0.0 cuando no se proporciona ningún video como entrada.

output_video_duration float

Duración del video de salida, en segundos.

fps integer

Velocidad de fotogramas del video generado. Valor predeterminado: 30.

SR integer

Resolución del video generado. Ejemplo: 720.

ratio string

Relación de aspecto del video generado. Ejemplo: 16:9.

request_id string

Identificador único de solicitud para rastreo y solución de problemas.

Tarea exitosa

Las URL de video son válidas solo durante 24 horas y luego se eliminan automáticamente. Guarde los videos generados de inmediato.

{
    "request_id": "78c9b768-0285-996c-b682-xxxxxx",
    "output": {
        "task_id": "17ed7e50-00cf-4509-aea1-xxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2026-08-06 10:01:35.452",
        "scheduled_time": "2026-08-06 10:01:35.507",
        "end_time": "2026-08-06 10:13:33.838",
        "orig_prompt": "A golden retriever running on a sunny beach, waves crashing in the background, cinematic lighting",
        "video_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxx/video.mp4"
    },
    "usage": {
        "video_count": 1,
        "duration": 5.0,
        "input_video_duration": 0.0,
        "output_video_duration": 5.0,
        "fps": 30,
        "SR": 720,
        "ratio": "16:9"
    }
}

Tarea fallida

Cuando una tarea falla, task_status es FAILED con un código de error y un mensaje. Consulte Códigos de error.

{
    "request_id": "e5e57877-c0fc-47ed-8fad-xxxxxx",
    "output": {
        "task_id": "eff1443c-ccab-4676-aad3-xxxxxx",
        "task_status": "FAILED",
        "code": "InvalidParameter",
        "message": "The two modes are mutually exclusive. Do not pass reference_xx and first_frame/last_frame at the same time."
    }
}

Consulta de tarea caducada

El task_id es válido durante 24 horas. Después de este período, las consultas devuelven el siguiente error.

{
    "request_id": "a4de7c32-7057-9f82-8581-xxxxxx",
    "output": {
        "task_id": "502a00b1-19d9-4839-a82f-xxxxxx",
        "task_status": "UNKNOWN"
    }
}

Combinaciones de materiales

NotaSolo se admiten las siguientes combinaciones específicas de materiales. Pasar otras combinaciones resultará en un error.

Texto a video: Pase únicamente prompt. media no es compatible.

// Text-to-Video
{
  "input": {
    "prompt": "..."
  }
}

Imagen a video, Generación de video basada en referencia, Edición de video, Extensión de video y otros modos requieren pasar materiales a través de la matriz media, con cada elemento especificando type y url. Reglas de combinación de type:

  • Los tipos first_frame/last_frame y reference_image/reference_video/reference_audio/file/link son mutuamente excluyentes y no pueden usarse juntos en la misma solicitud.
  • file y link son mutuamente excluyentes (elija uno), pero ambos pueden combinarse con reference_image/reference_video/reference_audio.
  • reference_image/reference_video/reference_audio pueden combinarse libremente entre sí.
// First frame only
{
  "media": [
    { "type": "first_frame", "url": "..." }
  ]
}
// First frame + last frame only
{
  "media": [
    { "type": "first_frame", "url": "..." },
    { "type": "last_frame", "url": "..." }
  ]
}
// reference_image, reference_video, reference_audio can be freely combined

// Reference image only
{
  "media": [
    { "type": "reference_image", "url": "..." }
  ]
}

// Reference video only
{
  "media": [
    { "type": "reference_video", "url": "..." }
  ]
}

// Reference audio only
{
  "media": [
    { "type": "reference_audio", "url": "..." }
  ]
}

// Image + video
{
  "media": [
    { "type": "reference_image", "url": "..." },
    { "type": "reference_video", "url": "..." }
  ]
}

// Image + audio
{
  "media": [
    { "type": "reference_image", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// Video + audio
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// Image + video + audio
{
  "media": [
    { "type": "reference_image", "url": "..." },
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}
// Must include file or link (choose one), can be freely combined with reference_image/reference_video/reference_audio

// File only
{
  "media": [
    { "type": "file", "url": "..." }
  ]
}

// File + image
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_image", "url": "..." }
  ]
}

// File + video
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_video", "url": "..." }
  ]
}

// File + audio
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// File + image + video
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_image", "url": "..." },
    { "type": "reference_video", "url": "..." }
  ]
}

// File + image + audio
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_image", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// File + video + audio
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// File + image + video + audio
{
  "media": [
    { "type": "file", "url": "..." },
    { "type": "reference_image", "url": "..." },
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}
// Must include reference_video, can be combined with reference_image/reference_audio
// Prompt contains editing intent

// Reference video only
{
  "media": [
    { "type": "reference_video", "url": "..." }
  ]
}

// Video + image
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_image", "url": "..." }
  ]
}

// Video + audio
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// Video + image + audio
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_image", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}
// Must include reference_video, can be combined with reference_image/reference_audio
// Prompt contains extension intent

// Reference video only
{
  "media": [
    { "type": "reference_video", "url": "..." }
  ]
}

// Video + image
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_image", "url": "..." }
  ]
}

// Video + audio
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

// Video + image + audio
{
  "media": [
    { "type": "reference_video", "url": "..." },
    { "type": "reference_image", "url": "..." },
    { "type": "reference_audio", "url": "..." }
  ]
}

FAQ

¿Por qué no puedo pasar audio u otros recursos multimedia en el modo de primer fotograma/primer-último fotograma?

El modo de primer fotograma/primer-último fotograma de Wan3.0 solo admite first_frame y last_frame, y no puede aceptar otros tipos como audio al mismo tiempo (véase Combinaciones de materiales).

Diferencia con la Wan2.7 serie Imagen a video: El modo de primer fotograma/primer-último fotograma de Wan2.7 admite pasar driving_audio para generación impulsada por audio; el modo de primer fotograma/primer-último fotograma de Wan3.0 no lo admite. Si necesita generación impulsada por audio, utilice el modo de referencia multimodal (combinación de reference_image + reference_audio) en su lugar. Para un uso específico, consulte Wan3.0 - Guía de generación de video.