The present invention relates to a musical note generation device, an electronic musical instrument, a method, and a storage medium.
In an acoustic piano, when the damper pedal is not depressed, dampers arranged corresponding to the keys contact the strings while the keys are not depressed and are lifted from contact with the strings when the keys are pressed. Moreover, hammers that are actuated by pressing the keys strike the strings. Meanwhile, when the damper pedal is depressed, the dampers that provide damping for the keys are all lifted. In this state, if any of the keys are pressed and the string corresponding to that key is struck, a note corresponding to the vibration of that string is produced, and all of the other strings resonate with the vibration of that string and produce resonant tones. The vibration of the string that was struck as well as the resonance of the resonant tones continue for a long period of time even after the key is released. These resonant tones are one of the characterizing features of piano sounds.
In conventional electronic pianos, simulating the resonant tones of an acoustic piano is typically accomplished with signal processing techniques involving a combination of feedback filters such as reverbs and resonators, for example.
Moreover, one conventional example of an approach to reproducing the complex sound image profile of string resonance is the following resonant tone sound image generation device (see Patent Document 1, for example). A resonant tone generator includes string resonance circuit groups in which a plurality of string resonance circuits are grouped together. Each string resonance circuit is a digital filter having a resonant frequency corresponding to harmonics of musical notes. When a musical note signal is input by pressing a key, a string resonance signal corresponding to the musical note signal is input to a convolution processor and convolved with a pre-measured impulse response. The convolved string resonance signal is then synthesized by an adder and output. The respective output signals from the string resonance circuit groups are convolved with impulse responses from mutually different sound source positions defined as if to be on the bridge of an acoustic piano occupying the same space.
Patent Document 1: Japanese Patent Application Laid-Open Publication No. 2007-193129
However, in the conventional technology based on the feedback filter signal processing techniques described above, it is difficult to achieve a realistic sound equivalent to the resonant tones of an acoustic piano.
One advantage of the present invention lies in making it possible to generate natural resonant tones similar to those of an acoustic piano.
Accordingly, the present invention is directed to a scheme that substantially obviates one or more of the problems due to limitations and disadvantages of the related art.
Additional or separate features and advantages of the invention will be set forth in the descriptions that follow and in part will be apparent from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims thereof as well as the appended drawings.
To achieve these and other advantages and in accordance with the purpose of the present invention, as embodied and broadly described, in one aspect, the present disclosure provides a musical note generation device, including: a plurality of keys, the plurality of keys respectively being associated with pitch information; and at least one processor, the at least one processor performing processes including: a convolution operation process of generating convolved sound waveform data by convolving first sound waveform data corresponding to the pitch information associated with a specified key with second sound waveform data corresponding to an impulse response; a third sound waveform data generation process of generating third sound waveform data by respectively reducing, among frequency components included in the convolved sound waveform data generated by the convolution operation process, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the third sound waveform data generation process.
In another aspect, the present disclosure provides a method performed by at least one processor in an electronic musical instrument, including: a convolution operation process of generating convolved sound waveform data by convolving first sound waveform data corresponding to pitch information associated with a specified key with second sound waveform data corresponding to an impulse response; a third sound waveform data generation process of generating third sound waveform data by respectively reducing, among frequency components included in the convolved sound waveform data generated by the convolution operation process, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the third sound waveform data generation process.
In another aspect, the present disclosure provides a non-transitory storage medium having stored therein instructions that cause at least one processor in an electronic musical instrument to perform the following processes: a convolution operation process of generating convolved sound waveform data by convolving first sound waveform data corresponding to pitch information associated with a specified key with second sound waveform data corresponding to an impulse response; a third sound waveform data generation process of generating third sound waveform data by respectively reducing, among frequency components included in the convolved sound waveform data generated by the convolution operation process, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the third sound waveform data generation process.
In another aspect, the present disclosure provides a musical note generation device, including: a plurality of keys, the plurality of keys respectively being associated with pitch information; and at least one processor, the at least one processor performing processes including: an attenuated sound waveform data generation process of generating attenuated sound waveform data by respectively reducing, among frequency components included in first sound waveform data corresponding to the pitch information associated with a specified key, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; a convolution operation process of generating third sound waveform data by convolving the attenuated sound waveform data generated by the attenuated sound waveform data generation process with second sound waveform data corresponding to an impulse response; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the convolution operation process.
In another aspect, the present disclosure provides a method performed by at least one processor in an electronic musical instrument, including: an attenuated sound waveform data generation process of, when a damper pedal is depressed, generating attenuated sound waveform data by reducing, among frequency components included in first sound waveform data corresponding to pitch information associated with a specified key, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; a convolution operation process of generating third sound waveform data by convolving the attenuated sound waveform data generated by the attenuated sound waveform data generation process with second sound waveform data corresponding to an impulse response; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the convolution operation process.
In another aspect, the present disclosure provides a non-transitory storage medium having stored therein instructions that cause at least one processor in an electronic musical instrument to perform the following processes: an attenuated sound waveform data generation process of, when a damper pedal is depressed, generating attenuated sound waveform data by reducing, among frequency components included in first sound waveform data corresponding to pitch information associated with a specified key, amplitudes of respective frequency components of a fundamental tone and harmonics of the fundamental tone corresponding to a pitch indicated by the pitch information; a convolution operation process of generating third sound waveform data by convolving the attenuated sound waveform data generated by the attenuated sound waveform data generation process with second sound waveform data corresponding to an impulse response; and an output process of outputting piano sound waveform data generated on the basis of the third sound waveform data generated by the convolution operation process.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory, and are intended to provide further explanation of the invention as claimed.
The detailed descriptions below are intended to be read with reference to the following figures in order to gain a deeper understanding of the present application.
An embodiment of the present invention will be described in detail below with reference to figures. The present embodiment relates to an electronic musical instrument that simulates an acoustic piano. Waveform data (first sound waveform data) is created by recording the sounds produced when the keys of an acoustic piano are pressed, and this data is stored in a waveform memory in a piano sound source (an integrated circuit). Then, when the keys of an electronic piano are pressed, piano sound waveform data is generated by reading the waveform data corresponding to the pitches of the pressed keys from the waveform memory.
Moreover, in the present embodiment, to simulate the resonance from string vibration that occurs when the damper pedal of an acoustic piano is depressed, impulse response waveform data (second sound waveform data) for resonant tones obtained by causing the acoustic piano to vibrate while depressing the damper pedal of the acoustic piano is recorded in advance and stored in a memory of the electronic musical instrument. Then, a convolution operation process of convolving the first sound waveform data corresponding to pressed keys with the impulse response waveform data (second sound waveform data) is performed, and resonant tone waveform data (third sound waveform data) is generated. Next, piano sound waveform data is generated by mixing together the first sound waveform data and the resonant tone waveform data (third sound waveform data) in a ratio corresponding to the amount by which the damper pedal is depressed. Then, the generated piano sound waveform data is output.
The impulse response waveform data (second sound waveform data) recorded while the damper pedal is depressed is recorded while all of the strings are in a free state (that is, a state in which all of the strings can resonate and vibrate to produce sound). Therefore, the impulse response waveform data (second sound waveform data) includes frequency characteristics for a state equivalent to when all of the strings are producing sound and also includes harmonic characteristics of strings producing sound due to keypresses. As a result, when the first sound waveform data produced from the waveform memory when a key is pressed is convolved with the impulse response waveform data (second sound waveform data) including these frequency characteristics, the waveform data components of the pitch corresponding to the keypress that are included in both types of waveform data are undesirably emphasized, which produces unnatural resonant tones.
As a countermeasure, in the present embodiment, a process of convolving the first sound waveform data produced from the waveform memory when a key is pressed with the abovementioned impulse response waveform data (second sound waveform data) is performed to generate convolved sound waveform data. Then, a filtering calculation process is performed to generate the resonant tone waveform data (third sound waveform data; attenuated sound waveform data) by respectively reducing, from the frequency components included in the convolved sound waveform data, the amplitudes of the respective frequency components of the fundamental tone and harmonics of the pitch corresponding to the keypress. In this way, the present embodiment makes it possible to generate natural resonant tones.
The keyboard 140 is a keyboard with which a performer inputs a piano performance and includes 88 keys, for example.
The damper pedal 150 is depressed by the performer to create an effect simulating the behavior of the damper pedal in an acoustic piano.
The switch unit 160 includes general-purpose switches such as a power switch, a volume switch, and tone color selection switches as well as a switch for specifying the amount of damper pedal effect to apply, a switch for changing the temperament, a switch for changing the master tuning, and the like.
The GPIO 130 detects keypress and key release information from the keys in the keyboard 140, ON (depressed) and OFF (not depressed) information from the damper pedal 150, and operation information from the switches in the switch unit 160 and notifies the CPU 103 of this information via the system bus 170.
The CPU 103, in accordance with control programs stored in the memory 104, executes processes for handling information received from the performer via the GPIO 130, including a process for keypress and key release information from the keyboard 140 and a process for ON/OFF information from the damper pedal 150, as well as processes triggered by operation of the switch unit 160 such as a process for power ON information, a process for volume change information, a process for tone color selection information, a process for changing the temperament, a process for master tuning change information, and a process for specifying the amount of damper pedal effect to apply, for example. As a result of these processes, the CPU 103 outputs performance information 117 that includes note-on information, note-off information, tone color selection information, temperament change information, master tuning change information, and the like to the piano sound source 102 via the system bus 170. Moreover, in the present embodiment, this performance information 117 includes damper pedal depression information 118. This damper pedal depression information 118 is also sent to the damper sound effect generator 101. Furthermore, the CPU 103 outputs volume change information to analog amplifiers (not illustrated in the figure). The CPU 103 also outputs the following to the damper sound effect generator 101 via the system bus 170: a pitch control signal 119, a sympathetic effect reduction amount configuration signal 120, and impulse response waveform data (second sound waveform data) 121 that is read from the memory 104. In addition, the CPU 103 outputs a damper pedal effect application amount configuration signal 122 to the multipliers 105 and 106 via the system bus 170.
The memory 104 stores the control programs for operating the CPU 103 and also temporarily stores various types of working data while programs are executed. The memory 104 also stores the impulse response waveform data (second sound waveform data) 121.
The piano sound source 102 stores, in an internal waveform memory (not illustrated in the figure), waveform data obtained by recording sounds produced by pressing the keys of an acoustic piano. In accordance with performance information 117 indicating a note-on instruction from the CPU 103, the piano sound source 102 allocates a free channel from among time-divided sound production channels (or, if there are no free channels, a channel obtained by silencing the oldest channel) and then uses this sound production channel to start reading waveform data for the specified pitch from the internal waveform memory (not illustrated in the figure). Upon receiving performance information 117 indicating a note-off instruction from the CPU 103, the piano sound source 102 stops reading the waveform data from the waveform memory to the sound production channel currently producing sound for the specified pitch and then frees that sound production channel. However, when damper pedal depression information 118 indicating that the damper pedal is ON (depressed) is input, even if performance information 117 indicating a note-off instruction is input, the process of reading the waveform data from the waveform memory continues rather than stops.
Here, the piano sound source 102 respectively stores, in the waveform memory, left channel waveform data and right channel waveform data obtained by recording the sounds produced by pressing the keys of an acoustic piano in stereo. Moreover, upon receiving performance information 117 indicating a note-on instruction, the piano sound source 102 respectively allocates a sound production channel for the left channel and a sound production channel for the right channel and then uses the allocated sound production channels to start respectively reading left channel waveform data and right channel waveform data from the waveform memory. The piano sound source 102 processes, in a time-divided manner and individually for the left channel and the right channel, the reading of a plurality of sets of waveform data using a plurality of sound production channels corresponding to a plurality of note-on instructions. The piano sound source 102 outputs the waveform data corresponding to the note-on instructions and currently being read for the left channel to the adder 107 and the damper sound effect generator 101 as first sound waveform data (L-ch) 109, and similarly outputs the waveform data corresponding to the note-on instructions and currently being read for the right channel to the adder 108 and the damper sound effect generator 101 as first sound waveform data (R-ch) 110.
The damper sound effect generator 101 performs a process of convolving the first sound waveform data (L-ch) 109 input from the piano sound source 102 with left channel impulse response waveform data (second sound waveform data) 121 read from the memory 104. The damper sound effect generator 101 then performs a filtering calculation process that respectively reduces, from the frequency components included in the convolved sound waveform data for the left channel generated by the convolution operation process, the amplitudes of the respective frequency components of fundamental tones and harmonics of pitches corresponding to note numbers currently being produced, and outputs the resulting third sound waveform data (L-ch) 113 to the multiplier 105. Similarly, the damper sound effect generator 101 performs a process of convolving the first sound waveform data (R-ch) input from the piano sound source 102 with right channel impulse response waveform data (second sound waveform data) 121 read from the memory 104. The damper sound effect generator 101 then performs a filtering calculation process that respectively reduces, from the frequency components included in the convolved sound waveform data for the right channel generated by the convolution operation process, the amplitudes of the respective frequency components of fundamental tones and harmonics of pitches corresponding to note numbers currently being produced, and outputs the resulting third sound waveform data (R-ch) 114 to the multiplier 106.
Here, by operating a switch in the switch unit 160, the performer can specify the amount of resonant tone effect to apply when the damper pedal 150 is depressed, and the CPU 103 outputs the specified amount of effect as the damper pedal effect application amount configuration signal 122. On the basis of this damper pedal effect application amount configuration signal 122, the multipliers 105 and 106 respectively control the amplitudes of the third sound waveform data (L-ch) 113 and the third sound waveform data (R-ch) 114 output from the damper sound effect generator 101 in order to determine the respective amounts of resonant tone for the left channel and the right channel.
The adder 107 adds together the first sound waveform data (L-ch) 109 output from the piano sound source 102 and the third sound waveform data (L-ch) 113 output from the damper sound effect generator 101 via the multiplier 105, and then outputs the resulting left channel piano sound waveform data (L-ch) 115 to which the damper pedal effect has been applied. Similarly, the adder 108 adds together the first sound waveform data (R-ch) 110 output from the piano sound source 102 and the third sound waveform data (R-ch) 114 output from the damper sound effect generator 101 via the multiplier 106, and then outputs the resulting right channel piano sound waveform data (R-ch) 116 to which the damper pedal effect has been applied. The piano sound waveform data (L-ch) 115 and the piano sound waveform data (R-ch) 116 are then respectively output to digital-to-analog (D/A) converters, analog amplifiers, and speakers (not illustrated in the figure) to be played as stereo piano ON signals.
The damper sound effect generator (L-ch) 201 and the damper sound effect generator (R-ch) 202 have the same configuration except in that the inputs and outputs respectively correspond to the left channel and the right channel, and therefore the following description will only focus on the damper sound effect generator (L-ch) 201. The damper sound effect generator (L-ch) 201 includes a convolution processor 204 and a filter processor 203.
When the performer depresses the damper pedal 150 illustrated in
In order to implement this process, the convolution processor 204 includes a Fast Fourier transform (FFT) convolver 213, a multiplier 214 arranged on the input side of the FFT convolver 213, a multiplier 215 arranged on the output side of the FFT convolver 213, and envelope generators (EGs) 216 and 217 that respectively generate scaling factor change information for the multipliers 214 and 215.
The FFT convolver 213 stores, in an internal register, impulse response data corresponding to impulse responses obtained by sampling string resonance and body characteristics in an acoustic piano while depressing the damper pedal. Furthermore, the FFT convolver 213 performs a process of convolving the input first sound waveform data (L-ch) 109 with this impulse response data and outputs the resulting convolved sound waveform data.
Here, in order to produce the behavior for when the performer depresses the damper pedal 150 illustrated in
The filter processor 203 includes comb filters 206 that are connected in series and individually numbered from #0 to #87. In the filter processor 203, first, the first sound waveform data (L-ch) 109 illustrated in
Each of the comb filters 206 numbered from #0 to #87 and connected in series as described above generates note number-specific attenuated sound waveform data by respectively reducing, from the frequency components included in the first sound waveform data (L-ch) 109, the amplitudes of the respective frequency components of the fundamental tone and harmonics of the pitch for the note number that among one or more note numbers specified in that waveform data corresponds to the key number assigned to that comb filter 206, and then inputs the generated data to the comb filter 206 in the next stage.
As illustrated for the #0 comb filter 206 in
The comb filter 206 configured as described above thus forms a feedforward comb filter. In the comb filter 206, letting the input be x[n] and the output be y[n], the comb filter 206 satisfies equation 1 below.
y[n]=x[n]+αx[n−K] <Eq. 1>
Given equation 1, the transfer function for the comb filter 206 can be defined as shown below in equation 2.
Y(z)=(1+αz−K)X(z) <Eq. 2>
To obtain the frequency characteristics of a discrete-time system expressed in the z-domain, the substitution z=ejω (where e is an exponent, j is a unit complex number, and ω is angular frequency) is made, thereby allowing the transfer function given by equation 2 to be expressed as equation 3 below.
Then, using Euler's formula, equation 3 can be rewritten as equation 4.
H(ejω)={1+α cos(ωK)}−jα sin(ωK) <Eq. 4>
Therefore, from equation 4, the frequency-amplitude response of the comb filter 206 can also be expressed by equation 5.
|H(ejω)|=√{square root over ((1+α2)+2α cos(ωK))} <Eq. 5>
In equation 5, the (1+α2) term is a constant, while the 2α cos(ωK) term is a periodic function. Therefore, as illustrated in
As described above, the delay length K set to the delayer (Delay) 208 of the comb filter 206 corresponds to the pitch assigned to the key number (one of #0 to #87) for that comb filter 206. However, as also described above, the CPU 103 illustrated in
Moreover, from equation 5 above, changing the scaling factor α set to the multiplier 209 makes it possible to change the depth of the zero points in the frequency characteristics illustrated in
Among the #0 to #87 comb filters 206, for the comb filters 206 for key numbers corresponding to note numbers that are not specified in the first sound waveform data (L-ch) 109, the sympathetic effect reduction amount configuration signal 120 set by the CPU 103 illustrated in
The operation of the filter processor 203 described above makes it possible to generate the third sound waveform data (L-ch) 113 by respectively reducing, from the frequency components included in the convolved sound waveform data for the left channel output from the convolution processor 204, the amplitudes of the respective frequency components of the fundamental tones and harmonics of the pitches corresponding to the one or more note numbers specified in that waveform data.
The FFT processor 401 performs an FFT process on input waveform data 407 input from the multiplier 214 illustrated in
The impulse response waveform data register 402 stores impulse response complex number frequency waveform data sent from the memory 104 via the system bus 170 by the CPU 103 illustrated in
The delay unit 403 stores complex number frequency waveform data from the FFT processor 401 while shifting that data by an analysis frame unit or half of that unit.
The complex multiplier 404, in accordance with equation 6 below, and for each frequency, performs complex multiplication of the impulse response frequency waveform data stored in the impulse response waveform data register 402 with the frequency waveform data stored in the delay unit 403.
out.r=in1.r×in2.r−in1.i×in2.i
out.i=in1.i×in2.r+in1.r×in2.i <Eq. 6>
The complex adder 405 calculates the complex sum of the multiplication results from the complex multiplier 404.
Then, the inverse FFT processor 406 performs an inverse FFT process on the output of the complex adder 405 to generate convolved sound waveform data 408 and then outputs this data to the multiplier 215 illustrated in
The sound produced from the body of the acoustic piano due to TSP signals generated while depressing the damper pedal is recorded using two stereo microphones (S502 in
The shifted phase of the recorded TSP signal is inverse-shifted to obtain a time-domain impulse response signal of the type shown in A in
An FFT process is performed on the obtained time-domain impulse response signal (S504 in
The CPU 103 then, via the system bus 170, sets, as the pitch control signal 119, the recalculated delay length K for each comb filter 206 to the register Reg#1211 in each of the comb filters 206 in the damper sound effect generator (L-ch) 201 and the damper sound effect generator (R-ch) 202 included in the damper sound effect generator 101 (see
Moreover, when the interrupt triggered by powering on the electronic musical instrument 100 occurs, the CPU 103, via the system bus 170, sets, as the sympathetic effect reduction amount configuration signal 120, a scaling factor of 0 for the scaling factor α for the multiplier 209 in each of the comb filters 206 corresponding to the key numbers #0 to #87 illustrated in
Next, the CPU 103 reads a value for the scaling factor α corresponding to the note number specified in step S700 from a read-only memory (ROM), for example (not illustrated in the figures), and uses the sympathetic effect reduction amount configuration signal 120 to set this value to the register Reg#2212 of the comb filter 206 illustrated in
Next, the CPU 103 uses the sympathetic effect reduction amount configuration signal 120 to set a value of 0 for the scaling factor α corresponding to the note number specified in step S710 to the register Reg#2212 of the comb filter 206 illustrated in
However, in the damper effect sound generator (L-ch) 201 and the damper effect sound generator (R-ch) 202 illustrated in
As described above, the piano sound source 102 adds together a plurality of sets of waveform data corresponding to a plurality of note-on instructions and currently being read for the left channel and outputs the result to the adder 107 as musical note waveform data (L-ch) 109. Similarly, the piano sound source 102 adds together a plurality of sets of waveform data corresponding to a plurality of note-on instructions and currently being read for the right channel and outputs the result to the adder 108 as musical note waveform data (R-ch) 110. Moreover, the piano sound source 102 outputs the plurality of sets of waveform data corresponding to the plurality of note-on instructions and currently being read for the left channel to the damper sound effect generator 101 in parallel (that is, without adding the sets of data together) as first sound waveform data (L-ch) 902. Similarly, the piano sound source 102 outputs the plurality of sets of waveform data corresponding to the plurality of note-on instructions and currently being read for the right channel to the damper sound effect generator 101 in parallel (that is, without adding the sets of data together) as first sound waveform data (R-ch) 903. Furthermore, the piano sound source 102 outputs note number information for sound production channels that were newly allocated in response to the note-on instructions to the damper sound effect generator 101 as sound production channel information 904.
On the basis of the sound production channel information 904 input from the piano sound source 102, for each sound production channel for which the same note number is specified in the first sound waveform data (L-ch) 902 input from the piano sound source 102, the damper sound effect generator 101 performs a filtering calculation process of generating attenuated sound waveform data by respectively reducing, from the frequency components included in the waveform data in that sound production channel, the amplitudes of the respective frequency components of the fundamental tone and harmonics of the pitch corresponding to the note number specified for that sound production channel. The damper sound effect generator 101 then performs a process of convolving attenuated sound waveform data (which is obtained by combining, for the left channel, the note number-specific attenuated sound waveform data generated by the filtering calculation process) with left channel impulse response waveform data (second sound waveform data) 121 read from the memory 104, and outputs the resulting third sound waveform data (L-ch) 113 to the multiplier 105. Similarly, on the basis of the sound production channel information 904 input from the piano sound source 102, for each sound production channel for which the same note number is specified in the first sound waveform data (R-ch) 903 input from the piano sound source 102, the damper sound effect generator 101 performs a filtering calculation process of generating attenuated sound waveform data by respectively reducing, from the frequency components included in the waveform data in that sound production channel, the amplitudes of the respective frequency components of the fundamental tone and harmonics of the pitch corresponding to the note number specified for that sound production channel. The damper sound effect generator 101 then performs a process of convolving attenuated sound waveform data (which is obtained by combining, for the right channel, the note number-specific attenuated sound waveform data generated by the filtering calculation process) with right channel impulse response waveform data (second sound waveform data) 121 read from the memory 104, and outputs the resulting third sound waveform data (R-ch) 114 to the multiplier 106.
More specifically, the filter processor 901 includes a sound production channel-comb filter allocator 205, 88 comb filters 206 numbered from #0 (A0) to #87 (C8) and corresponding to the pitches of the 88 keys on the keyboard of an acoustic piano, and an adder 207 that adds together the outputs of the 88 comb filters 206 and outputs the addition results to the convolution processor 204 as attenuated sound waveform data 218.
The sound production channel-comb filter allocator 205, on the basis of the sound production channel information 904 input from the piano sound source 102, allocates and inputs waveform data that, among sets of waveform data in N note-on instruction-specific sound production channels #0 to #N−1 for the first sound waveform data (L-ch) 902 input from the piano sound source 102 illustrated in
For the sets of waveform data that are allocated by the sound production channel-comb filter allocator 205 and in which note numbers corresponding to the pitches of the key numbers #0 to #87 in the first sound waveform data (L-ch) 902 input from the piano sound source 102 are specified, the #0 to #87 comb filters 206 respectively generate and output note number-specific attenuated sound waveform data by respectively reducing, from the frequency components included in that waveform data, the amplitudes of the respective frequency components of the fundamental tones and harmonics of the pitches corresponding to the note numbers specified in that waveform data. Then, the note number-specific attenuated sound waveform data is added together by the adder 207, and the addition results are output to the convolution processor 204 as the attenuated sound waveform data 218.
Similar to the convolution processor 204 illustrated in
The embodiments described above utilize a method based on convolving resonant tone characteristics sampled directly from an acoustic piano to generate and add together the correct damper sound effects, thereby making it possible to obtain piano damper sounds and piano sounds that are more natural, realistic, and beautiful.
In the embodiments described above, for the impulse response waveform data (second sound waveform data) 121 that is stored in the memory 104 in advance, a plurality of types of data for various piano types and tonal variations or the like may be stored and selected from.
Although the embodiments described above output two-channel stereo musical notes, the output does not necessarily need to be stereo output, or the output may be three or more channel stereo output.
In the embodiments described above, the number of comb filters 206 prepared matches the 88 keys #0 to #87 corresponding to the number of strings in a standard acoustic piano. However, when the amount of delay is long, such as for bass strings, a configuration in which the delay lengths K for the delayers (Delay) 208 are set to half the periods of the pitches corresponding to the key numbers or a configuration in which some of the comb filters are shared for other strings may be used.
Although the embodiments described above use an FFT process as an example of the convolution operation process performed by the convolution processor 204, the convolution operation process may alternatively be performed by direct multiplication-accumulation of the waveform data in the time domain without using an FFT.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention cover modifications and variations that come within the scope of the appended claims and their equivalents. In particular, it is explicitly contemplated that any part or whole of any two or more of the embodiments and their modifications described above can be combined and regarded within the scope of the present invention.
Number | Date | Country | Kind |
---|---|---|---|
2016-252129 | Dec 2016 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
8729376 | Kakishita | May 2014 | B2 |
8754316 | Shimizu | Jun 2014 | B2 |
20030177889 | Koseki | Sep 2003 | A1 |
20080006141 | Gouhara et al. | Jan 2008 | A1 |
20090000462 | Fujita | Jan 2009 | A1 |
20090133566 | Nakae | May 2009 | A1 |
20090266219 | Nakae | Oct 2009 | A1 |
20100307322 | Tominaga | Dec 2010 | A1 |
20110226119 | Shinoda | Sep 2011 | A1 |
20120137857 | Liu | Jun 2012 | A1 |
20170243571 | Cogliati et al. | Aug 2017 | A1 |
20180182365 | Sakata | Jun 2018 | A1 |
Number | Date | Country |
---|---|---|
H9-81156 | Mar 1997 | JP |
2007-193129 | Aug 2007 | JP |
2009-008736 | Jan 2009 | JP |
2009-025589 | Feb 2009 | JP |
2009-175677 | Aug 2009 | JP |
2009-265470 | Nov 2009 | JP |
2010-117536 | May 2010 | JP |
2011-197326 | Oct 2011 | JP |
Entry |
---|
U.S. Appl. No. 15/845,805, filed Dec. 18, 2017. |
European Search Report dated May 4, 2018, in a counterpart European patent application No. 17209232.2. |
Zambon et al., “Simulation of Piano Sustain-Pedal Effect by Parallel Second-Order Filters”, Sep. 1-4, 2008, Proc. of the 11th Int. Conference on Digital Audio Effects (DAFx-08), Espoo, Finland. |
European Search Report dated May 7, 2018, in a counterpart European patent application No. 17209236.3. |
Japanese Office Action dated Nov. 6, 2018, in a counterpart Japanese patent application 2016-252129. (A machine translation (not reviewed for accuracy) attached.). |
Number | Date | Country | |
---|---|---|---|
20180182364 A1 | Jun 2018 | US |