JP4170438B2 - 波形データ再生装置 - Google Patents
波形データ再生装置 Download PDFInfo
- Publication number
- JP4170438B2 JP4170438B2 JP12825798A JP12825798A JP4170438B2 JP 4170438 B2 JP4170438 B2 JP 4170438B2 JP 12825798 A JP12825798 A JP 12825798A JP 12825798 A JP12825798 A JP 12825798A JP 4170438 B2 JP4170438 B2 JP 4170438B2
- Authority
- JP
- Japan
- Prior art keywords
- waveform data
- storage area
- cluster
- pad
- reproduction
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、波形データ再生装置に関し、さらに詳細には、複数の波形データを記憶しておき、再生開始指示操作子の操作に応じて、記憶しておいた波形データの再生を行う波形データ再生装置に関する。
【0002】
【従来の技術】
従来より、予め複数の波形データを記憶しておき、再生開始指示操作子の操作に応じて、予め記憶しておいた複数の波形データの中から所望の波形データの再生を行うことのできる波形データ再生装置が知られている。
【0003】
ここで、波形データを記憶するためには大量の記憶容量を必要とするため、上記したような波形データ再生装置においては、磁気あるいは光などを利用したディスク媒体などの大容量の記憶媒体に波形データを記憶することが行われている。
【0004】
ところで、上記した磁気あるいは光などを利用したディスク媒体などの記憶媒体においては、記憶媒体に記憶された波形データの読み出しを行おうとしてから実際に当該波形データが取得されるまでに、ある程度の時間がかかっていた。
【0005】
このため、上記した波形データ再生装置では、一般にディスク媒体の他に半導体メモリを備えるようにして、予めディスク媒体から再生対象となる波形データを半導体メモリに転送して記憶させておき、再生開始指示操作子の操作による再生開始指示に応じて、半導体メモリから当該波形データを読み出すようにしている。
【0006】
この場合に、全ての波形データをディスク媒体から読み出して半導体メモリに転送して記憶させることが考えられるが、このためには大記憶容量の半導体メモリを波形データ再生装置に設ける必要がある。
【0007】
一方、ディスク媒体はその内部の記憶領域が、「クラスタ」と称される単位で管理されており、1回のアクセスで1クラスタ分のデータが読み出されるようになされていることに鑑み、半導体メモリに1クラスタ分の記憶領域(以下、「第1の記憶領域」と称する。)と2クラスタ分の記憶領域(以下、「第2の記憶領域」と称する。)とを設け、ディスク媒体から波形データの先頭部分の1クラスタ分を第1の記憶領域に予め転送して記憶しておき、再生開始指示操作子の操作による再生開始指示に応じて第1の記憶領域から波形データの読み出しを開始するとともに、第1の記憶領域に記憶した波形データ以降の波形データの2クラスタ分をディスク媒体から第2の記憶領域に転送して記憶させ、第1の記憶領域からの波形データの読み出しを終えたら第2の記憶領域の1つめのクラスタからの波形データの読み出しに移行し、第2の記憶領域の1つめのクラスタの波形データの読み出しを終了したら、第2の記憶領域の2つめの1クラスタからの波形データの読み出しに移行するとともに、読み出しを終了した第2の記憶領域の1つめのクラスタに次の1クラスタ分の波形データをディスク媒体から転送して記憶させ、さらに、第2の記憶領域の2つめのクラスタからの波形データの読み出しを終了したら、第2の記憶領域の1つめのクラスタからの波形データの読み出しに移行するとともに、読み出しを終了した第2の記憶領域の2つめのクラスタに次の1クラスタ分の波形データをディスク媒体から記憶する、という動作を繰り返すような処理を行うことが考えられる。
【0008】
上記した処理によれば、全ての波形データをディスク媒体から読み出して半導体メモリに転送して記憶させる必要がないため、波形データ再生装置には小容量の半導体メモリを設けるだけで済むという利点がある。
【0009】
しかしながら、上記した処理においては、波形データを途中から読み出し始めることや、波形データの一部分を繰り返しループ状に読み出すことは考慮されていない。
【0010】
このため、例えば、16小節からなる波形データに関して、再生開始指示操作子の操作による再生開始指示に応じて、第5小節から波形データを読み出し始めるということができない。
【0011】
また、仮に、波形データの途中から読み出し始めることを許容したとしても、例えば、第1の記憶領域には先頭から4小節分の波形データが記憶され、第2の記憶領域には先頭から第5小節目以降の波形データが記憶されるような場合には、再生開始指示操作子の操作による再生開始指示に応じて、最初に第5小節の波形データの読み出そうとしても、その時点ではまだ第2の記憶領域には波形データが記憶されていないため、第5小節から波形データを読み出し始めるということができない。
【0012】
さらに、第1の記憶領域には波形データの先頭部分を予め1クラスタ分しか記憶していないため、例えば、1クラスタ分の最後の部分に第5小節の頭の部分が記憶されているような場合には、仮に、再生開始指示操作子の操作による再生開始時に応じて、最初に第5小節の波形データから読み出しを開始することができたとしても、予め記憶している1クラスタ分の波形データの読み出しはすぐに終了してしまうため、その時点では次の波形データの第2の記憶領域への記憶はまだ済んでいないので、再生が途中から行えなくなってしまう。
【0013】
また、例えば、第2の記憶領域の2つめのクラスタの最初の部分に繰り返し点が指定されている場合には、当該2つめのクラスタの繰り返し点まで再生したらすぐに第2の記憶領域の1つめのクラスタの再生に移行することになるが、この時点ではまだ当該1つめのクラスタには波形データは記憶されていないため、ループ状の読み出しができない。
【0014】
【発明が解決しようとする課題】
本発明は、上記したような従来の技術の有する種々の問題点に鑑みてなされたものであり、その目的とするところは、小記憶容量の半導体メモリなどのような記憶手段を設けるだけで、大容量の波形データの再生を可能とするとともに、波形データの途中からの読み出しや波形データのループ状の読み出しを行うことができるようにした波形データ再生装置を提供しようとするものである。
【0015】
【課題を解決するための手段】
上記目的を達成するために、本発明のうち請求項1に記載の発明は、複数の波形データを記憶し、該波形データを所定の単位記憶領域毎に読み出し可能な第1の記憶手段と、上記第1の記憶手段に記憶されている複数の波形データがそれぞれ予め割り当てられるとともに、操作によって予め割り当てられている波形データの再生開始指示を行う複数の操作子と、上記第1の記憶手段に記憶されている波形データに対して、読み出し開始位置を指定する第1の指定手段と、上記第1の記憶手段における単位記憶領域について、上記複数の操作子のそれぞれに対応して波形データを記憶するための少なくとも2個分の単位記憶領域に対応する記憶容量を有する第1の記憶領域と、上記第1の記憶領域とは異なる第2の記憶領域とを有し、上記第1の記憶手段よりも波形データを高速に読み出し可能な第2の記憶手段と、上記第1の記憶手段に記憶されている波形データについて、少なくとも上記第1の指定手段により指定された読み出し開始位置を含む1つの単位記憶領域に記憶されている波形データおよび上記読み出し開始位置を含む1つの単位記憶領域の次の1つの単位記憶領域に記憶されている波形データを、上記操作子による再生開始指示に先立ち、上記操作子への前記波形データの割り当てに伴って、上記第1の記憶手段から読み出して上記第2の記憶手段の上記第1の記憶領域に記憶させる第1の書き込み手段と、上記第1の指定手段により指定された読み出し開始位置に基づいて、上記第2の記憶手段の上記第2の記憶領域に対して読み出し開始位置を指定する第2の指定手段と、上記操作子による再生開始指示に応じて、上記第2の記憶手段において上記第1の記憶領域の波形データを上記第2の記憶領域へ転送するとともに、上記第2の指定手段により指定された読み出し開始位置から、上記第2の記憶手段の上記第2の記憶領域の読み出しを開始する再生手段と、上記再生手段による再生の進行に伴って、上記第1の記憶手段に記憶されている波形データについて、上記第2の記憶手段の上記第2の記憶領域に既に記憶されている波形データ以降の波形データを、上記第1の記憶手段から読み出して上記第2の記憶手段の上記第2の記憶領域の既読み出し領域に記憶させる第2の書き込み手段とを有するようにしたものである。
【0016】
従って、本発明のうち請求項1に記載の発明によれば、再生手段による再生の進行に伴って、第1の記憶手段に記憶されている波形データについて、第2の記憶手段に既に記憶されている波形データ以降の波形データを、第1の記憶手段から読み出して第2の記憶手段の既読み出し領域に記憶させるようにしたので、第2の記憶手段として小記憶容量の半導体メモリなどのような記憶手段を設けるだけで、大容量の波形データの再生が可能になる。
【0017】
また、本発明のうち請求項1に記載の発明によれば、第1の指定手段により指定された読み出し開始位置を含む一部分の波形データが再生開始指示に先立って第2の記憶手段に記憶されるとともに、再生開始指示に応じて、第2の指定手段により指定された読み出し開始位置から、第2の記憶手段の読み出しが開始されるので、波形データの途中からの読み出しを行うことができる。
【0019】
さらに、本発明のうち請求項1に記載の発明によれば、例えば、単位記憶領域として「クラスタ」を採用することができ、第1の記憶手段からのデータの読み出しを、クラスタ単位で行うことができるとともに、第2の記憶手段に読み出し開始位置を含む少なくとも2つの単位記憶領域分の波形データを再生開始指示に先立って記憶するようにしたので、波形データの読み出し開始位置が第1の記憶手段においてある単位記憶領域の末尾の方に指定されている場合であっても、再生開始指示に応じて第2の記憶手段に再生開始指示に先立って記憶されている波形データを読み出し始めて読み出し終えるまでの間に、以降の波形データを第1の記憶手段から第2の記憶手段に転送しておくことが可能となり、再生が途中から行えなくなるという事態の発生を防ぐことができるようになる。
【0020】
また、本発明のうち請求項2に記載の発明は、本発明のうち請求項1に記載の発明において、上記第1の記憶手段に記憶されている波形データに対して、ループ・スタート位置ならびにエンド位置を指定する第3の指定手段を有し、上記第2の記憶手段の上記第2の記憶領域は、前記第2の書き込み手段により波形データが記憶される少なくとも3個分の単位記憶領域に対応する記憶容量を有し、上記第2の書き込み手段は、上記第1の記憶手段の上記第3の指定手段により指定されたエンド位置を含む単位記憶領域の波形データを上記第2の記憶手段の上記第2の記憶領域における所定の単位記憶領域に記憶させた後に、上記第1の記憶手段の上記第3の指定手段により指定されたループ・スタート位置を含む単位記憶領域の波形データを上記第2の記憶手段の上記第2の記憶領域における上記所定の単位記憶領域の次の単位記憶領域に記憶させるとともに、上記再生手段による上記第2の記憶手段の上記第2の記憶領域における上記所定の単位記憶領域から読み出した上記エンド位置に対応する波形データの再生に応じて、上記第2の記憶手段の上記第2の記憶領域における前記所定の単位記憶領域の次の単位記憶領域において、上記ループ・スタート位置に基づき次の読み出し位置を指定する。
【0021】
従って、本発明のうち請求項2に記載の発明によれば、エンド位置の再生に応じて、第2の記憶手段の現読み出し単位記憶領域の次の単位記憶領域におけるループ・スタート位置を次の読み出し開始位置とするようにしたので、波形データのループ状の読み出しを行うことができるようになる。
【0022】
また、本発明のうち請求項2に記載の発明によれば、第2の記憶手段に少なくとも3つの単位記憶領域に対応する記憶容量を有する第2の記憶領域を設けたので、波形データのエンド位置(繰り返し点)が第1の記憶手段においてある単位記憶領域の先頭の方に指定されている場合であっても、第2の記憶領域においてエンド位置に対応する波形データを読み出し終えた時点で既に第2の記憶領域にはループ・スタート位置に対応する波形データが記憶されているため、ループ状の読み出しを問題なく行うことができる。
【0023】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明による波形データ再生装置の実施の形態の一例を詳細に説明する。
【0024】
図1には、本発明による波形データ再生装置の全体構成を表すブロック構成図が示されている。
【0025】
この波形データ再生装置は、その全体の動作の制御を中央処理装置(CPU)10を用いて制御するように構成されており、このCPU10と、アナログ/デジタル変換器(A/D)12と、磁気あるいは光などを利用したディスク14と、半導体メモリ16と、再生器18と、操作パネル20と、ホールド・ペダル22と、デジタル/アナログ変換器(D/A)24とを有して構成されている。
【0026】
即ち、図1に示す波形データ再生装置においては、CPU10によって全体の動作の制御が行われるものであり、外部から入力されたオーディオ信号(楽音信号)は、アナログ/デジタル変換器12によりA/D変換され波形データとして、CPU10にはDMA(ダイレクト・メモリ・アクセス)コントローラが入っており、ディスク14から半導体メモリ16(後述する)へのデータの転送はCPU内部のDMAコントローラが制御する。
【0027】
ここで、DMAコントローラとは、ディスク14のデータをCPU10の内部レジスタに取り込むことなく、直接的に半導体メモリ16へ転送を行うことによりデータの高速運転を行うものであり、このDMAコントローラを使用したデータ転送をDMA転送と称することとする。
【0028】
なお、この実施の形態においては、波形データを記憶するものとして磁気あるいは光などを利用したディスク14を用いたが、大容量の記憶ができるものであれば、ディスク以外の記憶装置を用いてもよいことは勿論である。
【0029】
半導体メモリ16は、ディスク14に比較して小容量の記憶容量のみを有するものであるが、高速なアクセスが可能なものである。この半導体メモリ16は、波形データを記憶する領域やワーキング用の領域などが設けられているランダム・アクセス・メモリ(RAM)とCPU10のプログラムを記憶しているリード・オンリ・メモリ(ROM)とから構成されている。
【0030】
再生器18は、CPU10の制御の下に半導体メモリ16に記憶された波形データを再生するものであり、再生された波形データはデジタル/アナログ変換器24によりオーディオ信号(楽音信号)にD/A変換されて出力される。
【0031】
また、操作パネル20には、スタート位置指定操作子20a、ループ・スタート位置指定操作子20b、エンド位置指定操作子20c、ループ/ワン・ショット指定操作子20d、図1上において数字1〜16により示す16個のパッド20e(なお、パッド20eは、図1上における数字1〜16に対応してパッド番号1〜16がふられて管理されている。)、バンク切り換え操作子20f、ホールド操作子20gおよびその他の操作子20hが設けられている。
【0032】
ここで、パッド20eは、押しボタン・スイッチであり、その操作に応じてその、操作されたパッド20eに予め割り当てられている波形データの再生開始を指示するものである。
【0033】
なお、16個のパッド20eへの波形データ割り当てパターンは、この実施の形態においては3種類設定されている。各割り当てパターンはバンクと称され、バンク切り換え操作子20fの操作に応じて、任意のバンクを選択することができる。
【0034】
また、スタート位置指定操作子20aは、波形データの読み出しを行うスタート位置を指定するものであり、ループ・スタート位置指定操作子20bは、波形データの読み出しを行うループ・スタート位置を指定するものであり、エンド位置指定操作子20cは、波形データの読み出しの終了の位置を指定するものであり、ループ/ワン・ショット指定操作子20dは、ループ読み出しを行うか、ワン・ショット読み出しを行うかを指定するものである。
【0035】
そして、波形データは、対応するパッド20eの操作(押下開始)に応じて、スタート位置指定操作子20aにより指定されたスタート位置から読み出しが開始されることになる。即ち、パッド20eの押下開始操作が、波形データの再生開始の指示となる。
【0036】
なお、ループ/ワン・ショット指定操作子20dによりループ読み出しが指定されている場合には、対応するパッド20eが操作されている間(押下中)においては、エンド位置指定操作子20cにより指定されたエンド位置まで読み出しが行われたときに、読み出し位置がループ・スタート位置指定操作子20bにより指定されたループ・スタート位置まで戻され、読み出しが続行されるという動作が繰り返されるものであり、対応するパッド20eの操作が止められた(押下解除)時点で読み出しが停止されることになる。
【0037】
また、ループ/ワン・ショット指定操作子20dによりワン・ショット読み出しが指定されている場合には、エンド位置指定操作子20cにより指定されたエンド位置まで読み出しが行われたときに読み出しを終了する。
【0038】
なお、ループ・スタート位置は、スタート位置よりも前に置くことも、また、スタート位置よりも後ろに置くことも、また、スタート位置と一致させることも許容されている。
【0039】
また、ホールド操作子20gならびにホールド・ペダル22は、ループ読み出しが指定されている波形データに関してパッド20eの操作が止められたときにも、当該パッド20eを操作し続けているのと同様な状態を実現するための操作子である。
【0040】
なお、外部から入力されたオーディオ信号(楽音信号)をアナログ/デジタル変換器12によりA/D変換した波形データを、いずれのパッド20eに割り当てるか、また、いずれの波形データに対してスタート位置、ループ・スタート位置、エンド位置ならびにループ読み出しあるいはワン・ショット読み出しを指定するかは、符号20hにより示すその他の操作子によって設定されることになる。
【0041】
図2には、ディスク14の記憶領域のフォーマットが概念的に示されている。ディスク14の記憶領域は、物理的に所定の記憶容量を有するセクタ毎に分割されており、ディスク14のデータはCPU10内部のDMAコントローラの制御によりセクタ単位で半導体メモリ16へDMA転送される。所定数の物理的に連続したセクタはクラスタという単位で管理されており、各波形データは1つあるいは複数のクラスタに跨って記憶されている。
【0042】
本実施の形態においては、1セクタは512バイトであり、1クラスタは64セクタをひとまとめとした32Kバイトである。
【0043】
なお、図2においては、クラスタ同士が物理的に連続しているように描かれているが、物理的に連続している必要はない。このため、各波形データに関して、波形データの先頭部分を記憶しているクラスタ、次の部分を記憶しているクラスタ、さらに次の部分を記憶しているクラスタ、・・・、という形で、各波形データ毎にその波形データの各部分がディスク14上のいずれのクラスタに記憶されているかが管理されている。
【0044】
また、波形データは、必ずクラスタの先頭部分から記憶されるようになっており、1つのクラスタには1つの波形データのみが記憶されている。そして、波形データの大きさはクラスタの大きさとは無関係であるので、波形データの末尾は一般にはクラスタの末尾とはならない。
【0045】
さらに、波形データを記憶したクラスタは、各波形データ毎にスタート位置(スタート位置がループ・スタート位置よりも前にある場合)あるいはループ・スタート位置(ループス・タート位置がスタート位置よりも前にある場合)を含むクラスタから順に、1,2,3,・・・というクラスタ番号がふられて管理されている。
【0046】
そして、各波形データには、スタート位置、ループ・スタート位置、エンド位置ならびにループ読み出しあるいはワン・ショット読み出しが指定されている。なお、波形データの1サンプルあたりのデータ量、1クラスタあたりのデータ量および1セクタのデータ量から、波形データの任意の位置のサンプルに関して、当該サンプルが記憶されているクラスタ、当該クラスタの先頭からの相対位置、当該サンプルが記憶されているセクタおよび当該セクタの先頭からの相対位置が一意的に決定されることになる。
【0047】
次ぎに、半導体メモリ16について説明すると、半導体メモリ16には、上記した各波形データの管理用の領域、バンク管理用の領域、ワーキング用の領域などの他に、16個のパッド20eにそれぞれ対応して、これらのパッド20eにそれぞれ割り当てられた波形データのスタート位置部分を記憶するスタート・バッファSTARTと、波形データの再生時にディスク14から波形データを順次読み出すための4音の同時再生を可能とする4チャンネル分の再生バッファPLAYとが設けられている。
【0048】
図3には、上記したスタート・バッファSTARTのフォーマットが概念的に示されている。スタート・バッファSTARTには、パッド番号1〜16の16個のパッド20eにそれぞれ対応して2クラスタ分の領域が設けられており、各領域にはそれぞれクラスタ番号1、クラスタ番号2がふられている。
【0049】
また、図4には、上記した再生バッファPLAYのフォーマットが概念的に示されている。再生バッファPLAYには、4音同時発音が可能なように4チャンネル分の領域(再生チャンネル)が設けられていて、各再生チャンネルにはチャンネル番号1〜4がふられている。さらに、これら4チャンネル分の再生チャンネルには、各チャンネルに対応して4クラスタ分の領域が設けられていて、各領域にはクラスタ番号1〜4がふられている。
【0050】
なお、本明細書においては、本発明の理解を容易にするために、スタート・バッファSTARTならびに再生バッファPLAYの1クラスタ分の領域も「クラスタ」と称することとする。
【0051】
そして、パッド20eの操作(押下開始)により再生開始が指示された場合には、いずれの再生チャンネルを選択するかの順番を示すアサイン順位(後述する)に基づいて、いずれかの再生チャンネルが選択され、操作されたパッド20eに対応するスタート・バッファSTARTの記憶内容がその再生チャンネルの再生バッファPLAYに転送される。
【0052】
また、再生器18には、再生用の4つのチャンネル(再生チャンネル)が設けられており、各再生チャンネルは再生バッファPLAYの対応する再生チャンネルの記憶内容を読み出し、音声信号(楽音信号)として再生する。再生器18により再生バッファPLAYの記憶内容を再生する際には、再生バッファPLAYの各クラスタがクラスタ番号1〜4の順に読み出されることになり、クラスタ番号4のクラスタのを読み終わると、次ぎにはクラスタ番号1のクラスタが読み出される。
【0053】
なお、再生バッファPLAYの各再生チャンネルには、図4においてチャンネル番号1の再生チャンネルに例示してあるように、その再生チャンネルで再生される波形データに応じてスタート・アドレスSTおよびデータ量QTが設定される。
【0054】
ここで、スタート・アドレスSTは、再生対象のクラスタにおけるクラスタの先頭からの相対位置を示すものであり、波形データのスタート位置あるいはループ・スタート位置に基づいて設定される。また、データ量QTは、波形データのスタート位置あるいはループ・スタート位置からエンド位置までのデータ量を示すものである。
【0055】
従って、再生器18においては、パッド20eの操作(押下開始)による波形データの再生開始指示に応じて、各再生チャンネルは再生バッファPLAYの第1クラスタに記憶された波形データを、そのクラスタの先頭からスタート・アドレスSTで示されるだけ離れた位置から読み出し開始し、以降、サンプリング周期毎に1サンプルのデータを読み出すとともに、設定されたデータ量QTの値をデクリメントする。
【0056】
そして、各再生チャンネルは、再生バッファPLAYの各クラスタの読み出しを終了したときおよびデータ量QTの値が0になったときに、その旨をCPU10に通知する。
【0057】
そして、CPU10は、クラスタの読み出しが終了した旨の通知を受けたときには、そのクラスタに次に記憶すべき波形データの1クラスタ分をDMAコントローラを使用してディスク14から読み出して半導体メモリ16に記憶し、一方、データ量QTの値が0となった旨の通知を受けたときには、その波形データがループ読み出しを行うものであれば次のスタート・アドレスSTおよびデータ量QTをその再生チャンネルに設定した後にクラスタ読み出しが終了した旨の通知を発行し、その波形データがワン・ショット読み出しを行うものであればその再生チャンネルに再生停止を指示する。再生チャンネルは新たなスタート・アドレスSTおよびデータ量QTの設定に応じて、今まで読み出しを行っていたクラスタの次のクラスタを再生対象のクラスタとし、スタート・アドレスSTで示される位置から読み出しを行う。
【0058】
また、各再生チャンネルは、CPU10から再生停止指示を受けると、波形データの読み出し(再生)を停止する。
【0059】
次に、図5に示すバンク切り換え処理のフローチャートを参照しながら、バンク切り換え操作子20fが操作されてバンク切り換えが指示されたときの処理を説明する。
【0060】
即ち、バンク切り換え操作子20fが操作されてバンク切り換えが指示されたときには、図5のバンク切り換え処理のフローチャートに示される処理が実行されるものである。
【0061】
このバンク切り換え処理のフローチャートにおいては、まず、ステップS502において、新たに指定されたバンクに対応して各パッド20eに波形データを割り当てる。
【0062】
ステップS502の処理を終了すると、ステップS504へ進み、各パッド20eに対応する波形データに関して、ディスク14からスタート位置を含むクラスタおよびその次のクラスタの波形データを読み出し、対応するスタート・バッファSTARTの第1クラスタおよび第2クラスタに記憶する。ただし、1クラスタのみから構成されている波形データに関しては、その波形データがワン・ショット読み出しである場合には第1クラスタにのみ波形データを記憶し、ループ読み出しである場合には第1クラスタおよび第2クラスタに同じ波形データを記憶するものである。
【0063】
ステップS504の処理を終了すると、ステップS506へ進み、再生器18のホールド・フラグhold(後述する)が「0」である再生チャンネルに対して波形データの再生停止を指示し、その再生チャンネルが不使用状態となったことに伴いアサイン順位を更新する。
【0064】
ステップS506の処理を終了すると、このバンク切り換え処理のフローチャートの処理を終了する。
【0065】
ここで、ホールド・フラグholdとは、各再生チャンネル毎に設けられたホールド操作子20gならびにホールド・ペダル22によりホールド状態(後述する)とされているか否かを示すものである。ホールド・フラグholdが「0」である再生チャンネルはホールド状態でないことを示しており、ホールド・フラグholdが「1」である再生チャンネルはホールド状態であることを示している。この処理によりホールド状態でない再生チャンネルは波形データの読み出しを停止する。
【0066】
なお、ホールド・フラグholdは電源投入後の初期状態においては「0」とされており、またワン・ショット読み出しが指定されている波形データが割り当てられている再生チャンネルに関しては常に「0」とされている。
【0067】
従って、バンク切り換えが行われたときには、再生中の波形データのうちワン・ショット読み出しが指定されているものは無条件に再生が停止されることになる。
【0068】
次に、図6に示すパッド・オン処理のフローチャートを参照しながら、いずれかのパッド20eが操作(押下開始)されて再生開始指示がなされたときの処理を説明する。
【0069】
即ち、いずれかのパッド20eが操作(押下開始)されて再生開始指示がなされたときには、図6のパッド・オン処理のフローチャートに示される処理が実行されるものである。
【0070】
このパッド・オン処理のフローチャートにおいては、まず、ステップS602において、操作されたパッド20eのパッド番号(1〜16)をパッド番号padに設定する。
【0071】
ステップS602の処理を終了すると、ステップS604へ進み、新たに操作されたパッド20eの波形データを割り当てる再生チャンネルを所定のアサイン順位に基づいて選択し、選択した再生チャンネルのチャンネル番号をチャンネル番号chに設定する。アサイン順位の決定は、周知のアサイン技術を使用すればよく、例えば、波形データの読み出しが行われていない再生チャンネルがあればその再生チャンネルを選択し、波形データの読み出しが行われていない再生チャンネルがなければ最も以前に再生を開始した再生チャンネルを選択すればよい
なお、全ての再生チャンネルで波形データの再生が行われているときには、後述するホールド状態とされている再生チャンネルに関しては選択の対象から外すようにしてもよい。
【0072】
また、全ての再生チャンネルで波形データの再生が行われているときには、ワン・ショット読み出しが指定されている波形データを再生中の再生チャンネルがあればその中から再生チャンネルを選択し、ループ読み出しが指定されている波形データを再生中の再生チャンネルしかない場合にはその中から再生チャンネルを選択するようにしてもよい。
【0073】
なお、再生中の再生チャンネルを選択した場合には、その再生チャンネルに対して再生停止を指示する。
【0074】
ステップS604の処理を終了すると、ステップS606へ進み、パッド番号padのパッド20eに対応する波形データのスタート位置を含むディスク14上のクラスタ番号を求め、当該クラスタ番号を読み出しクラスタ番号rd_cl(ch)に設定し、パッド番号padのパッド20eに対応する波形データのループ・スタート位置を含むディスク14上のクラスタ番号を求め、当該クラスタ番号をループ・スタート・クラスタ番号lst_cl(ch)に設定し、パッド番号padのパッド20eに対応する波形データのエンド位置を含むディスク14上のクラスタ番号を求め、当該クラスタ番号をエンド・クラスタ番号ed_cl(ch)に設定する。
【0075】
ステップS606の処理を終了すると、ステップS608へ進み、パッド番号padのスタート・バッファSTARTの第1クラスタSTART[pad,1]から、波形データをチャンネル番号chの再生バッファPLAYの第1クラスタPLAY[ch,1]に転送する。即ち、操作されたパッド20eのスタート・バッファSTARTの第1クラスタの波形データを、選択された再生チャンネルの再生バッファPLAYの第1クラスタに記憶するものである。
【0076】
ステップS608の処理を終了すると、ステップS610へ進み、パッド番号padに対応する波形データのスタート位置に基づいて、当該スタート位置の当該スタート位置を含むクラスタ内における相対位置を求め、当該相対位置をスタート・アドレスSTとするとともに、パッド番号padに対応する波形データのスタート位置およびエンド位置に基づいてその波形データのデータ量を求め、当該データ量をデータ量QTとし、これらスタート・アドレスSTおよびデータ量QTを再生チャンネルchに設定し、この再生チャンネルchに第1クラスタのスタート・アドレスSTから再生を開始するように指示し、当該再生チャンネルchが使用状態となったことに伴い、いずれの再生チャンネルでいずれのパッド20eの波形データを再生しているかを示す管理情報およびアサイン順位を更新する。
【0077】
これにより、再生チャンネルchにおいて、操作されたパッド20eに割り当てられている波形データの再生が開始される。
【0078】
ステップS610の処理を終了すると、ステップS612へ進み、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しであり、かつ、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」であるか否かを判断する。
【0079】
ステップS612において、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しであり、かつ、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」であると判断された場合には、このパッド・オン処理を終了する。
【0080】
これは、その波形データの読み出し開始時の読み出し位置のクラスタとエンド位置のクラスタとが一致している場合、即ち、その波形データが1つのクラスタのみに記憶されている場合には、再生すべき波形データを全て既に再生バッファに記憶したことになるので、ワン・ショット読み出しを行う場合には、追加の波形データを再生バッファに記憶する必要がないためである。
【0081】
一方、ステップS612において、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しであり、かつ、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」ではないと判断された場合には、ステップS614へ進み、パッド番号padのスタート・バッファSTARTの第2クラスタSTART[pad,2]から、波形データをチャンネル番号chの再生バッファPLAYの第2クラスタPLAY[ch,2]に転送する。即ち、操作されたパッド20eのスタート・バッファの第2クラスタの波形データを、選択された再生チャンネルの再生バッファの第2クラスタに記憶する。
【0082】
ステップS614の処理を終了すると、ステップS616の処理へ進み、読み出しクラスタ番号rd_cl(ch)をインクリメントし、パッド番号chのスタート・バッファの書き込みクラスタ番号wr_cl(ch)を2とする。
【0083】
従って、上記したステップS616までの処理により、再生バッファの第1クラスタおよび第2クラスタに波形データが書き込まれることになるとともに、読み出しクラスタ番号および書き込みクラスタ番号がそれぞれ増加される。そして、以降のステップにおいては、再生バッファの第3クラスタおよび第4クラスタに波形データを書き込む処理を行うことになる。
【0084】
即ち、ステップS616の処理を終了すると、ステップS618へ進み、まず、書き込みクラスタ番号wr_cl(ch)が「4」であるか否かを判断する。ステップS618において、書き込みクラスタ番号wr_cl(ch)が「4」であると判断された場合には、波形データを再生バッファの第3クラスタおよび第4クラスタにかき終えたので、このパッド・オン処理を終了する。
【0085】
一方、ステップS618において、書き込みクラスタ番号wr_cl(ch)が「4」ではないと判断された場合には、ステップS620へ進み、「読み出しクラスタ番号rd_cl(ch)=エンドクラスタ番号ed_cl(ch)」であるか否かを判断する。
【0086】
ステップS620において、「読み出しクラスタ番号rd_cl(ch)=エンドクラスタ番号ed_cl(ch)」であると判断された場合には、ステップS622へ進み、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しであるか否かを判断する。
【0087】
ステップS622において、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しであると判断された場合には、追加の波形データを再生バッファに記憶する必要がないため、このパッド・オン処理を終了する。
【0088】
一方、ステップS620において、「読み出しクラスタ番号rd_cl(ch)=エンドクラスタ番号ed_cl(ch)」ではないと判断された場合には、読み出しクラスタ番号rd_cl(ch)をインクリメントし(ステップS624)、さらに、書き込みクラスタ番号wr_cl(ch)をインクリメントし(ステップS626)、それから、ディスク14からパッド番号padの読み出しクラスタ番号rd_cl(ch)に対応する波形データを読み出し、再生チャンネルchの再生バッファの書き込みクラスタ番号wr_cl(ch)で示されるクラスタに記憶し(ステップS628)、ステップS618へ戻る。
【0089】
また、ステップS622において、パッド番号padのパッド20eに割り当てられている波形データが、ワン・ショット読み出しではないと判断された場合には、ループ・スタート・クラスタ番号lst_cl(ch)を読み出しクラスタ番号rd_cl(ch)に設定し(ステップS630)、さらに、書き込みクラスタ番号wr_cl(ch)をインクリメントし(ステップS626)、それから、ディスク14からパッド番号padの読み出しクラスタrd_cl(ch)に対応する波形データを読み出し、再生チャンネルchの再生バッファの書き込みクラスタ番号wr_cl(ch)で示されるクラスタに記憶し(ステップS628)、ステップS618へ戻る。
【0090】
このようにして、操作されたパッド20eに応じて再生バッファに必要な波形データが記憶されるとともに、再生が開始されることになる。
【0091】
次に、図7に示すパッド・オフ処理のフローチャートを参照しながら、いずれかのパッド20eが操作(押下解除)されて再生停止指示がなされたときの処理を説明する。
【0092】
即ち、押下されていたいずれかのパッド20eが操作(押下解除)されて再生停止指示がなされたときには、図7のパッド・オフ処理のフローチャートに示される処理が実行されるものである。
【0093】
このパッド・オフ処理のフローチャートにおいては、まず、ステップS702において、操作(押下解除)されたパッド20eのパッド番号(1〜16)をパッド番号padに設定する。
【0094】
ステップS702の処理を終了すると、ステップS704へ進み、操作(押下解除)されたパッド20eの波形データを再生中の再生チャンネルがあるか否かを判断する。
【0095】
ステップS704において、操作(押下解除)されたパッド20eの波形データを再生中の再生チャンネルがないと判断された場合には、このパッド・オフ処理を終了する。
【0096】
一方、ステップS704において、操作(押下解除)されたパッド20eの波形データを再生中の再生チャンネルがあると判断された場合には、ステップS706へ進み、操作(押下解除)されたパッド20eの波形データを再生中の再生チャンネルのチャンネル番号をチャンネル番号chに設定する。
【0097】
ステップS706の処理を終了すると、ステップS708へ進み、パッド番号padのパッド20eに割り当てられている波形データが、ループ読み出しであるか否かを判断する。
【0098】
ステップS708において、パッド番号padのパッド20eに割り当てられている波形データが、ループ読み出しでないと判断された場合には、このパッド・オフ処理を終了する。
【0099】
一方、ステップS708において、パッド番号padのパッド20eに割り当てられている波形データが、ループ読み出しであると判断された場合には、ステップS710へ進み、チャンネル番号chのホールド・フラグhold(ch)が「ホールド・フラグhold(ch)=1」であるか否かを判断する。
【0100】
ステップS710において、チャンネル番号chのホールド・フラグhold(ch)が「ホールド・フラグhold(ch)=1」であると判断された場合には、このパッド・オフ処理を終了する。即ち、この場合には、パッド20eの押下の操作を止めても、波形データの再生が続行されることになる。
【0101】
ステップS710において、チャンネル番号chのホールド・フラグhold(ch)が「ホールド・フラグhold(ch)=1」でないと判断された場合には、ステップS712へ進み、再生チャンネルchに再生停止を指示し、その再生チャンネルが不使用状態となったことに伴い、いずれの再生チャンネルでいずれのパッド20eの波形データを再生しているかを示す管理情報およびアサイン順位を変更する。
【0102】
次に、図8に示すホールド・オン処理のフローチャートを参照しながら、ホールド操作子20gあるいはホールド・ペダル22が操作されたときの処理を説明する。
【0103】
即ち、ホールド操作子20gあるいはホールド・ペダル22が操作されたときに、このホールド・オン処理のフローチャートに示される処理が実行されるものである。
【0104】
このホールド・オン処理のフローチャートにおいては、まず、ステップS802において、操作中(押下中)のパッド20eがあるか否かを判断する。
【0105】
ステップS802において、操作中(押下中)のパッド20eがあると判断された場合には、ステップS804へ進み、操作中(押下中)のパッド20eに割り当てられている波形データが、ループ読み出しであるか否かを判断する。
【0106】
ステップS804において、操作中(押下中)のパッド20eに割り当てられている波形データが、ループ読み出しでないと判断された場合には、このホールド・オン処理を終了する。即ち、ワン・ショット読み出しの波形データの再生に関しては、ホールド操作子20gおよびホールド・ペダル22の操作は何等の影響も与えることはない。
【0107】
一方、ステップSS804において、操作中(押下中)のパッド20eに割り当てられている波形データが、ループ読み出しであると判断された場合には、ステップS806へ進み、そのパッド20eの波形データを再生中の再生チャンネルchに関して、「hold(ch)=1」と設定して、このホールド・オン処理を終了する。即ち、ループ読み出しの波形データの再生を指示するパッド20eを操作(押下)しながらホールド操作子20gあるいはホールド・ペダル22を操作したときには、その波形データの再生を行っている再生チャンネルがホールド状態とされ、そのパッド20eの操作を止めても(押下解除しても)波形データの再生が続行されるようになる。
【0108】
なお、複数のパッド20eを操作(押下)しながら、ホールド操作子20gあるいはホールド・ペダル22を操作した場合には、操作(押下)されている各パッド20eに関して同様なそれぞれ処理が行われる。
【0109】
また、ステップS802において、操作中(押下中)のパッド20eがないと判断された場合、即ち、いずれのパッド20eも操作(押下)されていない状態でホールド操作子20gあるいはホールド・ペダル22が操作された場合には、ステップS808へ進み、「hold(ch)=1」とされている再生チャンネルchに対して再生停止を指示し、その再生チャンネルが不使用状態となったことに伴い、いずれの再生チャンネルでいずれのパッド20eの波形データを再生しているかを示す管理情報およびアサイン順位を更新する。
【0110】
ステップS808の処理を終了すると、ステップS810へ進み、「hold(ch)=0」と設定し、このホールド・オン処理を終了する。即ち、いずれのパッド20eも操作されずにホールド操作子20gあるいはホールド・ペダル22が操作されたときには、ホールド状態とされていた再生チャンネルに関してホールド状態を解除し、その再生チャンネルでの波形データの再生を停止することになる。
【0111】
次に、図9に示すクラスタ読み出し終了処理のフローチャートを参照しながら、いずれかの再生チャンネルからクラスタの読み出しを終了したことを通知されたときの処理を説明する。
【0112】
即ち、いずれかの再生チャンネルからクラスタの読み出しを終了したことを知らされたときに、このクラスタ読み出し終了処理のフローチャートに示される処理が実行されるものである。
【0113】
このクラスタ読み出し終了処理のフローチャートにおいては、まず、ステップS902において、クラスタの読み出しを終了した再生チャンネルのチャンネル番号をチャンネル番号chに設定し、この再生チャンネルで再生中の波形データに対応するパッド番号をパッド番号padに設定する。
【0114】
ステップS902の処理を終了すると、ステップS904へ進み、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」であるか否かを判断する。
【0115】
ステップS904において、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」であると判断された場合には、ステップS906へ進み、パッド番号padのパッドに割り当てられている波形データが、ワン・ショット読み出しであるか否かを判断する。
【0116】
ステップS906において、パッド番号padのパッドに割り当てられている波形データが、ワン・ショット読み出しであると判断された場合には、追加の波形データを再生バッファに記憶する必要がないため、このクラスタ読み出し終了処理を終了する。
【0117】
一方、ステップS904において、「読み出しクラスタ番号rd_cl(ch)=エンド・クラスタ番号ed_cl(ch)」でないと判断された場合には、ステップS908へ進み、読み出しクラスタ番号rd_cl(ch)をインクリメントする。
【0118】
また、ステップS906において、パッド番号padのパッドに割り当てられている波形データが、ワン・ショット読み出しでないと判断された場合には、ステップS910へ進み、ループ・スタート・クラスタlst_cl(ch)を読み出しクラスタ番号rd_cl(ch)に設定する。
【0119】
そして、ステップS908あるいはステップS910の処理を終了すると、ステップS912へ進み、書き込みクラスタ番号wr_cl(ch)が「4」であるか否かを判断する。
【0120】
ステップS912において、書き込みクラスタ番号wr_cl(ch)が「4」でないと判断された場合には、ステップS914へ進み、書き込みクラスタ番号wr_cl(ch)をインクリメントする。
【0121】
一方、ステップS912において、書き込みクラスタ番号wr_cl(ch)が「4」であると判断された場合には、ステップS916へ進み、書き込みクラスタ番号wr_cl(ch)に「1」を設定する。
【0122】
そして、ステップS914あるいはステップS916の処理を終了すると、ステップS918へ進み、ディスク14からパッド番号padの読み出しクラスタ番号rd_cl(ch)に対応する波形データを読み出し、チャンネル番号chの再生バッファの書き込みクラスタ番号wr_cl(ch)で示されるクラスタに記憶し、このクラスタ読み出し終了処理を終了する。
【0123】
このようにして、いずれかの再生チャンネルでクラスタの読み出しを終了した場合には、次のクラスタの波形データが読み出しを終了したクラスタに記憶されることになる。
【0124】
次に、図10に示す「QT=0」処理のフローチャートを参照しながら、いずれかの再生チャンネルからデータ量QTの値が「0」となったことを通知されたときの処理を説明する。
【0125】
即ち、いずれかの再生チャンネルからデータ量QTの値が「0」となったことを知らされたときに、この「QT=0」処理のフローチャートに示される処理が実行されるものである。
【0126】
この「QT=0」処理のフローチャートにおいては、まず、ステップS1002において、データ量QTの値が「0」となった再生チャンネルのチャンネル番号をチャンネル番号chに設定する。
【0127】
ステップS1002の処理を終了すると、ステップS1004へ進み、データ量QTの値が「0」となった再生チャンネルで再生中の波形データが、ループ読み出しであるか否かを判断する。
【0128】
ステップS1004において、データ量QTの値が「0」となった再生チャンネルで再生中の波形データが、ループ読み出しであると判断された場合には、ステップS1006へ進み、再生チャンネルchに対してその再生チャンネルで再生中の波形データのループ・スタート位置に基づいて、当該ループ・スタート位置の当該ループ・スタート位置を含むクラスタ内における相対位置を求め、スタート・アドレスSTとするとともに、当該波形データのループ・スタート位置およびエンド位置に基づいて、当該波形データの波形データ量を求め、当該波形データ量をデータ量QTとし、これらスタート・アドレスSTおよびデータ量QTを再生チャンネルchに設定し、さらに、再生チャンネルchに対して今まで再生していたクラスタの次のクラスタを再生対象のクラスタとするよう指示した後に、クラスタ読み出しが終了した旨の通知を発行し、クラスタ読み出しが終了した旨の通知に応じて引き続き図9に示すクラスタ読み出し終了処理のフローチャートの処理が行われる。
【0129】
一方、ステップS1004において、データ量QTの値が「0」となった再生チャンネルで再生中の波形データが、ループ読み出しでないと判断された場合には、ステップS1008へ進み、再生チャンネルchに対して再生停止を指示し、当該再生チャンネルが不使用状態となったことに伴いいずれの再生チャンネルでいずれのパッド20eの波形データを再生しているかを示す管理情報およびアサイン順位を更新し、この「QT=0」処理を終了する。
【0130】
次に、図11に示すディスクからのデータ転送処理のフローチャートを参照しながら、1クラスタ分の波形データをディスク14から半導体メモリ16へDMA転送する処理を詳細に説明する。
【0131】
即ち、この実施の形態では、ステップS504、ステップS628ならびにステップS918の処理において、図11に示すディスクからのデータ転送処理に従って、CPU10内部のDAMコントローラによりディスク14から半導体メモリ16へ波形データのDMA転送が行われる。
【0132】
なお、ステップS504とステップS628ならびにステップS918とではデータの転送先が異なるが、以下においては説明を簡略化して理解を容易にするために、データの転送先の区別は行なわないこととして説明を行う。
【0133】
まず、このディスクからのデータ転送処理のフローチャートにおいては、ステップS1102において、ディスク14の読み出し対象のクラスタたる読み出しクラスタ内に、読み出し対象の波形データのエンド位置があるか否か判断される。
【0134】
そして、ステップS1102において、読み出しクラスタ内に読み出し対象の波形データのエンド位置があると判断された場合には、ステップS1104に進み、読み出しクラスタの先頭セクタからエンド位置を含むセクタまでのセクタ数を求めてEセクタにセットし、それからステップS1108へ進む。
【0135】
一方、ステップS1102において、読み出しクラスタ内に読み出し対象の波形データのエンド位置がないと判断された場合には、ステップS1106へ進み、1クラスタのセクタ数のmax値(64)をEセクタにセットし、それからステップS1108へ進む。
【0136】
なお、Eセクタは、読み出しクラスタにおいて先頭から何番目のセクタまで読み出しを行なうかを示す変数である。
【0137】
そして、ステップS1108においては、CPU10はDMAコントローラに読み出しクラスタの先頭セクタからEセクタまでをDMA転送することを指示し、1クラスタ分の波形データのなかの再生される部分(必要になるセクタ)のみの転送を行い、このディスクからのデータ転送処理を終了する。
【0138】
上記したように、この実施の形態においては、再生される部分のみをディスク14から読み出すようにしているので、でディスク14からの波形データの読み出しを必要最小限の時間で終了することができるようになる。
【0139】
従って、上記した実施の形態においては、バンク切り換え操作子20fの操作によりバンク切り換えを指示すると、バンク切り換え処理のフローチャートにより、新たに指定されたバンクに応じて各パッド20eに波形データが割り当てられる(ステップS502)。このとき、各パッド20eに割り当てられた各波形データに設定されているスタート位置に応じて、当該波形データのスタート位置を含む1クラスタあるいは2クラスタ分の波形データが、ディスク14から読み出されてスタート・バッファSTARTに記憶される(ステップS504)。
【0140】
即ち、ディスク14のスタート位置を含むクラスタから、波形データをスタート・バッファSTARTに記憶するので、スタート・バッファSTARTは必要最小限の記憶容量があれば足りる。
【0141】
そして、パッド20eを操作(押下)すると、パッド・オン処理のフローチャートにより、操作(押下)されたパッド20eの波形データのスタート部分の波形データが、スタート・バッファSTARTから再生バッファPLAYに転送され(ステップS608)、再生バッファPLAYにおいてスタート位置から波形データの読み出しが開始される(ステップS610)。
【0142】
従って、波形データの先頭以外の場所をスタート位置と指定しても、そのスタート位置からパッド20eの操作に応じて時間遅れなく波形の読み出しが行われる。
【0143】
また、必要に応じて2クラスタ分の波形データがスタート・バッファSTARTに記憶されるので(ステップS504)、スタート位置が当該スタート位置を含むクラスタの末尾の方である場合でも、そのクラスタの再生が終了した時点で次のクラスタの波形データが既に用意されており、波形データの再生がスムーズに行われる。
【0144】
なお、スタート・バッファSTARTに、3クラスタ分以上の記憶領域を設けるようにしてもよい。
【0145】
そして、波形データの読み出し開始以降は、再生バッファPLAYの空いている領域(読み出しを終了した領域)にまだ読み出しが行われていない波形データをディスク14からクラスタ単位で読み出して順次記憶していく(ステップS618〜ステップS628)。つまり、再生バッファPLAYにおいて、あるクラスタの読み出しが完了したときには、当該クラスタは空いている領域として扱われ、新たな波形データが記憶される。
【0146】
また、ループ読み出しが指定されている波形データをエンド位置まで読み出した場合も同様に当該クラスタは空いている領域として扱われ、新たな波形データが記憶される。
【0147】
ここで、ループ読み出しが指定されている波形データの場合において、当該波形データをエンド位置を含むクラスタまで再生バッファPLAYに記憶したときには、次からはループ・スタート位置を含むクラスタを再生バッファPLAYに記憶する。
【0148】
また、波形データをエンド位置まで再生した場合には、次のクラスタのループ・スタート位置で示される位置から読み出しを続行する。
【0149】
従って、ループ・スタート位置ならびにエンド位置に基づいて、ループ再生が可能であるとともに、再生バッファは必要最小限の記憶容量があれば足りることになる。
【0150】
また、あるクラスタを再生している際に、その次のクラスタへの波形データの記憶は既に終了しているので、エンド位置がそのエンド位置を含むクラスタの先頭の方にある場合でも、そのクラスタの再生が終了した時点で次のクラスタの波形データが既に用意されていることになり、波形データの再生がスムーズに行われる。
【0151】
なお、上記した実施の形態においては、再生バッファPLAYとして4クラスタ分の記憶領域を設けたが、最低3クラスタ分の記憶領域があればよい。
【0152】
なお、ワン・ショット読み出しが指定されている波形データに関しては、対応するパッド20eの操作の中止(押下解除)にかかわらず、その波形データがエンド位置まで再生された時点で再生が停止される。
【0153】
また、ループ読み出しが指定されている波形データに関しては、対応するパッド20eの操作が中止(押下解除)された時点で再生が停止される。
【0154】
ただし、ループ読み出しが指定されている波形データに関しては、対応するパッド20eを操作しながらホールド操作子20gあるいはホールド・ペダル22を操作したときには、ホールド・オン処理のフローチャートにより、ホールド状態とされ(ステップS806)、対応するパッド20eの操作が中止されても再生を続行する。
【0155】
この状態でさらに、ループ読み出しが指定されている別の波形データに対応するパッド20eを操作しながらホールド操作子20gあるいはホールド・ペダル22を操作したときには、先の波形データに加えてこの波形データもホールド状態とされる。
【0156】
いずれのパッド20eも操作せずにホールド操作子20gあるいはホールド・ペダル22を操作したときには、ホールド状態が解除され、それまでホールド状態とされていた波形データの再生が停止される。
【0157】
なお、ホールド状態中にバンクを切り換えた場合にも、ホールド状態とされている波形データの再生は続けられる。またこのとき新たなバンクに対応して、スタート・バッファSTARTに新たな波形データが記憶されるので、その状態でパッド20eを操作すれば以前のバンクにおける波形データをループ再生しながら、新たなバンクにおける波形データの再生が行える。
【0158】
なお、上記した実施の形態は、以下に示すように変形してもよい。
【0159】
(1)上記した実施の形態においては、波形データをスタート・バッファSTARTから再生バッファPLAYに転送して再生バッファPLAYを再生するようにしたが、これに限られることなしに、波形データをスタート・バッファSTARTから再生バッファPLAYに転送して再生バッファPLAYを再生するのではなく、スタート・バッファSTARTに記憶されている波形データはスタート・バッファSTARTから読み出し、それ以降の波形データをディスク14から再生バッファPLAYに転送し、スタート・バッファSTARTに記憶されている波形データを読み出し終えたら、その後は再生バッファPLAYを再生するようにしてもよい。
【0160】
(2)上記した実施の形態においては、波形データをスタート・バッファSTARTから再生バッファPLAYに転送して再生バッファPLAYを再生するようにしたが、これに限られることなしに、波形データをスタート・バッファSTARTから再生バッファPLAYに転送して再生バッファPLAYを再生するのではなく、各パッド20eに対応して再生バッファPLAYを設け(スタート・バッファSTARTは設けない。)、波形データのスタート部分を予め再生バッファPLAYに記憶しておくようにしてもよい。そして、再生を終了したときに、波形データのスタート部分を再生バッファPLAYに記憶し直すようにする。(3)上記した実施の形態においては、ループ読み出しが指定されている波形データに関しては対応するパッドの操作が中止された時点(ホールド状態とされている場合にはホールドの解除時点)で再生が停止されるようにしたが、パッドの操作中止(押下解除)以降(ホールド状態とされている場合にはホールドの解除以降)に波形データがエンド位置まで再生された時点で再生を停止するようにしてもよいし、パッド20eの操作中止(押下解除)時点(ホールド状態とされている場合にはホールドの解除時点)で再生を停止するか、あるいは、パッド操作中止以降の波形データのエンド位置再生時点で再生を停止するかを、任意に選択可能としてもよい。なお、いずれの条件で再生を停止するか任意に設定可能とする場合には、全ての波形データに関して一括して設定できるようにしてもよいし、各波形データあるいはパッド20e毎に設定できるようにしてもよい。
【0161】
(4)上記した実施の形態においては、ホールド・フラグholdを各再生チャンネル毎に設けることにより、再生中の各楽音がホールド状態であるか否かを管理するようにしたが、これに限られることなしに、再生中の各楽音がホールド状態であるか否かが管理できれば、別の形態で管理するようにしてもよい。例えば、各パッド20e毎にホールド・フラグholdを設け、パッド20eが操作されながらホールド操作子20gあるいはホールド・ペダル22が操作された場合には、そのパッド20eのホールド・フラグholdをたて、いずれのパッド20eも操作されずにホールド操作子20gあるいはホールド・ペダル22が操作された場合には、全てのパッド20eのホールド・フラグholdを降ろすようにし、パッド20eの操作(押下)が止められたときに、そのパッド20eのホールド・フラグholdがたっていれば、対応する波形データの再生停止を指示しないようにしてもよい。また、パッド20eに代えて、各波形データ毎にホールド・フラグholdを設けるようにしてもよい。
【0162】
(5)上記した実施の形態においては、楽音の再生を指示する各演奏操作子たるパッド20eに対してそれぞれ異なる波形データを割り当てるようにしたが、各演奏操作子たるパッド20eに同じ波形データであるが音高が異なる波形データを割り当てるようにしてもよい。
【0163】
(6)上記した実施の形態においては、パッド操作時に波形データの先頭部分を再生するときのみにスタート・バッファSTARTの記憶内容を用いているが、これを、ループ部分の波形データが既にスタート・バッファSTARTに記憶されている場合には、スタート・バッファSTARTの記憶内容を用いてループ読み出しを行うようにしてもよい。
【0164】
例えば、ループ部分の波形データが既にスタート・バッファSTARTに記憶されている場合には、その波形データをディスク14から再生バッファPLAYに転送するのではなくスタート・バッファSTARTから転送する。このようにすれば、ディスク14から波形データを読み出して再生バッファPLAYに転送するのに比べ、短い時間で転送が終了する。
【0165】
これは、特に、次のような場合に有効である。即ち、ループ読み出しを行う場合には、現在再生中のループ部分の再生が終了する前に、次回再生用のループ部分の波形データの少なくとも先頭部分が再生バッファPLAYに用意されている必要がある。ところが、ループ部分が1クラスタ分しかない場合、あるいは、ループ部分が2クラスタに跨っている場合であっても、ループ・スタート位置が前のクラスタの末尾の部分にあり、エンド位置が後ろのクラスタの先頭の部分にあるような場合には、ループ部分の再生は短時間で終了してしまうため、転送が間に合わず、再生終了までに次回再生用のループ部分の波形データのディスク14から再生バッファPLAYへの転送が終了しない可能性がある。
【0166】
この場合、上記したように、スタート・バッファSTARTから再生バッファPLAYに波形データを転送するようにすることにより、転送が間に合わなくなる可能性を大幅に低く押さえることができる。以下に、このような変形を行う場合について説明する。
【0167】
まず、各パッド20e毎に、そのパッド20eのスタート・バッファSTARTのクラスタ1、クラスタ2に記憶されている波形データが、ディスク14上のいずれのクラスタに記憶されていたものかをクラスタ番号で示すスタート1・クラスタ番号ST1−cl(pad)、スタート2・クラスタ番号ST2−cl(pad)を設ける。
【0168】
そして、バンク切り換え処理においては、各パッド20eのスタート・バッファSTARTにディスク14から波形データを記憶するときに、スタート1・クラスタ番号ST1−cl(pad)、スタート2・クラスタ番号ST2−cl(pad)に対応するディスク14上のクラスタ番号を設定する処理を追加する。また、パッド・オン処理においては、ステップS628の処理、即ち、再生バッファPLAYに波形データを記憶する処理の前に、操作されたパッド20eに割り当てられている波形データがワン・ショット読み出しであるか否かを判断する処理を追加し、ワン・ショット読み出しであると判断された場合には、上記した実施の形態と同様にステップS628へ進むようにする。一方、ワン・ショット読み出しでない、即ち、ループ読み出しであると判断された場合には、読み出しクラスタ番号rd_cl(ch)が示すクラスタがスタート1・クラスタ番号ST1−cl(pad)あるいはスタート2・クラスタ番号ST2−cl(pad)のいずれかが示すクラスタと一致しているか否かを判断する。
【0169】
ここで、一致していると判断されれば、再生バッファPLAYに記憶しようとする波形データが既にスタート・バッファSTARTに記憶されていることを示しているので、一致しているスタート・クラスタ番号の示すスタート・バッファSTARTのクラスタから波形データを読み出し再生バッファPLAYに記憶し、ステップS618の処理に戻るようにする。
【0170】
クラスタ読み出し処理も、同様に変形させる。つまり、ステップS918の処理、即ち、再生バッファPLAYに波形データを記憶する処理の前に、操作されたパッド20eに割り当てられている波形データがワン・ショット読み出しであるか否かを判断する処理を追加し、ワン・ショット読み出しであると判断された場合には、実施の形態と同様にステップS918へ進むようにする。一方、ワン・ショット読み出しでない、即ち、ループ読み出しであると判断された場合には、読み出しクラスタ番号rd_cl(ch)が示すクラスタがスタート1・クラスタ番号ST1−cl(pad)あるいはスタート2・クラスタ番号ST2−cl(pad)のいずれかが示すクラスタと一致しているか否かを判断する。
【0171】
ここで、一致していると判断されれば、再生バッファPLAYに記憶しようとする波形データが既にスタート・バッファSTARTに記憶されていることを示しているので、一致しているスタート・クラスタ番号の示すスタート・バッファSTARTのクラスタから波形データを読み出し再生バッファPLAYに記憶し、クラスタ読み出し処理を終了する。
【0172】
なお、以上において説明した変形例は、上記した変形例(1)で説明した変形例と組み合わせてもよい。
【0173】
即ち、ループ部分の波形データがスタート・バッファSTARTに記憶されている場合には、その波形データをスタート・バッファSTARTから再生バッファPLAYに転送して再生バッファPLAY上で再生するのではなく、スタート・バッファSTARTを直接再生するようにする。
【0174】
なお、上記した実施の形態においては、ホールド状態とされている波形データに関しては、その再生中にバンクが切り換えられた場合にも再生を続けるようにしたが、上記のように変形させた場合には、バンクが切り換えられたときにスタート・バッファSTARTの内容が新たなバンクに対応するものに書き換えられるため、スタート・バッファSTARTの内容を使用したループ読み出しを行うと、正常な再生が行えなくなる。
【0175】
これに対処するために、バンク切り換えが行われた場合にはスタート・バッファSTARTに基づくループ読み出しを禁止したり、バンク切り換え指示がなされてもホールド状態とされている波形データに対応しているパッド20eに関しては、スタート・バッファSTARTの内容の書き換えを保留してスタート・バッファSTARTの内容に基づくループ読み出しを続け、ホールド状態が解除されたときに、保留していたスタート・バッファSTARTの内容の書き換えを行うようにすることが考えられる。
【0176】
(7)上記した実施の形態においては、波形データの再生中に新たな波形データをディスク14から再生バッファPLAYに転送するようにしている。しかしながら、ループ部分が短く再生バッファPLAYに全て記憶されている場合には、波形データをディスク14から再生バッファPLAYに転送することなく、既に記憶されている再生バッファPLAYを繰り返し読み出すようにしてもよい。このようにすれば、ループ部分の波形データの今回の再生終了までに、次回再生用のループ部分の波形データをディスク14から再生バッファPLAYに転送するのが間に合わないという状況が起こることを防ぐことができる。具体的には、以下のように変形させればよい。
【0177】
即ち、まず、各パッド20e毎に、そのパッド20eに割り当てられている波形データのループ部分の占有するクラスタ数を記憶するようにし、バンク切り換え処理において、各パッド20eに割り当てわれる波形データのエンド位置とループ・スタート位置との差に基づいてこの変数を設定する処理を追加する。
【0178】
クラスタ読み出し終了処理においては、ステップS906でワン・ショット読み出しでない、即ち、ループ読み出しの波形データをエンド位置まで再生バッファPLAYに記憶させたことが判断された場合に、上記した変数に基づいてその再生チャンネルに割り当てられている波形データのループ部分の占有するクラスタの数が、再生チャンネルのクラスタ数(上記した実施の形態では「4」である。)以下であるか否かを判断する処理を追加し、以下でないと判断された場合には、上記した実施の形態と同様にステップS910に進むようにする。一方、以下であると判断された場合には、そのままクラスタ読み出し処理を終了する。
【0179】
また、「QT=0」処理においては、ステップS1006の処理内容を、再生チャンネルに対するスタート・アドレスSTおよびデータ量QTの再設定、および今までで再生していたクラスタから上記した変数が示すクラスタ数よりも1小さい数だけ前のクラスタを次のクラスタを再生対象のクラスタとして指示する処理を行う、と変えるようにする。
【0180】
(8)上記した実施の形態においては、波形データ再生装置本体にホールド・ペダル22を設けるようにしたが、波形データ再生装置に外部のホールド・ペダルからの信号を受け取る接続端子を設けるようにしてもよい、
また、上記した実施の形態では、波形データ再生装置本体に設けられたパッド20e、ホールド操作子20g、バンク切り換え操作子20fなどにより演奏を行うようにしたが、これらの操作子の操作に相当する操作信号を外部機器からMIDIなどの通信手段を用いて入力するようにしてもよい。
【0181】
(9)上記した実施の形態においては、1クラスタ分の波形データをDMA転送するときに、読み出しクラスタ内にエンド位置があると判断された場合には、エンド位置より後のセクタの波形データの転送が行われないようにしたが、読み出しクラスタ内にスタート位置やループ・スタート位置があると判断された場合にも、スタート位置やループ・スタート位置より前のセクタの波形データの転送が行われないようにしてもよい。こうした場合に、半導体メモリ16への書き込みは、スタート位置やループ・スタート位置より前のセクタ数の分だけ後ろにずれたセクタから書き込みまれるようにすればよい。
【0182】
【発明の効果】
本発明は、以上説明したように構成されているので、小記憶容量の半導体メモリなどのような記憶手段を設けるだけで、大容量の波形データの再生が可能になるとともに、波形データの途中からの読み出しや波形データのループ状の読み出しを行うことができるようになるという優れた効果を奏する。
【図面の簡単な説明】
【図1】本発明による波形データ再生装置の全体構成を表すブロック構成図である。
【図2】ディスクの記憶領域のフォーマットを概念的に示す説明図である。
【図3】スタート・バッファSTARTのフォーマットを概念的に示す説明図である。
【図4】再生バッファPLAYのフォーマットを概念的に示す説明図である。
【図5】バンク切り換え処理のフローチャートである。
【図6】パッド・オン処理のフローチャートである。
【図7】パッド・オフ処理のフローチャートである。
【図8】ホールド・オン処理のフローチャートである。
【図9】クラスタ読み出し終了処理のフローチャートである。
【図10】「QT=0」処理のフローチャートである。
【図11】ディスクからのデータ転送処理のフローチャートである。
【符号の説明】
10 中央処理装置(CPU)
12 アナログ/デジタル変換器(A/D)
14 ディスク
16 半導体メモリ
18 再生器
20 操作パネル
20a スタート位置指定操作子
20b ループ・スタート位置指定操作子
20c エンド位置指定操作子
20d ループ/ワン・ショット指定操作子
20e パッド
20f バンク切り換え操作子
20g ホールド操作子
20h その他の操作子
22 ホールド・ペダル
24 デジタル/アナログ変換器(D/A)
Claims (2)
- 複数の波形データを記憶し、該波形データを所定の単位記憶領域毎に読み出し可能な第1の記憶手段と、
前記第1の記憶手段に記憶されている複数の波形データがそれぞれ予め割り当てられるとともに、操作によって予め割り当てられている波形データの再生開始指示を行う複数の操作子と、
前記第1の記憶手段に記憶されている波形データに対して、読み出し開始位置を指定する第1の指定手段と、
前記第1の記憶手段における単位記憶領域について、前記複数の操作子のそれぞれに対応して波形データを記憶するための少なくとも2個分の単位記憶領域に対応する記憶容量を有する第1の記憶領域と、前記第1の記憶領域とは異なる第2の記憶領域とを有し、前記第1の記憶手段よりも波形データを高速に読み出し可能な第2の記憶手段と、
前記第1の記憶手段に記憶されている波形データについて、少なくとも前記第1の指定手段により指定された読み出し開始位置を含む1つの単位記憶領域に記憶されている波形データおよび前記読み出し開始位置を含む1つの単位記憶領域の次の1つの単位記憶領域に記憶されている波形データを、前記操作子による再生開始指示に先立ち、前記操作子への前記波形データの割り当てに伴って、前記第1の記憶手段から読み出して前記第2の記憶手段の前記第1の記憶領域に記憶させる第1の書き込み手段と、
前記第1の指定手段により指定された読み出し開始位置に基づいて、前記第2の記憶手段の前記第2の記憶領域に対して読み出し開始位置を指定する第2の指定手段と、
前記操作子による再生開始指示に応じて、前記第2の記憶手段において前記第1の記憶領域の波形データを前記第2の記憶領域へ転送するとともに、前記第2の指定手段により指定された読み出し開始位置から、前記第2の記憶手段の前記第2の記憶領域の読み出しを開始する再生手段と、
前記再生手段による再生の進行に伴って、前記第1の記憶手段に記憶されている波形データについて、前記第2の記憶手段の前記第2の記憶領域に既に記憶されている波形データ以降の波形データを、前記第1の記憶手段から読み出して前記第2の記憶手段の前記第2の記憶領域の既読み出し領域に記憶させる第2の書き込み手段と
を有する波形データ再生装置。 - 請求項1に記載の波形データ再生装置において、
前記第1の記憶手段に記憶されている波形データに対して、ループ・スタート位置ならびにエンド位置を指定する第3の指定手段を有し、
前記第2の記憶手段の前記第2の記憶領域は、前記第2の書き込み手段により波形データが記憶される少なくとも3個分の単位記憶領域に対応する記憶容量を有し、
前記第2の書き込み手段は、前記第1の記憶手段の前記第3の指定手段により指定されたエンド位置を含む単位記憶領域の波形データを前記第2の記憶手段の前記第2の記憶領域における所定の単位記憶領域に記憶させた後に、前記第1の記憶手段の前記第3の指定手段により指定されたループ・スタート位置を含む単位記憶領域の波形データを前記第2の記憶手段の前記第2の記憶領域における前記所定の単位記憶領域の次の単位記憶領域に記憶させるとともに、
前記再生手段による前記第2の記憶手段の前記第2の記憶領域における前記所定の単位記憶領域から読み出した前記エンド位置に対応する波形データの再生に応じて、前記第2の記憶手段の前記第2の記憶領域における前記所定の単位記憶領域の次の単位記憶領域において、前記ループ・スタート位置に基づき次の読み出し位置を指定する
ものである波形データ再生装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12825798A JP4170438B2 (ja) | 1998-01-28 | 1998-04-22 | 波形データ再生装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3053898 | 1998-01-28 | ||
JP10-30538 | 1998-01-28 | ||
JP12825798A JP4170438B2 (ja) | 1998-01-28 | 1998-04-22 | 波形データ再生装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11282465A JPH11282465A (ja) | 1999-10-15 |
JP4170438B2 true JP4170438B2 (ja) | 2008-10-22 |
Family
ID=26368919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12825798A Expired - Fee Related JP4170438B2 (ja) | 1998-01-28 | 1998-04-22 | 波形データ再生装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4170438B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3878485B2 (ja) | 2002-01-11 | 2007-02-07 | ローランド株式会社 | 波形再生装置 |
JP4256332B2 (ja) | 2004-11-25 | 2009-04-22 | 株式会社ソニー・コンピュータエンタテインメント | 音声データエンコード装置および音声データデコード装置 |
JP4256331B2 (ja) | 2004-11-25 | 2009-04-22 | 株式会社ソニー・コンピュータエンタテインメント | 音声データエンコード装置および音声データデコード装置 |
JP4665550B2 (ja) * | 2005-02-25 | 2011-04-06 | ソニー株式会社 | 再生装置および再生方法 |
JP4321476B2 (ja) | 2005-03-31 | 2009-08-26 | ヤマハ株式会社 | 電子楽器 |
JP4998046B2 (ja) * | 2007-03-29 | 2012-08-15 | ヤマハ株式会社 | 楽音発生装置 |
-
1998
- 1998-04-22 JP JP12825798A patent/JP4170438B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11282465A (ja) | 1999-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2671747B2 (ja) | 楽音形成装置 | |
US6441290B2 (en) | Apparatus and method for reproducing or recording, via buffer memory, sample data supplied from storage device | |
JPH06236313A (ja) | 音声信号記録再生装置 | |
JP3659190B2 (ja) | 再生制御装置、方法及びプログラム | |
US6437228B2 (en) | Method and apparatus for storing audio data | |
JP4170438B2 (ja) | 波形データ再生装置 | |
JPH04358384A (ja) | デジタルレコーダ | |
JP2002124022A (ja) | オーディオデータ記録再生装置 | |
JPH08195022A (ja) | ディスク再生装置、カラオケシステム及びディスク再生方法 | |
JP3923177B2 (ja) | 電子楽器 | |
JP4132213B2 (ja) | 電子楽器 | |
JP2002203361A (ja) | ディジタルオーディオ録音装置 | |
JPH05159540A (ja) | 再生装置 | |
JPH0982020A (ja) | ディスク記録装置及びディスク再生装置 | |
JPH04281201A (ja) | 信号記録再生装置 | |
JP3036837U (ja) | コンピュータゲーム装置における記憶媒体再生装置 | |
JP3542528B2 (ja) | 記録再生装置 | |
JPS61255575A (ja) | 録音システム | |
JP3624574B2 (ja) | ディスク記録データのランダムアクセス再生方法 | |
JPH0729183A (ja) | 光ディスクプレーヤ | |
JP3770030B2 (ja) | 録音再生装置 | |
JP2906765B2 (ja) | 音声又は映像のデジタル情報再生装置 | |
JP4603686B2 (ja) | 光学的に記憶されたデータを有するディスクを演奏するためのディスクプレーヤ | |
JP2857160B2 (ja) | 音声ディスクプレーヤ装置 | |
JP3664027B2 (ja) | 記録再生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070306 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080304 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080711 |
|
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: 20080805 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080807 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110815 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |