m4b
A Python CLI script that converts audio content (possibliy an EPUB file with media overlay) into a single M4B audiobook, optionally embedding chapter metadata and cover art. It can also fetch metadata from Open Library (e.g., title, author, cover).
Forked from patricker/m4binder@6b3461a and relicensed to BSD-3-Clause-Clear.
Prerequisites
-
FFmpeg
You must have FFmpeg installed and in your system’s PATH. This script relies on FFmpeg for audio processing (encoding, merging, adding metadata). -
Python 3.13+
- If you don’t already have Python, install it from python.org/download/releases/.
-
Pip & Requirements
The script has some Python dependencies (namely, mutagen).
Usage
pip install -e .
python -m m4binder --help
Troubleshooting
-
FFmpeg Not Found
- Ensure
ffmpegis installed and on your system’s PATH. You can verify by runningffmpeg -version.
- Ensure
-
No Audio Files Detected
- Double-check your input folder paths. Make sure files actually have a supported extension.
-
Metadata Not Found / Covers Missing
- Open Library may not have an entry for your exact title/author. Ensure you’ve spelled them correctly, or use
--metadata-source noneto rely on embedded cover art.
- Open Library may not have an entry for your exact title/author. Ensure you’ve spelled them correctly, or use
-
High CPU Usage
- By default, the script parallelizes conversion of audio files (for faster performance).
License
Current: See LICENSE
Previouse license: "This project is provided under the MIT License (or whichever license you apply). Feel free to modify and distribute it according to your needs." See: README.md