Asterisk Festival integration failed!

Hey guys,

I am trying to use festival with asterisk, but still no luck.
These are the things i done

  1. Installed asterisk-1.6.1.2 & asterisk-addons-1.6.1.1

  2. Installed festival using yum install festival*
    (festival-1.95-5.2.1.i386, festival-devel-1.95-5.2.1.i386)

  3. Edited file /usr/share/festival/festival.scm adding the following lines at the end

;;=============================================
;; Enable access to localhost (needed by debian users)
(set! server_access_list '(“localhost\.localdomain” “localhost”))

;;; Command for Asterisk begin
(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."
(let ((wholeutt (utt.synth (eval (list 'Utterance 'Text string)))))
(utt.wave.resample wholeutt 8000)
(utt.wave.rescale wholeutt 5)
(utt.send.wave.client wholeutt)))
;;; Command for Asterisk end
;;=============================================

4 Edited file /etc/astersik/festival.conf

[general]
host=localhost
port=1314
usecache=yes
cachedir=/var/cache/asterisk/festival/
festivalcommand=(tts_textasterisk “%sâ€

I changed the way i configure festival

  1. To the /usr/share/festival.scm, added the following lines to end of file

    (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."
    (let ((wholeutt (utt.synth (eval (list 'Utterance 'Text string)))))
    (utt.wave.resample wholeutt 8000)
    (utt.wave.rescale wholeutt 5)
    (utt.send.wave.client wholeutt)))

    (provide 'festival) ; this line has been there in this file

  2. In the extensions.conf, added the following

    exten => 02,1,Ringing
    exten => 02,n,Wait(2)
    exten => 02,n,Answer()
    ;tried with & without doublequotes inside Festival()
    exten => 02,n,Festival(“hello sanju i am festival”)
    exten => 02,n,Hangup()

  3. Started festval server by cmd festival --server
    o/p:
    server Tue Sep 8 05:57:04 2009 : Festival server started on port 1314

  4. Started asterisk server by cmd, asterisk -vvvvvvc

  5. I am using x-lite softphone for testing purpose. When i call
    after ringing i dont hear any sound, and also the call never hangsup.

    In festival console i get the following

server Tue Sep 8 06:10:05 2009 : Festival server started on port 1314
client(1) Tue Sep 8 06:10:12 2009 : accepted from localhost
client(1) Tue Sep 8 06:10:12 2009 : disconnected

In asterisk console i get the op as

[b]Launching ‘Festival’
– Executing [02@incoming:4] Festival(“SIP/100-09b82b60”, “hello sanju i am festival”) in new stack
Parsing /etc/asterisk/festival.conf
== Parsing ‘/etc/asterisk/festival.conf’: == Found
Text passed to festival server : hello sanju i am festival
Cache file exists, strln=25, strlen=25
Size OK
Reading from cache…
Passing data to channel…
Festival WV command
Stopping retransmission on ‘MDA2YjU1MmFkYzVjMTEyY2QwYzdiODg1YzFjNWVmNDU.’ of Response 2: Match Found

Set channel SIP/100-09b82b60 to write format slin[/b]

  1. In the /var/lib/asterisk/festivalcache there is some file being created as a part of festival cache, with file name 97C83A796EA9A6F5085FC643AD87A1

Plz, Really need help with this one.

Sanju

:arrow_right: Help

:question:

Hi!
Same issue here, did you find a solution?