WO2020195041A1 - フィルタ効果付与装置、電子楽器及び電子楽器の制御方法 - Google Patents

フィルタ効果付与装置、電子楽器及び電子楽器の制御方法 Download PDF

Info

Publication number
WO2020195041A1
WO2020195041A1 PCT/JP2020/001509 JP2020001509W WO2020195041A1 WO 2020195041 A1 WO2020195041 A1 WO 2020195041A1 JP 2020001509 W JP2020001509 W JP 2020001509W WO 2020195041 A1 WO2020195041 A1 WO 2020195041A1
Authority
WO
WIPO (PCT)
Prior art keywords
filter
coefficient set
coefficient
point value
characteristic
Prior art date
Application number
PCT/JP2020/001509
Other languages
English (en)
French (fr)
Inventor
益男 横田
Original Assignee
カシオ計算機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by カシオ計算機株式会社 filed Critical カシオ計算機株式会社
Priority to CN202080022006.2A priority Critical patent/CN113678194A/zh
Priority to US17/441,269 priority patent/US20220157284A1/en
Publication of WO2020195041A1 publication Critical patent/WO2020195041A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/06Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour
    • G10H1/12Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/06Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour
    • G10H1/12Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms
    • G10H1/125Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms using a digital filter
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/04Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation
    • G10H1/053Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only
    • G10H1/057Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only by envelope-forming circuits
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/055Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
    • G10H2250/095Filter coefficient interpolation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/055Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
    • G10H2250/101Filter coefficient update; Adaptive filters, i.e. with filter coefficient calculation in real time

