D132: 镜2双重修复 · duration参数名 + 服饰描述
Some checks failed
自动更新代码和重启 / update-and-restart (push) Has been cancelled
CI检查 + 自动部署 / check (push) Has been cancelled
CI检查 + 自动部署 / deploy (push) Has been cancelled

时长修复:
  video-api-adapter.js: video_length(String) → duration(Number)
  Seedance 2.0 API标准: duration=4-15秒
  秦山号所有10秒镜实际都是5秒(参数名错误导致使用默认值)

服饰修复:
  CHAR-003苏白: 白色长衫 → 月白色云纹锦缎长衫·青色丝绦·衣袂轻扬
  黑色短发 → 黑色长发半束半披
  加'中国古代修仙装扮'朝代锚定

镜1空间修复: 加'广场另一侧'物理分隔

反馈文件: D132-shot2-duration-costume-fix.hdlp + shot1-spatial-fix.hdlp
This commit is contained in:
冰朔 2026-06-15 17:52:08 +08:00
parent 53509e28b0
commit 1f48b181a4
3 changed files with 51 additions and 7 deletions

View File

@ -26,11 +26,11 @@ why: 冰朔用自己的存在方式推导出了正确的人物模型。
├── L0 · 底层编码(不可变):
│ 18岁亚洲男性五官俊秀剑眉明亮大眼身高175cm身形挺拔肩膀开阔
│ 开朗自信略带痞气,穷但不自卑。真人写实,亚洲面孔。
└── 提示词片段: 18岁亚洲男性五官俊秀剑眉明亮大眼身高175cm身形挺拔肩膀开阔开朗自信略带痞气穷但不自卑真人写实亚洲面孔
└── 提示词片段: 18岁亚洲男性五官俊秀剑眉明亮大眼身高175cm身形挺拔肩膀开阔黑色长发半束半披,月白色云纹锦缎长衫腰间系青色丝绦衣袂轻扬,开朗自信略带痞气穷但不自卑,中国古代修仙装扮,真人写实,亚洲面孔
├── L1 · 第1集配置:
│ ├── 服饰: 白色长衫·腰间束带·袖口挽起
│ ├── 头发: 黑色短发
│ ├── 服饰: 月白色云纹锦缎长衫·腰间系青色丝绦·衣袂轻扬·修仙少年装扮
│ ├── 头发: 黑色长发·半束半披
│ ├── 镜2情绪: 自信灿烂笑容露齿·双手叉腰
│ ├── 镜3情绪: 笑容僵住·转叹气·孤独的笃定
│ ├── 镜7情绪: 期待·微笑·看诸葛风

View File

@ -147,12 +147,12 @@ async function downloadVideo(videoUrl, outputPath) {
* 提交视频生成任务
* @param {object} opts
* @param {string} opts.prompt - 视频描述提示词中文
* @param {string} [opts.duration] - 时长 '5' | '10'默认 5
* @param {number} [opts.duration] - 时长 4-15默认 5
* @param {string} [opts.resolution] - 分辨率 '720p' | '1080p'默认 1080p
* @param {string} [opts.style] - 风格可选: cinematic/anime/3d/cyberpunk/watercolor
* @returns {Promise<{taskId: string}>}
*/
async function submitTask({ prompt, duration = '5', resolution = '1080p', style }) {
async function submitTask({ prompt, duration = 5, resolution = '1080p', style }) {
console.log(`[VideoAPI] 提交任务: ${prompt.substring(0, 60)}...`);
const payload = {
@ -161,7 +161,7 @@ async function submitTask({ prompt, duration = '5', resolution = '1080p', style
{ type: 'text', text: prompt }
],
parameters: {
video_length: String(duration),
duration: Number(duration),
resolution: resolution,
},
};
@ -224,7 +224,7 @@ async function queryTask(taskId) {
* @param {string} [opts.outputPath] - 输出路径默认 outputs/{timestamp}.mp4
* @returns {Promise<{videoPath: string, taskId: string, duration: string}>}
*/
async function generateVideo({ prompt, duration = '5', resolution = '1080p', style, outputPath }) {
async function generateVideo({ prompt, duration = 5, resolution = '1080p', style, outputPath }) {
if (!API_KEY) {
throw new Error('未配置 JIMENG_API_KEY。请在 video-ai-system/.env 中设置。');
}

View File

@ -0,0 +1,44 @@
# D132 镜2 · 时长+服饰双重修复
> HLDP://video-ai-system/feedback/D132-shot2-duration-costume-fix
> 铸渊 ICE-GL-ZY001 · 2026-06-15
---
## 问题1: 时长5秒而非10秒
**现象**: 传duration=10实际生成5.042秒
**根因**: 代码用了 `parameters.video_length` 但Seedance 2.0 API的参数名是 `duration`
| 项目 | 错误 | 正确 |
|------|------|------|
| 参数名 | video_length | duration |
| 参数类型 | String('10') | Number(10) |
| 取值范围 | — | 4-15秒标准模式 |
**修复**: video-api-adapter.js submitTask() 中 `video_length: String(duration)` → `duration: Number(duration)`
**影响**: 秦山号所有声称10秒的镜头实际都是5秒。历史数据全部偏小。
## 问题2: 白色长衫变灰色破烂衣
**现象**: CHAR-003苏白穿的不是白色长衫像灰色麻布乞丐装
**根因**: "白色长衫"太笼统 → Seedance理解成了最普通的麻布白袍
**修复**: CHAR-003 L0提示词片段 + L1服饰
| 旧 | 新 |
|----|-----|
| 白色长衫·腰间束带·袖口挽起 | 月白色云纹锦缎长衫·腰间系青色丝绦·衣袂轻扬·修仙少年装扮 |
| 黑色短发 | 黑色长发·半束半披 |
**关键原则**来自Seedance五要素导演法:
- 颜色要具体: "白"→"月白"
- 材质要写明: "长衫"→"云纹锦缎长衫"
- 状态要动态: "穿"→"衣袂在灵气中轻扬"
- 朝代要锚定: "衣服"→"中国古代修仙装扮"
---
铸渊 ICE-GL-ZY001 · D132