Skip to content

Text to speech: add model download button + per-model download size#11512

Merged
niksedk merged 1 commit into
mainfrom
tts-model-download-button
Jun 9, 2026
Merged

Text to speech: add model download button + per-model download size#11512
niksedk merged 1 commit into
mainfrom
tts-model-download-button

Conversation

@niksedk

@niksedk niksedk commented Jun 9, 2026

Copy link
Copy Markdown
Member

Addresses #11507 — makes engine/model download size visible and adds a way to download a model without first clicking Generate speech from text.

Changes

  • Model download button next to the Model combo, shown only for local per-model engines (Qwen3 TTS ×2, VibeVoice, IndexTTS, CosyVoice3, F5-TTS, VoxCPM2, Chatterbox). Cloud engines (ElevenLabs/Mistral) and single-model engines (Kokoro/OmniVoice) don't show it.
    • Model not installed → the normal download confirmation + download dialog (reuses IsEngineInstalled, the same path Generate/Test use — no duplicated download logic).
    • Model already installed → "Re-download {model}?" prompt, for repairing a corrupted/partial download.
  • Per-model download size shown in the Model combo items, e.g. 1.7B (~1.6 GB).
  • Model install-status (the combo dots) and size knowledge moved into the view model as a single source of truth, replacing the size string literals that were scattered across the per-engine download prompts.

Notes

  • Sizes are shown only where the codebase already knew them (Qwen3, Chatterbox; VibeVoice/IndexTTS embed size in the model key). No sizes were invented for CosyVoice3/F5/VoxCPM2.
  • Builds clean (0 warnings). Runtime UI verification on macOS was blocked by Terminal lacking Screen Recording/Accessibility permissions; the maintainer is testing the running app manually.

🤖 Generated with Claude Code

Local per-model engines (Qwen3 TTS, Chatterbox, CrispASR variants) now show
a download button next to the Model combo, so users can fetch a model up front
instead of having to click "Generate speech from text" (issue #11507). The
button reuses the existing IsEngineInstalled path, so no download logic is
duplicated; clicking it on an already-installed model offers a re-download
(for repairing a corrupted/partial download).

Model combo entries now show the approximate download size, e.g.
"1.7B  (~1.6 GB)". Model install-status and size knowledge moved into the
view model as a single source of truth, replacing the size string literals
previously scattered across the download prompts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@niksedk niksedk merged commit 0955bc7 into main Jun 9, 2026
1 of 3 checks passed
@niksedk niksedk deleted the tts-model-download-button branch June 9, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant