📚 ebook2audiobook (E2A)
CPU/GPU Converter from E-Book to audiobook with chapters and metadata
using advanced TTS engines and much more.
Supports voice cloning and 1158 languages!
[!IMPORTANT] This tool is intended for use with non-DRM, legally acquired eBooks only.
The authors are not responsible for any misuse of this software or any resulting legal consequences.
Use this tool responsibly and in accordance with all applicable laws.
Thanks to support ebook2audiobook developers!
Run locally
Run Remotely
GUI Interface

Click to see images of Web GUI
Demos
New Default Voice Demo
https://github.com/user-attachments/assets/750035dc-e355-46f1-9286-05c1d9e88cea
More Demos
ASMR Voice
https://github.com/user-attachments/assets/68eee9a1-6f71-4903-aacd-47397e47e422
Rainy Day Voice
https://github.com/user-attachments/assets/d25034d9-c77f-43a9-8f14-0d167172b080
Scarlett Voice
https://github.com/user-attachments/assets/b12009ee-ec0d-45ce-a1ef-b3a52b9f8693
David Attenborough Voice
https://github.com/user-attachments/assets/81c4baad-117e-4db5-ac86-efc2b7fea921
Example

README.md
Table of Contents
Features
- 🔧 TTS Engines supported:
XTTSv2,Bark,Fairseq,VITS,Tacotron2,Tortoise,GlowTTS,YourTTS - 📚 Convert multiple file formats:
.epub,.mobi,.azw3,.fb2,.lrf,.rb,.snb,.tcr,.pdf,.txt,.rtf,.doc,.docx,.html,.odt,.azw,.tiff,.tif,.png,.jpg,.jpeg,.bmp,.zip - 💻 TextArea to convert directly a short text in audio
- 🔍 OCR scanning for files with text pages as images
- 🔊 High-quality text-to-speech from near realtime to near real voice
- 🗣️ Optional voice cloning using your own voice file
- 🌐 Supports 1158 languages (supported languages list)
- 💻 Low-resource friendly — runs on 2 GB RAM / 1 GB VRAM (minimum)
- 🎵 Audiobook output formats: mono or stereo
aac,flac,mp3,m4b,m4a,mp4,mov,ogg,wav,webm - 🧠 SML tags supported — fine-grained control of breaks, pauses, voice switching and more (see below)
- 🧩 Optional custom model using your own trained model (XTTSv2, VITS, FAIRSEQ, PIPER, others on request)
- 🎛️ Fine-tuned preset models trained by the E2A Team
(Contact us if you need additional fine-tuned models, or if you’d like to share yours to the official preset list)
Hardware Requirements
- 2GB RAM min, 8GB recommended.
- 1GB VRAM min, 4GB recommended.
- Virtualization enabled if running on windows (Docker only).
- CPU, XPU (intel, AMD, ARM)*.
- CUDA, ROCm, JETSON
- MPS (Apple Silicon CPU)
* Modern TTS engines are very slow on CPU, so use lower quality TTS like YourTTS, Tacotron2 etc..
Supported Languages
| Arabic (ar) | Chinese (zh) | English (en) | Spanish (es) |
|---|---|---|---|
| French (fr) | German (de) | Italian (it) | Portuguese (pt) |
| Polish (pl) | Turkish (tr) | Russian (ru) | Dutch (nl) |
| Czech (cs) | Japanese (ja) | Hindi (hi) | Bengali (bn) |
| Hungarian (hu) | Korean (ko) | Vietnamese (vi) | Swedish (sv) |
| Persian (fa) | Yoruba (yo) | Swahili (sw) | Indonesian (id) |
| Slovak (sk) | Croatian (hr) | Tamil (ta) | Danish (da) |
Supported eBook Formats
.epub,.pdf,.mobi,.txt,.html,.rtf,.chm,.lit,.pdb,.fb2,.odt,.cbr,.cbz,.prc,.lrf,.pml,.snb,.cbc,.rb,.tcr- Best results:
.epubor.mobifor automatic chapter detection
Output and process Formats
.m4b,.m4a,.mp4,.webm,.mov,.mp3,.flac,.wav,.ogg,.aac- Process format can be changed in lib/conf.py
SML tags available
[break]— silence (random range 0.3–0.6 sec.)[pause]— silence (random range 1.0–1.6 sec.)[pause:N]— fixed pause (N sec.)[voice:/path/to/voice/file]...[/voice]— switch voice from default or selected voice from GUI/CLI
Check our other repo dedicated to add SML automatically in your ebook -> E2A-SML
[!IMPORTANT] Before to post an install or bug issue search carefully to the opened and closed issues TAB
to be sure your issue does not exist already.
[!NOTE] EPUB format lacks any standard structure like what is a chapter, paragraph, preface etc.
So you should first remove manually any text you don't want to be converted in audio.
Instructions
Clone repo
git clone https://github.com/DrewThomasson/ebook2audiobook.git cd ebook2audiobookInstall / Run ebook2audiobook:
- Linux/MacOS
./ebook2audiobook.command
- Linux/MacOS
Note for MacOS users: homebrew is installed to install missing programs.
Mac Launcher
Double clickMac Ebook2Audiobook Launcher.commandWindows
ebook2audiobook.cmdor Double click
ebook2audiobook.cmd
Note for Windows users: scoop is installed to install missing programs without administrator privileges.
- Open the Web App: Click the URL provided in the terminal to access the web app and convert eBooks.
http://localhost:7860/ - For Public Link:
./ebook2audiobook.command --share(Linux/MacOS)ebook2audiobook.cmd --share(Windows)python app.py --share(all OS)
[!IMPORTANT] **If the script is stopped and run ag