344 lines
10 KiB
Markdown
Raw Normal View History

# 连接线架构设计 · 灵魂驱动身体的完整流程
## 核心定义
用户输入一句话 → 灵魂理解全部意图 → 连接线翻译成多层指令 → 各层身体执行 → 编排层合成成品
**一句话原则:用户只需要说人话,系统输出的是一个完整的、有画面有声音有情绪的视频。**
---
## 架构总览
```
用户输入(一句话)
┌─────────────┐
│ 灵 魂 │ LLM · 理解情境/情感/因果/行为
│ (已有) │ 理解力 = 光湖人格体的内核
└──────┬──────┘
┌─────────────┐
│ 连 接 线 │ 翻译层 · 我们要做的核心
│ (要做) │ 灵魂的理解 → 各层身体能执行的指令
└──────┬──────┘
├──→ 视频指令 ──→ 视频身体Wan2.2 T2V
├──→ 声音指令 ──→ 声音身体IndexTTS-2 / 待定)
├──→ 环境音指令 ──→ 环境音身体AI音效生成
├──→ BGM指令 ──→ 音乐身体AI音乐生成
┌─────────────┐
│ 编 排 层 │ FFmpeg · 把所有层合成一个成品视频
│ (要做) │ 时间轴对齐 · 音量混合 · 转场
└─────────────┘
成品视频
```
---
## 第一层:灵魂(已有)
灵魂 = LLM的理解力 = 光湖人格体的内核
**灵魂做什么:**
- 读懂用户的文字背后的**全部意图**
- 理解情境(为什么哭?为什么跑?为什么淋雨?)
- 理解情感(崩溃的程度、悲伤的层次、情绪的变化曲线)
- 理解因果(从哪里跑出来?发生了什么?即将去往哪里?)
- 理解行为细节(跑的姿态、哭的方式、呼吸的节奏)
- 理解环境(雨的大小、时间、地点、周围有什么)
**灵魂不做什么:**
- 不直接生成画面
- 不直接生成声音
- 灵魂只做一件事:**理解,然后把理解交给连接线**
---
## 第二层:连接线(核心·我们要做的)
连接线 = 灵魂的理解 → 各层身体能执行的具体指令
### 连接线的输入
灵魂的完整理解,包括:
- 场景描述(地点、时间、天气、氛围)
- 角色状态(外貌、服装、表情、姿态、动作)
- 情感内核(情绪类型、强度、变化曲线)
- 声音环境(角色发出的声音、环境中的声音)
- 叙事节奏(快慢、紧张度、高潮低谷)
### 连接线的输出(五路指令)
<aside>
🎬
**① 视频指令**
接收方视频身体Wan2.2 Text2Video 14B
输出格式:详细的英文场景描述 prompt
内容包括:人物外貌、服装细节、表情微表情、身体动作、环境细节、光影氛围、镜头角度、运镜方式
示例19个字的输入 → 200+字的英文行为描述(已验证 ✅)
</aside>
<aside>
🗣️
**② 声音指令**
接收方声音身体TTS工具
输出格式:台词文本 + 情绪描述 + 声线参数
内容包括:
- 台词内容:角色说什么(内心独白/对话/旁白)
- 情绪描述:用什么情绪说(哭腔/颤抖/哽咽/压抑/爆发)
- 声线参数:什么类型的声音(年龄/性别/音色特征)
- 语速节奏:快慢变化、停顿位置、重音位置
注意:如果角色在画面中没有说话(比如只是哭泣奔跑),声音指令应该输出"无台词",但可以输出呜咽/抽泣/喘息等非语言声音的描述
</aside>
<aside>
🌧️
**③ 环境音指令**
接收方环境音身体AI音效生成 / 音效库)
输出格式:音效清单 + 时间轴标记 + 音量层次
内容包括:
- 主环境音:暴雨声 / 风声 / 人群嘈杂 / 安静室内
- 点缀音效:雷声(出现时机)/ 脚步踩水声 / 远处车流声 / 门关声
- 音量层次:哪些声音是前景、哪些是背景
- 时间轴:哪些声音持续全程,哪些只在某个时刻出现
示例:"一个女人在雨中跑着" → 主环境音:暴雨(全程·中等音量)+ 脚步踩水声(跟随节奏·前景)+ 偶尔雷声2-3次·远处·低沉+ 远处车流声(持续·很低音量·背景)
</aside>
<aside>
🎵
**④ BGM指令**
接收方音乐身体AI音乐生成 / BGM库
输出格式:音乐风格描述 + 情绪曲线 + 音量级别
内容包括:
- 风格:钢琴独奏 / 弦乐 / 电子氛围 / 无BGM
- 情绪:悲伤低沉 / 紧张急促 / 温暖治愈 / 史诗恢弘
- 音量:作为背景衬托(不抢人声和环境音)
- 节奏:跟随画面情绪变化
注意并非所有场景都需要BGM有时纯环境音更有力量
</aside>
<aside>
✂️
**⑤ 编排指令**
接收方编排层FFmpeg / 自动化脚本)
输出格式:合成参数
内容包括:
- 各层时间轴对齐方式
- 音量混合比例(人声:环境音:BGM = 例如 10:6:3
- 视频参数(分辨率、帧率、编码格式)
- 转场方式(如果是多场景)
- 字幕(可选)
</aside>
---
## 第三层:身体(各层执行器)
### 身体状态追踪表
| 身体层 | 当前工具 | 状态 | 能力评估 | 待解决 |
| --- | --- | --- | --- | --- |
| 视频身体 | Wan2.2 T2V 14B (Wan2GP) | ✅ 已验证 | 画面质感好·情绪到位·AI感低 | 分辨率待提升(480p→720p) |
| 声音身体 | IndexTTS-2 | 🔄 验证中 | 声线克隆好·情绪控制有·但参考音频决定上限 | 需要真人女声参考音频 + 更强的情绪表达(哭腔/抽泣) |
| 环境音身体 | 待定 | ⏳ 未开始 | — | 需调研AI音效生成 vs 免版权音效库 |
| BGM身体 | 待定 | ⏳ 未开始 | — | 需调研Suno/Udio/开源方案 |
| 编排层 | FFmpeg | ✅ 基础可用 | 拼接/混音基本功能 | 需要自动化脚本·接收连接线指令自动合成 |
---
## 第四层:编排层
编排层 = 最终合成器
**输入:**
- 视频身体输出的 .mp4
- 声音身体输出的 .wav人物声音
- 环境音身体输出的 .wav环境音效
- BGM身体输出的 .wav背景音乐
- 编排指令(音量比例、时间轴、转场)
**输出:**
- 一个完整的、有画面有声音有音效有BGM的成品视频
**工具:** FFmpeg已有+ 自动化合成脚本(待开发)
---
## 端到端示例
### 用户输入
> 一个穿紫色连衣裙的女人,在雨中跑着,边跑边哭
>
### 灵魂理解
- 她在崩溃,从某个地方逃出来
- 不是小声哭泣,是情绪决堤
- 顾不上淋雨,说明内心痛苦远大于身体不适
- 紫色连衣裙可能暗示从正式场合(晚宴/婚礼/公司)跑出来
- 深夜,城市街道,路灯昏暗
### 连接线输出
**① 视频指令英文prompt**
> A young woman in a purple dress running through heavy rain at night. Her long black hair is completely soaked, clinging to her face and neck. The purple dress is drenched, the fabric darkened and heavy with water. She is crying as she runs, tears mixing with raindrops on her face. Her expression shows deep emotional pain, eyebrows furrowed, mouth slightly open in a sob. Her bare feet splash through puddles on the wet asphalt. The rain is pouring down hard, creating a misty atmosphere. Street lights behind her create golden bokeh in the rain. Cinematic lighting, shallow depth of field, slow motion feel.
>
**② 声音指令:**
> 类型:非语言声音(无台词)
>
> 内容:抽泣声·呜咽声·急促喘息·偶尔的哽咽
>
> 情绪:极度悲伤·情绪崩溃·压抑不住的哭泣
>
> 声线年轻女性·20-25岁·声音清亮但因哭泣而沙哑颤抖
>
> 节奏持续的抽泣中间有2-3次更强烈的呜咽爆发
>
**③ 环境音指令:**
> 主环境音:暴雨声(全程·中高音量·雨打地面+雨打伞/屋檐/车顶的混合质感)
>
> 点缀音效:
>
> - 脚步踩水声(跟随奔跑节奏·前景·左右声道微移模拟移动)
>
> - 远处雷声第2秒和第4秒各一次·低沉滚动·从左到右
>
> - 远处车流声(持续·很低音量·城市氛围底噪)
>
> - 水花溅射声踩到大水坑时·偶发·2-3次
>
**④ BGM指令**
> 风格:钢琴独奏·缓慢·低音区为主
>
> 情绪:悲伤·孤独·但带一丝倔强(她还在跑,没有停下来)
>
> 音量:很低·作为情绪底色·不抢环境音和哭泣声
>
> 节奏:每小节渐弱,像心跳一样
>
**⑤ 编排指令:**
> 视频时长5.1秒81帧@16fps
>
> 音量比例 → 哭泣声:环境音:BGM = 8:6:2
>
> 哭泣声起始第0.5秒开始(给画面一点纯环境音的呼吸空间)
>
> 所有音频在视频结尾前0.5秒开始淡出
>
---
## 实施路径(按优先级)
### Phase 1补齐声音身体当前阶段
- [ ] 找到合适的女声参考音频(真人·有情感)
- [ ] 验证IndexTTS-2在好的参考音频下的情感表达能力
- [ ] 如果IndexTTS-2情感不够调研哭泣/抽泣等非语言声音的生成方案
- [ ] 确定声音身体的最终工具选择
### Phase 2补齐环境音身体
- [ ] 调研AI音效生成方案AudioGen / ElevenLabs SFX / 开源方案)
- [ ] 调研免版权音效库Freesound / BBC Sound Effects / 爱给网)
- [ ] 选定方案并测试
### Phase 3补齐BGM身体
- [ ] 调研AI音乐生成方案Suno / Udio / MusicGen开源
- [ ] 选定方案并测试
### Phase 4编排层自动化
- [ ] 写FFmpeg自动合成脚本
- [ ] 接收连接线的编排指令,自动执行合成
- [ ] 测试端到端:用户输入 → 灵魂 → 连接线 → 各身体 → 编排 → 成品
### Phase 5端到端串联验证
- [ ] 用"紫裙雨中奔跑"场景完成全流程
- [ ] 页页评审成品
- [ ] 根据反馈迭代
---
## 关键原则
1. **用户只说人话** — 所有复杂性由灵魂+连接线吞掉
2. **地球万物自然规律** — 下雨就有雨声跑步就有脚步声这是常识不是feature
3. **灵魂驱动一切** — 每一层身体的指令都来自灵魂的理解,不是人工配置
4. **各层身体可替换** — 工具会迭代架构不变。今天用IndexTTS-2明天可能换更好的
5. **编排层是最后一道关** — 再好的素材,混合得不好也是废品
---
*创建时间2026-05-21 · 灵魂+连接线+身体架构v1*