JP3837994B2 - 楽譜データ変換装置、及び記録媒体 - Google Patents
楽譜データ変換装置、及び記録媒体 Download PDFInfo
- Publication number
- JP3837994B2 JP3837994B2 JP2000086024A JP2000086024A JP3837994B2 JP 3837994 B2 JP3837994 B2 JP 3837994B2 JP 2000086024 A JP2000086024 A JP 2000086024A JP 2000086024 A JP2000086024 A JP 2000086024A JP 3837994 B2 JP3837994 B2 JP 3837994B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- symbol
- score
- performance
- musical
- 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
- Auxiliary Devices For Music (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、楽譜を表示するための楽譜データから他のデータを生成するための技術に関する。
【0002】
【従来の技術および発明が解決しようとする課題】
現在では、音楽を楽しむためのソフトウェア(以降、音楽ソフトと呼ぶ)の数が増えただけでなく、その音楽ソフトには様々な機能が搭載されるようになっている。その機能として、ユーザに楽曲を作成させる作曲機能は多くの音楽ソフトに搭載されている。このため、作曲機能が搭載された音楽ソフトを購入したユーザは、パーソナルコンピュータ(以降、パソコンと略す)の画面上で作曲を気軽に行うことができる。
【0003】
画面上での作曲は、普通、様々な形で行えるようになっている。例えば、マウスなどのポインティングデバイスを操作して五線譜上に音符を配置していくことで楽譜を作成する他に、数値を入力して演奏データを直接、作成することもできるようになっている。
【0004】
演奏データを作成することで作曲を行った場合、その演奏データを再生することで演奏の内容を確認することができる。しかし、楽譜などの形で作曲した場合には、作曲した楽曲が実際にはどのような演奏なのかを必ずしも的確に把握することはできない。このことから、作曲機能を搭載した音楽ソフトの多くには、作成した楽曲から演奏用の演奏データを生成する機能が合わせて搭載されている。その機能によって生成した演奏データを再生することにより、ユーザは作曲した楽曲の内容を確認することができる。なお、その演奏データは、演奏上のイベントの内容を表すイベントデータ、及びそのイベントデータの処理タイミングを示す時間データからなるデータ対を処理順序に従って並べた形で構成されたシーケンスデータである。
【0005】
周知のように、楽譜上には、音符だけでなく、様々なシンボル(記号)が記譜される。しかし、従来の楽譜から演奏データを生成、言い換えれば楽譜を演奏データに変換する機能(以降、楽譜データ変換機能と呼ぶ)は、五線譜上に配置された音符のみを対象にして演奏データを生成していた。このため、演奏の再現性は低く、配置した音符の種類の間違いなどを気付かせることはできても、楽曲の全体的な内容をユーザに確認させることができないという問題点があった。
【0006】
例えば歌を歌う場合、歌詞とは異なり、楽譜があれば音程をどのように変化させていけば良いかを歌い手は容易に理解することができる。楽器を演奏する場合には、楽譜は必要不可欠である。そのようなことを行う人にとって、楽譜が表す演奏を聴かせることは非常に参考になる。楽譜を表示させるためのデータ(楽譜データ)は、現在では広く社会に普及したネットワークを利用して容易に配信することができる。このようなことからも、楽譜が表す演奏の再現性の向上が強く望まれるようになっている。
【0007】
本発明の課題は、高い再現性を有する演奏データを楽譜(楽譜データ)から生成する技術を提供することにある。
【0008】
【課題を解決するための手段】
本発明の楽譜データ変換装置は、楽譜表示用の楽譜データが表す演奏を再生させるための演奏データを生成することにより、該楽譜データを該演奏データに変換する装置であって、楽譜データとして、楽譜上に出現するシンボルの種類を示すシンボルデータ毎に、該シンボルデータが示すシンボルの楽譜上における表示位置を指定する位置データを少なくとも付加されて構成される楽譜データを取得する楽譜データ取得手段と、前記楽譜データ取得手段が取得した楽譜データを構成するシンボルデータを、該シンボルデータが示すシンボルが音符か否かによって少なくとも分類し、該シンボルデータが示す音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、該音符を示すシンボルデータ、及びそれに付加された位置データから、発音させるべき楽音を示す楽音データ、及び該楽音の発音タイミングを示す時間データからなる単位演奏データを生成していくことにより前記演奏データを生成する演奏データ生成手段と、を具備し、前記演奏データ生成手段は、前記楽譜データによって表示される楽譜上に、大きさが異なる音符、及び繰り返し記号が配置されている場合、該繰り返し記号によって指定される範囲内に存在する音符を示すシンボルデータを参照しての単位演奏データの生成は、1回目は大きいほうの音符を示すイベントデータのみを参照して行い、2回目は小さいほうの音符を示すイベントデータも参照して行うことにより、該繰り返し記号が指示する演奏上の操作を前記演奏データの生成に反映させる、ことを特徴とする。
【0011】
本発明の記録媒体は、楽譜表示用の楽譜データとして、楽譜上に出現するシンボルの種類を示すシンボルデータ毎に、該シンボルデータが示すシンボルの楽譜上における表示位置を指定する位置データを少なくとも付加されて構成される楽譜データを取得する楽譜データ取得手段と、前記楽譜データ取得手段により取得された楽譜データを構成するシンボルデータを、該シンボルデータが示すシンボルが音符か否かによって少なくとも分類し、該シンボルデータが示す音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、該音符を示すシンボルデータ、及びそれに付加された位置データから、発音させるべき楽音を示す楽音データ、及び該楽音の発音タイミングを示す時間データからなる単位演奏データを生成していくことにより前記演奏データを生成し、前記楽譜データによって表示される楽譜上に、大きさが異なる音符、及び繰り返し記号が配置されている場合、該繰り返し記号によって指定される範囲内に存在する音符を示すシンボルデータを参照しての単位演奏データの生成は、1回目は大きいほうの音符を示すイベントデータのみを参照して行い、2回目は小さいほうの音符を示すイベントデータも参照して行うことにより、該繰り返し記号が指示する演奏上の操作を前記演奏データの生成に反映させる演奏データ生成手段と、を実現させるプログラムを記録している。
【0012】
本発明では、楽譜データによって表示される楽譜上に配置されるシンボルを音符か否かによって少なくとも2つに大別し、音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、音符が表す楽音の発音を指示するための単位演奏データを生成していくことで演奏データを生成する。そのようにして生成した演奏データは、その再生時に、反復記号や繰り返し記号、強弱記号、或いは速度記号といった楽譜上に出現するシンボルによって指示される演奏上の操作を表現する。このことから、高い再現性が実現されることになる。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
<第1の実施の形態>
図1は、本実施の形態による楽譜データ変換装置を搭載した電子楽器の外観図である。
【0014】
その電子楽器は、図1に示すように、多数の鍵を有する鍵盤101を備えた電子鍵盤楽器である。その上面には、各種スイッチやボタンなどの操作子がスイッチ群102として鍵盤101の近傍に配置され、例えば液晶表示装置である表示装置103がそのスイッチ群102の近傍に配置され、それらを挟む形で2つのスピーカ104が配置されている。本実施の形態による楽譜データ変換装置は、その電子楽器がフロッピーディスク(以降、FDと略記する)110から読み出した楽譜データを演奏データに変換する装置として実現されている。
【0015】
なお、上記スイッチ群102を構成する操作子としては、特に図示していないが、テンキーやカーソルキー、自動演奏の開始を指示するためのスタートスイッチ、その終了を指示するためのストップスイッチ、確定スイッチ、などがある。その確定スイッチは、表示装置103上で選択状態となっている項目(アイコン、或いはボタンなど)に割り当てられた機能(コマンド)の実行を指示するためのスイッチである。
【0016】
図2は、上記電子楽器の回路構成図である。
その電子楽器は、図2に示すように、楽器全体の制御を行うCPU201と、2つのタイマ202、及び203と、CPU201が実行するプラグラムや各種制御データなどを格納したROM204と、そのCPU201がワーク用に用いるRAM205と、上述した鍵盤101、表示装置103、及びスイッチ群102と、図1に示すフロッピーディスク(以降、FDと略記する)110にアクセスするフロッピーディスクドライブ(以降、FDDと略記する)206と、CPU201の指示に従って発音させるべき楽音の波形データを生成する音源207と、その音源207が生成した波形データを音声に変換して出力するサウンドシステム208と、を備えて構成されている。
【0017】
上記鍵盤101、及びスイッチ群102は、それへのユーザの操作を検出する回路を備えたものである。上記サウンドシステム208は、図1に示す2つのスピーカ104、音源207から入力した波形データをアナログのオーディオ信号に変換するD/Aコンバータ、及び、そのコンバータが出力したオーディオ信号を増幅して各スピーカ104に出力するアンプ、などから構成されている。
【0018】
以上の構成において、動作を説明する。
CPU201は、電源がオンされると、ROM204に格納されたプログラムを読み出して実行することにより、楽器全体の制御を開始する。表示装置103には、例えば各種アイコンやボタンなどが配置されたメニュー画面を表示させるための画像データを送出し、その画面を表示させる。それ以降は、ユーザの鍵盤101、或いはスイッチ群102への操作に応じて制御を行う。
【0019】
なお、表示装置103に送出するメニュー画面の画像データは、例えばCPU201が、RAM205を作業用に使用して、ROM204から読み出した表示させるべき画像のデータを用いて生成したものである。CPU201から表示装置103に送られた画像データは特には図示しないメモリ(例えばデュアルポートRAM)に格納される。それ以降における表示内容の変更、具体的には画面の切り換えやアイコンの選択状態/非選択状態の切り換え、楽譜の表示、などは、CPU201が、そのメモリに格納された画像データ中でデータを書き換えるべき部分を特定し、その特定した部分のデータを書き換えることで行われる。
【0020】
ユーザが鍵盤101上の鍵を押鍵、或いは離鍵すると、その操作内容を示す情報がそれの検出回路からCPU201に送出される。CPU201は、その情報を基に音源207に送出すべきコマンドを生成してその音源207に送出する。それにより、ユーザの鍵盤101への操作に応じて、サウンドシステム208から楽音をリアルタイムで放音させる。
【0021】
一方、ユーザがスイッチ群102を操作すると、鍵盤101のときと同様に、それの検出回路からその操作内容を示す情報がCPU201に送出される。CPU201は、その情報、更には表示装置103に表示させている内容などを基に、制御すべき対象を特定し、その特定した対象に対する制御を行う。それにより、特に詳細な説明は省略するが、ユーザは、表示装置103に表示された内容を通して、様々な指示を行えるようになっている。FD110へのアクセスや楽譜データの演奏データへの変換、などの指示は、例えば、先ず、表示装置103の画面上に配置されたアイコン、或いはボタンのなかで所定のアイコン、或いはボタンを選択状態にし、確定スイッチを操作して行うようになっている。
【0022】
CPU201は、鍵盤101、及びスイッチ群102から操作内容を示す情報の取得を、例えばタイマ202が出力する割り込み信号をトリガとして行う。それにより、その取得は、所定時間間隔が経過する毎に行うようになっている。
【0023】
本実施の形態では、以下のような楽譜データを演奏データに変換することを前提としている。図3〜図9の各種説明図を参照して、その楽譜データについて詳細に説明する。
【0024】
図3は、その楽譜データの構成を説明する図である。
図3に示すように、楽譜データは、楽譜上に表示(配置)すべきシンボルの種類を示すシンボルナンバーデータ、その大きさ(サイズ)を示すサイズデータ、その表示位置を示すX、Yデータを1シンボル分のデータ(以降、単位シンボルデータと呼ぶ)として、その単位シンボルデータがシンボル数分だけ集まった形で構成されている。本実施の形態では、そのような構成の楽譜データを配列変数(変数名はScore Dataである)の形で扱っており、図3中の「Index」(インデックス)の値はそれが付された単位シンボルデータが格納されている配列変数中の要素を指定する引数の値となる。
【0025】
図4に示すように、楽譜上に出現するシンボルには、それぞれ、異なるナンバー(シンボルナンバー)が割り当てられている。上記シンボルナンバーデータには、表示すべきシンボルのナンバーが格納される。シンボルナンバーで指定されるシンボルを表示するために、ROM204には各種シンボルの画像データが格納されている。
【0026】
図5は、シンボルの表示方法を説明するための図である。
各種シンボルの画像データは、図5(a)に示すように、例えばビットマップパターンの形でROM204に格納されている。各画像データには基準点がそれぞれ定められており、シンボルの表示位置は、図5(b)に示すように、それの画像データの基準点の表示位置を指定することで行うようになっている。本実施の形態では、その表示位置をXY座標系で指定することを前提としている。上記X、Yデータは、それぞれ、X軸上での位置を指定するデータ、Y軸上での位置を指定するデータである。図5(b)中の「x」「y」は、それぞれ、X、Yデータとして格納された値を示している。
【0027】
図6は、楽譜データ例を示す図である。図6(a)には、小節線、及び5線を表示するためのデータをまとめ、図6(b)にはそれ以外のシンボルを表示するためのデータをまとめて示してある。その図6に示す楽譜データにより、図8に示す楽譜が表示される。
【0028】
図7は、他の楽譜データ例を示す図である。その楽譜データは、例えば既に決められた五線上に表示すべきシンボルを表示させるためのものである。その図7に示す楽譜データにより、図9に示す楽譜を表示させることができる。
【0029】
図7に示す楽譜データでは、シンボルサイズの値が「−01」となっている音符が3つ存在している。シンボルサイズの「00」が通常の大きさを表しているのに対し、「−01」はその大きさより一回り小さい大きさを表している。
【0030】
また、図7に示す楽譜データには、シンボル「D.C.」の表示を指示する単位シンボルデータが存在している。そのシンボル「D.C.」は、周知のように、曲の先頭に戻るのを指示する繰り返し記号である。このことから、図9に示す楽譜の演奏は、1回目は、普通サイズの音符の楽音を鳴らす演奏を行い、一通り演奏が終了して先頭に戻っての2回目では、サイズが一回り小さい音符が近傍に配置されている音符までは通常サイズの音符の楽音を鳴らし、それ以降は、サイズが一回りサイズが小さい音符の楽音を鳴らすることで行うようになっている。
【0031】
図3に示す楽譜データは、上述したような構成となっている。このため、その表示は、CPU201が、単位シンボルデータ毎に、シンボルナンバーで指定されたシンボルの画像データをROM204から読み出し、その読み出した画像データを必要に応じて、即ちサイズデータの値に応じて加工し、ROM204から読み出した、或いは加工した画像データをX、Yデータで指定されるXY座標に配置していくことで行われる。実際の表示は、1画面分の画像データを生成してから表示装置103のメモリにそれを書き込むことで行っても良く、ROM204から読み出した、或いは加工したシンボルの画像データを随時、そのメモリに書き込んでいくことで行っても良い。
【0032】
なお、演奏データの生成の対象とする楽譜データは、上記のような楽譜データに限定されるものではない。楽譜データが画像データであっても、パターンマッチングなどの手法によって、その画像データで表示されるシンボルの種類やその表示位置を特定することができることから、言い換えれば図6、或いは図7に示すような楽譜データを生成できることから、楽譜データは画像データであっても良い。
【0033】
上述したような構成の楽譜データから生成する演奏データは、以下のような構成となっている。その構成、及び、それの生成方法について、図10〜図12に示す各種説明図を参照して説明する。
【0034】
図10は、上記演奏データの構成を説明する図である。
その演奏データは、図10に示すように、直前のイベントからの経過時間(デルタタイム)で処理タイミングを表す時間データ、イベントの種類を示すコマンドデータ、楽音の音高を指定するノートデータ、及びイベントを生じさせる形態を指定するデータであるデュレーションデータを1イベント分のデータ(以降、単位イベントデータと呼ぶ)として、それを処理順序に従って並べた形で構成されている。本実施の形態では、そのような構成の演奏データを配列変数(変数名はSong Dataである)の形で扱っており、図10中の「Index」(インデックス)の値は配列変数中の要素を指定する引数となる。クレーム中の楽音データは、単位イベントデータから時間データを除いた部分に対応する。
【0035】
上記時間データには、所定の単位時間でデルタタイムを表す値が格納される。本実施の形態では、4分音符の期間を24で割った値に対応する時間を単位時間としている。コマンドデータには、発音開始(ノートオン)、或いは消音(ノートオフ)を示す値などが格納される。本実施の形態では、ノートオンは90H(Hは16進数を表す)、ノートオフは80Hとしている。ノートデータには、ノートオン/オフすべき楽音の音高を示す値(ノートナンバー)が格納される。最後のデュレーションデータには、楽音の発音期間(ゲートタイム)を上記単位時間で表した値が格納される。
【0036】
ノートオン/オフすべき楽音の音高は、音符のY座標値、即ち単位シンボルデータ中のYデータの値に対応する。このことから、本実施の形態では、図11に示すようなY座標値とノートナンバーの対応関係を示すテーブル(以降、音高テーブルと呼ぶ)を制御データとしてROM204に用意している。それにより、楽譜データからの演奏データの生成は、CPU201が、単位シンボルデータ毎に、そのテーブルを参照しつつ、単位イベントデータを生成していくことで行われる。図12に示す演奏データ例は、図7に示す楽譜データから生成したものである。なお、上記音高テーブルは、配列変数NoteNoTableとして扱っている。
【0037】
上述したように、図7に示す楽譜データによって図9に示す楽譜が表示される。その楽譜には、シンボル(繰り返し記号)「D.C.」が配置され、2小節目には、サイズが通常よりも小さい音符が3つ配置されている。その3つの音符は、シンボル「D.C.」によって指定された範囲まで演奏を進行させて曲(楽譜)の先頭に戻り、2回目の演奏に入ってから、2小節目に存在する通常サイズの音符の代わりに鳴らすべき音符である。図12中の2回目分の単位イベントデータは、その2回目の演奏に入ってから鳴らすべき音符の単位シンボルデータから生成したものである。それ以前、即ち1回目分の単位イベントデータは、通常サイズの音符の単位シンボルデータから生成したものである。
【0038】
このようにして、本実施の形態では、シンボル「D.C.」が表す演奏上の操作を演奏データの生成に反映させている。そのように音符以外のシンボルが表す演奏上の操作を演奏データの生成に反映させた場合、楽譜上の音符から単に単位イベントデータを生成する場合とは異なり、高い再現性を実現させることができる。図9に示すような楽譜では、演奏の流れのなかで発音させるべき楽音だけを適切なタイミングで発音させていく演奏データを生成することができる。このため、楽譜データを取得するだけでも非常に参考となる演奏をユーザに聴かせることができる。
【0039】
本実施の形態では、図12から明らかなように、ゲートタイムは、音符の発音期間の1/2としている。4分音符は24単位時間であることから、それのゲートタイムは12としている。デルタタイムについては、複数の楽音を同時に発音させることは前提としていないことから、直前に位置する音符の発音開始タイミングまでの時間としている。2回目の演奏に入って始めに鳴らす小さいサイズの2分音符の直前には2分音符が位置している。このことから、そのデルタタイムは48となっている。
【0040】
なお、楽譜データから生成する演奏データは、図10に示すような演奏データに限定されるものではない。例えばMIDIデータ、或いはそれに類似したデータを用いて構成したものであっても良い。
【0041】
次に、上記楽譜データの変換、及びその変換によって得られた演奏データを再生するためのCPU201の動作について、図13〜図17に示す各種動作フローチャートを参照して詳細に説明する。
【0042】
図13は、楽譜データ変換再生処理の動作フローチャートである。その変換再生処理は、例えばユーザがスイッチ群102を操作して、楽譜データの変換を指示し、その対象としてFD110にファイル形式で格納された楽譜データを指定(選択)した場合に、CPU201がROM204に格納されたプログラムを実行することで実現される処理を抜粋してその流れを表したものである。始めに、図13を参照して、その変換再生処理について詳細に説明する。
【0043】
先ず、ステップ1301では、ユーザが指定した、FD110にファイル形式で格納されている楽譜データの読み取りをFDD206に指示し、それによってFDD206から送られてくるその楽譜データをRAM205に格納する。続くステップ1302では、RAM205に格納した楽譜データを対象にして、それの演奏データを生成する楽譜変換処理を実行する。
【0044】
楽譜変換処理を実行することで、RAM205に演奏データが格納される。ステップ1302に続くステップ1303では、RAM205に格納された楽譜データを表示装置103に表示させるとともに、それの演奏データを再生する再生処理を実行する。その再生処理を実行した後、一連の処理を終了する。
【0045】
演奏データ中の単位イベントデータの処理や、その処理による演奏の進行に合わせた楽譜上の音符の表示色の変更などは、例えばタイマ203が出力する割り込み信号によって起動するタイマインタラプト処理を実行することで行うようになっている。このため、上記再生処理では、実際には、そのタイマインタラプト処理を実行させるうえでの初期設定が行われる。その初期設定の一つとして、タイマ203に、テンポ値に応じた値を設定することにより、ユーザが指定したテンポで演奏データを再生できるようになっている。
【0046】
このように、本実施の形態では、楽譜データをFD110から読み出すと、演奏データの生成、更にはその再生を順次、行うようになっている。それにより、処理の対象となる楽譜データや演奏データが複数、存在しないことから、図3に示す楽譜データ、及び図10に示す演奏データのインデックス値は0からとなっている。
【0047】
図14は、上記ステップ1302として実行される楽譜変換処理の動作フローチャートである。次に、図14を参照して、その変換処理について詳細に説明する。
【0048】
楽譜上に出現するシンボルは、各種の音符や休符、及びシンボル「D.C.」などだけでなく、それら以外にも様々なシンボルが存在している。しかし、ここでは、便宜的に、図7に示す楽譜データ(図9に示す楽譜)から演奏データを生成するために実行される部分に注目し、図14には、その注目した部分だけを抽出してその流れを表している。
【0049】
先ず、ステップ1401では、初期設定を行う。その初期設定により、変数Indexには−1を代入し、変数、SDIndex、Delta、2ndFLAG、及び2ndFには、それぞれ0を代入する。変数Indexは配列変数Score Data(楽譜データ)中の要素を指定する引数として用いる変数であり、変数SDIndexは、配列変数Song Data(演奏データ)中の要素を指定する引数として用いる変数である。変数Deltaは、デルタタイム算出用に用意した変数、2ndFLAG、及び2ndFは、共にシンボル「D.C.」が指示する演奏上の操作を演奏データの生成に反映するために用意した変数である。
【0050】
ステップ1401に続くステップ1402では、変数Indexの値をインクリメントする。その後に移行するステップ1403では、配列変数Score Data中の変数Indexで指定される要素のなかのシンボルナンバーデータ(図中では、Score Data(Index(Symbol#))と表記)が表すナンバーを判定する。変数Indexの値で指定される要素に単位シンボルデータが存在していない場合、その旨が判定されて、ここで一連の処理が終了する。そうでない場合には、そのナンバーが判定され、その判定結果に応じてステップ1404〜1408のうちの何れかに移行する。
【0051】
そのナンバーが52、53、62、或いは0であった場合、ステップ1404〜1407のうちの何れかに移行し、そのステップの処理を実行した後、ステップ1402に戻る。一方、そのナンバーが2であった場合には、ステップ1408に移行して、変数2ndFLAGの値が0か否か判定する。その値が0であった場合、判定はYESとなり、ステップ1409で変数2ndFに1を代入した後、ステップ1402に戻る。そうでない場合には、判定はNOとなり、ステップ1410で変数2ndFに3を代入した後、そのステップ1402に戻る。このように変数2ndFに値を代入するのは、シンボル「D.C.」によって指定される範囲を小節単位で区切るようにしているためである。
【0052】
上述した楽譜変換処理を実行することにより、図7に示す楽譜データから図12に示す演奏データが生成されることになる。次に、その楽譜変換処理内で実行される各種サブルーチン処理について詳細に説明する。
【0053】
図15は、上記ステップ1404として実行される4分音符処理の動作フローチャートである。これは、4分音符の表示を指示する単位シンボルデータからそれに対応する単位イベントデータを生成するための処理である。楽譜変換処理内で実行されるサブルーチン処理では、図15を参照して、始めに4分音符処理について詳細に説明する。
【0054】
先ず、ステップ1501では、配列変数Score Data中の変数Indexで指定される要素のなかのサイズデータ(図中では、Score Data(Index(SymbolSize))と表記)の値が0か否か判定する。変数Indexの値で指定される要素の単位シンボルデータが通常サイズの音符(ここでは4分音符)の表示を指示するものであった場合、判定はYESとなってステップ1502に移行する。そうでない場合には、判定はNOとなってステップ1508に移行する。
【0055】
ステップ1502では、変数2ndFLAGの値が2か否か判定する。その変数には、後述するように、通常サイズよりも小さい音符の単位イベントデータの生成を開始した際に2が代入される。このことから、その生成を開始していた場合、判定はYESとなり、ここで一連の処理を終了する。そうでない場合には、判定はNOとなってステップ1503に移行する。
【0056】
ステップ1503〜ステップ1507では、変数Indexの値が指定する単位シンボルデータから単位イベントデータを生成し、それを変数SDIndexの値が指定する配列変数Song Dataの要素Song Data(SDIndex)に代入・保存するための処理が行われる。
【0057】
先ず、ステップ1503では、配列変数Song Data中の変数SDIndexで指定される要素に、その時間データ(図中では、Song Data(SDIndex(Delta))と表記)の値として変数Deltaの値を代入する。続くステップ1504では、その要素に、そのコマンドデータ(図中では、Song Data(SDIndex(Command))と表記)の値として90Hを代入する。その後、ステップ1505に移行する。
【0058】
ステップ1505では、その要素に、ノートデータの値として、配列変数NoteNoTableのなかで変数Indexの値が指定する単位シンボルデータ中のYデータの値によって指定される要素(図中ではNoteNoTable[Score Data(Index(Y))]で表記)の値を代入する。続くステップ1506では、その要素に、デュレーションデータの値として12を代入する。その代入を行った後は、ステップ1507に移行して、変数Deltaに24を代入し、変数SDIndexの値をインクリメントした後、一連の処理を終了する。
【0059】
一方、ステップ1501の判定がNOとなって移行するステップ1508では、変数2ndFLAGの値が1か否か判定する。その変数の値が1であった場合、判定はYESとなってステップ1509に移行する。そうでない場合には、判定はNOとなってステップ1511に移行する。
【0060】
ステップ1509では、変数SDIndexの値をデクリメントし、変数Deltaに、配列変数Song Data中の変数SDIndexの値で指定される要素の時間データ(図中ではSong Data(SDIndex(Delta))と表記)の値を代入する。続くステップ1510では、変数2ndFLAGに2を代入する。その後は、上述したステップ1503に移行する。
【0061】
上記ステップ1508の判定がNOとなって移行するステップ1511では、変数2ndFLAGの値が2か否か判定する。その変数の値が2であった場合、判定はYESとなってステップ1503に移行する。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0062】
このように、4分音符処理では、通常サイズの音符(4分音符)の単位イベントデータは、変数2ndFLAGの値が2となっていない間、生成するようになっている。反対に、それよりも小さいサイズの音符(4分音符)の単位イベントデータは、その値が0となっていない間、生成するようになっている。それにより、1回目は通常サイズの音符の単位イベントデータのみを生成し、2回目は、小さいサイズの音符が直後に位置していない通常サイズの音符の単位イベントデータは生成し、その小さいサイズの音符が直後に位置している通常サイズの音符以降は、その小さいサイズの音符の単位イベントデータのみを生成するようになっている。
【0063】
図14に示す楽譜変換処理内でステップ1405として実行される2分音符処理は、上記4分音符処理と基本的に同じである。異なるのは、上記ステップ1506で、配列変数Song Data中の変数SDIndexで指定される要素に、デュレーションデータの値として24を代入し、続くステップ1507で変数Deltaに48を代入することだけである。このため、図面を参照しての説明は省略する。
【0064】
図9に示す楽譜では、X座標値が74である通常サイズの4分音符の直後にそれよりも小さいサイズの2分音符が続いている(図7参照)。2回目の演奏では、それまでには小さいサイズの音符は存在していないことから、その2分音符を処理対象とした際に、2分音符処理におけるステップ1501の判定がNOとなり、且つステップ1508の判定がYESとなる。このことから、図9に示す楽譜では、その2分音符を処理対象とした場合にステップ1509に移行し、その直前に位置する通常サイズである4分音符の単位イベントデータの代わりに、その2分音符の単位シンボルデータを保存し、変数2ndFLAGに2を代入することになる。このため、それ以降は、4分音符処理の実行時に、X座標値が101、111のサイズが小さい4分音符の単位イベントデータが生成されることになる。
【0065】
図16は、図14に示す楽譜変換処理内でステップ1406として実行される4分休符処理の動作フローチャートである。次に、図16を参照して、その休符処理について詳細に説明する。
【0066】
4分休符を含む各種の休符は、音のない場所とその長さを表す記号である。音符間に休符が存在していると、その休符分だけ変数Deltaに保持させた値(デルタタイム)を大きくさせる必要がある。その大きさには、音符と同じく、通常サイズとそれよりも小さいサイズとがある。このことから、4分休符処理では、4分休符が配置された位置、そのサイズ、及びそれを処理する状況を考慮しつつ、変数Deltaの値の更新を行うようになっている。
【0067】
先ず、ステップ1601では、配列変数Score Data中の変数Indexで指定される要素のなかのサイズデータ(図中では、Score Data(Index(SymbolSize))と表記)の値が0か否か判定する。変数Indexの値で指定される要素の単位シンボルデータが通常サイズの休符(ここでは4分休符)の表示を指示するものであった場合、判定はYESとなってステップ1602に移行する。そうでない場合には、判定はNOとなってステップ1604に移行する。
【0068】
ステップ1602では、変数2ndFLAGの値が2か否か判定する。その変数の値が2であった場合、判定はYESとなり、ここで一連の処理を終了する。そうでない場合には、判定はNOとなり、次にステップ1603で変数Deltaに、それまでの値に24(4分休符の時間に対応する値)を加算した値を代入した後、一連の処理を終了する。そのようにして、4分休符が通常サイズの大きさであり、それよりも小さいサイズのシンボルを処理対象としていない状況では、変数Deltaの値が示す時間間隔(デルタタイム)を4分休符分だけ長くさせる更新を行う。
【0069】
一方、ステップ1601の判定がNOとなって移行するステップ1604では、変数2ndFLAGの値が1か否か判定する。その変数の値が1であった場合、判定はYESとなってステップ1605に移行する。そうでない場合には、判定はNOとなってステップ1607に移行する。
【0070】
ステップ1605では、変数SDIndexの値をデクリメントし、変数Deltaに、配列変数Song Dataの変数SDIndexの値で指定される要素の時間データ(図中ではSong Data(SDIndex(Delta))と表記)の値を代入する。続くステップ1606では、変数2ndFLAGに2を代入する。その後は、上述したステップ1603に移行し、変数Deltaの値が示す時間間隔(デルタタイム)を4分休符分だけ長くさせる更新を行った後、一連の処理を終了する。
【0071】
上記ステップ1604の判定がNOとなって移行するステップ1607では、変数2ndFLAGの値が2か否か判定する。その変数の値が2であった場合、判定はYESとなってステップ1607に移行し、上述したようにして変数Deltaの値を更新した後、一連の処理を終了する。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0072】
図17は、図14に示す楽譜変換処理内でステップ1407として実行される小節線処理の動作フローチャートである。次に、図17を参照して、その小節線処理について詳細に説明する。
【0073】
上述したように、シンボル「D.C.」によって指定される範囲は小節線で区切るようにしている。このことから、小節線処理では、そのシンボルが指示する曲の先頭に戻るという演奏上の操作を演奏データ上で実現させるための各種設定、即ち各種変数への値の代入が状況に応じて行うようになっている。
【0074】
先ず、ステップ1701では、変数2ndFの値が1か否か判定する。その変数には、シンボル「D.C.」を最初に処理した際に1が代入される(図14参照)。このことから、そのシンボル「D.C.」の直後に位置する小節線を初めて処理対象とした場合、判定はYESとなり、ステップ1702で変数2ndFLAGに1、変数Indexに−1、及び変数2ndFに2をそれぞれ代入した後、ステップ1703に移行する。そうでない場合には、判定はNOとなり、ステップ1705に移行する。
【0075】
ステップ1703では、変数2ndFLAGの値が2か否か判定する。その変数に2が代入されていた場合、判定はYESとなり、ステップ1704で変数2ndFLAGに0を代入した後、一連の処理を終了する。そうでない場合には、判定はNOとなり、ここで一連の処理が終了する。
【0076】
一方、ステップ1701の判定がNOとなって移行するステップ1705では、変数2ndFの値が3か否か判定する。図14に示すように、シンボル「D.C.」を2回、処理対象とした際に変数2ndFには3が代入される。このことから、そのシンボル「D.C.」の直後に位置する小節線を2回、処理対象とした場合、判定はYESとなり、ステップ1703に移行する。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0077】
ステップ1705→1703に移行したときには、通常、変数2ndFLAGには2が代入されている。このため、ステップ1703の判定はYESとなり、変数2ndFLAGには0が代入されることになる。それにより、シンボル「D.C.」が配置された楽譜では、そのシンボルによって指定される範囲を2度、繰り返し演奏する演奏データが生成されることになる。このため、図7に示す楽譜データからは図12に示す演奏データが生成される。
<第2の実施の形態>
上記第1の実施の形態では、楽譜データが表す演奏を再生するために必要なデータのみを生成して演奏データを構成させている。これに対し、第2の実施の形態は、その演奏データに、演奏の再生に直接的に係わらないデータを生成して挿入するようにしたものである。
【0078】
第2の実施の形態による楽譜データ変換装置を搭載した電子楽器の構成は、基本的に上記第1の実施の形態における電子楽器のそれと同じである。また、各部の動作も基本的には同じである。このことから、第1の実施の形態の説明で付した符号をそのまま用いて、第1の実施の形態から異なる部分についてのみ説明することにする。
【0079】
シンボル「D.C.」が存在する楽譜の演奏では、同じ部分を繰り返し演奏することになる。その繰り返しのために、演奏と楽譜との対応がとりにくい人も多いと考えられる。このようなことから、第2の実施の形態では、演奏データ中に、楽譜上の演奏位置を示す情報を単位イベントデータとして挿入するようにしている。
【0080】
図7に示すように、楽譜データ中には、小節線の表示を指示する単位シンボルデータが存在している。第2の実施の形態では、その単位シンボルデータから、それが表示を指示する小節線の単位イベントデータを生成し、その単位イベントデータに、その小節線によって区切られた小節を示す情報を格納するようにしている。その小節を示す情報は、楽譜先頭からの小節数とし、その小節数をノートデータとして格納している。コマンドデータの値は00Hとしている。時間データには変数Deltaの値を格納している。
【0081】
小節線の単位イベントデータを含む、楽譜データからの演奏データの生成は、第1の実施の形態と同じく、CPU201が楽譜データ変換再生処理を実行することで行われる。第2の実施の形態における楽譜データ変換再生処理は、図13に示す第1の実施の形態におけるそれから、ステップ1302、及び1303の処理が異なる。それ以外のステップの処理は基本的に同じである。このことから、ステップ1302、及び1303についてのみ説明する。
【0082】
ステップ1302では楽譜変換処理が実行される。第2の実施の形態における楽譜変換処理は、図14に示す第1の実施の形態におけるそれから、ステップ1401、及び1407の処理が異なる。それ以外のステップの処理は基本的に同じである。このことから、楽譜変換処理では、ステップ1401、及び1407についてのみ説明する。
【0083】
第2の実施の形態では、小節数のカウントを行うために変数Barを用意している。ステップ1401では、上述した各種変数への値の代入に加え、その変数Barに0を代入している。
【0084】
図18は、上記ステップ1407として実行される小節線処理の動作フローチャートである。次に、図18を参照して、第2の実施の形態における小節線処理について詳細に説明する。
【0085】
第1の実施の形態における小節線処理では、シンボル「D.C.」が指示する曲の先頭に戻るという演奏上の操作を演奏データ上で実現させるための各種設定、即ち各種変数への値の代入を状況に応じて行うようになっている。第2の実施の形態では、それに加え、小節線の単位イベントデータの生成、及びそれに係わる各種設定を行うようになっている。
【0086】
先ず、ステップ1801では、変数2ndFの値が1か否か判定する。シンボル「D.C.」の直後に位置する小節線を初めて処理対象とした場合、判定はYESとなり、ステップ1802で変数2ndFLAGに1、変数Indexに−1、変数2ndFに2、及び変数Barに0をそれぞれ代入した後、ステップ1803に移行する。そうでない場合には、判定はNOとなり、ステップ1809に移行する。
【0087】
ステップ1803では、変数2ndFLAGの値が2か否か判定する。その変数に2が代入されていた場合、判定はYESとなり、ステップ1804で変数2ndFLAGに0を代入した後、ステップ1805に移行する。そうでない場合には、判定はNOとなり、そのステップ1805に移行する。
【0088】
ステップ1805では、変数Barの値をインクリメントする。続くステップ1806では、配列変数Song Data中の変数SDIndexで指定される要素に、その時間データ(図中では、Song Data(SDIndex(Delta))と表記)の値として変数Deltaの値を代入する。その代入後は、ステップ1807でその要素に、そのコマンドデータ(図中では、SongData(SDIndex(Command))と表記)の値として00Hを代入する。その次に移行するステップ1808では、その要素に、ノートデータ(図中では、Song Data(SDIndex(Note#))と表記)の値として、変数Barの値を代入する。その代入の他には、変数SDIndexの値をインクリメントし、変数Deltaには0を代入する。そのような変数の値の更新を行った後、一連の処理を終了する。
【0089】
一方、ステップ1801の判定がNOとなって移行するステップ1809では、変数2ndFの値が3か否か判定する。シンボル「D.C.」の直後に位置する小節線を2回、処理対象とした場合、判定はYESとなり、ステップ1803に移行する。そうでない場合には、判定はNOとなり、ステップ1805に移行する。
【0090】
演奏データの再生時に、演奏データ中に挿入された小節線の単位イベントデータの内容を表示させるようにすると、現在、楽譜中のどこを演奏中なのかをユーザは随時、確認することができるようになる。このため、ユーザにとっての利便性をより向上させられるという効果が得られる。
【0091】
なお、本実施の形態(第1および第2の実施の形態)では、シンボル「D.C.」によって指示される演奏上の操作を演奏データの生成に反映させているが、演奏データの生成に反映させるシンボルはそれに限定されるものではない。例えば図19に示す楽譜上に配置されているクレシェンドやデクレシェンド・アクセントなどの強弱記号を演奏データの生成に反映させても良い。その反映は、例えば単位イベントデータに、楽音を発音させる際の強さ(ベロシティ値)をデータとして加えれば行えるようになる。それ以外には、図20に示すように、速度記号やリタルダンドといった演奏速度の変更を指示する記号を演奏データの生成に反映させても良い。その反映は、例えば単位イベントデータ中の時間データの値を操作することで行うことができる。
【0092】
また、本実施の形態では、音符間の時間間隔(デルタタイム)を直前の音符、それとの間に存在する休符、などから求めているが、そのようにシンボルが示す時間から求めなくても良い。デルタタイムは、例えば音符のX座標値、小節線間の間隔、音部記号などを基に求めても良い。
【0093】
本実施の形態は電子楽器に搭載された楽譜データ変換装置に本発明を適用したものであるが、本発明を適用できる楽譜データ変換装置はそれに限定されるものではない。楽譜(楽譜データ)を生成する機能、それを受信する機能、或いは記録媒体から読み出す機能を搭載することで楽譜データを取得できる装置であれば、本発明は幅広く適用させることができる。高い再現性を有する演奏データを生成できることから、楽譜を表示できるカラオケ装置や、演奏すべき楽譜を表示したり、その演奏を行ったりする音楽教育用の装置などに本発明を適用させても良い。そのような装置が通信回線を介して楽譜データを受信する機能を搭載しているのであれば、演奏データを必ずしも受信する必要はないことから、より短い時間で必要なデータを受信することができる。これは、その通信回線が公衆網などの送信(通話)時間で料金を課金する回線であれば、データの受信にかかる費用がより低く抑えられることを意味する。
【0094】
上記楽譜データ変換装置の動作を実現させるようなプログラムは、CD−ROM、フロッピーディスク、或いは光磁気ディスク等の記録媒体に記録させて配布しても良い。或いは、公衆網等の通信回線を用いて、そのプログラムの一部、若しくは全部を配信するようにしても良い。そのようにした場合には、ユーザはプログラムを取得して任意の楽譜データ変換装置、或いはコンピュータ等のデータ処理装置にロードすることにより、その装置に本発明を適用させることができる。このことから、記録媒体は、プログラムを配信する装置がアクセスできるものであっても良い。
【0095】
【発明の効果】
以上、説明したように本発明は、楽譜データによって表示される楽譜上に配置されるシンボルを音符か否かによって少なくとも2つに大別し、音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、音符が表す楽音の発音を指示するための単位演奏データを生成していくことで演奏データを生成する。このため、その再生時において、反復記号や繰り返し記号、強弱記号、或いは速度記号といった楽譜上に出現するシンボルによって指示される演奏上の操作を表現する、高い再現性を有する演奏データを生成することができる。
【図面の簡単な説明】
【図1】第1の実施の形態による楽譜データ変換装置を搭載した電子楽器の外観図である。
【図2】第1の実施の形態による楽譜データ変換装置を搭載した電子楽器の回路構成図である。
【図3】楽譜データの構成を説明する図である。
【図4】シンボルに割り当てたナンバーを説明する図である。
【図5】シンボルの表示方法を説明するための図である。
【図6】楽譜データ例を示す図である(その1)。
【図7】楽譜データ例を示す図である(その2)。
【図8】楽譜表示例を示す図である(その1)。
【図9】楽譜表示例を示す図である(その2)。
【図10】演奏データの構成を説明する図である。
【図11】Y座標値とノートナンバーの対応関係を示す図である。
【図12】楽譜データから生成された演奏データ例を示す図である。
【図13】楽譜データ変換再生処理の動作フローチャートである。
【図14】楽譜変換処理の動作フローチャートである。
【図15】4分音符処理の動作フローチャートである。
【図16】4分休符処理の動作フローチャートである。
【図17】小節線処理の動作フローチャートである。
【図18】小節線処理の動作フローチャートである(第2の実施の形態)。
【図19】他の楽譜表示例を示す図である(その1)。
【図20】他の楽譜表示例を示す図である(その2)。
【符号の説明】
102 スイッチ群
103 表示装置
110 フロッピーディスク
201 CPU
204 ROM
205 RAM
206 フロッピーディスクドライブ
207 音源
208 サウンドシステム
Claims (2)
- 楽譜表示用の楽譜データが表す演奏を再生させるための演奏データを生成することにより、該楽譜データを該演奏データに変換する装置であって、
前記楽譜データとして、前記楽譜上に出現するシンボルの種類を示すシンボルデータ毎に、該シンボルデータが示すシンボルの楽譜上における表示位置を指定する位置データを少なくとも付加されて構成される楽譜データを取得する楽譜データ取得手段と、
前記楽譜データ取得手段が取得した楽譜データを構成するシンボルデータを、該シンボルデータが示すシンボルが音符か否かによって少なくとも分類し、該シンボルデータが示す音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、該音符を示すシンボルデータ、及びそれに付加された位置データから、発音させるべき楽音を示す楽音データ、及び該楽音の発音タイミングを示す時間データからなる単位演奏データを生成していくことにより前記演奏データを生成する演奏データ生成手段と、を具備した楽譜データ変換装置において、
前記演奏データ生成手段は、前記楽譜データによって表示される楽譜上に、大きさが異なる音符、及び繰り返し記号が配置されている場合、該繰り返し記号によって指定される範囲内に存在する音符を示すシンボルデータを参照しての単位演奏データの生成は、1回目は大きいほうの音符を示すイベントデータのみを参照して行い、2回目は小さいほうの音符を示すイベントデータも参照して行うことにより、該繰り返し記号が指示する演奏上の操作を前記演奏データの生成に反映させる、
ことを特徴とする楽譜データ変換装置。 - 楽譜表示用の楽譜データとして、楽譜上に出現するシンボルの種類を示すシンボルデータ毎に、該シンボルデータが示すシンボルの楽譜上における表示位置を指定する位置データを少なくとも付加されて構成される楽譜データを取得する楽譜データ取得手段と、
前記楽譜データ取得手段により取得された楽譜データを構成するシンボルデータを、該シンボルデータが示すシンボルが音符か否かによって少なくとも分類し、該シンボルデータが示す音符以外のシンボルによって指示される演奏上の操作を必要に応じて反映させつつ、該音符を示すシンボルデータ、及びそれに付加された位置データから、発音させるべき楽音を示す楽音データ、及び該楽音の発音タイミングを示す時間データからなる単位演奏データを生成していくことにより前記演奏データを生成し、前記楽譜データによって表示される楽譜上に、大きさが異なる音符、及び繰り返し記号が配置されている場合、該繰り返し記号によって指定される範囲内に存在する音符を示すシンボルデータを参照しての単位演奏データの生成は、1回目は大きいほうの音符を示すイベントデータのみを参照して行い、2回目は小さいほうの音符を示すイベントデータも参照して行うことにより、該繰り返し記号が指示する演奏上の操作を前記演奏データの生成に反映させる演奏データ生成手段と、
を実現させるプログラムを記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000086024A JP3837994B2 (ja) | 2000-03-27 | 2000-03-27 | 楽譜データ変換装置、及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000086024A JP3837994B2 (ja) | 2000-03-27 | 2000-03-27 | 楽譜データ変換装置、及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001272980A JP2001272980A (ja) | 2001-10-05 |
JP3837994B2 true JP3837994B2 (ja) | 2006-10-25 |
Family
ID=18602256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000086024A Expired - Fee Related JP3837994B2 (ja) | 2000-03-27 | 2000-03-27 | 楽譜データ変換装置、及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3837994B2 (ja) |
-
2000
- 2000-03-27 JP JP2000086024A patent/JP3837994B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001272980A (ja) | 2001-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7091410B2 (en) | Apparatus and computer program for providing arpeggio patterns | |
US20030051595A1 (en) | Chord presenting apparatus and chord presenting computer program | |
JPH06259065A (ja) | 電子楽器 | |
JPH06332449A (ja) | 電子楽器の歌声再生装置 | |
JP3837994B2 (ja) | 楽譜データ変換装置、及び記録媒体 | |
JP6790362B2 (ja) | 電子音響装置 | |
JP2001184060A (ja) | パート選択装置 | |
JP5200368B2 (ja) | アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム | |
JP2972364B2 (ja) | 音楽的情報処理装置及び音楽的情報処理方法 | |
US6548748B2 (en) | Electronic musical instrument with mute control | |
JP4449370B2 (ja) | 自動伴奏生成装置及びプログラム | |
JP4835434B2 (ja) | 演奏パターン再生装置及びそのコンピュータプログラム | |
JPH0822282A (ja) | ギター自動伴奏装置 | |
JP4186855B2 (ja) | 楽音制御装置及びプログラム | |
JP2007178890A (ja) | 自動演奏装置 | |
JP3986751B2 (ja) | 楽音演奏装置 | |
JP4218566B2 (ja) | 楽音制御装置及びプログラム | |
JP3399333B2 (ja) | 楽音制御装置 | |
JP3407563B2 (ja) | 自動演奏装置及び自動演奏方法 | |
JP3356326B2 (ja) | 電子楽器 | |
JP3577852B2 (ja) | 自動演奏装置 | |
JPH06161438A (ja) | 電子楽器のデータ入力装置 | |
JP2004347879A (ja) | 演奏処理装置、及びプログラム | |
JP2005010458A (ja) | 自動アルペジオ装置および同装置に適用されるコンピュータプログラム | |
JPH0830273A (ja) | 電子楽器のテンポ設定装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050624 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060530 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060613 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060622 |
|
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: 20060711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060724 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110811 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120811 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120811 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130811 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |