A cross-platform desktop application for reading text using local text-to-speech (TTS) models. The application handles audio chunking, voice model cataloging, and continuous playback without requiring an internet connection for synthesis.
- EPUB file handling: Able to import and parse EPUB files automatically.
- Local text-to-speech: Uses Piper TTS and ONNX models for offline voice synthesis.
- Graphical interface: Built with PySide6, displays book in a page format with customizable font size and navigation controls.
- Voice management: Browse, download, and manage voice models from Hugging Face directly within the application.
- Playback controls: Able to adjust speaking rate and volume.
- Cross-platform: Available as standalone executables for Windows and Linux.
- Audio handling: Implements buffering and text chunking to maintain continuous playback.
- Progress Saving: Automatically saves book location and used settings.
- Direct file parsing for PDF, TXT, and DOCX formats.
- Additional voices through Kokoro TTS Models.
- Highlighting text as it is spoken.
- Custom font and color Scheme styling.
- Folder Management for your books.
- Multiple Setting presets.
- Python
- PySide6 (Qt)
- Piper TTS
- Hugging Face Models
- ebooklib
- PyInstaller and GitHub Actions (for automated releases)
Standalone executables are automatically generated. You can run the application without installing Python or additional dependencies.
- Navigate to the Releases page of this repository.
- Download the latest
.ziparchive for your operating system (Windows or Linux). - Extract the archive and execute the
AudiobookReaderbinary.
To run the application from source or set up a development environment:
-
Clone the repository:
git clone [https://github.com/yourusername/AudiobookReader.git](https://github.com/yourusername/AudiobookReader.git) cd AudiobookReader -
Create and activate a virtual environment:
Linux/macOS:
python -m venv venv
source venv/bin/activateWindows:
python -m venv venv
venv\Scripts\activate-
Install dependencies:
pip install -r requirements.txt
-
Start the application:
python application.py