feat(tts): fallback to Apple Samantha voice for TTS on macOS (#4420)

* Fallback to Apple Samantha voice for en_US TTS on macOS

* Use prefix match for Apple Samantha voice fallback
This commit is contained in:
Lee Doughty 2025-11-12 19:55:47 +00:00 committed by GitHub
parent c2fddcaf42
commit 9facea0a66
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -94,8 +94,15 @@ class TTSPlayer:
rank -= 1
# if no preferred voices match, we fall back on language
# with a rank of -100
# if no requested voices match, use a preferred fallback voice
# (for example, Apple Samantha) with rank of -50
for avail in avail_voices:
if avail.lang == tag.lang:
if avail.lang == "en_US" and avail.name.startswith("Apple_Samantha"):
return TTSVoiceMatch(voice=avail, rank=-50)
# if no requested or preferred voices match, we fall back on
# the first available voice for the language, with a rank of -100
for avail in avail_voices:
if avail.lang == tag.lang:
return TTSVoiceMatch(voice=avail, rank=-100)