# 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 # 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