JP3966328B2 - 電子鍵盤楽器 - Google Patents

電子鍵盤楽器 Download PDF

Info

Publication number
JP3966328B2
JP3966328B2 JP2005009656A JP2005009656A JP3966328B2 JP 3966328 B2 JP3966328 B2 JP 3966328B2 JP 2005009656 A JP2005009656 A JP 2005009656A JP 2005009656 A JP2005009656 A JP 2005009656A JP 3966328 B2 JP3966328 B2 JP 3966328B2
Authority
JP
Japan
Prior art keywords
key
event
automatic performance
driving
time
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
JP2005009656A
Other languages
English (en)
Other versions
JP2005141246A (ja
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 JP2005009656A priority Critical patent/JP3966328B2/ja
Publication of JP2005141246A publication Critical patent/JP2005141246A/ja
Application granted granted Critical
Publication of JP3966328B2 publication Critical patent/JP3966328B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

この発明は自動演奏機能を備えた電子鍵盤楽器に関する。
自動的に演奏を行う楽器として、いわゆる自動演奏ピアノのように鍵盤の鍵を演奏データに従って駆動することによりピアノの打弦機構を動作させて音を出すタイプのものと、電子的な音源により演奏データに従って楽音信号を形成する演奏機能付き電子楽器とがある。
ところで、上述のもののうち自動演奏ピアノは自動演奏の際に鍵が動くので演奏を聴くだけでなく見て楽しむことができるという利点がある。しかしながら、自動演奏ピアノの場合、ピアノの音しか発音させることができず、また、高価でもある。一方、演奏機能付き電子楽器は、電子的な音源により多彩な楽音を発生させることができ、自動ピアノに比べれば安価ではあるが、自動演奏時に楽音しか発生されないため、演奏を見て楽しむということができない。
この発明は、このような背景の下でなされたものであり、自動演奏の際に楽音が発生されるのみならず、これと同期して該当する鍵が駆動され、演奏を聴くだけでなく見て楽しむことができる電子鍵盤楽器を提供することを目的としている。
請求項1に係る発明は、自動演奏イベントを発生する手段と、自動演奏イベントに基づく駆動指示に従って鍵盤を駆動する鍵駆動手段と、前記鍵盤の動作を検出することにより演奏イベントを発生する検出手段と、前記鍵駆動手段に対して前記駆動指示が与えられてから前記検出手段により演奏イベントが発生されるまでの反応時間を測定し、自動演奏の際には、前記自動演奏イベントに対応した楽音形成処理を楽音形成手段へ指示するとともに、この指示のタイミングよりも前記反応時間分だけ先行して該自動演奏イベントに対応した駆動指示を前記鍵駆動手段へ出力する制御手段とを具備し、前記制御手段は、自動演奏時に前記駆動指示を出力する際に前記反応時間を測定することを特徴とする電子鍵盤楽器を要旨とする。
請求項2に係る発明は、自動演奏イベントを発生する手段と、自動演奏イベントに基づく駆動指示に従って鍵盤を駆動する鍵駆動手段と、前記鍵盤の動作を検出することにより演奏イベントを発生する検出手段と、前記鍵駆動手段に対して前記駆動指示が与えられてから前記検出手段により演奏イベントが発生されるまでの反応時間を、前記鍵盤を構成する鍵毎に測定し、測定した反応時間を前記鍵毎に設けられた記憶領域にそれぞれ記憶し、自動演奏の際には、前記自動演奏イベントに対応した楽音形成処理を楽音形成手段へ指示するとともに、この指示のタイミングよりも前記鍵毎に記憶された前記反応時間分だけ先行して該自動演奏イベントに対応した駆動指示を前記鍵駆動手段へ出力する制御手段とを具備することを特徴とする電子鍵盤楽器を要旨とする。
請求項に係る発明は、前記制御手段は、自動演奏に先立って前記反応時間を測定することを特徴とする請求項記載の電子鍵盤楽器を要旨とする。
請求項4に係る発明は、前記制御手段は、前記自動演奏イベントの指定に従って複数種類の駆動強度に対応した駆動指示を前記鍵駆動手段へ出力するものであり、これらの複数種類の駆動強度について前記反応時間の測定を行うことを特徴とする請求項1又は2に記載の電子鍵盤楽器を要旨とする。
上記請求項1〜4に係る発明によれば、鍵の反応時間が測定され、この反応時間を考慮したタイミングで自動演奏イベントに対応した駆動指示が行われる。従って、自動演奏イベントに対応した楽音形成処理と鍵駆動とを同期化させることができる。
本発明に係る電子鍵盤楽器によれば、自動演奏の際に楽音が発生されるのみならず、これと同期して該当する鍵が駆動されるため、演奏を聴くだけでなく見て楽しむことができるという効果がある。
以下、本発明を更に理解しやすくするため、実施例について説明する。かかる実施例は、本発明の一態様を示すものであり、この発明を限定するものではなく、本発明の範囲で任意に変更可能である。
<第1実施例>
A.本実施例の構成
図1は本実施例による電子鍵盤楽器の構成を示すブロック図である。以下、この図を参照し、本実施例の構成について説明する。
(1)鍵盤、鍵駆動手段および検出手段
図1において、1は多数の鍵が配備されてなる鍵盤、2は自動演奏の際に鍵盤1を構成する各鍵を駆動するための鍵駆動回路である。また、3は押鍵検出回路であり、この押鍵検出回路3を介して鍵盤1の各鍵の押鍵、離鍵が検出され、キーイベント(演奏イベント)が発生される。このキーイベントは押離鍵された鍵の番号を表すキーコードと押離鍵の速度を表すベロシティを含んでいる。
図2は、鍵盤1における各鍵の取り付け構造を示すものであり、同図において101が鍵である。この図に示すように、鍵101は、支点102を中心に回動自在に支持されている。図2において鍵101の右端の部分が演奏者と対面する前端部であり、この部分はバネ103によって上方へ持上げられている。一方、鍵101の後端部の下方には駆動機構104が設けられている。この駆動機構104は鍵駆動のための手段としてソレノイド(図示略)を内蔵している。例えば押鍵駆動が行われる場合には、このソレノイドへの通電によって磁界が発生され、この磁界により鍵101の後端部下方に設けられた被駆動部104が上方へ突き上げ駆動され(矢印m)、この突き上げ駆動により、鍵101の前端部がバネ103の反発力に抗して降下される(矢印M)。駆動機構104による突き上げ駆動がされていないときには、演奏者が行う押鍵、離鍵操作は、何の妨げも受けない。各鍵を押鍵駆動あるいは離鍵駆動するためには各鍵に対応した駆動機構104のソレノイドに対する通電制御を行う必要があるが、この通電制御は図1における鍵盤駆動回路2を介して行われる。
(2)操作および表示のための手段
4はこの電子鍵盤楽器の操作パネル面に配備された各種スイッチ類、5はこれらの各スイッチのオン/オフ状態を検知するためのスイッチ検出回路、6は操作パネル面上のディスプレイ(図示略)に演奏者に対する各種メッセージの表示を行わせるための表示回路である。
(3)楽音形成手段
7は電子的な構成により楽音信号を形成する音源回路である。この音源回路7によって形成された楽音信号は、効果回路8によって各種の音響的効果が付与され、サウンドシステムSSから楽音として発音される。これらの音源回路7、効果回路8およびサウンドシステムSSが本実施例における楽音形成手段を構成している。すなわち、本実施例は、上述のように鍵101を駆動するための鍵盤駆動回路2等を備えてはいるものの、これらによって行われる鍵駆動により打弦機構等を動作せしめて発音を行うものではなく、専らこの電子的な楽音形成手段によって楽音を出力するものである。
(4)制御手段
図1において、CPU10、ROM11、RAM12およびタイマ13は、この電子鍵盤楽器の制御手段を構成している。すなわち、CPU10は、バスを介して図1に示される各部を制御することにより、この電子鍵盤楽器の所期の機能を提供するものである。ROM11はCPU10によって実行される制御プログラムを予め記憶している。RAM12はCPU10が制御を行う際に必要な各種制御情報の一時記憶等に使用される。また、自動演奏が行われる際にはイベントおよびデルタデータ(後述)からなる演奏データが演奏に先立ってこのRAM12に記憶される。タイマ13はCPU10が各種制御を行うタイミングを得るために設けられた手段であり、予め設定された時間間隔で定期的にタイマ割込み信号をCPU10に供給する。このタイマ割込み信号には、常に一定時間間隔で出力されるタイマ割込み信号のほか、自動演奏の設定テンポに応じた時間間隔で発生される自動演奏用タイマ割込み信号がある。通常、一定時間間隔のタイマ割込み信号は、自動演奏用タイマ割込み信号の発生周期よりも十分に短い周期(本実施例では1ms)で発生される。
本実施例においてCPU10が行う制御のうち主なものを挙げると次の通りである。
a.通常の鍵盤演奏のための制御
この制御は、基本的には通常の電子鍵盤楽器において行われるものと同様である。すなわち、CPU10は、押鍵検出回路3を介してキーオンイベントおよびキーオフイベント(演奏イベント)を検出し、これらのキーイベントに応答して、音源回路7による発音および消音の制御を行う。ただし、本実施例においては、自動演奏時においても演奏者による鍵盤演奏を認めているため、押鍵検出回路3から検出される演奏イベントには自動演奏に対応したものと演奏者の鍵盤演奏に対応したものとが混在することとなり、その取り扱いが問題となる。なお、この取り扱いについては後述する。
b.自動演奏のための制御
本実施例では、自動演奏に先立ち、演奏データがFDD15等から供給され、図3に例示するような態様でRAM12に記憶される。この図に示すように、演奏データはイベントとデルタタイムからなる一連のデータであり、RAM12内の連続した各アドレスにデルタタイム、イベント、デルタタイム、…という具合に順次交互に記憶されている。ここで、デルタタイムは、その直後にあるイベントをRAM12から読み出すまでの待機時間を指定する情報である。イベントは、楽音信号の形成に関連した指示を行う情報であり、キーイベント(自動演奏イベント)の他、音色設定等の制御情報も含まれる。キーイベントには、発音を指示するキーオンイベントと消音を指示するキーオフイベントがある。また、キーイベントには発音または消音の対象となる音高(すなわち、電子鍵盤楽器においては鍵の番号)を指定するキーコード、発音の強度を指定するベロシティが含まれている。自動演奏開始の指示が与えられた場合、CPU10は、これらの演奏データをRAM12から逐次読み出し、この演奏データに従って音源回路7の楽音信号形成処理を制御し、自動演奏を行う。
また、本実施例における自動演奏は、音による演出のみならず、これに合わせて鍵の動きによる演出を行うものである。すなわち、CPU10は、キーイベントをRAM12から読み出した場合、これに応答した楽音形成の制御を行うのみならず、このキーイベントに対応した鍵を押鍵駆動あるいは離鍵駆動すべく、鍵盤駆動回路2に対して必要な指令を行う。
以上の自動演奏のための制御は、タイマ13から供給されるタイマ割込み信号に同期して行われる。
さて、本実施例は、自動演奏と演奏者によるマニュアル演奏を同時に行い得るように構成されており、自動演奏中において鍵盤1の各鍵は演奏データに従って駆動されると共に演奏者によっても押離鍵が行われる。このため、マニュアル演奏の結果生じたキーイベント(演奏イベント)と演奏データ中のキーイベント(自動演奏イベント)に従って押離鍵駆動が行われた結果生じたキーイベントの両方が押鍵検出回路3を介して検出される。これらの各キーイベントのうち前者のものは音源回路7へ送って発音処理あるいは消音処理を行わせるべきものであるが、後者のものは無効イベントであり、音源回路7へは送らず無視しなければならない。無視しないで音源回路7へ送ると、同一の演奏データに対応した発音処理または消音処理が重複して行われてしまうからである。
そこで、本実施例においては、RAM12内の所定の記憶エリアに図4に示す第1〜第3のバッファを設定し、CPU10がこれらの各バッファを用いることによりキーイベントの時系列的な管理を行い、上記の重複した発音処理あるいは消音処理が行われないように制御を行っている。なお、これらのバッファを使用した制御については、本実施例の動作説明の際に詳述する。
c.鍵駆動タイミングの最適化のための制御
上述したように、本実施例においては、音源回路7によって発音を行わせる際にその楽音に対応した鍵を押離鍵させる。ここで、鍵駆動回路2によって鍵の駆動を開始してから実際に押鍵または離鍵が行われるまでに遅延が生じる。従って、音源回路7によって発音を行うのと同時に鍵駆動回路2による鍵の駆動を行ったのでは、押鍵および離鍵の動きが発音タイミングおよび消音タイミングよりも遅れてしまう。
そこで、本実施例においては、自動演奏中、再生すべきキーイベントが発生した場合、図5に示す態様で鍵駆動およびキーイベントに対応した発音・消音のタイミング制御を行う。すなわち、
i)キーイベント発生時点から所定の待機時間Tだけ待機した後のタイミングで当該キーイベントを音源回路7に送り、キーイベントに対応した発音または消音を行わせる。
ii)音源回路7にキーイベントを送るタイミングよりも所定の先行時間dTだけ前のタイミングにおいて、当該キーイベントに対応した押鍵または離鍵の指示を鍵駆動回路2に与える。先行時間dTとしては、押鍵または離鍵の指示を鍵駆動回路2に与えてから、押鍵または離鍵が実際に行われるまでの反応時間を使用する。
このような制御により、鍵の動きと音源回路7の発音および消音タイミングとの同期化が行われる。
ところで、鍵駆動装置105は、発熱により、その特性が変動する。そして、この特定変動が生じた場合、上記反応時間も変動することとなる。また、鍵駆動装置105の特性には各鍵間でばらつきがある。従って、すべての鍵について、鍵の動きを正確に発音または消音タイミングと同期させるためには、上記時間dTとして各鍵毎に最適値を設定する必要がある。
そこで、本実施例においてCPU10は、上記反応時間を各鍵毎に測定し、この測定結果に基づいて各鍵毎に最適な先行時間dTを求め、以後はこの先行時間dTに従った鍵駆動のタイミング制御を行う。
(5)自動演奏のための情報を授受あるいは記憶するための手段
14は外部との間でMIDI情報の送受信を行うためのMIDIインタフェース、15は演奏データを記憶するためのFD(フレキシブルディスク)の駆動を行うFDD(フレキシブルディスク駆動装置)である。これらは、この電子鍵盤楽器において自動演奏を行うのに必要な演奏データを得るため、あるいは電子鍵盤楽器の演奏により生じた演奏データを記録または外部に出力するために設けられた手段である。
B.本実施例の動作
図6〜図12はCPU10によって実行される制御の内容を示すフローチャートである。以下、これらの図を参照し、本実施例の動作を説明する。
(1)全体フロー
この電子鍵盤楽器の電源が投入されると、CPU10は図6にフローを示すメインルーチンを実行する。すなわち、最初に初期化処理(ステップS1)を実行し、以後は、キースキャン処理(ステップS2)、自動演奏処理(ステップS3)、発音・鍵駆動処理(ステップS4)および操作パネル面上の各種スイッチ類の状態検出等のその他の処理(ステップS5)を繰返し実行する。図9はステップS1において実行される初期化処理ルーチンのフローを示している。また、図10〜図12はステップS2〜S4において実行されるキースキャン処理ルーチン、自動演奏処理ルーチンおよび発音・鍵駆動処理ルーチンの各フローを示している。
一方、タイマ13からCPU10に対し、自動演奏の設定テンポに応じた時間間隔で自動演奏用タイマ割込み信号が供給される。この結果、CPU10は、その時点で実行中の処理を中断し、図7にフローを示す自動演奏用タイマ割込み処理ルーチンを実行することにより、自動演奏フラグAPに"1"をセットする(ステップS101)。そして、この処理の終了後、中断していた処理を再開する。また、上記自動演奏用タイマ割込み信号とは別に、タイマ13からCPU10に対し、一定時間間隔(例えば1ms間隔)でタイマ割込み信号が供給される。この結果、CPU10は、実行中の処理を中断して図8にフローを示す一定時間毎タイマ割込み処理ルーチンを実行する。すなわち、キーフラグKEYに"1"をセットし(ステップS201)、発音・鍵駆動フラグTG_KDにも"1"をセットする(ステップS202)。そして、この処理の終了により、中断していた処理を再開する。
(2)初期化処理
本実施例においては、電源投入直後の初期化処理(図6に示すメインルーチンのステップS1)において、上述した鍵駆動タイミングの最適化のための処理を行う。ここで、図9を参照し、この初期化処理の詳細について説明する。まず、ステップS301に進み、鍵番号レジスタKNに初期値「1」を設定する。次いでステップS302に進むと、鍵駆動回路2に対し鍵番号レジスタKNの内容に対応した鍵(すなわち、この場合は第1番目の鍵)についての押鍵駆動指示およびこの押鍵駆動の強度を指定する押鍵信号Fを供給するとともに、計時を開始する。この結果、鍵駆動回路2により、上記押鍵駆動指示のなされた鍵に対応した駆動機構104のソレノイドに押鍵信号Fに対応した電流が通電され、押鍵信号Fに対応した強度での押鍵駆動が行われる。
次にステップS303に進み、上記押鍵駆動指示に対応したキーオンイベントが押鍵検出回路3を介して検出されるまで待機する。そして、該当するキーオンイベントが検出された場合にはステップS304に進んで計時を終了する。そして、この計時により得られた押鍵駆動指示からキーオンイベント発生までの反応時間を示す情報を、鍵番号KNおよび押鍵強度Fに対応した押鍵用先行時間レジスタdT_on(KN,F)に格納する。次にステップS305に進み、上記待機時間Tから押鍵用先行時間レジスタdT_on(KN,F)の内容を減算する。そして、この減算結果を鍵番号KNおよび押鍵強度Fに対応した押鍵用待機時間レジスタDT_on(KN,F)に格納する。
以上説明したステップS302〜S305に相当する処理を離鍵駆動についても実施することにより(ステップS306〜S309)、離鍵駆動指示からキーオフイベント発生までの反応時間を測定し、この測定結果に従って鍵番号KNおよび離鍵強度Fに対応した離鍵用待機時間を求め、離鍵用待機時間レジスタDT_off(KN,F)に格納する。
そして、ステップS310に進み、鍵番号レジスタKNの内容が最大値(例えば「88」)と等しいか否かを判断する。そして、この判断結果が「NO」の場合は、鍵番号レジスタKNの内容を1だけ増加させ(ステップS311)、ステップS302〜S310)を実行する。
鍵盤1を構成するすべての鍵について、上記ステップS301〜S310が実行されると、ステップS310の判断結果が「YES」となり、この初期化処理を終了する。 以上のように、鍵盤上の全鍵について、キーイベントが発生してから押鍵または離鍵の駆動指示の送出まで待機せねばならない時間が求められ、押鍵用待機時間レジスタDT_on(KN,F)および離鍵用待機時間レジスタDT_off(KN,F)内に格納される。
(3)自動演奏
操作パネル上に設けられた自動演奏の指示のためのスイッチがオン状態とされると、この操作がメインルーチンのステップS5において検知され、ランフラグRUNに"1"がセットされる。この結果、以下のように自動演奏のための制御が行われる。
まず、メインルーチンのステップS3から図11に示す自動演奏処理ルーチンへ進むと、そのステップS501においてランフラグRUNの内容が"1"か否かを判断する。この場合、ランフラグRUNに"1"がセットされていることにより、ステップS501の判断結果が「YES」となってステップS502へ進む。なお、自動演奏の指示がなされておらず、ランフラグRUNが"0"となっている場合にはステップS501の結果が「NO」となり、そのままメインルーチンに戻る。すなわち、この自動演奏処理ルーチンの実質的な処理は自動演奏の指示がなされてときのみ実行される。
次にステップS502に進むと、自動演奏フラグAPの内容が"1"か否かを判断する。前述した自動演奏用タイマ割込み信号がタイマ13から供給され、これに伴って図7に示す自動演奏用タイマ割込み処理ルーチンが実行された直後においては、自動演奏フラグAPに"1"がセットされているため、ステップS502の判断結果が「YES」となってステップS503に進む。一方、ステップS502の判断結果が「NO」の場合はメインルーチンに戻る。
次にステップS503に進むと、自動演奏フラグAPに"0"を書込む。次にステップS504に進み、残り時間レジスタTIMEの内容が「0」となっているか否かを判断する。この残り時間レジスタTIMEは、RAM12から演奏データを読み出す時刻までの残り時間を示す情報を記憶するレジスタである。残り時間レジスタTIMEの内容が「0」よりも大きい場合、すなわち、未だ演奏データを読み出す時刻に至っていない場合には、ステップS504の判断結果が「NO」となり、ステップS599へ進んで残り時間レジスタTIMEの内容を1だけ減少させ、メインルーチンに戻る。
再びメインルーチンのステップS3において自動演奏処理ルーチンが実行される際、ステップS502まで進むこととなるが、自動演奏用タイマ割込み信号が発生され、自動演奏フラグAPが"1"にセットされるまでの間は、ステップS502の判断結果が「NO」となるため、ステップS503以降の処理は一切実行されない。そして、自動演奏フラグAPの内容が"1"となった後、自動演奏処理ルーチンが最初に実行される場合に限り、ステップS503以降の処理が実行される。すなわち、自動演奏処理ルーチンにおけるステップS503以降の処理は、自動演奏用タイマ割込み信号の発生タイミングに同期して実行されるものであり、また、1回の自動演奏用タイマ割込み信号の発生に対して1回限り実行される。従って、残り時間レジスタTIMEの内容も、自動演奏用タイマ割込み信号が発生される毎に1ずつ減少してゆくこととなる(ステップS599)。
そして、残り時間レジスタTIMEの内容が「0」になると、ステップS504からステップS505へ進み、RAM12の読み出しアドレスを進めて演奏データを読み出す。次にステップS506に進み、読み出した演奏データがデルタタイムであるか否かを判断する。
演奏データがキーイベント等、デルタタイム以外のデータである場合には、ステップS506の判断結果が「NO」となり、ステップS507に進む。そして、読み出した演奏データがキーオンまたはキーオフのキーイベントであるか否かを判断する。この判断結果が「NO」の場合はそのデータに対応した制御(ステップS508)を行ってステップS505へ戻る。一方、ステップS507の判断結果が「YES」の場合はステップS509へ進み、ステップS505において読み出したキーイベントを第1バッファに書込むと共にこのキーイベントに対応した発音または消音を行うまでの待機時間の初期値として所定の待機時間Tを第1バッファに書込む(図4参照)。次にステップS510へ進み、上記キーイベントおよびこのキーイベントの鍵番号に対応した待機時間の第2バッファへの書込みを行う。すなわち、読み出したキーイベントがキーオンイベントである場合には、その鍵番号KNに対応した押鍵用待機時間レジスタDT_on(KN、F)から押鍵用待機時間を読み出し、キーオンイベントと共に第2バッファへ書込む。また、キーイベントがキーオフイベントである場合には、その鍵番号KNに対応した離鍵用待機時間レジスタDT_off(KN、F)から離鍵用待機時間を読み出し、キーオフイベントと共に第2バッファへ書込む。
ステップS510が終了すると、ステップS505へ戻り、読み出しアドレスを進めて新たな演奏データを読み出し、その演奏データがキーイベント等のデルタタイム以外のデータである場合はステップS506からステップS507へ進み、上述と同様な処理を実行する。
ステップS505においてデルタタイムを読み出した場合はステップS506の判断結果が「YES」となってステップS511へ進む。そして、読み出したデルタタイムを残り時間レジスタTIMEに書込む。このようにして次に演奏データを読み出すまでに待機しなければならない残り時間が設定される訳である。次いでステップS512へ進み、残り時間レジスタTIMEの内容が「0」か否かを判断し、この判断結果が「YES」の場合はステップS505へ戻る。一方、ステップS512の判断結果が「NO」の場合は残り時間レジスタTIMEの内容を1だけ減少させ(ステップS599)、メインルーチンに戻る。
以上のように、自動演奏用タイマ割込み信号の発生に同期したタイミングで、RAM12からキーイベントが逐次読み出され、所定の待機時間Tを示す情報と共に第1バッファに書込まれ、さらに当該キーイベントの鍵番号に対応した待機時間情報と共に第2バッファに書込まれる。
このようにしてバッファに書込まれたキーイベントは、メインルーチンのステップS4において図12に示す発音・鍵駆動処理ルーチンが実行されることにより、楽音形成処理および鍵駆動処理に使用される。
まず、ステップS601に進むと、発音・鍵駆動フラグTG_KDの内容が"1"か否かを判断する。そして、この判断結果が「YES」の場合は発音・鍵駆動フラグTG_KDに“0”を書込んで(ステップS602)、ステップS603以降の処理へ進み、「NO」の場合は何等処理を行うことなくメインルーチンに戻る。この発音・鍵駆動フラグTG_KDは、一定時間間隔でタイマ割込み信号が発生され、図8に示す一定時間毎タイマ割込み処理が実行されることにより“1”がセットされる。従って、発音・鍵駆動処理ルーチンにおけるステップS602以降の処理は、一定時間間隔でタイマ割込み信号が発生される毎に実行されることとなる。
次にステップS603へ進むと、第1バッファ内に発音または消音までの待機時間が0となっているキーイベントがあるか否かを判断する。該当するキーイベントがない場合はステップS604およびS605を飛ばしてステップS606へ進み、第1バッファ内に発音または消音までの待機時間がαとなっているキーイベントがあるか否かを判断する。該当するキーイベントがない場合はステップS607を飛ばしてステップS608へ進み、第1バッファ内の各キーイベントに対応した各待機時間を一律に1だけ減少させる。
次にステップS609に進み、第2バッファ内に押鍵駆動または離鍵駆動までの待機時間が0となっているキーイベントがあるか否かを判断する。該当するキーイベントがない場合はステップS610およびS611を飛ばしてステップS612へ進み、第2バッファ内の各キーイベントに対応した各待機時間を一律に1だけ減少させる。
次にステップS613に進み、第3バッファ内に待機時間が0であるキーイベントがあるか否かを判断し、該当するキーイベントがない場合は第3バッファ内の各キーイベントに対応した待機時間を一律に1だけ減少させ(ステップS615)、メインルーチンに戻る。なお、第3バッファ内のキーイベントおよび待機時間については後述する。
以上のように、一定時間間隔でタイマ割込み信号が発生される毎に、第1〜第3の各バッファ内のキーイベントに対応した各待機時間についての判定が行われると共に各待機時間を1だけ減少させる処理が行われ、各待機時間は次第に減少してゆくこととなる。
さて、前述した自動演奏処理ルーチンが実行された結果、あるキーオンイベントがRAM12から読み出されたとすると、このキーオンイベントおよび所定の待機時間Tが第1バッファに書込まれ(図11におけるステップS509)、このキーオンイベントおよびその鍵番号KNに対応した押鍵用待機時間DT_on(KN,F)が第2バッファに書込まれる。
そして、この発音・鍵駆動処理ルーチンが実行される毎に、第1バッファ内の待機時間は初期値Tから、第2バッファ内の押鍵用待機時間は初期値DT_on(KN,F)から、順次1ずつデクリメントされてゆく。
ここで、時間T、DT_on(KN,F)、αは、図5に示す関係を有している(ただし、図5においてDT_on(KN,F)は単にDTと表されている)。このため、キーオンイベントの読み出し時刻から押鍵用待機時間DT_on(KN,F)だけ経過した時点において、最初に第2バッファ内の押鍵用待機時間が0となる。
この結果、ステップS609の判断結果が「YES」となり、ステップS610へ進むこととなる。そして、ステップS610へ進むと、待機時間が0となった第2バッファ内のキーオンイベントが読み出され、このキーオンイベントに対応した押鍵駆動の指示および押鍵強度を指定する押鍵信号Fが鍵駆動回路2へ送られる。
次にキーオンイベントの読み出し時刻から時間T−αだけ経過した時点において、第1バッファ内の当該キーオンイベントに対応した待機時間がαとなる。この結果、ステップS606の判断結果が「YES」となり、ステップS607へ進むこととなる。そして、ステップS607へ進むと、当該キーオンイベントおよびこのキーオンイベントに対応した待機時間の初期値2αが第3バッファに書込まれる。このようにして書込まれた第3バッファ内の待機時間が前述したステップS613〜S615の各処理の処理対象となる訳である。第3バッファ内の待機時間が0より大きい間はステップS613の判断結果が「NO」となるため、待機時間のデクリメント(ステップS615)のみが行われる。
次にキーオンイベントの読み出し時刻から時間Tだけ経過すると、第1バッファ内の当該キーオンイベントに対応した待機時間が0となる。この結果、ステップS603の判断結果が「YES」となり、ステップS604へ進み、当該キーオンイベントが音源回路7へ送られ、発音が行われる。次いでステップS605へ進み、発音を行ったキーオンイベントが第1バッファから消去される。
以上のようにして、キーオンイベントの読み出し時刻から押鍵用待機時間DT_on(KN,F)だけ経過した時点において押鍵駆動の指示が行われ、読み出し時刻から所定の待機時間Tだけ経過した時点において当該キーオンイベントに対応した発音が行われる。ここで、押鍵用待機時間DT_on(KN,F)は、押鍵駆動指示が発音タイミングよりも反応時間dT_on(KN,F)だけ先行して行われるように設定されているため、キーオンイベントに対応した発音が行われるとと同時に当該キーオンイベントに対応した押鍵動作が行われる(図5参照)。
その後、キーオンイベントの読み出し時刻から時間T+αだけ経過すると(すなわち、上記ステップS607において第3バッファにキーオンイベントおよび待機時間の初期値2αを書き込んだ時点から時間2αが経過すると)、第3バッファ内の当該キーオンイベントに対応した待機時間が0となる。この結果、ステップS613の判断結果が「YES」となり、ステップS614へ進み、第3バッファから当該キーオンイベントが消去される。
すなわち、本実施例においてはキーオンイベントの読み出し時刻から時間Tだけ経過した時点において当該キーオンイベントに対応した発音が行われるが、この発音時刻を中心に±αの範囲の期間、当該キーオンイベントが第3バッファ内に保存される。
以上、RAM12から読み出されたキーオンイベントの取り扱いを例に説明を行ったが、キーオフイベントについても全く同様な処理が行われる。
(4)演奏者による鍵盤演奏
本実施例においては、上述の自動演奏が行われていない場合および自動演奏が行われている場合のいずれにおいても、演奏者が鍵盤1を操作して演奏を行うことができる。自動演奏中に演奏者による鍵盤演奏が行われると、演奏者による押離鍵操作に対応したキーイベント(演奏イベント)と、RAM12から読み出されたキーイベント(自動演奏イベント)に従って鍵駆動がなされることによって生じるキーイベントの両方が、押鍵検出回路3を介して検出される。これらのキーイベントは、メインルーチンのステップS2を介して実行されるキースキャン処理ルーチン(図10)の処理対象となる。
まず、ステップS401に進み、キーフラグKEYの内容が"1"か否かを判断する。そして、この判断結果が「YES」の場合はキーフラグKEYに"0"を書込んで(ステップS402)、ステップS403以降の処理へ進み、「NO」の場合は何等処理を行うことなくメインルーチンに戻る。このキーフラグKEYも、上述した発音・鍵駆動フラグTG_KDと同様、一定時間間隔でタイマ割込み信号が発生されることにより"1"がセットされる。従って、キースキャン処理ルーチンにおけるステップS402以降の処理も、一定時間間隔でタイマ割込み信号が発生される毎に実行される。
次にステップS403へ進むと、押鍵検出回路3を介して鍵盤1のスキャンを行う。次いでステップS404へ進み、押鍵検出回路3を介してキーオンイベントまたはキーオフイベントが検出されたか否かを判断し、この判断結果が「NO」の場合はメインルーチンへ戻り、「YES」の場合はステップS405へ進む。
次にステップS405に進むと、ステップS403において検出されたキーオンイベントまたはキーオフイベントと同一のキーコードを含むキーイベントが第3バッファ内にないか否かを判断する。この判断結果が「YES」の場合はステップS406に進み、ステップS403において検出されたキーオンイベントまたはキーオフイベントを音源回路7へ送り、これに対応した発音または消音を行わせる。そして、メインルーチンに戻る。
一方、ステップS405の判断結果が「NO」の場合はステップS406を実行することなくメインルーチンに戻る。このような制御が行われるため、本実施例においては、RAM12から読み出されたキーイベント(自動演奏イベント)について発音処理または消音処理が重複して行われることはない。
何故ならば、前述した通り、RAM12からキーイベント(自動演奏イベント)が読み出された場合には、このキーイベントに対応した発音または消音が行われる時刻から±αの範囲内の期間、当該キーイベントが第3バッファ内に保存されている。また、本実施例においては、RAM12からキーイベント(自動演奏イベント)が読み出された場合には、そのキーイベントに対応した発音または消音と同時に、そのキーイベントに対応した鍵駆動が行われ、この鍵駆動に対応したキーイベントが検出される。従って、かかる鍵駆動に対応したキーイベント(無効イベント)に関しては、上記ステップS405の判断結果は必ず「NO」となり、重複した発音処理または消音処理が行われることはないのである。なお、ステップS404において複数のキーイベントが同時に検出された場合はステップS405(およびS406)の処理を複数の各イベントについて行うものとする。
<第2実施例>
上記第1実施例ではRAM12から読み出されたキーイベントに対応した鍵駆動を行う際に一定の押鍵信号または離鍵信号Fを鍵駆動回路2に与えたが、本実施例においては、信号Fの大きさを図13に示すようにキーイベントのベロシティに応じて段階的に変化させる。ただし、鍵駆動回路2による鍵の駆動強度の制御に関して、あまりに厳しい要求をしたのでは楽器が高価になってしまうので、本実施例ではベロシティの分解能よりは粗い閾値を用いてベロシティを量子化し、信号Fを決定する。このようにベロシティを量子化しても、発音される音には全く影響がなく、駆動強度を細かく制御しなくても何ら問題はない。
このように鍵の駆動速度を可変とした場合、鍵の反応時間も鍵の駆動速度により変化する。このため、押鍵用待機時間または離鍵用待機時間として固定の値を使用したのでは、鍵の駆動速度によっては発音タイミングと鍵駆動タイミングとの間にずれが生じてしまう。
そこで、本実施例においては、上記第1実施例における各処理を以下のように変更する。
まず、初期化処理ルーチン(図9)は、図14に示すフローに従って実行する。すなわち、信号Fの大きさを「1」に初期設定し(ステップS701)、次いで図9に示す初期化処理ルーチンを実行する(ステップS702)。そして、信号Fの大きさを最大値と比較し(ステップS703)、最大値に達するまで「1」ずつインクリメントしながら(ステップS704)、ステップS702を繰返し実行する。この結果、鍵盤1の各鍵の鍵番号KNと信号Fの各組合せに対応した押鍵用待機時間DT_on(KN,F)および離鍵用待機時間DT_off(KN,F)が得られる。
また、自動演奏処理ルーチン(図11)の実行時においては、RAM12から読み出したキーイベントのベロシティを参照し、このベロシティに対応した信号Fを求め、この信号Fに対応した押鍵用待機時間DT_on(KN,F)または離鍵用待機時間DT_off(KN,F)を第2バッファへ書き込む(ステップS510)。
また、発音・鍵駆動処理ルーチン(図12)の実行時においては、第2バッファから読み出されたキーイベント中のベロシティに従って押鍵信号または離鍵信号Fの出力を行う(ステップS610)。このようにすることで、鍵速度が変っても発音タイミングと一致したタイミングで押離鍵を行わせることができる。
また、キースキャン処理ルーチン(図10)を実行する際には、同ルーチンのステップS405およびS406に代えて、図15に示す一致判定処理ルーチンを実行する。
すなわち、押鍵検出回路3を介してキーオンイベントまたはキーオフイベントが検出された場合、このキーオンイベントまたはキーオフイベントと同一のキーコードを含むキーイベントが第3バッファ内にないか否かを判断し(ステップS801)、この判断結果が「YES」の場合は当該キーオンイベントまたはキーオフイベントを音源回路7へ送って発音または消音を行わせる(ステップS802)。
しかし、ステップS801の判断結果が「NO」である場合には、当該キーオンイベント等のベロシティと第3バッファ内のこれに対応したキーイベントのベロシティを比較し(ステップS803)、両者が近い場合に限って当該キーオンイベント等を無視し、両者が近い値でない場合には無視することなく音源回路7へ送る(ステップS802)。すなわち、2つのキーイベントが非常にタイミングが接近しており、かつ、同一の鍵に関するものであっても、ベロシティが異なれば全く別のキーイベントとして取り扱うものである。このような制御が行われる結果、演奏者が自動演奏による鍵駆動と非常に近いタイミングで、しかも、全く同一の鍵について押鍵または離鍵を行った場合であっても、押鍵強度が異なれば、この演奏者による押離鍵も無視されることなく楽音形成に使用される。
<第3実施例>
上記第1実施例では電源投入直後の初期化処理ルーチンにより、各鍵の反応時間を測定し、各鍵についての押鍵用待機時間DT_on(KN,F)および離鍵用待機時間DT_off(KN,F)の設定を行った。
しかしながら、電子鍵盤楽器が長時間使用され、鍵駆動回路2によるソレノイドへの通電が何回も繰返されると、各鍵の駆動機構104の特性が発熱によって変化し、鍵の反応時間も変化することとなる。
そこで、本実施例においては、各鍵の反応時間の測定および押鍵用待機時間DT_on(KN,F)等の設定を逐次行う。具体的には次の通りである。まず、RAM12内に、上記第1〜第3のバッファに加えて、図16に示す第4バッファを設定する。
また、キースキャン処理ルーチン(図10)のステップS405およびS406を図17に示す一致判定処理ルーチンに置き換える。さらに発音・鍵駆動ルーチン(図12)のステップS610を図18に示す駆動信号出力処理ルーチンに置き換え、同ルーチンのステップS615の後に図19に示す計時処理ルーチンを追加する。
かかる変更のなされた本実施例によれば、以下の動作が得られる。まず、一定時間間隔のタイマ割込み信号に同期して発音・鍵駆動処理ルーチン(図12)が駆動され、そのステップS609の判断結果が「YES」となった場合には、第2バッファ内のキーイベントに対応した鍵駆動の指示およびその駆動強度を指定する押鍵信号または離鍵信号Fを鍵駆動回路2へ送る(図18のステップS1001)。次いでこの鍵駆動の指示を行ったキーイベントを時間情報の初期値「0」と共に第4バッファに書き込む。そして、発音・鍵駆動処理ルーチンを終える際には、この第4バッファ内のキーイベントに対応した時間情報をインクリメント(図19のステップS1101)してからメインルーチンに戻る。以後、この第4バッファ内の時間情報はタイマ割込み信号が発生される毎に1ずつインクリメントされてゆく。
そして、キースキャン処理ルーチン(図10)の実行時、そのステップS403およびS404において押鍵検出回路3を介してキーオンイベント等が検出された場合、このキーオンイベント等と同一のキーコードを含むキーイベントが第3バッファ内にないか否かを判断し(図17のステップS901)、この判断結果が「YES」の場合は当該キーオンイベント等を音源回路7へ送って発音等を行わせる(図17のステップS902)。
一方、ステップS901の判断結果が「NO」である場合には、ステップS903に進む。本実施例においては、上述の通り、鍵駆動の指示の行われたキーイベントはすべて第4バッファ内に格納される。ステップS903では、この第4バッファ内のキーイベントの中から押鍵検出回路3を介して検出したキーオンイベント等と同一のキーイベントを探し、このキーイベントに対応した時間情報を第4バッファから読み出す。この時間情報は、第4バッファ内のキーイベントについての鍵駆動の指示がなされてから現在までの経過時間、すなわち、その鍵駆動の指示が行われてから実際に鍵駆動が行われ、今回、押鍵検出回路3からキーオンイベント等が検出されるまでに要した鍵の反応時間に他ならない。そこで、ステップS903では、この第4バッファから読み出した時間情報により、押鍵用先行時間レジスタdT_on(KN,F)または離鍵用先行時間レジスタdT_off(KN,F)の内容を更新する。次にステップS904に進み、この更新結果に従って、押鍵用待機時間レジスタDT_on(KN,F)または離鍵用待機時間レジスタDT_off(KN,F)の内容を更新する。そして、ステップS903において探し出したキーイベントを第4バッファから消去し(ステップS905)、メインルーチンに戻る。
このように本実施例によれば、RAM12から読み出したキーイベントに従って鍵駆動が行われ、この鍵駆動によって生じたキーイベントが検出される毎に、その鍵に対応した押鍵用待機時間レジスタDT_on(KN,F)または離鍵用待機時間レジスタDT_off(KN,F)の内容が更新される。
<変形例>
以上、本発明の各実施例を説明したが、本発明にはさらに以下のような変形が考えられる。
(1)内部的に発生した演奏データに基づいて鍵盤を駆動するものに限らず、外部装置(電子鍵盤楽器や自動演奏装置等)から供給された演奏データに基づいて鍵盤を駆動するようにしても良い。すなわち、本発明にいう「自動演奏」とは、本電子鍵盤楽器の鍵を演奏者が操作することにより得られる演奏以外のすべてを含むものである。このとき、反応時間dTを最初に求めるときは、外部装置に対して各キーのオン/オフイベントを出力するように要求してイベントを受信し、外部装置と本電子鍵盤楽器との間の信号伝送に要する遅延を含めた反応時間dTを求めるようにしてもよい。
(2)鍵盤の駆動方式はどのようなものであってもよい。
(3)上記第3実施例では、反応時間dT_onおよびdT_offを逐次変更する際、時間の経過に従って同じキーに関して得られた複数のdT_on等を平均化するようにしてもよい。
(4)上記第2実施例では、演奏者の操作により発生したキーイベントの内、駆動により発生したキーイベントとキーコードが一致し、かつ、タイミングがほぼ一致するが、ベロシティの異なるなるものについては発音させるようにしたが、この時、駆動信号の元となった演奏データによる発音を無効とするようにしてもよい。また、無効とするか否かを選択できるようにしてもよい。
(5)上記第1実施例では反応時間を測定する際に鍵を1個ずつ駆動するようにしたが、複数個ずつまとめて、あるいは全鍵同時に駆動し、駆動した鍵についての反応時間を測定するようにしてもよい。
(6)反応時間の測定をする際、鍵が駆動されるが、この鍵の駆動により楽音を発音させてもよいし、発音させないようにしてもよい。また、発音させるか発音させないかを演奏者が選択し得るようにしてもよい。
(7)演奏者の指によって押鍵がされている(マニュアル押鍵)間に、該鍵に対応した自動演奏イベントが発生した場合、この自動演奏イベントに対応した押鍵駆動を中止するか、あるいは押鍵駆動後、即座に離鍵駆動信号を送るように制御手段を設計してもよい。このようにすることにより、マニュアル押鍵後に発生した自動演奏イベントにより鍵が押鍵駆動されている状態でマニュアル離鍵された時に鍵が戻らないといった不都合を防止することができる。
この発明の第1実施例による電子鍵盤楽器の構成を示すブロック図である。 同実施例における鍵の取り付け構造を示す図である。 同実施例における演奏データを示す図である。 同実施例における第1〜第3のバッファを示す図である。 同実施例におけるキーイベント発生タイミング、鍵駆動指示タイミングおよびキーイベントに対応した発音タイミングの関係を示す図である。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 この発明の第2実施例における駆動信号Fとベロシテイの関係を示す図である。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 この発明の第3実施例において使用する第4バッファを示す図である。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。 同実施例の動作を示すフローチャートである。
符号の説明
1・・・鍵盤、2・・・鍵盤駆動回路、3・・・押鍵検出回路、7・・・音源回路、10・・・CPU、11・・・ROM、12・・・RAM、13・・・タイマ。

Claims (4)

  1. 自動演奏イベントを発生する手段と、
    自動演奏イベントに基づく駆動指示に従って鍵盤を駆動する鍵駆動手段と、
    前記鍵盤の動作を検出することにより演奏イベントを発生する検出手段と、
    前記鍵駆動手段に対して前記駆動指示が与えられてから前記検出手段により演奏イベントが発生されるまでの反応時間を測定し、自動演奏の際には、前記自動演奏イベントに対応した楽音形成処理を楽音形成手段へ指示するとともに、この指示のタイミングよりも前記反応時間分だけ先行して該自動演奏イベントに対応した駆動指示を前記鍵駆動手段へ出力する制御手段と
    を具備し、
    前記制御手段は、自動演奏時に前記駆動指示を出力する際に前記反応時間を測定する
    とを特徴とする電子鍵盤楽器。
  2. 自動演奏イベントを発生する手段と、
    自動演奏イベントに基づく駆動指示に従って鍵盤を駆動する鍵駆動手段と、
    前記鍵盤の動作を検出することにより演奏イベントを発生する検出手段と、
    前記鍵駆動手段に対して前記駆動指示が与えられてから前記検出手段により演奏イベントが発生されるまでの反応時間を、前記鍵盤を構成する鍵毎に測定し、測定した反応時間を前記鍵毎に設けられた記憶領域にそれぞれ記憶し、自動演奏の際には、前記自動演奏イベントに対応した楽音形成処理を楽音形成手段へ指示するとともに、この指示のタイミングよりも前記鍵毎に記憶された前記反応時間分だけ先行して該自動演奏イベントに対応した駆動指示を前記鍵駆動手段へ出力する制御手段と
    を具備することを特徴とする電子鍵盤楽器。
  3. 前記制御手段は、自動演奏に先立って前記反応時間を測定することを特徴とする請求項記載の電子鍵盤楽器。
  4. 前記制御手段は、前記自動演奏イベントの指定に従って複数種類の駆動強度に対応した駆動指示を前記鍵駆動手段へ出力するものであり、これらの複数種類の駆動強度について前記反応時間の測定を行うことを特徴とする請求項1又は2に記載の電子鍵盤楽器。
JP2005009656A 2005-01-17 2005-01-17 電子鍵盤楽器 Expired - Fee Related JP3966328B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005009656A JP3966328B2 (ja) 2005-01-17 2005-01-17 電子鍵盤楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005009656A JP3966328B2 (ja) 2005-01-17 2005-01-17 電子鍵盤楽器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP14375195A Division JP3704747B2 (ja) 1995-06-09 1995-06-09 電子鍵盤楽器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007027150A Division JP4232829B2 (ja) 2007-02-06 2007-02-06 電子鍵盤楽器

Publications (2)

Publication Number Publication Date
JP2005141246A JP2005141246A (ja) 2005-06-02
JP3966328B2 true JP3966328B2 (ja) 2007-08-29

Family

ID=34698199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005009656A Expired - Fee Related JP3966328B2 (ja) 2005-01-17 2005-01-17 電子鍵盤楽器

Country Status (1)

Country Link
JP (1) JP3966328B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2043088A1 (en) * 2007-09-28 2009-04-01 Yamaha Corporation Music performance system for music session and component musical instruments
US7902449B2 (en) * 2007-10-19 2011-03-08 Yamaha Corporation Music performance system for music session and component musical instruments

Also Published As

Publication number Publication date
JP2005141246A (ja) 2005-06-02

