MLSpeak new version bug

MLSpeak is a text to voice addon for MLServer 3
dr.frazier
Senior Member
Senior Member
Posts: 220
Joined: Sat Oct 15, 2005 10:27 pm
Contact:

MLSpeak new version bug

Postby dr.frazier » Thu Sep 13, 2007 10:48 pm

There are two problems with the new mlspeak. The first is not a bug. The good part is that mlspeak uses its own processing line so that it does not hang other mlserver processes. However, it has introduced this problem into my setup. I am using a cav66 setup to distribute the mlspeak voice. I send a command to change the cav keypad to the correct input. Then the mlspeak command is given. The next command which is to change the keypad to the previous input is executed immediately, so that the mlspeak voice is not distributed. The old plugin use to run the next command after executing the mlspeak, but I guess it is now multithreaded so the next command is executed immediately thus changing the keypad off the mlspeak input. I have to place a mlpause command to halt the execution of the next command, but some announcements are 15 - 20 seconds long. This causes mlserver to freeze.

The second is a bug. When sending multiple commands only the last is actually executed. I have a macro that reads say.time!say.temp!say.temptomorrow. Only the last command say.temptomorrow is executed. This example is simple and can be overcome by placing all in one long sentence, but there are other instances where I will want to say several statements. The server log records them as having been executed but they are not said out the speaker output.

Thanks

Randy

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Postby CinemarDave » Fri Sep 14, 2007 1:11 am

Not so much a bug but a design choice that is not optimum. I chose to have new voice commands stop any existing command. The old method was to have one finish before the next one is processed. I'll change the plugin back to the old method and post an update.

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Postby CinemarDave » Fri Sep 14, 2007 5:10 pm

Version 3.0.12 of MLSpeak will now let the first message complete before speaking the next.

dr.frazier
Senior Member
Senior Member
Posts: 220
Joined: Sat Oct 15, 2005 10:27 pm
Contact:

Postby dr.frazier » Sat Sep 15, 2007 10:39 pm

Thanks. That part works great. However, I am still having trouble with the keypads returning to previous levels before the announcement is made. The mltimer plugin does not seem to run in a separate thread as I would expect. If I run Macro|change.keypad!Mltimer|~~~!Mlspeak|Announcement with my timer end command return.keypad -- then the timer will complete before mlspeak starts and then the return.keypads macro is executing. Is this a mlspeak, mltimer or mlserver problem? Or coding problem :shock: ?

If I use a MLPause|15 after the mlspeak announcement then it works sometimes but will also freeze mlserver at times.

Randy

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Postby CinemarDave » Sun Sep 16, 2007 10:56 pm

ok, at least in your setup you cannot have speech run as a background task. Download version 3.0.14 of the plugin. In setup you'll see a new check box labeled Speak in a background process. Make sure you DO NOT check this box. This should return everything to the way the original plugin worked. Does this solve your issue?

dr.frazier
Senior Member
Senior Member
Posts: 220
Joined: Sat Oct 15, 2005 10:27 pm
Contact:

Postby dr.frazier » Mon Sep 17, 2007 9:57 pm

Thanks. It sounds like it should. I'll try in next couple of days when I have time to return some of my macros!

Thanks

Randy

dr.frazier
Senior Member
Senior Member
Posts: 220
Joined: Sat Oct 15, 2005 10:27 pm
Contact:

Postby dr.frazier » Thu Sep 20, 2007 2:45 pm

Works great. Much thanks!!

Randy


Return to “MLSpeak”

Who is online

Users browsing this forum: No registered users and 1 guest