(57)【要約】【課題】詳細な演奏情報を、データ量を抑えつつ、簡易に生成することが可能な演奏情報生成装置、演奏情報記録装置および鍵盤楽器を提供する。【解決手段】鍵盤楽器１００は、演奏者の操作に応じて移動する移動部材として、鍵１３０、ハンマ１４２、ペダル１５０およびダンパ１６０を備えている。鍵盤楽器１００には、これらの各移動部材に個別に対応して、レスト位置からエンド位置に至るまでの各移動部材の位置を検出するキーセンサ３１０、ハンマセンサ４１０、ペダルセンサ５１０およびダンパセンサ６１０が設けられている。鍵盤楽器１００においては、各センサにより検出された移動部材の時系列的な位置を示す情報を、各駆動部材の動作状況に応じて生成する。【選択図】　　　図１
2004077521.tif 000002
【特許請求の範囲】
【請求項１】
鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
を備えることを特徴とする演奏情報生成装置。
【請求項２】
前記鍵盤楽器には複数の移動部材が備えられており、
各移動部材に個別に対応して、検出手段と、物理量情報生成手段と、判定手段と、演奏情報生成手段とからなる組を複数含む
ことを特徴とする請求項１に記載の演奏情報生成装置。
【請求項３】
鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
前記演奏情報生成手段により生成された演奏情報を、移動部材別に記憶する記憶手段と、
を具備することを特徴とする演奏情報記録装置。
【請求項４】
操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、
前記検出手段によって検出された物理量に基づき、物理量情報を生成する物理量情報生成手段と、
前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記検出手段により検出された物理量または物理量情報生成手段により生成された物理量情報と、移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段と、
を具備することを特徴とする鍵盤楽器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、鍵盤楽器における演奏情報を生成する演奏情報生成装置、演奏情報を記録する演奏情報記録装置、および、該演奏情報生成装置を備えた鍵盤楽器に関する。
【０００２】
【従来の技術】
従来から、演奏者によりなされた鍵盤楽器の演奏操作を表す演奏情報を生成する装置として、種々の構成が知られている。例えば、演奏情報を、楽音の音高やベロシティ（押鍵速度）などを規定することができるＭＩＤＩ（Ｍｕｓｉｃａｌ　Ｉｎｓｔｒｕｍｅｎｔｓ　Ｄｉｇｉｔａｌ　Ｉｎｔｅｒｆａｃｅ）データとして生成する装置が知られている。また、別形態として、鍵などの演奏操作子の位置を計測する波形計測器（例えばオシログラフ）を鍵盤楽器に接続し、該波形計測器によって計測された時系列的な演奏操作子の位置を示す波形をサンプリングすることにより、演奏情報を生成するシステムが考えられる。さらに、これらのものとは別形態として、演奏時に鍵盤楽器から発せられる楽音をマイクロフォンなどによりサンプリングし、サンプリングされた楽音から、当該楽音に対応する演奏操作を特定して演奏情報を生成する装置なども考えられる。
【０００３】
【発明が解決しようとする課題】
しかしながら、これらの装置おいては、以下のような問題が生じる。まず、演奏情報をＭＩＤＩデータとして生成する装置においては、ＭＩＤＩデータが、ハーフストロークなどの微妙な演奏操作を表現することができないため、ＭＩＤＩデータにより、楽音のニュアンスを十分に表現することができなかった。また、ＭＩＤＩデータにあっては、各操作子に関する情報が混在して格納される。このため、特定の操作子に着目した演奏操作の修正などを行う際に、煩雑な作業が必要とされた。さらに、自動演奏鍵盤楽器において、ＭＩＤＩデータなどのイベントデータに従って演奏する際には、当該イベントデータから、演奏操作子を駆動するためのデータへの複雑な変換処理が必要となる。
【０００４】
また、波形計測器を用いて演奏操作子の波形をサンプリングする装置にあっては、波形計測器は、単一チャネルの波形を計測するものが一般であり、複数の演奏操作子に関する波形を並列して計測するためには、演奏操作子の数（例えば、鍵であれば８８）だけの波形計測器が必要となってしまう。さらに、波形計測器は、通常、そのフォーマット仕様が楽器向きに構成されていない。これらにより、設備が大規模になり、また、費用がかさんでしまうという問題があった。しかも、サンプリング周波数を高くすれば、詳細な演奏操作を示す演奏情報を得ることができるものの、そのデータ量が多くなってしまうという問題があった。
【０００５】
そして、サンプリングされた楽音に、演奏操作を対応付けて演奏情報を生成する装置の場合、楽音に演奏操作を対応付ける作業が困難であり、特に、複数の演奏操作子が同時に操作されることにより出力した楽音と、当該演奏操作との対応付けが不正確なものとなる可能性が大きかった。
【０００６】
本発明は、上述した事情に鑑みてなされたものであり、その目的とするところは、詳細な演奏情報を、データ量を抑えつつ、簡易に生成することが可能な演奏情報生成装置、演奏情報記録装置および鍵盤楽器を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明にかかる演奏情報生成装置は、鍵盤楽器に備えられ、操作者の操作に応じて移動する移動部材について、その移動に関する物理量をレスト位置からエンド位置まで連続的に検出する検出手段と、前記検出手段によって検出された物理量に基づき、物理量情報を出力する物理量情報生成手段と、前記物理量情報生成手段により生成された物理量情報に基づいて、移動部材が移動しているか否かを判定する判定手段と、前記判定手段による判定結果が肯定的であれば、前記物理量検出手段により検出された物理量、または、物理量情報生成手段により生成された物理量情報を用いて、移動部材の一定時間毎の物理量を示す演奏情報を生成し、前記判定結果が否定的であれば、前記物理量検出手段により検出された物理量、または、物理量情報生成手段により生成された物理量情報と、少なくとも移動部材が移動していない期間とを用いて移動部材が移動していないことを示す演奏情報を生成する演奏情報生成手段とを備える構成を特徴としている。
【０００８】
このような構成によれば、演奏情報は、演奏操作に応じた移動部材の動作状況が詳細に反映されたものとなり、演奏情報に、微妙なニュアンスが含まれることとなる。また、移動部材が移動していなければ、移動部材の位置が変化していない期間を用いて演奏情報が生成される。これにより、演奏情報は、一定時間毎の移動部材の位置を示す情報から構成される演奏情報と比較して、そのデータ量が削減されることとなる。
【０００９】
【発明の実施の形態】
以下、本発明における実施形態について図面を参照して説明する。
【００１０】
＜鍵盤楽器の機械的構成＞
図１は、本実施形態にかかる鍵盤楽器の機械的構成を示す図である。この図に示されるように、鍵盤楽器１００には、棚板１１０が設けられている。棚板１１０の上面には、紙面垂直方向に延在するように筬中１２０が配置されている。筬中１２０の上面には、複数のバランスピン１２５が立設しており、８８個の鍵１３０の各々が、各バランスピン１２５に貫通された状態で、筬中１２０の上面に並設されている。これらの鍵１３０には、音高を示す「１」から「８８」までのノート番号が割り当てられている。また、各鍵１３０は、バランスピン１２５に貫通される位置を、おおよその支点として揺動可能に保持されており、演奏者は、鍵１３０の前方を押下することにより演奏（押鍵）する。
【００１１】
鍵１３０の後方近傍には、鍵１３０の揺動に応じて駆動するアクション機構１４０が設けられている。アクション機構１４０は、「１」から「８８」までのノート番号が割り当てられた８８個のハンマ１４２を含んでおり、押鍵と連動してハンマ１４２が弦１７０を打撃する。ハンマ１４２によって弦１７０が打撃されると、弦振動が生じ、その振動は、駒（不図示）を介して響板（不図示）に伝搬し、楽音が発生する。
【００１２】
ところで、演奏者（操作者）は、ひとつの鍵１３０に関する押鍵であっても、微妙なニュアンスを表現すべく、多種多様な鍵操作を行う。さらに詳述すると、演奏者は、押鍵ごとに押鍵速度を異ならせるのみならず、１回の押鍵についても、初め遅くて次第に速くなる押鍵や、その逆の押鍵などの様々な鍵操作を行う。また、この他にも、鍵１３０がエンド位置（鍵１３０を押し切った位置）に到達する前に、離鍵を開始するハーフストロークなどの奏法も用いられる。アクション機構１４０は、これらの微妙な鍵操作の違いに応じて打弦し、結果として、微妙な押鍵操作の違いに応じた楽音が発せられる。
【００１３】
しかしながら、演奏情報をＭＩＤＩデータとして生成する場合、例えば押鍵操作については、鍵が、ある２点間の距離の移動に要した時間を検出し、２点間の距離と検出された時間とから求めた速度を、当該押鍵操作にかかるベロシティとする。このため、ＭＩＤＩデータにおいては、一回の押鍵操作につき、単一のベロシティが規定されるのみであり、演奏操作の一部しか反映されなかった。それゆえ、演奏者による微妙なニュアンスを、十分に表現することができなかった。
【００１４】
そこで、鍵盤楽器１００は、微妙なニュアンスが反映された演奏情報を生成すべく、鍵操作を検出するキーセンサとして、鍵１３０のレスト位置（離鍵されている位置）からエンド位置までの連続的な位置を検出するセンサを備えている。より具体的には、鍵１３０の上方には、キーセンサ３１０を支持するための支持部材３００が設けられている。図２は、キーセンサ３１０および鍵１３０の斜視図である。この図に示されるように、キーセンサ３１０は、８８個の鍵１３０の各々に対応するように、各鍵１３０の上面に配置された被検出部材１３５と対向する位置に設けられている。
【００１５】
図３は、キーセンサ３１０の構成を示す図である。この図に示されるように、キーセンサ３１０は、発光素子３１２と受光素子３１４とを含んでいる。このうち、発光素子３１２は、被検出部材１３５に向けて光を照射する。一方、受光素子３１４は、発光素子３１２から被検出部材１３５に照射された光の反射光を受光する。キーセンサ３１０は、受光素子３１４の受光量に応じて、被検出部材１３５までの距離を、０．００１ｍｍ単位で検出する。
【００１６】
鍵１３０が押下されると、図３および図４における二点鎖線により示すように、被検出部材１３５が下方に移動する。キーセンサ３１０は、キーセンサ３１０から被検出部材１３５までの距離を検出することにより、鍵１３０の位置を連続的に検出する。これにより、鍵１３０の位置を、レスト位置からエンド位置に至るまで連続的に検出することができる。このようなキーセンサ３１０を採用することにより、演奏者による微妙な鍵操作を正確に検出し、その検出値から、微妙なニュアンスが反映された演奏情報を生成することが可能となる。
【００１７】
図５は、ハンマ１４２およびその周辺の構成を示す図である。この図に示されるように、アクション機構１４０に含まれるハンマフレンジ１４６には、ハンマシャンク１４３がピン１４４を支点として回動可能に取り付けられている。ハンマシャンク１４３は、ハンマウッド１４１を介してハンマ１４２を保持しており、押鍵されると、図中二点鎖線で示される位置に反時計回りに回動し、ハンマ１４２が打弦する。
【００１８】
ハンマシャンク１４３の上面には、被検出部材１４５が固定されている。また、ハンマシャンク１４３の上方には、８８個のハンマ１４２に対応した８８個のハンマセンサ４１０を支持するための支持部材４００が設けられている。ハンマセンサ４１０は、上述したキーセンサ３１０と同様な構成をしており、対応するハンマシャンク１４３に設置された被検出部材１４５の位置を、０．００１ｍｍ単位で検出する。この際、ハンマセンサ４１０は、ハンマ１４２の位置をレスト位置（離鍵時の位置）からエンド位置（打弦位置）まで連続的に検出する。これにより、ハンマ１４２の微妙な動作の変化を取り逃がすことなく、ハンマ１４２の動作が検出されることとなる。
【００１９】
説明を再び図１に戻す。鍵盤楽器１００の下方には、３個のペダル１５０が揺動可能に設けられている。より詳細には、ダンパペダル、ソフトペダルおよびソステヌートペダルが設けられており、この順で、ペダル番号として「１」「２」および「３」が割り当てられている。各ペダル１５０の上方には、３個のペダルに対応した３個のペダルセンサ５１０を支持するための支持部材５００が設けられている。これらのペダルセンサ５１０は、上述したキーセンサ３１０と同様に、対応するペダル１５０の位置を、０．００１ｍｍ単位で検出する。この際、ペダルセンサ５１０は、レスト位置（ペダルが踏まれていない状態）からエンド位置（ペダルが踏み込まれた位置）まで連続的にペダル位置を検出する。
【００２０】
また、ダンパ１６０は、複数の弦１７０の各々に対応して８８個設けられており、各々のダンパ１６０は、音高を示す「１」から「８８」までのノート番号が割り当てられている。各ダンパ１６０は、離鍵時においては、弦１７０に接触するように位置する一方、押鍵時においては、押鍵された鍵１３０に対応するダンパ１６０のみが弦１７０から離れる。ただし、ダンパペダルが踏み込まれた場合には、全てのダンパ１６０が、ダンパペダルの押下量に応じて上方に移動し、弦１７０から離れる。これにより、倍音の効果によって、楽音の響きが豊かになる。逆に、ダンパペダルの踏み込みが解除されると、ダンパ１６０が弦１７０に接し、弦振動が減衰され、この結果、音が抑制される。
【００２１】
ダンパ１６０の上方には、各ダンパ１６０に対応した８８個のダンパセンサ６１０を支持する支持部材６００が設けられている。図６はダンパ１６０およびその周辺構成を示す図である。この図に示されるように、ダンパペダルが押下されると、その押下量に応じて、ダンパ１６０は、二点鎖線で示されるように上方に移動する。ダンパセンサ６１０は、上述したキーセンサ３１０と同様な構成をしており、ダンパ１６０の上面に設けられた被検出部材１６５の位置を検出し、ダンパ１６０の位置を、０．００１ｍｍ単位で検出する。これにより、音の減衰に影響を与えるダンパ１６０が、弦１７０に接触しているか否かを詳細に表現する演奏情報を生成することができる。
【００２２】
＜鍵盤楽器の電気的構成＞
図７は、鍵盤楽器１００の電気的構成を示す図である。この図において、ＣＰＵ２００は、バスＢを介して構成各部を制御する。ＲＡＭ２１０は、ＣＰＵ２００のワークエリアとして使用され、後述する時間データなどを一時的に記憶する。ＲＯＭ２２０は、ＣＰＵ２００が演奏情報生成・記録処理を実行するためのプログラムなどの各種プログラムを記録する。ここで、演奏情報生成・記録処理とは、鍵盤楽器１００における演奏者の演奏中に、４種類の移動部材（鍵１３０、ハンマ１４２、ペダル１５０およびダンパ１６０）の位置を検出し、各移動部材の動作を示す演奏情報の生成および記録を行う処理である。
【００２３】
操作部２３０は、ユーザが各種操作を入力するスイッチなどから構成され、演奏情報生成・記録処理の開始を指示する開始信号や、同処理の終了を指示する終了信号などを、バスＢを介してＣＰＵ２００に供給する。
また、時計部２４０は、現在時刻を表す時刻情報をＣＰＵ２００に供給する。ＣＰＵ２００は、時刻情報を受け取ると、その情報を用いて、移動部材の移動期間を示す時間データや、移動部材の速度を示す速度データなどを生成する。
【００２４】
８８個のキーセンサ３１０の各々は、検出した各鍵１３０の位置を示すアナログ位置信号を、Ａ／Ｄ変換部２５０Ｋに入力する。Ａ／Ｄ変換部２５０Ｋは、各キーセンサ３１０からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてＣＰＵ２００に供給する。
【００２５】
８８個のハンマセンサ４１０の各々は、検出した各ハンマ１４２の位置を示すアナログ位置信号を、Ａ／Ｄ変換部２５０Ｈに入力する。Ａ／Ｄ変換部２５０Ｈは、各ハンマセンサ４１０からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてＣＰＵ２００に供給する。
【００２６】
３個のペダルセンサ５１０の各々は、検出した各ペダル１５０の位置を示すアナログ位置信号を、Ａ／Ｄ変換部２５０Ｐに入力する。Ａ／Ｄ変換部２５０Ｐは、各ペダルセンサ５１０からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてＣＰＵ２００に供給する。
【００２７】
８８個のダンパセンサ６１０の各々は、検出した各ダンパ１６０の位置を示すアナログ位置信号を、Ａ／Ｄ変換部２５０Ｈに入力する。Ａ／Ｄ変換部２５０Ｈは、各ダンパセンサ６１０からアナログ位置信号を受け取ると、その信号をデジタル変換し、デジタル位置信号としてＣＰＵ２００に供給する。
【００２８】
ＣＰＵ２００は、各Ａ／Ｄ変換部２５０Ｋ、２５０Ｈ、２５０Ｐ、２５０Ｄからのデジタル位置信号、および、時計部２４０からの時刻情報を入力すると、それらの情報を用いて、各移動部材の移動距離や、当該距離だけ移動するために要した時間、移動速度などを求め、各移動部材の位置が時系列的に規定された移動部材別ファイルを、演奏情報として生成する。この際、ＣＰＵ２００は、移動部材別ファイルを、鍵１３０、ハンマ１４２およびダンパ１６０の各々についてはノート番号別に、また、ペダル１５０については、ペダル番号別に生成する。
【００２９】
記憶部２６０は、例えば、ハードディスクなどの書き換え可能な記憶手段であり、演奏情報フォルダなどを記憶する。ここで、演奏情報フォルダとは、楽曲別に記憶部２６０に記録され、当該楽曲の演奏情報として、全ての移動部材に対応する移動部材別ファイルが格納されるものである。
【００３０】
図８は、演奏情報フォルダに格納されるひとつの移動部材別ファイルの構成を示す図である。この図に示されるように、移動部材別ファイルｆは、大別して、属性データ群と位置・時間データ群とを含んでいる。属性データ群には、当該移動部材ファイルｆがいずれの移動部材に対応する移動部材ファイルｆであるかを示す情報などが格納される。一方、位置・時間データ群には、移動部材の位置が時系列的に規定された情報、すなわち、移動部材の動作を示す情報が格納される。以下、属性データ群および位置・時間データ群に含まれるデータ要素の詳細について説明する。
【００３１】
属性データ群は、データ要素として、ノートＩＤ／ペダルＩＤと、移動部材ＩＤと、下位周期Ｌと、上位周期Ｈとを含む。このうち、移動部材ＩＤは、移動部材の種類を特定するための情報であり、鍵１３０、ハンマ１４２、ペダル１５０およびダンパ１６０のいずれに対応する移動部材ファイルｆであるかを示す情報である。また、ノートＩＤ／ペダルＩＤは、移動部材ＩＤにより、移動部材の種類が鍵１３０、ハンマ１４２、ダンパ１６０のいずれかに特定された場合、いずれのノート番号に対応する移動部材ファイルｆであるかを示し、移動部材の種類がペダル１５０であると特定された場合、いずれのペダルに対応する移動部材別ファイルｆであるかを示す。
【００３２】
下位周期Ｌおよび上位周期Ｈは、これら２つにより、位置・時間データ群を生成する際に用いられるサンプリング周期を表す。下位周期Ｌおよび上位周期Ｈの各々は、演奏者が設定可能であり、操作部２３０を介して、移動部材ごとに異なるサンプリング周期を設定することができる。
【００３３】
図９は、属性データ群に含まれるデータ要素のフォーマットを示す図である。この図に示されるように、各データ要素は、１６ビットデータとして規定されている。まず、移動部材ＩＤは、上位１２ビットに、その識別子となる「１１０００００１　００００」が格納され、「ｗｗｗｗ」で示される下位４ビットに、鍵１３０を示す「０００１」、ハンマ１４２を示す「００１０」、ダンパ１６０を示す「００１１」、および、ペダル１５０を示す「００００」のいずれかが格納される。
【００３４】
ノートＩＤ／ペダルＩＤは、上位８ビットに、その識別子となる「１１００　００００」が格納され、「ｋｋｋｋ　ｋｋｋｋ」で示される下位８ビットに、ノート番号あるいはペダルを特定するための情報が格納される。より具体的には、下位８ビットには、ノート番号を示す「００００　０００１（１０進表記における１）」から「０１０１　１０００（１０進表記における８８）」までのいずれか、もしくは、ラウドペダルを示す「１０００　００００」、ソステヌートペダルを示す「１０００　００１０」、および、シフトペダルを示す「１０００　００１１」のいずれかが格納される。
【００３５】
下位周期Ｌには、上位８ビットに、その識別子となる「１１００　００１０」が格納され、「ｔＬｔＬｔＬｔＬ　ｔＬｔＬｔＬｔＬ」で示される下位８ビットに、サンプリング周期の下位８ビットを示す情報が格納される。一方、上位周期Ｈには、上位８ビットに、その識別子となる「１１００　００１１」が格納され、「ｔＨｔＨｔＨｔＨ　ｔＨｔＨｔＨｔＨ」で示される下位８ビットに、サンプリング周期の上位８ビットを示す情報が格納される。これにより、サンプリング周期は、１６ビットの「ｔＨｔＨｔＨｔＨ　ｔＨｔＨｔＨｔＨ　ｔＬｔＬｔＬｔＬ　ｔＬｔＬｔＬｔＬ」によって規定される。ここで、サンプリング周期の１ビットは、０．００１ｍＳを示しており、サンプリング周期によって、０．０００ｍＳから６５．５３５ｍＳまでの周期を、０．００１ｍＳ単位で表現することができる。
【００３６】
なお、サンプリング周期は、下位周期Ｌのみ、あるいは、上位周期Ｈのみで規定する構成としても良い。さらに詳述すると、下位周期Ｌのみを用いた場合、サンプリング周期は、８ビットの「ｔＬｔＬｔＬｔＬ　ｔＬｔＬｔＬｔＬ」によって規定され、０．００１ｍＳから０．２５５ｍＳまでの周期を、０．００１ｍＳ単位で表現することができる。一方、上位周期Ｈのみを用いた場合、サンプリング周期は、１６ビットの「ｔＨｔＨｔＨｔＨ　ｔＨｔＨｔＨｔＨ　　００００　００００」によって規定され、０．２５６ｍＳから６５．２８０ｍＳまでの周期を、０．２５６ｍＳ単位で表現することができる。
【００３７】
再び図８において、属性データ群に含まれる移動部材ＩＤは、その下位４ビットにより「０００１」を示し、ノートＩＤ／ペダルＩＤは、その下位８ビットにより１０進表記の「６０」を示している。また、サンプリング周期は、下位周期Ｌおよび上位周期Ｈから、「００００　００１１　１１１０　１０００」に規定され、１０進表記による「１０００」を示している。これらにより、この移動部材別ファイルｆが、ノート番号が「６０」の鍵１３０に関する移動部材ファイルｆであることが特定され、また、位置・時間データ群で用いられるサンプリング周期は、「１ｍＳ」であることが特定される。
【００３８】
このような属性データ群に続き、位置・時間データ群が格納される。位置・時間データ群は、データ要素として、位置データ、速度データおよび時間データを含む。このうち、位置データは、移動部材の位置を示すデータである。また、速度データは、ある期間内における移動部材の速度を示すデータである。時間データは、移動部材が、等速運動あるいは停止した期間を示すデータである。
【００３９】
図１０は、位置・時間データの各データ要素のフォーマットを示す図である。この図に示されるように、位置データは、上位２ビットに、その識別子として「００」が格納され、「ｘｘ　ｘｘｘｘ　ｘｘｘｘ　ｘｘｘｘ」で示される下位１４ビットに、移動部材の位置を表す情報が格納される。位置データの１ビットは、０．００１ｍｍを示し、位置データによって、−４．０９６ｍｍから１２．２８７ｍｍまでの１６３４段階の位置を表現することができる。
【００４０】
速度データは、上位２ビットに、その識別子として「０１」が格納され、「ｖｖ　ｖｖｖｖ　ｖｖｖｖ　ｖｖｖｖ」で示される下位１４ビットに、移動部材の速度を示す情報が格納される。速度データの１ビットは、１ｍｍ／Ｓを示す。
【００４１】
時間データは、上位２ビットに、その識別子として「１０」が格納され、「ｔｔ　ｔｔｔｔ　ｔｔｔｔ　ｔｔｔｔ」で示される下位１４ビットには、時間を示す情報が格納される。ここで、時間データの１ビットは、０．００１ｍＳを示し、時間データによって、０．０００ｍＳから１６．３８３ｍＳまでの時間を表現することができる。
【００４２】
これらの位置データ、時間データおよび速度データの各々は、定周期配列、等速配列および停止配列のいずれかの配列に従って配列されることにより、移動部材の位置を時系列的に規定する情報となる。ＣＰＵ２００は、３種類の移動部材の動作状況に応じて、いずれかの配列を生成し、位置・時間データ群に格納する。
【００４３】
図１１（ａ）、（ｂ）および（ｃ）は、移動部材の３種類の動作状況を示す図である。これらの図において、縦軸は、移動部材の位置を示している。また、横軸は、時間軸であり、横軸の１目盛は、１サンプリング周期を示している。まず、図１１（ａ）に示されるように、移動部材が、等速でない速度、すなわち、加速度が０でない速度によって移動している場合、ＣＰＵ２００は、定周期配列を生成し、位置・時間データ群に格納する。より具体的には、定周期配列は、図８に示すように、位置データが連続して配列されたものである。この配列において、各位置データは、順番に、一定期間（サンプリング周期）経過するごとの移動部材の位置を示している。
【００４４】
次に、図１１（ｂ）に示されるように、移動部材が、等速運動をしている場合、ＣＰＵ２００は、等速配列と生成し、位置・時間データ群に格納する。より具体的には、等速配列は、図８に示すように、位置データ、速度データおよび時間データが、この順で並んだものである。この配列においては、移動部材が、位置データによって示される位置から、速度データによって示される速度にて、時間データによって示される期間だけ移動したことを示す。このようなデータ表記方法によれば、移動部材が、長時間等速運動している場合であっても、その状況を３個の要素データのみによって表現することができる。例えば、図１１（ａ）と（ｂ）とを比較してみる。定周期配列であれば、期間ｔ（サンプリング周期の２０倍）における移動部材の動作を表現しようとすれば、２０個の位置データを配列する必要がある。これに対し、等速配列によれば、同一期間の動作を表現するにあたり、わずか３個のデータ要素の配列によって表現することができる。これにより、サンプリング周期毎に、移動部材の位置を配列する形式（定周期配列）と比較して、そのデータ量が大幅に削減されることとなる。
【００４５】
そして、図１１（ｃ）に示されるように、移動部材が停止している場合、ＣＰＵ２００は、停止配列を生成し、位置・時間データ群に格納する。より具体的には、等速配列は、図８に示すように、位置データ、時間データおよび位置データが、この順で並んだものである。この配列においては、先頭の位置データと、後尾の位置データとが同一の位置を示し、移動部材が、その位置に、時間データによって示される期間だけ停止することを示す。このようなデータ表記方法によれば、移動部材が、長時間停止していたとしても、３つの要素データのみによって、その状況を表現することができる。このため、サンプリング周期毎に、移動部材の位置を配列する形式（定周期配列）と比較して、格段にそのデータ量が低減されることとなる。
【００４６】
＜鍵盤楽器の動作＞
次に、ＣＰＵ２００が実行する演奏情報生成・記録処理について、図１２を参照して説明する。この演奏情報生成・記録処理は、演奏者による鍵盤楽器１００の演奏中に、各移動部材の位置を検出し、検出結果から移動部材ファイルｆを生成し、記憶部２６０に記録する処理である。ＣＰＵ２００は、操作部２３０から入力される開始信号をトリガとして演奏情報生成・記録処理を開始する。また、この処理は、タイマ割り込みされ、ＣＰＵ２００は、処理の開始時にタイマをリセットする。
【００４７】
まず、ＣＰＵ２００は、操作部２３０から開始信号が入力されると、初期化処理を実行する（ステップＳ１）。さらに詳述すると、ＣＰＵ２００は、記憶部２６０に演奏情報フォルダを記録し、当該演奏情報フォルダに、全ての移動部材に関する移動部材別ファイルｆを格納する。また、開始信号には、下位周期Ｌおよび上位周期Ｈが付加されており、ＣＰＵ２００は、それらを、移動部材別ファイルｆの属性データ群に格納する。なお、この時点においては、各移動部材別ファイルｆには、属性データ群しか記録されておらず、位置・時間データ群に関する情報は、何も記録されていない。
【００４８】
次に、ＣＰＵ２００は、鍵データ生成・記録処理を実行する（ステップＳ２）。この鍵データ生成・記録処理は、８８個の鍵１３０の各々について、鍵１３０の位置が時系列的に規定された位置・時間データ群を生成し、記憶部２６０に記憶される演奏情報フォルダに含まれる移動部材別ファイルｆに、生成した位置・時間データ群を格納する処理である。この鍵データ生成・記録処理の詳細については、後述することとする。
【００４９】
次いで、ＣＰＵ２００は、ハンマデータ生成・記録処理を実行する（ステップＳ３）。この処理は、８８個のハンマ１４２の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルｆに、該位置・時間データ群を格納する処理である。
【００５０】
次に、ＣＰＵ２００は、ダンパデータ生成・記録処理を実行する（ステップＳ４）。この処理は、８８個のダンパ１６０の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルｆに、該位置・時間データ群を格納する処理である。
【００５１】
次に、ＣＰＵ２００は、ペダルデータ生成・記録処理を実行する（ステップＳ５）。この処理は、３個のペダル１５０の各々について、位置・時間データ群を生成し、演奏情報フォルダに含まれる移動部材別ファイルｆに、該位置・時間データ群を格納する処理である。
【００５２】
次に、ＣＰＵ２００は、操作部２３０から終了信号を受信したか否かを判定する（ステップＳ６）。この判定結果が否定的であれば、ＣＰＵ２００は、タイマにおいて一定時間が経過したかを判定する（ステップＳ７）。この判定結果が否定的であれば、ＣＰＵ２００は、一定時間経過するまで待機すべく、ステップＳ７の判定を続ける。一方、ステップＳ７の判定結果が肯定的となれば、タイマをリセットした後、処理手順をステップＳ２に戻す。
一方、ステップＳ６における判定結果が肯定的であれば、すなわち、終了信号を受信したらならば、ＣＰＵ２００は、演奏情報生成・記録処理を終了する。
【００５３】
次に、上述した鍵データ生成・記録処理（図１２のステップＳ２）を、図１３を参照して説明する。この処理は、８８個の鍵１３０に関して個別に位置・時間データ群を生成し、記憶部２６０に記録するための処理である。
【００５４】
はじめに、ＣＰＵ２００は、カウント値を「１」に設定する（ステップＳ２１）。このカウント値は、鍵１３０のノート番号を示すものであり、８８個の鍵１３０のうち、いずれの鍵１３０に関する処理を実行しているのかを示すポインタとして機能する。
【００５５】
次に、ＣＰＵ２００は、現在のカウント値より特定される鍵１３０の位置を示すアナログ位置信号を、デジタル変換する（ステップＳ２２）。この際、ＣＰＵ２００は、該鍵１３０に対応するキーセンサ３１０から入力されるアナログ位置信号を、該鍵１３０に対応する移動部材別ファイルｆに格納されるサンプリング周期（下位周期Ｌおよび上位周期Ｈ）に従って、Ａ／Ｄ変換部２５０Ｋによりデジタル位置信号に変換する。
【００５６】
次に、ＣＰＵ２００は、変換したデジタル位置信号について正規化処理を実行する（ステップＳ２３）。正規化処理とは、鍵盤楽器の個体差を吸収するための処理である。より詳細には、押鍵速度や打弦速度などは、各鍵盤楽器の機械的な誤差などにより、個体差が生じる。このため、標準となる鍵盤楽器を想定し、デジタル位置信号を、その標準となる鍵盤楽器に対応するものに変換（正規化）する。
【００５７】
次に、ＣＰＵ２００は、正規化されたデジタル位置信号から、着目する鍵１３０の動作状況に応じて、位置・時間データ群を生成し、移動部材別ファイルｆに格納する生成・記憶処理を実行する（ステップＳ２４）。より具体的には、ＣＰＵ２００は、正規化されたデジタル位置信号から、移動部材の速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、該配列を、移動部材別ファイルｆに格納する。なお、この生成・記録処理の詳細な説明については後述することとする。
【００５８】
次に、ＣＰＵ２００は、カウント値を「１」だけインクリメントする（ステップＳ２５）。次いで、ＣＰＵ２００は、インクリメントされたカウント値が「８８」に達したか否か、すなわち、全ての鍵１３０について、ステップＳ２２からステップＳ２５までの処理を実行したか否かを判定する（ステップＳ２６）。この判定結果が否定的であれば、ＣＰＵ２００は、カウント値が「８８」に達するまで、ステップＳ２２からステップＳ２５までの処理を繰り返す。
【００５９】
一方、ステップＳ２６の判定結果が肯定的であれば、ＣＰＵ２００は、処理手順を、演奏情報生成・記録処理（図１２）のステップＳ３に移行する。このように、鍵データ生成・記録処理においては、各ノート番号の鍵１３０について個別に、位置・時間データ群の生成および記録が行われる。このため、生成された演奏情報フォルダによれば、演奏者などのユーザは、各移動部材ついて個別に、移動部材別ファイルｆの削除や差し替えなどを容易に行うことができる。これにより、各移動部材についての演奏情報が混在するＭＩＤＩデータなどの演奏情報と比較して、移動部材別の演奏情報の修正が容易なものとなる。
なお、鍵１３０以外の移動部材（ハンマ１４２、ダンパ１６０およびペダル１５０）についてのハンマデータ生成・記録処理（図１２中ステップＳ３）、ダンパデータ生成・記録処理（同ステップＳ４）およびペダルデータ生成・記録処理（同ステップＳ５）の各々においても、鍵データ生成・記録処理と同様に、ノート番号あるいはペダル番号順に、位置・時間データ群を生成し、位置・時間データ群を個別に移動部材別ファイルｆに格納する。
【００６０】
次に、鍵データ生成・記録処理に含まれる生成・記録処理（図１３のステップＳ２４）の動作を、図１４を参照して説明する。この生成・記録処理は、ひとつの鍵１３０に着目して実行される処理であり、鍵１３０の移動速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、移動部材別ファイルｆに格納する処理である。この処理の開始時に、ＣＰＵ２００は、あらかじめ、経過時間が「０」を示す時間データをＲＡＭ２１０に記録する。
【００６１】
はじめに、ＣＰＵ２００は、鍵１３０の速度が変化しているか否かを判定する（ステップＳ２４１）。ここで、速度が変化している状況とは、加速度が「０」以外である状態を意味する。このため、速度が変化していない状況には、鍵１３０が等速運動をしている状況の他、停止している状況も含まれる。このステップＳ２４１における判定処理を詳述すると、まず、ＣＰＵ２００は、直前のサンプリング周期中における鍵１３０の変位から、該サンプリング周期中における平均速度を計測する。この際、ＣＰＵ２００は、時計部２４０から供給された時刻情報、および、Ａ／Ｄ変換部２５０Ｋから供給されたデジタル位置信号から、鍵１３０の速度を求める。次に、ＣＰＵ２００は、計測された速度が、前回に計測された速度と異なるか否かによって、移動部材の速度が変化しているか否かを判定する。なお、前回の速度が存在しない場合、すなわち、速度の計測が第１回目の場合には、ステップＳ２４１の判定結果は肯定的になるものとする。
【００６２】
さて、ステップＳ２４１の判定結果が否定的であれば、ＣＰＵ２００は、ＲＡＭ２１０に記憶される時間データを、時計部２４０から供給される時刻情報に従って、インクリメントする（ステップＳ２４２）。ここで、ＲＡＭ２１０に記憶される時間データについて説明する。時間データは、ステップＳ２４１の判定結果が肯定的であれば、すなわち、鍵１３０の速度が変化すれば、ＣＰＵ２００によって、そのカウント値が初期化される。このため、時間データにより示される時間は、鍵１３０が連続して等速運動している期間、あるいは、鍵１３０が連続して停止している期間のうちいずれかを示すこととなる。
【００６３】
次に、ＣＰＵ２００は、鍵１３０の速度が「０」であるか、すなわち、鍵１３０が停止しているか否かを判定する（ステップＳ２４３）。この判定結果が肯定的であれば、すなわち、鍵１３０が停止していれば、ＣＰＵ２００は、停止配列を生成し、移動部材別ファイルｆへの停止配列の格納、または、移動部材別ファイルｆに格納される停止配列の更新を行う（ステップＳ２４４）。より具体的には、図１５に示されるように、移動部材別ファイルｆに含まれる位置・時間データ群の最後尾に停止配列が書き込まれていなければ、すなわち、最後尾が定周期配列あるいは等速配列のいずれかであれば、ＣＰＵ２００は、新たな停止配列を生成すべく、位置データおよび時間データを書き込む。なお、この図においては、ステップＳ２４４の実行前の位置・時間データ群の最後尾は、定周期配列である例が示されている。
【００６４】
一方、図１６に示されるように、位置・時間データ群の最後尾に、既に停止配列が書き込まれていれば、ＣＰＵ２００は、当該停止配列に含まれる時間データを更新する。この際、ＣＰＵ２００は、当該停止配列に含まれる時間データに、ステップＳ２４２においてインクリメントしたＲＡＭ２１０に記録される時間データを上書きする。これにより、移動部材が長時間停止した場合においても、位置データ、時間データおよび位置データの３つのデータ要素のみによって、その状況を表現することができるため、サンプリング周期ごとに位置データを記録するデータ構造と比較して、データ量が大きくなる心配がない。従って、記憶部２６０の記憶容量を小さなものとすることができる。言い換えれば、一定の記憶容量をもつ記憶部２６０に、より多くの演奏情報フォルダを記録することが可能となる。
【００６５】
一方、ステップＳ２４３の判定結果が否定的であれば、すなわち、鍵１３０が等速運動しているならば、ＣＰＵ２００は、等速配列を生成し、移動部材別ファイルｆへの等速配列の格納、または、移動部材別ファイルｆに格納される等速配列の更新を行う（ステップＳ２４５）。さらに詳述すると、ＣＰＵ２００は、図１７に示されるように、位置・時間データ群の最後尾に等速配列が書き込まれていなければ、すなわち、最後尾が定周期配列あるいは停止配列のいずれかであれば、等速配列を生成すべく、速度データおよび時間データを書き込む。なお、この図においては、ステップＳ２４５の実行前の位置・時間データ群の最後尾は、定周期配列である例が示されている。
【００６６】
一方、図１８に示されるように、位置・時間データ群の最後尾に、既に、等速配列が格納されていれば、ＣＰＵ２００は、当該等速配列に含まれる時間データを更新する。この際、ＣＰＵ２００は、当該等速配列に含まれる時間データに、ステップＳ２４２においてインクリメントしたＲＡＭ２１０に記憶される時間データを上書きする。これにより、移動部材が長時間等速運動したとしても、位置データ、速度データおよび時間データの３つのデータ要素のみで動作状況を表現することができるため、結果として、演奏情報フォルダのデータ量が低減されることとなる。
【００６７】
一方、ステップＳ２４１の判定結果が肯定的であれば、すなわち、鍵１３０が等速変化しながら移動していれば、ＣＰＵ２００は、ＲＡＭ２１０に記憶される時間データをリセットした後、定周期配列を生成し、記憶部２６０に記録する。具体的には、ＣＰＵ２００は、移動部材別ファイルｆに含まれる位置・時間データ群の最後尾に、現在の鍵１３０の位置を示す位置データを追記する。これにより、レスト位置からエンド位置まで連続した鍵１３０の位置を示す演奏情報が記録されることとなる。
【００６８】
このように、生成・記録処理においては、移動部材の移動速度に応じて、定周期配列、等速配列および停止配列のいずれかを生成し、記録する。これにより、データ量を抑えつつ、微妙なニュアンスを表現することができる演奏情報を生成することが可能となる。
なお、ハンマデータ生成・記録処理（図１２中ステップＳ２）、ダンパデータ生成・記録処理（同ステップＳ３）およびペダルデータ生成・記録処理（同ステップＳ４）の各々にも生成・記録処理が含まれるが、それらの生成・記録処理は鍵１３０に関する生成・記録処理（図１４）と同様の処理であるため、説明を省略することとする。
【００６９】
以上説明したように、本実施形態における鍵盤楽器１００によれば、最短０．００１ｍｍの精度で移動部材の位置を検出し、最短０．００１ｍＳのサンプリング周期によって位置・時間データ群を生成することができる。これにより、各移動部材の動作状況を、詳細かつ忠実に捉えることができ、ＭＩＤＩデータなどと比較して、奏者の個性や奏法などが反映された演奏情報を生成することができる。このような利点を有するため、鍵盤楽器１００の使用方法として、以下のような例が考えられる。
【００７０】
例えば、著名な演奏者による演奏操作を、鍵盤楽器１００において記録しても良い。これにより、自動演奏鍵盤楽器などにおいて、該演奏者による演奏操作を再生したり、また、該演奏操作を文化遺産として後世に残したりすることが可能となる。
【００７１】
くわえて、正確な演奏情報を生成することができるため、鍵盤楽器１００を演奏指導に用いることにより、指導効率を向上させることが可能である。より詳しくは、鍵盤楽器１００によって生徒の演奏操作を記録すれば、指導者は、記録された演奏情報を用いて、生徒の表現法や、弱点、くせなどの演奏技術を評価することができる。一方、指導者の演奏操作を記録すれば、生徒は、記録された演奏情報を、演奏練習の見本にすることができる。また、鍵盤楽器１００によれば、演奏情報が移動部材別に記録される。このため、指導者あるいは生徒は、特定の移動部材（鍵１３０やペダル１５０など）に着目して、演奏の評価あるいは演奏の参考にすることができる。
【００７２】
しかも、演奏情報生成・記録処理においては、演奏情報として、時系列的に規定された移動部材の位置（位置・時間データ群）そのものを生成する。このため、仕様が複雑なイベント形式のＭＩＤＩデータと比較して、演奏操作をイベントデータへ変換する処理が不要となり、また正規化処理も単純なものとなる。これにより、演奏情報の生成に関する処理および構成が、簡易なものとなる。また、鍵盤楽器１００により記録された演奏情報を、自動演奏楽器などにおいて再生する場合においても、単に、位置・時間データ群に従って、移動部材を駆動させるだけの処理で良いものとなる。これにより、再生時において、イベントデータから移動部材を駆動させるためのデータへのデータ変換処理や、イベントデータに従って、移動部材を駆動させるタイミング制御などが不要となり、演奏情報の再生にかかる処理および構成が簡易なものとなる。
【００７３】
くわえて、生成・記録処理においては、移動部材の速度に応じて、定周期配列、等速配列および停止配列のいずれかが選択され、位置・時間データ群が生成される。このため、移動部材の等速運動時および停止時においては、３つのデータ要素のみによって動作状況を表すことができる。一般に、演奏中であっても、多くの移動部材は停止期間が長いため、停止配列により演奏情報を生成することにより、演奏情報のデータ量を大幅に削減することが可能となる。
【００７４】
また、演奏情報生成・記録処理においては、１楽曲の演奏操作を記録するにあたり、移動部材別に演奏操作を記録する。このため、記録された演奏情報について、移動部材別の演奏ミスの削除や差し替えなどの修正作業、および、移動部材別の演奏情報の追加や、移動などの編集作業を容易に行うことができる。これにより、各移動部材についての情報が混在し、同一操作子イベント間の時間検出や、イベント列検出に手間がかかるＭＩＤＩデータと比較して、修正作業や編集作業などが簡便なものとなる。
なお、上述した実施形態においては、１つのファイルにつき、１つの移動部材についての動作情報（位置・時間データ群）を格納する例を示したが、単一ファイルであっても、動作情報を別個独立に記録するならば、同様な効果が得られる。要は、移動部材別に動作情報を記録できる方式であれば、いかなるものであってもよい。
【００７５】
さらに、鍵盤楽器１００において記録した演奏情報の全てあるいは一部を、イベントデータに変換することが可能である。この際、ひとつのイベントデータに対して複数のベロシティを設定可能な高精度なイベントデータに変換することも可能である。これにより、特殊な奏法を、正確にイベントデータへ変換することが可能となる。また、演奏時間の長い楽曲であっても、一旦、演奏情報フォルダとして記録し、別の時期に、該演奏情報フォルダを分割するなどしてイベントデータに変換することも可能である。
【００７６】
また、鍵盤楽器１００によれば、ハンマ１４２やダンパ１６０などの移動部材の位置を正確に記録することができる。これにより、鍵盤楽器１００の特性を把握することができ、また、演奏情報フォルダを経年変化による移動部材の劣化や故障などの判断材料とすることができる。
【００７７】
＜変形例＞
なお、上述した実施形態に限られず、種々の応用・改良変形等を加えることが可能である。
例えば、上述した実施形態にあっては、鍵盤楽器１００において生成された演奏情報（位置・時間データ群）を記憶部２６０に記憶する例を示したが、演奏情報を外部機器に出力する構成としても良い。さらに説明すると、図１９に示すように、鍵盤楽器１００の電気的構成において、上述した記憶部２６０に替えて、外部インターフェース２７０を備える構成としても良い。外部インターフェース２７０は、ＣＰＵ２００によって生成された位置・時間データ群を、外部機器に出力するためのインターフェースである。この外部インターフェース２７０に接続される外部機器としては、位置・時間データ群に従ってリアルタイムで自動演奏する自動演奏楽器や、位置・時間データ群の加工・編集を行うことができるパーソナルコンピュータなどが考えられる。
【００７８】
このような構成にした場合、ＣＰＵ２００は、上述した生成・記録処理（図１４参照）において、位置・時間データ群を、記憶部２６０に記録する替わりに、外部インターフェース２７０を介して出力する。この際、生成・記録処理のステップＳ２４４およびＳ２４５においては、既に外部機器に出力された等速配列および停止配列の更新（上書き）処理が実行できない。このため、外部インターフェース２７０を介して等速配列および停止配列を出力する場合、以下のような手順に従う。
【００７９】
すなわち、等速配列の出力については、ＣＰＵ２００は、移動部材が等速で動作している場合には、ＲＡＭ２１０において等速配列の記録および更新を行い、ステップＳ２４１において等速でないと判定すると、ＲＡＭ２１０に記録される等速配列を、外部インターフェース２７０から出力する。また、停止配列の出力についても同様に、ＣＰＵ２００は、移動部材が停止している場合には、ＲＡＭ２１０において停止配列を記録・更新し、移動部材が移動を始めたときに、外部インターフェース２７０を介して停止配列を出力する。
【００８０】
また、等速配列の出力に関する代替的な処理として、以下の処理を適用しても良い。すなわち、まず、ＣＰＵ２００は、等速運動の開始を検出したら、等速配列のデータ要素のうち位置データおよび速度データのみを出力し、当該等速運動の終了を検出したら、残りのデータ要素である時間データを出力する。このような処理にすれば、速度情報が、等速運動の開始とともに出力されるため、外部機器において、位置・時間データ群をリアルタイムで再生することが可能となる。
【００８１】
鍵盤楽器１００から位置・時間データ群が伝送された外部機器（例えば、パーソナルコンピュータ）においては、該位置・時間データ群を利用して、各種処理を実行することが可能となる。例えば、外部機器の表示装置に、移動部材の時系列的な位置を示す波形を表示することができる。この際、位置・時間データ群が、時間および位置の各々について関して連続しているため、データ格納順に位置をプロットするだけの処理で済む。また、表計算アプリケーションによる位置・時間データ群に関する各種処理も容易に行うことができる。
【００８２】
さらに、鍵盤楽器１００によれば、移動部材の速度に応じて定周期配列、等速配列および停止配列のいずれかが選択されるため、演奏情報を示す位置・時間データ群のデータ量が低減され、鍵盤楽器１００と外部機器とを接続するネットワークトラッフィックが抑制されることとなる。
【００８３】
また、上述した実施形態においては、移動部材が等速運動している状態を等速配列で示し、停止している状態を停止配列で示したが、これに限られない。例えば、両方の状態を、等速配列あるいは停止配列のいずれか一方で表現する構成としても良い。より詳細には、位置データ、時間データおよび位置データの順からなる停止配列によって、等速運動している状況を示す場合には、先頭の位置データに、等速運動の開始位置を示す情報を格納し、時間データに、等速運動の期間を示す情報を格納し、後尾の位置データに、等速運動の終了位置を示す情報を格納すれば良い。
一方、位置データ、速度データおよび時間データの順からなる等速配列によって、停止している状況を示す場合には、位置データに、停止位置を示す情報を格納し、速度データに、速度が「０」であることを示す情報を格納し、時間データに、停止時間を示す情報を格納すれば良い。
また、移動部材の速度が変化していない（移動部材が等速運動、あるいは、停止している）状態を表す配列のデータ要素は、位置データ、時間データおよび速度データの３つに限られない。例えば、速度が変化していない期間における移動部材の変位を表す差分データなど、データ要素として組み合わせることにより、速度が変化していない期間と、当該期間における変位とを特定することができるデータであれば、任意に移動部材の速度が変化していない状態を表す配列のデータ要素とすることができる。
【００８４】
上述した実施形態においては、演奏情報の生成にかかるセンサ（例えばキーセンサ３１０など）および電気的構成（図７および図９参照）を、鍵盤楽器１００に内蔵する構成としたが、これらの演奏情報の生成にかかる各構成は、鍵盤楽器１００と別体とする構成としても良い。これにより、演奏情報を生成する機能を有しない鍵盤楽器であっても、移動部材の詳細な動作を表す演奏情報（位置・時間データ）を作成することができる。例えば、骨董的や歴史的な価値を有する鍵盤楽器における演奏情報を作成することも可能となる。
【００８５】
上述した実施形態においては、各移動部材の位置を検出するセンサとして、光により距離を検出する検出する光反射センサを用いる例を示したがこれに限られない。例えば、磁気的に距離を検出する磁気センサなど、各被検出体の位置を連続的に検出することができる検出手段であれば、本発明を任意に適用可能である。また、各移動部材の位置を検出するセンサの代わりに各移動部材の速度や加速度などの移動部材の運動に関する物理量を検出するセンサを備え、検出された物理量から各移動部材の位置を求める構成としても良い。
【００８６】
上述した実施形態においては、１楽曲にかかる全ての演奏操作を位置・時間データ群として記録する例を説明したが、これに限られない。例えば、演奏操作の一部（特定の移動部材に関する演奏操作など）を、位置・時間データ群として記録し、その他の演奏操作を、イベント形式の演奏情報として記録する構成としても良い。
【００８７】
上述した実施形態においては、ひとつの移動部材別ファイルｆにつき、ひとつのサンプリング周期をとる例を示したが、これに限られない。例えば、ハンマ１４２が打弦位置近傍に位置する場合や、鍵１３０が下連打時において向き（揺動角度）を変える近傍に位置する場合、ペダル１５０がハーフペダル領域近傍に位置する場合などの、演奏情報として重要な領域に移動部材が位置する場合のサンプリング周期が、それ以外の領域におけるサンプリング周期よりも短いものとなるような構成としても良い。また、鍵１３０がレスト位置にある場合には、サンプリング周期を長くする構成としても良い。これにより、データ量や処理量などを抑えつつ、演奏操作における重要な部分については、動作状況を詳細に表現する演奏情報を生成することができる。さらに、楽曲の途中であっても、演奏者や、移動状況（例えば、停止しているか否か）などに応じて、サンプリング周期を変更可能な構成にしても良い。
なお、サンプリング周期を変化させた場合には、その動作情報は、停止配列と同様の、位置データ、時間データおよび位置データからなる配列により表すことができる。この配列においては、先頭の位置データにより示される位置から、時間データにより示される時間（変化後のサンプリング周期）だけ経過した後に、後尾の位置データにより示される位置に移動したことを示している。
【００８８】
上述した実施形態においては、位置・時間データの記録にあたり、サンプリング周期が経過するたびにデータ要素を書き足しながら記憶部２６０に記録したが、これに限られない。例えば、ＲＡＭ２１０において、演奏中に、位置・時間データ群の生成および更新を行い、演奏終了時にまとめて記憶部２６０に書き込む構成としても良い。
【００８９】
上述した実施形態においては、演奏情報フォルダを記憶部２６０に記録する例を示したがこれに限られない。例えば、鍵盤楽器１００に、フレキシブルディスクや光ディスクなどの記録媒体に対してデータの読み書きを行うデータ記録再生装置を備え、該データ記録再生装置を介して、記録媒体に演奏情報フォルダを記録する構成としても良い。これにより、パーソナルコンピュータなどの外部機器とデータの授受を行うことが可能となる。
【００９０】
上述した実施形態における鍵盤楽器１００の構成に加え、さらに、液晶ディスプレイなどの表示装置を備える構成としても良い。このような構成にすると、表示装置に位置・時間データ群を表示し、視覚的に演奏情報を表示させることが可能となる。
【００９１】
上述した実施形態においては、鍵１３０、ハンマ１４２、ペダル１５０およびダンパ１６０の位置・時間データ群を生成する例を説明した。しかし、鍵盤楽器に設けられ、演奏者（操作者）の操作に応じて移動する移動部材であれば、当該移動部材の動作状況を、演奏情報として生成することがきる。
【００９２】
上述した実施形態においては、移動部材の速度が変化している場合のみ、定周期配列により演奏情報を生成したが、さらに、移動部材が等速で移動している場合に、定周期配列により演奏情報を生成しても良い。
【００９３】
【発明の効果】
以上説明したように本発明によれば、詳細な演奏情報を、データ量を抑えつつ、簡易に生成することが可能な演奏情報生成装置、演奏情報記録装置および鍵盤楽器が提供される。
【図面の簡単な説明】
【図１】本発明の実施形態に係る鍵盤楽器の機械的構成を示す図である。
【図２】同鍵盤楽器の鍵およびキーセンサの斜視図である。
【図３】同キーセンサの構成を示す図である。
【図４】同鍵およびその周辺構成を示す図である。
【図５】同鍵盤楽器のハンマおよびその周辺構成を示す図である。
【図６】同鍵盤楽器のダンパおよびその周辺構成を示す図である。
【図７】同鍵盤楽器の電気的構成を示す図である。
【図８】同鍵盤楽器の記憶部に記憶される移動部材別ファイルの構成を示す図である。
【図９】同移動部材別ファイルに含まれるデータ要素のフォーマットを示す図である。
【図１０】同データ要素のフォーマットを示す図である。
【図１１】移動部材の動作状況を示す図である。
【図１２】同鍵盤楽器において実行される演奏情報生成・記録処理を説明するためのフローチャートである。
【図１３】同演奏情報生成・記録処理に含まれる鍵データ生成・記録処理を説明するためのフローチャートである。
【図１４】同鍵データ生成・記録処理に含まれる生成・記録処理を説明するためのフローチャートである。
【図１５】同生成・記録処理を説明するための図である。
【図１６】同生成・記録処理を説明するための図である。
【図１７】同生成・記録処理を説明するための図である。
【図１８】同生成・記録処理を説明するための図である。
【図１９】同実施形態の変形例にかかる鍵盤楽器の電気的構成を示す図である。
【符号の説明】
１００…鍵盤楽器、１１０…棚板、１２０…筬中、１３０…鍵、１３５，１４５，１５５，１６５…被検出部材、１４０…アクション機構、１５０…ペダル、１４２…ハンマ、Ｓ…弦、２００…ＣＰＵ、２１０…ＲＡＭ、２２０…ＲＯＭ、２３０…操作部、２４０…時計部、２５０Ｋ，２５０Ｈ，２５０Ｐ，２５０Ｄ…Ａ／Ｄ変換部、２６０…記憶部、２７０…外部インターフェース、３００，４００，５００，６００…支持部材、３１０…キーセンサ、４１０…ハンマセンサ、５１０…ペダルセンサ、６１０…ダンパセンサ。
【図１】
2004077521.tif 000003
【図２】
2004077521.tif 000004
【図３】
2004077521.tif 000005
【図４】
2004077521.tif 000006
【図５】
2004077521.tif 000007
【図６】
2004077521.tif 000008
【図７】
2004077521.tif 000009
【図８】
2004077521.tif 000010
【図９】
2004077521.tif 000011
【図１０】
2004077521.tif 000012
【図１１】
2004077521.tif 000013
【図１２】
2004077521.tif 000014
【図１３】
2004077521.tif 000015
【図１４】
2004077521.tif 000016
【図１５】
2004077521.tif 000017
【図１６】
2004077521.tif 000018
【図１７】
2004077521.tif 000019
【図１８】
2004077521.tif 000020
【図１９】
2004077521.tif 000021