Similar Documents

Publication Publication Date Title
JP2005114752A (ja) 演奏装置
JP2007256360A (ja) 鍵盤楽器
JP3941707B2 (ja) 電子楽器
JP5652415B2 (ja) タッチ検出装置、タッチ検出方法及び電子楽器
JP2000194356A (ja) 演奏支援装置、演奏支援方法、および演奏支援プログラムを記録した記録媒体
JP4531415B2 (ja) 自動演奏装置
JP4232829B2 (ja) 電子鍵盤楽器
JP2005201981A (ja) 操作子駆動用データ及び鍵盤装置
JP3966328B2 (ja) 電子鍵盤楽器
JP3704747B2 (ja) 電子鍵盤楽器
JP4259606B2 (ja) 電子鍵盤楽器
JP2005043483A (ja) 自動演奏装置及びプログラム
US20100139474A1 (en) Musical tone generating apparatus and musical tone generating program
JP6744522B2 (ja) 演奏システム、及び制御方法
JP2008052291A (ja) 電子打楽器
JP2002358080A (ja) 演奏制御方法、演奏制御装置及び楽音発生装置
JPH06266354A (ja) 電子楽器
JP2001166773A (ja) 電子楽器
JP3319043B2 (ja) 自動演奏装置
JP4056902B2 (ja) 自動演奏装置及び自動演奏方法
JP4692287B2 (ja) 鍵盤楽器及び消音ユニット
JP5657868B2 (ja) 楽音制御方法及び楽音制御装置
JP4241833B2 (ja) 自動演奏装置及びプログラム
JP2001195065A (ja) 制御装置および制御方法
JP2003271140A (ja) 楽器の自動演奏装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070206

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070521

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110608

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120608

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120608

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130608

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140608

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees