[go: up one dir, main page]

JP2004077521A - Playing information preparation device, playing information recording device, and keyboard musical instrument - Google Patents

Playing information preparation device, playing information recording device, and keyboard musical instrument Download PDF

Info

Publication number
JP2004077521A
JP2004077521A JP2002233608A JP2002233608A JP2004077521A JP 2004077521 A JP2004077521 A JP 2004077521A JP 2002233608 A JP2002233608 A JP 2002233608A JP 2002233608 A JP2002233608 A JP 2002233608A JP 2004077521 A JP2004077521 A JP 2004077521A
Authority
JP
Japan
Prior art keywords
physical quantity
moving member
performance information
data
key
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.)
Granted
Application number
JP2002233608A
Other languages
Japanese (ja)
Other versions
JP4144288B2 (en
Inventor
Yuji Fujiwara
藤原 祐二
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 JP2002233608A priority Critical patent/JP4144288B2/en
Publication of JP2004077521A publication Critical patent/JP2004077521A/en
Application granted granted Critical
Publication of JP4144288B2 publication Critical patent/JP4144288B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a playing information preparation device capable of easily preparing detailed playing information while suppressing the amount of data, a playing information recording device, and a keyboard musical instrument. <P>SOLUTION: A keyboard musical instrument 100 is equipped with keys 130, hammers 42, pedals 150, and dampers 160 as moving members which move according to player's operations. The keyboard musical instrument 100 is further provided with key sensors 310, hammer sensors 410, pedal sensors 510, and damper sensors 610 for detecting the positions of the respective moving members between rest positions and end positions corresponding to the individual moving members. The keyboard musical instrument 100 prepares information indicating the time-series positions of the moving members detected by the respective sensors according to the operation states of respective driving members. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
この発明は、鍵盤楽器における演奏情報を生成する演奏情報生成装置、演奏情報を記録する演奏情報記録装置、および、該演奏情報生成装置を備えた鍵盤楽器に関する。
【0002】
【従来の技術】
従来から、演奏者によりなされた鍵盤楽器の演奏操作を表す演奏情報を生成する装置として、種々の構成が知られている。例えば、演奏情報を、楽音の音高やベロシティ(押鍵速度)などを規定することができるMIDI(Musical Instruments Digital Interface)データとして生成する装置が知られている。また、別形態として、鍵などの演奏操作子の位置を計測する波形計測器(例えばオシログラフ)を鍵盤楽器に接続し、該波形計測器によって計測された時系列的な演奏操作子の位置を示す波形をサンプリングすることにより、演奏情報を生成するシステムが考えられる。さらに、これらのものとは別形態として、演奏時に鍵盤楽器から発せられる楽音をマイクロフォンなどによりサンプリングし、サンプリングされた楽音から、当該楽音に対応する演奏操作を特定して演奏情報を生成する装置なども考えられる。
【0003】
【発明が解決しようとする課題】
しかしながら、これらの装置おいては、以下のような問題が生じる。まず、演奏情報をMIDIデータとして生成する装置においては、MIDIデータが、ハーフストロークなどの微妙な演奏操作を表現することができないため、MIDIデータにより、楽音のニュアンスを十分に表現することができなかった。また、MIDIデータにあっては、各操作子に関する情報が混在して格納される。このため、特定の操作子に着目した演奏操作の修正などを行う際に、煩雑な作業が必要とされた。さらに、自動演奏鍵盤楽器において、MIDIデータなどのイベントデータに従って演奏する際には、当該イベントデータから、演奏操作子を駆動するためのデータへの複雑な変換処理が必要となる。
【0004】
また、波形計測器を用いて演奏操作子の波形をサンプリングする装置にあっては、波形計測器は、単一チャネルの波形を計測するものが一般であり、複数の演奏操作子に関する波形を並列して計測するためには、演奏操作子の数(例えば、鍵であれば88)だけの波形計測器が必要となってしまう。さらに、波形計測器は、通常、そのフォーマット仕様が楽器向きに構成されていない。これらにより、設備が大規模になり、また、費用がかさんでしまうという問題があった。しかも、サンプリング周波数を高くすれば、詳細な演奏操作を示す演奏情報を得ることができるものの、そのデータ量が多くなってしまうという問題があった。
【0005】
そして、サンプリングされた楽音に、演奏操作を対応付けて演奏情報を生成する装置の場合、楽音に演奏操作を対応付ける作業が困難であり、特に、複数の演奏操作子が同時に操作されることにより出力した楽音と、当該演奏操作との対応付けが不正確なものとなる可能性が大きかった。
【0006】
本発明は、上述した事情に鑑みてなされたものであり、その目的とするところは、詳細な演奏情報を、データ量を抑えつつ、簡易に生成することが可能な演奏情報生成装置、演奏情報記録装置および鍵盤楽器を提供することにある。
【0007】
【課題を解決するための手段】
上記目的を達成するため、本発明にかかる演奏情報生成装置は、鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、前記検出手段によって検出された物理量に基づき、物理量情報を出力する物理量情報生成手段と、前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、前記判定手段による判定結果が肯定的であれば、前記物理量検出手段により検出された物理量、または、物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記物理量検出手段により検出された物理量、または、物理量情報生成手段により生成された物理量情報と、少なくとも移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段とを備える構成を特徴としている。
【0008】
このような構成によれば、演奏情報は、演奏操作に応じた移動部材の動作状況が詳細に反映されたものとなり、演奏情報に、微妙なニュアンスが含まれることとなる。また、移動部材が移動していなければ、移動部材の位置が変化していない期間を用いて演奏情報が生成される。これにより、演奏情報は、一定時間毎の移動部材の位置を示す情報から構成される演奏情報と比較して、そのデータ量が削減されることとなる。
【0009】
【発明の実施の形態】
以下、本発明における実施形態について図面を参照して説明する。
【0010】
<鍵盤楽器の機械的構成>
図1は、本実施形態にかかる鍵盤楽器の機械的構成を示す図である。この図に示されるように、鍵盤楽器100には、棚板110が設けられている。棚板110の上面には、紙面垂直方向に延在するように筬中120が配置されている。筬中120の上面には、複数のバランスピン125が立設しており、88個の鍵130の各々が、各バランスピン125に貫通された状態で、筬中120の上面に並設されている。これらの鍵130には、音高を示す「1」から「88」までのノート番号が割り当てられている。また、各鍵130は、バランスピン125に貫通される位置を、おおよその支点として揺動可能に保持されており、演奏者は、鍵130の前方を押下することにより演奏(押鍵)する。
【0011】
鍵130の後方近傍には、鍵130の揺動に応じて駆動するアクション機構140が設けられている。アクション機構140は、「1」から「88」までのノート番号が割り当てられた88個のハンマ142を含んでおり、押鍵と連動してハンマ142が弦170を打撃する。ハンマ142によって弦170が打撃されると、弦振動が生じ、その振動は、駒(不図示)を介して響板(不図示)に伝搬し、楽音が発生する。
【0012】
ところで、演奏者(操作者)は、ひとつの鍵130に関する押鍵であっても、微妙なニュアンスを表現すべく、多種多様な鍵操作を行う。さらに詳述すると、演奏者は、押鍵ごとに押鍵速度を異ならせるのみならず、1回の押鍵についても、初め遅くて次第に速くなる押鍵や、その逆の押鍵などの様々な鍵操作を行う。また、この他にも、鍵130がエンド位置(鍵130を押し切った位置)に到達する前に、離鍵を開始するハーフストロークなどの奏法も用いられる。アクション機構140は、これらの微妙な鍵操作の違いに応じて打弦し、結果として、微妙な押鍵操作の違いに応じた楽音が発せられる。
【0013】
しかしながら、演奏情報をMIDIデータとして生成する場合、例えば押鍵操作については、鍵が、ある2点間の距離の移動に要した時間を検出し、2点間の距離と検出された時間とから求めた速度を、当該押鍵操作にかかるベロシティとする。このため、MIDIデータにおいては、一回の押鍵操作につき、単一のベロシティが規定されるのみであり、演奏操作の一部しか反映されなかった。それゆえ、演奏者による微妙なニュアンスを、十分に表現することができなかった。
【0014】
そこで、鍵盤楽器100は、微妙なニュアンスが反映された演奏情報を生成すべく、鍵操作を検出するキーセンサとして、鍵130のレスト位置(離鍵されている位置)からエンド位置までの連続的な位置を検出するセンサを備えている。より具体的には、鍵130の上方には、キーセンサ310を支持するための支持部材300が設けられている。図2は、キーセンサ310および鍵130の斜視図である。この図に示されるように、キーセンサ310は、88個の鍵130の各々に対応するように、各鍵130の上面に配置された被検出部材135と対向する位置に設けられている。
【0015】
図3は、キーセンサ310の構成を示す図である。この図に示されるように、キーセンサ310は、発光素子312と受光素子314とを含んでいる。このうち、発光素子312は、被検出部材135に向けて光を照射する。一方、受光素子314は、発光素子312から被検出部材135に照射された光の反射光を受光する。キーセンサ310は、受光素子314の受光量に応じて、被検出部材135までの距離を、0.001mm単位で検出する。
【0016】
鍵130が押下されると、図3および図4における二点鎖線により示すように、被検出部材135が下方に移動する。キーセンサ310は、キーセンサ310から被検出部材135までの距離を検出することにより、鍵130の位置を連続的に検出する。これにより、鍵130の位置を、レスト位置からエンド位置に至るまで連続的に検出することができる。このようなキーセンサ310を採用することにより、演奏者による微妙な鍵操作を正確に検出し、その検出値から、微妙なニュアンスが反映された演奏情報を生成することが可能となる。
【0017】
図5は、ハンマ142およびその周辺の構成を示す図である。この図に示されるように、アクション機構140に含まれるハンマフレンジ146には、ハンマシャンク143がピン144を支点として回動可能に取り付けられている。ハンマシャンク143は、ハンマウッド141を介してハンマ142を保持しており、押鍵されると、図中二点鎖線で示される位置に反時計回りに回動し、ハンマ142が打弦する。
【0018】
ハンマシャンク143の上面には、被検出部材145が固定されている。また、ハンマシャンク143の上方には、88個のハンマ142に対応した88個のハンマセンサ410を支持するための支持部材400が設けられている。ハンマセンサ410は、上述したキーセンサ310と同様な構成をしており、対応するハンマシャンク143に設置された被検出部材145の位置を、0.001mm単位で検出する。この際、ハンマセンサ410は、ハンマ142の位置をレスト位置(離鍵時の位置)からエンド位置(打弦位置)まで連続的に検出する。これにより、ハンマ142の微妙な動作の変化を取り逃がすことなく、ハンマ142の動作が検出されることとなる。
【0019】
説明を再び図1に戻す。鍵盤楽器100の下方には、3個のペダル150が揺動可能に設けられている。より詳細には、ダンパペダル、ソフトペダルおよびソステヌートペダルが設けられており、この順で、ペダル番号として「1」「2」および「3」が割り当てられている。各ペダル150の上方には、3個のペダルに対応した3個のペダルセンサ510を支持するための支持部材500が設けられている。これらのペダルセンサ510は、上述したキーセンサ310と同様に、対応するペダル150の位置を、0.001mm単位で検出する。この際、ペダルセンサ510は、レスト位置(ペダルが踏まれていない状態)からエンド位置(ペダルが踏み込まれた位置)まで連続的にペダル位置を検出する。
【0020】
また、ダンパ160は、複数の弦170の各々に対応して88個設けられており、各々のダンパ160は、音高を示す「1」から「88」までのノート番号が割り当てられている。各ダンパ160は、離鍵時においては、弦170に接触するように位置する一方、押鍵時においては、押鍵された鍵130に対応するダンパ160のみが弦170から離れる。ただし、ダンパペダルが踏み込まれた場合には、全てのダンパ160が、ダンパペダルの押下量に応じて上方に移動し、弦170から離れる。これにより、倍音の効果によって、楽音の響きが豊かになる。逆に、ダンパペダルの踏み込みが解除されると、ダンパ160が弦170に接し、弦振動が減衰され、この結果、音が抑制される。
【0021】
ダンパ160の上方には、各ダンパ160に対応した88個のダンパセンサ610を支持する支持部材600が設けられている。図6はダンパ160およびその周辺構成を示す図である。この図に示されるように、ダンパペダルが押下されると、その押下量に応じて、ダンパ160は、二点鎖線で示されるように上方に移動する。ダンパセンサ610は、上述したキーセンサ310と同様な構成をしており、ダンパ160の上面に設けられた被検出部材165の位置を検出し、ダンパ160の位置を、0.001mm単位で検出する。これにより、音の減衰に影響を与えるダンパ160が、弦170に接触しているか否かを詳細に表現する演奏情報を生成することができる。
【0022】
<鍵盤楽器の電気的構成>
図7は、鍵盤楽器100の電気的構成を示す図である。この図において、CPU200は、バスBを介して構成各部を制御する。RAM210は、CPU200のワークエリアとして使用され、後述する時間データなどを一時的に記憶する。ROM220は、CPU200が演奏情報生成・記録処理を実行するためのプログラムなどの各種プログラムを記録する。ここで、演奏情報生成・記録処理とは、鍵盤楽器100における演奏者の演奏中に、4種類の移動部材(鍵130、ハンマ142、ペダル150およびダンパ160)の位置を検出し、各移動部材の動作を示す演奏情報の生成および記録を行う処理である。
【0023】
操作部230は、ユーザが各種操作を入力するスイッチなどから構成され、演奏情報生成・記録処理の開始を指示する開始信号や、同処理の終了を指示する終了信号などを、バスBを介してCPU200に供給する。
また、時計部240は、現在時刻を表す時刻情報をCPU200に供給する。CPU200は、時刻情報を受け取ると、その情報を用いて、移動部材の移動期間を示す時間データや、移動部材の速度を示す速度データなどを生成する。
【0024】
88個のキーセンサ310の各々は、検出した各鍵130の位置を示すアナログ位置信号を、A/D変換部250Kに入力する。A/D変換部250Kは、各キーセンサ310からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてCPU200に供給する。
【0025】
88個のハンマセンサ410の各々は、検出した各ハンマ142の位置を示すアナログ位置信号を、A/D変換部250Hに入力する。A/D変換部250Hは、各ハンマセンサ410からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてCPU200に供給する。
【0026】
3個のペダルセンサ510の各々は、検出した各ペダル150の位置を示すアナログ位置信号を、A/D変換部250Pに入力する。A/D変換部250Pは、各ペダルセンサ510からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてCPU200に供給する。
【0027】
88個のダンパセンサ610の各々は、検出した各ダンパ160の位置を示すアナログ位置信号を、A/D変換部250Hに入力する。A/D変換部250Hは、各ダンパセンサ610からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてCPU200に供給する。
【0028】
CPU200は、各A/D変換部250K、250H、250P、250Dからのデジタル位置信号、および、時計部240からの時刻情報を入力すると、それらの情報を用いて、各移動部材の移動距離や、当該距離だけ移動するために要した時間、移動速度などを求め、各移動部材の位置が時系列的に規定された移動部材別ファイルを、演奏情報として生成する。この際、CPU200は、移動部材別ファイルを、鍵130、ハンマ142およびダンパ160の各々についてはノート番号別に、また、ペダル150については、ペダル番号別に生成する。
【0029】
記憶部260は、例えば、ハードディスクなどの書き換え可能な記憶手段であり、演奏情報フォルダなどを記憶する。ここで、演奏情報フォルダとは、楽曲別に記憶部260に記録され、当該楽曲の演奏情報として、全ての移動部材に対応する移動部材別ファイルが格納されるものである。
【0030】
図8は、演奏情報フォルダに格納されるひとつの移動部材別ファイルの構成を示す図である。この図に示されるように、移動部材別ファイルfは、大別して、属性データ群と位置・時間データ群とを含んでいる。属性データ群には、当該移動部材ファイルfがいずれの移動部材に対応する移動部材ファイルfであるかを示す情報などが格納される。一方、位置・時間データ群には、移動部材の位置が時系列的に規定された情報、すなわち、移動部材の動作を示す情報が格納される。以下、属性データ群および位置・時間データ群に含まれるデータ要素の詳細について説明する。
【0031】
属性データ群は、データ要素として、ノートID/ペダルIDと、移動部材IDと、下位周期Lと、上位周期Hとを含む。このうち、移動部材IDは、移動部材の種類を特定するための情報であり、鍵130、ハンマ142、ペダル150およびダンパ160のいずれに対応する移動部材ファイルfであるかを示す情報である。また、ノートID/ペダルIDは、移動部材IDにより、移動部材の種類が鍵130、ハンマ142、ダンパ160のいずれかに特定された場合、いずれのノート番号に対応する移動部材ファイルfであるかを示し、移動部材の種類がペダル150であると特定された場合、いずれのペダルに対応する移動部材別ファイルfであるかを示す。
【0032】
下位周期Lおよび上位周期Hは、これら2つにより、位置・時間データ群を生成する際に用いられるサンプリング周期を表す。下位周期Lおよび上位周期Hの各々は、演奏者が設定可能であり、操作部230を介して、移動部材ごとに異なるサンプリング周期を設定することができる。
【0033】
図9は、属性データ群に含まれるデータ要素のフォーマットを示す図である。この図に示されるように、各データ要素は、16ビットデータとして規定されている。まず、移動部材IDは、上位12ビットに、その識別子となる「11000001 0000」が格納され、「wwww」で示される下位4ビットに、鍵130を示す「0001」、ハンマ142を示す「0010」、ダンパ160を示す「0011」、および、ペダル150を示す「0000」のいずれかが格納される。
【0034】
ノートID/ペダルIDは、上位8ビットに、その識別子となる「1100 0000」が格納され、「kkkk kkkk」で示される下位8ビットに、ノート番号あるいはペダルを特定するための情報が格納される。より具体的には、下位8ビットには、ノート番号を示す「0000 0001(10進表記における1)」から「0101 1000(10進表記における88)」までのいずれか、もしくは、ラウドペダルを示す「1000 0000」、ソステヌートペダルを示す「1000 0010」、および、シフトペダルを示す「1000 0011」のいずれかが格納される。
【0035】
下位周期Lには、上位8ビットに、その識別子となる「1100 0010」が格納され、「t t」で示される下位8ビットに、サンプリング周期の下位8ビットを示す情報が格納される。一方、上位周期Hには、上位8ビットに、その識別子となる「1100 0011」が格納され、「t t」で示される下位8ビットに、サンプリング周期の上位8ビットを示す情報が格納される。これにより、サンプリング周期は、16ビットの「t t t t」によって規定される。ここで、サンプリング周期の1ビットは、0.001mSを示しており、サンプリング周期によって、0.000mSから65.535mSまでの周期を、0.001mS単位で表現することができる。
【0036】
なお、サンプリング周期は、下位周期Lのみ、あるいは、上位周期Hのみで規定する構成としても良い。さらに詳述すると、下位周期Lのみを用いた場合、サンプリング周期は、8ビットの「t t」によって規定され、0.001mSから0.255mSまでの周期を、0.001mS単位で表現することができる。一方、上位周期Hのみを用いた場合、サンプリング周期は、16ビットの「t t  0000 0000」によって規定され、0.256mSから65.280mSまでの周期を、0.256mS単位で表現することができる。
【0037】
再び図8において、属性データ群に含まれる移動部材IDは、その下位4ビットにより「0001」を示し、ノートID/ペダルIDは、その下位8ビットにより10進表記の「60」を示している。また、サンプリング周期は、下位周期Lおよび上位周期Hから、「0000 0011 1110 1000」に規定され、10進表記による「1000」を示している。これらにより、この移動部材別ファイルfが、ノート番号が「60」の鍵130に関する移動部材ファイルfであることが特定され、また、位置・時間データ群で用いられるサンプリング周期は、「1mS」であることが特定される。
【0038】
このような属性データ群に続き、位置・時間データ群が格納される。位置・時間データ群は、データ要素として、位置データ、速度データおよび時間データを含む。このうち、位置データは、移動部材の位置を示すデータである。また、速度データは、ある期間内における移動部材の速度を示すデータである。時間データは、移動部材が、等速運動あるいは停止した期間を示すデータである。
【0039】
図10は、位置・時間データの各データ要素のフォーマットを示す図である。この図に示されるように、位置データは、上位2ビットに、その識別子として「00」が格納され、「xx xxxx xxxx xxxx」で示される下位14ビットに、移動部材の位置を表す情報が格納される。位置データの1ビットは、0.001mmを示し、位置データによって、−4.096mmから12.287mmまでの1634段階の位置を表現することができる。
【0040】
速度データは、上位2ビットに、その識別子として「01」が格納され、「vv vvvv vvvv vvvv」で示される下位14ビットに、移動部材の速度を示す情報が格納される。速度データの1ビットは、1mm/Sを示す。
【0041】
時間データは、上位2ビットに、その識別子として「10」が格納され、「tt tttt tttt tttt」で示される下位14ビットには、時間を示す情報が格納される。ここで、時間データの1ビットは、0.001mSを示し、時間データによって、0.000mSから16.383mSまでの時間を表現することができる。
【0042】
これらの位置データ、時間データおよび速度データの各々は、定周期配列、等速配列および停止配列のいずれかの配列に従って配列されることにより、移動部材の位置を時系列的に規定する情報となる。CPU200は、3種類の移動部材の動作状況に応じて、いずれかの配列を生成し、位置・時間データ群に格納する。
【0043】
図11(a)、(b)および(c)は、移動部材の3種類の動作状況を示す図である。これらの図において、縦軸は、移動部材の位置を示している。また、横軸は、時間軸であり、横軸の1目盛は、1サンプリング周期を示している。まず、図11(a)に示されるように、移動部材が、等速でない速度、すなわち、加速度が0でない速度によって移動している場合、CPU200は、定周期配列を生成し、位置・時間データ群に格納する。より具体的には、定周期配列は、図8に示すように、位置データが連続して配列されたものである。この配列において、各位置データは、順番に、一定期間(サンプリング周期)経過するごとの移動部材の位置を示している。
【0044】
次に、図11(b)に示されるように、移動部材が、等速運動をしている場合、CPU200は、等速配列と生成し、位置・時間データ群に格納する。より具体的には、等速配列は、図8に示すように、位置データ、速度データおよび時間データが、この順で並んだものである。この配列においては、移動部材が、位置データによって示される位置から、速度データによって示される速度にて、時間データによって示される期間だけ移動したことを示す。このようなデータ表記方法によれば、移動部材が、長時間等速運動している場合であっても、その状況を3個の要素データのみによって表現することができる。例えば、図11(a)と(b)とを比較してみる。定周期配列であれば、期間t(サンプリング周期の20倍)における移動部材の動作を表現しようとすれば、20個の位置データを配列する必要がある。これに対し、等速配列によれば、同一期間の動作を表現するにあたり、わずか3個のデータ要素の配列によって表現することができる。これにより、サンプリング周期毎に、移動部材の位置を配列する形式(定周期配列)と比較して、そのデータ量が大幅に削減されることとなる。
【0045】
そして、図11(c)に示されるように、移動部材が停止している場合、CPU200は、停止配列を生成し、位置・時間データ群に格納する。より具体的には、等速配列は、図8に示すように、位置データ、時間データおよび位置データが、この順で並んだものである。この配列においては、先頭の位置データと、後尾の位置データとが同一の位置を示し、移動部材が、その位置に、時間データによって示される期間だけ停止することを示す。このようなデータ表記方法によれば、移動部材が、長時間停止していたとしても、3つの要素データのみによって、その状況を表現することができる。このため、サンプリング周期毎に、移動部材の位置を配列する形式(定周期配列)と比較して、格段にそのデータ量が低減されることとなる。
【0046】
<鍵盤楽器の動作>
次に、CPU200が実行する演奏情報生成・記録処理について、図12を参照して説明する。この演奏情報生成・記録処理は、演奏者による鍵盤楽器100の演奏中に、各移動部材の位置を検出し、検出結果から移動部材ファイルfを生成し、記憶部260に記録する処理である。CPU200は、操作部230から入力される開始信号をトリガとして演奏情報生成・記録処理を開始する。また、この処理は、タイマ割り込みされ、CPU200は、処理の開始時にタイマをリセットする。
【0047】
まず、CPU200は、操作部230から開始信号が入力されると、初期化処理を実行する(ステップS1)。さらに詳述すると、CPU200は、記憶部260に演奏情報フォルダを記録し、当該演奏情報フォルダに、全ての移動部材に関する移動部材別ファイルfを格納する。また、開始信号には、下位周期Lおよび上位周期Hが付加されており、CPU200は、それらを、移動部材別ファイルfの属性データ群に格納する。なお、この時点においては、各移動部材別ファイルfには、属性データ群しか記録されておらず、位置・時間データ群に関する情報は、何も記録されていない。
【0048】
次に、CPU200は、鍵データ生成・記録処理を実行する(ステップS2)。この鍵データ生成・記録処理は、88個の鍵130の各々について、鍵130の位置が時系列的に規定された位置・時間データ群を生成し、記憶部260に記憶される演奏情報フォルダに含まれる移動部材別ファイルfに、生成した位置・時間データ群を格納する処理である。この鍵データ生成・記録処理の詳細については、後述することとする。
【0049】
次いで、CPU200は、ハンマデータ生成・記録処理を実行する(ステップS3)。この処理は、88個のハンマ142の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルfに、該位置・時間データ群を格納する処理である。
【0050】
次に、CPU200は、ダンパデータ生成・記録処理を実行する(ステップS4)。この処理は、88個のダンパ160の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルfに、該位置・時間データ群を格納する処理である。
【0051】
次に、CPU200は、ペダルデータ生成・記録処理を実行する(ステップS5)。この処理は、3個のペダル150の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルfに、該位置・時間データ群を格納する処理である。
【0052】
次に、CPU200は、操作部230から終了信号を受信したか否かを判定する(ステップS6)。この判定結果が否定的であれば、CPU200は、タイマにおいて一定時間が経過したかを判定する(ステップS7)。この判定結果が否定的であれば、CPU200は、一定時間経過するまで待機すべく、ステップS7の判定を続ける。一方、ステップS7の判定結果が肯定的となれば、タイマをリセットした後、処理手順をステップS2に戻す。
一方、ステップS6における判定結果が肯定的であれば、すなわち、終了信号を受信したらならば、CPU200は、演奏情報生成・記録処理を終了する。
【0053】
次に、上述した鍵データ生成・記録処理(図12のステップS2)を、図13を参照して説明する。この処理は、88個の鍵130に関して個別に位置・時間データ群を生成し、記憶部260に記録するための処理である。
【0054】
はじめに、CPU200は、カウント値を「1」に設定する(ステップS21)。このカウント値は、鍵130のノート番号を示すものであり、88個の鍵130のうち、いずれの鍵130に関する処理を実行しているのかを示すポインタとして機能する。
【0055】
次に、CPU200は、現在のカウント値より特定される鍵130の位置を示すアナログ位置信号を、デジタル変換する(ステップS22)。この際、CPU200は、該鍵130に対応するキーセンサ310から入力されるアナログ位置信号を、該鍵130に対応する移動部材別ファイルfに格納されるサンプリング周期(下位周期Lおよび上位周期H)に従って、A/D変換部250Kによりデジタル位置信号に変換する。
【0056】
次に、CPU200は、変換したデジタル位置信号について正規化処理を実行する(ステップS23)。正規化処理とは、鍵盤楽器の個体差を吸収するための処理である。より詳細には、押鍵速度や打弦速度などは、各鍵盤楽器の機械的な誤差などにより、個体差が生じる。このため、標準となる鍵盤楽器を想定し、デジタル位置信号を、その標準となる鍵盤楽器に対応するものに変換(正規化)する。
【0057】
次に、CPU200は、正規化されたデジタル位置信号から、着目する鍵130の動作状況に応じて、位置・時間データ群を生成し、移動部材別ファイルfに格納する生成・記憶処理を実行する(ステップS24)。より具体的には、CPU200は、正規化されたデジタル位置信号から、移動部材の速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、該配列を、移動部材別ファイルfに格納する。なお、この生成・記録処理の詳細な説明については後述することとする。
【0058】
次に、CPU200は、カウント値を「1」だけインクリメントする(ステップS25)。次いで、CPU200は、インクリメントされたカウント値が「88」に達したか否か、すなわち、全ての鍵130について、ステップS22からステップS25までの処理を実行したか否かを判定する(ステップS26)。この判定結果が否定的であれば、CPU200は、カウント値が「88」に達するまで、ステップS22からステップS25までの処理を繰り返す。
【0059】
一方、ステップS26の判定結果が肯定的であれば、CPU200は、処理手順を、演奏情報生成・記録処理(図12)のステップS3に移行する。このように、鍵データ生成・記録処理においては、各ノート番号の鍵130について個別に、位置・時間データ群の生成および記録が行われる。このため、生成された演奏情報フォルダによれば、演奏者などのユーザは、各移動部材ついて個別に、移動部材別ファイルfの削除や差し替えなどを容易に行うことができる。これにより、各移動部材についての演奏情報が混在するMIDIデータなどの演奏情報と比較して、移動部材別の演奏情報の修正が容易なものとなる。
なお、鍵130以外の移動部材(ハンマ142、ダンパ160およびペダル150)についてのハンマデータ生成・記録処理(図12中ステップS3)、ダンパデータ生成・記録処理(同ステップS4)およびペダルデータ生成・記録処理(同ステップS5)の各々においても、鍵データ生成・記録処理と同様に、ノート番号あるいはペダル番号順に、位置・時間データ群を生成し、位置・時間データ群を個別に移動部材別ファイルfに格納する。
【0060】
次に、鍵データ生成・記録処理に含まれる生成・記録処理(図13のステップS24)の動作を、図14を参照して説明する。この生成・記録処理は、ひとつの鍵130に着目して実行される処理であり、鍵130の移動速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、移動部材別ファイルfに格納する処理である。この処理の開始時に、CPU200は、あらかじめ、経過時間が「0」を示す時間データをRAM210に記録する。
【0061】
はじめに、CPU200は、鍵130の速度が変化しているか否かを判定する(ステップS241)。ここで、速度が変化している状況とは、加速度が「0」以外である状態を意味する。このため、速度が変化していない状況には、鍵130が等速運動をしている状況の他、停止している状況も含まれる。このステップS241における判定処理を詳述すると、まず、CPU200は、直前のサンプリング周期中における鍵130の変位から、該サンプリング周期中における平均速度を計測する。この際、CPU200は、時計部240から供給された時刻情報、および、A/D変換部250Kから供給されたデジタル位置信号から、鍵130の速度を求める。次に、CPU200は、計測された速度が、前回に計測された速度と異なるか否かによって、移動部材の速度が変化しているか否かを判定する。なお、前回の速度が存在しない場合、すなわち、速度の計測が第1回目の場合には、ステップS241の判定結果は肯定的になるものとする。
【0062】
さて、ステップS241の判定結果が否定的であれば、CPU200は、RAM210に記憶される時間データを、時計部240から供給される時刻情報に従って、インクリメントする(ステップS242)。ここで、RAM210に記憶される時間データについて説明する。時間データは、ステップS241の判定結果が肯定的であれば、すなわち、鍵130の速度が変化すれば、CPU200によって、そのカウント値が初期化される。このため、時間データにより示される時間は、鍵130が連続して等速運動している期間、あるいは、鍵130が連続して停止している期間のうちいずれかを示すこととなる。
【0063】
次に、CPU200は、鍵130の速度が「0」であるか、すなわち、鍵130が停止しているか否かを判定する(ステップS243)。この判定結果が肯定的であれば、すなわち、鍵130が停止していれば、CPU200は、停止配列を生成し、移動部材別ファイルfへの停止配列の格納、または、移動部材別ファイルfに格納される停止配列の更新を行う(ステップS244)。より具体的には、図15に示されるように、移動部材別ファイルfに含まれる位置・時間データ群の最後尾に停止配列が書き込まれていなければ、すなわち、最後尾が定周期配列あるいは等速配列のいずれかであれば、CPU200は、新たな停止配列を生成すべく、位置データおよび時間データを書き込む。なお、この図においては、ステップS244の実行前の位置・時間データ群の最後尾は、定周期配列である例が示されている。
【0064】
一方、図16に示されるように、位置・時間データ群の最後尾に、既に停止配列が書き込まれていれば、CPU200は、当該停止配列に含まれる時間データを更新する。この際、CPU200は、当該停止配列に含まれる時間データに、ステップS242においてインクリメントしたRAM210に記録される時間データを上書きする。これにより、移動部材が長時間停止した場合においても、位置データ、時間データおよび位置データの3つのデータ要素のみによって、その状況を表現することができるため、サンプリング周期ごとに位置データを記録するデータ構造と比較して、データ量が大きくなる心配がない。従って、記憶部260の記憶容量を小さなものとすることができる。言い換えれば、一定の記憶容量をもつ記憶部260に、より多くの演奏情報フォルダを記録することが可能となる。
【0065】
一方、ステップS243の判定結果が否定的であれば、すなわち、鍵130が等速運動しているならば、CPU200は、等速配列を生成し、移動部材別ファイルfへの等速配列の格納、または、移動部材別ファイルfに格納される等速配列の更新を行う(ステップS245)。さらに詳述すると、CPU200は、図17に示されるように、位置・時間データ群の最後尾に等速配列が書き込まれていなければ、すなわち、最後尾が定周期配列あるいは停止配列のいずれかであれば、等速配列を生成すべく、速度データおよび時間データを書き込む。なお、この図においては、ステップS245の実行前の位置・時間データ群の最後尾は、定周期配列である例が示されている。
【0066】
一方、図18に示されるように、位置・時間データ群の最後尾に、既に、等速配列が格納されていれば、CPU200は、当該等速配列に含まれる時間データを更新する。この際、CPU200は、当該等速配列に含まれる時間データに、ステップS242においてインクリメントしたRAM210に記憶される時間データを上書きする。これにより、移動部材が長時間等速運動したとしても、位置データ、速度データおよび時間データの3つのデータ要素のみで動作状況を表現することができるため、結果として、演奏情報フォルダのデータ量が低減されることとなる。
【0067】
一方、ステップS241の判定結果が肯定的であれば、すなわち、鍵130が等速変化しながら移動していれば、CPU200は、RAM210に記憶される時間データをリセットした後、定周期配列を生成し、記憶部260に記録する。具体的には、CPU200は、移動部材別ファイルfに含まれる位置・時間データ群の最後尾に、現在の鍵130の位置を示す位置データを追記する。これにより、レスト位置からエンド位置まで連続した鍵130の位置を示す演奏情報が記録されることとなる。
【0068】
このように、生成・記録処理においては、移動部材の移動速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、記録する。これにより、データ量を抑えつつ、微妙なニュアンスを表現することができる演奏情報を生成することが可能となる。
なお、ハンマデータ生成・記録処理(図12中ステップS2)、ダンパデータ生成・記録処理(同ステップS3)およびペダルデータ生成・記録処理(同ステップS4)の各々にも生成・記録処理が含まれるが、それらの生成・記録処理は鍵130に関する生成・記録処理(図14)と同様の処理であるため、説明を省略することとする。
【0069】
以上説明したように、本実施形態における鍵盤楽器100によれば、最短0.001mmの精度で移動部材の位置を検出し、最短0.001mSのサンプリング周期によって位置・時間データ群を生成することができる。これにより、各移動部材の動作状況を、詳細かつ忠実に捉えることができ、MIDIデータなどと比較して、奏者の個性や奏法などが反映された演奏情報を生成することができる。このような利点を有するため、鍵盤楽器100の使用方法として、以下のような例が考えられる。
【0070】
例えば、著名な演奏者による演奏操作を、鍵盤楽器100において記録しても良い。これにより、自動演奏鍵盤楽器などにおいて、該演奏者による演奏操作を再生したり、また、該演奏操作を文化遺産として後世に残したりすることが可能となる。
【0071】
くわえて、正確な演奏情報を生成することができるため、鍵盤楽器100を演奏指導に用いることにより、指導効率を向上させることが可能である。より詳しくは、鍵盤楽器100によって生徒の演奏操作を記録すれば、指導者は、記録された演奏情報を用いて、生徒の表現法や、弱点、くせなどの演奏技術を評価することができる。一方、指導者の演奏操作を記録すれば、生徒は、記録された演奏情報を、演奏練習の見本にすることができる。また、鍵盤楽器100によれば、演奏情報が移動部材別に記録される。このため、指導者あるいは生徒は、特定の移動部材(鍵130やペダル150など)に着目して、演奏の評価あるいは演奏の参考にすることができる。
【0072】
しかも、演奏情報生成・記録処理においては、演奏情報として、時系列的に規定された移動部材の位置(位置・時間データ群)そのものを生成する。このため、仕様が複雑なイベント形式のMIDIデータと比較して、演奏操作をイベントデータへ変換する処理が不要となり、また正規化処理も単純なものとなる。これにより、演奏情報の生成に関する処理および構成が、簡易なものとなる。また、鍵盤楽器100により記録された演奏情報を、自動演奏楽器などにおいて再生する場合においても、単に、位置・時間データ群に従って、移動部材を駆動させるだけの処理で良いものとなる。これにより、再生時において、イベントデータから移動部材を駆動させるためのデータへのデータ変換処理や、イベントデータに従って、移動部材を駆動させるタイミング制御などが不要となり、演奏情報の再生にかかる処理および構成が簡易なものとなる。
【0073】
くわえて、生成・記録処理においては、移動部材の速度に応じて、定周期配列、等速配列および停止配列のいずれかが選択され、位置・時間データ群が生成される。このため、移動部材の等速運動時および停止時においては、3つのデータ要素のみによって動作状況を表すことができる。一般に、演奏中であっても、多くの移動部材は停止期間が長いため、停止配列により演奏情報を生成することにより、演奏情報のデータ量を大幅に削減することが可能となる。
【0074】
また、演奏情報生成・記録処理においては、1楽曲の演奏操作を記録するにあたり、移動部材別に演奏操作を記録する。このため、記録された演奏情報について、移動部材別の演奏ミスの削除や差し替えなどの修正作業、および、移動部材別の演奏情報の追加や、移動などの編集作業を容易に行うことができる。これにより、各移動部材についての情報が混在し、同一操作子イベント間の時間検出や、イベント列検出に手間がかかるMIDIデータと比較して、修正作業や編集作業などが簡便なものとなる。
なお、上述した実施形態においては、1つのファイルにつき、1つの移動部材についての動作情報(位置・時間データ群)を格納する例を示したが、単一ファイルであっても、動作情報を別個独立に記録するならば、同様な効果が得られる。要は、移動部材別に動作情報を記録できる方式であれば、いかなるものであってもよい。
【0075】
さらに、鍵盤楽器100において記録した演奏情報の全てあるいは一部を、イベントデータに変換することが可能である。この際、ひとつのイベントデータに対して複数のベロシティを設定可能な高精度なイベントデータに変換することも可能である。これにより、特殊な奏法を、正確にイベントデータへ変換することが可能となる。また、演奏時間の長い楽曲であっても、一旦、演奏情報フォルダとして記録し、別の時期に、該演奏情報フォルダを分割するなどしてイベントデータに変換することも可能である。
【0076】
また、鍵盤楽器100によれば、ハンマ142やダンパ160などの移動部材の位置を正確に記録することができる。これにより、鍵盤楽器100の特性を把握することができ、また、演奏情報フォルダを経年変化による移動部材の劣化や故障などの判断材料とすることができる。
【0077】
<変形例>
なお、上述した実施形態に限られず、種々の応用・改良変形等を加えることが可能である。
例えば、上述した実施形態にあっては、鍵盤楽器100において生成された演奏情報(位置・時間データ群)を記憶部260に記憶する例を示したが、演奏情報を外部機器に出力する構成としても良い。さらに説明すると、図19に示すように、鍵盤楽器100の電気的構成において、上述した記憶部260に替えて、外部インターフェース270を備える構成としても良い。外部インターフェース270は、CPU200によって生成された位置・時間データ群を、外部機器に出力するためのインターフェースである。この外部インターフェース270に接続される外部機器としては、位置・時間データ群に従ってリアルタイムで自動演奏する自動演奏楽器や、位置・時間データ群の加工・編集を行うことができるパーソナルコンピュータなどが考えられる。
【0078】
このような構成にした場合、CPU200は、上述した生成・記録処理(図14参照)において、位置・時間データ群を、記憶部260に記録する替わりに、外部インターフェース270を介して出力する。この際、生成・記録処理のステップS244およびS245においては、既に外部機器に出力された等速配列および停止配列の更新(上書き)処理が実行できない。このため、外部インターフェース270を介して等速配列および停止配列を出力する場合、以下のような手順に従う。
【0079】
すなわち、等速配列の出力については、CPU200は、移動部材が等速で動作している場合には、RAM210において等速配列の記録および更新を行い、ステップS241において等速でないと判定すると、RAM210に記録される等速配列を、外部インターフェース270から出力する。また、停止配列の出力についても同様に、CPU200は、移動部材が停止している場合には、RAM210において停止配列を記録・更新し、移動部材が移動を始めたときに、外部インターフェース270を介して停止配列を出力する。
【0080】
また、等速配列の出力に関する代替的な処理として、以下の処理を適用しても良い。すなわち、まず、CPU200は、等速運動の開始を検出したら、等速配列のデータ要素のうち位置データおよび速度データのみを出力し、当該等速運動の終了を検出したら、残りのデータ要素である時間データを出力する。このような処理にすれば、速度情報が、等速運動の開始とともに出力されるため、外部機器において、位置・時間データ群をリアルタイムで再生することが可能となる。
【0081】
鍵盤楽器100から位置・時間データ群が伝送された外部機器(例えば、パーソナルコンピュータ)においては、該位置・時間データ群を利用して、各種処理を実行することが可能となる。例えば、外部機器の表示装置に、移動部材の時系列的な位置を示す波形を表示することができる。この際、位置・時間データ群が、時間および位置の各々について関して連続しているため、データ格納順に位置をプロットするだけの処理で済む。また、表計算アプリケーションによる位置・時間データ群に関する各種処理も容易に行うことができる。
【0082】
さらに、鍵盤楽器100によれば、移動部材の速度に応じて定周期配列、等速配列および停止配列のいずれかが選択されるため、演奏情報を示す位置・時間データ群のデータ量が低減され、鍵盤楽器100と外部機器とを接続するネットワークトラッフィックが抑制されることとなる。
【0083】
また、上述した実施形態においては、移動部材が等速運動している状態を等速配列で示し、停止している状態を停止配列で示したが、これに限られない。例えば、両方の状態を、等速配列あるいは停止配列のいずれか一方で表現する構成としても良い。より詳細には、位置データ、時間データおよび位置データの順からなる停止配列によって、等速運動している状況を示す場合には、先頭の位置データに、等速運動の開始位置を示す情報を格納し、時間データに、等速運動の期間を示す情報を格納し、後尾の位置データに、等速運動の終了位置を示す情報を格納すれば良い。
一方、位置データ、速度データおよび時間データの順からなる等速配列によって、停止している状況を示す場合には、位置データに、停止位置を示す情報を格納し、速度データに、速度が「0」であることを示す情報を格納し、時間データに、停止時間を示す情報を格納すれば良い。
また、移動部材の速度が変化していない(移動部材が等速運動、あるいは、停止している)状態を表す配列のデータ要素は、位置データ、時間データおよび速度データの3つに限られない。例えば、速度が変化していない期間における移動部材の変位を表す差分データなど、データ要素として組み合わせることにより、速度が変化していない期間と、当該期間における変位とを特定することができるデータであれば、任意に移動部材の速度が変化していない状態を表す配列のデータ要素とすることができる。
【0084】
上述した実施形態においては、演奏情報の生成にかかるセンサ(例えばキーセンサ310など)および電気的構成(図7および図9参照)を、鍵盤楽器100に内蔵する構成としたが、これらの演奏情報の生成にかかる各構成は、鍵盤楽器100と別体とする構成としても良い。これにより、演奏情報を生成する機能を有しない鍵盤楽器であっても、移動部材の詳細な動作を表す演奏情報(位置・時間データ)を作成することができる。例えば、骨董的や歴史的な価値を有する鍵盤楽器における演奏情報を作成することも可能となる。
【0085】
上述した実施形態においては、各移動部材の位置を検出するセンサとして、光により距離を検出する検出する光反射センサを用いる例を示したがこれに限られない。例えば、磁気的に距離を検出する磁気センサなど、各被検出体の位置を連続的に検出することができる検出手段であれば、本発明を任意に適用可能である。また、各移動部材の位置を検出するセンサの代わりに各移動部材の速度や加速度などの移動部材の運動に関する物理量を検出するセンサを備え、検出された物理量から各移動部材の位置を求める構成としても良い。
【0086】
上述した実施形態においては、1楽曲にかかる全ての演奏操作を位置・時間データ群として記録する例を説明したが、これに限られない。例えば、演奏操作の一部(特定の移動部材に関する演奏操作など)を、位置・時間データ群として記録し、その他の演奏操作を、イベント形式の演奏情報として記録する構成としても良い。
【0087】
上述した実施形態においては、ひとつの移動部材別ファイルfにつき、ひとつのサンプリング周期をとる例を示したが、これに限られない。例えば、ハンマ142が打弦位置近傍に位置する場合や、鍵130が下連打時において向き(揺動角度)を変える近傍に位置する場合、ペダル150がハーフペダル領域近傍に位置する場合などの、演奏情報として重要な領域に移動部材が位置する場合のサンプリング周期が、それ以外の領域におけるサンプリング周期よりも短いものとなるような構成としても良い。また、鍵130がレスト位置にある場合には、サンプリング周期を長くする構成としても良い。これにより、データ量や処理量などを抑えつつ、演奏操作における重要な部分については、動作状況を詳細に表現する演奏情報を生成することができる。さらに、楽曲の途中であっても、演奏者や、移動状況(例えば、停止しているか否か)などに応じて、サンプリング周期を変更可能な構成にしても良い。
なお、サンプリング周期を変化させた場合には、その動作情報は、停止配列と同様の、位置データ、時間データおよび位置データからなる配列により表すことができる。この配列においては、先頭の位置データにより示される位置から、時間データにより示される時間(変化後のサンプリング周期)だけ経過した後に、後尾の位置データにより示される位置に移動したことを示している。
【0088】
上述した実施形態においては、位置・時間データの記録にあたり、サンプリング周期が経過するたびにデータ要素を書き足しながら記憶部260に記録したが、これに限られない。例えば、RAM210において、演奏中に、位置・時間データ群の生成および更新を行い、演奏終了時にまとめて記憶部260に書き込む構成としても良い。
【0089】
上述した実施形態においては、演奏情報フォルダを記憶部260に記録する例を示したがこれに限られない。例えば、鍵盤楽器100に、フレキシブルディスクや光ディスクなどの記録媒体に対してデータの読み書きを行うデータ記録再生装置を備え、該データ記録再生装置を介して、記録媒体に演奏情報フォルダを記録する構成としても良い。これにより、パーソナルコンピュータなどの外部機器とデータの授受を行うことが可能となる。
【0090】
上述した実施形態における鍵盤楽器100の構成に加え、さらに、液晶ディスプレイなどの表示装置を備える構成としても良い。このような構成にすると、表示装置に位置・時間データ群を表示し、視覚的に演奏情報を表示させることが可能となる。
【0091】
上述した実施形態においては、鍵130、ハンマ142、ペダル150およびダンパ160の位置・時間データ群を生成する例を説明した。しかし、鍵盤楽器に設けられ、演奏者(操作者)の操作に応じて移動する移動部材であれば、当該移動部材の動作状況を、演奏情報として生成することがきる。
【0092】
上述した実施形態においては、移動部材の速度が変化している場合のみ、定周期配列により演奏情報を生成したが、さらに、移動部材が等速で移動している場合に、定周期配列により演奏情報を生成しても良い。
【0093】
【発明の効果】
以上説明したように本発明によれば、詳細な演奏情報を、データ量を抑えつつ、簡易に生成することが可能な演奏情報生成装置、演奏情報記録装置および鍵盤楽器が提供される。
【図面の簡単な説明】
【図1】本発明の実施形態に係る鍵盤楽器の機械的構成を示す図である。
【図2】同鍵盤楽器の鍵およびキーセンサの斜視図である。
【図3】同キーセンサの構成を示す図である。
【図4】同鍵およびその周辺構成を示す図である。
【図5】同鍵盤楽器のハンマおよびその周辺構成を示す図である。
【図6】同鍵盤楽器のダンパおよびその周辺構成を示す図である。
【図7】同鍵盤楽器の電気的構成を示す図である。
【図8】同鍵盤楽器の記憶部に記憶される移動部材別ファイルの構成を示す図である。
【図9】同移動部材別ファイルに含まれるデータ要素のフォーマットを示す図である。
【図10】同データ要素のフォーマットを示す図である。
【図11】移動部材の動作状況を示す図である。
【図12】同鍵盤楽器において実行される演奏情報生成・記録処理を説明するためのフローチャートである。
【図13】同演奏情報生成・記録処理に含まれる鍵データ生成・記録処理を説明するためのフローチャートである。
【図14】同鍵データ生成・記録処理に含まれる生成・記録処理を説明するためのフローチャートである。
【図15】同生成・記録処理を説明するための図である。
【図16】同生成・記録処理を説明するための図である。
【図17】同生成・記録処理を説明するための図である。
【図18】同生成・記録処理を説明するための図である。
【図19】同実施形態の変形例にかかる鍵盤楽器の電気的構成を示す図である。
【符号の説明】
100…鍵盤楽器、110…棚板、120…筬中、130…鍵、135,145,155,165…被検出部材、140…アクション機構、150…ペダル、142…ハンマ、S…弦、200…CPU、210…RAM、220…ROM、230…操作部、240…時計部、250K,250H,250P,250D…A/D変換部、260…記憶部、270…外部インターフェース、300,400,500,600…支持部材、310…キーセンサ、410…ハンマセンサ、510…ペダルセンサ、610…ダンパセンサ。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a performance information generating device for generating performance information on a keyboard instrument, a performance information recording device for recording performance information, and a keyboard instrument provided with the performance information generating device.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, various configurations have been known as devices for generating performance information indicating a performance operation of a keyboard instrument performed by a player. For example, there is known an apparatus that generates performance information as MIDI (Musical Instruments Digital Interface) data that can define the pitch and velocity (key pressing speed) of a musical tone. As another form, a waveform measuring instrument (for example, an oscillograph) for measuring the position of a performance operator such as a key is connected to a keyboard instrument, and the time-series positions of the performance operator measured by the waveform measuring instrument are measured. A system that generates performance information by sampling the waveform shown is conceivable. Further, as another form, a musical tone generated from a keyboard instrument during performance is sampled by a microphone or the like, and a performance operation corresponding to the musical tone is identified from the sampled musical tone to generate performance information. Is also conceivable.
[0003]
[Problems to be solved by the invention]
However, these devices have the following problems. First, in a device that generates performance information as MIDI data, the MIDI data cannot express a delicate performance operation such as a half-stroke, so that the MIDI data cannot sufficiently express the nuances of musical tones. Was. In the case of MIDI data, information on each operator is stored in a mixed manner. For this reason, when performing a performance operation or the like focusing on a specific operation element, a complicated operation is required. Further, when a performance of an automatic performance keyboard instrument is performed according to event data such as MIDI data, a complicated conversion process from the event data to data for driving a performance operator is required.
[0004]
In a device for sampling the waveform of a performance control using a waveform measurement device, the waveform measurement device generally measures a single channel waveform. In order to perform the measurement, the number of waveform measuring devices required is equal to the number of performance operators (for example, 88 for a key). Further, the waveform measuring instrument is not usually configured in a format specification for musical instruments. As a result, there is a problem that the equipment becomes large-scale and the cost is high. Moreover, if the sampling frequency is increased, performance information indicating detailed performance operations can be obtained, but there is a problem that the data amount increases.
[0005]
In the case of a device that generates performance information by associating performance operations with sampled musical tones, it is difficult to associate performance operations with musical tones. In particular, output is performed when a plurality of performance operators are simultaneously operated. There is a high possibility that the correspondence between the performed musical sound and the performance operation will be incorrect.
[0006]
The present invention has been made in view of the above circumstances, and has as its object to provide a performance information generating apparatus and a performance information generating device capable of easily generating detailed performance information while suppressing the data amount. A recording device and a keyboard instrument are provided.
[0007]
[Means for Solving the Problems]
In order to achieve the above object, a performance information generating device according to the present invention is provided on a keyboard instrument, and for a moving member that moves in response to an operation of an operator, continuously calculates a physical quantity related to the movement from a rest position to an end position. Detecting means for detecting, physical quantity information generating means for outputting physical quantity information based on the physical quantity detected by the detecting means, and whether the moving member is moving based on the physical quantity information generated by the physical quantity information generating means Determining means for determining whether or not the moving member is determined by using the physical quantity detected by the physical quantity detecting means or the physical quantity information generated by the physical quantity information generating means if the determination result by the determining means is positive; The performance information indicating the physical quantity for each fixed time is generated, and if the determination result is negative, the performance information is detected by the physical quantity detection unit. Performance information generating means for generating performance information indicating that the moving member is not moving, using the physical quantity information generated by the physical quantity or the physical quantity information generating means and at least a period during which the moving member is not moving; It is characterized by having a configuration including:
[0008]
According to such a configuration, the performance information reflects the operation state of the moving member in response to the performance operation in detail, and the performance information includes subtle nuances. If the moving member has not moved, the performance information is generated using a period in which the position of the moving member has not changed. As a result, the data amount of the performance information is reduced as compared with the performance information composed of information indicating the position of the moving member at fixed time intervals.
[0009]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0010]
<Mechanical structure of keyboard instruments>
FIG. 1 is a diagram illustrating a mechanical configuration of a keyboard musical instrument according to the present embodiment. As shown in this figure, the keyboard instrument 100 is provided with a shelf board 110. On the upper surface of the shelf board 110, a reed 120 is arranged so as to extend in a direction perpendicular to the paper surface. A plurality of balance pins 125 are erected on the upper surface of the reed 120, and each of the 88 keys 130 is juxtaposed on the upper surface of the reed 120 while being passed through each balance pin 125. I have. These keys 130 are assigned note numbers ranging from “1” to “88” indicating the pitch. Each key 130 is swingably held at a position penetrated by the balance pin 125 as an approximate fulcrum, and the player performs (presses) a key by pressing the front of the key 130.
[0011]
In the vicinity of the rear of the key 130, an action mechanism 140 that is driven according to the swing of the key 130 is provided. The action mechanism 140 includes 88 hammers 142 to which note numbers from “1” to “88” are assigned, and the hammer 142 strikes the string 170 in conjunction with key depression. When the string 170 is struck by the hammer 142, string vibration occurs, and the vibration propagates through a piece (not shown) to a soundboard (not shown) to generate a musical sound.
[0012]
By the way, the player (operator) performs various kinds of key operations to express subtle nuances even if the key is depressed for one key 130. More specifically, the player not only varies the key-pressing speed for each key-press, but also performs various key-presses, such as a key-press that is slower and gradually faster at the beginning, and a key-press in the opposite direction. Perform key operation. In addition, a rendition style such as a half stroke for starting key release before the key 130 reaches an end position (a position where the key 130 is fully pressed) is also used. The action mechanism 140 strikes a string in response to these subtle differences in key operation, and as a result, emits a musical tone corresponding to the subtle differences in key operation.
[0013]
However, when the performance information is generated as MIDI data, for example, for a key pressing operation, the time required for the key to move a distance between two points is detected, and the key is detected based on the distance between the two points and the detected time. The obtained speed is defined as the velocity of the key press operation. For this reason, in MIDI data, only a single velocity is defined for one key press operation, and only a part of the performance operation is reflected. Therefore, the subtle nuances of the performers could not be sufficiently expressed.
[0014]
Therefore, the keyboard instrument 100 serves as a key sensor for detecting a key operation in order to generate performance information in which subtle nuances are reflected, so that the key 130 continuously moves from a rest position (key released position) to an end position. It has a sensor for detecting the position. More specifically, a support member 300 for supporting the key sensor 310 is provided above the key 130. FIG. 2 is a perspective view of the key sensor 310 and the key 130. As shown in this figure, the key sensor 310 is provided at a position facing the detected member 135 disposed on the upper surface of each key 130 so as to correspond to each of the 88 keys 130.
[0015]
FIG. 3 is a diagram showing a configuration of the key sensor 310. As shown in the figure, the key sensor 310 includes a light emitting element 312 and a light receiving element 314. The light emitting element 312 irradiates the detection member 135 with light. On the other hand, the light receiving element 314 receives reflected light of the light emitted from the light emitting element 312 to the detected member 135. The key sensor 310 detects the distance to the detected member 135 in 0.001 mm units according to the amount of light received by the light receiving element 314.
[0016]
When the key 130 is depressed, the detected member 135 moves downward as indicated by the two-dot chain line in FIGS. The key sensor 310 continuously detects the position of the key 130 by detecting the distance from the key sensor 310 to the detected member 135. Thereby, the position of the key 130 can be continuously detected from the rest position to the end position. By employing such a key sensor 310, it is possible to accurately detect a delicate key operation by a player and generate performance information reflecting a delicate nuance from the detected value.
[0017]
FIG. 5 is a diagram showing the configuration of the hammer 142 and its surroundings. As shown in the figure, a hammer shank 143 is attached to a hammer flange 146 included in the action mechanism 140 so as to be rotatable around a pin 144 as a fulcrum. The hammer shank 143 holds the hammer 142 via the hammer wood 141. When a key is pressed, the hammer shank 143 rotates counterclockwise to a position shown by a two-dot chain line in the figure, and the hammer 142 strikes a string.
[0018]
The detected member 145 is fixed to the upper surface of the hammer shank 143. Above the hammer shank 143, a support member 400 for supporting 88 hammer sensors 410 corresponding to the 88 hammers 142 is provided. The hammer sensor 410 has a configuration similar to that of the key sensor 310 described above, and detects the position of the detected member 145 installed on the corresponding hammer shank 143 in units of 0.001 mm. At this time, the hammer sensor 410 continuously detects the position of the hammer 142 from the rest position (position at the time of key release) to the end position (string striking position). Accordingly, the operation of the hammer 142 is detected without missing a subtle change in the operation of the hammer 142.
[0019]
The description is returned to FIG. Below the keyboard instrument 100, three pedals 150 are swingably provided. More specifically, a damper pedal, a soft pedal, and a sostenuto pedal are provided, and “1”, “2”, and “3” are assigned as pedal numbers in this order. Above each pedal 150, a support member 500 for supporting three pedal sensors 510 corresponding to the three pedals is provided. These pedal sensors 510 detect the position of the corresponding pedal 150 in 0.001 mm units, similarly to the key sensor 310 described above. At this time, the pedal sensor 510 continuously detects the pedal position from the rest position (the state where the pedal is not depressed) to the end position (the position where the pedal is depressed).
[0020]
Also, 88 dampers 160 are provided corresponding to each of the plurality of strings 170, and each damper 160 is assigned a note number from “1” to “88” indicating the pitch. Each of the dampers 160 is positioned so as to contact the string 170 when the key is released, while only the damper 160 corresponding to the pressed key 130 is separated from the string 170 when the key is pressed. However, when the damper pedal is depressed, all the dampers 160 move upward according to the amount of depression of the damper pedal and separate from the strings 170. Thereby, the sound of the musical tone is enriched by the effect of the overtone. Conversely, when the depression of the damper pedal is released, the damper 160 comes into contact with the string 170, and the string vibration is attenuated. As a result, sound is suppressed.
[0021]
Above the dampers 160, a support member 600 that supports 88 damper sensors 610 corresponding to each damper 160 is provided. FIG. 6 is a diagram showing the damper 160 and its peripheral configuration. As shown in this figure, when the damper pedal is depressed, the damper 160 moves upward as indicated by the two-dot chain line in accordance with the depression amount. The damper sensor 610 has the same configuration as the above-described key sensor 310, detects the position of the detection target member 165 provided on the upper surface of the damper 160, and detects the position of the damper 160 in 0.001 mm units. Thus, it is possible to generate performance information that expresses in detail whether or not the damper 160 that affects sound attenuation is in contact with the string 170.
[0022]
<Electrical composition of keyboard instruments>
FIG. 7 is a diagram illustrating an electrical configuration of the keyboard instrument 100. In this figure, a CPU 200 controls each component via a bus B. The RAM 210 is used as a work area of the CPU 200, and temporarily stores time data and the like described later. The ROM 220 records various programs such as a program for the CPU 200 to execute performance information generation / recording processing. Here, the performance information generation / recording process refers to detecting the positions of four types of moving members (key 130, hammer 142, pedal 150 and damper 160) during the performance of the player on the keyboard instrument 100, and This is a process for generating and recording performance information indicating the operation of.
[0023]
The operation unit 230 includes a switch for inputting various operations by the user, and sends a start signal for instructing the start of the performance information generation / recording process, an end signal for instructing the end of the process, and the like via the bus B. It is supplied to the CPU 200.
The clock unit 240 supplies time information indicating the current time to the CPU 200. When receiving the time information, the CPU 200 generates time data indicating the moving period of the moving member, speed data indicating the speed of the moving member, and the like using the information.
[0024]
Each of the 88 key sensors 310 inputs an analog position signal indicating the detected position of each key 130 to the A / D converter 250K. Upon receiving the analog position signal from each key sensor 310, the A / D converter 250K converts the signal into a digital signal and supplies the signal to the CPU 200 as a digital position signal.
[0025]
Each of the 88 hammer sensors 410 inputs an analog position signal indicating the detected position of each hammer 142 to the A / D converter 250H. Upon receiving the analog position signal from each hammer sensor 410, the A / D converter 250H converts the signal into a digital signal and supplies it to the CPU 200 as a digital position signal.
[0026]
Each of the three pedal sensors 510 inputs an analog position signal indicating the detected position of each pedal 150 to the A / D converter 250P. Upon receiving the analog position signal from each pedal sensor 510, the A / D converter 250P converts the signal into a digital signal and supplies the digital signal to the CPU 200 as a digital position signal.
[0027]
Each of the 88 damper sensors 610 inputs an analog position signal indicating the detected position of each damper 160 to the A / D converter 250H. Upon receiving the analog position signal from each damper sensor 610, the A / D converter 250H converts the signal into a digital signal and supplies it to the CPU 200 as a digital position signal.
[0028]
When the CPU 200 receives the digital position signals from the A / D converters 250K, 250H, 250P, and 250D and the time information from the clock 240, the CPU 200 uses the information to move the moving distance of each moving member, The time required for moving by the distance, the moving speed, and the like are obtained, and a file for each moving member in which the position of each moving member is defined in time series is generated as performance information. At this time, the CPU 200 generates a file for each moving member for each of the key 130, the hammer 142, and the damper 160 for each note number, and for the pedal 150, for each pedal number.
[0029]
The storage unit 260 is a rewritable storage unit such as a hard disk, and stores a performance information folder and the like. Here, the performance information folder is a file that is recorded in the storage unit 260 for each song and stores files for each moving member corresponding to all moving members as performance information of the song.
[0030]
FIG. 8 is a view showing the structure of one moving member file stored in the performance information folder. As shown in this figure, the moving member-specific file f roughly includes an attribute data group and a position / time data group. The attribute data group stores information indicating which moving member file f corresponds to the moving member file f, and the like. On the other hand, the position / time data group stores information in which the position of the moving member is defined in time series, that is, information indicating the operation of the moving member. Hereinafter, details of the data elements included in the attribute data group and the position / time data group will be described.
[0031]
The attribute data group includes note ID / pedal ID, moving member ID, lower period L, and upper period H as data elements. The moving member ID is information for specifying the type of the moving member, and is information indicating which of the key 130, the hammer 142, the pedal 150, and the damper 160 the moving member file f corresponds to. When the type of the moving member is specified to any of the key 130, the hammer 142, and the damper 160 based on the moving member ID, the note ID / pedal ID is the moving member file f corresponding to which note number. Indicates that the type of the moving member is the pedal 150, and indicates which pedal corresponds to the moving member file f corresponding to which pedal.
[0032]
The lower period L and the upper period H represent a sampling period used for generating a position / time data group by using these two. Each of the lower period L and the upper period H can be set by the player, and a different sampling period can be set for each moving member via the operation unit 230.
[0033]
FIG. 9 is a diagram showing a format of a data element included in the attribute data group. As shown in this figure, each data element is defined as 16-bit data. First, as the moving member ID, “11000001 0000” as its identifier is stored in the upper 12 bits, and “0001” indicating the key 130 and “0010” indicating the hammer 142 are stored in the lower 4 bits indicated by “wwwwww”. , "001" indicating the damper 160 and "0000" indicating the pedal 150 are stored.
[0034]
In the note ID / pedal ID, “1100 0000” as an identifier thereof is stored in upper 8 bits, and information for specifying a note number or a pedal is stored in lower 8 bits indicated by “kkkk kkkkk”. . More specifically, the lower 8 bits include any one of “0000 0001 (1 in decimal notation)” to “0101 1000 (88 in decimal notation)” indicating the note number, or “Loud pedal”. One of “1000 0000”, “1000 0010” indicating the sostenuto pedal, and “1000 0011” indicating the shift pedal is stored.
[0035]
In the lower period L, "1100 0010" as its identifier is stored in the upper 8 bits, and "t L t L t L t L t L t L t L t L The information indicating the lower 8 bits of the sampling period is stored in the lower 8 bits indicated by "." On the other hand, in the upper cycle H, “1100 0011” as its identifier is stored in the upper 8 bits, H t H t H t H t H t H t H t H The information indicating the upper 8 bits of the sampling period is stored in the lower 8 bits indicated by "." Thus, the sampling period is 16 bits “t”. H t H t H t H t H t H t H t H t L t L t L t L t L t L t L t L ". Here, one bit of the sampling period indicates 0.001 mS, and a period from 0.000 mS to 65.535 mS can be expressed in units of 0.001 mS depending on the sampling period.
[0036]
The sampling cycle may be defined by only the lower cycle L or only the upper cycle H. More specifically, when only the lower period L is used, the sampling period is 8-bit “t”. L t L t L t L t L t L t L t L , And a period from 0.001 mS to 0.255 mS can be expressed in units of 0.001 mS. On the other hand, when only the upper cycle H is used, the sampling cycle is “t” of 16 bits. H t H t H t H t H t H t H t H 0000 0000 ”, and a period from 0.256 mS to 65.280 mS can be expressed in 0.256 mS units.
[0037]
In FIG. 8 again, the moving member ID included in the attribute data group indicates “0001” by the lower 4 bits, and the note ID / pedal ID indicates “60” in decimal notation by the lower 8 bits. . The sampling cycle is defined as “0000 0011 1110 1000” from the lower cycle L and the upper cycle H, and indicates “1000” in decimal notation. From these, it is specified that the file f for each moving member is the moving member file f for the key 130 having the note number “60”, and the sampling cycle used in the position / time data group is “1 mS”. It is specified that there is.
[0038]
Following such an attribute data group, a position / time data group is stored. The position / time data group includes position data, speed data, and time data as data elements. Among them, the position data is data indicating the position of the moving member. The speed data is data indicating the speed of the moving member within a certain period. The time data is data indicating a period during which the moving member has moved at a constant speed or stopped.
[0039]
FIG. 10 is a diagram showing a format of each data element of the position / time data. As shown in the figure, in the position data, “00” is stored as the identifier in the upper two bits, and information indicating the position of the moving member is stored in the lower 14 bits indicated by “xx xxxx xxxx xxxx”. Is done. One bit of the position data indicates 0.001 mm, and the position data can represent a position in 1634 steps from -4.096 mm to 12.287 mm.
[0040]
In the speed data, “01” is stored in the upper two bits as its identifier, and information indicating the speed of the moving member is stored in the lower 14 bits indicated by “vv vvvv vvvv vvvv”. One bit of the speed data indicates 1 mm / S.
[0041]
In the time data, “10” is stored as the identifier in the upper two bits, and information indicating the time is stored in the lower 14 bits indicated by “tt ttttt ttttt tttt”. Here, one bit of the time data indicates 0.001 mS, and the time data can represent a time from 0.000 mS to 16.383 mS.
[0042]
Each of these position data, time data, and speed data is information that defines the position of the moving member in time series by being arranged according to any one of the fixed-period array, the constant-speed array, and the stop array. . The CPU 200 generates one of the arrays in accordance with the operation status of the three types of moving members, and stores the array in the position / time data group.
[0043]
FIGS. 11A, 11B, and 11C are diagrams showing three types of operation states of the moving member. In these figures, the vertical axis indicates the position of the moving member. The horizontal axis is the time axis, and one scale on the horizontal axis indicates one sampling period. First, as shown in FIG. 11A, when the moving member is moving at a non-constant speed, that is, at a speed at which the acceleration is not zero, the CPU 200 generates a periodic array and generates position / time data. Store in groups. More specifically, in the fixed-period array, as shown in FIG. 8, the position data is arranged continuously. In this array, each position data sequentially indicates the position of the moving member every time a fixed period (sampling cycle) elapses.
[0044]
Next, as shown in FIG. 11B, when the moving member is moving at a constant speed, the CPU 200 generates a constant speed array and stores it in the position / time data group. More specifically, as shown in FIG. 8, in the constant velocity array, position data, velocity data, and time data are arranged in this order. In this arrangement, it indicates that the moving member has moved from the position indicated by the position data at the speed indicated by the speed data for the period indicated by the time data. According to such a data notation method, even when the moving member is moving at a constant speed for a long time, the situation can be expressed by only three element data. For example, FIG. 11A is compared with FIG. In the case of a fixed-period array, to represent the operation of the moving member during the period t (20 times the sampling period), it is necessary to arrange 20 position data. On the other hand, according to the constant-velocity array, an operation during the same period can be expressed by an array of only three data elements. As a result, the data amount is significantly reduced as compared with a format in which the positions of the moving members are arranged for each sampling cycle (fixed-cycle arrangement).
[0045]
Then, as shown in FIG. 11C, when the moving member is stopped, the CPU 200 generates a stop sequence and stores it in the position / time data group. More specifically, as shown in FIG. 8, in the constant velocity array, position data, time data, and position data are arranged in this order. In this arrangement, the first position data and the last position data indicate the same position, indicating that the moving member stops at that position for the period indicated by the time data. According to such a data notation method, even if the moving member has been stopped for a long time, the situation can be expressed only by the three element data. For this reason, the data amount is remarkably reduced as compared with a format in which the positions of the moving members are arranged in each sampling cycle (fixed-cycle arrangement).
[0046]
<Operation of keyboard instruments>
Next, the performance information generation / recording process executed by the CPU 200 will be described with reference to FIG. The performance information generation / recording process is a process of detecting the position of each moving member during the performance of the keyboard instrument 100 by the player, generating a moving member file f from the detection result, and recording the file f in the storage unit 260. The CPU 200 starts the performance information generation / recording process using a start signal input from the operation unit 230 as a trigger. This process is interrupted by a timer, and the CPU 200 resets the timer at the start of the process.
[0047]
First, when a start signal is input from the operation unit 230, the CPU 200 executes an initialization process (step S1). More specifically, the CPU 200 records a performance information folder in the storage unit 260, and stores the moving member-specific files f relating to all the moving members in the performance information folder. Further, the start signal is added with the lower cycle L and the upper cycle H, and the CPU 200 stores them in the attribute data group of the file f for each moving member. At this point, only the attribute data group is recorded in each moving member file f, and no information regarding the position / time data group is recorded.
[0048]
Next, the CPU 200 executes a key data generation / recording process (step S2). This key data generation / recording process generates, for each of the 88 keys 130, a position / time data group in which the position of the key 130 is specified in a time-series manner, and stores the group in the performance information folder stored in the storage unit 260. This is a process of storing the generated position / time data group in the included moving member file f. The details of the key data generation / recording process will be described later.
[0049]
Next, the CPU 200 executes a hammer data generation / recording process (step S3). In this process, a position / time data group is generated for each of the 88 hammers 142, and the position / time data group is stored in the moving member file f included in the performance information folder.
[0050]
Next, the CPU 200 executes a damper data generation / recording process (step S4). In this process, a position / time data group is generated for each of the 88 dampers 160, and the position / time data group is stored in the moving member file f included in the performance information folder.
[0051]
Next, the CPU 200 executes a pedal data generation / recording process (step S5). In this process, a position / time data group is generated for each of the three pedals 150, and the position / time data group is stored in the moving member-specific file f included in the performance information folder.
[0052]
Next, CPU 200 determines whether or not an end signal has been received from operation unit 230 (step S6). If the determination result is negative, the CPU 200 determines whether a certain time has elapsed in the timer (step S7). If the result of this determination is negative, the CPU 200 continues the determination of step S7 to wait until a certain time has elapsed. On the other hand, if the decision result in the step S7 is affirmative, the timer is reset and the process returns to the step S2.
On the other hand, if the decision result in the step S6 is affirmative, that is, if an end signal is received, the CPU 200 terminates the performance information generation / recording process.
[0053]
Next, the above-described key data generation / recording process (step S2 in FIG. 12) will be described with reference to FIG. This process is a process for generating a position / time data group for each of the 88 keys 130 individually and recording it in the storage unit 260.
[0054]
First, the CPU 200 sets the count value to “1” (Step S21). This count value indicates the note number of the key 130, and functions as a pointer indicating which key 130 of the 88 keys 130 is being processed.
[0055]
Next, the CPU 200 converts the analog position signal indicating the position of the key 130 specified by the current count value into a digital signal (step S22). At this time, the CPU 200 converts the analog position signal input from the key sensor 310 corresponding to the key 130 according to the sampling period (lower period L and upper period H) stored in the moving member file f corresponding to the key 130. , A / D converter 250K converts the digital position signal.
[0056]
Next, the CPU 200 executes a normalization process on the converted digital position signal (step S23). The normalization process is a process for absorbing individual differences between keyboard instruments. More specifically, individual differences occur in the key pressing speed, the string striking speed, and the like due to a mechanical error of each keyboard instrument. Therefore, assuming a standard keyboard instrument, the digital position signal is converted (normalized) to a signal corresponding to the standard keyboard instrument.
[0057]
Next, the CPU 200 executes a generation / storage process of generating a position / time data group from the normalized digital position signal in accordance with the operation state of the key 130 of interest and storing the group in the file f for each moving member. (Step S24). More specifically, the CPU 200 generates, based on the normalized digital position signal, one of a fixed-period array, a constant-speed array, and a stop array in accordance with the speed of the moving member, and Store in file f. The detailed description of the generation / recording process will be described later.
[0058]
Next, the CPU 200 increments the count value by “1” (step S25). Next, the CPU 200 determines whether or not the incremented count value has reached “88”, that is, whether or not the processing from step S22 to step S25 has been executed for all keys 130 (step S26). . If this determination result is negative, the CPU 200 repeats the processing from step S22 to step S25 until the count value reaches “88”.
[0059]
On the other hand, if the decision result in the step S26 is positive, the CPU 200 shifts the processing procedure to the step S3 of the performance information generation / recording process (FIG. 12). As described above, in the key data generation / recording processing, the position / time data group is generated and recorded individually for the key 130 of each note number. Therefore, according to the generated performance information folder, a user such as a player can easily delete or replace the moving member-specific file f for each moving member. This makes it easier to correct performance information for each moving member as compared to performance information such as MIDI data in which performance information for each moving member is mixed.
Note that hammer data generation / recording processing (step S3 in FIG. 12), damper data generation / recording processing (step S4 in FIG. 12), and pedal data generation / recording processing for moving members other than the key 130 (the hammer 142, the damper 160, and the pedal 150). In each recording process (step S5), similarly to the key data generation / recording process, a position / time data group is generated in the order of the note number or the pedal number, and the position / time data group is individually stored in the moving member file. Stored in f.
[0060]
Next, the operation of the generation / recording process (step S24 in FIG. 13) included in the key data generation / recording process will be described with reference to FIG. This generation / recording process is a process executed by paying attention to one key 130, and generates one of a fixed-period array, a constant-speed array, and a stop array according to the moving speed of the key 130. This is a process of storing in another file f. At the start of this processing, the CPU 200 records time data indicating the elapsed time “0” in the RAM 210 in advance.
[0061]
First, the CPU 200 determines whether or not the speed of the key 130 has changed (step S241). Here, the situation where the speed is changing means a state where the acceleration is other than “0”. For this reason, the situation where the speed has not changed includes the situation where the key 130 is stopped in addition to the situation where the key 130 is moving at a constant speed. The determination process in step S241 will be described in detail. First, the CPU 200 measures an average speed during the sampling cycle from the displacement of the key 130 during the immediately preceding sampling cycle. At this time, the CPU 200 obtains the speed of the key 130 from the time information supplied from the clock unit 240 and the digital position signal supplied from the A / D conversion unit 250K. Next, the CPU 200 determines whether or not the speed of the moving member is changing based on whether or not the measured speed is different from the speed measured last time. When the previous speed does not exist, that is, when the measurement of the speed is the first time, the determination result of step S241 is positive.
[0062]
If the determination result in step S241 is negative, the CPU 200 increments the time data stored in the RAM 210 according to the time information supplied from the clock unit 240 (step S242). Here, the time data stored in the RAM 210 will be described. If the determination result of step S241 is affirmative, that is, if the speed of the key 130 changes, the count value of the time data is initialized by the CPU 200. For this reason, the time indicated by the time data indicates either a period in which the key 130 is continuously moving at a constant speed or a period in which the key 130 is continuously stopped.
[0063]
Next, the CPU 200 determines whether or not the speed of the key 130 is “0”, that is, whether or not the key 130 is stopped (step S243). If this determination result is affirmative, that is, if the key 130 is stopped, the CPU 200 generates a stop sequence, and stores the stop sequence in the moving member file f, or stores the stopping sequence in the moving member file f. The stored stop sequence is updated (step S244). More specifically, as shown in FIG. 15, if the stop sequence is not written at the end of the position / time data group included in the moving member-specific file f, that is, the end is a fixed period array or the like. If it is any of the speed arrays, the CPU 200 writes the position data and the time data to generate a new stop array. Note that this figure shows an example in which the end of the position / time data group before the execution of step S244 is a fixed-period array.
[0064]
On the other hand, as shown in FIG. 16, if a stop sequence has already been written at the end of the position / time data group, CPU 200 updates the time data included in the stop sequence. At this time, the CPU 200 overwrites the time data included in the stop sequence with the time data recorded in the RAM 210 incremented in step S242. Thus, even when the moving member is stopped for a long time, the situation can be expressed only by the three data elements of the position data, the time data, and the position data. There is no need to worry about an increase in data volume as compared to the structure. Therefore, the storage capacity of the storage unit 260 can be reduced. In other words, it is possible to record more performance information folders in the storage unit 260 having a fixed storage capacity.
[0065]
On the other hand, if the determination result in step S243 is negative, that is, if the key 130 is moving at a constant speed, the CPU 200 generates a constant speed array and stores the constant speed array in the moving member-specific file f. Alternatively, the constant velocity array stored in the moving member-specific file f is updated (step S245). More specifically, as shown in FIG. 17, the CPU 200 does not write the constant-velocity array at the end of the position / time data group, that is, the CPU 200 determines whether the end is either a fixed-period array or a stop array. If there is, velocity data and time data are written to generate a constant velocity array. In this figure, an example is shown in which the end of the position / time data group before execution of step S245 is a fixed-period array.
[0066]
On the other hand, as shown in FIG. 18, if a constant velocity array is already stored at the end of the position / time data group, CPU 200 updates the time data included in the constant velocity array. At this time, the CPU 200 overwrites the time data stored in the RAM 210 incremented in step S242 on the time data included in the constant velocity array. Thus, even if the moving member moves at a constant velocity for a long time, the operation state can be expressed only by the three data elements of the position data, the speed data, and the time data. As a result, the data amount of the performance information folder is reduced. It will be reduced.
[0067]
On the other hand, if the determination result in step S241 is affirmative, that is, if the key 130 is moving while changing at a constant speed, the CPU 200 resets the time data stored in the RAM 210, and then generates the fixed-period array. Then, it is recorded in the storage unit 260. Specifically, the CPU 200 additionally writes position data indicating the current position of the key 130 at the end of the position / time data group included in the moving member-specific file f. As a result, performance information indicating the position of the key 130 that is continuous from the rest position to the end position is recorded.
[0068]
As described above, in the generation / recording process, any one of the fixed-period array, the constant-speed array, and the stop array is generated and recorded according to the moving speed of the moving member. As a result, it is possible to generate performance information that can express subtle nuances while suppressing the data amount.
The hammer data generation / recording process (step S2 in FIG. 12), the damper data generation / recording process (step S3), and the pedal data generation / recording process (step S4) also include the generation / recording process. However, these generation / recording processes are the same as the generation / recording process (FIG. 14) related to the key 130, and thus the description thereof will be omitted.
[0069]
As described above, according to the keyboard instrument 100 of the present embodiment, it is possible to detect the position of the moving member with an accuracy of at least 0.001 mm and generate a position / time data group with a sampling period of at least 0.001 mS. it can. As a result, the operation status of each moving member can be grasped in detail and faithfully, and the performance information reflecting the player's individuality and playing style can be generated as compared with MIDI data and the like. Because of these advantages, the following examples are conceivable as methods of using the keyboard instrument 100.
[0070]
For example, a performance operation by a famous player may be recorded in the keyboard instrument 100. This makes it possible to reproduce the performance operation performed by the player on an automatic performance keyboard instrument or the like, or leave the performance operation as a cultural heritage for posterity.
[0071]
In addition, since it is possible to generate accurate performance information, it is possible to improve the efficiency of instruction by using the keyboard instrument 100 for instruction of performance. More specifically, if the performance operation of the student is recorded by the keyboard instrument 100, the instructor can use the recorded performance information to evaluate the student's expression method, weakness, habit, and other performance techniques. On the other hand, if the performance operation of the instructor is recorded, the student can use the recorded performance information as a sample of performance practice. According to the keyboard instrument 100, performance information is recorded for each moving member. For this reason, the instructor or the student can pay attention to a specific moving member (the key 130, the pedal 150, or the like) and refer to the performance evaluation or the performance reference.
[0072]
Moreover, in the performance information generation / recording process, the position (position / time data group) of the moving member specified in time series itself is generated as the performance information. For this reason, compared with the MIDI data of the event format having complicated specifications, the process of converting the performance operation into the event data becomes unnecessary, and the normalization process becomes simple. This simplifies the processing and configuration related to the generation of performance information. Also, when playing the performance information recorded by the keyboard instrument 100 on an automatic performance instrument or the like, it is sufficient to simply drive the moving member in accordance with the position / time data group. This eliminates the need for data conversion processing from event data to data for driving the moving member at the time of reproduction, timing control for driving the moving member in accordance with the event data, and the like. Becomes simple.
[0073]
In addition, in the generation / recording process, one of a fixed-period array, a constant-speed array, and a stop array is selected according to the speed of the moving member, and a position / time data group is generated. For this reason, at the time of the constant-velocity movement and at the time of stop of the moving member, the operation state can be represented by only three data elements. In general, even during a performance, many moving members have a long stopping period. Therefore, by generating the performance information by the stop arrangement, the data amount of the performance information can be significantly reduced.
[0074]
In the performance information generation / recording process, the performance operation of one music piece is recorded, and the performance operation is recorded for each moving member. For this reason, it is possible to easily perform a correction operation such as deletion or replacement of a performance error for each moving member, an addition of performance information for each moving member, and an editing operation for the recorded performance information. As a result, information about each moving member is mixed, and correction work and editing work become simpler than MIDI data that requires time detection between the same operator events and event sequence detection.
In the above-described embodiment, an example has been described in which the operation information (position / time data group) for one moving member is stored for one file. A similar effect can be obtained if recording is performed independently. In short, any method may be used as long as the operation information can be recorded for each moving member.
[0075]
Further, all or a part of the performance information recorded in the keyboard instrument 100 can be converted into event data. At this time, it is also possible to convert one event data into highly accurate event data in which a plurality of velocities can be set. This makes it possible to accurately convert a special playing style into event data. Further, even a music piece having a long performance time can be temporarily recorded as a performance information folder and converted into event data at another time by dividing the performance information folder.
[0076]
Further, according to the keyboard instrument 100, the positions of the moving members such as the hammer 142 and the damper 160 can be accurately recorded. As a result, the characteristics of the keyboard instrument 100 can be grasped, and the performance information folder can be used as a material for determining deterioration or failure of the moving member due to aging.
[0077]
<Modification>
It is to be noted that the present invention is not limited to the above-described embodiment, and various applications and improved modifications can be made.
For example, in the above-described embodiment, an example in which the performance information (position / time data group) generated in the keyboard instrument 100 is stored in the storage unit 260 has been described. Is also good. More specifically, as shown in FIG. 19, the electrical configuration of the keyboard instrument 100 may include an external interface 270 instead of the storage unit 260 described above. The external interface 270 is an interface for outputting the position / time data group generated by the CPU 200 to an external device. Examples of the external device connected to the external interface 270 include an automatic musical instrument that automatically performs in real time according to the position / time data group, and a personal computer that can process and edit the position / time data group.
[0078]
In such a configuration, the CPU 200 outputs the position / time data group via the external interface 270 instead of recording it in the storage unit 260 in the above-described generation / recording processing (see FIG. 14). At this time, in steps S244 and S245 of the generation / recording processing, the processing of updating (overwriting) the constant velocity array and the stop array already output to the external device cannot be executed. Therefore, when outputting the constant velocity array and the stop array via the external interface 270, the following procedure is followed.
[0079]
That is, with respect to the output of the constant speed array, when the moving member is operating at the constant speed, the CPU 200 records and updates the constant speed array in the RAM 210, and when it is determined in step S241 that the moving member is not the constant speed, the RAM 210 Is output from the external interface 270. Similarly, when outputting the stop sequence, the CPU 200 records and updates the stop sequence in the RAM 210 when the moving member is stopped, and via the external interface 270 when the moving member starts moving. And output the stop sequence.
[0080]
Further, the following processing may be applied as an alternative processing relating to the output of the constant velocity array. That is, first, when detecting the start of the constant velocity movement, the CPU 200 outputs only the position data and the velocity data among the data elements in the constant velocity array, and when detecting the end of the constant velocity movement, the CPU 200 outputs the remaining data elements. Output time data. According to such processing, since the speed information is output at the same time as the start of the constant-velocity movement, the external device can reproduce the position / time data group in real time.
[0081]
In an external device (for example, a personal computer) to which the position / time data group is transmitted from the keyboard instrument 100, various processes can be executed using the position / time data group. For example, a waveform indicating the time-series position of the moving member can be displayed on the display device of the external device. At this time, since the position / time data group is continuous with respect to each of the time and the position, only the processing of plotting the positions in the data storage order is sufficient. In addition, various processes relating to the position / time data group by the spreadsheet application can be easily performed.
[0082]
Further, according to the keyboard instrument 100, any one of the fixed-period array, the constant-speed array, and the stop array is selected according to the speed of the moving member, so that the data amount of the position / time data group indicating the performance information is reduced. Therefore, network traffic connecting the keyboard instrument 100 and the external device is suppressed.
[0083]
Further, in the above-described embodiment, the state in which the moving member is moving at a constant speed is shown in the constant speed array, and the state in which the moving member is stopped is shown in the stop array. For example, a configuration may be adopted in which both states are expressed by either a constant velocity array or a stop array. More specifically, in the case where the stop sequence consisting of the position data, the time data, and the position data indicates the state of the constant velocity movement, the head position data includes information indicating the start position of the constant velocity movement. What is necessary is just to store the information indicating the period of the constant velocity exercise in the time data, and to store the information indicating the end position of the constant velocity exercise in the rear position data.
On the other hand, when a stop state is indicated by a constant velocity array in the order of position data, speed data, and time data, information indicating the stop position is stored in the position data, and the speed is set to “speed” in the speed data. It is only necessary to store information indicating that the stop time is “0” and to store information indicating the stop time in the time data.
Further, the data elements of the array representing the state in which the speed of the moving member has not changed (the moving member is moving at a constant speed or stopped) are not limited to three, that is, position data, time data, and speed data. . For example, data that can specify a period during which the speed is not changed and a displacement during the period by combining as a data element, such as differential data representing the displacement of the moving member during the period during which the speed is not changed. For example, the data element may be an array of data elements representing a state in which the speed of the moving member has not changed.
[0084]
In the above-described embodiment, the sensor (for example, the key sensor 310 and the like) and the electrical configuration (see FIGS. 7 and 9) for generating the performance information are configured to be built in the keyboard instrument 100. Each configuration related to generation may be configured separately from the keyboard instrument 100. As a result, even with a keyboard instrument that does not have a function of generating performance information, it is possible to create performance information (position / time data) representing the detailed operation of the moving member. For example, it is possible to create performance information on a keyboard instrument having antique or historical value.
[0085]
In the above-described embodiment, an example has been described in which a light reflection sensor that detects a distance by light is used as a sensor that detects the position of each moving member, but is not limited thereto. For example, the present invention can be arbitrarily applied to any detecting means such as a magnetic sensor that magnetically detects a distance, such as a magnetic sensor that can continuously detect the position of each detection target. In addition, instead of a sensor that detects the position of each moving member, a sensor that detects a physical amount related to the movement of the moving member such as the speed and acceleration of each moving member is provided, and the position of each moving member is obtained from the detected physical amount. Is also good.
[0086]
In the above-described embodiment, an example has been described in which all performance operations for one music piece are recorded as a position / time data group, but the present invention is not limited to this. For example, a configuration may be adopted in which part of a performance operation (such as a performance operation relating to a specific moving member) is recorded as a position / time data group, and other performance operations are recorded as performance information in an event format.
[0087]
In the above-described embodiment, an example is described in which one sampling cycle is taken for one moving member file f, but the present invention is not limited to this. For example, when the hammer 142 is located in the vicinity of the string striking position, when the key 130 is located in the vicinity of changing the direction (swing angle) at the time of consecutive hits, when the pedal 150 is located in the vicinity of the half pedal region, The configuration may be such that the sampling cycle when the moving member is located in an area important as performance information is shorter than the sampling cycle in other areas. When the key 130 is at the rest position, the sampling period may be set longer. As a result, it is possible to generate performance information that expresses an operation state in detail for an important part in the performance operation while suppressing the data amount and the processing amount. Furthermore, even in the middle of the music, the sampling period may be changed according to the player, the moving state (for example, whether or not the music is stopped), or the like.
When the sampling period is changed, the operation information can be represented by an array of position data, time data, and position data, similar to the stop array. In this arrangement, it is shown that after the time indicated by the time data (the changed sampling period) has elapsed from the position indicated by the head position data, the head has moved to the position indicated by the tail position data.
[0088]
In the above-described embodiment, in recording the position / time data, the data element is recorded in the storage unit 260 while adding the data element each time the sampling period elapses, but is not limited thereto. For example, the configuration may be such that the position / time data group is generated and updated in the RAM 210 during the performance, and is written into the storage unit 260 at the end of the performance.
[0089]
In the embodiment described above, an example in which the performance information folder is recorded in the storage unit 260 has been described, but the present invention is not limited to this. For example, the keyboard instrument 100 is provided with a data recording / reproducing device for reading / writing data from / on a recording medium such as a flexible disk or an optical disk, and a performance information folder is recorded on the recording medium via the data recording / reproducing device. Is also good. This makes it possible to exchange data with an external device such as a personal computer.
[0090]
In addition to the configuration of the keyboard instrument 100 in the above-described embodiment, a configuration may be further provided that includes a display device such as a liquid crystal display. With such a configuration, it is possible to display the position / time data group on the display device and visually display the performance information.
[0091]
In the above-described embodiment, an example has been described in which the position / time data group of the key 130, the hammer 142, the pedal 150, and the damper 160 is generated. However, if the moving member is provided on a keyboard instrument and moves according to the operation of a player (operator), the operation state of the moving member can be generated as performance information.
[0092]
In the above-described embodiment, the performance information is generated by the fixed-period array only when the speed of the moving member is changing. However, when the moving member is moving at a constant speed, the performance information is generated by the fixed-period array. Information may be generated.
[0093]
【The invention's effect】
As described above, according to the present invention, a performance information generating device, a performance information recording device, and a keyboard instrument that can easily generate detailed performance information while suppressing the data amount are provided.
[Brief description of the drawings]
FIG. 1 is a diagram showing a mechanical configuration of a keyboard musical instrument according to an embodiment of the present invention.
FIG. 2 is a perspective view of a key and a key sensor of the keyboard instrument.
FIG. 3 is a diagram showing a configuration of the key sensor.
FIG. 4 is a diagram showing the same key and its peripheral configuration.
FIG. 5 is a diagram showing a hammer of the keyboard instrument and a peripheral configuration thereof.
FIG. 6 is a diagram showing a damper of the keyboard instrument and its peripheral configuration.
FIG. 7 is a diagram showing an electrical configuration of the keyboard instrument.
FIG. 8 is a diagram showing a configuration of a file for each moving member stored in a storage unit of the keyboard instrument.
FIG. 9 is a diagram showing a format of a data element included in the file for each moving member.
FIG. 10 is a diagram showing a format of the data element.
FIG. 11 is a diagram illustrating an operation state of a moving member.
FIG. 12 is a flowchart for explaining performance information generation / recording processing executed in the keyboard instrument.
FIG. 13 is a flowchart for explaining key data generation / recording processing included in the performance information generation / recording processing.
FIG. 14 is a flowchart illustrating a generation / recording process included in the key data generation / recording process.
FIG. 15 is a diagram for explaining the generation / recording process.
FIG. 16 is a diagram for explaining the generation / recording process.
FIG. 17 is a diagram for explaining the generation / recording process.
FIG. 18 is a diagram for explaining the generation / recording process.
FIG. 19 is a diagram showing an electrical configuration of a keyboard instrument according to a modification of the embodiment.
[Explanation of symbols]
100: keyboard instrument, 110: shelf, 120: reed, 130: key, 135, 145, 155, 165: detected member, 140: action mechanism, 150: pedal, 142: hammer, S: string, 200 ... CPU, 210 RAM, 220 ROM, 230 operating section, 240 clock section, 250K, 250H, 250P, 250D A / D conversion section, 260 storage section, 270 external interface, 300, 400, 500, Reference numeral 600 denotes a support member, 310 denotes a key sensor, 410 denotes a hammer sensor, 510 denotes a pedal sensor, and 610 denotes a damper sensor.

