Well, as I said, I haven't had time to test any of it myself. Only know, that I did something like that, when building a program under DOS several years ago, and had to have the speech do some kind of pausing. It was a bit easier back then, in one sense, since the software was sending text phrases to the COM port, and you more directly could control the process, but what I did, far as memory goes, was namely to multiply the given number of words in the text string, with a steady number of milliseconds, thereby calculating the estimated time it took to speak each phrase. It worked pretty well, back then.

There's got to be a way of controlling soft-synths as well. Well, I did mention TextAloud, and I think Bruce might have his hand on code that could do such a job. But in both those cases, we are talking SAPI voices. Seems they are more configurable, than what is the case with the dedicated voices. Too bad, since that is the voice quite many of us are using. Guess, far as I see it, only thing for us to do then, is to make a workaround, and try to fool the voice to have his coffee break. Smile!

----- Original Message ----- From: "Chip Orange" <lists3...@comcast.net>
To: <gw-scripting@gwmicro.com>
Sent: Sunday, August 07, 2011 9:03 PM
Subject: RE: causing pauses in speech


Hi David,

Yes, I wondered about the same thing ... I doubt if we'd be able to get it
exact enough to be able to insert a pause of an exact value, but still, you
don't know until you try.

Chip


-----Original Message-----
From: David [mailto:eleph...@tele2.no]
Sent: Sunday, August 07, 2011 2:32 PM
To: gw-scripting@gwmicro.com
Subject: Re: causing pauses in speech

Chip,
maybe a crazy idea, and it might eventually be useless. Haven't had time to
check up any of it, so just throwing it on the board.

If you say that the sleep command between the speak lines will work, just it is long enough. My idea here is, how to calculate the length of such a sleep command. As I see it, there would mainly be two values to be considered: the number of words to be spoken, and the actual set speech rate. Could you have
a small function that made a calculation based on these parametres,
multiplied it with some hundreds or tenths of a second, and then returned
you a Sleeping-value, that you then could insert between two speak lines?
OK, the function and its exact value of milliseconds to be multiplied, would
have to be a matter of 'play-and-try', but it eventually might be helpful
for later projects as well, so might not be loss of time after all. Again,
it might differ slightly from one synth to another, since some synths are
faster speakers than others, hence could cause the pause to be quite
nnoticeable. Still, it might be a workaround in most cases.

As I said, this is taken right off my head, hence use it for what it is
worth.

----- Original Message -----
From: "Chip Orange" <lists3...@comcast.net>
To: <gw-scripting@gwmicro.com>
Sent: Sunday, August 07, 2011 8:15 PM
Subject: RE: causing pauses in speech


Thanks Bruce and David for the responses.

David,

the sleep between speak commands will work, but there has to be nothing
speaking at the moment (a lot of queued speech will eat up all the time
you
are sleeping), and you have to make the sleep very long.  for instance:

silence
speak "he is eating his dinner"
sleep 5*1000
speak "in the evening."

that sleep is long enough for you to hear it's effect.  if you comment it
out, the speech will happen without a break between the two, so you can
hear
the sleep does work.

I haven't had much luck with breaking speech into multiple speak commands.
it adds a very very slight pause, but not much of one.

Sorry Bruce, but you can't use XML SAPI commands in WE speech.

If I add sleep commands between half a dozen speak commands though, and
the
user doesn't want to hear this block of speech, unfortunately pressing the
silence key for them doesn't work; because it could happen during one of
the
sleeps, and then it would pick up speaking again.

thanks though for the ideas.

Chip


-----Original Message-----
From: BT [mailto:b...@fltg.net]
Sent: Sunday, August 07, 2011 12:23 PM
To: gw-scripting@gwmicro.com
Subject: Re: causing pauses in speech


Hi Again,

   this sleep insertion is inside a event and does not work in a mormal
line. That is why I posted it, it is inside an event and not a direct
in-line command...

       Bruce

Sent: Sunday, August 07, 2011 6:41 AM
Subject: Re: causing pauses in speech


Chip,
Likely you are already aware of this. Still, here goes.

My best solution, in cases where I want a pause in a spoken phrase, is to
break it into several phrases. Unfortunately, the way Window-Eyes stands
today, I haven't found any way of controlling how long that pause will be,
but at least, there will be a pause at the point of a new phrase. So, the
phrase 'he was eating his supper, late in the evening', will be like this:

   Speak "He was eating his supper"
   Speak "late in the evening"

I did try, in one of my apps, to put a Sleep command between the two speak
lines, but all I got, was that the speech would do both the phrases, and
then the script would 'sleep' for the given time. OK, I only have tested
this with Eloquence, so can't speak for any other synth. But I do know,
that
TextAloud - from Nextup.com - does give you the full control to put pauses
of several seconds between two phrases, meaning that there should be
chance
of doing so; only that Window-Eyes might not open up for that kind of
control of the synths.


----- Original Message -----
From: "Allison and Chip Orange" <acora...@comcast.net>
To: <gw-scripting@gwmicro.com>
Sent: Sunday, August 07, 2011 2:23 AM
Subject: causing pauses in speech


Hi all,

I'm looking for a technique which will cause pauses in a long string of
speech.  It will be in a situation where it's very likely all the
punctuation will be enabled, so simply placing some punctuation in the
string isn't likely to help, just cause more to listen to.

my only thought, was to turn off all the punctuation, add punctuation to
the
string (maybe just a comma between parts will be enough, my experiments
seem
to show that anything else, or more than one doesn't do any better),
speak
the string, and then turn back on punctuation.

The trouble with this approach is the timing; if something else is
speaking
when I do this, it will lose it's punctuation; if something is speaking
afterwards, it may not have it's punctuation.

luckily, I'm doing this as a result of a hot key, so maybe the timing
isn't
as much of an issue, I'm just not sure.

anyway, does anyone have any thoughts or any better technique?

thanks.

Chip




Reply via email to