Ich habe verschiedenen Sachen ausprobiert, um einen meiner PIs sprechen zu lassen.
Eine Bekannte kann nicht mehr so gut sehen, und hier wollte ich ein System,d as ihr die Nummern der Anrufer vorliest, oder, wenn diese im FritzBox-Telefonbuch steht, den jeweiligen Telefonbucheintrag.
Es war nicht so ganz einfach, den PI zum sprechen zu bringen, denn als Tonausgabe soll ein per USB angeschlossenr Lautsprecher dienen.
Und "espeak" oder auch "festival" mögen eine per USB angeschlossenen Soundausgaben.
Ich habe dann alsa/aplay so konfiguriert, dass die den jeweiligen Krach ausgeben.
Damit auch Ton, den es nur in Mono gibt, ausgegeben wird, habe ich in der /etc/asound.conf die folgenden Einträge gemacht:
In der Datei ~/.asoundrc steht:
pcm.card0 {
type hw
card Audio
}
pcm.mono {
type route
slave.pcm card0
slave.channels 2
ttable.0.0 0.5
ttable.0.1 0.5
ttable.1.0 0.5
ttable.1.1 0.5
}
Alles anzeigen
(Das in die /etc/asound.conf einzutragen, hat nicht geholfen.)
Ich habe mir die deutschen mbrola-Stimmen aus http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html besorgt.
Dabei das Binary von "mbrola" nach /usr/bin kopiert, die Stimmen nach /usr/share/mbrola. Jede ZIP einer Stimme einfach hier hinein entpacken, damit werden die benötigten Unterverzeichnisse erstellt.
Jetzt kann man den PI auf das USB-Gerät reden lassen:
Die Bekannte hat eine ja eine Fritzbox, die muss noch darauf eingestellt werden, dann man die Anrufe über den Port 1012 mitbekommt, und dass man den Namen aus dem Telefonbuch bekommt. Das muss also noch heruntergeladen werden (dafür habe ich schon ein Script), und die XML-Datei muss noch ausgelesen werden.
Aber der PI spricht mit mir