ai-chatbot/docs/video-canvas-real-test-2026-09-16.md

112 lines
13 KiB
Markdown
Raw Permalink 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.

# 视频画布真实测试与 LibTV 对照(2026-09-16)
> 后续进展见 [继续完善与复测记录](video-canvas-completion-2026-09-16.md):官方千问 3.8 提示词处理、Veo 文生视频、完整媒体处理 API 已出现真实成功结果。下文保留上一轮当时的测试状态。
本轮按用户最新指令恢复真实调用。在独立本地工作树、127.0.0.1:3016、两个专用测试账号下运行真实接口,未启用 CANVAS_E2E_LOCAL 模拟模式。使用现有数据库配置及服务商线路;未改真实用户画布。参考站为 https://www.liblib.tv/canvas,浏览器统一为 1280×720。
**结论:有视频模型,但本轮尚不能验收视频生成成功。图片生成和本地视频处理通过;保存缺陷已本地修复;仍有未接入入口。不能把模型目录可见等同于可生成,也不能把当前页面称为完整像素级复刻。**
## 真实调用结果
| 测试 | 结果 | 证据 / 限制 |
|---|---|---|
| VIP98K 当前目录 + 当前 Key 授权模型 | 两份目录均 30 个模型,视频为 `veo-3.1-fast` | 当前可用目录只有这一条视频模型;不代表服务商历史或其他账号没有其他模型 |
| 文生视频,8 秒 / 720P | 失败,32.185 秒 | 任务受理后上游结果 HTTP 409 / Video generation failed;本站返回 500 |
| 首帧图生视频,同参数 | 失败,23.872 秒 | 上游结果 HTTP 409 / Video generation failed |
| 首尾帧视频,2 张图 | 失败,10.148 秒 | 上游 HTTP 503 / media service temporarily unavailable |
| 多参考视频,2 张图 | 服务端记录失败 | 上游 HTTP 503;测试客户端随后中断,没有完整客户端耗时记录,不算通过 |
| 服务商原始示例直接调用对照 | 失败,约 9.3 秒 | POST 202,第一次轮询 202,第二次 409,明确 `task_failed`。证明本次失败可绕过本站复现,并非仅本站参数或轮询问题 |
| 官方 Qwen3.8 Max 文本脚本 | 失败,8.940 秒 | Access denied / account in good standing / overdue-payment |
| 官方 Qwen3.8 Max 图片理解 | 失败,9.390 秒 | 同上,官方账户状态阻塞;未擅自切回旧模型 |
| GPT Image 2.5 参考图产品三视图 | **通过,70.108 秒** | 本站真实图片 API 返回新图片,红杯三视角合成图;输入为人工合成测试图。此项只覆盖同链路样本,不代表所有图片预设逐个验收 |
| 原有 Veo 成片读取 | 通过 | 只读取之前成功的任务,不计作本轮生成成功;H264 1280×720、AAC、8 秒 |
| 成片画面裁剪(实际处理函数) | **通过,479 ms** | 640×360、8 秒、H264 + AAC,新文件 897501 字节 |
| 成片音轨提取(实际处理函数) | **通过,81 ms** | 8 秒 AAC,197583 字节 |
| 成片去音轨(实际处理函数) | **通过,39 ms** | 1280×720、8 秒,只有视频流,1526056 字节 |
| 裁剪 / 拆轨完整 HTTP API | 本地环境阻塞 | 本机代理把服务商域名解析为 198.18.1.165,安全下载器拒绝该保留网段。未放宽 SSRF 防护。上述处理通过不等于完整下载/上传 API 验收通过 |
直接对照任务 ID:`d3b6199d-df42-479b-bc5f-8c797f61659c`;请求 ID:`68a19660-123d-474b-aa48-cd4c6e51bed3`。可提交给 VIP98K 排查 `veo-3.1-fast` 线路。没有对失败是否扣费作假定。
## 与参考站逐项比较
| 项目 | LibTV 当前界面 | 本站本轮核验 | 结论 |
|---|---|---|---|
| 视频模型菜单 | 多个 Seedance、Kling、Wan、Hailuo、Vidu 等模型 | 只显示当前真正授权且兼容的 Veo,以及自动选择 | 匹配正确,模型覆盖范围不同 |
| 参数 | 当前 Seedance 2.0 界面有多比例、480P/720P/1080P/4K、可调时长和音频开关 | Veo 为 16:9、720P/1080P、8 秒,菜单浏览器核验通过 | 不能复制不受当前线路支持的选项;参考菜单可见不代表每种组合都已验证 |
| 文生 / 首帧 / 首尾帧 / 多参考 | 有相应模式,参考图数量影响可选项 | 四类请求均实测,当前上游失败 | 接口已接,产物未通过 |
| 音频生视频 | 有入口和对应专用模型 | 当前无已启用可用音频驱动视频线路,部分入口仍待接入 | 未完成 |
| 提示词优化 / 翻译 | 有操作入口 | 当前视频编辑器点击仅显示“后端待接入”;配置中的模型不能使入口自动可用 | 未完成,需接真实处理接口 |
| 联网搜索 / 素材校验 / AutoLink | 三项开关可见 | 本站有前两项开关;未验证其真实执行,AutoLink 不齐全 | 不计作功能完成 |
| 智能剪辑 / 逐帧拉片 / 导演台 | 智能剪辑、逐帧拉片 SD2.5、导演台入口 | 本站视频合成及导演台存在;逐帧拉片未完整对应 | 未完成全量对齐 |
| 时段剪辑 | 参考有剪辑工具 | 本站记录时间范围后仍提示导出后端待接入 | 未完成;与已通过的“画面裁剪”不同 |
| 视频超清 / 去字幕 / 人声背景音分离 | 有对应入口 | 无确认可用专用线路;普通拆音轨不能替代人声分离 | 未完成 |
| 画布保存 | 参考可持久化工作区 | 本站原 saveCanvas 未被调用,刷新实际丢节点;本轮补自动保存、手动保存、⌘/Ctrl+S | 本地修复并通过浏览器刷新验证 |
| 文本草稿、标题、缩放 | 应在继续编辑时保留 | 文本内容、未提交草稿、标题、50% 缩放均刷新恢复 | 本地通过 |
| 保存冲突 | 本轮未修改参考站冲突状态 | 串行合并更新;409 停止覆盖并提示,网络错误保留脏数据供重试 | 4 项保存队列测试通过 |
| 顶部栏稳定性 | 顶栏固定在视口 | 本站节点编辑导致原生容器滚动、顶栏移出视口;改为固定画布和 overflow-clip | 本地修复 |
| 视觉一致性 | 深色画布、底部工具栏、节点浮层 | 布局相似,但品牌/顶部导航、底纹、图标、功能覆盖仍不同 | 局部对齐,非像素级完成 |
参考账号显示 20 积分,所选视频生成界面显示 135;未充值或购买,也未在参考站提交生成。因此没有“双站同提示词成片效果”的 A/B 结果。
## 本轮修复与验证
- 自动保存仅在项目成功加载后启用;只有确认 404 才初始化空画布,加载失败不能覆盖原记录。
- 画布标题、节点、连线、选择和视口统一保存,恢复时不再只恢复节点。
- 文本编辑器草稿和模型选择及时写入节点;同项目的服务器刷新不重新覆盖本地编辑。
- 保存采用串行队列,保存期间的新修改合并为下一次写入;失败保留状态,409 不拿最新版本号强行覆盖。
- 保存状态可见;未保存退出时提示;切至后台尝试保存。
- VIP98K 日志增加受理任务 ID 和失败结果状态,便于区分排队、上游失败、前端问题。
- 12 项模型/参数/媒体安全测试 + 4 项保存队列测试 + 36 项 VIP98K 相关回归,共 52 项通过;密钥检查通过。
- 源码 TypeScript 检查通过。Next 开发目录生成的 routes.d.ts/validator.ts 有损坏片段,单独源码检查排除了临时构建目录;未把生成文件错误隐瞒为完整生产构建通过。
- 浏览器真实数据库保存和刷新恢复通过;本轮修复尚未部署生产。
## 证据位置
本地 `.qa/video-retest/`:`result-*.json` 为真实 API 结果;`provider-control-*.json` 为直接上游对照;`generated-three-view.png` 为本次真实图片产物;`local-processing-results.json` 及 `local-{crop,silent}.mp4`、`local-audio.m4a` 为处理验证;`save-*-refresh.txt` / `draft-after-refresh.txt` 为保存恢复记录;`libtv-video-parameters.png` 与 `local-video-parameters.png` 为同视口截图。原始结果可能含临时签名媒体地址,未提交到 Git。
下一步阻塞明确:VIP98K 修复/提供可用视频线路;阿里云账户恢复推理权限;补齐未接入的工具,再逐项实测。未经真实产物验证的功能仍保持未验收状态。
## 配置功能逐项验收台账
“未单独实测”不能视为通过;已测试同链路不自动覆盖其他提示词或专用接口。
| 功能 | 配置类型 / 路由 | 本轮状态 |
|---|---|---|
| 角色脸部三视图 (`character-face-three-view`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 角色设定图 (`character-design-sheet`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 场景设定图 (`scene-design-sheet`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 产品设定图 (`product-design-sheet`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 剧情推演四宫格 (`story-beat-grid-4`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 角色三视图生成 (`character-three-view`) | image-edit / canvas-generate-image | 同图片 API 产品三视图样本通过;该角色预设未单独生成 |
| 多机位九宫格 (`multi-view-nine-grid`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 25宫格连贯分镜 (`continuous-storyboard-grid-25`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 电影级光影校正 (`cinematic-lighting-correction`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 画面推演 - 3秒后 (`frame-prediction-plus-3s`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 画面推演 - 5秒前 (`frame-prediction-minus-5s`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 宫格切分 (`grid-split`) | utility / local | 未单独实测,不能标为效果验收通过 |
| 打光 (`lighting`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 高清 (`hd-upscale`) | utility / enhance | 未单独实测,不能标为效果验收通过 |
| 720 全景 (`panorama-720`) | image-edit / extend | 未单独实测,不能标为效果验收通过 |
| 扩图 (`image-outpaint`) | utility / extend | 未单独实测,不能标为效果验收通过 |
| 重绘 (`image-repaint`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 擦除 (`image-erase`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 抠图 (`remove-bg`) | utility / remove-bg | 未单独实测,不能标为效果验收通过 |
| 裁剪 (`image-crop`) | utility / local | 未单独实测,不能标为效果验收通过 |
| 多角度编辑器 (`angle-edit`) | image-edit / angle-edit | 未单独实测,不能标为效果验收通过 |
| 故事脚本生成 (`story-script`) | multimodal / canvas-workflow-analyze | 真实调用失败:官方 Qwen3.8 账户状态 |
| 视频解析 (`video-analysis`) | multimodal / canvas-workflow-analyze | 分析默认模型被账户状态拦截;视频逐帧入口未单独实测 |
| 图片反推提示词 (`image-to-prompt`) | multimodal / canvas-workflow-analyze | 同视觉理解链路被账户状态拦截;该预设未单独实测 |
| 视频元素标记 (`element-mark`) | multimodal / pick-object | 未单独实测,不能标为效果验收通过 |
| 文生视频 (`text-to-video`) | video / canvas-generate-video | 真实调用失败:上游 409 |
| 首帧图生视频 (`first-frame-video`) | video / canvas-generate-video | 真实调用失败:上游 409 |
| 首尾帧生成视频 (`first-last-frame-video`) | video / canvas-generate-video | 真实调用失败:上游 503 |
| 音频生视频 (`audio-to-video`) | video / canvas-generate-video | 无确认可用线路,入口仍有待接入分支 |
| 导演台 AI 识图导入 (`director-ai-import`) | multimodal / director-ai-import | 未单独实测,不能标为效果验收通过 |
| 导演台 AI 全景图 (`director-panorama-ai`) | image-edit / canvas-generate-image | 未单独实测,不能标为效果验收通过 |
| 智能去字幕 (`video-subtitle-erase`) | utility / local | 无确认可用专用处理线路,不算完成 |
| 视频提示词优化 (`video-prompt-optimize`) | utility / canvas-prompt-tools | 视频节点按钮未接后端 |
| 视频音频分离 (`video-audio-separation`) | audio / local | 实际处理函数:提取音轨/静音通过;完整 API 受本机 DNS 阻塞;人声/背景音分离未接通 |
| 视频提示词翻译 (`video-prompt-translate`) | utility / canvas-prompt-tools | 视频节点按钮未接后端 |
测试收尾:两个专用账号均已停用并清除活跃会话,测试环境凭据已删除,本地开发服务及数据库隧道已关闭。参考站本轮新增空视频节点已删除,原有两张图片节点保留,缩放恢复 100%。