From de5b2d9ca7302ade711d9dfb32b2fe8047f55cc2 Mon Sep 17 00:00:00 2001 From: historia Date: Tue, 18 Aug 2026 03:00:16 -0400 Subject: feat: support .ogg and .flac output --- README.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 20ee20a..f3ce5d9 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ # Qwen3 Audiobook Converter -Convert TXT, PDF, and EPUB files into audiobooks using the Qwen3-TTS voice model. This builds upon [WhiskeyCoder/Qwen3-Audiobook-Converter](https://github.com/WhiskeyCoder/Qwen3-Audiobook-Converter) adding m4b support, transcription and speed options, and clearer instructions. It also splits the qwen3-tts server into two processes running models on different ports. +Convert TXT, PDF, and EPUB files into audiobooks using the Qwen3-TTS voice model. This builds upon [WhiskeyCoder/Qwen3-Audiobook-Converter](https://github.com/WhiskeyCoder/Qwen3-Audiobook-Converter) adding more output files, transcription/speed options, better text cleanup, and clearer instructions. It also expects the qwen-tts server to be on different ports per model, so two server processes can run at once. ## Overview The converter sends text extracted from your books to a locally running Qwen3-TTS server and assembles the returned audio into a single audiobook file. - Input: `.txt`, `.pdf`, or `.epub` -- Output: `.mp3` or `.m4b` +- Output: `.mp3`, `.m4b`, `.ogg`, or `.flac` - Output a single mp3 or one per chapter - Two voice modes: - Custom voice: pre-built speakers @@ -64,7 +64,7 @@ qwen-tts-demo Qwen/Qwen3-TTS-12Hz-1.7B-Base --ip 127.0.0.1 --port 7861 ## Converting books -Put your book files (epub, txt, etc.) in the `input/` folder. Then run the script. The output goes to `output/`. +Put your book files (epub, etc.) in the `input/` folder. Then run the script. The output goes to `output/`. ### Custom voice @@ -86,19 +86,19 @@ CUSTOM_VOICE_INSTRUCT = "Speak naturally and clearly, as if reading a dramatic b python audiobook_converter.py --voice-clone --voice-sample path/to/reference.wav ``` -The reference `.wav` should be ~10-15 seconds (3 second minimum, 60 second maximum; ~15 seconds is ideal). +The reference `.wav` should be ~10-15 seconds (3 second minimum, 60 second maximum; ~15 seconds is ideal). Longer is **not** better. Whisper (`faster_whisper` or `whisper`) is used automatically to transcribe the reference audio; without a Whisper backend it falls back to x-vector-only cloning. Override with `--voice-sample-text "..."` or skip transcription with `--no-transcription`. ### Options -| Flag | Description | -| --------------------------- | ----------------------------------------------------------------------------------------------------- | -| `--speed ` | Playback speed, pitch-preserving (`1.0` = normal). A normal-speed copy is also output. | -| `--format {mp3,m4b}` | Output format (default `mp3`). `m4b` uses AAC audio and has built-in chapters. | -| `--single-file` | mp3 only: Merge all chapters into a single mp3 (default: one mp3 per chapter). | -| `--voice-sample-text "..."` | Override whisper auto-transcription with your own manual reference audio transcript. Not required. | -| `--no-transcription` | Skip auto-transcription of the reference audio. Usually worse, but can give a different voice affect. | +| Flag | Description | +| ----------------------------- | ----------------------------------------------------------------------------------------------------- | +| `--speed ` | Playback speed, pitch-preserving (`1.0` = normal). A normal-speed copy is also output. | +| `--format {mp3,m4b,ogg,flac}` | Output format (default `mp3`). `m4b` uses AAC audio and has built-in chapters. | +| `--single-file` | Not m4b: Merge all chapters into a single file (default: one file per chapter). | +| `--voice-sample-text "..."` | Override whisper auto-transcription with your own manual reference audio transcript. Not required. | +| `--no-transcription` | Skip auto-transcription of the reference audio. Usually worse, but can give a different voice affect. | ## Running tests -- cgit v1.2.3