VoiceGuide IVR Software Main Page
Jump to content

Text To Speech Stops Working

Recommended Posts

can anyone help please explain what is happening when the tts stops working?

 

112649.02 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112649.03 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112649.04 6 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

112649.05 6 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

112649.05 6 tapie PlayEnd old line=6 0 448656

112649.16 6 Timer fired EV_TIMEOUT_REPLAYMSG

112649.16 6 ScriptEventCode 9005 iLineState=1100

112649.18 6 LsPlayMsg EV_TIMEOUT_REPLAYMSG

112649.19 6 tts generate reuse

112649.19 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112649.21 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112649.21 6 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

112649.21 6 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

112649.23 6 tapie PlayEnd old line=6 0 448837

112649.42 6 Timer fired EV_TIMEOUT_REPLAYMSG

112649.42 6 ScriptEventCode 9005 iLineState=1100

112649.43 6 LsPlayMsg EV_TIMEOUT_REPLAYMSG

112649.43 6 tts generate reuse

112649.44 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112649.45 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112649.46 6 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

112649.47 6 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

112649.47 6 tapie PlayEnd old line=6 0 449087

112649.67 6 Timer fired EV_TIMEOUT_REPLAYMSG

112649.67 6 ScriptEventCode 9005 iLineState=1100

112649.68 6 LsPlayMsg EV_TIMEOUT_REPLAYMSG

112649.69 6 tts generate reuse

112649.69 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112649.71 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112649.71 6 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

112649.72 6 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

112649.73 6 tapie PlayEnd old line=6 0 449337

112649.93 6 Timer fired EV_TIMEOUT_REPLAYMSG

112649.93 6 ScriptEventCode 9005 iLineState=1100

112649.94 6 LsPlayMsg EV_TIMEOUT_REPLAYMSG

112649.94 6 tts generate reuse

112649.95 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112649.96 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112649.97 6 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

112649.98 6 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

112649.99 6 tapie PlayEnd old line=6 0 449598

112650.19 6 Timer fired EV_TIMEOUT_REPLAYMSG

112650.19 6 ScriptEventCode 9005 iLineState=1100

112650.20 6 LsPlayMsg EV_TIMEOUT_REPLAYMSG

112650.20 6 tts generate reuse

112650.21 6 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

112650.22 6 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts6.wav]

112650.25 6 TimeoutClear

112650.26 6 tapie PlayEnd old line=6 0 449858

112650.26 6 wa(4433,44985800)

112650.28 6 callinfo MONITORMODES

112653.63 7 Play End line[7] (id=448206)

112653.63 7 ScriptEventCode 8001 iLineState=1100

112653.64 7 LsPlayMsg EV_PLAY_FINISHED

112653.65 7 TimeoutSet 10 EV_TIMEOUT_HANGUP

112653.65 7 TimeoutSet 0 EV_TIMEOUT_GOTOMODULE

112653.66 7 ScriptEventCode 9002 iLineState=1101

112653.67 7 LsPlayMsgFinished EV_TIMEOUT_GOTOMODULE

112653.67 7 TimeoutClear

Share this post


Link to post

From the trace we see that TTS reports to VoiceGuide that is has finished generating the sound file that VG should be playing. But when VG tries to play the sound file it finds problems with it and decides it's not suitable to play...

VoiceGuide then waits for a while in hope that maybe the TTS system is just slow in finalizing writing data to sound file it generated but eventually after waiting for over a second it gives up trying to play the TTS sound file.

 

Which TTS engine are you using on this system?

 

Does this problem happen every time when TTS is used on this system or only occasionally?

 

Which version of VoiceGuide are you using? You can tell using the Help menu and selecting the "About VoiceGuide" option.

 

If this problem happens again please .ZIP up and post here the sound file which the TTS has generated (you can see the filename quoted in the trace).

Share this post


Link to post
Which TTS engine are you using on this system?

 

Spechwork's Speechify

 

Does this problem happen every time when TTS is used on this system or only occasionally?

 

occassionally. most of the time all working fine.

 

Which version of VoiceGuide are you using?

 

5.2.1011

Share this post


Link to post

The WAV file is 46 bytes long(!) - looks like Spechwork's Speechify did not even try to write anything into that sound file file apart from the header...

 