Definitions

  • the present invention relates to a filter effect imparting device, an electronic musical instrument, and a control method for the electronic musical instrument.
  • the present invention has been made in view of the above circumstances, and has an advantage of providing a filter effect imparting device, an electronic musical instrument, and a control method thereof capable of effectively switching filter characteristics.
  • the present invention is a filter effect imparting device.
  • a variable characteristic filter that has filter characteristics according to multiple filter coefficients that form a set
  • a control circuit that changes the set of the plurality of filter coefficients from the first coefficient set set as the start point value to the second coefficient set set as the end point value. Have, The control circuit holds a coefficient set in the middle of the change, and when a third coefficient set is newly set as the end point value, the held coefficient set is set as the start point value.
  • the present invention is an electronic musical instrument.
  • a performance operation unit in which the user performs a performance operation
  • a musical tone generation unit that generates a musical tone according to the performance operation of the performance operation unit
  • a variable characteristic filter that has filter characteristics according to multiple filter coefficients that form a set
  • a control circuit that changes the set of the plurality of filter coefficients from the first coefficient set set as the start point value to the second coefficient set set as the end point value.
  • An effect imparting unit that filters the musical sound generated by the musical sound generating unit by the characteristic variable filter, Have,
  • the control circuit holds a coefficient set in the middle of the change, and when a third coefficient set is newly set as the end point value, the held coefficient set is set as the start point value.
  • the present invention is a control method for an electronic musical instrument.
  • a performance operation unit in which a user performs a performance operation, a musical sound generation unit that generates a musical sound according to the performance operation of the performance operation unit, and a characteristic variable filter having filter characteristics corresponding to a plurality of set filter coefficients.
  • the coefficient set in the middle of the change is held, and when the third coefficient set is newly set as the end point value, the held coefficient set is set as the start point value.
  • the filter characteristics can be effectively switched.
  • FIGS. 1 to 8 An embodiment of a filter effect imparting device according to the present invention and an electronic musical instrument including the same will be described with reference to FIGS. 1 to 8.
  • an acoustic effect imparting device in which the filter effect to be imparted is an acoustic effect will be described as an example, but the present invention includes a general filter effect including a case where a filter effect other than the acoustic effect is imparted. It can also be applied to a granting device.
  • the embodiments described below are provided with various technically preferable limitations for carrying out the present invention, the scope of the present invention is not limited to the following embodiments and illustrated examples.
  • FIG. 1 is a block diagram showing a schematic configuration of the electronic musical instrument 1 in the present embodiment.
  • the electronic musical instrument 1 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a keyboard 21, an operation unit 22, a pedal 23, and a sound source unit 30. It includes an effect imparting unit 40, a D / A converter (DAC) 51, an amplifier circuit 52, and a speaker 53. Of these, each part except the D / A converter 51, the amplifier circuit 52, and the speaker 53 is connected to each other via the data bus 14.
  • DAC D / A converter
  • the CPU 11 controls the entire electronic musical instrument 1, reads the programs and data from the ROM 12 in which various programs and data are stored, and executes the programs. Data and the like generated by executing the program are stored in the RAM 13 which is a work area.
  • Various functions (control processing) realized by the CPU 11 general-purpose processor which is a general-purpose control circuit
  • a program may be realized by a dedicated circuit for each function.
  • the keyboard 21, the operation unit 22, and the pedal 23 are parts that receive operations by the user (performer).
  • the operation unit 22 and the pedal 23 instruct the content of the change to the musical tone generated by the user's key pressing operation on the keyboard 21.
  • the keyboard 21, the operation unit 22, and the pedal 23 output signals (performance operation information) corresponding to the operated contents to the CPU 11.
  • the CPU 11 issues a sound source command to the sound source unit 30 based on the performance operation information from the keyboard 21, the operation unit 22, and the pedal 23.
  • the sound source unit 30 acquires waveform data from the ROM 12 or RAM 13 based on a sound generation command from the CPU 11, generates musical sound data, and outputs the music data to the effect imparting unit 40.
  • the effect applying unit 40 is composed of a DSP (Digital Signal Processor), applies a predetermined sound effect based on a user operation to the musical sound data generated by the sound source unit 30, and outputs the sound effect to the D / A converter 51.
  • the D / A converter 51 converts the musical sound data of the digital signal output from the effect imparting unit 40 into an analog signal.
  • the musical sound data converted into an analog signal is emitted from a pair of left and right speakers 53 via an amplifier circuit 52.
  • FIG. 2 is a block diagram showing a specific configuration of the sound source unit 30 and the effect imparting unit 40.
  • the waveform generation unit (WG) 31 generates musical sound type data corresponding to the performance operation information in each of the n channels corresponding to the number of pronunciations, and the musical sound type data is generated.
  • the filter processing by the time-varying filter (TVF) 32 and the amplifier waveform processing by the time-varying amplifier (TVA) 33 are performed.
  • the musical tone data for n channels thus generated is accumulated by the mixer 34 for each of the left and right 2 channels ⁇ 2 sets of systems after a predetermined weighting, and is output to the effect imparting unit 40.
  • the effect imparting unit 40 has two signal processing units 60, a first signal processing unit 41 and a second signal processing unit 42.
  • the two signal processing units 60 execute a process of imparting a predetermined sound effect to the musical sound data individually output from the sound source unit 30.
  • the first signal processing unit 41 performs insertions and system effects
  • the second signal processing unit 42 performs final master effects.
  • the musical tone data processed by the two signal processing units 60 is finally output to the D / A converter 51 as musical tone data of the two left and right channels.
  • the signal processing unit 60 applies a predetermined filter process to the musical tone data.
  • the sound effect imparting device according to the present invention includes at least a signal processing unit 60 and a CPU 11.
  • the sound effect applying device according to the present invention can be applied not only to the signal processing unit 60 of the effect applying unit 40 but also to the time-varying filter 32 of the sound source unit 30.
  • the time-varying filter 32 is generally implemented by hardware logic in the case of time-division processing, and the signal processing unit 60 of the effect applying unit 40 is generally implemented by a DSP, a high-speed CPU, or the like.
  • this implementation form is not particularly limited, and a configuration suitable for each can be selected.
  • FIG. 3 is a block diagram showing the configuration of the signal processing unit 60.
  • the signal processing unit 60 includes an envelope generation unit 61, a filter coefficient calculation unit 62, and a filter processing unit 63, which are connected to the data bus 14, respectively.
  • the envelope generation unit 61 generates an envelope signal (coef_eg: see FIG. 5) that changes with time.
  • the envelope signal of this embodiment varies between 0 and 1.
  • This envelope signal is generated by sequentially adding and updating rate values for each sampling cycle.
  • the envelope generation may be realized by a hardware configuration, or may be sequentially performed by a control device such as a CPU 11. Further, this envelope generation may have a generation cycle slower than the sampling cycle.
  • the filter coefficient calculation unit 62 sets a plurality of filter coefficients (b0, b1, b2 described later) based on the parameters based on the performance operation information input from the CPU 11 and the envelope signal generated by the envelope generation unit 61. , A1, a2) are calculated. Each filter coefficient changes with the passage of time due to the time-varying envelope signal. The details of the calculation process of the filter coefficient will be described later.
  • the filter processing unit 63 applies filter processing of filter characteristics according to a plurality of filter coefficients to the musical tone data.
  • FIG. 4 is a block diagram showing a circuit configuration example of the filter processing unit 63.
  • the filter processing unit 63 is a general biquad filter in the present embodiment.
  • the one shown in FIG. 4 is a standard second-order filter, and when a multi-order filter is used, it may be appropriately combined.
  • the filter processing unit 63 includes adders 71a to 71d, multipliers 72a to 72e, and delayers 73a to 73d.
  • the filter coefficient calculated by the filter coefficient calculation unit 62 is given to each of the multipliers 72a to 72e, and the signal input to each of the multipliers 72a to 72e is multiplied by the filter coefficient.
  • the filter coefficients are b0 (EQ_B0), b1 (EQ_B1), b2 (EQ_B2), a1 (EQ_A1), and a2 (EQ_A2), and these are set as one coefficient set.
  • FIG. 5 is a block diagram showing a circuit configuration example of the filter coefficient calculation unit 62.
  • the filter coefficient calculation unit 62 operates at the same period as the sampling period of the filter processing unit 63, calculates a plurality of filter coefficients, and outputs the plurality of filter coefficients to the filter processing unit 63.
  • the filter coefficient calculation unit 62 has five calculation blocks 80 (80a to 80e) for individually calculating five filter coefficients (b0, b1, b2, a1, a2).
  • Each calculation block 80 has a coefficient table 81, switches 82 and 83, a subtractor 84, a multiplier 85, an adder 86, and registers 87 to 89.
  • the coefficient table 81 stores a plurality of sets of start point values and end point values of each filter coefficient corresponding to the filter characteristics of the filter processing unit in advance.
  • the start point value and the end point value read from the ROM 12 or the RAM 13 may be temporarily stored each time the operation is performed, or the coefficient table 81 itself is stored in the ROM 12 or the RAM 13. May be good. From the five coefficient tables 81 (81a to 81e) in the five calculation blocks 80, the coefficient set of the start point value and the coefficient set of the end point value are read out.
  • the coefficient set 1 of the start point value is ⁇ b10, b11, b12, a11, a12 ⁇
  • the coefficient set 2 of the end point value is ⁇ b20, b21, b22, b21, b22 ⁇ .
  • the first number following the coefficient alphabet means whether it is the start point value or the end point value (1 is the start point value, 2 is the end point value)
  • the second number means the order of the coefficient.
  • the switches 82 and 83 perform the processing operation of the calculation block 80 (filter coefficient calculation unit 62) in a coefficient update state in which the filter coefficient is updated according to a change in the envelope signal (switches 82 and 83 are shown by the solid line in FIG. 5).
  • the state) and the coefficient holding state in which the filter coefficient is held are switched.
  • these switches 82 and 83 are switched when the envelope signal reaches the closing price or when a predetermined user operation is performed on the operation unit 22 or the pedal 23.
  • the closing price of the envelope signal refers to 1 when the envelope signal changes from 0 to 1, and 0 when the envelope signal changes in the opposite direction.
  • the filter coefficient calculation unit 62 When the filter coefficient calculation unit 62 is in the coefficient update state (switches 82 and 83 are in the solid line state of FIG. 5), the difference value between the start point value and the end point value is held in the register 87, and the start point value is held in the register 88. Will be done.
  • the difference value of the register 87 is multiplied by the envelope signal coef_eg by the multiplier 85, added to the start point value of the register 88, and held in the register 89.
  • the five filter coefficients output from the filter coefficient calculation unit 62 to the filter processing unit 63 are as shown in the following equations (1) to (5).
  • EQ_B0 b10 + coef_eg ⁇ (b20-b10) ⁇ ⁇ ⁇ (1)
  • EQ_B1 b11 + coef_eg ⁇ (b21-b11) ⁇ ⁇ ⁇ (2)
  • EQ_B2 b12 + coef_eg ⁇ (b22-b12) ⁇ ⁇ ⁇ (3)
  • EQ_A1 a11 + coef_eg ⁇ (a21-a11) ⁇ ⁇ ⁇ (4)
  • EQ_A2 a12 + coef_eg ⁇ (a22-a12) ⁇ ⁇ ⁇ (5)
  • the envelope signal is a parameter that specifies the ratio of which of the five filter coefficients is closer to the coefficient set 1 of the start point value and the coefficient set 2 of the end point value, and in the coefficient update state, this envelope signal Is the ratio specified by, and the five filter coefficients are interpolated between the coefficient set 1 of the start point value and the coefficient set 2 of the end point value.
  • the start point value and the end point value of the filter coefficient are interpolated using the envelope signal, so that the filter coefficient is sequentially updated while gradually changing from the start point value to the end point value. That is, the filter coefficient is dynamically updated between the start and end values.
  • the filter coefficient calculation unit 62 is in the coefficient holding state (the switches 82 and 83 are in the state of the broken line in FIG. 5), the filter coefficient of the register 89 is held at the value at that time and the filter coefficient is held. Is held in the register 88 as a start point value, and is reflected in the difference value of the register 87.
  • FIG. 6 is a flowchart showing the flow of the filter coefficient calculation process.
  • the filter coefficient calculation process is executed as a part of the filter process executed by the CPU 11 reading and expanding a predetermined program. In the following, it is assumed that the filter processing is executed at a predetermined cycle using each filter coefficient at that time. Further, as the initial state of the filter processing, although the filter coefficient calculation unit 62 is in the coefficient update state, the generation of the envelope signal is turned off (the signal is zero), and the filter processing is performed by the coefficient set of the start point value. And.
  • the CPU 11 first determines whether or not the envelope generation unit 61 is performing the envelope signal generation operation (step S1).
  • step S2 When it is determined in step S1 that the envelope signal generation operation is being performed (step S1; Yes), the CPU 11 determines whether or not the forced arrival instruction of the envelope signal has been input (step S2).
  • the forced arrival instruction is, for example, an instruction to switch to a filter characteristic different from the filter characteristic corresponding to the start point value and the end point value at that time when a predetermined user operation is performed on the operation unit 22 or the pedal 23. This is an instruction to stop the generation of the envelope signal and hold each filter coefficient at that time.
  • the CPU 11 detects the user operation, it determines that the forced arrival instruction of the envelope signal has been input. Then, when it is determined that the forced arrival instruction of the envelope signal has been input (step S2; Yes), the CPU 11 shifts the process to step S9 described later. If it is determined that the forced arrival instruction of the envelope signal has not been input (step S2; No), the CPU 11 shifts the process to step S6 described later.
  • step S1 determines whether or not to release the coefficient holding state of the filter coefficient calculation unit 62 (step S1). S3). Then, when it is determined that the coefficient holding state is not released (step S3; No), the CPU 11 shifts the process to step S12 described later. At this time, when the filter coefficient calculation unit 62 is in the coefficient update state, the CPU 11 operates the switches 82 and 83 to switch to the coefficient holding state.
  • step S3 when it is determined that the coefficient holding state of the filter coefficient calculation unit 62 is released (step S3; Yes), the CPU 11 clears the value of the envelope signal at this time and returns it to the initial value, and the filter coefficient. After reading the end point value of each filter coefficient of the calculation unit 62 from the coefficient table 81 and setting it to a predetermined value, the switches 82 and 83 are switched to bring the coefficient update state (step S4). However, when the filter coefficient calculation unit 62 is already in the coefficient holding state, the coefficient holding state is maintained as it is.
  • the end point value of each filter coefficient that has already been set for example, when the start point value of each filter coefficient is not changed in step S11 described later, the end point value is maintained as it is.
  • the newly set end point value corresponds to the filter characteristic instructed to switch to it based on the user operation.
  • this step it is not necessary to return the value of the envelope signal to the initial value, and when the closing price is reached, this closing price is set as the initial value (that is, the direction of change is reversed), or 0 to 1. If it is the intermediate value of the interval, this intermediate value may be retained.
  • the CPU 11 starts the envelope signal generation operation by the envelope generation unit 61 (step S5).
  • the envelope generation unit 61 updates the envelope signal, adds a rate value to the envelope signal coef_eg at that time, and advances the value (step S6).
  • the filter coefficient calculation unit 62 calculates and updates each filter coefficient by the above equations (1) to (5) using the updated envelope signal value (step S7).
  • step S8 determines whether or not the envelope signal has reached the closing price. Then, when it is determined that the envelope signal has not reached the closing price (step S8; No), the CPU 11 shifts the process to step S12 described later. On the other hand, if it is determined in step S8 that the envelope signal has reached the closing price (step S8; Yes), the CPU 11 shifts the process to the next step S9.
  • the CPU 11 stops the envelope signal generation operation by the envelope generation unit 61 (step S9).
  • the CPU 11 determines whether or not to hold each of the filter coefficients at this time (step S10).
  • the content of determination as to whether or not to hold each filter coefficient is set based on the user operation. For example, each filter coefficient is held based on the number of times the closing price of the envelope signal is reached, or based on the characteristics of the musical tone data and its changes. Specific examples of the latter include adjusting the filter settings so that the peak frequency position of a filter such as wow matches the key when the musical tone data is transposed, or the beat of the musical tone data is, for example, 4 beats. In the case of, the peak position may be changed between the first beat and the other beats so that a beat feeling can be obtained. Then, when it is determined that the filter coefficients are not retained (step S10; No), the CPU 11 shifts the process to step S12 described later.
  • step S10 when it is determined in step S10 that each filter coefficient is to be held (step S10; Yes), the CPU 11 switches the switches 82 and 83 of the filter coefficient calculation unit 62 to bring the coefficient holding state, whereby each filter coefficient is set. Is held at the value at that time, and each held filter coefficient is set as a starting point value (step S11).
  • step S12 determines whether or not to end the filter coefficient calculation process (step S12), and if it is determined not to end (step S12; No), the process shifts to the above-mentioned step S1.
  • step S12; Yes when it is determined to end the filter coefficient calculation process based on, for example, a user operation (step S12; Yes), the CPU 11 ends the filter coefficient calculation process.
  • FIG. 8 is a graph showing an example of the filter characteristics of the wah effect.
  • step S1 When the filter coefficient calculation process is executed by the user operating the operation unit 22 or the pedal 23 to which the wah effect is assigned while playing on the keyboard 21, the envelope signal generation operation is started (step S1). No, S3; Yes, S4, S5). Then, each filter coefficient is sequentially updated as the envelope signal changes (steps S6, S7, S8; No, S12; No, S1; Yes, S2; No, S6, S7), and finally the envelope signal is released.
  • step S8; Yes, S9 When the closing price is reached, the generation of the envelope signal is stopped and the value is cleared (step S8; Yes, S9).
  • Step S10; No, S12; No when the filter characteristic is set to be switched according to the number of operations of the modulation wheel of the operation unit 22 to which the wah effect is assigned (that is, when the number of operations reaches a predetermined number, the start point value When it is instructed to switch to another filter characteristic different from the filter characteristic corresponding to the coefficient set 1 of the coefficient set 1 and the coefficient set 2 of the end point value) (Steps S10; No, S12; No) are not retained until the above is reached, and the update of each filter coefficient is repeated in the same manner.
  • each filter coefficient repeats between the coefficient set 1 and the coefficient set 2 so as to sequentially change from the coefficient set 1 of the start point value to the coefficient set 2 of the end point value. Transition.
  • the filter characteristics also repeatedly change between the characteristics corresponding to the coefficient set 1 and the coefficient set 2.
  • the start point value and the end point value may be alternately switched between the coefficient set 1 and the coefficient set 2 by inverting the direction of change without clearing the value when the envelope signal arrives ( See the alternate long and short dash line in FIG. 7A).
  • each filter coefficient of the coefficient set 2 at that time is retained, and each filter coefficient of the coefficient set 2 is set as the start point value (Ste S10; Yes, S11). Then, the end point value of each filter coefficient is different from any of the coefficient set 1, the coefficient set 2, and the coefficient set in the process of changing from the coefficient set 1 to the coefficient set 2.
  • Coefficient set 3 (the other above instructed to switch). When the coefficient set corresponding to the filter characteristic) is set and the envelope signal generation operation is started (steps S12; No, S1; No, S3; Yes, S4, S5), the same as in the above case. , Each filter coefficient is sequentially updated toward the coefficient set 3 as the envelope signal changes.
  • each filter coefficient for the wah effect can be sequentially switched, and the filter characteristics can be sequentially updated while maintaining the sounding.
  • each filter coefficient sequentially changes from the coefficient set 1 of the start point value to the coefficient set 2 of the end point value.
  • each filter coefficient is set to the start point value (steps S9, S10; Yes, S11).
  • the end point value of each filter coefficient is set to that of the coefficient set 3 corresponding to the filter characteristic instructed to be switched and the envelope signal generation operation is started (steps S12; No, S1; No, S3; Yes, S4, S5), as in the above operation example, each filter coefficient is sequentially updated toward the coefficient set 3 as the envelope signal changes.
  • each filter coefficient is set to a value in the middle of the transition from the coefficient set 1 to the coefficient set 2 as a starting point value, and toward a coefficient set 3 different from these coefficient sets. Transition. As a result, it is possible to switch to another filter characteristic even during the change of the filter characteristic.
  • each filter coefficient at the time of the instruction is set as a coefficient set of the start point value, and the coefficient set 3 corresponding to the other filter characteristic is the end point value. It is set as a coefficient set of.
  • each filter coefficient at that time is retained, so that the state in which the filter coefficient is in transition is changed to the state of another filter coefficient. It is possible to perform a filter operation with a higher degree of freedom than before. Moreover, it is not necessary to use a crossfade mechanism or a delay memory for switching the filter coefficient.
  • each filter coefficient is set by setting the filter coefficient for transitioning from the coefficient set 2 to the coefficient set 3 based on one envelope signal for performing the interpolation processing of each filter coefficient. Unlike the case of setting the envelope signal, the transition timing of the filter coefficient does not shift.
  • the state of the filter coefficient calculation unit 62 is switched between the coefficient update state and the coefficient holding state based on the envelope signal and the user operation (forced arrival instruction), but the trigger for this state switching is , Envelope signal and user operation may be the only one.
  • the CPU 11 is described as the main control subject, but the present invention is not limited to this, and for example, the processor of the effect imparting unit 40 may perform at least a part of the control.
  • the present invention is applied to an electronic musical instrument provided with a keyboard
  • the electronic musical instrument to which the present invention can be applied is not particularly limited.
  • the present invention is not limited to application to electronic musical instruments, and the sound effect imparting device according to the present invention can be suitably applied to, for example, a filter-type effector.
  • the filter effect imparting device, the electronic musical instrument, and the control method of the electronic musical instrument according to the present invention are useful for effectively switching the filter characteristics.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

