Star 数:14.1K+ AI 驱动的电子书转有声书工具,支持语音克隆与 1100+ 语言 ebook2audiobook 是一个开源项目,由 DrewThomasson 开发,专注于将非 DRM 电子书(EPUB/MOBI 等)自动转换为高质量有声书。它集成多种先进 TTS 模型,支持章节拆分、元数据嵌入、语音克隆与多语言输出,提供 Gradio Web UI、CLI 与 Docker 部署选项。
1. 准备环境
必要软件
- Python 3.10+
- Git
- FFmpeg(音频处理必须)
- Calibre(解析 EPUB/PDF 结构)
Windows 安装方式
- Python:https://www.python.org/downloads/
- Git:https://git-scm.com/downloads
- FFmpeg(懒人方式):下载压缩包后解压,把
/bin目录加入 PATH
https://www.gyan.dev/ffmpeg/builds/ - Calibre:https://calibre-ebook.com/download
确保命令行能执行:
python --version
ffmpeg -version
2. 克隆项目代码
git clone https://github.com/DrewThomasson/ebook2audiobook
cd ebook2audiobook
3. 安装依赖
项目使用 poetry 管理依赖,所以先装它:
pip install poetry
然后安装项目依赖:
poetry install
完成后进入虚拟环境:
poetry shell
4. 准备要转换的电子书
支持的格式:
- EPUB(最佳)
- MOBI
- TXT
建议:中文电子书用 EPUB 效果最稳。
5. 最简单的转换命令(中文版)
直接把电子书变成 MP3
python main.py \
--input "你的电子书.epub" \
--output "输出目录" \
--language "zh" \
--tts-engine "coqui" \
--output-format "mp3"
解释一下最关键的参数:
| 参数 | 含义 |
|---|---|
--input | 输入电子书路径 |
--output | 输出目录 |
--language "zh" | 中文 |
--tts-engine "coqui" | Coqui XTTSv2(支持中文,稳定) |
--output-format | mp3 / m4b / flac |
6. 如果你想用更像“有声书主播”的声音(推荐)
这套命令效果更好(中文更自然):
python main.py \
--input "你的电子书.epub" \
--output "输出目录" \
--language "zh" \
--tts-engine "bark" \
--voice "v2/zh_speaker_6" \
--output-format "m4b"
为什么选 bark?
- Bark 的中文发音比 Coqui 更自然
- 自带多个中文 speaker(更接近有声书感觉)
7. 高级:自定义你的声音(语音克隆)
准备你的语音样本(大约 20–30 秒)
例如:
samples/myvoice.wav
然后运行:
python main.py \
--input "电子书.epub" \
--output "输出" \
--language "zh" \
--tts-engine "xtts" \
--voice "samples/myvoice.wav"
系统会克隆你提供的声音来朗读整本书。
中文克隆效果比较依赖你提供的样本质量。
建议录一段普通朗读,自然语速即可。
8. 输出为专业有声书格式 m4b(支持章节)
--output-format "m4b"
--chapters "true"
示例:
python main.py \
--input "Book.epub" \
--output "out" \
--language "zh" \
--tts-engine "coqui" \
--output-format "m4b" \
--chapters true
9. 最省事的:Docker 快速运行(不装 Python)
如果你电脑有 Docker:
docker run -v "$PWD:/data" \
ebook2audiobook \
--input "/data/book.epub" \
--output "/data/output" \
--language "zh"
10. 注意事项(中文用户最常遇到的坑)
- PDF 提取效果差
→ 建议用 Calibre 转成 EPUB 再跑。 - 中文断句问题
→ Bark / Coqui 均能自动处理,不需手动加标点。 - 输出太慢
→ GPU=快速
→ CPU=慢但可用
→ 文本很长时耐心等。 - 如果报错找不到 ffmpeg
→ 把 FFmpeg 的/bin放到 PATH。
GitHub:https://github.com/DrewThomasson/ebook2audiobook
油管:https://youtu.be/VRVhzdaYFXg