85 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			85 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								# 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
							 | 
						||
| 
								 | 
							
								
							 |