Hi,
heute versuche ich Mbrola mit Asterisk zu vereinen.
apt-get install mbrola mbrola-de7
mkdir /usr/local/txt2pho
http://www.ikp.uni-bonn.de/forschung/phonetik/sprachsynthese/txt2pho/txt2pho.zip
unzip txt2pho.zip
txt2pho muss auf die Sprachdatei zugreifen können und ausführbar sein
ln -s /usr/share/mbrola/voices/de7 /usr/local/txt2pho/data/de7
chmod +x /usr/local/txt2pho/txt2pho
chmod +x /usr/local/txt2pho/pipefilt/pipefilt
ln -s /usr/local/txt2pho/txt2pho /usr/bin/txt2pho
ln -s /usr/local/txt2pho/pipefilt/pipefilt /usr/bin/pipefilt
Nun muss noch die txt2phorc angepasst werden
cp /usr/local/txt2pho/txt2phorc $HOME/.txt2phorc
Folgende Einträge müssen geändert werden
vim .txt2phorc
DATAPATH=/usr/local/txt2pho/data/
INVPATH=/usr/local/txt2pho/data/
Jetz einfauch per SSH neu einloggen und dann folgenden Befehl ausprobieren
echo "Hallo Welt" | txt2pho > test.pho | mbrola /usr/local/txt2pho/data/de7 test.pho test.wav
für die Integration in Asterisk einfach einen Testordner anlegen
mkdir /usr/share/asterisk/sounds/mbrola
chown asterisk:asterisk /usr/share/asterisk/sounds/mbrola
in der extensions.conf…
exten => s,1,Answer()
exten => s,n(ansage),System(rm /usr/share/asterisk/sounds/mbrola/test.gsm)
exten => s,n,System(echo "Hallo Welt" | txt2pho > /tmp/test.pho | mbrola /usr/local/txt2pho/data/de7 /tmp/test.pho /tmp/test.wav)
exten => s,n,System(sox /tmp/test.wav /usr/share/asterisk/sounds/mbrola/test.gsm)
exten => s,n(ansage),Playback(mbrola/test)