☰
ebook2audiobook 一键免费把电子书转成有声书:支持 1158 种语言
2026/10/17 2:27:32 网站建设 项目流程

ebook2audiobook 一键免费把电子书转成有声书:支持 1158 种语言

【免费下载链接】ebook2audiobookGenerate audiobooks from e-books, voice cloning & 1158+ languages!项目地址: https://gitcode.com/GitHub_Trending/eb/ebook2audiobook

你手里攒了一堆 epub,想听书却只能自己念,或者把章节一段段复制进 TTS 再手动拼接,费时还丢结构。ebook2audiobook(E2A)是个免费开源工具,吃进整本电子书,自动解析章节、逐句合成,再带上章节标记输出成播放器直接能用的 m4b/mp3,覆盖 1158 种语言、23 种书籍格式。照下面走,十分钟以内你就能拿到第一本带章节的有声书。

🔄 整体流程:一本书是怎么变成有声书的

适合谁:有电子书、想躺在地上听书,又不想给每本书花半小时手动折腾音频的人。

提示:它声明只用于无 DRM、合法获取的电子书,别拿它去扫盗版资源,法律后果自己担。

🚀 拿到第一个结果:装完直接转

你不用手动装任何依赖。项目自带启动脚本,第一次跑会自动补齐全套环境,你只要把代码下下来:

git clone https://gitcode.com/GitHub_Trending/eb/ebook2audiobook cd ebook2audiobook

第一行把项目拉到本地,第二行进目录,后面所有操作都在这做。

系统入口脚本首次运行自动装
Linux / macOS./ebook2audiobook.commandHomebrew、Python 3.12、calibre、ffmpeg、tesseract 等
Windowsebook2audiobook.cmdScoop、Miniforge、依赖
容器docker-compose.yml容器内全部自带,只挂目录

最短路径拿第一个产出,两步:

./ebook2audiobook.command --help

这一行列出所有合法参数,脚本对不认识的参数会直接拒绝,先查再敲能省掉一半报错。

./ebook2audiobook.command --headless --ebook ebooks/tests/test_eng.epub --language eng

这条命令把仓库自带的英文测试书直接转掉,--headless是无头模式(跳过网页,命令直接转),--language填 ISO 语言码,默认就是英文。成品落在audiobooks/目录,丢进播放器就能跳章节。

🛠️ 三种用法:网页、单本、整目录

网页控制台

./ebook2audiobook.command

这一行拉起网页界面,浏览器打开http://localhost:7860/就是你的控制台:拖入电子书,选语言,CPU/GPU 二选一,点转换,转完能直接试听、下载。加--share启动则生成临时公网链接,方便在手机上先听两章。

单本转换

上一节的--headless命令就是单本用法。关键参数:

  • --ebook:电子书路径,和--ebooks_dir二选一
  • --output_format:输出格式,默认 m4b,还能选 mp3、wav、flac 等
  • --output_channel:单声道或立体声,默认 mono

整目录批量

./ebook2audiobook.command --headless --ebooks_dir ./books --output_dir ./out

--ebooks_dir指一个装书的目录,里面所有书一次全转,--output_dir把成品统一挪进./out,不占默认位置。仓库里 ebooks/tests/ 放了一整套多语言测试书(英、法、日、中文等 80 来种),拿它练手很方便。

🎙️ 选型指南:TTS 引擎怎么挑

选项强项适用场景
XTTS高质量、支持语音克隆想要自然音色、多语言混读
FAIRSEQ低资源语言覆盖最广冷门语种、方言
BARK带情感、能加语气词表现力优先的有声书
VITS / TACOTRON / YOURTTS轻量,CPU 也能跑没有显卡的环境

如果你没有 GPU,就选 YOURTTS 或 TACOTRON,用--tts_engine yourtts指定,因为现代引擎在 CPU 上慢得没法听;有 4GB 以上显存再上 XTTS 追求克隆效果。

✨ 进阶技巧:换声音、换语言、断点续传

语音克隆:录一段 1~5 分钟的清晰人声(带背景音也行,它会先降噪),然后:

./ebook2audiobook.command --headless --ebook book.epub --language fra --voice my_voice.wav

这条命令用你自己的声音把法语书读出来——--language管"说什么语言",--voice管"用谁的声音说",两者互相独立。

先翻译再合成:加--translate <ISO3码>,它先把书译成目标语言再读,译文和原文的产物自动分开存放,不互相覆盖。

断点续传:转换中断或崩溃后,用--session接上原来的会话,跳过已合成的句子,不用从头再来。

参数微调:不想敲命令的话,网页里"Audio Generation Preferences"标签页有一排现成滑块——Temperature(越高越有创意)、Repetition Penalty(压重复)、Speed(语速)。

🔍 卡住了怎么办:四步排查

  1. 报"未知参数"或命令没反应:第一动作是跑--help把合法参数全列出来对着抄。
  2. 依赖装了又缺:重跑一次启动脚本,它会自动补装缺失项;看日志里 OK / failed 字样定位卡住的包。
  3. GPU 识别不到或显存不够:显存最低 1GB、推荐 4GB;不够就--device CPU强制走 CPU,并换轻量引擎。
  4. 章节识别乱、夹带杂质:EPUB 本身没有"哪段是章节"的统一标准,先把不想读的部分在书里手动删掉再喂给它。

提示:提交 issue 前先翻一遍已打开和已关闭的 issues,重复问题基本都有现成答案。

📂 源码导览

核心转换流程在 lib/core.py,入口与参数解析在 app.py,网页界面在 lib/gradio.py,各 TTS 引擎实现集中在 lib/classes/tts_engines/,默认语言、格式、路径等配置都写在 lib/conf.py。

打开终端敲下启动脚本,1158 种语言的有声书就从今天开始。

【免费下载链接】ebook2audiobookGenerate audiobooks from e-books, voice cloning & 1158+ languages!项目地址: https://gitcode.com/GitHub_Trending/eb/ebook2audiobook

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询