Add support for Microsoft Speech Platform voices #1735

Closed
nvaccessAuto opened this Issue Aug 28, 2011 · 11 comments

1 participant

@nvaccessAuto

Reported by clev on 2011-08-28 01:19
I installed a Portuguesd SAPI 5.4 voice on my Windows XP but NVDA haven't recognized it. Here are the links to the speech platform runtime and the Portuguese voice I installed:
http://download.microsoft.com/download/3/5/1/351B3C70-B7F4-4F86-94EA-5AECC3AB6B5C/x86/SpeechPlatformRuntime.msi
http://download.microsoft.com/download/D/5/F/D5F14B6D-3C5B-4329-A86D-8DF7A5EB45E8/MSSpeech_TTS_pt-BR_Heloisa.msi

@nvaccessAuto

Comment 2 by jteh on 2011-08-28 01:22
Does this voice show up correctly in the Speech section of Control Panel? I suspect this is perhaps the same SAPI 5.4 voice we tested and it didn't show up in Control Panel at all, which leads me to suspect it doesn't actually work.

@nvaccessAuto

Comment 3 by clev (in reply to comment 2) on 2011-08-28 01:35
Replying to jteh:

Does this voice show up correctly in the Speech section of Control Panel?

No, it doesn't. However, the brazilian suite of self-voicing apps called Dosvox recently added support for it. I'll have to ask some Dosvox developers and users for more references....

@nvaccessAuto

Attachment tradutor.7z added by clev on 2011-08-28 14:46
Description:
Not sure whether this will help; here are some source files from the Dosvox project (written in Delphi 6.0), which may contain some valuable information on how to deal with SAPI 5.4.

@nvaccessAuto

Comment 4 by clev on 2011-08-28 14:47
I have just attached some Dosvox source code which may help implementing this.

@nvaccessAuto

Attachment sapi54.py added by pvagner on 2011-08-29 09:21
Description:
synthDriver which will load Microsoft Sapi 5.4 voices (inherits from sapi5 synthDriver)

@nvaccessAuto

Comment 5 by pvagner on 2011-08-29 09:25
How veird Sapi 5.4 is not an update it installs another library with the same functiality so in order to load such voices we need to create another com object.
Working synthDriver is attached.
Now the question is do we want to commit it or should I distribute as an optional synthDriver installable into the user configuration directory (userConfig or %appdata%\NVDA)

@nvaccessAuto

Comment 6 by jteh on 2011-08-29 22:39
Can you see voices from older versions of SAPI5 with this driver or only SAPI5.4 voices?

@nvaccessAuto

Comment 7 by mdcurran on 2011-08-30 03:47
Fixed in 4597. Certainly fine to go in to main. However, with a very small change to sapi5.py (moving COM_class to class level) then the sapi5.4 driver only needs to override COM_class, rather than initTTs.
Changes:
Milestone changed from None to 2011.3
State: closed

@nvaccessAuto

Comment 8 by pvagner (in reply to comment 6) on 2011-08-30 04:28
Replying to jteh:

Can you see voices from older versions of SAPI5 with this driver or only SAPI5.4 voices?

This only exposes sapi 5.4 voices. For most voices we still need the original sapi5 driver which creates Sapi.SpVoice com object.

@nvaccessAuto

Comment 9 by jteh on 2011-08-30 05:20
I've done a bit of research. This is actually the Microsoft Speech Platform, which is a separate thing with a SAPI compatible interface. It's meant for implementing speech in server applications. This explains why it uses a different interface and thus requires a different driver. I'm therefore going to rename this driver accordingly.
Changes:
Changed title from "Add support for SAPI 5.4 voices" to "Add support for Microsoft Speech Platform voices"

@nvaccessAuto

Comment 10 by jteh on 2011-08-30 06:52
Rename done in 1529322.

@nvaccessAuto nvaccessAuto added this to the 2011.3 milestone Nov 10, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment