Batch anomaly detection API

Find the bad files in your TTS batch

Submit TTS audio files and get back a report telling you which ones have anomalies and need regenerating.

What we check for

Every file is analyzed across multiple dimensions. Anomalies are flagged so you know exactly what to regenerate.

Speaker Consistency

Detect when the voice changes mid-batch

Consistent
Consistent
Accent Drift
Consistent

Audio Quality

Catch glitches, noise, and artifacts

PopGlitchSilenceStaticPopGlitchSilenceStatic

Speaking Speed

Flag abnormal pacing and speed drift

Accepted
Too Fast

Script Accuracy

Catch when TTS speaks your audio tags out loud

[warmly][scoff]SPOKEN[clears throat][casual]SPOKEN[mysterious]Hello.Welcome to Edinburgh's Southside.In these streets, history was written—...a volatile alchemy of intellect...You don't need to stare at your screen.Let's begin.[warmly][scoff]SPOKEN[clears throat][casual]SPOKEN[mysterious]Hello.Welcome to Edinburgh's Southside.In these streets, history was written—...a volatile alchemy of intellect...You don't need to stare at your screen.Let's begin.Hello.Welcome to Edinburgh's Southside.In these streets, history was written—...a volatile alchemy of intellect...You don't need to stare at your screen.Let's begin.Hello.Welcome to Edinburgh's Southside.In these streets, history was written—...a volatile alchemy of intellect...You don't need to stare at your screen.Let's begin.

Example audit report

Here's what a real batch audit looks like - every file scored, anomalies clearly flagged.

82

Overall Score

Looking good

8

Files

6

Passed

2

Flagged

3

Checks

24¢

Cost

2 Files Recommended for Regeneration

These tracks failed quality checks and should be re-generated for best results.

chapter_03.mp3

different speaker detected

chapter_05.mp3

noise artifactslow quality score

Track Overview

#FileStatus
1chapter_01.mp3Pass
2chapter_02.mp3Pass
3chapter_03.mp3Failed
4chapter_04.mp3Pass
5chapter_05.mp3Failed
6chapter_06.mp3Pass
7chapter_07.mp3Pass
8chapter_08.mp3Pass

Sign up to run your own audit - 100 free credits (three full 10-file audits), no card required.

One API call. Full batch report.

Submit your files, get back a per-file anomaly report with scores and regeneration recommendations.

API Keyx402 · USDC on Base
# Audit tracks - specify each check as true/false via query params
curl -X POST "https://api.ttsaudit.com/audit?comparison=true&quality=true&pace=false&scriptAccuracy=false" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "files=@track1.mp3" \
  -F "files=@track2.mp3" \
  -F "files=@track3.mp3" \
  -F "accuracy=standard" \
  -F "deviationThreshold=0.15"

# Check balance
curl -s https://api.ttsaudit.com/balance \
  -H "X-API-Key: YOUR_API_KEY"
JSON Response
{
  "score": 82,
  "summary": "2 files flagged for regeneration.",
  "fileCount": 8,
  "tracksToRegenerate": [
    {
      "file": "chapter_03.mp3",
      "reasons": [
        { "check": "comparison", "message": "deviation 41.00%", "deviation": 0.41 }
      ]
    },
    {
      "file": "chapter_05.mp3",
      "reasons": [
        { "check": "quality", "message": "score 32 (pop, static, silence)", "score": 32.0 }
      ]
    }
  ],
  "checks": {
    "comparison": {
      "score": 85,
      "summary": "7 of 8 files match the batch speaker profile.",
      "tracks": [
        { "file": "chapter_01.mp3", "similarity": 0.96, "deviation": 0.02, "flagged": false },
        { "file": "chapter_03.mp3", "similarity": 0.42, "deviation": 0.41, "flagged": true },
        ...
      ]
    },
    "quality": {
      "score": 81,
      "summary": "1 file has significant audio issues.",
      "tracks": [
        {
          "score": 32, "issueCount": 3, "flagged": true,
          "issues": [
            { "type": "pop", "timeSec": 3.1, "durationMs": 8, "audibilityLabel": "severe" },
            { "type": "static", "timeSec": 18.7, "durationMs": 420, "audibilityLabel": "distracting" },
            { "type": "silence", "timeSec": 22.0, "durationMs": 1200, "audibilityLabel": "noticeable" }
          ]
        },
        ...
      ]
    },
    "pace": {
      "score": 96,
      "median": 138,
      "summary": "All files within normal speaking speed range.",
      "tracks": [
        { "wpm": 142, "wordCount": 312, "deviation": 0.029, "flagged": false },
        ...
      ]
    },
    "scriptAccuracy": {
      "score": 0,
      "summary": "1 tag spoken aloud - chapter_02.mp3 said [scoff].",
      "spokenTagCount": 1,
      "tracks": [
        { "accuracy": 97.0, "flagged": false, "tags": { "found": 0, "spoken": [] } },
        { "accuracy": 85.0, "flagged": true, "tags": { "found": 1, "spoken": [{ "tag": "[scoff]", "content": "scoff", "timeSec": 3.24, "endSec": 3.71 }] } },
        ...
      ]
    }
  },
  "creditsUsed": 32
}

Stop guessing which TTS files are bad

100 free credits on signup - three full 10-file audits. No credit card required.