Background of the Invention
The present invention relates generally to electronic musical instruments, and in particular to an electronic musical instrument which generates an aperiodic musical waveform from a plurality of digital amplitudes corresponding to sample points in the original aperiodic waveform.
It is known to construct an electronic musical instrument using a digital memory in which an audio waveform is stored in sampled form. The stored audio waveform is conventionally read out of the memory at a constant rate in response to an address counter and is then converted to an analog signal by a digital-to-analog converter. In systems of this type it is desirable to store the digital samples using as few binary digits as possible in order to minimize the cost of the memory. In the case of periodic waveforms, it is common to store digital samples defining only one period of the waveform, the remainder of the waveform being derived through calculations performed on the stored samples. Audio waveforms which are not periodic in nature, such as complex percussive waveforms which decay gradually with time, cannot, however, be treated in this manner. In order to faithfully reproduce such waveforms using the sequential sampling technique, it is necessary to store substantially the entire waveform in sampled form.
Percussive waveforms have a rapidly rising portion generated in response to the occurrence of a crash of cymbals, for example, and an exponentially decaying portion which rapidly decreases at first and then decays more and more slowly with time. The early stages of the waveform have a larger harmonic content than the later stages of the waveform. One approach that has hitherto been proposed involves storing the early stages of the waveform in digital form by eliminating the exponentially decaying tail portion and reading the stored digital samples in a forward scan at first and then recyclically repeating forward and rearward scans to read a portion of the memory having a lesser harmonic content. Since the capacity of the memory needed to store such waveforms is determined by the number of bits required to resolve the highest peak of the waveform multiplied by the number of sample points on the time axis proposed system is still not satisfactory.
A further disadvantage is that the resolution of lower amplitudes peaks of the waveform is not satisfactory in comparison with the resolution of higher amplitude peaks.
Summary of the Invention
Accordingly, the present invention provides an electronic musical instrument wherein a memory is utilized to the fullest capacity.
According to the invention, the rapidly decaying section of a typical aperiodic waveform is equalized in amplitude and spectral energy distribution to the highest peak of the waveform prior to the processes of sampling and recording the equalized waveform section. A plurality of amplitude data are stored at respective addresses of first and second portions of a memory. The amplitude data stored in the first memory portion represent the amplitudes and spectral characteristic of the non-equalized rising section of the waveform and those stored in the second memory portion represent the amplitudes and spectral characteristic of the equalized, rapidly decaying section. The first memory portion is addressed in forward scan and subsequently the second memory portion is addressed recyclically in forward and rearward scans to generate an output waveform having a first part corresponding to the rising section of the original waveform and a second part corresponding to a series of the recyclically addressed versions of the equalized section of the original waveform. After delivery of the first part of the output waveform, a monotonically decaying envelope is impressed upon the amplitudes of the second part of the output waveform and a monotonically decaying characteristic is impressed upon the spectral energy distributions of the second part of the output waveform.
The equalization of amplitudes and spectral characteristic and the recycled back-and-forth scan reading of the equalized digital samples permit full utilization of a memory and result in an improvement in signal-to-noise ratio. The aperiodic waveform generator of the invention thus requires a memory having a smaller capacity than is required by prior art waveform generators.
Brief Description of the Drawings
The present invention will be described in further detail with reference to the accompanying drawings, in which:
FIG. 1 shows a portion of a typical percussive waveform;
FIG. 2 shows spectral characteristics of digital samples at scan reversal points;
FIG. 3 is a block diagram of the electronic musical instrument according to an embodiment of the present invention;
FIG. 4 is a circuit diagram of the waveform generator of FIG. 3;
FIG. 5 is a waveform diagram useful for describing the operation of envelope superimposition;
FIG. 6 is a block diagram of a modified embodiment;
FIG. 7 is a block diagram of a further modification of the invention; and
FIG. 8 is a waveform diagram associated with FIG. 7.
Detailed Description
In FIG. 1, the waveform 10 depicts an oscillating voltage which represents a percussive musical sound which is encountered when there is a clash of cymbals. The envelope of the voltage has a sudden onset 11 and a very long exponential decay 12. The envelope rises in response to the occurrence of a percussive event at time t.sub.1 to a peak 13 at time t.sub.2 and then decays rapidly at first, and then more and more slowly as the waveform continues. There is a larger content of higher harmonics in the rapidly rising portion of the waveform than there is during the remaining portion of the exponential decay. The waveform 10 has a different spectral characteristic at each sample point on the time axis of the waveform such that higher harmonic content decreases monotonically with time. A dashed line curve 17 in FIG. 2 indicates the spectral distribution of energy at 17 at sample point t.sub.2 and a dashed line curve 18 indicates the energy distribution at sample point t.sub.3 having a lesser content of higher harmonics than at sample point t.sub.2.
The waveform generation technique according to the present invention involves recording a portion of the waveform including rapidly rising portion 11 between times t.sub.1 and t.sub.2 and rapidly decaying portion 14 between times t.sub.2 and t.sub.3. This is accomplished by first recording the waveform portions 11 and 14 into a suitable recording medium and the rapidly decaying portion 14 is extracted to be processed with respect to amplitude and frequency. This involves equalizing the amplitude to the level of peak 13 as shown at 15 in FIG. 1 using a digital technique. The spectral characteristics of the waveform section 14 are equalized at all sample points to the spectral energy distribution at sample point t.sub.2 as indicated by solid-line curve 19 using Fast Fourier Transform. The waveform section 11 which is stored in the original recording medium is reproduced and recombined with the amplitude-and-frequency equalized section 14 to produce an oscillating voltage 10' and converted to a series of digital amplitudes each being identified by an address code.
FIG. 3 illustrates a block diagram of an aperiodic musical waveform generator according to an embodiment of the invention. In FIG. 3, the waveform generator includes a waveshape memory 20, normally a read-only memory (ROM), into which the above-mentioned digital amplitudes are stored in respective memory locations. The digital amplitudes corresponding to successive sample points of the voltage 10' in the waveform section 11 are stored in respective memory addresses of a first portion of memory 20 and those in the waveform section 14 are stored in respective memory addresses of a second, recycled portion of the memory. The digital peak amplitudes stored in the recycled portion of the memory are the same and the spectral characteristics of the digital amplitudes stored in this recycled portion are equalized. These memory addresses are sequentially accessible by corresponding address codes developed on bus 24 by a reversible address counter 21 which is stepped through its successive count states by a clock signal supplied through a gate 22 from a clock pulse generator 23. The same address codes are sequentially developed on bus 26 and applied to a digital comparator 27 for comparison with boundary address counts N.sub.2 and N.sub.3 presented from the one of registers 32 and 33 which is selected by a selector 28.
The gate 22 is open in response to operation of a key 34 to apply clock pulses to counter 21. The operation of key 34 also triggers a monostable multivibrator 35 which in turn presets counter 21 to an initial address count N.sub.1 provided from a register 31. The initial address count N.sub.1 corresponds to the memory location of waveshape memory 20 in which the digital amplitude representative of voltage 10' at time t.sub.1 is stored. Register 31 could, of course, be dispensed with if the digital amplitude at t.sub.1 is stored in zero address location of memory 21 and counter 21 is preset to zero address count.
The output of monostable multivibrator 35 is also applied to the preset input of a flip-flop 36 and to the set input of a flip-flop 37 of an envelope impression circuit 50. The signal on the true output of flip-flop 36 now goes high and sets the reversible counter 21 to upward count mode and the signal on the complementary output of flip-flop 36 goes low and causes selector 28 to apply the boundary address count N.sub.3 from register 33 to comparator 27.
Counter 21 starts incrementing its count in response to the gated clock pulses beginning with the initial count state N.sub.1 to sequentially scan the address field of waveshape memory 20 in which the digital amplitudes are stored. Digital amplitudes stored in memory locations corresponding to address counts N.sub.1 through N.sub.2 are sequentially read out of memory 20 as counter 21 is stepped through its count states in upward direction and digital amplitudes stored in a portion of the address field between address counts N.sub.2 and N.sub.3 is scanned in a forward direction as counter 21 is further incremented.
When counter 21 develops an address count on bus 26 corresponding to boundary address N.sub.3 during the initial forward scan, there is a correspondence between the outputs of counter 21 and register 33 and comparator 27 now provides an equality pulse to flip-flop 36. The complementary output of flip-flop 36 goes high and sets the counter 21 into downward count mode and causes the selector to apply the boundary address count N.sub.2 of register 32 to comparator 27.
Counter 21 initiates decrementing its count beginning with memory location N.sub.3 to rescan the waveshape memory 20 in the opposite direction. Digital amplitudes stored in the recycled portion of the address field of memory 20 are rescanned in a rearward direction. Comparator 27 provides an equality pulse when amplitude instruction on location N.sub.2 is read from memory 20. Counter 21 reverses its count direction and selector 28 switches to register 33. This process is repeated as long as the key 34 is depressed, producing a series of alternately reversed versions of waveform section 15. The digital amplitudes sequentially read out of memory 20 are applied to a digital-to-analog converter 25 to produce a series of analog amplitudes in step with the clock pulses. A low-pass filter 41 integrates the analog amplitudes so that transitions between successive analog amplitudes at sample points are smoothed.
The aperiodic waveform generator of the present invention further includes a second comparator 42 which takes its inputs from reversible counter 21 and register 32. In the initial upward count beginning with initial address N.sub.1, comparator 42 produces an equality pulse when the count state in counter 21 reaches the boundary address N.sub.2. This equality pulse is applied on conductor 43 to the reset input of flip-flop 37. Since this flip-flop was set in response to the operation of key 34, the signal on the Q output is high until the boundary address N.sub.2 is accessed. Accordingly, during the initial section 11 of the analog waveform, flip-flop 37 remains in its initially set condition and a high level output apppears on the input of a waveform generator 38. As shown in FIG. 4, waveform generator 38 includes a parallel combination of capacitor 51 and resistor 52 connected through a diode 53 from the Q output of flip-flop 37 to ground. The high voltage signal from flip-flop 37 charges capacitor 51, developing a voltage plateau 44 (FIG. 5) as long as the Q output of flip-flop 37 remains high. The resetting of flip-flop 37 by the output of comparator 42 causes capacitor 51 to discharge through resistor 52, developing an exponentially decaying voltage 45. The envelope thus generated is coupled through a buffer amplifier 54 to the control terminals of an analog multiplier, typically a variable gain amplifier 39, and a variable frequency filter 40.
Variable gain amplifier 39 takes its input from the low-pass filter 41 to impress the envelope developed by waveform generator 38 upon the analog amplitudes by a variable ratio which ranges from unity to zero. Amplifier 39 provides a unity gain amplification when it is supplied with the voltage plateau and reduces its gain in proportion to the decaying voltage. Thus, the reconstructed initial waveform section 11 is unaffected by variable gain amplifier 39 and the subsequent portion of the reconstructed waveform comprising a series of recycled waveform sections 14 and 14' are reduced monotonically by the exponentially decaying voltage 45.
The output of variable gain amplifier 39 is applied to variable frequency filter 40. This filter has the characteristic of a low-pass filter. However, the cut-off frequency of this low-pass filter follows a curve shown at 46, FIG. 5; namely, it shifts toward lower frequency in proportion to decaying voltage 45. The output of variable gain amplifier 39 has an equalized spectral characteristic since it only affects the amplitude of the analog signal. Variable frequency filter 40, on the other hand, modifies this frequency characteristic in accordance with the decaying waveform so that the harmonic content of the reconstructed analog waveform decreases monotonically with time. Since the original waveform sections 11 and 14 have a larger content of higher harmonics than in the tail portion 16 of the waveform diagram of FIG. 1, the spectral characteristic of the output of variable frequency filter 40 substantially conforms to the spectral characteristic of the original waveform. The monotonic decrease both in amplitude and higher harmonic content approximates the waveform generated according to the present invention to natural percussive sounds. In addition, the period of the recycled waveform section is longer than the minimum period of the audible frequency. As a result, there is no audible flutter frequency in the regenerated aperiodic waveform.
FIG. 6 shows an alternative form of the previous embodiment. Selector 28 and register 33 are replaced with a step counter 60 and an address memory 61. Step counter 60 is preset by the output of monostable multivibrator 35 to an initial count from which it beings to count up in response to the output of comparator 27. Address memory 61 may store a series of address codes N.sub.3 and N.sub.2 to read the address field of memory 20 in a manner identical to the previous embodiment. However, the flexibility of memory 61 allows a series of pseudo-random address codes to be stored and accessed in sequence to scan different sections of the recycled portion of the waveform. For example, the pseudo-random codes may include a boundary address N.sub.3 for reversal at the end of initial forward scan and a boundary address N.sub.2 for reversal at the end of first rearward scan and subsequent boundary addresses which are randomly located between the boundary addresses N.sub.2 and N.sub.3. As a result of this pseudo-random addressing, portions of different length in the waveform section 14 are rescanned so that each scan partially overlaps adjacent scans.
Analog amplitudes developed on the output of low-pass filter 41 during rearward scan form a waveform which retraces the voltage developed during forward scan. To ensure smooth transition at reversal of any polarity (from a scan of a given direction to a scan of opposite direction) it is preferable that the reversal point should correspond to the crest or trough of the oscillating voltage. In the case of the waveform of FIG. 1 this is accomplished by storing a digital "trough" instruction in the boundary address N.sub.2 and a "crest" instruction in the boundary address N.sub.3.
In an alternative embodiment, boundary address codes correspond to each zero crossover point of the oscillating voltage 10'. The present invention accomplishes this by alternately inverting the polarity of the analog waveform to avoid rapid transition at reversal points. FIG. 7 illustrates an inverter 70 coupled to the output of low-pass filter 41 and a switch 71 which alternately pass the outputs of low-pass filter 41 and inverter 70 in response to the complementary output of flip-flop 36 to variable gain amplifier 39. As illustrated in FIG. 8, reconstructed analog waveform 81 retraces the preceding waveform 80 during subsequent scan 82 without rapid transitions which would otherwise occur as shown at 83 if the circuit of FIG. 7 is not provided.
The foregoing description shows only preferred embodiments 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 envelope impression circuit may be constructed of a digital circuit to multiply a digital multiplication factor upon digital amplitudes delivered form the waveshape memory 20. Variable frequency low-pass filter could equally be as well constructed of a digital filter to modify the frequency characteristic of the digital amplitudes from the memory.