Looking at the MMDDsw.txt trace (in VG's \log\ subdirectory) should shed more light onto this - please enable 'tracing to file' in VG, reproduce the problem and post the MMDDsw.txt log file.

 

Is it possible that TTS sent from [Play Tender Form Number] module would be blank? Sending an empty string to TTS could be what's causing the problem here...

Share this post


Link to post

here is 2 lines playing, with one having the problem. below is the MMDDvgm.txt and following the MMDDsw.txt.

 

143822.99 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143823.00 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143823.02 7 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

143823.02 7 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

143823.02 7 tapie PlayEnd old line=7 0 942634

143823.15 7 Timer fired EV_TIMEOUT_REPLAYMSG

143823.15 7 ScriptEventCode 9005 iLineState=1100

143823.16 7 LsPlayMsg EV_TIMEOUT_REPLAYMSG

143823.18 7 tts generate reuse

143823.18 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143823.20 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143823.20 7 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

143823.20 7 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

143823.21 7 tapie PlayEnd old line=7 0 942824

143823.41 6 tts generate finish

143823.41 6 [say Description4] Playing (C:\Program Files\VoiceGuide\data\tts6.wav)

143823.45 6 PlaySoundStart ok [C:\Program Files\VoiceGuide\data\tts6.wav]

143823.45 6 TimeoutClear

143823.45 6 wa(5225,94306400)

143823.46 7 Timer fired EV_TIMEOUT_REPLAYMSG

143823.46 7 ScriptEventCode 9005 iLineState=1100

143823.47 7 LsPlayMsg EV_TIMEOUT_REPLAYMSG

143823.48 7 tts generate reuse

143823.48 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143823.49 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143823.50 7 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

143823.52 7 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

143823.52 7 tapie PlayEnd old line=7 0 943135

143823.54 6 callinfo MONITORMODES

143823.71 7 Timer fired EV_TIMEOUT_REPLAYMSG

143823.71 7 ScriptEventCode 9005 iLineState=1100

143823.73 7 LsPlayMsg EV_TIMEOUT_REPLAYMSG

143823.73 7 tts generate reuse

143823.73 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143823.75 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143823.75 7 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

143823.77 7 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

143823.77 7 tapie PlayEnd old line=7 0 943385

143823.98 7 Timer fired EV_TIMEOUT_REPLAYMSG

143823.98 7 ScriptEventCode 9005 iLineState=1100

143823.98 7 LsPlayMsg EV_TIMEOUT_REPLAYMSG

143823.00 7 tts generate reuse

143824.00 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143824.02 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143824.02 7 err wav file not ready to play. Header incomplete. Lets wait a little while and try again.

143824.02 7 TimeoutSet 0.2 EV_TIMEOUT_REPLAYMSG

143824.04 7 tapie PlayEnd old line=7 0 943645

143824.23 7 Timer fired EV_TIMEOUT_REPLAYMSG

143824.23 7 ScriptEventCode 9005 iLineState=1100

143824.25 7 LsPlayMsg EV_TIMEOUT_REPLAYMSG

143824.25 7 tts generate reuse

143824.25 7 [Play Tender Form Number] Playing (C:\Program Files\VoiceGuide\data\tts7.wav)

143824.28 7 PlaySoundStart err=[0 play PlaySoundStart ResetWavOutAndContinuePlay=>7,play pss EnsureWaveOutIsOpenAndReady=>play FileMmioOpenAndAscend failed in Play_EnsureWaveOutIsOpenAndReady] [C:\Program Files\VoiceGuide\data\tts7.wav]

143824.30 7 TimeoutClear

143824.32 7 tapie PlayEnd old line=7 0 943906

143824.32 7 wa(4433,94390600)

143824.34 7 callinfo MONITORMODES

143828.72 6 wb(94306400)

143828.78 7 wb(94390600)

143828.84 6 Play End line[6] (id=943064)

143828.84 6 ScriptEventCode 8001 iLineState=1100

 

 

143118.443 ocxfn TtsToWavFile(lLineId=7, strTextXml=\!rd85 Lot Number 1, 5, 1, 9, the microwave tiffany for $47 \!rdr, strFname=C:\Program Files\VoiceGuide\data\tts7.wav, iWavFormat=2, iSpeed=0, iVolume=100, lParam1=0, strParam1=)

143118.443 task copy TTS text start 1

143118.443 task copy TTS text start 2

143118.443 task copy TTS text finished

143118.443 task wrote all data

143118.473 tts found new TTS task

143118.473 tts AssignFormat => 0

143118.473 tts BindToFile => -2147287038

143118.483 tts SetOutput => -2147200968

143118.513 tts Speak start idx=28

143125.403 WaitUntilDone completed

143125.403 tts Speak to file end idx=28, hndl=0

143125.403 msg OnMsgFromThread_TtsToWavFinished

143816.214 ocxfn TtsToWavFile(lLineId=7, strTextXml=Hello Brett. Following are the results for Tender Form Number 5, 1, 4, 1, 6, strFname=C:\Program Files\VoiceGuide\data\tts7.wav, iWavFormat=2, iSpeed=0, iVolume=100, lParam1=0, strParam1=)

143816.214 task copy TTS text start 1

143816.214 task copy TTS text start 2

143816.214 task copy TTS text finished

143816.214 task wrote all data

143816.224 tts found new TTS task

143816.224 tts AssignFormat => 0

143816.224 tts BindToFile => -2147287038

143816.224 tts SetOutput => -2147200968

143816.304 tts Speak start idx=31

143819.829 ocxfn TtsToWavFile(lLineId=6, strTextXml=\!rd85 Lot Number 1, 8, 6, 1, the birds 2 beach pl \!rdr, strFname=C:\Program Files\VoiceGuide\data\tts6.wav, iWavFormat=2, iSpeed=0, iVolume=100, lParam1=0, strParam1=)

143819.829 task copy TTS text start 1

143819.829 task copy TTS text start 2

143819.829 task copy TTS text finished

143819.829 task wrote all data

143822.984 WaitUntilDone completed

143822.984 tts Speak to file end idx=31, hndl=0

143822.984 msg OnMsgFromThread_TtsToWavFinished

143823.034 tts found new TTS task

143823.034 tts AssignFormat => 0

143823.034 tts BindToFile => 0

143823.034 tts SetOutput => 0

143823.034 tts Speak start idx=32

143823.414 WaitUntilDone completed

143823.414 tts Speak to file end idx=32, hndl=0

143823.414 msg OnMsgFromThread_TtsToWavFinished

Share this post


Link to post

Was the file C:\Program Files\VoiceGuide\data\tts7.wav was again empty? (ie: 46 bytes long only...)

 

The MMDDsw.txt trace shows three calls:

 

line 7 at 14:31:18

line 7 at 14:38:16

line 6 at 14:38:19

 

It looks like both calls on line 7 failed - we can see in trace that the TTS engine reported that it is unable to write to the file:

 

143118.473 tts BindToFile => -2147287038

143118.483 tts SetOutput => -2147200968

 

143816.224 tts BindToFile => -2147287038

143816.224 tts SetOutput => -2147200968

 

So the question is really why Speachwork's Speechify TTS could not write to one sound file and yet it was able to immediately afterwards write OK to another sound file (C:\Program Files\VoiceGuide\data\tts6.wav)

 

I take it that no other task had tts7.wav open at the same time preventing TTS from overwriting it, as otherwise VG would just play the old TTS afterwards... so it does look as if the problem is within the TTS here...

 

All that I can suggest is for you to try using a different TTS engine - like AT&T for example which is being used by many people out there and so far nobody has reported problems like yours with AT&T...

 

 

-2147287038 = 0x80030002

-2147200968 = 0x80045038

Share this post


Link to post

been in contact with the speechworks (note my correct spelling this time) speechify and from them we purchase 2 port licences but it looks like that one licence is in use by voiceguide in all the time, whether there is a line being used or not. So I am suspecting that this maybe where the problem is. Going to try with an extra port/licence and see how it goes.

 

Does this make sense to you guys? Why would would voiceguide constantly use a port?

Share this post


Link to post

The error you see in the trace is the error returned from the Speechify TTS - so the error is with Speechify...

 

The VoiceGuide's Microsoft SAPI 5.0 based TTS interface has been extensively tested against Microsoft's own reference TTS engines and AT&T's Natural Voices - and those (and most other) engines do not show problems like the one you are seeing with Speechify on your system.

 

It looks like Speechify's SAPI 5.0 interface has a bug in it...

 

I was advised that our programmers could try to replicate the problem on our systems here and to see if maybe VoiceGuide could be using the Speechify TTS a bit different to make it work reliably - but we would need to obtain the Speechify TTS license itself first. As you are a customer of Scansoft/Speechworkds you can ask them to forward us the relevant engines & licenses and we can then have a look at them.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×