Text To Speech

  • Thread starter Thread starter alexB
  • Start date Start date
A

alexB

I want to use TextToSpeech feature in my app. It is just a very raw idea. I
am not sure if it is going to work for me the way I want to use it.

Number one, I need an API for it, not UI. I need an exec. I will be able to
find it on my own (if one exists) but I will appreciate if someone in the
know will offer a helpful hand.

Again, for me to use it I need an API, an executable file somewhere in
Windows\System32 directory or elsewhere.

The second question is much more important. I do not want this API to read
simple texts. What I have in mind is the following. I've had a part of one
of my applications monitoring Systems.Processes. Any executable running in
the background is caught and its name is put in an Sql table. When this
executable appears for the first time the date is recorded and placed in a
separate field. Daily updates of this table are made.

So far I have been examining this table only occasionally but I am planning
to pay more attention to it. Also I want to write a piece of code which will
catch the first appearance of a new guy and give me an audible message. I
can make a generic message with SoundRecorder.exe but it would be fanciful
to go one step further. I want this file name to be pronounced. An example:
"A new exec has appeared. 'Its name is CAAntiSpyware."
So, my question is (for a person with any experience): will it be able to
handle gibberish like this? Some cases may be even worse.

This is a somewhat primitive design but eventually I will monitor all
sockets and do the same in terms of storing the names of who uses them and
why. Over there analysis is more complicated and I want to have more control
over the monitoring with audible messages.


BTW, CAAntiSpyware.exe guy gives me creeps. I refused to renew their
subscription when I switched to Vista. For those who followed I've explained
my decision since I felt that Vista plus SB S&D offer sufficient protection.
Somehow this guy ended up in my system anyway. On top of that it is not
listed among programs what I can uninstall. I remember vaguely that a popup
showed up saying that I was delinquent on their wonderful subscription and
if I wanted to renew it. I clicked NO. Apparently CA knew in advance what to
expect since their sales perhaps have gone down. They left no option for
their cra*p to be rejected. Now I will have to deal with this scam. Spybot
S&D did not recognize it as malware and MS Malicious Software Removal Tool
seemed to have ignored it too.


Thanks.
 
Again, for me to use it I need an API, an executable file somewhere in
Windows\System32 directory or elsewhere.

An API is an application programming interface, a description of
a programmatic interface to a library, set of libraries, or an entire
application. It's not an application of itself.

I think you're looking for a set of libraries (DLL's) NOT an
executable...
 
Wharf rat, I doubt you've ever read any elementary book about computers.

You quite clearly revealed the level you are on. Good luck.

We can talk Shakespeare but computer, No. It is not for you.
 
alexB said:
Wharf rat, I doubt you've ever read any elementary book about computers.

You quite clearly revealed the level you are on. Good luck.
He's shown he's miles beyond your level, that is for sure.

Cheers.
We can talk Shakespeare but computer, No. It is not for you.

--
Vista will make you speechless!
http://tinyurl.com/38zv7x

Proprietary Software: a 20th Century software business model.

Q: What OS is built for lusers?
A: Which one requires running lusermgr.msc to create them?

Frank, hard at work on his Vista computer all day:
http://redwing.hutman.net/~mreed/warriorshtm/compost.htm
 
If there is no API I will have to do all the programming from scratch. It
will be a long way. This dll has not valid CLR header and therefore cannot
be disassembled. Neither Ildasm.exe nor Lutz Disassembler gave me anything.

This dll is rather small. it has only 4 functions. They are all generic.
They do not seem to have anything to do with speech by the sound of them. I
mean, they certainly do, otherwise they won't be there but they are not
something you can call at first call.

The Dependency Walker opened it up. It does not care about CLR headers.

It is all of course sort of irrelevant for this NG. But I hoped somebody
could have had direct experience with speech recognition and shed some light
on what interests me.

Thanks a lot for the pointer.
 
You use its COM interface eg paste these 2 lines into notepad, save with a
..vbs extension, turn on your speakers, and click on it

Set spVoice = CreateObject("SAPI.spvoice")
spVoice.Speak("New process spotted CAAntiSpyware")


You can do something similar in your app.
 
AlexB said:
If there is no API I will have to do all the programming from scratch. It
will be a long way.
This dll has not valid CLR header and therefore cannot
be disassembled.

Isn't Closed Source the shits?

Cheers.

Neither Ildasm.exe nor Lutz Disassembler gave me
anything.

This dll is rather small. it has only 4 functions. They are all generic.
They do not seem to have anything to do with speech by the sound of them.
I mean, they certainly do, otherwise they won't be there but they are not
something you can call at first call.

The Dependency Walker opened it up. It does not care about CLR headers.

It is all of course sort of irrelevant for this NG. But I hoped somebody
could have had direct experience with speech recognition and shed some
light on what interests me.

Thanks a lot for the pointer.

--
Vista will make you speechless!
http://tinyurl.com/38zv7x

Proprietary Software: a 20th Century software business model.

Q: What OS is built for lusers?
A: Which one requires running lusermgr.msc to create them?

Frank, hard at work on his Vista computer all day:
http://redwing.hutman.net/~mreed/warriorshtm/compost.htm
 
Jon said:
You use its COM interface eg paste these 2 lines into notepad, save with a
.vbs extension, turn on your speakers, and click on it

Set spVoice = CreateObject("SAPI.spvoice")
spVoice.Speak("New process spotted CAAntiSpyware")


You can do something similar in your app.
 
Thanks Jon, I am sick and tired of this VFP9 COM++ business. It works in one
place but when you move it to a new OS you immediately discover that all
dependencies were left behind and nothing works. And there might be quite a
few of them. In case of an API it is only one or two dlls you have to worry
about. With COM++ the situation is very opaque. I am really afraid of them.
Besides you have no control over the internals.

I used CreateObject ("_cryptapi") in XP and when I moved to Vista, I could
not revive it. I had the same problem with Office's graphics object for the
same reason.

I apprecaite your suggestion though. I appreciate it very much. I have a DB
for CreatObject clauses and I will put this one into it. It may be useful
one day, you never know.

Thanks again.

P.S. Do you think the SAPI.spvoice will be able to pronounce CAAntiSpyware?
This is the most important question. If it will, I will try yoour object for
sure. there is little risk involved.
 
AlexB said:
P.S. Do you think the SAPI.spvoice will be able to pronounce
CAAntiSpyware? This is the most important question. If it will, I will try
yoour object for sure. there is little risk involved.


Probably not, so I only say how I tend to use it.

For example I have an email program that I wrote that tells me when an email
arrives by voice. I may be out of the room, so the voice serves the purpose
of alerting me to the fact that an email has arrived. Since the voice might
be incomprehensible or I may not hear it from another room, it also pops up
a dialog to show the me the finer details.

So in your case you could perhaps use the voice to alert you to the fact
that an odd process has been detected and have some dialog to show the
actual details of the process.

Anyhow, whatever you choose hope it goes well with your project.
 
AlexB said:
If there is no API I will have to do all the programming from scratch.
It will be a long way. This dll has not valid CLR header and therefore
cannot be disassembled. Neither Ildasm.exe nor Lutz Disassembler gave
me anything.

This dll is rather small. it has only 4 functions. They are all generic.
They do not seem to have anything to do with speech by the sound of
them. I mean, they certainly do, otherwise they won't be there but they
are not something you can call at first call.

The Dependency Walker opened it up. It does not care about CLR headers.

It is all of course sort of irrelevant for this NG. But I hoped somebody
could have had direct experience with speech recognition and shed some
light on what interests me.

Thanks a lot for the pointer.

Have you tried any of these?
http://www.microsoft.com/downloads/...8b6821320546&DisplayLang=en#AffinityDownloads


--
"Fair use is not merely a nice concept--it is a federal law based on
free speech rights under the First Amendment and is a cornerstone of the
creativity and innovation that is a hallmark of this country. Consumer
rights in the digital age are not frivolous."
- Maura Corbett
 
the wharf rat said:
An API is an application programming interface, a description of
a programmatic interface to a library, set of libraries, or an entire
application. It's not an application of itself.

I think you're looking for a set of libraries (DLL's) NOT an
executable...


The clueless idiot seems to think every part of the OS is an API.

ss.
 
Jon, I want to express my gratitude. You gave me a momentum. Your post
brought certain things into focus and I began paying attention.

It turned out to be very easy and doable.

First I thought of doing it in .vbs file and run it from my C# code but
there was a better way an MSDN guy suggested.

This is how it looks in C#

using SpeechLib;
// some code
public void textToSpeech ( string text )
{
SpVoice voice = new SpVoice ( );
voice.Speak ( text, SpeechVoiceSpeakFlags.SVSFlagsAsync );
voice.WaitUntilDone ( 30000 );
}

// some code
// An example of using the function call:
textToSpeech ( this.nodesAfterSearch.Count.ToString ( ) + " Records
Found" );

Parts of my code were simplified quite a bit. I now can delete a folder with
..wma and .wav files. Beofer I could not think of computer telling me the
numbers of itemd that were found in text or treeView. Now i is a piece of
cake. Viva MS! The options it offers to developers are incredible.

Thanks again, I appreciate it.
 
Yw Alex, and thanks for the update.

I agree it is a pretty incredible piece of technology, so hats off to the MS
developers for it. I've only really used in a fairly simple way thus far,
but is certainly has potential for some much more exciting applications -
when I get round to fully reading the documentation for it that is, of
course ;-)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

A Speech 2
Speech Recognition 26
Conversion program speech to text 1
Text to speech 3
Speech recognition 1
speech recognition 2
Text to Speech problem 2
SQLServer 2017 exec xp_cmdshell 'dir Y:\*.*/s' command fails 3

Back
Top