電子楽器などに用いるフィルタ効果付与装置は、組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御回路と、を有し、前記制御回路は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する。

Description

フィルタ効果付与装置、電子楽器及び電子楽器の制御方法
 本発明は、フィルタ効果付与装置、電子楽器及び電子楽器の制御方法に関するものである。
 従来、時間的に変化させたフィルタ係数を連続的にデジタルフィルタ装置に与えることにより、種々の音色の楽音信号を生成可能な電子楽器が知られている(例えば、特許文献1参照)。この種の電子楽器では、時間的に変化するエンベロープ信号をパラメータとして、複数のフィルタ係数を変化させていた。
特許第3217739号公報
 しかしながら、上記従来の技術では、エンベロープ信号を所定区間で変化させることで、2つのフィルタ特性の間を行き来させることしかできず、より効果的にフィルタ特性の切り換えを行うことが難しかった。
 本発明は以上のような事情に鑑みてなされたものであり、効果的にフィルタ特性を切り替えることができるフィルタ効果付与装置、電子楽器及びその制御方法を提供することを利点とするものである。
 前記課題を解決するために、本発明は、フィルタ効果付与装置であって、
 組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、
 前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御回路と、
 を有し、
 前記制御回路は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する。
 また、本発明は、電子楽器であって、
 ユーザが演奏操作を行う演奏操作部と、
 前記演奏操作部の演奏操作に応じた楽音を生成する楽音生成部と、
 組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、
 前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御回路と、
 前記楽音生成部により生成された楽音に対して前記特性可変フィルタによるフィルタ処理を施す効果付与部と、
 を有し、
 前記制御回路は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する。
 また、本発明は、電子楽器の制御方法であって、
 ユーザが演奏操作を行う演奏操作部と、前記演奏操作部の演奏操作に応じた楽音を生成する楽音生成部と、組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、を有する電子楽器に、
 前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御処理と、
 前記楽音生成部により生成された楽音に対して前記特性可変フィルタによるフィルタ処理を施す効果付与処理と、
 を実行させ、
 前記制御処理は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する。
 本発明によれば、効果的にフィルタ特性を切り替えることができる。
