#!/usr/bin/perl sub signal_handler { exit 0; } sub signal_child { } $SIG{'INT'} = "signal_handler"; $SIG{'TERM'} = "signal_handler"; $SIG{'HUP'} = "signal_handler"; $SIG{'CHLD'} = "signal_child"; open(TTS, "| /usr/bin/festival") or die("no festival found...\n"); $did = false; while() { print STT "(SayText \"$_\");\n"; if($did == false) { $did = true; if(fork() == 0) { while() { } exit 0; } } } close(TTS); exit 0;