Basically, this discussion is moving more into a level that would fit
the Scripting list the more. But one issue is that you don't know
whether a synth has pitch support, until you have tried it out, or have
access to the specs of that particular synth. Of course, your script can
try to set the pitch, and if it returns an error - let it change to
another synth, or beeping mode. Trouble is that some synths will throw
an error on you, others will just mutually dispose the pitch call. So
even an error check will not always be reliable for determining the
pitch support of the actual voice.
For another thing, even if you get a list of all mainstream synths, like
you Rick suggested, I am ready to make your dreams a bit gloomy. Mind
you, there is quite an amount of manufacturers who only do locale
synths, or may let their International synths support certain features,
that the locale synths don't; and visaversa. In short, even with a list
of available voices, you have no guarantee that your app won't run into
some sort of a locale voice that does not support the feature, and could
cause trouble in such an approach. Had to deal with a whole series of
voices of the locale kind, when I built the Extended Dictionary, and had
to call for certain features.
All in all, the only safe way, is to let the user do the choice. Make it
easy for the user to get to the setting, and make good info on the
matter of non-pitching voices. That is, for instance both through the
App Central introduction, the help screen of the app, and even when
changing to Pitch-adjustment, let the user be informed that not all
voices do support the pitching, and hence let him be informed that if
his voice would happen to be in this group, he will have no effect of
the pitch setting. A global list of voices supporting and not supporting
the different features, is a bit of an undertake. OK, it may be possible
to collect such a list, but it would take time, and may likely not be
very reliable. Even you could experience cases where a SAPI4 voice would
not support the pitching, whereas the SAPI5 edition of the same voice
will. The landscape of it all is quite a mess, agreed, but that is the
way things stand.
Sorry for being a "gloomer" here, but a few years experience in voice
handling has taught me a couple of lessons.
David
On 3/26/2015 2:04 PM, Chris Grabowski via Talk wrote:
Might be easier to just let the user decide, let them change pitch, tone, rate
or even beep, or a combination of all 3.
If there was an option to change the synthesizer, it would likely be too slow.
Chris
Window-Eyes Product Support
Ai Squared
725 Airport North Office Park
Fort Wayne, IN 46825
(802) 362-3612
www.aisquared.com
-----Original Message-----
From: Talk [mailto:[email protected]]
On Behalf Of Rick Thomas via Talk
Sent: Thursday, March 26, 2015 8:56 AM
To: 'Window-Eyes Discussion List'
Subject: CapEnhance Idea
Hi Rod:
Likely you have already thought of it but one idea is to list the supported
synths in a file, think we likes ini, and then when your script is started
check which synth is active on the client machine in the script, if it can
be done using the WE Object Model.
If so use the pitch or tone approach, if not then use the beeper approach.
Just a thought but I am guessing you have already thought of it.
None the less your app fills a nitch that was driving me crazy for a few
weeks and, if there are other programmers where caps are important, perhaps
them too.
Rick USA
_______________________________________________
Any views or opinions presented in this email are solely those of the author
and do not necessarily represent those of Ai Squared.
For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/cgrabowski%40aisquared.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the author
and do not necessarily represent those of Ai Squared.
For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/trailerdavid%40hotmail.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the author
and do not necessarily represent those of Ai Squared.
For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/archive%40mail-archive.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com