JP4655455B2 - Performance recording / reproducing apparatus and program - Google Patents

Performance recording / reproducing apparatus and program Download PDF

Info

Publication number
JP4655455B2
JP4655455B2 JP2003188758A JP2003188758A JP4655455B2 JP 4655455 B2 JP4655455 B2 JP 4655455B2 JP 2003188758 A JP2003188758 A JP 2003188758A JP 2003188758 A JP2003188758 A JP 2003188758A JP 4655455 B2 JP4655455 B2 JP 4655455B2
Authority
JP
Japan
Prior art keywords
data
image data
performance
determination
variable
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.)
Expired - Fee Related
Application number
JP2003188758A
Other languages
Japanese (ja)
Other versions
JP2005024781A (en
Inventor
善登 山口
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 JP2003188758A priority Critical patent/JP4655455B2/en
Publication of JP2005024781A publication Critical patent/JP2005024781A/en
Application granted granted Critical
Publication of JP4655455B2 publication Critical patent/JP4655455B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、楽器を用いて行った演奏の内容を、その演奏者に視覚的に確認させるための技術に関する。
【0002】
【従来の技術】
楽器を用いた演奏は、発音させるべき楽音を発音させるための演奏操作を順次、行っていくことで実現される。その演奏を正しく行えるように支援する演奏誘導装置としては、例えば特許文献1に記載されたものが知られている。
【0003】
その演奏誘導装置では、手を示す図形を表示装置上に表示させ、その図形を通して手の動かし方を演奏者に教示することにより支援を行っている。また、演奏者の演奏状態、つまり演奏操作を行う手を撮影し、撮影した手を図形と重ねて表示することにより、表示装置上に表示される画像から、演奏操作を適切に行っているか否か演奏者が確認できるようにさせている。
【0004】
【特許文献1】
特開平7−36446号公報
【0005】
【発明が解決しようとする課題】
演奏中、手は複雑に動かすことが多く、その演奏中における手の動かし方までは決められていない。その動かし方が決められていないために、たとえ演奏者が正確な演奏を行っても、撮影した手の動きと図形のそれとは必ずしも一致しない。このようなこともあって、撮影した手を図形と重ねて表示させる場合、たとえ手と図形を区別しやすい形で表示させたとしても、それらの間に存在する演奏操作の相違を認識するのは極めて困難なのが普通である。演奏技術が低い演奏者の多くは、表示装置を見る余裕も無いことから、その相違を認識できるとは期待できないということになる。これらのことから、行った演奏の内容確認は、その演奏とは別に行えるようにすることが望ましいと考えられる。
【0006】
その確認は、例えば撮影した手の画像を記録し、それを再生することで行わせることができる。しかし、単に再生すると、撮影した手で行われた演奏操作が適切か否か必ずしも判りやすいとは限らない。また、行われた演奏操作自体、正確に認識するのが困難なこともある。その認識が困難であれば、行われた演奏操作が適切か否か判断するのは更に困難となる。このようなことから、演奏を行っている演奏者を演奏内容確認用に撮影する場合には、実際に行われた演奏操作が適切か否か容易に確認できるように再生することが望ましいと考えられる。
【0007】
例えば鍵盤楽器では、押鍵した鍵、その押鍵に使用した指、及びその押鍵を行ったタイミングを正確に把握できるようにする必要により、特許文献1に記載された演奏誘導装置のように、上方から手を撮影するのが望ましいと言える。しかし、上方からの撮影では、単に押鍵、離鍵したときの指の動き、その動きに伴う鍵の変化は比較的に小さい。例えば親指を他の指の下にくぐらせて鍵を押鍵する、いわゆる指くぐりと呼ばれる運指が行われた場合には、指くぐりさせた指は他の指に隠されてしまう。このようなことから、押鍵した鍵、その押鍵タイミングを正確に把握するのは必ずしも容易ではない。
【0008】
本発明の課題は、楽器の演奏を行っている演奏者を撮影して得られた画像を、実際に行われた演奏操作が適切か否か容易に確認できるように再生(表示)するための技術を提供することにある。
【0009】
【課題を解決するための手段】
本発明の記録再生装置は、楽器を用いて演奏を行った演奏者の画像データを記録及び記録された画像データを再生する装置であって、前記楽器に対して行うべき演奏操作を表すイベントデータ及びその操作タイミングを記億する演奏データ記億手段と、画像データ記憶手段と、第1及び第2のモードのいずれかを指定するモード指定手段と、このモード指定手段により第1のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて読み出すとともに、前記楽器を用いて演奏を行っている演奏者の画像データをリアルタイムに取得する画像データ取得手段と、前記読み出されイベントデータを参照して、前記演奏者が行ったと特定した演奏操作が適切か否か判定するとともに、判定結果を表わす判定データをリアルタイムに取得する判定データ取得手段と、前記画像データ取得手段が取得した画像データ及び前記判定データ取得手段が取得した判定データを、前記演奏データ記億手段に記億されたイベントデータに対応付けて前記画像データ記憶手段に記録させる画像データ記録制御手段と、前記モード指定手段により第2のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて順次読み出すとともに、当該読み出されたイベントデータに対応する前記画像データ及び判定データを前記画像データ記憶手段から読み出す読み出し手段と、この読み出し手段にて読み出された判定データが表す判定結果を判別するとともに、判定結果が適切を表すと判定された場合は、当該判定データに対応する画像データをそのまま表示装置上に表示させ、判定結果が不適切を表すと判定された場合は、前記判定データに対応する画像データに対して色付けを行って前記表示装置上に表示させる表示制御手段と、を具備する。
【0012】
本発明のプログラムは、上記本発明の演奏記録再生装置を実現させるための機能を搭載している。
【0013】
本発明では、楽器を用いて演奏を行っている演奏者の画像データをリアルタイムに取得し、その演奏中に演奏者が行った演奏操作、或いは演奏者が行うべき演奏操作をリアルタイムに特定し、特定した演奏操作を示すイベントデータを、取得する画像データと対応付け、演奏の記録として併せて保存する。そのようにしてそれらを対応付けることにより、画像データの再生時に、演奏者が行った演奏操作、或いは演奏者が行うべき演奏操作を判りやすい形で演奏者に提示することが可能となる。
【0014】
演奏者が行ったと特定した演奏操作が適切か否か判定し、その判定結果を示す判定データを画像データと対応付けて更に保存するようにした場合には、その演奏操作が適切か否か演奏者に判りやすい形で更に提示することが可能となる。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
<第1の実施の形態>
図1は、第1の実施の形態による演奏記録装置、及び演奏記録再生装置を用いて構築された演奏システムの構成を示す図である。
【0016】
その演奏システムは、図1に示すように、演奏記録・再生装置10に対し、カメラ20、表示装置30、及び電子楽器40をそれぞれケーブルで接続させることで構築されている。その演奏記録・再生装置10は、電子楽器40を演奏するユーザ(演奏者)の画像をカメラ20により撮影して記録し、その記録した画像を表示装置30上に表示させることで再生する。本実施の形態による演奏記録装置、及び演奏記録再生装置は、その演奏記録・再生装置10に搭載される形で実現されている。以降、演奏記録・再生装置10は「再生装置」と略記する。
【0017】
上記電子楽器40は、鍵盤41を備えたものである。図4に示すように、その鍵盤41を構成する鍵のなかで演奏者(ユーザ)が演奏操作を行った鍵、それを行った指、及びそのタイミングは、上方からの視点では把握し易い。このことから、カメラ20による撮影は上方から演奏者の手を対象に行うことを前提としている。
【0018】
図2は、上記再生装置10の回路構成を示す図である。
その再生装置10は、図2に示すように、装置10全体の制御を実行するCPU201と、CPU201が実行するプログラムや各種制御用データ等を格納したROM202と、CPU201がワークに用いるワークRAM203と、接続された表示装置30に、CPU201から指示された画像を表示させるディスプレイコントローラ204と、接続された電子楽器40からMIDIデータを入力できるMIDI入出力部205と、図1に示す再生スイッチ(SW)11、及び練習スイッチ(SW)12を有するスイッチ(SW)回路206と、CPU201の指示に従って楽音を発音させる音源システム207と、接続されたカメラ20を制御するためのカメラコントローラ208と、を備えて構成されている。
【0019】
上記音源システム207は、例えば発音させる楽音の波形データを生成する音源、その音源が生成した波形データをアナログのオーディオデータにD/A変換するD/A変換器、それが出力するオーディオデータの増幅を行う増幅器(アンプ)、及び増幅後のオーディオデータを音声に変換して放音するスピーカ、を備えたものである。
【0020】
以上の構成において動作を説明する。
図1に示す練習スイッチ12は、練習のためにユーザが電子楽器40を用いて演奏する様子の記録を指示するためのものであり、他方の再生スイッチ11は、記録した内容の再生を指示するためのものである。ここでは、それらのスイッチ11、12をユーザが操作した場合に着目して動作を説明することとする。
【0021】
先ず、練習スイッチ12をユーザが操作した場合の動作について説明する。
そのスイッチ12が操作された場合、本実施の形態では、表示装置30を介して押鍵すべき鍵を教示する形で演奏の誘導(ガイド)を行うようにしている。そのために、演奏の対象とする曲を、そのスイッチ12の操作前にユーザに指定させるようにしている。
【0022】
演奏のガイドは、曲の演奏で行うべき演奏操作、及びその演奏操作を行うべきタイミングを表す曲(演奏)データを参照して行う。その曲データは、演奏操作を示すイベントデータ(例えばMIDIデータ)毎に、その演奏操作を行うべきタイミングを示すタイムデータを付加して構成されたものである(図3参照)。特に詳細な説明は省略するが、ROM202には複数の曲データが格納されており、その曲データの何れかを選択するか、或いはMIDI入出力部205に曲データを受信させることでユーザは曲データを指定するようになっている。その受信は、不図示のスイッチをユーザが操作した場合に行うようになっている。
【0023】
ユーザが指定した曲データは、練習スイッチ12が操作されると、演奏をガイドするために、楽音を発音させない形で再生を開始する。それにより、押鍵すべき鍵、その鍵を押鍵しているべき期間を特定し、その鍵、及びその期間をユーザに教示する。
【0024】
そのように演奏をガイドすると、ユーザはそのガイドに沿って演奏を行う。このことから、本実施の形態では、演奏操作として押鍵が行われるべきタイミングでカメラ30に撮影を行わせている。その撮影は、CPU201がカメラコントローラ208を介してカメラ30に撮影を指示することで行われる。
【0025】
一方のカメラ30は、その指示に従って撮影を行い、その撮影で得た画像データを送信する。CPU201は、その画像データを、カメラコントローラ208を介して受け取り、ワークRAM203に確保した領域(図3の画像データエリア)に格納する。その撮影により図4に示すような画像のデータがリアルタイムに得られることとなる。
【0026】
画像データは、カメラ30で、或いはワークRAM203に格納する段階で圧縮される。しかし、ここでは説明上、便宜的に、圧縮や解凍についての説明は省略することとする。
このようにして、本実施の形態では、ユーザが押鍵を行うべきタイミングで手の状態を静止画で間欠的に撮影するようにしている。これは、動画では全体のデータ量が静止画と比較して非常に大きくなる、連続する静止画間の変化が比較的に大きくなって実際に行われた演奏操作の把握がより容易となる、楽音の発音開始タイミングはその終了タイミングよりも演奏内容に大きく影響する、といった理由からである。それにより、データ量を抑えつつ、演奏内容の正確な確認を行えるようにしている。押鍵時の静止画の換わりに動画を保存させても良く、或いはそれと併せて離鍵時の静止画を保存させるようにしても良い。
【0027】
保存した画像データは、曲データ中のイベントデータと対応付けている。それにより、曲データを利用して、保存した画像データを撮影順に、その撮影間隔を維持させつつ再生できるようにさせている。その再生は、表示装置30に表示させることで行う。
【0028】
しかし、そのように画像データを再生させたとしても、ユーザが演奏中に行った演奏操作が適切か否か正確、且つ容易に把握できるとは限らない。例えば撮影を行った際に、押鍵のためにユーザが指を移動させているような場合もありえる。このことから、本実施の形態では、ユーザが行った演奏操作が適切か否か示す判定データを画像データと併せて保存するようにしている。適切か否か判定する演奏操作としては、上述した理由から押鍵のみとしている。
【0029】
電子楽器40は、ユーザが鍵盤41に対して演奏操作、即ち押鍵、或いは離鍵を行う度に、その操作内容を示すMIDI(イベント)データをリアルタイムで再生装置10に送信する。送信されたMIDIデータは、再生装置10に搭載されたMIDI入出力部205で受信される。このことから、ユーザが行った演奏操作が適切か否かの判定は、再生中の曲データから特定される行うべき演奏操作が、MIDI入出力部205に受信したMIDIデータが示す演奏操作と一致するか否か確認することで行っている。
【0030】
図3は、ワークRAM203に格納されるデータを説明する図である。
図3中の曲データエリアは、練習スイッチ12への操作により演奏のガイドを行う曲の曲データを格納するために確保されるエリアである。その曲データは、上述したように、タイムデータ、及びイベントデータからなるデータ対が、その再生順に並べた形で構成されている。その曲データの格納は、ユーザが曲を指定する度に上書きする形で行う。
【0031】
画像データエリアは、カメラ20から送信された画像データ保存用に確保されるエリアである。そのエリア内には、画像データ毎にそれを保存するためのサブエリア(図3中「(1)」等を表記したエリア)が確保される。画像データ保存用のサブエリアについては、それに保存されるデータは演奏操作の結果を示すものであることから。以降、便宜的に「結果データエリア」と呼ぶことにする。
【0032】
その結果データエリアには、画像データの他に、図3中「NGF」「AD」と表記のデータが保存される。NGFは、演奏操作が適切に行われたか否か示す判定データであり、ADは、曲データエリアに保存された曲データを構成するイベントデータのなかで、画像データを得た撮影時に行うべきタイミングとなったイベントデータを示すデータである。そのデータとして、そのイベントデータが格納されているアドレスを示す値を保存している。ここでは、結果データエリアの場所を示すデータも「アドレス」と呼ぶことにする。NGF、ADについては、それらは変数として扱われることから、以降、変数を付して表記する。
【0033】
練習スイッチ12をユーザが操作すると、CPU201は、曲データエリアに格納された曲データを再生して演奏のガイドを行い、画像データエリア内でデータを格納する結果データエリアを順次、変更しながら、カメラ20に撮影させることで得られた画像データ、更には変数NGF、及びADを結果データエリアに格納する。そのようにして、ユーザが行った演奏の記録を行う。
【0034】
次に、再生スイッチ11をユーザが操作した場合の動作について説明する。
そのスイッチ11が操作されると、CPU201は、曲データエリアに格納された曲データの再生を開始し、画像データエリア内に確保の結果データエリアに格納されている画像データの再生(表示)は、そのエリアに格納された変数ADによって対応付けたイベントデータを処理するタイミングで行う。それにより、画像データの再生は、撮影時と同様に、曲データの再生進行に合わせて行う。
【0035】
カメラ20による撮影は、鍵を押鍵すべきタイミングで行っている。このため、表示させた画像データから、押鍵すべき鍵を押鍵している、或いはその鍵を押鍵しようとしていることが認識できれば、その鍵は適切に押鍵していることが確認できる。そうでなければ、つまり押鍵すべきでない鍵を押鍵している、押鍵すべき鍵を押鍵しようとしていない、といったようなことが認識できれば、押鍵すべき鍵を適切に押鍵していないことが確認できる。
【0036】
しかし、静止画の画像データの表示では、手の前後の動きは判りにくいのが実状である。そのため、本実施の形態では、変数NGFの値を画像データの表示に反映させている。その反映は、例えば対応付けられたイベントデータから特定される、表示画像中の押鍵すべき鍵(図4参照)の表示色を、変数NGFの値に応じて変化させることで行う。それにより、適切な押鍵を行ったか否か容易に確認できるようにさせている。
【0037】
演奏中、電子楽器40の位置は通常は動かない。このことから、そのような反映は、例えば鍵盤41を対象にした撮影を予め行わせて、撮影された画像中の各鍵の範囲を周知の画像処理により抽出しておき、抽出した範囲のなかでイベントデータに対応する範囲内の画素データの値を書き換えることで行うことができる。画像データの表示装置30への表示は、ディスプレイコントローラ204に、表示させる画像データを送出することで行われる。
【0038】
なお、変数NGFの値の画像データへの反映には、別の方法を用いても良い。例えば手や指、或いは鍵以外の場所の表示色を変化させることで行っても良く、或いはその値に応じた図形、若しくはメッセージなどを表示させることで行っても良い。
【0039】
CPU201は、押鍵を示すイベントデータを処理するタイミングとなる度に、それに対応付けられた画像データを画像データエリアから読み出し、それと併せて保存された変数NGFの値に応じた操作をその画像データに行ってディスプレイコントローラ204に出力する。そのようにして、画像データエリアに保存された画像データの再生を行う。
【0040】
次に、図5〜図13に示す各種フローチャートを参照して、再生装置10の動作について詳細に説明する。
図5は、全体処理のフローチャートである。始めに図5を参照して、その全体処理について詳細に説明する。その全体処理は、例えばCPU201が、ROM202に格納されているプログラムを実行することで実現される。
【0041】
電源がオンされると、先ず、ステップ501で装置10のイニシャライズを行い、所定の状態に設定する。次のステップ502では、スイッチ回路206から、再生スイッチ11や練習スイッチ12を含む各種スイッチに対して行われた操作内容を示す操作情報を受け取り、行われた操作に対応するためのスイッチ(SW)処理を実行する。その後はステップ503に移行する。
【0042】
ステップ503では、電子楽器40の鍵盤41に対して行われた演奏操作に対応するための鍵盤処理を実行する。続くステップ504では、練習スイッチ12への操作に対応するための練習処理を実行する。次のステップ505では、再生スイッチ11への操作に対応するための再生処理を実行する。その次のステップ506では、MIDI入出力部205からのMIDIデータの出力などに対応するためのその他の処理を実行する。その実行後は上記ステップ502に戻る。それにより、ステップ502〜506で形成される処理ループを、電源がオフされるまでの間、繰り返し実行する。
【0043】
以降は、上記全体処理内で実行されるサブルーチン処理について詳細に説明する。
図6は、上記ステップ502として実行されるスイッチ処理のフローチャートである。
【0044】
そのスイッチ処理では、図6に示すように、先ず、ステップ601で練習スイッチ12への操作に対応するための練習スイッチ処理を実行し、次のステップ602で再生スイッチ11への操作に対応するための再生スイッチ処理を実行し、その次のステップ603でその他のスイッチへの操作に対応するためのその他のスイッチ処理を実行した後、一連の処理を終了するようになっている。ここでは、図7、及び図8に示す各フローチャートを参照して、ステップ601、及び602として実行されるサブルーチン処理について詳細に説明する。
【0045】
上述したように、スイッチ回路206から、各種スイッチに対して行われた操作内容を示す操作情報を受け取る。その操作情報から、注目するスイッチが操作されたか否か判定するようになっている。ユーザが指定した曲データの曲データエリアへの保存は、ステップ603のその他のスイッチ処理を実行することで実現される。
【0046】
図7は、上記ステップ602として実行される再生スイッチ処理のフローチャートである。スイッチ処理内で実行されるサブルーチン処理では、始めに図7を参照して、再生スイッチ処理について詳細に説明する。
先ず、ステップ701では、再生スイッチ11が操作(オン)されたか否か判定する。スイッチ回路206から受け取った操作情報が、そのスイッチ11に対して操作が行われたことを示していた場合、判定はYESとなってステップ702に移行し、そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0047】
ステップ702では、再生管理用の変数PLAYFに、再生中であることを示す値の1を代入する。続くステップ703では、曲データエリア(図3参照)の先頭アドレスを示す値を変数MADに代入する。以降は、変数MADの値で指定されるアドレスからデータ(タイムデータ)を読み出して変数TIMEに代入し(ステップ704)、画像データエリア内で先頭に位置する結果データエリアを指定するアドレスの値を変数GADに代入し(ステップ705)、更にタイマインタラプト処理の実行禁止を解除してから(ステップ706)、一連の処理を終了する。
【0048】
曲データを構成するタイムデータは、予め定められた分解能で時間を表現する。そのタイマインタラプト処理は、その分解能でタイムデータが表現する時間を計時するために実行する処理である。その時間を計時するために、その分解能で表現できる最小時間(以降「最小単位時間」と呼ぶ)を周期として実行される。それの実行禁止解除は、その周期で発生する割り込む信号を有効にして、その割り込み信号の発生により実行させるようにすることである。
【0049】
図8は、図6に示すスイッチ処理内でステップ601として実行される練習スイッチ処理のフローチャートである。次に図8を参照して、その練習スイッチ処理について詳細に説明する。
先ず、ステップ801では、練習スイッチ12が操作(オン)されたか否か判定する。スイッチ回路206から受け取った操作情報が、そのスイッチ12に対して操作が行われたことを示していた場合、判定はYESとなってステップ802に移行し、そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0050】
ステップ802では、練習管理用の変数STFに、練習中であることを示す値の1を代入する。続くステップ803では、曲データエリア(図3参照)の先頭アドレスを示す値を変数ADに代入する。以降は、変数ADの値で指定されるアドレスからデータ(タイムデータ)を読み出して変数TIMEに代入し(ステップ804)、画像データエリアに格納されたデータをクリアすることで初期化を行い(ステップ805)、そのエリア内で先頭に位置する結果データエリアを指定するアドレスの値を変数GADに代入し(ステップ806)、更にタイマインタラプト処理の実行禁止を解除してから(ステップ807)、一連の処理を終了する。
【0051】
ステップ601の練習スイッチ処理を実行することにより、ユーザが行う演奏の記録として画像データ等を保存するうえでの準備が行われ、他方のステップ602の再生スイッチ処理を実行することにより、演奏の記録として保存された画像データを再生するうえでの準備が行われることとになる。
【0052】
図5に示す全体処理内で実行されるサブルーチン処理の説明に戻る。
図9は、その全体処理内でステップ503として実行される鍵盤処理のフローチャートである。次に図9を参照して、その鍵盤処理について詳細に説明する。ここでは、説明上、便宜的に、同時に放音させる楽音は1音であることを前提にしてそのフローチャートを示している。これは、以降、説明するサブルーチン処理のフローチャートでも同様である。
【0053】
電子楽器40は、鍵盤41に対してユーザが行った演奏操作を示すMIDI(イベント)データをリアルタイムで送信し、再生装置10は、そのMIDIデータをMIDI入出力部205で受信する。このことから、鍵盤処理では、その入出力部205が受信したMIDIデータを対象にした処理が行われる。その入出力部205は、受信したMIDIデータを、例えばワークRAM203に確保したエリア内に格納する。
【0054】
先ず、ステップ901では、MIDI入出力部205が受信したMIDIデータをそのエリア内から読み出して取得する。続くステップ902では、そのMIDIデータが示す演奏操作、つまり鍵の状態変化を判定する。MIDIデータを取得できなかった場合、その状態変化は無かったと判定し、ここで一連の処理を終了する。取得したMIDIデータが鍵の離鍵(OFF)を示すノートオフメッセージであった場合には、その旨が判定され、ステップ903に移行してそのMIDIデータが音高を示す鍵番号を変数KEYに代入し、更にステップ904でそのMIDIデータを音源システム207に送出した後、一連の処理を終了する。取得したMIDIデータが鍵の押鍵(ON)を示すノートオンメッセージであった場合には、その旨が判定されてステップ905に移行する。
【0055】
ステップ905では、そのMIDIデータが音高を示す鍵番号を変数KEYに代入し、続くステップ906では、そのMIDIデータを音源システム207に送出する。その後に移行するステップ907では、変数STFの値が1か、つまり、練習スイッチ12への操作により開始される練習中か否か判定する。その練習中であった場合、判定はYESとなってステップ908に移行し、そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0056】
本実施の形態では、変数NGFに、押鍵すべき鍵を押鍵すべきタイミングで行った場合に「0」、押鍵すべきでない鍵を押鍵すべきタイミングで行った場合に「1」、押鍵すべきでないタイミングで押鍵を行った場合に「2」、押鍵すべき鍵がありながらその押鍵を行わなかった場合に「3」をそれぞれ代入するようにしている。それにより、押鍵を適切に行ったか否か、つまり押鍵すべき鍵を押鍵すべきタイミングで行ったか否かの他に、適切に行えなかった押鍵がどのような理由で適切でないのか把握できるようにさせている。
【0057】
変数NGFに代入される値のなかで「0」〜「2」は、ユーザの押鍵によって特定することができる値である。ステップ908以降では、変数NGFに代入すべき値を特定してその値を保存するための処理が行われる。
先ず、ステップ908では、変数ONFの値が1か否か判定する。その変数ONFは、押鍵すべきタイミングを判定するために用意した変数であり、それに代入される1はそのタイミングであることを示し、0はそのタイミングでないことを示している。このことから、そのタイミングでなかった場合、判定はNOとなってステップ913に移行し、そうでない場合には、判定はYESとなってステップ909に移行する。
【0058】
ステップ909では、押鍵すべき鍵の鍵番号が代入される変数NOTEの鍵番号が、変数KEYに代入されたそれと等しくないか否か判定する。ユーザが押鍵すべき鍵を押鍵した場合、それらは一致することから、判定はNOとなり、ステップ910に移行して、画像データエリア内の結果データエリアのなかで変数GADの値により指定される結果データエリアに、0の値の変数NGFを書き込み、更にステップ912で変数OKFに1を代入した後、一連の処理を終了する。そうでない場合には、即ち押鍵すべきでない鍵をユーザが押鍵した場合には、それらは一致しないことから、判定はYESとなってステップ911に移行し、変数GADの値により指定される結果データエリアに、1の値の変数NGFを書き込んだ後、そのステップ912に移行する。
【0059】
上記変数OKFは、鍵を押鍵すべきタイミングとなった後、押鍵が行われたか否か判定するために用意した変数であり、それに代入される1は押鍵が行われたことを示し、0はその押鍵が行われなかったことを示している。ここでは、押鍵が行われたことから、それに1を代入している。
【0060】
上記ステップ908の判定がNOとなって移行するステップ913では、画像データエリア内の結果データエリアのなかで変数GADの値により指定される結果データエリアに、2の値の変数NGFを書き込む。その後は上記ステップ912に移行して、変数OKFに1を代入する。
【0061】
次に、図5に示す全体処理内でステップ504として実行される練習処理について、図10、及び図11に示すそのフローチャートを参照して詳細に説明する。そのフローチャートは、上述したように、同時に発音させる楽音は1音と前提した場合のものである。
【0062】
先ず、ステップ1001では、変数STFの値が1か否か判定する。練習中、つまり演奏ガイドを行っている場合、それには1が代入されていることから、判定はYESとなってステップ1002に移行する。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0063】
ステップ1002では、最小単位時間が経過したか否か判定する。その時間を計時するために実行するタイマインタラプト処理から引数として渡された変数の値がその経過を示していなかった場合、判定はNOとなり、ここで一連の処理を終了する。そうでない場合には、判定はYESとなり、次にステップ1003で変数TIMEの値をデクリメントした後、ステップ1004に移行する。
【0064】
ステップ1004では、変数TIMEの値が0以下か否か判定する。それに代入したタイムデータが処理タイミングを示すイベントデータの処理タイミングとなった場合、その値は0以下となることから、判定はYESとなってステップ1005に移行し、そうでない場合には、判定はNOとなって一連の処理を終了する。
【0065】
ステップ1005では、変数ADの値をインクリメントする。続くステップ1006では、変数ADの値が、曲データの最後に位置するデータが格納されたアドレス(最終アドレス)の値以下か否か判定する。曲データの再生が終了していない場合、その変数ADの値は最終アドレスの値以下となることから、判定はYESとなってステップ1009に移行する。そうでない場合には、判定はNOとなり、次にステップ1007で変数STFに0を代入し、更にステップ1008でタイマインタラプト処理の実行を禁止させた後、一連の処理を終了する。
【0066】
ステップ1009では、変数ADの値で指定されるアドレスからデータを読み出す。次のステップ1010では、そのデータの種類を判定する。そのデータがタイムデータだった場合、その旨が判定されてステップ1011に移行し、そのデータを変数TIMEに代入した後、一連の処理を終了する。そのデータがイベント(MIDI)データであった場合には、その旨が判定されて図11のステップ1012に移行する。
【0067】
そのステップ1012では、イベントデータが示すイベント(演奏操作)が押鍵(ノートオン)か否か判定する。そのイベントが押鍵でなかった場合、判定はNOとなってステップ1019に移行し、そうでない場合には、判定はYESとなってステップ1013に移行する。
【0068】
ステップ1013では、イベントデータが鍵番号で示す押鍵すべき鍵の押鍵をユーザに指示する。その指示方法としては様々な方法を用いることができるが、一例を挙げれば、例えば鍵盤41を表す鍵盤図形を表示装置30に表示させ、その図形のなかで押鍵すべき鍵の表示色を他の鍵と異ならせることで行う。
【0069】
ステップ1013に続くステップ1014では、変数ONFに1、変数OKFに0をそれぞれ代入する。その次に移行するステップ1015では、イベントデータが示す鍵盤号を変数NOTEに代入する。それ以降は、カメラコントローラ208を介してカメラ20に撮影を指示し、その指示によってカメラ20が送信する画像データをコントローラ208が受信するのを待ち(ステップ1016)、そのコントローラ208が受信した画像データを、変数GADの値で指定される結果データエリアにストアし(ステップ1017)、そのデータエリアに変数ADの値(押鍵(ノートオン)を示すイベントデータがストアされたアドレス値)を更にストアしてから(ステップ1018)、図10のステップ1005に戻る。
【0070】
上記ステップ1012の判定がNOとなって移行するステップ1019では、イベントデータが鍵番号で示す離鍵すべき鍵の離鍵をユーザに指示するために、押鍵すべきとして表示色を他の鍵と異ならせていた鍵の表示色を元の表示色に変更する。その後は、ステップ1020で変数ONFに0を代入してからステップ1021に移行する。
【0071】
ステップ1021では、変数OKFの値が0か否か判定する。離鍵すべきタイミングとなるまでにユーザが押鍵を行わなかった場合、それには0が代入されていることから判定はYESとなり、ステップ1022で変数GADの値により指定される結果データエリアに3の値の変数NGFを書き込んだ後、図10のステップ1005に戻る。そうでない場合には、判定はNOとなり、ステップ1023で変数OKFに0を代入した後、そのステップ1005に戻る。
【0072】
このようにして、画像データがストアされた結果データエリアには、0〜3のうちの何れかの値が変数NGFの値としてストアされる。それにより、押鍵が不適切となった理由をユーザが容易に把握できるようにさせている。
図12,及び図13は、図5に示す全体処理内でステップ505として実行される再生処理のフローチャートである。最後に図12、及び図13を参照して、その再生処理について詳細に説明する。
【0073】
先ず、ステップ1201では、変数PLAYFの値が1か否か判定する。再生中、つまり画像データエリアにストアした画像データの表示を行っている場合、それには1が代入されていることから、判定はYESとなってステップ1202に移行する。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0074】
ステップ1202〜1211の処理内容は、曲データエリアからデータを読み出すアドレス管理用の変数名が異なるだけで、図10に示すステップ1002〜1011のそれと基本的に同じである。このことから、それらの説明は省略する。図13のステップ1212には、ステップ1209で読み出したデータをステップ1210でイベントデータと判定した場合に移行する。
【0075】
そのステップ1212では、イベントデータが示すイベント(演奏操作)が押鍵(ノートオン)か否か判定する。そのイベントが押鍵でなかった場合、判定はNOとなり、次にステップ1013でそのイベントデータを音源システム207に送出した後、図12のステップ1205に戻る。そうでない場合には、判定はYESとなり、ステップ1214でイベントデータを音源システム207に送出してからステップ1215に移行する。
【0076】
このようにして、本実施の形態では、画像データの再生と並行させる形で、曲データの再生も併せて行っている。それにより、視覚と聴覚を使った演奏内容の確認をユーザが行えるようにさせている。
その聴覚により楽音の適切な発音開始タイミングやその楽音の音高は容易に認識できるようになる。それにより、聴覚から認識するそれらを視覚から認識するものと比較できるようになることから、ユーザは自身が行った押鍵のタイミング、その押鍵を行った鍵が適切か否かより容易に確認できるようになる。
【0077】
ステップ1215では、変数GADに、画像データエリア内で先頭に位置する結果データエリアを指定するアドレスの値を代入する。続くステップ1216では、変数GADの値で指定される結果データエリアから変数ADの値を読み出す。その次に移行するステップ1217では、変数MADの値とその変数ADの値が一致するか否か判定する。ステップ1214で音源システム207に送出のイベントデータと対応付けた画像データがストアされている結果データエリアから変数ADを読み出した場合、それらは一致することから、判定はYESとなってステップ1219に移行する。そうでない場合には、判定はNOとなり、次にステップ1218で変数GADの値を例えばインクリメントすることで進めた後、上記ステップ1216に戻る。それにより、音源システム207に送出のイベントデータと対応付けた画像データがストアされている結果データエリアを特定するまで、ステップ1216〜1218で形成される処理ループを繰り返し実行する。
【0078】
ステップ1219では、変数GADの値で指定される結果データエリアから画像データの読み出しを行う。次のステップ1220では、その結果データエリアから変数NGFの読み出しを行う。その後に移行するステップ1221では、変数NGFの値が0か否か判定する。その値が0であった場合、即ちイベントデータが示す押鍵をユーザが適切に行った場合、判定はYESとなり、ステップ1219で読み出した画像データをそのままディスプレイコントローラ204に送出して表示装置30に表示させた後、図12のステップ1205に戻る。そうでない場合には、判定はNOとなってステップ1223に移行する。
【0079】
ステップ1223では、変数NGFの値を判定する。変数NGFの値が1であった場合、その旨が判定されてステップ1224に移行し、読み出した画像データに対して表示色Aによる色付けを行う。同様に、その値が2であった場合には、その旨が判定されて移行するステップ1225で画像データに対して表示色Bによる色付けを行い、その値が3であった場合には、その旨が判定されて移行するステップ1226で画像データに対して表示色Cによる色付けを行う。そのようにして表示色A〜Cの何れかで色付けを行った後に移行するステップ1227では、その色付け後の画像データをディスプレイコントローラ204に送出して表示装置30に表示させる。その後は図12のステップ1205に戻る。その色付けは、上述したように、対応付けられたイベントデータから特定した押鍵すべき鍵(図4参照)を対象に行う。
<第2の実施の形態>
上記第1の実施の形態では、曲データの再生に合わせて画像データの再生(表示)を行うようにしている。これに対し、第2の実施の形態は、その画像データの再生をユーザの指示に応じて行うようにしたものである。
【0080】
第2の実施の形態における再生装置の構成は、第1の実施の形態におけるそれと基本的に同じである。動作も大部分は基本的に同じである。このため、第1の実施の形態の説明で付した符号をそのまま用いつつ、第1の実施の形態から異なる部分についてのみ説明することとする。
【0081】
第2の実施の形態では、第1の実施の形態と同様に、画像データが表示されていない状態で図1に示す再生スイッチ11をユーザが操作することでその画像データの表示(再生)を開始する。しかし、それ以降は、そのスイッチ11をユーザが操作する度に、表示させる画像データを先頭から順次、切り換えて表示していくようになっている。それにより、時間をかけて演奏操作の確認や検討をユーザが行えるようにさせている。
【0082】
上述したように画像データの再生を行うことから、図5に示す全体処理では、ステップ505として再生処理は実行しない。ステップ502として実行するスイッチ処理では、ステップ602として実行する再生スイッチ処理(図6参照)が第1の実施の形態から大きく異なっている。他は基本的に同じである。このことから、第2の実施の形態で実行される再生スイッチ処理についてのみ、図14、及び図15に示すそのフローチャートを参照して詳細に説明する。
【0083】
先ず、ステップ1401では、再生スイッチ11が操作(オン)されたか否か判定する。スイッチ回路206から受け取った操作情報が、そのスイッチ11に対して操作が行われたことを示していた場合、判定はYESとなってステップ1402に移行し、そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0084】
ステップ1402では、変数PLAYFの値が0か否か判定する。第1の実施の形態と同様に、画像データの再生中、それには1が代入される。このことから、画像データを再生中であった場合、判定はNOとなって図15のステップ1407に移行し、そうでない場合には、判定はYESとなってステップ1403に移行する。
【0085】
ステップ1403では、画像データエリア内で先頭に位置する結果データエリアを指定するアドレスの値を変数GADに代入する。その後は、変数PLAYFに1を代入し(ステップ1404)、変数GADの値で指定される結果データエリアから画像データを読み出し(ステップ1405)、読み出した画像データをディスプレイコントローラ204に送出することで表示装置30に表示させてから(ステップ1406)、一連の処理を終了する。
【0086】
結果データエリアには、変数NGF、ADの各値も併せてストアされている。このことから、画像データは、第1の実施の形態と同様に、変数ADの値から特定される鍵の表示色を変数NGFの値に応じた表示色で表示させても良い。
上記ステップ1402での判定のNOは、表示させる画像データを切り換えるために再生スイッチ11をユーザが操作したことを意味する。このことから、その判定がNOとなって移行する図15のステップ1407以降では、その切り替えを行うための処理が実行される。
【0087】
そのステップ1407では、変数GADの値をインクリメントする。続くステップ1408では、変数GADの値が、最後の画像データをストアした結果データエリアを指定する値以下か否か判定する。全ての画像データを表示させていない場合、変数GADの値はその結果データエリアを指定する値以下となることから、判定はYESとなり、図14のステップ1405に移行する。それにより、次に表示すべき画像データを表示する。一方、そうでない場合には、つまり全ての画像データの表示が終了した場合には、判定はNOとなり、変数PLAYFに0を代入し(ステップ1409)、表示装置30に表示させている画像を消去させてから(ステップ1410)、一連の処理を終了する。
<第3の実施の形態>
上記第1、及び第2の実施の形態では何れも、全ての画像データの再生(表示)を行っている。これに対し、第3の実施の形態は、全ての画像データのなかで再生の対象とする範囲を自動的に設定して再生を行うようにしたものである。
【0088】
第3の実施の形態における再生装置の構成は、第1の実施の形態におけるそれと基本的に同じである。動作も大部分は基本的に同じである。このため、第2の実施の形態と同様に、第1の実施の形態の説明で付した符号をそのまま用いつつ、第1の実施の形態から異なる部分についてのみ説明することとする。
【0089】
演奏操作の確認では、適切な演奏操作を確認するより、不適切な演奏操作がどこでどのように行ったかを確認するほうが重要であるといえる。このことから、第3の実施の形態では、最初の不適切な演奏操作(ここでは押鍵)から最後の不適切な演奏操作までを再生の対象とする範囲として設定し、その範囲内で撮影により得られた画像データのみをその範囲の先頭から再生するようにしている。それにより、不適切な演奏操作に着目した確認や検討をユーザがより容易に行えるようにさせている。
【0090】
上述したように画像データの再生を行うことから、図5に示す全体処理では、ステップ502として実行するスイッチ処理、より具体的には、そのスイッチ処理内でステップ602として実行する再生スイッチ処理(図6参照)、及びステップ505として実行する再生処理が第1の実施の形態から異なっている。他は基本的に同じである。このことから、それらのサブルーチン処理についてのみ説明する。
【0091】
図16、及び図17は、第3の実施の形態における再生スイッチ処理のフローチャートである。始めに図16、及び図17を参照して、そのスイッチ処理について詳細に説明する。そのスイッチ処理では、再生の対象とする範囲を設定するための処理が第1の実施の形態から追加されている。
【0092】
先ず、ステップ1601では、再生スイッチ11が操作(オン)されたか否か判定する。スイッチ回路206から受け取った操作情報が、そのスイッチ11に対して操作が行われたことを示していた場合、判定はYESとなってステップ1602に移行し、そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0093】
ステップ1602では、変数PLAYFに1、変数SF、SAD、及びEADに0をそれぞれ代入する。その代入後は、画像データエリア内で先頭に位置する結果データエリアを指定するアドレスの値を変数GADに代入し(ステップ1603)、変数GADの値で指定される結果データエリアから変数NGFを読み出してから(ステップ1604)、ステップ1605に移行する。上記変数SFは、不適切な押鍵の有無判定用の変数であり、変数SAD、及びEADは、範囲設定用の変数である。
【0094】
ステップ1605では、読み出した変数NGFの値(図中「NGF(GAD)」と表記)が0でないか否か、つまりそれにストアされている画像データが得られた撮影の際の押鍵が適切に行われていないか否か判定する。その押鍵が適切に行われた場合、変数NGFの値は0であることから、判定はNOとなってステップ1610に移行し、そうでない場合には、判定はYESとなってステップ1606に移行する。
【0095】
ステップ1606では、変数SFの値が0か否か判定する。それに初期値として代入される0は、不適切な押鍵が行われていないことを示す値である。このことから、直前に読み出した変数NGFの値が0以外の値であった場合、変数SFには0が代入されているために判定はYESとなり、次のステップ1607で変数SADに変数GADの値、その次のステップ1608で変数SFに1をそれぞれ代入した後、ステップ1610に移行する。そうでない場合には、判定はNOとなり、次のステップ1609で変数EADに変数GADの値を代入した後にそのステップ1610に移行する。
【0096】
このようにして、値が0でない変数NGFを最初に読み出したときの変数GADの値を変数SADに代入し、その代入後は、値が0でない変数NGFを読み出す度に、変数GADの値を変数EADに代入するようにしている。それにより、変数SAD、及びEADにはそれぞれ、最初、及び最後に不適切な押鍵が行われた際の撮影によって得られた画像データがストアされている結果データエリアを示す値が代入される。
【0097】
ステップ1610では、変数GADの値をインクリメントする。次に移行するステップ1611では、変数GADの値が、最後の画像データをストアした結果データエリアを指定する値以下か否か判定する。その値より変数GADの値が大きい場合、つまり結果データエリアにストアされている全ての変数NGFの値の確認が終了した場合、判定はNOとなって図17のステップ1612に移行する。そうでない場合には、判定はYESとなって上記ステップ1604に戻る。それにより、着目する結果データエリアが無くなるまで、画像データに着目した再生する範囲の特定を行う。
【0098】
図17のステップ1612では、変数SADの値が変数EADの値と等しいか否か判定する。変数NGFの値が0以外であれば、同じ初期値が代入されるそれらのうちの何れかの値が初期値以外の値に更新されるために、それらの値は一致しなくなる。このことから、不適切な押鍵が一度も行われていない場合、それらの値は等しくなって判定はYESとなり、ステップ1613で変数PLAYFに0を代入した後、一連の処理を終了する。そうでない場合には、判定はNOとなってステップ1614に移行する。
【0099】
変数PLAYFに0を代入することにより、画像データの再生は行われず、ユーザが行った画像データの再生指示は無効とされる。第3の実施の形態では、そのように無効とすることにより、画像データの再生に代えて、不適切な押鍵が一度も行われていないことをユーザに通知するようにしている。
【0100】
不適切な押鍵が行われた際の画像データから再生を開始すると、それに至る演奏の流れをユーザは把握することができない。そのため、第3の実施の形態では、上述したようにして特定した範囲の前後も状況に応じて再生するようにさせている。ステップ1614以降の処理は、その前後を含めた範囲を再生の対象として設定するために行われる。画像データの再生は、曲データの再生と合わせて行っていることから、その範囲は、曲データ中で再生する範囲を設定する形で行っている。
【0101】
先ず、ステップ1614では、変数SADの値から所定値αを引いた値が、画像データエリア内で先頭に位置する結果データエリアを示す値より小さいか否か判定する。所定値αは、流れを把握するうえで必要と思われる長さの演奏を行わせるために設定した値である。このため、演奏の最初の部分で行うべき押鍵を適切に行えなかったような場合、前者の値は後者の値より小さくなって判定はYESとなり、次にステップ1615で変数SADにその後者の値を代入した後、ステップ1617に移行する。そうでない場合には、判定はNOとなり、次にステップ1616で変数SADに前者の値を代入した後にそのステップ1617に移行する。
【0102】
ステップ1617では、変数SADの値で指定される結果データエリアから変数ADを読み出し、続くステップ1618では、変数ADの値をデクリメントした値を変数MADに代入する。それにより、流れを把握できる長さの演奏を直前に行うように、曲データ中で再生を開始するデータを指定する値を変数MADに代入し保存する。
【0103】
ステップ1618に続くステップ1619〜1623では、流れを把握できる長さの演奏を最後に行うように、曲データ中で再生を終了させるデータを指定する値を変数EADに代入し保存するための処理が行われる。それら各ステップの処理は、上記ステップ1614〜1618と同じ流れで行われるだけでなく、その処理内容も基本的には同じ考え方で決定されている。このようなことから、その説明は省略する。
【0104】
ステップ1623の処理を実行した後に移行するステップ1624では、変数MADの値で指定されるデータを曲データエリア(図3参照)から読み出し、変数TIMEに代入する。続くステップ1625では、変数GADに、画像データエリア内で先頭に位置する結果データエリアを指定する値を代入する。それに続くステップ1626では、タイマインタラプト処理の実行禁止を解除する。一連の処理はその実行後に終了する。
【0105】
このようにして、画像データを再生する範囲が曲データ中で再生する範囲によって設定される。その範囲を示す値が代入された変数MAD、EADは、図5に示す全体処理内でステップ505として実行する再生処理(図12参照)に渡される。それにより、第3の実施の形態では、変数EADを新たに再生処理に渡している。
【0106】
その再生処理では、変数MADを、曲データ中から読み出すデータを管理するために使用しており、それに代入される値に応じて処理内容を変更する必要性は存在しない。変数EADには、曲データ中で再生を終了するデータを示す値が代入されている。このことから、第3の実施の形態では、ステップ1206において、変数MADの値が変数EADの値以下か否か判定するように変更している。それ以外は基本的に第1の実施の形態のままであり、その判定結果に応じた移行先についても変更していない。
【0107】
なお、上記第1〜第3の実施の形態では、それぞれ異なる方法で画像データを再生するようになっているが、それらのうちの複数の方法でその再生を行えるようにしても良い。その再生時には、押鍵すべき鍵をユーザに具体的に提示するために、その鍵の音高を示すシンボル、或いは図形などを表示させるようにしても良い。撮影タイミングについては、曲データから特定される押鍵すべきタイミングとしているが、ユーザが実際に押鍵を行ったタイミングとしても良い。
【0108】
本実施の形態(第1〜第3の実施の形態)では、曲データから特定される押鍵すべきタイミングで撮影を行うことにより、曲データ中で対応付けるイベントデータが反映された画像データを保存している。しかし、画像データと対応付けるイベントデータは、ユーザが行った演奏操作を示すものとしても良く、それを併せて対応付けても良い。
【0109】
ユーザが行った演奏操作を示すイベントデータと対応付けられるようにする場合には、ユーザが行った演奏操作を表すデータを例えば曲データの形で保存しておくことが望ましい。そのようなデータを保存しておくことにより、実際の押鍵時に撮影して保存した画像データを適切なタイミングで表示させていくことができるだけでなく、押鍵した鍵の音高をシンボルや図形などの表示によって提示できるようになる。それにより、ユーザにとってはより望ましい形で演奏内容の確認を行えるようになる。
【0110】
本実施の形態は、演奏記録装置、及び演奏記録再生装置を一つの装置10に搭載した場合のものであるが、それらは別の装置として実現させても良い。そのようにした場合には、記録したデータは記録媒体、或いは通信ネットワークを介してやりとりさせれば良い。
【0111】
上述したような演奏記録装置、或いは演奏記録再生装置の動作を実現させるようなプログラムは、CD−ROM、DVD、或いは光磁気ディスク等の記録媒体に記録させて配布しても良い。或いは、公衆網等で用いられる伝送媒体を介して、そのプログラムの一部、若しくは全部を配信するようにしても良い。そのようにした場合には、ユーザーはプログラムを取得してコンピュータなどのデータ処理装置にロードすることにより、そのデータ処理装置に本発明を適用させることができる。このことから、記録媒体は、プログラムを配信する装置がアクセスできるものであっても良い。
【0112】
【発明の効果】
以上、説明したように本発明は、楽器を用いて演奏を行っている演奏者の画像データをリアルタイムに取得し、その演奏中に演奏者が行った演奏操作、或いは演奏者が行うべき演奏操作をリアルタイムに特定し、特定した演奏操作を示すイベントデータを、取得する画像データと対応付け、演奏の記録として併せて保存する。そのようにしてそれらを対応付けるため、画像データの再生時に、演奏者が行った演奏操作、或いは演奏者が行うべき演奏操作を判りやすい形で演奏者に提示することができる。
【0113】
演奏者が行ったと特定した演奏操作が適切か否か判定し、その判定結果を示す判定データを画像データと対応付けて更に保存するようにした場合には、その演奏操作が適切か否か演奏者に判りやすい形で更に提示することができるようになる。
【0114】
それらの提示は何れも、演奏中に実際に行われた演奏操作が適切か否かより容易に確認できるようにする。このため、演奏者はその確認を容易に行うことができるようになる。
【図面の簡単な説明】
【図1】第1の実施の形態による演奏記録装置、及び演奏記録再生装置を用いて構築された演奏システムの構成を示す図である。
【図2】第1の実施の形態による演奏記録装置、及び演奏記録再生装置を搭載した演奏記録・再生装置の回路構成を示す図である。
【図3】ワークRAMに格納されるデータを説明する図である。
【図4】カメラで撮影される画像を説明する図である。
【図5】全体処理のフローチャートである。
【図6】スイッチ処理のフローチャートである。
【図7】再生スイッチ処理のフローチャートである。
【図8】練習スイッチ処理のフローチャートである。
【図9】鍵盤処理のフローチャートである。
【図10】練習処理のフローチャートである。
【図11】練習処理のフローチャートである(続き)。
【図12】再生処理のフローチャートである。
【図13】再生処理のフローチャートである(続き)。
【図14】再生スイッチ処理のフローチャートである(第2の実施の形態)。
【図15】再生スイッチ処理のフローチャートである(第2の実施の形態:続き)。
【図16】再生スイッチ処理のフローチャートである(第3の実施の形態)。
【図17】再生スイッチ処理のフローチャートである(第3の実施の形態:続き)。
【符号の説明】
10 演奏記録・再生装置
11 再生スイッチ
12 練習スイッチ
20 カメラ
30 表示装置
40 電子楽器
41 鍵盤
201 CPU
202 ROM
203 ワークRAM
204 ディスプレイコントローラ
205 MIDI入出力部
206 スイッチ回路
208 カメラコントローラ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for allowing a performer to visually confirm the contents of a performance performed using a musical instrument.
[0002]
[Prior art]
A performance using a musical instrument is realized by sequentially performing performance operations for generating a musical sound to be generated. For example, a device described in Patent Document 1 is known as a performance guidance device that assists in correctly performing the performance.
[0003]
In the performance guidance device, a figure showing a hand is displayed on a display device, and the player is supported by teaching the player how to move the hand through the figure. Also, whether or not the performance operation is appropriately performed from the image displayed on the display device by photographing the performance state of the performer, that is, the hand performing the performance operation and displaying the photographed hand superimposed on the figure. Or let the performer check.
[0004]
[Patent Document 1]
JP-A-7-36446
[0005]
[Problems to be solved by the invention]
During the performance, the hands are often moved in a complicated manner, and how to move the hands during the performance is not determined. Since the movement method is not determined, even if the performer performs an accurate performance, the photographed hand movement does not necessarily match that of the figure. For this reason, when displaying a photographed hand overlaid with a figure, even if the hand and the figure are displayed in an easily distinguishable form, the difference in performance operations existing between them is recognized. Is usually extremely difficult. Many performers with low performance skills cannot afford to see the display device, and thus cannot expect to recognize the difference. For these reasons, it is considered desirable to be able to confirm the content of the performance performed separately from the performance.
[0006]
The confirmation can be performed, for example, by recording an image of a photographed hand and reproducing it. However, simply reproducing does not always make it easy to determine whether or not the performance operation performed with the photographed hand is appropriate. Also, it may be difficult to accurately recognize the performance operation performed. If the recognition is difficult, it becomes more difficult to determine whether or not the performance operation performed is appropriate. For this reason, when shooting a performer for performance confirmation, it is desirable to reproduce the performance so that it can be easily confirmed whether or not the performance operation actually performed is appropriate. It is done.
[0007]
For example, in a keyboard instrument, it is necessary to be able to accurately grasp the key pressed, the finger used to press the key, and the timing when the key is pressed. It can be said that it is desirable to photograph the hand from above. However, in photographing from above, the movement of the finger when the key is simply pressed or released, and the change of the key accompanying the movement is relatively small. For example, when a so-called “fingering” is performed in which a thumb is passed under another finger and a key is pressed, the finger that has been penetrated is hidden by the other finger. For this reason, it is not always easy to accurately grasp the key pressed and the key pressing timing.
[0008]
An object of the present invention is to reproduce (display) an image obtained by photographing a performer performing a musical instrument so that it can be easily confirmed whether or not the performance operation actually performed is appropriate. To provide technology.
[0009]
[Means for Solving the Problems]
  The recording / reproducing apparatus of the present invention is an apparatus for recording image data of a performer who performed using a musical instrument and reproducing the recorded image data, and event data representing performance operations to be performed on the musical instrument. And performance data storage means for storing the operation timing,When the image data storage means, the mode designation means for designating one of the first and second modes, and the first mode is designated by the mode designation means,The event data stored in the performance data storage means is read based on the corresponding operation timing.WithImage data acquisition means for acquiring in real time image data of a performer performing with the instrument;TheReferring to the event data, it is determined whether or not the performance operation specified as performed by the performer is appropriate, and determination data acquisition means for acquiring determination data representing a determination result in real time, and the image data acquisition means acquire The determined image data and the determination data acquired by the determination data acquisition means are associated with the event data stored in the performance data storage means.In the image data storage meansRecordMakeImage data recordingcontrolMeans,When the second mode is specified by the mode specifying means, the event data stored in the performance data storing means is sequentially read based on the corresponding operation timing, and the read event data The image data and the determination data corresponding to the reading data are read from the image data storage unit, the determination result represented by the determination data read by the reading unit is determined, and the determination result is determined to be appropriate. If the determination result is determined to be inappropriate, the image data corresponding to the determination data is displayed on the display device as it is, and the image data corresponding to the determination data is colored. Display control means for displaying on the display device;It comprises.
[0012]
  The program of the present invention has a function for realizing the performance recording / reproducing apparatus of the present invention.
[0013]
In the present invention, image data of a performer performing using a musical instrument is acquired in real time, a performance operation performed by the performer during the performance, or a performance operation to be performed by the performer is specified in real time, Event data indicating the specified performance operation is associated with image data to be acquired and stored together as a performance record. By associating them in this way, it is possible to present to the performer in an easily understandable manner the performance operation performed by the performer or the performance operation to be performed by the performer when reproducing the image data.
[0014]
When it is determined whether or not the performance operation specified by the performer is appropriate and the determination data indicating the determination result is further stored in association with the image data, the performance operation is determined whether or not the performance operation is appropriate. It is possible to further present it in a form that is easy to understand.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<First Embodiment>
FIG. 1 is a diagram showing a configuration of a performance system constructed using a performance recording apparatus and a performance recording / reproducing apparatus according to the first embodiment.
[0016]
As shown in FIG. 1, the performance system is constructed by connecting the camera 20, the display device 30, and the electronic musical instrument 40 to the performance recording / reproducing apparatus 10 with cables. The performance recording / reproducing apparatus 10 captures and records an image of a user (performer) who plays the electronic musical instrument 40 with the camera 20, and reproduces the recorded image by displaying it on the display device 30. The performance recording apparatus and the performance recording / reproducing apparatus according to the present embodiment are realized by being mounted on the performance recording / reproducing apparatus 10. Hereinafter, the performance recording / reproducing apparatus 10 is abbreviated as “reproducing apparatus”.
[0017]
The electronic musical instrument 40 is provided with a keyboard 41. As shown in FIG. 4, the keys performed by the performer (user) among the keys constituting the keyboard 41, the fingers that performed the keys, and the timing thereof are easy to grasp from the viewpoint from above. For this reason, it is assumed that shooting by the camera 20 is performed on the performer's hand from above.
[0018]
FIG. 2 is a diagram showing a circuit configuration of the reproducing apparatus 10.
As shown in FIG. 2, the playback apparatus 10 includes a CPU 201 that controls the entire apparatus 10, a ROM 202 that stores programs executed by the CPU 201 and various control data, a work RAM 203 that the CPU 201 uses for work, A display controller 204 that displays an image instructed by the CPU 201 on the connected display device 30, a MIDI input / output unit 205 that can input MIDI data from the connected electronic musical instrument 40, and a playback switch (SW) shown in FIG. 11 and a switch (SW) circuit 206 having a practice switch (SW) 12, a sound source system 207 that generates a musical sound according to instructions from the CPU 201, and a camera controller 208 for controlling the connected camera 20. It is configured.
[0019]
The sound source system 207 includes, for example, a sound source that generates waveform data of a musical sound to be generated, a D / A converter that D / A converts the waveform data generated by the sound source into analog audio data, and amplification of audio data output from the D / A converter And a speaker that converts the amplified audio data into sound and emits the sound.
[0020]
The operation in the above configuration will be described.
The practice switch 12 shown in FIG. 1 is for instructing the user to record the performance using the electronic musical instrument 40 for practice, and the other reproduction switch 11 instructs the reproduction of the recorded contents. Is for. Here, the operation will be described focusing on the case where the user operates these switches 11 and 12.
[0021]
First, the operation when the user operates the practice switch 12 will be described.
In the present embodiment, when the switch 12 is operated, performance guidance (guidance) is performed in the form of teaching the key to be pressed via the display device 30. For this purpose, the user is allowed to designate a song to be played before operating the switch 12.
[0022]
The performance guide is performed with reference to music (performance) data representing the performance operation to be performed in the performance of the music and the timing to perform the performance operation. The music data is configured by adding time data indicating the timing for performing the performance operation to each event data (for example, MIDI data) indicating the performance operation (see FIG. 3). Although a detailed description is omitted, a plurality of song data is stored in the ROM 202, and the user selects a song data or causes the MIDI input / output unit 205 to receive the song data, so that the user can select the song data. Data is specified. The reception is performed when a user operates a switch (not shown).
[0023]
When the practice switch 12 is operated, the music data designated by the user is started to be reproduced without generating a musical sound in order to guide the performance. As a result, the key to be pressed and the period during which the key should be pressed are specified, and the user is informed of the key and the period.
[0024]
When the performance is guided as such, the user performs along the guide. For this reason, in the present embodiment, the camera 30 is photographed at the timing when the key should be pressed as a performance operation. The shooting is performed by the CPU 201 instructing the camera 30 to perform shooting via the camera controller 208.
[0025]
One camera 30 shoots according to the instruction and transmits image data obtained by the shooting. The CPU 201 receives the image data via the camera controller 208 and stores it in the area secured in the work RAM 203 (image data area in FIG. 3). The image data as shown in FIG. 4 is obtained in real time by the photographing.
[0026]
The image data is compressed by the camera 30 or when stored in the work RAM 203. However, for convenience of explanation, explanations on compression and decompression are omitted here.
In this way, in this embodiment, the state of the hand is intermittently captured as a still image at the timing when the user should press the key. This is because the total amount of data in a moving image is very large compared to a still image, the change between successive still images is relatively large, and it is easier to grasp the performance operation actually performed. This is because the tone generation start timing of the musical sound has a greater influence on the performance than the end timing. As a result, the performance content can be accurately confirmed while suppressing the amount of data. A moving image may be stored instead of the still image at the time of pressing the key, or the still image at the time of releasing the key may be stored together with the moving image.
[0027]
The stored image data is associated with event data in the song data. Thereby, using the music data, the stored image data can be reproduced in the order of photographing while maintaining the photographing interval. The reproduction is performed by displaying on the display device 30.
[0028]
However, even if the image data is reproduced in this way, it is not always possible to accurately and easily grasp whether or not the performance operation performed by the user during the performance is appropriate. For example, when shooting, the user may move his / her finger to press the key. Therefore, in the present embodiment, determination data indicating whether or not the performance operation performed by the user is appropriate is stored together with the image data. As a performance operation for determining whether or not it is appropriate, only the key depression is performed for the reason described above.
[0029]
The electronic musical instrument 40 transmits MIDI (event) data indicating the contents of the operation to the playback device 10 in real time every time the user performs a performance operation, that is, a key is pressed or released from the keyboard 41. The transmitted MIDI data is received by the MIDI input / output unit 205 mounted on the playback apparatus 10. From this, it is determined whether or not the performance operation performed by the user is appropriate. The performance operation to be performed specified from the music data being reproduced matches the performance operation indicated by the MIDI data received by the MIDI input / output unit 205. It is done by confirming whether or not to do.
[0030]
FIG. 3 is a diagram for explaining data stored in the work RAM 203.
The song data area in FIG. 3 is an area reserved for storing song data of a song for performing performance guidance by operating the practice switch 12. As described above, the music data is configured in a form in which data pairs including time data and event data are arranged in the reproduction order. The song data is stored in such a manner that it is overwritten every time the user designates a song.
[0031]
The image data area is an area reserved for storing image data transmitted from the camera 20. In the area, a sub-area for storing each image data (area indicating “(1)” in FIG. 3) is secured. For the sub-area for storing image data, the data stored in the sub-area indicates the result of the performance operation. Hereinafter, for convenience, it will be referred to as a “result data area”.
[0032]
As a result, in addition to the image data, data represented as “NGF” and “AD” in FIG. 3 are stored in the data area. NGF is determination data indicating whether or not the performance operation is properly performed, and AD is a timing to be performed at the time of photographing when the image data is obtained in the event data constituting the song data stored in the song data area. This is data indicating the event data. As the data, a value indicating an address where the event data is stored is stored. Here, the data indicating the location of the result data area is also referred to as “address”. Since NGF and AD are treated as variables, they will be denoted with variables.
[0033]
When the user operates the practice switch 12, the CPU 201 reproduces the music data stored in the music data area to perform performance guidance, and sequentially changes the result data area for storing data in the image data area, Image data obtained by causing the camera 20 to shoot, and further variables NGF and AD are stored in the result data area. In this way, the performance performed by the user is recorded.
[0034]
Next, an operation when the user operates the playback switch 11 will be described.
When the switch 11 is operated, the CPU 201 starts reproduction of the song data stored in the song data area, and reproduction (display) of the image data stored in the data area is ensured in the image data area. The event data associated with the variable AD stored in the area is processed at the timing of processing. Thereby, the reproduction of the image data is performed in accordance with the progress of the reproduction of the music data as in the case of shooting.
[0035]
Shooting by the camera 20 is performed at the timing when the key should be pressed. For this reason, if it can be recognized from the displayed image data that the key to be pressed is being pressed or if the key is to be pressed, it can be confirmed that the key is being pressed appropriately. . Otherwise, that is, if you can recognize that you are pressing a key that should not be pressed, or that you are not trying to press a key that should be pressed, press the key that should be pressed appropriately. It can be confirmed that it is not.
[0036]
However, in the display of still image data, the actual situation is that the forward / backward movement of the hand is difficult to understand. Therefore, in the present embodiment, the value of the variable NGF is reflected in the display of the image data. The reflection is performed, for example, by changing the display color of the key to be pressed (see FIG. 4) specified in the associated event data according to the value of the variable NGF. Thereby, it is possible to easily confirm whether or not an appropriate key depression has been performed.
[0037]
During the performance, the position of the electronic musical instrument 40 usually does not move. For this reason, such reflection is performed by, for example, performing photographing for the keyboard 41 in advance, extracting the range of each key in the photographed image by known image processing, and within the extracted range. This can be done by rewriting the value of the pixel data within the range corresponding to the event data. The image data is displayed on the display device 30 by sending image data to be displayed to the display controller 204.
[0038]
Note that another method may be used to reflect the value of the variable NGF in the image data. For example, it may be performed by changing the display color of a place other than a hand, a finger, or a key, or may be performed by displaying a graphic or a message corresponding to the value.
[0039]
The CPU 201 reads the image data associated with the event data indicating the key depression from the image data area every time it processes the event data indicating the key depression, and performs an operation corresponding to the value of the variable NGF stored together with the image data. And output to the display controller 204. In this way, the image data stored in the image data area is reproduced.
[0040]
Next, the operation of the playback apparatus 10 will be described in detail with reference to various flowcharts shown in FIGS.
FIG. 5 is a flowchart of the entire process. First, the entire process will be described in detail with reference to FIG. The overall processing is realized by the CPU 201 executing a program stored in the ROM 202, for example.
[0041]
When the power is turned on, first, in step 501, the apparatus 10 is initialized and set to a predetermined state. In the next step 502, switch information (SW) for receiving the operation information indicating the operation contents performed on the various switches including the reproduction switch 11 and the practice switch 12 from the switch circuit 206 and corresponding to the performed operation. Execute the process. Thereafter, the process proceeds to step 503.
[0042]
In step 503, a keyboard process for responding to a performance operation performed on the keyboard 41 of the electronic musical instrument 40 is executed. In the subsequent step 504, a practice process for responding to an operation on the practice switch 12 is executed. In the next step 505, a reproduction process for responding to an operation on the reproduction switch 11 is executed. In the next step 506, other processing for responding to output of MIDI data from the MIDI input / output unit 205 is executed. After the execution, the process returns to step 502. Thereby, the processing loop formed in steps 502 to 506 is repeatedly executed until the power is turned off.
[0043]
Hereinafter, a subroutine process executed in the overall process will be described in detail.
FIG. 6 is a flowchart of the switch process executed as step 502 described above.
[0044]
In the switch process, as shown in FIG. 6, first, a practice switch process for responding to the operation on the practice switch 12 is executed in step 601, and in order to respond to the operation on the playback switch 11 in the next step 602. The reproduction switch process is executed, and in the next step 603, the other switch process for responding to the operation of the other switch is executed, and then the series of processes is terminated. Here, the subroutine processing executed as steps 601 and 602 will be described in detail with reference to the flowcharts shown in FIGS.
[0045]
As described above, operation information indicating the contents of operations performed on various switches is received from the switch circuit 206. It is determined from the operation information whether or not the switch of interest has been operated. Saving the song data designated by the user in the song data area is realized by executing other switch processing in step 603.
[0046]
FIG. 7 is a flowchart of the regeneration switch process executed as step 602 above. In the subroutine process executed in the switch process, the playback switch process will be described in detail with reference to FIG.
First, in step 701, it is determined whether or not the regeneration switch 11 has been operated (turned on). If the operation information received from the switch circuit 206 indicates that the switch 11 has been operated, the determination is yes and the process moves to step 702; otherwise, the determination is no. Here, a series of processing ends.
[0047]
In step 702, a value of 1 indicating that playback is in progress is assigned to the playback management variable PLAYF. In the subsequent step 703, a value indicating the head address of the music data area (see FIG. 3) is substituted into the variable MAD. Thereafter, data (time data) is read from the address specified by the value of the variable MAD and substituted into the variable TIME (step 704), and the value of the address specifying the result data area positioned at the head in the image data area is set. Substituting into the variable GAD (step 705), canceling the prohibition of execution of the timer interrupt process (step 706), and ending the series of processes.
[0048]
The time data constituting the music data expresses time with a predetermined resolution. The timer interrupt process is a process executed to count the time represented by the time data with the resolution. In order to measure the time, the minimum time that can be expressed with the resolution (hereinafter referred to as “minimum unit time”) is executed as a cycle. To cancel the prohibition of execution, the interrupt signal generated in the cycle is made valid and executed by generation of the interrupt signal.
[0049]
FIG. 8 is a flowchart of the practice switch process executed as step 601 in the switch process shown in FIG. Next, the practice switch process will be described in detail with reference to FIG.
First, in step 801, it is determined whether or not the practice switch 12 has been operated (turned on). If the operation information received from the switch circuit 206 indicates that the switch 12 has been operated, the determination is yes and the process moves to step 802. Otherwise, the determination is no. Here, a series of processing ends.
[0050]
In step 802, 1 is assigned to the practice management variable STF, indicating a value of practice. In the subsequent step 803, a value indicating the head address of the music data area (see FIG. 3) is substituted into the variable AD. Thereafter, data (time data) is read from the address specified by the value of the variable AD and substituted into the variable TIME (step 804), and initialization is performed by clearing the data stored in the image data area (step 804). 805) After substituting the value of the address designating the result data area located at the head in the area into the variable GAD (step 806), and further canceling the prohibition of execution of the timer interrupt processing (step 807), The process ends.
[0051]
By executing the practice switch process in step 601, preparation for saving image data and the like as a performance record performed by the user is performed, and by performing the playback switch process in the other step 602, the performance recording is performed. As a result, preparation for reproducing the image data stored as is performed.
[0052]
Returning to the description of the subroutine processing executed in the overall processing shown in FIG.
FIG. 9 is a flowchart of the keyboard process executed as step 503 in the overall process. Next, the keyboard process will be described in detail with reference to FIG. Here, for convenience of explanation, the flowchart is shown on the assumption that one tone is emitted at the same time. The same applies to flowcharts of subroutine processing described below.
[0053]
The electronic musical instrument 40 transmits MIDI (event) data indicating a performance operation performed by the user to the keyboard 41 in real time, and the playback apparatus 10 receives the MIDI data at the MIDI input / output unit 205. For this reason, in the keyboard process, a process for the MIDI data received by the input / output unit 205 is performed. The input / output unit 205 stores the received MIDI data in an area secured in the work RAM 203, for example.
[0054]
First, in step 901, the MIDI data received by the MIDI input / output unit 205 is read and acquired from the area. In the subsequent step 902, a performance operation indicated by the MIDI data, that is, a key state change is determined. If the MIDI data cannot be acquired, it is determined that the state has not changed, and the series of processing ends here. If the acquired MIDI data is a note-off message indicating the key release (OFF), it is determined so, and the process proceeds to step 903 where the key number indicating the pitch of the MIDI data is set in the variable KEY. Further, after the MIDI data is sent to the sound source system 207 in step 904, a series of processing is terminated. If the acquired MIDI data is a note-on message indicating key depression (ON), it is determined to that effect and the process proceeds to step 905.
[0055]
In step 905, the key number indicating the pitch of the MIDI data is substituted into the variable KEY, and in the subsequent step 906, the MIDI data is sent to the sound source system 207. In step 907 which moves to thereafter, it is determined whether or not the value of the variable STF is 1, that is, whether or not the practice is started by the operation of the practice switch 12. If so, the determination is yes and the process moves to step 908. If not, the determination is no and the series of processes ends here.
[0056]
In the present embodiment, the variable NGF is “0” when the key to be pressed is pressed at the timing to press the key, and “1” when the key that should not be pressed is pressed at the timing to press the key. “2” is substituted when the key is depressed at a timing when the key should not be depressed, and “3” is substituted when there is a key to be depressed but the key is not depressed. As a result, in addition to whether or not the key was pressed properly, that is, whether or not the key to be pressed was performed at the timing to be pressed, why the key pressing that could not be performed properly is not appropriate. I'm trying to understand.
[0057]
Among the values assigned to the variable NGF, “0” to “2” are values that can be specified by the user's key depression. In step 908 and subsequent steps, processing for specifying a value to be substituted into the variable NGF and storing the value is performed.
First, in step 908, it is determined whether or not the value of the variable ONF is 1. The variable ONF is a variable prepared for determining the timing at which the key should be pressed, and 1 assigned to it indicates that it is the timing, and 0 indicates that it is not the timing. Therefore, if it is not the timing, the determination is NO and the process proceeds to step 913. Otherwise, the determination is YES and the process proceeds to step 909.
[0058]
In step 909, it is determined whether or not the key number of the variable NOTE to which the key number of the key to be pressed is assigned is not equal to that assigned to the variable KEY. If the user presses the key to be pressed, they match, so the determination is no, the process moves to step 910, and is designated by the value of the variable GAD in the result data area in the image data area. In the result data area, a variable NGF having a value of 0 is written. Further, in step 912, 1 is substituted into the variable OKF, and then a series of processing is terminated. If not, that is, if the user presses a key that should not be pressed, since they do not match, the determination is YES, the process moves to step 911, and is designated by the value of the variable GAD. After the variable NGF having a value of 1 is written in the result data area, the process proceeds to step 912.
[0059]
The variable OKF is a variable prepared for determining whether or not the key has been pressed after the key should be pressed, and 1 assigned to it indicates that the key has been pressed. , 0 indicates that the key was not pressed. Here, since the key was pressed, 1 is substituted for it.
[0060]
In step 913, where the determination in step 908 is NO and the process proceeds to step 913, the variable NGF having a value of 2 is written into the result data area designated by the value of the variable GAD in the result data area in the image data area. Thereafter, the process proceeds to step 912, and 1 is assigned to the variable OKF.
[0061]
Next, the practice process executed as step 504 in the overall process shown in FIG. 5 will be described in detail with reference to the flowcharts shown in FIGS. 10 and 11. As described above, the flowchart is based on the assumption that the musical sound to be generated simultaneously is one sound.
[0062]
First, in step 1001, it is determined whether the value of the variable STF is 1. During practice, that is, when performing a performance guide, since 1 is assigned to it, the determination is YES, and the routine proceeds to step 1002. Otherwise, the determination is no and the series of processing ends here.
[0063]
In step 1002, it is determined whether the minimum unit time has elapsed. If the value of the variable passed as an argument from the timer interrupt process executed to measure the time does not indicate the progress, the determination is no and the series of processes ends here. Otherwise, the determination is yes, and after decrementing the value of the variable TIME at step 1003, the routine proceeds to step 1004.
[0064]
In step 1004, it is determined whether or not the value of the variable TIME is 0 or less. When the time data assigned to it becomes the processing timing of the event data indicating the processing timing, the value is 0 or less, so the determination is YES and the process proceeds to step 1005. Otherwise, the determination is It becomes NO and a series of processes are complete | finished.
[0065]
In step 1005, the value of the variable AD is incremented. In the next step 1006, it is determined whether or not the value of the variable AD is equal to or less than the value of the address (final address) where the data located at the end of the music data is stored. If the reproduction of the song data has not ended, the value of the variable AD is equal to or less than the value of the final address, so the determination is YES and the process moves to step 1009. Otherwise, the determination is no, next, in step 1007, 0 is substituted into the variable STF, and further, in step 1008, the execution of the timer interrupt process is prohibited, and then the series of processes ends.
[0066]
In step 1009, data is read from the address specified by the value of the variable AD. In the next step 1010, the type of the data is determined. If the data is time data, it is determined so and the process proceeds to step 1011. After the data is substituted into the variable TIME, a series of processing ends. If the data is event (MIDI) data, the fact is determined and the process proceeds to step 1012 in FIG.
[0067]
In step 1012, it is determined whether or not the event (performance operation) indicated by the event data is a key depression (note on). If the event is not a key depression, the determination is no and the process proceeds to step 1019. If not, the determination is yes and the process proceeds to step 1013.
[0068]
In step 1013, the user is instructed to press the key to be pressed, which is indicated by the key number in the event data. Various methods can be used as the instruction method. For example, a keyboard figure representing the keyboard 41 is displayed on the display device 30, and the display color of the key to be pressed in the figure is changed. It is done by making it different from the key.
[0069]
In step 1014 following step 1013, 1 is substituted for variable ONF and 0 is substituted for variable OKF. In the next step 1015, the keyboard number indicated by the event data is assigned to the variable NOTE. Thereafter, the camera 20 is instructed to take a picture via the camera controller 208, and the controller 208 waits for the controller 208 to receive the image data transmitted by the instruction (step 1016), and the image data received by the controller 208 is received. Is stored in the result data area specified by the value of the variable GAD (step 1017), and the value of the variable AD (address value at which event data indicating key press (note-on) is stored) is further stored in the data area. Then (step 1018), the process returns to step 1005 in FIG.
[0070]
In step 1019 where the determination in step 1012 is NO and the process proceeds to step 1019, the display color is changed to another key to indicate that the key should be released in order to instruct the user to release the key to be released indicated by the key number in the event data. Change the display color of the key that was different from the previous one to the original display color. Thereafter, 0 is substituted into the variable ONF in step 1020, and then the process proceeds to step 1021.
[0071]
In step 1021, it is determined whether or not the value of the variable OKF is zero. If the user does not press the key before it is time to release the key, 0 is substituted for it, so the determination is YES, and the result data area specified by the value of the variable GAD is set to 3 in step 1022. After writing the variable NGF of the value of, return to step 1005 in FIG. Otherwise, the determination is no, 0 is substituted for variable OKF in step 1023, and the process returns to step 1005.
[0072]
In this way, in the result data area in which the image data is stored, any value from 0 to 3 is stored as the value of the variable NGF. Thereby, the user can easily understand the reason why the key depression becomes inappropriate.
12 and 13 are flowcharts of the reproduction process executed as step 505 in the overall process shown in FIG. Finally, the reproduction process will be described in detail with reference to FIGS.
[0073]
First, in step 1201, it is determined whether or not the value of the variable PLAYF is 1. During reproduction, that is, when displaying the image data stored in the image data area, since 1 is substituted for it, the determination is YES, and the routine proceeds to step 1202. Otherwise, the determination is no and the series of processing ends here.
[0074]
The processing contents of steps 1202 to 1211 are basically the same as those of steps 1002 to 1011 shown in FIG. 10 except that the variable name for address management for reading data from the song data area is different. Therefore, their description is omitted. The process proceeds to step 1212 in FIG. 13 when the data read in step 1209 is determined as event data in step 1210.
[0075]
In step 1212, it is determined whether or not the event (performance operation) indicated by the event data is a key press (note-on). If the event is not a key depression, the determination is NO, and then the event data is sent to the sound source system 207 in step 1013, and the process returns to step 1205 in FIG. Otherwise, the determination is yes, and the event data is sent to the sound source system 207 in step 1214, and then the process proceeds to step 1215.
[0076]
Thus, in this embodiment, the music data is also reproduced in parallel with the reproduction of the image data. As a result, the user can check the performance contents using visual and auditory senses.
That hearing makes it possible to easily recognize the appropriate sound generation start timing of the musical sound and the pitch of the musical sound. As a result, it is possible to compare those recognized from the auditory sense with those recognized from the visual sense, so the user can more easily confirm the timing of the key press performed by the user and whether or not the key pressed is appropriate. become able to.
[0077]
In step 1215, the value of the address designating the result data area located at the head in the image data area is substituted for the variable GAD. In the following step 1216, the value of the variable AD is read from the result data area specified by the value of the variable GAD. In the next step 1217, it is determined whether or not the value of the variable MAD matches the value of the variable AD. If the variable AD is read from the result data area in which the image data associated with the event data sent to the sound source system 207 is stored in step 1214, they match, so the determination is yes and the process moves to step 1219. To do. Otherwise, the determination is no, and in step 1218, the value of the variable GAD is incremented, for example, and then the process returns to step 1216. Accordingly, the processing loop formed in steps 1216 to 1218 is repeatedly executed until the result data area in which the image data associated with the event data transmitted to the sound source system 207 is stored is specified.
[0078]
In step 1219, image data is read from the result data area specified by the value of the variable GAD. In the next step 1220, the variable NGF is read from the data area as a result. In step 1221 which moves to after that, it is determined whether or not the value of the variable NGF is zero. If the value is 0, that is, if the user appropriately presses the key indicated by the event data, the determination is YES, and the image data read in step 1219 is sent to the display controller 204 as it is and sent to the display device 30. After the display, the process returns to step 1205 in FIG. Otherwise, the determination is no and the process moves to step 1223.
[0079]
In step 1223, the value of the variable NGF is determined. If the value of the variable NGF is 1, it is determined so and the process proceeds to step 1224, where the read image data is colored with the display color A. Similarly, if the value is 2, the image data is colored with the display color B in step 1225 to which the determination is made, and when the value is 3, In step 1226 where the determination is made and the process proceeds, the image data is colored with the display color C. In step 1227, the process proceeds after coloring in any one of the display colors A to C, the image data after the coloring is sent to the display controller 204 and displayed on the display device 30. Thereafter, the process returns to step 1205 in FIG. As described above, the coloring is performed on the key to be pressed (see FIG. 4) specified from the associated event data.
<Second Embodiment>
In the first embodiment, image data is reproduced (displayed) in accordance with the reproduction of music data. On the other hand, in the second embodiment, the reproduction of the image data is performed in accordance with a user instruction.
[0080]
The configuration of the playback device in the second embodiment is basically the same as that in the first embodiment. The operation is basically the same for the most part. For this reason, only the parts different from the first embodiment will be described while using the reference numerals in the description of the first embodiment as they are.
[0081]
In the second embodiment, as in the first embodiment, when the user operates the playback switch 11 shown in FIG. 1 in a state where the image data is not displayed, the display (playback) of the image data is performed. Start. However, after that, every time the user operates the switch 11, the image data to be displayed is sequentially switched and displayed from the top. As a result, it is possible to allow the user to check and study performance operations over time.
[0082]
Since the image data is reproduced as described above, the reproduction process is not executed as step 505 in the entire process shown in FIG. In the switch process executed as step 502, the regeneration switch process (see FIG. 6) executed as step 602 is greatly different from that of the first embodiment. Others are basically the same. For this reason, only the regeneration switch process executed in the second embodiment will be described in detail with reference to the flowcharts shown in FIGS.
[0083]
First, in step 1401, it is determined whether or not the regeneration switch 11 has been operated (turned on). If the operation information received from the switch circuit 206 indicates that the switch 11 has been operated, the determination is yes and the process moves to step 1402, otherwise the determination is no. Here, a series of processing ends.
[0084]
In step 1402, it is determined whether or not the value of the variable PLAYF is zero. As in the first embodiment, 1 is assigned to the image data during reproduction. From this, if the image data is being reproduced, the determination is no and the process proceeds to step 1407 in FIG. 15, and if not, the determination is yes and the process proceeds to step 1403.
[0085]
In step 1403, the value of the address designating the result data area located at the head in the image data area is substituted into the variable GAD. Thereafter, 1 is assigned to the variable PLAYF (step 1404), the image data is read from the result data area specified by the value of the variable GAD (step 1405), and the read image data is sent to the display controller 204 for display. After being displayed on the device 30 (step 1406), a series of processing is terminated.
[0086]
Each value of variables NGF and AD is also stored in the result data area. From this, the image data may be displayed with the display color of the key specified from the value of the variable AD in the display color corresponding to the value of the variable NGF, as in the first embodiment.
The determination NO in step 1402 means that the user has operated the playback switch 11 to switch the image data to be displayed. For this reason, in step 1407 and subsequent steps in FIG. 15 in which the determination is NO and the process proceeds, processing for switching is executed.
[0087]
In step 1407, the value of the variable GAD is incremented. In the subsequent step 1408, it is determined whether or not the value of the variable GAD is equal to or less than a value for designating the result data area storing the last image data. If all the image data is not displayed, the value of the variable GAD becomes equal to or less than the value that designates the data area as a result. Therefore, the determination is YES, and the process proceeds to step 1405 in FIG. Thereby, the image data to be displayed next is displayed. On the other hand, if this is not the case, that is, if the display of all the image data has been completed, the determination is no, 0 is substituted into the variable PLAYF (step 1409), and the image displayed on the display device 30 is erased. After that (step 1410), the series of processing is terminated.
<Third Embodiment>
In the first and second embodiments, all image data is reproduced (displayed). On the other hand, in the third embodiment, reproduction is performed by automatically setting a range to be reproduced among all image data.
[0088]
The configuration of the playback device in the third embodiment is basically the same as that in the first embodiment. The operation is basically the same for the most part. For this reason, like the second embodiment, only the parts different from the first embodiment will be described while using the reference numerals in the description of the first embodiment as they are.
[0089]
In confirming the performance operation, it can be said that it is more important to confirm where and how the inappropriate performance operation was performed, rather than confirming the appropriate performance operation. For this reason, in the third embodiment, the range from the first inappropriate performance operation (here, key pressing) to the last inappropriate performance operation is set as a playback target range, and shooting is performed within that range. Only the image data obtained by the above is reproduced from the beginning of the range. This makes it easier for the user to perform confirmation and examination focusing on inappropriate performance operations.
[0090]
Since the image data is reproduced as described above, in the entire process shown in FIG. 5, the switch process executed as step 502, more specifically, the playback switch process executed as step 602 in the switch process (FIG. 5). 6) and the reproduction processing executed as step 505 is different from that of the first embodiment. Others are basically the same. Therefore, only those subroutine processes will be described.
[0091]
16 and 17 are flowcharts of the regeneration switch process according to the third embodiment. First, the switch process will be described in detail with reference to FIGS. 16 and 17. In the switch process, a process for setting a range to be reproduced is added from the first embodiment.
[0092]
First, in step 1601, it is determined whether or not the regeneration switch 11 has been operated (turned on). If the operation information received from the switch circuit 206 indicates that an operation has been performed on the switch 11, the determination is yes and the process moves to step 1602, otherwise the determination is no. Here, a series of processing ends.
[0093]
In step 1602, 1 is substituted for the variable PLAYF, and 0 is substituted for the variables SF, SAD, and EAD. After the substitution, the value of the address designating the result data area located at the head in the image data area is substituted into the variable GAD (step 1603), and the variable NGF is read from the result data area designated by the value of the variable GAD. (Step 1604), the process proceeds to Step 1605. The variable SF is a variable for determining whether or not there is an inappropriate key press, and the variables SAD and EAD are variables for setting a range.
[0094]
In step 1605, whether or not the value of the read variable NGF (denoted as “NGF (GAD)” in the figure) is not 0, that is, the key depression at the time of shooting from which the image data stored therein is obtained is appropriate. It is determined whether it is not performed. If the key is properly pressed, the value of the variable NGF is 0. Therefore, the determination is no and the process proceeds to step 1610. Otherwise, the determination is yes and the process proceeds to step 1606. To do.
[0095]
In step 1606, it is determined whether or not the value of the variable SF is zero. 0 assigned as an initial value is a value indicating that improper key pressing is not performed. From this, if the value of the variable NGF read immediately before is a value other than 0, 0 is assigned to the variable SF, so the determination is YES, and in the next step 1607, the variable GAD is set to the variable SAD. After the value and 1 are assigned to the variable SF in the next step 1608, the process proceeds to step 1610. Otherwise, the determination is no, and in the next step 1609, the value of the variable GAD is assigned to the variable EAD, and then the process proceeds to step 1610.
[0096]
In this way, the value of the variable GAD when the variable NGF whose value is not 0 is first read is assigned to the variable SAD. After the assignment, the value of the variable GAD is changed each time the variable NGF whose value is not 0 is read. It is assigned to the variable EAD. As a result, variables SAD and EAD are substituted with values indicating the result data area in which image data obtained by photographing when inappropriate key pressing is performed first and last, respectively. .
[0097]
In step 1610, the value of the variable GAD is incremented. In the next step 1611, it is determined whether or not the value of the variable GAD is equal to or less than the value for designating the result data area in which the last image data is stored. If the value of the variable GAD is larger than that value, that is, if the confirmation of the values of all the variables NGF stored in the result data area is completed, the determination is no and the process proceeds to step 1612 in FIG. Otherwise, the determination is yes and the process returns to step 1604. Thus, the reproduction range focusing on the image data is specified until the focused result data area disappears.
[0098]
In step 1612 of FIG. 17, it is determined whether or not the value of the variable SAD is equal to the value of the variable EAD. If the value of the variable NGF is other than 0, any one of those values to which the same initial value is substituted is updated to a value other than the initial value, so that the values do not match. From this, when inappropriate key pressing has never been performed, the values are equal and the determination is YES, and after substituting 0 for the variable PLAYF in step 1613, the series of processing is terminated. Otherwise, the determination is no and the process moves to step 1614.
[0099]
By substituting 0 for the variable PLAYF, the image data is not reproduced, and the image data reproduction instruction made by the user is invalidated. In the third embodiment, such invalidation is used to notify the user that improper key pressing has never been performed instead of reproduction of image data.
[0100]
If reproduction is started from image data when an inappropriate key is pressed, the user cannot grasp the performance flow leading to the reproduction. Therefore, in the third embodiment, before and after the range specified as described above is reproduced according to the situation. The processing after step 1614 is performed in order to set the range including the front and back as a reproduction target. Since the reproduction of the image data is performed together with the reproduction of the song data, the range is set in such a manner that a reproduction range is set in the song data.
[0101]
First, in step 1614, it is determined whether or not the value obtained by subtracting the predetermined value α from the value of the variable SAD is smaller than the value indicating the result data area located at the head in the image data area. The predetermined value α is a value set in order to perform a performance of a length that seems necessary for grasping the flow. For this reason, when the key depression to be performed in the first part of the performance cannot be properly performed, the former value becomes smaller than the latter value, and the determination becomes YES. Next, in step 1615, the variable SAD is set to the latter value. After the value is substituted, the process proceeds to step 1617. Otherwise, the determination is no, and after the former value is substituted into the variable SAD in step 1616, the process proceeds to step 1617.
[0102]
In step 1617, the variable AD is read from the result data area specified by the value of the variable SAD, and in the subsequent step 1618, the value obtained by decrementing the value of the variable AD is substituted for the variable MAD. As a result, a value that designates data for starting reproduction in the music data is substituted into the variable MAD and stored so that a performance having a length that can grasp the flow is performed immediately before.
[0103]
In steps 1619 to 1623 following step 1618, a process for substituting a value for designating data for ending reproduction in the song data into the variable EAD so as to perform the performance having a length capable of grasping the flow last. Done. The processing of each of these steps is not only performed in the same flow as the above steps 1614 to 1618, but the processing content is basically determined based on the same concept. Therefore, the description thereof is omitted.
[0104]
In step 1624, which moves after executing the processing of step 1623, the data designated by the value of the variable MAD is read from the music data area (see FIG. 3) and substituted into the variable TIME. In the following step 1625, a value specifying the result data area located at the head in the image data area is substituted for the variable GAD. In subsequent step 1626, the prohibition of execution of the timer interrupt process is canceled. A series of processing ends after the execution.
[0105]
In this way, the range for reproducing the image data is set according to the range for reproducing the music data. The variables MAD and EAD into which the value indicating the range is substituted are transferred to a reproduction process (see FIG. 12) executed as step 505 in the overall process shown in FIG. Thereby, in the third embodiment, the variable EAD is newly transferred to the reproduction process.
[0106]
In the reproduction process, the variable MAD is used for managing data to be read from the music data, and there is no need to change the processing content in accordance with the value substituted for it. A variable EAD is substituted with a value indicating data to end reproduction in the music data. For this reason, in the third embodiment, in step 1206, it is changed to determine whether or not the value of the variable MAD is equal to or less than the value of the variable EAD. Other than that is basically the same as in the first embodiment, and the migration destination according to the determination result is not changed.
[0107]
In the first to third embodiments, the image data is reproduced by different methods. However, the reproduction may be performed by a plurality of methods. At the time of reproduction, a symbol or graphic indicating the pitch of the key may be displayed in order to specifically present the key to be pressed to the user. The shooting timing is the timing at which the key should be pressed specified from the song data, but may be the timing at which the user actually pressed the key.
[0108]
In the present embodiment (first to third embodiments), image data reflecting event data to be associated in song data is saved by shooting at the timing of key depression specified from song data. is doing. However, the event data associated with the image data may indicate a performance operation performed by the user, or may be associated with it.
[0109]
In order to associate with event data indicating a performance operation performed by the user, it is desirable to store data representing the performance operation performed by the user, for example, in the form of music data. By storing such data, not only can the image data captured and stored at the time of the actual key press be displayed at an appropriate timing, but the pitch of the key pressed can be displayed as a symbol or figure. It becomes possible to present by displaying. As a result, the performance content can be confirmed in a more desirable manner for the user.
[0110]
The present embodiment is a case where the performance recording device and the performance recording / reproducing device are mounted on one device 10, but they may be realized as separate devices. In such a case, the recorded data may be exchanged via a recording medium or a communication network.
[0111]
The program for realizing the operation of the performance recording apparatus or the performance recording / reproducing apparatus as described above may be distributed by being recorded on a recording medium such as a CD-ROM, DVD, or magneto-optical disk. Alternatively, part or all of the program may be distributed via a transmission medium used in a public network or the like. In such a case, the user can apply the present invention to the data processing apparatus by acquiring the program and loading it into a data processing apparatus such as a computer. Therefore, the recording medium may be accessible by a device that distributes the program.
[0112]
【The invention's effect】
As described above, the present invention obtains image data of a performer performing using a musical instrument in real time, and a performance operation performed by the performer during the performance or a performance operation to be performed by the performer. Is specified in real time, and event data indicating the specified performance operation is associated with the acquired image data and stored together as a performance record. Since they are associated with each other in this manner, the performance operation performed by the performer or the performance operation to be performed by the performer can be presented to the performer in an easily understandable manner during the reproduction of the image data.
[0113]
If it is determined whether or not the performance operation specified by the performer is appropriate, and the determination data indicating the determination result is further stored in association with the image data, whether or not the performance operation is appropriate Can be presented in a form that is easy to understand.
[0114]
Any of these presentations makes it easier to confirm whether or not the performance operation actually performed during the performance is appropriate. For this reason, the performer can easily perform the confirmation.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a performance system constructed using a performance recording apparatus and a performance recording / reproducing apparatus according to a first embodiment.
FIG. 2 is a diagram showing a circuit configuration of a performance recording / reproducing apparatus equipped with a performance recording apparatus and a performance recording / reproducing apparatus according to the first embodiment;
FIG. 3 is a diagram illustrating data stored in a work RAM.
FIG. 4 is a diagram illustrating an image captured by a camera.
FIG. 5 is a flowchart of overall processing.
FIG. 6 is a flowchart of switch processing.
FIG. 7 is a flowchart of a regeneration switch process.
FIG. 8 is a flowchart of a practice switch process.
FIG. 9 is a flowchart of keyboard processing.
FIG. 10 is a flowchart of practice processing.
FIG. 11 is a flowchart of practice processing (continued).
FIG. 12 is a flowchart of a reproduction process.
FIG. 13 is a flowchart of playback processing (continued).
FIG. 14 is a flowchart of a regeneration switch process (second embodiment).
FIG. 15 is a flowchart of regeneration switch processing (second embodiment: continued);
FIG. 16 is a flowchart of a regeneration switch process (third embodiment).
FIG. 17 is a flowchart of playback switch processing (third embodiment: continued);
[Explanation of symbols]
10 Performance recording and playback device
11 Playback switch
12 Practice switch
20 cameras
30 Display device
40 Electronic musical instruments
41 keyboard
201 CPU
202 ROM
203 Work RAM
204 Display controller
205 MIDI input / output unit
206 Switch circuit
208 Camera controller

