(57)【要約】      （修正有）【課題】弾くべき鍵とその鍵を弾くタイミングとをガイドする演奏案内装置を提供する。【解決手段】ＣＰＵ１３は、イベントタイミング毎に歩進される読み出しアドレスに応じて曲データを読み出し、読み出した曲データがノートオンイベントの場合、当該ノートオンイベントに含まれる音高に対応する鍵に配設されるカラーＬＥＤを赤色点灯させて弾くべき鍵をユーザにガイドすると共に、ポインタの加算に応じて歩進される読み出しアドレスに基づき先読み出ししたタイムΔＴ（次イベントまでの経過時間）をレジスタにセットする一方、先読み出しした次ノートオンイベントに含まれる音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを、レジスタの値に応じて色テーブルから読み出される発光色で点灯させて次に弾くべき鍵とその鍵を弾くタイミングとをガイドする。【選択図】図１
2013160871.tif 000002
【特許請求の範囲】
【請求項１】
曲を構成する各音の音高及び発音タイミングから成る曲データを記憶する曲データ記憶手段と、
前記曲データ記憶手段から各音の音高及び発音タイミングを順次読み出す読み出し手段と、
前記読み出し手段により読み出された音の音高に対応する演奏操作子を前記読み出された発音タイミングに基づいてガイドする第１のガイド手段と、
前記読み出し手段により読み出された音に続く次の音の音高及び発音タイミングを前記曲データ記憶手段から先読み出しする先読み出し手段と、
前記先読み出し手段により先読み出しされた次の音の音高に対応する演奏操作子をガイドするとともに、前記読み出し手段により読み出された音の発音タイミングと前記先読み出し手段により先読み出しされた次の音の発音タイミングとの差に基づき、当該ガイドの形態を制御する第２のガイド手段と
を具備する演奏案内装置。
【請求項２】
前記演奏案内装置はさらに、前記演奏操作子の夫々に発光手段が設けられ、
前記第１のガイド手段は、前記読み出された音の音高に対応する演奏操作子に設けられた発光手段を発光させ、
前記第２のガイド手段は、前記先読み出された次の音の音高に対応する演奏操作子に設けられた発光手段を発光させるとともに、当該発光手段の発光色、発光輝度及び発光間隔の少なくともひとつを変更することにより、発光形態を制御する、請求項１記載の演奏案内装置。
【請求項３】
曲を構成する各音の音高及び発音タイミングから成る曲データを記憶する曲データ記憶手段を有するコンピュータに、
前記曲データ記憶手段から各音の音高及び発音タイミングを順次読み出す読み出しステップと、
前記読み出された音の音高に対応する演奏操作子を前記読み出された発音タイミングに基づいてガイドする第１のガイドステップと、
前記読み出された音に続く次の音の音高及び発音タイミングを前記曲データ記憶手段から先読み出しする先読み出しステップと、
前記先読み出しされた次の音の音高に対応する演奏操作子をガイドするとともに、前記読み出された音の発音タイミングと前記先読み出しされた次の音の発音タイミングとの差に基づき、当該ガイドの形態を制御する第２のガイドステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザに弾くべき鍵とその鍵を弾くタイミングとをガイドする演奏案内装置およびプログラムに関する。
【背景技術】
【０００２】
発音すべき音高とその発音タイミングとを表す曲データに基づき、鍵盤の各鍵に設けられたＬＥＤ（発光素子）の内、発音すべき音高の鍵に配設されるＬＥＤを発音タイミングに対応して点灯させて演奏者に弾くべき鍵をガイドする装置が知られている。この種の装置として、例えば特許文献１には、発音タイミングを過ぎてもガイドされた鍵が押鍵されない時にはそのガイドされた鍵が押鍵されるまで曲データの読み出しを停止させ、発音タイミング前にガイドされた鍵を押鍵した時にはその発音タイミングまで曲データを早送りさせる装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２０６９６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に開示の装置では、弾くべき鍵の押鍵タイミングに応じて、曲データの読み出しを停止させたり曲データを早送りしたりするだけなので、ユーザに弾くべき鍵とその鍵を弾くタイミングとをガイドすることが出来ないという問題がある
【０００５】
本発明は、このような事情に鑑みてなされたもので、ユーザに弾くべき鍵とその鍵を弾くタイミングとをガイドすることができる演奏案内装置およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の演奏案内装置は、曲を構成する各音の音高及び発音タイミングから成る曲データを記憶する曲データ記憶手段と、前記曲データ記憶手段から各音の音高及び発音タイミングを順次読み出す読み出し手段と、前記読み出し手段により読み出された音の音高に対応する演奏操作子を前記読み出された発音タイミングに基づいてガイドする第１のガイド手段と、前記読み出し手段により読み出された音に続く次の音の音高及び発音タイミングを前記曲データ記憶手段から先読み出しする先読み出し手段と、前記先読み出し手段により先読み出しされた次の音の音高に対応する演奏操作子をガイドするとともに、前記読み出し手段により読み出された音の発音タイミングと前記先読み出し手段により先読み出しされた次の音の発音タイミングとの差に基づき、当該ガイドの形態を制御する第２のガイド手段とを具備することを特徴とする。
【発明の効果】
【０００７】
本発明では、ユーザに弾くべき鍵とその鍵を弾くタイミングとをガイドすることができる。
【図面の簡単な説明】
【０００８】
【図１】実施の一形態による演奏案内装置１００の構成を示すブロック図である。
【図２】曲データの構成を示す図である。
【図３】色テーブルＣＴ（ｔ）の一例を示す図である。
【図４】メインルーチンの動作を示すフローチャートである。
【図５】スイッチ処理の動作を示すフローチャートである。
【図６】ガイドＳＷ処理の動作を示すフローチャートである。
【図７】ガイド処理の動作を示すフローチャートである。
【図８】ガイド処理の動作を示すフローチャートである。
【図９】鍵盤処理の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態について説明する。
Ａ．構成
図１は、実施の一形態による演奏案内装置１００の構成を示すブロック図である。この図において、鍵盤１０は押離鍵操作（演奏操作）に応じたキーオン／キーオフイベント、ノートナンバ（又は鍵番号）およびベロシティ等の演奏情報を発生する。
【００１０】
ガイド表示部１１は、鍵盤１０の各鍵毎に設けられるカラーＬＥＤ（発光素子）と、これらカラーＬＥＤを点灯駆動するドライバ（不図示）とから構成され、ＣＰＵ１３から供給される制御信号に従って指定される鍵のカラーＬＥＤを、指定色で点灯して弾くべき鍵とその鍵を弾くタイミングとをユーザにガイドする。
【００１１】
操作部１２は、装置パネルに配設される各種操作スイッチを有し、ユーザ操作されるスイッチ種に対応したスイッチイベントを発生する。操作部１２に配設される主要なスイッチとしては、例えば装置電源をパワーオン／パワーフする電源スイッチの他、ガイド（演奏案内）の開始・停止を指示するガイドスイッチ等がある。ガイドスイッチの操作に対応した処理動作の詳細については追って述べる。
【００１２】
ＣＰＵ１３は、ガイドスイッチのオン操作によりガイドの開始が指示された場合、ＲＡＭ１５に格納される曲データ（後述する）に基づきユーザに弾くべき鍵とその鍵を弾くタイミングとをガイドするようガイド表示部１１を表示制御すると共に、そのガイドに従ったユーザの押離鍵操作に応じて鍵盤１０から出力される演奏情報に対応したイベント（ノートオン／ノートオフ）を発生して音源１７に供給する。
【００１３】
ＲＯＭ１４には、ＣＰＵ１３にロードされる各種の制御プログラムが記憶される。各種の制御プログラムとは、後述するメインルーチン、スイッチ処理（ガイドスイッチ処理）、ガイド処理および鍵盤処理を含む。ＲＡＭ１５はワークエリアおよびデータエリアを備える。ＲＡＭ１５のワークエリアには、ＣＰＵ１３の処理に使用される各種レジスタ・フラグデータが一時記憶される。ＲＡＭ１５のデータエリアには、曲データと色テーブルＣＴ（ｔ）とが格納される。
【００１４】
図２は、ＲＡＭ１５のデータエリアに格納される曲データの構成を示す図である。曲を構成する各音を表す曲データは、タイムΔＴとイベントＥＶＥＮＴとが組となって曲進行に対応した時系列のアドレス順に記憶される、いわゆる相対時間方式と呼ばれるデータ形式で形成され、その終端には曲の終わりを表すＥＮＤデータが設けられる。
【００１５】
タイムΔＴは、前イベントＥＶＥＮＴからの経過時間で次イベントＥＶＥＮＴの実行タイミングを表す。なお、曲データ先頭のタイムΔＴは、曲開始時点からの経過時間で先頭のイベントＥＶＥＮＴの実行タイミングを規定する。イベントＥＶＥＮＴは、主に発音を指示すると共に、発音音高を表すノートナンバを含むノートオンイベントあるいは消音を指示すると共に、消音音高を表すノートナンバを含むノートオフイベントから構成され、曲内容によっては例えば音色変更を指示するプログラムチェンジなどを有する。
【００１６】
また、ＲＡＭ１５のデータエリアには、図３に図示する一例の色テーブルＣＴ（ｔ）が格納される。色テーブルＣＴ（ｔ）は、曲時間ｔに対応したＬＥＤ発光色を指定する。曲時間ｔは、現時点（現イベントＥＶＥＮＴ）から次イベントＥＶＥＮＴの音を弾くまでの時間（ティック数）を表す。例えば曲のタイムベース（分解能）が「９６」である場合に、現時点から次の音を弾くまでの時間（ティック数）が「０〜２４」ならばＬＥＤ発光色を「黄色」、「２５〜４８」ならばＬＥＤ発光色を「緑色」、「４９〜７２」ならばＬＥＤ発光色を「青色」、「７３〜９６（次拍タイミング）」ならばＬＥＤ発光色を「紫色」をそれぞれ指定する。こうした色テーブルＣＴ（ｔ）を用いた処理動作については追って述べる。
【００１７】
表示部１６は、カラーＬＣＤパネル等から構成され、ＣＰＵ１３から供給される表示制御信号に応じて装置全体の動作モードや各種設定状態を表示する。音源１７は、周知の波形メモリ読み出し方式によって構成され、ＣＰＵ１３から供給されるノートオン／ノートオフイベントに応じて楽音形成する。サウンドシステム１８は、音源１７から出力される楽音データをアナログ形式の楽音信号に変換した後、その楽音信号から不要ノイズを除去する等のフィルタリングを施してからレベル増幅してスピーカより発音させる。
【００１８】
Ｂ．動作  
次に、図４〜図９を参照して上記構成による実施形態の動作について説明する。以下では、ＣＰＵ１３が実行するメインルーチン、スイッチ処理、ガイド処理および鍵盤処理の各動作について述べる。
【００１９】
（１）メインルーチンの動作
図４はメインルーチンの動作を示すフローチャートである。演奏案内装置１００がパワーオンされると、ＣＰＵ１３は図４に図示するメインルーチンを実行してステップＳＡ１に処理を進め、ＲＡＭ１５のワークエリアに格納される各種レジスタやフラグデータをゼロリセットしたり、初期値セットするイニシャライズを行う。
【００２０】
イニシャライズが完了すると、ＣＰＵ１３はステップＳＡ２に進み、スイッチ処理を実行する。スイッチ処理では、後述するように、ガイドスイッチのオン操作に応じてガイドの開始が指示された場合には、ＲＡＭ１５に格納される曲データの内、最初のノートオンイベントに含まれる音高（ノートナンバ）に対応した鍵に配設されるカラーＬＥＤを赤色点灯させて最初に弾くべき鍵をガイドすると共に、最小単位時間（ティック）を計時するタイマインタラプトをスタートさせ、一方、ガイドスイッチのオン操作に応じてガイドの停止が指示された場合には、各鍵に配設される全てのカラーＬＥＤを消灯させると共に、タイマインタラプトを停止させる。
【００２１】
続いて、ステップＳＡ３では、ガイド処理を実行する。ガイド処理では、後述するように、イベントタイミング毎に、歩進された読み出しアドレスＧＡＤに応じて曲データを読み出し、読み出した曲データがノートオンイベントの場合、前回先読み出しされてレジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）を、レジスタＮＯＴＥにストアし、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを赤色点灯させることで弾くべき鍵をユーザにガイドすると共に、ポインタｍの加算に応じて歩進される読み出しアドレス（ＧＡＤ＋ｍ）に基づき先読み出ししたタイムΔＴ（次イベントまでの経過時間）をレジスタｔにセットする一方、先読み出しした次ノートオンイベントに含まれる音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを、レジスタｔの値に応じて色テーブルＣＴ（ｔ）（図３参照）から読み出される発光色で点灯させることで次に弾くべき鍵とその鍵を弾くタイミングとをユーザにガイドする。
【００２２】
そして、ステップＳＡ４では、鍵盤処理を実行する。鍵盤処理では、後述するように、押鍵操作に応じたキーオンイベントが発生すると、押鍵された鍵のノートナンバを含むノートオンイベント作成して音源１７に供給し、押鍵された鍵の音高の楽音を発音させた後、ガイドされた鍵が押鍵されたどうかを判断し、ガイドされた鍵が押鍵されたならば、タイマインタラプトの禁止を解除して前述のガイド処理を進行させ、一方、ガイドされた鍵とは異なる鍵が押鍵されたら、タイマインタラプトの禁止を解除せずに前述のガイド処理の進行を止める。また、離鍵操作に応じたキーオフイベントが発生すると、離鍵された鍵のノートナンバを含むノートオフイベント作成して音源１７に供給し、離鍵された鍵の音高の楽音を消音させる。
【００２３】
次いで、ステップＳＡ５では、例えば発生楽音にエフェクトを付加する等の、その他の処理を実行した後、上記ステップＳＡ２に処理を戻す。以後、演奏案内装置１００がパワーオフされるまで上記ステップＳＡ２〜ＳＡ５の各処理を順次繰り返し実行する。
【００２４】
（２）スイッチ処理の動作
次に、図５を参照してスイッチ処理の動作を説明する。上述したメインルーチンのステップＳＡ２（図４参照）を介して本処理が実行されると、ＣＰＵ１３は図５に図示するスイッチ処理を実行し、ステップＳＢ１を介してガイドスイッチ処理（後述する）を実行し、続くステップＳＢ２では、例えば音色選択スイッチ操作に応じて発生楽音の音色を変更する等の、その他のスイッチ処理を実行する。
【００２５】
（３）ガイドスイッチ処理の動作
図６は、ガイドスイッチ処理の動作を示すフローチャートである。上記スイッチ処理のステップＳＢ１（図５参照）を介して本処理が実行されると、ＣＰＵ１３は図６に図示するステップＳＣ１に処理を進め、ガイドスイッチがオン操作されたか否かを判断する。ガイドスイッチがオン操作されなければ、判断結果は「ＮＯ」になり、本処理を終えるが、オン操作されると、判断結果が「ＹＥＳ」となり、次のステップＳＣ２に進む。
【００２６】
ステップＳＣ２では、ガイドフラグＧＦを反転する。ガイドフラグＧＦとは、「１」の場合にガイド（演奏案内）の開始を表し、「０」の場合にガイドの停止を表すフラグである。すなわち、ガイドスイッチはオン操作される毎に「ガイドの開始」、「ガイドの停止」を交互に指示する所謂トグルスイッチである為、オン操作される毎にガイドフラグＧＦを反転させるようになっている。
【００２７】
そして、ステップＳＣ３では、反転されたガイドフラグＳＴＦが「１」、つまりガイドの開始であるか否かを判断する。ガイドの開始ならば、判断結果は「ＹＥＳ」になり、後述のステップＳＣ６〜ＳＣ１３を実行し、一方、ガイドの停止であると、判断結果が「ＮＯ」になり、後述のステップＳＣ４〜ＳＣ５を実行する。以下、ガイドの停止が指示された場合と、ガイドの開始が指示された場合とに分けて動作説明を進める。
【００２８】
＜ガイドの停止が指示された場合＞
ガイドの停止が指示されると、上記ステップＳＣ３の判断結果は「ＮＯ」になり、ステップＳＣ４に進み、鍵盤１０の各鍵に配設される全てのカラーＬＥＤを消灯するようガイド表示部１１に指示する。そして、ステップＳＣ５では、所定周期毎にタイマクロックをカウントするタイマインタラプトを禁止して本処理を終える。なお、ＣＰＵ１３では、図示していないタイマインタラプト（タイマ割り込み処理）によりタイマクロックをカウントして最小単位時間（ティック）を計時するようになっている。
【００２９】
＜ガイドの開始が指示された場合＞
一方、ガイドの開始が指示されると、上記ステップＳＣ３の判断結果は「ＹＥＳ」になり、ステップＳＣ６に進み、ＲＡＭ１５のデータエリアに格納された曲データ（図２参照）の開始アドレスをレジスタＧＡＤにストアする。以下、レジスタＧＡＤの内容を読み出しアドレスＧＡＤと称す。次いで、ステップＳＣ７では、読み出しアドレスＧＡＤに応じて読み出される曲データ、すなわち先頭データであるタイムΔＴをレジスタＴにストアする。
【００３０】
そして、ステップＳＣ８に進むと、ポインタｍに初期値「１」をセットし、続くステップＳＣ９では、ポインタｍを加算した読み出しアドレス（ＧＡＤ＋ｍ）に応じて先読み出しされる曲データがノートオンイベントであるか否かを判断する。先読み出しされた曲データがノートオンイベントでなければ、判断結果は「ＮＯ」になり、ステップＳＣ１０に進み、ポインタｍをインクリメントして歩進させた後、上記ステップＳＣ９に処理を戻す。
【００３１】
一方、先読み出しされた曲データがノートオンイベントであると、上記ステップＳＣ９の判断結果は「ＹＥＳ」になり、ステップＳＣ１１に進み、読み出されたノートオンイベントに含まれる音高（ノートナンバ）を、レジスタＮＯＴＥおよびレジスタＮＥＸＴＮＯＴＥにストアする。次いで、ステップＳＣ１２では、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを赤色点灯するようガイド表示部１１に指示する。これにより、最初に弾くべき鍵がガイドされる。この後、ステップＳＣ１３に進み、タイマインタラプト禁止を解除して、最小単位時間（ティック）を計時するタイマインタラプトをスタートさせる。
【００３２】
このように、ガイドスイッチ処理では、ガイドスイッチのオン操作に応じてガイドの開始が指示された場合には、ＲＡＭ１５に格納される曲データの内、最初のノートオンイベントに含まれる音高（ノートナンバ）に対応した鍵に配設されるカラーＬＥＤを赤色点灯させて最初に弾くべき鍵をガイドすると共に、最小単位時間（ティック）を計時するタイマインタラプトをスタートさせ、一方、ガイドスイッチのオン操作に応じてガイドの停止が指示された場合には、各鍵に配設される全てのカラーＬＥＤを消灯させると共に、タイマインタラプトを停止させる。
【００３３】
（４）ガイド処理の動作
次に、図７〜図８を参照してガイド処理の動作を説明する。前述したメインルーチンのステップＳＡ３（図４参照）を介して本処理が実行されると、ＣＰＵ１３は図７に図示するステップＳＤ１に進み、ガイドフラグＧＦが「１」、つまりガイドの開始であるか否かを判断する。ガイドの停止（ガイドフラグＧＦが「０」）ならば、判断結果は「ＮＯ」になり、本処理を終えるが、ガイドの開始であると、判断結果は「ＹＥＳ」になり、ステップＳＤ２に進む。
【００３４】
ステップＳＤ２では、最小単位時間（ティック）が経過したかどうかを判断する。最小単位時間（ティック）が経過していなければ、判断結果は「ＮＯ」になり、本処理を終えるが、最小単位時間（ティック）が経過していると、判断結果は「ＹＥＳ」になり、ステップＳＤ３に進む。ステップＳＤ３では、レジスタＴの値（タイムΔＴ）をデクリメントする。そして、ステップＳＤ４では、デクリメントされたレジスタＴの値が「０」以下であるか否か、つまりイベントタイミングに達したかどうかを判断する。イベントタイミングに達していなければ、判断結果は「ＮＯ」となり、本処理を終える。
【００３５】
これに対し、イベントタイミングに達していれば、上記ステップＳＤ４の判断結果は「ＹＥＳ」になり、ステップＳＤ５に進み、読み出しアドレスＧＡＤを歩進させ、続くステップＳＤ６では、歩進された読み出しアドレスＧＡＤに応じて読み出される曲データの種類、すなわちタイムΔＴ、イベントＥＶＥＮＴおよび曲の終わりを表すＥＮＤデータの何れであるかを判別する。以下、歩進された読み出しアドレスＧＡＤに応じて読み出される曲データが「イベントＥＶＥＮＴ」、「タイムΔＴ」および「ＥＮＤデータ」の各場合に分けて動作説明を進める。
【００３６】
＜イベントＥＶＥＮＴの場合＞
歩進された読み出しアドレスＧＡＤに応じて読み出される曲データがイベントＥＶＥＮＴであると、ステップＳＤ７に進み、当該イベントＥＶＥＮＴがノートオンイベントであるか否かを判別する。ノートオンイベントであると、判断結果は「ＹＥＳ」になり、ステップＳＤ８に進み、レジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）を、レジスタＮＯＴＥにストアする。次いで、ステップＳＤ９に進むと、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを赤色点灯するようガイド表示部１１に指示する。これにより、弾くべき鍵がガイドされる。
【００３７】
この後、図８に図示するステップＳＤ１０に進み、ポインタｍに初期値「１」をセットすると共に、レジスタｔをゼロリセットする。そして、ステップＳＤ１１に進むと、ポインタｍを加算した読み出しアドレス（ＧＡＤ＋ｍ）に応じて先読み出しされる曲データが「タイムΔＴ」、「ノートオンイベント」および「その他」の何れであるかを判別する。
【００３８】
先読み出しされた曲データが「タイムΔＴ」や「ノートオンイベント」以外の「その他」の場合には、ステップＳＤ１５に進み、タイマインタラプトを禁止した後、上述したステップＳＤ５（図７参照）に処理を戻す。また、先読み出しされた曲データが「タイムΔＴ」の場合には、ステップＳＤ１２に進み、レジスタｔにタイムΔＴを加算すると共に、ポインタｍをインクリメントして歩進させた後、上記ステップＳＤ１１に処理を戻す。
【００３９】
先読み出しされた曲データが「ノートオンイベント」の場合には、ステップＳＤ１３に進み、当該ノートオンイベントに含まれる音高（ノートナンバ）をレジスタＮＥＸＴＮＯＴＥにストアする。続いて、ステップＳＤ１４では、レジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを、レジスタｔの値に応じて色テーブルＣＴ（ｔ）（図３参照）から読み出される発光色で点灯するようガイド表示部１１に指示する。
【００４０】
具体的には、現押鍵タイミングから次押鍵タイミングまでの時間が、例えば１６分音符長に相当する「２４ティック」であると、次に弾くべき鍵に配設されるカラーＬＥＤが黄色点灯される。また、８分音符長に相当する「４８ティック」ならば緑色点灯され、８分音符長＋１６分音符長に相当する「７２ティック」ならば青色点灯され、一拍（４分音符長）に相当する「９６ティック」ならば紫色点灯される。これにより、次に弾くべき鍵とその鍵を弾くタイミングとをユーザにガイドすることが可能になる。こうして、次に弾くべき鍵とその鍵を弾くタイミングとをガイドすると、ステップＳＤ１５に進み、タイマインタラプトを禁止した後、上述したステップＳＤ５（図７参照）に処理を戻す。
【００４１】
さて一方、歩進された読み出しアドレスＧＡＤに応じて読み出される曲データがイベントＥＶＥＮＴであって、かつ当該イベントＥＶＥＮＴがノートオンイベントでなければ、上記ステップＳＤ７の判断結果は「ＮＯ」になり、ステップＳＤ１６に進み、ノートオフイベントであるか否かを判断する。ノートオフイベントでなければ、判断結果は「ＮＯ」になり、上述したステップＳＤ１０（図８参照）に処理を進める。
【００４２】
これに対し、ノートオフイベントであると、上記ステップＳＤ１６の判断結果は「ＹＥＳ」になり、ステップＳＤ１７に進み、レジスタＮＯＴＥにストアされた音高（ノートナンバ）と、当該ノートオフイベントに含まれる音高（ノートナンバ）とが一致するかどうかを判断する。一致しなければ、判断結果は「ＮＯ」になり、上述したステップＳＤ５（図７参照）に処理を戻すが、レジスタＮＯＴＥにストアされた音高（ノートナンバ）と、当該ノートオフイベントに含まれる音高（ノートナンバ）とが一致すると、判断結果は「ＹＥＳ」になり、ステップＳＤ１８に進む。
【００４３】
そして、ステップＳＤ１８では、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを消灯するようガイド表示部１１に指示する。次いで、ステップＳＤ１９では、レジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）をレジスタＮＯＴＥにストアした後、上述したステップＳＤ１０（図８参照）に処理を進める。
【００４４】
＜タイムΔＴの場合＞
歩進された読み出しアドレスＧＡＤに応じて読み出される曲データがタイムΔＴであると、ステップＳＤ２０に進み、当該タイムΔＴをレジスタＴにストアして本処理を終える。
【００４５】
＜ＥＮＤデータの場合＞
歩進された読み出しアドレスＧＡＤに応じて読み出される曲データがＥＮＤデータであると、ステップＳＤ２１に進み、鍵盤１０の各鍵に配設される全てのカラーＬＥＤを消灯するようガイド表示部１１に指示する。次いで、ステップＳＤ２２では、タイマインタラプトを禁止し、続くステップＳＤ２３では、ガイドフラグＧＦをゼロリセットして本処理を終える。
【００４６】
このように、ガイド処理では、イベントタイミングになる毎に、歩進された読み出しアドレスＧＡＤに応じて曲データを読み出し、読み出した曲データがノートオンイベントの場合、前回先読み出しされてレジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）を、レジスタＮＯＴＥにストアし、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを赤色点灯させることで弾くべき鍵をユーザにガイドすると共に、ポインタｍの加算に応じて歩進される読み出しアドレス（ＧＡＤ＋ｍ）に基づき先読み出ししたタイムΔＴ（次ノートオンイベントまでの経過時間）をレジスタｔにセットする一方、先読み出しした次ノートオンイベントに含まれる音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを、レジスタｔの値に応じて色テーブルＣＴ（ｔ）（図３参照）から読み出される発光色で点灯させることで次に弾くべき鍵とその鍵を弾くタイミングとをユーザにガイドする。
【００４７】
（５）鍵盤処理の動作
次に、図９を参照してガイド処理の動作を説明する。前述したメインルーチンのステップＳＡ４（図４参照）を介して本処理が実行されると、ＣＰＵ１３は図９に図示するステップＳＥ１に進み、鍵盤１０を鍵走査し、続くステップＳＥ２では、その鍵走査の結果に基づき鍵変化を判定する。押離鍵操作が為されず鍵変化が無い場合には本処理を終えるが、押鍵操作に応じたキーオンイベントが発生した場合には、ステップＳＥ３〜ＳＥ７を実行し、離鍵操作に応じたキーオフイベントが発生した場合には、ステップＳＥ８〜ＳＥ１０を実行する。以下、押鍵操作された場合と、離鍵操作された場合とに分けて動作説明を進める。
【００４８】
＜押鍵操作された場合＞
押鍵操作に応じたキーオンイベントが発生すると、ステップＳＥ３に進み、押鍵された鍵のノートナンバをレジスタＫＥＹにストアする。次いで、ステップＳＥ４〜ＳＥ５では、レジスタＫＥＹにストアされたノートナンバを含むノートオンイベント作成し、作成したノートオンイベントを音源１７に供給して押鍵された鍵の音高の楽音を発音させる。続いて、ステップＳＥ６では、レジスタＫＥＹにストアされたノートナンバが、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に一致するか否か、つまりガイドされた鍵が押鍵されたどうかを判断する。
【００４９】
ガイドされた鍵が押鍵された場合には、判断結果が「ＹＥＳ」になり、ステップＳＥ７に進み、タイマインタラプトの禁止を解除して本処理を終える。一方、ガイドされた鍵とは異なる鍵が押鍵された場合には、上記ステップＳＥ６の判断結果が「ＮＯ」となり、本処理を終える。この場合、タイマインタラプトの禁止を解除しない為、前述したガイド処理の進行が停止する。つまり、ガイドされた鍵が正しく押鍵されないと、ガイド処理が進行しないようになっている。
【００５０】
＜離鍵操作された場合＞
離鍵操作に応じたキーオフイベントが発生すると、ステップＳＥ８に進み、離鍵された鍵のノートナンバをレジスタＫＥＹにストアする。次いで、ステップＳＥ９では、レジスタＫＥＹにストアされたノートナンバを含むノートオフイベントを作成する。そして、ステップＳＥ１０では、作成したノートオフイベントを音源１７に供給して離鍵された鍵の音高の楽音を消音させて本処理を終える。
【００５１】
このように、鍵盤処理では、押鍵操作に応じたキーオンイベントが発生すると、押鍵された鍵のノートナンバを含むノートオンイベント作成して音源１７に供給し、押鍵された鍵の音高の楽音を発音させた後、ガイドされた鍵が押鍵されたどうかを判断し、ガイドされた鍵が押鍵されていれば、タイマインタラプトの禁止を解除して前述のガイド処理を進行させ、一方、ガイドされた鍵とは異なる鍵が押鍵されたら、タイマインタラプトの禁止を解除せずに前述のガイド処理の進行を止める。また、離鍵操作に応じたキーオフイベントが発生すると、離鍵された鍵のノートナンバを含むノートオフイベント作成して音源１７に供給し、離鍵された鍵の音高の楽音を消音させる。
【００５２】
以上のように、本実施形態では、イベントタイミング毎に歩進される読み出しアドレスＧＡＤに応じて、曲を構成する各音を表す曲データを読み出し、読み出した曲データがノートオンイベントの場合、前回先読み出しされてレジスタＮＥＸＴＮＯＴＥにストアされた音高（ノートナンバ）を、レジスタＮＯＴＥにストアし、レジスタＮＯＴＥにストアされた音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを赤色点灯させることで弾くべき鍵をユーザにガイドすると共に、ポインタｍの加算に応じて歩進される読み出しアドレス（ＧＡＤ＋ｍ）に基づき先読み出ししたタイムΔＴ（次イベントまでの経過時間）をレジスタｔにセットする一方、先読み出しした次ノートオンイベントに含まれる音高（ノートナンバ）に対応する鍵に配設されるカラーＬＥＤを、レジスタｔの値に応じて色テーブルＣＴ（ｔ）（図３参照）から読み出される発光色で点灯させるので、次に弾くべき鍵とその鍵を弾くタイミングとをユーザにガイドすることができる。また、次に弾くべき鍵とその鍵を弾くタイミングとがガイドされることによって、ユーザ自らそのタイミングを狙って演奏するという能動的な学習態度になり、これ故、楽しい気分で演奏練習することが出来、学習効果の向上を期待できる効果も奏する。
【００５３】
なお、上述した実施形態では、次の音を弾くまでの時間間隔に応じて発光色を変化させるようにしたが、これに替えて、例えば次の音を弾くまでの時間間隔に応じて発光色を変化させると共に、次の音を弾くまでの時間間隔に応じて発光輝度を変化させたり、点滅発光する間隔を変化させたりすることによって次の音を弾くタイミングをより一層判りやすくガイドすることが出来る。
【００５４】
以上、本発明の実施の一形態について説明したが、本発明はそれに限定されるものではなく、本願出願の特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下では、本願出願当初の特許請求の範囲に記載された各発明について付記する。
【００５５】
（付記）
［請求項１］
曲を構成する各音の音高及び発音タイミングから成る曲データを記憶する曲データ記憶手段と、
前記曲データ記憶手段から各音の音高及び発音タイミングを順次読み出す読み出し手段と、
前記読み出し手段により読み出された音の音高に対応する演奏操作子を前記読み出された発音タイミングに基づいてガイドする第１のガイド手段と、
前記読み出し手段により読み出された音に続く次の音の音高及び発音タイミングを前記曲データ記憶手段から先読み出しする先読み出し手段と、
前記先読み出し手段により先読み出しされた次の音の音高に対応する演奏操作子をガイドするとともに、前記読み出し手段により読み出された音の発音タイミングと前記先読み出し手段により先読み出しされた次の音の発音タイミングとの差に基づき、当該ガイドの形態を制御する第２のガイド手段と
を具備する演奏案内装置。
【００５６】
［請求項２］
前記演奏案内装置はさらに、前記演奏操作子の夫々に発光手段が設けられ、
前記第１のガイド手段は、前記読み出された音の音高に対応する演奏操作子に設けられた発光手段を発光させ、
前記第２のガイド手段は、前記先読み出された次の音の音高に対応する演奏操作子に設けられた発光手段を発光させるとともに、当該発光手段の発光色、発光輝度及び発光間隔の少なくともひとつを変更することにより、発光形態を制御する、請求項１記載の演奏案内装置。
【００５７】
［請求項３］
曲を構成する各音の音高及び発音タイミングから成る曲データを記憶する曲データ記憶手段を有するコンピュータに、
前記曲データ記憶手段から各音の音高及び発音タイミングを順次読み出す読み出しステップと、
前記読み出された音の音高に対応する演奏操作子を前記読み出された発音タイミングに基づいてガイドする第１のガイドステップと、
前記読み出された音に続く次の音の音高及び発音タイミングを前記曲データ記憶手段から先読み出しする先読み出しステップと、
前記先読み出しされた次の音の音高に対応する演奏操作子をガイドするとともに、前記読み出された音の発音タイミングと前記先読み出しされた次の音の発音タイミングとの差に基づき、当該ガイドの形態を制御する第２のガイドステップと、
を実行させるプログラム。
【符号の説明】
【００５８】
１０  鍵盤
１１  ガイド表示部
１２  操作部
１３  ＣＰＵ
１４  ＲＯＭ
１５  ＲＡＭ
１６  表示部
１７  音源
１８  サウンドシステム
１００  演奏案内装置
【図１】
2013160871.tif 000003
【図２】
2013160871.tif 000004
【図３】
2013160871.tif 000005
【図４】
2013160871.tif 000006
【図５】
2013160871.tif 000007
【図６】
2013160871.tif 000008
【図７】
2013160871.tif 000009
【図８】
2013160871.tif 000010
【図９】
2013160871.tif 000011