Claims (4)

鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
を備えることを特徴とする演奏情報生成装置。
Detecting means provided on the keyboard instrument, for a moving member that moves in response to an operation of an operator, for continuously detecting a physical quantity related to the movement from a rest position to an end position,
Based on the physical quantity detected by the detecting means, physical quantity information generating means for generating physical quantity information,
Based on the physical quantity information generated by the physical quantity information generating means, determining means for determining whether the moving member is moving,
If the determination result by the determination means is affirmative, performance information indicating the physical quantity of the moving member at regular intervals is generated using the physical quantity detected by the detection means or the physical quantity information generated by the physical quantity information generation means. If the determination result is negative, the moving member moves using the physical quantity detected by the detecting means or the physical quantity information generated by the physical quantity information generating means and the period during which the moving member is not moving. Performance information generating means for generating performance information indicating that no
A performance information generating device comprising:
前記鍵盤楽器には複数の移動部材が備えられており、
各移動部材に個別に対応して、検出手段と、物理量情報生成手段と、判定手段と、演奏情報生成手段とからなる組を複数含む
ことを特徴とする請求項1に記載の演奏情報生成装置。
The keyboard instrument includes a plurality of moving members,
2. The performance information generating apparatus according to claim 1, wherein a plurality of sets each including a detecting unit, a physical quantity information generating unit, a determining unit, and a performance information generating unit are included corresponding to each moving member. .
鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
前記演奏情報生成手段により生成された演奏情報を、移動部材別に記憶する記憶手段と、
を具備することを特徴とする演奏情報記録装置。
Detecting means provided on the keyboard instrument, for a moving member that moves in response to an operation of an operator, for continuously detecting a physical quantity related to the movement from a rest position to an end position,
Based on the physical quantity detected by the detecting means, physical quantity information generating means for generating physical quantity information,
Based on the physical quantity information generated by the physical quantity information generating means, determining means for determining whether the moving member is moving,
If the determination result by the determination means is affirmative, performance information indicating the physical quantity of the moving member at regular intervals is generated using the physical quantity detected by the detection means or the physical quantity information generated by the physical quantity information generation means. If the determination result is negative, the moving member moves using the physical quantity detected by the detecting means or the physical quantity information generated by the physical quantity information generating means and the period during which the moving member is not moving. Performance information generating means for generating performance information indicating that no
Storage means for storing the performance information generated by the performance information generating means for each moving member;
A performance information recording device comprising:
操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
を具備することを特徴とする鍵盤楽器。
Detecting means for continuously detecting a physical quantity related to the movement of the moving member that moves in accordance with the operation of the operator from the rest position to the end position;
Based on the physical quantity detected by the detecting means, physical quantity information generating means for generating physical quantity information,
Based on the physical quantity information generated by the physical quantity information generating means, determining means for determining whether the moving member is moving,
If the determination result by the determination means is affirmative, performance information indicating the physical quantity of the moving member at regular intervals is generated using the physical quantity detected by the detection means or the physical quantity information generated by the physical quantity information generation means. If the determination result is negative, the moving member moves using the physical quantity detected by the detecting means or the physical quantity information generated by the physical quantity information generating means and the period during which the moving member is not moving. Performance information generating means for generating performance information indicating that no
A keyboard instrument comprising:
JP2002233608A 2002-08-09 2002-08-09 Performance information recording device and keyboard instrument Expired - Fee Related JP4144288B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002233608A JP4144288B2 (en) 2002-08-09 2002-08-09 Performance information recording device and keyboard instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002233608A JP4144288B2 (en) 2002-08-09 2002-08-09 Performance information recording device and keyboard instrument

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007102071A Division JP4218731B2 (en) 2007-04-09 2007-04-09 Performance information output device

