(19)
(11) EP 0 360 306 B1

(12) EUROPEAN PATENT SPECIFICATION

(45) Mention of the grant of the patent:
23.02.1994 Bulletin 1994/08

(21) Application number: 89121588.1

(22) Date of filing: 28.08.1984
(51) International Patent Classification (IPC)5G10H 7/00, G10H 1/055

(54)

Musical tone producing device of waveshape memory readout type

Vorrichtung zur Erzeugung von Musiktönen vom Wellenformauslesespeichertyp

Dispositif générateur de son musical du type à lecture de forme d'onde en mémoire


(84) Designated Contracting States:
DE GB

(30) Priority: 02.09.1983 JP 160429/83

(43) Date of publication of application:
28.03.1990 Bulletin 1990/13

(62) Application number of the earlier application in accordance with Art. 76 EPC:
84110222.1 / 0140008

(73) Proprietor: YAMAHA CORPORATION
Hamamatsu-shi Shizuoka-ken (JP)

(72) Inventor:
  • Suzuki, Hideo c/o Yamaha Corporation
    Hamamatsu -shi,Shizuoka-ken (JP)

(74) Representative: Selting, Günther, Dipl.-Ing. et al
Patentanwälte von Kreisler, Selting, Werner Postfach 10 22 41
50462 Köln
50462 Köln (DE)


(56) References cited: : 
DE-A- 3 150 853
US-A- 4 231 276
   
     
    Remarks:
    The file contains technical information submitted after the application was filed and not included in this specification
     
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description


    [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.


    Claims

    1. A musical tone producing device of a waveshape memory readout type, comprising:
       waveshape memory means (12A;12B) for storing, in digital format, waveshape data of a tone;
       readout means connected to said waveshape memory means (12A;12B) for reading out said waveshape data from said waveshape memory means at a rate corresponding to a pitch of a musical tone to be produced;
       control parameter generating means (17A;17B) for generating a tone color control parameter which varies with time from the time when said readout means starts reading out the waveshape data;
       filter means (14) for controlling tone color characteristics of said waveshape data read out from said waveshape memory means (12A;12B) in accordance with said tone color parameter generated by said control parameter generating means,
       level information generating means (18;21) for generating level information which also varies with time from the time when said readout means starts reading out the waveshape data in response to a signal indicative of a start timing of said musical tone; and
       level control means (19;23) connected to said level information generating means (18;21) for modifying said waveshape data in accordance with said level information so that the amplitude level varies in response to said level information,
       characterized in that
       said waveshape memory means (12A;12B) stores waveshape data constituting a specified portion of a full tone waveshape from the start to the end of sounding of a musical tone, said specified portion is a portion having plural periods of said musical tone, the tone color of said specified portion varies with time, and the envelope amplitude level of said specified portion is substantially constant; and
       that said filter means (14) is a digital filter means and the level control means (19;23) is provided behind the digital filter means.
     


    Ansprüche

    1. Musiktonerzeugungsvorrichtung vom Wellenformspeicherauslesetyp, mit:
       einer Wellenformspeichereinrichtung (12A;12B) zum Speichern von Wellenformdaten eines Tones im Digitalformat;
       einer mit der Wellenformspeichereinrichtung (12A;12B) verbundene Ausleseeinrichtung zum Auslesen der Wellenformdaten aus der Wellenformspeichereinrichtung mit einer einer Höhe eines zu erzeugenden Musiktones entsprechenden Rate;
       einer Steuerparametererzeugungseinrichtung (17A;17B) zur Erzeugung eines Tonfarbensteuerparameters, der mit der Zeit von dem Zeitpunkt an variiert, an dem die Ausleseeinrichtung mit dem Auslesen der Wellenformdaten beginnt;
       einer Filtereinrichtung (14) zur Steuerung der Tonfarbencharakteristik der entsprechend den von der Steuerparametererzeugungseinrichtung erzeugten Tonfarbenparametern aus der Wellenformspeichereinrichtung (12A;12B) ausgelesenen Wellenformdaten,
       einer Pegelinformationserzeugungseinrichtung (18;21) zur Erzeugung von Pegelinformation, die ebenfalls mit der Zeit von dem Zeitpunkt an variiert, an dem die Ausleseeinrichtung auf ein einen Startzeitpunkt des Musiktones anzeigendes Signal hin mit dem Auslesen der Wellenformdaten beginnt; und
       einer mit der Pegelinformationserzeugungseinrichtung (18;21) verbundenen Pegelsteuereinrichtung (19;23) zum Modifizieren der Wellenformdaten entsprechend der Pegelinformation, so daß der Amplitudenpegel als Antwort auf die Pegelinformation variiert,
       dadurch gekennzeichnet, daß
       die Wellenformspeichereinrichtung (12A;12B) Wellenformdaten speichert, die einen bestimmten Teil einer vollständigen Tonwellenform vom Anfang bis zum Ende des Klingens eines Musiktones darstellen, der bestimmte Teil ein Teil mit mehreren Perioden des Musiktones ist, die Tonfarbe des bestimmten Teils mit der Zeit variiert und der Hüllkurvenamplitudenpegel des bestimmten Teils im wesentlichen konstant ist, und
       daß die Filtereinrichtung (14) eine Digitalfiltereinrichtung ist und die Pegelsteuereinrichtung (19;23) hinter der Digitalfiltereinrichtung vorgesehen ist.
     


    Revendications

    1. Un dispositif générateur de son musical du type à lecture de forme d'onde en mémoire, comprenant :
       un moyen de mémoire de formes d'onde (12A ; 12B), destiné à mémoriser, en format numérique, les données de forme d'onde d'un son,
       un moyen de lecture connecté audit moyen de mémoire de formes d'onde (12A ; 12B), destiné à lire lesdites données de forme d'onde dudit moyen de mémoire de formes d'onde à une vitesse correspondant à une hauteur d'un son musical à générer,
       un moyen de génération de paramètres de régulation (17A ; 17B), destiné à générer un paramètre de régulation de couleur de son qui varie dans le temps à partir du moment où ledit moyen de lecture commence à lire les données de forme d'onde,
       un moyen de filtre (14), destiné à réguler les caractéristiques de couleur de son desdites données de forme d'onde lues dudit moyen de mémoire de formes d'onde (12A ; 12B) selon ledit paramètre de couleur de son généré par ledit moyen de génération de paramètre de régulation,
       un moyen de génération d'informations de niveau (18 ; 21), destiné à générer des informations de niveau qui varient également dans le temps à partir du moment où ledit moyen de lecture commence à lire les données de forme d'onde en réponse à un signal indiquant le moment de début dudit son musical, et
       un moyen de régulation de niveau (19 ; 23) connecté audit moyen de génération d'informations de niveau (18 ; 21), destiné à modifier lesdites données de forme d'onde selon lesdites informations de niveau, de manière que le niveau d'amplitude varie en réponse auxdites informations de niveau,
    caractérisé en ce
       que ledit moyen de mémoire de formes d'onde (12A ; 12B) mémorise des données de forme d'onde constituant une partie spécifiée d'une forme d'onde de son complet, du début à la fin du retentissement d'un son musical, ladite partie spécifiée est une partie présentant une pluralité de périodes dudit son musical, la couleur de son de ladite partie spécifiée varie dans le temps et que le niveau d'amplitude d'enveloppe de ladite partie spécifiée est sensiblement constant, et
       que ledit moyen de filtre (14) est un moyen de filtre numérique et le moyen de régulation de niveau (19 ; 23) est prévu derrière le moyen de filtre numérique.
     




    Drawing