schemetext-to-speechfestival

Why does Festival / Scheme stop speaking?


I have a Festival / Scheme file speakall.scm with the contents:

(voice_kal_diphone)
(tts "file1.txt" nil)
(tts "file2.txt" nil)

If I ask Festival to play either file1.txt or file2.txt, it reads the entire file. However, when combined into the above, and run with

festival -b speakall.scm

it craps out early in file2.txt.

I'm guessing some buffer is filling somewhere and not emptying.

File1 has 43 words, and file2 has 50 words.

How can I get it to speak all of both files (and any others I might add)?


Solution

  • tts synthesizes audio in async mode which is probably not a good idea. I would use tts_file instead.

     (tts_file "file1.txt" 'fundamental)