def tts(self, text, cache=0, voice='kal_diphone'): voices = """kal_diphone ked_diphone don_diphone rab_diphone voice_cmu_us_slt_arctic_clunits en1_mbrola us1_mbrola us2_mbrola us3_mbrola gsw_diphone ;; not publically distributed el_diphone)""" hash = md5.new(text).hexdigest() filename = '/var/lib/asterisk/festivalcache/%s' % hash if cache and os.path.exists('%s.wav' % filename): return filename os.path.exists('%s.wav' % filename) and os.unlink('%s.wav' % filename) cmd = '/usr/bin/text2wave -F 8000 -o %s.wav -eval "(%s)"' % (filename,voice) sys.stderr.write(' ---xxx--- EXEC: echo %s | %s' % (text,cmd)) sys.stderr.write('\n\n%s\n\n' % cmd) f = os.popen(cmd, 'w') f.write(text) f.close() return filename