Files
subtitle-studio/README.md
T
hmo 7de5ab3902 subtitle-studio: 字幕生成系统
- 选择文件夹/单文件 → SenseVoice 转录 → LLM 修正 → 多路线翻译 → 双语 SRT
- 路线:直译中文 / 英转中 / 仅转录
- 并发流水线:转录(可调) + LLM 并发(可调),降噪拆锁并发
- 断点续跑:.subtitle-work/ 中间产物,三阶段独立续跑 + 翻译段级续跑
- 去重:history 跟随视频文件夹,防重复任务保护
- 实时进度:SSE 推送 + 耗时显示 + 子任务状态 + 重新生成按钮
- 时间戳调优:VAD silence_schedule + noisereduce 降噪 + 完整性校验
2026-08-16 20:17:14 +08:00

64 lines
2.2 KiB
Markdown
Raw 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.
# subtitle-studio 字幕生成系统
选择文件夹或单个视频 → 自动生成多路线双语字幕,实时查看进度。
## 快速开始
```powershell
# 方式一(推荐):后台启动,无窗口,日志写 logs/server.log
scripts\start_hidden.bat
# 方式二:前台启动(关窗口即停止)
scripts\start.bat
# 停止后台服务
scripts\stop.bat
```
浏览器打开 **http://127.0.0.1:8788**start_hidden.bat 会自动打开)
## 功能
1. **选择视频**:浏览文件系统(支持盘符切换/上级目录),或直接输入路径;选文件夹批量处理
2. **选择路线**
- 路线 A 直译中文:转录 → LLM 修正 → 日文直译中文 → `.ja.zh.srt` + `.zh.srt`
- 路线 B 英转中:转录 → LLM 修正 → 日→英→中 → `.r2.zh.en.srt` + `.r2.zh.srt`
- 仅转录:只做语音识别 → `_transcript.json`
3. **实时进度**:SSE 推送任务状态(等待/转录/修正/翻译/生成字幕/完成/失败)
4. **完成列表**:已生成字幕文件可直接下载,失败任务可一键重试
## 技术栈
| 组件 | 说明 |
|------|------|
| 前端 | 原生 HTML/JSSSE 实时进度 |
| 后端 | FastAPI + uvicorn:8788 |
| 转录 | SenseVoiceSmall + fsmn-vadGPUpy312_cuda 环境) |
| 修正 | LLM 分块并发(4 worker |
| 翻译 | DeepSeek V4 Flash 全文一次请求(1M 上下文,不指定 max_tokens |
| LLM | OCG Router192.168.1.246:19878,自动选 key |
## 目录
```
subtitle-studio/
├── src/substudio/
│ ├── main.py # FastAPI 入口
│ ├── taskmanager.py # 任务队列 + 状态机 + SSE
│ ├── llm.py # OCG Router 客户端(流式兼容)
│ ├── config.py # 配置
│ └── pipeline/
│ ├── transcribe.py # SenseVoice 转录
│ ├── fix.py # 分块并发修正
│ ├── translate.py # 路线翻译
│ └── srt.py # SRT 生成
├── templates/index.html
├── static/app.js
├── output/ # 任务输出(含副本)
└── scripts/start.bat
```
## 架构文档
见 [ARCHITECTURE.md](ARCHITECTURE.md)