実施形態における電子楽器の概略構成を示すブロック図である。 実施形態における音源部及び効果付与部の具体構成を示すブロック図である。 実施形態における信号処理部の構成を示すブロック図である。 実施形態におけるフィルタ処理部の回路構成例を示すブロック図である。 実施形態におけるフィルタ係数算出部の回路構成例を示すブロック図である。 実施形態におけるフィルタ係数算出処理の流れを示すフローチャートである。 実施形態におけるフィルタ係数の遷移を説明するための図である。 実施形態におけるフィルタ係数の遷移を説明するための図である。 実施形態におけるワウ効果のフィルタ特性例を示すグラフである。
 図1から図8を参照しつつ、本発明に係るフィルタ効果付与装置及びこれを備える電子楽器の一実施形態について説明する。
 なお、以下の実施形態では、付与すべきフィルタ効果が音響効果である音響効果付与装置を例に説明するが、本発明は、音響効果以外のフィルタ効果を付与する場合を含む一般的なフィルタ効果付与装置にも適用することができる。
 また、以下に述べる実施形態には、本発明を実施するために技術的に好ましい種々の限定が付されているが、本発明の範囲を以下の実施形態及び図示例に限定するものではない。
 図1は、本実施形態における電子楽器1の概略構成を示すブロック図である。
 この図に示すように、電子楽器1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、鍵盤21、操作部22、ペダル23、音源部30、効果付与部40、D/A変換器(DAC)51、増幅回路52及びスピーカ53を備えている。このうち、D/A変換器51、増幅回路52及びスピーカ53を除く各部は、データバス14を介して相互に接続されている。
 CPU11は、電子楽器1全体を制御し、各種のプログラムやデータを格納したROM12からプログラムやデータを読み出して、プログラムを実行する。プログラムの実行により生成されるデータなどは、ワークエリアであるRAM13に記憶される。
 なお、CPU11(汎用の制御回路である汎用プロセッサ)とプログラムにより実現される各種の機能(制御処理)は、機能毎の専用回路で実現してもよい。
 鍵盤21、操作部22及びペダル23は、ユーザ(演奏者)の操作を受け付ける部分である。操作部22及びペダル23は、ユーザによる鍵盤21への押鍵操作によって発生した楽音への変化内容を指示する。これら鍵盤21、操作部22及びペダル23は、操作された内容に対応する信号(演奏操作情報)をCPU11に出力する。CPU11は、鍵盤21、操作部22及びペダル23からの演奏操作情報に基づいて、音源部30に発音指令を出す。
 音源部30は、CPU11からの発音指令に基づいて、ROM12又はRAM13から波形データを取得して楽音データを生成し、効果付与部40に出力する。
 効果付与部40は、DSP(Digital Signal Processor)で構成され、音源部30で生成された楽音データに対してユーザ操作に基づく所定の音響効果を付与し、D/A変換器51に出力する。
 D/A変換器51は、効果付与部40から出力されたデジタル信号の楽音データをアナログ信号に変換する。アナログ信号に変換された楽音データは、増幅回路52を介して左右一対のスピーカ53から放音される。
 図2は、音源部30及び効果付与部40の具体構成を示すブロック図である。
 この図に示すように、音源部30では、発音数に対応するnチャネルの各々において、波形生成部(WG)31により演奏操作情報に対応する楽音波形データが生成され、この楽音波形データに対して時変フィルタ(TVF)32によるフィルタ処理と時変アンプ(TVA)33によるアンプエンベロープ処理とが行われる。こうして生成されたnチャネル分の楽音データは、ミキサ34により、左右2チャネル×2組の系統毎に所定の重み付けの後に累算され、効果付与部40に出力される。
 効果付与部40は、第1信号処理部41及び第2信号処理部42の2つの信号処理部60を有している。2つの信号処理部60は、音源部30から個別に出力された楽音データに対し、所定の音響効果を付与する処理を実行する。本実施形態では、第1信号処理部41がインサーションやシステムエフェクト、第2信号処理部42が終段のマスターエフェクトを行う。2つの信号処理部60で処理された楽音データは、最終的に左右2つのチャネルの楽音データとしてD/A変換器51に出力される。
 信号処理部60は、楽音データに対して所定のフィルタ処理を施すものである。本発明に係る音響効果付与装置は、少なくとも信号処理部60とCPU11を含んで構成される。
 なお、本発明に係る音響効果付与装置は、効果付与部40の信号処理部60だけでなく、音源部30の時変フィルタ32にも適用可能である。時変フィルタ32は、時分割処理する場合にはハードウェアロジックで実装され、効果付与部40の信号処理部60は、DSPや高速CPUなどで実装されるのが一般的である。しかし、この実装形態は特に限定されず、それぞれに適した構成を選択することができる。
 図3は、信号処理部60の構成を示すブロック図である。
 この図に示すように、信号処理部60は、各々データバス14に接続されたエンベロープ生成部61、フィルタ係数算出部62、フィルタ処理部63を備えている。
 エンベロープ生成部61は、時間変化するエンベロープ信号(coef_eg:図5参照)を生成する。本実施形態のエンベロープ信号は、0から1の間で変化する。このエンベロープ信号は、サンプリング周期毎にレート値を順次加算して更新していくことで生成される。なお、エンベロープ生成は、ハードウェア構成により実現してもよいし、CPU11などの制御装置が逐次行うこととしてもよい。また、このエンベロープ生成は、サンプリング周期よりも遅い生成周期であってもよい。
 フィルタ係数算出部62は、CPU11から入力される演奏操作情報に基づくパラメータと、エンベロープ生成部61で生成されたエンベロープ信号とに基づいて、組をなす複数のフィルタ係数(後述のb0、b1、b2、a1、a2)を算出する。各フィルタ係数は、時間変化するエンベロープ信号により、時間の経過とともに変化する。
 このフィルタ係数の算出処理の詳細については、後述する。
 フィルタ処理部63は、複数のフィルタ係数に応じたフィルタ特性のフィルタ処理を、楽音データに施す。
 図4は、フィルタ処理部63の回路構成例を示すブロック図である。
 この図に示すように、フィルタ処理部63は、本実施形態においては一般的なバイカッドフィルタである。なお、図4に示すものは標準的な2次フィルタであり、多次フィルタを用いる場合はこれを適宜組合せればよい。
 具体的に、フィルタ処理部63は、加算器71a~71d、乗算器72a~72e、遅延器73a~73dを有する。このフィルタ処理部63では、乗算器72a~72eのそれぞれに、フィルタ係数算出部62で算出されたフィルタ係数が与えられ、乗算器72a~72eの各々に入力される信号とフィルタ係数とが乗算される。
 以下では、フィルタ係数を、b0(EQ_B0)、b1(EQ_B1)、b2(EQ_B2)、a1(EQ_A1)、a2(EQ_A2)とし、これらを1つの係数組とする。
 図5は、フィルタ係数算出部62の回路構成例を示すブロック図である。
 この図に示すように、フィルタ係数算出部62は、フィルタ処理部63のサンプリング周期と同周期で動作し、複数のフィルタ係数を算出してフィルタ処理部63に出力する。具体的に、フィルタ係数算出部62は、5つのフィルタ係数(b0、b1、b2、a1、a2)を個別に算出する5つの演算ブロック80(80a~80e)を有している。
 各演算ブロック80は、係数テーブル81、切替器82、83、減算器84、乗算器85、加算器86、レジスタ87~89を有している。
 係数テーブル81は、フィルタ処理部のフィルタ特性に対応した各フィルタ係数の始点値と終点値を、予め複数セット記憶している。この係数テーブル81は、ROM12又はRAM13から読み出された始点値と終点値が動作の度に一時記憶されることとしてもよいし、当該係数テーブル81自体がROM12又はRAM13に記憶されていることとしてもよい。
 5つの演算ブロック80における5つの係数テーブル81(81a~81e)から、始点値の係数組と終点値の係数組とが読み出される。本実施形態では、始点値の係数組1を{b10、b11、b12、a11、a12}とし、終点値の係数組2を{b20、b21、b22、b21、b22}とする。ここで、係数のアルファベットに続く最初の数字は始点値か終点値か(1が始点値、2が終点値)を意味し、2番目の数字は係数の次数を意味する。
 切替器82、83は、演算ブロック80(フィルタ係数算出部62)の処理動作を、エンベロープ信号の変化に伴ってフィルタ係数が更新される係数更新状態(切替器82、83が図5の実線の状態)と、フィルタ係数が保持される係数保持状態(切替器82、83が図5の破線の状態)とに切り替える。
 これら切替器82、83は、後述するように、エンベロープ信号が終値に到達した場合、または、操作部22若しくはペダル23に対する所定のユーザ操作が行われた場合に、切り替わるようになっている。エンベロープ信号の終値とは、エンベロープ信号が0から1に向かって変化している場合には1を、その逆の方向に変化している場合には0を指す。
 フィルタ係数算出部62が係数更新状態(切替器82、83が図5の実線の状態)の場合には、レジスタ87に始点値と終点値の差分値が保持され、レジスタ88に始点値が保持される。レジスタ87の差分値は乗算器85でエンベロープ信号coef_egと乗算されたうえで、レジスタ88の始点値と加算され、レジスタ89に保持される。
 これにより、フィルタ係数算出部62からフィルタ処理部63に出力される5つのフィルタ係数は、次の式(1)~(5)のようになる。
  EQ_B0 = b10 +coef_eg ×(b20-b10)     ・・・(1)
  EQ_B1 = b11 + coef_eg ×(b21-b11)     ・・・(2)
  EQ_B2 = b12 + coef_eg ×(b22-b12)     ・・・(3)
  EQ_A1 = a11 + coef_eg ×(a21-a11)     ・・・(4)
  EQ_A2 = a12 + coef_eg ×(a22-a12)     ・・・(5)
 このように、エンベロープ信号は、5つのフィルタ係数が、始点値の係数組1と終点値の係数組2とのいずれに近いかの割合を指定するパラメータであり、係数更新状態では、このエンベロープ信号が指定する割合となるように、5つのフィルタ係数が始点値の係数組1と終点値の係数組2との間で補間処理される。こうして、フィルタ係数の始点値と終点値がエンベロープ信号を用いて補間されることにより、フィルタ係数が始点値から終点値まで次第に変化しつつ逐次更新される。つまり、フィルタ係数が始点値と終点値の間で動的に更新される。
 なお、本実施形態では、始点値と終点値の間を直線補間した場合を例に挙げて説明したが、この補間手法は直線補間に限定されない。例えば、始点値と終点値に個別に係数を割り当てて別途計算したりしてもよい。
 一方、フィルタ係数算出部62が係数保持状態(切替器82、83が図5の破線の状態)の場合には、レジスタ89のフィルタ係数がその時点での値に保持されるとともに、このフィルタ係数が始点値としてレジスタ88に保持され、レジスタ87の差分値にも反映される。
 続いて、フィルタ係数算出部62で実行されるフィルタ係数算出処理について説明する。
 図6は、フィルタ係数算出処理の流れを示すフローチャートである。
 フィルタ係数算出処理は、CPU11が所定のプログラムを読み出して展開することで実行されるフィルタ処理の一環として実行される。
 なお、以下では、その時点での各フィルタ係数を用いて所定の周期でフィルタ処理が実行されているものとする。また、フィルタ処理の初期状態として、フィルタ係数算出部62が係数更新状態であるものの、エンベロープ信号の生成がオフ(信号がゼロ)とされ、始点値の係数組でフィルタ処理が行われているものとする。
 図6に示すように、フィルタ処理が実行されると、まずCPU11は、エンベロープ生成部61がエンベロープ信号の生成動作を行っているか否かを判定する(ステップS1)。
 このステップS1において、エンベロープ信号の生成動作が行われていると判定した場合(ステップS1;Yes)、CPU11は、エンベロープ信号の強制到達指示が入力されたか否かを判定する(ステップS2)。
 強制到達指示とは、例えば操作部22又はペダル23に対する所定のユーザ操作が行われた場合に、そのときの始点値及び終点値に対応するフィルタ特性とは異なるフィルタ特性への切り替えの指示であって、エンベロープ信号の生成を停止させてそのときの各フィルタ係数を保持させる指示である。CPU11は、当該ユーザ操作を検知したときに、エンベロープ信号の強制到達指示が入力されたと判定する。
 そして、エンベロープ信号の強制到達指示が入力されたと判定した場合(ステップS2;Yes)、CPU11は、後述のステップS9へ処理を移行する。また、エンベロープ信号の強制到達指示が入力されていないと判定した場合には(ステップS2;No)、CPU11は、後述のステップS6へ処理を移行する。
 一方、ステップS1において、エンベロープ信号の生成動作が行われていないと判定した場合(ステップS1;No)、CPU11は、フィルタ係数算出部62の係数保持状態を解除するか否かを判定する(ステップS3)。
 そして、係数保持状態を解除しないと判定した場合(ステップS3;No)、CPU11は、後述のステップS12へ処理を移行する。このとき、フィルタ係数算出部62が係数更新状態であった場合には、CPU11は、切替器82、83を動作させて係数保持状態に切り替える。
 また、ステップS3において、フィルタ係数算出部62の係数保持状態を解除すると判定した場合(ステップS3;Yes)、CPU11は、このときのエンベロープ信号の値をクリアして初期値に戻すとともに、フィルタ係数算出部62の各フィルタ係数の終点値を係数テーブル81から読み出して所定の値に設定した後、切替器82、83を切り替えて係数更新状態とする(ステップS4)。ただし、フィルタ係数算出部62がすでに係数保持状態であった場合には、係数保持状態をそのまま維持する。また、例えば後述のステップS11における各フィルタ係数の始点値の変更がなされなかった場合など、すでに設定されている各フィルタ係数の終点値を変更する必要がないときには、当該終点値をそのまま維持する。新たに設定される終点値は、ユーザ操作に基づいて、それへの切り替えが指示されたフィルタ特性に対応するものである。
 なお、このステップでは、エンベロープ信号の値を初期値に戻さなくともよく、終値に到達していた場合にはこの終値を初期値としたり(つまり、変化の方向を反転させる)、0~1の区間の中間値であった場合にはこの中間値を保持したりしてもよい。
 それから、CPU11は、エンベロープ生成部61によるエンベロープ信号の生成動作を開始させる(ステップS5)。
 次に、エンベロープ生成部61が、エンベロープ信号の更新処理を行い、そのときのエンベロープ信号coef_egにレート値を加算してその値を進める(ステップS6)。
 そして、フィルタ係数算出部62が、更新されたエンベロープ信号の値を用い、上述の式(1)~(5)により各フィルタ係数を算出して更新する(ステップS7)。
 次に、CPU11は、エンベロープ信号が終値に到達したか否かを判定する(ステップS8)。
 そして、エンベロープ信号が終値に到達していないと判定した場合(ステップS8;No)、CPU11は、後述のステップS12へ処理を移行する。
 一方、このステップS8において、エンベロープ信号が終値に到達したと判定した場合には(ステップS8;Yes)、CPU11は、次のステップS9に処理を移行する。
 次に、CPU11は、エンベロープ生成部61によるエンベロープ信号の生成動作を停止する(ステップS9)。
 次に、CPU11は、このときの各フィルタ係数を保持するか否かを判定する(ステップS10)。
 各フィルタ係数を保持するか否かの判定内容は、ユーザ操作に基づいて設定される。例えば、エンベロープ信号の終値への到達回数に基づいて、又は楽音データの特徴やその変化に基づいて、各フィルタ係数が保持される。後者の具体例としては、例えば楽音データが転調される場合などにワウ等のフィルタのピーク周波数位置が調に合ったものとなるようにフィルタ設定を調整したり、楽音データの拍子が例えば4拍子の場合に1拍目とそれ以外とでピーク位置を変えてビート感が出るようにしたりすることが挙げられる。
 そして、各フィルタ係数を保持しないと判定した場合には(ステップS10;No)、CPU11は、後述のステップS12へ処理を移行する。
 また、ステップS10において、各フィルタ係数を保持すると判定した場合(ステップS10;Yes)、CPU11は、フィルタ係数算出部62の切替器82、83を切り替えて係数保持状態とし、これにより、各フィルタ係数をその時点での値に保持するとともに、この保持した各フィルタ係数を始点値として設定する(ステップS11)。
 次に、CPU11は、フィルタ係数算出処理を終了させるか否かを判定し(ステップS12)、終了させないと判定した場合には(ステップS12;No)、上述のステップS1へ処理を移行する。
 一方、例えばユーザ操作などに基づいて、フィルタ係数算出処理を終了させると判定した場合(ステップS12;Yes)、CPU11は、フィルタ係数算出処理を終了させる。
 続いて、上述したフィルタ係数算出処理について、具体的な動作例を挙げて説明する。
 本動作例では、エンベロープ信号が0~1の区間において、ワウ効果となるフィルタ係数が割り当てられた場合について説明する。
 図7A及び図7Bは、フィルタ係数の遷移を説明するための図であり、図8は、ワウ効果のフィルタ特性例を示すグラフである。
 まず、エンベロープ信号が終値に到達してフィルタ係数が切り替わる場合の動作例について説明する。
 ユーザが、鍵盤21で演奏しつつワウ効果の割り当てられた操作部22又はペダル23を操作するなどして、フィルタ係数算出処理が実行されると、エンベロープ信号の生成動作が開始される(ステップS1;No、S3;Yes、S4、S5)。
 すると、エンベロープ信号の変化に伴って各フィルタ係数も順次更新されていき(ステップS6、S7、S8;No、S12;No、S1;Yes、S2;No、S6、S7)、遂にはエンベロープ信号が終値に到達して、当該エンベロープ信号の生成が停止され値がクリアされる(ステップS8;Yes、S9)。
 ここで、例えばワウ効果が割り当てられた操作部22のモジュレーションホイールの操作回数に応じてフィルタ特性が切り替わるように設定されていた場合(つまり、当該操作回数が所定回数に達したときに、始点値の係数組1及び終点値の係数組2に対応するフィルタ特性とは異なる他のフィルタ特性へ切り替わるよう指示されていた場合)、この操作回数に対応するエンベロープ信号の終値への到達回数が所定回数に達するまでは、各フィルタ係数は保持されず(ステップS10;No、S12;No)、同じように各フィルタ係数の更新が繰り返される。
 これにより、図7A及び図8に示すように、各フィルタ係数は始点値の係数組1から終点値の係数組2に向かって順次変化するようにして係数組1と係数組2の間を繰り返し遷移する。フィルタ特性も、これら係数組1と係数組2に対応した特性の間で繰り返し変化する。
 なお、このときには、エンベロープ信号の到達時にその値をクリアせずに変化の方向を反転させることで、係数組1と係数組2とで始点値と終点値が交互に切り替わるようにしてもよい(図7Aの一点鎖線参照)。
 そして、エンベロープ信号の終値への到達回数が所定回数に達すると、その時点での係数組2の各フィルタ係数が保持されるとともに、当該係数組2の各フィルタ係数が始点値に設定される(ステップS10;Yes、S11)。
 それから、各フィルタ係数の終点値が、係数組1,係数組2,及び係数組1から係数組2への変化途中の係数組のいずれとも異なる係数組3(切り替えが指示された上記の他のフィルタ特性に対応する係数組)のものに設定されて、エンベロープ信号の生成動作が開始されると(ステップS12;No、S1;No、S3;Yes、S4、S5)、上述の場合と同様に、エンベロープ信号の変化に伴って各フィルタ係数が係数組3に向かって順次更新されていく。
 このように、各フィルタ係数は、始点値が係数組1から係数組2に、終点値が係数組2から係数組3に変更されて、係数組2から係数組3に向かって遷移する。フィルタ特性も、これら係数組2と係数組3に対応した特性の間で変化する。
 これにより、ワウ効果用の各フィルタ係数を順次切り替えることができ、ひいては、発音を維持したまま、フィルタ特性を順次更新することができる。
 続いて、エンベロープ信号の強制到達指示によりフィルタ特性が切り替わる場合の動作例について説明する。
 まず、上述の動作例と同様にして、ユーザ操作によりフィルタ係数算出処理が実行されると、各フィルタ係数が始点値の係数組1から終点値の係数組2に向かって順次変化する。
 そして、例えばフィルタ特性の切替機能が割り当てられた操作部22のスイッチをユーザが操作すると、この操作によりエンベロープ信号の強制到達指示が入力され(ステップS1;Yes、S2;Yes)、このときの各フィルタ係数が保持されるとともに、当該各フィルタ係数が始点値に設定される(ステップS9、S10;Yes、S11)。
 それから、各フィルタ係数の終点値が、切り替えが指示されたフィルタ特性に対応する係数組3のものに設定されて、エンベロープ信号の生成動作が開始されると(ステップS12;No、S1;No、S3;Yes、S4、S5)、上述の動作例と同様に、エンベロープ信号の変化に伴って各フィルタ係数が係数組3に向かって順次更新されていく。
 こうして、図7Bに示すように、各フィルタ係数は、係数組1から係数組2への遷移中にその途中の値が始点値とされて、これらの係数組とは異なる係数組3に向かって遷移する。
 これにより、フィルタ特性の変化の途中であっても、さらに別のフィルタ特性に切り替えることができる。
 以上のように、本実施形態によれば、各フィルタ係数が係数組1から係数組2まで変化した場合又は変化している場合であって、係数組1及び係数組2に対応するフィルタ特性とは異なる他のフィルタ特性への切り替えが指示されたときに、当該指示されたときの各フィルタ係数が始点値の係数組として設定されるとともに、他のフィルタ特性に対応する係数組3が終点値の係数組として設定される。
 これにより、係数組1に対応するフィルタ特性から係数組2に対応するフィルタ特性への変化後又は変化中に、これらとは異なる係数組3に対応したフィルタ特性への切り替えを行うことができる。
 したがって、2つのフィルタ特性の間の行き来しかできなかった従来に比べ、効果的にフィルタ特性を切り替えることができる。
 また、本実施形態によれば、フィルタ係数の変更を指示されたときにその時点での各フィルタ係数が保持されるので、フィルタ係数の遷移中の状態からでも別のフィルタ係数の状態に遷移させることができ、従来よりも自由度の高いフィルタ動作を行うことができる。
 また、フィルタ係数の切り替えにクロスフェード機構や遅延メモリを用いる必要がない。
 また、本実施形態によれば、各フィルタ係数の補間処理を行うための1つのエンベロープ信号に基づいて、係数組2から係数組3へ遷移させるフィルタ係数の設定を行うことにより、各フィルタ係数にエンベロープ信号を設定する場合と異なり、フィルタ係数の遷移タイミングがずれたりすることがない。
 なお、以上本発明の実施形態について説明したが、本発明は、かかる実施形態に限定されず、その要旨を逸脱しない範囲で、種々変形が可能であることは言うまでもない。
 例えば、上記実施形態では、フィルタ係数算出部62の状態が、エンベロープ信号及びユーザ操作(強制到達指示)に基づいて係数更新状態と係数保持状態とに切り替わるものとしたが、この状態切替のトリガーは、エンベロープ信号及びユーザ操作のいずれか一方のみであってもよい。
 また、上記実施形態では、CPU11を主たる制御主体として記載したが、これに限定されず、例えば効果付与部40のプロセッサがそのうち少なくとも一部の制御を行うこととしてもよい。
 また、上記実施形態では、本発明を、鍵盤を備える電子楽器に適用した場合について説明したが、本発明を適用可能な電子楽器は特に限定されない。
 さらに言えば、本発明は電子楽器への適用に限定されず、本発明に係る音響効果付与装置は、例えばフィルタ系のエフェクターなどにも好適に適用可能である。
 以上本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
 以上のように、本発明に係るフィルタ効果付与装置、電子楽器及び電子楽器の制御方法は、効果的にフィルタ特性を切り替えるのに有用である。
