Auto-Switching Between Language-Specific Speech Configurations

Bhavya shah

Dear all,

I am unequally familiar with different languages and therefore prefer
listening to them at varying speeds. Furthermore, I prefer to use
different speech synthesizers for different languages (say ESpeak-NG
for English, OneVoice for Spanish, perhaps Vocalizer for Hindi, etc.).
With NVDA's built-in facilities, as far as I am aware, the extent of
the on-the-fly customizability I have is: (a) altering speech rate
using the synth settings ring, and (b) enabling automatic language
switching to move between the different voices of the currently active
synthesizer. Of course, other settings can be changed using the
Settings dialog. Given this background, suppose I am consuming content
which contains text in more than one language (e.g. a textbook for
English speakers to learn Spanish). Since I care to understand all of
the text, I may use min{preferred speech rate for language1, preferred
speech rate for language2, ...}, meaning that I am listening to a lot
of text in the known language at excessively slow speeds.
Alternatively, I might use an add-on like SwitchSynth (or alter
settings each time) to manually toggle between preferred speech
configurations when I encounter a language, which is (i) somewhat
cumbersome, and (ii) often impractical when different languages appear
simultaneously (e.g. by being on the same line).

Is there some creative approach - configuration profiles, add-on, etc.
- for me to set language-specific speech configurations (the speaking
rate, the synth and its voice, etc.) in advance to which NVDA can
auto-switch when it detects text in that language?

I would greatly appreciate any tips and suggestions.

Kind Regards,
Bhavya Shah
B.S. in Mathematical and Computational Science | Stanford '24