上下班路上想"读"完那些躺在硬盘里的电子书?试试这个工具。
ebook2audiobook 是一个电子书转有声书的开源项目,输入EPUB、PDF等格式文件,输出带章节标记的音频。支持声音克隆,能在4GB内存的电脑上运行。
功能介绍
主要特性:
- 自动识别章节并生成音频文件
- 支持声音克隆(需要13秒以上的清晰录音)
- 提供网页界面和命令行两种方式
- 支持1100多种语言
- 兼容CPU和GPU运行
技术实现:
- 语音合成:XTTSv2、Bark、Fairseq
- 电子书解析:Calibre
- 音频处理:FFmpeg、SoX
- 操作界面:Gradio
使用方法
本地安装
Linux/MacOS:
git clone https://github.com/DrewThomasson/ebook2audiobook.git
cd ebook2audiobook
./ebook2audiobook.sh
Windows:
下载项目后双击 ebook2audiobook.cmd 文件
首次运行会自动安装依赖,下载约1.8GB的模型文件。完成后在浏览器访问 http://localhost:7860 使用网页界面。
Docker部署
docker run -d -p 7860:7860 \
-v ./input:/input_ebooks \
-v ./output:/output_audiobooks \
athomasson2/ebook2audiobook:latest
命令行模式
./ebook2audiobook.sh --headless \
--ebook "书名.epub" \
--voice "声音样本.wav" \
--language zh
转换效果
支持的文件格式:
- 输入:EPUB、PDF、MOBI、AZW3
- 输出:M4B、MP3、WAV、FLAC
处理速度参考:
- 300页英文书(NVIDIA RTX 3060显卡):12分钟左右
- 500页中文书(Apple M1芯片):25分钟左右
- 纯CPU模式:速度较慢但可以使用
音频特点:
使用XTTSv2模型生成,能表达基本情感。声音克隆效果取决于提供的音频样本质量。生成的音频文件会自动添加章节信息。
适合谁用
- 通勤学习:把技术书籍转成音频,在路上听
- 内容创作者:为自己的电子书制作有声版
- 视力不便人群:通过听的方式获取书籍内容
- 语言学习:利用多语言功能练习听力
技术特点
模块化设计
核心代码和界面分离,可以作为Python库集成到其他项目。
自动适配硬件
程序会自动检测CPU、NVIDIA显卡、AMD显卡或Apple芯片,选择合适的运行方式。
内存优化
采用分块处理,4GB内存就能处理大部头书籍。
基于成熟工具
使用Calibre处理电子书格式,用FFmpeg处理音频,专注于文字转语音的流程优化。
使用注意
- 只能转换无DRM保护的合法电子书
- 首次运行需要下载模型文件
- 声音克隆需要提供13秒以上的清晰录音
- 转换时间和书籍长度、硬件配置有关
- 转换前建议手动删除不需要转换的内容(如版权页、目录页)
项目现状
- GitHub收藏数:11,800+
- 开源协议:Apache-2.0
- 维护状态:持续更新中
- 支持语言:1100多种
如果你也想让电子书"开口说话",可以试试这个工具。
关注云栈开源日记,每天发现实用的开源项目 👇
项目地址:
https://github.com/DrewThomasson/ebook2audiobook
相关资源:
- Docker镜像:athomasson2/ebook2audiobook
标签:#ebook2audiobook #Github #有声书制作 #文字转语音 #开源工具
|