I created a small module to speak the text that is sent to it. It works fine if I don't use engine.setProperty to set the voice, but if I set the voice it will only play the first command.
import pyttsx
def speak( text ):
if text != "":
engine = pyttsx.init()
engine.setProperty('voice', "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\VW Kate")#if I don't do this line then it says both the commands
engine.say( text )
engine.runAndWait()
else:
print "you didnt enter anything"
if __name__ == "__main__":
speak("Hello")
speak("This one won't play unless I use the default voice")