需先完成身份认证、构造请求体、发起http post调用并处理返回的异步任务id,最后轮询获取生成结果;认证需用access key id和secret access key按v4签名算法生成authorization头,region限定cn-north-1;payload含prompt、aspect_ratio、duration、model;成功返回201含任务id;轮询get /api/v1/videos/{id},每2秒一次,超180秒失败,status为succeeded时video_url为24小时有效直链。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在Python中调用火山引擎Seedance服务生成视频,需先完成身份认证、构造请求体、发起HTTP POST调用并处理返回的异步任务ID,最后轮询获取生成结果。
安装依赖与准备认证信息
执行 pip install requests 安装基础HTTP库;无需安装火山引擎官方SDK,Seedance当前仅提供RESTful接口,直接使用requests即可。
从火山引擎控制台「访问密钥」页面获取 Access Key ID 和 Secret Access Key,【Secret Access Key必须离线保存,切勿硬编码进代码或提交至Git】。
将Access Key ID和Secret Access Key填入代码变量,同时确认当前Region为cn-north-1(北京),Seedance服务仅在此地域可用。
构造带签名的Authorization头
方法一:使用火山引擎通用签名算法v4(必选)
第一步:拼接标准化请求字符串——含HTTP方法、路径、查询参数、头部键名(小写+分号分隔)、已签名头部值、payload哈希;【其中x-tt-date必须是ISO8601格式且与服务器时间误差不超过300秒,否则返回401】。
第二步:生成派生密钥——用Secret Access Key依次HMAC-SHA256运算日期、地域、服务名(seedance)、终端字符串“aws4_request”。
第三步:计算签名——对标准化请求字符串用派生密钥HMAC-SHA256运算,十六进制输出。
第四步:组合Authorization头——格式为“HMAC-SHA256 Credential=AKI…/20240515/cn-north-1/seedance/aws4_request, SignedHeaders=host;x-tt-date, Signature=…”。
发起视频生成请求
构造JSON payload,至少包含prompt(中文描述)、aspect_ratio(如“16:9”)、duration(单位秒,支持3/4/5)、model(目前仅支持“seedance-v1”)。
发送POST请求到 https://seedance.volcengineapi.com/api/v1/videos ,Header中必须含Host、X-TT-Date、Authorization、Content-Type: application/json。
若返回状态码201,响应体中会包含id字段——这是后续轮询的关键任务ID;若返回400,检查prompt是否含违禁词或长度超200字符。
轮询获取生成结果
方法一:同步轮询
用上一步拿到的id,向 https://seedance.volcengineapi.com/api/v1/videos/{id} 发起GET请求,Header保持Host和Authorization一致。
每2秒请求一次,直到status字段变为“succeeded”或“failed”;status为“processing”时继续等待,超过180秒未完成视为超时失败。
当status为“succeeded”,response中video_url字段即为直链播放地址,有效期24小时;下载请立即执行,过期需重新生成。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











