Text-to-speech synthesizer having formant-rule and speech-parameter synthesis modes

A text-to-speech synthesizer comprises an analyzer that decomposes a sequence of input characters into phoneme components and classifies them as a first group of phoneme components or a second group if they are to be synthesized by a speech parameter or by a formant rule, respectively. Speech parameters derived from natural human speech are stored in first memory locations corresponding to the phoneme components of the first group and the stored speech parameters are recalled from the first memory in response to each of the phoneme components of the first group. Formant rules capable of generating formant transition patterns are stored in second memory locations corresponding to the phoneme components of the second group, the formant rules being recalled from the second memory in response to each of the phoneme components of the second group. Formant transition patterns are derived from the formant rule recalled from the second memory, and formants of the derived transition patterns are converted into corresponding speech parameters. Spoken words are digitally synthesized from the speech parameters recalled from the first memory as well as from those supplied from the converted speech parameters.

BACKGROUND OF THE INVENTION 
The present invention relates generally to speech synthesis systems, and 
more particularly to a text-to-speech synthesizer. 
Two approaches are available for text-to-speech synthesis systems. In the 
first approach, speech parameters are extracted from human speech by 
analyzing semisyllables, consonants and vowels and their various 
combinations and stored in memory. Text inputs are used to address the 
memory to read speech parameters and an original sound corresponding to an 
input character string is reconstructed by concatenating the speech 
parameters. As described in "Japanese Text-to-Speech Synthesizer Based On 
Residual Excited Speech Synthesis", Kazuo Hakoda et al., ICASSP '86 
(International Conference On Acoustics Speech and Signal Processing '86, 
Proceedings 45-8, pages 2431 to 2434), Linear Predictive Coding (LPC) 
technique is employed to analyze human speech into consonant-vowel (CV) 
sequences, vowel (V) sequences, vowel-consonant (VC) sequences and 
vowel-vowel (VV) sequences as speech units and speech parameters known as 
LSP (Line Spectrum Pair) are extracted from the analyzed speech units. 
Text input is represented by speech units and speech parameters 
corresponding to the speech units are concatenated to produce continuous 
speech parameters. These speech parameters are given to an LSP 
synthesizer. Although a high degree of articulation can be obtained if a 
sufficient number of high-quality speech units are collected, there is a 
substantial difference between sounds collected from speech units and 
those appearing in texts, resulting in a loss of naturalness. For example, 
a concatenation of recorded semisyllables lacks smoothness in the 
synthesized speech and gives an impression that they were simply linked 
together. 
According to the second approach, rules for formant are derived from 
strings of phonemes and stored in a memory as described in "Speech 
Synthesis And Recognition", pages 81 to 101, J. N. Holmes, Van Nostrand 
Reinhold (UK) Co. Ltd. Speech sounds are synthesized from the formant 
transition patterns by reading the formant rules from the memory in 
response to an input character string. While this technique is 
advantageous for improving the naturalness of speech by repetitive 
experiments of synthesis, the formant rules are difficult to improve in 
terms of constants because of their short durations and low power levels, 
resulting in a low degree of articulation with respect to consonants. 
SUMMARY OF THE INVENTION 
It is therefore an object of the present invention to provide a 
text-to-speech synthesizer which provides high-degree of articulation and 
high degree of flexibility to improve the naturalness of synthesized 
speech. 
This object is obtained by combining the advantageous features of the 
speech parameter synthesis and the formant rule-based speech synthesis. 
According to the present invention, there is provided a text-to-speech 
synthesizer which comprises an analyzer that decomposes a sequence of 
input characters into phoneme components and classifies them as a first 
group of phoneme components or a second group if they are to be 
synthesized by a speech parameter or by a formant rule, respectively. 
Speech parameters derived from natural human speech are stored in first 
memory locations corresponding to the phoneme components of the first 
group and the stored speech parameters are recalled from the first memory 
in response to each of the phoneme components of the first group. Formant 
rules capable of generating formant transition patterns are stored in 
second memory locations corresponding to the phoneme components of the 
second group, the formant rules being recalled from the second memory in 
response to each of the phoneme components of the second group. Formant 
transition patterns are derived from the formant rule recalled from the 
second memory. A parameter converter is provided for converting formants 
of the derived formant transition patterns into corresponding speech 
parameters. A speech synthesizer is responsive to the speech parameters 
recalled from the first memory and to the speech parameters converted by 
the parameter converter for synthesizing a human speech.

