本仓库基于 ReazonSpeech 的 ESPnet 模型完成语音识别,并使用 DeepSeek (OpenAI 兼容接口) 进行翻译,再通过 ffmpeg 生成中日双语字幕视频。
环境建议
- 推荐在 Linux / WSL2 中使用,按照下文命令即可直接
pip install "ReazonSpeech/pkg/espnet-asr"。- 如果必须在原生 Windows 下运行,需要先安装 Visual Studio Build Tools(Desktop development with C++)、CMake、Ninja 等 C++ 工具链,否则
sentencepiece==0.2.0无法编译。- Python 版本建议 3.10 / 3.11(64 位)。3.12/3.13 在 Windows 上部分依赖缺少预编译轮子,会触发本地编译错误(详见 Windows 专项说明)。
# 1. 下载项目
git clone https://github.com/HugTibers/ASMR-ReazonSpeech-Translator.git
# 2. 获取 ReazonSpeech 代码与依赖
pip install "ReazonSpeech/pkg/espnet-asr"
// nemo-asr对配置要求较高
# 3. 安装本项目所需依赖
pip install huggingface-hub openai soundfile numpy==1.26.4
# 4. 确保本机已安装 ffmpeg,并且在 PATH 中, 不需要合成视频就不用下载
ffmpeg -version
Ubuntu: sudo yum install ffmpeg
Windows: 访问 ffmpeg官网 或 Gyan.dev下载页,下载 Windows 版本压缩包。- 推荐 Python:64 位 3.10 或 3.11(3.12/3.13 缺轮子,易编译失败)。
- 必装工具链:VS 2022 Build Tools(勾选“使用 C++ 的桌面开发”,含 MSVC + Windows SDK),系统 CMake,建议再装 Ninja。
- 新建干净 venv,且在同一 venv 里执行以下顺序(建议在 “x64 Native Tools Command Prompt for VS 2022” 中执行,或新开终端确保 PATH 已刷新):
python -m pip install --upgrade pip setuptools wheel python -m pip install "cmake<3.28" ninja cmake --version # 可选,确认版本 cl # 可选,确认 MSVC 可用 python -m pip install --no-build-isolation sentencepiece==0.2.0 python -m pip install "ReazonSpeech/pkg/espnet-asr"
- 若仍需编译,确保在新终端能跑通
cmake --version与cl,路径不要有中文或空格。
提示:DeepSeek 相关接口与 OpenAI SDK 兼容,脚本默认通过
OPENAI_API_KEY/DEEPSEEK_API_KEY注入密钥,你也可以在命令中使用--api-key直接传入。
asr.py 是最小可复用的命令行工具,用于把单个音频转写为带时间戳的 TXT。
python asr.py test/Track1.wav- 默认输出为
音频名_reazon.txt。 --device支持cuda/cpu;无 GPU 时可切换为--device cpu。
当你已有 ReazonSpeech 的转写文本时,可单独调用 DeepSeek 翻译。
export DEEPSEEK_API_KEY=sk-xxx # 或 OPENAI_API_KEY
python translate.py test/Track1_reazon.txt --api-key sk-xxx
如果只想把现有的中/日 TXT 合并成字幕:
python srt.py \
test/Track1_reazon.txt \
test/Track1_reazon翻译.txt当行数不匹配时脚本会给出警告,多余的句子会仅显示日文。
pipeline.py 串联了 ASR → 翻译 → SRT → ffmpeg 视频四个阶段,并带有断点续跑逻辑。基础用法:
python pipeline.py test/Track1.wav \
--api-key $DEEPSEEK_API_KEY常用参数:
| 参数 | 说明 |
|---|---|
--device |
ReazonSpeech 运行设备,默认 cuda |
--api-key / --base-url |
DeepSeek/OpenAI 兼容接口配置 |
--prompt / --prompt-file |
覆盖默认翻译提示词,--prompt-file 优先级更高 |
--max-chars |
单次翻译请求的最大字符数 (默认 4000) |
--bg-color / --resolution |
ffmpeg 生成字幕视频的背景色和分辨率 |
--no-resume |
关闭断点续跑,强制从头执行 |
执行过程中会生成如下文件:
test/Track1_reazon.txt:日文转写结果test/Track1_reazon翻译.txt:中文翻译(保持时间戳)test/Track1_reazon.srt:中日双语字幕test/Track1_subbed.mp4:带字幕的视频test/Track1_pipeline_state.json:断点续跑状态(成功结束会自动删除)
对多个音频重复执行 pipeline.py:
// test是文件夹
python batch_pipeline.py test \
--extensions .mp3 .wav \
--pipeline-args --api-key <key>示例:
python batch_pipeline.py "test" --pipeline-args --api-key sk-qweqweqwe123123131 (使用你自己的deepseek秘钥)- 默认会跳过已存在
*_subbed.mp4的文件。 --pipeline-script可指向自定义的 pipeline 路径。- 通过
--pipeline-args把其他参数透传给pipeline.py。
- 无法下载模型:请确保服务器能够访问 Hugging Face(必要时配置代理或镜像),脚本会在运行时自动拉取官方模型。
- 无 GPU 环境:所有脚本都可通过
--device cpu运行,只是速度会慢。 - ffmpeg 报错:请确认已安装 ffmpeg 5.x+ 且路径无中文或空格;字幕路径中若包含特殊字符已自动转义。
- Windows 依赖编译失败(sentencepiece / editdistance 等):
- 优先使用 64 位 Python 3.10 或 3.11,并新建干净 venv(3.12/3.13 常缺轮子,易编译失败)。
- 安装工具链:VS 2022 Build Tools(工作负载选“使用 C++ 的桌面开发”,包含 MSVC + Windows SDK),再在 venv 中
pip install "cmake<3.28" ninja。 - 确认环境:新开终端运行
cmake --version、cl均能输出版本。 - 安装顺序示例(同一 venv):
python -m pip install --upgrade pip setuptools wheel→python -m pip install "cmake<3.28" ninja→python -m pip install "ReazonSpeech/pkg/espnet-asr"。 - 如果仍需源码编译,建议在 “x64 Native Tools Command Prompt for VS 2022” 中执行上述命令。
普通对话可以正常识别,但是哦吼哦吼的叫声基本不能识别,不过这种声音大多数不用翻译也能明白。

