JP2001265337A - 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体 - Google Patents

演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体

Info

Publication number
JP2001265337A
JP2001265337A JP2000078560A JP2000078560A JP2001265337A JP 2001265337 A JP2001265337 A JP 2001265337A JP 2000078560 A JP2000078560 A JP 2000078560A JP 2000078560 A JP2000078560 A JP 2000078560A JP 2001265337 A JP2001265337 A JP 2001265337A
Authority
JP
Japan
Prior art keywords
data
performance
image
note
determined whether
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
JP2000078560A
Other languages
English (en)
Other versions
JP3729016B2 (ja
Inventor
Shiro Ishiguro
士郎 石黒
Hiroshi Iwase
広 岩瀬
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2000078560A priority Critical patent/JP3729016B2/ja
Publication of JP2001265337A publication Critical patent/JP2001265337A/ja
Application granted granted Critical
Publication of JP3729016B2 publication Critical patent/JP3729016B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 インターネット等の通信手段を介して受信し
た曲データに基づいて、楽譜に合わせて演奏教習を行え
るようにする。 【解決手段】 パソコン2は、楽譜の画像データ及びそ
の楽譜の楽音データを含む曲データを、ネットワーク3
を介して曲データサーバ4から受信してHDに記憶し、
HDから読み出した画像データに基づいて表示部に楽譜
を表示するとともに、演奏すべき鍵をガイドする楽器1
に対して表示部に表示した楽譜に対応する演奏教習の楽
音データをHDから読み出して出力し、表示した楽譜の
中で出力した楽音データに対応する音符を曲の進行に応
じて移動する演奏ガイド用の画像によって指示する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、演奏教習装置及び
演奏教習処理のプログラムを記憶した記憶媒体に関す
る。
【0002】
【従来の技術】インターネット等の通信手段を介して曲
データを受信してRAM等のメモリにダウンロードし、
その曲データに基づいて演奏教習を行うことが提案され
ている。例えば、鍵盤楽器等で演奏教習を行う場合に
は、各鍵の下部に設けられた発光素子によって受信した
曲データの音高データに対応する鍵を照光して、演奏す
べき鍵のナビゲーションを行う構成になっている。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来の提案においては、照光されている鍵を演奏すること
はできても、楽譜に合わせて演奏することはできなかっ
た。このため、本来の演奏練習としての「目で見た楽譜
を手の運動に結びつける(変換する)」イメージトレー
ニングをすることができなかった。
【0004】本発明の課題は、インターネット等の通信
手段を介して受信した曲データに基づいて、楽譜に合わ
せて演奏教習を行えるようにすることである。
【0005】
【課題を解決するための手段】請求項1に記載の演奏教
習装置は、複数の音符からなる楽譜の画像データ、ガイ
ド用の画像データ、及び当該楽譜の楽音データを含む曲
データを受信して記憶手段(実施形態においては、図3
のHD42に対応する)に記憶する受信手段(実施形態
においては、図3のCPU31及びMODEM40に対
応する)と、前記記憶手段から読み出した楽譜の画像デ
ータ及び演奏ガイド用の画像データに基づいて楽譜の画
像及び演奏ガイド用の画像を所定の表示手段(実施形態
においては、図3の表示部39に対応する)に表示する
とともに、曲の進行に応じて当該演奏ガイド用の画像を
次に演奏すべき音符の位置に移動する表示制御手段(実
施形態においては、図3のCPU31に対応する)と、
次に演奏すべき操作子(実施形態においては、図2の鍵
盤19に対応する)をガイドする演奏手段(実施形態に
おいては、図1の楽器1に対応する)に対して前記演奏
ガイド用の画像の位置に対応する音符の楽音データを前
記記憶手段から読み出して出力する出力制御手段(実施
形態においては、図3のCPU31及びMIDIインタ
ーフェース36に対応する)と、を有する構成になって
いる。
【0006】請求項9に記載の記憶媒体は、複数の音符
からなる楽譜の画像データ、ガイド用の画像データ、及
び当該楽譜の楽音データを含む曲データを受信して記憶
手段に記憶する受信手順と、前記記憶手段から読み出し
た楽譜の画像データ及び演奏ガイド用の画像データに基
づいて楽譜の画像及び演奏ガイド用の画像を所定の表示
手段に表示するとともに、曲の進行に応じて当該演奏ガ
イド用の画像を次に演奏すべき音符の位置に移動する表
示制御手順と、次に演奏すべき操作子をガイドする演奏
手段に対して前記演奏ガイド用の画像の位置に対応する
音符の楽音データを前記記憶手段から読み出して出力す
る出力制御手順と、を実行する楽音発生処理のプログラ
ムを記憶している。
【0007】請求項1又は請求項9に記載の発明によれ
ば、演奏ガイド用の楽音データを演奏手段に出力すると
ともに、音符の画像及び演奏ガイド用の画像を表示手段
に表示し、曲の進行に応じて演奏ガイド用の画像を移動
して出力する楽音データに対応する音符を指示する。
【0008】
【発明の実施の形態】以下、本発明による実施形態につ
いて図を参照して説明する。図1は、本発明を適用する
場合のシステム構成を示している。鍵盤を有する楽器1
は、各鍵に対応してLEDの発光素子が設けられてい
る。また、RS232C等の通信ケーブルによってパソ
コン2に接続され、MIDI形式の曲データの授受を行
っている。ネットワーク3は、インターネットやその他
の通信回線であり、パソコン2と曲データサーバ4との
間をオンライン接続する。曲データサーバ4は、多数の
曲データのデータベースを備えており、パソコン2から
の要求に応じて、曲データを配信する。
【0009】図2は、図1における楽器1の構成を示す
ブロック図である。CPU11には、システムバス12
を介して、ROM13、RAM14、キースキャンイン
ターフェース15、LEDC(LEDコントローラ)1
6、音源17、MIDIインターフェース18が接続さ
れ、これらと間でデータ及びコマンドの授受をおこなっ
ている。ROM13は、CPU11が実行する制御プロ
グラム、初期データ等を格納している。RAM14は、
CPU11のワークエリアであり、システムバス12を
介して授受するデータを一時的に記憶する。
【0010】キースキャンインターフェース15は、鍵
盤19に接続され、CPU11からのキースキャンコマ
ンドに応じて各鍵のオン・オフ状態を走査して検出す
る。LEDC16は、鍵盤19の各鍵の下側に設けられ
ている発光素子であるLED20に接続され、CPU1
1の点灯指令又は消灯指令に応じてLED20の駆動を
制御する。音源17は、A/Dコンバータ、アンプ、ス
ピーカ等からなるサウンドシステム21に接続され、C
PU11の発音指令又は消音指令に応じてサウンドシス
テム21の発音又は消音を制御する。
【0011】MIDIインターフェース18は、MID
I形式の曲データのイベントをパソコン2から受信して
RAM14の曲データバッファにストアする。CPU1
1は、曲データに応じて演奏教習を行う。すなわち、ノ
ートオンのイベントに応じて、その音高に対応する鍵の
LEDを点灯させる。また、そのイベントのベロシティ
についても演奏教習の機能をもっている場合には、ベロ
シティに応じて、例えばLEDの点滅の速さを制御して
もよい。
【0012】図3は、パソコン2のシステム構成を示し
ている。CPU31には、システムバス32を介して、
ROM33、RAM34、VRAM35、MIDIイン
ターフェース36、キースキャンインターフェース3
7、HDC(ハードディスクコントローラ)38、表示
部39、及びMODEM40が接続されている。CPU
31は、これらと間でデータ及びコマンドの授受をおこ
なってパソコン2全体を制御している。
【0013】ROM33は、CPU31が実行する制御
プログラム、初期データ等を格納している。RAM34
は、CPU31のワークエリアであり、システムバス3
2を介して授受するデータを一時的に記憶する。VRA
M35は、表示部39に表示する1フィールド分の画像
データ(ビットマップデータ)を記憶する。MIDIイ
ンターフェース36は、CPU31の指令に応じて、楽
器1のCPU11との間で通信制御を行い、MIDI形
式の曲データを転送するとともに、楽器1の鍵盤19の
押鍵状態を受信する。
【0014】キースキャンインターフェース37は、キ
ーボード及びマウスからなる操作部41に接続され、C
PU11からのキースキャンコマンドに応じて各キーの
オン・オフ及びマウスの移動及びクリックの状態を走査
して検出する。HDC38は、外部記憶媒体であるHD
(ハードディスク)42を収容し、CPU31の指令に
応じて曲データサーバ4からダウンロードした曲データ
の書込み、及びダウンロードした曲データの読出しを制
御する。表示部39は、曲データのリスト画面、ダウン
ロード画面、曲データの再生画面等を表示する。MOD
EM40は、CPU31の通信接続指令に応じてネット
ワーク3に接続する通信プロトコルを実行する。
【0015】次に、図1に示したシステム構成の動作に
ついて詳細に説明する。まず、曲データサーバ4の動作
について説明する。図4〜図8は、サーバ内のメモリエ
リアマップを示す図である。図4に示すように、サーバ
のメモリエリアには、バッファエリア、RGB(カラー
表示楽譜)エリア、CMD(演奏ガイド用コマンド)エ
リア、MID(曲データ)エリア、SET(再生情報)
エリア、PAT(伴奏パターン)エリアがある。
【0016】バッファエリアには、ヘッダデータととも
に、他のエリアのデータ、すなわちRGBデータ、CM
Dデータ、MIDデータ、SETデータ、及びPATデ
ータが一時的にストアされる。ヘッダデータは、バッフ
ァエリア内のすべてのファイル数、RGB用、CMD
用、MID用、SET用、及びPAT用のヘッダデータ
がストアされる。例えば、RGB用のヘッダデータとし
ては、ファイル名、スタートアドレス、エンドアドレス
がある。他のヘッダデータも同様である。
【0017】図5は、RGBエリアの楽譜データのレイ
ヤ構造を示している。最上位のレイヤは、複数(例えば
N個)の曲に対応する楽譜データ、RGB(1)、RG
B(2)、RGB(3)、… RGB(N)で構成され
ている。その下位の各曲ごとのレイヤ、例えばRGB
(1)の下位レイヤは、複数の楽器の機種に対応する楽
譜データ、RGB(1、1)、RGB(1、2)、RG
B(1、3)、… RGB(1、N)で構成されてい
る。さらにその下位の各機種ごとのレイヤ、例えばRG
B(1、1)の下位レイヤは、複数のスキル(ユーザの
熟練度)に対応する楽譜データ、RGB(1、1、
1)、RGB(1、1、2)、RGB(1、1、3)、
… RGB(1、1、N)で構成されている。そして、
各スキルのデータ、例えばRGB(1、1、1)のデー
タは、ファイル名及び楽譜データで構成されている。
【0018】図6は、PATエリアの伴奏パターンデー
タのレイヤ構造を示している。最上位のレイヤは、複数
(N個)の曲に対応する伴奏パターンデータ、PAT
(1)、PAT(2)、PAT(3)、… PAT
(N)で構成されている。その下位の各曲ごとのレイ
ヤ、例えばPAT(1)の下位レイヤは、複数の楽器の
機種に対応する伴奏パターンデータ、PAT(1、
1)、PAT(1、2)、PAT(1、3)、… PA
T(1、N)で構成されている。さらにその下位の各機
種ごとのレイヤ、例えばPAT(1、1)の下位レイヤ
は、複数のスキル(ユーザの熟練度)に対応する伴奏パ
ターンデータ、PAT(1、1、1)、PAT(1、
1、2)、PAT(1、1、3)、… PAT(1、
1、N)で構成されている。そして、各スキルのデー
タ、例えばPAT(1、1、1)のデータは、ファイル
名及び伴奏パターンデータで構成されている。
【0019】この伴奏パターンデータは、後述するよう
に、パソコンを介して楽器にダウンロードされて、楽器
のユーザーエリアにストアされるが、楽器の機種によっ
てはユーザーエリアをもっていないものもある。例え
ば、図6におけるPAT(1、3)に対応する機種には
ユーザーエリアがない。したがって、その伴奏パターン
データは「なし」となっている。
【0020】図7は、CMDエリアの描画コマンドデー
タのレイヤ構造を示している。最上位のレイヤは、複数
(N個)の曲に対応する描画コマンド、CMD(1)、
CMD(2)、CMD(3)、… CMD(N)で構成
されている。その下位の各曲ごとのレイヤ、例えばCM
D(1)の下位レイヤは、複数の楽器の機種に対応する
描画コマンド、CMD(1、1)、CMD(1、2)、
CMD(1、3)、…CMD(1、N)で構成されてい
る。さらにその下位の各機種ごとのレイヤ、例えばCM
D(1、1)の下位レイヤは、複数のスキル(ユーザの
熟練度)に対応する描画コマンド、CMD(1、1、
1)、CMD(1、1、2)、CMD(1、1、3)、
… CMD(1、1、N)で構成されている。そして、
各スキルのデータ、例えばCMD(1、1、1)のデー
タは、ファイル名及び描画コマンドで構成されている。
【0021】描画コマンドのデータは、楽譜を構成する
複数の音符ごとに用意されており、図8に示すように、
WAKU(0)、WAKU(1)、…、WAKU(N)
からなる複数のデータで構成されている。そして各デー
タは、表示位置を示す座標(x,y)、大きさ(形状が
四角の場合には、高さ及び幅)、形状(四角、丸)、
色、及び外枠線(幅、種類)のデータで構成されてい
る。
【0022】次に、曲データサーバの動作についてフロ
ーチャートを参照して説明する。図9は、曲データサー
バのメインフローである。パソコンから受信があるか否
かを判別し(ステップSA1)、受信があったときは曲
番号を受信したか否かを判別する(ステップSA2)。
曲番号を受信したときは、レジスタMELODYにその
受信データをセットする(ステップSA3)。そして、
メロディフラグMFに1をセットする(ステップSA
4)。ステップSA2において、受信データが曲番号で
ない場合には、受信データが環境データであるか否かを
判別する(ステップSA5)。環境データである場合に
は、環境データの中の機種データをレジスタにセット
し、環境データの中のスキルデータをレジスタSKIL
Lにセットする(ステップSA6)。そして、環境フラ
グKFに1をセットする(ステップSA7)。
【0023】次に、MF及びKFがともに1であるか否
かを判別する(ステップSA8)。ともに1でない場合
には、ステップSA1に移行して、受信データの有無を
判別する。MF及びKFがともに1である場合には、フ
ァイル作成処理を実行する(ステップSA9)。次に、
その作成したファイルをパソコンに送信する送信処理を
実行し(ステップSA10)、MF及びKFをともに
「0」にリセットする(ステップSA11)。そして、
ステップSA1に移行して、受信データの有無を判別す
る。
【0024】図10〜図12は、図9のフローにおける
ステップSA9のファイル作成処理のフローである。図
10のフローにおいて、RGBエリア内でRGB(ME
LODY、KISHU、SKILL)のファイルを指定
する(ステップSB1)。次に、バッファ内に指定ファ
イルのデータをストアする(ステップSB2)。さら
に、ヘッダ部にファイル名、スタートアドレス、エンド
アドレスを書込む(ステップSB3)。また、CMDエ
リア内のCMD(MELODY、KISHU、SKIL
L)のファイルを指定する(ステップSB4)。次に、
バッファ内に指定ファイルのデータをストアする(ステ
ップSB5)。さらに、ヘッダ部にファイル名、スター
トアドレス、エンドアドレスを書込む(ステップSB
6)。
【0025】次に、図11のフローにおいて、MIDエ
リア内のMID(MELODY、KISHU、SKIL
L)のファイルを指定する(ステップSB7)。次に、
バッファ内に指定ファイルのデータをストアする(ステ
ップSB8)。さらに、ヘッダ部にファイル名、スター
トアドレス、エンドアドレスを書込む(ステップSB
9)。また、SETエリア内のSET(MELODY、
KISHU、SKILL)のファイルを指定する(ステ
ップSB10)。その指定したデータがあるか否かを判
別し(ステップSB11)、データがある場合にはバッ
ファ内に指定ファイルのデータをストアする(ステップ
SB12)。さらに、ヘッダ部にファイル名、スタート
アドレス、エンドアドレスを書込む(ステップSB1
3)。データがない場合には当然、データのストア及び
ヘッダ部の書込みは行わない。
【0026】次に、図12のフローにおいて、PATエ
リア内のPAT(MELODY、KISHU、SKIL
L)のファイルを指定する(ステップSB14)。その
指定したデータがあるか否かを判別し(ステップSB1
5)、データがある場合にはバッファ内に指定ファイル
のデータをストアする(ステップSB16)。さらに、
ヘッダ部にファイル名、スタートアドレス、エンドアド
レスを書込む(ステップSB17)。データがない場合
には当然、データのストア及びヘッダ部の書込みは行わ
ない。この後、バッファ内に書込まれたファイル数Nを
ヘッダ部に書込み(ステップSA18)、図9のメイン
フローに戻る。
【0027】図13は、図1に示したパソコン2のメモ
リエリアを示している。メモリエリアは、バッファエリ
ア、楽譜エリア、描画コマンドエリア、MIDIデータ
エリア、伴奏曲設定情報エリア、伴奏パターンエリアで
構成されている。また各エリアは、ヘッダ部及びファイ
ル部で構成されている。
【0028】次に、パソコンの動作について図3に示し
たCPU31のフローチャート及び表示部39の画面を
参照して説明する。図14は、CPU31のメインフロ
ーである。所定のイニシャライズ処理(ステップPA
1)の後、図15に示すメニュー画面を表示する(ステ
ップPA2)この画面には、「曲ダウンロード」及び
「曲再生」のアイコンスイッチが表示される。そして、
アイコンスイッチがオンされたか否かを判別する(ステ
ップPA3)。
【0029】アイコンスイッチがオンされたときは、ダ
ウンロードのアイコンスイッチがオンされたか、又は再
生のアイコンスイッチがオンされたかを判別する(ステ
ップPA4)。ダウンロードのアイコンスイッチがオン
されたときはダウンロード処理を実行し(ステップPA
5)、再生のアイコンスイッチがオンされたときは再生
処理を実行する(ステップPA6)。ダウンロード処理
又は再生処理の後は、ステップPA2に移行してメニュ
ー画面を表示する。
【0030】図16は、図14のフローにおけるステッ
プPA5のダウンロード処理のフローである。まず、図
17に示すダウンロードメニュー画面を表示する(ステ
ップPB1)。すなわち、「曲リスト」、「環境設
定」、「送信」、及び「戻る」のアイコンスイッチを表
示する。そして、アイコンスイッチがオンされたか否か
を判別する(ステップPB2)。アイコンスイッチがオ
ンされたときは、そのオンされたアイコンスイッチに応
じた処理を行う。
【0031】曲リストアイコンスイッチがオンされたか
否かを判別し(ステップPB3)、オンされたときは曲
選択処理を実行する(ステップPB4)。環境設定アイ
コンスイッチがオンされたか否かを判別し(ステップP
B5)、このアイコンがオンされたときは環境設定処理
を実行する(ステップPB6)。曲選択処理又は環境設
定処理を実行した後は、ステップPB1に移行して図1
7のメニュー画面を表示する。
【0032】曲リスト及び環境設定のアイコンスイッチ
がオンされない場合には、送信アイコンスイッチがオン
されたか否かを判別し(ステップPB7)、オンされた
ときは送受信処理を実行する(ステップPB8)。この
後は、設定内容をクリアして(ステップPB9)、図1
4のメインフローに戻る。送信アイコンスイッチがオン
されない場合には、戻りアイコンスイッチがオンされた
か否かを判別し(ステップPB)、オンされたときは設
定内容をクリアして(ステップPB9)、図14のメイ
ンフローに戻る。戻りアイコンがオンされない場合に
は、ステップPB1に移行する。
【0033】図18は、図16のフローにおけるステッ
プPB4の曲選択処理のフローである。まず、図19に
示す曲リストを表示する(ステップPC1)。この画面
には、曲リストの他に「OK」アイコンスイッチ及び
「戻る」アイコンスイッチが表示される。次に、いずれ
かの曲リストがオンされたか否かを判別し(ステップP
C2)、オンされたときはその曲番号をレジスタMEL
ODYにセットする(ステップPC3)。
【0034】曲リストがオンされない場合には、アイコ
ンスイッチがオンされたか否かを判別する(ステップP
C4)。オンされたときは、戻りアイコンスイッチがオ
ンされたのか、又はOKアイコンスイッチがオンされた
かを判別する(ステップPC5)。戻りアイコンスイッ
チがオンされたときは、MELODYにセットされてい
る曲番号をクリアして(ステップPC6)、図16のフ
ローに戻る。OKアイコンスイッチがオンされたとき
は、MELODYにセットされている曲番号を保持した
状態で、図16のフローに戻る。
【0035】図20は、図16のフローにおけるステッ
プPB6の環境設定処理のフローである。まず、図21
に示す環境設定画面を表示する(ステップPD1)。こ
の画面には、楽器の機種名を表示するエリアと演奏者の
スキルを表示するエリアがあり、「戻る」アイコンスイ
ッチ及び「OK」アイコンスイッチが表示される。環境
設定画面を表示した後、キーボードから文字等のデータ
入力があるか否かを判別する(ステップPD2)。
【0036】入力があったときは、そのデータが機種名
であるか否かを判別する(ステップPD3)。機種名で
ある場合には、その機種名のデータをレジスタKISH
Uにセットする(ステップPD4A)。そして、KIS
HUのデータを送信バッファにストアする(ステップP
D4B)。また、KISHUにセットされた機種名を画
面の対応するエリアに表示する(ステップPD5)。入
力されたデータが機種名でない場合すなわちそのデータ
が演奏レベル(スキル)である場合には、その演奏レベ
ルのデータをレジスタSKILLにセットする(ステッ
プPD6A)。そして、SKILLのデータを送信バッ
ファにストアする(ステップPD6B)。また、SKI
LLにセットされた演奏レベルを画面の対応するエリア
に表示する(ステップPD7)。機種名又は演奏レベル
を表示した後は、ステップPD2に移行してデータ入力
を判別する。
【0037】キーボードからデータ入力がない場合に
は、アイコンスイッチがオンされたか否かを判別する
(ステップPD8)。アイコンスイッチがオンされたと
きは、オンされたのが戻りアイコンスイッチであるか、
又はOKアイコンスイッチであるかを判別する(ステッ
プPD9)。オンされたのが戻りアイコンスイッチであ
る場合には、設定内容をクリアして(ステップPD1
0)、図16のフローに戻る。オンされたのがOKアイ
コンスイッチである場合には、設定内容を保持した状態
で図16のフローに戻る。
【0038】図22及び図23は、図16のフローにお
けるステップPB8の送受信処理のフローである。図2
2において、送信データがあるか否かを判別し(ステッ
プPE1)、送信データがある場合には送信処理を実行
する(ステップPE2)。送信バッファ内に楽器の機種
名のデータやスキルのデータがある場合には、それを環
境情報として曲データサーバに送信する。そして、送信
が終了したか否かを判別する(ステップPE3)。送信
データが残っている場合には送信処理を続行するが、送
信が終了したときは受信データがあるか否かを判別する
(ステップPE4)。受信データがある場合には、その
受信データを図13に示した受信バッファへストアし
(ステップPE5)、図24に示すダウンロード中の画
面を表示する(ステップPE6)。そして、受信データ
が終了したか否かを判別する(ステップPE7)。終了
していない場合には、ステップPE4に移行して受信デ
ータの有無を判別する。
【0039】受信データが終了したときは、受信バッフ
ァ内のヘッダ部のファイル数をレジスタNにセットする
(ステップPE8)。次に、ポインタnを1にセットし
(ステップPE9)、nの値をインクリメントしながら
nに対応する受信バッファ内のデータを対応するエリア
にストアする。すなわち、nが1であるか否かを判別し
(ステップPE10)、nが1である場合には、ヘッダ
部のn番目のスタートアドレス及びエンドアドレスで指
定されるデータを楽譜データエリアにストアする(ステ
ップPE11)。nが1でない場合には、図23のフロ
ーにおいて、nが2であるか否かを判別し(ステップP
E12)、nが2である場合には、ヘッダ部のn番目の
スタートアドレス及びエンドアドレスで指定されるデー
タをCMDデータエリアにストアする(ステップPE1
3)。
【0040】nが2でない場合には、nが3であるか否
かを判別し(ステップPE14)、nが3である場合に
は、ヘッダ部のn番目のスタートアドレス及びエンドア
ドレスで指定されるデータをMIDIデータエリアにス
トアする(ステップPE15)。nが3でない場合に
は、nが4であるか否かを判別し(ステップPE1
6)、nが4である場合には、ヘッダ部のn番目のスタ
ートアドレス及びエンドアドレスで指定されるデータを
伴奏設定情報データエリアにストアする(ステップPE
17)。nが4でない場合には、nが5であるか否かを
判別し(ステップPE18)、nが5である場合には、
ヘッダ部のn番目のスタートアドレス及びエンドアドレ
スで指定されるデータをパターン情報データエリアにス
トアする(ステップPE19)。
【0041】指定されるデータを対応するエリアにスト
アした後は、図22のステップPE20においてnの値
をインクリメントする。そして、nの値がNの値(この
場合は、N=5)より大きくなったか否かを判別する
(ステップPE21)。nの値がNの値以下である場合
には、ステップPE10に移行する。nの値がNの値よ
り大きい値(この場合は、n=6)になったときは、ク
オンタイズ処理を実行して(ステップPE22)、図1
6のフローに戻る。
【0042】図25及び図26は、クオンタイズ処理の
フローである。最初にアドレスレジスタADにMIDI
データエリアのスタートアドレスをセットする(ステッ
プPF1)。そして、ADのアドレスをインクリメント
しながらMIDIデータエリアを検索する。すなわち、
MIDI(AD)のデータがガイドチャンネル(コード
をナビゲートするチャンネル)のノートオンイベントで
あるか否かを判別する(ステップPF2)。そのデータ
がガイドチャンネルのノートオンイベントでない場合に
は、ADのアドレスをインクリメントする(ステップP
F3)。このインクリメントしたADのアドレスがエン
ドアドレスより大きい値になったか否かを判別する(ス
テップPF4)。エンドアドレス以下である場合には、
ステップPF2に移行してMIDI(AD)のデータの
内容を判別する。
【0043】MIDI(AD)のデータがガイドチャン
ネルのノートオンイベントである場合には、タイムレジ
スタTの値を0にリセットする(ステップPF5)。次
に、ポインタmの値を1にセットし(ステップPF
6)、ポインタnの値を0にセットする(ステップPF
7)。そして、ノートオンイベントのノートデータをレ
ジスタNOTE(n)にセットする(ステップPF
8)。次に、MIDI(AD+m)のデータの内容を判
別する(ステップPF9)。
【0044】このデータがタイムデータである場合に
は、Tの値にそのタイムデータすなわちMIDI(AD
+m)のデータを加算する(ステップPF10)。そし
て、Tの値が所定タイムより大きいか否かを判別する
(ステップPF11)。所定タイムとは、複数のノート
オンイベントがコードであるか否かを判別する閾値であ
る。タイムデータが閾値より小さい複数のノートオンイ
ベントがコードの候補となる。Tの値が所定タイム以下
である場合には、mの値をインクリメントする(ステッ
プPF12)。このときAD+mのアドレスがエンドア
ドレスより大きいか否かを判別する(ステップPF1
3)。エンドアドレス以下である場合には、ステップP
F9に移行して、MIDI(AD)のデータの内容を判
別する。
【0045】MIDI(AD+m)のデータがイベント
である場合には、さらにそのMIDI(AD+m)のイ
ベントがガイドチャンネルのノートオンイベントである
か否かを判別する(ステップPF14)。ガイドチャン
ネルのノートオンイベントである場合には、そのイベン
トは前のアドレスのイベントとコードを構成する可能性
をもつコード候補である。そこで、nの値をインクリメ
ントして(ステップPF15)、そのイベントのノート
データをNOTE(n)にセットする(ステップPF1
6)。次に、ステップPF12に移行してmの値をイン
クリメントする。
【0046】ステップPF11においてTの値が所定タ
イム以下であり、かつ、次のデータがガイドチャンネル
のノートオンイベントである限り、上記ループ処理を繰
り返す。次のデータがガイドチャンネルのノートオンイ
ベントでない場合、例えば、コントロールチェンジ等の
制御データである場合には、ステップPF12に移行し
てmの値をインクリメントする。ステップPF11にお
いて、Tの値が所定タイムより大きくなった場合には、
NOTE(0)〜NOTE(n)にセットした複数のノ
ートオンイベントでコードが成立するか否かを判別する
(ステップPF17)。コードが成立しない場合には、
NOTE(0)〜NOTE(n)のデータをクリアして
(ステップPF18)、ステップPF3に移行してAD
のアドレスをインクリメントする。
【0047】ステップPF17においてコードが成立し
た場合には、図26のフローにおいて、MIDI(A
D)のイベントをコードデータに変更する(ステップP
F19)。次に、NOTE(1)〜(n)に対するノー
トオフイベントを削除し(ステップPF20)、タイム
データを変更する(ステップPF21)。すなわち、コ
ードを構成する複数のノートオンイベントを1つのコー
ドデータに変更したので、そのコードイベント対応する
1つのノートオフイベントのみを残して、他のノートオ
フイベントを削除し、その削除によってタイムデータ
(デルタタイム)を変更する。また、コード化及びノー
トオフイベントの削除に応じて、ADのアドレスにmを
加算して次のアドレスを指定する(ステップPF2
2)。そして、図25のステップPF3に移行してAD
のアドレスをインクリメントする。ステップPF4にお
いて、ADのアドレスがエンドアドレスより大きくなっ
た場合には、クオンタイズ処理のフローを終了する。
【0048】図27は、図14のメインフローにおける
ステップPA6の再生処理のフローである。まず、図2
8に示す再生画面を表示する(ステップPG1)。この
画面には、「楽譜ナビ設定」、「楽譜表示」、及び「戻
る」アイコンスイッチが表示される。次に、アイコンス
イッチがオンされたか否かを判別する(ステップPG
2)。いずれかのアイコンスイッチがオンされたとき
は、そのアイコンに応じた処理を行う。
【0049】楽譜ナビ設定のアイコンスイッチがオンさ
れたか否かを判別し(ステップPG3)、このアイコン
がオンされたときは楽譜ナビ設定処理を実行する(ステ
ップPG4)。あるいは楽譜表示のアイコンスイッチが
オンされたか否かを判別し(ステップPG5)、このア
イコンがオンされたときは楽譜表示処理を実行する(ス
テップPG6)。楽譜ナビ設定処理又は楽譜表示処理の
後は、ステップPG1に移行して再生画面を表示する。
楽譜ナビ設定及び楽譜表示のアイコンスイッチがどちら
もオンされない場合には、戻りのアイコンスイッチがオ
ンされたか否かを判別し(ステップPG7)、このアイ
コンがオンされたときは図14のメインフローに戻る。
【0050】図29は、図27のフローにおけるステッ
プPG4の楽譜ナビ設定処理のフローである。まず、図
30(1)に示す楽譜ナビ設定画面を表示する(ステッ
プPH1)。この画面には、楽譜ナビゲーションを行う
か否かを設定する楽譜ナビゲーション用のラジオボタ
ン、次の音符を指示する画像を点滅するか否かを設定す
る音符点滅用のラジオボタン、及び、演奏結果の間違い
を表示するか否かを設定する間違い表示用のラジオボタ
ン、並びに戻りのアイコンスイッチが表示される。
【0051】そして、いずれかのラジオボタンが操作さ
れたか否かを判別する(ステップPH2)。いずれかの
ラジオボタンが操作された場合には、その操作されたラ
ジオボタンに応じた処理を行う。すなわち、楽譜ナビゲ
ーション用のラジオボタンが操作されたか否かを判別し
(ステップPH3)、このラジオボタンが操作されたと
きは、オン側の操作であるか又はオフ側の操作であるか
を判別する(ステップPH4)。オン側の操作である場
合には、フラグGNABFを1(楽譜ナビオン)にセッ
トする(ステップPH5)。オフ側の操作である場合に
は、GNABFを0(楽譜ナビオフ)にセットする(ス
テップPH6)。
【0052】操作されたのが楽譜ナビゲーション用のラ
ジオボタンでない場合には、音符点滅用のラジオボタン
が操作されたか否かを判別する(ステップPH7)。こ
のラジオボタンが操作されたときは、オン側の操作であ
るか又はオフ側の操作であるかを判別する(ステップP
H8)。オン側の操作である場合には、フラグBLIN
KFを1(点滅オン)にセットする(ステップPH
9)。オフ側の操作である場合には、BLINKFを0
(点滅オフ)にセットする(ステップPH10)。点滅
オンに設定された場合には、図30(2)の(a)、
(b)に示すように、演奏ガイドの音符の画像51を囲
む演奏ガイド用の画像52が点灯と消灯とを交互に繰り
返す点滅表示になる。
【0053】操作されたのが音符点滅用のラジオボタン
でない場合には、間違い表示用のラジオボタンが操作さ
れたか否かを判別する(ステップPH11)。このラジ
オボタンが操作されたときは、オン側の操作であるか又
はオフ側の操作であるかを判別する(ステップPH1
2)。オン側の操作である場合には、フラグMISFを
1(間違い表示オン)にセットする(ステップPH1
3)。オフ側の操作である場合には、MISFを0(間
違い表示オフ)にセットする(ステップPH14)。
【0054】間違い表示オンに設定された場合には、図
30(3)の(a)に示すように、演奏ガイドの音符に
対応して間違った演奏の音符の画像53を表示する。あ
るいは、図30(3)の(b)に示すように、間違った
演奏の音符の画像54を音符51とは異なる表示色で表
示する。あるいはまた、図30(3)の(c)に示すよ
うに、間違った演奏の画像55を音符51とは異なる特
異な画像で表示する。
【0055】図29のフローにおいていずれかのフラグ
をセットした後は、対応するラジオボタンを点灯し、対
応しないラジオボタンを消灯する(ステップPH1
5)。次に、戻りのアイコンスイッチがオンされたか否
かを判別する(ステップPH16)。ステップPH2に
おいてラジオボタンが操作されない場合も、ステップP
H16に移行して戻りのアイコンスイッチがオンされた
か否かを判別する。このアイコンがオンされない場合に
は、ステップPH2に移行してラジオボタンの操作の有
無を判別する。戻りのアイコンがオンされたときは、図
27のフローに戻る。
【0056】図31〜図33は、図27のフローにおけ
るステップPG6の楽譜表示処理のフローである。図3
1のフローにおいて、楽譜データエリアのデータに基づ
き楽譜を表示する(ステップPJ1)。次に、フラグG
NABFが1(楽譜ナビオン)であるか否かを判別し
(ステップPJ2)、このフラグが1である場合には、
音符を指定するポインタnを0(楽譜の先頭の音符)に
セットする(ステップPJ3)。次に、WAKU(n)
の内容に基づき枠を表示する(ステップPJ4)。この
結果、図34に示すように、複数の音符、コード記号等
からなる楽譜が表示されるとともに、先頭の音符を囲む
枠画像(演奏ガイド用の画像)52が表示される。ま
た、楽譜表示の下側には、「スタート」、「ストッ
プ」、及び「戻り」のアイコンスイッチが表示される。
【0057】ステップPJ4の後、又は、ステップPJ
2においてGNABFが0(楽譜ナビオフ)の場合には
枠画像52を表示することなく、アイコンスイッチがオ
ンされたか否かを判別する(ステップPJ5)。いずれ
かのアイコンスイッチがオンされた場合には、そのアイ
コンに応じた処理を行う。スタートのアイコンスイッチ
がオンされたか否かを判別し(ステップPJ6)、この
アイコンがオンされたときは、伴奏情報データエリアに
データがあるか否かを判別する(ステップPJ7)。デ
ータがある場合には、そのデータを楽器に転送する(ス
テップPJ8)。また、パターン情報データエリアにデ
ータがあるか否かを判別し(ステップPJ9)、データ
がある場合には、そのデータを楽器に転送する(ステッ
プPJ10)。そして、スタートフラグSTFを1(再
生実行)にセットする(ステップPJ11)。
【0058】ステップPJ6において、スタートのアイ
コンがオンでない場合には、ストップのアイコンスイッ
チがオンされたか否かを判別し(ステップPJ12)、
このアイコンがオンされたときは、全ての音を消音し
(ステップPJ13)、枠画像の表示をクリアする(ス
テップPJ14)。また、STFを0(再生停止)にセ
ットする(ステップPJ15)。
【0059】ステップPJ11においてSTFに1をセ
ットした後は、図32のフローにおいて、アドレスレジ
スタADにMIDIデータエリアのスタートアドレスを
セットする(ステップPJ16)。次に、レッスンモー
ドを示すレジスタSTATUSに1をセットし(ステッ
プPJ17)、タイムレジスタSTに現在時間をセット
する(ステップPJ18)。さらに、タイムレジスタT
に0をセットする(ステップPJ19)。STATUS
の値は押鍵状態によって設定され、1〜3のいずれかの
値となる。この値が1の場合には、演奏ガイドの楽音の
発音開始タイミングと押鍵タイミングとが合っている状
態である。この値が2の場合には、演奏ガイドの楽音の
発音開始タイミングに押鍵タイミングが遅れている状態
である。この値が3の場合には、演奏ガイドの楽音の発
音開始タイミングよりも押鍵タイミングが早い状態であ
る。
【0060】次に、MEM[AD]のデータがイベント
データであるかタイムデータであるかを判別する(ステ
ップPJ20)。すなわち、曲の最初のデータがイベン
トデータであるか又はタイムデータであるかを判別す
る。データがイベントデータである場合には、レジスタ
ΔTに最小時間をセットし(ステップPJ21)、AD
をデクリメントする(ステップPJ22)。MEM[A
D]のデータがタイムデータである場合には、そのタイ
ムデータMEM[AD]をΔTにセットする(ステップ
PJ23)。したがって、図30(1)の画面でスター
トのアイコンがオンされた瞬間にいきなり再生開始にな
らず、ΔTにセットされたタイムデータの時間経過後に
再生が開始する。
【0061】ステップPJ22又はステップPJ23の
後は、Tの値にΔTの値を加算する(ステップPJ2
4)。次に、ガイド処理(ステップPJ25)、MID
I IN処理(ステップPJ26)、MIDI OUT
処理(ステップPJ27)、楽譜ナビ処理(ステップP
J28)を実行して、図31のステップPJ5に移行す
る。ステップPJ5においてアイコンスイッチがオンで
ない場合には、図32のステップPJ25に移行する。
【0062】図31のステップPJ12において、スト
ップのアイコンスイッチがオンでない場合には、図33
のフローにおいて、戻りのアイコンスイッチがオンされ
たか否かを判別する(ステップPJ29)。このアイコ
ンがオンされたときは、全ての音の消音処理を行い(ス
テップPJ30)、STFを0(再生停止)にセットす
る(ステップPJ31)。そして、図27のフローに戻
る。
【0063】図35〜図38は、図32のフローにおけ
るステップPJ25のガイド処理のフローである。図3
5のフローにおいて、STFが1(再生実行)であるか
否かを判別し(ステップPK1)、このフラグが1であ
る場合には、現在時刻がST+Tのタイムデータに達し
たか否かを判別する(ステップPK2)。このタイムデ
ータに達している場合には、ADのアドレスをインクリ
メントする(ステップPK3)。そして、ADのアドレ
スがエンドアドレスでないか否かを判別する(ステップ
PK4)。
【0064】エンドアドレスでない場合には、MEM
[AD]のデータがタイムデータであるか否かを判別す
る(ステップPK5)。タイムデータである場合には、
STATUSの値が3であるか否かを判別する(ステッ
プPK6)。この値が3である場合には、早送りをする
ためΔTに最小時間をセットする(ステップPK7)。
この値が3でなく1又は2である場合には、MEM[A
D]をΔTにセットする(ステップPK8)。ΔTにタ
イムデータをセットした後は、そのΔTのタイムデータ
をTのタイムデータに加算する(ステップPK9)。そ
して図32のフローに戻る。ステップPK4においてA
Dのアドレスがエンドアドレスである場合には、STF
に0(再生停止)をセットして(ステップPK10)、
図32のフローに戻る。ステップPK1においてSTF
が0である場合、又は、ステップPK2において現在時
刻がST+Tのタイムデータに達していない場合には、
直ちに図32のフローに戻る。
【0065】ステップPK5において、MEM[AD]
のデータがタイムデータでない場合には、図36のフロ
ーにおいて、MEM[AD]のデータはイベントデータ
であるか否かを判別する(ステップPK11)。イベン
トデータである場合には、チャンネルデータがガイドチ
ャンネルであるか否かを判別する(ステップPK1
2)。ガイドチャンネルである場合には、さらにイベン
トデータがノートイベント又はコードイベントであるか
否かを判別する(ステップPK13)。ノートイベント
又はコードイベントである場合には、ADのアドレスを
インクリメントして、ベロシティデータをレジスタVE
Lにセットする(ステップPK14)。そして、VEL
の値が0でないか否かを判別する(ステップPK1
5)。この値が0でない場合には、MIDIデータのノ
ート又はコードをレジスタNOTEにセットする(ステ
ップPK16)。
【0066】次に、ポインタnを0にセットして(ステ
ップPK17)、nの値をインクリメントしながらMI
DI OUTバッファ(n)を検索する。すなわち、M
IDI OUTバッファ(n)が空きであるか否かを判
別し(ステップPK18)、空きでない場合にはnの値
をインクリメントする(ステップPK19)。このとき
nが所定数を超えたか否かを判別し(ステップPK2
0)、超えていない場合には、ステップPK18に移行
してMIDI OUTバッファ(n)を検索する。MI
DI OUTバッファ(n)が空きである場合には、M
IDI OUTバッファ(n)のイベントエリアにMI
DIデータをストアする(ステップPK21)。次に、
現在時刻をレジスタWTIMEにセットし(ステップP
K22)、MIDI OUTバッファ(n)のタイムエ
リアにWTIMEのデータをストアする(ステップPK
23)。
【0067】データをストアした後、又はステップPK
20においてnが所定数を超えたときは、図37のフロ
ーにおいて、STATUSの値が3であるか否かを判別
する(ステップPK24)。STATUSの値が3であ
る場合には、STATUSの値を1に変更する(ステッ
プPK25)。そして、チャンネルセットCHSET及
びボリュームVOLUMEの値に基づきMIDIデータ
を作成する(ステップPK26)。
【0068】図36のフローにおけるステップPK13
において、イベントがノートイベント及びコードイベン
トのいずれでもない場合には、図37のフローにおい
て、そのイベントがボリュームイベントであるか否かを
判別する(ステップPK27)。ボリュームイベントで
ある場合には、ADのアドレスをインクリメントして、
ボリュームの値をレジスタVOLUMEに取り込む(ス
テップPK28)。次に、STATUSの値が3である
か否かを判別する(ステップPK29)。この値が3で
ある場合には、早送り時の音を消すためにMIDIデー
タのボリュームの値を最小の値に変更する(ステップP
K30)。
【0069】ボリューム値を最小に変更した後、若しく
はステップPK26においてMIDIデータを作成した
後、又は、図36のステップPK12においてチャンネ
ルデータがガイドチャンネルでない場合、若しくはステ
ップPK15においてVELの値が0である場合には、
図37のステップPK31に移行して、ポインタnを0
にセットする。そして、nの値をインクリメントしなが
らMIDI OUTバッファ(n)を検索する。
【0070】すなわち、MIDI OUTバッファ
(n)が空きであるか否かを判別し(ステップPK3
2)、空きでない場合にはnの値をインクリメントする
(ステップPK33)。このときnが所定数を超えたか
否かを判別し(ステップPK34)、超えていない場合
には、ステップPK32に移行してMIDI OUTバ
ッファ(n)を検索する。MIDI OUTバッファ
(n)が空きである場合には、MIDI OUTバッフ
ァ(n)のイベントエリアにMIDIデータをストアす
る(ステップPK35)。次に、現在時刻をレジスタW
TIMEにセットし(ステップPK36)、MIDI
OUTバッファ(n)のタイムエリアにWTIMEのデ
ータをストアする(ステップPK37)。
【0071】データをストアした後、若しくはステップ
PK34においてnが所定数を超えた場合、又は、図3
6のステップPK11においてMEM[AD]がイベン
トデータでない場合には、図35のステップPK3に移
行してADをインクリメントする。
【0072】図37のステップPK24においてSTA
TUSの値が3でない場合、すなわちこの値が1である
場合には、図38のフローにおいて、STATUSの値
を2に変更する(ステップPK38)。次に、ポインタ
nを0にセットして(ステップPK39)、nの値をイ
ンクリメントしながらMIDI OUTバッファ(n)
を検索する。すなわち、MIDI OUTバッファ
(n)が空きであるか否かを判別し(ステップPK4
0)、空きでない場合にはnの値をインクリメントする
(ステップPK41)。このときnが所定数を超えたか
否かを判別し(ステップPK42)、超えていない場合
には、ステップPK40に移行してMIDI OUTバ
ッファ(n)を検索する。
【0073】MIDI OUTバッファ(n)が空きで
ある場合には、MIDI OUTバッファ(n)のイベ
ントエリアににMIDIデータをストアする(ステップ
PK43)。次に、現在時刻をレジスタWTIMEにセ
ットし(ステップPK44)、MIDI OUTバッフ
ァ(n)のタイムエリアににWTIMEのデータをスト
アする(ステップPK45)。各エリアにデータをスト
アした後、又はステップPK42においてnが所定数を
超えた後は、図32のフローのステップPJ26に移行
する。
【0074】図39は、ステップPJ26のMIDI
IN処理のフローである。まず、フラグSTFが1(再
生実行)であるか否かを判別する(ステップPL1)。
このフラグが1である場合には、MIDI入力があるか
否かを判別する(ステップPL2)。入力がある場合に
は、そのMIDIデータがガイドチャンネルのデータで
あるか否かを判別する(ステップPL3)。ガイドチャ
ンネルのデータである場合には、さらにそのMIDIデ
ータがノートオン又はコードのイベントであるか否かを
判別する(ステップPL4)。ノートオン又はコードの
イベントである場合には、次のステップPL5に移行す
る。上記条件を1つでも満たさない場合には、直ちにこ
のフローを終了する。
【0075】ステップPL5においては、MIDIデー
タのノート又はコードをレジスタKEYにセットする。
次に、KEYのデータとNOTEのデータとが一致して
いるか否かを判別する(ステップPL6)。すなわち、
演奏ガイド用として楽器に送信した音高データと、楽器
から受信した演奏結果の鍵番号データとが一致している
か否かを判別する。データが一致している場合には、フ
ラグOKFを1(押鍵正解)にセットする(ステップP
L7)。次に、現在時刻がST+Tのタイムデータに達
していないかを判別する(ステップPL8)。
【0076】現在時刻がそのタイムデータに達していな
い場合には、早送りをする必要があるので、STATU
Sの値を3にセットする(ステップPL9)。ステップ
PL8において、現在時刻がST+Tのタイムデータに
達している場合には、STATUSの値を1にセットし
(ステップPL10)、現在時刻からST+Tのタイム
データを減算した値をレジスタSにセットする(ステッ
プPL11)。そして、STのタイムデータにSのタイ
ムデータを加算して更新する(ステップPL12)。す
なわち、押鍵の遅れによる時間差を補正する。
【0077】ステップPL6において、KEYのデータ
とNOTEのデータとが一致しない場合には、フラグN
OFに1をセットする(ステップPL13)。フラグを
セットした後、又は、ステップPL9においてSTAT
USの値をセットした後、若しくはステップPL12に
おいてSTのタイムデータを更新した後は、図32のス
テップPJ27に移行する。
【0078】図40は、ステップPJ27のMIDI
OUT処理のフローである。まず、ポインタnを0にセ
ットして(ステップPM1)、nの値をインクリメント
しながら以下のループ処理を実行する。MIDI OU
Tバッファ(n)が空きでないか否かを判別し(ステッ
プPM2)、空きでなくデータがある場合には、MID
I OUTバッファ(n)からMIDIデータとWTI
MEのデータを読み出す(ステップPM3)。
【0079】次に、その読み出したMIDIデータのチ
ャンネルがCHSETのチャンネルと異なっているかを
判別する(ステップPM4)。チャンネルが異なってい
る場合には、現在時刻からWTIMEのタイムデータを
減算した値をレジスタDにセットする(ステップPM
5)。そして、Dの値が所定時間に達しているか否かを
判別する(ステップPM6)。所定時間に達している場
合、又はステップPM4においてチャンネルが同じであ
る場合には、ステップPM3において読み出したMID
Iデータを楽器に出力する(ステップPM7)。そして
MIDI OUTバッファ(n)をクリアする(ステッ
プPM8)。
【0080】この後、nの値をインクリメントする(ス
テップPM9)。ステップPM2においてMIDI O
UTバッファ(n)が空きである場合、又はステップP
M6においてDの値が所定時間に満たない場合にも、ス
テップPM9に移行してnの値をインクリメントする。
次に、インクリメントしたnの値が所定数を超えたか否
かを判別する(ステップPM10)。超えていない場合
には、ステップPM2に移行してステップPM10まで
のループ処理を繰り返す。nの値が所定数を超えたとき
は、図32のステップPJ28に移行する。
【0081】図41及び図42は、ステップPJ28の
楽譜ナビ処理のフローである。まず、フラグSTFが1
(再生実行)であるか否かを判別する(ステップPN
1)。このフラグが0である場合には直ちにこのフロー
を終了するが、このフラグが1である場合には、フラグ
MISFが1(間違い表示)であるか否かを判別する
(ステップPN2)。このフラグが1である場合にはさ
らに、NOFが1(押鍵誤り)であるか否かを判別する
(ステップPN3)。
【0082】このフラグが1である場合には、演奏ガイ
ドの枠画像であるWAKU(n)の座標とKEYの内容
に基づき、KEYの音符に対応するオブジェクトを表示
する(ステップPN4)。すなわち、図30(3)の
(c)に示すような特異な画像55を表示する。次に、
NOFを0にリセットして(ステップPN5)、このフ
ローを終了して図31のステップPJ5に移行する。
【0083】図41のステップPN2においてMISF
が0である場合、又はステップPN3においてNOFが
0である場合には、フラグOKFが1(押鍵正解)であ
るか否かを判別する(ステップPN6)。このフラグが
1である場合には、WAKU(n)に対応する演奏ガイ
ドの枠画像の表示を消去するとともに、オブジェクトが
表示されていればその画像も消去する(ステップPN
7)。次に、nの値をインクリメントする(ステップP
N8)。そして、インクリメントしたnの値が最大数以
下であるか否かを判別する(ステップPN9)。この値
が最大数を超えている場合には、このフローを終了して
図31のステップPJ5に移行する。
【0084】nの値が最大数以下である場合には、図4
2のフローにおいて、WAKU(n)に対応する枠画像
を表示する(ステップPN10)。次に、ポインタQに
0をセットし(ステップPN11)、OKFを0にリセ
ットする(ステップPN12)。このリセットの後、又
は図41のステップPN6においてOKFが0である場
合には、フラグBLINKFが1(点滅表示)であるか
否かを判別する(ステップPN13)。このフラグが0
である場合には直ちにこのフローを終了するが、このフ
ラグが1である場合には、Qの値をインクリメントする
(ステップPN14)。そして、Qの値が所定値を超え
たか否かを判別する(ステップPN15)。
【0085】この値が所定値を超えたときは、枠画像の
表示又は消去を指定するフラグBFを反転し(ステップ
PN16)、Qの値を0にセットする(ステップPN1
7)。このセットの後、又はステップPN15において
Qの値が所定値を超えない場合には、ステップPN18
においてBFが1であるか否かを判別する。BFが1で
ある場合には、WAKU(n)の画像を表示する(ステ
ップPN19)。BFが0である場合には、WAKU
(n)の画像を消去する(ステップPN20)。枠画像
の表示又は消去の後は、図31のステップPJ5に移行
する。すなわち、演奏ガイド用の画像である枠画像が所
定値のインターバルで点滅表示される。
【0086】図43は、図2に示した楽器のCPU11
のメモリエリアMEMを示している。MEMにはユーザ
ーエリア(RAMエリア)と固定エリア(ROMエリ
ア)があり、複数種類の伴奏情報のデータを格納するた
めの複数のエリアMEM(0)、MEM(1)、…、M
EM(N)がある。各エリアMEM( )には、イベン
トデータ及びタイムデータが交互に格納される。
【0087】次に、楽器の動作についてCPU11のフ
ローチャートに基づいて説明する。図44は楽器のメイ
ンフローである。所定のイニシャライズ処理(ステップ
GA1)の後、MIDI処理(ステップGA2)、伴奏
処理(ステップGA3)、スイッチ処理(ステップGA
4)、鍵ガイド処理(ステップGA5)、押鍵処理(ス
テップGA6)、伴奏処理(ステップGA7)、発音指
示処理(ステップGA8)、その他の処理(ステップG
A9)、を繰り返し実行する。
【0088】図45は、図44のフローにおけるMID
I処理のフローである。この処理ではMIDI IN処
理(ステップGB1)、MIDI OUT処理(ステッ
プGB2)を実行する。MIDI IN処理では、図4
6に示すように、MIDI INがあるか否かを判別す
る(ステップGC1)。MIDI INがない場合には
直ちにこのフローを終了するが、MIDI INがあっ
たときは、ポインタnに0をセットし(ステップGC
2)、nをインクリメントしながらMIDI INバッ
ファ(n)が空きであるか否かを判別する(ステップG
C3)。
【0089】MIDI INバッファ(n)が空きでな
い場合には、nの値をインクリメントする(ステップG
C4)。このときnの値が所定数を超えたか否かを判別
する(ステップGC5)。所定数以内である場合には、
ステップGC3に移行して、MIDI INバッファ
(n)が空きであるか否かを判別する。空きである場合
には、MIDI INバッファ(n)のエリアにMID
Iデータをストアする(ステップGC6)。そして、ス
テップGC1に移行してMIDI INの有無を判別す
る。ステップGC5においてnの値が所定数を超えたと
きは、図45のフローに戻り、ステップGB2のMID
I OUT処理に移行する。
【0090】MIDI OUT処理では、図47に示す
ように、ポインタnに0をセットし(ステップGD
1)、nの値をインクリメントしながら以下のループ処
理を実行する。すなわち、MIDI OUTバッファ
(n)が空きでないか否かを判別し(ステップGD
2)、空きでなくデータがある場合には、MIDI O
UTバッファ(n)からMIDIデータを読み出してパ
ソコンに出力する(ステップGD3)。そしてMIDI
OUTバッファ(n)をクリアする(ステップGD
4)。この後、nの値をインクリメントする(ステップ
GD5)。ステップGD2においてMIDI OUTバ
ッファ(n)が空きである場合にも、ステップGD5に
移行してnの値をインクリメントする。次に、インクリ
メントしたnの値が所定数を超えたか否かを判別する
(ステップGD6)。超えていない場合には、ステップ
GD2に移行してステップGD6までのループ処理を繰
り返す。nの値が所定数を超えたときは、図44のメイ
ンフローに戻り、ステップGA3に移行する。
【0091】図48は、メインフローにおけるステップ
GA3の伴奏情報設定処理のフローである。この処理で
は、ポインタnに0をセットし(ステップGE1)、n
の値をインクリメントしながら以下のループ処理を実行
する。すなわち、MIDIINバッファ(n)のデータ
が伴奏情報であるか否かを判別し(ステップGE2)、
伴奏情報である場合には、その伴奏情報に基づき楽器設
定を行う(ステップGE3)。ステップGE2において
MIDI INバッファ(n)のデータが伴奏パターン
である場合には、楽器のパターン作成エリアに転送する
(ステップGE5)。この転送の後、又はステップGE
3における楽器設定の後は、MIDIOUTバッファ
(n)をクリアする(ステップGE6)。この後、nの
値をインクリメントする(ステップGE7)。ステップ
GE4においてMIDI INバッファ(n)のデータ
が伴奏パターンでない場合にも、ステップGE7に移行
してnの値をインクリメントする。次に、インクリメン
トしたnの値が所定数を超えたか否かを判別する(ステ
ップGE8)。超えていない場合には、ステップGE2
に移行してステップGE8までのループ処理を繰り返
す。nの値が所定数を超えたときは、図44のメインフ
ローに戻り、ステップGA4に移行する。
【0092】図49は、メインフローにおけるステップ
GA4のスイッチ処理のフローである。まず、伴奏パタ
ーンを選択するSELスイッチが操作されたか否かを判
別する(ステップGF1)。操作されたときは、選択さ
れた伴奏パターンの番号をレジスタBANSOにセット
する(ステップGF2)。このセットの後、又はステッ
プGF1においてSELスイッチが操作されない場合に
は、スタートスイッチがオンされたか否かを判別する
(ステップGF3)。このスイッチがオンされない場合
には、直ちにこのフローを終了する。
【0093】このスイッチがオンされたときは、スター
トフラグSTFを反転する(ステップGF4)。そし
て、STFが1(伴奏演奏実行)であるか否かを判別し
(ステップGF5)、このフラグが1である場合には、
BANSOの番号に対応する伴奏パターンエリアのスタ
ートアドレスをアドレスレジスタADにセットする(ス
テップGF6)。次に、初期タイムのデータをタイムレ
ジスタTにセットし(ステップGF7)、タイマインタ
ラプトを禁止解除にする(ステップGF8)。ステップ
GF5において、STFが0(伴奏演奏停止)である場
合には、消音処理をして(ステップGF9)、タイマイ
ンタラプトを禁止する(ステップGF10)。ステップ
GF8におけるタイマインタラプト禁止解除の後、又は
ステップGF10におけるタイマインタラプト禁止の後
は、図44のメインフローに戻り、ステップGA5に移
行する。
【0094】図50は、メインフローにおけるステップ
GA5の鍵ガイド処理のフローである。この処理では、
ポインタnに0をセットし(ステップGK1)、nの値
をインクリメントしながら以下のループ処理を実行す
る。すなわち、MIDI INバッファ(n)が空きで
ないか否かを判別し(ステップGK2)、空きでない場
合には、そのMIDIデータがノート又はコードのイベ
ントであるか否かを判別する(ステップGK3)。ノー
ト又はコードのイベントである場合には、さらにそのイ
ベントのチャンネルアがガイドチャンネルであるか否か
を判別する(ステップGK4)。
【0095】ガイドチャンネルである場合には、MID
Iデータのベロシティが0でないか否かを判別する(ス
テップGK5)。ベロシティが0でない場合には、その
ベロシティの値をレジスタVELにセットする(ステッ
プGK6)。次に、VELの値にVSETの値を乗算し
て、その乗算値に1を加算しその値をVELの値として
更新する(ステップGK7)。VSETの値はユーザー
によって所望の値に設定することができる。したがっ
て、この値を0に設定することも考えられる。この場合
には、上記演算の結果が0になりノートオフになるの
で、この状態を回避するため1を加算する。VELの更
新の後、MIDIデータのベロシティをVELの値に変
更する(ステップGK8)。また、MIDIデータのノ
ートに対応する鍵内のLEDを点灯する(ステップGK
9)。
【0096】次に、nの値をインクリメントする(ステ
ップGK10)。そして、インクリメントしたnの値が
所定数を超えたか否かを判別する(ステップGK1
1)。超えていない場合には、ステップGK2に移行し
てステップGK11までのループ処理を繰り返す。ステ
ップGK5において、MIDIデータのベロシティが0
である場合には、MIDIデータのノートに対応するL
EDを消灯する(ステップGK12)。次に、nの値を
インクリメントする(ステップGK10)。そして、イ
ンクリメントしたnの値が所定数を超えたか否かを判別
する(ステップGK11)。超えていない場合には、ス
テップGK2に移行してステップGK11までのループ
処理を繰り返す。nの値が所定数を超えたときは、図4
4のメインフローに戻り、ステップGA6に移行する。
【0097】図51は、メインフローにおけるステップ
GA6の押鍵処理のフローである。この処理では最初に
鍵盤を走査し(ステップGG1)、鍵変化があるか否か
を判別する(ステップGG2)。鍵変化がオンすなわち
押鍵である場合には、その鍵のチャンネル、ノート、及
びベロシティでMIDIデータを作成する(ステップG
G3)。一方、鍵変化がオフすなわち離鍵である場合に
は、その鍵のチャンネル、ノート、及び値が0のベロシ
ティでMIDIデータを作成する(ステップGG4)。
【0098】次に、ポインタnに0をセットし(ステッ
プGG5)、nの値をインクリメントしながらMIDI
OUTバッファ(n)が空きであるか否かを判別する
(ステップGD2)。空きでない場合には、nの値をイ
ンクリメントする(ステップGG7)。そして、インク
リメントしたnの値が所定数を超えたか否かを判別する
(ステップGG8)。超えていない場合には、ステップ
GG2に移行してMIDI OUTバッファ(n)が空
きであるか否かを判別する。空きである場合には、MI
DI OUTバッファ(n)にMIDIデータをストア
する(ステップGG9)。
【0099】MIDIデータをストアした後、又はステ
ップGG8においてnの値が所定値を超えた場合、若し
くはステップGG2において鍵変化がない場合には、鍵
盤の走査が終了したか否かを判別する(ステップGG1
0)。走査が終了していない場合には、ステップGG1
に移行して走査を続行する。走査が終了した場合には、
MIDI OUTのバッファの内容からコードが成立し
ているか否かを判別する(ステップGG11)。成立し
ている場合には、コードの根音をレジスタROOTにセ
ットし、コード種をレジスタCODEにセットする(ス
テップGG12)。根音及びコード種をセットした後、
又はコードが成立しない場合には、図44のメインフロ
ーに戻り、ステップGA7に移行する。
【0100】図52は、メインフローにおけるステップ
GA7の伴奏処理のフローである。まず、スタートフラ
グSTFが1(伴奏演奏実行)であるか否かを判別し
(ステップGH1)、このフラグが1である場合には、
タイマレジスタTの値が0であるか否かを判別する(ス
テップGH2)。STFが0(伴奏演奏停止)である場
合、又はTの値が0でない場合には、直ちにこのフロー
を終了する。
【0101】Tの値が0である場合には、MEM(A
D)からMIDIイベントを読み出す(ステップGH
3)。そしてそのMIDIイベントがコードトデータで
あるか否かを判別する(ステップGH4)。コードデー
タである場合には、CODEのコード種及びROOTの
根音で複数の音高データに変換する(ステップGH
5)。音高変換の後、又はMIDIイベントがコードデ
ータでなくノートデータである場合には、ポインタnに
0をセットして(ステップGH6)、nをインクリメン
トしながら、MIDI OUTバッファ(n)が空きで
あるか否かを判別する(ステップGH7)。空きでない
場合には、nの値をインクリメントする(ステップGH
8)。そして、インクリメントしたnの値が所定数を超
えたか否かを判別する(ステップGH9)。超えていな
い場合には、ステップGH7に移行してMIDI OU
Tバッファ(n)が空きであるか否かを判別する。空き
である場合には、MIDI OUTバッファ(n)にM
IDIデータをストアする(ステップGH10)。
【0102】MIDIデータをストアした後、又はステ
ップGH9においてnの値が所定値を超えた場合には、
ADのアドレスをインクリメントする(ステップGH1
1)。そして、インクリメントしたADのアドレスがエ
ンドアドレスを超えたか否かを判別する(ステップGH
12)。超えた場合には、ADのアドレスをスタートア
ドレスに変更する(ステップGH13)。ADのアドレ
スがエンドアドレスを超えない場合、又はスタートアド
レスに変更した場合には、MEM(AD)のデータがタ
イムデータであるか否かを判別する(ステップGH1
4)。タイムデータである場合には、MEM(AD)の
タイムデータをTにセットして(ステップGH15)、
ステップGH11に移行してステップGH14までのル
ープを繰り返す。MEM(AD)がタイムデータでない
場合には、図44のメインフローに戻り、ステップGA
8に移行する。
【0103】図53は、メインフローにおける発音指示
処理のフローである。まず、ポインタnに0をセットし
て(ステップGJ1)、nをインクリメントしながら以
下のループ処理を繰り返す。すなわち、MIDI IN
バッファ(n)が空きでないか否かを判別し(ステップ
GJ2)、空きでない場合には、そのMIDIデータを
音源へ送付する(ステップGJ3)。そしてMIDI
INバッファ(n)をクリアする(ステップGJ4)。
【0104】バッファをクリアした後、又はステップG
J2においてMIDI INバッファ(n)が空きであ
る場合には、MIDI OUTバッファ(n)が空きで
ないか否かを判別し(ステップGJ2)、空きでない場
合には、そのMIDIデータを音源へ送付する(ステッ
プGJ6)。そしてMIDI OUTバッファ(n)を
クリアする(ステップGJ7)。バッファをクリアした
後、又はステップGJ5においてMIDI OUTバッ
ファ(n)が空きである場合には、nの値をインクリメ
ントする(ステップGJ8)。そしてnの値が所定数を
超えたか否かを判別する(ステップGJ9)。超えてい
ない場合には、ステップGJ2に移行して上記ループ処
理を繰り返す。nの値が所定数を超えた場合には、図4
4のメインフローに戻り、ステップGA9のその他の処
理を実行する。
【0105】このように上記実施形態によれば、パソコ
ン2は、演奏ガイド用の楽音データを楽器1に出力する
とともに、音符の画像及び演奏ガイド用の画像を表示部
39に表示し、曲の進行に応じて演奏ガイド用の画像を
移動して出力する楽音データに対応する音符を指示す
る。したがって、インターネット等の通信手段を介して
受信した曲データに基づいて、楽譜に合わせて演奏教習
を行うことができる。
【0106】この場合において、楽譜の画像データは、
その楽譜を構成する複数の音符の表示位置データを含
み、CPU31は、次に演奏すべき音符の表示位置デー
タに基づいて演奏ガイド用の画像を表示する。さらに、
演奏ガイド用の画像データは、楽譜を構成する各音符の
表示位置ごとの複数の画像データで構成され、CPU3
1は、次に演奏すべき音符の表示位置データに対応する
演奏ガイド用の画像データを選択的にHD42から読み
出して、その演奏ガイド用の画像を表示する。
【0107】この場合において、CPU31は、次に演
奏すべき音符に対応する演奏ガイド用の画像の表示を点
滅することにより、楽譜に合わせた演奏練習をより効果
的に行うことができる。
【0108】またこの場合において、CPU31は、楽
器1から受信した演奏結果のデータが出力された楽音デ
ータと一致しない場合には、その演奏結果のデータを画
像として表示する。例えば、演奏結果のデータを演奏結
果の音高を示す音符の画像として表示する。さらにこの
場合、音高を示す音符の画像をHD42から読み出した
音符の画像とは異なる表示色で表示する。あるいは、演
奏結果のデータを音符の画像とは異なる特異な画像とし
て表示する。
【0109】したがってユーザーは、押鍵の誤りを目で
確認できるので、楽譜に合わせた演奏練習をより一層効
果的に行うことができる。
【0110】なお、上記実施形態においては、パソコン
2によって曲データサーバ4から楽譜の画像データと楽
音のMIDIデータを受信する構成にしたが、楽器内に
MODEM及び表示部を収容し、ネットワークを介して
直接曲データサーバにアクセスして、楽譜の画像データ
と楽音のMIDIデータを受信する構成にしてもよい。
あるいは、楽器内にMODEMだけを装備して、表示部
については、パソコンのディスプレイ装置やテレビの表
示部に楽譜を表示させる構成にしてもよい。
【0111】また、上記実施形態においては、パソコン
2のROM33に格納されている演奏教習処理のプログ
ラムによって、楽譜対応の演奏教習を行う構成にした
が、このプログラムをパソコンや楽器によって読み取り
可能な汎用の記憶媒体、例えば、フロッピー(登録商
標)ディスク、CD、MDその他に記憶して、上記フロ
ーチャートに示した演奏教習処理をパソコンや楽器に実
行させる構成にしてもよい。この場合には、記憶媒体の
発明を提供する。あるいは、演奏教習処理のプログラム
を曲データサーバ4からネットワーク3を介してダウン
ロードする構成にしてもよい。
【0112】
【発明の効果】本発明によれば、演奏ガイド用の楽音デ
ータを演奏手段に出力するとともに、音符の画像及び演
奏ガイド用の画像を表示手段に表示し、曲の進行に応じ
て演奏ガイド用の画像を移動して出力する楽音データに
対応する音符を指示する。したがって、インターネット
等の通信手段を介して受信した曲データに基づいて、楽
譜に合わせて演奏教習を行うことができる。
【図面の簡単な説明】
【図1】本発明の装置のシステム構成を示す図。
【図2】図1における楽器のシステム構成を示すブロッ
ク図。
【図3】図1におけるパソコンのシステム構成を示すブ
ロック図。
【図4】図1における曲データサーバのメモリエリアを
示す図。
【図5】図1における曲データサーバのメモリエリアを
示す図。
【図6】図1における曲データサーバのメモリエリアを
示す図。
【図7】図1における曲データサーバのメモリエリアを
示す図。
【図8】図1における曲データサーバのメモリエリアを
示す図。
【図9】図1における曲データサーバのメインフローチ
ャート。
【図10】図9におけるファイル作成処理のフローチャ
ート。
【図11】図10に続くファイル作成処理のフローチャ
ート。
【図12】図11に続くファイル作成処理のフローチャ
ート。
【図13】図1におけるパソコンのメモリエリアを示す
図。
【図14】図3におけるパソコンのCPUのメインフロ
ーチャート。
【図15】メニュー画面を示す図。
【図16】図14におけるダウンロード処理のフローチ
ャート。
【図17】ダウンロード画面を示す図。
【図18】図16における曲選択処理のフローチャー
ト。
【図19】曲リストの画面を示す図。
【図20】図16における環境設定処理のフローチャー
ト。
【図21】環境設定の画面を示す図。
【図22】図16における送受信処理のフローチャー
ト。
【図23】図22に続く送受信処理のフローチャート。
【図24】曲ダウンロード中の画面を示す図。
【図25】図22におけるクオンタイズ処理のフローチ
ャート。
【図26】図25に続くクオンタイズ処理のフローチャ
ート。
【図27】図14における再生処理のフローチャート。
【図28】曲再生のメニュー画面を示す図。
【図29】図27における楽譜ナビ設定処理のフローチ
ャート。
【図30】(1)は楽譜ナビ設定の画面を示す図、
(2)は演奏ガイド用の画像を点滅表示する例を示す
図、(3)は押鍵誤りを表示する複数の例を示す図。
【図31】図27における楽譜表示処理のフローチャー
ト。
【図32】図31に続く楽譜表示処理のフローチャー
ト。
【図33】図31に続く楽譜表示処理のフローチャー
ト。
【図34】楽譜表示の画面を示す図。
【図35】図32におけるガイド処理のフローチャー
ト。
【図36】図35に続くガイド処理のフローチャート。
【図37】図36に続くガイド処理のフローチャート。
【図38】図37に続くガイド処理のフローチャート。
【図39】図32におけるMIDI IN処理のフロー
チャート。
【図40】図32におけるMIDI OUT処理のフロ
ーチャート。
【図41】図32における楽譜ナビ処理のフローチャー
ト。
【図42】図41に続く楽譜ナビ処理のフローチャー
ト。
【図43】図1における楽器のメモリエリアを示す図。
【図44】図2における楽器のCPUのメインフローチ
ャート。
【図45】図44におけるMIDI処理のフローチャー
ト。
【図46】図45におけるMIDI IN処理のフロー
チャート。
【図47】図45におけるMIDI OUT処理のフロ
ーチャート。
【図48】図44における伴奏情報設定処理のフローチ
ャート。
【図49】図44におけるスイッチ処理のフローチャー
ト。
【図50】図44における鍵ガイド処理のフローチャー
ト。
【図51】図44における押鍵処理のフローチャート。
【図52】図44における伴奏処理のフローチャート。
【図53】図44における発音指示処理のフローチャー
ト。
【符号の説明】
1 楽器 2 パソコン 3 ネットワーク 4 曲データサーバ
フロントページの続き Fターム(参考) 5D082 AA03 AA09 AA10 AA13 AA27 5D378 KK17 KK26 LA65 LB01 LB10 LB12 LB20 LB22 LB25 MM05 MM18 MM24 MM32 MM36 MM52 MM58 MM72 MM78 MM79 MM92 MM93 NN03 NN04 NN07 NN08 NN10 NN12 NN23 NN26 QQ02 QQ06 QQ08 QQ21 QQ38 TT02 TT08 TT18 TT19 TT23 TT24 TT32 TT35 XX13 XX20

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 複数の音符からなる楽譜の画像データ、
    ガイド用の画像データ、及び当該楽譜の楽音データを含
    む曲データを受信して記憶手段に記憶する受信手段と、 前記記憶手段から読み出した楽譜の画像データ及び演奏
    ガイド用の画像データに基づいて楽譜の画像及び演奏ガ
    イド用の画像を所定の表示手段に表示するとともに、曲
    の進行に応じて当該演奏ガイド用の画像を次に演奏すべ
    き音符の位置に移動する表示制御手段と、 次に演奏すべき操作子をガイドする演奏手段に対して前
    記演奏ガイド用の画像の位置に対応する音符の楽音デー
    タを前記記憶手段から読み出して出力する出力制御手段
    と、 を有することを特徴とする演奏教習装置。
  2. 【請求項2】 前記楽譜の画像データは、当該楽譜を構
    成する複数の音符の表示位置データを含み、前記表示制
    御手段は、次に演奏すべき音符の表示位置データに基づ
    いて前記演奏ガイド用の画像を表示することを特徴とす
    る請求項1に記載の演奏教習装置。
  3. 【請求項3】 前記演奏ガイド用の画像データは、前記
    楽譜を構成する各音符の表示位置ごとの複数の画像デー
    タで構成され、前記表示制御手段は、次に演奏すべき音
    符の表示位置データに対応する演奏ガイド用の画像デー
    タを選択的に前記記憶手段から読み出して当該演奏ガイ
    ド用の画像を表示することを特徴とする請求項2に記載
    の演奏教習装置。
  4. 【請求項4】 前記表示制御手段は、次に演奏すべき音
    符に対応する前記演奏ガイド用の画像の表示を点滅する
    ことを特徴とする請求項1〜3のいずれか1項に記載の
    演奏教習装置。
  5. 【請求項5】 前記表示制御手段は、前記演奏手段から
    受信した演奏結果のデータが前記出力制御手段によって
    出力された楽音データと一致しない場合には、当該演奏
    結果のデータを画像として表示することを特徴とする請
    求項1〜4のいずれか1項に記載の演奏教習装置。
  6. 【請求項6】 前記表示制御手段は、前記演奏結果のデ
    ータを当該演奏結果の音高を示す音符の画像として表示
    することを特徴とする請求項5に記載の演奏教習装置。
  7. 【請求項7】 前記表示制御手段は、前記音高を示す音
    符の画像を前記記憶手段から読み出した音符の画像とは
    異なる表示色で表示することを特徴とする請求項6に記
    載の演奏教習装置。
  8. 【請求項8】 前記表示制御手段は、前記演奏結果のデ
    ータを音符の画像とは異なる特異な画像として表示する
    ことを特徴とする請求項5に記載の演奏教習装置。
  9. 【請求項9】 複数の音符からなる楽譜の画像データ、
    ガイド用の画像データ、及び当該楽譜の楽音データを含
    む曲データを受信して記憶手段に記憶する受信手順と、 前記記憶手段から読み出した楽譜の画像データ及び演奏
    ガイド用の画像データに基づいて楽譜の画像及び演奏ガ
    イド用の画像を所定の表示手段に表示するとともに、曲
    の進行に応じて当該演奏ガイド用の画像を次に演奏すべ
    き音符の位置に移動する表示制御手順と、 次に演奏すべき操作子をガイドする演奏手段に対して前
    記演奏ガイド用の画像の位置に対応する音符の楽音デー
    タを前記記憶手段から読み出して出力する出力制御手順
    と、 を実行する演奏教習処理のプログラムを記憶した記憶媒
    体。
JP2000078560A 2000-03-21 2000-03-21 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体 Expired - Fee Related JP3729016B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000078560A JP3729016B2 (ja) 2000-03-21 2000-03-21 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000078560A JP3729016B2 (ja) 2000-03-21 2000-03-21 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体

Publications (2)

Publication Number Publication Date
JP2001265337A true JP2001265337A (ja) 2001-09-28
JP3729016B2 JP3729016B2 (ja) 2005-12-21

Family

ID=18595953

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000078560A Expired - Fee Related JP3729016B2 (ja) 2000-03-21 2000-03-21 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体

Country Status (1)

Country Link
JP (1) JP3729016B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081572A1 (fr) * 2002-03-25 2003-10-02 Yoshihiko Sano Procede, dispositif et systeme de generation de representation
JP2006189471A (ja) * 2004-12-28 2006-07-20 Konami Co Ltd プログラム、歌唱力判定方法、ならびに、判定装置
JP2008152279A (ja) * 2008-02-01 2008-07-03 Yamaha Corp 電子音楽装置およびその制御方法を実現するためのプログラム
JP7456149B2 (ja) 2019-12-23 2024-03-27 カシオ計算機株式会社 プログラム、電子機器、方法、および演奏データ表示システム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081572A1 (fr) * 2002-03-25 2003-10-02 Yoshihiko Sano Procede, dispositif et systeme de generation de representation
JPWO2003081572A1 (ja) * 2002-03-25 2005-08-11 芳彦 佐野 表現生成方法,表現生成装置,表現生成システム
US7272539B2 (en) 2002-03-25 2007-09-18 Yoshihiko Sano Representation generation method, representation generation device, and representation generation system
JP4625638B2 (ja) * 2002-03-25 2011-02-02 芳彦 佐野 表現生成方法,表現生成装置,表現生成システム
JP2006189471A (ja) * 2004-12-28 2006-07-20 Konami Co Ltd プログラム、歌唱力判定方法、ならびに、判定装置
JP2008152279A (ja) * 2008-02-01 2008-07-03 Yamaha Corp 電子音楽装置およびその制御方法を実現するためのプログラム
JP7456149B2 (ja) 2019-12-23 2024-03-27 カシオ計算機株式会社 プログラム、電子機器、方法、および演奏データ表示システム

Also Published As

Publication number Publication date
JP3729016B2 (ja) 2005-12-21

Similar Documents

Publication Publication Date Title
Snoman The dance music manual: Tools, toys and techniques
JP3668547B2 (ja) カラオケ装置
Torre et al. The Hands: The making of a digital musical instrument
Marrin Toward an understanding of musical gesture: Mapping expressive intention with the digital baton
JP3729016B2 (ja) 演奏教習装置及び演奏教習処理のプログラムを記憶した記憶媒体
Lee et al. Live Coding The Mobile Music Instrument.
JP3772635B2 (ja) 演奏教習システム
JP2001265331A (ja) 演奏教習システム及び演奏教習処理のプログラムを記憶した記憶媒体
JP3843735B2 (ja) 演奏ガイド方法、演奏ガイド装置および記録媒体
JP2022164934A (ja) プログラム、方法、電子機器、および演奏データ表示システム
JP3796752B2 (ja) 音楽演奏プログラム
JP3637577B2 (ja) 楽音生成方法
JP2008033344A (ja) カラオケ装置
JPH06124062A (ja) カラオケ装置
JP4117596B2 (ja) 自動演奏装置および自動演奏方法
JP4092758B2 (ja) カラオケ装置および選曲用カード媒体
JP4239937B2 (ja) 作曲支援装置、及びプログラム
JP5481843B2 (ja) 楽音発生装置および楽音発生プログラム
JP2010231053A (ja) 演奏補助システム
JP2010231054A (ja) 演奏補助システム
JPH09319383A (ja) カラオケ装置
JP2005215709A (ja) 楽音発生装置
JP2018157436A (ja) 属性表示装置、および属性表示方法
Collins Choosing and Using Audio and Music Software: A guide to the major software applications for Mac and PC
Tomczak On the development of an interface framework in chipmusic: theoretical context, case studies and creative outcomes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050824

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050926

R150 Certificate of patent or registration of utility model

Ref document number: 3729016

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081014

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131014

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees