A lightweight command-line engine that converts Markdown into expressive SSML for natural-sounding text-to-speech output.
Intonate is a rules-based preprocessor that scans plain text or Markdown and applies SSML tags (like <break>, <prosody>, <emphasis>) using a configurable YAML ruleset. It outputs voice-friendly SSML ready for use with TTS systems like ElevenLabs or Amazon Polly.
- Python 3.9+
- Install
pyyaml:pip install pyyaml
python3 engine.py --input input/sample.md --config config/default.yaml --output output/output.ssmlintonate/
├── engine.py # Main CLI engine
├── config/
│ └── default.yaml # YAML tagging rules
├── input/
│ └── sample.md # Example Markdown input
├── output/
│ └── output.ssml # SSML output
└── README.md # Project documentation
This is a test of the Intonate engine.
- Lightweight
- Configurable
- Fun to build
Introduction
This is a test of the Intonate engine.
Features
Lightweight Configurable Fun to build
-
Support for wrapper
-
Inline voice and emotion tags
-
Speech Markdown output format
-
Config profiles (e.g., "narrator", "tutorial", "story")
Brian Shand
GitHub Profile
📧 brianshand.dev@gmail.com