(57)【要約】【課題】楽譜に不慣れな者でも楽譜上の音符と楽器の操作子との対応関係を容易に把握できるようにする楽器操作状態の情報表示方法を提供すること。【解決手段】表示装置４上に音高表示領域１２を設ける。この音高表示領域１２に、演奏者による楽器操作による音高を大譜表の一部を切り出したイメージとして描画させる。大譜表から外れる音高についてはオクターブシフトさせて大譜表内に描画させる。表示装置１２上には楽譜や鍵盤も描画させてもよい。オクターブシフトしない音高とオクターブシフトさせた音高とが、重ならないように、また、区別されるように描画する。【選択図】    図２
2004258391.tif 000002
【特許請求の範囲】
【請求項１】
表示装置上の音高表示領域に演奏者による楽器操作状態を表示する楽器操作状態の情報表示方法において、
演奏者による楽器操作による音高を大譜表の一部を切り出したイメージとして描画させ、前記大譜表の上下の音高についてはオクターブシフトさせて前記大譜表内に描画させることを特徴とする楽器操作状態の情報表示方法。
【請求項２】
オクターブシフトしない音高とオクターブシフトした音高とを左右方向に互いにずらして描画させることを特徴とする請求項１に記載の楽器操作状態の情報表示方法。
【請求項３】
＃あるいは♭付きと否とで高さ方向の描画位置が同じになる和音の音高については左右方向に互いにずらして描画させることを特徴とする請求項１または２に記載の楽器操作状態の情報表示方法。
【請求項４】
オクターブシフトしない音高とオクターブシフトした音高とを異なる色で描画させることを特徴とする請求項１ないし３のいずれかに記載の楽器操作状態の情報表示方法。
【請求項５】
オクターブシフトしない音高とオクターブシフトした音高とを異なる形態で描画させることを特徴とする請求項１ないし３のいずれかに記載の楽器操作状態の情報表示方法。
【請求項６】
前記表示装置上に、前記イメージとともに楽譜を描画させることを特徴とする請求項１ないし５のいずれかに記載の楽器操作状態の情報表示方法。
【請求項７】
前記イメージを、楽譜表示領域の一部に描画させることを特徴とする請求項６に記載の楽器操作状態の情報表示方法。
【請求項８】
前記イメージを、楽譜表示領域の近傍に描画させることを特徴とする請求項６に記載の楽器操作状態の情報表示方法。
【請求項９】
前記表示装置に、さらに鍵盤を描画させ、演奏者の鍵盤操作状態に応じて鍵盤描画形態を変化させることを特徴とする請求項１ないし８のいずれかに記載の楽器操作状態の情報表示方法。
【請求項１０】
前記大譜表における高音部パートと低音部パート間の間隔を（五線の線間隔×２）にしたことを特徴とする請求項１ないし９のいずれかに記載の楽器操作状態の情報表示方法。
【請求項１１】
前記表示装置は、電子鍵盤楽器の表示装置であることを特徴とする請求項１ないし１０のいずれかに記載の楽器操作状態の情報表示方法。
【請求項１２】
前記表示装置は、パソコン・システムの表示装置であることを特徴とする請求項１ないし１０のいずれかに記載の楽器操作状態の情報表示方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、楽器操作状態の情報表示方法に関し、特に、楽譜に不慣れな者でも楽譜上の音符と楽器の操作子との対応関係を容易に把握できるようにする楽器操作状態の情報表示方法に関するものである。
【０００２】
【従来の技術】
演奏情報の提示手段としては、一般的に楽譜が用いられている。しかし、あまり楽器に触れたことがない者から見ると、楽譜は難しく、理解するのが面倒と感じることが多く、結果的に楽器演奏を敬遠する要因の一つになっている。
【０００３】
この問題を解決するため、鍵盤の各鍵と対応した発光手段を設け、押鍵すべき鍵に対応した発光素子を順次発光させるようにして演奏者が演奏し易くなるように工夫した電子楽器が知られている。
【０００４】
例えば、特開平６−６７６５３号公報には、各鍵に対応したＬＥＤを有するメロディガイドを設け、押鍵を指示するＬＥＤ点灯・点滅データをメロディガイドに出力して押鍵すべき鍵を指示する電子楽器が記載されており、特開平１０−２２２１６０号公報には、各鍵の下側に配置したＬＥＤを発光させて押鍵すべき鍵を指示する電子楽器が記載されている。
【０００５】
このような各鍵に対応して設けられた発光素子を順次発光させて押鍵すべき鍵を指示する電子楽器であれば、楽譜が読めない初心者でもすぐに正しい鍵を押すことができる。
【０００６】
また、図２４に示すように、演奏者が押した鍵の音符をフロントパネル上のディスプレイに表示させる電子鍵盤楽器が製品化されている。これでは、高音部パートと低音部パートを五線の左右方向に並べ、各パートにおいて音高順に斜め下から斜め上方向に固定位置に設定された音符を選択的に表示し、１オクターブ上下の音符は、音楽記号「８ｖａ」を同時に同時に表示して区別している。図２４は、高音部パートの「ド」、低音部パートの「Ａｍ７コード」が押された状態の表示を示し、低音部パートに対しては「８ｖａ」により１オクターブ下の音符である旨が表示されている。
【０００７】
【発明が解決しようとする課題】
しかしながら、鍵対応の発光素子を順次発光させ、この発光に従って押鍵する方法では、楽譜上の音符と鍵との対応関係を理解させるものではないから、演奏者は、いつまでたっても一般的な楽譜を使った演奏に慣れることができず、押鍵をガイドする発光素子を備えた電子楽器でしか演奏できないという状態に留まってしまうという問題がある。また、曲目やアレンジが変わると対応できないという問題がある。さらに、この方法は、もぐら叩きゲームのような反射神経を競うゲームのような方法であるので、手軽に演奏できる代わりに達成感が足りず満足できないという問題もある。
【０００８】
また、図２４のように表示するものは、五線の左右方向に並べた高音部パート、低音部パートそれぞれにおいて音符を音高順に斜め下から斜め上方向に固定位置に設定しているので、表示のために広いスペースを必要とし、また、表示形態が楽譜と大幅に異なっているので、楽譜との対応を把握しづらい。さらに、白鍵と黒鍵とが五線譜上で重なる音高や大譜表の上下の音高の表示について考慮されていない。
【０００９】
本発明の目的は、前記従来技術の問題点を解決し、楽譜に不慣れな者でも楽譜上の音符と楽器の操作子との対応関係を容易に把握できるようにする楽器操作状態の情報表示方法を提供することにある。
【００１０】
【課題を解決するための手段】
前記課題を解決するために、本発明は、表示装置上の音高表示領域に演奏者による楽器操作状態を表示する楽器操作状態の情報表示方法において、演奏者による楽器操作による音高を大譜表の一部を切り出したイメージとして描画させ、前記大譜表の上下の音高についてはオクターブシフトさせて前記大譜表内に描画させる点に第１の特徴がある。
【００１１】
また、本発明は、オクターブシフトしない音高とオクターブシフトした音高とを左右方向に互いにずらして描画させる点に第２の特徴がある。また、本発明は、＃あるいは♭付きと否とで高さ方向の描画位置が同じになる和音の音高については左右方向に互いにずらして描画させる点に第３の特徴がある。
【００１２】
また、本発明は、オクターブシフトしない音高とオクターブシフトした音高とを異なる色で描画させる点に第４の特徴がある。また、本発明は、オクターブシフトしない音高とオクターブシフトした音高とを異なる形態で描画させる点に第５の特徴がある。
【００１３】
また、本発明は、前記表示装置上に、前記イメージとともに楽譜を表示させる点に第６の特徴がある。また、本発明は、前記イメージを、楽譜表示領域の一部に表示する点に第７の特徴がある。また、本発明は、前記イメージを、楽譜表示領域の近傍に表示する点に第８の特徴がある。
【００１４】
また、本発明は、前記表示装置に、さらに鍵盤を描画させ、演奏者の鍵盤操作状態に応じて鍵盤描画形態を変化させる点に第９の特徴がある。また、本発明は、前記大譜表における高音部パートと低音部パート間の間隔を（五線の線間隔×２）にした点に第１０の特徴がある。
【００１５】
また、本発明は、前記表示装置は、電子鍵盤楽器の表示装置である点に第１１の特徴がある。さらに、本発明は、前記表示装置は、パソコン・システムの表示装置である点に第１２の特徴がある。
【００１６】
第１の特徴によれば、電子楽器の演奏者は、音高表示領域の表示状態と楽譜とを見比べ、現在操作している鍵の音高が楽譜上の所定音符の音高と一致するか判断することができるので、現在操作している鍵が正しいか否かを容易に把握できる。ここで、音高表示領域が示す音高が楽譜上の所定音符と異なる場合は、手探りで所定の鍵を探し出すことができるので、鍵盤と楽譜間で視線を何度も切り替える必要がない。また、操作した鍵の音高が大譜表の一部を切り出したイメージとして描画されるので、鍵と楽譜上の音符との対応が楽になり、楽譜への苦手意識を軽減できる効果が期待できる。
【００１７】
第２、第３の特徴によれば、オクターブシフトしない音高とオクターブシフトした音高、＃あるいは♭付きか否か音高での描画の重なりをなくすことができる。
【００１８】
第４、第５の特徴によれば、オクターブシフトしない音高とオクターブシフトした音高との区別が明確になり、描画されたイメージの把握が容易になる。
【００１９】
第６の特徴によれば、楽譜の音符とともに楽器操作状態の情報表示させることができる。また、第７の特徴によれば、楽譜の音符と音高表示領域とを近接させることができるので、演奏者が使い易い表示形態にすることができる。また、第８の特徴によれば、楽譜の表示処理と音高表示領域の表示処理とを別々に行うことができるため、内部処理が簡単になる。
【００２０】
第９の特徴によれば、操作した鍵盤との対応を容易に把握できる。また、第１０の特徴によれば、単純に音高からＹ座標を取得して低音部パートから高音部パートまでの音符を連続して描画できるため、処理が簡単になる。
【００２１】
第１１、第１２の特徴によれば、電子鍵盤楽器、電子鍵盤楽器以外のＭＩＤＩ出力できる電子楽器、例えばギターやバイオリンなどの弦楽器や、トランペットなどの管楽器などで操作状態の情報表示を行わせることができる。
【００２２】
【発明の実施の形態】
以下、図面を参照して本発明を詳細に説明する。図１は、電子鍵盤楽器に適用した本発明の一実施形態のブロック構成図である。同図において、ＣＰＵ１は、電子鍵盤楽器全体の制御を行う。また、ＲＯＭ２は、プログラムや波形を記憶し、ＲＡＭ３は、ＣＰＵ１の演算結果などを一時記憶する。ＣＰＵ１、ＲＯＭ２およびＲＡＭ３は、データバス５によって互いに接続されており、ＣＰＵ１は、ＲＯＭ２およびＲＡＭ３に自由にアクセスできる。
【００２３】
表示手段４は、楽譜表示できる程度の解像度と表示サイズを持ち、データバス５を介してＣＰＵ１に接続されている。後述する音高表示領域は、表示手段４内に表示される。
【００２４】
指示操作入力手段６は、演奏者による指示操作状態をデータバス５を介してＣＰＵ１に渡す。指示操作入力手段６は、電子鍵盤楽器のパネル上に設けた１個以上のボタンやホイール操作子、ジョグボールなどでよい。
【００２５】
鍵盤操作入力手段７は、演奏者による鍵盤操作状態をデータバス５を介してＣＰＵ１に渡すための手段であり、鍵盤機構と鍵盤インタフェースとからなる。鍵盤機構は、例えば、８８鍵を有するが、もちろんこれより多くても少なくてもよい。
【００２６】
音源回路８は、データバス５を介してＣＰＵ１およびＲＯＭ２から取得した演奏指示情報および波形データに基づいて発音用のディジタル信号を作成する。この発音用のディジタル信号は、オーディオ回路９に渡されてアナログ信号に変換された後、スピーカ１０から外部に発音される。
【００２７】
ＭＩＤＩ情報通信手段１１は、外部ＭＩＤＩ機器に対してＭＩＤＩ信号の入出力を行う。ＭＩＤＩ情報通信手段１１としては、例えば、ＭＩＤＩインタフェースを利用できるが、ＭＩＤＩ信号の通信ができればこれ以外の規格でも構わない。例えば、ＵＳＢやＩＥＥＥ１３９４を使用してもよい。
【００２８】
本発明では、表示手段４上の楽譜表示領域近傍、あるいは楽譜表示領域の一部に音高表示領域を表示し、この音高表示領域の表示内容に鍵盤の操作状態を反映させる。
【００２９】
図２および図３は、表示手段４上に表示される音高表示領域の異なる例を示す図である。図２は、表示手段４上に設けた楽譜表示領域内に音高表示領域１２を表示する例であり、本例では、音高表示領域１２の表示位置によっては楽譜の一部表示内容を隠してしまうが、楽譜の音符と音高表示領域１２を近接させることができるため、演奏者が使い易い表示形態である。なお、図４に示すように、音高表示領域を楽譜表示領域上の予め決められた、あるいは自由な位置へ移動できるように構成しておき、移動先を演奏者の指示操作入力手段６による操作によって変えられるようにしておくとよい。
【００３０】
図３は、表示手段４上に設けた楽譜表示領域の近傍に音高表示領域１２を表示する例であり、本例では、楽譜の音符と音高表示領域が若干離れてしまうが、楽譜の表示処理と音高表示領域の表示処理とを別々に行うことができるため、内部処理が簡単になる。本例の場合、音高表示領域の表示位置は固定でよいが、移動できるように構成してもよい。図示しないが、音高表示領域を、楽譜表示領域外の予め決められた、あるいは自由な位置へ移動できるように構成しておき、移動先を演奏者の操作によって変えられるようにしておいてもよい。移動先は、予め決めておいた１つ以上の移動先から指示操作入力手段６（図１）で選ぶようにすることができる。また、移動量を指示して自由な移動量で移動させるように構成することもできる。
【００３１】
次に、音高表示領域の具体的表示例について説明する。図５は、音高表示領域の具体的表示例であり、四角形の領域中に大譜表の先頭部分だけを描画したようなイメージであり、このようなイメージを描画することにより楽譜との対応の把握が容易になる。同図（ａ）は、カラー表示の場合、同図（ｂ）は白黒表示の場合であり、カラー表示は視認性の面で有利であるが、白黒表示はコストの面で有利である。
【００３２】
通常、大譜表は、高音部パートと低音部パート間の間隔が（五線の線間隔×２）より広くして記載されているが、本例では、この間隔を（五線の線間隔×２）にしている。これにより、低音部パートから高音部パートまで連続させることができ、単純に音高からＹ座標を取得して音符を描画できるようになる。
【００３３】
すなわち、楽譜データを解釈して音符を描画する場合は問題ないが、鍵盤入力やＭＩＤＩ入力データを参考にして音符を描画する場合には、その音符が高音部パートと低音部パートのどちらに属するのかを判断できない。しかし、前記のように、高音部パートと低音部パート間の間隔を（五線の線間隔×２）にすれば、座標取得の際にどちらのパートへ描画するかの判断が必要なくなり、音符の描画位置を一義的に定めることができる。また、符頭を描画する際の座標取得を、高音部パートと低音部パートで共通化できるので、処理が容易になるという利点もある。
【００３４】
図６は、音高表示領域と音高の描画領域との対応関係の例を示す図である。例えば、８８鍵の鍵盤楽器の場合、扱う音高は、ＭＩＤＩのノートナンバーで表現すると２１〜１０８の範囲である。ここで、単純にこの範囲の音高から座標計算して描画位置を算出すると、前記範囲の上端側および下端側の音高に対する座標は大譜表から上下に大きく外れることになる。
【００３５】
これをそのまま描画させる場合には、大譜表の上下に広い範囲の余裕を持たせなければならなくなる。また、このような描画方法では単に描画範囲を広く取らなければならないだけでなく、上端および下端の音高が把握しにくくなるという問題もある。
【００３６】
このため、本実施形態では、大譜表に無理なく描画できるノートナンバー３６〜８５の範囲を基準とし、それから外れる範囲の音高については２オクターブ上下した状態で音高を描画することにしている。この場合、２オクターブ上下した音高とそうでない音高とが重なって描画されないようにしている。
【００３７】
図６の例では、ノートナンバー３６〜８５の音高を描画する領域ａの右側の領域ｂ、ｃに、それ以外の音高を描画する。ノートナンバー８６〜１０８の音高は右側の高音部パート領域ｂ上に、ノートナンバー２１〜３５の音高は右側の低音部パート領域ｃ上に描画するようにしている。
【００３８】
図７は、音高表示領域における音高の具体的表示例を示す図である。同図に示すように、重ならない音高は上下方向に並べて描画する。なお、重なる音高の描画については後述する。図７（ａ）のカラー表示の場合、上下にシフトさせないで描画した音高（ノートナンバー３６〜８５）、下にシフトして描画した音高（ノートナンバー８６〜１０８）、上にシフトして描画した音高（ノートナンバー２１〜３５）を、異なる色で色分けして描画すると視認性がよい。例えば、上下にシフトさせないで描画した音高を黒色、下にシフトして描画した音高を赤色、上にシフトして描画した音高を青色で描画する。
【００３９】
また、図７（ｂ）の白黒表示の場合には、上下にシフトさせないで描画した音高、下にシフトして描画した音高、上にシフトして描画した音高を、異なる図形の符頭で描画してそれらを区別することができる。本例では、ノートナンバー８６〜１０８の音高を▲の符頭で描画し、ノートナンバー２１〜３５の音高の符頭を×の符頭で描画してそれらを区別している。音高表示領域におけるそれら描画の区別を演奏者に知らせるために、同時に符頭のサンプルを表示させることが好ましい。図７の音高表示領域下部の表示がそれである。
【００４０】
ところで、前記した方法で音高を表現する場合、すぐ隣の音高が同時に発音された場合についても考えておかなければならない。例えば、ノートナンバー７２と７３の音高の差は、半音しかないため、楽譜上では同じ高さ位置になる。つまり、Ｙ座標が同じになってしまう。このような場合を想定して、同じ高さ位置の音高が同時に発音されても描画に重なりが生じないように、一方の音高を左右方向にずらして描画することが好ましい。
【００４１】
図８は、この表示例を示す。同図（ａ）、（ｂ）、（ｃ）はそれぞれ、鍵が押下されていない状態、１つの鍵が押下された状態、２つの鍵が押下された状態を示し、同図（ｃ）では同じ高さ位置の２つ音高の一方を左右方向にずらして描画している。
【００４２】
また、上述のように、２オクターブ上下した音高とそうでない音高とのＹ座標が同じになり得るが、それら２オクターブ離れた各音高も左右方向に分かれて描画される場合もあるので、これも考慮して描画位置を決めておく。
【００４３】
図９は、２オクターブ離れた音高の描画位置を考慮した表示例を示す。同図（ａ）、（ｂ）、（ｃ）はそれぞれ、２つの鍵が押下された状態、３つの鍵が押下された状態、４つの鍵が押下された状態を示し、同図（ｃ）では同じ高さ位置の４つ音高が互いに左右方向にずらされ、重ならないように描画されている。
【００４４】
以上に説明した描画を行うことにより、例えば、８８鍵の鍵盤楽器で出力可能なノートナンバー２１〜１０８の範囲のどの音高の描画が指示された場合であっても、重なることなく、一度に全範囲の音高を描画することができる。
【００４５】
以上では楽譜表示領域近傍、あるいは楽譜表示領域の一部に音高表示領域を表示する実施形態について説明したが、表示手段４（図１）には楽譜とともに鍵盤を表示させることができる。
【００４６】
図１０は、鍵盤を模した鍵盤表示領域１３をさらに設けた場合の表示例を示し、図１１は、その拡大図（なお、表示内容は異なっている。）である。鍵盤表示領域１３において、鍵盤の各鍵は、演奏者による押鍵状態に応じて色分け表示されるようにしておく。例えば、押鍵された鍵に対応する部分が赤く強調表示されるようにしておく。このような表示を行うことにより、演奏者は自己が押鍵している鍵と音高表示領域の表示と楽譜の対応関係をより把握し易くなる。
【００４７】
なお、図１０、図１１に示された例では、音高表示領域が楽譜表示領域上に設けられているが、音高表示領域を楽譜表示領域の近傍に設けてもよいことはもちろんである。
【００４８】
次に、音高表示領域１２に音高を表示させる音高表示処理について説明する。図１２は、音高表示処理の一例のフローチャートであり、まず、ステップＳ００１では、鍵盤操作入力手段７（図１）の操作状態を取得する。ステップＳ００２では、ステップＳ００１で取得した操作状態を調べて、押された（ノートオン）あるいは離された（ノートオフ）鍵を判断する。これにより発音状態（ノートオン、ノートオフ）と音高（ノートナンバー）を把握できる。
【００４９】
最後に、ステップＳ００３に進んで、ステップＳ００２で把握した発音状態と音高を基に音高表示を行い、音高表示処理を終了する。なお、図示しないが、図１０、図１１のように鍵盤表示領域を表示させる場合には、ステップＳ００３のあとに鍵盤表示領域に対する描画処理を実行するステップを付加すればよい。
【００５０】
図１３は、図１２におけるステップＳ００３（音高表示更新処理）の詳細の一例を示すフローチャートである。音高表示更新処理では、まず、ステップＳ００４でノートオン配列Ｍａｐ［ａ］を更新する。このノートオン配列は、例えば、１２８要素の１次元配列であり、予め「０」で初期化しておく。
【００５１】
ノートン配列の要素番号０〜１２７のそれぞれをノートナンバー０〜１２７に対応させ、例えば、ノートオンとして処理する要素については「１」を、ノートオフとして処理する要素については「０」を記述するというように決めておく。
【００５２】
図１２のステップＳ００２で音高がａ（８８鍵の電子鍵盤楽器の場合、２１≦ａ≦１０８）のノートオン操作だったことを把握したと仮定すると、ステップＳ００４ではノートオン配列Ｍａｐ［ａ］に「１」を書き込む。
【００５３】
ステップＳ００５では、音高表示領域の表示を初期化し、表示状態を一旦、図８（ａ）のようにする。ステップＳ００６は、押下されている鍵全てに対応する音符の符頭の描画処理を繰り返す（ステップＳ００７〜Ｓ００９のループ）ための初期化処理であり、音高表示処理すべきノートナンバーの最小値である２１をｉに記述している。もし、８８鍵以外の電子鍵盤楽器である場合には、それで扱うノートナンバーの最小値を記述する。
【００５４】
ステップＳ００７〜Ｓ００９では、上述したように、ｉを１ずつ増加させ、押下されている鍵全てに対応する音符の符頭の描画処理を繰り返す。ステップＳ００７では、処理したノートナンバーｉを調べ、これが処理すべきノートナンバーの最大値１０８を超えたとき、繰り返し処理を抜けて符頭の描画処理を終了させる。もし、８８鍵以外の電子鍵盤楽器である場合には、処理したノートナンバーｉがそれで扱うノートナンバーの最大値を超えたとき、繰り返し処理を抜けて符頭の描画処理を終了させるように変更する。
【００５５】
ステップＳ００８では、現在処理するノートナンバーｉに対し符頭の描画処理を実行する。この描画処理の詳細は後述する。その後、ステップＳ００９でｉに１を加えて次に描画処理すべきノートナンバーとし、ステップＳ００７に戻る。
【００５６】
図１４は、図１３におけるステップＳ００８（符頭の描画処理）の詳細の一例を示すフローチャートである。符頭の描画処理では、まず、現在処理すべきノートナンバーｉに対応する鍵がノートオン状態かノートオフ状態かを把握するため、ステップＳ０１０でノートオン配列Ｍａｐ［ｉ］の値を取得する。
【００５７】
ステップＳ０１１では、ノートオン配列Ｍａｐ［ｉ］の値からノートオフかノートオンかを判断し、ノートオフと判断したならば符頭の描画処理を終了する。
【００５８】
ステップＳ０１１でノートオンと判断したならば、ステップＳ０１２に進んで符頭の表示色を指定する。符頭の表示色は、例えば、予め決められた黒、青、赤など３色の中から選択し、図６の領域ａなら黒色、領域ｂなら赤色、領域ｃなら青色で描画するようにする。
【００５９】
次に、ステップＳ０１３に進んで符頭の描画座標（Ｘ，Ｙ）を取得する。詳細は後述するが、ここではノートナンバーを参考にしてＹ座標を取得する。また、Ｘ座標については、図６の領域ａの左端位置の座標を初期値として与えるが、ノートナンバーｉが３５以下または８６以上ならば、前記初期値のＸ座標に所定値、例えば３５ドット分を加算し、図６の領域ｂ〜ｃの左端位置に設定する。
【００６０】
次に、ステップＳ００１４に進み、ステップＳ０１３で取得された描画座標のうちＸ座標に修正を加える。詳細は後述するが、ここでは、図６の領域ａ〜ｃの各領域において、＃の有無や近傍の音高の状態に応じて符頭が左端、中央、右端の３箇所に振り分けて描画されるようにＸ座標に修正を加える。
【００６１】
図１８は、左端、中央、右端の３箇所に振り分けて描画する場合の描画位置を示す図である。同じＹ座標に＃付きの符頭を描画する必要がない場合は、中央の位置ｂに描画する。また、＃付きと＃なしの符頭を同じＹ座標に描画する必要がある場合には、＃なしの符頭を左端の位置ａに、＃ありの符頭を右端の位置ｃに描画する。なお、図１８の左端の位置ａは、図６の各領域ａ、ｂ、ｃの左端に相当する。また、（修正＋１０）、（修正＋２０）は、領域の左端位置ａに対して１０ドット分、２０ドット分だけ右方向にずらすことを表している。
【００６２】
ステップＳ０１２〜Ｓ０１４で符頭の描画色と描画座標が決まった後は、ステップＳ０１５に進んで実際に符頭を描画し、符頭の描画処理を終了する。
【００６３】
図１５は、図１４におけるステップＳ０１２（符頭の描画色指定処理）の詳細の一例を示すフローチャートである。符頭の描画色指定処理では、まず、ステップＳ０１６でノートナンバーが８６以上か否かを判断し、８６以上と判断したときにはステップＳ０１７進んで符頭の描画色として赤色を指定し、符頭の描画色指定処理を終了する。
【００６４】
ステップＳ０１６でノートナンバーが８６以下と判断したときにはステップＳ０１８に進み、さらにノートナンバーが３５以下か否かを判断する。ここでノートナンバが３５以下と判断したときにはステップＳ０１７に進んで符頭の描画色として赤色を指定し、符頭の描画色指定処理を終了する。
【００６５】
また、ステップＳ０１８でノートナンバーが３５以下でないと判断したとき、ノートナンバーは３６〜８５であるので、ステップＳ０２０に進んで符頭の描画色として黒を指定し、符頭の描画色指定処理を終了する。
【００６６】
図１６は、図１４におけるステップＳ０１３（符頭の描画座標取得処理）の詳細の一例を示すフローチャートである。符頭の描画座標取得処理では、まず、ステップＳ０２１で、既に説明したように、図６の領域ａの左端位置の座標を初期値として与える。この左端位置は、図１８の位置ａに該当する。
【００６７】
次に、ステップＳ０２２に進み、ノートナンバーを参考にＹ座標を取得する。このとき、ノートナンバーを基に計算でＹ座標を求めてもよいし、ノートナンバーに対するＹ標を予めテーブル化しておき、ノートナンバーを参考にテーブルからＹ座標を取得するようにしてもよい。
【００６８】
次に、ステップＳ０２３に進み、ノートナンバーが８６以上か否かを判断っする。ここでノートナンバが８６以上と判断したときにはステップＳ０２４に進み、座標（Ｘ，Ｙ）を修正する。まず、Ｘ座標を図６の領域ｂの左端位置の座標に変えるため、Ｘ座標の初期値（領域ａの左端位置に該当）に所定値、例えば値３５（３５ドット分）を加算する。Ｙ座標については２オクターブ分下げる処理を行う。
【００６９】
大譜表の高音部パートと低音部パート間の間隔を（五線の線間隔×２）にすれば、２オクターブ分の距離は、五線の線間隔で表現すると７本分に相当するので、ステップＳ０２２取得したＹ座標から（五線の線間隔×７）だけ減算することで２オクターブ分下げる処理を実行できる。ステップＳ０２４の処理が終わったら符頭の描画座標取得処理を終了する。
【００７０】
ステップＳ０２３でノートナンバが８６以上でないと判断したときにはステップＳ０２５に進み、さらにノートナンバーが３５以下か否かを判断する。ここでノートナンバが３５以下と判断したときにはステップＳ２６に進み、座標（Ｘ，Ｙ）を修正する。ここでは、ステップＳ０２４の処理と同様に、Ｘ座標を図６の領域ｃの左端に位置する座標に変えるため、Ｘ座標の初期値（領域ａの左端位置に該当）に所定値、例えば値３５（３５ドット分）を加算する。Ｙ座標については２オクターブ分上げる処理を行う。すなわち、２オクターブ分の距離（五線の線間隔×７）を加える。ステップＳ０２５の処理が終わったら符頭の描画座標取得処理を終了する。
【００７１】
また、ステップＳ０２５でノートナンバーが３５以下でないと判断したときにはノートナンバーは３６〜８５であるので、座標を修正することなく符頭の描画座標取得処理を終了する。
【００７２】
図１７は、図１４におけるステップＳ０１４（符頭の描画Ｘ座標修正処理）の詳細の一例を示すフローチャートである。符頭の描画Ｘ座標修正処理では、まず、ステップＳ０２７でノートナンバーを参考にして処理すべき音高が＃付きか否かを把握する。
【００７３】
図１９に示すように、ノートナンバーを１２で除した余りが０、２、４、５、７、９、１１である音高には＃が付かず、余りが１、３、６、８、１０である音高に＃が付くので、ノートナンバーを１２で除した余りを調べることにより＃付き音高か＃なし音高かを簡単に把握できる。
【００７４】
ステップＳ０２８で処理すべき音高が＃付きか否かを判断し、＃付きと判断したときにはステップＳ０２９に進み、＃付きに対する座標修正処理を実行する。この処理の詳細は後述する。ステップＳ０２９の処理が終わったら符頭の描画Ｘ座標修正処理を終了する。
【００７５】
ステップＳ０２８で＃なしと判断したときにはステップＳ０３０に進み、＃なしに対する座標修正処理を実行する。この処理の詳細は後述する。ステップＳ０３０の処理が終わったら符頭の描画Ｘ座標修正処理を終了する。
【００７６】
図２０は、図１７におけるステップＳ０２９（Ｘ座標の修正（＃あり）処理）の詳細の一例を示すフローチャートである。Ｘ座標の修正（＃あり）処理では、まず、ステップＳ０３１でノートオン配列Ｍａｐ［ｉ−１］の値を取得する。この値からは、現在処理すべき音高の１つ前の音高がノートオンであるか否かが判る。
【００７７】
ステップＳ０３２では、ノートオン配列Ｍａｐ［ｉ−１］の値を参考にして１つ前の音高がノートオフ（Ｍａｐ［ｉ−１］＝０）であるか否かを判断する。ここで、１つ前の音高がノートオフと判断したときにはステップＳ０３３に進み、Ｘ座標を修正する。具体的には、Ｘ座標に値１０を加算し、図８（ｂ）に描画した符頭のように、描画範囲の中央に符頭を描画するようＸ座標を修正する。この位置は、図１８の位置ｂに該当する。ステップＳ０３３の処理が終わったらステップＳ０３５に進む。
【００７８】
ステップＳ０３２で１つ前の音高がノートオン（Ｍａｐ［ｉ−１］＝１）と判断したときにはステップＳ０３４に進み、Ｘ座標を修正する。具体的には、Ｘ座標に値２０を加算し、図８（ｃ）の右側に描画した＃付き符頭のように、描画範囲の右端に符頭を描画するようＸ座標を修正する。この位置は、図１８の位置ｃに該当する。ステップＳ０３４の処理が終わったらステップＳ０３５に進む。
【００７９】
ステップＳ０３５では、これまでの処理で求めた符頭の描画座標を基にそのすぐ左側近傍に＃記号を描画する処理を実行する。＃記号は、図１８の位置ｃに示したように、符頭と重ならない程度の間隔をあけて描画すればよい。このとき、＃記号をステップＳ０１２で取得した描画色と同じにすれば、符頭の描画色と同じ色で＃記号を描画することができる。なお、この時点では、まだ符頭の描画は行われない。ステップＳ０３５の処理が終わったらＸ座標の修正（＃あり）処理を終了する。
【００８０】
図２１は、図１７におけるステップＳ０３０（Ｘ座標の修正（＃なし）処理）の詳細の一例を示すフローチャートである。Ｘ座標の修正（＃なし）処理では、まず、ステップＳ０３６でノートオン配列Ｍａｐ［ｉ＋１］の値を取得する。この値からは、現在処理すべき音高の次の音高がノートオンであるか否かが判る。
【００８１】
ステップＳ０３７では、ノートオン配列Ｍａｐ［ｉ＋１］の値を参考にして次の音高がノートオフ（Ｍａｐ［ｉ＋１］＝０）であるか否かを判断する。ここで、次の音高がノートオフと判断したときにはステップＳ０３８に進み、Ｘ座標を修正する。具体的には、Ｘ座標に値１０を加算し、図８（ｂ）に描画した符頭のように、描画範囲の中央に符頭を描画するようＸ座標を修正する。この位置は、図１８の位置ｂに該当する。ステップＳ０３８の処理が終わったらＸ座標の修正（＃なし）処理を終了する。
【００８２】
ステップＳ０３７で次の音高がノートオン（Ｍａｐ［ｉ＋１］＝１）と判断したときにはステップＳ０３９に進み、ノートナンバーを１２で除した余りを所得する。次に、ステップＳ０４０で余りが４または１１か否かを判断し、余りが４または１１と判断したときにはステップＳ０４１に進み、Ｘ座標を修正した後、Ｘ座標の修正（＃なし）処理を終了する。具体的には、Ｘ座標に値１０を加算し、図８（ｂ）に描画した符頭のように、描画範囲の中央に符頭を描画するようＸ座標を修正する。この位置は、図１８の位置ｂに該当する。
【００８３】
ステップＳ０４０で余りが４または１１でないと判断したときにはＸ座標の修正を行うことなく、Ｘ座標の修正（＃なし）処理を終了する。Ｘ座標は、ステップＳ０２１で既に初期化されており、この場合の符頭の描画位置は、図１８の位置ａに該当する。
【００８４】
このように、次の音高がノートオンであった場合には、図８（ｃ）の左側に描画した＃なし符頭のように、符頭の描画位置がＸ座標を左端（図１８の位置ａに該当）になるようにＸ座標を設定するが、ハ長調におけるミやシの音のように、同じＹ座標に＃付きの符頭が描画され得ないものも存在するので、これを除外している。
【００８５】
図１９を見ると、ノートナンバーを１２で除した余りが４および１１のときは、同じＹ座標に描画すべき＃付きの符頭が存在しないことが分かる。そこで、ノートナンバーを１２で除した余りを取得し、この余りが４または１１であるか否かを判断し、余りが４または１１と判断した場合は、次の音高がノートオフであった場合と同様であるので、Ｘ座標に所定値（図２１では、値１０）を加算する処理を行い、図１８の位置ｂに該当する位置に符頭を描画するようにＸ座標を修正する。逆に、余りの値が４または１１でないと判断した場合は、Ｘ座標の補正を行わないで図１８の位置ａに該当する位置に符頭を描画するように、Ｘ座標は修正しない。
【００８６】
なお、以上の実施形態では、鍵盤の黒鍵に該当する音高に＃を付けて表示するものとして説明したが、＃に代えて♭を付けて表示するようにすることもできる。これは、ステップＳ０２２で使うＹ座標取得テーブルの値を変え、さらに、ステップＳ０３５での＃描画処理を♭描画処理に変えることで実現できる。
【００８７】
また、電子鍵盤楽器の演奏者が、＃と♭の表示を切り替えられるように構成することもできる。この場合には、表示切替フラグを１つ設け、図１の指示操作入力手段６の操作により表示切替フラグを変更できるように構成し、ステップＳ０２２（図１６）とステップＳ０３５（図２０）で表示切替フラグの値に応じて＃描画と♭描画のいずれかの処理に分岐させることにより実現できる。
【００８８】
次に、パソコン・システムと組み合わせた本発明の他の実施形態について説明する。図２２は、そのブロック構成を示す。ＭＩＤＩ楽器１２は、ＭＩＤＩ出力機能を備えた電子楽器であるが、これは電子鍵盤楽器に限られず、例えばギターやトランペットのようにＭＩＤＩ出力機能を持ったものであれば何でも構わない。
【００８９】
通信手段１３は、ＭＩＤＩ楽器１２とパソコン・システム１４とを接続するものであり、ＭＩＤＩ楽器１２から出力したＭＩＤＩ情報をパソコン・システム１４に伝えるために使用される。通信手段１３としては、例えばＭＩＤＩインタフェースが使えるが、ＭＩＤＩ情報の伝達ができれば他のもの、例えばＵＳＢやＩＥＥＥ１３９４、あるいはＢｌｕｅ  Ｔｏｏｔｈのような無線系の通信手段であっても構わない。
【００９０】
パソコン・システム１４は、音高表示領域を描画可能な表示装置を備えたパーソナルコンピュータシステムであり、通信手段１３を介してＭＩＤＩ楽器１２から得たＭＩＤＩ情報を基に描画すべき符頭の音高とノートオン／オフ状態とを把握し、パソコン・システム内の表示装置内に、前記実施形態において説明した音高情報領域を含む情報を描画する。
【００９１】
図２３は、図２２における処理の一例のフローチャートである。まず、ステップＳ０４２では、ＭＩＤＩ楽器１２から通信手段１３を経由して入力されるＭＩＤＩ情報を取得する。ここでは、ＭＩＤＩ情報のステータス・バイトからＭＩＤＩチャンネルとノートオン／オフの状態を取得し、ＭＩＤＩ情報のデータ・バイトからノートナンバーを取得する。
【００９２】
次に、ステップＳ０４３に進み、ステップＳ０４２で取得したＭＩＤＩチャンネルが予め指定された、すなわち予め処理することに決めていたＭＩＤＩチャンネルと一致するか否かを判断する。前記実施形態は電子鍵盤楽器の鍵盤情報を利用した形態であるので入力されるチャンネルは１つだけであるが、本実施形態では最大で１６チャンネルが入力され得る。そのため、予め指定されたＭＩＤＩチャンネルだけを選択し、該当するチャンネルだけを音高表示領域の表示に反映させるようにしておく必要がある。なお、処理するＭＩＤＩチャンネルの指定は、パソコン・システムが備えるキーボード、マウス、マウスパッドなどの入力装置から行うことができるようにする。
【００９３】
ステップＳ０４３で、取得したＭＩＤＩチャンネルが指定されたＭＩＤＩチャンネルと一致すると判断したときステップＳ０４４に進んで音高表示の更新処理を実施する。これは、前記実施形態のステップＳ０３３と同じ処理であるので説明は省略する。
【００９４】
ステップＳ０４３で、取得したＭＩＤＩが指定されたＮＩＤＩチャンネルでないと判断したときはエンドに進んで本処理を終了する。
【００９５】
なお、図示しないが、本実施形態でも前記実施形態と同様に＃表示と♭表示のいずれを採用してもよいし、＃表示と♭表示を切り替えられるように構成してもよい。この場合、フローチャートの変更点は前記実施形態と同じであるが、その切り替えの指示は、パソコン・システム１４が備えるマウスやマウスパッド、あるいは入力用のペンといった入力手段を利用して行うことができる。
【００９６】
また、本実施形態のＭＩＤＩ楽器１２は、電子鍵盤楽器でなくてもよく、現在ＭＩＤＩ出力できる電子楽器として市販されている、例えば、電子鍵盤楽器以外のギターやバイオリンなどの弦楽器や、トランペットなどの管楽器などでもよい。本発明とこれら楽器と組み合わせることで、例えばギターの弦と楽譜上の音符との対応関係を楽に把握できるようになり、電子鍵盤楽器を演奏する場合と同様の効果が得られる。
【００９７】
以上、実施形態について説明したが、本発明は、種々の変形が可能である。例えば、指示操作入力手段６は、パネル上に設けた１個以上のボタンやホイール操作子、ジョグボールに限られず、マウスやマウスパッドのような移動を検知できる手段でもよい。このような移動を検知できる手段を使った場合は、図４のように音高表示領域の移動を行う操作および処理が楽になるという利点がある。なお、ボタンなど移動を検知できない指示操作入力手段６の場合、予め音高表示領域の移動先を１つ以上決めておき、指示操作入力手段６によって移動先を指示し切り替えるような構成にすることもできる。
【００９８】
また、指示操作入力手段６として、タッチパネルのような表示手段と指示操作入力手段が一体化されたものを利用してもよい。この場合、図示しないが、図１の表示手段４と指示操作入力手段６とが一体化されてタッチパネル機能付き表示手段となり、該タッチパネル機能付き表示手段に対するデータの流れは双方向になる。また、タッチパネルに対して指を押下・離脱、あるいは移動させて音高表示領域の移動などを行わせることができる。
【００９９】
【発明の効果】
以上に詳細に説明したように、本発明によれば、大掛かりな照光装置や広い描画領域を使うことなく、楽器操作子の操作位置（音高）を的確に提示できるようになる。また、操作した鍵の音高が大譜表の一部を切り出したイメージとして描画されるので、楽譜と鍵との対応関係が把握し易くなり、楽譜に慣れていない初心者でも楽譜を使った演奏練習が楽にできるようになる。また、演奏技術が高い人と同様に楽譜を使う形態で演奏することで、光る鍵を追いかける方法で演奏したときよりも、達成感や満足感が得られるようになる。
【図面の簡単な説明】
【図１】電子鍵盤楽器に適用した本発明の一実施形態のブロック構成図である。
【図２】表示手段上に表示される音高表示領域の一例の説明図である。
【図３】表示手段上に表示される音高表示領域の他の例の説明図である。
【図４】表示手段上での音高表示領域の移動の例の説明図である。
【図５】音高表示領域の具体的表示の一例の説明図である。
【図６】音高表示領域と音高の描画領域との対応関係の例の説明図である。
【図７】音高表示領域における音高の具体的表示の一例の説明図である。
【図８】音高表示領域における音高の具体的表示の他の例の説明図である。
【図９】音高表示領域における音高の具体的表示のさらに他の例の説明図である。
【図１０】鍵盤表示領域を設けた場合の表示の一例の説明図である。
【図１１】鍵盤表示領域を設けた場合の表示の一例を拡大た説明図である。
【図１２】音高表示処理の一例のフローチャートである。
【図１３】音高表示更新処理の詳細の一例を示すフローチャートである。
【図１４】符頭の描画処理の詳細の一例を示すフローチャートである。
【図１５】符頭の描画色指定処理の詳細の一例を示すフローチャートである。
【図１６】符頭の描画座標取得処理の詳細の一例を示すフローチャートである。
【図１７】符頭の描画Ｘ座標修正処理の詳細の一例を示すフローチャートである。
【図１８】符頭の描画位置の説明図である。
【図１９】音高とＹ座標の関係の説明図である。
【図２０】Ｘ座標の修正（＃あり）処理の詳細の一例を示すフローチャートである。
【図２１】Ｘ座標の修正（＃なし）処理の詳細の一例を示すフローチャートである。
【図２２】パソコン・システムと組み合わせた本発明の他の実施形態のブロック構成図である。
【図２３】本発明の他の実施形態における処理の一例のフローチャートである。
【図２４】従来の音高表示を示す図である。
【符号の説明】
１・・・ＣＰＵ、２・・・ＲＯＭ、３・・・ＲＡＭ、４・・・表示手段、５・・・データ・バス、６・・・指示操作入力手段、７・・・鍵盤操作入力手段、８・・・音源回路、９・・・オーディオ回路、１０・・・スピーカ、１１・・・ＭＩＤＩ情報通信手段、１２・・・音高表示領域、１３・・・鍵盤表示領域、１４・・・ＭＩＤＩ楽器、１５・・・通信手段、１６・・・パソコン・システム
【図１】
2004258391.tif 000003
【図２】
2004258391.tif 000004
【図３】
2004258391.tif 000005
【図４】
2004258391.tif 000006
【図５】
2004258391.tif 000007
【図６】
2004258391.tif 000008
【図７】
2004258391.tif 000009
【図８】
2004258391.tif 000010
【図９】
2004258391.tif 000011
【図１０】
2004258391.tif 000012
【図１１】
2004258391.tif 000013
【図１２】
2004258391.tif 000014
【図１３】
2004258391.tif 000015
【図１４】
2004258391.tif 000016
【図１５】
2004258391.tif 000017
【図１６】
2004258391.tif 000018
【図１７】
2004258391.tif 000019
【図１８】
2004258391.tif 000020
【図１９】
2004258391.tif 000021
【図２０】
2004258391.tif 000022
【図２１】
2004258391.tif 000023
【図２２】
2004258391.tif 000024
【図２３】
2004258391.tif 000025
【図２４】
2004258391.tif 000026