项目架构
MioSub 是一个使用 Electron + React + TypeScript 构建的桌面应用程序,专注于 AI 驱动的视频字幕生成、翻译与润色。
📖 技术栈
- 前端框架: React 18 + TypeScript
- 桌面框架: Electron
- 构建工具: Vite
- AI 服务: Google Gemini API, OpenAI Whisper API
- 音视频处理: FFmpeg, whisper.cpp
🏗️ 项目结构
├── electron/ # Electron 主进程
│ ├── main.ts # 主进程入口
│ ├── preload.ts # 预加载脚本
│ └── services/ # 后端服务(翻译、转录等)
├── src/ # React 渲染进程
│ ├── components/ # UI 组件
│ ├── hooks/ # React Hooks
│ ├── stores/ # 状态管理
│ └── types/ # TypeScript 类型定义
└── resources/ # 静态资源🔄 核心流程
- 视频下载 → yt-dlp 下载视频
- 音频提取 → FFmpeg 提取音频
- 语音转录 → Whisper API / whisper.cpp
- AI 翻译 → Gemini 上下文翻译
- 时间轴对齐 → CTC 强制对齐(可选)
- 字幕压制 → FFmpeg 硬字幕烧录
📖 详细架构文档正在编写中...