etc-gentoo/speech-dispatcher/modules/dtk-generic.conf

85 lines
3.3 KiB
Plaintext
Raw Normal View History

# DECTalk software 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. Note that this is not an optimal solution, but
# it's reported to work.
#
# Please note that DECTalk software is currently *not* Free Software.
# You might want to look at Festival instead.
# 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 $LANG, $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 '\'.
# NOTE1:
# Users of previous versions of this configuration file need to rename their
# DECTalk command-line program back to `say', since speech dispatcher no
# longer installs a program with this name. Thus, the reason for
# renaming the client in the first place is gone.
# NOTE2:
# DECTalk software version 4.61 is known to occasionally stop reading,
# due to a buffering problem with the `say' program. So far, the only way
# I know of to fix this is to upgrade from DECTalk 4.61 to DECTalk 5.
GenericExecuteSynth \
"echo \"[:n$VOICE][:ra $RATE][:dv ap $PITCH]\" >$TMPDIR/dtk-speak.txt \
&& echo \'$DATA\' | fmt >>$TMPDIR/dtk-speak.txt && say -fi $TMPDIR/dtk-speak.txt"
# 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.
# We need to strip `[' and `]', as these are DECTalk's
# command characters.
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.
# NOTE:
# There is a multilingual version of DECTalk software, however I
# do not have it. Thus, only the US English voices are defined here.
# If you know about the other languages, please let us know on
# <speechd@freebsoft.org>
AddVoice "en" "MALE1" "p"
AddVoice "en" "MALE2" "h"
AddVoice "en" "MALE3" "d"
AddVoice "en" "FEMALE1" "b"
AddVoice "en" "FEMALE2" "u"
AddVoice "en" "FEMALE3" "w"
AddVoice "en" "CHILD_MALE" "k"
# These parameters set _rate_ and _pitch_ 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
# NOTE:
# Because DECTalk cannot accept float values, we must force them to be
# integers.
GenericRateForceInteger 1
GenericPitchForceInteger 1
GenericRateAdd 338
GenericPitchAdd 225
# (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 262
GenericPitchMultiply 175
# Debug turns debugging on or off
# See speechd.conf for information where debugging information is stored
# Debug 0