Skip to content

feat: replace local Supertonic TTS with Voxtral - #694

Open
AnthonyRonning wants to merge 1 commit into
masterfrom
codex-maple-voxtral-tts-maple
Open

feat: replace local Supertonic TTS with Voxtral#694
AnthonyRonning wants to merge 1 commit into
masterfrom
codex-maple-voxtral-tts-maple

Conversation

@AnthonyRonning

@AnthonyRonning AnthonyRonning commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Summary

  • replace local Supertonic inference with encrypted OpenSecret/Voxtral synthesis while preserving existing desktop and iOS playback/cancellation behavior
  • remove Supertonic models, dependencies, commands, download UI, and docs; delete exact legacy model directories at launch while retaining ONNX Runtime for PDF OCR
  • normalize bullets, Markdown list markers, separator dashes, and other non-verbal text before synthesis without damaging negatives, hyphenated words, ranges, or expressions such as C++
  • add Preferences controls for all 20 provider voice/accent presets and 0.5x–2.0x speech speed
  • default new or reset preferences to Casual Female at 1.5x, while preserving existing valid ttsVoice and ttsPlaybackSpeed selections
  • surface concise JSON provider errors before audio decoding while preserving cancellation behavior
  • keep format, language, streaming, and advanced provider parameters out of Maple's user-facing settings

Dependency

Maple uses published @opensecret/react 3.2.1 aiCustomFetch, so no SDK change or release is required. The backend must be deployed before remote synthesis works outside the managed workspace.

Validation

  • rebased onto current master, retaining the new agent context-limit and Linux updater behavior alongside the TTS replacement
  • product defaults selected after manual voice testing: Casual Female at 1.5x
  • full frontend CI: formatting, TypeScript, ESLint with 0 errors, and 396 tests / 1,398 assertions
  • focused TTS coverage: 37 tests / 88 assertions, including persisted former-default and Reset regressions
  • full native suite: 209 passed, 1 model-backed OCR test ignored; all legacy-cleanup tests passed
  • managed-stack transport/audio smoke performed earlier on the feature:
    • Free account rejected with HTTP 403
    • Pro generated valid neutral and French-accent PCM16 mono 24 kHz WAVs at multiple speeds
    • local Whisper transcribed every sample correctly or near-exactly
    • the exact bundled macOS app exposed the controls and completed Read aloud → Stop speaking → Read aloud
  • no app was launched and no audio was played for the defaults-only follow-up; its runtime behavior is covered by focused preference/request tests
  • git diff --check

Known gaps

  • Physical iOS/TestFlight locked-device playback and Windows/Linux runtime playback have not been retested.
  • Web and Android TTS remain intentionally unsupported.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 27, 2026

Copy link
Copy Markdown

Deploying maple with  Cloudflare Pages  Cloudflare Pages

Latest commit: c24e5bd
Status: ✅  Deploy successful!
Preview URL: https://b44eef57.maple-ca8.pages.dev
Branch Preview URL: https://codex-maple-voxtral-tts-mapl.maple-ca8.pages.dev

View logs

@AnthonyRonning
AnthonyRonning force-pushed the codex-maple-voxtral-tts-maple branch from 27e89ae to c24e5bd Compare July 28, 2026 05:06
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