From 94ca29c410a1434cf986d25d1a7612e990e0dade Mon Sep 17 00:00:00 2001 From: Mark Spencer Date: Wed, 8 Jan 2003 16:57:11 +0000 Subject: [PATCH] Version 0.3.0 from FTP git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@580 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- contrib/festival-1.4.2.diff | 75 +++++++++++++++++++++++++++++++++++++ festival-1.4.2.diff | 75 +++++++++++++++++++++++++++++++++++++ 2 files changed, 150 insertions(+) create mode 100755 contrib/festival-1.4.2.diff create mode 100755 festival-1.4.2.diff diff --git a/contrib/festival-1.4.2.diff b/contrib/festival-1.4.2.diff new file mode 100755 index 0000000000..8f7b34707e --- /dev/null +++ b/contrib/festival-1.4.2.diff @@ -0,0 +1,75 @@ +diff -u -r festival-1.4.2/lib/tts.scm festival-1.4.2-asterisk/lib/tts.scm +--- festival-1.4.2/lib/tts.scm Wed Jan 8 09:54:14 2003 ++++ festival-1.4.2-asterisk/lib/tts.scm Tue Jan 7 08:51:44 2003 +@@ -236,6 +236,15 @@ + (utt.synth + (eval (list 'Utterance 'Text string)))))) + ++(define (tts_textasterisk string mode) ++ "(tts_textasterisk STRING MODE) ++Apply tts to STRING. This function is specifically designed for ++use in server mode so a single function call may synthesize the string. ++This function name may be added to the server safe functions." ++ (utt.send.wave.asterisk ++ (utt.synth ++ (eval (list 'Utterance 'Text string))))) ++ + (define (tts_return_to_client) + "(tts_return_to_client) + This function is called by clients who wish to return waveforms of +diff -u -r festival-1.4.2/src/arch/festival/wave.cc festival-1.4.2-asterisk/src/arch/festival/wave.cc +--- festival-1.4.2/src/arch/festival/wave.cc Mon Jun 4 07:40:10 2001 ++++ festival-1.4.2-asterisk/src/arch/festival/wave.cc Tue Jan 7 08:53:09 2003 +@@ -377,6 +377,38 @@ + type = "nist"; + else + type = get_c_string(ltype); ++ ++ w->save(tmpfile,type); ++ write(ft_server_socket,"WV\n",3); ++ socket_send_file(ft_server_socket,tmpfile); ++ unlink(tmpfile); ++ ++ return utt; ++} ++ ++static LISP utt_send_wave_asterisk(LISP utt) ++{ ++ // Send the waveform to a client (must be acting as server) ++ EST_Utterance *u = utterance(utt); ++ EST_Wave *w; ++ EST_String tmpfile = make_tmp_filename(); ++ LISP ltype; ++ EST_String type; ++ ++ w = get_utt_wave(u); ++ if (ft_server_socket == -1) ++ { ++ cerr << "utt_send_wave_client: not in server mode" << endl; ++ festival_error(); ++ } ++ ++ ltype = ft_get_param("Wavefiletype"); ++ if (ltype == NIL) ++ type = "nist"; ++ else ++ type = get_c_string(ltype); ++ w->resample(8000); ++ w->rescale(5); + w->save(tmpfile,type); + write(ft_server_socket,"WV\n",3); + socket_send_file(ft_server_socket,tmpfile); +@@ -454,6 +486,13 @@ + "(utt.send.wave.client UTT)\n\ + Sends wave in UTT to client. If not in server mode gives an error\n\ + Note the client must be expecting to receive the waveform."); ++ ++ init_subr_1("utt.send.wave.asterisk",utt_send_wave_asterisk, ++ "(utt.send.wave.asterisk UTT)\n\ ++ Sends wave in UTT to client. If not in server mode gives an error\n\ ++ Note the client must be expecting to receive the waveform. The waveform ++ is rescaled and resampled according to what asterisk needs"); ++ + init_subr_1("send_sexpr_to_client", send_sexpr_to_client, + "(send_sexpr_to_client SEXPR)\n\ + Sends given sexpression to currently connected client."); diff --git a/festival-1.4.2.diff b/festival-1.4.2.diff new file mode 100755 index 0000000000..8f7b34707e --- /dev/null +++ b/festival-1.4.2.diff @@ -0,0 +1,75 @@ +diff -u -r festival-1.4.2/lib/tts.scm festival-1.4.2-asterisk/lib/tts.scm +--- festival-1.4.2/lib/tts.scm Wed Jan 8 09:54:14 2003 ++++ festival-1.4.2-asterisk/lib/tts.scm Tue Jan 7 08:51:44 2003 +@@ -236,6 +236,15 @@ + (utt.synth + (eval (list 'Utterance 'Text string)))))) + ++(define (tts_textasterisk string mode) ++ "(tts_textasterisk STRING MODE) ++Apply tts to STRING. This function is specifically designed for ++use in server mode so a single function call may synthesize the string. ++This function name may be added to the server safe functions." ++ (utt.send.wave.asterisk ++ (utt.synth ++ (eval (list 'Utterance 'Text string))))) ++ + (define (tts_return_to_client) + "(tts_return_to_client) + This function is called by clients who wish to return waveforms of +diff -u -r festival-1.4.2/src/arch/festival/wave.cc festival-1.4.2-asterisk/src/arch/festival/wave.cc +--- festival-1.4.2/src/arch/festival/wave.cc Mon Jun 4 07:40:10 2001 ++++ festival-1.4.2-asterisk/src/arch/festival/wave.cc Tue Jan 7 08:53:09 2003 +@@ -377,6 +377,38 @@ + type = "nist"; + else + type = get_c_string(ltype); ++ ++ w->save(tmpfile,type); ++ write(ft_server_socket,"WV\n",3); ++ socket_send_file(ft_server_socket,tmpfile); ++ unlink(tmpfile); ++ ++ return utt; ++} ++ ++static LISP utt_send_wave_asterisk(LISP utt) ++{ ++ // Send the waveform to a client (must be acting as server) ++ EST_Utterance *u = utterance(utt); ++ EST_Wave *w; ++ EST_String tmpfile = make_tmp_filename(); ++ LISP ltype; ++ EST_String type; ++ ++ w = get_utt_wave(u); ++ if (ft_server_socket == -1) ++ { ++ cerr << "utt_send_wave_client: not in server mode" << endl; ++ festival_error(); ++ } ++ ++ ltype = ft_get_param("Wavefiletype"); ++ if (ltype == NIL) ++ type = "nist"; ++ else ++ type = get_c_string(ltype); ++ w->resample(8000); ++ w->rescale(5); + w->save(tmpfile,type); + write(ft_server_socket,"WV\n",3); + socket_send_file(ft_server_socket,tmpfile); +@@ -454,6 +486,13 @@ + "(utt.send.wave.client UTT)\n\ + Sends wave in UTT to client. If not in server mode gives an error\n\ + Note the client must be expecting to receive the waveform."); ++ ++ init_subr_1("utt.send.wave.asterisk",utt_send_wave_asterisk, ++ "(utt.send.wave.asterisk UTT)\n\ ++ Sends wave in UTT to client. If not in server mode gives an error\n\ ++ Note the client must be expecting to receive the waveform. The waveform ++ is rescaled and resampled according to what asterisk needs"); ++ + init_subr_1("send_sexpr_to_client", send_sexpr_to_client, + "(send_sexpr_to_client SEXPR)\n\ + Sends given sexpression to currently connected client.");