JP3743364B2 - Performance practice device - Google Patents

Performance practice device Download PDF

Info

Publication number
JP3743364B2
JP3743364B2 JP2001379828A JP2001379828A JP3743364B2 JP 3743364 B2 JP3743364 B2 JP 3743364B2 JP 2001379828 A JP2001379828 A JP 2001379828A JP 2001379828 A JP2001379828 A JP 2001379828A JP 3743364 B2 JP3743364 B2 JP 3743364B2
Authority
JP
Japan
Prior art keywords
performance
data
period
sound generation
event buffer
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
JP2001379828A
Other languages
Japanese (ja)
Other versions
JP2002221961A (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.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2001379828A priority Critical patent/JP3743364B2/en
Publication of JP2002221961A publication Critical patent/JP2002221961A/en
Application granted granted Critical
Publication of JP3743364B2 publication Critical patent/JP3743364B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、予め記憶されている演奏データに基づいて、演奏者の演奏操作を補助しながら演奏技能の上達を図るための演奏練習装置に関する。
【0002】
【従来の技術】
予めメモリに記憶されている演奏データを、演奏者のトリガー操作に応じて順次読み出し、楽音を発音する自動演奏装置が従来より知られている。このような装置においてトリガー操作は、例えば鍵盤の中の特定のキーを押下することにより行われ、演奏者は正確な音高を指定しなくても特定のキーを押下するだけで演奏することができるが、演奏者が演奏する曲を完全に知っていなければ演奏が困難であり、また曲の途中からトリガー操作を行うことはできなかった。
【0003】
そこで本出願人は、以下に述べるような自動演奏装置を既に提案している(特開平6−274160号公報)。
【0004】
すなわち第1の実施の形態として、自動演奏の複数のトラックのうち少なくと1つのトラック(トリガー駆動トラック)をトリガー操作に応じて制御し、他のトラック(ノーマルトラック)を周知の自動演奏の処理により再生するように構成し、演奏者がノーマルトラックの演奏を聴きながら、演奏曲の各小節の先頭付近のタイミングでトリガー操作を行うと、トリガー駆動トラックの当該小節の1小節分の演奏データを読み出して再生するものが示されている。
【0005】
また第2の実施の形態として、トリガー駆動トラックを単音楽器のパートとし、記憶されている音符毎の発音タイミング付近でトリガー操作がなされると、その音符に対応する楽音を再生するものが示されている。
【0006】
【発明が解決しようとする課題】
しかしながら、上記第1の実施の形態の装置は、簡単な操作で演奏を楽しめるという利点があるが、小節単位などの決まった単位でしか演奏ができないため、演奏動作が単調になってそれ以上の技術の向上が望めないという欠点があった。
【0007】
また、第2の実施の形態の装置では、単音楽器のパートでしか演奏できないため、複音楽器の技術向上には適さないものであった。
【0008】
本発明はこれらの点に鑑みてなされたものであり、簡単な演奏動作から難易度の高い演奏動作まで段階的に徐々に技術を向上させることができ、しかも複音楽器のパートにおいても音符単位の制御を可能とした演奏練習装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記目的を達成するため、請求項1に記載の演奏練習装置は、複数の演奏データを含む楽曲データを記憶する記憶手段と、前記各演奏データに対して、該各演奏データの各発音タイミングを基準にそれぞれ個別に規定された前方期間と後方期間とからなる発音許容期間をそれぞれ設定する設定手段と、演奏の開始指示に応じて、前記記憶された演奏データを逐次読み出す読み出し手段と、前記発音許容期間とともに、前記読み出された演奏データを複数格納するイベントバッファと、演奏の進行に応じて、現在の演奏進行位置において発音許可期間にある前記演奏データを前記イベントバッファに保持させるとともに、現在の演奏進行位置において発音許可期間から逸脱した前記演奏データを前記イベントバッファから消去するように制御する制御手段と、演奏者が演奏操作を行うための演奏操作手段と、該演奏操作手段から演奏操作が入力されたときに、前記イベントバッファを参照し、該イベントバッファに格納・保持されている演奏データをすべて検索する検索手段と、該検索されたすべての演奏データに基づいて、前記演奏操作の入力タイミングで発音する発音手段とを有することを特徴とする。
【0011】
また、前記発音許容期間の前記前方期間および前記後方期間は、それぞれ変更可能は、変更可能であることが望ましい。
さらに、前記発音許容期間の前記前方期間および前記後方期間は、それぞれ演奏データは、演奏データの音符長に応じて異なることであることが望ましい。
【0012】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
【0013】
図1は本発明の一実施の形態にかかる演奏練習装置の構成を示すブロック図であり、この装置は、演奏者がトリガー操作を行うトリガー発生器としての機能を有し、一般的な電子楽器と同様に複数のキーが設けられた鍵盤1と、演奏データ等が記憶されるRAM2と、本装置全体の制御を行うCPU4と、CPU4で実行されるプログラムやプログラムの実行に必要なテーブル等が記憶されるROM3と、曲のテンポ設定、演奏の開始、終了の指示等を行うための各種スイッチ等で構成される操作子5と、演奏中の曲の楽譜等を表示するディスプレイ6と、CPU4の制御のもとに楽音信号を発生させる音源回路7と、この楽音信号をD/A変換し増幅してスピーカから出力するサウンドシステム8と、上記構成要素1〜7を相互の接続するバス9とを備えている。
【0014】
鍵盤1は、キーオン/キーオフ及びベロシティを検出する検出部を有し、その検出信号がCPU4に入力される。本実施の形態では、キーオン/キーオフがそれぞれトリガーオン/トリガーオフに対応する。
【0015】
RAM2に記憶される演奏データは、図2に示すようにイベントデータE1,E2,…及びデュレーションデータD1,D2,…からなる。イベントデータは、発音すべき楽音のイベントの内容を示すものであり、例えば発音開始を示すノートオンデータや発音終了を示すノートオフデータ等がある。さらに、キーオンデータには、発音すべき楽音の音高を示すノートデータや音の強弱を示すベロシティデータ等が付随する。このようなイベントデータは、曲中のイベントの数だけ順次記憶されている。また、デュレーションデータは、イベントとイベントの間隔を後述する割り込み処理の回数(以下「クロック数」という)で示すデータである。
【0016】
RAM2はさらに演奏者の演奏動作(キーオン、キーオフ)と、予め記憶された演奏データとを比較するための複数のイベントバッファ12として使用される。イベントバッファ12は例えば16個設け、そこに記憶されるデータは図3に示すような構成を有する。すなわち、1つのイベントバッファには、当該バッファが使用中であるとき「1」に設定され、空のとき「0」に設定される使用フラグ12aと、発音データ12bと、消音データ12cとが記憶される。ここで、発音データ12bは、発音開始位置(タイミング)を示す位置データと、発音許可期間の前端及び後端を示す前データ及び後データと、MIDI規格のノートオンメッセージとからなり、消音データ12cは、発音終了位置(タイミング)を示す位置データと、消音許可期間の前端及び後端を示す前データ及び後データと、MIDI規格のノートオフメッセージとからなる。演奏タイミングを示す位置データ等は、演奏開始タイミングからのクロック数で示され、例えば位置データが500のとき、その前24クロックのタイミングからその後48クロックのタイミングまで発音許可する場合、発音データ12bの前データは476(=500−24)、後データは548(=500+48)である。
【0017】
また、本実施の形態では消音許可範囲を発音許可範囲より広くしているが、これは消音タイミングは多少ずれても発音タイミングのずれより影響が小さいことを考慮したからである。
【0018】
なお、イベントバッファの数を16個としたのは、一人の演奏者が同時に押下するキーの数は最大8個程度であること、及び1つの楽音の消音許可期間と次の楽音の発音許可期間とが重なる場合あることを考慮したからである。もちろん、もっと多くしてもよい。
【0019】
図4は、演奏中にイベントバッファに書き込まれる発音許可期間及び消音許可期間を決定するためのパラメータを、演奏の難易度に対応して格納したテーブルを示す図であり、このテーブルはROM3に格納されている。ここでは難易度を1から10とし(値が大きいほど演奏が難しいことを示す)、難易度が高いほど許可期間が狭くなるように設定されている。同図において、RF及びRRは発音許可期間パラメータ及び消音許可期間パラメータであり、発音許可期間パラメータRFは、図3に示す発音データ12bの前データ決定のための前データ決定パラメータRF1及び後データ決定のための後データ決定パラメータRF2からなる。具体的には、発音データ12bの位置データに各パラメータRF1,RF2を加算することにより、前データ及び後データが決定される。消音許可期間パラメータRFも同様に、前データ決定パラメータRR1及び後データ決定パラメータRR2からなる。
【0020】
なお、難易度1の場合は、消音許可期間パラメータRRが記憶されていない。この場合には、範囲がないと判断して消音データ12cの前データ及び後データはいずれも位置データと同じとされる。これにより、曲進行位置が消音位置を過ぎるとすぐに消音されるので、本来の消音タイミングとほぼ同じタイミングで消音され、特別の処理を必要としない。
【0021】
図5は、ディスプレイ6の表示画面の一例を示す図であり、演奏中の曲の楽譜及び曲の進行状況を示す矢印11が表示される。演奏の進行に伴って矢印が左から右へ移動し、矢印11が右端に達すると画面が更新されるので、演奏者はディスプレイ6上の矢印11の移動に合わせて押鍵することにより、演奏を行うことができる。
【0022】
次に以上のように構成される演奏練習装置の動作の概要を説明する。
【0023】
先ず最も難易度が低いモード(難易度1)では、演奏者は鍵盤1のいずれかのキーを押下すること(キーオン)によりトリガー操作を行うと、そのキーオンのタイミングが発音許可期間に入っているときは、対応する楽音が発音される。このとき発音されるのは単音とは限らず、キーオンタイミングが発音許可期間に入っているすべての楽音が発音される。例えば、図5の矢印11が示すタイミングでは、5つの楽音が同時に発音される。なお、上述したようにこのモードでは演奏者のキーオフタイミングとは無関係に、記憶されている演奏データの消音タイミングで消音される。そして、キーオンタイミングが発音許可期間に入っているときは、得点が加算されディスプレイに表示される。
【0024】
また、難易度が高いモードでは、演奏者によるキーオンタイミングが発音許可期間内にあり、且つキーオンされたキーのキーコードと演奏データのノート番号とが一致するとき発音処理がおこなわれ、さらに演奏者によるキーオフタイミングが消音許可期間内にあり、且つキーオフされたキーのキーコードと演奏データのノート番号が一致するとき消音処理が行われる。そして、発音処理又は消音処理が行われると、得点加算及び表示処理が行われる。
【0025】
次に本装置の動作を図6〜13のフローチャートを参照して詳細に説明する。
【0026】
図6はCPU4で実行されるメインルーチンのフローチャートであり、本ルーチンはこの装置に電源が投入されると起動される。
【0027】
先ずステップS11では、RAM2内の各種レジスタのゼロリセットや、各種フラグへの初期設定値書き込み等の初期設定を行う。次いで、上記した演奏の難易度を設定する処理を行う(ステップS12)。この処理は、前回の演奏時の難易度と得点に応じて今回の難易度を自動的に設定するか、又は演奏者が操作子5により設定する。続くステップS13では、操作子により設定されたテンポに応じて後述する割り込み信号の周期を設定するテンポ設定処理を行う。
【0028】
次いで、スタートイベントがあったか、すなわち演奏のスタートを指示するスイッチにより演奏開始指示がなされたか否かを判別し(ステップS14)、なされていなければ直ちにステップS16に進む。演奏開始指示がなされたときは、自動演奏処理を開始し(ステップS15)、続くステップS16では自動演奏中か否かを判別する。そして、自動演奏中でなければ直ちにステップS18に進み、自動演奏中のときは後述する自動演奏処理(図8)を実行する(ステップS17)。ステップS18では、ストップイベントがあったか否か、すなわち演奏の終了を指示する演奏終了指示がなされたか否かを判別し、なされていなければステップS20に進み、終了指示がなされたときは自動演奏を停止して(ステップS19)、ステップS20に進む。ステップS20では、イベントバッファ12を検索して曲進行位置における押鍵すべき鍵数を得、次いで後述するトリガー処理(図10〜13)を実行し(ステップS21)、さらに楽譜表示処理を行って(ステップS22)、ステップS12へ戻る。
【0029】
図7は、曲のテンポに応じて設定される割り込み周期で実行される割込処理のフローチャートであり、曲の進行位置を示すクロック数を1だけ増加させる処理を行う(ステップS1)。
【0030】
図8は、図6のステップS17で実行される自動演奏処理のフローチャートであり、先ずステップS31では空の(使用されていない)イベントバッファ12があるか否かを判別し、あるときはイベントを検索してイベントバッファ12に記憶する処理(図9)を行い(ステップS32)、ステップS31に戻る。ステップS31,S32を繰り返し実行することにより、16個のイベントバッファ12がすべて使用状態となる。
【0031】
図9のステップS41では、演奏データの検索ポインタを進めてノートオンデータを検索し、空きイベントバッファ12に記憶する。次いで、その検索ポインタを一時的に記憶し(ステップS42)、さらに検索ポインタを進めて対応するノートオフデータを検索し、ステップS41で記憶したイベントバッファと同じイベントバッファ12に記憶する(ステップS43)。
【0032】
続くステップS44では、上記ステップS41及びS43で記憶したノートオンデータ及びノートオフデータからノートオンからノートオフまでの時間データ(音符の長さ)を算出し、その時間データと難易度に応じて図4のテーブルを検索して発音許可期間及び消音許可期間を決定し、前データ及び後データとしてイベントバッファ12に記憶する。次いで、検索ポインタをステップS42で記憶したノートオンデータの位置に戻して(ステップS45)、本処理を終了する。
【0033】
図8に戻り、ステップS31の答が否定(NO)、すなわち空のイベントバッファ12がないときは、曲進行位置を示すクロック数が増えたか否かを判別し、増えていなければ直ちに本処理を終了し、図6のメインルーチンに戻る。また、クロック数が増えたときは、曲進行位置がノートオンの範囲を越えたイベントバッファ12があるか否かを判別する(ステップS34)。具体的には、曲進行位置と発音データ12bの後データとを比較することにより行う。そして、該当するバッファ12がなければ直ちにステップS36に進み、あればそのバッファ12のデータは発音タイミングを過ぎているのでそのバッファ12を空にして(ステップS35)ステップS36に進む。
【0034】
ステップS36では、曲進行位置がノートオフの範囲を越えたイベントバッファ12があるか否かを判別し、該当するバッファ12がなければ直ちにステップS38に進み、あれば演奏者が消音許可期間内にキーオフしなかったことになるので、強制的にノートオフ処理を行うとともにそのバッファ12を空にして(ステップS37)、ステップS38に進む。ステップS38では、曲進行位置におけるノートオン、ノートオフ以外の自動演奏処理、例えば操作子の変化情報や音色の変化情報に応じた処理を行い、ステップS31に戻る。
【0035】
次に図6のステップS21におけるトリガー処理を説明する。このトリガー処理は、難易度により処理内容が異なるので、図10〜13を参照して順に説明する。
【0036】
図10は最も難易度が低い場合の処理であり、トリガーオンイベント(キーオンイベント)があると、曲進行位置が発音許可期間に入っているすべてのイベントバッファ12に記憶されている発音データに対応する楽音を発音し(ステップS51)、得点加算処理及びディスプレイへの表示処理を実行して(ステップS52)、本処理を終了する。この場合の消音処理は、前述したように演奏者のキーオフ操作のタイミングに拘わらず、演奏データのノートオフタイミングで行われる。なお、この処理では、押下されるキーはいずれのキーでもよいこととしている。
【0037】
図11は、図10の処理より難易度を高め、キーオンタイミングに加えて押鍵数の一致もチェックするトリガー処理のフローチャートである。
【0038】
先ずステップS61では、ほぼ同時に押下されたキーの数を検出する。この検出は、最初のトリガーオンイベントから所定時間待ってその間に発生したトリガーオンイベントをカウントすることにより行う。続くステップS62では、検出した押鍵数が演奏データの押鍵すべきキーの数(図6、ステップS20参照)と一致したか否かを判別する。そして、一致していなければ直ちに本処理を終了する一方、一致するときは、曲進行位置が発音許可期間内であるイベントバッファ12のデータに対応する楽音を発音し(ステップS63)、得点加算処理及び表示処理を実行して(ステップS64)、本処理を終了する。
【0039】
この処理によれば、演奏者による押鍵数が演奏データと一致しない場合は、発音されず得点加算が行われない。
【0040】
図12は、さらに難易度を高めた場合のトリガー処理のフローチャートであり、本処理ではキーオンのタイミング及び押鍵されたキーのキーコードが所定条件を満たす場合に発音処理等をおこなう。
【0041】
先ずステップS71では、カウント値iを「1」に設定し、次いで曲進行位置がi番目のイベントバッファの発音許可期間内か否かを判別する(ステップS72)。その答が肯定(YES)のときはさらに押鍵されたキーのキーコードと当該イベントバッファ内のノート番号が一致する否かを判別する(ステップS73)。その結果、ステップS72及びS73の答がともに肯定(YES)のときは、当該イベントバッファのデータに対応する楽音を発音し(ステップS81)、得点加算処理及び表示処理を実行して(ステップS82)、本処理を終了する。このように一致する場合は、後述する所定範囲内に入ったとき(ステップS78の答が肯定(YES)のとき)より加算する点数を多くする。
【0042】
一方ステップS72又はS73の答が否定(NO)のとき、すなわち曲進行位置がi番目のイベントバッファの発音許可期間内にないとき又は押鍵されたキーのキーコードが当該イベントバッファ内のノート番号と一致しないときは、カウント値iが所定数nと等しいか否かを判別し(ステップS74)、i<nであるときは、カウント値iを「1」だけ増加させてステップS72に戻る。ここで、所定数nは、通常はイベントバッファ12の数16とするが、和音を構成する楽音の数の少ない曲では、もっと少なくしてもよい。
【0043】
ステップS74でi=nとなると、カウント値jを「1」に設定し(ステップS76)、曲進行位置がj番目のイベントバッファの発音許可期間内か否かを判別する(ステップS77)。その答が肯定(YES)のときはさらに押鍵されたキーのキーコードが当該イベントバッファ内のノート番号±ノート範囲数の範囲内にあるか否かを判別する(ステップS78)。その結果、ステップS77及びS78の答がともに肯定(YES)のときは、前記ステップS81に進む。
【0044】
一方ステップS77又はS78の答が否定(NO)のとき、すなわち曲進行位置がj番目のイベントバッファの発音許可期間内にないとき又は押鍵されたキーのキーコードが当該イベントバッファ内のノート番号±ノート範囲数の範囲内にないときは、カウント値jが所定数nと等しいか否かを判別し(ステップS79)、j<nであるときは、カウント値jを「1」だけ増加させてステップS77に戻る。ステップS79でj=nとなると、本処理を終了する。
【0045】
本処理により、演奏者によるキーオンタイミングが発音許可期間内にあり、且つキーコードが演奏データと一致するとき又は所定範囲内(ノート番号±ノート範囲数)にあるときは、キーオンタイミング時に発音処理及び得点加算が行われる一方、それ以外のときは発音処理及び得点加算は行われない。
【0046】
図13は、トリガーオフイベントに対応したトリガー処理のフローチャートであり、キーオフイベント(トリガーオフイベント)について図12と同様の処理を行うものである。
【0047】
先ずステップS91では、カウント値kを「1」に設定し、次いで曲進行位置がk番目のイベントバッファの消音許可期間内か否かを判別する(ステップS92)。その答が肯定(YES)のときはさらに離鍵されたキーのキーコードと当該イベントバッファ内のノート番号が一致する否かを判別する(ステップS93)。その結果、ステップS92及びS93の答がともに肯定(YES)のときは、当該イベントバッファのデータに対応する楽音を消音し(ステップS101)、得点加算処理及び表示処理を実行し(ステップS102)、当該イベントバッファを空にして(ステップS103)、本処理を終了する。このように一致する場合は、後述する所定範囲内に入ったとき(ステップS98の答が肯定(YES)のとき)より加算する点数を多くする。
【0048】
一方ステップS92又はS93の答が否定(NO)のとき、すなわち曲進行位置がk番目のイベントバッファの消音許可期間内にないとき又は離鍵されたキーのキーコードが当該イベントバッファ内のノート番号と一致しないときは、カウント値kが所定数nと等しいか否かを判別し(ステップS94)、k<nであるときは、カウント値kを「1」だけ増加させてステップS92に戻る。
【0049】
ステップS94でk=nとなると、カウント値mを「1」に設定し(ステップS96)、曲進行位置がm番目のイベントバッファの消音許可期間内か否かを判別する(ステップS97)。その答が肯定(YES)のときはさらに離鍵されたキーのキーコードが当該イベントバッファ内のノート番号±ノート範囲数の範囲内にあるか否かを判別する(ステップS98)。その結果、ステップS97及びS98の答がともに肯定(YES)のときは、前記ステップS101に進む。
【0050】
一方ステップS97又はS98の答が否定(NO)のとき、すなわち曲進行位置がm番目のイベントバッファの消音許可期間内にないとき又は離鍵されたキーのキーコードが当該イベントバッファ内のノート番号±ノート範囲数の範囲内にないときは、カウント値mが所定数nと等しいか否かを判別し(ステップS99)、m<nであるときは、カウント値mを「1」だけ増加させてステップS97に戻る。ステップS99でm=nとなると、本処理を終了する。
【0051】
本処理により、演奏者によるキーオフタイミングが消音許可期間内にあり、且つキーコードが演奏データと一致するとき又は所定範囲内(ノート番号±ノート範囲数)にあるときは、キーオフタイミング時に消音処理及び得点加算が行われる一方、それ以外のときは図8のステップS37で強制的な消音処理が行われ、得点加算は行われない。
【0052】
以上詳述した図10〜13の処理を選択又は組み合わせて、難易度に応じた得点加算が行われ、低レベルから高レベルまでの広い範囲の演奏技能に対応した演奏の練習が可能となる。例えば、難易度1は図10の処理のみとし、難易度2は図11の処理のみとし、難易度3は図12の処理のみとし、難易度4〜7は図12の処理でノート範囲数を徐々に小さくして実現し、難易度8〜10は図12及び13の処理で、ノート範囲数を徐々に小さくして実現する。
【0053】
以上のように本実施の形態では、複数のトリガー処理を難易度に応じて選択又は組み合わせるようにしたので、簡単な演奏動作から難易度の高い演奏動作まで段階的に練習することができる。また、イベントバッファを複数設けたので、複音楽器のパートにおいても音符単位の制御を行うことが可能となる。
【0054】
なお、上述した実施の形態に片手モード(左手のみ、又は右手のみの演奏)を付加する場合には、演奏データのトラックを右手用と左手用に分けておき、一方のみトリガーコントロールを行い、他方のトラックは通常の自動演奏処理を行うようにすればよい。また、片手モードに限らず、従来の技術として述べた自動演奏装置と同様に、複数の自動演奏トラックの1つ又は2つをトリガー駆動トラックとし、他のトラックを通常の自動演奏用のノーマルトラックとしてもよい。
【0055】
また、演奏動作と演奏データをと比較するためのパラメータとして、ベロシティを用い、ベロシティの許可範囲を設定するようにしてもよい。
【0056】
また、上述した実施の形態では所定の条件を満たす場合のみ発音するようにしたが、これに限るものではなく、所定の条件を満たさない場合も発音するようにしてもよい。ただし、その場合には、得点を加算しないようにし、さらに間違いであることを表示したり、警告音(エラー音)を発音するなどして、演奏者に注意を促すことが望ましい。
【0057】
また、上述した難易度に応じた所定条件を満たす場合のみ、発音及び得点加算を行うトリガー処理を、従来のワンキープレイ専用の練習装置(自動演奏装置)に適用してもよい。その場合は、例えば図14に示すようなトリガー処理を行う。
【0058】
同図ステップS111では、ノートオンデータを読み出し、次いで難易度に応じた所定条件を満たすか否かを判別する。この場合の所定条件としては、例えばキーコードが所定範囲内にあるか、あるいは演奏データと一致するか否かがある。
【0059】
ステップS112に所定条件が満たされる場合は、読み出されたデータに対応する楽音を発音するとともに(ステップS113)、得点加算及び表示処理を行って(ステップS114)、本処理を終了する。
【0060】
また、ステップS112で所定条件が満たされない場合は、エラー音を発音するとともに(ステップS115)、間違いである旨を表示して(ステップS116)、本処理を終了する。
【0061】
【発明の効果】
以上説明したように、請求項1に記載の発明によれば、演奏操作手段から演奏操作が入力されたときに、該入力タイミングが発音許容期間内に含まれる演奏データがすべて検索され、該検索されたすべての演奏データに基づいて、前記演奏操作の入力タイミングで発音されるので、すなわち、複数の演奏データを同時に発音することができるので、複数パートからなる演奏データであっても、演奏データ毎に発音制御を行うことができる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態にかかる演奏練習装置の構成を示すブロック図である。
【図2】 演奏データの構成を説明するための図である。
【図3】 イベントバッファの記憶内容を説明するための図である。
【図4】 発音許可期間及び消音許可期間を決定するためのパラメタータを、演奏の難易度に対応して格納したテーブルを示す図である。
【図5】 ディスプレイの表示画面の一例を示す図である。
【図6】 図1のCPUで実行されるメインルーチンのフローチャートである。
【図7】 割込処理のフローチャートである。
【図8】 自動演奏処理のフローチャートである。
【図9】 自動演奏処理の一部を詳細に示すフローチャートである。
【図10】 トリガー処理のフローチャートである。
【図11】 トリガー処理のフローチャートである。
【図12】 トリガー処理のフローチャートである。
【図13】 トリガー処理のフローチャートである。
【図14】 トリガー処理のフローチャートである。
【符号の説明】
1 鍵盤
2 RAM
3 ROM
4 CPU
5 操作子
6 ディスプレイ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a performance practice device for improving performance skills while assisting a player in performing performance based on performance data stored in advance.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, an automatic performance device that reads out performance data stored in advance in advance in accordance with a player's trigger operation and generates musical sounds has been known. In such a device, the trigger operation is performed by, for example, pressing a specific key on the keyboard, and the performer can perform by simply pressing the specific key without specifying an accurate pitch. However, it was difficult to perform unless the performer completely knew the song to be played, and the trigger operation could not be performed from the middle of the song.
[0003]
Therefore, the present applicant has already proposed an automatic performance device as described below (Japanese Patent Laid-Open No. Hei 6-274160).
[0004]
That is, as the first embodiment, also less among the plurality of tracks of the automatic performance control in response one track (trigger-driven track) to trigger operation, the known automatic playing another track (normal track) If the player performs a trigger operation at the timing near the beginning of each measure of the performance song while listening to the performance of the normal track, the performance data for one measure of that measure of the trigger drive track is configured. Is read and played back.
[0005]
As a second embodiment, a trigger driving track is used as a part of a monophonic instrument, and when a trigger operation is performed near the sounding timing of each stored note, a musical sound corresponding to the note is reproduced. ing.
[0006]
[Problems to be solved by the invention]
However, the apparatus of the first embodiment has an advantage that the user can enjoy the performance with a simple operation. However, since the performance can be performed only in a fixed unit such as a measure unit, the performance operation becomes monotonous and further increases. There was a disadvantage that improvement in technology could not be expected.
[0007]
Further, since the apparatus of the second embodiment can perform only with a single musical instrument part, it is not suitable for improving the technology of a double musical instrument.
[0008]
The present invention has been made in view of these points, and can gradually improve the technique step by step from a simple performance operation to a highly difficult performance operation. An object of the present invention is to provide a performance practice device that can be controlled.
[0009]
[Means for Solving the Problems]
In order to achieve the above object, a performance practice device according to claim 1 is characterized in that storage means for storing music data including a plurality of performance data, and each sounding timing of each performance data for each performance data. Setting means for respectively setting a sound generation allowable period consisting of a front period and a rear period individually defined as references, a reading means for sequentially reading out the stored performance data in response to a performance start instruction, and the sound generation An event buffer for storing a plurality of read performance data together with an allowable period, and holding the performance data in the sound generation permission period at the current performance progress position in the event buffer according to the progress of the performance, The performance data deviating from the sound generation permission period at the performance progress position is controlled to be deleted from the event buffer. A control means, a performance operation means for a performer to perform a performance operation, and a performance stored in the event buffer by referring to the event buffer when a performance operation is input from the performance operation means. Search means for searching for all data, and sound generation means for generating sound at the input timing of the performance operation based on all the searched performance data.
[0011]
Further, the front time and the rear periods of the sound allowable period, each can change is desirably changeable.
Further, the front time and the rear periods of the sound allowable period, performance data, respectively, it is desirable that vary depending on note length of the performance data.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
[0013]
FIG. 1 is a block diagram showing the configuration of a performance practice apparatus according to an embodiment of the present invention. This apparatus has a function as a trigger generator for a performer to perform a trigger operation, and is a general electronic musical instrument. Similarly to the above, there are a keyboard 1 provided with a plurality of keys, a RAM 2 for storing performance data, a CPU 4 for controlling the entire apparatus, a program executed by the CPU 4, a table necessary for executing the program, and the like. ROM 3 to be stored, an operator 5 composed of various switches for setting the tempo of the song, instructing the start and end of performance, a display 6 for displaying the score of the song being played, and the CPU 4 The sound source circuit 7 for generating a musical sound signal under the control of the above, the sound system 8 for D / A converting and amplifying the musical sound signal and outputting it from the speaker, and the above components 1 to 7 are mutually connected. And a scan 9.
[0014]
The keyboard 1 has a detection unit that detects key-on / key-off and velocity, and the detection signal is input to the CPU 4. In the present embodiment, key-on / key-off corresponds to trigger-on / trigger-off, respectively.
[0015]
The performance data stored in the RAM 2 includes event data E1, E2,... And duration data D1, D2,. The event data indicates the content of a musical sound event to be generated, and includes, for example, note-on data indicating the start of sound generation and note-off data indicating the end of sound generation. Further, the key-on data is accompanied by note data indicating the pitch of the musical tone to be generated, velocity data indicating the strength of the sound, and the like. Such event data is sequentially stored for the number of events in the music. The duration data is data indicating the interval between events as the number of interrupt processing described later (hereinafter referred to as “clock number”).
[0016]
The RAM 2 is further used as a plurality of event buffers 12 for comparing the performance operation (key-on, key-off) of the performer with performance data stored in advance. For example, 16 event buffers 12 are provided, and the data stored therein has a configuration as shown in FIG. That is, one event buffer stores a use flag 12a, sound generation data 12b, and mute data 12c that are set to “1” when the buffer is in use and set to “0” when the buffer is empty. Is done. Here, the sound generation data 12b includes position data indicating the sound generation start position (timing), front data and rear data indicating the front and rear ends of the sound generation permission period, and a MIDI standard note-on message. Is composed of position data indicating the sound generation end position (timing), front data and rear data indicating the front and rear ends of the mute permission period, and a MIDI standard note-off message. The position data indicating the performance timing is indicated by the number of clocks from the performance start timing. For example, when the position data is 500, when sound generation is permitted from the previous 24 clock timing to the subsequent 48 clock timing, The previous data is 476 (= 500-24), and the subsequent data is 548 (= 500 + 48).
[0017]
Further, in the present embodiment, the mute permission range is made wider than the sound generation permission range, because the influence is smaller than the sound generation timing shift even if the mute timing is slightly deviated.
[0018]
The number of event buffers is set to 16 because the maximum number of keys simultaneously pressed by one performer is about eight, and the muting permission period for one musical sound and the musical sound generating permission period for the next musical sound. This is because there is a case where and overlap. Of course, you can do more.
[0019]
FIG. 4 is a diagram showing a table in which parameters for determining the sound generation permission period and the mute permission period written in the event buffer during performance are stored corresponding to the difficulty level of performance, and this table is stored in the ROM 3. Has been. Here, the difficulty level is set from 1 to 10 (indicating that the larger the value is, the more difficult the performance is), and the permission period is set to be narrower as the difficulty level is higher. In the figure, RF and RR are a sound generation permission period parameter and a mute permission period parameter, and the sound generation permission period parameter RF is determined by the previous data determination parameter RF1 and the subsequent data determination for determining the previous data of the sound generation data 12b shown in FIG. Is composed of a post-data determination parameter RF2. Specifically, the previous data and the subsequent data are determined by adding the parameters RF1 and RF2 to the position data of the sound generation data 12b. Similarly, the mute permission period parameter RF includes a previous data determination parameter RR1 and a subsequent data determination parameter RR2.
[0020]
In the case of difficulty level 1, the mute permission period parameter RR is not stored. In this case, it is determined that there is no range, and both the previous data and the subsequent data of the mute data 12c are the same as the position data. As a result, the sound is silenced as soon as the music progression position passes the mute position, so that the sound is muffled at substantially the same timing as the original mute timing, and no special processing is required.
[0021]
FIG. 5 is a diagram showing an example of a display screen of the display 6, in which a musical score of a song being played and an arrow 11 indicating the progress of the song are displayed. As the performance progresses, the arrow moves from left to right, and when the arrow 11 reaches the right end, the screen is updated. Therefore, the performer presses the key in accordance with the movement of the arrow 11 on the display 6 to perform the performance. It can be performed.
[0022]
Next, an outline of the operation of the performance practice device configured as described above will be described.
[0023]
First, in the mode with the lowest difficulty level (difficulty level 1), when the performer performs a trigger operation by pressing any key on the keyboard 1 (key-on), the key-on timing is within the sound generation permission period. Sometimes the corresponding musical sound is pronounced. At this time, it is not always a single tone that is sounded, and all musical tones whose key-on timing is within the pronunciation-permitted period are pronounced. For example, at the timing indicated by the arrow 11 in FIG. 5, five musical tones are generated simultaneously. As described above, in this mode, the sound is muted at the muting timing of the stored performance data regardless of the key-off timing of the performer. When the key-on timing is in the sound generation permission period, the score is added and displayed on the display.
[0024]
In a mode with a high degree of difficulty, a sound generation process is performed when the key-on timing by the performer is within the sound generation permission period, and the key code of the key-on key matches the note number of the performance data. When the key-off timing is within the mute permission period and the key code of the key-off key matches the note number of the performance data, the mute process is performed. When the sound generation process or the mute process is performed, a score addition and display process is performed.
[0025]
Next, the operation of this apparatus will be described in detail with reference to the flowcharts of FIGS.
[0026]
FIG. 6 is a flowchart of a main routine executed by the CPU 4, and this routine is activated when power is supplied to this apparatus.
[0027]
First, in step S11, initial settings such as zero reset of various registers in the RAM 2 and writing of initial setting values to various flags are performed. Next, processing for setting the above-described performance difficulty level is performed (step S12). In this process, the difficulty level of this time is automatically set according to the difficulty level and score at the time of the previous performance, or the performer sets the difficulty level with the operator 5. In the subsequent step S13, a tempo setting process for setting an interrupt signal cycle to be described later according to the tempo set by the operator is performed.
[0028]
Next, it is determined whether or not a start event has occurred, that is, whether or not a performance start instruction has been given by a switch for instructing the start of performance (step S14). If not, the process immediately proceeds to step S16. When a performance start instruction is given, automatic performance processing is started (step S15), and in the subsequent step S16, it is determined whether or not automatic performance is being performed. If the automatic performance is not being performed, the process immediately proceeds to step S18. If the automatic performance is being performed, an automatic performance process (FIG. 8) described later is executed (step S17). In step S18, it is determined whether or not there has been a stop event, that is, whether or not a performance end instruction for instructing the end of performance has been issued. If not, the process proceeds to step S20. If an end instruction has been issued, automatic performance is stopped. (Step S19), the process proceeds to Step S20. In step S20, the event buffer 12 is searched to obtain the number of keys to be depressed at the music progression position, then trigger processing (FIGS. 10 to 13) described later is executed (step S21), and score display processing is further performed. (Step S22), the process returns to Step S12.
[0029]
FIG. 7 is a flowchart of an interrupt process executed at an interrupt period set according to the tempo of the music, and performs a process of increasing the number of clocks indicating the progress position of the music by 1 (step S1).
[0030]
FIG. 8 is a flowchart of the automatic performance process executed in step S17 in FIG. 6. First, in step S31, it is determined whether or not there is an empty (unused) event buffer 12, and if so, the event is determined. The process of searching and storing in the event buffer 12 (FIG. 9) is performed (step S32), and the process returns to step S31. By repeatedly executing steps S31 and S32, all 16 event buffers 12 are in use.
[0031]
In step S 41 in FIG. 9, the performance data search pointer is advanced to search for note-on data, and the result is stored in the empty event buffer 12. Next, the search pointer is temporarily stored (step S42), the search pointer is further advanced to search for corresponding note-off data, and stored in the same event buffer 12 as the event buffer stored in step S41 (step S43). .
[0032]
In subsequent step S44, time data (note length) from note-on to note-off is calculated from the note-on data and note-off data stored in steps S41 and S43, and the time data and the difficulty level are calculated according to the time data and the difficulty level. The sound generation permission period and the mute permission period are determined by searching the table 4 and stored in the event buffer 12 as previous data and subsequent data. Next, the search pointer is returned to the position of the note-on data stored in step S42 (step S45), and this process ends.
[0033]
Returning to FIG. 8, when the answer to step S31 is negative (NO), that is, when there is no empty event buffer 12, it is determined whether or not the number of clocks indicating the music progression position has increased. End and return to the main routine of FIG. When the number of clocks is increased, it is determined whether or not there is an event buffer 12 whose music progression position exceeds the note-on range (step S34). Specifically, it is performed by comparing the music progression position and the subsequent data of the sound generation data 12b. If there is no corresponding buffer 12, the process immediately proceeds to step S36, and if there is, the data in the buffer 12 has passed the sound generation timing, so the buffer 12 is emptied (step S35) and the process proceeds to step S36.
[0034]
In step S36, it is determined whether or not there is an event buffer 12 whose music progression position exceeds the note-off range. If there is no corresponding buffer 12, the process immediately proceeds to step S38. Since the key-off has not occurred, the note-off process is forcibly performed and the buffer 12 is emptied (step S37), and the process proceeds to step S38. In step S38, automatic performance processing other than note-on and note-off at the music progression position, for example, processing according to the change information of the operator and the change information of the tone color is performed, and the process returns to step S31.
[0035]
Next, the trigger process in step S21 of FIG. 6 will be described. Since this trigger process has different processing contents depending on the degree of difficulty, it will be described in order with reference to FIGS.
[0036]
FIG. 10 shows the processing when the difficulty level is the lowest. When there is a trigger-on event (key-on event), the song progress position corresponds to the pronunciation data stored in all event buffers 12 in the pronunciation-permitted period. The musical tone to be generated is generated (step S51), score addition processing and display processing are executed (step S52), and this processing ends. The mute processing in this case is performed at the note-off timing of the performance data regardless of the timing of the player's key-off operation as described above. In this process, any key can be pressed.
[0037]
FIG. 11 is a flowchart of a trigger process that increases the difficulty level compared to the process of FIG. 10 and checks the coincidence of the number of key presses in addition to the key-on timing.
[0038]
First, in step S61, the number of keys pressed almost simultaneously is detected. This detection is performed by waiting for a predetermined time from the first trigger-on event and counting the trigger-on events that occurred during that time. In a succeeding step S62, it is determined whether or not the detected number of keys pressed matches the number of keys to be pressed in the performance data (see step S20 in FIG. 6). If they do not match, the process is immediately terminated. If they match, a musical tone corresponding to the data in the event buffer 12 whose song progression position is within the sound generation permission period is generated (step S63), and score addition processing is performed. Then, the display process is executed (step S64), and this process ends.
[0039]
According to this process, if the number of keys pressed by the performer does not match the performance data, no sound is generated and no score is added.
[0040]
FIG. 12 is a flowchart of the trigger processing when the difficulty level is further increased. In this processing, sound generation processing is performed when the key-on timing and the key code of the pressed key satisfy predetermined conditions.
[0041]
First, in step S71, the count value i is set to “1”, and then it is determined whether or not the music progression position is within the sound generation permission period of the i-th event buffer (step S72). If the answer is affirmative (YES), it is further determined whether or not the key code of the depressed key matches the note number in the event buffer (step S73). As a result, when the answer to steps S72 and S73 is affirmative (YES), a tone corresponding to the data in the event buffer is generated (step S81), and score addition processing and display processing are executed (step S82). This process is terminated. In the case of coincidence in this way, the number of points to be added is increased from the time when it falls within a predetermined range described later (when the answer to step S78 is affirmative (YES)).
[0042]
On the other hand, when the answer to step S72 or S73 is negative (NO), that is, when the music progression position is not within the sound generation permission period of the i-th event buffer, or the key code of the pressed key is the note number in the event buffer. If not, it is determined whether or not the count value i is equal to the predetermined number n (step S74). If i <n, the count value i is incremented by “1” and the process returns to step S72. Here, the predetermined number n is usually the number 16 of the event buffer 12, but may be further reduced for a song with a small number of musical tones forming a chord.
[0043]
When i = n in step S74, the count value j is set to “1” (step S76), and it is determined whether or not the music progression position is within the sound generation permission period of the jth event buffer (step S77). If the answer is affirmative (YES), it is further determined whether or not the key code of the depressed key is within the range of note number ± note range number in the event buffer (step S78). As a result, when the answer to steps S77 and S78 is affirmative (YES), the process proceeds to step S81.
[0044]
On the other hand, when the answer to step S77 or S78 is negative (NO), that is, when the music progression position is not within the sound generation permission period of the jth event buffer, or the key code of the key pressed is the note number in the event buffer. If not within the range of ± note range number, it is determined whether or not the count value j is equal to the predetermined number n (step S79). If j <n, the count value j is increased by “1”. The process returns to step S77. When j = n in step S79, this process ends.
[0045]
With this processing, when the key-on timing by the performer is within the sound generation permission period and the key code matches the performance data or within a predetermined range (note number ± note range number), While score addition is performed, sound generation processing and score addition are not performed otherwise.
[0046]
FIG. 13 is a flowchart of the trigger process corresponding to the trigger-off event, and performs the same process as FIG. 12 for the key-off event (trigger-off event).
[0047]
First, in step S91, the count value k is set to “1”, and then it is determined whether or not the music progression position is within the mute permission period of the kth event buffer (step S92). If the answer is affirmative (YES), it is further determined whether or not the key code of the released key matches the note number in the event buffer (step S93). As a result, when the answer to both steps S92 and S93 is affirmative (YES), the musical sound corresponding to the data in the event buffer is muted (step S101), score addition processing and display processing are executed (step S102), The event buffer is emptied (step S103), and this process ends. In the case of coincidence in this way, the number of points to be added is increased compared to when entering a predetermined range described later (when the answer to step S98 is affirmative (YES)).
[0048]
On the other hand, when the answer to step S92 or S93 is negative (NO), that is, when the music progression position is not within the mute permission period of the kth event buffer, or the key code of the released key is the note number in the event buffer. If not, it is determined whether or not the count value k is equal to the predetermined number n (step S94). If k <n, the count value k is increased by “1” and the process returns to step S92.
[0049]
If k = n in step S94, the count value m is set to “1” (step S96), and it is determined whether or not the music progression position is within the mute event permission period of the mth event buffer (step S97). If the answer is affirmative (YES), it is further determined whether or not the key code of the released key is within the range of note number ± note range number in the event buffer (step S98). As a result, when the answer to steps S97 and S98 is affirmative (YES), the process proceeds to step S101.
[0050]
On the other hand, when the answer to step S97 or S98 is negative (NO), that is, when the music progression position is not within the mute permission period of the mth event buffer, or the key code of the released key is the note number in the event buffer. If not within the range of the ± note range number, it is determined whether or not the count value m is equal to the predetermined number n (step S99). If m <n, the count value m is increased by “1”. Then, the process returns to step S97. When m = n in step S99, this process ends.
[0051]
With this processing, when the key-off timing by the performer is within the silencing permission period and the key code matches the performance data or within a predetermined range (note number ± note range number), While score addition is performed, otherwise, compulsory mute processing is performed in step S37 of FIG. 8, and score addition is not performed.
[0052]
By selecting or combining the processes shown in FIGS. 10 to 13 described in detail above, points are added according to the degree of difficulty, and performance practice corresponding to a wide range of performance skills from low level to high level becomes possible. For example, difficulty 1 is only the process of FIG. 10, difficulty 2 is only the process of FIG. 11, difficulty 3 is only the process of FIG. 12, difficulty 4 to 7 is the number of note ranges in the process of FIG. The degree of difficulty 8 to 10 is realized by gradually reducing the number of note ranges in the processing of FIGS.
[0053]
As described above, in the present embodiment, since a plurality of trigger processes are selected or combined according to the difficulty level, it is possible to practice step by step from a simple performance operation to a performance operation with a high degree of difficulty. In addition, since a plurality of event buffers are provided, it is possible to control in units of notes even in parts of a multi-musical instrument.
[0054]
In addition, when the one-handed mode (the performance of only the left hand or only the right hand) is added to the above-described embodiment, the performance data track is divided for the right hand and the left hand, trigger control is performed only on one side, This track may be subjected to normal automatic performance processing. In addition to the one-hand mode, as in the conventional automatic performance apparatus, one or two of the plurality of automatic performance tracks are set as trigger drive tracks, and the other tracks are normal tracks for normal automatic performance. It is good.
[0055]
Also, velocity may be used as a parameter for comparing performance operation and performance data, and a velocity allowable range may be set.
[0056]
In the above-described embodiment, the sound is generated only when the predetermined condition is satisfied. However, the sound is not limited to this, and the sound may be generated even when the predetermined condition is not satisfied. However, in that case, it is desirable not to add a score, and to display the fact that there is a mistake or to sound a warning sound (error sound) to alert the player.
[0057]
Further, only when the predetermined condition corresponding to the above-described difficulty level is satisfied, the trigger processing for performing sound generation and score addition may be applied to a conventional practice device (automatic performance device) dedicated to one-key play. In that case, for example, trigger processing as shown in FIG. 14 is performed.
[0058]
In step S111 in the figure, note-on data is read, and then it is determined whether or not a predetermined condition corresponding to the difficulty level is satisfied. The predetermined condition in this case includes, for example, whether the key code is within a predetermined range or coincides with the performance data.
[0059]
If the predetermined condition is satisfied in step S112, a tone corresponding to the read data is generated (step S113), score addition and display processing is performed (step S114), and this processing ends.
[0060]
If the predetermined condition is not satisfied in step S112, an error sound is generated (step S115), an error is displayed (step S116), and the process is terminated.
[0061]
【The invention's effect】
As described above, according to the first aspect of the present invention, when a performance operation is input from the performance operation means, all performance data whose input timing is included in the pronunciation allowable period are searched, and the search is performed. Since all the performance data is sounded at the input timing of the performance operation, that is, a plurality of performance data can be generated at the same time. Sound generation control can be performed every time.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a performance practice device according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining the structure of performance data.
FIG. 3 is a diagram for explaining storage contents of an event buffer.
FIG. 4 is a diagram showing a table in which parameter data for determining a sound generation permission period and a mute permission period are stored according to the difficulty level of performance.
FIG. 5 is a diagram showing an example of a display screen on the display.
FIG. 6 is a flowchart of a main routine executed by the CPU of FIG.
FIG. 7 is a flowchart of interrupt processing.
FIG. 8 is a flowchart of automatic performance processing.
FIG. 9 is a flowchart showing a part of the automatic performance process in detail.
FIG. 10 is a flowchart of trigger processing.
FIG. 11 is a flowchart of trigger processing.
FIG. 12 is a flowchart of trigger processing.
FIG. 13 is a flowchart of trigger processing.
FIG. 14 is a flowchart of trigger processing.
[Explanation of symbols]
1 Keyboard 2 RAM
3 ROM
4 CPU
5 Controller 6 Display

Claims (3)

複数の演奏データを含む楽曲データを記憶する記憶手段と、
前記各演奏データに対して、該各演奏データの各発音タイミングを基準にそれぞれ個別に規定された前方期間と後方期間とからなる発音許容期間をそれぞれ設定する設定手段と、
演奏の開始指示に応じて、前記記憶された演奏データを逐次読み出す読み出し手段と、
前記発音許容期間とともに、前記読み出された演奏データを複数格納するイベントバッファと、
演奏の進行に応じて、現在の演奏進行位置において発音許可期間にある前記演奏データを前記イベントバッファに保持させるとともに、現在の演奏進行位置において発音許可期間から逸脱した前記演奏データを前記イベントバッファから消去するように制御する制御手段と、
演奏者が演奏操作を行うための演奏操作手段と、
該演奏操作手段から演奏操作が入力されたときに、前記イベントバッファを参照し、該イベントバッファに格納・保持されている演奏データをすべて検索する検索手段と、
該検索されたすべての演奏データに基づいて、前記演奏操作の入力タイミングで発音する発音手段と
を有することを特徴とする演奏練習装置。
Storage means for storing music data including a plurality of performance data;
Setting means for setting each sound performance permissible period consisting of a front period and a back period individually defined based on each sound generation timing of each performance data;
Read means for sequentially reading out the stored performance data in response to a performance start instruction;
An event buffer for storing a plurality of the read performance data together with the sound generation allowable period;
In accordance with the progress of the performance, the performance data in the sound generation permission period at the current performance progress position is held in the event buffer, and the performance data deviating from the sound generation permission period at the current performance progress position is stored from the event buffer. Control means for controlling to erase,
A performance operation means for the performer to perform the performance operation;
When a performance operation is input from the performance operation means, search means for referring to the event buffer and searching for all performance data stored and held in the event buffer;
A performance practice device comprising sound generation means for generating sound at the input timing of the performance operation based on all the retrieved performance data.
前記発音許容期間の前記前方期間および前記後方期間は、それぞれ変更可能であることを特徴とする請求項1に記載の演奏練習装置。Wherein said forward time and the rear period pronunciation allowable period, performance practice apparatus according to claim 1, characterized in that the changeable respectively. 前記発音許容期間の前記前方期間および前記後方期間は、それぞれ演奏データの音符長に応じて異なることを特徴とする請求項1に記載の演奏練習装置。Wherein said forward time and the rear period pronunciation allowable period, performance practice apparatus according to claim 1, wherein vary depending on note length of each performance data.
JP2001379828A 2001-12-13 2001-12-13 Performance practice device Expired - Fee Related JP3743364B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001379828A JP3743364B2 (en) 2001-12-13 2001-12-13 Performance practice device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001379828A JP3743364B2 (en) 2001-12-13 2001-12-13 Performance practice device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP18060695A Division JP3743024B2 (en) 1995-06-26 1995-06-26 Performance practice device

Publications (2)

Publication Number Publication Date
JP2002221961A JP2002221961A (en) 2002-08-09
JP3743364B2 true JP3743364B2 (en) 2006-02-08

Family

ID=19186995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001379828A Expired - Fee Related JP3743364B2 (en) 2001-12-13 2001-12-13 Performance practice device

Country Status (1)

Country Link
JP (1) JP3743364B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4622682B2 (en) * 2005-05-31 2011-02-02 ヤマハ株式会社 Electronic musical instruments
JP4517299B2 (en) * 2005-12-08 2010-08-04 カシオ計算機株式会社 Code learning device and code learning program
JP5560574B2 (en) * 2009-03-13 2014-07-30 カシオ計算機株式会社 Electronic musical instruments and automatic performance programs
JP5879996B2 (en) * 2010-12-09 2016-03-08 ヤマハ株式会社 Sound signal generating apparatus and program

Also Published As

Publication number Publication date
JP2002221961A (en) 2002-08-09

Similar Documents

Publication Publication Date Title
JP3058051B2 (en) Musical amusement system
US5350880A (en) Apparatus for varying the sound of music as it is automatically played
JP3743024B2 (en) Performance practice device
JP3358292B2 (en) Electronic musical instrument
JP3484719B2 (en) Performance guide device with voice input function and performance guide method
JP3239411B2 (en) Electronic musical instrument with automatic performance function
JP3743364B2 (en) Performance practice device
JP3267777B2 (en) Electronic musical instrument
JP3844286B2 (en) Automatic accompaniment device for electronic musical instruments
JP3005915B2 (en) Electronic musical instrument
JP2773638B2 (en) Automatic performance device
JP3800778B2 (en) Performance device and recording medium
JP4056902B2 (en) Automatic performance apparatus and automatic performance method
JPH06259064A (en) Electronic musical instrument
JP3171759B2 (en) Automatic performance device
JPH0375874B2 (en)
JPH0566776A (en) Automatic orchestration device
JP2640587B2 (en) Automatic performance device with singing ability evaluation function
JP3821055B2 (en) Performance practice device
JP2665854B2 (en) Automatic performance device
JPH10222176A (en) Karaoke device
JP4205563B2 (en) Performance device, performance method, and computer program for performance
JPH08234737A (en) Electronic keyboard musical instrument
JP2556639B2 (en) Automatic playing device
JPH08106284A (en) Automatic playing device of electronic musical instrument

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050727

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051107

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

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20081125

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091125

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101125

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101125

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111125

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111125

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121125

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121125

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131125

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees