crosssubtitle-ai/README.md
2026-03-18 15:36:08 +08:00

59 lines
2.0 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.

# CrossSubtitle-AI
基于 `Tauri v2 + Vue 3 + Pinia + Tailwind CSS` 的本地优先字幕工作台,覆盖以下 MVP 链路:
- 导入音视频文件并创建任务队列
- 使用 `ffmpeg` 抽取 16kHz 单声道 WAV
- 执行基础 VAD 切分并生成语音片段时间轴
- 进入 Whisper 转录/翻译环节
- 可选接入 OpenAI-compatible 接口生成中文译文
- 实时推送任务进度和字幕片段
- 导出 `SRT / VTT / ASS`
## 目录结构
- `src/`: Vue 前端界面、Pinia 状态、字幕编辑器
- `src-tauri/src/audio.rs`: 音频抽取与 WAV 读取
- `src-tauri/src/vad.rs`: VAD API 与基础能量检测实现
- `src-tauri/src/whisper.rs`: Whisper 接口层
- `src-tauri/src/translate.rs`: OpenAI-compatible 滑动窗口翻译
- `src-tauri/src/subtitle.rs`: SRT / VTT / ASS 导出
- `src-tauri/src/task.rs`: 任务编排与事件广播
## 当前实现说明
- 当前仓库已补齐完整工程骨架与核心数据流。
- 由于本机环境缺少 Rust 工具链,本次未能执行 `cargo check``tauri dev`
- `whisper.rs` 目前提供了稳定的接口与任务路由,但真实 `whisper-rs` 推理仍需在安装 Rust 后继续接入具体模型调用。
- `vad.rs` 已提供可用的 VAD 模块 API默认实现为能量检测回退如果你后续放入 Silero ONNX可在此模块内替换为 `ort` 推理。
## 运行前准备
1. 安装 Rust 工具链。
2. 安装 `ffmpeg`,并确保可通过命令行直接调用。
3. 安装前端依赖:
```bash
npm install
```
4. 如需中文翻译,配置环境变量:
```bash
export OPENAI_API_BASE=https://your-openai-compatible-endpoint/v1
export OPENAI_API_KEY=your_api_key
export OPENAI_MODEL=gpt-4o-mini
```
5. 启动桌面应用:
```bash
npm run dev
```
## 下一步建议
-`src-tauri/src/whisper.rs` 的占位实现替换为真实 `whisper-rs` 推理。
-`src-tauri/src/vad.rs` 接入 Silero VAD ONNX Runtime。
- 加入文件选择器、任务恢复、批量导出与测试用例。