JP2018159871A - Musical sound creation device, musical sound creation method, musical sound creation program, and electronic musical instrument - Google Patents
Musical sound creation device, musical sound creation method, musical sound creation program, and electronic musical instrument Download PDFInfo
- Publication number
- JP2018159871A JP2018159871A JP2017058045A JP2017058045A JP2018159871A JP 2018159871 A JP2018159871 A JP 2018159871A JP 2017058045 A JP2017058045 A JP 2017058045A JP 2017058045 A JP2017058045 A JP 2017058045A JP 2018159871 A JP2018159871 A JP 2018159871A
- Authority
- JP
- Japan
- Prior art keywords
- waveform
- storage
- waveform data
- ram
- sound generation
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器に関する。 The present invention relates to a musical sound generation device, a musical sound generation method, a musical sound generation program, and an electronic musical instrument.
近年の電子楽器やパーソナルコンピュータにおいては、管楽器や弦楽器等の原音の特徴により近い楽音を再現するために、多種多様な音源データ(波形データ)を利用した楽音生成方法が採用されている。例えば、電子楽器やパーソナルコンピュータ上で稼働するソフトウェア音源において、より多数の、より長時間の波形データを利用できるようにするために、使用しない波形データはフラッシュメモリやハードディスク等の、アクセス速度が遅く記憶容量が大きい(低速大容量の)記憶装置に保存しておき、使用する波形データのみを音源装置が直接アクセスできるアクセス速度が速く記憶容量が小さい(高速低容量の)記憶装置に転送し、演奏に応じて波形データを読み出して発音させるというシステムを採用するものがある。 In recent electronic musical instruments and personal computers, a musical sound generation method using a variety of sound source data (waveform data) is employed in order to reproduce musical sounds that are closer to the characteristics of the original sound such as wind instruments and stringed instruments. For example, in software sound sources that run on electronic musical instruments and personal computers, in order to be able to use a larger number of waveform data for a longer time, the waveform data that is not used has a slower access speed such as a flash memory or a hard disk. Store in a storage device with a large storage capacity (low speed and large capacity), transfer only the waveform data to be used to a storage device with a high access speed and a small storage capacity (high speed and low capacity) that can be directly accessed by the sound source device, and perform Some systems employ a system in which waveform data is read out and sounded in response.
ここで、一般に高速低容量の記憶装置は製品価格が高価であり、低速大容量の記憶装置は安価であるため、高速低容量の記憶装置の記憶容量以上のデータサイズを有する波形データを低速大容量の記憶装置に保持しておき、必要な場合にのみ高速低容量の記憶装置に移動して発音に使用することにより、良好な波形データの読み出し動作と、製品コストの抑制との両方を実現することができる。例えば特許文献1等には、このようなシステムを採用して、読み出した波形データを合成することにより所望の音色の楽音を発音させることができる音源装置について記載されている。
In general, high-speed and low-capacity storage devices are expensive in product price, and low-speed and large-capacity storage devices are inexpensive. By holding it in a storage device with a capacity, and moving to a high-speed, low-capacity storage device only when necessary and using it for sound generation, both a good waveform data read operation and a reduction in product cost are achieved. can do. For example,
しかしながら、このような方式のシステムにおいては、低速大容量の記憶装置から高速低容量の記憶装置への波形データの移動に時間がかかるという問題を有している。特に、近年の楽音生成方法においては演奏した鍵域や強さに応じて音色を切り替える手法を採用しているため、よりデータサイズの大きな波形データを必要とする音色や、複数の波形データの組み合わせによって構成される音色の場合には、波形データの読み込みにさらに時間を要していた。このとき、波形データを読み込むまでは、その波形データに基づく楽音を発音させることができないため、演奏に支障を来す場合があった。 However, such a system has a problem that it takes time to move waveform data from a low-speed and large-capacity storage device to a high-speed and low-capacity storage device. In particular, recent musical tone generation methods employ a method of switching timbres according to the key range and strength played, so timbres that require waveform data with a larger data size or combinations of multiple waveform data In the case of a timbre constituted by the above, it takes more time to read the waveform data. At this time, since the musical sound based on the waveform data cannot be generated until the waveform data is read, the performance may be hindered.
そこで、本発明は、上述したような課題に鑑みて、複数の波形データを用いた楽音の生成処理に要する時間をより効果的に短縮して、良好な演奏を実現することができる楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器を提供することを目的とする。 Therefore, in view of the above-described problems, the present invention provides a musical tone generation apparatus that can effectively shorten the time required for musical tone generation processing using a plurality of waveform data and realize a good performance. An object is to provide a musical sound generation method, a musical sound generation program, and an electronic musical instrument.
本発明に係る楽音生成装置は、
波形データを読み込んで記憶する複数の記憶領域を有する第1の記憶手段と、
前記第1の記憶手段の選択された前記記憶領域から前記波形データを読み込むことにより発音させる発音制御手段と、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新する更新手段と、
前記発音が指示されたときに、前記履歴情報に基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する制御手段と、
を備えたことを特徴とする。
The musical sound generating apparatus according to the present invention is
First storage means having a plurality of storage areas for reading and storing waveform data;
Sound generation control means for generating sound by reading the waveform data from the selected storage area of the first storage means;
For each of the plurality of storage areas, update means for updating history information indicating a use history read and used for sound generation by the sound generation control means in the past;
Control means for selecting the storage area for reading the waveform data used for the instructed sound generation based on the history information when the sound generation is instructed;
It is provided with.
本発明によれば、複数の波形データを用いた楽音の生成処理に要する時間をより効果的に短縮して、良好な演奏を実現することができる。 ADVANTAGE OF THE INVENTION According to this invention, the time required for the production | generation process of the musical tone using several waveform data can be shortened more effectively, and a favorable performance can be implement | achieved.
以下、本発明に係る楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器を実施するための形態について、図面を参照しながら詳しく説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments for implementing a musical sound generation device, a musical sound generation method, a musical sound generation program, and an electronic musical instrument according to the present invention will be described in detail with reference to the drawings.
<電子楽器>
図1は、本発明に係る楽音生成装置を適用した電子楽器の一実施形態を示す外観図である。ここでは、本発明に係る電子楽器の一実施形態として、波形読み出し方式の電子鍵盤楽器を示して説明する。
<Electronic musical instrument>
FIG. 1 is an external view showing an embodiment of an electronic musical instrument to which a musical sound generating device according to the present invention is applied. Here, as an embodiment of the electronic musical instrument according to the present invention, a waveform readout type electronic keyboard musical instrument is shown and described.
本実施形態に係る電子鍵盤楽器100は、例えば図1に示すように、楽器本体の一面側に、演奏操作子としての複数の鍵からなる鍵盤(入力手段)102と、波形選択操作子としての音色選択を行うための音色選択ボタン(入力手段)104、及び、音色以外の各種機能選択を行うための機能選択ボタン106からなるスイッチ・パネルと、ピッチベンドやトレモロ、ビブラート等の各種モジュレーション(演奏効果)を付加するためのベンダ/モジュレーション・ホイール108と、音色やその他の各種設定情報を表示するLCD(Liquid Crystal Display:液晶ディスプレイ)110等の表示部と、を備えている。また、電子鍵盤楽器100は、図示を省略したが、演奏により生成された楽音を出力するスピーカ(出力手段)を、例えば楽器本体の裏面部、側面部、又は背面部等に備えている。
As shown in FIG. 1, for example, an
このような電子鍵盤楽器100において、音色選択ボタン104は、例えば図1に示すように、ピアノ(図中「Piano」)、エレクトリックピアノ(図中「E.Piano」)、オルガン(図中「Organ」)、ギター(図中「Guitar」)、サクソフォン(図中「Saxophone」)、ストリング(図中「Strings」)、シンセ(図中「Synth1」、「Synth2」)、ドラム(図中「Drums1」、「Drums2」)等の各種の音色のカテゴリを選択するための波形選択操作子としてのボタンである。ここで、図1においては16種類の音色のカテゴリを示した。電子鍵盤楽器100の演奏者(ユーザ)は、任意の音色選択ボタン104を押下することにより、上記の16種類の音色の中から任意の音色のカテゴリを選択して演奏することができる。
In such an
図2は、本実施形態に係る電子鍵盤楽器のハードウェアの構成例を示すブロック図である。図3は、本実施形態に適用される音源LSIの内部構造の例を示すブロック図である。 FIG. 2 is a block diagram illustrating a hardware configuration example of the electronic keyboard instrument according to the present embodiment. FIG. 3 is a block diagram showing an example of the internal structure of a sound source LSI applied to this embodiment.
電子鍵盤楽器100は、例えば図2に示すように、CPU(中央演算処理装置)202と、音源LSI(大規模集積回路)204と、DMA(Direct Memory Access)コントローラ214と、I/O(入出力)コントローラ216とが、それぞれシステムバス226に直接接続された構成を備えている。また、電子鍵盤楽器100は、アクセス速度が高速(第2の読み出し速度)で低容量(第2の記憶容量)のRAM(ランダムアクセスメモリ)208がメモリコントローラ206を介して、また、アクセス速度が低速(第1の読み出し速度)で大容量(第1の記憶容量)のフラッシュ(Flash)メモリ212がフラッシュメモリコントローラ210を介して、それぞれシステムバス226に接続された構成を備えている。また、電子鍵盤楽器100は、図1に示したLCD110がLCDコントローラ218を介して、また、図1に示した鍵盤102と、音色選択ボタン104及び機能選択ボタン106からなるスイッチ・パネルとがキー・スキャナ220を介して、さらに、図1に示したベンダ/モジュレーション・ホイール108がA/Dコンバータ(アナログ・デジタル変換回路)222を介して、それぞれI/Oコントローラ216に接続され、これらの構成がI/Oコントローラ216を介してシステムバス226に接続された構成を備えている。また、システムバス226はバスコントローラ224に接続され、システムバス226を介して上記の各構成間で送受信される信号やデータがバスコントローラ224により制御される。また、音源LSI204には、D/Aコンバータ(デジタル・アナログ変換回路)228及びアンプ230が接続され、音源LSI204から出力されるデジタル楽音波形データがD/Aコンバータ228によりアナログ楽音波形信号に変換され、さらにアンプ230で増幅された後に、出力端子又は図示を省略したスピーカから出力される。ここで、少なくともCPU(制御手段)202、音源LSI(発音手段)204、RAM(第2の記憶手段)208、大容量のフラッシュメモリ(第1の記憶手段)212は、本発明に係る楽音生成装置を構成する。
For example, as shown in FIG. 2, the
このように、電子鍵盤楽器100は、機器全体がバスコントローラ224によって制御されるシステムバス226を中心に構成されている。具体的には、バスコントローラ224はシステムバス226に接続された上記の各構成における信号やデータの送受信時の優先順位を制御する。例えば、電子鍵盤楽器100において、RAM208は、CPU202と音源LSI204によって共有された構成を有しているが、発音を行う音源LSI204は、データの欠落が許されないため、バスコントローラ224により、音源LSI204とRAM208との送受信時の優先度が最も高く設定されており、必要に応じてCPU202によるRAM208へのアクセスが制限される。
As described above, the
上記のような構成において、CPU202は、機器全体の処理を行うメインプロセッサであって、RAM208をワーク領域として使用しながら所定の制御プログラムを実行することにより、電子鍵盤楽器100の制御動作を実行する。
In the configuration as described above, the
RAM208は、後述する大容量フラッシュメモリ212に比較して、一般にアクセス速度が高速で低容量、且つ、製品価格が高価なメモリデバイスであり、インターフェースであるメモリコントローラ206を介してシステムバス226に接続される。RAM208は、大容量フラッシュメモリ212から転送された波形データや制御プログラム、各種の固定データ等を配置する。特に、RAM208は、後述する音源LSI204において実行される楽音の生成処理に使用される波形データを展開する音源メモリ(又は、波形メモリ)としての機能を有し、発音される楽音の波形データは必ず、RAM208上に配置される。また、RAM208は、CPU202や音源LSI204に内蔵されるDSP(デジタル信号処理回路)306のワーク領域としても使用される。
The
ここで、RAM208の記憶容量は、大容量フラッシュメモリ212に比較して小さいため、RAM208の記憶内容が逐次入れ替えられるが、所定の条件を満たす(後述するしきい値を超過するデータサイズを有する)波形データについては、演奏中に波形データの転送による変更がなされることのない状態でRAM208に固定的に記憶される。また、他の所定の条件を満たす(後述するしきい値以下のデータサイズを有し、既にRAM208に転送済みの)波形データについては、RAM208内に保存されている波形データが流用される。このように、本実施形態は、RAM208の記憶内容のうち、波形データの管理方法に特徴を有している。
Here, since the storage capacity of the
大容量フラッシュメモリ212は、一般にNAND型等のアクセス速度が低速で大容量、且つ、製品価格が安価なメモリデバイスであり、インターフェースであるフラッシュメモリコントローラ210を介してシステムバス226に接続される。大容量フラッシュメモリ212は、音源LSI204において実行される楽音の生成処理に使用される(又は、使用される可能性のある)全ての音色の波形データや、全ての音色のパラメータデータ、CPU202や音源LSI204のDSP306において実行される制御プログラムのプログラムデータ、音楽データや演奏者の設定データ等の各種の固定データを記憶している。ここで、大容量フラッシュメモリ212に記憶された全ての波形データは、圧縮されており、例えば1語長が8ビットに設定されている。大容量フラッシュメモリ212に記憶された波形データ等は、CPU202がシーケンシャルに順次アクセスすることにより読み出されてRAM208に転送される。
The large-
なお、本実施形態においては、大容量で安価なメモリデバイスとして、NAND型のフラッシュメモリ(実際には、フラッシュメモリを集積して構成されたSSD;Solid State Drive)を適用した構成を示したが、本発明はこれに限定されるものではない。例えば、大容量で安価なメモリデバイスとして、ハードディスク(HDD)を適用するものであってもよい。ここで、フラッシュメモリやハードディスクは、電子鍵盤楽器100に対して着脱可能(すなわち、差し替え可能)な構成を有しているものであってもよい。また、データの高速転送が可能である場合には、大容量で安価なメモリデバイスとして、特定のネットワーク上やインターネット上(すなわち、クラウド上)のハードディスクを適用するものであってもよい。
In the present embodiment, a configuration in which a NAND flash memory (actually, a solid state drive (SSD) configured by integrating flash memories) is applied as a large-capacity and inexpensive memory device is shown. However, the present invention is not limited to this. For example, a hard disk (HDD) may be applied as a large-capacity and inexpensive memory device. Here, the flash memory and the hard disk may be configured to be detachable (that is, replaceable) with respect to the
LCDコントローラ218は、LCD110の表示状態を制御するIC(集積回路)である。キー・スキャナ220は、鍵盤102や音色選択ボタン104及び機能選択ボタン106等のスイッチ・パネルの状態を走査して、CPU202に通知するICである。A/Dコンバータ222は、ベンダ/モジュレーション・ホイール108の操作位置を検出するICである。これらのLCDコントローラ218やキー・スキャナ220、A/Dコンバータ222は、インターフェースであるI/Oコントローラ216を介してシステムバス226との間でデータや信号の入出力を行う。
The
音源LSI204は、後述する楽音生成処理を実行する専用のICである。上記の大容量フラッシュメモリ212は、CPU202からはランダムアクセスが不可能であり、音源LSI204からもアクセスが不可能であるため、大容量フラッシュメモリ212に記憶されたデータ等は、ランダムアクセスが可能なRAM208に一旦転送される。音源LSI204は、CPU202からの命令に基づいて、RAM208に転送された波形データについて、対象となる音色の記憶領域から、演奏で指示された鍵の音高に対応する速度で波形データを読み出し、その読み出した波形データに対して演奏で指示されたベロシティの振幅エンベロープを付加し、その結果として得られる波形データを出力楽音波形データとして出力する。
The
音源LSI204は、例えば図3に示すように、256組の波形読み出し装置(発音手段)304を有する波形発生器302と、DSP306と、ミキサ308と、バスインターフェース310と、を備え、波形発生器302、DSP306及びミキサ308は、バスインターフェース310を介してシステムバス226に接続されて、RAM208へのアクセスや、CPU202との通信が行われる。波形発生器302の各波形読み出し装置304は、RAM208から波形データを読み出して音色の波形を発生させる発振器(オシレータ)であり、DSP306は、音声信号に音響効果をもたらす信号処理回路である。ミキサ308は、波形発生器302からの信号を混合したり、DSP306との間で信号を送受信したりすることにより全体の音声信号の流れを制御して、外部に出力する。すなわち、ミキサ308は、演奏に応じて波形発生器302の各波形読み出し装置304によりRAM208から読み出された波形データに対して、DSP306によりCPU202から供給される楽音パラメータに応じたエンベロープを付加して、出力楽音波形データとして出力する。ミキサ308の出力信号は、図2に示したように、D/Aコンバータ228及びアンプ230を介して所定の信号レベルのアナログ信号として、図示を省略したスピーカやヘッドホン等に出力される。
For example, as shown in FIG. 3, the
(波形データの管理手法)
ここで、上述したRAM及び大容量フラッシュメモリに格納される波形データについて詳しく説明する。
(Waveform data management method)
Here, the waveform data stored in the RAM and the large-capacity flash memory will be described in detail.
図4、図5は、本実施形態に適用される波形データの管理手法を説明する図である。図4(a)は、音色波形スプリットの説明図であり、図4(b)は、フラッシュメモリ音色波形ディレクトリの説明図であり、図5は、RAM音色波形ディレクトリの説明図である。 4 and 5 are diagrams for explaining a waveform data management method applied to the present embodiment. 4A is an explanatory diagram of the timbre waveform split, FIG. 4B is an explanatory diagram of the flash memory timbre waveform directory, and FIG. 5 is an explanatory diagram of the RAM timbre waveform directory.
本実施形態においては、演奏者が電子鍵盤楽器100に備えられた音色選択ボタン104を押下することにより、16種類のうちの任意の音色が選択されて演奏が行われる。これにより、鍵域やベロシティによって音量や音高のみならず音色が変化するのを再現するために、大容量フラッシュメモリ212からRAM208に、音高又は音量ごとの音色の波形データが読み込まれる。ここで、各音色は、それぞれ1音色当たり例えば最大32種類の波形から構成され、その波形データは大容量フラッシュメモリ212に記憶されている。一つの音色に対して、音高又は音量ごとに波形データを管理する手法としては、図4(a)に示すように、鍵盤102上で演奏者が演奏する鍵域(図中、横軸の「Key」)ごとにそれぞれ波形データを割り当て、また、同じ鍵域であっても押鍵時の速さ(演奏の強さ)を示すベロシティ(図中、縦軸の「Velocity」)ごとにそれぞれ波形データを割り当てる音色波形スプリット構造による管理手法が適用される。すなわち、音色波形スプリット構造を用いた波形データの管理手法においては、1音色の音域とベロシティ域を2次元的に分割し、それぞれのスプリット(分割)エリアに最大32個の波形が割り当てられている。この管理手法によれば、押鍵時の速さ(ベロシティ)と鍵番号(鍵域)の2つのファクターから読み出すべき波形が1つだけ決定される。
In the present embodiment, when the performer presses the
そして、大容量フラッシュメモリ212やRAM208に記憶される波形データは、テーブル形式を有する音色波形ディレクトリ情報に基づいて管理される。音色波形ディレクトリ情報は、大容量フラッシュメモリ212に記憶され、例えば電子鍵盤楽器100の起動時に、CPU202により大容量フラッシュメモリ212から読み出されてRAM208に転送される。或る音色の楽音を演奏する際には、CPU202がRAM208からその音色に対応する音色波形ディレクトリ情報のデータを読み出して参照する。
The waveform data stored in the large-
ここで、大容量フラッシュメモリ212に記憶される音色波形ディレクトリ情報のテーブルには、例えば図4(b)に示すように、1つの「音色番号」の音色に含まれる各波形データごとに、その波形データの「波形番号」と、その波形データが発音されるべき鍵域及びベロシティの範囲を示す「最小ベロシティ」、「最大ベロシティ」、「最低キー番号」及び「最高キー番号」と、大容量フラッシュメモリ212上の記憶領域(波形領域)の先頭からのアドレスを示す「波形領域先頭からのアドレス」と、その波形データのデータサイズを示す「波形サイズ」との各項目値が登録されている。すなわち、フラッシュメモリ音色波形ディレクトリ情報においては、各音色の各波形データについて、上記の音色波形スプリット構造においてどのような条件で分割されているかという鍵域及びベロシティ域情報と、実際に大容量フラッシュメモリ212の中でどのアドレスに配置されていて、波形サイズはどれだけかという情報とが、テーブル形式で規定されている。このフラッシュメモリ音色波形ディレクトリ情報は、電子鍵盤楽器100の起動時に、CPU202のワーク領域に作成される。
Here, in the timbre waveform directory information table stored in the large-
また、RAM208に記憶される音色波形ディレクトリ情報のテーブルには、例えば図5に示すように、上記のフラッシュメモリ音色波形ディレクトリ情報の各項目に付加して、波形データごとに後述するしきい値を超えるデータサイズを有するスタティック波形であるか否かを示す「スタティックフラグ」と、その波形データがスタティック波形領域、或いは、ダイナミック波形バッファに読み込まれているかに関わらず、RAM208上でのアドレスを示す「RAM上の波形アドレス」との各項目値が登録されている。このRAM音色波形ディレクトリ情報は、電子鍵盤楽器100の起動時に、CPU202のワーク領域に作成される。ここで、「RAM上の波形アドレス」は、初期状態では「0」が格納されていて、実際に波形データが読み込まれていないことを示し、実際に演奏時に波形データが読み込まれた時に、実アドレスが格納される。すなわち、RAM音色波形ディレクトリ情報においては、上記のフラッシュメモリ音色波形ディレクトリ情報においてテーブル形式で規定された各音色の各波形データについて、RAM208上の記憶領域にどのようなデータの分類で、どのアドレスに配置されているかという情報が規定されている。
Further, in the timbre waveform directory information table stored in the
(RAM及び大容量フラッシュメモリ上の情報)
次に、本実施形態に係る電子鍵盤楽器に適用されるRAM及び大容量フラッシュメモリ上の情報とその転送処理について、図面を参照して説明する。
(Information on RAM and large-capacity flash memory)
Next, information on the RAM and the large-capacity flash memory applied to the electronic keyboard instrument according to the present embodiment and its transfer process will be described with reference to the drawings.
図6は、本実施形態に適用されるRAM及び大容量フラッシュメモリ上の情報とその転送処理の概要を説明する図である。図7は、本実施形態に適用されるRAMにおける波形データの管理状況を説明するための図である。図7(a)は、RAMのスタティック波形領域(第1の記憶領域)における波形データの配置を示す図であり、図7(b)は、RAMのダイナミック波形バッファ領域(第2の記憶領域)における波形データの配置を示す図であり、図7(c)は、RAMのダイナミック波形バッファへのアクセス状況を示す図である。 FIG. 6 is a diagram for explaining the outline of the information on the RAM and the large-capacity flash memory applied to the present embodiment and the transfer processing thereof. FIG. 7 is a diagram for explaining the management status of waveform data in the RAM applied to this embodiment. FIG. 7A is a diagram showing an arrangement of waveform data in the static waveform area (first storage area) of the RAM, and FIG. 7B is a dynamic waveform buffer area (second storage area) of the RAM. FIG. 7C is a diagram showing an access status to the dynamic waveform buffer in the RAM.
RAM208上には、図6左方の「RAM上の情報」に示すように、音色波形ディレクトリ、音色パラメータ、CPUプログラム、CPUデータ、CPUワーク、DSPプログラム、DSPデータ、DSPワークの各種データが展開される。また、大容量フラッシュメモリ212上には、図6右方の「大容量フラッシュメモリ上の情報」に示すように、音色波形ディレクトリ、音色パラメータ領域、CPUプログラム、CPUデータ、DSPプログラム、DSPデータの各種データが展開される。
On the
ここで、電子鍵盤楽器100の演奏に伴って、音源LSI204が波形読み出し動作を実行する際には、読み出す波形データがRAM208上に配置されている必要があるため、例えば電子鍵盤楽器100の起動時に、大容量フラッシュメモリ212からRAM208に、図4(b)に示した音色波形ディレクトリ情報、音色パラメータ、CPUプログラム、CPUデータ、DSPプログラム、DSPデータが転送される。
Here, when the
また、電子鍵盤楽器100の演奏時には、音源LSI204による波形読み出し動作の対象となる波形データもRAM208に転送されている必要があるが、RAM208は、大容量フラッシュメモリ212に比較して記憶容量が小さいため、大容量フラッシュメモリ212に記憶されている全ての音色の波形データをRAM208上に配置することができない。
In addition, when the
本実施形態においては、基本的には演奏により発音する際に大容量フラッシュメモリ212から必要な波形データの読み出しを行い、RAM208上の波形読み出し装置304に対応して割り当てられた波形バッファに転送して一時保存し、音源LSI204により読み出し再生を行う。ここで、データサイズが大きい波形データの場合には、大容量フラッシュメモリ212からRAM208への転送に時間がかかって発音の反応が遅延してしまい、演奏に支障を来す場合がある。
In the present embodiment, basically, the waveform data necessary for large-
そこで、本実施形態においては、大容量フラッシュメモリ212に記憶されている波形データのうち、データサイズが大きい波形データについては、例えば電子鍵盤楽器100の起動時に(電源投入時)予めRAM208に転送しておく。すなわち、所定のしきい値を超過するデータサイズを有する波形データについては、図6に示すように、演奏に先立つタイミングで全てRAM208に転送しておく。図7(a)に示すように、転送された波形データ(5B、1A、・・・3B)は、それぞれRAMスタティック波形領域にアドレスに対応付けた配置で固定的に記憶され、図5に示したRAM音色波形ディレクトリ情報に基づいて管理される。本実施形態においては、波形データの転送処理の判断基準となるデータサイズを規定するしきい値として例えば64Kバイトに設定する。このようなしきい値の設定によれば、例えばピアノやシンバル等の楽器の音色波形は、データサイズがしきい値よりも大きいため、起動時にRAM208に転送されて、スタティック波形領域に配置される。
Therefore, in the present embodiment, of the waveform data stored in the large-
一方、例えばギター等の楽器の音色波形のように、データサイズがしきい値(64Kバイト)以下の低容量の波形データの場合には、図6に示すように、演奏に伴う押鍵時(すなわち、発音時)にその都度大容量フラッシュメモリ212からRAM208に転送を行う。ここで、演奏時に大容量フラッシュメモリ212から転送される波形データは、複数の波形読み出し装置304に対応して設定されたRAM208上の複数の波形バッファのうち、いずれの波形読み出し装置304からも使用されていない波形バッファが選択されて上書き保存される。或いは、波形読み出し装置304により使用されている数や使用頻度が低い波形バッファから優先的に選択されて、転送される波形データが上書き保存される。このような大容量フラッシュメモリ212から波形バッファへの波形データの転送時の管理は、RAM208の各波形バッファに保存されている波形データが、いずれの波形読み出し装置304による発音のために使用中であるか否かを、逐次更新しながら(リアルタイムに)管理する管理情報に基づいて実行される。すなわち、図7(b)に示すように、転送された波形データは、それぞれRAMダイナミック波形バッファ領域においてアドレスに対応付けた配置の複数の波形バッファ(1、2、3・・・512)に記憶され、図5に示したRAM音色波形ディレクトリ情報、及び、図7(c)に示したRAMダイナミック波形バッファアクセス情報ディレクトリに基づいて管理される。これらの管理情報は、RAM208から大容量フラッシュメモリ212への波形データの転送処理や、音源LSI204の波形読み出し装置304による波形データの読み出し、発音処理の際に、逐次更新しながら(リアルタイムに)管理される。
On the other hand, in the case of low-capacity waveform data whose data size is a threshold value (64 Kbytes) or less, such as a timbre waveform of a musical instrument such as a guitar, as shown in FIG. In other words, the data is transferred from the large-
本実施形態においては、音源LSI204に設けられる256組の波形読み出し装置304よりも多い、512組の波形バッファがRAMダイナミック波形バッファ領域に設定され、演奏時に大容量フラッシュメモリ212から波形データが転送される際に、ダイナミック波形バッファのアサイナによって、512組の波形バッファのうちの、現在波形読み出し動作に使用されていない波形バッファであって、時間的に古い波形データが読み込まれている波形バッファから、優先的に選択されて割り当てが行われ、波形データが上書き保存(可変的に記憶)される。ここで、演奏を開始した直後等の初期状態では、RAMダイナミック波形バッファ領域の各波形バッファに未だ波形データが読み込まれていない状態にあるが、このような状態(使用履歴がない状態)の波形バッファを時間的に古いものとして判断することにより、未使用の波形バッファから優先的に割り当てが行われる。アサイナによる波形バッファの選択は、上記の条件に加え、波形読み出し動作における使用頻度が低い波形バッファや、直近で使用されていない波形バッファ、或いは、読み込まれる波形データのデータサイズが小さい波形バッファから優先的に選択されて割り当てが行われるものであってもよい。
In the present embodiment, 512 sets of waveform buffers, which are larger than 256 sets of
本実施形態において、上記のRAMダイナミック波形バッファ領域に設定される波形バッファの数(512)は、一例であって、これに限定されるものではない。波形読み出し装置304と波形バッファとの対応関係が1対1に固定されたものではなく、動的(又は可変的)に対応付けられるものであれば、波形読み出し装置304の数よりも1個以上多い個数を有していることが好ましい。すなわち、波形読み出し装置304よりも多い数の波形バッファを有することにより、仮に波形読み出し装置304と波形バッファとが1対1の対応関係で割り当てられていたとしても、物理的に波形データの読み出しに使用されていない波形バッファが必ず1個以上存在することになり、その波形バッファを大容量フラッシュメモリ212からの波形データの転送等に使用することができ、最大音色数での同時発音を確保しつつ、RAM208のメモリ管理を効率的に行うことができる。なお、同時発音される音色数を最大数よりも小さくすることが製品の仕様上許容されるのであれば、波形バッファの数を波形読み出し装置304の個数と同数又はそれ以下に設定するものであってもよい。
In the present embodiment, the number of waveform buffers (512) set in the RAM dynamic waveform buffer area is an example, and is not limited to this. If the correspondence between the
また、本実施形態においては、RAMダイナミック波形バッファ領域に設定される各波形バッファは、波形データをデータサイズで区分けする上記のしきい値(64Kバイト)に対応して、例えば固定長64Kバイトの容量が割り当てられている。 In the present embodiment, each waveform buffer set in the RAM dynamic waveform buffer area corresponds to the threshold value (64 Kbytes) for dividing the waveform data by the data size, for example, a fixed length of 64 Kbytes. Capacity is allocated.
また、上記の波形データの転送処理に適用されるしきい値は、例えば演奏時のCPU202の処理負担や遅延時間等に基づいて設定される。具体的には、電子鍵盤楽器100の演奏においては、一般に押鍵時から楽音の発音までの合計遅延時間が概ね10msecを超過すると、演奏者は押鍵に対する発音までの反応が遅いと認識する傾向が高いため、CPU202の処理性能や周辺回路における信号遅延等を加味して、各音色波形データの転送処理に許容される遅延時間を算出する。そして、この一定の許容遅延時間内に転送処理が完了するとともに、RAM208の記憶容量を極力小さくすることができる音色波形のデータサイズをしきい値として設定する。このような条件に基づいて、発明者らが算出したしきい値の一例が、64Kバイトである。
The threshold value applied to the waveform data transfer process is set based on, for example, the processing load on the
なお、本実施形態においては、音色波形のデータサイズについてしきい値を設定した場合について説明したが、本発明はこれに限定されるものではなく、例えば、音色波形を規定する音高やベロシティについて、上記と同様の概念に基づいて、しきい値を設定するものであってもよい。 In the present embodiment, the case where the threshold value is set for the data size of the timbre waveform has been described. However, the present invention is not limited to this, and for example, the pitch and velocity that define the timbre waveform. The threshold value may be set based on the same concept as described above.
本実施形態においては、これらの処理により、上記のしきい値を超過する全ての波形データを記憶できる容量に、しきい値以下の波形データを一時保存する波形バッファの記憶容量を加算した程度の記憶容量を有するRAM208を適用すればよいことになる。なお、本願発明者らの検証によれば、本実施形態を適用することにより、RAMに使用される記憶容量を、従前の1/4〜1/5程度に圧縮することができる可能性があることを確認した。
In the present embodiment, by these processes, the storage capacity of the waveform buffer that temporarily stores waveform data below the threshold is added to the capacity that can store all waveform data that exceeds the above threshold. A
<電子楽器の制御方法>
次に、本実施形態に係る電子鍵盤楽器の制御方法(楽音生成方法)について、図面を参照して詳しく説明する。ここでは、本発明の特徴である楽音生成方法を含む、電子鍵盤楽器の制御方法全体について説明する。また、以下に示す一連の制御処理は、CPU202及び音源LSI204において、RAM208に記憶された所定の制御プログラムを実行することにより実現されるものである。
<Control method of electronic musical instrument>
Next, the electronic keyboard instrument control method (musical sound generation method) according to the present embodiment will be described in detail with reference to the drawings. Here, the overall control method of the electronic keyboard instrument including the tone generation method that is a feature of the present invention will be described. A series of control processes shown below are realized by executing a predetermined control program stored in the
(楽音生成方法の概要)
まず最初に、本実施形態に係る電子鍵盤楽器100に適用される楽音生成方法の概要について説明する。 本実施形態に係る電子鍵盤楽器100において、演奏者による押鍵時には、CPU202は、同時発音数が多い(すなわち、発音チャンネルが多数ある)ため、まず、キーアサイナによって押鍵を割り当てる音源LSI204の波形読み出し装置304を決定する。ここで、キーアサインは発音が停止している波形読み出し装置304から優先的に割り当てられるが、その波形読み出し装置304自体が読み出しを停止している場合であっても、波形読み出し装置304の波形バッファが他の波形読み出し装置304により使用されているような場合には、当該波形読み出し装置304に割り当てを行わず、極力現在の状態を維持する判断を行う。
(Outline of music generation method)
First, an outline of a tone generation method applied to the
より具体的には、CPU202は、例えば各波形読み出し装置304をどのような順序で、どのような波形データの読み出しに使用したかを示す履歴情報を逐次更新しながら(リアルタイムに)管理して、当該履歴情報に基づいて、どの波形読み出し装置304からも波形データの読み出し動作に使用されていない波形バッファに対応付けられた波形読み出し装置304や、使用頻度が低い波形読み出し装置304、時間的に古い波形読み出し装置304、或いは、読み出した波形データのデータサイズが小さい波形読み出し装置304から、優先的に割り当てて波形読み出し動作を実行させる。
More specifically, for example, the
次いで、CPU202は、押鍵時のベロシティと鍵域に基づいて、図4(a)に示した音色波形のスプリット情報から演奏で指示された楽音の波形番号を特定し、特定された波形データが図7(a)に示したRAM208上のスタティック波形領域に存在しているか否かを調査する。スタティック波形領域に、該当する波形データが存在しない場合には、CPU202は、RAM208上のダイナミック波形バッファ領域に存在しているか否かをさらに調査する。
Next, the
該当する波形データがRAM208上のスタティック波形領域に存在している場合には、CPU202は、当該波形データを後述する発音のための読み出し動作の対象とする。また、該当する波形データがスタティック波形領域に存在せず、ダイナミック波形バッファ領域に存在している場合には、CPU202は、当該波形データを大容量フラッシュメモリ212から読み込まずに、同一のRAM208内で当該波形データを流用する。具体的には、発音が指示された波形データが記憶された波形バッファをリンク先に設定して、当該リンク情報に基づいて、波形読み出し動作のために割り当てられた波形読み出し装置304によりリンク先の波形バッファの波形データを直接読み出すことにより、波形データをRAM208内で流用する手法を適用することができる。また、波形データの他の流用方法としては、発音が指示された波形データが記憶された波形バッファから、波形読み出し動作のために割り当てられた波形バッファに、当該波形データをRAM208内でコピー転送した後、波形読み出し装置304により読み出す手法を適用することができる。これにより、大容量フラッシュメモリ212からRAM208へ当該波形データを無条件で転送処理する場合に比較して、非常に短い時間で波形データをRAM208上に配置することができる。
When the corresponding waveform data exists in the static waveform area on the
一方、該当する波形データがスタティック波形領域、及び、波形読み出し装置バッファ領域のいずれにも存在していない場合には、CPU202は、RAM208のダイナミック波形バッファのアサイナによって、新たに波形バッファを割り当て、大容量フラッシュメモリ212に記憶された該当波形データを、RAM208上の割り当てられた波形バッファに転送する。
On the other hand, if the corresponding waveform data does not exist in either the static waveform area or the waveform reading device buffer area, the
より具体的には、CPU202は、各波形読み出し装置304に動的に対応付けられる複数の波形バッファの各々について、どのような順序でどのような波形データの発音に使用されたかという過去の使用履歴を示す履歴情報や、読み込まれた波形データのサイズや発音に使用している波形読み出し装置304の数等の現在の使用状態を示す管理情報を逐次更新しながら(リアルタイムに)管理する。そして、CPU202は、履歴情報や管理情報に基づいて、発音に使用されていないものであって、使用された時期が古い波形バッファや、使用頻度が低い波形バッファ、或いは、読み込まれた波形データのデータサイズが小さい波形バッファを優先的に選択して、当該波形バッファに転送された波形データを記憶させる。
More specifically, the
そして、指示された楽音の波形データがRAM208上に存在し、割り当てられた波形読み出し装置304に対応する波形バッファの位置が確定した時点で、CPU202は、音源LSI204において発音のための読み出し動作を開始する。
When the waveform data of the instructed musical tone exists on the
以下、上記の楽音生成方法の概要に則して電子鍵盤楽器の制御方法について詳しく説明する。
(メインルーチン)
図8は、本実施形態に係る電子鍵盤楽器の制御方法のメインルーチンを示すフローチャートである。
Hereinafter, the control method of the electronic keyboard instrument will be described in detail in accordance with the outline of the above-described tone generation method.
(Main routine)
FIG. 8 is a flowchart showing a main routine of the electronic keyboard instrument control method according to the present embodiment.
本実施形態に係る電子鍵盤楽器の制御方法においては、概略、以下のような処理動作が実行される。まず、演奏者により電子鍵盤楽器100の装置電源がパワーオンされると、CPU202は図8に示すメインルーチンを起動し、装置各部を初期化する初期化処理を実行する(ステップS802)。
In the electronic keyboard instrument control method according to the present embodiment, the following processing operations are generally executed. First, when the player powers on the
次いで、初期化処理が完了すると、CPU202は演奏者が音色選択ボタン104等を操作した際のスイッチ処理(ステップS804〜S808)、鍵盤102を弾いた際の押鍵イベントや離鍵イベントを処理する鍵盤処理(ステップS810〜S818)、電子鍵盤楽器100の外部から受信したMIDI(Musical Instrument Digital Interface)メッセージのノートオンイベントやノートオフイベントを処理するMIDI受信処理(ステップS820〜S828)、音源における一定時間ごとの処理を行う音源定期処理(ステップS830)の一連の処理動作を繰り返し実行する。
Next, when the initialization process is completed, the
なお、図8に示したフローチャートにおいては図示を省略したが、CPU202は上述した各処理動作(ステップS802〜S830)の実行中に、演奏モードが終了や中断したり装置電源をパワーオフしたりする状態の変化を検出した場合には、メインルーチンを強制的に終了する。
Although not shown in the flowchart shown in FIG. 8, the
以下、上述した各処理動作について、具体的に説明する。
(初期化処理)
図9は、本実施形態に係る電子鍵盤楽器の制御方法に適用される波形データの管理方法に関連する初期化処理を示すフローチャートである。図10は、本実施形態に係る電子鍵盤楽器の制御方法に適用されるRAMダイナミック波形バッファアサイン情報の構造を示す図である。
Hereinafter, each processing operation described above will be specifically described.
(Initialization process)
FIG. 9 is a flowchart showing an initialization process related to the waveform data management method applied to the electronic keyboard instrument control method according to the present embodiment. FIG. 10 is a diagram showing the structure of RAM dynamic waveform buffer assignment information applied to the electronic keyboard instrument control method according to the present embodiment.
本実施形態に係る電子鍵盤楽器の制御方法に適用される初期化処理においては、図9に示すフローチャートのように、まず、CPU202は、大容量フラッシュメモリ212からCPUプログラム、CPUデータ、DSPプログラム、DSPデータをRAM208に転送する(ステップS902、S904)。その後、CPU202は、図7(a)に示したRAM208上のスタティック波形領域部分の構築と、図5に示した、RAM208上でのスタティック波形に関するフラグ情報、配置アドレス情報の生成とを含めた、RAM音色波形ディレクトリの生成処理を行う(ステップS906)。
In the initialization process applied to the control method of the electronic keyboard instrument according to the present embodiment, first, as shown in the flowchart of FIG. 9, the
次いで、図7(c)に示したRAMダイナミック波形バッファアクセス情報ディレクトリの初期化処理を行った後(ステップS908)、図10に示すRAMダイナミック波形バッファアサイン情報の初期化処理を行う(ステップS910)。ここで、RAMダイナミック波形バッファアサイン情報は、図7(b)に示したRAMダイナミック波形バッファ領域の各波形バッファを割り当てるためのアサイン情報であり、その構造は図10に示すように一般的な単方向リスト(リングバッファ)構造を有している。RAMダイナミック波形バッファアサイン情報の初期化処理は、例えば図7(b)、(c)に示すように、RAM208のダイナミック波形バッファ領域に設定された512個の波形バッファに対して、波形バッファ番号1を時間的に最も古くアサインされたものとして、以降波形バッファ番号が大きくなるにつれて、順次新しくアサインされ、波形バッファ番号512が常に最も新しくアサインされたものとなるように規定して初期化を行う。
Next, after initialization processing of the RAM dynamic waveform buffer access information directory shown in FIG. 7C (step S908), initialization processing of the RAM dynamic waveform buffer assignment information shown in FIG. 10 is performed (step S910). . Here, the RAM dynamic waveform buffer assignment information is assignment information for allocating each waveform buffer in the RAM dynamic waveform buffer area shown in FIG. 7B, and its structure is a general simple unit as shown in FIG. It has a direction list (ring buffer) structure. For example, as shown in FIGS. 7B and 7C, the initialization processing of the RAM dynamic waveform buffer assignment information is performed for the
次いで、CPU202は、大容量フラッシュメモリ212からピッチやフィルター、音量の設定など発音に必要な音色パラメータをRAM208上に転送する(ステップS912)。
Next, the
(RAM音色波形ディレクトリの生成処理)
図11は、本実施形態に係る電子鍵盤楽器の制御方法の初期化処理に適用されるRAM音色波形ディレクトリの生成処理を示すフローチャートである。
(RAM tone waveform directory generation processing)
FIG. 11 is a flowchart showing a RAM tone waveform directory generation process applied to the initialization process of the electronic keyboard instrument control method according to the present embodiment.
上述した初期化処理に適用されるRAM音色波形ディレクトリの生成処理においては、図11に示すフローチャートのように、まず、CPU202は、図4(b)に示した大容量フラッシュメモリ212のフラッシュメモリ音色波形ディレクトリから、図5に示したRAM208上にあるRAM音色波形ディレクトリに、音色番号、波形番号、最小ベロシティ、最大ベロシティ、最低キー番号、最高キー番号、波形領域先頭からのアドレス、波形サイズの各項目値をコピーして転送する(ステップS1102)。
In the RAM tone waveform directory generation process applied to the initialization process described above, first, as shown in the flowchart of FIG. 11, the
次いで、CPU202は、しきい値を超過するデータサイズを有する波形データを、スタティック波形としてRAM208上に転送する際のアドレス情報として、図7(a)に示したスタティック波形を配置するアドレス情報として、RAMスタティック波形領域の先頭アドレス「100000H」を設定して配置アドレスを初期化する(ステップS1104)。 次いで、CPU202は、RAM音色波形ディレクトリの先頭から順に、波形サイズを確認し、予め設定されたしきい値(64Kバイト)を超過する波形サイズを有するスタティック波形か否かの判断を行う(ステップS1108)。
Next, the
波形サイズがしきい値(64Kバイト)を超過する場合には、CPU202は、当該波形をスタティック波形であると判断し、大容量フラッシュメモリ212から先のアドレス情報のRAM208上のアドレスに対して、当該波形データを上記サイズ分転送する(ステップS1110)。このとき、CPU202は、転送された当該波形データがスタティック波形であるとして、図5に示したRAM音色波形ディレクトリのスタティックフラグを「1」に設定し(ステップS1112)、スタティック波形のRAM208上での配置情報として、RAM上の波形アドレスに先のアドレス情報を設定する(ステップS1114)。次いで、CPU202は、スタティック波形のアドレス情報のアドレスに対して、転送した波形データの波形サイズを加算し、アドレス情報を更新する(ステップS1116)。
When the waveform size exceeds the threshold value (64 Kbytes), the
一方、波形サイズがしきい値(64Kバイト)以下である場合には、CPU202は、当該波形をスタティック波形でないと判断し、RAM音色波形ディレクトリのスタティックフラグを「0」に設定し(ステップS1118)、RAM上の波形アドレスに「0」を設定する(ステップS1120)。CPU202は、上記の一連の処理動作(ステップS1108〜S1120)をRAM音色波形ディレクトリの要素数分(すなわち、テーブル情報の最後の要素まで)繰り返すループ処理(ステップS1106、S1122)を実行する。
On the other hand, if the waveform size is equal to or smaller than the threshold value (64 Kbytes), the
(RAMダイナミック波形バッファアクセス情報ディレクトリの初期化処理)
図12は、本実施形態に係る電子鍵盤楽器の制御方法の初期化処理に適用されるRAMダイナミック波形バッファアクセス情報ディレクトリの初期化処理を示すフローチャートである。
(RAM dynamic waveform buffer access information directory initialization process)
FIG. 12 is a flowchart showing initialization processing of the RAM dynamic waveform buffer access information directory applied to initialization processing of the electronic keyboard instrument control method according to the present embodiment.
上述した初期化処理に適用されるRAMダイナミック波形バッファアクセス情報ディレクトリの初期化処理においては、図12に示すフローチャートのように、まず、CPU202は、RAM208の波形バッファの番号を管理するためのカウンタ(C)を「1」に設定して初期化するする(ステップS1202)。
In the initialization process of the RAM dynamic waveform buffer access information directory applied to the above-described initialization process, first, as shown in the flowchart of FIG. 12, the
次いで、CPU202は、図7(c)に示したRAMダイナミック波形バッファアクセス情報ディレクトリの波形バッファ番号「1」から順に、図5に示したRAM音色波形ディレクトリのどの波形(音色番号、波形番号)からアクセスされたかを管理するアクセス波形テーブルポインタを「NULL」に設定し(ステップS1206)、音源LSI204の波形読み出し装置304からのアクセスを管理するアクセスカウントを「0」に設定する(ステップS1208)。CPU202は、上記の一連の処理動作(ステップS1206〜S1208)を波形バッファカウンタが512番目の波形バッファまで繰り返すループ処理(ステップS1204、S1210)を実行する。
Next, the
(スイッチ処理)
図13は、本実施形態に係る電子鍵盤楽器の制御方法のスイッチ処理に適用される音色選択処理を示すフローチャートである。
(Switch processing)
FIG. 13 is a flowchart showing a tone color selection process applied to the switch process of the electronic keyboard instrument control method according to the present embodiment.
演奏者が電子鍵盤楽器100に備えられたボタンやスイッチ類を操作した際に実行されるスイッチ処理(ステップS804)においては、CPU202は、当該スイッチ操作により音色選択イベントが発生したか否かを判断し(ステップS806)、音色選択イベントが発生したと判断した場合には、音色選択処理を実行する(ステップS808)。
In the switch process (step S804) executed when the performer operates the buttons and switches provided on the
音色選択処理においては、図13に示すフローチャートのように、CPU202は、演奏者が音色選択ボタン104を操作することにより指定された音色番号を、後述する押鍵処理などで使用するために、RAM208上のCPUワークに保存する(ステップS1302)。一方、音色選択イベントが発生していないと判断した場合、或いは、上記の音色選択処理が終了した場合には、CPU202は、後述する鍵盤処理を実行する(ステップS810)。
In the timbre selection process, as shown in the flowchart of FIG. 13, the
(鍵盤処理)
図14は、本実施形態に係る電子鍵盤楽器の制御方法の鍵盤処理に適用される押鍵処理及び離鍵処理を示すフローチャートである。図15は、本実施形態に係る電子鍵盤楽器の制御方法の鍵盤処理に適用されるノートオン処理及びノートオフ処理を示すフローチャートである。
(Keyboard processing)
FIG. 14 is a flowchart showing a key pressing process and a key releasing process applied to the keyboard process of the electronic keyboard instrument control method according to the present embodiment. FIG. 15 is a flowchart showing note-on processing and note-off processing applied to keyboard processing of the electronic keyboard instrument control method according to the present embodiment.
上記のスイッチ処理(ステップS804)の後に実行される鍵盤処理(ステップS810)においては、CPU202は、演奏者が電子鍵盤楽器100に備えられた鍵盤102を操作することにより押鍵イベントや離鍵イベントが発生したか否かをそれぞれ判断する(ステップS812、S816)。CPU202は、押鍵イベントが発生したと判断した場合には、後述する押鍵処理を実行し(ステップS814)、離鍵イベントが発生したと判断した場合には、後述する離鍵処理を実行する(ステップS818)。
In the keyboard process (step S810) executed after the above-described switch process (step S804), the
押鍵処理においては、図14(a)に示すフローチャートのように、CPU202は、演奏者が鍵盤102を弾いた際の押鍵操作による演奏情報に含まれる鍵盤位置及び押された強さを、それぞれキー番号(ノートナンバー)及びベロシティに変換してノートオン情報として保持し(ステップS1402)、ノートオンイベントとして処理を実行する(ステップS1404)。
In the key pressing process, as shown in the flowchart of FIG. 14A, the
ノートオン処理においては、図15(a)に示すフローチャートのように、CPU202は、まず、上述した楽音生成方法の概要において説明したように、キーアサイン処理により、波形読み出し装置304の割り当てを行う(ステップS1502)。次いで、CPU202は、押鍵処理において演奏情報から変換されたノートオン情報から波形情報を取得する処理を実行し(ステップS1504)、次いで、音源LSI204の波形読み出し装置304における読み出し開始処理を実行する(ステップS1506)。
In the note-on process, as shown in the flowchart of FIG. 15A, the
また、離鍵処理においては、図14(b)に示すフローチャートのように、CPU202は、演奏者が鍵盤102を弾いた際の離鍵による演奏情報に含まれる鍵盤位置を、キー番号(ノートナンバー)に変換してノートオフ情報として保持し(ステップS1422)、ノートオフイベントとして処理を実行する(ステップS1424)。
In the key release process, as shown in the flowchart of FIG. 14B, the
ノートオフ処理においては、図15(b)に示すフローチャートのように、CPU202は、まず、押鍵処理において演奏情報から変換されたノートオフ情報からキー番号(ノートナンバー)を取得する(ステップS1522)。次いで、CPU202は、波形読み出し装置304の番号「1」から順に、波形読み出し装置304の状態を確認し、波形を読み出し中の各波形読み出し装置304に対して、RAM208上のCPUワークから波形読み出し装置304に対応するキー番号を取得して、ノートオフ情報から取得したキー番号と一致するか否かの比較を行う(ステップS1526)。キー番号が一致した場合には、CPU202は、波形読み出し装置304に接続されている音量制御(アンプエンベロープ)に対して、リリースレベルを「0」に設定して、RAM208上の音色パラメータから得られるリリースレイトを設定する(ステップS1528)。一方、キー番号が一致しない場合には、CPU202は、現在のアンプエンベロープの設定を維持する。CPU202は、上記の一連の処理動作(ステップS1526〜S1528)を、波形を読み出し中の波形読み出し装置304の数分繰り返すループ処理(ステップS1524、S1530)を実行する。
In the note-off process, as shown in the flowchart of FIG. 15B, the
ここで、上記の押鍵処理において実行されるノートオン処理に適用される各処理動作について詳しく説明する。
(波形情報取得処理)
図16は、本実施形態に係る電子鍵盤楽器の制御方法のノートオン処理に適用される波形情報取得処理を示すフローチャートである。
Here, each processing operation applied to the note-on process executed in the above key pressing process will be described in detail.
(Waveform information acquisition process)
FIG. 16 is a flowchart showing a waveform information acquisition process applied to the note-on process of the electronic keyboard instrument control method according to the present embodiment.
ノートオン処理において実行される波形情報取得処理においては、図16に示すフローチャートのように、CPU202は、まず、押鍵処理において取得したノートオン情報からキー番号(ノートナンバー)及びベロシティを取得するとともに(ステップS1602)、RAM208上のCPUワークから音色選択処理において保存された音色番号を取得する(ステップS1604)。
In the waveform information acquisition process executed in the note-on process, as shown in the flowchart of FIG. 16, the
次いで、CPU202は、RAM音色波形ディレクトリの先頭から順に、取得したキー番号、ベロシティ及び音色番号について、RAM音色波形ディレクトリ情報と一致するか否かの比較を行う。CPU202は、この比較処理において、音色番号が一致し、キー番号が最高キー番号以下且つ最低キー番号以上であり、さらにベロシティが最大ベロシティ以下且つ最小ベロシティ以上に該当するディレクトリ情報を抽出して(ステップS1608〜S1616)、当該ディレクトリ情報の波形番号と波形サイズ、スタティックフラグ、RAM上の波形アドレスを有する波形情報を取得する(ステップS1620〜S1626)。
Next, the
一方、上記の比較処理において、音色番号が一致しない、又は、キー番号が最高キー番号より大きい、又は、最低キー番号より小さい、又は、ベロシティが最大ベロシティより大きい、又は、最小ベロシティより小さい、のうちのいずれかの条件に該当する場合には、CPU202は、波形情報の取得を行わない。CPU202は、上記の一連の処理動作(ステップS1608〜S1616)をRAM音色波形ディレクトリの要素数分(すなわち、テーブル情報の最後の要素まで)繰り返すループ処理(ステップS1606、S1618)を実行する。
On the other hand, in the above comparison process, the tone numbers do not match, the key number is greater than the highest key number, or less than the lowest key number, or the velocity is greater than the maximum velocity or less than the minimum velocity. If any of these conditions is met, the
(波形読み出し開始処理)
図17は、本実施形態に係る電子鍵盤楽器の制御方法のノートオン処理に適用される波形読み出し装置の波形読み出し開始処理を示すフローチャートである。
(Waveform read start processing)
FIG. 17 is a flowchart showing a waveform readout start process of the waveform readout apparatus applied to the note-on process of the electronic keyboard instrument control method according to the present embodiment.
ノートオン処理において実行される波形読み出し装置304の波形読み出し開始処理においては、図17に示すフローチャートのように、CPU202は、まず、波形情報取得処理において取得したスタティックフラグの値が「0」か否かの判断を行う(ステップS1702)。スタティックフラグの値が「0」の場合には、CPU202は、後述する波形読み出し装置バッファ割り当て処理を実行し(ステップS1704)、一方、スタティックフラグの値が「1」の場合には、図5に示したRAM音色波形ディレクトリのRAM上の波形アドレスの先頭からスタティック波形の波形読み出し動作を開始する(ステップS1706)。
In the waveform readout start process of the
(波形読み出し装置用波形バッファの割り当て処理)
図18は、本実施形態に係る電子鍵盤楽器の制御方法のノートオン処理に適用される波形読み出し装置用波形バッファの割り当て処理を示すフローチャートである。
(Waveform buffer allocation for waveform readout device)
FIG. 18 is a flowchart showing the waveform read-out apparatus waveform buffer assignment process applied to the note-on process of the electronic keyboard instrument control method according to this embodiment.
波形読み出し装置の波形読み出し開始処理において実行される波形読み出し装置バッファの割り当て処理においては、図18に示すフローチャートのように、CPU202は、まず、波形情報取得処理において取得したRAM上の波形アドレスが「0」か否かの判断を行う(ステップS1802)。波形アドレスが「0」である場合には、CPU202は、波形バッファに当該波形データが転送されていないと判断して、後述する波形転送バッファの割り当て処理を実行した後(ステップS1804)、割り当てられた波形バッファの先頭から波形読み出し動作を開始する(ステップS1806)。
In the waveform reading device buffer allocation processing executed in the waveform reading start processing of the waveform reading device, as shown in the flowchart of FIG. 18, the
一方、RAM上の波形アドレスが「0」以外の場合には、CPU202は、そのアドレスに対応する波形バッファに波形データが既に転送済みであると判断して(ステップS1808)、その波形バッファ番号に対応するRAMダイナミック波形バッファアクセス情報ディレクトリのアクセスカウントをインクリメントし(ステップS1810)、波形バッファの先頭から波形読み出し動作を開始する(ステップS1812)。
On the other hand, if the waveform address on the RAM is other than “0”, the
(波形転送用波形バッファの割り当て処理)
図19は、本実施形態に係る電子鍵盤楽器の制御方法のノートオン処理に適用される波形転送用波形バッファの割り当て処理を示すフローチャートである。
(Waveform buffer assignment processing for waveform transfer)
FIG. 19 is a flowchart showing a waveform transfer waveform buffer assignment process applied to the note-on process of the electronic keyboard instrument control method according to this embodiment.
波形読み出し装置用波形バッファの割り当て処理において実行される波形転送バッファの割り当て処理においては、図19に示すフローチャートのように、CPU202は、まず、図10に示したRAMダイナミック波形バッファアサイン情報からアサインされた時期が最も古い波形バッファの番号を取得する(ステップS1902)。次いで、CPU202は、取得した波形バッファ番号に対応するRAMダイナミック波形バッファアクセス情報ディレクトリのアクセスカウントを取得し、その値が「0」か否かの判断を行う(ステップS1904)。アクセスカウントの値が「0」以外の場合には、CPU202は、RAMダイナミック波形バッファアサイン情報からアサインされた時期が次に古い波形バッファの番号を取得した後(ステップS1906)、ステップS1904に戻って、再度アクセスカウントを取得して、その値が「0」である波形バッファ番号を取得するまで同様の処理を繰り返す。
In the waveform transfer buffer allocation process executed in the waveform buffer allocation process for the waveform readout device, as shown in the flowchart of FIG. 19, the
ステップS1904において、アクセスカウントの値が「0」である波形バッファ番号が取得した場合には、CPU202は、その波形バッファ番号を最も新しくアサインされた波形バッファとして、RAMダイナミック波形バッファアサイン情報に対してリスト処理を行い、アサイン時期の新旧に関するアサイン情報を更新する(ステップS1908)。次いで、CPU202は、取得した最も新しくアサインされた波形バッファに対して、上記の波形情報取得処理で取得した波形番号、波形サイズに基づいて、大容量フラッシュメモリ212からRAM208に波形データの転送を行う(ステップS1910)。次いで、CPU202は、RAM音色波形ディレクトリのRAM上の波形アドレスに取得した波形バッファのアドレスを設定する(ステップS1912)。
In step S1904, when the waveform buffer number having an access count value of “0” is acquired, the
次いで、CPU202は、取得した波形バッファ番号に対応するRAMダイナミック波形バッファアクセス情報ディレクトリのアクセス波形テーブルポインタの値を取得して、その値が「NULL」か否かの判断を行う(ステップS1914)。アクセス波形テーブルポインタが「NULL」の場合には、CPU202は、何もせず、現在の状態を維持する。一方、アクセス波形テーブルポインタが「NULL」以外の場合には、CPU202は、アクセス波形テーブルポインタが示すRAM音色波形ディレクトリのRAM上の波形アド レスを「0」に設定し(ステップS1916)、RAM208上に波形データがなくなったものと判断する。
Next, the
次いで、CPU202は、取得したアクセス波形テーブルポインタに波形情報取得処理で取得した波形(音色番号、波形番号)に対応するRAM音色波形ディレクトリのアドレスを設定する(ステップS1918)。次いで、CPU202は、取得した波形バッファ番号に対応するRAMダイナミック波形バッファアクセス情報ディレクトリのアクセスカウントをインクリメントする(ステップS1920)。次いで、CPU202は、大容量フラッシュメモリ212からRAM208への波形転送が終了したか否かを確認し(ステップS1922)、転送が終了した場合には、一連の波形転送バッファの割り当て処理を終了する。
Next, the
(MIDI受信処理)
図8に示すメインルーチンに戻って、上記の鍵盤処理(ステップS810)の後に実行されるMIDI受信処理(ステップS820)においては、CPU202は、受信したMIDIメッセージにノートオンイベントやノートオフイベントが含まれているか否かをそれぞれ判断し(ステップS822、S826)、ノートオンイベントがあると判断した場合には、ノートオン処理を実行し(ステップS824)、ノートオフイベントがあると判断した場合には、ノートオフ処理を実行する(ステップS828)。ここでは、図14、図15のフローチャートに示した、ノートオン処理(ステップS1404)、又は、ノートオフ処理(ステップS1424)と同等の処理が適用される。
(MIDI reception processing)
Returning to the main routine shown in FIG. 8, in the MIDI reception process (step S820) executed after the keyboard process (step S810), the
(音源定期処理)
図20は、本実施形態に係る電子鍵盤楽器の制御方法に適用される音源定期処理を示すフローチャートである。
(Sound source regular processing)
FIG. 20 is a flowchart showing sound source regular processing applied to the control method of the electronic keyboard instrument according to the present embodiment.
上記のMIDI受信処理(ステップS820)の後に実行される音源定期処理(ステップS830)においては、CPU202は、或る一定時間ごとに、図20に示すフローチャートのように、音源処理を実行する。CPU202は、波形読み出し装置304の番号「1」から順に、波形読み出し装置304の状態を確認し、波形を読み出し中の各波形読み出し装置304に対して、音量制御(アンプエンベロープ)のレベルが「0」になっているか否かを判断する(ステップS2004)。音量制御のレベルが「0」になっている場合には、CPU202は、波形読み出し装置304の波形読み出し動作を停止する波形読み出し停止処理を実行する(ステップS2006)。一方、音量制御のレベルが「0」になっていない場合には、CPU202は、波形読み出し装置304の波形読み出し動作を停止せず、現在の状態を維持する。その後、CPU202は、波形読み出し装置304が波形読み出しを行っている波形バッファの番号に対応するRAMダイナミック波形バッファアクセス情報ディレクトリのアクセスカウントをデクリメントする(ステップS2008)。CPU202は、上記の一連の処理動作(ステップS2004〜S2008)を、波形データを読み出し中の波形読み出し装置304の数分繰り返すループ処理(ステップS2002、S2010)を実行する。
In the sound source regular process (step S830) executed after the MIDI reception process (step S820), the
このように、本実施形態においては、音源LSI204が楽音発生時に使用するRAM208からなる音源メモリと、音色に使用する全ての波形データを保存するNAND型等の大容量フラッシュメモリ212からなる大容量記憶デバイスとを備え、大容量記憶デバイスから音源メモリへの転送に時間がかかるデータサイズが大きい波形データを常時音源メモリに配置し、比較的データサイズが小さい波形データを、発音時に大容量記憶デバイスから複数の発音ジェネレータ(波形読み出し装置304)に対して動的に対応付けられた音源メモリの各波形バッファ(ダイナミック波形バッファ)に転送してから発音する。ここで、音源メモリには発音ジェネレータの数よりも多い数の波形バッファが設定され、波形データを大容量記憶デバイスから音源メモリの各波形バッファに転送する際に、音源メモリの波形バッファのいずれかに当該波形データが既に存在する場合には、その波形データを音源メモリ内で流用して音源メモリから読み出し、存在しない場合には、音源メモリの各波形バッファの使用履歴や使用状態に基づいて、バッファのアサイナによって選択された任意の波形バッファに、当該波形データを大容量記憶デバイスから転送した後、読み出して発音する。
As described above, in the present embodiment, the large-capacity storage including the sound source memory including the
これにより、データサイズの大きい波形データを、アクセス速度が高速な音源メモリから直接読み出し、データサイズの小さい波形データを、音源メモリ内で流用して読み出し、又は、大容量記憶デバイスから読み出して、楽音の生成処理に使用することができる。また、複数の楽音を複数の発音ジェネレータを用いて同時に発音させる場合であっても、高速低容量の音源メモリに記憶する複数の波形データの管理や、各波形データを発音させる発音ジェネレータの管理を効率的に行うことができる。したがって、製品コストを抑制した構成で、複数の波形データを用いた楽音の生成処理に要する時間をより効果的に短縮して、楽音の発生に遅延や途切れのない良好な演奏を実現することができる。これは換言すると、楽音の生成処理に要する所定の時間内に、より多数の音色波形データを読み出して同時に発音させることができることを意味しており、これにより、管楽器や弦楽器等の原音の特徴により近い楽音を再現することができる電子楽器を実現することができる。 As a result, waveform data with a large data size can be read directly from a sound source memory with a high access speed, and waveform data with a small data size can be read within the sound source memory or read out from a mass storage device. Can be used for the generation process. Even when multiple musical sounds are simultaneously generated using multiple sound generators, it is possible to manage multiple waveform data stored in a high-speed, low-capacity sound source memory, and to manage the sound generator that generates each waveform data. Can be done efficiently. Therefore, it is possible to realize a good performance without delay or interruption in the generation of musical sounds by effectively reducing the time required for musical tone generation processing using a plurality of waveform data with a configuration with reduced product cost. it can. In other words, this means that a larger number of timbre waveform data can be read out and produced simultaneously within a predetermined time required for the musical tone generation process, which makes it possible to obtain the characteristics of the original sound such as wind instruments and stringed instruments. An electronic musical instrument that can reproduce a close musical sound can be realized.
以上、本発明のいくつかの実施形態について説明したが、本発明は、上述した実施形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等の範囲とを含むものである。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
As mentioned above, although several embodiment of this invention was described, this invention is not limited to embodiment mentioned above, It includes the invention described in the claim, and its equivalent range.
Hereinafter, the invention described in the scope of claims of the present application will be appended.
(付記)
[1]
波形データを読み込んで記憶する複数の記憶領域を有する第1の記憶手段と、
前記第1の記憶手段の選択された前記記憶領域から前記波形データを読み込むことにより発音させる発音制御手段と、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新する更新手段と、
前記発音が指示されたときに、前記履歴情報に基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する制御手段と、
を備えたことを特徴とする楽音生成装置。
(Appendix)
[1]
First storage means having a plurality of storage areas for reading and storing waveform data;
Sound generation control means for generating sound by reading the waveform data from the selected storage area of the first storage means;
For each of the plurality of storage areas, update means for updating history information indicating a use history read and used for sound generation by the sound generation control means in the past;
Control means for selecting the storage area for reading the waveform data used for the instructed sound generation based on the history information when the sound generation is instructed;
A musical sound generating device comprising:
[2]
前記制御手段は、
前記発音が指示されたときに、前記複数の記憶領域の中から、前記履歴情報が示す過去の使用履歴が他の記憶領域よりも古い記憶領域を、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域として選択する、
ことを特徴とする[1]に記載の楽音生成装置。
[2]
The control means includes
When the sound generation is instructed, the waveform data to be used for the instructed sound generation is selected from the storage areas in which the past use history indicated by the history information is older than the other storage areas. Select as the storage area to be read,
The musical sound generating device according to [1], wherein
[3]
前記発音制御手段は、前記第1の記憶手段の任意の記憶領域から波形データを読み込んで同時に発音させることが可能な複数の発音制御手段からなり、
前記更新手段は、前記複数の記憶領域のそれぞれについて、前記記憶領域の各々に記憶された波形データを読み込んでいる前記発音制御手段の数を示す読込数情報を更新しながら管理し、
前記制御手段は、
前記発音が指示されたときに、前記履歴情報と前記読込数情報とに基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する、
ことを特徴とする[1]又は[2]に記載の楽音生成装置。
[3]
The sound generation control means comprises a plurality of sound generation control means capable of reading waveform data from an arbitrary storage area of the first storage means and simultaneously generating sound,
The updating means manages each of the plurality of storage areas while updating the read number information indicating the number of the sound generation control means reading the waveform data stored in each of the storage areas,
The control means includes
When the pronunciation is instructed, based on the history information and the read number information, the storage area for reading the waveform data used for the instructed pronunciation is selected.
The musical sound generating device according to [1] or [2], wherein
[4]
前記第1の記憶手段に転送される複数の前記波形データを記憶している第2の記憶手段を更に備え、
前記制御手段は、
前記発音が指示されたときに、前記指示された発音に用いる前記波形データが前記第1の記憶手段に記憶されている場合は、前記第1の記憶手段に記憶されている前記波形データを前記選択された発音制御手段により読み込ませ、前記発音が指示された波形データが前記第1の記憶手段に記憶されていない場合は、前記指示された発音に用いる前記波形データを、前記第2の記憶手段から前記第1の記憶手段の前記選択した記憶領域に転送した後、前記転送して記憶された前記波形データを前記発音制御手段により読み込ませる、
ことを特徴とする[1]乃至[3]のいずれかに記載の楽音生成装置。
[4]
A second storage means for storing a plurality of the waveform data to be transferred to the first storage means;
The control means includes
If the waveform data used for the instructed pronunciation is stored in the first storage means when the pronunciation is instructed, the waveform data stored in the first storage means is If the waveform data instructed to be read by the selected sound generation control means and the sound generation is instructed is not stored in the first storage means, the waveform data used for the instructed sound generation is stored in the second storage. The waveform data stored in the transferred data is read by the sound generation control means after being transferred from the means to the selected storage area of the first storage means,
The musical sound generating device according to any one of [1] to [3], wherein:
[5]
前記制御手段は、
前記発音が指示された波形データが、前記第1の記憶手段のいずれかの前記記憶領域に記憶されていると判断した場合には、前記第1の記憶手段内の前記記憶領域間で前記波形データを流用して前記発音制御手段により発音させることを特徴とする[1]乃至[4]のいずれかに記載の楽音生成装置。
[5]
The control means includes
If it is determined that the waveform data instructed to be sounded is stored in any one of the storage areas of the first storage means, the waveform between the storage areas in the first storage means The musical sound generating device according to any one of [1] to [4], wherein the sound is generated by the sound generation control unit using the data.
[6]
前記第1の記憶手段は、前記発音制御手段の数よりも多い数の前記記憶領域を有していることを特徴とする[1]乃至[5]のいずれかに記載の楽音生成装置。
[6]
The musical tone generation apparatus according to any one of [1] to [5], wherein the first storage unit includes a larger number of the storage areas than the number of the sound generation control units.
[7]
前記第1の記憶手段の前記複数の記憶領域は、前記波形データを固定的に記憶する第1の記憶領域と、前記波形データを可変的に記憶する第2の記憶領域と、を有し、
前記制御手段は、前記発音を伴う演奏の開始に先立って、前記第2の記憶手段に記憶されている前記複数の波形データのうちの、所定のデータサイズを超える前記波形データを、前記第1の記憶手段の前記第1の記憶領域に転送して固定的に記憶し、前記所定のデータサイズ以下の前記波形データを、前記発音により指示されるたびに前記第1の記憶手段の前記第2の記憶領域に転送して可変的に記憶することを特徴とする[1]乃至[6]のいずれかに記載の楽音生成装置。
[7]
The plurality of storage areas of the first storage means include a first storage area for storing the waveform data fixedly, and a second storage area for variably storing the waveform data,
The control means, prior to the start of the performance accompanied by the pronunciation, the waveform data exceeding a predetermined data size among the plurality of waveform data stored in the second storage means. Is transferred to the first storage area of the storage means and fixedly stored, and the waveform data having the predetermined data size or less is stored in the second storage section of the first storage section each time it is instructed by the pronunciation. The musical sound generating device according to any one of [1] to [6], wherein the musical sound generating device is variably stored in the storage area.
[8]
前記第1の記憶手段は、第1の読み出し速度を有するとともに、第1の記憶容量を有する記憶装置であり、
前記第2の記憶手段は、前記第1の読み出し速度よりも遅い第2の読み出し速度を有するとともに、前記第1の記憶容量よりも大きい第2の記憶容量を有する記憶装置であることを特徴とする[1]乃至[7]のいずれかに記載の楽音生成装置。
[8]
The first storage means is a storage device having a first reading speed and a first storage capacity,
The second storage unit is a storage device having a second reading speed slower than the first reading speed and having a second storage capacity larger than the first storage capacity. The musical tone generation device according to any one of [1] to [7].
[9]
波形データを読み込んで記憶する複数の記憶領域を有する第1の記憶手段と、
前記第1の記憶手段の選択された前記記憶領域から前記波形データを読み込むことにより発音させる発音制御手段と、を備える楽音生成装置に適用される楽音生成方法であって、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新し、
前記発音が指示されたときに、前記履歴情報に基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する、
ことを特徴とする楽音生成方法。
[9]
First storage means having a plurality of storage areas for reading and storing waveform data;
A sound generation method applied to a sound generation device comprising: a sound generation control means for generating sound by reading the waveform data from the selected storage area of the first storage means,
For each of the plurality of storage areas, update history information indicating a usage history read and used for pronunciation in the past by the pronunciation control means,
When the pronunciation is instructed, the storage area for reading the waveform data used for the instructed pronunciation is selected based on the history information.
A musical sound generation method characterized by the above.
[10]
コンピュータを、[1]乃至[8]のいずれかに記載の楽音生成装置として機能させるための、あるいは、コンピュータに、[9]に記載の楽音生成方法を実行させるための楽音生成プログラム。
[10]
A musical sound generation program for causing a computer to function as the musical sound generation device according to any one of [1] to [8] or causing the computer to execute the musical sound generation method according to [9].
[11]
前記[1]乃至[8]のいずれかに記載の楽音生成装置と、
前記発音を伴う演奏により前記波形データを指定するための入力手段と、
前記発音された楽音を出力するための出力手段と、
を備えることを特徴とする電子楽器。
[11]
The musical sound generating device according to any one of [1] to [8];
Input means for designating the waveform data by performing with the pronunciation;
Output means for outputting the pronounced musical sound;
An electronic musical instrument characterized by comprising:
100 電子鍵盤楽器(電子楽器)
102 鍵盤(入力手段)
104 音色選択ボタン(入力手段)
202 CPU(制御手段、更新手段)
204 音源LSI(発音制御手段)
208 RAM(第1の記憶手段)
212 大容量フラッシュメモリ(第2の記憶手段)
304 波形読み出し装置(発音制御手段)
100 Electronic keyboard instrument (electronic musical instrument)
102 Keyboard (input means)
104 Tone selection buttons (input means)
202 CPU (control means, update means)
204 Sound source LSI (pronunciation control means)
208 RAM (first storage means)
212 Large-capacity flash memory (second storage means)
304 Waveform reading device (sound generation control means)
本発明に係る楽音生成装置は、
第1の読み出し速度を有するとともに第1の記憶容量を有し、複数の波形データを記憶している第1の記憶手段と、
前記第1の読み出し速度よりも速い第2の読み出し速度を有するとともに前記第1の記憶容量よりも小さい第2の記憶容量を有し、前記第1の記憶手段から読み込まれた波形データを記憶する複数の記憶領域を有する第2の記憶手段と、
前記第2の記憶手段の選択された前記記憶領域から波形データを読み込むことにより発音させることが可能な複数の発音制御手段と、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新する更新手段と、
発音が指示されたときに、前記指示された発音に用いる前記波形データが前記第2の記憶手段に記憶されている場合は、前記指示された発音に用いる前記波形データを、前記第1の記憶手段から前記第2の記憶手段の選択した前記記憶領域に転送することなく、前記第2の記憶手段に記憶されている前記波形データを選択した前記発音制御手段に読み込ませ、前記発音が指示された波形データが前記第2の記憶手段に記憶されていない場合は、前記指示された発音に用いる前記波形データを、前記第1の記憶手段から前記第2の記憶手段の選択した前記記憶領域に転送した後、前記転送して記憶された前記波形データを選択した前記発音制御手段に読み込ませる制御手段と、
を備え、
前記制御手段は、前記発音が指示されたときに、前記複数の記憶領域の中から、前記履歴情報が示す過去の使用履歴が他の記憶領域よりも古い記憶領域を、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域として選択するとともに、複数の前記記憶領域のそれぞれと複数の前記発音制御手段のそれぞれとを対応付けて管理し、第1の記憶領域に対応する第1の発音制御手段により第1の波形データを読み込んで発音することが指示されたときに、前記第1の波形データが前記第1の記憶領域には記憶されておらず、前記第1の発音制御手段とは別の第2の発音制御手段に対応する第2の記憶領域に前記第1の波形データが記憶されていると判断した場合に、前記第2の記憶領域に記憶されている波形データを前記第1の記憶領域に転送することなく、前記第1の発音制御手段により前記第2の記憶領域に記憶されている波形データを読み込ませて発音させる、
ことを特徴とする。
The musical sound generating apparatus according to the present invention is
A first storage means having a first reading speed and a first storage capacity, and storing a plurality of waveform data ;
It has a second reading speed faster than the first reading speed and a second storage capacity smaller than the first storage capacity, and stores the waveform data read from the first storage means A second storage means having a plurality of storage areas;
A plurality of sound generation control means capable of generating sound by reading waveform data from the selected storage area of the second storage means;
For each of the plurality of storage areas, update means for updating history information indicating a use history read and used for sound generation by the sound generation control means in the past;
When the waveform data used for the instructed pronunciation is stored in the second storage means when the pronunciation is instructed, the waveform data used for the instructed pronunciation is stored in the first storage. The waveform data stored in the second storage means is read by the selected sound generation control means without being transferred to the selected storage area of the second storage means, and the sound generation is instructed. If the waveform data is not stored in the second storage means, the waveform data used for the instructed pronunciation is transferred from the first storage means to the storage area selected by the second storage means. Control means for causing the selected sound generation control means to read the waveform data that has been transferred and stored after being transferred;
With
When the sound generation is instructed, the control means sets a storage area in which the past use history indicated by the history information is older than the other storage areas from the plurality of storage areas to the instructed sound generation. The waveform data to be used is selected as the storage area to be read, and each of the plurality of storage areas and each of the plurality of sound generation control units are managed in association with each other, and the first storage area corresponding to the first storage area When the sound generation control means instructs to read and generate the first waveform data, the first waveform data is not stored in the first storage area, and the first sound generation control means When it is determined that the first waveform data is stored in the second storage area corresponding to the second sound generation control means different from the above, the waveform data stored in the second storage area is The first Without transferring to the storage area, to sound by loading the waveform data stored in the second storage area by the first sound control unit,
It is characterized by that.
100 電子鍵盤楽器(電子楽器)
102 鍵盤(入力手段)
104 音色選択ボタン(入力手段)
202 CPU(制御手段、更新手段)
204 音源LSI(発音制御手段)
208 RAM(第2の記憶手段)
212 大容量フラッシュメモリ(第1の記憶手段)
304 波形読み出し装置(発音制御手段)
100 Electronic keyboard instrument (electronic musical instrument)
102 Keyboard (input means)
104 Tone selection buttons (input means)
202 CPU (control means, update means)
204 Sound source LSI (pronunciation control means)
208 RAM ( second storage means)
212 Large-capacity flash memory ( first storage means)
304 Waveform reading device (sound generation control means)
Claims (11)
前記第1の記憶手段の選択された前記記憶領域から前記波形データを読み込むことにより発音させる発音制御手段と、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新する更新手段と、
前記発音が指示されたときに、前記履歴情報に基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する制御手段と、
を備えたことを特徴とする楽音生成装置。 First storage means having a plurality of storage areas for reading and storing waveform data;
Sound generation control means for generating sound by reading the waveform data from the selected storage area of the first storage means;
For each of the plurality of storage areas, update means for updating history information indicating a use history read and used for sound generation by the sound generation control means in the past;
Control means for selecting the storage area for reading the waveform data used for the instructed sound generation based on the history information when the sound generation is instructed;
A musical sound generating device comprising:
前記発音が指示されたときに、前記複数の記憶領域の中から、前記履歴情報が示す過去の使用履歴が他の記憶領域よりも古い記憶領域を、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域として選択する、
ことを特徴とする請求項1に記載の楽音生成装置。 The control means includes
When the sound generation is instructed, the waveform data to be used for the instructed sound generation is selected from the storage areas in which the past use history indicated by the history information is older than the other storage areas. Select as the storage area to be read,
The musical tone generation apparatus according to claim 1, wherein:
前記更新手段は、前記複数の記憶領域のそれぞれについて、前記記憶領域の各々に記憶された波形データを読み込んでいる前記発音制御手段の数を示す読込数情報を更新しながら管理し、
前記制御手段は、
前記発音が指示されたときに、前記履歴情報と前記読込数情報とに基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する、
ことを特徴とする請求項1又は2に記載の楽音生成装置。 The sound generation control means comprises a plurality of sound generation control means capable of reading waveform data from an arbitrary storage area of the first storage means and simultaneously generating sound,
The updating means manages each of the plurality of storage areas while updating the read number information indicating the number of the sound generation control means reading the waveform data stored in each of the storage areas,
The control means includes
When the pronunciation is instructed, based on the history information and the read number information, the storage area for reading the waveform data used for the instructed pronunciation is selected.
The musical sound generating apparatus according to claim 1 or 2, characterized in that
前記制御手段は、
前記発音が指示されたときに、前記指示された発音に用いる前記波形データが前記第1の記憶手段に記憶されている場合は、前記第1の記憶手段に記憶されている前記波形データを前記選択された発音制御手段により読み込ませ、前記発音が指示された波形データが前記第1の記憶手段に記憶されていない場合は、前記指示された発音に用いる前記波形データを、前記第2の記憶手段から前記第1の記憶手段の前記選択した記憶領域に転送した後、前記転送して記憶された前記波形データを前記発音制御手段により読み込ませる、
ことを特徴とする請求項1乃至3のいずれかに記載の楽音生成装置。 A second storage means for storing a plurality of the waveform data to be transferred to the first storage means;
The control means includes
If the waveform data used for the instructed pronunciation is stored in the first storage means when the pronunciation is instructed, the waveform data stored in the first storage means is If the waveform data instructed to be read by the selected sound generation control means and the sound generation is instructed is not stored in the first storage means, the waveform data used for the instructed sound generation is stored in the second storage. The waveform data stored in the transferred data is read by the sound generation control means after being transferred from the means to the selected storage area of the first storage means,
The musical tone generation apparatus according to claim 1, wherein the musical tone generation apparatus is provided.
前記発音が指示された波形データが、前記第1の記憶手段のいずれかの前記記憶領域に記憶されていると判断した場合には、前記第1の記憶手段内の前記記憶領域間で前記波形データを流用して前記発音制御手段により発音させることを特徴とする請求項1乃至4のいずれかに記載の楽音生成装置。 The control means includes
If it is determined that the waveform data instructed to be sounded is stored in any one of the storage areas of the first storage means, the waveform between the storage areas in the first storage means 5. A musical sound generation apparatus according to claim 1, wherein the sound generation control means causes the sound to be generated using the data.
前記制御手段は、前記発音を伴う演奏の開始に先立って、前記第2の記憶手段に記憶されている前記複数の波形データのうちの、所定のデータサイズを超える前記波形データを、前記第1の記憶手段の前記第1の記憶領域に転送して固定的に記憶し、前記所定のデータサイズ以下の前記波形データを、前記発音により指示されるたびに前記第1の記憶手段の前記第2の記憶領域に転送して可変的に記憶することを特徴とする請求項1乃至6のいずれかに記載の楽音生成装置。 The plurality of storage areas of the first storage means include a first storage area for storing the waveform data fixedly, and a second storage area for variably storing the waveform data,
The control means, prior to the start of the performance accompanied by the pronunciation, the waveform data exceeding a predetermined data size among the plurality of waveform data stored in the second storage means. Is transferred to the first storage area of the storage means and fixedly stored, and the waveform data having the predetermined data size or less is stored in the second storage section of the first storage section each time it is instructed by the pronunciation. 7. A musical tone generating apparatus according to claim 1, wherein the musical tone generating apparatus is variably stored in the storage area.
前記第2の記憶手段は、前記第1の読み出し速度よりも遅い第2の読み出し速度を有するとともに、前記第1の記憶容量よりも大きい第2の記憶容量を有する記憶装置であることを特徴とする請求項1乃至7のいずれかに記載の楽音生成装置。 The first storage means is a storage device having a first reading speed and a first storage capacity,
The second storage unit is a storage device having a second reading speed slower than the first reading speed and having a second storage capacity larger than the first storage capacity. The musical tone generation apparatus according to any one of claims 1 to 7.
前記第1の記憶手段の選択された前記記憶領域から前記波形データを読み込むことにより発音させる発音制御手段と、を備える楽音生成装置に適用される楽音生成方法であって、
前記複数の記憶領域のそれぞれについて、前記発音制御手段により過去に読み込まれて発音のために使用された使用履歴を示す履歴情報を更新し、
前記発音が指示されたときに、前記履歴情報に基づいて、前記指示された発音に用いる前記波形データを読み込ませる前記記憶領域を選択する、
ことを特徴とする楽音生成方法。 First storage means having a plurality of storage areas for reading and storing waveform data;
A sound generation method applied to a sound generation device comprising: a sound generation control means for generating sound by reading the waveform data from the selected storage area of the first storage means,
For each of the plurality of storage areas, update history information indicating a usage history read and used for pronunciation in the past by the pronunciation control means,
When the pronunciation is instructed, the storage area for reading the waveform data used for the instructed pronunciation is selected based on the history information.
A musical sound generation method characterized by the above.
前記発音を伴う演奏により前記波形データを指定するための入力手段と、
前記発音された楽音を出力するための出力手段と、
を備えることを特徴とする電子楽器。 A musical sound generating device according to any one of claims 1 to 8,
Input means for designating the waveform data by performing with the pronunciation;
Output means for outputting the pronounced musical sound;
An electronic musical instrument characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058045A JP6443773B2 (en) | 2017-03-23 | 2017-03-23 | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058045A JP6443773B2 (en) | 2017-03-23 | 2017-03-23 | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018159871A true JP2018159871A (en) | 2018-10-11 |
JP6443773B2 JP6443773B2 (en) | 2018-12-26 |
Family
ID=63796643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017058045A Active JP6443773B2 (en) | 2017-03-23 | 2017-03-23 | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6443773B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6029794A (en) * | 1983-07-29 | 1985-02-15 | ヤマハ株式会社 | Electronic musical instrument |
JPH0926791A (en) * | 1995-07-12 | 1997-01-28 | Yamaha Corp | Musical sound generating method and waveform storing method |
JP2004177981A (en) * | 2004-02-02 | 2004-06-24 | Yamaha Corp | Musical sound generating device |
JP2006184629A (en) * | 2004-12-28 | 2006-07-13 | Yamaha Corp | Access controller |
JP2006337438A (en) * | 2005-05-31 | 2006-12-14 | Casio Comput Co Ltd | Musical sound generating apparatus and program for generating and processing musical sound |
JP2007047293A (en) * | 2005-08-08 | 2007-02-22 | Casio Comput Co Ltd | Musical sound generating device and program |
JP2017054076A (en) * | 2015-09-11 | 2017-03-16 | カシオ計算機株式会社 | Waveform writing device, method, program, and electronic musical instrument |
-
2017
- 2017-03-23 JP JP2017058045A patent/JP6443773B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6029794A (en) * | 1983-07-29 | 1985-02-15 | ヤマハ株式会社 | Electronic musical instrument |
JPH0926791A (en) * | 1995-07-12 | 1997-01-28 | Yamaha Corp | Musical sound generating method and waveform storing method |
JP2004177981A (en) * | 2004-02-02 | 2004-06-24 | Yamaha Corp | Musical sound generating device |
JP2006184629A (en) * | 2004-12-28 | 2006-07-13 | Yamaha Corp | Access controller |
JP2006337438A (en) * | 2005-05-31 | 2006-12-14 | Casio Comput Co Ltd | Musical sound generating apparatus and program for generating and processing musical sound |
JP2007047293A (en) * | 2005-08-08 | 2007-02-22 | Casio Comput Co Ltd | Musical sound generating device and program |
JP2017054076A (en) * | 2015-09-11 | 2017-03-16 | カシオ計算機株式会社 | Waveform writing device, method, program, and electronic musical instrument |
Also Published As
Publication number | Publication date |
---|---|
JP6443773B2 (en) | 2018-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6388048B1 (en) | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument | |
CN108630178B (en) | Musical tone generating apparatus, musical tone generating method, recording medium, and electronic musical instrument | |
US10474387B2 (en) | Musical sound generation device, musical sound generation method, storage medium, and electronic musical instrument | |
JP7124371B2 (en) | Electronic musical instrument, method and program | |
JP6443773B2 (en) | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument | |
US6754351B1 (en) | Music apparatus with dynamic change of effects | |
JP2016142911A (en) | Waveform loading device, method, program, and electric musical instrument | |
JP6851578B2 (en) | Musical tone generator, musical tone generator, musical tone generator and electronic musical instrument | |
JP4096952B2 (en) | Music generator | |
JP7332002B2 (en) | Electronic musical instrument, method and program | |
JP7130185B2 (en) | Electronic musical instrument, electronic musical instrument control method and control program | |
JP7124370B2 (en) | Electronic musical instrument, method and program | |
JP7159583B2 (en) | Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument | |
JPH1049159A (en) | Musical tone generator of electronic musical instrument | |
JP6606839B2 (en) | Waveform writing apparatus, method, program, and electronic musical instrument | |
JP6464824B2 (en) | Music performance device and music performance program | |
JP3705203B2 (en) | Music generation method | |
JP2016099408A (en) | Musical sound generator and program | |
JP2023092596A (en) | Information processor, electronic musical instrument, pitch picking-out system, method, and program | |
JP2002518693A (en) | Synthesizer system using mass storage device for real-time, low-latency access of musical instrument digital samples | |
JPS63118792A (en) | Electronic musical instrument | |
JPH07295571A (en) | Musical sound signal generation device | |
JP2005346110A (en) | Device for generating musical sound | |
JPH07295570A (en) | Musical signal generation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181102 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181115 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6443773 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |