Benchmark any text-to-speech engine against a built-in corpus of 817 edge cases.
Catch broken audio clips, like silence, clipping, or looping, before they reach users.
Gate a CI pipeline so quality regressions in TTS output fail the build.
Compare multiple TTS engines side by side on the same test cases.
| mormolykos/ttsproof | 2arons/llm-cli | adzza/guardium-dns | |
|---|---|---|---|
| Stars | 11 | 11 | 11 |
| Language | Python | Python | Python |
| Setup difficulty | easy | easy | moderate |
| Complexity | 3/5 | 2/5 | 3/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Optional ASR-based pronunciation checks require the faster-whisper extra.
TTSProof is a tool that checks whether text to speech (TTS) audio actually sounds right, instead of just measuring word accuracy. A normal accuracy score can miss real problems, like a clip that is empty, cut off short, clipped, stuck repeating itself, or far too long. At the same time, a plain word error score can flag audio as wrong when it isn't, just because the written text said 3:30 PM and the transcript said three thirty pee em. The tool works in three layers. First, it runs structural checks on the audio file itself: is it empty, too short, has long silences, is clipped, or loops on a repeated chunk. These checks use only numpy and soundfile, no AI model required. Second, it compares the expected text against what a speech recognizer heard, but first converts both into the same spoken form, covering numbers, dates, times, and acronyms, so formatting differences do not count as mistakes. Third, when the audio is clean but the speech recognizer disagrees on something very short, like a single letter or an acronym, the sample gets set aside for a human to check rather than automatically marked as a failure. TTSProof ships with a built in benchmark corpus of 817 test cases across categories like numbers, dates, phone numbers, names, tongue twisters, and more, so a user can score any TTS engine with a single command. It prints a scoreboard by category in the terminal and generates a report page with audio players for any failures. It can also compare results across different TTS engines and gate a continuous integration pipeline by failing the build when quality drops compared to a saved baseline. The method behind TTSProof was tested on a real production TTS service across 390 audio samples and published as a citable technical report with a DOI. It is installed with pip, either with or without the optional speech recognition support. The project's license is MIT, so it can be used freely, including for commercial purposes.
A tool that checks text-to-speech audio for real defects like silence, clipping, or looping, and scores pronunciation accuracy fairly without punishing correct audio for formatting differences.
Mainly Python. The stack also includes Python, numpy, soundfile.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.