After spending a whole lot of time on searching the web I think it's time to ask.
I'm trying to implement some text to speech with SAPI5 in C++.
The only available 64bit voice is Anna. With Anna everything is fine, but I also need a german voice. So I found Hedda(Microsoft) and Steffi(Realspeak).
I already feel like implementing some dating service.
Neither Hedda nor Steffi are added to the registry. So both of them are not detected by SAPI while it checks "HKLM\SOFTWARE\Microsoft\Speech\Voices" to get the required tokens to select voices.
I also tried to change the registry paths to ...\SOFTWARE\Wow6432Node... to use the 32bit voices, but no success.
Does anybody know how to use Hedda or Steffi with Sapi?
Is there any way to use the 32bit voices?
Hope anyone can help.
Thanks in advance.
You can use 32 bit voices if you build a 32 bit program, and have 32 bit voices installed to the registry correctly. I describe how to do this registry hack over here. Basically, you just move things around in the registry. The quickest way to accomplish this is to install all of the voices that you want, and then use RegEdit to export those specific registries for where your speech platform voices are.
Then open the registry files with a text editor and replace "Speech Server\v11.0\Voices" with "Speech\Voices"
and replace "Speech Server\v11.0\Voices" with "Speech\Voices". Save off the registry files and then run them to add to your registry.
You should be able to test your new voices in your normal text to speech dialog that windows provides. If however you're on a 64 bit system and you want to test 32 bit voices (because you're building a 32 bit program) you'll have to open the windows speech to text dialog with either
C:\Windows\SysWOW64\Speech\SpeechUX\sapi.cpl
for 32 bit voices I believe and
C:\Windows\System32\Speech\SpeechUX\sapi.cpl
for 64 bit systems voices.
As contradictory as that seems.
Well, editing the registry did the job.
After copying the registry entrys from "\Speech Server\v11.0..." to "\Speech..." (see Lesley Gushurst) and reinstalling SDK, Runtime and voice, voice-"Hedda" can be used on 64bit system with 64 bit application.
Thanks for your help.