以下、添付図面を参照して、この発明の一実施形態について詳細に説明する。
図1は、一実施形態に係る楽譜表示制御装置の構成例を説明する概念的ブロック図である。楽譜表示制御装置100は、演奏の手本となる楽譜を表示する表示部10と、演奏に応じた音データを入力する入力部11と、前記楽譜と前記入力された音データに基づいて、前記演奏を採点する採点部12と、前記採点の結果を蓄積する蓄積部13と、前記蓄積部に蓄積された少なくとも一部の採点の結果に基づく習熟度に応じて、前記楽譜の表示態様を変更する制御を行う表示制御部14と、1以上の楽曲データを記憶する楽曲データ記憶部15と、楽曲データに基づき自動演奏を行う演奏部16を含む。
楽譜表示制御装置100は、例えば汎用のパーソナルコンピュータや電子楽器など、各部10〜16の動作(後述するオーディオ信号を分析する各種処理)を行なうためのプログムを実行可能なコンピュータ装置により構成されてよく、あるいは、各部の動作を実行可能なように構成された専用ハードウェア装置(集積回路等)からなっていてもよい。
図2は、楽譜表示制御装置100の電気的ハードウェア構成例を説明するブロック図である。楽譜表示制御装置100は、マイクロプロセッサユニット(CPU)101、メモリ102、操作装置103、表示装置104、及び、オーディオインタフェース(「オーディオI/F」)105、及び、通信インタフェース(「通信I/F」)106、外部記憶装置107を含む。CPU101は、メモリ102に記憶された各種のプログラムを実行して、楽譜表示制御装置100の全体動作を制御する。メモリ102は、ROM、RAM及を含む。外部記憶装置107は、例えば磁気ディスクや光学ディスク、フラッシュメモリなど適宜の記録媒体からなる。
操作装置103は、例えばマウス、キーボード等の操作装置と、該操作入力を検出する機構を含み、ユーザの操作に応じて、例えば楽曲の選択、自動演奏の開始、停止など様々な指示を入力する。表示装置104は、図1の表示部10に対応しており、楽譜を含む各種画面を表示可能なディスプレイと、該ディスプレイの表示を制御する機構を含む。ディスプレイは、例えば、LCDや有機ELなどからなる。
オーディオI/F105は、音響信号(オーディオ信号)の入力端子、音響信号の出力端子、アナログ‐デジタル変換器、デジタル‐アナログ変換器を含む。楽譜表示制御装置100はオーディオI/F105を介して、例えば、ユーザの楽器の演奏により発生した音データを取得できる。オーディオI/F105は入力部11を構成する。
通信I/F106は、イーサネット(登録商標)インタフェース、USBインタフェース、MIDIインタフェース等を含む。楽譜表示制御装置100は、通信I/F106を介して、例えばインターネット等の通信ネットワークに接続し得る。楽譜表示制御装置100は、通信I/F106を介して、外部のMIDI機器(例えばMIDI鍵盤等)からMIDI演奏情報を取得できる。
図1の楽曲データ記憶部15は、例えば外部記憶装置107により構成されてもよいし、或いは、通信I/F106を介して接続されたインターネット上の楽曲データベースサーバ装置により構成されてもよい。楽曲データ記憶部15に記憶された個々の楽曲データは楽曲に対応付けられており、それぞれ、その楽曲を自動演奏するための自動演奏データと、その楽曲の楽譜を表示するための楽譜表示データとを含む。自動演奏データは、例えばMIDI形式のデータからなる。一例において、楽曲データ記憶部15に記憶された楽曲データに含まれる自動演奏データは、自動演奏データのうち、ユーザの演奏する楽器パートを除外した「マイナスワン演奏データ」からなる。ユーザが歌唱する場合、マイナスワン演奏データは、歌唱パートを除いたデータ(「カラオケ伴奏データ」)となる。なお、ユーザは、予め、自身が練習を行うパート名(歌唱、楽器名等)を楽譜表示制御装置100に設定しておくものとする。
ユーザは、操作装置103を用いて、楽曲データ記憶部15(図2のメモリ102)に記憶された楽曲データのうちから、練習対象となる楽曲(練習曲)を選択する。CPU101は、ユーザにより楽曲が選択されたとき、選択された楽曲の楽曲データに含まれる楽譜表示データに基づく楽譜を表示部10(図2の表示装置104)に表示する。楽譜は、例えば楽曲を構成する各音のピッチ、時間位置、長さ等、ユーザが楽曲を演奏又は歌唱するために必要な情報を表示するものである。楽譜の一例は五線譜である。
ユーザは、操作装置103を用いて、選択された楽曲データの再生開始を指示できる。図1の演奏部16は、再生開始指示に応じて、選択された楽曲データに含まれる自動演奏データに基づいて、選択された楽曲のマイナスワン演奏(又はカラオケ伴奏)を再生する。CPU101は、メモリ102等に記憶された楽曲データを読み出し、読み出した楽曲データに基づく自動演奏処理を行うことにより、演奏部16の動作を実行できる。
演奏部16の自動演奏により、選択した楽曲のマイナスワン演奏(又はカラオケ伴奏)の再生音が、オーディオI/F105を介して、図示外のヘッドフォン等に出力される。ユーザは、再生音に合わせて、楽曲の演奏又は歌唱の練習を行う。なお、楽器の演奏及び歌唱を総称して、単に「演奏」とも言う。
図1の入力部11は、オーディオI/F105を介して取り込んだアコースティック楽器の演奏又は歌唱に応じた音響信号を、演奏に応じた音データとして、楽譜表示制御装置100に入力する。別の例において、入力部11は、通信I/F106を介して取り込んだ電子楽器の演奏に応じたMIDI演奏情報を、演奏に応じた音データとして、楽譜表示制御装置100に入力する。
採点部12は、入力部11から入力された音データと、演奏部16から取得したリファレンス(手本)データに基づき、ユーザによる楽器の演奏又はユーザの歌唱を採点し、1回の練習における全ての採点結果に基づく採点分析データを生成する。
リファレンスデータは、演奏部16が自動演奏に用いる楽曲データ(MIDI形式の自動演奏データ)に基づくデータであり、演奏すべき音を特定する情報を含む。音を特定する情報は、例えば、ピッチ(音高)、長さ、発音タイミング等の各種音要素を含む。音を特定する情報は、その他にも、演奏に必要な各種情報を含んでよい。前記必要な各種情報は、例えば、強弱、速度、発想、アーティキュレーション、反復、装飾、省略など五線譜記載法における演奏記号により表される要素を含んでよい。
採点部12の採点は、例えば、楽曲の1音毎の評価を含む。1音は、楽譜の1つの音符に対応する。採点は、評価に応じた得点を数値で表すことを含む。評価項目は、例えばピッチ、音量、長さ、発音タイミング等の各種音要素に関する評価、及び、例えば強弱、速度、発想、アーティキュレーション、反復、装飾、省略等の演奏技法に関する評価を含む。評価は、例えば、各項目の安定性を評価することや、リファレンスデータに対する忠実さを評価することを含む。CPU101は、入力された音データを分析し、1音毎の各種音要素の特徴量の抽出し、且つ、個々の音の特徴量とリファレンスデータを比較することにより、採点部12の動作を行い得る。採点部12による採点は、ユーザの演奏に応じて略リアルタイム処理により行われてもよいし、或いは、1回の練習による演奏を録音した音データ(例えば1曲分のデータ)に対して行っても良い。
採点分析データは、例えば、採点結果の情報と、楽曲を識別する情報と、ユーザを識別する情報と、個々の採点分析データを識別する情報とを含む。採点結果の情報は、楽曲を構成する個々の音の各種音要素に関する得点や、演奏技法に関する得点を含んでよい。楽曲を識別する情報は、楽曲の曲名や曲毎の曲ID等である。ユーザを識別する情報は、ユーザ名やユーザ毎のユーザID等である。採点分析データを識別する情報、例えば採点(練習)を行った日時、練習毎の練習ID等である。
蓄積部13は、採点部12により生成された採点分析データを蓄積及び管理するデータベース装置である。蓄積部13は、一例において、楽譜表示制御装置100に備わるローカルのデータベース装置(外部記憶装置107)で構成されてよい。CPU100は、1回の練習毎に、採点部12により生成された採点分析データを蓄積部13に記憶させる。これにより、蓄積部13は、ユーザが過去に行った練習に対する採点結果を示す採点分析データの履歴を保持するものとなる。一例として、蓄積部13は、当該ユーザ1人の採点分析データの履歴のみを保持する。
表示制御部14は、蓄積部13に蓄積された楽曲毎の過去の採点分析データの少なくとも一部に基づいて、その楽曲の演奏に関するユーザの習熟度を推定し、該推定された習熟度に応じて、表示部10(表示装置104)に表示された楽譜の表示態様を変更する制御を行う。習熟度は、例えば楽曲内の個々の音符やフレーズ等、楽曲中の演奏個所を、ユーザが正しく演奏できているかどうか、すなわち高得点を得ているかどうかを示す。また、習熟度は、同じ楽曲を何回か演奏した場合の該当個所における全平均得点や、直近の所定期間内の平均特定などの情報を用いてもよい。習熟度に応じた楽譜の表示態様の変更は、例えば、楽曲中の個々の演奏個所に関するユーザの習熟度に応じて、楽譜内の該習熟度に対応する個所の表示態様を変更することを含む。例えば、習熟度の高い個所の表示態様を変更することを含む。表示態様の変更は、当該個所の表示を簡略化すること、当該個所の音符の表示色を変えること、当該個所を不可視化すること等を含む。
図3は、CPU101が行う表示制御処理(表示制御部14の動作)の一例を示すフローチャートである。一例において、CPU101は、ユーザの楽曲選択に応じて表示部10(表示装置104)に或る楽曲の楽譜を表示するときに、図3の処理を実行する。ステップS1において、CPU101は、当該ユーザを識別する情報(例えばユーザ名等)と現在選択されている楽曲を識別する情報(例えば曲名等)に基づいて、該ユーザによる該楽曲の演奏に対する採点分析データ群を、蓄積部13から取得する。一例として、ユーザによる該楽曲の演奏に対する全ての採点分析データ群が、蓄積部13から取得されてよい。個々の採点分析データには、対応する楽曲内の個々の音のピッチ、音量、強弱・・・等の各種評価項目毎の採点結果(得点)が含まれる。
ステップS2において、CPU101は、前記取得された採点分析データ群に基づいて、その楽曲の演奏に関するユーザの習熟度を推定する。習熟度は、個々の採点分析データに含まれる楽曲内の個々の音の得点(採点結果)の統計値に基づき推定される。例えば、CPU101は、楽曲内の個々の音のピッチ得点の平均値を求めることにより、個々の音の習熟度を推定し得る。平均値が高いほど習熟度が高い(すなわち正しく演奏できている)と推定し、平均値が低いほど習熟度が低い(すなわち正しく演奏できていない)と推定する。これにより、楽曲内の個々の音の演奏傾向を分析して、例えば何れの音符又はフレーズの演奏をよく間違えているかとか、何れの音符又はフレーズの演奏を正しく演奏できているか等を把握することができる。演奏傾向は、ユーザの習熟度や個性に応じたものとなる。こうして把握した演奏傾向により、該楽曲中のいずれの箇所の表示態様を変更すべきかを判断することができる。CPU101は、前記推定された楽曲内の個々の音の習熟度を、対応する楽譜上の時間位置(例えば音符)に対応付けて記録する。これにより、該選択された楽曲に対応する採点分析データ群の集計データが作成される。集計データは、採点分析データ群に基づく楽曲内の個々の音の習熟度を、対応する楽譜上の時間位置(例えば音符)に対応付けて記録したデータである。
ステップS3において、CPU101は、前記作成された集計データに基づき、楽曲内の個々の音の習熟度に応じて、楽譜上の対応個所の表示態様を変更する制御を行う。前記集計データがユーザによる該楽曲の演奏に対する全ての採点分析データ群に基づき作成されたものである場合、表示制御部14(ステップS3)は、蓄積部13に蓄積された当該楽曲の全ての採点の結果に基づいて、表示態様を変更する制御を行うことになる。
一例として、表示態様を変更する制御は、当該音符を含む楽譜を表示部10に表示する際に、すなわち演奏部16によるマイナスワン演奏の進行とは連動せずに、行われてよい。CPU101は、表示部10に楽譜を表示する際に、楽譜内の個々の対応箇所(例えば、音符等、習熟度を求めた個所)を、それぞれの習熟度に応じた表示態様に変更する。この場合、楽譜内の個々の対応箇所は、表示部10に表示された際に固定的に、習熟度に応じた表示態様で表示される。別の例として、楽譜上の対応個所の表示態様を変更する制御は、演奏部16によるマイナスワン演奏の進行に合せて、すなわち演奏部16により当該個所が演奏されるタイミングに合わせて略リアルタイムで行う。その場合、演奏部16から自動演奏の進行を示す時刻情報が表示部10及び表示制御部14に供給され(図1参照)、CPU101は、時刻情報に基づく現在の演奏位置に対応する個所の表示態様を、習熟度に応じて変更する。別の例として、CPU101は、時刻情報に基づく現在の演奏位置以後(例えば、現在位置よりも数小節先、数秒先、数音符先等)の個所の表示態様を、その習熟度に応じて変更してもよい。これにより、自動演奏(マイナスワン演奏)に合わせたユーザの演奏に応じたタイミングで又は演奏に先立って、当該演奏される個所の表示態様を、変更できる。
楽譜上の対応個所は、例えば音符である。表示態様の変更は、各音のピッチ得点平均値に応じて、例えば、音符の表示色、表示サイズを変えることを含む。一例として、楽譜表示制御装置100のメモリ102には、楽曲内の個々の音の習熟度(ピッチ得点の平均値)と表示態様を異ならせる程度とを対応付けたテーブルが記憶され、CPU101は、前記ステップS3において、前記テーブルに基づいて、習熟度に応じて異なる程度で、楽譜上の対応個所の表示態様を変更する。
図4(a)はピッチ得点の平均値と音符の表示色の濃さとを対応付けたテーブル構成例を示す。(a)のテーブル構成例において、縦軸はピッチ得点平均値を示す。ピッチ得点平均値は。図において下から上に向って最低得点(0点)から100点(最高得点)までの値をとる。また、横軸は表示色の濃度を示しており、濃度は、図において左から右に向って薄くなる。濃度が最も濃い状態を、表示態様の変更を行なっていない通常の表示色とする。(a)のテーブル構成例によれば、0点から50点までの習熟度の低い音符は、表示色の濃度が最も濃いまま変わらない。50点以上の音符は、得点の上昇に応じて順次表示色の濃度が薄くなる。従って、習熟度が低い音符の表示色は通常状態のまま変わらない。習熟度が上がるほど音符の表示色が薄くなり、音符の視認性が悪くなる。表示色をもっとも薄くすると、例えば音符が不可視化される(音符の表示が消える)。例えば、図5(a)は、表示部10(表示装置104)に表示された楽譜(五線譜)の一例である。前記ステップS3の処理により、3小節目の3つの音符50、51、52の表示が消えると、楽譜は図5(b)のようになる。
一例において、前記ステップS3において、音符は全体の表示態様が変更される。別の例においては、音符の全体ではなく一部のみの表示態様が変更される。例えば、音符の符頭の表示態様のみを変更してよい。例えば、図5(b)において符号53は音符の符頭を消した例を示す。その場合、表示態様の変更後も符幹及び符尾が通常の態様で表示されているので、ユーザは発音タイミングを知ることができる。別の例として、音符の符幹及び符尾の表示態様のみを変更してよい。その場合、表示態様の変更後も符尾が通常の態様で表示されているので、ユーザはピッチを知ることができる。例えば、図5(b)において符号54は音符の符幹を消した例を示す。
前記ステップS3において、表示態様の変更方法は、音符の表示色の濃度を変えることに限らず、例えば、習熟度に応じて音符の表示色を変更すること(例えば、習熟度が上がれば表示色を赤から黒に変更し、習熟度が上がらない場合は赤いまま等)、音符の表示の透過性を変更すること(例えば、習熟度が上がれば音符表示を透過的に表示し、習熟度が上がらない場合は不透過的なまま等)、あるいは、音符の表示サイズを変更すること(例えば、習熟度が上がれば音符表示サイズを小さくし、習熟度が上がらない場合は大きいサイズのまま等)を含んでよい。
また、前記ステップS3の表示態様の変更方法の別の例は、音符に対してモザイク処理を行うことを含む。その場合、CPU101は、例えば、習熟度が上がるほど、モザイク処理の粒度を粗くして、音符の視認性が悪くなるようにする。また、前記ステップS3の表示態様の変更方法の別の例は、音符に対して点滅処理を行うことを含む。その場合、CPU101は、例えば、習熟度が上がるほど、点滅サイクル中の消灯時間を長くして、音符の視認性が悪くなるようにする。
また、前記ステップS3の表示態様の変更方法の別の例は、例えば黒塗り処理、網掛け処理、或いは、何らかの図柄の画像を重ねること等により、音符の少なくとも一部を隠すことを含む。その場合、CPU101は、例えば、習熟度が上がるほど、例えは黒塗りの濃度を濃くする、網掛けの粒度(網目のピッチ)を細かくする、音符を隠す範囲を広げる等により、音符の視認性が悪くなるようにする。例えば、図5(b)において符号55は音符を黒塗りにより隠す例を示す。
前記ステップS3において表示態様を変更する個所は、音符に限らず、音符以外の表示物であったり、あるいは、楽譜上の時間位置(楽譜の背景部分)であったりしてもよい。例えば、楽譜上に、個々の音の音階名と、その音を演奏するための運指(例えば、鍵盤の位置やギター、管楽器等の指使いなど)を表示する場合、音階名と運指の表示態様を変更してよい。図4(b)は、前記ステップS3で参照するテーブル構成の別の例として、ピッチ得点平均値と音階名及び運指の表示透過性とを対応付けたテーブル構成例を示す。(b)によれば、ピッチ得点平均値(習熟度)が上がるほど、音階名及び運指は透過的に表示され、不可視化される。
また、別の実施形態において、前記ステップS3において参照する習熟度と表示態様の変化程度の対応付けたテーブルは、楽曲中の音符毎の難易度に応じてオフセット値を加味するようにしてもよい。音符毎の難易度は、リファレンスデータに基づいて推定し得る。これにより、例えば演奏の難しい個所は習熟度が高くても表示態様を変化し難くするなど、難易度を反映した表示態様の変更制御を行うことができる。
また、前記ステップS2は、楽曲内の個々の音のピッチに関する習熟度を推定することに限らず、楽曲内の個々の音の各種評価項目(例えばピッチ、音量、発音タイミング、強弱、速度、発想、アーティキュレーション、反復、装飾、省略等)のうち何れか1つの平均値を、習熟度として求め、前記ステップS3は、個々の音の前記1つの評価項目の習熟度に応じて、楽譜上の対応個所の表示態様を変更するように構成されてよい。
別の実施形態において、前記ステップS2は、楽曲内の個々の音の複数種類の評価項目の平均値を、習熟度として求めるように構成されてよい。その場合、前記ステップS3は、個々の音の1以上の複数種類の評価項目毎の習熟度(得点平均値)の合計に応じて、楽譜上の対応個所の表示態様を変更するように構成されてよい。別の例では、前記ステップS3は、個々の評価項目に重み付けした合計に応じて、楽譜上の対応個所の表示態様を変更するように構成されてよい。別の実施形態において、複数種類の評価項目毎に、習熟度に応じた表示態様の変更方法を異ならせても良い。例えばピッチ得点平均値に応じて音符表示色の濃度を変更し、例えば音量得点平均値に応じて音符表示色を変更し、発音タイミング得点平均値に応じて点滅処理を行い・・・という具合である。
また、別の実施形態において、前記ステップS3は、五線、音部記号、拍子記号、休符、調号、臨時記号、強弱記号、速度記号、発想記号、アーティキュレーション記号、反復記号、装飾記号、各種奏法指示記号等、演奏をするために必要なさまざまな記号の表示態様を変更するように構成されてよい。それら各種演奏技法を示す記号の表示態様を変更する場合は、リファレンスデータとの比較による評価(例えば手本の通りに演奏できたか)や、音の長さ、音量等の評価に基づく得点を参照する。
また、前記ステップS3は、例えば、歌詞情報や、コード(和音)情報の表示態様を変更するように構成されてよい。
また、別の実施形態において、前記ステップS2は、楽曲中の複数の音にわたる演奏に対する習熟度を推定し、前記ステップS3は、該複数の音にわたる演奏に対する習熟度に応じて表示態様を変更するように構成されてもよい。複数の音にわたる演奏は、例えば、複数音からなる和音の演奏、或るフレーズの演奏、例えばアルペジオなど特定パターンの演奏、あるいは、楽曲中の特定区間の演奏、或る特定のピッチから別の特定のピッチへの移行する演奏、音階毎に演奏(例えば、ドの演奏、レの演奏・・・など)、特定音域(例えばサックス等においてフラジオレット奏法により演奏される高音域や、フルートにおけるブリッジ音域など)に属する複数の音の演奏等を含む。
また、別の実施形態において、前記ステップS2は、複数の楽曲の演奏に対する採点分析データ群を、蓄積部13から取得し、該取得された採点分析データから、ピッチ毎の正確性や、音変化パターン毎の正確性に関する習熟度を推定し、前記ステップS3は、該習熟度に応じて対応する音符の表示態様を変更するように構成されてもよい。音変化パターンは、例えばド、ミ、ソの順に変化するアルペジオパターン等である。この場合、楽曲毎の演奏の習熟度ではなく、ユーザのピッチ毎、或いは、音変化パターン毎の演奏の習熟度に応じた表示態様の変更を行なうことができる。
また、別の実施形態において、前記ステップS2で推定する習熟度は、採点分析データ群をローパスフィルタ処理して、楽曲内の個々の音毎に或る得点(例えば低い得点)を抽出することにより推定されてもよい。また、別の例として、前記ステップS2で推定する習熟度は、個々の採点分析データに含まれる楽曲内の個々の音に対する得点の中央値であってもよい。
また、別の実施形態において、前記ステップS1で取得する採点分析データ群は、ユーザによる当該楽曲の演奏に対する採点分析データのうち、直近の所定期間内の採点分析データ群である。直近の所定期間内の採点分析データ群は、例えば1ヶ月以内の採点分析データ群など、過去の或る期間の採点分析データ群である。直近の所定期間内の採点分析データ群の別の例は、直近数回分の採点分析データ群である。この場合、表示制御部14(前ステップS3)は、前記蓄積部に蓄積された当該練習曲の当該ユーザの演奏に対する採点分析データ群のうち、直近の所定期間内の採点結果に基づいて、表示態様を変更する制御を行う。
また、別の実施形態において、演奏部16のマイナスワン演奏の自動演奏の進行に合わせて、現在の演奏位置以後の個所に対して前記ステップS3の表示態様の変更を行う場合、更に、表示態様の変更を行うタイミングは、習熟度に応じて決定されてよい。例えば、当該個所の習熟度が上がるほど、現在の演奏位置から遠い時点でその表示態様が変更されてよい。これにより、例えば、当該個所の習熟度が低いときには該個所の演奏タイミングの直前でその表示態様を変更し、当該個所の習熟度が上がるほど、個所の演奏タイミングよりもかなり先行してその表示態様を変更する、つまり、当該個所の表示態様の変更されている時間を長くすることができる。
要するに、前記ステップS3は、習熟度に応じて、楽譜が例えば簡略化されたり、視認性が悪くなったり、若しくは、不可視化されたりするような制御であれば、どのような方法で表示態様を変更するものでもよい。習熟度の高い音符の視認性を悪くすること、ひいては音符を消すことにより、ユーザに当該個所の暗譜を促す効果を期待できる。暗譜を促す個所は、ユーザの習熟度に応じて決定されるので、ユーザに対して効率的で効果的な練習補助(暗譜補助)を提供することができる。
一実施形態において、前記ステップS3は、更に、表示態様を変更した個所に対して、該表示態様の変更が行われたことを示唆する補助表示を行うように構成されてよい。図6は、楽譜上に表示された補助表示の一例を示す。図6においては、表示態様の変更の一例として、3小節目の音符50、51、52(図5(a)参照)が消され、且つ、クエスチョンマーク記号56により当該個所が隠されている。この表示変更箇所に対して、吹き出し画像60が表示される。該吹き出し画像60内には、消された音符を示唆するヒント情報(言い換えれば、変更前の表示態様を示唆するヒント情報)として「4分音符」という文字情報が表示される。表示変更箇所の音符は不可視化されているが、補助表示の該吹き出し画像60により当該個所の音価のみがユーザにわかるようになっている。
一例として、CPU101は、前記表示態様を変更した個所の習熟度と所定の閾値の比較に基づいて、前記補助表示を行う。図7は、前記図4(a)に示すピッチ得点平均値と音符の表示色の濃度の対応付けテーブルに、補助表示閾値70を加えたものを示す。図8のテーブルには、補助表示閾値70として、或るピッチ得点平均値の数値範囲に補助表示を行う区間が設定されている。一例として、CPU101は、表示態様を変更した個所の習熟度(ピッチ得点平均値)が補助表示閾値70の範囲に含まれる場合、該表示態様を変更した個所に対して補助表示を行う。
一実施形態において、補助表示閾値70は固定値でなくてもよい。例えば、補助表示閾値70は、蓄積部13に蓄積された採点分析データの少なくとも一部に基づいて決定される。一例として、補助表示閾値70は、当該ユーザによる当該楽曲の演奏に対する全ての採点分析データに基づいて決定されてよい。別の例として、補助表示閾値70は、当該ユーザによる当該楽曲の演奏に対する全ての採点分析データに基づいて決定されてよい。また、別の例において、補助表示閾値70は、ユーザによる当該楽曲の演奏に対する採点分析データのうち、直近の所定期間内の採点分析データ群に基づいて決定されてよい。直近の所定期間内の採点分析データ群は、例えば、過去の或る期間の採点分析データ群、或いは、直近数回分の採点分析データ群である。
補助表示として提示するヒント情報の別の例は、コード名、音符に臨時記号が付くかどうか、不可視化された複数の音符の一部を見せること、楽曲構成要素(例えば、イントロ、サビメロディ等)を特定すること、演奏技法を特定することなどを含んでよい。
補助表示は、図6の吹き出し画像60に限らず、ユーザが認識できさえすればどのような形式でもよい。例えば、表示変更箇所に対応付けて、選択肢形式で補助表示となる文字情報が表示されてもよい。選択肢形式とは、例えば、図6の例で言えば、クエスチョンマーク記号56に対応付けて、補助表示となる音価を示唆する情報として、例えば「(1)2分音符」、「(2)4分音符」、「(3)8分音符」という具合に、幾つかの選択肢を提示することを含む。表示される選択肢は、誤回答を含むものであってよい。また、補助表示の別の例としては、表示変更箇所に、不正確な演奏内容を示す情報を表示することを含む。不正確な演奏内容を示す情報を表示することは、例えば、リファレンスデータの示す音符が「ド」であるところを、「レ」の音符を楽譜上に表示することや、図6の吹き出し画像60に、「レ?」という具合に、不正確な内容を表示することを含む。前記選択肢に含まれる誤回答や、補助表示として表示される「不正確な演奏内容」は、例えばユーザが過去に行なった演奏の間違えに基づいて決定されてよい。ユーザの過去の間違えは、採点分析データに基づいて、決定され得る。また、補助表示の別の例は、表示変更箇所の正しい演奏内容をユーザに尋ねるクイズ形式であってもよい。
一実施形態において、補助表示は、表示部10に楽譜を表示する際に、楽譜上の対応箇所に表示されてよい。CPU101は、表示部10に楽譜を表示する際に、表示される楽譜内の個々の該当箇所(例えば、音符等、習熟度を求めた箇所)に、それぞれの習熟度に応じた補助表示を行う。この場合、補助表示は、表示部10に表示された楽譜上の対応箇所に固定的に表示されることになる。また、別の実施形態において、補助表示は、演奏部16の自動演奏の進行に合わせて行なわれてもよい。例えば、CPU101は、演奏部16の自動演奏の進行を示す時刻情報に基づいて、補助表示をすべき個所をユーザが演奏するときに、該箇所に対する補助表示を行ってよい。別の例として、CPU101は、演奏部16の自動演奏の進行を示す時刻情報に基づいて、補助表示をすべき個所をユーザが演奏する以前に、すなわち現在の演奏位置以後の箇所に対する補助表示を行ってよい。自動演奏の進行に合わせて補助表示を行うタイミングは、例えば、当該個所の習熟度に応じて決定されてよい。これにより、自動演奏(マイナスワン演奏)に合わせたユーザの演奏に応じたタイミングで又は演奏に先立って、当該演奏される箇所に対して補助表示を行うことができる。
一実施形態において、補助表示の内容が習熟度に応じて変更されてもよい。例えば、習熟度が相対的に低い個所では、より多くのヒント情報を補助表示として提供し、習熟度が上がるほど、ヒント情報を少なくすることができる。
補助表示は、更に、音により伝達されてよい。例えば、CPU101は、演奏部16の自動演奏の進行を示す時刻情報に基づいて、補助表示をすべき個所をユーザが演奏する以前に、補助表示に関する音を、オーディオI/F105を介して、図示外のヘッドフォン等に出力する。補助表示に関する音は、例えば表示態様が変更された旨の警告や、表示態様が変更された音名等である。また、別の実施形態において、補助表示は、表示態様が変更された旨をユーザに、例えば発光や点滅など光により伝達するものであってもよい。
習熟度に応じて表示態様を変更した個所に対して、前記の補助表示を行うことにより、ユーザに対して効果的な練習補助(例えば暗譜補助)を提供することができる。
別の実施形態において、蓄積部13は、通信I/F106を介して接続されたインターネット上のデータベースサーバ装置により構成されてよい。この場合、採点部12は、ユーザによる楽曲の演奏に対する採点分析データを、インターネット経由でデータベースサーバ装置(蓄積部13)に蓄積する。データベースサーバ装置(蓄積部13)は、様々な端末装置から採点分析データを集積し得る。したがって、例えば、ユーザが異なる複数の楽譜表示制御装置100を使用する場合、何れの装置100からの採点分析データであっても、1つのデータベースサーバ装置(蓄積部13)内に、当該ユーザの採点分析データ(演奏の履歴)として蓄積される。
別の実施形態において、蓄積部13は、当該ユーザとは別の複数のユーザの採点分析データを蓄積及び管理するように構成されてよい。例えば、蓄積部13は、通信I/F106を介して接続されたインターネット上のデータベースサーバ装置からなり、複数のユーザからインターネット経由で採点分析データを取得し、該取得された複数のユーザの採点分析データを蓄積及び管理する。この場合、当該ユーザの採点分析データと他の複数のユーザの採点分析データとを含めて習熟度を推定したり、他の複数のユーザの採点分析データに基づき習熟度を推定し、該習熟度に応じて、前記図3のステップS3の処理(表示態様変更及び補助表示)を行うようにしてもよい。
図8は、蓄積部13を構成するデータベースサーバ装置が、多数のユーザの採点分析データに基づいて、前記図3の処理に用いる集計データを生成及び送信する処理例を示すフローチャートである。例えば、楽譜表示制御装置100は、ユーザによる楽曲を選択する指示(楽譜表示指示、又は、自動演奏開始指示)に応じて、インターネットを介してデータベースサーバ装置に、該選択された楽曲に関する集計データを要求する。該要求に応じて、データベースサーバ装置は、図8の処理を行う。
ステップS4において、データベースサーバ装置は、前記要求された楽曲に対応する採点分析データ群を蓄積部13から特定する。ステップS5において、データベサーバ装置は、前記特定された採点分析データ群に基づいて、例えば楽曲内の個々の音の各種評価項目毎の得点の統計値(例えば平均値、中央値あるいは偏差値等)を求めることにより、演奏の習熟度を推定し、前記推定された楽曲内の個々の音の習熟度を、対応する楽譜上の時間位置(例えば音符)に対応付けて記録する。これにより、該要求された楽曲に対応する採点分析データ群の集計データが作成される。集計データは、採点分析データ群に基づく楽曲内の個々の音の習熟度を、対応する楽譜上の時間位置(例えば音符)に対応付けて記録したデータである。ステップS6において、データベースサーバ装置は、楽譜表示制御装置100に集計データを送信する。楽譜表示制御装置100は、データベースサーバ装置から取得した集計データに基づいて前記ステップS3の表示態様変更と補助表示を行う。
一実施形態において、前記ステップS5の集計データ作成処理は、表示態様の変更を行う箇所の優先順位を決定することを含んでよい。例えば、多数のユーザにおいて習熟度の低い音符ほど優先順位を高くする。多数のユーザの採点分析データに基づいて集計データを生成するにあたり、多数のユーザにとって習熟度の低い箇所ほど優先的に表示態様の変更を行うようにすることで、より効果的な演奏補助を行うことが期待される。
一例として、データベースサーバ装置は、前記特定された全ての採点分析データに基づいて集計データを生成する(S5)。この場合、楽譜表示制御装置100のCPU101は、当該ユーザを含む全てのユーザにおける演奏の習得度に応じて、前記ステップS3の表示態様変更及び/又は補助表示を行う。別の例として、データベースサーバ装置は、前記特定された全ての採点分析データのうち、当該ユーザを含む複数ユーザからなるユーザグループの採点分析データに基づいて集計データを生成する(S5)。この場合、楽譜表示制御装置100のCPU101は、当該ユーザを含む複数ユーザからなるユーザグループにおける演奏の習得度に応じて、前記ステップS3の表示態様変更及び/又は補助表示を行う。別の例として、データベースサーバ装置は、前記特定された全ての採点分析データのうち、当該ユーザを含まない複数ユーザからなるユーザグループの採点分析データに基づいて集計データを生成する(S5)。この場合、楽譜表示制御装置100のCPU101は、当該ユーザを含まない複数ユーザからなるユーザグループにおける演奏の習得度に応じて、前記ステップS3の表示態様変更及び/又は補助表示を行う。これにより、他人により演奏に対する採点結果を含む習熟度に応じた表示態様変更及び/又は補助表示(S3)を行うことができる。これにより、例えば、自身以外の他のユーザにおいて習熟度の低い個所を優先的に表示変更したり、反対に他のユーザにおいて習熟度の低い個所を表示態様が変更され難くしたり、他のユーザにおいて習熟度の低い個所に補助表示を行うこと等ができる。なお、前記複数ユーザからなるユーザグループは、同じ楽団に所属するメンバー、練習講師と生徒、或いは、指定された演奏家(例えば手本となるプロフェッショナル演奏家)など、或る特定のユーザグループであってよい。
また、別の実施形態において、楽譜表示制御装置100のCPU101は、前記ステップS3において参照する習熟度と表示態様の変化程度の対応付けたテーブルに対して、前記ステップS5でデータベースサーバ装置により作成された集計データの示す習熟度に応じたオフセット値を加味してもよい。これにより、例えば多数のユーザにおいて得点の低い個所は、当該ユーザの習熟度が低くても表示態様を変化し難くするなど、多数ユーザの演奏傾向を反映した表示態様の変更制御を行うことができる。
また、別の実施形態において、楽譜表示制御装置100のCPU101は、前記ステップS5でデータベースサーバ装置により作成された集計データの示す習熟度に応じて、前記ステップS3において参照する習熟度と表示態様の変化程度の対応付けたテーブル(図7)の前記補助表示閾値70を変更してよい。例えば、多数のユーザにおいて習熟度の低い箇所に対しては補助表示閾値70を広くすることにより、補助表示が行われやすくなる。これにより、当該箇所にユーザが注意関心を向けやすくする。楽譜表示制御装置100のCPU101は、習熟度に応じて補助表示を行う際(S3)、供給された集計データに含まれる補助表示閾値と、習熟度(得点平均値)を参照して補助表示を行う。
以上、この発明の一実施形態を説明したが、この発明は上記実施形態に限定されるものではなく、特許請求の範囲、及び明細書と図面に記載された技術的思想の範囲内において種々の変形が可能である。例えば、前述した各種の構成要素、様々な例、様々な変形例、異なる実施形態は、任意の組み合わせで組み合わされてよい。また、楽譜は、五線譜に限らず、ギターのタブ譜、鍵盤位置と時間位置に対応付けて個々の発音イベントを示す記号を配置した「ピアノロール」、ドラム譜、コード譜、歌詞表示、運指を示す運指譜等、ユーザが楽曲を演奏又は歌唱するために必要な情報を表示するものであれば、なんでもよい。歌詞表示は、例えば自動演奏に合わせて歌詞字幕がスクロール表示されるもの等である、
また、この発明の楽譜表示制御装置100は、図1の各部10〜16の少なくとも一部をネットワーク上の1以上のコンピュータ装置で分散して行うように構成されてもよい。また、この発明は、コンピュータに、演奏の手本となる楽譜を表示するステップと、演奏に応じた音データを入力するステップと、前記楽譜と前記入力された音データに基づいて、前記演奏を採点するステップと、前記採点の結果を蓄積するステップと、前記蓄積部に蓄積された少なくとも一部の採点の結果に基づいて、前記楽譜中の習熟度の高い個所の表示態様を、それ以外の部分とは異ならせるように変更するように制御するステップを実行させるプログラムの発明として構成及び実施されてもよい。また、この発明は、前記プログラムの各ステップを備える方法の発明として構成及び実施されてもよい。