guanghulab/video-ai-system/tools/run-ep01-shots1-2.js
冰朔 53509e28b0
Some checks failed
自动更新代码和重启 / update-and-restart (push) Has been cancelled
CI检查 + 自动部署 / check (push) Has been cancelled
CI检查 + 自动部署 / deploy (push) Has been cancelled
D132: 镜1空间修复 · ENV-002提示词改 · 问题记录
问题: Seedance把天道宗牌匾生成在灵霄宗里面
根因: 提示词'灵霄宗……角落天道宗'同一句里两个地点 → 扩散模型无空间理解
修复: ENV-002加入'广场另一侧'物理分隔 → 明确两处不同位置
记录: feedback/D132-shot1-spatial-fix.hdlp

同时: chars.hdlp补回提示词片段(expandPrompt需要)
2026-06-15 17:42:31 +08:00

60 lines
1.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* 付费修仙真人版 · 镜1+镜2 生成脚本
* D132 · 铸渊 ICE-GL-ZY001 · 冰朔见证
* .env 由 video-api-adapter.js 自动加载
*/
const path = require('path');
const { expandPrompt } = require('../engines/hldp-prompt');
const { generateVideo } = require('../engines/video-api-adapter');
async function main() {
// 镜1: 百宗会建立镜头 (5s, 无人物)
const shot1 = expandPrompt(
null, 'ENV-002',
'远景,从云层俯拍下摇到广场,逆光柔光,暖金色调,灵霄宗鎏金大字门庭若市长队望不到头,角落破旧天道宗牌匾格外刺眼,中国风大气磅礴',
'真人写实'
);
const prompt1 = shot1.prompt.replace('[null]', '');
console.log('🎬 镜1 · 百宗会建立 · 5秒');
console.log('');
const out1 = path.resolve(__dirname, '../outputs/shots/ep01-shot01.mp4');
const result1 = await generateVideo({
prompt: prompt1,
duration: '5',
resolution: '1080p',
outputPath: out1,
});
console.log('✅ 镜1完成:', result1.videoPath);
// 镜2: 苏白亮相 (10s, CHAR-003)
const shot2 = expandPrompt(
'CHAR-003', 'ENV-002',
'破旧天道宗牌匾下,近景微仰转全景全身,自信灿烂笑容露齿双手叉腰大声呼喊,柔光暖金色调,轻微逆光勾勒轮廓',
'真人写实'
);
console.log('');
console.log('🎬 镜2 · 苏白亮相 · 10秒');
console.log('');
const out2 = path.resolve(__dirname, '../outputs/shots/ep01-shot02.mp4');
const result2 = await generateVideo({
prompt: shot2.prompt,
duration: '10',
resolution: '1080p',
outputPath: out2,
});
console.log('✅ 镜2完成:', result2.videoPath);
console.log('');
console.log('🎉 两镜全部完成!');
}
main().catch(e => {
console.error('❌ 生成失败:', e.message);
process.exit(1);
});