Re: [orca-list] voices with speech dispatcher
- From: Hermann <meinelisten onlinehome de>
- To: Alonzo <mariachiac aim com>
- Cc: orca-list gnome org
- Subject: Re: [orca-list] voices with speech dispatcher
- Date: Fri, 27 Feb 2009 16:55:49 +0100
On 27.02.2009 at 16:22:01 "Alonzo" <mariachiac aim com> wrote:
Hello list,
I've installed speech-dispatcher and have it working espeak. However i can't get it to work with festival
or the mbrola voices
Did you install the festival packages:
sudo aptitude install festival
After finishing do:
sudo /etc/init.d/festival start
to start the festival server.
To have it run permanently do:
sudo update-rc.d festival defaults
Mbrola is a bit tricky: You have to insert a line in
/etc/speech-dispatcher/speechd.conf that looks like the espeak-generic
line but replace "espeak" by "mbrola".
Note: The keyword must be "mbrola-generic".
Then you have to create a mbrola-generic.conf in
/etc/speech-dispatcher/modules.
It may look like this:
# Espeak-mbrola output module is based on the generic plugin for Speech
# Dispatcher. It means there is no C code written explicitly for
# this plugin, all the specifics are handled in this configuration
# and we call a simple command line client to perform the actual
# synthesis. Use this config file with the sd_generic output module.
#
# IMPORTANT: The audio output method relies on ALSA Player (aplay)
# being installed. If this is not the case, consider installing it
# or replace the aplay command in the GenericExecuteString below
# with play or similar.
#
# GenericExecuteString to what's the name of this utility on your
# system (it might be "speak")
# GenericExecuteSynth is the shell command that should be
# executed in order to say some message. This command must
# stop saying the message on SIGKILL, otherwise it's useless.
# You can use the variables $LANGUAGE, $VOICE, $PITCH and $RATE
# which will be substituted for the appropriate value (you
# can modify this value, see other parameters).
# The command can be split into more lines, if necessary, using '\'.
GenericExecuteSynth \
"echo \"$DATA\"#|\
/usr/lib/mbrola4sbl/numfilt |\
/usr/local/bin/txt2pho -m |\
/usr/local/bin/mbrola -t $RATE -e /usr/lib/mbrola4sbl/voices/$VOICE - /dev/shm/mbrola.wav && aplay
/dev/shm/mbrola.wav"
# GenericStripPunctChars is a list (enclosed in doublequotes) of
# all the characters that should be replaced by whitespaces in
# order not to be badly handled by the output module or misinterpreted
# by shell.
# GenericStripPunctChars "~ #$%^&*+=|\\/<>[]_`"
# AddVoice specifies which $VOICE string should be assigned to
# each language and symbolic voice name. All the voices you want
# to use must be specified here.
AddVoice "de" "MALE1" "de2"
AddVoice "de" "MALE2" "de4"
AddVoice "de" "MALE3" "de2"
AddVoice "de" "FEMALE1" "de3"
# These parameters set _rate_, _pitch_, and _volume_ conversion. This is
# part of the core of the definition of this generic output
# module for this concrete synthesizer, it's not intended to
# be modified by common users.
# The resulting rate (or pitch) has the form:
# (speechd_rate * GenericRateMultiply) + GenericRateAdd
# while speechd_rate is a value between -100 (lowest) and +100 (highest)
# You have to define some meaningful conversion for each synthesizer
# Here's the mapping from SSIP (Speech Dispatcher) to ESpeak (v1.10):
#
# SSIP Range SSIP Default ESpeak Range ESpeak Default
# ----------- ------------ ------------ --------------
# Rate -100 to 100 0 80 to 320 160
# Pitch -100 to 100 0 0 to 99 50
# Volume -100 to 100 0 0 to 20 10
#
# The SSIP defaults are actually controlled via DefaultRate, DefaultPitch, and
# DefaultVolume in the speechd.conf file.
GenericRateAdd 1
GenericPitchAdd -3
GenericVolumeAdd 10
# (These values are multiplied by 100, because DotConf currently
# doesn't support floats. So you can write 0.85 as 85 and so on.)
GenericRateMultiply -1
GenericPitchMultiply 50
GenericVolumeMultiply 10
# If the client program can't handle floats, you will have to
# use these two options to force integers as the parameters
# 1 means force integers, 0 means do nothing (write floats).
GenericRateForceInteger 0
GenericPitchForceInteger 1
GenericVolumeForceInteger 1
# Note that SSIP rates < -50 are spoken at -50.
# Debug turns debugging on or off
# See speechd.conf for information where debugging information is stored
Debug 0
Important! You have to adjust all parameters according to your Mbrola
installation; so see this only as a template!
Hermann
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]