安装和配置Festival以使用Asterisk PBX
与Asterisk Pbx或者用于路由呼叫的任何媒体服务器一起使用时,文本到语音的转换非常重要。文本到语音转换工具用于将单词字符串转换为音频,然后可以使用该系统向呼叫者播放。文字转语音不能代替专业录制的提示。
Festival是免费的,可在所有Linux系统上使用文本转语音实用程序。不建议将其用于生产,因为其声音质量不够清晰,但经常用于开发和测试目的。对于生产用途,我们可以查看Cepstral。
在CentOS和RHEL上安装Festival
sudo yum install epel-release sudo yum install festival
在Ubuntu上安装Festival
sudo apt update sudo apt-get install festival
配置Festival与Asterisk一起使用
安装Festival之后,我们希望对其进行配置以允许与Asterisk PBX一起使用。为此,我们只需要编辑/usr/share/festival /目录中的Festival.scm文件。使用我们拥有的任何文本编辑器打开文件。我将使用vim:
$sudo vim /usr/share/festival/lib/festival.scm
在最后一行的上方添加以下文本; (提供节日):
(define (tts_textasterisk string mode) (let ((wholeutt (utt.synth (eval (list 'Utterance 'Text string))))) (utt.wave.resample wholeutt 8000) (utt.wave.rescale wholeutt 5) (utt.send.wave.client wholeutt)))
保存更改并重新启动Festival服务器
sudo festival_server 2>&1 > /dev/null &
转到Asterisk源目录,并验证是否在"应用程序"标题下选择了app_festival应用程序。如果没有使用,请使用make menuselect命令安装Festival()diaplan复本。
$sudo make menuselect
确保其选中。
然后运行:
sudo make install
必须配置Asterisk以连接到Festival.conf文件上的Festival服务器。在Asterisk源目录中有一个示例配置文件,请将其复制到/etc/asterisk /目录中然后进行编辑。
sudo cp configs/samples/festival.conf.sample /etc/asterisk/festival.conf
如果两个服务器均在本地计算机上运行,则默认配置足以连接到Festival服务器。如果Festival服务正在远程设备上运行,请很好地更改主机参数。所有其他配置参数将保留为默认值。
sudo vim /etc/asterisk/festival.conf
必要时进行更改。
要验证Festival()拨号计划应用程序正在运行,请在Asterisk命令行界面上执行以下命令。
core show application festival
如果没有任何输出,请首先加载app_festival.so模块:
module load app_festival.so module show app_festival.so
我们可以在/usr/lib/asterisk/modules中检查文件的可用性。如果我们使用本教程来安装Asterisk,则可能已经意识到我编译的星号的libdir为libdir =/usr/lib64. 在这种情况下,模块将打开
ls -lh /usr/lib64/asterisk/modules/app_festival.so
其他:
ls -lh /usr/lib/asterisk/modules/app_festival.so
从这里。我们可以创建如下所示的简单拨号计划进行测试:
exten => 110,1,Verbose(2,Performing Festival test) same => n,Answer() same => n,System(echo "We are now doing Festival Test after successful installation" | /usr/bin/text2wave -scale 1.5 -F 8000 -o /tmp/test.wav) same => n,Playback(/tmp/test) same => n,System(rm -f /tmp/test.wav) same => n,Hangup()
如果我们拨打分机号码110,它将自动记录字符串中的test.wav音频文件。成功安装后,我们现在正在执行Festival Test,并将其回放给我们。