Solved

Speech API select voice under a service

Posted on 2004-09-29
11
880 Views
Last Modified: 2008-01-09
Here is an interesting one.  I have a program that has no visible user interface, as it runs as a service.  It does talk Using SPVOICE.

 I would like to have it speak with a certain voice, but it always selects the default voice.  Since there is no user, it cant select the default voice for the user, as there is no user.  So, where does it get the voice it selects?  It seems to pick Sam.  I have a user interface for changing settings (when there is a user logged on) where i would like to set the voice, but it uses an spobjecttoken as the object to select the voice, and i dont know how to save that to the registry.

Thanks!
John Gjonola
0
Comment
Question by:publicvoid
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
11 Comments
 

Expert Comment

by:ssiadmin
ID: 12243032
I would try setting the service credentials to your username, restart the servce, and see if it uses the default voice you select for running the parent application in your user context.  If so, then create a user (admin if needed), log that user on and set it's default voice, then log off that user.  This will create a profile for that dummy user and set the HKCU key that likely holds the value.  Set the service to use that dummy user's credentials.  If the dummy user needs to be administrator level, you may want to remove the ability to log on locally in the local security settings (or domain/GPO if you use a domain admin user).
0
 
LVL 13

Expert Comment

by:davidlars99
ID: 12243977
publicvoid, If you don't mind, can you tell me what progrma is it and how to get it..?
0
 

Expert Comment

by:DarryDoo
ID: 12256725
Look in HKEY_USERS\.Default

If you already know the location in the HKCU registry hive where the voice selection is stored, then either update that same location in HKU\.Default, or create it.

If you don't know where it's stored, either search for the voice name, or use a tool such as REGMON from sysinternals.com to monitor the registry as you change the voice.

Note that changing the .DEFAULT key means that users who log on for the first time will receive the configured settings as their initial settings.
0
Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

 
LVL 1

Expert Comment

by:tissier
ID: 12256731
Be carreful with Speech, because on Win 2000, there's only one voice available. Maybe that is your problem ? can you change the voice with a GUI app ?
0
 

Expert Comment

by:billgell
ID: 12257705
A Windows service does have a user. Check the Services - Properties, under the Log On tab. The logon defaults to 'Local System account' which is a special Windows user. You might try setting it to log in under another user.
0
 
LVL 1

Accepted Solution

by:
quintsystems earned 500 total points
ID: 12257774
If you install the speach SDK you can get different voices.  Once installed, go to the control panel, speech and the TEXT TO SPEECH tab and you should have three voices to choose from: Microsoft Mary, Microsoft Mike and Microsoft Sam.  I don't know how to get other voices and they might cost money.  I prefer Microsoft Mary.
0
 

Expert Comment

by:DarryDoo
ID: 12513185
Based on the initial post, "but it always selects the default voice" leads me to believe that the other voices are already installed. Therefore, installing the Speech SDK to get more voices won't resolve the issue.

Just my 2 pesos.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Name Space error VS2015 1 48
Selenium and Xpath 4 70
GET INFO ABOUT WHAT THE PRINTER IS DOING ? 11 77
How does this modal gets closed? 6 42
Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
In order to hide the "ugly" records selectors (triangles) in the rowheaders, here are some suggestions. Microsoft doesn't have a direct method/property to do it. You can only hide the rowheader column. First solution, the easy way The first sol…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question