(57)【特許請求の範囲】
【請求項１】
左手パート譜又はコード譜いずれかの楽譜表示を選択的に設定する設定手段と、
ユーザによる演奏操作に応じて演奏情報を発生する演奏手段と、
左手パートの楽曲進行情報及び楽曲のコード進行を示すコード進行情報を取得する取得手段と、
前記取得したコード進行情報に基づき、各コードの根音に対応する１の音高を決定すると共に、各コードの構成に応じて定まる前記根音以外の複数の音高を決定する決定手段と、
前記設定された楽譜が左手パート譜である場合には前記左手パートの楽曲進行情報に従って左手パート譜の楽譜データを生成する一方で、前記設定された楽譜がコード譜である場合には前記各コード毎に決定した１乃至複数の音高をコード進行順に楽譜表示するコード譜の楽譜データを生成する生成手段と、
前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って、前記設定された楽譜が左手パート譜である場合に前記生成される左手パート譜の楽譜データに基づく左手パート譜、あるいは前記設定された楽譜がコード譜である場合に前記生成されるコード譜の楽譜データに基づくコード譜のいずれかの楽譜を表示する表示手段と、
前記左手パート譜の楽譜表示に応じた演奏操作に従って前記演奏手段から発生される演奏情報に対応する単音の楽音を発生する楽音制御と、前記コード譜の楽譜表示に応じた演奏操作に従って前記演奏手段から発生される演奏情報に基づく自動伴奏による和音の楽音を発生する楽音制御とを行う楽音制御手段であって、該楽音制御手段は前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って前記楽音制御を切り替えて実行するものと
を具えた楽譜表示装置。
【請求項２】
少なくともメロディパート及び伴奏パートの各演奏情報を含む自動演奏データを取得するデータ取得手段と、
前記取得した自動演奏データに基づき、メロディパートを楽譜表示するメロディ譜の楽譜データ及び伴奏パートを楽譜表示する伴奏パート譜の楽譜データを生成する楽譜データ生成手段と、
前記生成したコード譜又は前記生成した伴奏パート譜のいずれか一方を選択する選択手段とをさらに具え、
前記表示手段は、前記選択手段によって選択されたコード譜又は伴奏パート譜の一方に対応する前記コード譜の楽譜データ又は前記伴奏パート譜の楽譜データに基づき、前記生成したメロディ譜の楽譜データに基づくメロディ譜と共にコード譜又は伴奏データ譜を表示することを特徴とする請求項１に記載の楽譜表示装置。
【請求項３】
前記取得した自動演奏データに含まれるメロディパート及び伴奏パートの各演奏情報に従ってコード進行データを自動的に生成する生成手段をさらに具え、
前記取得手段は、前記自動演奏データにコード進行情報が含まれている場合には該コード進行情報を取得する一方で、前記自動演奏データにコード進行情報が含まれていない場合には前記生成したコード進行データを前記コード進行情報として取得することを特徴とする請求項２に記載の楽譜表示装置。
【請求項４】
コード構成音の一部を省いた残りの構成音が他のコードのコード構成音に該当するコードである場合に、当該コードを前記他のコードに変換するコード変換手段をさらに具え、
前記決定手段は、前記取得したコード進行情報に基づくコードが前記コードに該当しない場合には当該コードに従って前記１乃至複数の音高を決定する一方で、前記取得したコード進行情報に基づくコードが前記コードに該当する場合には該変換後のコードに従って前記１乃至複数の音高を決定することを特徴とする請求項１乃至３のいずれかに記載の楽譜表示装置。
【請求項５】
前記決定手段は、前記コード進行情報に基づくコード進行順における直前のコードを参照して１乃至複数の音高からなる当該コードの転回形を求め、該求めたコードの転回形を前記コードの根音に対応する１の音高及び各コードの構成に応じて定まる前記根音以外の複数の音高として決定することを特徴とする請求項１乃至４のいずれかに記載の楽譜表示装置。
【請求項６】
コンピュータに、
左手パート譜又はコード譜いずれかの楽譜表示を選択的に設定する手順と、
ユーザによる演奏操作に応じて演奏情報を発生する手順と、
左手パートの楽曲進行情報及び楽曲のコード進行を示すコード進行情報を取得する手順と、
前記取得したコード進行情報に基づき、各コードの根音に対応する１の音高を決定すると共に、各コードの構成に応じて定まる前記根音以外の複数の音高を決定する手順と、
前記設定された楽譜が左手パート譜である場合には前記左手パートの楽曲進行情報に従って左手パート譜の楽譜データを生成する一方で、前記設定された楽譜がコード譜である場合には前記各コード毎に決定した１乃至複数の音高をコード進行順に楽譜表示するコード譜の楽譜データを生成する手順と、
前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って、前記設定された楽譜が左手パート譜である場合に前記生成される左手パート譜の楽譜データに基づく左手パート譜、あるいは前記設定された楽譜がコード譜である場合に前記生成されるコード譜の楽譜データに基づくコード譜のいずれかの楽譜を表示する手順と、
前記左手パート譜の楽譜表示に応じた演奏操作に従って発生される前記演奏情報に対応する単音の楽音を発生する楽音制御と、前記コード譜の楽譜表示に応じた演奏操作に従って発生される前記演奏情報に基づく自動伴奏による和音の楽音を発生する楽音制御とを行う手順であって、該手順は前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って前記楽音制御を切り替えて実行するものと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、楽譜を表示する楽譜表示装置及びプログラムに関する。特に、自動伴奏用のコード入力情報などとしてコードを楽譜に表示する楽譜表示装置及びプログラムに関する。
【背景技術】
【０００２】
自動伴奏機能を有する電子鍵盤楽器においては、演奏者が容易に自動伴奏を行うことのできるよう、例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイに表示する譜面上に、自動伴奏用のコード（和音）入力情報としてコード名（例えば「Ｃ」、「Ｅｍ７」などの和音名）を表示するようにしている。すなわち、演奏者は譜面上に表示されたコード名を見ながら、鍵盤のうち予め決められた所定のコード検出鍵域にて前記表示されたコード名に対応する複数の鍵を押鍵することによって、前記コードに基づく伴奏演奏を自動的に行うことができるようになっている。また、演奏者に対する演奏補助として、演奏者が現在押鍵しているコードと本来押鍵すべきコードとに関して、各コードの構成音を五線譜表示あるいは鍵盤位置表示などにより表示することで、演奏者に対してコードの押え方を指示する技術が従来から知られている。例えば、下記に示す特許文献１に記載されている技術がその一例である。
【特許文献１】特開平8−234738号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、電子鍵盤楽器などを利用するユーザの中には、コードについて理解できていない（言いかえれば、コードに関しての知識が足らない）が楽譜を読むことができ、コードがコード名表示でなく音符表示により譜面上に表示されていればコードに該当する鍵を押鍵することができる、といったようなユーザもいる（例えば、コード名からはそのコード構成音がすぐには分からない初心者など）。そのようなユーザにとっては、自動伴奏用のコード情報としてコード名が譜面上に表示されていても、実際にどの鍵を押鍵すればよいのかがすぐには分からないため、自動伴奏用のコード入力情報として譜面上にコード名を表示することは適切でない、という問題点があった。また、従来においてはコード進行にあわせて次に押鍵すべきコードの構成音のみを表示することから、演奏者にとっては自動伴奏のための押鍵タイミングが分かりづらくて使いずらいものであった。そこで、演奏者に対してコード入力のタイミングを分かり易く提示するものが従来から望まれていたが、そのような表示を行う楽音表示装置及びプログラムは未だ提案されていない。
【０００４】
本発明は上述の点に鑑みてなされたもので、コードについて理解できていないようなユーザであっても、コード入力を行うことを可能としたコード表示を行う楽譜表示装置及びプログラムを提供しようとするものである。
【課題を解決するための手段】
【０００５】
本発明に係る楽譜表示装置は、左手パート譜又はコード譜いずれかの楽譜表示を選択的に設定する設定手段と、ユーザによる演奏操作に応じて演奏情報を発生する演奏手段と、左手パートの楽曲進行情報及び楽曲のコード進行を示すコード進行情報を取得する取得手段と、前記取得したコード進行情報に基づき、各コードの根音に対応する１の音高を決定すると共に、各コードの構成に応じて定まる前記根音以外の複数の音高を決定する決定手段と、前記設定された楽譜が左手パート譜である場合には前記左手パートの楽曲進行情報に従って左手パート譜の楽譜データを生成する一方で、前記設定された楽譜がコード譜である場合には前記各コード毎に決定した１乃至複数の音高をコード進行順に楽譜表示するコード譜の楽譜データを生成する生成手段と、前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って、前記設定された楽譜が左手パート譜である場合に前記生成される左手パート譜の楽譜データに基づく左手パート譜、あるいは前記設定された楽譜がコード譜である場合に前記生成されるコード譜の楽譜データに基づくコード譜のいずれかの楽譜を表示する表示手段と、前記左手パート譜の楽譜表示に応じた演奏操作に従って前記演奏手段から発生される演奏情報に対応する単音の楽音を発生する楽音制御と、前記コード譜の楽譜表示に応じた演奏操作に従って前記演奏手段から発生される演奏情報に基づく自動伴奏による和音の楽音を発生する楽音制御とを行う楽音制御手段であって、該楽音制御手段は前記左手パート譜又はコード譜いずれかの楽譜表示設定に従って前記楽音制御を切り替えて実行するものとを具える。
【０００６】
この発明の好ましい実施例として、前記楽譜表示装置は、少なくともメロディパート及び伴奏パートの各演奏情報を含む自動演奏データを取得するデータ取得手段と、前記取得した自動演奏データに基づき、メロディパートを楽譜表示するメロディ譜の楽譜データ及び伴奏パートを楽譜表示する伴奏パート譜の楽譜データを生成する楽譜データ生成手段と、前記生成したコード譜又は前記生成した伴奏パート譜のいずれか一方を選択する選択手段とをさらに具え、前記表示手段は、前記選択手段によって選択されたコード譜又は伴奏パート譜の一方に対応する前記コード譜の楽譜データ又は前記伴奏パート譜の楽譜データに基づき、前記生成したメロディ譜の楽譜データに基づくメロディ譜と共にコード譜又は伴奏データ譜を表示することを特徴とする。
【０００７】
本発明によると、左手パート譜又はコード譜いずれかの楽譜表示を選択的に設定することができ、コード譜を表示するよう設定された場合には、楽曲のコード進行を示すコード進行情報に基づき、各コードの根音に対応する１の音高と、各コードの構成に応じて定まる前記根音以外の複数の音高とを決定し、コード進行順に各コード毎に対応する前記決定した１乃至複数の音高を表示する。他方、左手パート譜を表示するよう設定された場合には、左手パートの楽曲進行情報に従って生成される左手パート譜の楽譜データに基づき、左手パート譜を表示する。また、この左手パート譜又はコード譜いずれかの楽譜表示設定を契機として、前記左手パート譜の楽譜表示に応じたユーザによる演奏操作に従って発生される演奏情報に対応する単音の楽音を発生する楽音制御と、前記コード譜の楽譜表示に応じたユーザによる演奏操作に従って発生される演奏情報に基づく自動伴奏による和音の楽音を発生する楽音制御とを切り替える。すなわち、左手パート譜の表示からコード譜を表示するよう設定された場合には、楽曲のコード進行を示すコード進行情報に基づく各コードについて、各コードの根音に対応する１の音高と各コードの構成に応じて定まる前記根音以外の複数の音高とからなるコード構成音に展開したコード譜を表示すると共に、前記演奏情報に対応する単音の楽音を発生する楽音制御から前記演奏情報に基づく自動伴奏による和音の楽音を発生する楽音制御に切り替えて楽音を発生する。このようにすると、ユーザは表示中の楽譜が左手パート譜であるか又はコード構成音を展開したコード譜であるかを見て、左手パート譜である場合に必要とされるマニュアル演奏操作又はコード譜である場合に必要とされる自動伴奏のためのコード進行情報に基づくコードに関する適切なコード入力操作など、表示中の楽譜態様に合わせて使い分けの必要な演奏操作を別途に楽音制御の切り替えを行わずとも簡単に行うことができるようになる。
【０００８】
本発明は、装置の発明として構成し実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。
【発明の効果】
【０００９】
この発明によれば、楽曲のコード進行を示すコード進行情報に基づき、コードを１乃至複数の音高からなるコード構成音に展開して楽譜表示するようにしたことから、コードをよく理解できていないユーザであっても前記楽譜表示を見て、自動伴奏のためのコード入力などを適切に行うことができるようになる、という効果を得る。
【発明を実施するための最良の形態】
【００１０】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１１】
図１は、この発明に係る楽譜表示装置を適用した電子鍵盤楽器の全体構成を示したハード構成ブロック図である。本実施例に示す電子鍵盤楽器は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３からなるマイクロコンピュータによって制御される。ＣＰＵ１は、この電子鍵盤楽器全体の動作を制御するものである。このＣＰＵ１に対して、データ及びアドレスバス１Ｄを介してＲＯＭ２、ＲＡＭ３、検出回路４，５、表示回路６、音源回路７、効果回路８、外部記憶装置１０、MIDIインタフェース（I/F）１１および通信インタフェース（I/F）１２がそれぞれ接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ１Ａが接続されている。例えば、タイマ１Ａはクロックパルスを発生し、発生したクロックパルスをＣＰＵ１に対して処理タイミング命令として与えたり、あるいはＣＰＵ１に対してインタラプト命令として与える。ＣＰＵ１は、これらの命令に従って各種処理を実行する。
【００１２】
ＲＯＭ２は、ＣＰＵ１により実行される各種プログラムや各種データを格納するものである。ＲＡＭ３は、ＣＰＵ１が所定のプログラムを実行する際に発生する各種データを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリ等として使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。演奏操作子４Ａは楽音の音高を選択するための複数の鍵を備えた例えば鍵盤等のようなものであり、各鍵に対応してキースイッチを有しており、この演奏操作子４Ａ（鍵盤等）はユーザ自身の手弾きによるマニュアル演奏及び自動伴奏用のコード入力のために使用できるのは勿論のこと、演奏したい曲を選択するための入力手段などとして使用することもできる。検出回路４は、演奏操作子４Ａの各鍵の押圧及び離鍵を検出することによって検出出力を生じる。
【００１３】
設定操作子（スイッチ等）５Ａは、例えば演奏したい曲（詳しくは自動演奏データ）を選択する曲選択スイッチ、演奏開始を指示する演奏開始スイッチ、「右手パート用の譜面」（例えばメロディ譜など）に加えて「自動伴奏用のコードの押え方（コード譜と呼ぶ）」又は「左手パート用の譜面（左手譜又は伴奏パート譜と呼ぶ）」のいずれをディスプレイ６Ａに表示させるかを指示する左手パート表示スイッチ、コードを簡略化して表示させるか否かを指示するコード簡略化スイッチ、自動伴奏の元となる伴奏パターンを選択する伴奏選択スイッチなどがある。勿論、これら以外にも、音高、音色、効果等を選択・設定・制御するために用いる数値データ入力用のテンキーや文字データ入力用のキーボード、あるいはディスプレイ６Ａに表示される所定のポインティングデバイスを操作するために用いるマウスなどの各種操作子を含んでいてよい。検出回路５は、上記各スイッチの操作状態を検出し、その操作状態に応じたスイッチ情報をデータ及びアドレスバス１Ｄを介してＣＰＵ１に出力する。なお、この実施例において、「メロディ譜」とは、「ト音記号」で示される高音域の１行の五線譜のみで構成されているメロディパート用の演奏情報を示す楽譜である。「左手譜（伴奏パート譜）」とは、「へ音記号」で示される低音域の１行の五線譜のみで構成されている伴奏パート用の演奏情報を示す楽譜である。「コード譜」とは、「ヘ音記号」で示される低音域の１行の五線譜のみで構成されている自動伴奏用のコード入力情報を示す楽譜である。
【００１４】
表示回路６は例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイ６Ａに、演奏曲として指定することが可能な曲（自動演奏データ）の一覧を表示したり、少なくとも「メロディ譜」及び「コード譜」又は「左手譜」を含む上下２段からなる表示形式の楽譜（後述する図６参照）を表示させたり、あるいはＣＰＵ１の制御状態などを表示したりする。ユーザは該ディスプレイ６Ａに表示されるこれらの各種情報を参照することで、例えば演奏曲（自動演奏データ）の選択、メロディ譜に加えてディスプレイ６Ａに表示させたい譜面の種類（例えば、コード譜又は左手譜のいずれか）の設定などの各種選択／設定操作、さらにはメロディ及び伴奏などの曲演奏操作を容易に行うことができる。音源回路７は複数のチャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス１Ｄを経由して与えられた、ユーザによる演奏操作子４Ａの操作に応じて発生される、あるいは伴奏パターンデータに基づき発生される各種演奏情報を入力し、これらの演奏情報に基づいて楽音信号を発生する。音源回路７から発生された楽音信号は、効果回路８を介して効果付与されてアンプやスピーカなどを含むサウンドシステム９から発音される。この音源回路７と効果回路８とサウンドシステム９の構成には、従来のいかなる構成を用いてもよい。例えば、音源回路７はFM、PCM、物理モデル、フォルマント合成等の各種楽音合成方式のいずれを採用してもよく、また専用のハードウェアで構成してもよいし、ＣＰＵ１によるソフトウェア処理で構成してもよい。
【００１５】
外部記憶装置１０は、自動演奏データや伴奏パターンデータなどの各種データ、ＣＰＵ１が実行する各種制御プログラム等の制御に関するデータなどを記憶する。なお、上述したＲＯＭ２に制御プログラムが記憶されていない場合、この外部記憶装置１０（例えばハードディスク）に制御プログラムを記憶させておき、それをＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置１０はハードディスク（HD）に限られず、フレキシブルディスク（FD）、コンパクトディスク（CD‐ROM・CD‐RAM）、光磁気ディスク（MO）、あるいはDVD（Digital Versatile Disk）等の着脱自在な様々な形態の外部記憶媒体を利用する記憶装置であればどのようなものであってもよい。あるいは、フラッシュメモリなどの半導体メモリであってもよい。
【００１６】
MIDIインタフェース（I/F）１１は、外部接続された他のMIDI機器１１Ａ等からMIDI形式の自動演奏データ（例えば、押鍵情報などのMIDIイベントデータ）を当該電子鍵盤楽器へ入力したり、あるいは当該電子鍵盤楽器からMIDI形式の自動演奏データを他のMIDI機器１１Ａ等へ出力するためのインタフェースである。他のMIDI機器１１Ａはユーザによる操作に応じてMIDIデータを発生する機器であればよく、鍵盤型、弦楽器型、管楽器型、打楽器型、身体装着型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってもよい。なお、MIDIインタフェース１１は専用のMIDIインタフェースを用いるものに限らず、RS-232C、USB（ユニバーサル・シリアル・バス）、IEEE1394（アイトリプルイー1394）等の汎用のインタフェースを用いてMIDIインタフェース１１を構成するようにしてもよい。この場合、MIDIイベントデータ以外のデータをも同時に送受信するようにしてもよい。MIDIインタフェース１１として上記したような汎用のインタフェースを用いる場合には、他のMIDI機器１１ＡはMIDIイベントデータ以外のデータも送受信できるようにしてよい。勿論、演奏データのデータフォーマットはMIDI形式のデータに限らず他の形式であってもよく、その場合はMIDIインタフェース１１と他のMIDI機器１１Ａはそれにあった構成とする。
【００１７】
通信インタフェース（Ｉ／Ｆ）１２は、例えばLANやインターネット、電話回線等の有線あるいは無線の通信ネットワークＸに接続されており、該通信ネットワークＸを介してサーバコンピュータ１２Ａと接続され、当該サーバコンピュータ１２Ａから制御プログラムあるいは各種データなどを電子鍵盤楽器側に取り込むためのインタフェースである。すなわち、ＲＯＭ２や外部記憶装置１０（例えば、ハードディスク）等に制御プログラムや各種データが記憶されていない場合には、サーバコンピュータ１２Ａから制御プログラムや各種データをダウンロードするために用いられる。こうした通信インタフェース１２は、有線あるいは無線のものいずれかでなく双方を具えていてよい。
【００１８】
なお、演奏操作子４Ａは鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、演奏操作子４Ａやディスプレイ６Ａあるいは音源回路７などを１つの装置本体に内蔵したものに限らず、それぞれが別々に構成され、MIDIインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものであってもよいことは言うまでもない。さらに、本発明に係る楽譜表示装置は上記したような電子楽器の形態に限らず、パーソナルコンピュータやカラオケ装置やゲーム装置など、どのような形態の装置・機器に適用してもよい。
【００１９】
次に、楽音発生あるいは楽譜表示のために用いられる制御情報であって、ＲＯＭ２や外部記憶装置１０に例えばSMF（Standard Midi Fileの略）等の所定のファイル形式で記憶されている、従来知られた自動演奏データ（ソングデータとも呼ぶ）について、図２を用いて簡単に説明する。図２は、自動演奏データのデータ構成の一実施例を示す概略図である。ただし、ここでは複数パート（右手パート（メロディパート）と左手パート（伴奏パート））分のデータが演奏進行順に混在して記録されている形式を例に示した。勿論、これに限らず、各パートのデータがパート単位に独立して記録されている形式であってもよい。
【００２０】
図２に示すように、自動演奏データはヘッダーチャンクデータとトラックチャンクデータとに大きく分けることができる。ヘッダーチャンクデータは予め全てのパートに対して共通に設定しておく必要のあるデータであり、例えば曲名（曲名情報）、拍子（拍子情報）、演奏テンポ（テンポ情報）、該データのデータフォーマット形式（フォーマット情報）などを記憶する。他方、トラックチャンクデータは、楽音発生あるいは楽譜表示の元になる各種イベントデータなどを演奏進行順に記憶する。図２に示す自動演奏データにおいては、ここに記憶される各種イベントデータとして、各パート毎に楽音の発音を指示するノートオン情報や楽音の消音を指示するノートオフ情報等を例示している。このイベントデータは、イベントの発生時刻を表すタイミング情報と組み合わされている。また、各々のタイミングには必要に応じてコード進行順にコード名を示すコード指定情報が記憶されている。
【００２１】
なお、ここでは、全てのパートに対して共通に設定しておく必要のあるデータをヘッダーチャンクデータに配置するようにしたがこれに限らず、トラックチャンクデータの先頭に配置するようにしてもよい。
なお、図２に示した例においては、同時に処理されるべきコード指定情報や右手あるいは左手のノートオン情報の間の時間情報を省略するようにしているが、もちろん省略しないようにしてもよい。
【００２２】
従来知られているように、上記した自動演奏データは楽譜表示のために使用することもできる。例えば、拍子情報に従って所定の表示位置に該当する拍子記号を表示したり、あるいは各パート毎のタイミング情報、ノートオン情報及びノートオフ情報などに従って、適切な音符種類の音符記号（例えば、４分音符や１６分音符など）を、曲の先頭や小節線からの絶対的な表示位置、あるいは隣り合う音符記号との間における相対的な表示位置、かつ適切な音高位置を示す表示位置に配置するようにして、各パート毎に楽譜を表示することができる。この発明に係る楽譜表示装置では、右手パートの各種イベントデータに従って「メロディ譜」における音符記号の表示を、左手パートの各種イベントデータに従って「左手譜」における音符記号の表示をそれぞれ行う。さらには、コード指定情報に従って「コード譜」における音符記号の表示を行う（詳しくは後述する）。
【００２３】
なお、自動演奏データのフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。また、メモリ上において、時系列の自動演奏データが連続する領域に記憶されていてもよいし、飛び飛びの領域に散在して記憶されている自動演奏データを、連続するデータとして別途管理するようにしてもよい。すなわち、時系列的に連続する自動演奏データとして管理することができればよく、メモリ上で連続して記憶されているか否かは問題ではない。
【００２４】
図１に示した電子鍵盤楽器は自動伴奏機能を具え、鍵盤（演奏操作子４Ａ）において予め決められた所定範囲（所謂コード検出鍵域）内にある鍵の操作状況に応じて、所定の伴奏パターンデータに基づく伴奏音を連続的に発生させることができるようになっており、また自動伴奏を行うための自動伴奏用の楽譜（コード譜）をディスプレイ６Ａ上に表示する。そこで、こうした楽譜表示や演奏者による演奏操作子４Ａの操作に応じた演奏を行う「メイン処理」について、図３を用いて説明する。図３は、「メイン処理」の一実施例を示すフローチャートである。ただし、ここでは、ユーザにより演奏曲が選択された（この曲選択操作に応じて、ＲＯＭ２や外部記憶装置１０からＲＡＭ３に該当するソングデータが読み出しされる）以降の処理を示す。なお、ディスプレイ６Ａに表示する楽譜として、ここでは上段にメロディ譜を下段にコード譜又は左手譜を８小節分表示する場合（後述する図６参照）を例に説明する。以下、図３に示したフローチャートに従って、「メイン処理」について説明する。
【００２５】
ステップＳ１は、ＲＡＭ３に読み出したソングデータにはコード指定情報に互換性のあることを表す種類の「フォーマット情報」（図２参照）が含まれているか否かを判定する。すなわち、当該ソングデータに記録済みの「コード指定情報」が、本電子鍵盤楽器で認識できるデータ形式で記録されているか否かを判定する。コード指定情報が互換性のあることを表す種類のフォーマット情報が含まれていると判定した場合には（ステップＳ１のＹＥＳ）、コード自動判別フラグを「オフ」に設定しておく（ステップＳ２）。一方、コード指定情報に互換性のあることを表す種類のフォーマット情報が含まれていない（あるいは、そもそもそうしたフォーマット情報が記録されていないような場合も含む）と判定した場合には（ステップＳ１のＮＯ）、コード自動判別フラグを「オン」にしておく（ステップＳ３）。このコード自動判別フラグはコード譜を表示する際に参照する情報として、ソングデータのコード進行情報を利用するか又はソングデータのイベント情報を利用するかを決定するためのものであり（後述する図４のステップＳ２５参照）、コード指定情報が互換性のあることを表すフォーマット情報が含まれている場合にはそのコード指定情報をそのまま使用することができるので「オフ」設定し、コード指定情報が互換性のあることを表すフォーマット情報が含まれていない場合には当該楽器ではそのコード指定情報を使用することができないので「オン」設定する。
【００２６】
ステップＳ４は、演奏者によるパネル操作（左手パート表示スイッチ操作）に応じて、左手パート表示フラグを「オン」又は「オフ」に設定する。この左手パート表示フラグは楽譜表示する左手演奏用の譜面種類を決定するためのものであり、「オフ」設定の場合には「自動伴奏用のコードの押え方（コード譜）」が、「オン」設定の場合には「左手譜（伴奏パート譜）」をそれぞれ表示する（後述する図４のステップＳ２４参照）。ステップＳ５は、演奏者によるパネル操作（コード簡略化スイッチ操作）に応じて、コード簡略指定フラグを「オン」又は「オフ」に設定する。このコード簡略指定フラグは、操作態様が難しいコードを簡単な操作態様のコードに簡略化するか否かを指定するためのものであり、「オン」設定である場合にはコードの簡略化が行われるようになっている（後述する図４のステップＳ２８参照）。コードの簡略化が行われた場合には、コード譜には簡略化された操作態様での音符表示がなされると共に、演奏者による簡略化された操作態様に応じた鍵の操作によって簡略化された後のコードの構成音に基づく自動伴奏がなされる。ステップＳ６は、ディスプレイ６Ａ上に表示する楽譜の元となる楽譜データを生成する。この楽譜データ生成の詳細な説明については、後述する（後述する図４参照）。ステップＳ７は、前記生成した楽譜データから、演奏者による演奏開始前にディスプレイ６Ａに最初に表示すべき範囲（この実施例では、曲の先頭から８小節分）に相当する箇所のデータを読み出して、これに基づきディスプレイ６Ａに後述するような２段構成の楽譜表示画面（図６参照）を表示する。
【００２７】
ステップＳ８は、カレントポジションを曲の先頭に設定する。ステップＳ９は、前記設定されたカレントポジションに従い画面上のカレントポジション表示を更新する。従来知られているように、カレントポジションとは曲中における現在演奏中の箇所であって、演奏進行に伴いカレントポジションは曲中において順次に移動する。画面上にはこのカレントポジションに対応した表示がなされており（後述の図６に示す演奏指示ポインタＰ参照）、該カレントポジション表示はカレントポジションの移動にあわせて画面上において該当する位置を指し示すように更新される。したがって、ここでは曲の先頭にカレントポジション表示がなされる。ステップＳ１０は、演奏者による演奏開始スイッチの操作に応じてスタート操作されたか否かを判定する。スタート操作されたと判定した場合には（ステップＳ１０のＹＥＳ）、カレントポジションの進行（つまり演奏進行）にあわせて楽譜表示を更新したり、演奏者による鍵盤操作に応じた演奏を行ったりする「割り込み処理」（後述する図５参照）の実行を許可する。
【００２８】
上述した「メイン処理」において実行する「楽譜データ生成処理」（図３のステップＳ６参照）について、図４を用いて説明する。図４は、「楽譜データ生成処理」の一実施例を示すフローチャートである。
【００２９】
ステップＳ２１は、楽譜データの領域をクリアするなどして楽譜データを初期化する。ステップＳ２２は、ソングデータからタイミング情報と拍子情報とを読み出し、該当する拍子記号を適宜の位置に配置した２段構成の楽譜における上段（１段目）部分と下段（２段目）部分に相当する楽譜データをそれぞれ作成する。ステップＳ２３は、ソングデータからタイミング情報と右手パートのノートオン情報／ノートオフ情報とを読み出し、これに基づく右手パートに関する音符情報（音符記号）を適宜に配置した楽譜の上段部分の楽譜データ（つまりメロディ譜）を曲全体にわたって作成する。ステップＳ２４は、左手パート表示フラグが「オン」に設定されているか否かを判定する。左手パート表示フラグが「オン」に設定されていると判定した場合には（ステップＳ２４のＹＥＳ）、ソングデータからタイミング情報と共に左手パートのノートオン情報／ノートオフ情報を読み出して、これに基づく左手パートに関する音符情報（音符記号）を適宜に配置した楽譜の下段部分の楽譜データ（つまり左手譜）を曲全体にわたって作成する（ステップＳ３４）。この場合には、当該処理をこれで終了する。
【００３０】
上記ステップＳ２４において、左手パート表示フラグが「オフ」に設定されていると判定した場合には（ステップＳ２４のＮＯ）、コード自動判別フラグが「オン」に設定されているか否かを判定する（ステップＳ２５）。コード自動判別フラグが「オン」に設定されている場合には（ステップＳ２５のＹＥＳ）、ソングデータからタイミング情報と右手パートのノートオン情報／ノートオフ情報、左手パートのノートオン情報／ノートオフ情報を読み出す（ステップＳ２６）。そして、前記読み出したタイミング情報と左右各パートのノートオン情報／ノートオフ情報から、コードを自動判別してコード進行を生成して一時記憶する（ステップＳ２７）。このノートオン情報／ノートオフ情報からコードを自動判別する技術については公知であることから、ここでの説明を省略する。一方、コード自動判別フラグが「オフ」に設定されている場合には（ステップＳ２５のＮＯ）、ソングデータからタイミング情報とコード指定情報を読み出してコード進行として一時記憶する（ステップＳ３３）。
【００３１】
ステップＳ２８は、コード簡略指定フラグが「オン」に設定されているか否かを判定する。コード簡略指定フラグが「オン」に設定されている場合には（ステップＳ２８のＹＥＳ）、前記一時記憶したコード進行に従って、該コード進行において指定されている各コードを従来知られているような所定のコード変換テーブル（図示せず）に基づいて簡略化する（ステップＳ２９）。例えば、「Ｃ９（Ｃナインス）」コードを「Ｃ（Ｃメジャー）」コードに、「Ｃ６（Ｃメジャー6th）」コードを「Ａｍ７（Ａマイナー7th）」コードに簡略化するなどのように、簡略化対象のコードのコード構成音のうち一部を省いた構成音が他のコード構成音に該当するコードであれば、該他のコードに変換する。ステップＳ３０は、指定されている各コード（前記簡略化されたコードを含む）を、コード進行順における直前のコードのボイシングに最も近い転回形を選択する。つまり、提示すべきコード構成音がユーザによる現在の押鍵状態に近い押鍵状態となるよう、コード構成音の転回を行う。この転回に関しての処理は、テーブルを利用するなどした公知のどのような方法であってよい。ステップＳ３１は、コード進行における各コードを音符情報に展開する。すなわち、各コードの構成音からなる複数の音符情報（音符記号）に展開する。例えば、「Ｃ（Ｃメジャー）」コードの場合には、音符情報として根音（ルート）を含む「ド」「ミ」「ソ」に展開する。勿論、簡略化されたコードについては、簡略化後のコードに従う。なお、コード構成音の転回が行われていた場合には、転回後の音符情報に従う。ステップＳ３２は、前記展開した音符情報を基に、該音符を配置した楽譜の下段部分（ここではコード譜）の楽譜データを曲全体にわたって作成する。上記展開した音符情報は、自動伴奏を行うために演奏者が押鍵すべき鍵を特定するために必要な情報である。
【００３２】
次に、上述した「メイン処理」において処理の実行が許可される「割り込み処理」（図３のステップＳ１１参照）について、図５を用いて説明する。図５は、「割り込み処理」の一実施例を示すフローチャートである。当該処理は、タイマ割り込みによって所定の時間間隔（例えば、２ｍｓ（ミリ秒））毎に実行される処理であり、その実行に伴い演奏者による演奏操作に応じた演奏及び自動伴奏が行われると共に、演奏進行に応じた画面表示を行うものである。なお、ここではメロディ譜及びコード譜又は左手譜の表示について、曲の４小節分に該当する範囲毎に表示を更新する場合を例に説明する。
【００３３】
ステップＳ４１は、演奏者により鍵盤（演奏操作子４Ａ）が操作されたか否かを判定する。演奏者により鍵盤が操作されていないと判定した場合には（ステップＳ４１のＮＯ）、ステップＳ４５の処理へジャンプする。演奏者により鍵盤が操作されたと判定した場合には（ステップＳ４１のＹＥＳ）、操作された鍵の位置が予め決められたキースプリット位置よりも低音側の鍵域内（つまりコード検出鍵域内）であるか否かを判定する（ステップＳ４２）。ここで、キースプリット位置とはコード検出鍵域とその他の鍵域とに鍵盤を２分割する鍵盤上の任意の位置であり、ユーザはこのキースプリット位置を任意の位置に設定できるようになっている。操作された鍵の位置がコード検出鍵域内でないと判定した場合には（ステップＳ４２のＮＯ）、音源回路７に対して演奏操作に応じた右手パートの発音を指示する（ステップＳ５２）。すなわち、楽譜にそって正しく演奏操作が行われていれば、画面に表示されている「メロディ譜」通りの発音が行われることになる。
【００３４】
操作された鍵の位置がコード検出鍵域内であると判定した場合には（ステップＳ４２のＹＥＳ）、左手パート表示フラグが「オン」に設定されているか否かを判定する（ステップＳ４３）。左手パート表示フラグが「オン」に設定されていると判定した場合には（ステップＳ４３のＹＥＳ）、音源回路７に対して演奏操作に応じた左手パートの発音を指示する（ステップＳ５１）。すなわち、正しく演奏操作が行われていれば、画面に表示されている「左手譜」通りの発音が行われることになる。一方、左手パート表示フラグが「オフ」に設定されていると判定した場合には（ステップＳ４３のＮＯ）、図示しない伴奏生成ソフトウエアモジュールに演奏操作に応じた鍵操作情報を通知し、伴奏生成ソフトウエアモジュールではそれを自動伴奏に反映させる（ステップＳ４４）。この自動伴奏は、例えば予め用意している伴奏パターンデータを使用して生成するものであってもよいし、コード進行情報における各コードの構成音を使った和音を適切な音域に納めるようにするなどのアルゴリズムにより生成するものであってもよい。予め用意している伴奏パターンデータを使用する場合、伴奏パターンデータは少なくとも演奏レベルに応じて複数種類用意されているとよい。
【００３５】
ステップＳ４５は、カレントポジションを所定の時間だけ進行させる。ステップＳ４６は、前記進行したカレントポジションにあわせて画面におけるカレントポジション表示を更新する。ステップＳ４７は、カレントポジションが予め設定されている所定の楽譜表示更新の位置（ここでは曲の４小節毎）に達したか否かを判定する。カレントポジションが所定の楽譜表示更新の位置に達したと判定した場合には（ステップＳ４７のＹＥＳ）、楽譜データからカレントポジションの次の画面表示範囲に相当する箇所を読み出し、これをもとに楽譜表示画面を更新表示する（ステップＳ４８）。ステップＳ４９は、カレントポジションが曲の終端に達したか否かを判定する。カレントポジションが曲の終端に達したと判定した場合には（ステップＳ４９のＹＥＳ）、割り込みを無効とするなどして、当該処理による自動伴奏及び画面表示を終了させる（ステップＳ５０）。
【００３６】
次に、「楽譜表示画面」について説明する。図６は、「楽譜表示画面」の一実施例を示す概念図である。ただし、ここでは、「メロディ譜」及び「コード譜」、又は「メロディ譜」及び「左手譜」の２段構成からなる五線譜を、曲の８小節分表示するものを例示している。
【００３７】
図６（ａ）,（ｂ）に示す楽譜表示画面は、曲名（ここではEtude1）Ｍと、複数段構成（ここでは２段構成）の五線譜ＲＳ及びＬＣ（又はＬＳ）と、コード名ＣＤと、演奏指示ポインタＰとを表示するものである。曲名Ｍは、曲名情報に従って表示される当該自動演奏データが実現する曲につけられた題名である。五線譜ＲＳ，ＬＣ（又はＬＳ）は、自動演奏データに基づく該当する曲の音符情報（音符記号）を所定の曲範囲毎に表示したものである。この実施例では、４小節毎に分けて、例えば５小節目から８小節目までの音符記号を上半分の画面領域に、９小節目から１２小節目までの音符記号を下半分の画面領域にそれぞれ分けた形で楽譜を表示している。
【００３８】
各画面領域に表示される五線譜は２段構成になっており、そのうちの１段目の五線譜には自動演奏データのうち右手パートに関する音符記号Ｏからなる楽譜ＲＳ（つまりメロディ譜）が表示される。この１段目に表示される音符記号Ｏは、右手パートの演奏イベントデータに基づき表示されるものである。また、この１段目の五線譜の上方には、コード進行に応じたコード名ＣＤが表示される（ここでは、ＣＭ７9、ＦＭ７9）。一方、２段目の五線譜には、図６（ａ）に示すようにコード進行に応じた各コードを展開した音符記号ＯＣからなる楽譜ＬＣ（つまりコード譜）を表示する。すなわち、この２段目に表示される音符記号ＯＣは、前記１段目の五線譜の上方に表示されるコード名ＣＤに対応するコードを展開した音符情報に基づき表示されるものである（ただし、簡略化されている場合や転回されている場合にはそれに従う）。また、２段目の五線譜には、図６（ｂ）に示すように自動演奏データのうち左手パートに関する音符記号ＯＬからなる楽譜ＬＳ（つまり左手譜）を表示することもできる。演奏開始が指示された場合には、演奏の進行に伴って楽譜上を左から右へと移動する演奏指示ポインタＰにより、演奏者が演奏操作すべき音符記号を指し示す。
【００３９】
このようにすると、楽譜に表示された音符が読める演奏者であれば、メロディ譜（１段目の五線譜）上に表示されたコード名ＣＤが理解できなくても、コード譜（２段目の五線譜）上に表示された音符記号ＯＣに従って該当する鍵を操作することで自動伴奏を行うことができる。また、ある程度の曲範囲にわたってメロディ譜と共にコード譜を表示しておき、さらには演奏進行に伴い移動する演奏指示ポインタＰにより演奏位置を指示するようにしたことから、演奏者はメロディパートの演奏にあわせてタイミングよく自動伴奏のためのコード入力を行うことができるようになる。さらに、コード指定情報に従ってコードを音符情報（音符記号）に展開した上で、これを基に楽譜表示できるようにしたことから、自動演奏データに予め「左手譜」を記憶しておくことができ、これにより「左手譜」と「コード譜」とを切り替えて表示させることが容易にできるようになり便利である。
【００４０】
なお、上述した実施例では楽譜データの生成を演奏開始が指示される前に曲全体にわたって一括生成するものを示したがこれに限らず、曲の進行に応じて次に表示すべき範囲の楽譜データを逐次に生成するようにしてもよい。また、そうした場合、転回形の選択は楽譜データを生成する際において直前に演奏者により実際に押下されていた鍵に従って選択するようにしてもよい。
なお、ディスプレイ６Ａに表示する楽譜の表示形態は上記した２段構成のものに限らない。楽譜の表示形態は、ディスプレイ６Ａの大きさ（サイズ）に従って決定するようにしてよい。また、ディスプレイ６Ａの大きさ（サイズ）はユーザの操作などにより設定変更可能であってもよいし、固定であってもよい。左パートの楽譜、右パートの楽譜をそれぞれ左右の画面に別々に表示するようにしてもよい。
【００４１】
なお、楽譜データは五線譜や音楽記号を含む画像データ、あるいは五線譜以外の音楽記号イベントや音符イベントなどの表示位置等を指示する指示データ、などの公知のどのようなものであってもよい。
なお、楽譜の表示は上記実施例に示したようにディスプレイ６Ａ上に画面表示するものに限らず、紙等の媒体に印刷するなどして表示するようにしたものであってもよい。
【図面の簡単な説明】
【００４２】
【図１】この発明に係る楽譜表示装置を適用した電子鍵盤楽器の全体構成を示したハード構成ブロック図である。
【図２】自動演奏データのデータ構成の一実施例を示す概略図である。
【図３】メイン処理の一実施例を示すフローチャートである。
【図４】楽譜データ生成処理の一実施例を示すフローチャートである。
【図５】割り込み処理の一実施例を示すフローチャートである。
【図６】「楽譜表示画面」の一実施例を示す概念図であり、図６（ａ）は「メロディ譜」及び「コード譜」からなる五線譜を、図６（ｂ）「メロディ譜」及び「左手譜」からなる五線譜を示す。
【符号の説明】
【００４３】
１…ＣＰＵ、２…ＲＯＭ、３…ＲＡＭ、４，５…検出回路、４Ａ…演奏操作子、５Ａ…設定操作子、６…表示回路、６Ａ…ディスプレイ、７…音源回路、８…効果回路、９…サウンドシステム、１０…外部記憶装置、１１…MIDIインタフェース、１１Ａ…MIDI機器、１２…通信インタフェース、１２Ａ…サーバコンピュータ、１Ｄ…通信バス、Ｘ…通信ネットワーク
【図１】
0004548365.tif 000002
【図２】
0004548365.tif 000003
【図３】
0004548365.tif 000004
【図４】
0004548365.tif 000005
【図５】
0004548365.tif 000006
【図６】
0004548365.tif 000007