Loading New System Voices for System.Speech

Copper Contributor

Hi, I am using System.Speech for a Text to Speech project, and I am trying to install new voices.

 

I installed new system voices by following these instructions: 

 

On any edition of Windows 10, click Start > Settings, and then follow these steps:

  1. Select the Start button, then select Settings > Time & Language > Region & Language.

  2. Select Add a language and choose the language you want from the list. Only languages listed in the table below will have Text-to-Speech capabilities.

  3. After the new language has been installed (this may take a few moments), select it in the Region & Language list, and then select Options.

  4. Under Language options > Speech, select Download.

  5. Restart your computer. The Text-to-Speech voices will be installed when your machine turns back on.

I can see these voices installed in settings. However, these voices don't show up when I use the GetInstalledVoices().VoiceInfo command.

 

Is there some additional layer of setup I need to do to get System.Speech to recognize these new voices?

3 Replies

@community I mean it tho

@Pernille-Eskebo Tech Community 

 

Y'all a bunch of posers tho. Left me hanging. 

 

The answer is that Microsoft has two vocal synthesis APIs, WinRT and SAPI. 3 of the standard Microsoft voices are the SAPI API, the ones you download via system settings are WinRT. System.Speech only works with SAPI voices. This isn't clearly documented anywhere, I actually had to find it on a random stack overflow post, so hopefully posting this will help someone else who runs into the same issue.