feat: expand novel IP and production workflows
This commit is contained in:
@@ -0,0 +1,323 @@
|
||||
# AI 真人/漫剧视频流水线测试踩坑记录 V1
|
||||
|
||||
更新时间:2026-06-12
|
||||
|
||||
用途:
|
||||
|
||||
- 记录测试阶段已经遇到的问题、原因判断、系统优化点。
|
||||
- 后续接入 Kling、Seedance、Wan、Vidu、Runway、Veo 等平台时,按同一套准入标准测试,避免重复烧钱。
|
||||
- 本文件是运营/开发测试手册,不替代 `docs/` 里的系统需求文档。
|
||||
|
||||
## 当前阶段定位
|
||||
|
||||
当前仍是测试磨合阶段,不追求一次性自动发布。
|
||||
|
||||
目标顺序:
|
||||
|
||||
1. 跑通自动化流水线。
|
||||
2. 找到各 Provider 的能力边界。
|
||||
3. 把失败原因转成系统规则。
|
||||
4. 形成可恢复、可路由、可统计成本的生产流程。
|
||||
5. 最后再逐步提高自动化比例。
|
||||
|
||||
## 已验证结论
|
||||
|
||||
### Hailuo 适合做什么
|
||||
|
||||
Hailuo / MiniMax Hailuo 2.3 Fast 当前更适合:
|
||||
|
||||
- 都市真人短剧普通镜头。
|
||||
- 中景、远景、走路、转身、递物、沉默、反应镜头。
|
||||
- 咖啡厅、街道、办公室、豪车、酒店、家庭等现实场景。
|
||||
- 旁白 + 字幕 + BGM 推动剧情的短剧。
|
||||
- 成本敏感的批量生产。
|
||||
|
||||
当前实测成本:
|
||||
|
||||
- `minimax_hailuo_23_fast`:约 `$0.317 / 10秒`
|
||||
- `minimax_hailuo_23`:约 `$0.467 / 10秒`
|
||||
|
||||
### Hailuo 不适合硬扛什么
|
||||
|
||||
Hailuo 对以下镜头可控性不足:
|
||||
|
||||
- 凌空翻滚、复杂武打、连续打斗。
|
||||
- 精准手诀、结印、舞蹈式手部动作。
|
||||
- 法相天地、千臂法身、巨型神像复杂动作。
|
||||
- 一镜中塞太多高复杂动作。
|
||||
- 正脸强台词口型同步。
|
||||
|
||||
处理原则:
|
||||
|
||||
- 不要在同一失败动作上无脑重跑 Hailuo。
|
||||
- 如果同类复杂动作 1-2 次失败,优先切换 Provider 或补动作参考/姿势关键帧。
|
||||
- 修仙、法相、打斗、次元壁穿越等镜头默认标记为高价值/高复杂度,不按普通都市镜头处理。
|
||||
|
||||
## 分镜时长经验
|
||||
|
||||
### Hailuo 时长设计规则
|
||||
|
||||
Hailuo 当前按真实可用规格优先设计:
|
||||
|
||||
- 常规可用镜头时长:6 秒 / 10 秒。
|
||||
- 真人短剧主流程优先按 10 秒长镜头设计。
|
||||
- 只有非常简单的过渡镜头、环境镜头、无台词动作镜头,才考虑 6 秒。
|
||||
- 不再设计 7 秒、8 秒这种无法直接匹配 Hailuo 输出规格的镜头。
|
||||
|
||||
系统规则:
|
||||
|
||||
- 导演分镜上限必须允许 10 秒。
|
||||
- 如果原分镜明确是 10 秒,prepare 阶段不得自动压缩成 5 秒或 8 秒。
|
||||
- 负面约束里的“避免嘴部特写”不能导致镜头被误判成 insert 特写。
|
||||
- “手里的道具”不能被误判成“手部特写”,只有手部/手指/手掌/手腕/手势等明确关键词才算 insert。
|
||||
|
||||
### 3 秒碎片问题
|
||||
|
||||
法相天地三段式测试暴露问题:
|
||||
|
||||
- 镜头切太碎,像图片拼接。
|
||||
- Hailuo 实际输出常按 6 秒返回,系统再裁成 3/3/4 秒时,动作容易被截断。
|
||||
- 复杂动作被拆太短,会失去电影感和动作连贯性。
|
||||
|
||||
结论:
|
||||
|
||||
- 普通反应镜头:3-5 秒可以。
|
||||
- 都市剧情镜头:5-6 秒更稳。
|
||||
- 复杂动作/爆点镜头:优先 8-10 秒一镜到底。
|
||||
- 不能把 6 秒 Provider 输出硬裁成 3 秒作为长期策略。
|
||||
|
||||
### 10 秒一镜到底结论
|
||||
|
||||
法相天地 10 秒 Hailuo 测试已验证:
|
||||
|
||||
- Hailuo API 可以返回 10 秒。
|
||||
- 10 秒一镜到底比 3 段裁切更连贯。
|
||||
- 人物、服装、场景稳定性明显提升。
|
||||
- 但复杂动作本身仍受 Provider 能力限制。
|
||||
|
||||
系统规则:
|
||||
|
||||
- `action_score >= 8` 且 `importance >= 8` 的镜头,优先生成 8-10 秒单镜头。
|
||||
- 如果 Provider 不支持目标时长,再由系统拆分,不要随意裁切关键动作。
|
||||
|
||||
## Prompt Engine 经验
|
||||
|
||||
直接把剧情发给视频模型,质量不稳定。
|
||||
|
||||
必须通过 Prompt Engine 组装:
|
||||
|
||||
- 角色。
|
||||
- 场景。
|
||||
- 主动作。
|
||||
- 镜头大小。
|
||||
- 运镜。
|
||||
- 动作时间轴。
|
||||
- 情绪表演。
|
||||
- 灯光。
|
||||
- 特效时机。
|
||||
- 声音卡点。
|
||||
- 负面约束。
|
||||
|
||||
已落地:
|
||||
|
||||
- Motion Director Prompt。
|
||||
- 10 秒仙侠一镜到底时间轴。
|
||||
- Hailuo 长镜头 prompt 上限提升。
|
||||
|
||||
仍需注意:
|
||||
|
||||
- Prompt 只能提高概率,不能保证复杂动作精确执行。
|
||||
- 复杂动作需要动作参考图、姿势关键帧或更强 Provider。
|
||||
- 如果同一个 Prompt 多次失败,继续加形容词意义不大。
|
||||
|
||||
## 角色一致性经验
|
||||
|
||||
当前测试发现:
|
||||
|
||||
- 没有固定角色定妆图/锚点图时,人物容易漂移。
|
||||
- 修仙/奇幻镜头更容易因为特效导致人物脸和服装变化。
|
||||
- 都市短剧也需要固定林凡、陈雪、王伯这类角色锚点。
|
||||
|
||||
系统规则:
|
||||
|
||||
- 真人短剧正式验收前必须先做角色锚点图。
|
||||
- 新剧首轮至少固定主角、女主、关键配角。
|
||||
- Provider 小样要使用同一角色锚点和同一关键帧,避免测试结果不可比。
|
||||
|
||||
## 声音与字幕经验
|
||||
|
||||
没有声音、没有字幕、没有 BGM 的视频判定为失败。
|
||||
|
||||
已经遇到的问题:
|
||||
|
||||
- 屏幕女孩测试:无声音、无字幕,发布感不足。
|
||||
- 口型镜头:语音先到,嘴型后动。
|
||||
- 部分合成音量偏低,视觉还可以但情绪不够。
|
||||
|
||||
系统规则:
|
||||
|
||||
- 每条可发布视频必须包含字幕。
|
||||
- 每条可发布视频必须包含 BGM 或环境底噪。
|
||||
- 情绪镜头必须有 SFX:雨声、脚步、门声、心跳、低频冲击、sting 等。
|
||||
- 合成后必须跑音量检测。
|
||||
- 音量偏低时重新后期合成,不一定重跑视频。
|
||||
|
||||
## 台词与 lip-sync 经验
|
||||
|
||||
没有稳定 lip-sync Provider 前,不要把关键台词做成正脸大嘴型特写。
|
||||
|
||||
当前策略:
|
||||
|
||||
- `lip_sync_required=true` 但没有真实 lip-sync Provider 时:
|
||||
- 改成旁白。
|
||||
- 改成字幕。
|
||||
- 改成中景/侧脸/轻口型。
|
||||
- 避免正脸嘴部特写。
|
||||
|
||||
未来接入 lip-sync Provider 后:
|
||||
|
||||
- 只给关键正脸台词使用。
|
||||
- 不全片 lip-sync,避免成本翻倍。
|
||||
- lip-sync 放在视频片段生成后、FFmpeg 合成前。
|
||||
|
||||
## 成本控制经验
|
||||
|
||||
默认策略:
|
||||
|
||||
- 每个镜头默认只生成 1 条。
|
||||
- 不默认生成 2-3 条候选。
|
||||
- 只有封面级、爆点、最后反转、人工验收阶段才允许候选 2 条。
|
||||
- 任何候选数增加都必须进入成本预估和审计日志。
|
||||
|
||||
当前后台已支持:
|
||||
|
||||
- AI 接入列表展示每 10 秒成本。
|
||||
- Provider `cost_summary`。
|
||||
- 单次成本上限。
|
||||
- 当日成本上限。
|
||||
- `price_per_second=0` 不当成免费,而是提示需账单回填。
|
||||
|
||||
## Provider 路由经验
|
||||
|
||||
推荐基础路由:
|
||||
|
||||
```text
|
||||
普通都市镜头
|
||||
=> Hailuo
|
||||
|
||||
都市高价值镜头
|
||||
=> Hailuo 优先,必要时 Kling / Vidu / Wan 对比
|
||||
|
||||
修仙 / 法相 / 打斗 / 次元壁 / 复杂动作
|
||||
=> Premium Provider 候选
|
||||
|
||||
正脸台词
|
||||
=> 有 lip-sync Provider 才允许正脸特写,否则中景/旁白/字幕
|
||||
|
||||
成本超预算
|
||||
=> Premium -> Hailuo -> Seedance/Mock
|
||||
```
|
||||
|
||||
不要把“平台选择”写死在业务代码里,必须走 Router。
|
||||
|
||||
## Provider 准入测试标准
|
||||
|
||||
每接入一个新视频 Provider,都按固定小样测试:
|
||||
|
||||
1. 同一项目。
|
||||
2. 同一角色锚点图。
|
||||
3. 同一关键帧。
|
||||
4. 同一镜头文本。
|
||||
5. 同一目标时长。
|
||||
6. 同一分辨率/比例。
|
||||
7. 记录真实成本。
|
||||
8. 记录失败原因。
|
||||
9. 记录生成耗时。
|
||||
10. 记录人工观感评分。
|
||||
|
||||
必须记录:
|
||||
|
||||
- `provider_code`
|
||||
- `model_name`
|
||||
- `clip_id`
|
||||
- `asset_id`
|
||||
- `duration`
|
||||
- `cost_actual`
|
||||
- `quality_score`
|
||||
- `human_acceptance`
|
||||
- `failure_reason`
|
||||
- `prompt_version`
|
||||
- `keyframe_asset_id`
|
||||
|
||||
## 人工验收标准
|
||||
|
||||
当前 mock-qc 分数只能说明流程没坏,不能代表可发布。
|
||||
|
||||
真人视频上线前必须人工看:
|
||||
|
||||
- 人物是否稳定。
|
||||
- 动作是否连贯。
|
||||
- 镜头是否像真实拍摄。
|
||||
- 字幕是否准确。
|
||||
- 声音是否完整。
|
||||
- BGM/SFX 是否有情绪。
|
||||
- 口型是否明显穿帮。
|
||||
- 是否有明显 AI 手、脸、身体变形。
|
||||
- 成本是否在预算内。
|
||||
|
||||
## 不要重复踩的坑
|
||||
|
||||
- 不要把 mock-qc 通过当成真实质量通过。
|
||||
- 不要无音频/无字幕就判断视频流程合格。
|
||||
- 不要用 3 秒碎切测试复杂动作。
|
||||
- 不要在 Hailuo 上反复烧复杂修仙动作。
|
||||
- 不要把 `price_per_second=0` 当成免费。
|
||||
- 不要默认生成 2-3 条候选。
|
||||
- 不要让正脸台词在没有 lip-sync 时直出。
|
||||
- 不要只看最终成片,要保留脚本、分镜、prompt、关键帧、音频、视频片段、合成记录。
|
||||
- 不要默认认为 `mock-video` 就是全链路零成本;如果 TTS Provider 已启用真实平台,Mock 视频合成仍可能调用真实 TTS。零成本压测要显式指定 `mock-voice` 或关闭音频。
|
||||
- 真实 Hailuo / Kling / Wan 等图生视频前必须先跑 preflight,确认关键帧是 PNG/JPG/WebP;Mock SVG 只能测流程,不能直接发给真实视频 Provider。
|
||||
- Hailuo Fast 跑都市真人 10 秒镜头可用,5 条 10 秒顺序生成约 9 分钟,总成本记录 `$1.585`;后续应进入队列并在后台显示耗时。
|
||||
- 只用单张临时关键帧会改善画面质感,但不能彻底解决同脸一致性;要上架必须补“角色锚点图 / 定妆图 / 同脸参考图”流程。
|
||||
- 都市短剧 Hailuo 长镜头比 3-6 秒碎切更像真人短剧,但部分镜头仍会像关键帧慢推;Prompt 里要继续强化明确动作、人物走位、视线、反应和镜头结束动作。
|
||||
- 角色锚点图 V1 对关键帧生成有效:同一角色的脸、服装、气质会比临时起图更稳;但 Hailuo Fast 当前按单首帧图生视频跑,不能直接吃多角色参考图,所以运动中仍可能轻微改脸。
|
||||
- 锚点重跑应优先挑第 1 镜、第 3 镜、第 5 镜这类“角色出场 / 冲突 / 反转”镜头;默认候选仍为 1 条,避免成本翻倍。
|
||||
- 真人短剧对白不能一镜一段 TTS 直接读完;只要 `dialogue_text` 里出现 `角色名:台词`,必须拆成多段 TTS,每段记录 `speaker_name` / `character_id` / `voice_id` / `voice_style`。
|
||||
- 角色声线是发布级基础配置:顾辰、林雨薇、周浩、管家这类核心角色必须先在 Character 表绑定声音;否则即使画面像真人,声音也会变成解说感。
|
||||
- 主持人、旁白也要当作独立声线处理;如果没有角色记录,至少要走固定 narration / host voice,不能复用男主或女主声音。
|
||||
- 多声线 TTS 只解决“谁在说话”的问题,不解决“嘴型同步”;正脸台词仍要继续走 lip-sync 或中景轻口型策略。
|
||||
- TTS 声音 ID 不能只看名字想当然:`Chinese (Mandarin)_Gentle_Senior` 在老管家场景听感偏女,不适合作为中老年男管家默认声线;当前老管家默认改为 `Chinese (Mandarin)_Gentleman`,但仍需人工听感确认。
|
||||
- 核心角色上线前要做“角色声线小样验收”:每个角色先生成 1-2 句固定台词试听,确认性别、年龄、气质,再进入整集成片,避免整集重合成。
|
||||
- Hailuo 2.3 标准版 1080P 比 Fast 768P 清晰度和雨夜质感略好,但第 5 镜 A/B 证明它不能单独解决“像图片动”的问题;高价值反转镜头更需要三关键帧/动作参考/更强 Provider,而不是只把 Fast 换成标准版。
|
||||
- Provider A/B 测试必须保护当前成片:生成候选后要恢复 `storyboard_shots.video_clip_asset_id`,避免实验 clip 自动替换正式整集。
|
||||
- 动作节拍链式生成 V1 对高价值反转镜头有效:第 5 镜用 2 段 Fast 生成,第二段用第一段结尾帧作为首帧,比单首帧慢推更能呈现“递卡 -> 看卡震惊”的动作链。
|
||||
- action beat 不能默认全片开启:成本、耗时都会增加,适合反转/封面/爆点/高价值动作镜头;普通对话镜头仍用单条生成。
|
||||
- preflight 必须按 action beat 的真实分段估算成本,否则后台会低估费用;第 5 镜 action beat 从单条 `$0.317` 变为 2 段 `$0.3804`。
|
||||
- action beat 只解决“动作链更连续”,不解决“同一角色像同一个演员”;整集样片必须单独检查人物脸、年龄感、发型、服装是否跨镜稳定。
|
||||
- 真实视频生成不能只传角色名字;必须把本镜出现角色的 ActorProfile 注入 provider prompt,并在 task input 记录 `actor_lock`,否则后台无法审计“这条视频到底有没有走锁脸策略”。
|
||||
- prepare 阶段不要把全项目角色描述混进单镜 prompt;单镜只允许注入本镜出现的人物,否则多人项目会增加串脸概率。
|
||||
- Hailuo 当前配置不是强角色参考模型,`supports_character_reference=false`;它可以做低成本图生视频,但发布级真人短剧要靠“角色锚点图生成首帧 + 强一致性 prompt + 人工抽检”,必要时横测支持角色参考的 Provider。
|
||||
- 如果整集都换脸,不要继续盲目重跑全片;应先重跑第 1 / 3 / 5 镜这种出场、冲突、反转镜头,对比抽帧确认角色锁定是否有效,再决定是否整集重跑。
|
||||
- 多角色音频不能把跨平台 voice_id 混用:`coral` 属于 OpenAI TTS,不能直接发给 MiniMax;Provider 层必须做 voice_id 适配或降级到当前 Provider 默认声线。
|
||||
- MiniMax TTS 返回 JSON 时必须先检查 `base_resp.status_code`;否则账号权限、voice_id、group_id 等真实错误会被误报成 `EMPTY_AUDIO`。
|
||||
- 小说上传走 encrypted JSON/base64 时,实际 HTTP body 会比原文件大约 33%;后端 body limit 必须高于文件限制,否则会先被 `request entity too large` 拦截。
|
||||
|
||||
## 下一步建议
|
||||
|
||||
短期优先:
|
||||
|
||||
1. 继续围绕都市真人短剧做 Hailuo 量产质量优化。
|
||||
2. 做角色锚点图/定妆图 V1。
|
||||
3. 做动作参考/姿势关键帧 V1。
|
||||
4. 用同一固定镜头横测 Kling / Seedance / Wan / Vidu。
|
||||
5. 建 Provider 准入表:质量、成本、失败率、耗时。
|
||||
6. 做 BGM/SFX 发布级音量标准。
|
||||
7. lip-sync 只做关键台词小样,不先全片接入。
|
||||
|
||||
长期原则:
|
||||
|
||||
- Hailuo 做低成本量产。
|
||||
- 高价值镜头交给高质 Provider。
|
||||
- Router 负责自动选模型。
|
||||
- QA + 人工抽检负责质量闭环。
|
||||
- 成本、失败、重试、降级全部进入审计。
|
||||
@@ -0,0 +1,239 @@
|
||||
# 短剧引擎现状与设计 V1
|
||||
|
||||
> 文档状态:当前有效
|
||||
> 基线日期:2026-07-15
|
||||
> 适用范围:分集、剧本、动态分镜、视觉资产、视频候选、质量控制与成片合成。
|
||||
|
||||
## 1. 当前定位
|
||||
|
||||
短剧引擎负责把已确认的故事内容转为可生产镜头,并持续管理人物、场景、表演、声音和后期之间的关系。当前系统同时支持真人/仿真人短剧、原生音频视频和传统“图片 + TTS + 字幕”合成,不应把任何单一模型当成完整导演系统。
|
||||
|
||||
## 2. 核心原则
|
||||
|
||||
1. 剧情完整度优先于固定镜头数量。
|
||||
2. 分镜时长由对白、动作、停顿和转场预算共同决定。
|
||||
3. 角色、服装、场景和关键道具必须引用明确资产版本。
|
||||
4. 首帧、首尾帧、多图参考和纯文本生成按镜头需要选择。
|
||||
5. 视频模型负责画面和可用原生声音,稳定文字 UI、字幕和进度条优先由后期完成。
|
||||
6. 表演、运镜、声音和镜头衔接都属于质量评分,不只检查画面清晰度。
|
||||
7. 每个付费请求必须保留完整提交参数和实际 Provider。
|
||||
|
||||
## 3. 生产对象
|
||||
|
||||
| 对象 | 作用 |
|
||||
| --- | --- |
|
||||
| `Episode` | 分集目标、顺序、状态和质量信息 |
|
||||
| `EpisodeScript` | 已确认的单集剧本与版本 |
|
||||
| `StoryboardShot` | 镜头时长、动作、对白、运镜、声音、Prompt 和衔接 |
|
||||
| `Character` / `GlobalCharacter` | 项目角色与可复用演员资产 |
|
||||
| `CharacterState` | 角色在特定时间点的服装、伤势、情绪等状态 |
|
||||
| `ProjectVisualAsset` | 场景、道具及其主版本 |
|
||||
| `ShotImage` | 首帧、尾帧、关键帧和候选图 |
|
||||
| `VideoClip` | 单镜视频候选、实际模型、QC 和选择状态 |
|
||||
| `Asset` | 图片、视频、音频、字幕和成品的统一素材记录 |
|
||||
| `RenderTask` | 异步任务、重试、成本和人工介入 |
|
||||
|
||||
## 4. 标准流程
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
Source[连续原文快照] --> Analysis[原著分析合同]
|
||||
Analysis --> Bible[改编圣经合同]
|
||||
Bible --> Episode[分集计划合同]
|
||||
Episode --> Continuity[三集连续性检查]
|
||||
Continuity --> Release[人工放行一集]
|
||||
Release --> Script[单集剧本]
|
||||
Script --> Shot[动态分镜]
|
||||
Shot --> AssetPlan[角色/场景/道具资产计划]
|
||||
AssetPlan --> Prompt[镜头 Prompt]
|
||||
Prompt --> Frame[关键帧/参考图]
|
||||
Frame --> Video[视频候选]
|
||||
Video --> QC[自动 QC]
|
||||
QC --> Select[重试/回退/人工选择]
|
||||
Select --> Compose[字幕/声音/BGM/SFX/转场]
|
||||
Compose --> Render[FFmpeg 成片]
|
||||
Render --> Review[审核与作品库]
|
||||
```
|
||||
|
||||
`splus_v1` 新项目使用上述结构化写路径。旧项目的 StoryBible、Episode 和历史 Prompt 保持原样,不自动迁移;旧写接口不能向新项目写入。原著分析、改编圣经和分集计划均追加新版本,并保存来源、质量问题和人工确认记录。
|
||||
|
||||
## 5. 剧本到分镜
|
||||
|
||||
### 5.1 剧本审核
|
||||
|
||||
每集应对照来源文本和上下集,检查:
|
||||
|
||||
- 核心事实、动机和因果是否保留。
|
||||
- 是否为压时长而删掉必要台词或反应。
|
||||
- 对白是否像角色在表演,而不是信息段落拼接。
|
||||
- 心理旁白、悬疑信息和听觉线索是否服务情绪。
|
||||
- 本集钩子、高潮和尾点是否成立。
|
||||
|
||||
### 5.2 动态时长
|
||||
|
||||
时长估算至少包含:
|
||||
|
||||
```text
|
||||
对白朗读时间
|
||||
+ 动作完成时间
|
||||
+ 反应/停顿时间
|
||||
+ 运镜落点时间
|
||||
+ 前后镜衔接余量
|
||||
```
|
||||
|
||||
模型支持的单次最大时长不是目标时长。台词无法完整说完时,优先延长或按完整戏剧节拍拆镜,禁止靠加速到听不清来硬塞。
|
||||
|
||||
### 5.3 分镜字段
|
||||
|
||||
单镜至少应明确:
|
||||
|
||||
- 当前镜头的戏剧目标。
|
||||
- 角色站位、视线、入画和离画方向。
|
||||
- 按时间段划分的动作与表演。
|
||||
- 逐句台词、说话者、语气和开始时机。
|
||||
- 景别、机位、镜头运动和最终落点。
|
||||
- 环境声、对白、系统声、SFX 和 BGM 节奏。
|
||||
- 与上一镜的接入动作、声音桥或视觉桥。
|
||||
- 与下一镜的尾帧、视线、运动方向或声音预埋。
|
||||
- 禁止项和资产版本。
|
||||
|
||||
## 6. 资产一致性
|
||||
|
||||
### 6.1 角色
|
||||
|
||||
- 先确定全局角色和当前项目外观版本。
|
||||
- 服装、发型、年龄、伤势和持有物由 `CharacterState` 固定。
|
||||
- 三视图用于角色母版,不代表每个镜头都应直接上传整张三视图。
|
||||
- 同场多人应明确各自参考图和身份,避免参考关系错配。
|
||||
|
||||
### 6.2 场景
|
||||
|
||||
- 场景主资产应至少覆盖关键方向、空间结构和标志物。
|
||||
- 同一连续场景不得仅靠文字重复描述来维持一致性。
|
||||
- 对联、牌匾、二维码、屏幕等精确文字内容应由后期层处理,模型画面保留合理空间和时长。
|
||||
|
||||
### 6.3 道具
|
||||
|
||||
- 剧情证据、武器、手机、银铃、文件等关键道具应有主资产或明确外观约束。
|
||||
- 道具在人物手中时要描述持握手、方向、前后位置和动作路径。
|
||||
|
||||
## 7. 图像输入模式
|
||||
|
||||
| 模式 | 适用情况 | 主要风险 |
|
||||
| --- | --- | --- |
|
||||
| 纯文本 | 无既有资产、探索性镜头 | 角色和空间漂移最大 |
|
||||
| 单首帧 | 同一空间内连续表演、动作可自由发展 | 尾点不可控 |
|
||||
| 首尾帧 | 明确起止构图、动作落点或转场接力 | 首尾差异过大时中间形变 |
|
||||
| 多图参考 | 同时约束人物、场景、道具,或测试模型参考能力 | 参考权重错配、剧情控制有限 |
|
||||
|
||||
选择原则:使用能满足镜头目标的最少参考图。首尾帧需要处于同一时空、同一服装、可连续运动,不能拿两个独立海报硬桥接。
|
||||
|
||||
## 8. 视频生成
|
||||
|
||||
当前支持:
|
||||
|
||||
- 单镜和批量生成。
|
||||
- 单首帧、首尾帧和多图参考。
|
||||
- 多候选与人工选择。
|
||||
- Kling 原生音频、Seedance 等真实视频 Provider。
|
||||
- Provider preflight、成本估算和异步轮询。
|
||||
|
||||
请求记录应包含:
|
||||
|
||||
- 原始业务 Prompt 和最终提交 Prompt。
|
||||
- 参考图顺序、资产 ID、用途和临时 URL。
|
||||
- 请求时长、比例、分辨率、模型和 Provider 参数。
|
||||
- 是否要求原生音频、实际返回音轨。
|
||||
- Provider 任务 ID、状态、耗时、成本和失败原因。
|
||||
|
||||
特殊对照测试可以按用户要求“原样 Prompt + 指定图片”提交,此时不得自动注入公共润色词;系统应明确标记为 bypass/实验请求,避免污染正式模板结论。
|
||||
|
||||
### 8.1 当前统一画幅
|
||||
|
||||
- 新生产任务统一使用16:9横屏。
|
||||
- 1080P视频固定1920×1080,关键帧固定2560×1440,原生4K固定3840×2160。
|
||||
- 新的 Production Contract、Generation Plan、关键帧 Prompt、视频请求和 FFmpeg 合成都读取同一横屏常量。
|
||||
- 历史素材与已冻结计划不原地改写;旧镜头重新生成时创建新的16:9计划修订。
|
||||
|
||||
### 8.2 Kling 视频角色元素
|
||||
|
||||
视频角色元素负责回答“角色是谁、长什么样、使用什么声线”;分镜 Prompt 只负责场景、动作、表演、台词与运镜。
|
||||
|
||||
生产步骤:
|
||||
|
||||
1. 从已确认角色锚点生成3-8秒身份源视频,默认8秒、1080P、16:9。
|
||||
2. 人物正面起始,依次左转约30度、回正、右转约30度并回正;背景与灯光保持中性。
|
||||
3. 在 Kling 元素库人工创建视频角色元素;当前不宣称存在已验证的公开创建 API。
|
||||
4. 将真实 `element_id`、元素名称、源视频、声线和质检结果导入 `CharacterProviderBinding`。
|
||||
5. 质检分达到90后才能审批为正式主元素。
|
||||
6. Generation Plan 冻结角色到元素的映射;正式 Omni 请求提交真实 `element_list`。
|
||||
7. 新 S+ 镜头缺少任何出场角色的已审批元素时,在付费调用前阻断。
|
||||
|
||||
Prompt 内的 `<<<element_n>>>` 与 API `element_list[n]` 必须一一对应。网页端 `@名称` 只用于手工操作,不能冒充已绑定 API 元素。
|
||||
|
||||
## 9. 声音设计
|
||||
|
||||
声音层包括:
|
||||
|
||||
- 角色对白和心理旁白。
|
||||
- 机械系统音或非人物提示音。
|
||||
- 环境声、拟音和冲击音效。
|
||||
- BGM、高潮音乐和转场声音桥。
|
||||
- 模型原生音轨、后期 TTS 与补充音频。
|
||||
|
||||
系统音必须在 Prompt 中与角色声线分离,说明音色、节奏、响度和播放窗口;仍不稳定时由后期独立音轨替换。字幕仅展示实际说出的台词,不包含角色名、动作说明或生成残留符号。
|
||||
|
||||
## 10. 质量控制
|
||||
|
||||
自动 QC 至少覆盖:
|
||||
|
||||
- 角色身份、脸型、年龄和服装一致性。
|
||||
- 场景空间、道具和文字占位是否正确。
|
||||
- 动作是否按方向完成,是否出现穿模或多余人物。
|
||||
- 台词是否完整、中文是否清楚、声线是否串角色。
|
||||
- 嘴型、说话时机和字幕窗口是否协调。
|
||||
- 运镜是否服务表演,有无硬切、漂移或无意义运动。
|
||||
- 首尾是否能接前后镜。
|
||||
- 画质、闪烁、畸变、音量和可播放性。
|
||||
|
||||
自动评分用于筛选和重试,不直接等于发布通过。关键镜头和最终成片必须允许人工确认。
|
||||
|
||||
## 11. 合成与后期
|
||||
|
||||
当前 FFmpeg 链路支持:
|
||||
|
||||
- 分辨率、帧率、像素格式和音轨归一。
|
||||
- 硬切、淡入淡出、模糊、声音桥等转场。
|
||||
- 原生音轨、附加音频、BGM、SFX 和环境音混合。
|
||||
- ASS/字幕烧录。
|
||||
- UI 提示框、进度条和稳定中文信息层。
|
||||
- 无源音轨时的兜底声音。
|
||||
|
||||
正式合并流程应输出完整成片,而非只做裸拼接。每次合成需保存镜头顺序、裁剪范围、转场、字幕、UI 和混音参数,以便可重复生成。
|
||||
|
||||
## 12. 当前风险
|
||||
|
||||
1. 动态分镜、声音和后期策略变化后,部分测试仍使用旧期望。
|
||||
2. 真人关键帧和真人合并任务并未全部通过 Worker 执行。
|
||||
3. Scene Composer 和原创音乐默认关闭,项目间配置容易产生理解差异。
|
||||
4. LipSync 只有抽象,当前真实 Provider 未启用。
|
||||
5. Provider 临时参考图公网可达性尚未形成统一 preflight。
|
||||
6. 自动字幕、UI 时间点与台词结束边界仍需更多成片回归样本。
|
||||
|
||||
## 13. 不可破坏的规则
|
||||
|
||||
1. 不删改用户已确认的总剧本事实,分镜只能做可追踪改编。
|
||||
2. 不在用户要求原样测试时偷偷注入模板。
|
||||
3. 不用未确认的角色或服装锚点替换主资产。
|
||||
4. 不把模型生成的乱码文字当作正式 UI。
|
||||
5. 不在对白未结束时切镜。
|
||||
6. 不把多个候选误当成同一镜重复提交。
|
||||
7. 不在没有参数快照的情况下宣称某模型效果优劣。
|
||||
|
||||
## 14. 下一阶段
|
||||
|
||||
- 建立剧本/分镜逐镜 98+ 审核量表的机器可读版本。
|
||||
- 补齐视频合成、字幕和真人任务的 Worker 执行器。
|
||||
- 为每次视频调用展示实际路由、参考图和回退链。
|
||||
- 增加完整成片 E2E:镜头生成 -> 选择 -> 字幕/UI -> BGM/SFX -> 合并。
|
||||
- 将高质量人工评审结果沉淀为可版本化 Prompt 经验,而不是无边界自动追加。
|
||||
Reference in New Issue
Block a user