From 540107d505de44ac99c945dad5a166b33d1d0cf9 Mon Sep 17 00:00:00 2001 From: kang Date: Thu, 14 May 2026 00:20:30 +0800 Subject: [PATCH] auto-save 2026-05-14 00:20 (+4, ~4) --- .memory/worklog.json | 7 + .../page-2026-05-13T16-15-17-471Z.yml | 137 +++++++ .../page-2026-05-13T16-15-19-578Z.yml | 352 ++++++++++++++++++ .../page-2026-05-13T16-17-07-396Z.yml | 137 +++++++ .../page-2026-05-13T16-17-09-493Z.yml | 352 ++++++++++++++++++ web/app/globals.css | 1 - web/components/nodes/index.tsx | 12 +- web/components/nodes/resize-handle.tsx | 4 - 8 files changed, 989 insertions(+), 13 deletions(-) create mode 100644 .playwright-mcp/page-2026-05-13T16-15-17-471Z.yml create mode 100644 .playwright-mcp/page-2026-05-13T16-15-19-578Z.yml create mode 100644 .playwright-mcp/page-2026-05-13T16-17-07-396Z.yml create mode 100644 .playwright-mcp/page-2026-05-13T16-17-09-493Z.yml diff --git a/.memory/worklog.json b/.memory/worklog.json index 838123e..9268558 100644 --- a/.memory/worklog.json +++ b/.memory/worklog.json @@ -2638,6 +2638,13 @@ "type": "session-heartbeat", "message": "Claude 会话活跃 · 最近命令:claude · 3 项未提交变更 · 最近提交:auto-save 2026-05-14 00:08 (+5, ~2)", "files_changed": 3 + }, + { + "ts": "2026-05-14T00:14:48+08:00", + "type": "commit", + "message": "auto-save 2026-05-14 00:14 (+10, ~3)", + "hash": "6cd0713", + "files_changed": 13 } ] } diff --git a/.playwright-mcp/page-2026-05-13T16-15-17-471Z.yml b/.playwright-mcp/page-2026-05-13T16-15-17-471Z.yml new file mode 100644 index 0000000..0c530af --- /dev/null +++ b/.playwright-mcp/page-2026-05-13T16-15-17-471Z.yml @@ -0,0 +1,137 @@ +- generic [active] [ref=e1]: + - main [ref=e3]: + - button "切到明亮主题" [ref=e5]: + - img [ref=e6] + - application [ref=e14]: + - generic [ref=e16]: + - generic: + - generic: + - img: + - group "Edge from input to keyframe" [ref=e17] [cursor=pointer] + - img: + - group "Edge from input to asr" [ref=e20] [cursor=pointer] + - img: + - group "Edge from asr to translate" + - img: + - group "Edge from translate to rewrite" [ref=e23] [cursor=pointer] + - img: + - group "Edge from keyframe to storyboard" [ref=e26] [cursor=pointer] + - img: + - group "Edge from rewrite to storyboard" [ref=e29] [cursor=pointer] + - img: + - group "Edge from storyboard to videogen" [ref=e32] [cursor=pointer] + - img: + - group "Edge from videogen to compose" [ref=e35] [cursor=pointer] + - img: + - group "Edge from rewrite to compose" [ref=e38] [cursor=pointer] + - generic: + - group [ref=e41]: + - generic [ref=e43]: + - generic [ref=e44]: + - img [ref=e46] + - generic [ref=e49]: 输入 · Input + - generic [ref=e52]: + - generic [ref=e53]: STEP 1 · 待运行 + - textbox "粘贴 TikTok 链接" [ref=e54] + - generic [ref=e55]: + - button "提交链接" [disabled] [ref=e56] + - button "上传" [ref=e57]: + - img [ref=e58] + - text: 上传 + - generic "拖动调整宽度" [ref=e62] + - group [ref=e63]: + - generic [ref=e65]: + - generic [ref=e67]: + - img [ref=e69] + - generic [ref=e73]: 镜头拆解 · 元素提取 + - generic [ref=e76]: + - generic [ref=e77]: STEP 2 · 等待抽取 · 待运行 + - generic [ref=e78]: 等待解析(默认 5 张) + - generic "拖动调整宽度" [ref=e80] + - group [ref=e81]: + - generic [ref=e82]: + - generic [ref=e84]: + - img [ref=e86] + - generic [ref=e89]: 声音文案 · ASR + - generic [ref=e92]: + - generic [ref=e93]: STEP 3 · 可选文案轨 · 待运行 + - generic [ref=e94]: Gemini 2.5 · 英文带时间戳分段 + - generic "拖动调整宽度" [ref=e96] + - group [ref=e97]: + - generic [ref=e98]: + - generic [ref=e100]: + - img [ref=e102] + - generic [ref=e106]: 翻译理解 · Translate + - generic [ref=e109]: + - generic [ref=e110]: STEP 4 · EN → ZH · 待运行 + - generic [ref=e111]: 中文翻译 · 段落级 · 实时输出 + - generic "拖动调整宽度" [ref=e113] + - group [ref=e114]: + - generic [ref=e116]: + - generic [ref=e118]: + - img [ref=e120] + - generic [ref=e125]: 元素改造 · Storyboard + - generic [ref=e128]: + - generic [ref=e129]: STEP 6 · 参考元素 → SKG 画面 · 待运行 + - generic [ref=e130]: + - text: 不是复刻原视频:先把参考图里的主体 / 场景 / 动作 / 道具拆出来,再替换成 SKG 产品画面。 + - generic [ref=e131]: 已有 0 个提取元素 · 0 个分镜进入编排 + - button "进入分镜编排" [disabled] [ref=e132] + - generic "拖动调整宽度" [ref=e134] + - group [ref=e135]: + - generic [ref=e136]: + - generic [ref=e138]: + - img [ref=e140] + - generic [ref=e144]: 产品文案 · Rewrite + - generic [ref=e147]: + - generic [ref=e148]: STEP 5 · 接 SKG 卖点 · 待运行 + - textbox "粘贴 SKG 产品信息 / 关键卖点(可作为视频脚本和镜头动作参考)" [disabled] [ref=e149] + - generic [ref=e150]: 下一冲刺接入 + - generic "拖动调整宽度" [ref=e152] + - group [ref=e153]: + - generic [ref=e155]: + - generic [ref=e157]: + - img [ref=e159] + - generic [ref=e161]: 生成视频 · Video Gen + - generic [ref=e164]: + - generic [ref=e165]: STEP 7 · 首帧 + 动作 prompt · 待运行 + - generic [ref=e166]: + - generic [ref=e167]: Seedance + - generic [ref=e168]: Kling + - generic [ref=e169]: Veo 3 + - generic "拖动调整宽度" [ref=e171] + - group [ref=e172]: + - generic [ref=e173]: + - generic [ref=e175]: + - img [ref=e177] + - generic [ref=e181]: 合成成品 · Compose + - generic [ref=e184]: + - generic [ref=e185]: STEP 8 · ffmpeg + 字幕 · 待运行 + - generic [ref=e186]: + - text: 视频片段 + 字幕 / TTS + - text: → 最终 mp4 输出 + - generic "拖动调整宽度" [ref=e187] + - img + - generic "Control Panel" [ref=e188]: + - button "Zoom In" [ref=e189] [cursor=pointer]: + - img [ref=e190] + - button "Zoom Out" [ref=e192] [cursor=pointer]: + - img [ref=e193] + - button "Fit View" [ref=e195] [cursor=pointer]: + - img [ref=e196] + - button "Toggle Interactivity" [ref=e198] [cursor=pointer]: + - img [ref=e199] + - img "Mini Map" [ref=e202] + - region "Notifications alt+T" + - generic [ref=e216] [cursor=pointer]: + - button "Open Next.js Dev Tools" [ref=e217]: + - img [ref=e218] + - generic [ref=e223]: + - button "Open issues overlay" [ref=e224]: + - generic [ref=e225]: + - generic [ref=e226]: "0" + - generic [ref=e227]: "1" + - generic [ref=e228]: Issue + - button "Collapse issues badge" [ref=e229]: + - img [ref=e230] + - alert [ref=e232] \ No newline at end of file diff --git a/.playwright-mcp/page-2026-05-13T16-15-19-578Z.yml b/.playwright-mcp/page-2026-05-13T16-15-19-578Z.yml new file mode 100644 index 0000000..c5f5681 --- /dev/null +++ b/.playwright-mcp/page-2026-05-13T16-15-19-578Z.yml @@ -0,0 +1,352 @@ +- generic [active] [ref=e1]: + - main [ref=e3]: + - button "切到明亮主题" [ref=e5]: + - img [ref=e6] + - generic [ref=e12]: + - generic [ref=e235]: + - generic [ref=e236]: + - img [ref=e237] + - generic [ref=e242]: 分镜头编排 + - generic [ref=e243]: 1 分镜 · 3 元素 + - generic [ref=e244]: · 组织分镜画面 → 为生成视频做准备 + - button "展开编排" [ref=e246]: + - img [ref=e247] + - text: 展开编排 + - application [ref=e14]: + - generic [ref=e16]: + - generic: + - generic: + - img: + - group "Edge from input to keyframe" [ref=e17] [cursor=pointer] + - img: + - group "Edge from input to asr" [ref=e20] [cursor=pointer] + - img: + - group "Edge from asr to translate" + - img: + - group "Edge from translate to rewrite" [ref=e23] [cursor=pointer] + - img: + - group "Edge from keyframe to storyboard" [ref=e26] [cursor=pointer] + - img: + - group "Edge from rewrite to storyboard" [ref=e29] [cursor=pointer] + - img: + - group "Edge from storyboard to videogen" [ref=e32] [cursor=pointer] + - img: + - group "Edge from videogen to compose" [ref=e35] [cursor=pointer] + - img: + - group "Edge from rewrite to compose" [ref=e38] [cursor=pointer] + - generic: + - group [ref=e41]: + - generic [ref=e42]: + - generic [ref=e249]: + - button "再上传一个视频" [ref=e250]: + - img [ref=e251] + - button "72.4s" [ref=e252]: + - generic [ref=e254]: 72.4s + - button "64.5s" [ref=e255]: + - generic [ref=e257]: 64.5s + - button "71.4s" [ref=e258]: + - generic [ref=e260]: 71.4s + - button "72.4s" [ref=e261]: + - generic [ref=e263]: 72.4s + - button "64.5s" [ref=e264]: + - generic [ref=e266]: 64.5s + - button "71.4s" [ref=e267]: + - generic [ref=e269]: 71.4s + - button "71.4s" [ref=e270]: + - generic [ref=e272]: 71.4s + - button "71.4s" [ref=e273]: + - generic [ref=e275]: 71.4s + - button "71.4s" [ref=e276]: + - generic [ref=e278]: 71.4s + - button "71.4s" [ref=e279]: + - generic [ref=e281]: 71.4s + - button "8.0s" [ref=e282]: + - generic [ref=e284]: 8.0s + - button "8.0s" [ref=e285]: + - generic [ref=e287]: 8.0s + - button "8.0s" [ref=e288]: + - generic [ref=e290]: 8.0s + - button "8.0s" [ref=e291]: + - generic [ref=e293]: 8.0s + - button "…" [ref=e294]: + - img [ref=e296] + - generic [ref=e298]: … + - button "…" [ref=e299]: + - img [ref=e301] + - generic [ref=e303]: … + - button "…" [ref=e304]: + - img [ref=e306] + - generic [ref=e308]: … + - generic [ref=e43]: + - generic [ref=e44]: + - img [ref=e46] + - generic [ref=e49]: 输入 · Input + - img [ref=e309] + - generic [ref=e52]: + - generic [ref=e53]: STEP 1 · 视频就绪 · 完成 + - textbox "再加一个 TK 链接" [ref=e312] + - generic [ref=e55]: + - button "+ 加链接" [disabled] [ref=e313] + - button "再传一个" [ref=e314]: + - img [ref=e58] + - text: 再传一个 + - generic [ref=e315]: + - generic [ref=e316]: 576×1024 · 72.4s + - generic [ref=e317]: 📎 上传 + - button "重新解析" [ref=e318] + - generic "拖动调整宽度" [ref=e62] + - group [ref=e63]: + - generic [ref=e64]: + - generic [ref=e319]: + - generic [ref=e320]: + - button "frame 6 1.3s" [ref=e321]: + - img "frame 6" [ref=e322] + - generic [ref=e323]: 1.3s + - button "📋" [ref=e324] + - button "删除该关键帧" [ref=e325]: + - img [ref=e326] + - generic: + - generic: + - generic: + - generic: 分镜 7 + - generic: 1.33s + - generic [ref=e329]: + - button "frame 5 3 7.4s" [ref=e330]: + - img "frame 5" [ref=e331] + - generic "3 个元素已抠图" [ref=e333]: "3" + - generic [ref=e334]: 7.4s + - button "📋" [ref=e335] + - button "删除该关键帧" [ref=e336]: + - img [ref=e337] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e340]: + - button "frame 0 11.7s" [ref=e341]: + - img "frame 0" [ref=e342] + - generic [ref=e343]: 11.7s + - button "📋" [ref=e344] + - button "删除该关键帧" [ref=e345]: + - img [ref=e346] + - generic: + - generic: + - generic: + - generic: 分镜 1 + - generic: 11.68s + - generic [ref=e349]: + - button "frame 7 18.0s" [ref=e350]: + - img "frame 7" [ref=e351] + - generic [ref=e352]: 18.0s + - button "📋" [ref=e353] + - button "删除该关键帧" [ref=e354]: + - img [ref=e355] + - generic: + - generic: + - generic: + - generic: 分镜 8 + - generic: 18.00s + - generic [ref=e358]: + - button "frame 1 23.4s" [ref=e359]: + - img "frame 1" [ref=e360] + - generic [ref=e361]: 23.4s + - button "📋" [ref=e362] + - button "删除该关键帧" [ref=e363]: + - img [ref=e364] + - generic: + - generic: + - generic: + - generic: 分镜 2 + - generic: 23.37s + - generic [ref=e367]: + - button "frame 2 32.7s" [ref=e368]: + - img "frame 2" [ref=e369] + - generic [ref=e370]: 32.7s + - button "📋" [ref=e371] + - button "删除该关键帧" [ref=e372]: + - img [ref=e373] + - generic: + - generic: + - generic: + - generic: 分镜 3 + - generic: 32.72s + - generic [ref=e376]: + - button "frame 3 49.1s" [ref=e377]: + - img "frame 3" [ref=e378] + - generic [ref=e379]: 49.1s + - button "📋" [ref=e380] + - button "删除该关键帧" [ref=e381]: + - img [ref=e382] + - generic: + - generic: + - generic: + - generic: 分镜 4 + - generic: 49.08s + - generic [ref=e385]: + - button "frame 8 52.8s" [ref=e386]: + - img "frame 8" [ref=e387] + - generic [ref=e388]: 52.8s + - button "📋" [ref=e389] + - button "删除该关键帧" [ref=e390]: + - img [ref=e391] + - generic: + - generic: + - generic: + - generic: 分镜 9 + - generic: 52.80s + - generic [ref=e394]: + - button "frame 9 55.5s" [ref=e395]: + - img "frame 9" [ref=e396] + - generic [ref=e397]: 55.5s + - button "📋" [ref=e398] + - button "删除该关键帧" [ref=e399]: + - img [ref=e400] + - generic: + - generic: + - generic: + - generic: 分镜 10 + - generic: 55.50s + - generic [ref=e403]: + - button "frame 4 65.4s" [ref=e404]: + - img "frame 4" [ref=e405] + - generic [ref=e406]: 65.4s + - button "📋" [ref=e407] + - button "删除该关键帧" [ref=e408]: + - img [ref=e409] + - generic: + - generic: + - generic: + - generic: 分镜 5 + - generic: 65.43s + - generic [ref=e65]: + - generic [ref=e67]: + - img [ref=e69] + - generic [ref=e73]: 镜头拆解 · 元素提取 + - img [ref=e412] + - generic [ref=e76]: + - generic [ref=e77]: STEP 2 · 1/10 入编排 · 完成 + - generic [ref=e78]: + - text: 自动 10 张 · + - generic [ref=e415]: 0 已清洗 + - text: · + - generic [ref=e416]: 3/3 已抠图 + - text: 点缩略图 → 清洗水印 / 提取可借鉴元素 → 改造成 SKG 画面素材 + - generic "拖动调整宽度" [ref=e80] + - group [ref=e81]: + - generic [ref=e82]: + - generic [ref=e84]: + - img [ref=e86] + - generic [ref=e89]: 声音文案 · ASR + - generic [ref=e92]: + - generic [ref=e93]: STEP 3 · 可选文案轨 · 待运行 + - generic [ref=e94]: Gemini 2.5 · 英文带时间戳分段 + - generic "拖动调整宽度" [ref=e96] + - group [ref=e97]: + - generic [ref=e98]: + - generic [ref=e100]: + - img [ref=e102] + - generic [ref=e106]: 翻译理解 · Translate + - generic [ref=e109]: + - generic [ref=e110]: STEP 4 · EN → ZH · 待运行 + - generic [ref=e111]: 中文翻译 · 段落级 · 实时输出 + - generic "拖动调整宽度" [ref=e113] + - group [ref=e114]: + - generic [ref=e115]: + - generic [ref=e417]: + - generic [ref=e418]: + - button "病人骨骼" [ref=e419]: + - img "病人骨骼" [ref=e420] + - button "📋" [ref=e421] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e422]: + - button "医生骨骼" [ref=e423]: + - img "医生骨骼" [ref=e424] + - button "📋" [ref=e425] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e426]: + - button "检查台" [ref=e427]: + - img "检查台" [ref=e428] + - button "📋" [ref=e429] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e116]: + - generic [ref=e118]: + - img [ref=e120] + - generic [ref=e125]: 元素改造 · Storyboard + - img [ref=e430] + - generic [ref=e128]: + - generic [ref=e129]: STEP 6 · 参考元素 → SKG 画面 · 1 分镜 · 完成 + - generic [ref=e130]: + - text: 不是复刻原视频:先把参考图里的主体 / 场景 / 动作 / 道具拆出来,再替换成 SKG 产品画面。 + - generic [ref=e131]: 已有 3 个提取元素 · 1 个分镜进入编排 + - button "进入分镜编排" [ref=e132] + - generic "拖动调整宽度" [ref=e134] + - group [ref=e135]: + - generic [ref=e136]: + - generic [ref=e138]: + - img [ref=e140] + - generic [ref=e144]: 产品文案 · Rewrite + - generic [ref=e147]: + - generic [ref=e148]: STEP 5 · 接 SKG 卖点 · 待运行 + - textbox "粘贴 SKG 产品信息 / 关键卖点(可作为视频脚本和镜头动作参考)" [disabled] [ref=e149] + - generic [ref=e150]: 下一冲刺接入 + - generic "拖动调整宽度" [ref=e152] + - group [ref=e153]: + - generic [ref=e155]: + - generic [ref=e157]: + - img [ref=e159] + - generic [ref=e161]: 生成视频 · Video Gen + - generic [ref=e164]: + - generic [ref=e165]: STEP 7 · 首帧 + 动作 prompt · 待运行 + - generic [ref=e166]: + - generic [ref=e167]: Seedance + - generic [ref=e168]: Kling + - generic [ref=e169]: Veo 3 + - generic "拖动调整宽度" [ref=e171] + - group [ref=e172]: + - generic [ref=e173]: + - generic [ref=e175]: + - img [ref=e177] + - generic [ref=e181]: 合成成品 · Compose + - generic [ref=e184]: + - generic [ref=e185]: STEP 8 · ffmpeg + 字幕 · 待运行 + - generic [ref=e186]: + - text: 视频片段 + 字幕 / TTS + - text: → 最终 mp4 输出 + - generic "拖动调整宽度" [ref=e187] + - img + - generic "Control Panel" [ref=e188]: + - button "Zoom In" [ref=e189] [cursor=pointer]: + - img [ref=e190] + - button "Zoom Out" [ref=e192] [cursor=pointer]: + - img [ref=e193] + - button "Fit View" [ref=e195] [cursor=pointer]: + - img [ref=e196] + - button "Toggle Interactivity" [ref=e198] [cursor=pointer]: + - img [ref=e199] + - img "Mini Map" [ref=e202] + - region "Notifications alt+T" + - generic [ref=e216] [cursor=pointer]: + - button "Open Next.js Dev Tools" [ref=e217]: + - img [ref=e218] + - generic [ref=e223]: + - button "Open issues overlay" [ref=e224]: + - generic [ref=e225]: + - generic [ref=e226]: "0" + - generic [ref=e227]: "1" + - generic [ref=e228]: Issue + - button "Collapse issues badge" [ref=e229]: + - img [ref=e230] + - alert [ref=e232] \ No newline at end of file diff --git a/.playwright-mcp/page-2026-05-13T16-17-07-396Z.yml b/.playwright-mcp/page-2026-05-13T16-17-07-396Z.yml new file mode 100644 index 0000000..0c530af --- /dev/null +++ b/.playwright-mcp/page-2026-05-13T16-17-07-396Z.yml @@ -0,0 +1,137 @@ +- generic [active] [ref=e1]: + - main [ref=e3]: + - button "切到明亮主题" [ref=e5]: + - img [ref=e6] + - application [ref=e14]: + - generic [ref=e16]: + - generic: + - generic: + - img: + - group "Edge from input to keyframe" [ref=e17] [cursor=pointer] + - img: + - group "Edge from input to asr" [ref=e20] [cursor=pointer] + - img: + - group "Edge from asr to translate" + - img: + - group "Edge from translate to rewrite" [ref=e23] [cursor=pointer] + - img: + - group "Edge from keyframe to storyboard" [ref=e26] [cursor=pointer] + - img: + - group "Edge from rewrite to storyboard" [ref=e29] [cursor=pointer] + - img: + - group "Edge from storyboard to videogen" [ref=e32] [cursor=pointer] + - img: + - group "Edge from videogen to compose" [ref=e35] [cursor=pointer] + - img: + - group "Edge from rewrite to compose" [ref=e38] [cursor=pointer] + - generic: + - group [ref=e41]: + - generic [ref=e43]: + - generic [ref=e44]: + - img [ref=e46] + - generic [ref=e49]: 输入 · Input + - generic [ref=e52]: + - generic [ref=e53]: STEP 1 · 待运行 + - textbox "粘贴 TikTok 链接" [ref=e54] + - generic [ref=e55]: + - button "提交链接" [disabled] [ref=e56] + - button "上传" [ref=e57]: + - img [ref=e58] + - text: 上传 + - generic "拖动调整宽度" [ref=e62] + - group [ref=e63]: + - generic [ref=e65]: + - generic [ref=e67]: + - img [ref=e69] + - generic [ref=e73]: 镜头拆解 · 元素提取 + - generic [ref=e76]: + - generic [ref=e77]: STEP 2 · 等待抽取 · 待运行 + - generic [ref=e78]: 等待解析(默认 5 张) + - generic "拖动调整宽度" [ref=e80] + - group [ref=e81]: + - generic [ref=e82]: + - generic [ref=e84]: + - img [ref=e86] + - generic [ref=e89]: 声音文案 · ASR + - generic [ref=e92]: + - generic [ref=e93]: STEP 3 · 可选文案轨 · 待运行 + - generic [ref=e94]: Gemini 2.5 · 英文带时间戳分段 + - generic "拖动调整宽度" [ref=e96] + - group [ref=e97]: + - generic [ref=e98]: + - generic [ref=e100]: + - img [ref=e102] + - generic [ref=e106]: 翻译理解 · Translate + - generic [ref=e109]: + - generic [ref=e110]: STEP 4 · EN → ZH · 待运行 + - generic [ref=e111]: 中文翻译 · 段落级 · 实时输出 + - generic "拖动调整宽度" [ref=e113] + - group [ref=e114]: + - generic [ref=e116]: + - generic [ref=e118]: + - img [ref=e120] + - generic [ref=e125]: 元素改造 · Storyboard + - generic [ref=e128]: + - generic [ref=e129]: STEP 6 · 参考元素 → SKG 画面 · 待运行 + - generic [ref=e130]: + - text: 不是复刻原视频:先把参考图里的主体 / 场景 / 动作 / 道具拆出来,再替换成 SKG 产品画面。 + - generic [ref=e131]: 已有 0 个提取元素 · 0 个分镜进入编排 + - button "进入分镜编排" [disabled] [ref=e132] + - generic "拖动调整宽度" [ref=e134] + - group [ref=e135]: + - generic [ref=e136]: + - generic [ref=e138]: + - img [ref=e140] + - generic [ref=e144]: 产品文案 · Rewrite + - generic [ref=e147]: + - generic [ref=e148]: STEP 5 · 接 SKG 卖点 · 待运行 + - textbox "粘贴 SKG 产品信息 / 关键卖点(可作为视频脚本和镜头动作参考)" [disabled] [ref=e149] + - generic [ref=e150]: 下一冲刺接入 + - generic "拖动调整宽度" [ref=e152] + - group [ref=e153]: + - generic [ref=e155]: + - generic [ref=e157]: + - img [ref=e159] + - generic [ref=e161]: 生成视频 · Video Gen + - generic [ref=e164]: + - generic [ref=e165]: STEP 7 · 首帧 + 动作 prompt · 待运行 + - generic [ref=e166]: + - generic [ref=e167]: Seedance + - generic [ref=e168]: Kling + - generic [ref=e169]: Veo 3 + - generic "拖动调整宽度" [ref=e171] + - group [ref=e172]: + - generic [ref=e173]: + - generic [ref=e175]: + - img [ref=e177] + - generic [ref=e181]: 合成成品 · Compose + - generic [ref=e184]: + - generic [ref=e185]: STEP 8 · ffmpeg + 字幕 · 待运行 + - generic [ref=e186]: + - text: 视频片段 + 字幕 / TTS + - text: → 最终 mp4 输出 + - generic "拖动调整宽度" [ref=e187] + - img + - generic "Control Panel" [ref=e188]: + - button "Zoom In" [ref=e189] [cursor=pointer]: + - img [ref=e190] + - button "Zoom Out" [ref=e192] [cursor=pointer]: + - img [ref=e193] + - button "Fit View" [ref=e195] [cursor=pointer]: + - img [ref=e196] + - button "Toggle Interactivity" [ref=e198] [cursor=pointer]: + - img [ref=e199] + - img "Mini Map" [ref=e202] + - region "Notifications alt+T" + - generic [ref=e216] [cursor=pointer]: + - button "Open Next.js Dev Tools" [ref=e217]: + - img [ref=e218] + - generic [ref=e223]: + - button "Open issues overlay" [ref=e224]: + - generic [ref=e225]: + - generic [ref=e226]: "0" + - generic [ref=e227]: "1" + - generic [ref=e228]: Issue + - button "Collapse issues badge" [ref=e229]: + - img [ref=e230] + - alert [ref=e232] \ No newline at end of file diff --git a/.playwright-mcp/page-2026-05-13T16-17-09-493Z.yml b/.playwright-mcp/page-2026-05-13T16-17-09-493Z.yml new file mode 100644 index 0000000..c5f5681 --- /dev/null +++ b/.playwright-mcp/page-2026-05-13T16-17-09-493Z.yml @@ -0,0 +1,352 @@ +- generic [active] [ref=e1]: + - main [ref=e3]: + - button "切到明亮主题" [ref=e5]: + - img [ref=e6] + - generic [ref=e12]: + - generic [ref=e235]: + - generic [ref=e236]: + - img [ref=e237] + - generic [ref=e242]: 分镜头编排 + - generic [ref=e243]: 1 分镜 · 3 元素 + - generic [ref=e244]: · 组织分镜画面 → 为生成视频做准备 + - button "展开编排" [ref=e246]: + - img [ref=e247] + - text: 展开编排 + - application [ref=e14]: + - generic [ref=e16]: + - generic: + - generic: + - img: + - group "Edge from input to keyframe" [ref=e17] [cursor=pointer] + - img: + - group "Edge from input to asr" [ref=e20] [cursor=pointer] + - img: + - group "Edge from asr to translate" + - img: + - group "Edge from translate to rewrite" [ref=e23] [cursor=pointer] + - img: + - group "Edge from keyframe to storyboard" [ref=e26] [cursor=pointer] + - img: + - group "Edge from rewrite to storyboard" [ref=e29] [cursor=pointer] + - img: + - group "Edge from storyboard to videogen" [ref=e32] [cursor=pointer] + - img: + - group "Edge from videogen to compose" [ref=e35] [cursor=pointer] + - img: + - group "Edge from rewrite to compose" [ref=e38] [cursor=pointer] + - generic: + - group [ref=e41]: + - generic [ref=e42]: + - generic [ref=e249]: + - button "再上传一个视频" [ref=e250]: + - img [ref=e251] + - button "72.4s" [ref=e252]: + - generic [ref=e254]: 72.4s + - button "64.5s" [ref=e255]: + - generic [ref=e257]: 64.5s + - button "71.4s" [ref=e258]: + - generic [ref=e260]: 71.4s + - button "72.4s" [ref=e261]: + - generic [ref=e263]: 72.4s + - button "64.5s" [ref=e264]: + - generic [ref=e266]: 64.5s + - button "71.4s" [ref=e267]: + - generic [ref=e269]: 71.4s + - button "71.4s" [ref=e270]: + - generic [ref=e272]: 71.4s + - button "71.4s" [ref=e273]: + - generic [ref=e275]: 71.4s + - button "71.4s" [ref=e276]: + - generic [ref=e278]: 71.4s + - button "71.4s" [ref=e279]: + - generic [ref=e281]: 71.4s + - button "8.0s" [ref=e282]: + - generic [ref=e284]: 8.0s + - button "8.0s" [ref=e285]: + - generic [ref=e287]: 8.0s + - button "8.0s" [ref=e288]: + - generic [ref=e290]: 8.0s + - button "8.0s" [ref=e291]: + - generic [ref=e293]: 8.0s + - button "…" [ref=e294]: + - img [ref=e296] + - generic [ref=e298]: … + - button "…" [ref=e299]: + - img [ref=e301] + - generic [ref=e303]: … + - button "…" [ref=e304]: + - img [ref=e306] + - generic [ref=e308]: … + - generic [ref=e43]: + - generic [ref=e44]: + - img [ref=e46] + - generic [ref=e49]: 输入 · Input + - img [ref=e309] + - generic [ref=e52]: + - generic [ref=e53]: STEP 1 · 视频就绪 · 完成 + - textbox "再加一个 TK 链接" [ref=e312] + - generic [ref=e55]: + - button "+ 加链接" [disabled] [ref=e313] + - button "再传一个" [ref=e314]: + - img [ref=e58] + - text: 再传一个 + - generic [ref=e315]: + - generic [ref=e316]: 576×1024 · 72.4s + - generic [ref=e317]: 📎 上传 + - button "重新解析" [ref=e318] + - generic "拖动调整宽度" [ref=e62] + - group [ref=e63]: + - generic [ref=e64]: + - generic [ref=e319]: + - generic [ref=e320]: + - button "frame 6 1.3s" [ref=e321]: + - img "frame 6" [ref=e322] + - generic [ref=e323]: 1.3s + - button "📋" [ref=e324] + - button "删除该关键帧" [ref=e325]: + - img [ref=e326] + - generic: + - generic: + - generic: + - generic: 分镜 7 + - generic: 1.33s + - generic [ref=e329]: + - button "frame 5 3 7.4s" [ref=e330]: + - img "frame 5" [ref=e331] + - generic "3 个元素已抠图" [ref=e333]: "3" + - generic [ref=e334]: 7.4s + - button "📋" [ref=e335] + - button "删除该关键帧" [ref=e336]: + - img [ref=e337] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e340]: + - button "frame 0 11.7s" [ref=e341]: + - img "frame 0" [ref=e342] + - generic [ref=e343]: 11.7s + - button "📋" [ref=e344] + - button "删除该关键帧" [ref=e345]: + - img [ref=e346] + - generic: + - generic: + - generic: + - generic: 分镜 1 + - generic: 11.68s + - generic [ref=e349]: + - button "frame 7 18.0s" [ref=e350]: + - img "frame 7" [ref=e351] + - generic [ref=e352]: 18.0s + - button "📋" [ref=e353] + - button "删除该关键帧" [ref=e354]: + - img [ref=e355] + - generic: + - generic: + - generic: + - generic: 分镜 8 + - generic: 18.00s + - generic [ref=e358]: + - button "frame 1 23.4s" [ref=e359]: + - img "frame 1" [ref=e360] + - generic [ref=e361]: 23.4s + - button "📋" [ref=e362] + - button "删除该关键帧" [ref=e363]: + - img [ref=e364] + - generic: + - generic: + - generic: + - generic: 分镜 2 + - generic: 23.37s + - generic [ref=e367]: + - button "frame 2 32.7s" [ref=e368]: + - img "frame 2" [ref=e369] + - generic [ref=e370]: 32.7s + - button "📋" [ref=e371] + - button "删除该关键帧" [ref=e372]: + - img [ref=e373] + - generic: + - generic: + - generic: + - generic: 分镜 3 + - generic: 32.72s + - generic [ref=e376]: + - button "frame 3 49.1s" [ref=e377]: + - img "frame 3" [ref=e378] + - generic [ref=e379]: 49.1s + - button "📋" [ref=e380] + - button "删除该关键帧" [ref=e381]: + - img [ref=e382] + - generic: + - generic: + - generic: + - generic: 分镜 4 + - generic: 49.08s + - generic [ref=e385]: + - button "frame 8 52.8s" [ref=e386]: + - img "frame 8" [ref=e387] + - generic [ref=e388]: 52.8s + - button "📋" [ref=e389] + - button "删除该关键帧" [ref=e390]: + - img [ref=e391] + - generic: + - generic: + - generic: + - generic: 分镜 9 + - generic: 52.80s + - generic [ref=e394]: + - button "frame 9 55.5s" [ref=e395]: + - img "frame 9" [ref=e396] + - generic [ref=e397]: 55.5s + - button "📋" [ref=e398] + - button "删除该关键帧" [ref=e399]: + - img [ref=e400] + - generic: + - generic: + - generic: + - generic: 分镜 10 + - generic: 55.50s + - generic [ref=e403]: + - button "frame 4 65.4s" [ref=e404]: + - img "frame 4" [ref=e405] + - generic [ref=e406]: 65.4s + - button "📋" [ref=e407] + - button "删除该关键帧" [ref=e408]: + - img [ref=e409] + - generic: + - generic: + - generic: + - generic: 分镜 5 + - generic: 65.43s + - generic [ref=e65]: + - generic [ref=e67]: + - img [ref=e69] + - generic [ref=e73]: 镜头拆解 · 元素提取 + - img [ref=e412] + - generic [ref=e76]: + - generic [ref=e77]: STEP 2 · 1/10 入编排 · 完成 + - generic [ref=e78]: + - text: 自动 10 张 · + - generic [ref=e415]: 0 已清洗 + - text: · + - generic [ref=e416]: 3/3 已抠图 + - text: 点缩略图 → 清洗水印 / 提取可借鉴元素 → 改造成 SKG 画面素材 + - generic "拖动调整宽度" [ref=e80] + - group [ref=e81]: + - generic [ref=e82]: + - generic [ref=e84]: + - img [ref=e86] + - generic [ref=e89]: 声音文案 · ASR + - generic [ref=e92]: + - generic [ref=e93]: STEP 3 · 可选文案轨 · 待运行 + - generic [ref=e94]: Gemini 2.5 · 英文带时间戳分段 + - generic "拖动调整宽度" [ref=e96] + - group [ref=e97]: + - generic [ref=e98]: + - generic [ref=e100]: + - img [ref=e102] + - generic [ref=e106]: 翻译理解 · Translate + - generic [ref=e109]: + - generic [ref=e110]: STEP 4 · EN → ZH · 待运行 + - generic [ref=e111]: 中文翻译 · 段落级 · 实时输出 + - generic "拖动调整宽度" [ref=e113] + - group [ref=e114]: + - generic [ref=e115]: + - generic [ref=e417]: + - generic [ref=e418]: + - button "病人骨骼" [ref=e419]: + - img "病人骨骼" [ref=e420] + - button "📋" [ref=e421] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e422]: + - button "医生骨骼" [ref=e423]: + - img "医生骨骼" [ref=e424] + - button "📋" [ref=e425] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e426]: + - button "检查台" [ref=e427]: + - img "检查台" [ref=e428] + - button "📋" [ref=e429] + - generic: + - generic: + - generic: + - generic: 分镜 6 + - generic: 7.39s + - generic [ref=e116]: + - generic [ref=e118]: + - img [ref=e120] + - generic [ref=e125]: 元素改造 · Storyboard + - img [ref=e430] + - generic [ref=e128]: + - generic [ref=e129]: STEP 6 · 参考元素 → SKG 画面 · 1 分镜 · 完成 + - generic [ref=e130]: + - text: 不是复刻原视频:先把参考图里的主体 / 场景 / 动作 / 道具拆出来,再替换成 SKG 产品画面。 + - generic [ref=e131]: 已有 3 个提取元素 · 1 个分镜进入编排 + - button "进入分镜编排" [ref=e132] + - generic "拖动调整宽度" [ref=e134] + - group [ref=e135]: + - generic [ref=e136]: + - generic [ref=e138]: + - img [ref=e140] + - generic [ref=e144]: 产品文案 · Rewrite + - generic [ref=e147]: + - generic [ref=e148]: STEP 5 · 接 SKG 卖点 · 待运行 + - textbox "粘贴 SKG 产品信息 / 关键卖点(可作为视频脚本和镜头动作参考)" [disabled] [ref=e149] + - generic [ref=e150]: 下一冲刺接入 + - generic "拖动调整宽度" [ref=e152] + - group [ref=e153]: + - generic [ref=e155]: + - generic [ref=e157]: + - img [ref=e159] + - generic [ref=e161]: 生成视频 · Video Gen + - generic [ref=e164]: + - generic [ref=e165]: STEP 7 · 首帧 + 动作 prompt · 待运行 + - generic [ref=e166]: + - generic [ref=e167]: Seedance + - generic [ref=e168]: Kling + - generic [ref=e169]: Veo 3 + - generic "拖动调整宽度" [ref=e171] + - group [ref=e172]: + - generic [ref=e173]: + - generic [ref=e175]: + - img [ref=e177] + - generic [ref=e181]: 合成成品 · Compose + - generic [ref=e184]: + - generic [ref=e185]: STEP 8 · ffmpeg + 字幕 · 待运行 + - generic [ref=e186]: + - text: 视频片段 + 字幕 / TTS + - text: → 最终 mp4 输出 + - generic "拖动调整宽度" [ref=e187] + - img + - generic "Control Panel" [ref=e188]: + - button "Zoom In" [ref=e189] [cursor=pointer]: + - img [ref=e190] + - button "Zoom Out" [ref=e192] [cursor=pointer]: + - img [ref=e193] + - button "Fit View" [ref=e195] [cursor=pointer]: + - img [ref=e196] + - button "Toggle Interactivity" [ref=e198] [cursor=pointer]: + - img [ref=e199] + - img "Mini Map" [ref=e202] + - region "Notifications alt+T" + - generic [ref=e216] [cursor=pointer]: + - button "Open Next.js Dev Tools" [ref=e217]: + - img [ref=e218] + - generic [ref=e223]: + - button "Open issues overlay" [ref=e224]: + - generic [ref=e225]: + - generic [ref=e226]: "0" + - generic [ref=e227]: "1" + - generic [ref=e228]: Issue + - button "Collapse issues badge" [ref=e229]: + - img [ref=e230] + - alert [ref=e232] \ No newline at end of file diff --git a/web/app/globals.css b/web/app/globals.css index 1034afd..ec8157a 100644 --- a/web/app/globals.css +++ b/web/app/globals.css @@ -323,7 +323,6 @@ border: none !important; padding: 0 !important; border-radius: 0 !important; - width: auto !important; font-size: inherit !important; color: inherit !important; text-align: left !important; diff --git a/web/components/nodes/index.tsx b/web/components/nodes/index.tsx index d875237..7bfe792 100644 --- a/web/components/nodes/index.tsx +++ b/web/components/nodes/index.tsx @@ -104,16 +104,12 @@ export function InputNode({ data, selected }: NodeProps<{ data: NodeData }> | an return (
- {/* 多视频缩略图浮条 — 「+」在最左,job 按时间倒序(最新靠左高亮),统一高度 64,宽度按视频原比例,一行横滚 */} + {/* 多视频缩略图浮条 — 「+」在最左,job 按时间倒序(最新靠左高亮),统一高度 64,宽度按视频原比例,一行横滚。 + 浮条宽度 = 节点宽度(节点拖宽后浮条同步变宽,可见更多缩略图,少滚动)。 */} {!videoExpanded && d.jobs.length > 0 && (
{/* + 再上传一个(放在最前面) */}