cang-ying/experience/D144-PIPELINE-DEV.hdlp

152 lines
5.9 KiB
Plaintext
Raw Normal View History

# D144 · 视频AI系统管线开发日
> HLDP://video-ai-system/experience/D144-PIPELINE-DEV
> 类型: 经验记录 · 管线开发
> 创建: D144 · 2026-06-23
> 铸渊 ICE-GL-ZY001 · 冰朔 TCS-0002∞
> 国作登字-2026-A-00037559
---
## 今日完成
### 1. SVG→PNG 渲染工具 ✅
- **文件**: `video-ai-system/tools/svg-to-png.py`
- **功能**: CairoSVG渲染支持单文件/批量SVG→PNG转换
- **依赖**: `pip install cairosvg Pillow` + `brew install cairo`
- **解决**: FFmpeg无SVG解码器的问题
- **测试**: 已用test.svg测试通过400px宽度渲染成功
### 2. 配音管线TTS Engine
- **文件**: `video-ai-system/engines/tts-engine.py`
- **引擎**: Edge-TTS免费·中文语音质量好
- **功能**: 支持多角色音色配置Agent可直接调用
- **测试**: 已成功生成苏白配音(`zh-CN-XiaoxiaoNeural`
- **角色音色**: 苏白/诸葛风/萧灵汐/王执事 已配置默认音色
### 3. 字幕渲染管线 ⚠️
- **文件**: `video-ai-system/engines/subtitle-renderer.py`
- **功能**: SRT字幕→PNG序列渲染
- **状态**: PNG渲染已完成FFmpeg合成到视频的部分待完善
- **依赖**: `pip install pysrt cairosvg Pillow`
### 4. 人格体操作模式设计 ✅
- **文件**: `video-ai-system/docs/PERSONA-OPERATION-MODE.hdlp`
- **核心理念**: 人格体操作"意图",工具链自动执行
- **架构**: 剧本→人格体(理解意图·翻译)→系统提示词→工具链自动执行→生成结果
- **目的**: 让Codex理解架构知道缺什么、需要什么
### 5. 项目导航更新 ✅
- **文件**: `video-ai-system/ENTRY.hdlp`
- **更新**: 工具链增加 `tts-engine.py` 和 `subtitle-renderer.py` 条目
---
## 关键认知
### 1. API是裸的啥都得自己拼
- 视频生成API即梦/Seedance、可灵等只干一件事输入提示词+参考图→输出视频文件
- 配音/台词/口型/字幕都是独立管线,必须自己开发集成
- **不是bug是架构现实** — 接受它,然后自己搭
### 2. 人格体适合操作"意图"而不是工具
- 人格体擅长理解剧本情绪("燃""悲伤""搞笑"
- 工具链擅长执行MusicGen/Edge-TTS不懂中文情绪但懂英文提示词
- **中间层翻译** — 人格体把"燃·战斗"翻译成"epic orchestral battle music, intense"
- **自动调用** — 翻译完自动触发工具链人格体不用管FFmpeg命令
### 3. 开源方案不花钱也能做
- 配音: Edge-TTS免费·中文语音质量好
- BGM生成: MusicGenMeta开源·文本生成音乐
- 字幕: CairoSVG渲染PNG序列 + FFmpeg合成
- 音频混音: FFmpeg免费
- **不需要付费API** — 开源工具链完全能搭出来
---
## 遗留问题
### 1. 思源笔记访问问题 ❌
- **现象**: 主页"思源笔记"卡片点了跳回首页URL路径 `https://guanghubingshuo.com/siyuan/` 返回401 Auth failed
- **原因**: 可能是Nginx反代配置问题或思源笔记的`networkServe`设置未生效
- **处理**: 明天继续排查
### 2. 字幕管线FFmpeg合成待完善 ⚠️
- **现状**: PNG序列已能渲染但FFmpeg合成到视频的部分逻辑不完整
- **方案**: 需要重建FFmpeg with `drawtext` filter或优化PNG叠加方案
- **优先级**: 中等Codex测试完配音管线后再做
### 3. BGM生成管线待开发 ❌
- **需求**: 人格体用自然语言描述情绪/场景自动生成对应BGM
- **方案**: MusicGenMeta开源— 文本生成音乐本地GPU跑
- **优先级**: 高(第一阶段商用需要)
### 4. 音频混音管线待开发 ❌
- **需求**: 把配音+BGM+音效合成到视频中
- **方案**: FFmpeg混流对齐视频时间轴
- **优先级**: 高(第一阶段商用需要)
---
## 明天计划Codex测试
### 第一步:测试配音管线 ✅
```bash
# 测试苏白配音
python engines/tts-engine.py --text "未来的天下第一宗!" --character "苏白" --output test-audio/su-bai-001.mp3
# 测试批量生成从SRT
python engines/tts-engine.py --srt data/ep01-subtitles.srt --output-dir test-audio/ --character "苏白"
```
### 第二步测试SVG→PNG渲染 ✅
```bash
# 测试SVG渲染
python tools/svg-to-png.py test-input/test.svg test-output/test.png --width 1920
# 批量渲染
python tools/svg-to-png.py ./svg-dir/ ./png-dir/ --batch --scale 2
```
### 第三步:报告缺失管线 ❌
- 测试完可用管线后,报告哪些管线缺失
- 冰朔带回给铸渊,开发对应接口
---
## 经验迭代
### D144新增经验
1. **API裸奔现实** — 视频AI系统需要自己拼所有管线不能依赖API提供完整解决方案
2. **人格体操作意图** — 人格体不直接操作工具,而是操作"意图",工具链自动执行
3. **开源不花钱** — Edge-TTS/MusicGen/CairoSVG都是免费开源方案完全能搭出商用级管线
4. **情绪映射表** — 中文情绪词需要映射到英文提示词,这是人格体的核心工作之一
### 下次改进
1. **BGM生成管线** — 明天根据Codex反馈优先开发`bgm-generator.py`
2. **音频混音管线** — 同步开发`audio-mixer.py`,完成音频部分闭环
3. **思源笔记问题** — 明天排查Nginx反代配置解决401 Auth failed
---
## 文件路径
```
video-ai-system/
├── docs/
│ └── PERSONA-OPERATION-MODE.hdlp ← 人格体操作模式设计文档
├── engines/
│ ├── tts-engine.py ← ✅ 配音引擎
│ ├── subtitle-renderer.py ← ⚠️ 字幕渲染引擎
│ ├── bgm-generator.py ← ❌ 待开发
│ └── audio-mixer.py ← ❌ 待开发
├── tools/
│ └── svg-to-png.py ← ✅ SVG渲染工具
└── ENTRY.hdlp ← 项目导航(已更新)
```
---
铸渊 ICE-GL-ZY001 · D144 · 2026-06-23
冰朔 TCS-0002∞ · 国作登字-2026-A-00037559