创建视频生成任务
创建视频生成任务API用于根据给定的输入信息,如文本提示词、图片(仅I2V模式)等,结合指定的模型及视频处理参数,生成相应的视频。其业务逻辑是将用户输入的各种参数传递给后端模型进行处理,最终输出生成的视频链接。
约束限制
- 对于支持图片上传的模型,单个图片文件的大小不超过10MB。如果以Base64编码形式上传图片,需确保编码后的图片小于10MB。
- 该功能仅支持“西南-贵阳一”区域。
接口信息
|
名称 |
说明 |
取值 |
|---|---|---|
|
API地址 |
调用创建视频生成任务的API地址。 |
https://api.modelarts-maas.com/v1/video/generations |
|
model参数 |
model参数调用名称。 |
您可以任选以下方式获取model参数值。
|
支持模型列表
请求参数说明
|
参数名称 |
参数类型 |
是否必填 |
说明 |
|---|---|---|---|
|
model |
string |
是 |
模型名称,具体请参见表2的“model参数值”列。 |
|
input |
object |
是 |
输入的基本信息,如提示词、图片。关于子参数的说明,请参见表4。 |
|
parameters |
object |
否 |
视频处理参数。关于子参数的说明,请参见表5。 |
|
参数名称 |
参数类型 |
是否必填 |
默认值 |
说明 |
|---|---|---|---|---|
|
prompt |
string |
|
无 |
文本提示词,支持中英文,最大长度为1000字符。 |
|
img_url |
string |
是 |
无 |
说明:
仅支持图生视频模型。 输入给模型的图片内容,填写图片的Base64编码内容。 支持的图片的格式:jpg、png、webp、jpeg、bmp。示例如下:
|
|
参数名称 |
参数类型 |
是否必填 |
默认值 |
说明 |
|---|---|---|---|---|
|
size |
string |
否 |
1280*720 |
生成视频的分辨率档位,当前支持如下档位:
size参数应直接设置为目标分辨率的具体数值(如720x1280)。 注意:720P和1080P输出视频的宽度和高度均为64的整数倍,且接近于输入的分辨率。 |
|
fps |
integer |
否 |
16 |
生成视频每秒的帧数,当前只支持16、24、30。 |
|
duration |
integer |
否 |
5 |
生成视频时长,单位为秒,当前只支持3s和5s。 |
|
seed |
integer |
否 |
无 |
随机种子,用于控制生成内容的随机性。取值范围为[0,2147483648]。 |
响应参数说明
|
参数名称 |
参数类型 |
说明 |
|---|---|---|
|
task_id |
string |
任务ID。 |
Wan2.2-T2V-A14B文生视频请求示例
- Python示例
import requests import json if __name__ == '__main__': url = "https://api.modelarts-maas.com/v1/video/generations" # API地址 api_key = "MAAS_API_KEY" # 把MAAS_API_KEY替换成已获取的API Key # Send request. headers = { 'Content-Type': 'application/json', 'Authorization': f'Bearer {api_key}' } data = { "model": "Wan2.2-T2V-A14B", # model参数 "input": { "prompt": "小猫在散步", }, "parameters": { "size": "720x1280", # 参照表5填写相应的分辨率。 "fps": 16, "duration": 5, "seed": 0 } } response = requests.post(url, headers=headers, data=json.dumps(data), verify=False) # Print result. print(response.status_code) print(response.text) - cURL示例
curl -X POST "https://api.modelarts-maas.com/v1/video/generations" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $MAAS_API_KEY" \ -d '{ "model": "Wan2.2-T2V-A14B", "input": { "prompt": "小猫在散步" }, "parameters": { "size": "720x1280", "fps": 16, "duration": 5, "seed": 0 } }'
Wan2.2-I2V-A14B图生视频请求示例
- Python示例
import base64 import requests import json # Base64 编码格式 def encode_image(image_path): with open(image_path, "rb") as image_file: return base64.b64encode(image_file.read()).decode("utf-8") base64_image = encode_image(r"D:\Pictures\image.jpg") # 图片Base64编码,支持jpg、png、webp、jpeg、bmp。 if __name__ == '__main__': url = "https://api.modelarts-maas.com/v1/video/generations" # API地址 api_key = "MAAS_API_KEY" # 把MAAS_API_KEY替换成已获取的API Key # Send request. headers = { 'Content-Type': 'application/json', 'Authorization': f'Bearer {api_key}' } data = { "model": "Wan2.2-I2V-A14B", # model参数 "input": { "prompt": "小猫在散步", "img_url": f"data:image/jpg;base64,{base64_image}" # 填写图片的Base64编码后内容,支持jpg、png、webp、jpeg、bmp。 }, "parameters": { "size": "720x1280", # 参照表5,填写相应的分辨率。 "fps": 16, "duration": 5, "seed": 0 } } response = requests.post(url, headers=headers, data=json.dumps(data), verify=False) # Print result. print(response.status_code) print(response.text) - cURL示例
请将示例中的“$BASE64_IMAGE”替换为实际的Base64。
curl -X POST "https://api.modelarts-maas.com/v1/video/generations" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $MAAS_API_KEY" \ -d '{ "model": "Wan2.2-I2V-A14B", "input": { "prompt": "小猫在散步", "img_url": "data:image/jpg;base64,$BASE64_IMAGE" }, "parameters": { "size": "720x1280", "fps": 16, "duration": 5, "seed": 0 } }'
响应示例
{
"task_id": "e0cc914f-66bb-402a-912b-990fa1e4ab42",
}
