JPH1091061A - 演奏指示装置及びプログラムを記録した媒体 - Google Patents

演奏指示装置及びプログラムを記録した媒体

Info

Publication number
JPH1091061A
JPH1091061A JP9191525A JP19152597A JPH1091061A JP H1091061 A JPH1091061 A JP H1091061A JP 9191525 A JP9191525 A JP 9191525A JP 19152597 A JP19152597 A JP 19152597A JP H1091061 A JPH1091061 A JP H1091061A
Authority
JP
Japan
Prior art keywords
note
hand
image data
key
finger
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.)
Granted
Application number
JP9191525A
Other languages
English (en)
Other versions
JP3684774B2 (ja
Inventor
Kazuo Haruyama
和郎 春山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP19152597A priority Critical patent/JP3684774B2/ja
Publication of JPH1091061A publication Critical patent/JPH1091061A/ja
Application granted granted Critical
Publication of JP3684774B2 publication Critical patent/JP3684774B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 鍵盤装置等の演奏方法を指示するための演奏
指示技術に関し、詳細な演奏方法を指示することができ
る演奏指示装置、演奏指示方法又はプログラムを記録し
た媒体を提供することである。 【解決手段】 親指が人差し指または手のひらに重なっ
た手の画像データを1種類以上、および親指が人差し指
または手のひらに重なっていない手の画像データを2種
類以上記憶する画像記憶手段と、演奏データ中から手の
種類情報を検出する検出手段と、前記手の種類情報に応
じて前記画像記憶手段に記憶されている複数の手の画像
データの中から1つを選択し、表示用の画像データを生
成出力する画像生成手段とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、演奏指示技術に関
し、特に鍵盤装置等の演奏方法を指示するための演奏指
示技術に関する。
【0002】
【従来の技術】複数の鍵と、その各鍵の上部に配置され
たLEDと、演奏データに基づきLEDを用いて演奏者
に指示を与える演奏指示装置とを備えている電子鍵盤楽
器が知られている。演奏指示装置は、演奏者が次に押鍵
すべき鍵に対応するLEDを点灯し、演奏者の演奏を誘
導する。
【0003】また、演奏者の演奏練習のため、演奏者の
演奏操作が演奏データに一致しているか否かを判断する
一致進行制御装置を備える電子鍵盤楽器が知られてい
る。一致進行制御装置は、演奏者による押鍵操作と予め
記憶されている演奏データとを比較し、その比較結果に
応じて曲の進行を制御する。演奏者の押鍵操作が演奏デ
ータに一致しているときには曲の進行を続け、一致しな
いときには一致するまで曲の進行を中断する。
【0004】上記の演奏指示装置と一致進行制御装置の
両方を備えている電子鍵盤楽器において、演奏指示装置
は、複数の鍵に対応するLEDを点灯することにより、
演奏者の演奏を誘導し、一致進行制御装置は、演奏者が
適正な鍵を押鍵するまで曲の進行を中断する。
【0005】
【発明が解決しようとする課題】複数の鍵に対応するL
EDを有する演奏指示装置は、押鍵する鍵を指示するこ
とはできるが、演奏方法をより詳細に指示することはで
きない。例えば、押鍵すべき指の種類や、手の開き方
や、鍵盤上に置く手の位置等を指示することができな
い。
【0006】演奏者は、押鍵すべき鍵を知ることができ
るが、押鍵すべき指の種類等を知ることができないの
で、初心者は、指1本で鍵盤を「モグラ叩き」のように
LEDを追いかける演奏方法を行うことが多く、演奏技
術の上達が望めない。
【0007】本発明の目的は、詳細な演奏方法を指示す
ることができる演奏指示装置、演奏指示方法又はプログ
ラムを記録した媒体を提供することである。
【0008】
【課題を解決するための手段】本発明の演奏指示装置
は、親指が人差し指または手のひらに重なった手の画像
データを1種類以上、および親指が人差し指または手の
ひらに重なっていない手の画像データを2種類以上記憶
する画像記憶手段と、演奏データ中から手の種類情報を
検出する検出手段と、前記手の種類情報に応じて前記画
像記憶手段に記憶されている複数の手の画像データの中
から1つを選択し、表示用の画像データを生成出力する
画像生成手段とを有する。
【0009】手の種類情報は、親指が人差し指または手
のひらに重なった第1の手の形状と、親指が人差し指ま
たは手のひらに重なっていない第2の手の形状を識別す
る。第1の手の形状は、例えば鍵盤操作における指くぐ
りまたは指かぶせである(図3(A)参照)。第2の手
の形状を、手の開き加減に応じて2種類以上用意すれば
(図3(B)、図4(C)、図4(D)参照)、手の位
置を動かさずに、スムーズな演奏方法を演奏者に指示す
ることが可能である。
【0010】また、本発明の演奏指示装置は、手の画像
データを記憶する画像記憶手段と、演奏データ中から手
の前後位置情報を検出する検出手段と、前記手の前後位
置情報に応じて前記画像記憶手段に記憶されている画像
データが示す手が鍵盤の手前または奥に位置する画像デ
ータを生成出力する画像生成手段とを有する。
【0011】手の前後位置情報は、例えば鍵盤上に置く
手の前後方向(手前または奥等)の位置を示す。手の前
後位置は、押す指および押鍵する鍵等により適正な位置
が決まる。また、黒鍵から白鍵へ移行する場合、または
白鍵から黒鍵へ移行する場合等に応じて、次の音に移行
しやすい演奏方法を演奏者に指示することができる。
【0012】さらに、本発明の演奏指示装置は、手の画
像データを記憶する画像記憶手段と、演奏データ中から
押鍵する指を示すための指情報を検出する検出手段と、
前記指情報に応じて前記画像記憶手段に記憶されている
画像データが示す手において押鍵する指の長さを押鍵し
ない場合とは異ならせた画像データを生成出力する画像
生成手段とを有する。
【0013】指情報は、押鍵する指の種類を示す。当該
押鍵する指の長さを変えて手の画像データを生成するこ
とにより、自然な指の演奏形態を表現することができ
る。例えば、黒鍵は鍵の高さが高いので、黒鍵を押鍵す
る場合には押鍵する指の長さを長くし、白鍵は鍵の高さ
が低いので、白鍵を押鍵する場合には押鍵する指の長さ
を短くする。
【0014】さらに、本発明の演奏指示装置は、手の画
像データを記憶する画像記憶手段と、演奏データ中から
ノートオンまたはノートオフを検出するノート検出手段
と、前記ノート検出手段がノートオンまたはノートオフ
を検出すると、該ノートオン時またはノートオフ時に該
ノートの他にノートオン中のノートがあるか否かを演奏
データから検出する手段と、ノートオフ時に他にノート
オン中のノートがなければ、次のノート情報と前記画像
記憶手段に記憶されている手の画像データを基に次のノ
ートの押鍵準備段階の手の画像データを生成出力し、ノ
ートオン時に他にノートオン中のノートがあれば、新た
に検出されたノートオンと前記画像記憶手段に記憶され
ている手の画像を基に該新たに検出されたノートの押鍵
の手の画像データを生成出力する画像生成手段とを有す
る。
【0015】生成された画像データを基に手の画像を表
示する際、ノートオンのタイミングまたはノートオフの
タイミングに応じて、押鍵準備段階の手の画像または押
鍵時の手の画像を表示することができる。演奏者は、押
鍵準備段階の手の画像をお手本にすることにより、押鍵
する前から手を置く位置を知ることができる。
【0016】
【発明の実施の形態】図2は、本発明の実施例による演
奏指示装置に用いる演奏データのフォーマット例を示
す。このフォーマットは、スタンダードMIDIファイ
ルと呼ばれているものであり、演奏データとしては汎用
的なフォーマットである。
【0017】演奏データ10は、ノートイベント1、タ
イミングデータ2、ノートイベント3、タイミングデー
タ4のようなタイミングとノートイベントが対になって
演奏のシーケンスを表すデータと、エンドデータ5を有
する。演奏データ10は、その他、コントロールチェン
ジまたはプログラムチェンジ等を含むことができる。
【0018】ノートイベント1は、ノートオンイベント
である。タイミングデータ2は、ノートイベント1とそ
の次のノートイベント3との間の時間間隔を示す。ノー
トイベント3は、ノートオフイベントである。タイミン
グデータ4は、ノートイベント3と次のノートイベント
(図示せず)との間の時間間隔を示す。エンドデータ5
は、演奏データ10の終了を示す。
【0019】ノートイベント1と3は、共にMIDI形
式のデータであり、3バイトのデータである。ノートオ
ンイベント1は、第1バイトが発音開始(鍵盤の場合は
押鍵)を示すノートオン1aであり、第2バイトが音高
(鍵盤の場合はキーナンバ)を示すノートナンバ1bで
あり、第3バイトが音の立ち上がり状態(鍵盤の場合は
押鍵速度)を示すベロシティ1cである。ノートオフイ
ベント3は、第1バイトが発音終了(鍵盤の場合は離
鍵)を示すノートオフ3aであり、第2バイトがノート
ナンバ3bであり、第3バイトが音の立ち下がり状態
(鍵盤の場合は離鍵速度)を示すベロシティ3cであ
る。
【0020】図1(A)は、図2に示すMIDI規格に
よるノートオフベロシティ3cの構成を示す。
【0021】本実施例では、まず、同図のように、MI
DI規格のノートオフベロシティ3cを準備する。ノー
トオンベロシティ1cも同様の構成である。ただし、演
奏データにおいては、一般的にノートオンベロシティ1
cは音量として使用されるのに対し、ノートオフベロシ
ティ3cは領域が確保されていながら使用されない場合
がほとんどである。
【0022】ノートオフベロシティ3cは、1バイト
(8ビット)からなり、その最上位ビットは、必ず0で
ある。これは、MIDI規格で決められているデータフ
ォーマットである。下位7ビットのデータ6が実際のベ
ロシティのデータである。ベロシティデータ6は、7ビ
ットであり、0〜127の範囲の数値で示される。ノー
トオフベロシティ3c(演奏データ)は、市販されてい
る曲データのソフトウエアから読み出したものでも電子
楽器を用いて作成したものでもよい。
【0023】図1(B)は、図1(A)のノートオフベ
ロシティ3cに手表示情報7を埋め込んだ図である。演
奏データ提供者は、図1(A)に示すノートオフベロシ
ティ3cを準備した後、ノートオフベロシティ3cの下
位7ビットを手表示情報7に書き換える。手表示情報7
は、演奏者が設定または変更することもできる。
【0024】手表示情報7をノートオフベロシティ3c
中に設定すれば、新たに手表示情報7のデータ領域を確
保する場合に比べ、データ量を増加させずにすむ。ま
た、新たなデータ領域を確保する場合には、演奏データ
のフォーマットを変えることになるので、汎用フォーマ
ットの演奏データとの互換性がなくなる。ノートオフベ
ロシティ3c中に手表示情報7を設定すれば、演奏デー
タのフォーマットを変えずにすむので、汎用フォーマッ
トの演奏データとの互換性を維持することができる。
【0025】ノートオフベロシティ3cは、2通りに用
いることができる。1つは、演奏指示装置において手表
示情報として用いることができる。もう1つは、MID
I規格に従って、自動演奏装置等においてノートオフベ
ロシティデータ6として解釈される。元来のノートオフ
ベロシティデータ6(図1(A))は、手表示情報7
(図1(B))に書き換えられてしまうが、ノートオフ
ベロシティデータが使用されない自動演奏装置等では影
響がない。ノートオフベロシティデータを使用する自動
演奏装置等であっても、演奏データのフォーマットは崩
れていないので、誤動作することはない。
【0026】ノートオフベロシティ3c中に手表示情報
7を設定すれば、データ量を増加させずに、手表示情報
7を付加したのと同様の効果が得られる。また、手表示
情報7を設定しても、演奏データとしてのフォーマット
は変化しないので、演奏データとしての汎用性は維持さ
れる。
【0027】次に、手表示情報7の詳細を説明する。手
表示情報7は、手の前後位置情報7a(第6および5ビ
ット)と手の種類情報7b(第4および3ビット)と指
情報7c(第2、1、0ビット)を有する。
【0028】(1)手の前後位置情報(PosY) 手の前後位置情報7aは、2ビット(第6および5ビッ
ト)の情報であり、レジスタPosYに格納される。レ
ジスタPosYの値は、以下の手の前後位置(Y軸座
標)を示す。
【0029】 PosY=0:最手前 PosY=1:手前 PosY=2:奥 PosY=3:最奥 例えば、黒鍵を押鍵するときには手を奥に置き、白鍵を
押鍵するときには手を手前に置くのが好ましい。また、
押鍵する音の音高(鍵)と時間的に前後する音の音高
(鍵)に応じて、適正な手の前後位置が決まる。
【0030】(2)手の種類(HndPat) 手の種類情報7bは、手の開き加減(手の形状)を表す
2ビット(第4および3ビット)の情報であり、レジス
タHndPatに格納される。レジスタHndPatの
値は、以下の手の種類を示す。
【0031】HndPat=0:指くぐりまたは指かぶ
せ(図3(A)参照) HndPat=1:閉じる(図3(B)参照) HndPat=2:小さく開く(図4(C)参照) HndPat=3:大きく開く(図4(D)参照)
【0032】図3(A)、図3(B)、図4(C)、図
4(D)は、手(右手)の種類を示す。ただし、手の前
後位置は全て最手前(PosY=0)として示す。例え
ば、時間的に前後する音の音高(鍵)が離れているとき
には大きく開き、時間的に前後する音の音高(鍵)が隣
であるときには閉じる。指くぐりは、人差し指をくぐっ
て親指で押鍵する演奏であり、指かぶせは、親指にかぶ
せて人差し指等で押鍵する演奏である。いずれも、親指
が人差し指または手のひらに重なる。
【0033】(3)指情報(FngNo) 指情報7cは、押鍵すべき指を示す3ビット(第2、
1、0ビット)の情報であり、レジスタFngNoに格
納される。レジスタFngNoの値は、以下の指情報を
示す。
【0034】 FngNo=0:未使用 FngNo=1:親指 FngNo=2:人差し指 FngNo=3:中指 FngNo=4:薬指 FngNo=5:小指 FngNo=6:グリッサンド右 FngNo=7:グリッサンド左
【0035】指情報を用いることにより、演奏者は1本
の指だけを使って演奏するのではなく、5本の指を使っ
た演奏操作(指遣い)を練習することができる。グリッ
サンドは、ある音高の音から別の音高の音まで連続的に
音高を変化させるものであり、鍵盤上で指を滑らせるよ
うに押鍵する演奏方法である。グリッサンド右は、右側
方向すなわち、低音から高音へのグリッサンドであり、
グリッサンド左は、左側方向すなわち高音から低音への
グリッサンドである。
【0036】上記の3種類の手表示情報は、演奏者に正
しい演奏操作(手の模範形)を示す。また、手表示情報
は、手の動きをスムーズに見せるための情報をも含み、
手がごく自然に動くように表示することができる。
【0037】なお、キーオフベロシティに設定される手
表示情報のビット配分を変えてもよい。例えば、手の前
後位置情報(PosY)を1ビットにし、手の種類情報
(HndPat)を3ビットにし、指情報(FngN
o)を3ビットにしてもよい。
【0038】図5は、手表示情報7およびノートナンバ
1bを基にして表示器に手41の表示を行う例を示す。
【0039】手表示情報7は、手の前後位置情報7aと
手の種類情報7bと指情報7cを有する。ノートナンバ
1bは、ノートオンイベント1(図2)に含まれている
ノートナンバである。
【0040】表示器には、鍵盤45と手41が表示され
る。手を表示するために必要なパラメータは、手の形状
41、押鍵すべき指42、手の前後位置(Y軸)43、
手の左右位置(X軸)44である。
【0041】手の形状41は、手の種類情報(HndP
at)7bに応じて、4つの形状(図3(A)、図3
(B)、図4(A)、図4(B))の中から1つが選択
される。
【0042】押鍵すべき指42は、指情報(FngN
o)に応じて、親指、人差し指、中指、薬指、小指、グ
リッサンド右、グリッサンド左のいずれかが選ばれ、他
の指と異なる色で表示される。さらに、自然な指の動き
を表現するため、押鍵する際には押鍵前に比べ指の長さ
を変えて表示する。具体的には、白鍵を押鍵する時は指
を少し短く表示、黒鍵を押鍵する時は指を少し長く表示
する。指の長さを変えることにより、自然な動きに近く
なり、押鍵している様子を明瞭に確認できる。
【0043】手の前後位置43は、手の前後位置情報
(PosY)に応じて、最手前、手前、奥、最奥のいず
れかが選ばれる。
【0044】手の左右位置44は、指情報(FngN
o)7cとノートナンバ1bによって決まる。具体的に
は、押鍵する鍵46の位置と押鍵すべき指42の位置が
一致するように手の位置を決める。
【0045】押鍵する鍵46は、ノートオンのノートナ
ンバ1bが示す鍵であり、他の鍵とは異なる色で表示さ
れる。
【0046】鍵盤45上には、押鍵時の手41を表示す
るだけでなく、押鍵準備状態の手をも表示する。具体的
には、全ての鍵が離鍵状態になり、かつ次の押鍵まで空
き時間があるときには、次に押鍵すべき鍵の位置で準備
状態の手を表示する。演奏者は、この表示に基づいて次
の押鍵の準備をすることができる。また、準備状態の手
を表示してから、その後押鍵時の手を表示することによ
り、手の動きが滑らかになる。
【0047】手の模範形を表示器に表示することによ
り、各鍵に対応するLEDを点灯する場合に比べ、演奏
者は直感的に演奏操作方法を知ることができる。
【0048】次に、手表示情報を含む演奏データを用い
て実際に表示を行った例を示す。演奏データには、ショ
パン作曲のノクターン第2番のデータを用いた。演奏デ
ータ中のノートオフベロシティには、手表示情報が設定
されている。
【0049】図6(A)、図6(B)、図7(C)、図
7(D)、図8(E)、図8(F)は、ノクターン第2
番の中から抜き出した6つの音符(ノート)B♭3、G
4、F4、G4、F4、E♭4についての表示例を示
す。
【0050】図6(A)は、第1のノートオンイベント
に対応する表示例である。 ノートナンバ=B♭3 ノートオフベロシティ PosY=2(奥) HndPat=2(開小) FngNo=1(親指)
【0051】ノートナンバ(B♭3)は押鍵すべき鍵の
音高であるので、ノートナンバ(B♭3)に対応する黒
鍵の色を変えて表示する。
【0052】このB♭3の黒鍵を押鍵した後には高音側
に白鍵5鍵半分離れたG4の白鍵を押鍵し、次に白鍵1
鍵分低音側のF4の白鍵、再びG4の白鍵を押鍵するこ
とになる。このフレーズを滑らかに演奏するにはB♭3
の黒鍵を親指で押鍵することが好ましい。
【0053】手の前後位置情報PosY=2は、黒鍵を
押鍵する親指に対応し、奥の位置を示す。
【0054】手の種類HndPat=2は、親指と小指
とがほぼ5鍵半分の間隔に対応する小さく開いた手の形
状(図4(C))を示す。
【0055】指情報FngNo=1は親指を示す。色を
変えて親指を表示し、親指で押鍵すべきことを演奏者に
知らせる。手は、鍵盤の上に重ねて表示される。
【0056】この表示を行うことにより、親指を用いて
B♭3の鍵を押鍵すべきことを演奏者に知らせる。手の
左右方向は、押鍵すべき親指を押鍵されるべきB♭3の
鍵上に表示する位置に決められる。
【0057】このように鍵盤中の押鍵すべき鍵を色を変
えること等によって表示し、押鍵に用いる指を押鍵すべ
き鍵に重ねて、かつ色を変えること等によって表示する
ことにより、標準的な演奏形態を表示器上に明瞭に表示
することができる。
【0058】押鍵すべき鍵が黒鍵(B♭3)であるの
で、押鍵すべき指(親指)を少し長くして表示する。図
4(C)に示す手の形状において、親指のみ長めのもの
を差し換えて表示することができる。親指で黒鍵(B♭
3)を押鍵するには、手を奥の位置(PosY=2)に
置くのがよい。
【0059】なお、手の下の鍵盤は、透けるようにして
表示される。例えば、手をハッチングで表示すれば、手
を透かして鍵盤を表示することができる。さらに、押鍵
する指についてはそのハッチングを反転させれば、他の
指と区別することができる。
【0060】図6(B)は、第2のノートオンイベント
に対応する表示例である。 ノートナンバ=G4 ノートオフベロシティ PosY=1(手前) HndPat=2(開小) FngNo=5(小指)
【0061】ノートナンバ(G4)は押鍵すべき鍵の音
高であるので、ノートナンバ(G4)に対応する白鍵の
色を変えて表示する。前音、後音との関係から、この白
鍵は小指で押鍵することが好ましい。すると、手の横方
向位置は、ほとんど変化させないで演奏できる。
【0062】手の前後位置情報PosY=1は、白鍵を
押鍵する小指に合わせて、手前の位置を示す。
【0063】手の種類HndPat=2は、低音側の隣
の白鍵である次の音F4に合わせて、小さく開いた手の
形状(図4(C))を示す。
【0064】指情報FngNo=5は小指を示す。色を
変えて小指を表示し、小指で押鍵すべきことを演奏者に
知らせる。この小指がG4の鍵に重なるように手を表示
する。
【0065】押鍵すべき鍵が白鍵(G4)であるので、
押鍵すべき指(小指)を少し短くして表示する。小指で
白鍵(G4)を押鍵するには、手を手前の位置(Pos
Y=1)に置くのがよい。小指で押鍵することにより、
先の押鍵(図6(A))に対し、手の形状を変えず、か
つ手を左右方向にほとんど動かさなくてよい。
【0066】図7(C)は、第3のノートオンイベント
に対応する表示例である。 ノートナンバ=F4 ノートオフベロシティ PosY=0(最手前) HndPat=1(閉) FngNo=4(薬指)
【0067】ノートナンバ(F4)は押鍵すべき鍵の音
高であるので、ノートナンバ(F4)に対応する鍵の白
色を変えて表示する。前後の音との関係から、この白鍵
は薬指で押鍵することが好ましい。
【0068】手の前後位置情報PosY=0は、白鍵を
押鍵する薬指に合わせて、最手前の位置を示す。
【0069】手の種類HndPat=1は、前後の音と
の関係から、閉じた手の形状(図3(B))を示す。
【0070】指情報FngNo=4は薬指を示す。色を
変えて薬指を表示し、薬指で押鍵すべきことを演奏者に
知らせる。この薬指がF4の鍵に重なるように手を表示
する。押鍵すべき鍵が白鍵(F4)であるので、押鍵す
べき指(薬指)を少し短くして表示する。
【0071】図7(D)は、第4のノートオンイベント
に対応する表示例である。 ノートナンバ=G4 ノートオフベロシティ PosY=0(最手前) HndPat=1(閉) FngNo=5(小指)
【0072】ノートナンバ(G4)は押鍵すべき鍵の音
高であるので、ノートナンバ(G4)に対応する白鍵の
色を変えて表示する。前後の音との関係から、この白鍵
は小指で押鍵することが好ましい。
【0073】手の前後位置情報PosY=0は、白鍵を
押鍵する小指に合わせて、最手前の位置を示す。
【0074】手の種類HndPat=1は、前後の音と
の関係から、閉じた手の形状(図3(B))を示す。
【0075】指情報FngNo=5は小指を示す。色を
変えて小指を表示し、小指で押鍵すべきことを演奏者に
知らせる。この小指がG4の鍵に重なるように手を表示
する。押鍵すべき鍵が白鍵(G4)であるので、押鍵す
べき指(小指)を少し短くして表示する。
【0076】小指でG4の鍵を押鍵する操作は図6
(B)と同じであるが、手の形状が異なる。ここでの押
鍵は、先の押鍵(図7(C))が隣の白鍵(F4)であ
るので、閉じた手の形状が最適である。
【0077】図8(E)は、第5のノートオンイベント
に対応する表示例である。 ノートナンバ=F4 ノートオフベロシティ PosY=0(最手前) HndPat=1(閉) FngNo=4(薬指)
【0078】ノートナンバ(F4)は押鍵すべき鍵の音
高であるので、ノートナンバ(F4)に対応する白鍵の
色を変えて表示する。前後の音との関係から、この白鍵
は薬指で押鍵することが好ましい。
【0079】手の前後位置情報PosY=0は、白鍵を
押鍵する薬指に合わせて、最手前の位置を示す。
【0080】手の種類HndPat=1は、前後の音と
の関係から、閉じた手の形状(図3(B))を示す。
【0081】指情報FngNo=4は薬指を示す。色を
変えて薬指を表示し、薬指で押鍵すべきことを演奏者に
知らせる。この薬指がF4の鍵に重なるように手を表示
する。押鍵すべき鍵が白鍵(F4)であるので、押鍵す
べき指(薬指)を少し短くして表示する。
【0082】図8(F)は、第6のノートオンイベント
に対応する表示例である。 ノートナンバ=E♭4 ノートオフベロシティ PosY=1(手前) HndPat=1(閉) FngNo=3(中指)
【0083】ノートナンバ(E♭4)は押鍵すべき鍵の
音高であるので、ノートナンバ(E♭4)に対応する黒
鍵の色を変えて表示する。前後の音との関係から、この
黒鍵は中指で押鍵することが好ましい。
【0084】手の前後位置情報PosY=1は、黒鍵を
押鍵する中指に合わせて、手前の位置を示す。
【0085】手の種類HndPat=1は、前後の音と
の関係から、閉じた手の形状(図3(B))を示す。
【0086】指情報FngNo=3は中指を示す。色を
変えて中指を表示し、中指で押鍵すべきことを演奏者に
知らせる。この中指がE♭4の鍵に重なるように手を表
示する。押鍵すべき鍵が黒鍵(E♭4)であるので、押
鍵すべき指(中指)を少し長くして表示する。
【0087】図9は、本実施例による演奏指示装置の構
成を示すブロック図である。押鍵検出回路18は、鍵盤
17における鍵操作を検出し、キーオンまたはキーオフ
信号等を生成する。スイッチ検出回路20は、スイッチ
19におけるスイッチ操作を検出し、スイッチ信号を生
成する。
【0088】バス25には、押鍵検出回路18およびス
イッチ検出回路20の他、表示回路21、音源回路2
2、効果回路23、ROM11、RAM12、CPU1
3、タイマ14、MIDIインターフェース15、フロ
ッピディスク駆動装置(FDD)16、ハードディスク
ドライブ(HDD)52、CD−ROM(コンパクトデ
ィスク−リード・オンリィ・メモリ)ドライブ53、通
信インターフェース54が接続されている。
【0089】RAM12は、フラグまたはバッファ等を
記憶するCPU13用のワーキングエリアを有する。R
OM11は、各種パラメータおよびコンピュータプログ
ラムを記憶する。CPU13は、ROM11に記憶され
ているコンピュータプログラムに従い、演算または制御
を行う。
【0090】HDD(ハードディスクドライブ)52
は、動作プログラムや各種データを記憶しておく記憶装
置である。ROM11に動作プログラムが記憶されてい
ない場合、このHDD52内のハードディスクに動作プ
ログラムを記憶させておき、それをRAM12に読み込
むことにより、ROM11に動作プログラムを記憶して
いる場合と同様の動作をCPU13にさせることができ
る。このようにすると、動作プログラムの追加やバージ
ョンアップ等が容易に行える。
【0091】CD−ROM(コンパクトディスク−リー
ド・オンリィ・メモリ)ドライブ53は、CD−ROM
に記憶されている動作プログラムや各種データを読み出
す装置である。読み出した動作プログラムや各種データ
は、HDD52内のハードディスクにストアされる。動
作プログラムの新規インストールやバージョンアップ等
が容易に行える。なお、このCD−ROMドライブ53
以外にも、外部記憶装置として、フロッピィディスク装
置16、光磁気ディスク(MO)装置等、様々な形態の
メディアを利用するための装置を設けるようにしてもよ
い。
【0092】通信インターフェース54はLAN(ロー
カルエリアネットワーク)やインターネット、電話回線
等の通信ネットワーク55に接続されており、該通信ネ
ットワーク55を介して、サーバコンピュータ56と接
続される。ハードディスク装置52内に上記各プログラ
ムや各種パラメータが記憶されていない場合、サーバコ
ンピュータ56からプログラムやパラメータをダウンロ
ードするために用いられる。クライアントとなるコンピ
ュータは、通信インターフェース54及び通信ネットワ
ーク55を介してサーバコンピュータ56へとプログラ
ムやパラメータのダウンロードを要求するコマンドを送
信する。サーバコンピュータ56は、このコマンドを受
け、要求されたプログラムやパラメータを、通信ネット
ワーク55を介してコンピュータへと送信し、コンピュ
ータが通信インターフェース54を介して、これらプロ
グラムやパラメータを受信してハードディスク装置52
に蓄積することにより、ダウンロードが完了する。
【0093】タイマ14は、CPU13に接続される。
CPU13は、タイマ14から供給される時間情報に応
じて、所定の時間間隔でタイマ割り込み処理を行う。M
IDIインターフェース15は、他のMIDI機器51
に対してMIDIデータを入出力することができる。
【0094】図2に示した演奏データは、フロッピディ
スク駆動装置16またはROM11に記憶される。フロ
ッピディスク駆動装置16に演奏データが記憶されてい
る場合には、フロッピディスク駆動装置16からRAM
12に演奏データがロードされてから、演奏データの再
生処理が行われる。
【0095】CPU13は、RAM12またはROM1
1に記憶されている演奏データを読み出し、楽音パラメ
ータおよび効果パラメータをそれぞれ音源回路22およ
び効果回路23に供給する。また、CPU13は、押鍵
検出回路18で生成されるキーオン信号等やスイッチ検
出回路20で生成されるスイッチ信号に応じて、楽音パ
ラメータおよび効果パラメータを生成し、それぞれ音源
回路22および効果回路23に供給する。
【0096】また、CPU13は、RAM12またはR
OM11に記憶されている演奏データと鍵盤17におけ
る押鍵操作とを比較し、一致する場合には曲を進行し、
一致しない場合には曲の進行を中断する。
【0097】さらに、CPU13は、上記により演奏デ
ータを読み出す際、演奏データ中のキーオフベロシティ
に設定されている手表示情報に応じて、表示回路21に
図6(A)等に示したような手の模範形を表示し、鍵盤
の演奏方法を指示する。
【0098】手の形状(図3(A)、図3(B)、図4
(C)、図4(D))および鍵盤の画像データは、フロ
ッピディスク駆動装置16またはROM11に記憶され
ている。表示回路21は、例えば電子楽器本体に設けら
れる液晶表示器(LCD)または電子楽器の外部に接続
されるCRT(陰極線管)である。
【0099】音源回路22は、供給される楽音パラメー
タに応じて楽音信号を生成する。効果回路23は、供給
される効果パラメータに応じて、音源回路22で生成さ
れる楽音信号に、例えばディレイやリバーブ等の効果を
付与し、サウンドシステム24に供給する。サウンドシ
ステム24は、D/A変換器およびスピーカを含み、供
給されるデジタル形式の楽音信号をアナログ形式に変換
し、発音する。
【0100】なお、音源回路22は、波形メモリ方式、
FM方式、物理モデル方式、高調波合成方式、フォルマ
ント合成方式、VCO+VCF+VCAのアナログシン
セサイザ方式等、どのような方式であってもよい。
【0101】また、音源回路22は、専用のハードを用
いて構成するものに限らず、DSP+マイクロプログラ
ムを用いて構成してもよいし、CPU+ソフトウェアの
プログラムで構成するようにしてもよい。
【0102】さらに、1つの音源回路を時分割で使用す
ることにより複数の発音チャンネルを形成するようにし
てもよいし、1つの発音チャンネルにつき1つの音源回
路で複数の発音チャンネルを構成するようにしてもよ
い。
【0103】次に、手表示情報の説明を行う。演奏デー
タ中において、ノートオフベロシティに手表示情報を設
定する。手表示情報は、演奏データ作成時に演奏データ
中に予め設定しておくことができる。また、演奏者が手
表示情報を設定または変更することができる。その場合
は、表示回路21に表示されるエディット画面を用い
て、個々の音符(ノート)について設定または変更を行
うことができる。当該エディット画面は、シーケンサ用
のエディット画面を用いることができる。
【0104】また、人間の手作業により手表示情報を設
定する他、演奏データを所定のアルゴリズムによって解
析することで手表示情報を設定してもよいし、演奏者の
各指にセンサを装着した状態で演奏を収録し、どの指、
どの形状の手で演奏したかを検出することができるよう
にして手表示情報を設定してもよい。
【0105】図10は、CPUが行う処理のメインルー
チンのフローチャートである。ステップSA1では、フ
ラグまたはレジスタ等のイニシャライズを行う。
【0106】ステップSA2では、一致進行処理を行
う。一致進行処理は、演奏データ通りに押鍵が行われる
間は曲を進行させるが、演奏データの次の音に対応する
鍵を所定時間経過しても演奏者が押鍵しないときに曲の
進行を中断する処理である。詳細な処理は、後に図18
を参照しながら説明する。
【0107】ステップSA3では、演奏データ読み出し
処理を行う。演奏データ読み出し処理は、RAMまたは
ROMに記憶されている演奏データを読み出し、読み出
した演奏データ中に含まれる手表示情報に応じて表示回
路に手の模範形を表示する処理である。詳細な処理は、
後に図13、図15を参照しながら説明する。
【0108】ステップSA4では、押鍵処理を行う。押
鍵処理は、鍵盤における押鍵操作等を検出して、当該操
作に応じた処理を行う。キーオンを検出したときには、
発音処理を行い、キーオフを検出したときには消音処理
を行う。演奏者が正しい押鍵操作を行わないために曲の
進行が中断しているときにキーオンが検出されかつその
キーオンが演奏データの音に一致しているときには、曲
の進行を再開する。詳細な処理は、後に図19を参照し
ながら説明する。
【0109】ステップSA5では、その他処理を行う。
その他処理は、例えば演奏練習のスタートを指示するた
めの処理、テンポや音量の変更、各種モードの設定を行
う。その後、ステップSA2へ戻り、上記の処理を繰り
返す。
【0110】手表示情報は、押鍵開始を指示するノート
オンイベントに対応する情報であるので、本来はノート
オンベロシティ等に手表示情報を設定するのが好まし
い。しかし、ノートオンベロシティは音量の情報として
用いられるので、ノートオフベロシティに手表示情報を
設定する必要がある。ノートオフベロシティは、演奏デ
ータとして何も処理されないことが多い。
【0111】手表示情報をノートオンベロシティ1c
(図2)に設定するのではなく、その後に出現するノー
トオフベロシティ3c(図2)に設定する場合には、押
鍵開始を指示するためのノートオンに対応させることが
困難である。これは、ノートオンイベント1とノートオ
フイベント3(図2)の間に種々のデータが入る可能性
があるからである。このような不都合を解消するため、
演奏練習の処理を行う前に、前処理として、ノートオフ
ベロシティに含まれている手表示情報を読み出して、当
該ノートオフに対応するノートオンの直後に格納する処
理を行う。
【0112】図11は、処理前の演奏データ10と処理
後の演奏データ30を示す。処理前の演奏データ10
は、図2と同じスタンダードMIDIファイルの形式で
あり、ノートオンイベント1とそれに対応するタイミン
グデータ2とノートオフイベント3とそれに対応するタ
イミングデータ4を有する。ノートオフイベント3は、
ノートオンイベント1によるノートオンをノートオフす
るためのイベントである。
【0113】処理前の演奏データ10は、ノートオフベ
ロシティ3c中に手表示情報を有する。処理後の演奏デ
ータ30は、処理前の演奏データ10に手表示情報31
を付加したものである。手表示情報31は、処理前の演
奏データ10のノートオフベロシティ3cから読み出さ
れ、処理後の演奏データ30中のノートオンイベント1
とそのタイミングデータ2との間に格納される。ノート
オフイベント3中のベロシティは手表示情報を含むもの
であるが、MIDIファイルの形式を保つためにそのま
ま残されている。
【0114】手表示情報31をノートオンイベント1の
直後に設けることにより、ノートオンイベント1を読み
出した時点で、直ちに手表示情報31を判断することが
できる。
【0115】図12は、演奏データ10から演奏データ
30へのデータ変換の処理を示すフローチャートであ
る。この処理は、図10のメインルーチンのステップS
A5におけるその他処理において行われる。具体的に
は、演奏者が演奏練習のスタートスイッチを押した後に
行われる。
【0116】ステップSG1では、演奏データ10から
イベントを読み出す。例えば、ノートオンイベント、ノ
ートオフイベントまたはタイミングデータである。
【0117】ステップSG2では、読み出したイベント
がノートオンイベントであるか否かをチェックする。ノ
ートオンイベントであるときには、ステップSG3で演
奏データ30を生成するためのバッファにノートオンイ
ベントを転送する。
【0118】ステップSG4では、上記の演奏データ3
0用のバッファにおいてノートオンイベントの後に1バ
イトの空白バイトを作成する。その後、ステップSG1
へ戻り、演奏データ10から次のイベントを読み出す。
【0119】ステップSG2において読み出したイベン
トがノートオンイベントでないと判断されたときには、
ステップSG5へ進む。ステップSG5では、読み出し
たイベントがノートオフイベントであるか否かをチェッ
クする。ノートオフイベントであるときには、ステップ
SG6へ進む。
【0120】ステップSG6では、当該ノートオフイベ
ントに含まれるノートオフベロシティ中の手表示情報を
演奏データ10から読み出す。ステップSG7では、当
該手表示情報を対応ノートオンの空白バイトに書き込
む。空白バイトは、ステップSG4においてノートオン
イベントの後に既に生成されている。
【0121】ステップSG8では、当該ノートオフイベ
ントを演奏データ30用のバッファに転送する。その
後、ステップSG1へ戻り、次のイベントについて処理
を繰り返す。
【0122】ステップSG5において読み出したイベン
トがノートオフイベントでないと判断されたときには、
タイミングデータ、エンドデータまたはコントロールチ
ェンジ等であるので、ステップSG9へ進み、当該イベ
ントを演奏データ30用のバッファに転送する。
【0123】ステップSG10では、当該イベントがエ
ンドデータであるか否かをチェックする。エンドデータ
でないときには、ステップSG1へ戻り、次のイベント
について処理を繰り返す。エンドデータであるときに
は、演奏データの終了を意味するので、処理を終了す
る。
【0124】なお、手表示情報31をノートオンイベン
トと対応させて記憶する方式として、演奏データ10か
らノートオフベロシティのみを抜き出してそれをノート
オンイベント発生順に並べて演奏データ10とは別の記
憶領域に記憶させるような方式でもよい。この場合、演
奏データ10の読み出しと並行してノートオフベロシテ
ィの読み出しも行うようにすればよい。
【0125】図13は、図10のステップSA3におけ
る演奏データ読み出し処理の詳細を示すフローチャート
である ステップSB1では、再生タイマが0以下であるか否か
をチェックする。再生タイマが0以下であることは、次
のイベントのタイミングに達していることを意味する。
再生タイマは、タイミングデータによって設定され、次
に示す再生タイマ割り込み処理によりカウントが行われ
る。
【0126】図14(A)は、再生タイマ割り込み処理
を示すフローチャートである。この割り込み処理は、例
えば10msの所定時間間隔で行われる。ステップSC
1では、再生タイマの値をデクリメントする。その後、
割り込み前の処理に戻る。再生タイマは、演奏練習のス
タートが指示されると0に初期設定され、その後例えば
10ms毎にデクリメントされる。
【0127】図13に戻り、ステップSB1において、
再生タイマが0以下であると判断されたときには、ステ
ップSB2へ進む。ステップSB2では、RAMまたは
ROMに記憶されている演奏データからイベントを読み
出す。1イベントとは、例えば図2に示すノートイベン
ト1またはタイミングデータ2である。読み出されるイ
ベントは、ノートイベントであれば3バイトであり、タ
イミングデータであれば1バイトである。イベントがノ
ートオンイベントであるときには、その直後の手表示情
報と共にノートオンイベントを読み出してもよい。
【0128】ステップSB3では、読み出したイベント
がノートイベントであるか否かをチェックする。ノート
イベントとは、ノートオン、ノートオフ等のイベントで
あり、例えば図2に示すノートイベント1または3であ
る。ノートイベントであるときには、ステップSB4へ
進み、ノートイベント処理を行う。ノートイベント処理
は、ノートオンイベントの直後に格納されている手表示
情報の処理を含む。詳細な処理は、後に図16を参照し
ながら説明する。その後、図10のメインルーチンの処
理へ戻る。
【0129】ステップSB3において、読み出したイベ
ントがノートイベントでないと判断されたときには、ス
テップSB5へ進む。ステップSB5では、読み出した
イベントがタイミングデータであるか否かをチェックす
る。タイミングデータとは、ノートイベントと次のノー
トイベントとの間の時間間隔を示し、例えば図2に示す
タイミングデータ2または4である。読み出したイベン
トがタイミングデータであるときには、ステップSB6
へ進む。
【0130】ステップSB6では、該タイミングデータ
×テンポ係数の値を、再生タイマに加算する。再生タイ
マは、図13(A)の割り込み処理により10ms単位
でデクリメントされている。テンポ係数は、タイミング
データの単位を再生タイマの単位(10ms)に変換す
るための係数である。このようにして次のノートイベン
トまでの時間が再生タイマに設定される。その後、図1
0のメインルーチンの処理へ戻る。
【0131】再生タイマに上記の値が加算されると、そ
の後10ms間隔で再生タイマの値がデクリメントされ
る。ステップSB1では、再生タイマが0よりも大きい
間は、演奏データのイベントを読み出さずに、図10の
メインルーチンの処理へ戻る。再生タイマの値が0以下
になったときには、次のイベントの読み出しタイミング
がきたことを意味するので、ステップSB2へ進み、次
のイベントを読み出し、上記と同様の処理を繰り返す。
【0132】なお、ステップSB6において、再生タイ
マに所定の値を設定するのではなく、所定の値を加算し
ている点に注意する必要がある。図13に示す演奏デー
タ読み出し処理は、タイマ割り込み処理ではないので、
通常一定時間間隔では行われない。つまり、ステップS
B1において毎回再生タイマが0の時点でステップSB
2へ進むのであれば、ステップSB6において再生タイ
マを所定の値に更新するようにしてもよいが、ステップ
SB1において再生タイマの値が負の時にステップSB
2へ進む場合もあるので、ステップSB6においては再
生タイマに所定の値を加算する必要がある。
【0133】読み出したイベントが、ステップSB3に
おいてノートイベントではないと判断され、かつステッ
プSB5においてタイミングデータでないと判断された
ときには、その他イベントであるので、ステップSB7
へ進む。その他イベントは、例えばプログラムチェンジ
またはコントロールチェンジ等である。
【0134】ステップSB7では、その他イベントの処
理を行う。例えば、その他イベントがプログラムチェン
ジである場合は、音色変更の処理を行う。その後、図1
0のメインルーチンの処理へ戻る。
【0135】図15(A)、(B)は、ある音がノート
オンするタイミングと他の音がノートオフするタイミン
グの組み合わせを2つ示す。
【0136】図15(A)は、C4の音がノートオフし
た後、G4の音がノートオンする例を示す。C4の音
は、時刻t1にノートオンし、その後時刻t2にノート
オフする。さらに、その後、G4の音が、時刻t3にノ
ートオンし、その後時刻t4にノートオフする。ここ
で、時刻t2におけるC4の音のノートオフをノートオ
フとし、時刻t3におけるG4の音のノートオンをノ
ートオンとする。
【0137】図15(B)は、C4の音がノートオン中
に、G4の音がノートオンする例を示す。時刻t1にお
いてC4の音がノートオンし、その後時刻t3において
G4の音がノートオンする。さらに、その後、時刻t2
においてC4の音がノートオフし、その後時刻t4にお
いてG4の音がノートオフする。ここで、時刻t3にお
けるG4の音のノートオンをノートオンとし、時刻t
2におけるC4の音のノートオフをノートオフとす
る。
【0138】次に、上記のノートオフ、ノートオン
、ノートオン、ノートオフのそれぞれ場合のノー
トイベント処理を説明する。
【0139】図16は、図13のステップSB4におけ
るノートイベント処理の詳細を示すフローチャートであ
る。
【0140】まず、次の音のノートオン前のノートオフ
の場合を説明する。ステップSD1では、読み出した
ノートイベントがノートオンイベントであるか否かをチ
ェックする。ノートイベントがノートオフの場合は、
ステップSD11へ進む。ステップSD11では、他に
ノートオン中のものがないかをチェックする。ノートオ
フの時点(図15(A)の時刻t2)において、他の
音(G4)はノートオンしていないので、次の音(G
4)を押鍵する準備段階の手を表示するため、ステップ
SD12へ進む。
【0141】ステップSD12では、次の音(G4)の
ノートオンイベントをサーチし、そのノートオンイベン
トに対応する手表示情報を読み出す。手表示情報は、手
の前後位置情報(PosY)と手の種類情報(HndP
at)と指情報(FngNo)を含む。
【0142】ステップSD13では、手の種類情報(H
ndPat)に応じて、手の種類(図3(A)、図3
(B)、図4(C)、図4(D))を決定する。
【0143】ステップSD14では、手表示情報および
ノートナンバに応じて、手の前後位置および左右位置を
決定する。手の前後位置(最手前、手前、奥、最奥)
は、手の前後位置情報(PosY)に応じて決まる。左
右位置は、指情報(FngNo)が示す指がノートナン
バが示す鍵の位置にくるようにする。
【0144】ステップSD15では、上記で決定された
手の種類と位置に従って、押鍵準備段階の手を描画す
る。押鍵準備段階の手は、押鍵していない状態であるの
で、押鍵すべき指および鍵の色を変える必要はない。
【0145】ステップSD16では、ノートオフに応
じて例えばC4の音の消音処理を行う。具体的には、ノ
ートオフイベントに含まれるノートナンバ(C4)の消
音のための楽音パラメータを音源回路に供給する。ただ
し、ノートオフベロシティは手表示情報に書き換えられ
てしまっているので、本来のベロシティデータとしての
値は保証されない。その後、図13、引き続き図10の
処理に戻る。
【0146】次に、前の音のノートオフ後のノートオン
の場合を説明する。ステップSD1では、読み出した
ノートイベントがノートオンイベントであるか否かをチ
ェックする。ノートイベントがノートオンの場合は、
ステップSD2へ進む。
【0147】ステップSD2では、図17(A)に示す
再生一致進行バッファにイベントを格納し、該イベント
のタイマ値を0に設定する。例えば再生一致進行バッフ
ァに、読み出した演奏データのノートオンイベント1
(図2)中のノートナンバ1b(例えばC4またはG
4)を格納し、タイマ値を0に設定する。このタイマ値
は、先の再生タイマ(図14(A))とは無関係であ
り、再生一致進行バッファに当該イベントが格納されて
からの時間を表す。
【0148】ステップSD3では、他にノートオン中の
ものがあるか否かをチェックする。具体的には、上記の
再生一致進行バッファ(図17(A))に2以上のノー
トオンイベントが格納されているときには、自己以外に
他のノートオンがあると判断することができる。ステッ
プSD11においても、同様の判断により、他にノート
オンがあるか否かを判断することができる。
【0149】ノートオンの時点(図15(A)の時刻
t3)においては、他の音(C4)はノートオンしてい
ないので、ステップSD4およびSD5を飛び越し、ス
テップSD6へ進む。
【0150】ステップSD6では、ノートオンに対応
する手表示情報中の指情報(FngNo)に応じて押鍵
する指(親指、人差し指等)を決定する。なお、手の種
類および手の位置は、既にステップSD13およびSD
14で決定されている。さらに、ノートオンの押鍵準
備段階の手が既にステップSD15において表示器に描
画されている。
【0151】ステップSD7では、上記で決定された押
鍵する指(ステップSD6)、手の種類(ステップSD
13)、手の位置(ステップSD14)に従って、手の
模範形を表示器に描画する。その際、押鍵する指の色を
変えると共に、押鍵する指の長さを変える。白鍵を押鍵
するときは押鍵する指を短めに描画し、黒鍵を押鍵する
ときには押鍵する指を長めに描画する。
【0152】ステップSD8では、ノートオンのノー
トナンバ(G4)に対応する鍵の色を変える。この場
合、G4の鍵が、演奏者が次に押鍵すべき鍵である。
【0153】ステップSD9では、ノートオンの発音
処理を行う。具体的には、ノートオンイベントに含まれ
るノートナンバ(音高)およびノートオンベロシティ
(音量)に応じた楽音パラメータを音源回路に供給し、
サウンドシステムにおいて発音させる。
【0154】なお、この発音処理は、演奏者の押鍵処理
により発音される音と区別するため、小さい音量で発音
させたり、演奏者の押鍵による音色とは異なる音色で発
音させることが望ましい。その後、図13、引き続き図
10の処理に戻る。
【0155】次に、前の音のノートオフ前のノートオン
の場合を説明する。ステップSD1では、読み出した
ノートイベントがノートオンイベントであるか否かをチ
ェックする。ノートオンの場合は、ステップSD2へ
進む。ステップSD2では、図17(A)に示す再生一
致進行バッファにイベントを格納し、該イベントのタイ
マ値を0に設定する。
【0156】ステップSD3では、他にノートオン中の
ものがあるか否かをチェックする。ノートオンの時点
(図15(B)の時刻t3)においては、他の音(C
4)がノートオンしているので、ステップSD4へ進
む。この後は、現在押鍵中の音(C4)の手の表示を消
去し、新たに押鍵を開始する音(G4)に対応する手を
表示する。
【0157】ステップSD4では、ノートオンの手の
種類情報(HndPat)に応じて、手の種類(図3
(A)、図3(B)、図4(C)、図4(D))を決定
する。
【0158】ステップSD5では、ノートオンの手表
示情報およびノートナンバに応じて、手の前後位置およ
び左右位置を決定する。手の前後位置(最手前、手前、
奥、最奥)は、手の前後位置情報(PosY)に応じて
決まる。左右位置は、指情報(FngNo)が示す指が
ノートナンバが示す鍵の位置にくるようにする。
【0159】ステップSD6では、ノートオンの指情
報(FngNo)に応じて押鍵する指(親指、人差し指
等)を決定する。
【0160】ステップSD7では、上記で決定された押
鍵する指、手の種類、手の位置に従って、手の模範形を
表示器に描画する。その際、押鍵する指の色を変えると
共に、押鍵する指の長さを変える。
【0161】ステップSD8では、ノートオンのノー
トナンバ(G4)に対応する鍵の色を変える。
【0162】ステップSD9では、ノートオンの発音
処理を行う。その後、図13、引き続き図10の処理に
戻る 次に、次の音のノートオン後のノートオフの場合を説
明する。
【0163】ステップSD1では、読み出したノートイ
ベントがノートオンイベントであるか否かをチェックす
る。ノートイベントがノートオフの場合は、ステップ
SD11へ進む。ステップSD11では、他にノートオ
ン中のものがないかをチェックする。ノートオフの時
点(図15(B)の時刻t2)においては、他の音(G
4)がノートオンしているので、ノートオン中の音(G
4)に対応する手の模範形の表示を維持するため、ステ
ップSD16へ進む。
【0164】ステップSD16では、ノートオフに応
じて例えばC4の音の消音処理を行う。その後、図1
3、引き続き図10の処理に戻る。
【0165】図18は、図10のステップSA2におけ
る一致進行処理の詳細を示すフローチャートである。
【0166】ステップSE1では、一致進行タイマが0
より大きいか否かをチェックする。一致進行タイマは、
次に示す一致進行タイマ割り込み処理によりカウントが
行われる。
【0167】図14(B)は、一致進行タイマ割り込み
処理を示すフローチャートである。この割り込み処理
は、例えば10msの所定時間間隔で行われる。ステッ
プSC2では、一致進行タイマの値をインクリメントす
る。その後、割り込み前の処理に戻る。一致進行タイマ
は、演奏練習のスタートが指示されると0に初期設定さ
れ、その後例えば10ms毎にインクリメントされる。
【0168】図18に戻り、ステップSE1において、
一致進行タイマが0より大きいと判断されたときには、
一致進行制御を行うため、ステップSE2へ進む。一致
進行タイマが0以下であるときには、一致進行処理を行
わずに、図10のメインルーチンの処理へ戻る。このよ
うに、一致進行タイマを用いて一致進行制御のための負
荷を軽減し、かつほぼ一定時間毎に一致進行制御を行わ
せる。
【0169】ステップSE2では、一致進行タイマを0
にリセットする。一致進行タイマは、次のインクリメン
ト(図14(B))まで0となる。ステップSE2の処
理は、後により詳しく説明するように、平均して一致進
行タイマの単位時間(例えば10ms)間隔で通過する
ことになる。
【0170】ステップSE3では、ステップSE1およ
びSE2で述べた一致進行タイマとは別に、再生一致進
行バッファ(図17(A))と手弾き一致進行バッファ
(図17(B))の両方の全てのイベントについてのタ
イマ値をインクリメントする。
【0171】既に述べたように、演奏データのイベント
を格納するための再生一致進行バッファは、図16のス
テップSD2においてイベントを格納する。後に説明す
るが、手弾き一致進行バッファは、鍵盤における押鍵操
作によるイベントを格納するバッファである。
【0172】両バッファのタイマ値は、共に平均して1
0ms間隔でインクリメントされる。
【0173】ステップSE4では、ポーズ判定を行い、
ポーズ条件を満たしているか否かをチェックする。再生
一致進行バッファ(図17(A))の中のイベントにお
いて、タイマ値が所定値(例えば50)以上のものがあ
るときにはポーズ条件を満たすと判断する。
【0174】バッファのタイマ値はステップSE3にお
いて約10ms毎にインクリメントされるので、タイマ
値の1は10msに相当する。所定値が例えば50であ
る場合は、500ms経過したイベントがバッファに残
っているときにポーズ条件を満たすことになる。演奏者
が、演奏データに対応する適切な鍵を500ms経過し
ても押鍵しないときには、ポーズ条件を満たし、ステッ
プSE5へ進む。
【0175】ステップSE5では、ポーズ設定を行う。
具体的には、ポーズフラグを1にセットし、図14
(A)に示す割り込み処理による再生タイマのデクリメ
ントを停止する。その後、図10のメインルーチンの処
理へ戻る。再生タイマのデクリメントを停止すれば、図
13のステップSB1において、再生タイマが0以下に
ならないので、ステップSB2における演奏データの次
のイベントの読み出しが停止され、曲の進行が停止す
る。
【0176】すなわち、演奏データが読み出されてから
例えば500ms経過しても、演奏者が当該演奏データ
に対応する鍵を押鍵しないときには、ポーズ設定により
曲の進行が中断し、演奏者の適正な押鍵操作を待つ。
【0177】ステップSE4において、ポーズ条件を満
たさないと判断されたときには、ポーズ設定を行わず
に、図10のメインルーチンの処理へ戻る。
【0178】次に、ステップSE1において平均して1
0ms毎にYES(ステップSE2)へ進む理由を説明
する。一致進行タイマ(図14(B))は、例えば10
ms毎にインクリメントされる。
【0179】図18の一致進行処理は、タイマ割り込み
処理ではないので、一定時間間隔では行われないが、平
均して1ms間隔でステップSE1の判断が行われる場
合を考える。その場合、一致進行タイマを0から1にイ
ンクリメントした後、次のインクリメントまで平均10
回ステップSE1を通る。最初のステップSE1では、
一致進行タイマが1なので、YES(ステップSE2〜
SE5)へ進む。残り9回のステップSE1では、一致
進行タイマが0にリセットされているため一致進行処理
はスルーする。このようにして、ステップSE2〜SE
5の処理は、約10msに1回行われることになる。
【0180】図19は、図10のステップSA4におけ
る押鍵処理の詳細を示すフローチャートである。
【0181】ステップSF1では、鍵盤上における鍵操
作により生じたキーイベントがあるか否かをチェックす
る。キーイベントがあるときには、キーイベントの処理
を行うため、ステップSF2へ進む。キーイベントがな
いときには、キーイベントの処理を行わずに、図10の
メインルーチンの処理へ戻る。
【0182】ステップSF2では、上記のキーイベント
がキーオンイベントであるか否かをチェックする。キー
オンイベントであるときには、ステップSF3へ進む。
【0183】ステップSF3では、当該キーオンイベン
トに対応する発音処理を行う。具体的には、キーオンイ
ベントおよびそれに対応するパラメータを音源回路22
および効果回路23(図3)に供給する。サウンドシス
テム24では、当該キーオンイベントに応じた発音がさ
れる。その後、ステップSF4へ進む。
【0184】ステップSF4では、図17(B)に示す
手弾き一致進行バッファに上記のイベントを格納し、該
イベントのタイマ値を0に設定する。手弾き一致進行バ
ッファには、ノートナンバとして例えばA3を格納し、
タイマ値を0に設定する。このタイマ値は、当該バッフ
ァにイベントが格納されてからの時間を表すものであ
り、図18のステップSE3においてインクリメントさ
れる。
【0185】ステップSF5では、再生一致進行バッフ
ァ(図17(A))と手弾き一致進行バッファ(図17
(B))の両イベントを比較する。再生一致進行バッフ
ァには、演奏データのイベントが格納され、手弾き一致
進行バッファには演奏者の鍵盤操作によるイベントが格
納される。
【0186】ステップSF6では、両バッファに一致す
るイベントがあるか否か、すなわち同じノートナンバの
イベントがあるか否かをチェックする。一致するイベン
トがあるときには、演奏者が正しい鍵を押鍵したことを
意味するので、ステップSF7へ進む。
【0187】ステップSF7では、演奏者の正押鍵に対
してインタラクティブな反応を示すため、「うまい!」
等の誉めるメッセージを表示器に表示する。処理の詳細
は、後に図20のフローチャートを参照しながら説明す
る。
【0188】ステップSF8では、一致するイベントを
再生一致進行バッファと手弾き一致進行バッファの両バ
ッファから削除する。
【0189】ステップSF9では、現在ポーズ中である
か否かをチェックする。ポーズ中でないときには、図1
0のメインルーチンの処理へ戻る。ポーズ設定は、図1
8のステップSE5において行われる。ポーズフラグが
1にセットされているときには、ポーズ中であると判断
する。ポーズ中であるときはポーズを解除するため、ス
テップSF10へ進む。
【0190】ステップSF10では、再生一致進行バッ
ファ(図17(A))に残っているタイマ値の最大値が
所定値(例えば50)以下であるか否かをチェックす
る。演奏者の正押鍵により、ステップSF8において両
バッファから削除されたイベントは、タイマ値が所定値
を越えたものであるとは限らない。当該イベントの他に
も所定値を越えたタイマ値を有するイベントが再生一致
進行バッファに格納されている場合には、ポーズ状態を
継続するため、図10のメインルーチンの処理へ戻る。
【0191】再生一致進行バッファに当該イベントの他
に、タイマ値が所定値を越えたイベントがない場合に
は、ポーズを解除するため、ステップSF11へ進む。
【0192】ステップSF11では、ポーズ解除を行
う。具体的には、ポーズフラグを0にリセットする。そ
して、図18のステップSE5で停止された再生タイマ
のデクリメントを再開する。再生タイマのデクリメント
を再開すれば、再び演奏データの読み出しが再開し(図
13のステップSB2)、曲が進行する。その後、図1
0のメインルーチンの処理へ戻る。
【0193】ステップSF6において両バッファに一致
するイベントがないと判断されたときには、演奏者が誤
った鍵を押鍵したことを意味するので、ステップSF2
1へ進む。
【0194】ステップSF21では、演奏者の誤押鍵に
対してインタラクティブな反応を示すため、「がんばっ
て!」等の励ましのメッセージを表示器に表示する。処
理の詳細は、後に図21のフローチャートを参照しなが
ら説明する。
【0195】ステップSF22では、現在ポーズ中であ
るか否かをチェックする。ポーズ中でないときには、図
10のメインルーチンの処理へ戻る。ポーズ中であると
きには、誤押鍵した鍵が正しい鍵とどの位離れているか
を表示するため、ステップSF23へ進む。
【0196】ステップSF23では、再生一致進行バッ
ファ(図17(A))中のタイマ値が最大のノートオン
イベントのノートナンバと、演奏者が押鍵した鍵のノー
トナンバの差に応じたメッセージを表示または発声す
る。表示器に表示する場合は、手の模範形の下の領域に
メッセージを表示する。例えば、以下の表示または発声
を行う。
【0197】隣の鍵を押鍵した場合は、「右の黒鍵で
す」、「右の白鍵です」、「左の黒鍵です」、または
「左の白鍵です」と表示または発声する。
【0198】隣の鍵より離れかつ6度以内の鍵を押鍵し
た場合は、「もう少し右です」、または「もう少し左で
す」と表示または発声する。
【0199】7度から9度離れた鍵を押鍵した場合は、
「1オクターブ右です」、または「1オクターブ左で
す」と表示または発声する。
【0200】ステップSF23の後は、図10のメイン
ルーチンの処理へ戻る。ステップSF2においてキーオ
フイベントが検出されたと判断されたときは、ステップ
SF31へ進む。ステップSF31では、当該キーオフ
イベントに対応する音の消音処理を行う。その後、ステ
ップSF32へ進む。
【0201】ステップSF32では、手弾き一致進行バ
ッファ(図17(B))から当該キーオフイベントに対
応するキーオンイベントを削除する。すなわち、演奏者
が誤った押鍵をしたときには、このステップで当該イベ
ントを手弾き進行バッファから削除する。ただし、演奏
者が正しい押鍵をしたときには、ステップSF8で既に
当該イベントが手弾き進行バッファおよび再生一致進行
バッファから削除されているため、ステップSF32で
の処理は行われない。その後、図10のメインルーチン
の処理へ戻る。
【0202】図20は、図19のステップSF7に示す
正押鍵処理の詳細を示すフローチャートである。
【0203】ステップSH1では、フラグCORREC
Tが1であるか否かをチェックする。フラグCORRE
CTは、演奏者が正押鍵をしたときに1が設定され、演
奏者が誤押鍵をしたときに0が設定されるフラグであ
る。
【0204】フラグCORRECTが1であるときに
は、今回の押鍵だけでなく前回の押鍵も正押鍵であった
ことを意味するので、ステップSH2へ進む。
【0205】ステップSH2では、レジスタCRCT_
NUMの値をインクリメントする。レジスタCRCT_
NUMは、演奏者が連続して正押鍵した回数を格納する
ためのレジスタである。
【0206】ステップSH3では、レジスタCRCT_
NUMが6であるか否かをチェックする。レジスタCR
CT_NUMが6であるときには、演奏者が6回連続正
押鍵をしたことを意味するので、ステップSH6へ進
み、「その調子」と表示または発声する。その後、図1
9のフローチャートの処理に戻る。
【0207】レジスタCRCT_NUMが6でないとき
には、ステップSH4へ進み、レジスタCRCT_NU
Mが12であるか否かをチェックする。レジスタCRC
T_NUMが12であるときには、演奏者が12回連続
正押鍵をしたことを意味するので、ステップSH5へ進
み、「うまいうまい」と表示または発声する。その後、
図19のフローチャートの処理に戻る。
【0208】レジスタCRCT_NUMが6でも12で
もないときには、何も表示または発声せずに、図19の
フローチャートの処理に戻る。
【0209】ステップSH1においてフラグCORRE
CTが0であると判断されたときは、今回は正押鍵であ
るが前回は誤押鍵であることを意味するので、ステップ
SH7へ進む。
【0210】ステップSH7では、今回の押鍵が正押鍵
であることを記録しておくため、フラグCORRECT
に1をセットする。
【0211】ステップSH8では、レジスタCRCT_
NUMに1を格納し、正押鍵の連続回数を1に設定す
る。その後、図19のフローチャートの処理に戻る。
【0212】図21は、図19のステップSF21に示
す誤押鍵処理の詳細を示すフローチャートである。
【0213】ステップSI1では、フラグCORREC
Tが0であるか否かをチェックする。フラグCORRE
CTは、演奏者が正押鍵をしたときに1が設定され、演
奏者が誤押鍵をしたときに0が設定されるフラグであ
る。
【0214】フラグCORRECTが0であるときは、
今回の押鍵だけでなく前回の押鍵も誤押鍵であったこと
を意味するので、ステップSI2へ進む。
【0215】ステップSI2では、レジスタWRNG_
NUMの値をインクリメントする。レジスタWRNG_
NUMは、演奏者が連続して誤押鍵した回数を格納する
ためのレジスタである。
【0216】ステップSI3では、レジスタWRNG_
NUMが3であるか否かをチェックする。レジスタWR
NG_NUMが3であるときには、演奏者が3回連続誤
押鍵をしたことを意味するので、ステップSI6へ進
み、「がんばって」と表示または発声する。その後、図
19のフローチャートの処理に戻る。
【0217】レジスタWRNG_NUMが3でないとき
には、ステップSI4へ進み、レジスタWRNG_NU
Mが6であるか否かをチェックする。レジスタWRNG
_NUMが6であるときには、演奏者が6回連続誤押鍵
をしたことを意味するので、ステップSI5へ進み、
「落ちついて」と表示または発声する。その後、図19
のフローチャートの処理に戻る。
【0218】レジスタWRNG_NUMが3でも6でも
ないときには、何も表示または発声せずに、図19のフ
ローチャートの処理に戻る。
【0219】ステップSI1においてフラグCORRE
CTが1であると判断されたときは、今回の押鍵が誤押
鍵であり前回の押鍵が正押鍵であることを意味するの
で、ステップSI7へ進む。
【0220】ステップSI7では、今回の押鍵が誤押鍵
であることを記録しておくため、フラグCORRECT
を0にリセットする。
【0221】ステップSI8では、レジスタWRNG_
NUMに1を格納し、誤押鍵の連続回数を1に設定す
る。その後、図19のフローチャートの処理に戻る。
【0222】演奏者が正押鍵または誤押鍵を行ったとき
には、それに応じたメッセージを表示または発声するこ
とにより、インタラクティブな対応が可能になり、人間
の教師から教育を受けているような感覚を受けることが
でき、効果的な演奏練習を行うことができる。
【0223】手表示情報は、手の前後位置情報と手の種
類情報と指情報を含む。手の前後位置情報は、鍵盤上に
置く手の前後方向(手前または奥等)の位置を示す。手
の前後位置は、押す指および押鍵する鍵等により適正な
位置が決まる。また、黒鍵から白鍵へ移行する場合、ま
たは白鍵から黒鍵へ移行する場合等に応じて、次の音に
移行しやすい位置が決まる。
【0224】手の種類(形状)情報は、親指が人差し指
または手のひらに重なった第1の手の形状と、親指が人
差し指または手のひらに重なっていない第2の手の形状
の両方を有する。第2の手の形状は、手の開き加減によ
り複数種類用意する。手の開き加減に応じて、手の位置
を動かさずに、次の音に移行できる場合がある。手の動
きを少なくすることにより、スムーズな演奏を行うこと
ができる。
【0225】指情報は、押鍵する指の種類を示す。押鍵
する指の色を変えて表示すると共に、押鍵する指の長さ
を変えて表示する。例えば、黒鍵は鍵の高さが高いの
で、黒鍵を押鍵する場合には押鍵する指の長さを長く
し、白鍵は鍵の高さが低いので、白鍵を押鍵する場合に
は押鍵する指の長さを短くする。押鍵する指の長さを変
えることにより、自然な指の動きを表現することができ
る。
【0226】手の模範形を表示する際、ノートオンのタ
イミングまたはノートオフのタイミングに応じて、押鍵
準備段階の手の模範形または押鍵時の手の模範形を表示
する。演奏者は、押鍵準備段階の手の模範形をお手本に
することにより、押鍵する前から手の置く位置を知るこ
とができる。
【0227】手の模範形を表示すれば、各鍵に対応する
LEDを点灯する場合に比べ、演奏者は直感的に演奏方
法を知ることができる。また、演奏者は、教師がそばで
お手本を示しているような感覚で練習することができ
る。
【0228】なお、手の模範形の表示は、右手に限定さ
れず左手でもよい。右手の画像データをROMまたはフ
ロッピディスクに記憶する場合、そのまま表示すれば右
手を表示することができる。左手を表示するときは、左
右方向(X軸)を対称に右手用画像データを折り返し表
示すればよい。右手と左手の両方を表示することもでき
る。手表示情報には、右手と左手を識別するための情報
を含めてもよい。
【0229】なお、図11に示すデータ変換により、ス
タンダードMIDIファイル形式の演奏データ10を、
別の形式の演奏データ40に変換し、その後に演奏練習
の処理を行う場合について説明したが、スタンダードM
IDIファイル形式の演奏データ10について直接演奏
練習の処理を行うこともできる。
【0230】その場合、ノートオンイベントを読み出し
た(図16のステップSD1)後、直接手表示情報を読
み出す代わりに、対応するノートオフベロシティをサー
チし当該ノートオフベロシティに設定されている手表示
情報を読み出すようにすればよい。
【0231】手表示情報は、ノートオフベロシティに設
定する場合に限定されない。その他、ノートオンベロシ
ティ、エクスクルーシブメッセージ(MIDI規格)、
またはボリュームやエフェクトの制御情報等に手表示情
報を設定してもよい。また、ノートオフベロシティとノ
ートオンベロシティ等の複数の情報エリアに手表示情報
を設定してもよい。
【0232】複数の情報エリアに手表示情報を設定すれ
ば、8ビット以上の手表示情報を設定することができ
る。手表示情報は、上記の7ビットの情報(手の前後位
置情報、手の種類、指情報)に限定されない。その他、
大人用の手または子供用の手を識別するための情報を含
むことができる。同じ曲を演奏する場合であっても、大
人用の手に比べ子供用の手は全体的に大きく広げる必要
がある。また、大人用の手であれば動かさなくても届く
鍵であっても、子供用の手では動かさなくては届かない
鍵がある。
【0233】その他、手表示情報は、各指毎の開き方
や、手首の回転方向等の情報を含めることができる。
【0234】ノートオフベロシティは、ベロシティデー
タ(演奏情報)としては使われないことが多いので、全
ビット(7ビット)に手表示情報を設定することができ
る。それに対し、ノートオンベロシティは、一般的に音
量情報として使われるので、ノートオンベロシティデー
タの精度を考慮し下位1または2ビットに設定するのが
好ましい。ノートオフベロシティとノートオンベロシテ
ィを用いれば、9ビットの手表示情報を設定することが
できる。
【0235】表示器に手の模範形の表示を行う場合、表
示用の2次元画像データ(動画)そのものを曲全体にわ
たって記憶し、表示器に表示する方法も考えられるが、
当該画像データのデータ量は大量のものとなってしま
う。本実施例における7〜9ビットの手表示情報は、2
次元画像のデータ量と比較すれば、ごく少ないデータ量
である。
【0236】また、ノートオフベロシティ等に手表示情
報を設定することにより、スタンダードMIDIファイ
ル形式の演奏データと同じデータ量でありながら、演奏
データに手表示情報を持たせることができる。
【0237】本実施例では、演奏データ中に手表示情報
独自のデータ領域を新たに設けるのではなく、ノートオ
フベロシティ等に設定することにより、演奏データのデ
ータ量を増加させることなく、手表示情報を用いた演奏
指示機能を付加することができる。もちろん、図11の
演奏データ30のように、手表示情報専用のデータ領域
を確保するようにしてもよい。
【0238】演奏データは、汎用の演奏データ(例えば
スタンダードMIDIファイル)との互換性を保ってい
るので、演奏指示機能を有しない一般の自動演奏装置に
も広く活用することができる。本実施例による演奏指示
装置を用いた場合には、自動演奏の他、さらに手の模範
形を表示器に表示させることができる。
【0239】演奏指示装置は、電子楽器の形態に限ら
ず、パソコンとアプリケーションソフトウエアとによる
形態でもよい。また、演奏指示装置は、音源装置や自動
演奏装置等と共に電子楽器に内蔵されている場合に限ら
ず、それぞれが別体の装置であり、MIDIや各種ネッ
トワーク等の通信手段を用いて各装置を接続するような
ものであってもよい。さらに、自動演奏ピアノに適用す
ることもできる。
【0240】演奏データのフォーマットは、スタンダー
ドMIDIファイルの他、「イベント+相対時間」、
「イベント+絶対時間」、「音高+符長」、「ベタ方
式」等の形式でもよい。
【0241】自動演奏のテンポを変更する方法は、テン
ポクロックの周期を変更するものや、テンポクロックの
周期をそのままにしてタイミングデータの値を修正する
ものや、1回の処理においてタイミングデータをカウン
トする値を変更するものであってもよい。
【0242】自動演奏データは、複数のチャンネルのデ
ータが混在した形式であってもよいし、各チャンネルの
データがトラック毎に別れているような形式であっても
よい。
【0243】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。例えば、種
々の変更、改良、組み合わせ等が可能なことは当業者に
自明であろう。
【0244】
【発明の効果】以上説明したように、本発明によれば、
押鍵すべき鍵の他、例えば手の種類(形状)や手の位置
や押鍵すべき指の種類を演奏者に指示することができる
ので、演奏者は詳細な演奏方法を知ることができる。ま
た、演奏方法を示す手の画像を表示することが可能であ
るので、各鍵に対応するLEDを点灯する場合に比べ、
演奏者は直感的に演奏方法を知ることができる。
【図面の簡単な説明】
【図1】 図1(A)はMIDI規格のノートオフベロ
シティの構成を示す図であり、図1(B)は本発明の実
施例による手表示情報を埋め込んだノートオフベロシテ
ィの構成を示す図である。
【図2】 本実施例による演奏指示装置に用いる演奏デ
ータのフォーマット例を示す図である。
【図3】 図3(A)は指くぐりの手の形状を示す図で
あり、図3(B)は閉じた手の形状を示す図である。
【図4】 図4(C)は小さく開いた手の形状を示す図
であり、図4(D)は大きく開いた手の形状を示す図で
ある。
【図5】 手表示情報およびノートナンバを基にして手
の表示を行う例を示す図である。
【図6】 図6(A)は第1のノートオンイベントに対
応する手の表示例を示す図であり、図6(B)は第2の
ノートオンイベントに対応する手の表示例を示す図であ
る。
【図7】 図7(C)は第3のノートオンイベントに対
応する手の表示例を示す図であり、図7(D)は第4の
ノートオンイベントに対応する手の表示例を示す図であ
る。
【図8】 図8(E)は第5のノートオンイベントに対
応する手の表示例を示す図であり、図8(F)は第6の
ノートオンイベントに対応する手の表示例を示す図であ
る。
【図9】 本実施例による演奏指示装置の構成を示すブ
ロック図である。
【図10】 CPUが処理するメインルーチンのフロー
チャートである。
【図11】 演奏データのデータ変換により手表示情報
を新たなメモリ領域に格納する例を示す図である。
【図12】 演奏データのデータ変換処理を示すフロー
チャートである。
【図13】 図10のステップSA3における演奏デー
タ読み出し処理の詳細を示すフローチャートである
【図14】 図14(A)は再生タイマ割り込み処理を
示すフローチャートであり、図14(B)は一致進行タ
イマ割り込み処理を示すフローチャートである。
【図15】 図15(A)と(B)はある音のノートオ
フと他の音のノートオンのタイミングを2種類示す図で
ある。
【図16】 図13のステップSB4におけるノートイ
ベント処理の詳細を示すフローチャートである。
【図17】 図17(A)は再生一致進行バッファの構
成を示す図であり、図17(B)は手弾き一致進行バッ
ファの構成を示す図である。
【図18】 図10のステップSA2における一致進行
処理の詳細を示すフローチャートである。
【図19】 図10のステップSA4における押鍵処理
の詳細を示すフローチャートである。
【図20】 図19のステップSF7における正押鍵処
理の詳細を示すフローチャートである。
【図21】 図19のステップSF21における誤押鍵
処理の詳細を示すフローチャートである。
【符号の説明】
1 ノートオンイベント、 2,4 タイミングデー
タ、 3 ノートオフイベント、 5 エンドデー
タ、 6 ベロシティデータ、 7 手表示情報、
10 演奏データ、 11 ROM、 12
RAM、 13 CPU、 14 タイマ、 1
5 MIDIインターフェース、 16 フロッピデ
ィスク駆動装置、 17 鍵盤、 18 鍵盤検出
回路、19 スイッチ、 20 スイッチ検出回路、
21 表示回路、 22 音源回路、 23
効果回路、 24 サウンドシステム、 25バ
ス、 30 演奏データ、 31 手表示情報、
51 他のMIDI機器、 52 ハードディスク
ドライブ、 53 CD−ROMドライブ、54 通
信インターフェース、 55 通信ネットワーク、
56 サーバコンピュータ

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 親指が人差し指または手のひらに重なっ
    た手の画像データを1種類以上、および親指が人差し指
    または手のひらに重なっていない手の画像データを2種
    類以上記憶する画像記憶手段と、 演奏データ中から手の種類情報を検出する検出手段と、 前記手の種類情報に応じて前記画像記憶手段に記憶され
    ている複数の手の画像データの中から1つを選択し、表
    示用の画像データを生成出力する画像生成手段とを有す
    る演奏指示装置。
  2. 【請求項2】 手の画像データを記憶する画像記憶手段
    と、 演奏データ中から手の前後位置情報を検出する検出手段
    と、 前記手の前後位置情報に応じて前記画像記憶手段に記憶
    されている画像データが示す手が鍵盤の手前または奥に
    位置する画像データを生成出力する画像生成手段とを有
    する演奏指示装置。
  3. 【請求項3】 手の画像データを記憶する画像記憶手段
    と、 演奏データ中から押鍵する指を示すための指情報を検出
    する検出手段と、 前記指情報に応じて前記画像記憶手段に記憶されている
    画像データが示す手において押鍵する指の長さを押鍵し
    ない場合とは異ならせた画像データを生成出力する画像
    生成手段とを有する演奏指示装置。
  4. 【請求項4】 前記検出手段はノートオフベロシティ中
    から情報を検出する請求項1〜3のいずれかに記載の演
    奏指示装置。
  5. 【請求項5】 手の画像データを記憶する画像記憶手段
    と、 演奏データ中からノートオンまたはノートオフを検出す
    るノート検出手段と、 前記ノート検出手段がノートオンまたはノートオフを検
    出すると、該ノートオン時またはノートオフ時に該ノー
    トの他にノートオン中のノートがあるか否かを演奏デー
    タから検出する手段と、 ノートオフ時に他にノートオン中のノートがなければ、
    次のノート情報と前記画像記憶手段に記憶されている手
    の画像データを基に次のノートの押鍵準備段階の手の画
    像データを生成出力し、ノートオン時に他にノートオン
    中のノートがあれば、新たに検出されたノートオンと前
    記画像記憶手段に記憶されている手の画像を基に該新た
    に検出されたノートの押鍵の手の画像データを生成出力
    する画像生成手段とを有する演奏指示装置。
  6. 【請求項6】 (a)親指が人差し指または手のひらに
    重なった手の画像データを1種類以上、および親指が人
    差し指または手のひらに重なっていない手の画像データ
    を2種類以上記憶する画像記憶手段を準備する手順と、 (b)演奏データ中から手の種類情報を検出する手順
    と、 (c)前記手の種類情報に応じて前記画像記憶手段に記
    憶されている複数の手の画像データの中から1つを選択
    し、表示用の画像データを生成出力する手順とをコンピ
    ュータに実行させるためのプログラムを記録した媒体。
  7. 【請求項7】 (a)手の画像データを記憶する画像記
    憶手段を準備する手順と、 (b)演奏データ中から手の前後位置情報を検出する手
    順と、 (c)前記手の前後位置情報に応じて前記画像記憶手段
    に記憶されている画像データが示す手が鍵盤の手前また
    は奥に位置する画像データを生成出力する手順とをコン
    ピュータに実行させるためのプログラムを記録した媒
    体。
  8. 【請求項8】 (a)手の画像データを記憶する画像記
    憶手段を準備する手順と、 (b)演奏データ中から押鍵する指を示すための指情報
    を検出する手順と、 (c)前記指情報に応じて前記画像記憶手段に記憶され
    ている画像データが示す手において押鍵する指の長さを
    押鍵しない場合とは異ならせた画像データを生成出力す
    る手順とをコンピュータに実行させるためのプログラム
    を記録した媒体。
  9. 【請求項9】 前記手順(b)はノートオフベロシティ
    中から情報を検出する請求項6〜8のいずれかに記載の
    プログラムを記録した媒体。
  10. 【請求項10】 (a)手の画像データを記憶する画像
    記憶手段を準備する手順と、 (b)演奏データ中からノートオンまたはノートオフを
    検出する手順と、 (c)前記手順(b)でノートオンまたはノートオフを
    検出すると、該ノートオン時またはノートオフ時に該ノ
    ートの他にノートオン中のノートがあるか否かを演奏デ
    ータから検出する手順と、 (d)ノートオフ時に他にノートオン中のノートがなけ
    れば、次のノート情報と前記画像記憶手段に記憶されて
    いる手の画像データを基に次のノートの押鍵準備段階の
    手の画像データを生成出力し、ノートオン時に他にノー
    トオン中のノートがあれば、新たに検出されたノートオ
    ンと前記画像記憶手段に記憶されている手の画像を基に
    該新たに検出されたノートの押鍵の手の画像データを生
    成出力する手順とをコンピュータに実行させるためのプ
    ログラムを記録した媒体。
  11. 【請求項11】 (a)親指が人差し指または手のひら
    に重なった手の画像データを1種類以上、および親指が
    人差し指または手のひらに重なっていない手の画像デー
    タを2種類以上記憶する画像記憶手段を準備する工程
    と、 (b)演奏データ中から手の種類情報を検出する工程
    と、 (c)前記手の種類情報に応じて前記画像記憶手段に記
    憶されている複数の手の画像データの中から1つを選択
    し、表示用の画像データを生成出力する工程とを含む演
    奏指示方法。
  12. 【請求項12】 (a)手の画像データを記憶する画像
    記憶手段を準備する工程と、 (b)演奏データ中から手の前後位置情報を検出する工
    程と、 (c)前記手の前後位置情報に応じて前記画像記憶手段
    に記憶されている画像データが示す手が鍵盤の手前また
    は奥に位置する画像データを生成出力する工程とを含む
    演奏指示方法。
  13. 【請求項13】 (a)手の画像データを記憶する画像
    記憶手段を準備する工程と、 (b)演奏データ中から押鍵する指を示すための指情報
    を検出する工程と、 (c)前記指情報に応じて前記画像記憶手段に記憶され
    ている画像データが示す手において押鍵する指の長さを
    押鍵しない場合とは異ならせた画像データを生成出力す
    る工程とを含む演奏指示方法。
  14. 【請求項14】 前記工程(b)はノートオフベロシテ
    ィ中から情報を検出する請求項11〜13のいずれかに
    記載の演奏指示方法。
  15. 【請求項15】 (a)手の画像データを記憶する画像
    記憶手段を準備する工程と、 (b)演奏データ中からノートオンまたはノートオフを
    検出する工程と、 (c)前記工程(b)でノートオンまたはノートオフを
    検出すると、該ノートオン時またはノートオフ時に該ノ
    ートの他にノートオン中のノートがあるか否かを演奏デ
    ータから検出する工程と、 (d)ノートオフ時に他にノートオン中のノートがなけ
    れば、次のノート情報と前記画像記憶手段に記憶されて
    いる手の画像データを基に次のノートの押鍵準備段階の
    手の画像データを生成出力し、ノートオン時に他にノー
    トオン中のノートがあれば、新たに検出されたノートオ
    ンと前記画像記憶手段に記憶されている手の画像を基に
    該新たに検出されたノートの押鍵の手の画像データを生
    成出力する工程とを含む演奏指示方法。
JP19152597A 1996-07-16 1997-07-16 演奏指示装置及びプログラムを記録した媒体 Expired - Fee Related JP3684774B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19152597A JP3684774B2 (ja) 1996-07-16 1997-07-16 演奏指示装置及びプログラムを記録した媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-186349 1996-07-16
JP18634996 1996-07-16
JP19152597A JP3684774B2 (ja) 1996-07-16 1997-07-16 演奏指示装置及びプログラムを記録した媒体

Publications (2)

Publication Number Publication Date
JPH1091061A true JPH1091061A (ja) 1998-04-10
JP3684774B2 JP3684774B2 (ja) 2005-08-17

Family

ID=26503704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19152597A Expired - Fee Related JP3684774B2 (ja) 1996-07-16 1997-07-16 演奏指示装置及びプログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JP3684774B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112463A (ja) * 1998-07-31 2000-04-21 Lg Electronics Inc 映像機器の音発生装置及びそれを利用した演奏音の発生装置並びにその方法
JP2001324919A (ja) * 2000-03-24 2001-11-22 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
US6337433B1 (en) 1999-09-24 2002-01-08 Yamaha Corporation Electronic musical instrument having performance guidance function, performance guidance method, and storage medium storing a program therefor
JP2002091430A (ja) * 2001-07-18 2002-03-27 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
JP2002099276A (ja) * 2001-07-18 2002-04-05 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
KR100458879B1 (ko) * 2000-03-02 2004-12-03 고나미 가부시끼가이샤 게임 장치, 정보 기억 매체, 게임 신호 전송 장치, 게임신호 전송 방법 및 게임 장치의 제어 방법
JP2019174708A (ja) * 2018-03-29 2019-10-10 株式会社河合楽器製作所 運指表示装置及び運指表示プログラム
JP2019179158A (ja) * 2018-03-30 2019-10-17 株式会社河合楽器製作所 運指表示プログラム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112463A (ja) * 1998-07-31 2000-04-21 Lg Electronics Inc 映像機器の音発生装置及びそれを利用した演奏音の発生装置並びにその方法
US6653544B1 (en) 1998-07-31 2003-11-25 Lg Electronics Playing sound generating apparatus and method using sound generation of image display device
US6337433B1 (en) 1999-09-24 2002-01-08 Yamaha Corporation Electronic musical instrument having performance guidance function, performance guidance method, and storage medium storing a program therefor
KR100458879B1 (ko) * 2000-03-02 2004-12-03 고나미 가부시끼가이샤 게임 장치, 정보 기억 매체, 게임 신호 전송 장치, 게임신호 전송 방법 및 게임 장치의 제어 방법
JP2001324919A (ja) * 2000-03-24 2001-11-22 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
JP2002091430A (ja) * 2001-07-18 2002-03-27 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
JP2002099276A (ja) * 2001-07-18 2002-04-05 Casio Comput Co Ltd 演奏動作表示装置、及び記録媒体
JP2019174708A (ja) * 2018-03-29 2019-10-10 株式会社河合楽器製作所 運指表示装置及び運指表示プログラム
JP2019179158A (ja) * 2018-03-30 2019-10-17 株式会社河合楽器製作所 運指表示プログラム

Also Published As

Publication number Publication date
JP3684774B2 (ja) 2005-08-17

Similar Documents

Publication Publication Date Title
JP2650454B2 (ja) 自動演奏装置
JP3684774B2 (ja) 演奏指示装置及びプログラムを記録した媒体
JPH06259065A (ja) 電子楽器
JP3613935B2 (ja) 演奏練習装置及びプログラムを記録した媒体
JPH0277095A (ja) 和音設定装置及び電子管楽器
JP5969421B2 (ja) 楽器音出力装置及び楽器音出力プログラム
JP2021081601A (ja) 楽音情報出力装置、楽音発生装置、楽音情報生成方法およびプログラム
JP5029258B2 (ja) 演奏練習支援装置および演奏練習支援処理のプログラム
JP5412766B2 (ja) 電子楽器及びプログラム
JP3192579B2 (ja) 自動演奏装置及び自動演奏方法
JP5145875B2 (ja) 演奏練習支援装置および演奏練習支援処理のプログラム
JP7509127B2 (ja) 情報処理装置、電子楽器システム、電子楽器、音節進行制御方法及びプログラム
JP5742592B2 (ja) 楽音生成装置、楽音生成プログラム及び電子楽器
JP2006301274A (ja) 電子楽器
JP4054913B2 (ja) 演奏誘導装置および演奏誘導処理のプログラム
JP2596303B2 (ja) 電子楽器
JP2694788B2 (ja) 電子楽器
JP2842440B2 (ja) 自動伴奏装置
JP2588133Y2 (ja) 音高データ作成装置
JPH10240244A (ja) 押鍵指示装置
JP4218566B2 (ja) 楽音制御装置及びプログラム
JP3150580B2 (ja) 自動演奏装置及び自動演奏方法
JP2021026141A (ja) コード検出装置及びコード検出プログラム
JPH07199915A (ja) ナビゲート装置
JPH08106284A (ja) 電子楽器の自動演奏装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050328

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: 20050510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050523

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080610

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090610

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100610

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100610

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110610

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees