(57)【特許請求の範囲】
【請求項１】
課題曲の曲データを記憶する記憶手段と、
該記憶手段から課題曲の曲データを順次読み出して再生する再生手段と、
鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出手段と、
練習の開始を指示する指示手段と、
該指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生手段による再生を開始させる再生開始手段と、
前記指示手段によって練習開始の指示がなされたときに、前記検出手段による検出および記録を開始させる検出開始手段と、
該検出開始手段による検出および記録の開始後、最初の押鍵操作を判別する判別手段と、
該判別手段によって判別された押鍵操作が誤操作であるか否かを判定する判定手段と、
該判定手段によって当該押鍵操作が誤操作であると判定されたときに、該誤操作の警告を行うとともに、当該開始されている練習をはじめからやり直させる警告手段と
を有することを特徴とする演奏練習装置。
【請求項２】
前記判定手段によって当該押鍵操作が誤操作であることが判定されたときに、その誤操作が１度目のものであるか否かを判別する誤操作判別手段
をさらに有し、
前記警告手段は、前記誤操作判別手段によって当該誤操作が１度目のものであると判別されたときには、予め用意された警告を行い、当該誤操作が１度目のものでないと判別されたときには、外部接続されている教師端末へ当該誤操作の内容を送信し、これに応じて教師端末から受信した警告を行う
ことを特徴とする請求項１に記載の演奏練習装置。
【請求項３】
課題曲の曲データを記憶する記憶手段と、
該記憶手段から課題曲の曲データを順次読み出して再生する再生手段と、
鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出手段と、
練習の開始を指示する指示手段と、
該指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生手段による再生を開始させる再生開始手段と、
前記指示手段によって練習開始の指示がなされたときに、前記検出手段による検出および記録を開始させる検出開始手段と、
該検出開始手段による検出および記録の開始後、最初の押鍵操作を判別する判別手段と、
該判別手段によって判別された押鍵操作の操作タイミングを判定する判定手段と、
該判定手段によって、当該操作タイミングが演奏開始タイミングより時間的に早いもしくは遅いと判定されたときに、当該開始されている練習を、演奏開始タイミングを認識させるための別の練習へと移行させる移行手段と
を有することを特徴とする演奏練習装置。
【請求項４】
前記課題曲の楽譜とともに、該楽譜の前部に、前記カウント発音を行うカウント区間の小節を表示する表示手段をさらに有することを特徴とする請求項１または３に記載の演奏練習装置。
【請求項５】
前記別の練習は、第１の練習および第２の練習を含み、
前記移行手段は、前記判定手段によって当該操作タイミングが演奏開始タイミングより時間的に早いと判定されたときには、当該開始されている練習を前記第１の練習へ移行させる一方、前記判定手段によって当該操作タイミングが演奏開始タイミングより時間的に遅いと判定されたときには、当該開始されている練習を前記第２の練習へ移行させる
ことを特徴とする請求項３に記載の演奏練習装置。
【請求項６】
記憶手段から課題曲の曲データを順次読み出して再生する再生ステップと、
鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出ステップと、
練習の開始を指示する指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生ステップによる再生を開始させる再生開始ステップと、
前記指示手段によって練習開始の指示がなされたときに、前記検出ステップによる検出および記録を開始させる検出開始ステップと、
該検出開始ステップによる検出および記録の開始後、最初の押鍵操作を判別する判別ステップと、
該判別ステップによって判別された押鍵操作が誤操作であるか否かを判定する判定ステップと、
該判定ステップによって当該押鍵操作が誤操作であると判定されたときに、該誤操作の警告を行うとともに、当該開始されている練習をはじめからやり直させる警告ステップと
を有する演奏練習方法をコンピュータに実行させるプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【請求項７】
記憶手段から課題曲の曲データを順次読み出して再生する再生ステップと、
鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出ステップと、
練習の開始を指示する指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生ステップによる再生を開始させる再生開始ステップと、
前記指示手段によって練習開始の指示がなされたときに、前記検出ステップによる検出および記録を開始させる検出開始ステップと、
該検出開始ステップによる検出および記録の開始後、最初の押鍵操作を判別する判別ステップと、
該判別ステップによって判別された押鍵操作の操作タイミングを判定する判定ステップと、
該判定ステップによって、当該操作タイミングが演奏開始タイミングより時間的に早いもしくは遅いと判定されたときに、当該開始されている練習を、演奏開始タイミングを認識させるための別の練習へと移行させる移行ステップと
を有する演奏練習方法をコンピュータに実行させるプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、演奏者に楽曲演奏を上達させるための練習を行わせる演奏練習装置および記憶媒体に関する。
【０００２】
【従来の技術】
従来、演奏者に楽曲演奏を上達させるための練習を行わせる演奏練習装置として、
（１）演奏者が上達させたい楽曲（課題曲）を選択すると、その楽曲の楽譜が表示器に表示され、演奏者がその練習の開始を指示すると、楽音が発音されずに、表示のみが変更されるという態様で自動演奏され、演奏者は、表示の変更に合わせて鍵盤（上達させたい楽器が鍵盤楽器の場合）を押鍵して行くと、演奏者による演奏結果と自動演奏による演奏結果とが比較されて、演奏者の押鍵鍵の間違いや押鍵タイミングの間違い等を指摘するようにした演奏練習装置
（２）演奏者が上達させたい楽曲を選択するとともに、その練習の開始を指示すると、楽音が発音されずに、鍵盤（上達させたい楽器が鍵盤楽器の場合）の各鍵の近傍または各鍵の内部に設けられたＬＥＤが点灯するという態様で自動演奏され、演奏者は、点灯によって指示された鍵を押鍵して行くことで、その楽曲の演奏が上達するようにした演奏練習装置
が一般的に知られている。
【０００３】
【発明が解決しようとする課題】
しかし、上記従来の演奏練習装置ではいずれも、楽曲の演奏そのものを上達させることを目的としているため、たとえば、楽曲の演奏に入るタイミングや、押鍵を左右どちらの手ですべきかなどの、より初歩的な練習に使用することはできなかった。さらに、上記従来の演奏練習装置が、演奏者による演奏結果と自動演奏による演奏結果とを比較して、その演奏の評価を出すように構成されている場合には、初歩的なミスの影響で、演奏の評価が低下したにもかかわらず、演奏者にその原因が理解できないため、演奏練習の実効が上がらないという虞もあった。
【０００４】
本発明は、この点に着目してなされたものであり、演奏者に初歩的なミスを指摘するとともに、そのミスを克服するための練習メニューを提示することにより、楽曲の初歩的な練習を行うことが可能な演奏練習装置および記憶媒体を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するため、請求項１に記載の演奏練習装置は、課題曲の曲データを記憶する記憶手段と、該記憶手段から課題曲の曲データを順次読み出して再生する再生手段と、鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出手段と、練習の開始を指示する指示手段と、該指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生手段による再生を開始させる再生開始手段と、前記指示手段によって練習開始の指示がなされたときに、前記検出手段による検出および記録を開始させる検出開始手段と、該検出開始手段による検出および記録の開始後、最初の押鍵操作を判別する判別手段と、該判別手段によって判別された押鍵操作が誤操作であるか否かを判定する判定手段と、該判定手段によって当該押鍵操作が誤操作であると判定されたときに、該誤操作の警告を行うとともに、当該開始されている練習をはじめからやり直させる警告手段とを有することを特徴とする。
【０００６】
ここで、初歩的な誤操作とは、たとえば、押鍵鍵のオクターブの間違い、練習対象が片手演奏曲であるにもかかわらず、両手で演奏しようとした間違い、これとは逆に、練習対象が両手演奏曲であるにもかかわらず、片手で演奏しようとした間違い等である（以下、請求項が変わっても同様）。
【０００７】
好ましくは、前記判定手段によって当該押鍵操作が誤操作であることが判定されたときに、その誤操作が１度目のものであるか否かを判別する誤操作判別手段をさらに有し、前記警告手段は、前記誤操作判別手段によって当該誤操作が１度目のものであると判別されたときには、予め用意された警告を行い、当該誤操作が１度目のものでないと判別されたときには、外部接続されている教師端末へ当該誤操作の内容を送信し、これに応じて教師端末から受信した警告を行うことを特徴とする（請求項２）。
【０００８】
また、上記目的を達成するため、請求項３に記載の演奏練習装置は、課題曲の曲データを記憶する記憶手段と、該記憶手段から課題曲の曲データを順次読み出して再生する再生手段と、鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出手段と、練習の開始を指示する指示手段と、該指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生手段による再生を開始させる再生開始手段と、前記指示手段によって練習開始の指示がなされたときに、前記検出手段による検出および記録を開始させる検出開始手段と、該検出開始手段による検出および記録の開始後、最初の押鍵操作を判別する判別手段と、該判別手段によって判別された押鍵操作の操作タイミングを判定する判定手段と、該判定手段によって、当該操作タイミングが演奏開始タイミングより時間的に早いもしくは遅いと判定されたときに、当該開始されている練習を、演奏開始タイミングを認識させるための別の練習へと移行させる移行手段とを有することを特徴とする。
【０００９】
好ましくは、前記課題曲の楽譜とともに、該楽譜の前部に、前記カウント発音を行うカウント区間の小節を表示する表示手段をさらに有することを特徴とする（請求項４）。
【００１０】
さらに、好ましくは、前記別の練習は、第１の練習および第２の練習を含み、前記移行手段は、前記判定手段によって当該操作タイミングが演奏開始タイミングより時間的に早いと判定されたときには、当該開始されている練習を前記第１の練習へ移行させる一方、前記判定手段によって当該操作タイミングが演奏開始タイミングより時間的に遅いと判定されたときには、当該開始されている練習を前記第２の練習へ移行させることを特徴とする（請求項５）。
【００１１】
上記目的を達成するため、請求項６に記載の記憶媒体は、記憶手段から課題曲の曲データを順次読み出して再生する再生ステップと、鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出ステップと、練習の開始を指示する指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生ステップによる再生を開始させる再生開始ステップと、前記指示手段によって練習開始の指示がなされたときに、前記検出ステップによる検出および記録を開始させる検出開始ステップと、該検出開始ステップによる検出および記録の開始後、最初の押鍵操作を判別する判別ステップと、該判別ステップによって判別された押鍵操作が誤操作であるか否かを判定する判定ステップと、該判定ステップによって当該押鍵操作が誤操作であると判定されたときに、該誤操作の警告を行うとともに、当該開始されている練習をはじめからやり直させる警告ステップと有する演奏練習方法をコンピュータに実行させるプログラムを格納したことを特徴とする。
【００１３】
また、上記目的を達成するため、請求項７に記載の記憶媒体は、記憶手段から課題曲の曲データを順次読み出して再生する再生ステップと、鍵盤から演奏者の押鍵操作を検出し、該検出した押鍵操作に関する情報を記録する検出ステップと、練習の開始を指示する指示手段によって練習開始の指示がなされたときに、所定長のカウント発音を実行した後、前記再生ステップによる再生を開始させる再生開始ステップと、前記指示手段によって練習開始の指示がなされたときに、前記検出ステップによる検出および記録を開始させる検出開始ステップと、該検出開始ステップによる検出および記録の開始後、最初の押鍵操作を判別する判別ステップと、該判別ステップによって判別された押鍵操作の操作タイミングを判定する判定ステップと、該判定ステップによって、当該操作タイミングが演奏開始タイミングより時間的に早いもしくは遅いと判定されたときに、当該開始されている練習を、演奏開始タイミングを認識させるための別の練習へと移行させる移行ステップと有する演奏練習方法をコンピュータに実行させるプログラムを格納したことを特徴とする。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１７】
図１は、本発明の一実施の形態に係る演奏練習装置の概略構成を示すブロック図である。
【００１８】
同図に示すように、本実施の形態の演奏練習装置は、音高情報を入力するための鍵盤１と、各種情報を入力するための複数のスイッチを備えたパネルスイッチ２と、鍵盤１の各鍵の押鍵状態を検出する押鍵検出回路３と、パネルスイッチ２の各スイッチの押下状態を検出するスイッチ検出回路４と、装置全体の制御を司るＣＰＵ５と、該ＣＰＵ５が実行する制御プログラムや、各種テーブルデータ等を記憶するＲＯＭ６と、演奏データ、各種入力情報および演算結果等を一時的に記憶するＲＡＭ７と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ８と、各種情報等を表示する、たとえば大型液晶ディスプレイ（ＬＣＤ）若しくはＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイおよび発光ダイオード（ＬＥＤ）等を備えた表示装置９と、記憶媒体であるフロッピディスク（ＦＤ）２０をドライブするフロッピディスクドライブ（ＦＤＤ）１０と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するハードディスク（図示せず）をドライブするハードディスクドライブ（ＨＤＤ）１１と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するコンパクトディスク−リード・オンリ・メモリ（ＣＤ−ＲＯＭ）２１をドライブするＣＤ−ＲＯＭドライブ（ＣＤ−ＲＯＭＤ）１２と、外部からのＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）信号を入力したり、ＭＩＤＩ信号を外部に出力したりするＭＩＤＩインターフェース（Ｉ／Ｆ）１３と、通信ネットワーク１０１を介して、たとえばサーバコンピュータ１０２とデータの送受信を行う通信インターフェース（Ｉ／Ｆ）１４と、鍵盤１から入力された演奏データや予め設定された演奏データ等を楽音信号に変換する音源回路１５と、該音源回路１５からの楽音信号に各種効果を付与するための効果回路１６と、該効果回路１６からの楽音信号を音響に変換する、たとえば、ＤＡＣ（Ｄｉｇｉｔａｌ−ｔｏ−Ａｎａｌｏｇ  Ｃｏｎｖｅｒｔｅｒ）やアンプ、スピーカ等のサウンドシステム１７とにより構成されている。
【００１９】
上記構成要素３〜１６は、バス１８を介して相互に接続され、ＣＰＵ５にはタイマ８が接続され、ＭＩＤＩＩ／Ｆ１３には他のＭＩＤＩ機器１００が接続され、通信Ｉ／Ｆ１４には通信ネットワーク１０１が接続され、音源回路１５には効果回路１６が接続され、効果回路１６にはサウンドシステム１７が接続されている。
【００２０】
ＨＤＤ１１のハードディスクには、前述のように、ＣＰＵ５が実行する制御プログラムも記憶でき、ＲＯＭ６に制御プログラムが記憶されていない場合には、このハードディスクに制御プログラムを記憶させておき、それをＲＡＭ７に読み込むことにより、ＲＯＭ６に制御プログラムを記憶している場合と同様の動作をＣＰＵ５にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。また、本実施の形態では、ハードディスクには複数の曲データ（各曲データは、たとえば、鍵盤楽器用の演奏データであり、右手パート、左手パートおよび伴奏パートの複数パートにより構成されている。右手パートの演奏データはメロディ演奏用データであり、左手パートの演奏データは和音演奏用データである）が記憶され、演奏者がこの中から課題曲となる曲データを選択すると、この選択された曲データが、ＲＡＭ７の所定位置に確保された曲データ格納領域に転送される。課題曲とされた曲データに基づいて、後述の評価処理および練習処理を行う場合に、本実施の形態では、曲データの全体を所定の部分区間に分割し、この分割区間毎に、その評価および練習を行うようにしている。この部分区間への分割は、たとえば、上記曲データ格納領域への曲データの転送時に行うようにすればよい。もちろん、これに限る必要はない。なお、ハードディスクに目的の曲データが記憶されていないときには、ＦＤ２０やＣＤ−ＲＯＭ２１等の他の記憶メディアや、サーバコンピュータ１０２等の他の記憶装置から取り込むようにすればよい。
【００２１】
ＣＤ−ＲＯＭドライブ１２のＣＤ−ＲＯＭ２１から読み出された制御プログラムや各種データは、ＨＤＤ１１内のハードディスクにストアされる。これにより、制御プログラムの新規インストールやバージョンアップ等が容易に行える。なお、このＣＤ−ＲＯＭドライブ１２以外にも、外部記憶装置として、光磁気ディスク（ＭＯ）装置等、様々な形態のメディアを利用するための装置を設けるようにしてもよい。
【００２２】
ＭＩＤＩＩ／Ｆ１３は、専用のものに限らず、ＲＳ−２３２ＣやＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインターフェースより構成してもよい。この場合、ＭＩＤＩメッセージ以外のデータをも同時に送受信してもよい。
【００２３】
通信Ｉ／Ｆ１４は、上述のように、たとえばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネット、電話回線等の通信ネットワーク１０１に接続されており、該通信ネットワーク１０１を介して、サーバコンピュータ１０２に接続される。ＨＤＤ１１内のハードディスクに上記各プログラムや各種パラメータが記憶されていない場合には、通信Ｉ／Ｆ１４は、サーバコンピュータ１０２からプログラムやパラメータをダウンロードするために用いられる。クライアントとなるコンピュータ（本実施の形態では、演奏練習装置）は、通信Ｉ／Ｆ１４および通信ネットワーク１０１を介してサーバコンピュータ１０２へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータ１０２は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク１０１を介してコンピュータへと配信し、コンピュータが通信Ｉ／Ｆ１４を介して、これらプログラムやパラメータを受信してＨＤＤ１１内のハードディスクに蓄積することにより、ダウンロードが完了する。また、本実施の形態では、ＬＡＮ上に、本実施の形態と同様の構成の教師端末（図示せず）が接続されている。この教師端末が行う制御処理については、図７を用いて後述する。
【００２４】
この他、外部コンピュータ等との間で直接データのやりとりを行うためのインターフェースを備えてもよい。
【００２５】
なお、本実施の形態の演奏練習装置は、上述の構成から分かるように、汎用的なパーソナルコンピュータ上に構築されたものであるが、これに限らず、本発明を実施できる最小限要素のみから構成した専用装置上に構築してもよい。
【００２６】
以上のように構成された演奏練習装置が実行する制御処理を、まずその概要を図２を参照して説明し、次に図３〜図１６を参照して詳細に説明する。
【００２７】
図２は、表示装置９に表示された、演奏者が練習対象として選択した楽曲（課題曲）の楽譜の一例を示す図であり、図示例では、右手パートの演奏データに相当する楽譜が表示されている。同図において、表示された楽譜には、楽曲の演奏に入るタイミングを練習するために、「楽曲再生区間」で示される楽曲の楽譜の前に、「カウント区間」で示される小節（本実施の形態では１小節）が付加され、各小節には、拍位置にグリッドｇが表示されている。ここで、１小節内のグリッドｇの個数は、図示例では４個となっている。これは、課題曲として４分の４拍子の曲を選択したからであり、他の拍子の曲を選択した場合には、その選択曲の拍子に応じた個数となる。すなわち、１小節内のグリッドの個数は、選択曲に応じて変化する。もちろん、課題曲としてどのような拍子の曲を選択してもよいことは、言うまでもない。
【００２８】
演奏中（練習中）は、演奏の進行に合わせて、対応するグリッドが強調表示（たとえば色や太さを変化させることによる強調表示）される。さらに、この強調表示とともに、拍タイミングでカウント音が発音される。
【００２９】
なお、図示例では、「カウント区間」と「楽曲再生区間」とを区別するための２種類のフラグ、すなわちＣＯＵＮＴフラグおよびＲＵＮフラグの各値も示されている（ＣＯＵＮＴフラグ＝１＆（および）ＲＵＮフラグ＝０のとき「カウント区間」を示し、ＣＯＵＮＴフラグ＝０＆ＲＵＮフラグ＝１のとき「楽曲再生区間」を示す）が、これらのフラグの名称および値は、説明の便宜上図示されているものであり、実際の表示装置９上には表示されないものである。また、ＣＯＵＮＴフラグおよびＲＵＮフラグとして用いる領域は、前記ＲＡＭ７の所定位置に確保されている。
【００３０】
本実施の形態の演奏練習装置は、（１）評価処理、（２）誤り報知処理および（３）練習処理の３種類の処理を主として実行する。
【００３１】
（１）の評価処理は、上記図２の楽譜に基づいて演奏者が演奏した結果を評価する処理であり、この評価処理中での評価結果に応じて上記（２）の誤り報知処理または上記（３）の練習処理のいずれかに移行する。
【００３２】
（２）の誤り報知処理は、評価処理で押鍵操作に誤りがあったと評価されたときに起動される処理であり、その誤りの内容および回数に応じた態様で演奏者に警告報知する。
【００３３】
（３）の練習処理は、評価処理で演奏に入るタイミングにずれが生じていたと評価されたときに起動される処理であり、演奏に入るタイミングが早いときに起動される第１練習処理と、演奏に入るタイミングが遅いときに起動される第２練習処理および第２練習処理の後に続けて起動される第３練習処理の３種類の練習処理が設定されている。
【００３４】
次に、この（１）〜（３）の処理を個別に詳細に説明する。
【００３５】
まず、（１）の評価処理は、通常ルーチン（割込みが発生していないときに、ＣＰＵ５が処理しているルーチンという意味）内の評価処理（図３を用いて後述する）と、この評価処理によって起動開始が指示される２種類の割込み処理とにより構成されている。２種類の割込み処理のうち一方（図４を用いて後述する）は、所定の周期（たとえば９６分音符長）のクロック信号の、たとえば立ち上がりタイミング（以下、「クロックタイミング」という）で起動され、クロック信号を１周期毎カウントして行き、前記図２の表示楽譜中カウント区間では、カウント値が拍タイミングに相当した値になると、カウント音を発生させるとともに、対応するグリッドを強調表示させ、楽曲再生区間では、楽曲データに基づいて自動演奏処理を実行するとともに、カウント値が拍タイミングに相当した値になると、対応するグリッドを強調表示させる。また、２種類の割込み処理のうち他方（図５を用いて後述する）は、押鍵操作がされる毎に起動され、その押鍵／離鍵に応じて楽音を発音／消音するとともに、その押鍵／離鍵に対応する音高やタイミングを評価のために記録し、さらに、この記録結果に基づいて押鍵操作を評価し、誤操作と判定されたときには、誤り報知処理へ移行させ、演奏開始時の操作タイミングが早いと判定されたときには、第１練習処理へ移行させ、逆に演奏開始時の操作タイミングが遅いと判定されたときには、第２練習処理へ移行させる。
【００３６】
図３は、本実施の形態の演奏練習装置、特にＣＰＵ５が実行する評価処理（上記通常ルーチン内の評価処理）の手順を示すフローチャートである。本評価処理は、通常ルーチン内の他の処理において、演奏者が課題曲を選択した後、その練習開始の指示を行ったときに、起動される。なお、本評価処理では、選択された課題曲の全体を所定区間（たとえば数小節で構成される区間）に分割し、その区間（課題区間）毎に練習を行うように構成されている。
【００３７】
同図において、まず、初期設定を行う（ステップＳ１）。この初期設定では、具体的には、課題曲の課題区間の曲データ先頭位置に読み出しポインタを設定したり、前記ＣＯＵＮＴフラグをセット（“１”）するとともに前記ＲＵＮフラグをリセット（“０”）し、さらに、起動すべき割込み処理を、後述する図４および図５の割込み処理に決定し、その開始を指示したりする。
【００３８】
次に、課題区間の曲データの演奏（読み出し）を終了したか否かを判別する（ステップＳ２）。この判別は、後述する図４の割込み処理中の自動演奏処理が終了したか否かを判別することによって行う。ステップＳ２で、曲データの読み出しが終了していないときには、その読み出しが終了するまで待機し、曲データの読み出しが終了したときには、次のステップＳ３に進む。
【００３９】
ステップＳ３では、前記図２の表示楽譜中楽曲再生区間で、自動演奏に応じて演奏者が行った手弾き演奏を判定する。この判定では、具体的には、自動演奏による演奏の結果と、演奏者による実際の手弾き演奏の結果とを比較し、演奏ミスの内容（たとえば、音高や押鍵タイミングのずれ）、回数および場所などを検知し、その検知結果に応じて演奏者の演奏を評価する。なお、この判定は、本発明の特徴をなすものではなく、従来から行われているものである。
【００４０】
続くステップＳ４では、ステップＳ３の判定結果に応じて、次になすべき練習（次の区間の練習）へ処理を移行させた後に、本評価処理を終了する。
【００４１】
図４は、上記評価処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートである。
【００４２】
同図において、まず、ＣＯＵＮＴフラグが“１”であるか否か、すなわちカウンタ（たとえば、ＲＡＭ７上の所定領域に設けられたソフトウェアカウンタであって、クロック信号の１周期毎、すなわち本割込み処理が起動される毎にカウント値をインクリメントして行くもの）が現在カウントしている区間が「カウント区間」であるか否かを判別し（ステップＳ１１）、ＣＯＵＮＴフラグ＝１のとき、すなわち「カウント区間」のときには、カウンタのカウント値をチェックし、現カウント時点が拍タイミングであれば、カウント音（たとえばメトロノーム音）を発音させるように前記音源回路１５に指示するとともに、この拍タイミングに対応する位置のグリッドを強調表示させる（ステップＳ１２）。
【００４３】
そして、１小節分のカウントを終了したか否か、すなわち「カウント区間」のカウントを終了したか否かを判別し（ステップＳ１３）、「カウント区間」のカウントを終了したときには、次の「楽曲再生区間」を示すように、ＣＯＵＮＴフラグをリセットするとともにＲＵＮフラグをセットする（ステップＳ１４）一方、「カウント区間」をカウント中のときには、ステップＳ１４をスキップしてステップＳ１５に進む。
【００４４】
一方、ステップＳ１１で、ＣＯＵＮＴフラグ＝０のとき、すなわち「カウント区間」でないときには、ステップＳ１２〜Ｓ１４をスキップしてステップＳ１５に進む。
【００４５】
ステップＳ１５では、ＲＵＮフラグが“１”であるか否か、すなわち現カウント区間が「楽曲再生区間」であるか否かを判別し、ＲＵＮフラグ＝１のとき、すなわち「楽曲再生区間」のときには、自動演奏処理を実行する（ステップＳ１６）一方、ＲＵＮフラグ＝０のとき、すなわち「楽曲再生区間」でないときには、ステップＳ１６をスキップしてステップＳ１７に進む。この自動演奏処理では、課題曲の曲データのフォーマットが、たとえば、キーイベントおよび該キーイベントの発生時刻を該キーイベントの１つ前のキーイベントからの時間で示す相対時間（キーイベント＋相対時間）の形式で表現されている場合には、相対時間だけ待ち、キーイベントの発生時刻になったときに、当該キーイベントの内容に応じた処理を行うという周知の処理がなされている。もちろん、曲データのフォーマットは、これに限られるものではなく、キーイベントおよび該キーイベントの発生時刻を曲や小節の先頭からの時間で示す絶対時間（キーイベント＋絶対時間）の形式、音符の音高と符長または休符と休符長の形式、演奏の最小分解能毎にメモリの領域を確保し、キーイベントの発生する時刻に対応するメモリ領域にキーイベントを記憶するようにした「ベタ方式」等、どのようなものでもよく、このいずれのフォーマットを採用しても、周知の技術によって簡単に自動演奏処理を実現することができる。また、本実施の形態では、この自動演奏処理とともに、ステップＳ１２で説明したように、カウンタのカウント値をチェックし、現カウント時点が拍タイミングであれば、この拍タイミングに対応する位置のグリッドを強調表示させる処理も行うようにしている。
【００４６】
ステップＳ１７では、カウンタの内容をインクリメントした後に、本割込み処理を終了する。
【００４７】
図５は、前記評価処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートである。
【００４８】
同図において、まず、押鍵操作が押鍵のときには、その押鍵鍵に対応する音高の楽音を発音させるように音源回路１５に指示する一方、押鍵操作が離鍵のときには、その離鍵鍵に対応する音高の発音中の楽音を消音させるように音源回路１５に指示し、さらに、その押鍵操作に関する情報、たとえば押鍵／離鍵のいずれか、音高、タイミング等を前記ＲＡＭ７の所定位置に確保された記憶領域に記録する（ステップＳ２１）。
【００４９】
次に、当該課題曲の課題区間に対する評価を開始した後の最初の押鍵操作か否かを判別し（ステップＳ２２）、２回目以降の押鍵操作であるときには、直ちに本処理を終了する一方、最初の押鍵操作であるときには、ステップＳ２３に進む。
【００５０】
ステップＳ２３では、その最初の押鍵が誤操作か否かを判定する。この判定は、前記ステップＳ３の判定と異なり、初歩的な誤操作のみを検出して判定するという本発明の特徴をなすものであり、具体的には、次の内容を判定する。すなわち、（１）押鍵鍵のオクターブの間違い、（２）練習対象が片手演奏曲であるにもかかわらず、両手で演奏しようとした間違い、（３）上記（２）とは逆に、練習対象が両手演奏曲であるにもかかわらず、片手で演奏しようとした間違い等である。
【００５１】
なお、本実施の形態では、誤操作を最初の１押鍵から判定するようにしているが、これに限らず、最初の数押鍵から判定するようにしてもよい。この判定方法としては、たとえば、最初の１小節での押鍵において、誤操作と認識される押鍵が過半数以上のとき誤操作として判定するという方法が考えられる。
【００５２】
そして、ステップＳ２３の判定の結果、初歩的な誤操作が検出されたときには、図７を用いて後述する誤り報知処理へ処理を移行させた（ステップＳ２５）後に、本割込み処理を終了する。一方、ステップＳ２３の判定の結果、初歩的な誤操作が検出されないときには、操作タイミングを判定する（ステップＳ２６）。ここで、操作タイミングの判定とは、演奏開始時点で正確な押鍵操作がなされているか否かを判定するものであり、具体的には、演奏者による押鍵操作がなされた時点での、前記カウンタのカウント値と、演奏開始時点での、当該カウンタがカウントすべきカウント値とを比較することにより、その判定がなされる。
【００５３】
図６は、操作タイミングの判定の基準を説明するための図であり、同図において、演奏開始点をまたいだ所定範囲▲２▼内で押鍵操作がなされたときには、正確に押鍵されたを判定し、範囲▲２▼より時間的に早い所定範囲▲１▼内で押鍵操作がなされたときには、早く押鍵されたと判定し、範囲▲２▼より時間的に遅い全範囲▲３▼内で押鍵操作がなされたときには、遅く押鍵されたと判定する。
【００５４】
なお、図示例では、範囲▲１▼を、カウント区間の先頭から範囲▲２▼の先頭までの区間とせずに、カウント区間の第４拍目の先頭から範囲▲２▼の先頭までの区間とし、カウント区間の第１拍目から第３拍目までに押鍵操作がなされたときには、その押鍵操作を無視するようにしているが、これに限らず、カウント区間の第１拍目から第３拍目までに押鍵操作がなされたときには、押鍵操作が早過ぎる旨の表示を前記表示装置９に表示するようにしてもよいし、また、範囲▲１▼の先頭をカウント区間の先頭まで延ばし、範囲▲２▼の先頭より前に押鍵操作がなされたときには、早く押鍵されたと判定するようにしてもよい。また、図示例では、範囲▲３▼を範囲▲２▼の末尾から楽曲再生区間の末尾までの全区間としているが、これに限らず、楽曲再生区間の途中で区切り、その時点までに押鍵操作がなされないときには、自動演奏処理を停止するとともに、遅く押鍵されたを判定するようにしてもよい。
【００５５】
図５に戻り、上記操作タイミングの判定の結果、押鍵操作が早いと判定されたときには、図８〜図１１を用いて後述する第１練習処理へ処理を移行させ（ステップＳ２７→Ｓ２８）、押鍵操作が遅いと判定されたときには、図８および図１２〜図１４を用いて後述する第２練習処理へ処理を移行させ（ステップＳ２７→Ｓ２９→Ｓ３０）、押鍵操作が正確と判定されたときには、本割込み処理を終了する。なお、誤り報知処理、第１練習処理または第２練習処理へ処理が移行したときには、図３の評価処理は中断する。
【００５６】
次に、前記（２）の誤り報知処理について説明する。
【００５７】
図７は、前記ステップＳ２５の誤り報知処理の詳細な手順を示すフローチャートである。
【００５８】
同図において、まず、当該ミスは１度目のミスであるか否かを判別し（ステップＳ４１）、１度目のミスであるときには、予め用意された警告のうち、当該ミスの内容に応じた警告を表示装置９上に表示させることにより、演奏者にその警告を報知し（ステップＳ４２）、ステップＳ４５に進む。なお、警告は、このように、予め用意されたものを選択して表示する以外に、たとえば、演奏者が犯したミスの内容に応じて、表示すべき内容のメッセージを自動作成し、そのメッセージを表示するようにしてもよい。メッセージの具体的な表示方法としては、たとえば、ミスの内容を文字や画像で表示したり、ミスへの対処内容を文字や画像で表示したりする方法が考えられる。また、メッセージは表示するものに限らず、たとえば、ミスの内容やミスへの対処内容を示す音声情報を生成し、この音声情報を音源回路１５およびサウンドシステム１７を介して音声に変換し、これにより警告するようにしてもよい。
【００５９】
一方、２度目以降のミスであるとき、すなわち、同じ内容のミスを２度以上繰り返したときには、当該ミスの内容を前記教師端末へ送信する（ステップＳ４３）。ここで、教師端末へ送信するミスの内容としては、たとえば、演奏者の演奏操作そのもの（具体的には、演奏者による演奏で発生したＭＩＤＩデータ等）や、演奏者の演奏操作を判定した判定結果（具体的には、どのようなミスを犯したかを示す情報等）等が挙げられる。
【００６０】
続くステップＳ４４では、ステップＳ４３で受信した内容に応じて教師端末が送信したアドバイス情報を受信し、このアドバイス情報に基づいた警告を演奏者に報知した後に、ステップＳ４５に進む。ここで、アドバイス情報とは、具体的には、演奏者がどのようなミスを犯しているかを詳細に記した文字情報や、どのように演奏すべきかを表す模範情報（演奏情報や楽譜表示、演奏鍵盤位置を示す情報等）等である。
【００６１】
なお、本実施の形態では、教師端末からアドバイス情報を常に受信するようにしたが、これに限らず、教師端末からアドバイス情報を受信するか否かを、演奏者に選択させるようにしてもよい。
【００６２】
ステップＳ４５では、次の処理へ処理を移行させた後に、具体的には、評価処理を再起動（もとの演奏練習を始めからやり直させるため）させた後に、本誤り報知処理を終了する。
【００６３】
このように、演奏者に初歩的な誤操作を具体的に報知することで、演奏者は自分が初歩的なミスを犯していることを認識できるとともに、そのミスを正すことができ、よりレベルの高い練習にスムーズに移行することができる。また、１度目のミスと２度目以降のミスとで、報知態様を変更したので、すなわち、同じミスが繰り返されたときには、予め用意された警告内容を演奏者に報知するだけでは演奏者の理解が得られないものと判断し、演奏者の犯したミスに対するアドバイスを教師端末を介して教師に行わせるようにしたので、ミスの内容を演奏者自身に確実に認識させることができる。
【００６４】
次に、前記（３）の練習処理について説明する。
【００６５】
この練習処理は、前記（１）の評価処理と同様に、通常ルーチン内の練習処理と、この練習処理によって起動開始が指示される２種類の割込み処理により構成されている。２種類の割込み処理のうち一方は、所定周期（たとえば９６分音符長）のクロック信号のクロックタイミングで起動され、他方は、押鍵操作がされる毎に起動される。練習処理としては、前述したように、第１〜第３の練習処理が設定され、操作タイミングの判定で、押鍵操作が早いと判定されたときには第１の練習処理に、押鍵操作が遅いと判定されたときに第２の練習処理に移行される。第３の練習処理は、第２の練習処理に続けて移行される。
【００６６】
第１の練習処理は、演奏に入るタイミング（演奏開始タイミング）を演奏者に認識させることを目的とする練習処理であり、カウント区間におけるカウンタのカウント動作の進行、すなわち、前記カウント音とグリッドの強調表示の進行を演奏者の押鍵操作に応じて行うようにしたものである。ここで、押鍵操作する鍵は、鍵盤１の任意の鍵としてもよいし、予め設定した鍵としてもよい。さらに、鍵に限らず、専用の操作子を設けるようにしてもよい。この事情は、第２の練習処理においても同様である。
【００６７】
図９は、この第１の練習処理の具体的な練習方法を説明するための図であり、同図において、第１の練習処理を開始させると、開始時点から順次、黒点で示される最初の拍位置までカウンタのカウント動作が進行し、その拍位置で、演奏者の押鍵があるまでそのカウント動作が停止する。そして、演奏者が押鍵を行うと、次の拍位置までカウント動作が進行し、その拍位置でカウント動作が停止するという制御処理を、楽曲再生区間の先頭まで繰り返し行う。楽曲再生区間にカウント動作が進行すると、自動演奏処理が、演奏者の押鍵にかかわらずなされる。
【００６８】
第２の練習処理は、演奏開始タイミングと演奏開始後の拍タイミングを演奏者に認識させることを目的とする練習処理であり、上述した第１の練習処理のカウント区間におけるカウンタのカウント動作の進行に加え、楽曲再生区間においても、カウンタのカウント動作の進行を演奏者の押鍵操作に応じて行うようにしたものである。
【００６９】
図１２は、この第２の練習処理の具体的な練習方法を説明するための図であり、同図において、第２の練習処理を開始させると、カウント区間では、前記図９と同様に、黒点で示される各拍位置で演奏者の押鍵があるまでそのカウント動作が停止し、演奏者が押鍵を行うと、次の拍位置までカウンタのカウント動作が進行するという制御処理が繰り返し行われ、この制御処理は、楽曲再生区間でも、カウント区間と同様に、繰り返し行われている。
【００７０】
第３の練習処理は、演奏開始タイミングでの押鍵操作を演奏者に認識させることを目的とする練習処理であり、演奏開始タイミング以外の拍タイミングに対するカウンタのカウント動作の進行を、上述した第２の練習処理のカウント動作の進行と同様に行い（ただし、その進行は、鍵盤１上の左手鍵域における押鍵操作によって行う）、演奏開始タイミングにおけるカウンタのカウント動作の進行を、鍵盤１上の左手鍵域における押鍵操作に加えて、右手鍵域における鍵盤操作があったときに行うようにしている。ここで、押鍵操作する鍵は、鍵盤１の左手鍵域内の任意の鍵（ただし、演奏開始タイミングにおいては、右手鍵域内の任意の鍵も操作する）としてもよいし、予め設定した鍵としてもよい。さらに、鍵に限らず、専用の操作子を設けるようにしてもよい。
【００７１】
図１５は、この第３の練習処理の具体的な練習方法を説明するための図であり、同図において、第３の練習処理を開始させると、演奏開始タイミング以外では、前記図１２と同様に、黒点で示される各拍位置で演奏者の押鍵があるまでそのカウント動作が停止し、演奏者が鍵盤１上の左手鍵域で押鍵を行うと、次の拍位置までカウンタのカウント動作が進行するという制御処理が繰り返し行われている。そして、白抜きの点で示される演奏開始タイミングでは、左手鍵域の押鍵に加えて、右手鍵域の押鍵があったときに、カウント動作が進行する。なお、本実施の形態では、演奏開始タイミング以降のカウント動作の進行は、それ以前のカウント動作の進行と同様に、左手鍵域の押鍵操作に応じて行われているが、これに限らず、演奏開始タイミング以降のカウント動作の進行は、それ以前のカウント動作の進行と反対に、右手鍵域の押鍵操作に応じて行うようにしてもよい。
【００７２】
なお、本実施の形態では、第１〜第３の練習処理において、演奏開始タイミングでの押鍵の音高を指定せずに、任意（ただし、第３の練習処理では、右手鍵域内のものという限定は付与されている）としたが、これに限らず、「楽曲再生区間」の最初の音高としてもよい。これにより、より実践的な練習を行うことができる。
【００７３】
また、第１〜第３の練習処理で用いる曲データとしては、それぞれ上記図９、図１２および図１５に示されるように、「カウント区間」および「楽曲再生区間」がともに１小節のものを採用している。これは、第１〜第３の練習処理は、上述したように、演奏開始タイミングや拍タイミングを演奏者に認識させることを目的としており、「楽曲再生区間」を１小節以上に設定する必要があまりないためである。しかし、これに限らず、「楽曲再生区間」を１小節以上に設定するようにしてもよい。
【００７４】
図８は、上記通常ルーチン内の練習処理の手順を示すフローチャートであり、本練習処理は、練習の開始と終了を演奏者に指示するとともに、起動すべき割込み処理を決定し、その開始を指示したりする。なお、本練習処理は、第１〜第３の練習処理で共通に用いられている。
【００７５】
同図において、まず、初期設定を行う（ステップＳ５１）。この初期設定では、具体的には、練習曲の楽譜を前記表示装置９に表示させたり、練習方法を表示装置９に表示またはサウンドシステム１７から音声で出力させたりする。
【００７６】
次に、演奏者が、たとえば前記パネルスイッチ２内に設けられた練習開始スイッチ（図示せず）を操作することによって開始が指示されるまで待機し（ステップＳ５２）、開始が指示されると、目的の練習処理、すなわち第１〜第３の練習処理のうちの選択されたいずれかに対応する割込み処理を起動させ、これと同時に、カウンタが現在カウント動作を行っているときには、その動作を停止させ、さらに、カウンタのカウント値をクリアするとともに、ＲＵＮフラグをリセットしする（ステップＳ５３）。
【００７７】
次に、演奏者が、たとえば前記パネルスイッチ２内に設けられた練習終了スイッチ（図示せず）を操作することによって終了が指示されるまで待機し（ステップＳ５４）、終了が指示されたときには、当該練習を再度繰り返すか否かを、演奏者に問い合わせる（ステップＳ５５）。この結果、演奏者が当該練習を再度繰り返すと回答したときには、前記ステップＳ５３に戻って、当該練習を繰り返す一方、演奏者が当該練習を繰り返さないと回答したときには、ステップＳ５６に進む。
【００７８】
ステップＳ５６では、処理を移行させる。具体的には、第１の練習処理または第３の練習処理が終了した場合には、前記評価処理へ処理を移行させ、第２の練習処理が終了した場合には、第３の練習処理へ処理を移行させる。
【００７９】
このように、第１〜第３の練習処理でそれぞれ決定される２種類の割込み処理（後述する図１０および図１１、図１３および図１４、図１６）は、ステップＳ５３の処理により、その起動が開始し、ステップＳ５４の処理、すなわち演奏者による終了の指示により、その動作が停止する。
【００８０】
図１０は、上記第１の練習処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートであり、本割込み処理では、図９を用いて説明したように、カウント区間では拍位置までのカウントを行い、楽曲再生区間では自動演奏処理を行う。
【００８１】
図１０において、まず、ＲＵＮフラグが“１”であるか否かを判別し（ステップＳ６１）、ＲＵＮフラグ＝１のとき、すなわち、カウンタが現在カウントしている区間が「楽曲再生区間」のときには、カウンタ内容をインクリメントし（ステップＳ６２）、自動演奏処理を行った（ステップＳ６３）後に、本割込み処理を終了する。すなわち、ステップＳ６１〜Ｓ６３の処理は、図９中、再生開始位置以降に行われる処理を示している。
【００８２】
なお、ステップＳ６３の自動演奏処理では、１小節分の自動演奏処理が終了したときには、練習終了の指示を出力するようにしている。これにより、上述した練習処理のステップＳ５４で、練習終了時点を判別することができる。
【００８３】
一方、ステップＳ６１で、ＲＵＮフラグ＝０のとき、すなわち、カウンタが現在カウントしている区間が「カウント区間」のときには、カウンタがカウント動作を行っているか否かを判別し（ステップＳ６４）、カウント動作を行っていないときには直ちに本割込み処理を終了する一方、カウント動作中のときには、カウンタ内容をインクリメントする（ステップＳ６５）。
【００８４】
続くステップＳ６６では、このカウンタのカウント値をチェックすることにより、現カウント時点が拍タイミングであるか否かを判別し、拍タイミングでないときには直ちに本割込み処理を終了する一方、拍タイミングのときには、カウンタのカウント動作を停止するとともに、対応する拍位置のグリッドを強調表示させた（ステップＳ６７）後に、本割込み処理を終了する。
【００８５】
すなわち、ステップＳ６４〜Ｓ６７の処理は、図９中、再生開始位置以前の処理を示している。
【００８６】
図１１は、上記第１の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートであり、本割込み処理では、図９を用いて説明したように、演奏者の押鍵操作に応答して、停止中のカウンタのカウント動作を再開させ、または、自動演奏処理の開始を指示する。
【００８７】
図１１において、まず、カウンタのカウント動作が停止中か否かを判別し（ステップＳ７１）、カウント動作が停止中でないときには、直ちに本割込み処理を終了する一方、カウント動作が停止中のときにはステップＳ７２に進む。
【００８８】
ステップＳ７２では、押鍵操作に応じてカウント音を発音するとともに、カウント動作を再開させ、続くステップＳ７３では、カウンタのカウント値をチェックし、現カウント時点が小節線（再生開始）タイミングのときには、自動演奏開始処理を実行した後に、本割込み処理を終了する。ステップＳ７３の自動演奏開始処理では、具体的には、ＲＵＮフラグをセットし、カウンタのカウント値をリセットし、リセットされたカウンタ値に相当するイベントを実行する。
【００８９】
図１３は、上記第２の練習処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートであり、本割込み処理では、図１２を用いて説明したように、カウント区間から楽曲再生区間に亘って拍位置までのカウントを行う。
【００９０】
図１３において、ステップＳ８１〜Ｓ８４の処理は、前記ステップＳ６４〜Ｓ６７の処理と同様であるので、その説明を省略する。
【００９１】
ステップＳ８５では、ＲＵＮフラグが“１”であるか否かを判別し、ＲＵＮフラグ＝１のとき、すなわち、現在カウンタがカウントしている区間が「楽曲再生区間」のときには、自動演奏処理を行った（ステップＳ８６）後に、本割込み処理を終了する一方、ＲＵＮフラグ＝０のとき、すなわち、現在カウンタがカウントしている区間が「楽曲再生区間」のときには、本割込み処理を終了する。
【００９２】
すなわち、ステップＳ８１〜Ｓ８５の処理は、図１２中、再生開始位置以前に行われる処理を示し、ステップＳ８１〜Ｓ８６の処理は、図１２中、再生開始位置以降に行われる処理を示している。
【００９３】
なお、ステップＳ８６の自動演奏処理では、前記ステップＳ６３の処理と同様に、１小節分の自動演奏処理が終了したときには、練習終了の指示を出力するようにしている。これにより、上述した練習処理のステップＳ５４で、練習終了時点を判別することができる。
【００９４】
図１４は、上記第２の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートであり、本割込み処理では、図１２を用いて説明したように、演奏者の押鍵操作に応答して、停止中のカウンタのカウント動作を再開させる。
【００９５】
図１４において、ステップＳ９１〜Ｓ９３の処理は、前記ステップＳ７１〜Ｓ７３の処理と同様であるので、その説明を省略する。
【００９６】
ステップＳ９４では、カウンタのカウント値をチェックし、現カウント時点が小節線（再生開始）タイミング以降のときには、ＲＵＮフラグをセットした（ステップＳ９５）後に、本割込み処理を終了する。
【００９７】
次に、上記第３の練習処理における割込み処理を説明する。この割込み処理も、クロックタイミング毎に起動される割込み処理と、押鍵操作毎に起動される割込み処理の２種類の割込み処理によって構成されている。
【００９８】
前者の割込み処理では、図１５を用いて説明したように、カウント区間から楽曲再生区間に亘って拍位置までのカウントを行う。すなわち、この割込み処理は、図１３で説明した割込み処理と同様の手順で実現することができるため、図１３と同様のフローチャートを用いることにして、その説明を省略する。
【００９９】
図１６は、上記第３の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートであり、本割込み処理では、図１５を用いて説明したように、演奏開始タイミング以外の拍タイミングでは、演奏者の鍵盤１の左手鍵域での押鍵操作に応答して、停止中のカウンタのカウント動作を再開させ、演奏開始タイミングでは、左手鍵域での押鍵操作に加えて、右手鍵域での押鍵操作に応答して、停止中のカウンタのカウント動作を再開させる。
【０１００】
図１４において、まず、カウンタのカウント動作が停止中か否かを判別し（ステップＳ１０１）、カウント動作が停止中でないときには、直ちに本割込み処理を終了する一方、カウント動作が停止中のときにはステップＳ１０２に進む。
【０１０１】
ステップＳ１０２では、カウンタのカウント値をチェックし、現カウント時点が小節線（再生開始）タイミングか否かを判別し、小節線タイミングでないときには、左手鍵域での押鍵があったか否かを判別し（ステップＳ１０３）、左手鍵域での押鍵がないときには、本割込み処理を終了する一方、左手鍵域での押鍵があったときにはステップＳ１０４に進む。
【０１０２】
ステップＳ１０４およびＳ１０５の処理は、前記ステップＳ９２およびＳ９４の処理と同様であるので、その説明を省略する。
【０１０３】
一方、ステップＳ１０２で、小節線タイミングのときには、右手鍵域と左手鍵域とでの押鍵があれば、前記ステップＳ９３と同様にして、自動演奏開始処理を実行した（ステップＳ１０６）後に、本割込み処理を終了する。
【０１０４】
このように、演奏者が演奏に入るタイミングの遅速を判定し、この判定結果に応じた練習内容の練習を演奏者に行わせるようにしたので、演奏者は自分の演奏レベルにあった練習を集中的に行うことができ、これにより、練習の実効を迅速に向上させることができる。
【０１０５】
なお、本実施の形態では、課題曲の課題区間として選択された練習パートの「楽曲再生区間」の先頭には発音すべき音符が存在する（図２参照）ことを前提に説明したが、これは説明の便宜上のことであり、課題曲の課題区間として選択された練習パートが、アウフタクト（小節先頭から演奏が始まらないもの）である場合には、そのパートの先頭位置までカウントしてから、再生を開始するようにする。ただし、練習パート以外のパートについては、小節先頭から再生する。
【０１０６】
また、本実施の形態では、「カウント区間」でのカウント動作と、「楽曲再生区間」でのカウント動作、すなわち自動演奏処理におけるカウント動作に用いるカウンタを、１つのカウンタで構成しているが、これに限らず、「カウント区間」でのカウント動作用のカウンタと、「楽曲再生区間」でのカウント動作用のカウンタとを、別々の独立した２種類のカウンタで構成するようにしてもよい。この２種類のカウンタの制御方法としては、たとえば、「カウント区間」でのカウント動作用のカウンタが「カウント区間」をカウントし終えたときに、「楽曲再生区間」でのカウント動作用のカウンタのカウントを開始させる方法が考えられる。
【０１０７】
さらに、本実施の形態では、カウント音を発音するタイミング（強調表示するタイミングも同様）として、拍タイミングを採用したが、これに限らず、たとえば、「楽曲再生区間」内における最小音符長タイミングや、アウフタクト曲での最初の音符の音長タイミング等を採用するようにしてもよい。
【０１０８】
また、本実施の形態では、練習パートとして、１つのパートのみを選択して練習するようにしたが、これに限らず、複数のパート（たとえば、右手パートおよび左手パート）を同時に選択して練習するようにしてもよい。この場合には、各パート毎に演奏開始タイミングを指示する操作子（鍵盤）を用意しておくとよい。また、この場合の演奏開始タイミングの判定は、両練習パートでの演奏開始タイミングがともに正確でないときにのみ、演奏開始タイミングに関する練習を行わせるようにしてもよいし、いずれか一方の練習パートでの演奏開始タイミングが正確でなくても、演奏開始タイミングに関する練習を行わせるようにしてもよいし、演奏開始タイミングが正確な方の練習は行わないようにしてもよい。
【０１０９】
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ（またはＣＰＵ５やＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１１０】
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１１】
プログラムコードを供給するための記憶媒体としては、たとえば、前記フロッピーディスク２０、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ２１、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ６などを用いることができる。また、他のＭＩＤＩ機器１００や通信ネットワーク１０１を介してサーバコンピュータ１０２からプログラムコードが供給されるようにしてもよい。
【０１１２】
また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１１３】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ５などが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１１４】
【発明の効果】
以上説明したように、本発明によれば、表示手段に表示された楽譜中、曲データの再生位置に対応して指示される位置のうち当該曲データの先頭に相当する位置近傍において、演奏者が鍵盤を介して行った鍵盤操作と、再生された曲データとを比較することにより、演奏者の初歩的な誤操作が判定されるので、演奏者が特に初心者である場合には、自分の初歩的な誤操作を明確に把握することができるとともに、その誤操作を正すことができ、したがって、よりレベルの高い練習にスムーズに移行することができる。
【０１１５】
また、本発明によれば、前記演奏者の初歩的な誤操作があることが判定されたときに、その誤操作の内容が演奏者に報知され、さらに、前記演奏者が犯した誤操作の回数に応じて報知態様が変更され、該変更後の報知態様で当該演奏者に報知されるので、演奏者は自分の犯した誤操作の内容を確実に把握することができ、これにより、よりレベルの高い練習にさらにスムーズに移行することができる。
【０１１６】
さらに、本発明によれば、カウント区間でのカウント進行が所定位置に到達する度に、その到達が所定の態様で演奏者に報知され、この報知に従って、演奏者が曲データの再生開始タイミングを判断し、鍵盤を介して行った最初の押鍵操作と、実際の曲データの再生開始タイミングとを比較することにより、当該演奏者の押鍵操作タイミングの遅速が判定されるので、演奏者は自分の押鍵操作タイミングの遅速を確実に認識することができる。
【０１１７】
また、本発明によれば、前記押鍵操作タイミングの判定結果に応じて、練習データ記憶手段に記憶された複数種類の練習データからいずれかのデータが選択され、該選択された練習データに基づいて演奏者に対する練習が行われるので、演奏者は自分の演奏レベルに合った練習を集中的に行うことができ、これにより、練習の実効を迅速に向上させることができる。
【０１１８】
さらに、本発明によれば、現在選択されている練習データに基づく練習が終了したときには、該練習データ以外の練習データが前記練習データ記憶手段から選択され、該選択された練習データに基づく練習に移行するので、演奏者は自分の演奏レベルにより合った練習を行うことができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係る演奏練習装置の概略構成を示すブロック図である。
【図２】図１の表示装置に表示された、演奏者が練習対象として選択した楽曲の楽譜の一例を示す図である。
【図３】図１の演奏練習装置、特にＣＰＵが実行する通常ルーチン内の評価処理の手順を示すフローチャートである。
【図４】図３の評価処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートである。
【図５】図３の評価処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートである。
【図６】操作タイミングの判定の基準を説明するための図である。
【図７】図４の誤り報知処理の詳細な手順を示すフローチャートである。
【図８】通常ルーチン内の練習処理の手順を示すフローチャートである。
【図９】第１の練習処理の具体的な練習方法を説明するための図である。
【図１０】第１の練習処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートである。
【図１１】第１の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートである。
【図１２】第２の練習処理の具体的な練習方法を説明するための図である。
【図１３】第２の練習処理で決定され、クロックタイミング毎に起動される割込み処理の手順を示すフローチャートである。
【図１４】第２の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートである。
【図１５】第３の練習処理の具体的な練習方法を説明するための図である。
【図１６】第３の練習処理で決定され、押鍵操作毎に起動される割込み処理の手順を示すフローチャートである。
【符号の説明】
１  鍵盤
２  パネルスイッチ
５  ＣＰＵ
９  表示装置
１１  ＨＤＤ
【図１】
0003582427.tif 000002
【図２】
0003582427.tif 000003
【図３】
0003582427.tif 000004
【図４】
0003582427.tif 000005
【図５】
0003582427.tif 000006
【図６】
0003582427.tif 000007
【図７】
0003582427.tif 000008
【図８】
0003582427.tif 000009
【図９】
0003582427.tif 000010
【図１０】
0003582427.tif 000011
【図１１】
0003582427.tif 000012
【図１２】
0003582427.tif 000013
【図１３】
0003582427.tif 000014
【図１４】
0003582427.tif 000015
【図１５】
0003582427.tif 000016
【図１６】
0003582427.tif 000017