3 条命令完成电子书转有声书:ebook2audiobook 上手
【免费下载链接】ebook2audiobookGenerate audiobooks from e-books, voice cloning & 1158+ languages!项目地址: https://gitcode.com/GitHub_Trending/eb/ebook2audiobook
每天通勤 40 分钟,想把待读书单变成可以听的内容——这是 ebook2audiobook(E2A)要解决的场景。它是一个 CPU/GPU 通用的电子书转有声书工具,把 EPUB、MOBI、PDF、TXT 等 20 多种格式的电子文件送入 TTS 引擎朗读,输出带章节标记的音频文件。工具支持 1158 种语言,内置 XTTSv2、Bark、VITS、Tacotron2 等 8 种 TTS 引擎,可选用,也支持用几秒录音做零样本语音克隆。硬件门槛不高:2 GB 内存、1 GB 显存即可运行,8 GB 内存、4 GB 显存体验更佳。
从零到可运行:本地安装依赖并启动 TTS 转换环境
安装脚本会自动检测操作系统、架构与 GPU 环境,并配置好 Python 依赖,不需要手动建虚拟环境:
git clone https://gitcode.com/GitHub_Trending/eb/ebook2audiobook cd ebook2audiobook ./ebook2audiobook.command # Windows 用户运行 ebook2audiobook.cmd启动后终端会打印http://localhost:7860/,浏览器打开即进入 Gradio 图形界面;同一入口加--headless参数则跳过界面,直接在终端完成转换,两者共用同一套参数体系。
核心操作路径:一次完整的电子书转有声书流程
打开 Web 界面后,整个转换按以下顺序进行:
- 在 Dashboard 页签上传电子书。EPUB 和 MOBI 的章节结构最完整,自动章节检测效果最好;PDF 为纯图片扫描件时会自动走 OCR 流程。
- 在语言选择器中指定电子书语言,编码为 ISO-639-3(如
eng、spa、zho),工具会据此选择默认 TTS 引擎。 - 配置语音:内置默认语音开箱即用;想要个性化音色时,上传一段数秒的干净人声录音触发语音克隆,工具会对参考音频自动降噪。
- 选择计算设备。GPU 可用时选 CUDA/MPS,可获得接近实时的合成速度;纯 CPU 环境建议换轻量引擎,具体见参数部分。
- 点击转换按钮,进度按章节推进。完成后页面直接提供音频片段预览与下载。
图 1:ebook2audiobook 电子书转有声书主界面,展示文件上传与基础设置区域
参数与调优:低配设备 TTS 省资源方案与输出格式选择
参数按使用场景分组理解更直接。
日常听书(平衡档)
- 温度值 0.6–0.7,语速保持 1.0
- 重复惩罚约 2.5,抑制语句重复
- 长书开启文本分割,避免单句过长导致截断
- 输出 m4b 单声道,自带章节标记
低配设备省资源(CPU 为主)
- 引擎换 YourTTS 或 Tacotron2,CPU 上速度明显更快
- 调低 top_k / top_p 采样值,生成速度提升
- 输出 mp3,体积小、播放端无压力
追求音质(GPU 可用)
- XTTSv2 搭配 CUDA,参考音频质量越高克隆越像
- 温度值降到 0.5 附近,朗读节奏更稳定
- 输出 flac 或 wav,保留无损细节
| 格式 | 体积 | 兼容性 | 建议用途 |
|---|---|---|---|
| m4b | 中 | 有声书播放器原生支持章节 | 长篇小说、教材(默认) |
| mp3 | 小 | 几乎所有设备 | 手机日常聆听 |
| flac | 大 | 主流播放器与 PC 端 | 归档、二次剪辑 |
| wav | 很大 | 通用 | 专业后期处理 |
图 2:音频生成参数设置界面,可调节温度、语速与采样参数
批量与进阶:命令行无头模式批量转换电子书
需要处理多本电子书时,无头模式更合适。--ebooks_dir指向一个目录即可整批转换,--voice指定克隆音色,配合--voice_map可以为每本书分配不同声音:
# 单本转换:指定电子书、语言与输出格式 ./ebook2audiobook.command --headless --ebook /path/to/book.epub --language eng --output_format m4b # 批量转换:目录内全部电子书,使用克隆音色 ./ebook2audiobook.command --headless --ebooks_dir /path/to/books --language spa --voice /path/to/voice.wav --output_format mp3--device、--tts_engine、--temperature等参数与界面选项一一对应,完整列表运行--help即可查看,无需额外记忆。
排障速查:转换慢、显存不足与 GPU 检测失败的处理
| 现象 | 可能原因 | 处理方式 |
|---|---|---|
| 转换速度慢 | CPU 上运行重型模型(如 XTTSv2) | 有独立显卡时通过--device启用 CUDA/MPS;纯 CPU 环境改用 YourTTS、Tacotron2 等轻量引擎 |
| GPU 未被检测到 | 驱动或 PyTorch 后端与显卡不匹配 | 查看启动时终端打印的 GPU 检测输出,按提示安装对应后端;或用 Docker 模式获得自包含环境 |
| 音频截断、断句位置不准 | 该语言的句子分割逻辑覆盖不足 | 提交问题并附上样本文本,维护者依赖用户样本调优分割逻辑 |
| 依赖安装失败、环境冲突 | 本地 Python 版本或与预装库冲突 | 使用--script_mode build_docker构建容器运行,依赖完全隔离 |
转换完成后,音频文件写入输出目录(默认为audiobooks/),m4b 等格式可直接导入支持章节标记的有声书播放器。
【免费下载链接】ebook2audiobookGenerate audiobooks from e-books, voice cloning & 1158+ languages!项目地址: https://gitcode.com/GitHub_Trending/eb/ebook2audiobook
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考