JP4207564B2 - 演奏装置および演奏処理のプログラム - Google Patents
演奏装置および演奏処理のプログラム Download PDFInfo
- Publication number
- JP4207564B2 JP4207564B2 JP2002376179A JP2002376179A JP4207564B2 JP 4207564 B2 JP4207564 B2 JP 4207564B2 JP 2002376179 A JP2002376179 A JP 2002376179A JP 2002376179 A JP2002376179 A JP 2002376179A JP 4207564 B2 JP4207564 B2 JP 4207564B2
- Authority
- JP
- Japan
- Prior art keywords
- performance
- data
- note
- event
- start timing
- 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
Links
Images
Landscapes
- Auxiliary Devices For Music (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、演奏装置および演奏処理のプログラムに関し、特に、ユーザに対する演奏支援の機能を持つ演奏装置および演奏処理のプログラムに関する。
【0002】
【従来の技術】
従来、電子鍵盤楽器などの演奏装置の中には、あらかじめ記憶されている自動演奏曲を読み出して演奏する場合に、スムーズに演奏できない初心者のユーザのために、鍵盤の各鍵ごとにLEDを設けて、曲データのノートオンイベントの音高に応じて押鍵すべき鍵を演奏開始タイミングで点灯させて、演奏支援を行なういわゆる光鍵を具備したものが知られている。
【0003】
また、鍵盤の任意の鍵や特別に設けた操作子を操作するだけで、ノートオンイベントの音高を意識することなく、あたかも上級者のように曲を演奏できる「エニキーモード」や「ワンキーモード」の機能を備えたものが知られている。さらにこの場合、ノートオンイベントの演奏開始タイミングと押鍵のタイミングとの関係に基づいて、複数種類の演奏バリエーションのモードを設定することができるように構成されている。
あるモードでは、読み出したノートオンの演奏開始タイミングに達してから押鍵の有無を検出し、押鍵があったときには発音を行うが、押鍵がない場合には通常の発音を行なわず、次のイベントの読み出しを押鍵があるまで中断する。他のモードでは、ノートオンの演奏開始タイミングに達する前でも、押鍵があったときには発音を行うとともに、次のイベントを早送りで読み出す。
【0004】
例えば、「エニキーモード」の機能を持つ従来の演奏教習装置の提案においては、読み出した発音のイベントデータの演奏開始タイミングになっても押鍵がされない場合には、その発音のイベントデータのベロシティデータを「0」に変更して消音のイベントを生成し、発音のイベントと消音のイベントとを、所定時間が経過するごとに、交互に出力する(例えば、特許文献1)。
また、「ワンキーモード」の機能を持つ従来の演奏装置の提案においては、時間データと音符長データとから特定される処理対象期間、更にはそれよりも僅かに早い期間までをワンキーの操作を有効とし、その間に行なわれたワンキーへの操作に応じて楽音を発生させている。楽音の発音開始や消音のタイミングを変化させるようにしている(例えば、特許文献2)。
【0005】
【特許文献1】
特開2000−276147号公報(段落番号「0048」)
【特許文献2】
特開平11−184465号公報(段落番号「0036」)
【0006】
【発明が解決しようとする課題】
しかしながら、上記従来の技術においては、広範な初心者のユーザに対する演奏支援の機能としては十分ではなかった。例えば、上記あるモードのように、押鍵を待って曲の進行を行なう場合には、音符(ノートオンイベント)ごとに正しいタイミングで押鍵しないと、演奏開始タイミングが分からなくなって、演奏が止まってしまうこともある。その結果、曲の音楽性が著しく損なわれるので、ユーザによっては自信を喪失して練習意欲が低下する場合もある。
一方、上記他のモードのように、ノートオンの演奏開始タイミングに達する前でも、押鍵があったときには発音を行う場合には、リズムに乗って押鍵する必要があり、ユーザによっては自分のペースで演奏することができない場合がある。このため、現在演奏している曲の位置を見失う可能性がある。
【0007】
本発明は、このような従来の課題を解決するものであり、演奏開始タイミングや現在演奏している曲の位置をユーザが容易に把握できるような演奏装置および演奏処理のプログラムを提供することを目的とする。
【0008】
【課題を解決するための手段】
請求項1に記載の演奏装置は、所定の記憶手段(実施形態においては、図1の曲データメモリ8に相当する)から自動演奏曲の曲データを読み出すデータ読出手段(実施形態においては、図1のCPU1に相当する)と、データ読出手段によって読み出された曲データにおけるノートオンイベントの演奏開始タイミングをガイドする演奏ガイド手段(実施形態においては、図1のCPU1およびガイド表示部5に相当する)と、操作に応じて演奏データを入力する操作子(実施形態においては、図1の鍵盤6に相当する)と、演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミング以後の時間に操作子によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミングより前の時間に前記操作子によって演奏データが入力されたときはその演奏データを無効にする発音制御手段(実施形態においては、CPU1に相当する)とを備えた構成になっている。
【0009】
この場合において、ノートオンイベントの演奏開始タイミングから演奏データが入力されたタイミングまでの時間差に応じて自動演奏曲のテンポを補正するテンポ補正手段(実施形態においては、図1のCPU1に相当する)をさらに備えたように構成してもよい。
また、操作子は、押鍵操作に応じて演奏データを入力する鍵盤であり、演奏ガイド手段は、鍵盤を各鍵ごとに点灯する機能を有し、データ読出手段によって読み出された曲データにおけるノートオンイベントの音高に対応する鍵をそのノートオンイベントの演奏開始タイミングで点灯して演奏をガイドするように構成してもよい。
また、発音制御手段は、演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミングを所定時間以上経過しても操作子によって演奏データが入力されない場合には、そのノートオンイベントに基づいて発音指示を行い、データ読出手段に曲データを読み出す指令を与えるように構成してもよい。
【0010】
請求項5に記載の演奏処理のプログラムは、所定の記憶手段(実施形態においては、図1の曲データメモリ8に相当する)から自動演奏曲の曲データを読み出す第1のステップと、第1のステップによって読み出された曲データにおけるノートオンイベントの演奏開始タイミングをガイドする第2のステップと、第2のステップによりガイドされたノートオンイベントの演奏開始タイミング以後の時間に所定の操作子(実施形態においては、図1の鍵盤6に相当する)によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、第2のステップによりガイドされたノートオンイベントの演奏開始タイミングより前の時間に操作子によって演奏データが入力されたときはその演奏データを無効にする第3のステップとをコンピュータに実行させる。
【0011】
【発明の実施の形態】
以下、本発明による演奏装置の実施形態について、図を参照して説明する。
図1は、実施形態の演奏装置の構成を示すブロック図である。この図において、CPU1は、システムバス2を介して、ROM3、RAM4、ガイド表示部5、鍵盤6、スイッチ部7、曲データメモリ8、および音源9に接続され、これら各部との間で、イベントおよびデータを授受しながら、この演奏装置全体を制御する。
【0012】
ROM3は、CPU1によって実行されるプログラムや起動時のイニシャライズにおける初期データなどをあらかじめ記憶している。RAM4は、CPU1のワークエリアであり、プログラムの実行に必要な各種のレジスタやフラグのエリアを持っている。ガイド表示部5は、鍵盤6の各鍵ごとに設けられたLEDなどの発光素子およびその駆動回路で構成され、CPU1からの鍵番号のデータ、点灯イベントおよび消灯イベントに応じて、鍵番号で指定される鍵を点灯、点滅および消灯する。鍵盤6は、押鍵および離鍵の演奏操作に応じて鍵番号およびベロシティをCPU1に入力する。スイッチ部7は、自動演奏を開始又は停止するスタート/ストップスイッチや自動演奏曲のテンポを設定するテンポスイッチなどで構成されている。
曲データメモリ8は、複数の自動演奏曲の曲データを記憶している。音源9は、発音回路10に接続され、CPU1の発音指示(ノートオンイベント)に応じて楽音波形信号を生成して発音回路10に出力し、消音指示(ノートオフイベント)に応じて楽音波形信号の出力を停止する。発音回路10は、D/A変換回路、フィルタ回路、増幅回路、スピーカなどで構成され、音源9から出力される楽音波形信号に応じて楽音を発生する。
【0013】
次に、この実施形態における演奏装置の動作について、図2ないし図12に示すCPU1のフローチャートに基づいて説明する。
図2は、メインフローチャートであり、所定のイニシャライズを行なって(ステップA1)、RAM4のレジスタやフラグなどを初期化した後、スイッチ部7の各スイッチのオン・オフを検出するスイッチ処理(ステップA2)、曲データメモリ8の自動演奏曲の読み出しを行なう自動演奏処理(ステップA3)、鍵盤6を走査して各鍵のオンすなわち押鍵およびオフすなわち離鍵を検出する鍵盤処理(ステップA4)、およびその他の処理(ステップA5)を繰り返し実行する。
【0014】
図3は、メインフローにおけるステップA2のスイッチ処理のフローチャートである。このフローでは、テンポスイッチの操作を検出するテンポスイッチ処理(ステップB1)、スタート/ストップスイッチの操作を検出するスタート/ストップスイッチ処理(ステップB2)、およびその他のスイッチ処理(ステップB3)を実行する。そして、このフローを終了してメインフローに戻る。
図4は、図3のスイッチ処理のフローにおけるステップB1のテンポスイッチ処理のフローチャートである。このフローでは、テンポスイッチが操作されたか否かを判別し(ステップC1)、このスイッチが操作されない場合には、このフローを終了するが、このスイッチが操作されてテンポ値が入力されたときは、レジスタTEMPOにその入力テンポ値をストアする(ステップC2)。次に、TEMPOに基づいた最小単位音符時間を設定する(ステップC3)。そして、図3におけるステップB2のスタート/ストップスイッチ処理に移行する。
【0015】
図5および図6は、図3におけるステップB2のスタート/ストップスイッチ処理のフローチャートである。まず、スタート/ストップスイッチがオンされたか否かを判別する(ステップD1)。このスイッチがオンでない場合にはこのフローを終了するが、このスイッチがオンされたときは、スタートフラグSTFの値を反転する(ステップD2)。そして、STFの値が「0」から「1」に反転したか、又は、「1」から「0」に反転したかを判別する(ステップD3)。
【0016】
STFの値が「0」から「1」に反転したときは、自動演奏の開始であるので、曲データの先頭アドレスをレジスタADにストアする(ステップD4)。そして、ADのアドレスで示される自動演奏曲のデータを読み出し(ステップD5)、読み出した先頭のデータであるタイムをレジスタT1にストアする(ステップD6)。T1は、次のアドレスのデータまでの時間をストアするレジスタである。さらに、T1のタイムをレジスタT2にもストアする(ステップD7)。T2は、自動演奏の開始から演奏パートの最初のノートオンイベントまでの経過時間、および、それ以降の演奏パートにおけるノートオンイベントからノートオンイベントまでの経過時間を累算してストアするレジスタである。
【0017】
次に、演奏指示のために曲データメモリ8を先読みするレジスタGUIDEADにADのアドレスをストアし(ステップD8)、GUIDEADのアドレスを進める(ステップD9)。そして、GUIDEADのアドレスで示されるデータを前もって読み出し(ステップD10)、読み出したデータの内容を判別する。
【0018】
ステップD3において、STFが「1」から「0」に反転したときは、自動演奏の停止であるので、発音中のすべてのノートを消音するオールノートオフ処理を行い(ステップD11)、鍵盤6のすべてのガイド表示を消灯する(ステップD12)。また、自動演奏を進めるタイマーカウントを禁止する(ステップD13)。そして、このフローを終了して、図3のスイッチ処理のステップB3に移行する。
【0019】
図6のフローにおいて、ステップD10においてGUIDEADのアドレスで読み出したデータが曲の終りを示すENDであるか否かを判別し(ステップD14)、ENDである場合には、曲の開始から最初の押鍵までの経過時間、および、それ以降においては、前回の押鍵から今回の押鍵までの経過時間をストアするレジスタT3に「0」をストアして初期化する(ステップD15)。そして、タイマーカウントを禁止解除にする(ステップD16)。そして、このフローを終了して、図3のスイッチ処理のステップB3に移行する。
【0020】
GUIDEADのアドレスで読み出したデータがENDでない場合には、そのデータがタイムであるか否かを判別する(ステップD17)。データがタイムである場合には、レジスタT2にそのタイムを加算して累算する(ステップD18)。この後は、図5のフローのステップD9に移行して、GUIDEADのアドレスを進める。読み出したデータがタイムでない場合には、そのデータが演奏パートのノートオンイベントであるか否かを判別する(ステップD19a)。演奏パートのノートオンイベントでない場合には、図5のフローのステップD9に移行して、GUIDEADのアドレスを進める。
【0021】
ステップD19aにおける判別の結果、読み出したデータが演奏パートのノートオンイベントである場合には、レジスタT2の値をレジスタT4にストアする(ステップD19b)。すなわち、自動演奏曲の開始から最初のノートオンイベントまでの時間がT4にストアされる。次に、ノートオンイベントのノートをレジスタNEXTNOTEにストアする(ステップD20)。さらに、NEXTNOTEにストアしたノートに対応する鍵のガイド表示を点滅する(ステップD21)。すなわち、次に押鍵すべき鍵を予告する。ガイド表示を点滅した後は、ステップD15に移行して、T3の値を「0」に初期化し、ステップD16においてタイマーカウントを禁止解除にする。そして、このフローを終了する。
【0022】
図7ないし図10は、メインフローにおける自動演奏処理のフローチャートである。このフローに入ると、STFが「1(自動演奏)」であるか否かを判別し(ステップE1)、STFが「1」である場合には、テンポに応じた最小単位音符時間が経過したか否かを判別する(ステップE2)。STFが「0(自動演奏停止)」である場合、又は、最小単位音符時間が経過していない場合にはこのフローを終了する。最小単位音符時間が経過したときは、曲の開始からの経過時間をストアするレジスタT3の値をインクリメントする(ステップE3)。
【0023】
次に、フラグWAITFが「0」であるか否かを判別する(ステップE4)。WAITFは、演奏パートのノートオンイベントの演奏開始タイミングになったときに、押鍵を待つモードで「1」にセットされるフラグである。このフラグが「0」である場合には、T1の値をデクリメントして(ステップE5)、曲を進行させる。このフラグが「1」である場合には、T1の値のデクリメントは行なわず、このフローを終了して押鍵を待つ。
【0024】
ステップE5においてT1の値をデクリメントした後は、その値が「0」に達したか否かを判別する(ステップE6)。すなわち、次のデータを読み出すべき時間に達したか否かを判別する。T1の値が「0」に達していない場合には、このフローを終了してメインフローに戻る。
T1の値が「0」に達したときは、ADのアドレスを進める(ステップE7)。そして、ADのアドレスで示すデータを読み出し(ステップE8)、読み出したデータの内容を判別する。
【0025】
読み出したデータがENDであるか否かを判別し(ステップE9)、ENDである場合、すなわち、曲が終了したときは、STFを「0」にリセットし(ステップE10)、オールノートオフ処理を行い(ステップE11)、ガイド表示を消灯する(ステップE12)。また、タイマーカウントを禁止する(ステップE13)。そして、このフローを終了してメインフローに戻る。
【0026】
読み出したデータがENDでない場合には、図8のフローにおいて、そのデータがタイムであるか否かを判別する(ステップE14)。タイムである場合には、レジスタT1にタイムをストアする(ステップE15)。そして、このフローを終了してメインフローに戻る。
読み出したデータがタイムでない場合には、そのデータがイベントであるか否かを判別する(ステップE16)。イベントでない場合には、図7のステップE7に移行してADのアドレスを進める。イベントである場合には、イベントのパートが演奏パートでないか否かを判別する(ステップE17)。演奏パートでない場合には、そのデータを音源9へ送出する(ステップE18)。例えば、演奏パートがメロディパートである場合には、伴奏パートを音源9に送出する。演奏パート以外のパートのイベントを音源9に送出した後は、図7のステップE7に移行してADのアドレスを進める。
一方、イベントのパートが演奏パートである場合には、そのイベントがノートオフであるか否かを判別する(ステップE19)。ノートオフである場合には、ノートオフのノートに対応する鍵のガイド表示を消灯する(ステップE20)。そして、図7のステップE7に移行してADのアドレスを進める。
【0027】
読み出したデータがノートオフでない場合には、図9のフローにおいて、そのデータがノートオンであるか否かを判別する(ステップE21)。ノートオンでない場合には、図7のステップE7に移行してADのアドレスを進める。ノートオンである場合には、ノートオンのノートをレジスタCURRETNOTEにストアする(ステップE22)。次に、CURRETNOTEにストアされたノートに対応するガイド表示を点灯する(ステップE23)。そして、T2の値を「0」にクリアし(ステップE24)、フラグWAITFを「1」にセットする(ステップE25)。
次に、ADのアドレスをGUIDEADにストアして(ステップE26)、GUIDEADのアドレスを進める(ステップE27)。そして、GUIDEADのアドレスで示すデータを読み出し(ステップE28)、読み出したデータの内容を判別する。
【0028】
読み出したデータが曲の終りを示すENDであるか否かを判別し(ステップE29)、ENDである場合には、このフローを終了してメインフローに戻る。ENDでない場合には、図10のフローにおいて、データが演奏パートのノートオンであるか否かを判別する(ステップE30a)。演奏パートのノートオンである場合には、レジスタT2の値をレジスタT4にストアする(ステップE30b)。すなわち、前回のノートオンイベントから今回のノートオンイベントまでの時間をT4にストアする。次に、ノートオンイベントのノートをレジスタNEXTNOTEにストアし(ステップE31)、NEXTNOTEのノートに対応するガイド表示を点滅する(ステップE32)。そして、このフローを終了してメインフローに戻る。
【0029】
読み出したデータが演奏パートのノートオンでない場合には、データがタイムであるか否かを判別する(ステップE33)。タイムである場合には、T2にタイムを加算して累算する(ステップE34)。この後、又は、読み出したデータがタイムでない場合には、図9のステップE27に移行して、GUIDEADのアドレスを進めて、GUIDEADのアドレスで示すデータを読み出す。すなわち、図9のステップE25において、フラグWAITFを「1」にセットした後は、GUIDEADのアドレスを進めながら、そのアドレスのデータをENDになるまで順次読み出す。
【0030】
図11および図12は、メインフローにおける鍵盤処理のフローチャートである。このフローに入ると、鍵走査を行なって(ステップF1)、押鍵および離鍵の鍵変化を判別する(ステップF2)。鍵変化がない場合には、このフローを終了してメインフローに戻る。オフからオンへの鍵変化があったとき、すなわち押鍵がなされたときは、フラグWAITFが「1(押鍵待ち)」であるか否かを判別する(ステップF3)。
【0031】
WAITFが「1」である場合、すなわち、自動演奏処理で読み出したデータが演奏パートのノートオンイベントの演奏開始タイミングになって、対応するガイド表示を点灯し、押鍵を待っている状態である場合には、レジスタNOTEに押鍵された鍵番号をストアして(ステップF4)、NOTEの鍵番号に基づくノートオンイベントを作成する(ステップF5)。そして、そのノートオンイベントを音源9に送出し(ステップF6)、フラグWAITFを「0」にリセットする(ステップF7)。
【0032】
次に、T3にストアされている前回の押鍵から今回の押鍵までの時間と、T4にストアされている前回のノートオンイベントから今回のノートオンイベントまでの時間との比率を算出して、算出した比率をレジスタHIRITUにストアする(ステップF8)。次に、ROM3にあらかじめ記憶されているテーブルにおいて、HIRITUの比率に対応するテーブルの値であるTABLE(HIRITU)をレジスタTEMPOにストアする(ステップF9)。そして、TEMPOの値に基づいて最小単位音符時間を変更する(ステップF10)。この場合には、T4の時間がT3の時間よりも長い分だけ曲のテンポを遅くする。すなわち、演奏開始タイミングに対する押鍵タイミングの遅れ分に応じてテンポを遅くする。最小単位音符時間を変更した後は、T3の値を「0」にクリアして(ステップF11)、このフローを終了してメインフローに戻る。
【0033】
ステップF2において、オンからオフへの鍵変化があったとき、すなわち離鍵がなされたときは、NOTEに基づくノートオフイベントを作成して(ステップF12)、そのノートオフイベントを音源9に送出する(ステップF13)。そして、このフローを終了してメインフローに戻る。
【0034】
ステップF3において、フラグWAITFが「0」である場合、すなわち、演奏パートのノートオンの演奏開始タイミングより前に押鍵があったときは、図12のフローにおいて、CURRENTNOTEのノートをNOTEにストアする(ステップF14)。そして、NOTEに基づくノートオフイベントを作成して(ステップF15)、そのノートオフイベントを音源9に送出する(ステップF16)。次に、NOTEに基づくノートオンイベントを作成して(ステップF17)、そのノートオンイベントを音源9に送出する(ステップF18)。すなわち、現在発音中のノートを瞬間的に消音した後、再びその同じノートで発音を続行する。したがって、耳に聞こえる音としては、現在発音中のノートがそのまま続行している状態になる。
【0035】
ステップF14ないしステップF16の処理で現在発音中のノートを瞬間的に消音するのは、最小単位音符時間を変更するためである。ステップF18において、現在発音中のノートに基づくノートオンイベントを音源9に送出した後は、図11のステップF8に移行して、T3の時間とT4の時間との比率を算出して、算出した比率をレジスタHIRITUにストアする。そして、ステップF10の処理でTEMPOの値に基づいて最小単位音符時間を変更する。この場合には、テンポに応じた曲の進行速度よりも押鍵の操作のほうが早いので曲のテンポを早くする。
【0036】
以上のように、上記実施形態によれば、曲データメモリ8から自動演奏曲の曲データを読み出して、読み出した曲データにおけるノートオンイベントの演奏開始タイミングをガイドし、そのガイドしたノートオンイベントの演奏開始タイミング以後の時間に鍵盤6によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、ガイドしたノートオンイベントの演奏開始タイミングより前の時間に鍵盤6によって演奏データが入力されたときはその演奏データを無効にする。したがって、初心者のユーザが現在演奏している曲の位置を見失うことがなくなり、現在演奏している曲の位置をユーザが容易に把握できる。
【0037】
この場合において、ノートオンイベントの演奏開始タイミングから演奏データが入力されたタイミングまでの時間差に応じて自動演奏曲のテンポを補正する。したがって、自動演奏曲のテンポにユーザの演奏のタイミングが合わない場合でも、自動演奏曲のテンポをユーザの演奏のタイミングに合わせて自動的に変更することができる。
【0038】
上記実施形態においては、ガイド表示部5によってノートオンイベントに対応する押鍵すべき鍵をガイドする構成にしたが、「エニキーモード」や「ワンキーモード」の機能によって、押鍵すべき鍵を特定せずに演奏する場合でも、本発明を適用できることはいうまでもない。したがって、本発明によれば、広範な初心者のユーザに対する演奏支援の機能を十分に発揮できる。
【0039】
上記実施形態の変形例として、CPU1は、ガイドしたノートオンイベントの演奏開始タイミングを所定時間以上経過しても、鍵盤6によって演奏データが入力されない場合には、そのノートオンイベントに基づいて発音指示を行い、次の曲データを読み出すように構成してもよい。この構成によれば、正しいタイミングで押鍵しない場合でも、演奏が止まってしまうことがなくなり、演奏開始タイミングをユーザが容易に把握できる。
【0040】
なお、上記実施形態においては、ROM3にあらかじめ格納されている演奏処理のプログラムをCPU1が実行する演奏装置について説明したが、FD(フレキシブルディスク)やCD−ROMなどの外部記憶媒体に記憶された演奏処理のプログラム、又は、インターネットなどの通信網を介してダウンロードした演奏処理のプログラムをハードディスクなどにインストールして実行する構成も可能である。この場合には、プログラムの発明を実現する。
【0041】
すなわち、その演奏処理のプログラムは、所定の記憶手段から自動演奏曲の曲データを読み出す第1のステップと、第1のステップによって読み出された曲データにおけるノートオンイベントの演奏開始タイミングをガイドする第2のステップと、第2のステップによりガイドされたノートオンイベントの演奏開始タイミング以後の時間に所定の操作子によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、第2のステップによりガイドされたノートオンイベントの演奏開始タイミングより前の時間に操作子によって演奏データが入力されたときはその演奏データを無効にする第3のステップとを実行する。
【0042】
【発明の効果】
本発明によれば、所定の記憶手段から自動演奏曲の曲データを読み出して、読み出した曲データにおけるノートオンイベントの演奏開始タイミングをガイドし、そのガイドしたノートオンイベントの演奏開始タイミング以後の時間に操作子によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、ガイドしたノートオンイベントの演奏開始タイミングより前の時間に操作子によって演奏データが入力されたときはその演奏データを無効にする。したがって、初心者のユーザが現在演奏している曲の位置を見失うことがなくなり、現在演奏している曲の位置をユーザが容易に把握できるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の実施形態における演奏装置の構成を示すブロック図。
【図2】図1のCPUの動作を示すメインフローチャート。
【図3】図2のメインフローチャートにおけるスイッチ処理のフローチャート。
【図4】図3のスイッチ処理におけるテンポスイッチ処理のフローチャート。
【図5】図3のスイッチ処理におけるスタート/ストップスイッチ処理のフローチャート。
【図6】図5に続くスタート/ストップスイッチ処理のフローチャート。
【図7】図2のメインフローチャートにおける自動演奏処理のフローチャート。
【図8】図7に続く自動演奏処理のフローチャート。
【図9】図8に続く自動演奏処理のフローチャート。
【図10】図9に続く自動演奏処理のフローチャート。
【図11】図2のメインフローチャートにおける鍵盤処理のフローチャート。
【図12】図11に続く鍵盤処理のフローチャート。
【符号の説明】
1 CPU
3 ROM
4 RAM
5 ガイド表示部
6 鍵盤
7 スイッチ部
8 曲データメモリ
9 音源
10 発音回路
Claims (5)
- 所定の記憶手段から自動演奏曲の曲データを読み出すデータ読出手段と、
前記データ読出手段によって読み出された曲データにおけるノートオンイベントの演奏開始タイミングをガイドする演奏ガイド手段と、
操作に応じて演奏データを入力する操作子と、
前記演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミング以後の時間に前記操作子によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、前記演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミングより前の時間に前記操作子によって演奏データが入力されたときはその演奏データを無効にする発音制御手段と、
を備えたことを特徴とする演奏装置。 - ノートオンイベントの演奏開始タイミングから演奏データが入力されたタイミングまでの時間差に応じて前記自動演奏曲のテンポを補正するテンポ補正手段をさらに備えたことを特徴とする請求項1記載の演奏装置。
- 前記操作子は、押鍵操作に応じて演奏データを入力する鍵盤であり、前記演奏ガイド手段は、前記鍵盤を各鍵ごとに点灯する機能を有し、前記データ読出手段によって読み出された曲データにおけるノートオンイベントの音高に対応する鍵をそのノートオンイベントの演奏開始タイミングで点灯して演奏をガイドすることを特徴とする請求項1記載の演奏装置。
- 前記発音制御手段は、前記演奏ガイド手段によってガイドされたノートオンイベントの演奏開始タイミングを所定時間以上経過しても前記操作子によって演奏データが入力されない場合には、そのノートオンイベントに基づいて発音指示を行い、前記データ読出手段に曲データを読み出す指令を与えることを特徴とする請求項1記載の演奏装置。
- コンピュータに、
所定の記憶手段から自動演奏曲の曲データを読み出す第1のステップと、
前記第1のステップによって読み出された曲データにおけるノートオンイベントの演奏開始タイミングをガイドする第2のステップと、
前記第2のステップによりガイドされたノートオンイベントの演奏開始タイミング以後の時間に所定の操作子によって演奏データが入力されたときはその演奏データに基づいて発音指示を行い、前記第2のステップによりガイドされたノートオンイベントの演奏開始タイミングより前の時間に前記操作子によって演奏データが入力されたときはその演奏データを無効にする第3のステップと、
を実行させることを特徴とする演奏処理のプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002376179A JP4207564B2 (ja) | 2002-12-26 | 2002-12-26 | 演奏装置および演奏処理のプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002376179A JP4207564B2 (ja) | 2002-12-26 | 2002-12-26 | 演奏装置および演奏処理のプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004205892A JP2004205892A (ja) | 2004-07-22 |
| JP4207564B2 true JP4207564B2 (ja) | 2009-01-14 |
Family
ID=32813704
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002376179A Expired - Fee Related JP4207564B2 (ja) | 2002-12-26 | 2002-12-26 | 演奏装置および演奏処理のプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4207564B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4748593B2 (ja) * | 2006-04-11 | 2011-08-17 | 株式会社河合楽器製作所 | 電子楽器 |
| JP7298653B2 (ja) * | 2021-07-30 | 2023-06-27 | カシオ計算機株式会社 | 電子機器、電子楽器、方法、およびプログラム |
-
2002
- 2002-12-26 JP JP2002376179A patent/JP4207564B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004205892A (ja) | 2004-07-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| RU2502119C1 (ru) | Музыкальный звукогенерирующий инструмент и машиночитаемый носитель | |
| JP5168297B2 (ja) | 自動伴奏装置および自動伴奏プログラム | |
| US8502057B2 (en) | Electronic musical instrument | |
| JP3303713B2 (ja) | 自動演奏装置 | |
| US7112738B2 (en) | Electronic musical instrument | |
| JP2012022095A (ja) | 電子楽器 | |
| JP2004205567A (ja) | 演奏評価装置および演奏評価プログラム | |
| JPH08221063A (ja) | 自動演奏装置 | |
| JP3743024B2 (ja) | 演奏練習装置 | |
| JP3358292B2 (ja) | 電子楽器 | |
| JP4207564B2 (ja) | 演奏装置および演奏処理のプログラム | |
| US20070119291A1 (en) | Musical performance training device and recording medium for storing musical performance training program | |
| JP4808868B2 (ja) | 自動演奏装置 | |
| JP3551014B2 (ja) | 演奏練習装置、演奏練習方法及び記録媒体 | |
| JP4096784B2 (ja) | 演奏評価装置および演奏評価プログラム | |
| JP2010117419A (ja) | 電子楽器 | |
| JP3743364B2 (ja) | 演奏練習装置 | |
| JP3885737B2 (ja) | 演奏評価装置および演奏評価プログラム | |
| JP5692275B2 (ja) | 電子楽器 | |
| JP3620366B2 (ja) | 電子鍵盤楽器 | |
| JP2000293168A (ja) | 鍵盤楽器の演奏支援装置 | |
| JP3345453B2 (ja) | 自動演奏装置 | |
| JP5449963B2 (ja) | 自動旋律演奏装置および自動旋律演奏機能用プログラム | |
| JP3006136B2 (ja) | 電子楽器 | |
| JP2004317775A (ja) | 自動演奏装置および自動演奏処理のプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051003 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060208 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060406 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080519 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080616 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080624 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080821 |
|
| 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: 20080930 |
|
| 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: 20081013 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111031 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111031 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121031 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121031 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131031 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |