edge-tts is a Python module and command-line tool that gives you direct access to Microsoft Edge’s online text-to-speech service without needing the Edge browser, Windows, or any API key. It wraps the same cloud voices used by Edge, exposing them through a simple CLI (edge-tts, edge-playback) and a Python API, so you can script high-quality speech generation in your own applications. The tool lets you list available voices, specify locale and voice name, and generate audio files in common formats like MP3 or WAV. It also supports generating subtitle files (such as SRT or VTT) alongside the speech, which is handy for video narration, e-learning, or accessibility workflows. From the CLI you can adjust parameters such as speaking rate, volume, and pitch, giving you some control over prosody without diving into SSML. The library is asynchronous under the hood, which makes it efficient for batch jobs or web services that need to synthesize many utterances concurrently.
Features
- Python package and CLI (edge-tts, edge-playback) for Microsoft Edge’s online TTS
- Works without Edge installed, without Windows, and without an API key
- Supports many languages and voices, selectable by locale and voice name
- Can output both audio (e.g., MP3) and subtitle files (SRT, VTT) in a single run
- Command-line options for adjusting rate, volume, and pitch of generated speech
- Asynchronous Python API suitable for batch processing and web backends