[0001] This invention relates to a musical tone producing device of a waveshape memory readout
type and, more particularly, to a control for realizing a tone level control of a
waveshape in accordance with a tone level parameter such as a key touch.
[0002] The precharacterizing part of claim 1 refers to a musical tone production device
as disclosed in an information brochure "PPG" wave 2.2 - digital wave synthesis with
analog filtering - polisequencer - expandable to the full wave term system" issued
by the PPG Company. This musical tone producing device comprises a digital waveshape
memory for storing a plurality of different waveshapes, and an analog filter for filtering
the waveforms outputted by the waveshape memory. The instrument further comprises
an ADSR-waveshape generator for controlling the wavetables contained in the waveshape
memory and the filters. The instrument needs voluminous analog filters. Further, the
accuracy of the filters is low in case of small amplitudes of the waveform signals
fed to the filters and there arises the problem that the filter characteristics may
vary in dependance from the envelope amplitude of the waveform.
[0003] It has recently been practiced in the art to store a full waveshape from the start
to the end of sounding of the tone or a rise portion and a part of subsequent waveshape
portion and, in the case of storing the former, produce a tone of a good quality by
once reading out the full waveshape and, in the case of storing the latter, produce
a tone of a good quality by reading out a waveshape of a rise portion once and then
the part of subsequent waveshape repeatedly.
[0004] US-A-4 383 462 discloses an electronic musical instrument that aims producing a tone
of a high quality by prestoring a full waveshape from rising to termination of sounding
of the tone in a memory and reading out the waveshape therefrom. In the waveshape
memory WM31 in Fig. 3 of this United States patent, a full waveshape is stored and
this full waveshape is read out in response to a signal KD which represents a key
depression timing. Such system in which the full waveshape is stored requires a large
memory capacity.
[0005] In order to improve this point, it has been conceived to store a part of waveshape
of plural periods out of the complete sounding period in a waveshape memory and obtain
a tone signal by repeatedly reading out the partial waveshape. In the above US-A-4
383 462, an example of such improvement is shown in Fig. 6. A complete waveshape in
the attack period is stored in the waveshape memory WM61 and at least one fundamental
period of a tone waveshape is stored in the waveshape memory WM62. An attack waveshape
is read out from the memory WM61 in response to the key depression (KD signal) and
the tone waveshape of the fundamental period is repeatedly read out from the memory
WM62 after completion of the readout of the attack waveshape (IMF signal) until the
end of tone generation (DF signal).
[0006] If such waveshape memory system is applied without any modification for realizing
various tone color change corresponding to tone color change parameters such as the
key touch or tone pitch, many different waveshapes in a memory must be prepared in
correspondence to all kinds of key touches or tone pitches used. This requires a tremendous
memory capacity and therefore is unrealistic.
[0007] It is then conceivable to prepare two kinds of continuous waveshapes such, for example,
as a continuous waveshape corresponding to the strongest touch and a continuous waveshape
corresponding to the weakest touch when key touch strength is used as a tone color
change parameter, in a waveshape memory and read out the two waveshapes simultaneously
and interpolate them in accordance with the tone color change parameter (i.e., touch
strength) thereby producing a new waveshape corresponding to the tone color change
parameter (touch strength). In actuality, however, the interpolation would be meaningless
unless the two waveshapes to be interpolated was in phase with each other. Since duplicates
of waveshapes of tones produced by an actual performance are used as the two types
of waveshapes to be prepared in the waveshape memory, the phases of the two waveshapes
are very different in general so that the two waveshapes which have been brought in
phase with each other at the start point thereof will be greatly out of phase several
seconds later. This system, therefore, is also unrealistic.
[0008] From GB-A-2 097 573, an electronic musical instrument is known, wherein a tone generator
generates musical tone signals each represented by sampled values, corresponding to
depressed keys. An accumulator accumulates sampled values of the musical tone signals
at predetermined timings. The output of the accumulator is supplied to a digital filter
for modifying said output in accordance with the amplitude-frequency characteristic
of a predetermined formant characteristic. The musical tone is produced based on the
output of the digital filter circuit whereby the formant characteristic is imparted
to the musical tone. The filter characteristic can be changed by changing tone color
parameters stored in a tone color parameter memory. This known musical instrument
has not a waveshape memory storing amplitude samples of a musical tone waveshape.
If the tone color of a tone to be produced should vary during tone production, it
is necessary to change the selection of tone parameters. As long as the same tone
parameters are supplied to the digital filter, the tone color remains unchanged. Thus,
it is not possible to change the tone color of a tone during subsequent waveshape
periods.
[0009] US-A-4 267 761 describes a digital tone synthesizer using digital data representing
the amplitudes of a predetermined fixed number of sample points along one cycle of
the waveshape of a musical tone. The sampling frequency and the pitch of the tone
are controlled by an oscillator, and the digital data are transferred to a digital-to-analog
converter at the sampling rate. The digital filter operates as a low-pass or high-pass
filter in which the cut-off frequency is a predetermined harmonic of the pitch frequency
of the tone. Thus, any tone of the musical scale may be filtered to modify the harmonic
content independently of the pitch of the tone. The waveshape memory stores only one
cycle of the tone waveshape.
[0010] In US-A-4 185 529, an electronic musical instrument is described, wherein a square
wave generator generates square waves having an amplitude corresponding to the depressed
key. The square waves are supplied to a digital filter. The output of the digital
filter is fed to a multiplier controlled by an envelope generator. Thus, a tone with
a desired envelope is produced. However, the tone color of the tone does not change
between two subsequent cycles of the waveshape.
[0011] US-A-3 819 843 describes a musical instrument having touch detecting means for detecting
the strength of a key touch. The amplitudes of the tone to be produced vary according
to the strength of the key touch.
[0012] It is the object of the present invention to realize an effective tone level control
by a relatively small-scale and low-cost construction in a musical tone producing
device of the full-waveshape read-out type with good tone quality.
[0013] This object is solved, according to the invention, by the features of the claim.
[0014] The tone level characteristics can be varied with a considerable degree of freedom
by only changing the parameter called "coefficient" without changing the circuit construction.
On the other hand, the musical tone producing device employing a waveshape memory
storing the full waveshape or the partial waveshape having plural period as described
above can readily obtain a tone of a good quality but its circuit construction tends
to become large. The present invention enables a musical tone producing device employing
such a waveshape memory to realize a level control corresponding to the key touch
without enlarging the circuit construction and by simply adding a level parameter
memory and besides obtain a tone of a good quality capable of such various tone color
change.
[0015] It is another feature of the invention to be able to realize a high-fidelity change
of a tone color with time by changing the filter characteristics as time elapses.
To change the tone color with time is generally troublesome in a musical tone producing
device employing the waveshape memory storing a full waveshape or a partial waveshape
as described above. According to this invention, however, not only the steady tone
color change but a framewise change of the tone color may be performed in the musical
tone producing device.
[0016] More precisely, the second feature of the invention is to divide the full waveshape
from the start to the end of sounding into a plurality of frames along a time axis,
prepare a filter characteristics parameter independently for each of these frames,
and set the filter characteristics of the digital filter independently for the respective
frames in accordance with this filter characteristics parameter. The filter characteristics
parameter for each frame is determined separately in accordance with the tone color
change parameter such as the key touch or the tone pitch of the tone to be generated.
[0017] The present invention is applicable to tone color change controls including a touch
response control in which the tone color and tone level are controlled in accordance
with the key touch strength and a key scaling control in which the tone color and
tone level are controlled in accordance with the tone pitch or tone range of a depressed
key.
[0018] Accordingly, the strength of the key touch, the tone pitch or tone range of the depressed
key, or other various factors contributing to the tone color change may be utilized
as the tone color change parameter.
[0019] The filter characteristics parameter corresponding to each tone color change parameter
should preferably be determined to have a frequency-amplitude characteristic corresponding
to the difference between a spectrum of a waveshape (reference waveshape) prepared
in a waveshape memory and a spectrum of a waveshape representing a desired tone color
change. By this arrangement, a waveshape of a good quality closely resembling a desired
waveshape can be derived from the digital filter. The filter characteristics parameter
for each frame can likewise be determined according to the difference in spectrum
with respect to each frame.
[0020] According to this invention, a waveshape of a good quality read out from a waveshape
memory is filter-controlled in accordance with filter characteristics corresponding
to a desired tone color change parameter and, accordingly, even if only one kind of
waveshape of a good quality is stored in the waveshape memory, a waveshape of the
same good quality can be produced on the basis of this stored waveshape with various
tone level changes. The invention therefore can advantageously realize such tone level
change of a good quality with a relatively small and low-cost device.
[0021] For general theory about the digital filter, detailed description is found in literature
such as "Digital Processing of Signals" written by Bernord Gold and Charles M. Rader
and "Digital Signal Processing" written by Alan V. Oppenheim and Ronald W. Schafer.
Fig.1 is an electrical block diagram showing an embodiment of the invention;
Fig. 2a is a diagram showing an example of the full waveshape of a desired waveshape
omitting a part thereof;
Fig. 2b is a diagram showing an example of the full waveshape of a desired waveshape
omitting a part thereof;
Fig. 3a is a diagram showing an example of spectra in the waveshape of Fig. 2a or
in a certain frame of the waveshape of Fig. 2a;
Fig. 3b is a diagram showing an example of spectra in the waveshape of Fig. 2b or
in a frame of the waveshape of Fig. 2b, which frame corresponds to the frame in fig.
3a;
Fig. 3c is a diagram showing spectrum difference between the spectra shown in Fig.
3a and that shown in Fig. 3b;
Fig. 4a is a diagram showing an example of a waveshape derived by changing the envelope
level of the desired waveshape as shown in Fig. 2a to a substantially constant level
omitting a part thereof;
Fig. 4b is a diagram showing an example of a waveshape derived by changing the envelope
level of the reference waveshape as shown in Fig. 2b to a substantially constant level,
omitting a part thereof;
Fig. 5 is an electrical block diagram showing a second embodiment of the invention;
Fig. 6 is a diagram showing an example of an interpolation function corresponding
to the degree of key touch stored in a level parameter memory of Fig. 5; and
Fig. 7 is an electrical block diagram showing a modified example of the level parameter
memory of Fig. 5.
An embodiment of the present invention will now be described with reference to the
accompanying drawings.
[0022] Fig. 1 shows the first embodiment of the invention. A keyboard is provided as means
for designating tone pitch of a tone to be generated. The touch given to a depressed
key in the keyboard is detected by a touch detection device and touch detection data
is used as tone color change parameter to produce a tone waveshape having tone color
and level characteristics corresponding to the degree of the touch. There are various
types of touch detection devices among which a type of device detecting the speed
of key depression, a type detecting the acceleration of key depression (i.e., a key
depressing force) and a type detecting the pressure of key depression are well known.
The first type of device is disclosed in US-A-3 819 844, the second type in US-A-3
651 730 and the third type in US-A-3 965 789 respectively and detailed description
of these devices will be omitted. A waveshape memory 12A prestores a full waveshape
of the rise portion of the tone and/or full waveform subsequent to the rise portion
until completion of sounding of the tone (i.e., a full waveshape from the start to
the end of sounding of the tone) in correspondence to a certain reference degree of
key touch (e.g., the strongest touch). The full waveshape data consists of digital
data. An address data generation circuit provided between the keyboard and the waveshape
memory supplies to the waveshape memory 12A address data to read out the full waveshape
from the start to the end of sounding of the tone from the waveshape memory 12A. For
example, an address data generated in the address data generation circuit is immediately
reset to its initial value in response to a key-on pulse produced upon depression
of a certain key on the keyboard, and the address data generated sequentially changes
at a rate corresponding to a tone pitch designated by data representing the depressed
key. The address data generated by this address data generation circuit is applied
to the waveshape memory 12A whereupon the waveshape data stored in the memory 12A
are sequentially read out.
[0023] The full waveshape read out from the waveshape memory 12A is divided into a plurality
of frames along a time axis. The filter characteristics parameter memory 17A generates
filter characteristics parameter frame by frame and supplies them to the digital filter
14. For identifying the frame, a part of the address data generated by the address
data generation circuit 13 is utilized as frame address data. The filter characteristics
parameter memory 17A prestores a set of filter characteristics parameters corresponding
to each frame for each degree of the key touch and a set of filter characteristics
parameters is selected in response to touch detection data (i.e., tone color change
parameter) provided by the touch detection device 11. Responsive to the frame address
data provided by the address generation circuit which functions also as the frame
identifying means, a filter characteristics parameter corresponding to one frame is
selectively read out of the selected set of parameters and supplied to the digital
filter 14.
[0024] The filter characteristics parameter for each frame is determined depending upon
spectrum difference between the waveshape (reference waveshape) prepared by the waveshape
memory 12A and the desired waveshape for the particular frame. Processings made prior
to this determination are as follows:
[0025] Assume that a desired waveshape (full waveshape from the start to the end of sounding
of the tone) corresponding to a certain degree of key touch (designated "touch A",
e.g., a relatively weak touch) is as shown in Fig. 2a and a reference waveshape to
be prepared in the waveshape memory 12A (e.g., the waveshape corresponding to the
strongest touch) is as shown in Fig. 2b. The example in these figures is a piano tone
having a percussive envelope. Such desired waveshape and reference waveshape are obtained
by an actual piano performance. The desired waveshape and the reference waveshape
are of the same frequency (same pitch). The full waveshape of the reference waveshape
which has been prepared in this manner is divided into a plurality of frames (time
frames) and the desired waveshape is also divided in correspondence to these frames.
This division of frames is not necessarily made in equal time interval but may be
of a suitable time interval according to the shape of the waveshape. In the example
shown in the figures, the full waveshape is divided in 7 frames of 0-6. Then, the
following processings 1-4 are preformed:
Processing 1
[0026] Spectrum analysis is performed frame by frame with respect to the desired waveshape
(Fig. 2a) and the reference waveshape (Fig. 2b). For example, in frame 0, spectrum
of the desired waveshape becomes one as shown in Fig. 3a whereas spectrum of the reference
waveshape becomes one as shown in Fig. 3b.
Processing 2
[0027] Difference of the two spectra for the same frame (i.e., the spectrum of the reference
waveshape minus the spectrum of the desired spectrum) analized in processing 1 is
computed frame by frame. For example, spectrum difference in frame 0 becomes one shown
in Fig. 3c.
Processing 3
[0028] The above described processings 1 and 2 are performed upon changing the degree of
key touch of the desired waveshape (i.e., changing to touch B,C,D ...) to obtain spectrum
difference for each frame for the respective touches.
Processing 4
[0029] Filter characteristics parameters determining filter characteristics corresponding
to spectrum differences for respective frames corresponding to the respective touches
computed by the processings 2 and 3 are computed.
[0030] After completing the above described prior processings, the full waveshape of the
reference waveshape is stored in the waveshape memory 12A and filter characteristics
parameters for the respective frames corresponding to the respective touches obtained
in the processing 4 are stored in the filter characteristics parameter memory 17A.
In this case, different addresses are assigned to respective sample points of the
full waveshape data stored in the waveshape memory 12A and different frame addresses
are assigned to address groups consisting of plural addresses divided according to
the frame division. The address data generation circuit is adapted to produce predetermined
frame address in accordance with values of the generated address data. Alternatively,
an encoding circuit generating the frame address data in accordance with the value
of the address data may be provided separately from the address data generation circuit
as the frame identifying means.
[0031] Since the digital filter 14 modifies the reference waveshape in accordance with a
filter characteristic parameter corresponding to the spectrum difference between the
reference waveshape read out from the waveshape memory 12A and the desired waveshape,
a waveshape signal closely resembling the desired waveshape can be obtained. This
filter characteristics change timewise by frames so that the desired waveshape can
be simulated accurately. Determination of the filter characteristic parameter by frames
facilitates the operation for determining the parameter.
[0032] A level parameter memory 18 modifies the level of the output signal of the digital
filter 14 by a multiplier 19 in accordance with a level parameter read out from this
memory 18. The level parameter memory 18 stores sets of level parameters for the respective
frames prepared for several degrees of touch. In response to the touch detection data
a set of level parameters is selected and, in response to the frame address data,
a level parameter corresponding to one frame is read out from the selected set. Aside
from the spectrum control a uniform level control by frames can be made whereby accuracy
of reproduction of the desired waveshape is improved.
[0033] The reference waveshape and desired waveshape which are subjected to the prior processings
1-4 have actual envelopes as shown in Figs. 2a and 2b. For this reason, if touch for
the desired waveshape is weak, the amplitude level stays at a relatively low level
throughout the full waveshape. Even in the waveshape corresponding to a strong touch
such as the reference waveshape, the amplitude level is reduced in the last frame.
If the prior processings 1-4 are performed in this small or reduced level of amplitude,
width of change of the determined filter characteristics parameter becomes relatively
small resulting in remarkable decrease in accuracy. An attempt to broaden a dynamic
range in the data expression of the filter characteristics parameter with a view to
improving accuracy under such condition would result in the disadvantage that the
number of bit required increases tremendously.
[0034] Therefore, waveshapes having envelopes of a substantially constant level E₀ are employed
as the desired waveshape and reference waveshape as shown in Figs. 4a and 4b. Fig.
4a shows a waveshape derived by changing the amplitude level of the desired waveshape
as shown in Fig. 2a corresponding to the desired touch to the predetermined level
E₀ without changing the waveshape of each period. Fig. 4b likewise shows a waveshape
derived by changing the amplitude level of the reference waveshape as shown in Fig.
2b corresponding to the reference touch to the predetermined level E₀ without changing
the waveshape of each period. Instead of changing the amplitude level to the constant
level E₀ at each period, waveshapes of a constant level envelope simulating those
Figs. 4a and 4b may be obtained by multiplying the ratio of an average level to the
level E₀ for each frame of the waveshapes shown in Figs. 2a and 2b. The maximum amplitude
level of the strongest touch may preferably be chosen as the constant level E₀.
[0035] In the foregoing manner, the envelope levels of the reference waveshape and the desired
waveshape which are subjected to the prior processings 1-4 are changed to substantially
constant level E₀ and the same processings as the prior processings 1-4 are performed
with respect to the changed waveshapes to obtain filter characteristics parameters
for the respective frames corresponding to the respective degrees of touch. Since
the filter characteristics parameters thus obtained have been derived with respect
to the maximum amplitude level, there arise no such problems as the above described
decrease in accuracy due to reduction in the amplitude level or undue increase in
the number of data bit.
[0036] The following prior processings 5-7 are performed after the above processings 1-4:
Processing 5
[0037] The average level for each frame is computed with respect to the desired waveshape
shown in Fig. 2a.
Processing 6
[0038] Difference between the average level for each frame of the desired waveshape computed
in the processing 5 and the average level for each frame of the desired waveshape
whose level has been changed to the constant level E₀ as shown in Fig. 4a (substantially
E₀ in any frame) is computed.
Processing 7
[0039] The processings 5 and 6 are performed upon changing the degree of key touch of the
desired waveshape to obtain the level differences for respective frames corresponding
to the respective touches.
[0040] Data corresponding to the previously obtained level differences for the respective
frames corresponding to the respective degrees of touch is stored in the level parameter
memory 18 as the level parameter. The reference waveshape having the envelope changed
to the substantially constant level E₀ as shown in Fig. 4b is stored in the waveshape
memory 12A. Filter characteristics parameter obtained on the basis of the reference
waveshape whose level has been changed to the substantially constant level E₀ as described
above and the desired waveshapes stored in the filter characteristic parameter memory
17A. By this construction, a waveshape signal simulating the desired waveshape whose
envelope has been changed to the constant level E₀ as shown in Fig. 4a is provided
by the digital filter 14 and a waveshape simulating the desired waveshape as shown
in Fig. 2a is provided by the multiplier 19. Since this embodiment is capable of accurately
determining the filter characteristics parameter with a relatively small number of
bits, reliability of the filter control is improved and the spectrum construction
of the desired waveshape can be accurately reproduced. The multiplier 19 may be provided
on the input side of the digital filter 14. Addition and subtraction may be made instead
of the multiplication.
[0041] Fig. 5 shows the second embodiment of the invention with respect only to the modified
portions in the embodiment shown in Fig. 1. In the second embodiment, interpolation
means 20 is added. By interpolating the output of the waveshape memory 12B and the
output of the digital filter 14 at a ratio corresponding to the degree of key touch
(i.e., tone color change parameter), tone color change corresponding to the key touch
is realized.
[0042] The waveshape memory 12B stores a waveshape corresponding to the strongest touch.
The filter characteristics parameter memory 17B stores only a set of filter characteristics
parameters obtained by performing the above described processings 1,2 and 4 using
the waveshape corresponding to the strongest touch as the reference waveshape and
the waveshape corresponding to the weakest touch as the desired waveshape. This memory
17B is accessed by the frame address data so that the waveshape corresponding to the
weakest touch is produced by the digital filter 14.
[0043] The interpolation circuit 20 interpolates the gap between the waveshape corresponding
to the strongest touch read out from the waveshape memory 12B and the waveshape corresponding
to the weakest touch provided by the digital filter 14 at a rate corresponding to
the touch detection data thereby producing new waveshapes corresponding to respective
degrees of touch. Since the waveshape corresponding to the weakest touch, which is
one of the waveshapes to be subject to the interpolation, is produced by filtering
the output of the waveshape memory 12B which is the other waveshape subject to the
interpolation, so that the two waveshapes subject to the interpolation are substantially
in phase with each other. Accordingly, this second embodiment can advantageously introduce
the interpolation techniques.
[0044] The interpolation means 20 comprises a level parameter memory 21, a multiplier 22
for multiplying a first level parameter k1 read out from this memory 21 with the output
signal of the waveshape memory 12B, a multiplier 23 for multiplying a second level
parameter k2 read out from the memory 21 with the output of the digital filter 14
and an adder 24 adding the outputs of the multipliers 22 and 23. The level parameter
memory 21 basically stores the level parameters k1 and k2 which are of characteristics,
as shown in Fig. 6, which change in opposite directions with the degree of touch and
produces the level parameters k1 and k2 corresponding to the degree of touch indicated
by the touch detection data. Accordingly, the weaker the touch, the smaller the value
of the first level parameter k1 and the larger the value of the second level parameter
k2 so that the waveshape corresponding to the weakest touch provided by the digital
filter 14 and the waveshape corresponding to the strongest touch provided by the memory
12B are combined together at a ratio in which the content of the former is higher
than the content of the latter. Conversely, the stronger the touch, the larger the
value of k1 and the smaller the value of k2 so that the waveshape corresponding to
the strongest touch (output of the memory 12B) and the waveshape corresponding to
the weakest touch (output of the filter 14) are combined together at a ratio in which
the content of the former is higher than the content of the latter. As a result, interpolation
corresponding to the degree of touch is performed.
[0045] Data to be stored in the waveshape memory 12B and the filter characteristics parameter
memory 17B may be either one determined according to the first embodiment. In a case
where the data is one determined according to the second embodiment, the waveshape
memory 12B produces a strongest touch corresponding waveshape having a predetermined
envelope which changes with time (see Fig. 2b) and the digital filter 14 produces
a weakest touch corresponding waveshape signal having a predetermined envelope which
changes with time (see Fig. 2a). In this case, the level parameter memory 21 may produce
level parameters k1 and k2 having the above described interpolation function.
[0046] In a case where data to be stored in the waveshape memory 12B and the filter characteristics
parameter memory 17B is one determined according to the above described first embodiment,
the level parameters k1 and k2 to be generated by the level parameter memory 21 must
have not only the interpolation function but also a level modifying function similar
to the level parameter used in the embodiment. In this case, the waveshape memory
12B produces a strongest touch corresponding waveshape whose envelope level has been
changed to the substantially constant level E₀ as shown in Fig. 4b and the digital
filter 14 produces a weakest touch corresponding waveshape signal whose envelope level
has been changed to the substantially constant level E₀ as shown in Fig. 4a. The level
parameter k1 and k2 which have both the interpolation function and the level modifying
function are determined in the following manner. First, with respect to the first
level parameter k1, an average level for each frame of the reference waveshape (the
strongest touch corresponding waveshape) as shown in Fig. 2b is computed and then
difference between this average level and an average level for each frame of the reference
waveshape which has been changed to the constant level E₀ as shown in Fig. 4b (substantially
E₀ for any frame) is computed, the interpolation function K1 as shown in Fig. 6 is
corrected in accordance with the level differences for the respective frames thus
computed and finally the first parameter k1 for which the degree of touch and the
frame number are used as variables is obtained. With respect to the second level parameter
k2, an average level for each frame of the weakest touch corresponding waveshape as
shown in Fig. 2a is computed, difference between this average level and an average
level for each frame of the weakest touch corresponding waveshape which has been changed
to the constant level E₀ as shown in Fig. 4a (substantially constant level E₀ for
any frame) is computed, the interpolation function K2 as shown in Fig. 6 is corrected
in accordance with the level differences for the respective frames and finally the
second level parameter k2 for which the degree of touch and the frame number are used
as variables is obtained. The level parameters k1 and k2 obtained in the above described
manner are stored in the level parameter memory 21 and read out therefrom in response
to the frame address data and the touch detection data. In this case, instead of constituting
the level parameter memory 21 with a single memory, the memory 21 may be divided,
as shown in Fig. 7, into an interpolation coefficient memory 21A which is accessed
in response to the touch detection data and a level difference memory 21B which is
accessed in response to the frame address data, the first level parameter k1 may be
produced by multiplying, in a multiplier 21c, interpolation coefficient data k1a corresponding
to the strongest touch read out from the memory 21A with level difference data k1b
read out from the memory 21B, and the second level parameter k2 may be produced by
multiplying, in a multiplier 21D, interpolation coefficient k2a corresponding to the
weakest touch with level difference data k2b. The interpolation functions as shown
in Fig. 6 are stored in the interpolation memory 21A and data representing level differences
for the respective frames corresponding to the strongest and weakest touches determined
in the above described manner is stored in the level difference memory 21B.
[0047] In the above described embodiments, the waveshape memories 12A and 12B store a full
waveshape from the start to the end of sounding of a tone. Alternatively, these memories
may store a complete waveshape of the rise portion and a certain part of the remaining
portion following the rise portion. In this latter case, the address data generation
circuit is adapted such that it generates the complete waveshape of the rise portion
immediately upon generation of the key-on pulse and thereafter generates the partial
waveshape (also plural periods) repeatedly. An amplitude envelope of the repeatedly
read out waveshape signal is imparted by separate envelope imparting means (not shown).
[0048] In the first embodiment, the filter characteristics parameter memory 17A individually
stores filter characteristics parameters for the respective frames in response to
respective degrees of touch. Alternatively, this memory may prestores only filter
characteristics parameters corresponding to the strongest and weakest touches and
reads out these parameters simultaneously in response to the frame address, and an
interpolation operation corresponding to the touch detection data may be performed
utilizing the read out parameters thereby to produce filter characteristics parameters
corresponding to the respective degrees of touch by interpolation operations performed
for the respective degrees of touch.
[0049] In a case where key scaling of the tone color is to be performed using the tone color
change parameter as the tone pitch or tone range of the depressed key, this can be
carried out in the same manner as in the above described embodiments if the degree
of key touch or touch detection data in these embodiments is replaced by the tone
pitch or tone range of the depressed key. It is also within the scope of the present
invention by utilizing wellknown DPCM (Differential Pulse Code Modulation), ADPCM
(Adaptive Differential Pulse Code Modulation), DM (Delta Modulation) or ADM (Adaptive
Delta Modulation) technique to have the waveshape memory waveshape data representing
the difference between adjacent sample amplitude values and cumulatively add or subtract
this difference data in reading thereof from the waveshape memory to obtain the original
sample amplitude data.
[0050] The foregoing embodiment is one in which the present invention is applied to a keyboard
instrument. The present invention is not limited to this but is applicable also to
an instrument in which the pitch of generated tones is constant such, for example,
as a percussion sound generation device. In this case, the digital filter may be controlled
with the strength of percussion being utilized as a tone color change parameter for
changing the tone color.
[0051] Storing of the waveshape into the waveshape memory according to the present invention
may be made also by the method disclosed in US-A-4 444 082. According to this disclosed
method, waveshapes of one period are picked up at several locations in an actual tone
waveshape spaced away from one another and these waveshapes and difference waveshapes
between the respective waveshapes are stored. A musical tone between the picked up
waveshapes is synthesized by adding corresponding difference waveshapes to the picked
up waveshapes while causing its level to increase at time elapses.