pypi / edge-tts
edge-tts
What changed in edge-tts 7, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-29.
1 breaking5 new APIs and options1 performance2 behavior and defaults2 tooling6 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initedge-tts 717 changes
Breaking changes 1
SubMaker now returns subtitles in SRT format; VTT support has been dropped.
New APIs and options 5
Adds support for Sec-MS-GEC v2 tokens.
Adds --version to print the version of edge-tts.
Adds support for a custom aiohttp connector.
Adds .feed(), which takes a TTS chunk, simplifying SubMaker usage.
Adds .merge_cues(), simplifying SubMaker usage.
Performance 1
Caches the SSL context at module level to avoid per-call overhead.
Behavior and default changes 2
A progress bar is shown on stderr during synthesis.
The edge-tts CLI output for the voice list is prettier.
Tooling 2
The Voice TypedDict was updated to provide up-to-date types; functionality is unchanged.
Adds type support for all dicts in the project, enabling IDE autocomplete for TTS chunks and list_voices return output.
Fixes and other changes 6
Fixes locale-dependent server date parsing.
Works around an mpv CoreAudio playback failure on macOS.
Replaces metadata-based offset compensation with CBR byte-count math.
Switches back to the endpoint currently in use by Microsoft Edge on macOS.
Resolves the NoAudioReceived issue.
The project is relicensed to LGPLv3, reducing restrictions on users of the library.