spec: update video2script - auto scrape mode, no manual upload

This commit is contained in:
root 2026-06-08 19:07:08 +08:00
parent e0582a84c1
commit 2338a5c6a3
1 changed files with 89 additions and 71 deletions

View File

@ -8,32 +8,41 @@ HLDP v1
type: user_request type: user_request
from: 之之 from: 之之
date: 2026-06-08 date: 2026-06-08
context: "我给你拍摄好的视频,你翻译成剧本的格式" context: "你搜索能力比我强多了,你完全可以爬出去自己看,搜索筛选出爆款来做"
constraint: "不训练大模型,用现成开源工具" constraint: "不训练大模型,用现成开源工具"
[EMERGENCE] [EMERGENCE]
## 一、目标 ## 一、目标
输入:一部真人短剧视频MP43-10分钟 输入:朝暮主动搜索并抓取的爆款短剧视频(抖音/快手/小红书/B站等平台
输出:专业剧本格式(含人物表、场景、对白、镜头提示) 输出:专业剧本格式 + 套路分析报告
## 二、技术方案(不训练,全用现成) ## 二、工作流程
### Step 1 · 音频转文字ASR ### Phase A · 数据采集(朝暮主动)
工具MediaCrawler27.7k⭐ 开源)
策略:
- 搜索关键词:短剧热门标签、爆款剧名
- 筛选条件:点赞/播放量高、近7天发布
- 平台:抖音 + 快手 + 小红书(主流短剧分发平台)
输出:短剧视频文件 + 元数据(标题、播放量、点赞数)
### Phase B · 视频→剧本翻译
Step 1 · 音频转文字ASR
工具Whisper开源光湖已有 工具Whisper开源光湖已有
输出:带时间戳的逐字稿 输出:带时间戳的逐字稿
### Step 2 · 画面关键帧提取 Step 2 · 画面关键帧提取
工具FFmpeg开源 工具FFmpeg开源
策略每3-5秒提取一帧或检测场景切换时提取 策略每3-5秒提取一帧或检测场景切换时提取
输出:关键帧图片序列 + 时间戳 输出:关键帧图片序列 + 时间戳
### Step 3 · 画面描述(视觉理解) Step 3 · 画面描述(视觉理解)
工具调用视觉LLMDeepSeek视觉版 / GPT-4o视觉分析关键帧 工具调用视觉LLM分析关键帧
输出:每帧的场景描述(人物位置、动作、表情、景别、运镜) 输出:每帧的场景描述(人物位置、动作、表情、景别、运镜)
### Step 4 · AI 编排合成(核心步骤) Step 4 · AI 编排合成(核心步骤)
输入:时间轴对齐的 [逐字稿 + 画面描述] 输入:时间轴对齐的 [逐字稿 + 画面描述]
工具LLMDeepSeek已有key 工具LLMDeepSeek已有key
流程: 流程:
@ -43,73 +52,82 @@ HLDP v1
角色名:(语气)"对白" 角色名:(语气)"对白"
c) 格式化为专业剧本结构 c) 格式化为专业剧本结构
### Step 5 · 套路分析 ### Phase C · 套路分析(核心价值)
对生成的剧本进行结构化分析: 对生成的剧本进行结构化分析:
- 钩子位置(第几秒出钩子 - 黄金3秒钩子分析开头第一个镜头是什么
- 情绪曲线(起承转合标记) - 情绪曲线(起承转合标记)
- 反转节点 - 反转节点(位置+类型)
- 结尾卡点 - 结尾卡点(在哪断章)
输出:套路分析报告(存库) - 节奏分析(每场时长、对白密度)
输出:套路分析报告(存入仓库,下次生成直接调用)
### Phase D · 套路库沉淀
每次分析结果 → 格式化为结构化套路模板 → 存入仓库
下次写新剧本时:"追妻火葬场最近流行什么开头?" → 翻套路库
## 三、开源工具清单 ## 三、开源工具清单
| 环节 | 工具 | 许可证 | 已有 | | 环节 | 工具 | 许可证 | 已有 |
|------|------|--------|------| |------|------|--------|------|
| 数据采集 | MediaCrawler | 开源 | ❌ 需部署 |
| ASR | Whisper | MIT | ✅ 光湖已有 | | ASR | Whisper | MIT | ✅ 光湖已有 |
| 关键帧提取 | FFmpeg | LGPL | ✅ 光湖已有 | | 关键帧提取 | FFmpeg | LGPL | ✅ 光湖已有 |
| 视觉理解 | DeepSeek视觉API / GPT-4o | API调用 | ✅ DeepSeek有key | | 视觉理解 | DeepSeek视觉API | API调用 | ✅ 有key |
| 文本编排 | DeepSeek Chat | API调用 | ✅ 有key | | 文本编排 | DeepSeek Chat | API调用 | ✅ 有key |
| 套路分析 | DeepSeek Chat | API调用 | ✅ 有key | | 套路分析 | DeepSeek Chat | API调用 | ✅ 有key |
## 四、架构 ## 四、架构
``` ```
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌─────────────────────────────────────────────────┐
│ 视频输入 │ → │ ASR提取 │ → │ 关键帧提取 │ │ Phase A · 朝暮主动搜索 │
│ .mp4 │ │ 音频→文字 │ │ FFmpeg │ │ MediaCrawler → 抖音/快手/小红书/B站 │
└──────────┘ └──────────┘ └─────┬────┘ │ → 筛选爆款(播放量+点赞+发布时间) │
└─────────────────────┬───────────────────────────┘
↓ 视频文件
┌──────────┐ ┌─────────────────────┴───────────────────────────┐
│ 视觉理解 │ │ Phase B · 视频→剧本翻译 │
│ DeepSeek │ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
└─────┬────┘ │ │ ASR提取 │ │关键帧提取│ │视觉理解 │ │
│ │ Whisper │ │ FFmpeg │ │DeepSeek │ │
│ └────┬────┘ └────┬────┘ └────┬────┘ │
┌──────────┐ │ └────────────┼────────────┘ │
│ AI编排合成│ │ ↓ 时间轴对齐 │
│ 时间轴对齐│ │ ┌──────────────┐ │
└─────┬────┘ │ │ AI编排合成 │ │
│ │ 剧本输出 │ │
┌──────────┴──────────┐ │ └──────┬───────┘ │
▼ ▼ └─────────────────────┼───────────────────────────┘
┌──────────┐ ┌──────────┐ ↓ 剧本
│ 剧本输出 │ │ 套路分析 │ ┌─────────────────────┴───────────────────────────┐
│ 专业格式 │ │ 存入仓库 │ │ Phase C · 套路分析 │
└──────────┘ └──────────┘ │ 钩子 → 情绪曲线 → 反转 → 卡点 → 节奏 │
│ → 套路分析报告 │
└─────────────────────┼───────────────────────────┘
↓ 结构化数据
┌─────────────────────┴───────────────────────────┐
│ Phase D · 套路库沉淀 │
│ 存入仓库 → 下次写剧本直接调用 │
└─────────────────────────────────────────────────┘
``` ```
## 五、文件结构 ## 五、产出物
``` 1. 专业剧本(.md
modules/video2script/
├── SPEC.hdlp ← 本文件(项目说明书)
├── server.js ← 后端服务(处理上传+调用各工具)
├── pipeline.js ← 核心流水线编排
├── public/
│ └── index.html ← 前端页面(上传视频、看结果)
└── data/
└── output/ ← 输出缓存
```
## 六、产出物
1. 专业剧本(.md / .txt
2. 套路分析报告(.hdlp 2. 套路分析报告(.hdlp
3. 时间轴对照表(逐字稿+画面描述 对齐) 3. 爆款特征总结
4. 套路库(持续累积)
## 六、朝暮的主动策略
不只是"之之给什么我分析什么",而是:
- 定期扫描各平台新发爆款短剧
- 建立爆款指数:播放量×完播率×互动率 综合排名
- 同类题材横向对比:找出"这个题材的标配套路"
- 趋势追踪:这周流行什么开头、什么反转
[LOCK] [LOCK]
status: spec_ready status: spec_updated
next: 等待之之说"开始"后进入 Craft 模式开发 next: 安装MediaCrawler → 跑通一条完整链路 → 给之之看第一次产出
deploy: 硅谷服务器,/video2script/ 路径 deploy: 硅谷服务器
gitee: ❌ 不推送内部工具放Gitea大本营 gitee: ❌ 不推送内部工具放Gitea大本营