本模板由
beauty-talk-science-video-script技能填充。下方所有[ ]占位项按用户确定的元素与 wan3 工作流生成。整段视频一个片段、≤30 秒,不支持二次创作(每次修改整段重发 wan3)。 关键链路:原始固定素材(人物五视角图/制服细节图/音色)是生成输入;最终提交 wan3 的是经用户确认的物料(人物完整形象照 / 门店空间实景图 / 插画 / 音色)。
character_5view.*(固定素材)生成,全片同一人、不变脸。uniform_detail.*(固定素材)生成,可换款式/颜色;胸牌样式必须完全一致、不可变更。voice_ref.*(作 Audio 1 音色参考,wan3 原生生成对白并对口型)以下 3 项用于生成第三节的最终物料,默认不直接提交 wan3(voice_ref 作音色直接提交)。
character_5view.*(URL 或本地)→ 生成「人物完整形象照」的人物参考uniform_detail.*(URL 或本地)→ 生成「人物完整形象照」的制服参考(胸牌锁死)voice_ref.*(URL 或本地)→ Audio 1(直接提交,≤15s)⚠️ 以下物料名里的
Image 1 / Image 2 / Image 3 / Image 4 / Audio 1只是内部命名与 media 数组顺序对应,绝不能原样写进 prompt 文本(wan3 会把Image N/Audio N当对白念出)。prompt 里用自然语言描述画面与音色即可。
人物_完整形象照.jpg(胸牌与 uniform_detail 一致、不可变更)。
assets/store-spatial-index/ 选取的实景照片(如 门店_实景_Z02.jpg),怡呵美 LOGO 随实景自然呈现,不另行生成。
_Z02 开场 zone / _Z05 走位走廊 / _Z04 落点洽谈区),多 zone 可多张分别作各段背景参考;U01–U03 禁用。插画_参考1.jpg / 插画_参考2.jpg,无真人皮肤/血液/文字。
由用户内容转换而来:先规避/修改违禁词,再优化得更口语化白话(书面改日常说话、适当加语气词),不大幅增加字数;自然亲和、适合口播;
/短停、//长停不读出。
[口语化口播全文:……(示例)"很多姐妹分不清泛红和红血丝 / 其实它俩真不是一回事 // 泛红是一过性的、受刺激就红 / 红血丝是毛细血管扩张、常年挂在那 // 搞清楚了,护肤才不踩坑。"]
字数校验:[N] 字 → 按 ~3–3.7 字/秒 估算约 [N/3.5≈T] 秒,须 ≤30 秒(T 最终由第五节 Shot 表求和确认)。
口播文案(第四节)经用户确认后,按技能 Step 6 自动跑
scripts/compliance_scan.py+ 对照references/compliance-check.md复核,结论写入此处留痕。
在口播文案(第四节)与插画(第三节 Image 3/4)都确认后,由用户指定插画从哪一句开始融入画面作为起始点(见技能 Step 7)。
一段连续 prompt 描述整段画面(不拆分请求),wan3 原生生成画面 + 对白 + 环境音。下方范式按官方「总体描述 + 镜头序号 + 时间戳 + 分镜内容」组织,时间戳用英文
Shot N [x-y s]、台词用{}圈出。⚠️ prompt 文本里绝不写Image N/Audio N(会被 wan3 当对白念出,见wan3-workflow.md第一节/第七节);第三节物料靠 media 数组顺序间接对应,用自然语言描述画面与音色即可。写这条 prompt 要像专业编导:人物必须在门店场景里"活"起来,不站桩;运镜/插画展示/门店丰富元素按下面四块随机组合设计(对应elements.md元素 25/26/27/12)。
【总体描述】
一位身穿[米白]美容师制服、[深栗色半扎长发 + 斜刘海]、胸牌样式与参考形象照一致的女美容师,
在怡呵美门店内(依据随附门店实景参考图,背景虚化,可见门店场景元素——依动线规划,如前台、美容床、沙发、产品陈列架等,
一名店员从画面边缘虚化走过)拍摄。画面中的女美容师、门店与插画均依据随附参考图生成,
须保持人物脸型/发型/制服/胸牌一致,门店场景须与随附实景参考图一致(怡呵美 LOGO 随实景自然呈现),插画为卡通动漫风抽象可视化(无真人、无文字)。
整体动线:[开场端坐于面诊桌前自然引入主题,中段起身缓步走向产品陈列架、边走边说,
结尾保持站立、抬手手势收束];说话间以自然手势比划、轻微点头等真实肢体动作呈现。
(动线须按下方【动线设计规划】逐 Shot 落实:单段 ≤2 个动作切换、方向不反向、绝不全程正对镜头站桩。)
镜头语言:[开场中近景极轻微横摇,人物走动时跟随拍摄,讲到核心点时缓慢推近,结尾缓慢拉远收束];
整体手持微晃保留真实手机拍摄质感。
语气与节奏:她自然亲和地讲解,像真人面对面聊天一样有温度有起伏——问句好奇上扬、肯定句沉稳、
列举句轻快有层次、收束句温和坚定;整体语速比自然对话放慢约一半、从容舒缓,让内容自然撑满约[T秒](T=动线规划表各 Shot 时长之和,≤30s),
句与句之间留约[0.5s]自然气口,不赶。
声音:原生清晰女声普通话对白(音色参考随附音频)、轻微环境音、无背景音乐;
口播须有自然语调起伏与停顿,禁止平淡匀速念稿。
硬性约束:口播须严格限于下列分镜台词,禁止添加、删改或自由发挥任何文案之外的语句、语气词;
插画以画中画形式呈现,形状随机选用正方形或圆形;单个插图宽度不超过画面宽度的 1/2、高度按宽高比等比例;可置于画面任意位置,但任何情况下不得遮挡人物面部;禁止全屏覆盖;绝对禁止出现字幕、任何画面文字、
卡通化人物、塑料皮肤、变脸、服装漂移、场景跳变、或其他清晰正脸人物抢镜。
结构说明:以下「Shot序号 + 时间戳 + 分镜内容」为本片分镜脚本;Shot序号与时间戳是给模型的
节奏结构指令,不是台词,禁止当作语音读出;也禁止在任意空白时段补加台词或语气词。
> **🗺️ 动线前置必读**:设计下表动线前,必须先阅读 `assets/store-spatial-index/` 下的《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》,理解店内整体布局(各 zone 相对位置、连通关系、可步行串联关系);**动线长度与人物走动速度须与总时长 T 匹配,切忌让人物走动太快或动线过长(避免瞬移式跨区 / 赶场感)**。动线所涉 zone 据此从资源包选取实景图。
【动线设计规划】(按 Shot 拆解;下表为示例,按本片实际主题替换对应行。⚠️ **人物出场场景由本规划决定,不固定前台**;硬约束:单段 ≤2 个动作切换且方向不反向、绝不全程正对镜头站桩、须与门店场景互动)
> **📐 Shot 台词时间分配表(时长预算)**:本表「时间」列即逐 Shot 的台词时间分配,须**按本任务台词内容**规划(每 Shot 绑定对应口播句数与篇幅)。各 Shot 时长**求和 = 本段预计总时长 T**(上表示例 = 30s,仅作格式演示)。**T 即本段实际 `duration`,必须 ≤30 秒**;T 同步用于:总体描述「撑满约[T秒]」、下方分镜脚本时间戳 0→T 连续铺满、以及第八节 `--duration T` / JSON `duration`。若求和 >30,回第四节精简口播。
| Shot | 时间 | 场景 zone(出场/经过) | 姿态 / 走位 | 手势 / 肢体 | 场景互动点 |
|------|------|------------------------|-------------|-------------|------------|
| 1 | 0-4s | Z02 产品陈列架前(开场) | 端坐于陈列架前 | 手持微晃、自然手势比划 | 怡呵美发光字展柜 / 灯带层板 |
| 2 | 4-7.5s | Z02 产品陈列架前 | 仍端坐(中近景) | 轻微点头、自然手势 | — |
| 3 | 7.5-12.5s | 经主走廊 Z05 → Z04 洽谈区(坐→走,方向不反向) | 起身缓步走向洽谈区 | 边走边说、自然手势 | 主走廊 Z05 / 等候洽谈区 Z04 |
| 4 | 12.5-19.5s | Z04 洽谈区 | 落座 / 站立讲解 | 讲到核心点抬手 / 重音手势 | 洽谈区沙发 / 茶几 / 电视 |
| 5 | 19.5-26s | Z04 洽谈区 | 保持坐姿/站立、轻微侧身 | 自然手势讲解 | — |
| 6 | 26-30s | Z04 洽谈区 | 保持、抬手收束(至结尾不再变换) | 抬手手势收束 | — |
> 动作切换计数:端坐 → 起身走动(1 次);走动后落座/站立至结尾(不二次起身、不反向)。满足 ≤2 个动作切换。
> 场景清单:本片出场/经过 zone = Z02 → Z05 → Z04(据此从 `assets/store-spatial-index/` 选取对应门店实景图,LOGO 随 Z02 发光字展柜等地区实景自然呈现;不限定前台)。
【分镜脚本】(示例时间戳按 T=30s 演示;实际须用本任务算出的 T 重排,全程 0→T 连续、末段结束于 T,不空段)
Shot 1 [0-4s]:[开场中近景,女美容师端坐面诊桌前,手持微晃手机质感,镜头极轻微横摇];
她好奇上扬地提问{[第四节·口播句1]},句末留自然气口。
Shot 2 [4-7.5s]:[仍端坐,中近景];她自然沉稳肯定{[口播句2,含防错替换:定期→订期]},语气笃定、不赶。
Shot 3 [7.5-12.5s]:[她起身缓步走向产品陈列架、边走边说,镜头跟随拍摄];列举句轻快有层次{[口播句3]}。
Shot 4 [12.5-19.5s]:[走到陈列架前站立,讲到核心点时镜头缓慢推近;此处画面右侧嵌入圆形画中画
展示插画参考1(抽象可视化,无真人无文字,禁全屏)]。该句放慢加重带警示,讲到「[核心重音点]」时
稍作重音并留自然停顿{[口播句4]}。
Shot 5 [19.5-26s]:[切换为画面侧边圆角区域画中画展示插画参考2(同风格,不铺满整屏)];她自然亲和{[口播句5]}。
Shot 6 [26-30s]:[结尾缓慢拉远收束,她保持站立、抬手手势收束,中近景];收束句温和坚定{[口播句6]},留足停顿感。
组装为
scripts/generate_video.py的实际调用参数。提交的是第三节确认后的物料。
命令(在任务文件夹 beauty-video-materials/<任务短名>/ 内执行,或直接用绝对路径):
export DASHSCOPE_API_KEY="sk-xxx"
python scripts/generate_video.py \
--config scripts/config.json \
--prompt "$(cat prompt.txt)" \
--media \
人物_完整形象照.png:reference_image \
门店_实景_Z02.png:reference_image \
门店_实景_Z05.png:reference_image \
门店_实景_Z04.png:reference_image \
插画/插画_参考1.png:reference_image \
插画/插画_参考2.png:reference_image \
"https://cdn.x/voice_ref.mp3:reference_audio" \
--duration <T> --ratio 9:16 --resolution 720P \ # T = 第五节动线规划表各 Shot 时长之和(≤30)
--output 成片_<主题>.mp4
说明:
--prompt直接读本任务文件夹的prompt.txt(Step 8 写出);--media引用本任务文件夹内的人物形象照 / 门店实景图 / 插画,--output指向同文件夹成片路径(脚本已自动创建父目录,无需手动 mkdir)。音色voice_ref走config.brand_assets固定 URL 透传,不进文件夹。
等价于请求体(JSON):
{
"model": "wan3.0-video",
"input": {
"prompt": "[第五节整段 prompt]",
"media": [
{"type": "reference_image", "url": "<人物_完整形象照 上传URL>"},
{"type": "reference_image", "url": "<门店_实景_Z0X 上传URL>"},
{"type": "reference_image", "url": "<插画_参考1 上传URL>"},
{"type": "reference_image", "url": "<插画_参考2 上传URL>"},
{"type": "reference_audio", "url": "<voice_ref URL 或 上传URL>"}
]
},
"parameters": {"resolution": "720P", "ratio": "9:16", "duration": <T>, "audio": true, "prompt_extend": false, "watermark": false} # T = 第五节动线规划表各 Shot 时长之和(≤30)
}
修改任何元素都整段重发本请求(不用 wan3 编辑/延长),见技能第 9 步。