Releases: denizsafak/abogen
Releases · denizsafak/abogen
v1.2.5
- You can now install Abogen using uv, which simplifies dependency management and significantly speeds up the setup process. See "How to install?" in readme.
- Added new option:
Override item settings with current selectionin the queue manager. When enabled, all items in the queue will be processed using the current global settings selected in the main GUI, overriding their individual settings. When disabled, each item will retain its own specific settings. - Fixed
Error "Could not load the Qt platform plugin "xcb"error that occurred in some Linux distributions due to missinglibxcb-cursor0library by conditionally loading the bundled library when the system version is unavailable, issue mentioned by @bmcgonag in #101. - Fixed the
No module named piperror that occurred for users who installed Abogen via the uv. - Fixed defaults for
replace_single_newlinesnot being applied correctly in some cases. - Fixed
Save chapters separately for queued epubs is ignored, issue mentioned by @dymas-cz in #109. - Fixed incorrect sentence segmentation when using spaCy, where text would erroneously split after opening parentheses.
- Improvements in code and documentation.
v1.2.4
- Subtitle generation is now available for all languages! Abogen now supports subtitle generation for non-English languages using audio duration-based timing. Available modes include
Line,Sentence, andSentence + Comma. (Note: Word-level subtitle modes remain English-only due to Kokoro's timestamp token limitations.) - New option: "Use spaCy for sentence segmentation" You can now use spaCy to automatically detect sentence boundaries and produce cleaner, more readable subtitles. Quick summary:
- What it does: Splits text into natural sentences so subtitle entries read better and align more naturally with speech.
- Why this helps: The previous punctuation-based splitting could break sentences incorrectly at common abbreviations (e.g. "Mr.", "Dr.", "Prof.") or initials, producing wrong subtitle breaks. spaCy avoids those false splits by using linguistic rules to detect real sentence boundaries.
- For Non-English: spaCy runs before audio generation to create better sentence chunks for TTS.
- For English: spaCy runs during subtitle generation to find accurate sentence breaks after TTS.
- Note: spaCy segmentation is only applied when subtitle mode is
SentenceorSentence + Comma. When turned off, it falls back to simple punctuation-based splitting.
- New option: Pre-download models and voices for offline use You can now pre-download all required Kokoro models, voices, and spaCy language models using this option in the settings menu. Allowing you to use Abogen completely offline without any internet connection.
- Added support for
.separator in timestamps (e.g.HH:MM:SS.ms) for timestamp-based text files. - Optimized regex compilation and eliminated busy-wait loops.
- Possibly fixed
Silent truncation of long paragraphsissue mentioned in #91 by @xklzlxr - Fixed unused regex patterns and variable naming conventions.
- Improvements in code and documentation.
v1.2.3
- You can now voice your subtitle files! Simply add
.srt,.assor.vttfiles to generate timed audio. Alternatively, add a text file with timestamps inHH:MM:SSorHH:MM:SS,msformat to generate audio that matches the timestamps. See here for detailed instructions.- New option: "Use silent gaps between subtitles": Prevents unnecessary audio speed-up by letting speech continue into the silent gaps between subtitles.
- New option: "Subtitle speed adjustment method": Choose how to speed up audio when needed:
- TTS Regeneration (better quality): Re-generates the audio at a faster speed for more natural sound.
- FFmpeg Time-stretch (better speed): Quickly speeds up the generated audio.
- Added support for embedding cover images in M4B files. Abogen now automatically extracts cover images from EPUB and PDF files. You can also manually specify a cover image using the
<<METADATA_COVER_PATH:path>>tag in your text file. (To prevent MPV from showing the cover image, you can addaudio-display=noto your MPV config file.) - Fixed
[WinError 1114] A dynamic link library (DLL) initialization routine failederror on Windows, pre-loading PyTorch DLLs before initializing PyQt6 to avoid DLL initialization errors, mentioned in #98 by @ephr0n. - Potential fix for
CUDA GPU is not availableissue, by ensuring PyTorch is installed correctly with CUDA support on Windows using the installer script. - Improvements in code and documentation.
v1.2.1
- Upgraded Abogen's interface from
PyQt5toPyQt6for better compatibility and long-term support. - Added tooltip indicators in queue manager to display book handler options (
Save chapters separatelyandMerge chapters at the end) for queued items. - Added
Open processed fileandOpen input fileoptions for items in the queue manager, instead of justOpen fileoption. - Added loading gif animation to book handler window.
- Fixed light theme slider colors in voice mixer for better visibility (for non-Windows users).
- Fixed subtitle word-count splitting logic for more accurate segmentation.
- Improvements in code and documentation.
v1.2.0
- Added
Lineoption to subtitle generation modes, allowing subtitles to be generated based on line breaks in the text, by @mleg in #94. - Added a loading indicator to the book handler window for better user experience during book preprocessing.
- Fixed
cannot access local variable 'is_narrow'error when subtitle formatSRTwas selected, mentioned by @Kinasa0096 in #88. - Fixed folder and filename sanitization to properly handle OS-specific illegal characters (Windows, Linux, macOS), ensuring compatibility across all platforms when creating chapter folders and files.
- Fixed
/and\path display by normalizing paths. - Fixed book reprocessing issue where books were being processed every time the chapters window was opened, improving performance when reopening the same book.
- Fixed taskbar icon not appearing correctly in Windows.
- Fixed “Go to folder” button not opening the chapter output directory when only separate chapters were generated.
- Improvements in code and documentation.
v1.1.9
- Added
.md(Markdown) file extension support by @brianxiadong in PR #75 - Added new option
Configure silence between chaptersthat lets you configure the silence between chapters, mentioned by @lfperez1982 in #79 - Better indicators and options while displaying and managing the input and processing files.
- Improved the markdown logic to better handle various markdown structures and cases.
- Fixed subtitle splitting before commas by combining punctuation with preceding words.
- Fixed save options not working correctly in queue mode, mentioned by @jborza in #78
- Fixed
No Qt platform plugin could be initializederror, mentioned by @sunrainxyz in #59 - Fixed ordered list numbers not being included in EPUB content conversion. The numbers are now properly included in the converted content, mentioned by @jefro108 in #47
- Fixed the issue where spaces were deleted before punctuation marks while generating subtitles. (v1.1.9)
- Fixed markdown TOC generation breaks when "Replace single newlines" is enabled. (v1.1.9)
- Potentially fixed subtitle generation stucks at 9:59:59, mentioned by @bolaykim in #73
- Improvements in code and documentation.
Important
If you use a Silicon Mac (M1, M2 etc.), please read the Mac section in the documentation again, as it requires additional configuration. (If you are updating from =<1.1.6)
1.1.8
- Added
.md(Markdown) file extension support by @brianxiadong in PR #75 - Added new option
Configure silence between chaptersthat lets you configure the silence between chapters, mentioned by @lfperez1982 in #79 - Better indicators and options while displaying and managing the input and processing files.
- Improved the markdown logic to better handle various markdown structures and cases.
- Fixed subtitle splitting before commas by combining punctuation with preceding words.
- Fixed save options not working correctly in queue mode, mentioned by @jborza in #78
- Fixed
No Qt platform plugin could be initializederror, mentioned by @sunrainxyz in #59 - Fixed ordered list numbers not being included in EPUB content conversion. The numbers are now properly included in the converted content, mentioned by @jefro108 in #47
- Potentially fixed subtitle generation stucks at 9:59:59, mentioned by @bolaykim in #73
- Improvements in code and documentation.
Important
If you use a Silicon Mac (M1, M2 etc.), please read the Mac section in the documentation again, as it requires additional configuration. (If you are updating from <1.1.6)
1.1.7
- Added MPS GPU acceleration support for Silicon Mac, mentioned in #32 (comment) by @jefro108.
- Added word-by-word karaoke highlighting feature by @robmckinnon in PR #65
- Fixed sleep inhibition error occurring on some Linux systems that do not use systemd, mentioned in #67 by @hendrack
- Improvements in code and documentation.
Important
If you use a Silicon Mac (M1, M2 etc.), please read the Mac section in the documentation again, as it requires additional configuration.
v1.1.6
- Improved EPUB chapter detection: Now reliably detects chapters from NAV HTML (TOC) files, even in non-standard EPUBs, fixes the issue mentioned by @jefro108 in #33
- Fixed SRT subtitle numbering issue, mentioned by @page-muncher in #41
- Fixed missing chapter contents issue in some EPUB files.
- Windows installer script now prompts the user to install the CUDA version of PyTorch even if no NVIDIA GPU is detected.
- Abogen now includes Mandarin Chinese (misaki[zh]) by default; manual installation is no longer required.
v1.1.5
- Changed the temporary directory path to user's cache directory, which is more appropriate for storing cache files and avoids issues with unintended cleanup.
- Fixed the isssue where extra metadata information was not being saved to M4B files when they have no chapters, ensuring that all metadata is correctly written to the output file.
- Fixed sleep prevention process not ending if program exited using Ctrl+C or kill.
- Improved automatic filename suffixing to better prevent overwriting files with the same name, even if they have different extensions.
- Improvements in code and documentation.