1   電子楽器
11  CPU
30  音源部
40  効果付与部
60  信号処理部
61  エンベロープ生成部
62  フィルタ係数算出部
63  フィルタ処理部
80  演算ブロック
81  係数テーブル
82  切替器
83  切替器
87  レジスタ
88  レジスタ
89  レジスタ
coef_eg エンベロープ信号

Claims (14)

  1.  組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、
     前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御回路と、
     を有し、
     前記制御回路は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する、
     フィルタ効果付与装置。
  2.  前記制御回路は、
     前記特性可変フィルタのフィルタ特性を、第1フィルタ特性から第2フィルタ特性へと変化させることが指示された場合に、前記第1フィルタ特性に対応する係数組を前記始点値として設定するとともに、前記第2フィルタ特性に対応する係数組を前記終点値として設定した後、前記複数のフィルタ係数の組を、前記第1係数組から前記第2係数組まで変化させていき、
     前記変化の途中または前記変化の完了後に、前記特性可変フィルタのフィルタ特性を、前記第1フィルタ特性及び前記第2フィルタ特性とは異なる第3フィルタ特性へと変化させることが指示された場合に、前記指示されたときに保持されていた係数組を前記始点値として設定するとともに、前記第3フィルタ特性に対応する第3係数組を前記終点値として設定する、
     請求項1に記載のフィルタ効果付与装置。
  3.  前記制御回路は、
     前記第1フィルタ特性から前記第2フィルタ特性への変化の途中で、前記第3フィルタ特性へと変化させることが指示された場合に、前記第1フィルタ特性から前記第2フィルタ特性へと変化させる処理を中断し、前記指示されたときに保持されている係数組を前記始点値として設定するとともに、前記第3フィルタ特性に対応する第3係数組を前記終点値として設定して、前記指示されたときに保持されている係数組に対応するフィルタ特性から前記第3フィルタ特性へと変化させる処理を開始する、
     請求項2に記載のフィルタ効果付与装置。
  4.  前記制御回路は、
     時間変化するエンベロープ信号を生成するエンベロープ生成部と、
     始点値として設定された係数組と、終点値として設定された係数組と、前記エンベロープ生成部で生成されたエンベロープ信号とに基づいて新たな係数組を算出するフィルタ係数算出部と、
     前記フィルタ係数算出部により算出された係数組に対応するフィルタ特性のフィルタ処理を楽音データに施すフィルタ処理部と、
     を含む、請求項1~3のいずれか一項に記載のフィルタ効果付与装置。
  5.  前記エンベロープ生成部は、始点値と終点値との間の比率を示すエンベロープ信号を生成し、
     前記フィルタ係数算出部は、前記エンベロープ信号が示す比率に従って、始点値として設定された係数組と、終点値として設定された係数組との中間の値を有する係数組を算出する、
     請求項4に記載のフィルタ効果付与装置。
  6.  前記フィルタ係数算出部は、
     前記始点値に対応する係数組を記憶している第1メモリと、
     前記終点値に対応する係数組を記憶している第2メモリと、
     前記変化の途中の係数組を記憶している第3メモリと、を有し、
     前記変化の途中での指示に応じて、前記第3メモリに記憶されている係数組を前記第1メモリに記憶させる処理を実行する、請求項4または5に記載のフィルタ効果付与装置。
  7.  複数のフィルタ特性それぞれに対応する係数組を予め記憶を記憶している第4メモリを更に有し、
     前記フィルタ係数算出部は、指定されたフィルタ特性に対応する係数組を前記第4メモリから読み出して前記第1メモリおよび前記第2メモリに設定する、
     請求項6に記載のフィルタ効果付与装置。
  8.  前記制御回路は、ユーザ操作に応じて指定されるフィルタ特性に対応する係数組を前記第4メモリから読み出して前記第1メモリおよび前記第2メモリに設定する、
     請求項7に記載のフィルタ効果付与装置。
  9.  前記第3係数組は、前記第1係数組、前記第2係数組、及び前記第1係数組から前記第2係数組への変化途中の係数組のいずれとも異なる、
     請求項1~8のいずれか一項に記載のフィルタ効果付与装置。
  10.  前記制御回路は、新たに生成すべき係数組が、前記始点値の係数組と前記終点値の係数組のいずれに近いかの割合を指定するエンベロープ信号に従って、前記エンベロープ信号が指定する割合となるように、前記始点値の係数組と前記終点値の係数組との間で補間処理を行って新たな係数組を生成する、
     請求項1~9のいずれか一項に記載のフィルタ効果付与装置。
  11.  前記制御回路は、新たに生成する係数組を前記始点値の係数組から前記終点値の係数組へと逐次変化させながら、前記特性可変フィルタに設定する係数組を、新たに生成される係数組で逐次更新していき、逐次更新される係数組が前記終点値の係数組に到達したときに、新たな係数組の生成および前記特性可変フィルタに設定する係数組の更新を停止する、
     請求項1~10のいずれか一項に記載のフィルタ効果付与装置。
  12.  前記制御回路は、ユーザの演奏操作に応じて前記特性可変フィルタのフィルタ特性を変化させる、
     請求項1~11のいずれか一項に記載のフィルタ効果付与装置。
  13.  ユーザが演奏操作を行う演奏操作部と、
     前記演奏操作部の演奏操作に応じた楽音を生成する楽音生成部と、
     組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、
     前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御回路と、
     前記楽音生成部により生成された楽音に対して前記特性可変フィルタによるフィルタ処理を施す効果付与部と、
     を有し、
     前記制御回路は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する、
     電子楽器。
  14.  ユーザが演奏操作を行う演奏操作部と、前記演奏操作部の演奏操作に応じた楽音を生成する楽音生成部と、組をなす複数のフィルタ係数に応じたフィルタ特性を有する特性可変フィルタと、を有する電子楽器に、
     前記複数のフィルタ係数の組を、始点値として設定された第1係数組から終点値として設定された第2係数組まで変化させる制御処理と、
     前記楽音生成部により生成された楽音に対して前記特性可変フィルタによるフィルタ処理を施す効果付与処理と、
     を実行させ、
     前記制御処理は、前記変化の途中の係数組を保持させるとともに、前記終点値として新たに第3係数組を設定する際に、前記保持されている係数組を前記始点値として設定する、
     電子楽器の制御方法。
PCT/JP2020/001509 2019-03-25 2020-01-17 フィルタ効果付与装置、電子楽器及び電子楽器の制御方法 WO2020195041A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080022006.2A CN113678194A (zh) 2019-03-25 2020-01-17 滤波器效果赋予装置、电子乐器以及电子乐器的控制方法
US17/441,269 US20220157284A1 (en) 2019-03-25 2020-01-17 Filter effect imparting device, electronic musical instrument, and control method for electronic musical instrument

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-055829 2019-03-25
JP2019055829A JP7375317B2 (ja) 2019-03-25 2019-03-25 フィルタ効果付与装置、電子楽器及び電子楽器の制御方法

Publications (1)

Publication Number Publication Date
WO2020195041A1 true WO2020195041A1 (ja) 2020-10-01

Family

ID=72609740

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/001509 WO2020195041A1 (ja) 2019-03-25 2020-01-17 フィルタ効果付与装置、電子楽器及び電子楽器の制御方法

Country Status (4)

Country Link
US (1) US20220157284A1 (ja)
JP (1) JP7375317B2 (ja)
CN (1) CN113678194A (ja)
WO (1) WO2020195041A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02146599A (ja) * 1988-11-29 1990-06-05 Sony Corp 音源データ圧縮符号化方法
JPH04114199A (ja) * 1990-09-05 1992-04-15 Yamaha Corp 楽音信号発生装置
JPH0535277A (ja) * 1991-07-29 1993-02-12 Kawai Musical Instr Mfg Co Ltd 電子楽器
JPH08234759A (ja) * 1995-02-27 1996-09-13 Kawai Musical Instr Mfg Co Ltd 楽音信号発生装置
JP2006157498A (ja) * 2004-11-30 2006-06-15 Matsushita Electric Ind Co Ltd 音響エコーキャンセラとそれを用いたハンズフリー電話及び音響エコーキャンセル方法
JP2008107682A (ja) * 2006-10-27 2008-05-08 Casio Comput Co Ltd フィルタ装置および電子楽器

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5086475A (en) * 1988-11-19 1992-02-04 Sony Corporation Apparatus for generating, recording or reproducing sound source data
JP3879681B2 (ja) * 2002-05-20 2007-02-14 ヤマハ株式会社 楽音信号生成装置
JP4114199B2 (ja) 2002-09-27 2008-07-09 マツダ株式会社 エンジンの燃焼制御装置
JP6252642B1 (ja) * 2016-09-27 2017-12-27 カシオ計算機株式会社 効果付与装置、効果付与方法、プログラムおよび電子楽器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02146599A (ja) * 1988-11-29 1990-06-05 Sony Corp 音源データ圧縮符号化方法
JPH04114199A (ja) * 1990-09-05 1992-04-15 Yamaha Corp 楽音信号発生装置
JPH0535277A (ja) * 1991-07-29 1993-02-12 Kawai Musical Instr Mfg Co Ltd 電子楽器
JPH08234759A (ja) * 1995-02-27 1996-09-13 Kawai Musical Instr Mfg Co Ltd 楽音信号発生装置
JP2006157498A (ja) * 2004-11-30 2006-06-15 Matsushita Electric Ind Co Ltd 音響エコーキャンセラとそれを用いたハンズフリー電話及び音響エコーキャンセル方法
JP2008107682A (ja) * 2006-10-27 2008-05-08 Casio Comput Co Ltd フィルタ装置および電子楽器

Also Published As

Publication number Publication date
JP2020160101A (ja) 2020-10-01
CN113678194A (zh) 2021-11-19
JP7375317B2 (ja) 2023-11-08
US20220157284A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
US7612281B2 (en) Reverberation effect adding device
JP4702392B2 (ja) 共鳴音発生装置および電子楽器
JP2722795B2 (ja) 楽音合成装置
JPH02222996A (ja) 効果装置
WO2020195041A1 (ja) フィルタ効果付与装置、電子楽器及び電子楽器の制御方法
JPH0883066A (ja) 電子楽器
JP2009175677A (ja) 共鳴音付加装置および電子楽器
JP7147804B2 (ja) 効果付与装置、方法、およびプログラム
JPH01198797A (ja) 電子楽器
JP5169753B2 (ja) 共鳴音付加装置および電子楽器
JP2629418B2 (ja) 楽音合成装置
JP3341777B2 (ja) 効果付与装置
JP3347338B2 (ja) 楽音合成装置
JP3036417B2 (ja) 信号処理装置
JP4432951B2 (ja) 楽音発生装置および電子楽器
JP5035388B2 (ja) 共鳴音発生装置および電子楽器
JP3660125B2 (ja) 電子楽器の音像定位感制御装置
JP3305562B2 (ja) Dspを用いた音響効果付加装置
JP3000828B2 (ja) 楽音効果装置および楽音信号発生装置
JP4246869B2 (ja) オーディオ波形信号再生制御装置
JP3508139B2 (ja) デジタル信号処理プロセッサ
JP2666607B2 (ja) 電子楽器の効果音制御装置
JP3179333B2 (ja) Dspを用いた音響効果付加装置
JP4106739B2 (ja) デジタル信号処理方法およびデジタル信号処理装置
CN112912952A (zh) 将音响效果赋予至声音信号的效果赋予装置的控制方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20779110

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20779110

Country of ref document: EP

Kind code of ref document: A1