Claims (2)

楽器を用いて演奏を行った演奏者の画像データを記録及び記録された画像データを再生する装置であって、
前記楽器に対して行うべき演奏操作を表すイベントデータ及びその操作タイミングを記億する演奏データ記億手段と、
画像データ記憶手段と、
第1及び第2のモードのいずれかを指定するモード指定手段と、
このモード指定手段により第1のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて読み出すとともに、前記楽器を用いて演奏を行っている演奏者の画像データをリアルタイムに取得する画像データ取得手段と、
前記読み出されイベントデータを参照して、前記演奏者が行ったと特定した演奏操作が適切か否か判定するとともに、判定結果を表わす判定データをリアルタイムに取得する判定データ取得手段と、
前記画像データ取得手段が取得した画像データ及び前記判定データ取得手段が取得した判定データを、前記演奏データ記億手段に記億されたイベントデータに対応付けて前記画像データ記憶手段に記録させる画像データ記録制御手段と、
前記モード指定手段により第2のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて順次読み出すとともに、当該読み出されたイベントデータに対応する前記画像データ及び判定データを前記画像データ記憶手段から読み出す読み出し手段と、
この読み出し手段にて読み出された判定データが表す判定結果を判別するとともに、判定結果が適切を表すと判定された場合は、当該判定データに対応する画像データをそのまま表示装置上に表示させ、判定結果が不適切を表すと判定された場合は、前記判定データに対応する画像データに対して色付けを行って前記表示装置上に表示させる表示制御手段と、
を具備することを特徴とする演奏記録再生装置。
An apparatus for recording image data of a performer who performed using a musical instrument and reproducing the recorded image data,
Event data representing performance operations to be performed on the musical instrument and performance data storage means for storing the operation timing;
Image data storage means;
Mode designation means for designating one of the first and second modes;
When the first mode is designated by the mode designating means, the event data Kioku the performance data SL billion unit reads out, based on the corresponding operation timing performed play using the instrument Image data acquisition means for acquiring the image data of the performer in real time;
Referring to event data to which the read, together with the player's performance operation identified and was performed to determine appropriate whether the determination data acquisition unit for acquiring determination data representing the judgment result in real time,
Image data to be recorded in the image data storage means in association with the event data stored in the performance data storage means, the image data acquired by the image data acquisition means and the determination data acquired by the determination data acquisition means Recording control means;
When the second mode is specified by the mode specifying means, the event data stored in the performance data storing means is sequentially read based on the corresponding operation timing, and the read event data Reading means for reading out the image data and determination data corresponding to the image data storage means;
While determining the determination result represented by the determination data read by the reading unit, and when it is determined that the determination result represents appropriate, the image data corresponding to the determination data is displayed on the display device as it is, If it is determined that the determination result represents inappropriate, display control means for coloring the image data corresponding to the determination data and displaying on the display device;
A performance recording / reproducing apparatus comprising:
楽器に対して行うべき演奏操作を表すイベントデータ及びその操作タイミングを記億する演奏データ記億手段と、画像データ記憶手段と、第1及び第2のモードのいずれかを指定するモード指定手段と、を有し、前記楽器を用いて演奏を行った演奏者の画像データを記録及び記録された画像データを再生する装置として用いられるコンピュータに実行させるプログラムであって、
このモード指定手段により第1のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて読み出すとともに、前記楽器を用いて演奏を行っている演奏者の画像データをリアルタイムに取得する画像データ取得機能と、
前記読み出されイベントデータを参照して、前記演奏者が行ったと特定した演奏操作が適切か否か判定するとともに、判定結果を表わす判定データをリアルタイムに取得する判定データ取得機能と、
前記取得された画像データ及び判定データを、前記演奏データ記億手段に記億されたイベントデータに対応付けて前記画像データ記憶手段に記録させる画像データ記録制御機能と、
前記モード指定手段により第2のモードが指定されているときに、前記演奏データ記億手段に記億されたイベントデータを、対応する操作タイミングに基づいて順次読み出すとともに、当該読み出されたイベントデータに対応する前記画像データ及び判定データを、前記画像データ記憶手段から読み出す読み出し機能と、
この読み出された判定データが表す判定結果を判別するとともに、判定結果が適切を表すと判定された場合は、当該判定データに対応する画像データをそのまま表示装置上に表示させ、判定結果が不適切を表すと判定された場合は、前記判定データに対応する画像データに対して色付けを行って前記表示装置上に表示させる表示制御機能と、
を実現させるためのプログラム。
Performance data storage means for storing event data representing performance operations to be performed on the musical instrument and operation timing thereof, image data storage means, and mode specification means for specifying one of the first and second modes the a, a program executed by a computer used the image data recorded and recorded image data of the player that was played using the instrument as a device for reproducing,
When the first mode is designated by the mode designating means, the event data Kioku the performance data SL billion unit reads out, based on the corresponding operation timing performed play using the instrument An image data acquisition function that acquires the image data of the performer in real time;
Referring to event data to which the read, together with the player's performance operation identified and was performed to determine appropriate whether the determination data acquisition function of acquiring judgment data representing the judgment result in real time,
An image data recording control function for causing the image data storage means to record the acquired image data and determination data in association with the event data stored in the performance data storage means ;
When the second mode is specified by the mode specifying means, the event data stored in the performance data storing means is sequentially read based on the corresponding operation timing, and the read event data A read function for reading the image data and determination data corresponding to the image data from the image data storage means;
The determination result represented by the read determination data is determined, and if it is determined that the determination result indicates appropriate, the image data corresponding to the determination data is displayed as it is on the display device, and the determination result is not valid. When it is determined that it represents appropriate, a display control function for coloring the image data corresponding to the determination data and displaying it on the display device;
A program to realize
JP2003188758A 2003-06-30 2003-06-30 Performance recording / reproducing apparatus and program Expired - Fee Related JP4655455B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003188758A JP4655455B2 (en) 2003-06-30 2003-06-30 Performance recording / reproducing apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003188758A JP4655455B2 (en) 2003-06-30 2003-06-30 Performance recording / reproducing apparatus and program

Publications (2)

Publication Number Publication Date
JP2005024781A JP2005024781A (en) 2005-01-27
JP4655455B2 true JP4655455B2 (en) 2011-03-23

Family

ID=34187181

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003188758A Expired - Fee Related JP4655455B2 (en) 2003-06-30 2003-06-30 Performance recording / reproducing apparatus and program

Country Status (1)

Country Link
JP (1) JP4655455B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10332490B2 (en) 2012-09-25 2019-06-25 William Frederick Moyer Piano systems and methods for the enhanced display of the hands of a pianist

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009186591A (en) * 2008-02-04 2009-08-20 Seiko Instruments Inc Tempo display device and tempo display method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000352973A (en) * 1999-06-11 2000-12-19 Casio Comput Co Ltd Playing guide device
JP2001195061A (en) * 2000-01-12 2001-07-19 Yamaha Corp Method and device for synchronous control
JP2002091291A (en) * 2000-09-20 2002-03-27 Vegetable House:Kk Data communication system for piano lesson
JP2003015641A (en) * 2001-06-27 2003-01-17 Konica Corp Electronic camera
JP2003058153A (en) * 2001-08-13 2003-02-28 Casio Comput Co Ltd Musical performance practicing device and program for musical performance practicing process
JP2003107986A (en) * 2001-09-27 2003-04-11 Yamaha Corp Information processor, and control method, control program and recording medium therefor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0627944A (en) * 1992-07-07 1994-02-04 Casio Comput Co Ltd Automatic playing device
JP3528003B2 (en) * 1993-07-20 2004-05-17 カシオ計算機株式会社 Performance guiding device
JPH07226017A (en) * 1994-02-10 1995-08-22 Yamaha Corp Device for recording/reproducing performance
JP3767106B2 (en) * 1996-09-27 2006-04-19 ヤマハ株式会社 Keyboard instrument

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000352973A (en) * 1999-06-11 2000-12-19 Casio Comput Co Ltd Playing guide device
JP2001195061A (en) * 2000-01-12 2001-07-19 Yamaha Corp Method and device for synchronous control
JP2002091291A (en) * 2000-09-20 2002-03-27 Vegetable House:Kk Data communication system for piano lesson
JP2003015641A (en) * 2001-06-27 2003-01-17 Konica Corp Electronic camera
JP2003058153A (en) * 2001-08-13 2003-02-28 Casio Comput Co Ltd Musical performance practicing device and program for musical performance practicing process
JP2003107986A (en) * 2001-09-27 2003-04-11 Yamaha Corp Information processor, and control method, control program and recording medium therefor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10332490B2 (en) 2012-09-25 2019-06-25 William Frederick Moyer Piano systems and methods for the enhanced display of the hands of a pianist
US10410609B2 (en) 2012-09-25 2019-09-10 William Frederick Moyer Piano systems and methods for the enhanced display of the hands of a pianist

Also Published As

Publication number Publication date
JP2005024781A (en) 2005-01-27

Similar Documents

Publication Publication Date Title
US7514622B2 (en) Musical sound production apparatus and musical
JP2002082666A (en) Fingering formation display method, fingering formation display device and recording medium
JP6776788B2 (en) Performance control method, performance control device and program
JP2008242200A (en) Processing system, audio reproducing device and program
JP4127561B2 (en) GAME DEVICE, OPERATION EVALUATION METHOD, AND PROGRAM
JP6729052B2 (en) Performance instruction device, performance instruction program, and performance instruction method
JP4655455B2 (en) Performance recording / reproducing apparatus and program
JP3609192B2 (en) Karaoke equipment
JP3843735B2 (en) Performance guide method, performance guide device and recording medium
JP3861381B2 (en) Karaoke equipment
JP2007249033A (en) Electronic musical instrument and program
JP2000029483A (en) Karaoke machine
JP2000003171A (en) Fingering data forming device and fingering display device
JP4311485B2 (en) Karaoke equipment
JP2000029472A (en) Karaoke machine
JPH11305772A (en) Electronic instrument
JP2010008893A (en) Electronic music device
JP4978176B2 (en) Performance device, performance realization method and program
JP4074769B2 (en) Electronic musical instruments
JP7092537B2 (en) Fingering display device and fingering display program
JP7107720B2 (en) fingering display program
JP4311099B2 (en) Sequence control data generation apparatus and program
JP3945307B2 (en) Performance guide method, apparatus thereof, and program
JPH10288987A (en) Electronic musical instrument and musical sound control data generating device
JP2570577B2 (en) Electronic percussion instrument

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060609

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100317

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101213

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees