Let admins hear a voice sample before picking it

The Speech section of every model settings form now has "Hear a
sample", which streams a short sentence (AppData.VoicePreviewText) in
the form's model and voice before they're saved, through
GET api/admin/harness/preview-voice (super admins and admins, that
model only via grabModelCandidate). pickVoice is shared with
speakText, and explainAudioError reads why a streamed player failed
for both read-aloud and the sample.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-19 21:32:49 +01:00
co-authored by Claude Opus 5.5
parent 148d02dcfe
commit bc499a7466
10 changed files with 278 additions and 29 deletions
+4
View File
@@ -295,6 +295,10 @@ export const AppData = {
* Most of a bot message read aloud; the rest is cut.
*/
SpeechMaxChars: 4000,
/**
* What a speech model reads when a voice is tried in the model settings.
*/
VoicePreviewText: "Hi there. This is how I'll sound when I read my replies aloud.",
/**
* Largest picture a bot or a workspace can have.
*/