Changelog

Generated by releaseledger. Manual edits may be overwritten. Update releaseledger entries and rebuild this file instead.

Unreleased

  • Added user-friendly emphasis levels 0 (Off), 1 (Light), 2 (Normal), and 3 (Strong), with PyKokoro 0.8.4 gain-scale forwarding, resume identity protection, and a deprecation path for --enable-ssmd-emphasis.

[v0.3.5] - 2026-08-12

Changed

  • Updated minimum TTS generation stack to PyKokoro 0.8.3 and added kokorog2p 0.8.0 as a direct dependency

  • Bumped SSMD minimum to 0.8.1 and advanced renderer contract to schema 3 with kokorog2p text preparation version

Documentation

  • Documented automatic written-to-spoken preparation, explicit SSMD say-as ownership, and minimum dependency contract testing

[0.3.4] - 2026-08-12

Changed

  • Changed the minimum TTS generation stack to PyKokoro 0.8.3 and kokorog2p 0.8.0 with aligned SSMD constraints

Fixed

  • Fixed resumable conversion from mixing audio generated under incompatible written-to-spoken renderer contracts

Documentation

  • Documented automatic written-to-spoken preparation, explicit SSMD say-as ownership, and minimum-version CI coverage

[0.3.3] - 2026-08-05

Fixed

  • Fixed safe paragraph conversion resume from saved generation settings with field-level mismatch diagnostics

[0.3.2] - 2026-08-05

Fixed

  • Recovery after a paragraph output directory is created before the first unit is finalized by establishing ownership metadata immediately

  • Resume orchestration so incompatible state reports an actionable reason instead of silently starting a fresh conversion

  • Paragraph-mode resume across processes by persisting an effective preparation seed per chapter before randomized short-sentence processing

Documentation

  • Paragraph unit progress, automatic and explicit seeds, –fresh restart behavior, schema 5 limitations, and an interruption-based resume example

[0.3.1] - 2026-08-05

Added

  • Added configurable SSMD prosody method selection with CLI overrides and persistent configuration

  • Added EPUB chapter structure and emphasis preservation through epub2text Markdown extraction

Changed

  • Changed TTSForge to delegate silence generation and SSMD downmixing to AudioSig

  • Changed Markdown EPUB extraction and emphasis preservation to be the default while keeping audible emphasis plain

  • Changed resume handling to invalidate flattened EPUB artifacts when the rendering source representation changes

Documentation

  • Documented prosody method selection, EPUB emphasis detection, and SSMD emphasis policy settings

  • Documented the EPUB extraction, SSMD markup, and audible rendering layers

[0.3.0] - 2026-08-02

Added

  • Added AudioSig integration for audio processing

  • Added configurable SSMD prosody method selection with CLI overrides and persistent configuration

  • Added prosody configuration settings from AudioSig

  • Added EPUB chapter structure and emphasis preservation through epub2text Markdown extraction

  • Added terminal width adaptation for CLI output

[0.2.0] - 2026-07-31

Added

  • Added exact-line subchapter markers that become paragraph pauses during text extraction

  • Added configurable phrase-level short-sentence handling with advanced settings and synthesis statistics

  • Added chapter exclusions for converting selected ranges without specified chapters

  • Added selectable ONNX Runtime providers and provider aliases for command and persistent configuration

  • Added SSMD 0.8 validation, diagnostics, audio references, prosody controls, and marker sidecars

  • Added resumable book conversion that restores compatible progress, chapter selection, and output paths

Changed

  • Changed the CLI to typed commands while keeping help and version startup independent of backend loading

  • Added nested short-sentence configuration commands with validation for conflicting options

  • Changed SSMD emphasis to plain by default while retaining explicit approximate, warning, and rejection policies

Fixed

  • Fixed short-sentence settings so they reach both text and phoneme synthesis

  • Improved WAV chapter merging without requiring an external encoder and tolerated timestamped model-cache filenames

  • Improved chapter audio merging with input validation, safe metadata handling, and atomic output replacement

  • Fixed persisted conversion settings validation and pause-related configuration handling

  • Improved resume portability across POSIX and Windows paths and serialized concurrent atomic replacements

Documentation

  • Documented the Markdown migration, expanded installation and usage guidance, and added documentation validation

[0.1.2] - 2026-02-03

Fixed

  • Fixed German voice support and added short sentence handling

[0.1.1] - 2026-02-01

Fixed

  • Fixed Adapted pause defaults for better audio output

  • Fixed SSML and dictionary syntax for correct processing

[0.1.0] - 2026-02-01

Added

  • Added Initial TTS-Forge release with CLI, conversion pipeline, and basic text-to-speech

  • Added Resume option for interrupted book conversions

  • Added Persistent conversion settings for resume functionality

  • Added Sample command for quick testing

  • Added ONNX runtime backend for text-to-speech inference

  • Added Split mode for phoneme processing

  • Added Phoneme statistics feature

  • Added Phoneme conversion and phoneme-based audio generation

  • Added Segment pause control for audio output

  • Added Native ONNX runtime integration

  • Added Support for Kokoro-82M-v1.0-ONNX models

  • Added Reader mode without audio creation

  • Added Language option for specifying TTS language

  • Added Chapter announcement feature

  • Added Mixed language support for multilingual text

  • Added Custom phoneme dictionary and automatic name extraction

  • Added Chunking for name extraction

  • Added Voice blending capability

  • Added Input reader supporting TXT and EPUB formats

  • Added SSML/SSMD document generation support

  • Added Generate SSMD-only mode

Changed

  • Changed Migrated to pykokoro as core TTS engine

  • Changed Adapted to new pykokoro version

  • Changed CLI refactored into modular command structure

  • Changed Pipeline rewrite for pykokoro compatibility

  • Changed Code refactoring

  • Changed Refactored pause mode and improved audio merge

  • Changed General refactoring and bug fixes

  • Changed Removed static-ffmpeg as required dependency

  • Changed Made sounddevice an optional dependency

Fixed

  • Fixed Audio generation from phonemes

  • Fixed Duplicate chapter reading

  • Fixed Chapter announcement behavior

  • Fixed Various bugs in conversion pipeline

  • Fixed Generation config

  • Fixed Input reader issues

  • Fixed Title stripping in SSMD

  • Fixed Phoneme creation

  • Fixed Removed compiler warnings

  • Fixed Soundfile to only handle WAV files

Documentation

  • Documented Updates and voice mixing examples

  • Documented Updates for voice blending

  • Documented Updated API documentation

  • Documented Updated documentation and fixed Windows unit tests