Publications (2)

Publication Number Publication Date
JP2004077521A true JP2004077521A (en) 2004-03-11
JP4144288B2 JP4144288B2 (en) 2008-09-03

Family

ID=32018699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002233608A Expired - Fee Related JP4144288B2 (en) 2002-08-09 2002-08-09 Performance information recording device and keyboard instrument

Country Status (1)

Country Link
JP (1) JP4144288B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195265A (en) * 2005-01-14 2006-07-27 Kawai Musical Instr Mfg Co Ltd Electronic keyboard instrument keyboard device
WO2006117976A1 (en) * 2005-04-28 2006-11-09 Kabushiki Kaisha Kawai Gakki Seisakusho Pedal device of clavier
JP2008026405A (en) * 2006-07-18 2008-02-07 Yamaha Corp Electronic keyboard musical instrument
JP2013186215A (en) * 2012-03-07 2013-09-19 Casio Comput Co Ltd Learning level determination device, method for determining learning level, and program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195265A (en) * 2005-01-14 2006-07-27 Kawai Musical Instr Mfg Co Ltd Electronic keyboard instrument keyboard device
WO2006117976A1 (en) * 2005-04-28 2006-11-09 Kabushiki Kaisha Kawai Gakki Seisakusho Pedal device of clavier
JP2006330671A (en) * 2005-04-28 2006-12-07 Kawai Musical Instr Mfg Co Ltd Pedal device for keyboard instrument
US7858862B2 (en) 2005-04-28 2010-12-28 Kabushiki Kaisha Kawai Gakki Seisakusho Pedal device for keyboard instrument
JP2008026405A (en) * 2006-07-18 2008-02-07 Yamaha Corp Electronic keyboard musical instrument
JP2013186215A (en) * 2012-03-07 2013-09-19 Casio Comput Co Ltd Learning level determination device, method for determining learning level, and program

