SubtitleEdit/subtitleedit · error · InvalidOperationException
Chatterbox TTS "Turbo" does not load with CrispASR 0.8.0. Th
Error message
Chatterbox TTS "Turbo" does not load with CrispASR 0.8.0. The turbo model is fine — 0.8.0's tokenizer/vocab check was overly strict and rejected its benign embedding superset (50257-token tokenizer, text vocab size 50276). This is fixed upstream (CrispStrobe/CrispASR#181): a newer CrispASR loads Turbo normally, with no re-download. Until then, switch to the "Base" Chatterbox model, which works.
What it means
Server exited at startup and LooksLikeChatterboxTurboTokenizerMismatch matched: CrispASR 0.8.0's overly strict vocab check rejected the Turbo model's benign embedding superset (50257-token tokenizer vs text vocab size 50276). Fixed upstream in CrispStrobe/CrispASR#181. The message advises switching to the Base model until a newer CrispASR is installed.
Source
Thrown at src/ui/Features/Video/TextToSpeech/Engines/ChatterboxTtsCpp.cs:652
_serverLaunchCommand = null;
if (LooksLikeOutdatedCrispAsr(tail))
{
throw new InvalidOperationException(
"Chatterbox requires CrispASR v0.6.0 or newer. Re-download CrispASR via "
+ "Video → Audio to text → Engine settings → Re-download, then try again."
+ LaunchCmdSuffix(exitedLaunchCommand));
}
if (LooksLikeStaleModelCache(tail))
{
throw new InvalidOperationException(
"Chatterbox failed to load its model — the GGUFs in "
+ GetSetModelsFolder() + " are likely stale or partially downloaded. "
+ "Delete them and try again so they re-download. Original output: " + tail
+ LaunchCmdSuffix(exitedLaunchCommand));
}
if (LooksLikeChatterboxTurboTokenizerMismatch(tail))
{
throw new InvalidOperationException(
"Chatterbox TTS \"Turbo\" does not load with CrispASR 0.8.0. The turbo model "
+ "is fine — 0.8.0's tokenizer/vocab check was overly strict and rejected its "
+ "benign embedding superset (50257-token tokenizer, text vocab size 50276). "
+ "This is fixed upstream (CrispStrobe/CrispASR#181): a newer CrispASR loads "
+ "Turbo normally, with no re-download. Until then, switch to the \"Base\" "
+ "Chatterbox model, which works."
+ Environment.NewLine + Environment.NewLine + tail
+ LaunchCmdSuffix(exitedLaunchCommand));
}
if (LooksLikeChatterboxTurboStartupCrash(modelKey, tail))
{
throw new InvalidOperationException(
"Chatterbox TTS \"Turbo\" model crashed CrispASR during startup. This is a known "
+ "upstream issue in the chatterbox-turbo backend (especially on macOS/CPU). "
+ "Try the \"Base\" model instead, or file an issue at "
+ "https://github.com/CrispStrobe/CrispASR/issues with the log below."
+ Environment.NewLine + Environment.NewLine + tail
+ LaunchCmdSuffix(exitedLaunchCommand));View on GitHub (pinned to 17a9f07487)
Solutions
- Switch to the Base Chatterbox model, which loads on CrispASR 0.8.0 (as the message suggests).
- Upgrade CrispASR past 0.8.0 once the upstream fix (#181) ships.
- Stay on an older CrispASR if you must use Turbo.
Defensive patterns
Strategy: validation
Validate before calling
if (modelKey == ChatterboxModel.Turbo && DetectCrispAsrVersion(exe) == new Version(0, 8, 0))
return Invalid("Turbo + CrispASR 0.8.0 is unsupported (CrispStrobe/CrispASR#181); use Base or upgrade CrispASR"); Try / catch
try { EnsureServerRunningAsync(modelKey, ct).Wait(); }
catch (InvalidOperationException ex) when (ex.Message.Contains("Turbo\" does not load with CrispASR 0.8.0"))
{ /* switch modelKey to Base, or upgrade CrispASR past 0.8.0 */ } Prevention
- Track known-bad model/engine version combinations and block them at selection time.
- Default new installs to the Base Chatterbox model until CrispASR is past 0.8.0.
- Watch the upstream CrispStrobe/CrispASR#181 fix and lift the guard when shipped.
When it happens
Trigger: Server startup loop sees process.HasExited; the model key is the Turbo variant; LooksLikeChatterboxTurboTokenizerMismatch true. Requires the exact CrispASR 0.8.0 + Turbo combination.
Common situations: User updated to CrispASR 0.8.0 and then selected the Turbo Chatterbox model.
Related errors
- Chatterbox requires CrispASR v0.6.0 or newer. Re-download Cr
- Chatterbox TTS hit a CrispASR runtime bug during synthesis (
- Chatterbox TTS request failed — the crispasr server crashed
- Chatterbox TTS request failed — the connection to the crispa
- Chatterbox TTS could not use the reference voice "{Path.GetF
AI-assisted analysis of SubtitleEdit/subtitleedit@17a9f07487 (2026-08-13).
Data as JSON: /api/errors/df0ed3c5992a3c40.
Report an issue: GitHub.