DETAILED DESCRIPTION 
In FIG. 1, there is shown a text-to-speech synthesizer according to the 
present invention. The synthesizer of this invention generally comprises a 
text analysis system 10 of well known circuitry and a rule-based speech 
synthesis system 20. Text analysis system 10 is made up of a 
text-to-phoneme conversion unit 11 and a prosodic rule procedural unit 12. 
A text input, or a string of characters is fed to the text analysis system 
10 and converted into a string of phonemes. If a word "say" is the text 
input, it is translated into a string of phonetic signs "s[t 120] ei [t 
90, f (0, 120) (30, 140) . . . ]", where t in the brackets [] indicates 
the duration (in milliseconds) of a phoneme preceding the left bracket and 
the numerals in each parenthesis respectively represent the time (in 
milliseconds) with respect to the beginning of a phoneme preceding the 
left bracket and the frequency (Hz) of a component of the phoneme at each 
instant of time. 
Rule-based speech synthesis system 20 comprises a phoneme string analyzer 
21 connected to the output of text analysis system 10 and a mode 
discrimination table 22 which is accessed by the analyzer 21 with the 
input phoneme strings. Mode discrimination table 22 is a dictionary that 
holds a multitude of sets of phoneme strings and corresponding synthesis 
modes indicating whether the corresponding phoneme strings are to be 
synthesized with a speech parameter or a formant rule. The application of 
the phoneme strings from analyzer 21 to table 22 will cause phoneme 
strings having the same phoneme as the input string to be sequentially 
read out of table 22 into analyzer 21 along with corresponding synthesis 
mode data. Analyzer 21 seeks a match between each of the constituent 
phonemes of the input string with each phoneme in the output strings from 
table 22 by ignoring the brackets in both of the input and output strings. 
Using the above example, there will be a match between the input characters 
"se" and "S[e]" in the output string and the corresponding mode data 
indicates that the character "S" is to be synthesized using a formant 
rule. Analyzer 21 proceeds to detect a further match between characters 
"ei" of the input string and the characters "ei" of the output string 
"[s]ei" which is classified as one to be synthesized with a speech 
parameter. If "parameter mode" indication is given by table 22, analyzer 
21 supplies a corresponding phoneme to a parameter address table 24 and 
communicates this fact to a sequence controller 23. If a "formant mode" 
indication is given, analyzer 21 supplies a corresponding phoneme to a 
formant rule address table 28 and communicates this fact to controller 23. 
Sequence controller 23 supplies various timing signals to all parts of the 
system. During a parameter synthesis mode, controller 23 applies a command 
signal to a parameter memory 25 to permit it to read its contents in 
response to an address from table 24 and supplies its output to the left 
position of a switch 27, and thence to a digital speech synthesizer 32. 
During a rule synthesis mode, controller 23 supplies timing signals to a 
formant rule memory 29 to cause it to read its contents in response to an 
address given by address table 28 into formant pattern generator 30 which 
is also controlled to provide its output to a parameter converter 31. 
Parameter address table 24 holds parameter-related phoneme strings as its 
entries, starting addresses respectively corresponding to the entries and 
identifying the beginning of storage locations of memory 25, and numbers 
of data sets contained in each storage location of memory 25. For example, 
the phoneme string "[s]ei" has a corresponding starting address "XXXXX" of 
a location of memory 25 in which "400" data sets are stored. 
According to linear predictive coding techniques, coefficients known as AR 
(Auto-Regressive) parameters are used as equivalents to LPC parameters. 
These parameters can be obtained by a computer analysis of human speech 
with a relatively small amount of computations to approximate the spectrum 
of speech, while ensuring a high level of articulation. Parameter memory 
25 stores the AR parameters as well as ARMA (Auto-Regressis Moving 
Average) parameters which are also known in the art. As shown in FIG. 2, 
parameter memory 25 stores source codes, AR parameters a.sub.i and MA 
parameters b.sub.i (where i=1,2,3, . . . N, N+1, . . . 2N). Data in each 
item are addressed by a starting address supplied from parameter address 
table 24. The source code includes entries for identifying the type of a 
source wave (noise or periodic pulse) and the amplitude of the source 
wave. A starting address is supplied from 24 to memory 25 to read a source 
code and AR and MA parameters in the amount as indicated by the 
corresponding quantity data. The AR parameters are supplied in the form of 
a series of digital data a.sub.1,a.sub.2,a.sub.3, . . . a.sub. N, 
a.sub.N+1, . . . a.sub.2N and the MA parameters as a series of digital 
data b.sub.1,b.sub.2, . . . b.sub.N, b.sub.N+1, . . . b.sub.2N and coupled 
through the right position of switch 27 to synthesizer 32. 
Formant rule address table 28 contains phoneme strings as its entries and 
addresses of the formant rule memory 29 corresponding to the phoneme 
strings. In response to a phoneme string supplied from analyzer 21, a 
corresponding address is read out of address table 28 into formant rule 
memory 29. 
As shown in FIG. 3, formant rule memory 29 stores a set of formants and 
preferably a set of antiformants that are used by formant pattern 
generator 30 to generate formant transition patterns. Each formant is 
defined by frequency data F (t.sub.i, f.sub.i) and bandwidth data B 
(t.sub.i, b.sub.i), where t indicates time, f indicates frequency, and b 
indicates bandwidth, and each antiformant is defined by frequency data AF 
(t.sub.i, f.sub.i) and bandwidth data AB (t.sub.i, f.sub.i). The formants 
and antiformants data are sequentially read out of memory 29 into formant 
pattern generator 30 as a function of a corresponding address supplied 
from address table 28. Formant pattern generator 30 produces a set of 
frequency and bandwidth parameters for each formant transition and 
supplies its output to parameter converter 31. Details of formant pattern 
generator 30 are described in pages 84 to 90 of "Speech Synthesis And 
Recognition" referred to above. 
The effect of parameter converter 31 is to convert the formant parameter 
sequence from pattern generator 30 into a sequence of speech synthesis 
parameters of the same format as those stored in parameter memory 25. 
As illustrated in FIG. 4, parameter converter 31 comprises a coefficients 
memory 40, a coefficient generator 41, a digital all-zero filter 42 and a 
digital unit impulse generator 43. Memory 40 includes a frequency table 50 
and a bandwidth table 51 for respectively receiving frequency and 
bandwidth parameters from the formant pattern generator 30. Each of the 
frequency parameters in table 50 is recalled in response to the frequency 
value F or AF from the formant pattern generator 30 and represents the 
cosine of the displacement angle of a resonance pole for each formant 
frequency as given by C=cos(2.pi.F/f.sub.s), where F is the frequency 
parameter of either a formant or antiformant parameter and f.sub.s 
represents the sampling frequency. On the other hand, each of the 
parameters in table 51 is recalled in response to the bandwidth value B or 
AB from the pattern generator 30 and represents the radius of the pole for 
each bandwidth as given by R=exp(-.pi.B/f.sub.s), where B is the bandwidth 
parameter from generator 30 for both formants and antiformants. 
Coefficient generator 41 is made up of a C-register 52 and an R-register 53 
which are connected to receive data from tables 50 and 51, respectively. 
The output of C-register 52 is multiplied by "2" by a multiplier 54 and 
supplied through a switch 55 to a multiplier 56 where it is multiplied 
with the output of R-register 53 to produce a first-order coefficient A 
which is equal to 2.times.C.times.R when switch 55 is positioned to the 
left in response to a timing signal from controller 23. When switch 55 is 
positioned to the right in response to a timing signal from controller 23, 
the output of R-register 53 is squared by multiplier 56 to produce a 
second-order coefficient B which is equal to by R.times.R. 
Digital all-zero filter 42 comprises a selector means 57 and a series of 
digital second-order transversal filters 58-1.about.58-N which are 
connected from unit impulse generator 43 to the left position of switch 
27. The signals A and B from generator 41 are alternately supplied through 
selector 57 as a sequence (-A.sub.1, B.sub.1), (-A.sub.2, B.sub.2), . . . 
(-A.sub.N, B.sub.N) to transversal filters 58-1.about.58-N, respectively. 
Each transversal filter comprises a tapped delay line consisting of delay 
elements 60 and 61. Multipliers 62 and 63 are coupled respectively to 
successive taps of the delay line for multiplying digital values appearing 
at the respective taps with the digital values A and B from selector 57. 
The output of impulse generator 43 and the outputs of multipliers 62 and 
63 are summed altogether by an adder 64 and fed to a succeeding 
transversal filter. Data representing a unit impulse is generated by 
impulse generator 43 in response to an enable pulse from controller 23. 
This unit impulse is successively converted into a series of impulse 
responses, or digital values a.sub.1 .about.a.sub.2N of different height 
and polarity as formant parameters as shown in FIG. 5, and supplied 
through the left position of switch 27 to speech synthesizer 32. Likewise, 
a series of digital values b.sub.1 .about.b.sub.2N is generated as 
antiformant parameters in response to a subsequent digital unit impulse. 
In FIG. 6, speech synthesizer 32 is shown as comprising a digital source 
wave generator 70 which generates noise or a periodic pulse in digital 
form. During a parameter synthesis mode, speech synthesizer 32 is 
responsive to a source code supplied through a selector means 71 from the 
output of switch 27 and during a rule synthesis mode it is responsive to a 
source code supplied from controller 23. The output of source wave 
generator 71 is fed to an input adder 72 whose output is coupled to an 
output adder 76. A tapped delay line consisting of delay elements 
73-1.about.73-2N is connected to the output of adder 72 and tap-weight 
multipliers 74-1.about.74-2N are connected respectively to successive taps 
of the delay line to supply weighted successive outputs to input adder 72. 
Similarly, tap-weight multipliers 75-1.about.75-2N are connected 
respectively to successive taps of the delay line to supply weighted 
successive outputs to output adder 76. The tap weights of multipliers 74-1 
to 74-2N are respectively controlled by the tap-weight values a.sub.1 
through a.sub.2N supplied sequentially through selector 70 to reflect the 
AR parameters and those of multipliers 75-1 to 75-2N are respectively 
controlled by the digital values b.sub.1 through b.sub.2N which are also 
supplied sequentially through selector 70 to reflect the ARMA parameters. 
In this way, spoken words are digitally synthesized at the output of adder 
76 and coupled through an output terminal 77 to a digital-to-analog 
converter, not shown, where it is converted to analog form. 
The foregoing description shows only one preferred embodiment of the 
present invention. Various modifications are apparent to those skilled in 
the art without departing from the scope of the present invention which is 
only limited by the appended claims. For example, the ARMA parameters 
could be dispensed with depending on the degree of qualities required.