Also Published As

Publication number Publication date
JP4144288B2 (en) 2008-09-03

Similar Documents

Publication Publication Date Title
JP4107107B2 (en) Keyboard instrument
JP3887968B2 (en) Keyboard instrument and key speed judgment device
JPH02259696A (en) Touch controller for automatic playing piano
US8106287B2 (en) Tone control apparatus and method using virtual damper position
CN100593191C (en) Musical instrument, music data generator and music data source for musical instrument
JP6149354B2 (en) Electronic keyboard instrument, method and program
JPH03174590A (en) electronic musical instruments
US7186910B2 (en) Musical tone generating apparatus and musical tone generating computer program
JP3758277B2 (en) Automatic piano
JP2014112221A (en) Drive control device for percussion member in sound production mechanism
JP3577561B2 (en) Performance analysis apparatus and performance analysis method
JP4144288B2 (en) Performance information recording device and keyboard instrument
JP5315883B2 (en) Electronic musical instrument and musical sound generation program
JP4218731B2 (en) Performance information output device
JP4042753B2 (en) Electronic musical instruments
JP3624780B2 (en) Music control device
JP4305319B2 (en) Performance information generating device, performance information recording device, and keyboard instrument
JP2003186476A (en) Automatic playing device and sampler
JP3719144B2 (en) Electronic musical instruments
JP5657868B2 (en) Musical sound control method and musical sound control device
JP2007018004A (en) Electronic keyboard musical instrument
JP4186353B2 (en) Performance data editing apparatus, performance data editing method, and recording medium
JP4305320B2 (en) Performance information generating device, performance information recording device, and keyboard instrument
JP2025098488A (en) Sound control device
JPH06222754A (en) Electronic stringed instrument

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080207

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120627

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120627

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130627

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140627

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees