JP2018159734A - Timbre controller, timbre control method, program, and electric musical instrument - Google Patents
Timbre controller, timbre control method, program, and electric musical instrument Download PDFInfo
- Publication number
- JP2018159734A JP2018159734A JP2017055531A JP2017055531A JP2018159734A JP 2018159734 A JP2018159734 A JP 2018159734A JP 2017055531 A JP2017055531 A JP 2017055531A JP 2017055531 A JP2017055531 A JP 2017055531A JP 2018159734 A JP2018159734 A JP 2018159734A
- Authority
- JP
- Japan
- Prior art keywords
- timbre
- waveform data
- tone
- unit
- storage unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、音色を補正する音色制御装置、音色制御方法、プログラムおよび電子楽器に関する。 The present invention relates to a timbre control apparatus, a timbre control method, a program, and an electronic musical instrument that correct a timbre.
公知の波形メモリ読み出し方式で構成された音源を備える電子楽器では、製品コスト低廉化を図るため、安価で記憶容量の大きいフラッシュメモリ等を外部メモリ(二次記憶装置)に用い、一方、フラッシュメモリ等より高価であるが高速にリード・ライト可能なRAMを内部メモリ(一次記憶装置)に用いることが多い。 In an electronic musical instrument having a sound source configured by a known waveform memory readout method, a flash memory having a low storage capacity and a large storage capacity is used as an external memory (secondary storage device) in order to reduce the product cost. In many cases, a RAM that is more expensive than the above but can be read and written at high speed is used as an internal memory (primary storage device).
こうした電子楽器では、各種音色の波形データの他、自動伴奏用のリズムパターンデータあるいは各種設定用のレジストレーションデータなどを外部メモリに保存しておき、これらの中からユーザ所望の楽音を生成するのに必要なデータを内部メモリへ転送する構成を有する。 In such an electronic musical instrument, in addition to waveform data of various timbres, rhythm pattern data for automatic accompaniment or registration data for various settings is stored in an external memory, and a musical tone desired by the user is generated from these data. Data necessary for the transfer to the internal memory.
この種の装置(電子楽器)として、例えば特許文献1には、第1の記憶手段に記憶された各種データの中で起動時に転送すべきデータ群を第2の記憶手段に転送する際に、そのデータ群を構成する波形データの中で予め定めた音色の波形データを優先して転送し、その転送状況に応じて、例えば同時発音数を少なくする動作制限によって、転送開始(起動)から短時間で演奏可能にする技術が開示されている。
As this type of device (electronic musical instrument), for example, in
ところで、上記特許文献1に開示の装置では、同時発音数を少なくする動作制限によって、転送開始(起動)から短時間で演奏可能にすることは可能であるが、より動作制限が少ない方法で、音色切替え時の発音遅れを低減させる方法を提供するものではなかった。
By the way, in the apparatus disclosed in
本発明は、このような事情に鑑みてなされたもので、より動作制限が少ない方法で、音色切替え時の発音遅れを低減させることができる音色制御装置、音色制御方法、プログラムおよび電子楽器に関する。 The present invention has been made in view of such circumstances, and relates to a timbre control apparatus, a timbre control method, a program, and an electronic musical instrument that can reduce a pronunciation delay at the time of timbre switching by a method with less operation restriction.
本発明の音色制御装置は、第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させる制御を行なう楽音発生制御部と、音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生制御部が再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送部と、前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正部と、を具備することを特徴とする。
The tone color control apparatus of the present invention includes a tone generation control unit that performs control to generate a tone by reproducing waveform data of the first tone stored in the first storage unit, and a first tone change control unit according to a tone switching instruction. Waveform data of a second tone color different from the waveform data of the first tone color being reproduced by the tone generation control unit from the waveform data of a plurality of types of tone colors stored in the
本発明の音色制御方法は、前記音色制御装置が、第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させ、音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送し、前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする。
According to the timbre control method of the present invention, the timbre control device reproduces the waveform data of the first timbre stored in the first storage unit to generate a musical tone, and the second timbre control apparatus performs the second timbre control device according to the timbre switching instruction. Transferring waveform data of a second tone color different from the waveform data of the first tone color being reproduced from the waveform data of a plurality of types of tone colors stored in the storage unit to the first storage unit; The tone color of the musical tone generated by reproducing the waveform data of the first tone color during the waveform data transfer period until the waveform data of the
本発明のプログラムは、音色制御装置に搭載されるコンピュータに、第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させる楽音発生ステップと、音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生ステップで再生された前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送ステップと、前記波形転送ステップにて前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生ステップで前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正ステップと、を実行させることを特徴とする。 The program of the present invention provides a musical tone generating step for generating a musical tone by reproducing waveform data of the first timbre stored in the first storage unit on a computer mounted on the timbre control device, and a timbre switching instruction. In response, the waveform data of the second timbre different from the waveform data of the first timbre reproduced in the musical tone generation step from the waveform data of the plurality of types of timbres stored in the second storage unit. A waveform transfer step for transferring to the first storage unit, and the generation of the musical sound during the waveform data transfer period until the waveform data of the second tone color is transferred to the first storage unit in the waveform transfer step. And a tone color correcting step of correcting the tone color of the musical tone generated by reproducing the waveform data of the first tone color in the step so as to approach the second tone color.
本発明では、より動作制限が少ない方法で、音色切替え時の発音遅れを低減させることが出来る。 In the present invention, it is possible to reduce the sound generation delay at the time of timbre switching by a method with less operation restriction.
以下、図面を参照して本発明の実施形態について説明する。
A.外観および全体構成
図1を参照して一実施形態の外観および全体構成について説明する。図1(a)は、本発明による音色制御装置を備えた一実施形態による電子楽器100の操作パネルPの外観を示す外観図である。図1(b)は、本発明による音色制御装置を備えた一実施形態による電子楽器100の全体構成を示すブロック図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
A. Appearance and Overall Configuration With reference to FIG. 1, an appearance and an overall configuration of an embodiment will be described. FIG. 1A is an external view showing an external appearance of an operation panel P of an electronic
図1において、鍵盤1は演奏入力操作(押離鍵操作)に応じたキーオン/キーオフ信号、鍵番号およびベロシティ等からなる演奏入力情報を発生する。鍵盤1が発生する演奏入力情報は、CPU6においてMIDI形式のノートオン/ノートオフイベントに変換された後、音源部9に供給される。
In FIG. 1, a
操作部2は、楽器の操作パネルPに配設される各種操作スイッチから構成され、ユーザ(演奏者)により操作されるスイッチ種に対応したスイッチイベントを発生する。本実施形態では、図1(a)に図示するように、装置電源をパワーオン/パワーオフする電源スイッチPSの他、例えば発生楽音の音色を切り替える音色スイッチTS1〜TS3を備える。
The
図1(a)に図示するように、楽器の操作パネルPには、表示部3を構成するLCDパネルが設けられる。表示部3は、LCDパネル、当該LCDパネルを表示駆動するドライバ(不図示)、当該ドライバを表示制御するコントローラ(不図示)から構成され、CPU6から供給される表示制御信号に応じて、楽器各部の設定状態や動作状態などを画面表示する。
As shown in FIG. 1A, the operation panel P of the musical instrument is provided with an LCD panel constituting the
音色ROM4は、安価で記憶容量の大きいフラッシュメモリ等の不揮発性メモリから構成される。この音色ROM4は、説明の簡略化を図る為、図2(a)に図示する一例のように、3つの音色の波形データが各々記憶される音色1波形データエリアWDA1、音色2波形データエリアWDA2および音色3波形データエリアWDA3を有する。
The
音色RAM5は、音色ROM4よりも高速にリード・ライト可能な揮発性メモリであり、図2(b)に図示する2つ記憶エリアとなる領域Aおよび領域Bを備える。領域Aは、CPU6の制御の下に、音源9が波形データを読み出す記憶エリアである。領域Bは、CPU6の制御の下に、ユーザ操作される音色スイッチTS1〜TS3で選択される音色の波形データを音色ROM4から読み出して格納する記憶エリアである。この領域A,Bは固定された記憶エリアではなく、領域Aが領域B(又は領域Bが領域A)として機能するよう動的に変化する。
The
CPU6は、操作部2から供給される各種スイッチイベントに基づき装置各部の動作状態を設定する他、鍵盤1から供給される演奏入力情報に基づき音源部9に楽音データの発生を指示する。また、CPU6は音色切り替え時の発音遅れを皆無にし、かつ音源部9が発音中の音色の楽音データを、徐々に切り替えるべき音色に変化させる音色制御装置として機能する。音色制御装置の機能的構成については追って述べる。
The CPU 6 sets the operating state of each part of the apparatus based on various switch events supplied from the
例えばフラッシュメモリ等から構成されるROM7は、図3(a)に図示するように、プログラムデータエリアPAおよび制御データエリアCDAを備える。ROM7のプログラムデータエリアPAには、CPU6を動作させる各種制御プログラムが記憶される。各種制御プログラムとは、後述するメインルーチンや、当該メインルーチンからコールされる音色切替処理を含む。ROM7の制御データエリアCDAには、楽器動作を設定する各種制御データ・パラメータが記憶される。
For example, the
RAM8は、図3(b)に図示するように、CPU6に用いられる各種レジスタ・フラグデータを一時記憶するワークエリアWAを備える他、フィルタ係数エリアFCAを有する。フィルタ係数エリアFCAには、押鍵された鍵のノートナンバnn、インデクスi(後述する)およびサンプル番号x(後述する)を読み出しアドレスとする3次元データテーブルが、音色切替えパターン別にファクトリープリセットされる。具体的には、音色1/2切替時フィルタ係数配列cf1[nn][i][x]、音色2/3切替時フィルタ係数配列cf2[nn][i][x]および音色3/1切替時フィルタ係数配列cf3[nn][i][x]を備えており、これらが意図するところについては追って詳述する。
As shown in FIG. 3B, the
音源部9は、公知の波形メモリ読み出し方式にて構成され、複数の同時発音チャンネルを備える。音源部9では、CPU6から供給され、演奏入力情報に基づくノートオンイベントに従って音色RAM5の領域Aから読み出す波形データに基づいて楽音データを発音(発生)させ、ノートオフイベントに従って当該楽音データを消音(停止)する。
The sound source unit 9 is configured by a known waveform memory reading method, and includes a plurality of simultaneous sound generation channels. The tone generator 9 generates (generates) musical tone data based on the waveform data supplied from the CPU 6 and read from the area A of the
フィルタ部10は、畳み込み演算に用いる公知のFIRフィルタから構成される。図5を参照してフィルタ部10の構成を説明する。フィルタ部10は、入力信号を1サンプル遅延出力する遅延素子d1〜dnと、n段縦続接続された各遅延素子d1〜dnの入力および出力に対し、各々上述したフィルタ係数配列cf[nn][i][0]〜cf[nn][i][xn]を乗算して出力する乗算器m1〜mnと、これら乗算器m1〜mnの各出力を加算する加算器a1〜anとを備える。
The
サウンドシステム11は、フィルタ部10から出力される楽音データを、アナログ形式の楽音信号にDA変換し、当該楽音信号から不要ノイズを除去する等のフィルタリングを施した後、これを増幅してスピーカ(不図示)から放音させる。
The
B.音色制御装置の説明(発明の概要)
(1)音色制御装置の構成
次に、上記構成による電子楽器100に包含される音色制御装置の機能的構成について説明する。電子楽器100において、起動時のイニシャライズ(初期化処理)により音色RAM5の領域Aに音色1の波形データが格納され、ユーザ(演奏者)の押離鍵操作に従って音色1の波形データに基づく楽音データを生成している時に、例えばユーザが音色スイッチTS2を操作する音色切替開始時点から音色2の波形データを音色RAM5の領域Bにロードし終えるまでの間に音色制御装置が処理を実行する。
B. Description of timbre control device (Summary of Invention)
(1) Configuration of Tone Control Device Next, a functional configuration of the timbre control device included in the electronic
音色制御装置は、音色切替えを開始した時点から音色2の波形データを音色RAM5の領域Bにロードし終えるまでの期間(以下、波形データ転送期間と称す)に、音色1の波形データに基づいて発生する楽音データについて、その音色を次第に音色2に似せるように補正する。
The timbre control device is based on the waveform data of
つまり、波形データ転送期間中は、音源部9が音色RAM5の領域Aから読み出す音色1の波形データに基づいて発生する楽音データを、前述したフィルタ部10がCPU6の制御の下に、その音色を段階的に音色2に似せるように補正する。こうすることで、音色切替え時の発音遅れを皆無にし、しかも発音中の音色を徐々に切り替えるべき音色に変化させるエフェクトも付加することが可能になる。
That is, during the waveform data transfer period, the tone data generated based on the waveform data of
例えば音色1の波形データを音色2の波形データに切り替える際の音色の補正は、フィルタ部10を構成する乗算器m1〜mn(図5参照)のそれぞれに、RAM8のフィルタ係数エリアFCA(図3(b)参照)から読み出す音色1/2切替時フィルタ係数配列cf1[nn][i][0]〜cf1[nn][i][xn]を乗算係数として与えて畳み込み演算を施すことで為される。
For example, the correction of the timbre when the waveform data of
3次元データテーブルとして構成される音色1/2切替時フィルタ係数配列cf1[nn][i][x]は、図4に図示したように、鍵盤1を構成する88鍵に各々対応するノートナンバ[nn]毎のフィルタ係数配列[i][x]がアサインされ、この中から波形データ転送期間中に新たに押鍵される鍵のノートナンバnnに対応したフィルタ係数配列が選択される。例えば鍵盤1のC4音(ノートナンバnn:60)が押鍵された場合にはフィルタ係数配列cf1[60][i][x]が選択される。
The
また、音色1/2切替時フィルタ係数配列cf1[nn][i][x]は、図3(b)に図示するように、[0]〜[4]のインデクスi毎のフィルタ係数配列がアサインされる。本実施形態では、インデクスiが[0]の場合、全てのフィルタ係数配列x(0)〜x(1023)が「1.0」となり、これをフィルタ部10の乗算器m1〜mnに乗算係数として与えて畳み込み演算を行っても、当該フィルタ部10に入力する信号の周波数特性は変化しない為、音色補正は為されない。
In addition, the filter coefficient array cf1 [nn] [i] [x] at the time of
[1]〜[4]のインデクスiは、4分割した波形データ転送期間の何れに相当するかを表す値であって、音色切替えを開始した時点からタイマ計時される経時時間に応じて、[1]〜[4]に変化する。従って、音色切替えを開始した時点からの経時時間が過ぎるに連れて[1]〜[4]に変化するインデクスiによって指定されるフィルタ係数配列[1][x]〜[4][x]をフィルタ部10の乗算器m1〜mnに乗算係数として与え、音色1の波形データで生成される楽音データを段階的に音色2に似せるように補正する。
The index i of [1] to [4] is a value indicating which one of the four divided waveform data transfer periods corresponds to, and according to the elapsed time measured by the timer from the time when the timbre switching is started, 1] to [4]. Accordingly, the filter coefficient arrays [1] [x] to [4] [x] specified by the index i that changes to [1] to [4] as the time elapsed from the time when the timbre switching is started pass. A multiplication coefficient is given to the multipliers m1 to mn of the
RAM8のフィルタ係数エリアFCA(図3(b)参照)にファクトリープリセットされる音色1/2切替時フィルタ係数配列cf1[nn][i][x]は、前述した通り、音色RAM5の領域Aに音色1の波形データが格納済みで、ユーザ(演奏者)が音色スイッチTS2を操作して音色2への切替えを指示した場合に音色制御装置によって参照される。
The
音色2/3切替時フィルタ係数配列cf2[nn][i][x]は、音色RAM5の領域Aに音色2の波形データが格納されている状況で、ユーザ(演奏者)が音色スイッチTS3を操作して音色3への切替えを指示した場合に音色制御装置によって参照される。
The
音色3/1切替時フィルタ係数配列cf3[nn][i][x]は、音色RAM5の領域Aに音色3の波形データが格納されている状況で、ユーザ(演奏者)が音色スイッチTS1を操作して音色1への切替えを指示した場合に音色制御装置によって参照される。
The
なお、本実施形態では、音色1/2切替時フィルタ係数配列cf1[nn][i][x]、音色2/3切替時フィルタ係数配列cf2[nn][i][x]および音色3/1切替時フィルタ係数配列cf3[nn][i][x]をRAM8にファクトリープリセットされる態様としたが、これに限定されず、CPU6を用いてこれらフィルタ係数配列cf1〜cf3を生成する態様としても構わない。
In the present embodiment, the
(2)フィルタ係数配列cfの生成方法
次に、図6を参照してフィルタ係数配列cfの生成方法を説明する。以下では、一例として音色1/2切替時フィルタ係数配列cf1[nn][i][x]の生成方法について述べる。図6に示す生成方法は、任意の音高における音色1/音色2の波形データを用いてフィルタ係数配列cf1[i][x]を取得する手法であり、コンピュータ処理で実現する。
(2) Method for Generating Filter Coefficient Array cf Next, a method for generating the filter coefficient array cf will be described with reference to FIG. Hereinafter, as an example, a method of generating the
鍵盤1を構成する88鍵の全ての音高に対応した音色1/2切替時フィルタ係数配列cf1[nn][i][x]を生成するには、A0音(ノートナンバ:21)からC8音(ノートナンバ:108)までの各音高毎のフィルタ係数配列cf1[21][[i][x]〜cf1[108][[i][x]を取得する。
In order to generate the
以下に述べるステップSA1〜SA18の各処理動作の主体はコンピュータである。先ず、図6に図示するステップSA1では、一例としてC4音(ノートナンバ:60)における所定サンプル数分の音色1の波形データにFFT処理(高速フーリエ変換)を施す。同様に、ステップSA2においても、C4音(ノートナンバ:60)における所定サンプル数分の音色2の波形データにFFT処理(高速フーリエ変換)を施す。
The subject of each processing operation in steps SA1 to SA18 described below is a computer. First, in step SA1 shown in FIG. 6, as an example, FFT processing (fast Fourier transform) is performed on waveform data of
続いて、ステップSA3では、図7(a)に図示するように、FFT処理により周波数分析された音色2の波形データの振幅スペクトル(1024点)から音色1の波形データの振幅スペクトル(1024点)の各差分を算出する。これにより各周波数チャンネルにおける各周波数振幅の差分を表す差分データdf[0]〜df[1023]を取得する。この差分データdf[0]〜df[1023]は、周波数領域における音色2と音色1との差異に相当する。
Subsequently, in step SA3, as shown in FIG. 7A, the amplitude spectrum (1024 points) of the waveform data of
次に、ステップSA4では、サンプル番号xをゼロリセットする。続くステップSA5、SA8、SA9では、インデクスiが「0」の配列CF[0][x]において、サンプル番号xをインクリメントして歩進させながら、サンプル番号xが「0」〜「1023」に対応する全ての配列CF[0][x]に「1」をセットする。これにより、インデクスiの値が「0」の配列CF[1][x]を生成し終える。 Next, in step SA4, the sample number x is reset to zero. In subsequent steps SA5, SA8, and SA9, in the array CF [0] [x] in which the index i is “0”, the sample number x is incremented and incremented, and the sample number x is changed from “0” to “1023”. “1” is set in all the corresponding arrays CF [0] [x]. As a result, the generation of the array CF [1] [x] in which the value of the index i is “0” is completed.
ステップSA6では、インデクスiの値を「4」にセットする。次のステップSA7〜SA9では、インデクスiが「4」の配列CF[4][x]において、サンプル番号xをインクリメントして歩進させながら、サンプル番号xが「0」〜「1023」に対応する全ての配列CF[4][x]に、サンプル番号xに対応する差分データdf[0]〜df[1023]をセットする。これにより、インデクスiが「4」の配列CF[4][x]を生成し終える。 In step SA6, the value of index i is set to “4”. In the next steps SA7 to SA9, in the array CF [4] [x] where the index i is “4”, the sample number x corresponds to “0” to “1023” while incrementing the sample number x. Difference data df [0] to df [1023] corresponding to the sample number x is set in all the arrays CF [4] [x] to be performed. Thus, the generation of the array CF [4] [x] with the index i of “4” is completed.
そして、歩進されたサンプル番号xが「1023」を越えると、ステップSA9の判断結果が「YES」になり、ステップSA10に処理を進め、インデクスiを「3」にセットする。続いて、ステップSA11では、サンプル番号xをゼロリセットする。次のステップSA12では、サンプル番号xに対応する差分データdf[x]を「4」で除算した値df[x]/4を、サンプル番号xに対応した差分値d[x]とする。 When the incremented sample number x exceeds “1023”, the determination result in step SA9 is “YES”, the process proceeds to step SA10, and the index i is set to “3”. Subsequently, in step SA11, the sample number x is reset to zero. In the next step SA12, a value df [x] / 4 obtained by dividing the difference data df [x] corresponding to the sample number x by “4” is set as a difference value d [x] corresponding to the sample number x.
次いで、ステップSA13、SA14、SA15では、インクリメントして歩進させるサンプル番号xに応じて、インデクスi+1が「4」の配列CF[4][x]から当該サンプル番号xに対応する差分値d[x]を減算する。これにより、インデクスiが「3」の配列CF[3][x]を生成し終える。 Next, in steps SA13, SA14, and SA15, the difference value d [corresponding to the sample number x from the array CF [4] [x] in which the index i + 1 is “4” according to the sample number x incremented and advanced. x] is subtracted. Thereby, the generation of the array CF [3] [x] with the index i of “3” is completed.
配列CF[3][x]を生成し終えて、歩進されたサンプル番号xが「1023」を越えると、上記ステップSA15の判断結果が「YES」になり、ステップSA16に処理を進め、現在のインデクスiの値をデクリメントし、当該インデクスiを「2」にセットする。次いで、ステップSA17では、デクリメントされたインデクスiの値が「2」となるので、判断結果は「NO」になり、上述したステップSA11に戻る。 When generation of the array CF [3] [x] is completed and the incremented sample number x exceeds “1023”, the determination result of the above step SA15 becomes “YES”, and the process proceeds to step SA16. Is decremented, and the index i is set to “2”. Next, in step SA17, since the value of the decremented index i is “2”, the determination result is “NO”, and the process returns to step SA11 described above.
再びステップSA11に戻り、サンプル番号xをゼロリセットすると、次のステップSA12では、サンプル番号xに対応する差分データdf[x]を「4」で除算した値df[x]/4を、サンプル番号xに対応した差分値d[x]とする。この後、ステップSA13、SA14、SA15では、インクリメントして歩進させるサンプル番号xに応じて、インデクスi+1が「3」の配列CF[3][x]から当該サンプル番号xに対応する差分値d[x]を減算する。これにより、インデクスiが「2」の配列CF[2][x]を生成し終える。 Returning to step SA11 again, when the sample number x is reset to zero, in the next step SA12, a value df [x] / 4 obtained by dividing the difference data df [x] corresponding to the sample number x by “4” is obtained as the sample number. The difference value d [x] corresponding to x is assumed. Thereafter, in steps SA13, SA14, and SA15, the difference value d corresponding to the sample number x from the array CF [3] [x] where the index i + 1 is “3” in accordance with the sample number x to be incremented and advanced. [X] is subtracted. Thus, the generation of the array CF [2] [x] with the index i of “2” is completed.
配列CF[2][x]を生成し終えて、歩進されたサンプル番号xが「1023」を越えると、上記ステップSA15の判断結果が「YES」になり、ステップSA16に処理を進め、現在のインデクスiの値をデクリメントし、当該インデクスiを「1」にセットする。次いで、ステップSA17では、デクリメントされたインデクスiの値が「1」となるので、判断結果は「NO」になり、上述したステップSA11に戻る。 When generation of the array CF [2] [x] has been completed and the incremented sample number x exceeds “1023”, the determination result in step SA15 becomes “YES”, and the process proceeds to step SA16. Is decremented, and the index i is set to “1”. Next, in step SA17, since the value of the decremented index i is “1”, the determination result is “NO”, and the process returns to step SA11 described above.
再びステップSA11に戻り、サンプル番号xをゼロリセットすると、次のステップSA12では、サンプル番号xに対応する差分データdf[x]を「4」で除算した値df[x]/4を、サンプル番号xに対応した差分値d[x]とする。この後、ステップSA13、SA14、SA15では、インクリメントして歩進させるサンプル番号xに応じて、インデクスi+1が「2」の配列CF[2][x]から当該サンプル番号xに対応する差分値d[x]を減算する。これにより、インデクスiが「1」の配列CF[1][x]を生成し終える。 Returning to step SA11 again, when the sample number x is reset to zero, in the next step SA12, a value df [x] / 4 obtained by dividing the difference data df [x] corresponding to the sample number x by “4” is obtained as the sample number. The difference value d [x] corresponding to x is assumed. Thereafter, in steps SA13, SA14, and SA15, the difference value d corresponding to the sample number x from the array CF [2] [x] where the index i + 1 is “2” in accordance with the sample number x to be incremented. [X] is subtracted. Thereby, the generation of the array CF [1] [x] with the index i of “1” is completed.
こうして、配列CF[1][x]を生成し終えて、歩進されたサンプル番号xが「1023」を越えると、上記ステップSA15の判断結果が「YES」になり、ステップSA16に処理を進め、現在のインデクスiの値をデクリメントし、当該インデクスiを「0」にセットする。そして、ステップSA17では、デクリメントされたインデクスiの値が「0」となるので、判断結果は「YES」になり、次のステップSA18に処理を進める。 Thus, when the generation of the array CF [1] [x] is completed and the incremented sample number x exceeds “1023”, the determination result in Step SA15 becomes “YES”, and the process proceeds to Step SA16. Then, the value of the current index i is decremented and the index i is set to “0”. In step SA17, since the value of the decremented index i is “0”, the determination result is “YES”, and the process proceeds to the next step SA18.
ステップSA18では、以上のようにして生成した、インデクスiが「0」〜[4]の各配列CF[0][x]〜CF[4][x]についてそれぞれIFFT処理(逆高速フーリエ変換)を施す。このIFFT処理(逆高速フーリエ変換)によって、周波数領域の各配列CF[0][x]〜CF[4][x]が、畳み込み演算に用いる時間領域の音色1/2切替時フィルタ係数配列cf1[i][x]に変換される。
In step SA18, IFFT processing (inverse fast Fourier transform) is performed for each of the arrays CF [0] [x] to CF [4] [x] having indexes i of “0” to [4] generated as described above. Apply. By this IFFT processing (inverse fast Fourier transform), the frequency domain arrays CF [0] [x] to CF [4] [x] are converted to the time
なお、前述したように、インデクスiの値「1」〜「4」は、4分割した波形データ転送期間の何れに相当するかを表す値である。本実施形態では、音色切替えを開始した時点からタイマ計時される経時時間に応じて、インデクスiの値が順番に「1」〜「4」に変化する。 Note that, as described above, the values “1” to “4” of the index i are values representing which of the waveform data transfer periods divided into four. In the present embodiment, the value of the index i sequentially changes from “1” to “4” according to the elapsed time measured by the timer from the time when the timbre switching is started.
上述した生成方法で説明した通り、インデクスiが「4」の配列CF[4][x]は、音色2と音色1の差分を表す差分データdf[0]〜df[1023]そのものである。これに対し、インデクスiの値が「3」の配列CF[3][x]は、配列CF[4][x]から差分値d[x]を減算し、またインデクスiの値が「2」の配列CF[2][x]は、配列CF[3][x]から差分値d[x]を減算し、更にインデクスiの値が「1」の配列CF[1][x]は、配列CF[2][x]から差分値d[x]を減算したものである。
As described in the generation method described above, the array CF [4] [x] with the index i of “4” is the difference data df [0] to df [1023] itself representing the difference between the
従って、図7(b)に図示する一例のように、波形データ転送期間をTとした場合に、音色切替えを開始した時点からT/4経過するまでの間はインデクスiの値が「1」、T/4経過時点からT/2経過するまでの間はインデクスiの値が「2」、T/2経過時点から3T/4経過するまでの間はインデクスiの値が「3」、3T/4経過時点からT経過するまでの間はインデクスiの値が「1」となる。 Accordingly, as in the example illustrated in FIG. 7B, when the waveform data transfer period is T, the value of the index i is “1” until T / 4 has elapsed from the start of timbre switching. The value of index i is “2” from the time T / 4 elapses until T / 2 elapses, and the value of index i is “3” until 3T / 4 elapses from time T / 2 elapses. The value of the index i is “1” from the time when / 4 has elapsed until T has elapsed.
このように、音色切替えを開始した時点からの経時時間に応じて変化するインデクスiにより指定される配列CF[i][x]に基づいて音色1/2切替時フィルタ係数配列cf1[i][x]を生成するので、音色1の波形データで生成される楽音データを段階的に音色2に似せるように補正することが可能になる。また、音色1の波形データで生成される楽音データを、段階的に音色2に似せる為、いきなり音色2に似せる場合に比べて聴感上の違和感を緩和させる効果も奏する。
Thus, the
C.実施形態の動作
次に、上記構成による電子楽器100の動作として、CPU6が実行するメインルーチン、当該メインルーチンからコールされる音色切替処理の各動作について、図8〜図9を参照して説明する。
C. Operations of Embodiments Next, as operations of the electronic
(1)メインルーチンの動作
図8は、CPU6が実行するメインルーチンの動作を示すフローチャートである。CPU6は、電子楽器100のパワーオンに応じてメインルーチンを実行すると、ステップSB1に処理を進め、初期化処理(イニシャライズ)を実行する。初期化処理では、例えば音色ROM4に格納される音色1の波形データを、音色RAM5の領域Aに転送する他、RAM8のワークエリアWA(図3(b)参照)に設けられる各種レジスタ・フラグをゼロリセットしたり、初期値セットしたりする。
(1) Operation of Main Routine FIG. 8 is a flowchart showing the operation of the main routine executed by the CPU 6. When the CPU 6 executes the main routine in response to the power-on of the electronic
次に、ステップSB2では、操作部2のスイッチイベントを検出するスイッチ走査を行い、続くステップSB3では、このスイッチ走査で検出されたスイッチイベントが音色スイッチ操作によるものであるか否かを判断する。スイッチ走査で検出されたスイッチイベントが音色スイッチ操作以外のものならば、判断結果は「NO」になり、ステップSB4に進み、検出したスイッチイベントに対応したその他のスイッチ処理を実行した後、ステップSB6に進む。
Next, in step SB2, switch scanning for detecting a switch event of the
一方、スイッチ走査で検出されたスイッチイベントが音色スイッチ操作ならば、上記ステップSB3の判断結果は「YES」になり、CPU6は音色切替処理のタスクを起床する。音色切替処理では、後述するように、音色スイッチ操作された時点(音色切替時点)からの経過時間をタイマで計時し始める共に、インデクスiを「1」にセットする。 On the other hand, if the switch event detected by the switch scanning is a timbre switch operation, the determination result in step SB3 is “YES”, and the CPU 6 wakes up the timbre switching process task. In the timbre switching process, as will be described later, the elapsed time from the time when the timbre switch is operated (timbre switching time) starts to be measured by the timer, and the index i is set to “1”.
以後、音色ROM4に格納される音色2の波形データを、音色RAM5の領域Bにロード(波形データ転送)し終えるまでの間、その波形データ転送期間を4分割した時間tの経過毎に、インデクスiの値をインクリメントして歩進させ、波形データ転送期間を過ぎると、タイマの計時をストップさせ、インデクスiを「0」にセットした後、第2の音色の波形データを転送した音色RAM5の領域Bを領域Aに、第1の音色の波形データを格納している音色RAM5の領域Aを領域Bに切り替える。
Thereafter, until the waveform data of
そして、音色切替処理のタスクを起床すると、CPU6はステップSB6に処理を進め、鍵変化の有無を検出する鍵盤走査を行う。次いで、ステップSB7では、上記ステップSB6の鍵盤走査の結果に基づき鍵変化を判別する。すなわち、押鍵操作又は離鍵操作されず、鍵変化が生じない場合には、CPU6は上記ステップSB7を介して後述のステップSB10に処理を進める。 When the task of timbre switching processing is woken up, the CPU 6 advances the processing to step SB6 and performs keyboard scanning for detecting the presence or absence of a key change. Next, in step SB7, the key change is determined based on the result of the keyboard scan in step SB6. That is, when the key pressing operation or the key releasing operation is not performed and no key change occurs, the CPU 6 advances the process to step SB10 to be described later via step SB7.
これに対し、押鍵操作によるキーオンを検出した場合には、上記ステップSB7を介してステップSB8に進み、ユーザ(演奏者)の押鍵操作に応じて鍵盤1が発生する演奏入力情報に基づいてノートオンイベントを発生する。一方、離鍵操作によるキーオフを検出した場合には、上記ステップSB7を介してステップSB9に進み、ユーザ(演奏者)の離鍵操作に応じて鍵盤1が発生する演奏入力情報に基づいてノートオフイベントを発生する。
On the other hand, when key-on due to a key pressing operation is detected, the process proceeds to step SB8 via step SB7, and based on performance input information generated by the
そして、ステップSB10に進むと、CPU6は上記ステップSB8において発生したノートオンイベントを音源部9に送付し、当該ノートオンイベントで指定される音高の楽音の発音を指示したり、上記ステップSB9において発生したノートオフイベントを音源部9に送付し、既に発音中の楽音の内、当該ノートオフイベントで指定される音高の楽音の消音を指示したりする音源処理を実行する。 Then, when proceeding to step SB10, the CPU 6 sends the note-on event generated in step SB8 to the sound source unit 9 to instruct the tone generation of the musical tone designated by the note-on event, or in step SB9. The generated note-off event is sent to the sound source unit 9, and sound source processing for instructing to mute the musical tone having the pitch specified by the note-off event among the already-generated musical sounds is executed.
この後、ステップSB11では、音色制御装置として機能するCPU6が、上述したステップSB5の音色切替処理と連係したフィルタ処理を実行する。例えば音色1から音色2に切り替える音色スイッチ操作が行われた場合を想定すると、フィルタ処理では、前述した通り、3次元データテーブルとして構成され、RAM8に格納される音色1/2切替時フィルタ係数配列cf1[nn][i][x]の内から波形データ転送期間中に新たに押鍵される鍵のノートナンバ[nn]の音色1/2切替時フィルタ係数配列[i][x]を選択する。
Thereafter, in step SB11, the CPU 6 functioning as a timbre control device executes a filter process linked to the timbre switching process in step SB5 described above. For example, assuming that a timbre switch operation for switching from
そして、選択した音色1/2切替時フィルタ係数配列[i][x]において、音色切替えを開始した時点(音色スイッチ操作時点)から波形データ転送を終えるまでの期間中にタイマ計時される経時時間に従って[1]〜[4]に変化する各インデクスiのフィルタ係数x(0)〜x(1023)を、フィルタ部10の乗算器m1〜mnに乗算係数として与えて畳み込み演算を施す結果、波形データ転送期間中の新たな押鍵に対応して音源部9が音色1の波形データに基づき発生する楽音データについて、フィルタ部10がその音色をインデクスiの値[1]〜[4]に従って段階的に音色2に似せるように補正する。
In the selected
続いて、上記ステップSB11のフィルタ処理が完了すると、CPU6はステップSB12に進み、電源スイッチ操作の有無を判断する。電源スイッチが操作されなければ、判断結は「NO」になり、上記ステップSB2に処理を戻す。以後、電源スイッチ操作によりパワーオフされる迄、上記ステップSB2〜SB12の処理を繰り返し実行する。 Subsequently, when the filtering process in step SB11 is completed, the CPU 6 proceeds to step SB12 and determines whether or not the power switch is operated. If the power switch is not operated, the determination result is “NO”, and the process returns to step SB2. Thereafter, the processing of steps SB2 to SB12 is repeatedly executed until the power is turned off by the power switch operation.
一方、例えばユーザ(演奏者者)が電源スイッチ操作すると、上記ステップSB12の判断結果が「YES」になり、ステップSB13に進み、現在の設定状態をROM7(書き換え可能なフラッシュメモリ)に保存したり、供給電力をカットする等のパワーオフ処理を実行して本処理を終える。 On the other hand, for example, when the user (performer) operates the power switch, the determination result in step SB12 is “YES”, the process proceeds to step SB13, and the current setting state is stored in the ROM 7 (rewritable flash memory). Then, a power-off process such as cutting the supplied power is executed, and this process is finished.
(2)音色切替処理の動作
次に、図9を参照して音色切替処理の動作を説明する。図9は、CPU6が実行する音色切替処理の動作を示すフローチャートである。なお、以下では、音色RAM5の領域Aに音色1の波形データが格納済みの状況において、音色スイッチ2の操作に対応して音色RAM5の領域Bに音色2の波形データを転送する音色切替えの一例を想定している。また、音色切替処理は、前述したメインルーチンとは別のタスクで動作する。
(2) Operation of Tone Switching Process Next, the operation of the timbre switching process will be described with reference to FIG. FIG. 9 is a flowchart showing the operation of the timbre switching process executed by the CPU 6. In the following, an example of timbre switching in which the waveform data of
前述したメインルーチンのステップSB3(図8参照)を介して本処理が実行されると、CPU6は図9に図示するステップSC1に進み、音色切替開始時点からの経過時間を計時するタイマTimerをゼロリセットして計時をスタートさせ、続くステップSC2では、インデクスiを「1」にセットする。 When this process is executed through step SB3 (see FIG. 8) of the main routine described above, the CPU 6 proceeds to step SC1 shown in FIG. 9 and sets a timer Timer for measuring the elapsed time from the start of timbre switching to zero. Reset to start timing, and in the subsequent step SC2, the index i is set to "1".
そして、ステップSC3では、CPU6の制御の下に、音色ROM4の音色2波形データエリアWDA2に格納される音色2の波形データを、音色RAM5の領域Bにロード(波形データ転送)を開始する。次いで、ステップSC4に進むと、CPU6は、タイマTimerで計時される経過時間が、波形データ転送期間を4分割した時間tに一致したか否かを判断する。
In step SC3, under the control of the CPU 6, loading of waveform data of
タイマTimerで計時される経過時間が、波形データ転送期間を4分割した時間tに一致しなければ、上記ステップSC4の判断結果は「NO」になり、ステップSC6に進み、ロード終了したか否か、つまり波形データ転送期間を過ぎたかどうかを判断する。波形データ転送期間を過ぎていない場合には、判断結果が「NO」になり、上記ステップSC4に処理を戻す。 If the elapsed time measured by the timer Timer does not coincide with the time t obtained by dividing the waveform data transfer period into four, the determination result in step SC4 is “NO”, the process proceeds to step SC6, and whether or not the loading is completed. That is, it is determined whether or not the waveform data transfer period has passed. If the waveform data transfer period has not passed, the determination result is “NO”, and the process returns to step SC4.
一方、タイマTimerで計時される経過時間が、波形データ転送期間を4分割した時間tに一致すると、上記ステップSC4の判断結果が「YES」となり、ステップSC5に進み、インデクスiの値をインクリメントして歩進させる。従って、音色切替えを開始した時点から時間tを経過するまでインデクスiは「1」となる。 On the other hand, when the elapsed time measured by the timer Timer coincides with the time t obtained by dividing the waveform data transfer period into four, the determination result in step SC4 is “YES”, the process proceeds to step SC5, and the value of the index i is incremented. To advance. Therefore, the index i is “1” until the time t elapses from the time when the timbre switching is started.
次に、ステップSC6に進むと、CPU6は一旦タイマTimerをゼロリセットする。そして、ステップSC7に進み、波形データ転送期間を過ぎたかどうかを判断し、波形データ転送期間を過ぎていなければ、判断結果が「NO」になり、上記ステップSC4に処理を戻す。そして、タイマTimerで再び計時される経過時間が、波形データ転送期間を4分割した時間tに一致すると、上記ステップSC4の判断結果が「YES」となり、ステップSC5に進み、インデクスiの値をインクリメントして歩進させて「2」とする。 Next, when proceeding to step SC6, the CPU 6 once resets the timer Timer to zero. Then, the process proceeds to step SC7 to determine whether or not the waveform data transfer period has passed. If the waveform data transfer period has not passed, the determination result is “NO” and the process returns to step SC4. When the elapsed time counted again by the timer Timer coincides with the time t obtained by dividing the waveform data transfer period into four, the determination result in the above-mentioned step SC4 becomes “YES”, the process proceeds to step SC5, and the value of the index i is incremented. Then step forward to “2”.
以後、波形データ転送期間を過ぎるまでの間、波形データ転送期間を4分割した時間tが経過する毎にインデクスiの値を歩進させて「3」、「4」にセットする。そして、波形データ転送期間を過ぎると、上記ステップSC7の判断結果が「YES」になり、ステップSC8に進み、CPU6はタイマTimerをゼロリセットして計時をストップさせる。続いて、ステップSC9では、インデクスiを「0」にセットする。この後、ステップSC10に進むと、CPU6は音色2の波形データの転送先の音色RAM5の領域Bを領域Aに、音色1の波形データを格納している音色RAM5の領域Aを領域Bに切り替えて本処理を終える。
Thereafter, the value of the index i is incremented and set to “3” and “4” each time a time t obtained by dividing the waveform data transfer period by 4 elapses until the waveform data transfer period has passed. When the waveform data transfer period has passed, the determination result in step SC7 becomes “YES”, and the process proceeds to step SC8, where the CPU 6 resets the timer Timer to zero and stops timing. Subsequently, in step SC9, the index i is set to “0”. Thereafter, when proceeding to step SC10, the CPU 6 switches the area B of the
このように、音色切替処理では、音色スイッチが操作される音色切替時点からの経過時間をタイマTimerで計時し始める共に、インデクスiを「1」にセットし、以後、音色ROM4に格納される音色2の波形データを、音色RAM5の領域Bにロード(波形データ転送)するまでの間、波形データ転送期間を4分割した時間tが経過する毎に、インデクスiの値をインクリメントして歩進させる。そして、波形データ転送期間を過ぎると、タイマTimerの計時をストップさせ、インデクスiを「0」にセットした後、音色2の波形データを転送した音色RAM5の領域Bを領域Aに、音色1の波形データを格納している音色RAM5の領域Aを領域Bに切り替える。
As described above, in the timbre switching process, the elapsed time from the timbre switching time point when the timbre switch is operated is started to be measured by the timer Timer, the index i is set to “1”, and the timbre stored in the
以上説明したように、本実施形態では、例えば音色1から音色2に切り替える音色スイッチ操作が行われた場合を想定すると、図3(b)および図4に図示する3次元データテーブルとして構成され、RAM8に格納される音色1/2切替時フィルタ係数配列cf1[nn][i][x]の中から波形データ転送期間中に新たに押鍵される鍵のノートナンバ[nn]の音色1/2切替時フィルタ係数配列[i][x]を選択する。
As described above, in the present embodiment, for example, assuming that a timbre switch operation for switching from
そして、選択した音色1/2切替時フィルタ係数配列[i][x]において、音色切替えを開始した時点(音色スイッチ操作時点)から波形データ転送を終えるまでの期間中に計時される経時時間に従って[1]〜[4]に変化する各インデクスiのフィルタ係数x(0)〜x(1023)を、フィルタ部10の乗算器m1〜mn(図5参照)に乗算係数として与えて畳み込み演算を施す結果、波形データ転送期間中の新たな押鍵に対応して音源部9が音色1の波形データに基づき発生する楽音データについて、フィルタ部10がその音色をインデクスiの値[1]〜[4]に従って段階的に音色2に似せるように補正する。この結果、音色切替え時の発音遅れを皆無にし、しかも発音中の音色を徐々に切り替えるべき音色に変化させるという効果を奏する。
Then, in the selected
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。 As mentioned above, although embodiment of this invention was described, this invention is not limited to embodiment mentioned above, In the implementation stage, it can change variously in the range which does not deviate from the summary. Further, the functions executed in the above-described embodiments may be combined as appropriate as possible. The above-described embodiment includes various stages, and various inventions can be extracted by an appropriate combination of a plurality of disclosed constituent elements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment, if the effect is obtained, a configuration from which the constituent requirements are deleted can be extracted as an invention.
以下では、本願出願当初の特許請求の範囲に記載された各発明について付記する。
(付記)
[請求項1]
第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させる制御を行なう楽音発生制御部と、
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生制御部が再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送部と、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正部と
を具備することを特徴とする音色制御装置。
[請求項2]
前記音色補正部は、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音の音色を、前記波形転送部が前記転送を開始した時点からの経時時間に従って、段階的に前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。
[請求項3]
音高が指定された楽音の発生を指示する楽音発声指示部を備え、
前記波形転送部は、前記音色の切り替え指示に応じて、前記第2の記憶部に記憶された前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し、
前記楽音発生制御部は、前記楽音発声指示部により音高が指定された楽音の発生が指示されるのに応じて、前記第1の記憶部に記憶された前記第1の音色かつ指定された音高の波形データを再生して楽音を発生させ、
前記音色補正部は、
前記波形転送部が前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発声指示部により音高が指定された楽音の発生が指示されるのに応じて、前記楽音発生制御部が前記第1の音色かつ指定された音高の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項1または2に記載の音色制御装置。
[請求項4]
前記音色補正部は、
前記波形転送部が前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記第1の記憶部への転送を終えた波形データを含む複数の波形データについて、前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項3に記載の音色制御装置。
[請求項5]
前記音色補正部は、
前記第1の音色の波形データと前記第2の音色の波形データとの周波数領域における音色の差異に相当する差分値を、時間領域に変換して得たフィルタ係数を記憶するフィルタ係数記憶部と、
前記フィルタ係数記憶部から読み出すフィルタ係数に従って畳み込み演算するフィルタ部とを有し、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音について、前記フィルタ部が前記フィルタ係数に従って畳み込み演算を施して前記楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。
[請求項6]
前記音色補正部は、
前記フィルタ係数を、音高および次数に対応させた3次元のフィルタ係数配列を複数記憶するフィルタ係数配列記憶部と、
波形データ転送期間中に発音指示される音高と、前記波形転送部が転送を開始した時点からの経時時間に従って変化する次数とに対応するフィルタ係数配列を、前記フィルタ係数配列記憶部から選択する選択部と、
前記選択部により選択されたフィルタ係数配列に含まれるフィルタ係数に従って畳み込み演算するフィルタ部とを有し、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間に、前記楽音発生制御部が前記第1の音色の波形データを再生して発音指示された音高の楽音を発生させ、前記フィルタ部が前記発生させた楽音を、前記波形転送部が転送を開始した時点からの経時時間に従って変化する次数に対応して段階的に前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。
[請求項7]
前記第1の音色の波形データと前記第2の音色の波形データとの周波数領域における音色の差異に相当する差分値を、時間領域に変換して得たフィルタ係数を生成するフィルタ係数生成部を更に備えることを特徴とする請求項2に記載の音色制御装置。
[請求項8]
前記第1の音色の波形データと前記第2の音色の波形データとの周波数領域における音色の差異に相当する差分値を時間領域に変換したフィルタ係数を、波形データ転送期間中に発音指示される音高と、波形データ転送を開始した時点からの経時時間に従って変化する次数とに対応させた3次元のフィルタ係数配列を生成するフィルタ係数配列生成部を更に備えることを特徴とする請求項3に記載の音色制御装置。
[請求項9]
音色制御装置で実行される方法であって、
第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させ、
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送し、
前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする音色制御方法。
[請求項10]
音色制御装置に搭載されるコンピュータに、
第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させる楽音発生ステップと、
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生ステップで再生された前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送ステップと、
前記波形転送ステップにて前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生ステップで前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正ステップと
を実行させることを特徴とするプログラム。
[請求項11]
演奏入力操作に応じた演奏入力情報を発生する演奏入力部と、
前記演奏入力部が発生する演奏入力情報に応じた楽音の発生を指示する楽音発生指示部と、
前記請求項1乃至5の何れかに記載の音色制御装置と、
を具備することを特徴とする電子楽器。
Hereinafter, each invention described in the scope of claims at the beginning of the present application will be additionally described.
(Appendix)
[Claim 1]
A musical tone generation control unit for controlling the generation of musical tone by reproducing the waveform data of the first tone color stored in the first storage unit;
In response to a tone color switching instruction, a second tone data different from the first tone color waveform data being reproduced by the musical tone generation control unit from among a plurality of tone color waveform data stored in the second storage unit. A waveform transfer unit for transferring timbre waveform data to the first storage unit;
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. A timbre control apparatus comprising: a timbre correction unit that corrects a timbre of a musical tone generated in such a manner as to approach the second timbre.
[Claim 2]
The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. The timbre of the musical tone generated in this way is corrected so as to gradually approach the second timbre according to the time elapsed from the time when the waveform transfer unit started the transfer. Tone control device.
[Claim 3]
A musical sound utterance instruction unit for instructing the generation of a musical sound with a specified pitch,
The waveform transfer unit transfers waveform data of a plurality of pitches corresponding to the second timbre stored in the second storage unit to the first storage unit in response to the timbre switching instruction. ,
The musical tone generation control unit is configured to specify the first timbre stored in the first storage unit and the specified tone in response to an instruction to generate a musical tone having a pitch specified by the musical tone utterance instruction unit. Play the waveform data of the pitch to generate a musical tone,
The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the plurality of pitches corresponding to the second tone color to the first storage unit, the pitch is specified by the musical tone utterance instruction unit In response to an instruction to generate the generated musical tone, the musical tone generation control unit reproduces the waveform data of the first timbre and the designated pitch and generates the timbre of the musical tone as the second timbre. The timbre control apparatus according to
[Claim 4]
The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of a plurality of pitches corresponding to the second tone color to the first storage unit, the transfer to the first storage unit is performed. 4. The plurality of waveform data including the completed waveform data, wherein the tone color of a musical tone generated by reproducing the waveform data of the first tone color is corrected so as to be close to the second tone color. The timbre control device described.
[Claim 5]
The tone correction unit
A filter coefficient storage unit that stores a filter coefficient obtained by converting a difference value corresponding to a timbre difference in the frequency domain between the waveform data of the first timbre and the waveform data of the second timbre into a time domain; ,
A filter unit that performs a convolution operation according to a filter coefficient read from the filter coefficient storage unit,
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. 2. The timbre control device according to
[Claim 6]
The tone correction unit
A filter coefficient array storage unit that stores a plurality of three-dimensional filter coefficient arrays in which the filter coefficients correspond to pitches and orders;
A filter coefficient array corresponding to the pitch that is sounded during the waveform data transfer period and the order that changes according to the elapsed time from the time when the waveform transfer unit started the transfer is selected from the filter coefficient array storage unit. A selection section;
A filter unit that performs a convolution operation according to a filter coefficient included in the filter coefficient array selected by the selection unit,
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. A musical tone having a pitch that is instructed to be generated is generated, and the musical tone generated by the filter unit is stepwise corresponding to an order that changes according to a time elapsed from the time when the waveform transfer unit started the transfer. The timbre control apparatus according to
[Claim 7]
A filter coefficient generation unit for generating a filter coefficient obtained by converting a difference value corresponding to a difference in tone color in the frequency domain between the waveform data of the first tone color and the waveform data of the second tone color into a time domain; The timbre control apparatus according to
[Claim 8]
A filter coefficient obtained by converting a difference value corresponding to a timbre difference in the frequency domain between the waveform data of the first timbre and the waveform data of the second timbre into a time domain is instructed to be generated during a waveform data transfer period. 4. A filter coefficient array generation unit for generating a three-dimensional filter coefficient array corresponding to a pitch and an order that changes in accordance with a time elapsed from the start of waveform data transfer. The timbre control device described.
[Claim 9]
A method executed by a timbre controller,
Playing the waveform data of the first tone stored in the first storage unit to generate a musical tone;
In response to a tone color switching instruction, waveform data of a second tone color different from the waveform data of the first tone color being reproduced is selected from the waveform data of a plurality of types of tone colors stored in the second storage unit. Transferred to the first storage unit,
During the waveform data transfer period until the waveform data of the second timbre is transferred to the first storage unit, the tone color of the musical tone generated by reproducing the waveform data of the first timbre is generated in the second A timbre control method, wherein correction is performed so that the timbre approaches.
[Claim 10]
In the computer installed in the tone control device,
A tone generation step for generating a tone by reproducing the waveform data of the first tone stored in the first storage unit;
A second tone color different from the waveform data of the first tone color reproduced in the musical tone generation step from the waveform data of a plurality of types of tone colors stored in the second storage unit in response to a tone color switching instruction. A waveform transfer step for transferring the waveform data to the first storage unit;
During the waveform data transfer period until the waveform data of the second tone color is completely transferred to the first storage unit in the waveform transfer step, the waveform data of the first tone color is reproduced in the tone generation step. And a timbre correction step of correcting the timbre of the musical tone generated in such a manner as to be close to the second timbre.
[Claim 11]
A performance input unit for generating performance input information according to the performance input operation;
A musical sound generation instruction unit for instructing generation of musical sounds according to performance input information generated by the performance input unit;
The timbre control device according to any one of
An electronic musical instrument characterized by comprising:
1 鍵盤
2 操作部
3 表示部
4 音色ROM
5 音色RAM
6 CPU
7 ROM
8 RAM
9 音源部
10 フィルタ部
11 サウンドシステム
100 電子楽器
1
5 tone RAM
6 CPU
7 ROM
8 RAM
9
Claims (11)
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生制御部が再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送部と、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正部と
を具備することを特徴とする音色制御装置。 A musical tone generation control unit for controlling the generation of musical tone by reproducing the waveform data of the first tone color stored in the first storage unit;
In response to a tone color switching instruction, a second tone data different from the first tone color waveform data being reproduced by the musical tone generation control unit from among a plurality of tone color waveform data stored in the second storage unit. A waveform transfer unit for transferring timbre waveform data to the first storage unit;
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. A timbre control apparatus comprising: a timbre correction unit that corrects a timbre of a musical tone generated in such a manner as to approach the second timbre.
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音の音色を、前記波形転送部が前記転送を開始した時点からの経時時間に従って、段階的に前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。 The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. The timbre of the musical tone generated in this way is corrected so as to gradually approach the second timbre according to the time elapsed from the time when the waveform transfer unit started the transfer. Tone control device.
前記波形転送部は、前記音色の切り替え指示に応じて、前記第2の記憶部に記憶された前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し、
前記楽音発生制御部は、前記楽音発声指示部により音高が指定された楽音の発生が指示されるのに応じて、前記第1の記憶部に記憶された前記第1の音色かつ指定された音高の波形データを再生して楽音を発生させ、
前記音色補正部は、
前記波形転送部が前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発声指示部により音高が指定された楽音の発生が指示されるのに応じて、前記楽音発生制御部が前記第1の音色かつ指定された音高の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項1または2に記載の音色制御装置。 A musical sound utterance instruction unit for instructing the generation of a musical sound with a specified pitch,
The waveform transfer unit transfers waveform data of a plurality of pitches corresponding to the second timbre stored in the second storage unit to the first storage unit in response to the timbre switching instruction. ,
The musical tone generation control unit is configured to specify the first timbre stored in the first storage unit and the specified tone in response to an instruction to generate a musical tone having a pitch specified by the musical tone utterance instruction unit. Play the waveform data of the pitch to generate a musical tone,
The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the plurality of pitches corresponding to the second tone color to the first storage unit, the pitch is specified by the musical tone utterance instruction unit In response to an instruction to generate the generated musical tone, the musical tone generation control unit reproduces the waveform data of the first timbre and the designated pitch and generates the timbre of the musical tone as the second timbre. The timbre control apparatus according to claim 1, wherein the timbre control apparatus corrects the timbre so as to approach each other.
前記波形転送部が前記第2の音色に対応した複数の音高の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記第1の記憶部への転送を終えた波形データを含む複数の波形データについて、前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項3に記載の音色制御装置。 The tone correction unit
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of a plurality of pitches corresponding to the second tone color to the first storage unit, the transfer to the first storage unit is performed. 4. The plurality of waveform data including the completed waveform data, wherein the tone color of a musical tone generated by reproducing the waveform data of the first tone color is corrected so as to be close to the second tone color. The timbre control device described.
前記第1の音色の波形データと前記第2の音色の波形データとの周波数領域における音色の差異に相当する差分値を、時間領域に変換して得たフィルタ係数を記憶するフィルタ係数記憶部と、
前記フィルタ係数記憶部から読み出すフィルタ係数に従って畳み込み演算するフィルタ部とを有し、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生制御部が前記第1の音色の波形データを再生して発生させる楽音について、前記フィルタ部が前記フィルタ係数に従って畳み込み演算を施して前記楽音の音色を前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。 The tone correction unit
A filter coefficient storage unit that stores a filter coefficient obtained by converting a difference value corresponding to a timbre difference in the frequency domain between the waveform data of the first timbre and the waveform data of the second timbre into a time domain; ,
A filter unit that performs a convolution operation according to a filter coefficient read from the filter coefficient storage unit,
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. 2. The timbre control device according to claim 1, wherein the tone to be generated is corrected by the filter unit performing a convolution operation according to the filter coefficient so that the timbre of the musical tone approaches the second timbre.
前記フィルタ係数を、音高および次数に対応させた3次元のフィルタ係数配列を複数記憶するフィルタ係数配列記憶部と、
波形データ転送期間中に発音指示される音高と、前記波形転送部が転送を開始した時点からの経時時間に従って変化する次数とに対応するフィルタ係数配列を、前記フィルタ係数配列記憶部から選択する選択部と、
前記選択部により選択されたフィルタ係数配列に含まれるフィルタ係数に従って畳み込み演算するフィルタ部とを有し、
前記波形転送部が前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間に、前記楽音発生制御部が前記第1の音色の波形データを再生して発音指示された音高の楽音を発生させ、前記フィルタ部が前記発生させた楽音を、前記波形転送部が転送を開始した時点からの経時時間に従って変化する次数に対応して段階的に前記第2の音色に近づけるように補正することを特徴とする請求項1に記載の音色制御装置。 The tone correction unit
A filter coefficient array storage unit that stores a plurality of three-dimensional filter coefficient arrays in which the filter coefficients correspond to pitches and orders;
A filter coefficient array corresponding to the pitch that is sounded during the waveform data transfer period and the order that changes according to the elapsed time from the time when the waveform transfer unit started the transfer is selected from the filter coefficient array storage unit. A selection section;
A filter unit that performs a convolution operation according to a filter coefficient included in the filter coefficient array selected by the selection unit,
During the waveform data transfer period until the waveform transfer unit finishes transferring the waveform data of the second tone color to the first storage unit, the tone generation control unit reproduces the waveform data of the first tone color. A musical tone having a pitch that is instructed to be generated is generated, and the musical tone generated by the filter unit is stepwise corresponding to an order that changes according to a time elapsed from the time when the waveform transfer unit started the transfer. The timbre control apparatus according to claim 1, wherein the timbre control apparatus corrects the timbre so as to approach the timbre of 2.
第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させ、
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から再生中の前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送し、
前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正することを特徴とする音色制御方法。 A method executed by a timbre controller,
Playing the waveform data of the first tone stored in the first storage unit to generate a musical tone;
In response to a tone color switching instruction, waveform data of a second tone color different from the waveform data of the first tone color being reproduced is selected from the waveform data of a plurality of types of tone colors stored in the second storage unit. Transferred to the first storage unit,
During the waveform data transfer period until the waveform data of the second timbre is transferred to the first storage unit, the tone color of the musical tone generated by reproducing the waveform data of the first timbre is generated in the second A timbre control method, wherein correction is performed so that the timbre approaches.
第1の記憶部に記憶された第1の音色の波形データを再生して楽音を発生させる楽音発生ステップと、
音色の切り替え指示に応じて、第2の記憶部に記憶された複数種の音色の波形データの中から前記楽音発生ステップで再生された前記第1の音色の波形データとは異なる第2の音色の波形データを前記第1の記憶部へ転送する波形転送ステップと、
前記波形転送ステップにて前記第2の音色の波形データを前記第1の記憶部へ転送し終えるまでの波形データ転送期間中に、前記楽音発生ステップで前記第1の音色の波形データを再生して発生させる楽音の音色を前記第2の音色に近づけるように補正する音色補正ステップと
を実行させることを特徴とするプログラム。 In the computer installed in the tone control device,
A tone generation step for generating a tone by reproducing the waveform data of the first tone stored in the first storage unit;
A second tone color different from the waveform data of the first tone color reproduced in the musical tone generation step from the waveform data of a plurality of types of tone colors stored in the second storage unit in response to a tone color switching instruction. A waveform transfer step for transferring the waveform data to the first storage unit;
During the waveform data transfer period until the waveform data of the second tone color is completely transferred to the first storage unit in the waveform transfer step, the waveform data of the first tone color is reproduced in the tone generation step. And a timbre correction step of correcting the timbre of the musical tone generated in such a manner as to be close to the second timbre.
前記演奏入力部が発生する演奏入力情報に応じた楽音の発生を指示する楽音発生指示部と、
前記請求項1乃至5の何れかに記載の音色制御装置と、
を具備することを特徴とする電子楽器。 A performance input unit for generating performance input information according to the performance input operation;
A musical sound generation instruction unit for instructing generation of musical sounds according to performance input information generated by the performance input unit;
The timbre control device according to any one of claims 1 to 5,
An electronic musical instrument characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017055531A JP2018159734A (en) | 2017-03-22 | 2017-03-22 | Timbre controller, timbre control method, program, and electric musical instrument |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017055531A JP2018159734A (en) | 2017-03-22 | 2017-03-22 | Timbre controller, timbre control method, program, and electric musical instrument |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018159734A true JP2018159734A (en) | 2018-10-11 |
Family
ID=63795919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017055531A Pending JP2018159734A (en) | 2017-03-22 | 2017-03-22 | Timbre controller, timbre control method, program, and electric musical instrument |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018159734A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037766A (en) * | 2020-09-09 | 2020-12-04 | 广州华多网络科技有限公司 | Voice tone conversion method and related equipment |
-
2017
- 2017-03-22 JP JP2017055531A patent/JP2018159734A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037766A (en) * | 2020-09-09 | 2020-12-04 | 广州华多网络科技有限公司 | Voice tone conversion method and related equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108242231B (en) | Musical sound generation device, electronic musical instrument, musical sound generation method, and storage medium | |
JP6801443B2 (en) | Musical tone generators and methods, electronic musical instruments | |
KR100329211B1 (en) | Sound signal generator and method and medium for sound signal generator | |
CN107871490B (en) | Effect applying device, effect applying method, recording medium, and electronic musical instrument | |
JP4702392B2 (en) | Resonant sound generator and electronic musical instrument | |
JP2018159734A (en) | Timbre controller, timbre control method, program, and electric musical instrument | |
JP2015018112A (en) | Musical sound generating apparatus, musical sound generating method, and program | |
JP6575585B2 (en) | Effect imparting device, effect imparting method, program, and electronic musical instrument | |
JPH0968980A (en) | Timbre controller for electronic keyboard musical instrument | |
JP4353225B2 (en) | Music generator | |
JP3658665B2 (en) | Waveform generator | |
JP5995054B2 (en) | Waveform generator, program, waveform generation method, and electronic musical instrument | |
JP4206830B2 (en) | Musical sound control device and musical sound control program | |
JP3700605B2 (en) | Music signal processor | |
JP4246869B2 (en) | Audio waveform signal playback control device | |
JP6665541B2 (en) | Electroacoustic device | |
JP2012220861A (en) | Musical sound generating device and program | |
JP2738217B2 (en) | Electronic musical instrument | |
JP4479847B2 (en) | Waveform generator and waveform generation processing program | |
JP4742248B2 (en) | Effect adding device and effect processing program | |
JP6175804B2 (en) | Performance device, performance method and program | |
JP2833485B2 (en) | Tone generator | |
JP5548975B2 (en) | Performance data generating apparatus and program | |
JP5681946B2 (en) | Sound generator | |
JP2003271149A (en) | Automatic accompanying instrument and automatic accompanying method |