JP3449045B2 - 演奏制御装置 - Google Patents

演奏制御装置

Info

Publication number
JP3449045B2
JP3449045B2 JP16917595A JP16917595A JP3449045B2 JP 3449045 B2 JP3449045 B2 JP 3449045B2 JP 16917595 A JP16917595 A JP 16917595A JP 16917595 A JP16917595 A JP 16917595A JP 3449045 B2 JP3449045 B2 JP 3449045B2
Authority
JP
Japan
Prior art keywords
data
performance
value
tempo
music
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP16917595A
Other languages
English (en)
Other versions
JPH08339182A (ja
Inventor
聡史 宇佐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP16917595A priority Critical patent/JP3449045B2/ja
Publication of JPH08339182A publication Critical patent/JPH08339182A/ja
Application granted granted Critical
Publication of JP3449045B2 publication Critical patent/JP3449045B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は電子楽器などの楽音演
奏における音楽特性(テンポやダイナミクスなど)を演
奏者の操作動作に応じて任意に制御することのできる演
奏制御装置に関する。
【0002】
【従来の技術】従来、自動演奏装置はメロディ演奏や伴
奏演奏の各音符に関する演奏情報(音符データ)をメモ
リ等に記憶しておき、その記憶された演奏情報を所定の
テンポで自動的に読み出し、読み出された演奏情報に従
ってメロディ音や伴奏音を発音する。この場合、演奏の
テンポはタイマ等から出力されるテンポクロックの周波
数によって決定される。このテンポクロックの周波数は
テンポ設定スイッチ等を操作することによって自由に可
変することができる。ところが、テンポ設定スイッチな
どを操作して演奏中の演奏テンポを変化させた場合、そ
の変化の仕方がスイッチの操作状態(操作量や操作速度
など)に依存するため、実際の演奏時における指揮棒な
どの手振り動作に対応したような微妙なテンポ変化を与
えることは非常に困難であった。そこで、従来は、操作
者の指揮棒などにセンサを内蔵し、その手振り動作に応
じたセンサ出力を検出し、その検出タイミングに応じて
自動演奏のテンポを制御するようにした演奏制御装置
(例えば、特公平3−60119号公報に記載されたも
の)がある。
【0003】
【発明が解決しようとする課題】また、最近では、操作
者の指揮棒などに加速度センサを内蔵し、その手振り動
作に応じた加速度センサの出力の最大値を検出し、その
検出タイミングで自動演奏のテンポを制御したり、その
最大出力値に応じて演奏のダイナミクスを制御したりす
るリアルタイムの演奏制御装置が現れている。これは加
速度センサの出力最大値を検出した時点で発音したり、
シーケンスデータを進めたりすることによって、演奏の
テンポを任意に制御すると共に、この加速度センサの最
大出力値に応じて演奏のダイナミクス(演奏時における
サウンドに強弱をつけて演奏全体に躍動感を与えるこ
と)も任意に制御するものである。従って、操作者の手
振り動作の周期が短い場合には、センサの出力最大値の
出現する周期は短くなるので、それに応じて演奏のテン
ポは速くなり、逆に、手振り動作の周期が長い場合に
は、センサの出力最大値の出現する周期は長くなるの
で、それに応じて演奏のテンポは遅くなる。また、手振
り動作速度が速いと加速度センサの出力が大きくなるの
で、それに応じて演奏のダイナミクスは強くなり、逆
に、手振り動作速度が遅いと加速度センサの出力が小さ
くなるので、それに応じて演奏のダイナミクスは弱くな
る。
【0004】このようなリアルタイムの演奏制御装置で
は、操作者が指揮法にどれだけ習熟しているのか(手振
り動作を所定の周期及び動作速度で正確に行うことがで
きるかどうか)に応じて、加速度センサの出力波形が大
きく異なる。例えば、操作者が指揮法に習熟している場
合には、手振り動作が所定の周期及び動作速度で規則正
しく行われるため、加速度センサの出力もばらつくこと
なく、安定した出力波形となるが、操作者が初心者等の
場合には手振り動作の周期や動作速度が不正確なため、
加速度センサの出力にばらつきが生じ、不安定な出力波
形となる。従って、操作者が指揮法にどれだけ習熟して
いるのかに応じて、その加速度センサの出力をテンポや
ダイナミクスなどの音楽特性の制御にどのように反映さ
せるか、その追従の度合い(追従度)を予め設定してお
き、その追従度に応じてテンポやダイナミクスなどの音
楽特性を制御する必要がある。例えば、操作者が指揮法
に習熟している場合には、追従度をある程度高くするこ
とによって、手振り動作に応じた加速度センサの出力値
に鋭敏に反応してテンポやダイナミクスなどの音楽特性
が制御されるようにする。操作者が初心者等の場合には
テンポ制御の追従度を低くすることによって、手振り動
作に応じた加速度センサの出力値に鈍感に反応してテン
ポやダイナミクスなどの音楽特性が制御されるようにす
る。
【0005】また、このような演奏制御装置において
は、音楽のジャンル毎に追従度を異ならせる場合があ
る。例えば、ロックなどでは曲の途中でテンポが大きく
変動することは少ないので、追従度を低めに設定し、加
速度センサの出力値のばらつきによってテンポが変動す
るのを防止する。演歌ではエンディング部分でテンポが
落ちたり、クラシックでは楽想が変化する部分でリタリ
ルダンドしたりするので、追従度を高めに設定し、該当
する部分におけるテンポを手振り動作の変化に敏感に追
従させている。しかしながら、1つの曲の中でテンポや
ダイナミクスなどの音楽特性が大きく変動する場面は、
曲の冒頭部分、曲のエンディング部分、楽想が変化する
部分などのように1つの曲の中のほんの一部分である場
合が多い。従って、追従度が一旦設定された場合、その
追従度で全ての演奏が行われるようになるため、追従度
を高く設定した場合には加速度センサの出力値に敏感に
追従してテンポやダイナミクスなどの音楽特性が変化す
るようになるため、操作者は所定の周期及び動作速度と
なるように演奏の間ずっと手振り動作に全神経を集中し
なければならず、逆に、追従度を低く設定した場合には
加速度センサの出力値に鈍感に追従するようになるた
め、操作者はテンポやダイナミクスなどの音楽特性を変
化させるために手振り動作を大きく変化させなければな
らないという問題を有する。
【0006】この発明は上述の点に鑑みてなされたもの
であり、テンポやダイナミクスなどの音楽特性を表情豊
かな思い入れを込めて大きく変動させて演奏したい場合
や、あまり変動させずに安定して演奏したい場合などの
ような相異なる演奏形態による演奏を1つの曲の中で実
現することのできる演奏制御装置を提供することを目的
とする。
【0007】
【課題を解決するための手段】 請求項1に記載された
この発明に係る演奏制御装置は、自動演奏データを供給
する演奏データ供給手段と、前記自動演奏データに応じ
た演奏時に、その演奏の音楽特性に関するデータを時々
刻々と変化させながら供給する特性データ供給手段と、
前記音楽特性に関するデータの変化に対してどれだけ追
従させて前記自動演奏データに応じた演奏を変化させる
かを決定する追従度データを一連の演奏中において少な
くとも1回変更して供給するものであって、該追従度デ
ータは前記自動演奏データの中に含まれており、該自動
演奏データの供給に伴って該追従度データを供給する
従度データ供給手段と、前記自動演奏データに応じた演
奏を前記音楽特性に関するデータ及び前記追従度データ
に従って行う制御手段とを備えることを特徴とする。
【0008】
【作用】 演奏データ供給手段は自動演奏データを供給
するものであり、メモリやフロッピーディスクなどに記
憶された自動演奏データを制御手段に供給する。制御手
段は演奏データ供給手段から供給される自動演奏データ
に応じた演奏を行う。制御手段は演奏時に特性データ供
給手段から時々刻々と変化するテンポやダイナミクスな
どの音楽特性に関するデータの供給を受けるので、それ
に応じて音楽特性を時々刻々変化させる。例えば、この
特性データ供給手段は操作者の身振り動作すなわち指揮
者の手振り動作や揺動動作などに基づいて動作の種類及
び動作量を検出し、それをテンポやダイナミクスなどの
音楽特性に関するデータとして出力するものである。従
って、特性データ供給手段からは操作者の動作に応じて
時々刻々と変化する音楽特性に関するデータが出力され
る。このとき、制御手段は、音楽特性に関するデータの
変化に対してどれだけ追従させて演奏を変化させるかを
決定する追従度データの供給を受けているので、その追
従度データに応じた追従度で音楽特性を変化させながら
演奏を行う。また、追従度データ供給手段はこの追従度
データを一連の演奏中において少なくとも1回変更して
供給し、かつ、この追従度データは前記自動演奏データ
の中に含まれており、該自動演奏データの供給に伴って
該追従度データを供給するので、自動演奏データの中の
任意の演奏個所において含まれた該追従度データの変更
前後で音楽特性に関するデータの変化に対する演奏変化
の追従の割合が異なるようになっている。従って、テン
ポやダイナミクスなどの音楽特性を表情豊かな思い入れ
を込めて大きく変動させて演奏したい場合や、あまり変
動させずに安定して演奏したい場合などで追従度データ
を変更させることによって、1つの曲の中で相異なる演
奏形態の演奏を両立させて行うことができ、かつ、該追
従度データを自動演奏データの中で任意に含ませること
で曲の中の任意の個所でそのような追従度の変更が可能
であるから、多様な制御が行える。
【0009】
【実施例】以下、この発明の実施例を添付図面に従って
詳細に説明する。図1は鍵盤、音源回路及び自動演奏装
置を内蔵した電子楽器1Hと、この電子楽器1Hに操作
者の手振り動作に応じたテンポ制御信号を出力する指揮
棒20との詳細構成及び両者間の接続関係を示すハード
ブロック図である。まず、電子楽器1Hの構成について
説明する。マイクロプロセッサユニット(CPU)11
はこの電子楽器1Hの全体動作を制御するものである。
このCPU11に対して、バス1Gを介してROM1
2、RAM13、押鍵検出回路14、スイッチ検出回路
15、表示回路16、音源回路17、効果付与回路1
8、タイマ19、フロッピーディスクドライブ(FD
D)1A及びMIDIインターフェイス(I/F)1B
がそれぞれ接続されている。
【0010】この実施例ではCPU11によって押鍵検
出処理やテンポ制御データの送受信処理及び発音処理等
を行う電子楽器について説明するが、押鍵検出回路14
からなるモジュールや音源回路17からなるモジュール
とがそれぞれ別々に構成され、各モジュール間のデータ
の授受をMIDIインターフェイスで行うように構成さ
れたものにも同様に適用できることは言うまでもない。
ROM12はCPU11の各種プログラムや各種データ
を格納するものであり、リードオンリーメモリ(RO
M)で構成されている。RAM13は演奏情報やCPU
11がプログラムを実行する際に発生する各種データを
一時的に記憶するものであり、ランダムアクセスメモリ
(RAM)の所定のアドレス領域がそれぞれ割り当てら
れ、レジスタやフラグとして利用される。
【0011】鍵盤1Cは発音すべき楽音の音高を選択す
るための複数の鍵を備えており、各鍵に対応してキース
イッチを有しており、また必要に応じて押鍵速度検出装
置や押圧力検出装置等のタッチ検出手段を有している。
鍵盤1Cは音楽演奏のための基本的な操作子であり、こ
れ以外の演奏操作子、例えばドラムパッド等でもよいこ
とはいうまでもない。押鍵検出回路14は発生すべき楽
音の音高を指定する鍵盤1Cのそれぞれの鍵に対応して
設けられた複数のキースイッチからなる回路を含んで構
成されており、新たな鍵が押圧されたときはキーオンイ
ベント情報を出力し、鍵が新たに離鍵されたときはキー
オフイベント情報を出力する。また、鍵押し下げ時の押
鍵操作速度又は押圧力等を判別してタッチデータを生成
する処理を行い、生成したタッチデータをベロシティデ
ータとして出力する。このようにキーオン、キーオフイ
ベント情報及びベロシティ情報はMIDI規格で表現さ
れておりキーコードと割当てチャンネルを示すデータを
も含んでいる。
【0012】パネルスイッチ1Dは自動演奏スタート/
ストップスイッチ、一時停止(ポーズ)スイッチ、音
色、音量、効果等を選択・設定・制御するための各種ス
イッチを含むものである。パネルスイッチ1Dにはこの
他にも色々なスイッチを有するが、その詳細については
公知なので説明を省略する。スイッチ検出回路15はパ
ネルスイッチ1D上の各操作子の操作状態を検出し、そ
の操作状態に応じたスイッチイベントをバス1Gを介し
てCPU11に出力する。表示回路16はCPU11の
制御状態、設定データの内容等の各種の情報を表示部1
Eに表示するものである。表示部1Eは液晶表示パネル
(LCD)等から構成され、表示回路16によってその
表示動作を制御される。
【0013】音源回路17は複数のチャンネルで楽音信
号の同時発生が可能であり、バス1Gを経由して与えら
れた演奏情報(MIDI規格に準拠したデータ)を入力
し、このデータに基づき楽音信号を発生する。音源回路
17における楽音信号発生方式はいかなるものを用いて
もよい。例えば、発生すべき楽音の音高に対応して変化
するアドレスデータに応じて波形メモリに記憶した楽音
波形サンプル値データを順次読み出すメモリ読み出し方
式、又は上記アドレスデータを位相角パラメータデータ
として所定の周波数変調演算を実行して楽音波形サンプ
ル値データを求めるFM方式、あるいは上記アドレスデ
ータを位相角パラメータデータとして所定の振幅変調演
算を実行して楽音波形サンプル値データを求めるAM方
式等の公知の方式を適宜採用してもよい。
【0014】効果付与回路18は音源回路17からの楽
音信号に種々の効果を付与し、効果の付与された楽音信
号をサウンドシステム1Fに出力する。効果付与回路1
8によって効果の付与された楽音信号は、図示しないア
ンプ及びスピーカからなるサウンドシステム1Fを介し
て発音される。タイマ19は時間間隔を計数したり、自
動演奏のテンポを決定するためのクロックパルスを発生
するものであり、このクロックパルスはCPU11に対
してインタラプト命令として与えられるので、CPU1
1はインタラプト処理により各種の処理を実行する。フ
ロッピーディスクドライブ(FDD)1Aは外部記憶媒
体すなわちフロッピーディスクから自動演奏データを電
子楽器1H内に取り込んだり、電子楽器1H内で処理さ
れた自動演奏データをフロッピーディスクに書き込んだ
りするインターフェイスである。
【0015】MIDIインターフェイス(I/F)1B
は電子楽器1Hのバス1Gと指揮棒20のMIDIイン
ターフェイス(I/F)27との間を接続し、MIDI
インターフェイス27は指揮棒20のバス2EとMID
Iインターフェイス1Bとの間を接続している。従っ
て、電子楽器1Hのバス1Gと指揮棒20のバス2Eと
の間は、MIDIインターフェイス1B及び27を介し
て接続され、両者の間では、MIDI規格に準拠したデ
ータのやり取りが双方向で行えるようになっている。
【0016】次に、指揮棒20の構成について説明す
る。マイクロプロセッサユニット(CPU)21はこの
指揮棒20の動作を制御するものである。このCPU2
1に対しては、バス2Eを介してROM22、RAM2
3、スイッチ検出回路24、A/D変換器25,26、
MIDIインターフェイス27及びタイマ28がそれぞ
れ接続されている。ROM22はCPU21の各種プロ
グラムや各種データを格納するものであり、リードオン
リーメモリ(ROM)で構成されている。RAM23は
CPU21がプログラムを実行する際に発生する各種デ
ータを一時的に記憶するものであり、ランダムアクセス
メモリ(RAM)の所定のアドレス領域がそれぞれ割り
当てられ、レジスタやフラグとして利用される。スイッ
チ群29は指揮棒20のオン/オフスイッチやテンポ制
御信号の出力タイミングを調整するためのディレイタイ
ムスイッチ等で構成される。スイッチ検出回路24はス
イッチ群29の操作状態を検出し、その操作状態に応じ
たデータをバス2Eを介してCPU21に出力する。
【0017】X方向圧電振動ジャイロセンサ2A及びY
方向圧電振動ジャイロセンサ2Bは、センサが1つの回
転軸を中心として回転した場合にその回転の角速度に比
例するコリオリの力に比例した電圧を発生する圧電振動
ジャイロセンサを直交する2軸(X軸及びY軸)に設け
たものである。従って、X方向圧電ジャイロセンサ2A
から出力される電圧に基づいてX軸方向の角速度ωXを
検出することができ、Y方向圧電ジャイロセンサ2Bか
ら出力される電圧に基づいてY軸方向の角速度ωYを検
出することができる。
【0018】ノイズ除去回路2C及び2DはX方向圧電
振動ジャイロセンサ2A及びY方向圧電ジャイロセンサ
2Bからの各センサ出力信号に含まれるセンサ内部のノ
イズ成分を除去するものであり、応答周波数以上の高周
波成分を除去するローパスフィルタで構成される。A/
D変換器25及び26はノイズ除去回路2C及び2Dに
よって高周波成分の除去されたセンサ出力信号をディジ
タル信号に変換するものである。このA/D変換器25
及び26によって変換されたディジタル信号は所定周期
でCPU21によって読み取られ、所定のデータ処理に
よって指揮棒20全体の動作判定処理に利用される。
【0019】タイマ28は指揮棒20の動作クロックを
発生するものであり、この動作クロックがCPU21に
対してインタラプト命令として与えられ、CPU21は
インタラプト処理により指揮棒20の動作状態を検出
し、動作状態に応じて自動演奏のテンポを決定するため
のテンポ制御信号をMIDIインターフェイス27及び
1Bを介して電子楽器1H側に出力する。
【0020】次に、指揮棒20内のマイクロコンピュー
タ(CPU21)によって実行される処理の一例を図2
から図6のフローチャートに基づいて説明する。図2は
指揮棒20内のマイクロコンピュータ(CPU21)が
処理するセンサ出力処理の一例を示す図である。このセ
ンサ出力処理はタイマ28からの動作クロック(周期約
10ms)に同期して実行されるタイマ割り込み処理で
ある。このセンサ出力処理はプログラムROM22に格
納されている制御プログラムに応じた一連の処理であ
り、次のようなステップで順番に実行される。
【0021】ステップ1:X方向圧電振動ジャイロセン
サ2A及びY方向圧電振動ジャイロセンサ2Bの出力、
すなわちA/D変換器25及び26から出力されるディ
ジタル信号をバス2Eを介して取り込む。 ステップ2:直流成分を除去する。すなわち、指揮棒2
0を操作する操作者が手振り動作以外の旋回動作などの
低速回転動作を行うと、それに応じた直流成分すなわち
ドリフト成分が発生するので、ステップ1で取り込んだ
ディジタル信号を低周波の遮断周波数を持つハイパスフ
ィルタを通過させることによって、それを除去する。
【0022】 ステップ3:直流成分の除去されたX方
向圧電振動ジャイロセンサ2A及びY方向圧電振動ジャ
イロセンサ2Bの出力X及びYに基づいて絶対角速度を
算出し、それを絶対角速度レジスタA_SPEEDに格
納する。絶対角速度は図2のステップ3に示すような演
算式、出力X及びYの二乗の和のルートを取ることによ
って算出される。なお、このステップによって算出され
た絶対角速度の値を、時間を横軸としてプロットすると
(A)に示すようなものになる。 ステップ4:今回のタイマ割り込み時点からm回前のタ
イマ割り込み時点までの各タイミングのステップ3で算
出された絶対角速度の平均値を算出し、それを移動平均
値として移動平均レジスタM_AVERAGEに格納す
る。例えば、mが『8』の場合には各タイミングで算出
された8個の絶対角速度の和を8で除することによって
移動平均値が得られる。 ステップ5:今回のタイマ割り込み時点からn回前のタ
イマ割り込み時点までの各タイミングのステップ4で算
出され、移動平均レジスタM_AVERAGEに格納さ
れている移動平均値の平均値を算出し、それをダイナミ
ックしきい値としてダイナミックしきい値レジスタDY
NA_THREに格納する。
【0023】ステップ6:前回値レジスタNOWの格納
値を前々回値レジスタOLDに格納し、今回値レジスタ
NEWの格納値を前回値レジスタNOWに格納し、今回
算出された移動平均値(移動平均レジスタM_AVER
AGEの格納値)を今回値レジスタNEWに格納する。
すなわち、前々回値レジスタOLD、前回値レジスタN
OW及び今回値レジスタNEWの格納値をそれぞれ新し
い値にシフトする。 ステップ7:前々回値レジスタOLD、前回値レジスタ
NOW及び今回値レジスタNEWのそれぞれの格納値に
基づいたピーク検出処理を行う。図3はこのピーク検出
処理の詳細を示す図である。このピーク検出処理は次の
ようなステップで順番に実行される。
【0024】ステップ70:前回値レジスタNOWの格
納値が、前々回値レジスタOLDの格納値以上及び今回
値レジスタNEWの格納値以上であるかどうか、すなわ
ち前回のタイマ割り込みの時点で検出された移動平均値
が極大値(ピーク)かどうかの判定を行い、YESの場
合は次のステップ71に進み、NOの場合は図2のステ
ップ8に進む。 ステップ71:前回のタイマ割り込みの時点が移動平均
値の極大値(ピーク)だと前記ステップ70で判定され
たので、ここでは今回のピーク判定時点が前回のピーク
判定時点から起算して所定時間経過したかどうかの判定
を行い、所定時間経過している場合(YES)には次の
ステップ72に進み、所定時間経過していない(NO)
場合には直ちに図2のステップ8に進む。すなわち、前
回のピーク判定時点から所定時間経過していない時点で
再びステップ70でYESと判定されたピークは、操作
者の手振り動作の乱れによって生じた疑似のピーク値だ
ということを意味するからである。
【0025】ステップ72:前回値レジスタNOWの格
納値が一定しきい値よりも大きいかどうかを判定し、大
きい(YES)場合は次のステップ73に進み、小さい
(NO)場合は直ちに図2のステップ8に進む。すなわ
ち、前回値レジスタNOWの格納値が一定しきい値より
も小さいということは、ステップ70及びステップ71
でYESと判定されたピークは、操作者の手振り動作の
乱れによって生じた疑似のピーク値だということを意味
するからである。 ステップ73:前回値レジスタNOWの格納値が図2の
ステップ5で算出されダイナミックしきい値レジスタD
YNA_THREに格納されているダイナミックしきい
値よりも大きいかどうかを判定し、大きい(YES)場
合は次のステップ74に進み、小さい(NO)場合は直
ちに図2のステップ8に進む。すなわち、ピーク値はダ
イナミックしきい値よりも必ず大きいからである。
【0026】ステップ74:前回値レジスタNOWの格
納値が、前回ピーク値レジスタLAST_PEAKの格
納値に1以下の所定係数Aを乗じたものよりも大きいか
どうかを判定し、大きい(YES)場合は次のステップ
75に進み、小さい場合は直ちに図2のステップ8に進
む。すなわち、ピーク値は前回のピーク値にだいたい近
似した値となると考えられるからである。 ステップ75:今回のタイマ割り込みの時点以前にピー
ク検出処理又は谷検出処理によって検出されたのが谷か
どうかの判定を行い、前回検出されたのが谷(YES)
の場合は今回検出されたピークは正しいと考えられるの
で次のステップ76に進み、前回検出されたのがピーク
(NO)の場合はピークが連続することはあり得ないの
で、今回検出されたピークが誤りであると考えられるの
で直ちに図2のステップ8に進む。
【0027】ステップ76:前回ピーク値レジスタLA
ST_PEAKに前回値レジスタNOWの格納値を格納
する。 ステップ77:今回検出されたピークがどのような動作
種類におけるピークであるのかピーク種類判定処理を行
う。すなわち、ステップ70〜ステップ75の処理によ
って判定されたピークが指揮棒20のどの方向に振られ
たことによって発生したものなのかを判定する処理であ
る。
【0028】図4はこのピーク種類判定処理の詳細を示
す図である。このピーク種類判定処理は次のようなステ
ップで順番に実行される。 ステップ770:直流成分の除去されたX方向圧電振動
ジャイロセンサ2Aの出力X及びY方向圧電振動ジャイ
ロセンサ2Bの出力Yに基づいて角度を算出し、それを
角度レジスタθに格納する。角度は図4のステップ77
0に示す演算式、すなわち出力Yを出力Xで除した値の
アークタンジェントによって算出される。
【0029】ステップ771:角度レジスタθの格納値
が180°より大きくて300°以下であるかどうかの
判定を行い、YESの場合は次のステップ772に進
み、NOの場合はステップ773に進む。 ステップ772:今回のピークが動作種類『1』の手振
り動作によって生じたものなので、ここでは今回のピー
クを動作『1』のピークとする。 ステップ773:角度レジスタθの格納値が60°以下
であって300°よりも大きいかどうかの判定を行い、
YESの場合は次のステップ774に進み、NOの場合
はステップ775に進む。 ステップ774:今回のピークが動作種類『2』の手振
り動作によって生じたものなので、ここでは今回のピー
クを動作『2』のピークとする。 ステップ775:ステップ771及びステップ773で
NOと判定されたということは、角度レジスタθの格納
値が180°以下であって60°よりも大きいというこ
と、すなわち、今回のピークが動作種類『3』の手振り
動作によって生じたものであることを意味するので、こ
こでは今回のピークを動作『3』のピークとする。
【0030】図7は、ステップ770の演算式によって
求められた角度θと、その動作種類『1』、『2』及び
『3』との関係を示す図である。すなわち、角度θが1
80°より大きくて300°以下である(ステップ77
1でYES)と判定されたということは、図示のような
動作『1』の方向に、角度θが60°以下であって30
0°よりも大きい(ステップ773でYES)と判定さ
れたということは、図示のような動作『2』の方向に、
角度θが180°以下であって60°よりも大きい(ス
テップ773でNO)と判定されたということは、図示
のような動作『3』の方向に指揮棒20が振られたこと
をそれぞれ意味する。
【0031】ステップ78:今回検出されたピーク値に
基づいてダイナミクスを算出するためのダイナミクス算
出処理を行う。図5はこのダイナミクス算出処理の詳細
を示す図である。このダイナミクス算出処理では、図4
のピーク種類判定処理によって判定されたピークの種類
(すなわち動作種類)『1』、『2』、『3』毎に、異
なる係数をピーク値に乗じ、追従度に応じて移動平均値
を算出し、それをダイナミクスとしている。このダイナ
ミクス算出処理は次のようなステップで順番に実行され
る。
【0032】ステップ780:ピークの種類すなわち動
作種類は『1』であるかどうかを判定し、『1』(YE
S)の場合はステップ782に進み、『2』又は『3』
(NO)の場合はステップ781に進む。 ステップ781:ピークの種類すなわち動作種類は
『2』であるかどうかを判定し、『2』(YES)の場
合はステップ785に進み、『3』(NO)の場合はス
テップ789に進む。
【0033】ステップ782:次のステップの移動平均
の算出処理に備えて過去16回分のピーク値を記憶して
いる16個のレジスタLAST16、LAST15、L
AST14、・・・、LAST1の値をそれぞれ更新す
る。すなわち、レジスタLAST15の格納値をレジス
タLAST16に格納し、レジスタLAST14の格納
値をレジスタLAST15に格納し、以下順次各レジス
タの格納値をシフトし、前回値レジスタNOWの格納値
をレジスタLAST1に格納する。
【0034】ステップ783:追従度に対応した移動平
均次数αに基づいてピーク値の移動平均を取り、それを
ダイナミクスとする。この移動平均次数αは図14に示
されるような追従度A,B,Cに対応した値となる。す
なわち、追従度Aの場合には移動平均次数αは1とな
り、今回検出された動作種類『1』のピーク値をそのま
まダイナミクスとしてダイナミクスレジスタDYNAM
ICSに格納する。追従度Bの場合には移動平均次数α
は4となり、過去4回分のピーク値を格納しているレジ
スタLAST1、LAST2、LAST3及びLAST
4の格納値を加算し、それを次数α=4で除して得られ
た移動平均値((LAST1+LAST2+LAST3
+LAST4)/4)をダイナミクスとしてダイナミク
スレジスタDYNAMICSに格納する。追従度Cの場
合には移動平均次数αは16となり、過去16回分のピ
ーク値を格納しているレジスタLAST1、LAST
2、・・・、LAST16の格納値を加算し、それを次
数α=16で除して得られた移動平均値((LAST1
+LAST2+・・・+LAST16)/16)をダイ
ナミクスとしてダイナミクスレジスタDYNAMICS
に格納する。なお、上述の移動平均次数αの値1,4,
16は2拍子又は4拍子の場合のものであり、3拍子の
場合には移動平均次数αは1,3,12とする。 ステップ784:動作『1』に対応したキーコード『C
3』のキーオンと、前記ステップ783によって得られ
たダイナミクスを出力し、図2のステップ8に進む。
【0035】ステップ785:前記ステップ781で動
作種類『2』のピークである(YES)と判定されたの
で、そのピーク値に係数aを乗じる。すなわち、前回値
レジスタNOWに格納されているピーク値に係数aを乗
じ、その乗算値を再び前回値レジスタNOWに格納す
る。 ステップ786:前記ステップ782と同様に、次のス
テップの移動平均の算出処理に備えて過去16回分のピ
ーク値を記憶している16個のレジスタLAST16、
LAST15、LAST14、・・・、LAST1の値
をそれぞれ更新する。 ステップ787:前記ステップ783と同様に、追従度
に対応した移動平均次数αに基づいてピーク値の移動平
均を取り、それをダイナミクスとする。 ステップ788:動作『2』に対応したキーコード『C
♯3』のキーオンと、前記ステップ787によって得ら
れたダイナミクスを出力し、図2のステップ8に進む。
【0036】ステップ789:前記ステップ781で動
作種類『3』のピークである(NO)と判定されたの
で、ここでは、前回の動作種類が『1』であるかどうか
を判定し、『1』(YES)の場合にはステップ78A
に進み、『2』(NO)の場合にはステップ78Bに進
む。すなわち、2拍子や4拍子における上下手振り運動
では動作『1』のピークと動作『2』ピークが交互に現
れ、3拍子における三角形手振り運動では動作『1』の
ピーク、動作『2』のピーク、動作『3』のピークが順
番に現れる。従って、動作『1』から動作『3』に移行
する場合と、動作『2』から動作『3』に移行する場合
とでは角速度センサの出力値も異なる。そこで、ここで
は上下手振り運動の場合と三角形手振り運動の場合とで
動作『3』に対する係数値をそれぞれ異ならせるためで
ある。
【0037】ステップ78A:前記ステップ789で前
回の動作種類が『1』(YES)だと判定されたので、
そのピーク値に係数cを乗じる。すなわち、前回値レジ
スタNOWに格納されているピーク値に係数cを乗じ、
その乗算値を再び前回値レジスタNOWに格納する。 ステップ78B:前記ステップ789で前回の動作種類
が『2』(NO)だと判定されたので、そのピーク値に
係数bを乗じる。すなわち、前回値レジスタNOWに格
納されているピーク値に係数bを乗じ、その乗算値を再
び前回値レジスタNOWに格納する。
【0038】例えば、振り降ろし動作時のピーク値が最
も大きく、次いで三角手振り運動における振り上げ動作
時のピーク値、三角手振り運動における横振り動作時の
ピーク値、上下手振り運動における振り上げ動作時のピ
ーク値の順番でその大きさが小さくなっている。従っ
て、三角手振り運動における動作種類『2』の横振り動
作の場合の係数aを1.75とし、動作種類『3』の振
り上げ動作の場合の係数bを1.5とし、上下手振り運
動における動作種類『3』の振り上げ動作の場合の係数
cを1.875とすることによって、全体的にダイナミ
クスの均一化を図ることができる。なお、これら係数値
は一例であり、操作者個々が任意に所望の値を設定して
もよいことはいうまでもない。
【0039】ステップ78C:前記ステップ782と同
様に、次のステップの移動平均の算出処理に備えて過去
16回分のピーク値を記憶している16個のレジスタL
AST16、LAST15、LAST14、・・・、L
AST1の値をそれぞれ更新する。 ステップ78D:前記ステップ783と同様に、追従度
に対応した移動平均次数αに基づいてピーク値の移動平
均を取り、それをダイナミクスとする。 ステップ78E:動作『3』に対応したキーコード『D
3』のキーオンと、前記ステップ78Dによって算出さ
れたダイナミクスを出力し、図2のステップ8に進む。
【0040】ステップ8:前々回値レジスタOLD、前
回値レジスタNOW及び今回値レジスタNEWのそれぞ
れの格納値に基づいた谷検出処理を行う。図6はこの谷
検出処理の詳細を示す図である。この谷検出処理は次の
ようなステップで順番に実行される。 ステップ80:前回値レジスタNOWの格納値が、前々
回値レジスタOLDの格納値以下であり、かつ、今回値
レジスタNEWの格納値以下であるかどうか、すなわち
前回のタイマ割り込みの時点で検出された移動平均値が
極小値(谷)かどうかの判定を行い、YESの場合は次
のステップ81に進み、NOの場合はリターンして次の
タイマ割り込みタイミングまで待機する。 ステップ81:前回のタイマ割り込みの時点が移動平均
値の極小値(谷)となった時点であると前記ステップ8
0で判定されたので、ここでは今回の谷判定時点が前回
の谷判定時点から起算して所定時間経過したかどうかの
判定を行い、所定時間経過している場合(YES)には
次のステップ82に進み、所定時間経過していない(N
O)場合には、今回の谷判定は誤りであると考えられる
のでリターンして次のタイマ割り込みタイミングまで待
機する。
【0041】ステップ82:前回値レジスタNOWの格
納値が一定しきい値よりも小さいかどうかを判定し、小
さい(YES)場合は次のステップ83に進み、大きい
(NO)場合は今回の谷判定が誤りであると考えられる
のでリターンして次のタイマ割り込みタイミングまで待
機する。 ステップ83:前回値レジスタNOWの格納値がダイナ
ミックしきい値レジスタDYNA_THREに格納され
ているダイナミックしきい値よりも小さいかどうかを判
定し、小さい(YES)場合は次のステップ84に進
み、大きい(NO)場合は今回の谷判定が誤りであると
考えられるのでリターンして次のタイマ割り込みタイミ
ングまで待機する。
【0042】ステップ84:今回のタイマ割り込みの時
点以前にピーク検出処理又は谷検出処理によって検出さ
れたのがピークかどうかの判定を行い、前回検出された
のがピーク(YES)の場合は今回検出された谷は正し
いと考えられるので次のステップ85に進み、前回検出
されたのが谷(NO)の場合は今回検出された谷は誤り
であると考えられるのでリターンして次のタイマ割り込
みタイミングまで待機する。 ステップ85:今回検出された極小値が正式な谷である
と判定する。以上のようにして、谷が検出されると、今
度は図3のピーク検出処理によってピークの検出が行わ
れるようになる。すなわち、図3のピーク検出処理と図
6の谷検出処理とが交互に行われることによってピーク
と谷の検出が確実に行われる。
【0043】次に、指揮棒20が操作者の身振り動作に
応じて動かされることによって、どのようにしてセンサ
出力処理を行うのか、その動作例を図8を用いて説明す
る。図8は、指揮棒20が三角形の軌跡を描くようにし
て3拍子の身振り動作に応じた三角手振り運動における
センサ出力処理の概念を示す模式図である。図8(A)
は指揮棒20が3拍子の三角手振り運動で動かされる場
合における絶対角速度の出力波形のようすを示す図であ
り、図8(B)は三角手振り運動における絶対角速度の
ピーク検出時点を示す図である。
【0044】指揮棒20が図8(B)のような三角手振
り運動で動かされると、ステップ3で算出される絶対角
速度の値は図8(A)のような形状となる。第1ピー
ク、谷、第2ピーク、谷、第3ピーク、谷の順番でそれ
ぞれピークと谷が交互に現れる。まず、指揮棒20が図
7において240°の方向(左斜め下方向)に振られる
と、ステップ70〜ステップ75の処理によって第1ピ
ークが検出される。そして、前回ピーク値レジスタLA
ST_PEAKに前回値レジスタNOWの格納値が格納
される。図4のステップ771の処理によって第1ピー
クは動作『1』のピークだと判定され。図8(B)では
第1ピークの検出時点が円で示されている。そして、ス
テップ78のダイナミクス算出処理によって第1ピーク
のピーク値に対応したダイナミクスがステップ782及
び783の処理によって算出され、動作種類『1』に対
応したキーコード『C3』のキーオンと共に出力される
ようになる。
【0045】その後、指揮棒20が図7において240
°の方向(左斜め下方向)から0°の方向(右側水平方
向)に振られると、その手振り動作の変化点で図6のス
テップ80〜ステップ85の処理によって今度は谷が検
出される。そして、指揮棒20が図7において0°の方
向(右側水平方向)に振られると、それに応じて今度は
第2ピークが動作『2』のピークとして検出され、この
第2ピークのピーク値に対応したダイナミクスがステッ
プ785、786及び787の処理によって算出され、
キーコード『C♯3』のテンポキーオン信号と共に出力
されるようになる。
【0046】指揮棒20が図7において0°の方向(右
側水平方向)から120°の方向(左斜め上方向)に振
られると、その手振り動作の変化点で谷が検出される。
その後、今度は第3ピークが動作『3』のピークとして
検出される。この第3ピークのピーク値に対応したダイ
ナミクスがステップ78B、78C及び78Dの処理に
よって算出され、キーコード『D3』のテンポキーオン
信号と共に出力されるようになる。そして、再び指揮棒
20が図7において120°の方向(左斜め上方向)か
ら240°の方向(左斜め下方向)に振られると、その
手振り動作の変化点で谷が検出され、以後手振り動作に
応じて前述の処理が繰り返し実行される。
【0047】なお、図8(B)の右側には、指揮棒20
が上下方向に2拍子又は4拍子で手振り動作(又は揺動
動作)された場合のピーク検出時点が示してある。この
場合、指揮棒20が図7において270°の方向(下方
向)に振られると、第1ピークが動作『1』のピークと
して検出され、この第1ピークのピーク値に対応したダ
イナミクスがステップ782及び783の処理によって
算出され、キーコード『C3』のテンポキーオン信号と
共に出力される。その後、指揮棒20が図7において2
70°の方向(下方向)から90°の方向(上方向)に
振られると、その手振り動作の変化点で谷が検出され、
今度は第2ピークが動作『3』のピークとして検出さ
れ、この第2ピークのピーク値に対応したダイナミクス
がステップ78A、78C及び78Dの処理によって算
出され、キーコード『D3』のテンポキーオン信号と共
に出力されるようになる。そして、再度指揮棒20が図
7において90°の方向(上方向)から270°の方向
(下方向)に振られると、その手振り動作の変化点で谷
が検出され、前述の処理が繰り返し実行される。
【0048】このようにして、操作者が指揮棒20を動
かすことによって、指揮棒20は操作者の手振り動作に
応じて操作者の意図したインターバルでテンポキーオン
信号を出力すると共に意図したダイナミクスを出力する
ことができるようになるため、このテンポキーオン信号
及びダイナミクスに応じて電子楽器1Hがシーケンスデ
ータの再生を行うことによりテンポや演奏ダイナミクス
を任意に制御することができるようになる。なお、後述
するようにテンポキーオン信号の出力タイミングと自動
演奏の拍タイミングとがほぼ一致するように、電子楽器
1Hにおいて自動演奏のテンポを制御するようになって
いるので、操作者が意図する拍タイミングと自動演奏の
拍タイミングとは一致することとなる。
【0049】次に、このテンポキーオン信号を入力する
ことによって、電子楽器1H内のマイクロコンピュータ
(CPU11)がどのようにして楽音の再生処理を行う
のかその一例を図9〜図13のフローチャートに基づい
て説明する。図9は電子楽器1H内のマイクロコンピュ
ータ(CPU11)が処理する楽音の再生処理の一例を
示す図である。この再生処理はタイマ19からの動作ク
ロック(周期約1ms)に同期して実行されるタイマ割
り込み処理である。この再生処理はプログラムROM1
2に格納されている制御プログラムに応じた一連の処理
であり、次のようなステップで順番に実行される。
【0050】ステップ40:走行状態フラグRUNが
『1』かどうかを判定し、『1』(YES)の場合は自
動演奏データの再生処理を行うことを意味するので次の
ステップ41以降に進み、『0』(NO)の場合は再生
処理を行わないことを意味するので直ちにリターンし、
次の割り込みタイミングまで待機する。 ステップ41:一時停止フラグPAUSEが『0』かど
うかを判定し、『0』(YES)の場合は一時停止中な
ので次のステップ42に進み、『1』(NO)の場合は
ステップ4Bにジャンプする。一時停止については後述
する。 ステップ42:タイミングカウンタTIMEが『0』か
どうかを判定し、『0』(YES)の場合は次のステッ
プ43に進み、『0』以外の値(NO)の場合は次のス
テップ49にジャンプする。
【0051】ステップ43:ステップ42又はステップ
47でタイミングカウンタTIMEが『0』だと判定さ
れたので、ここでは、RAM12のアドレスを進め、そ
のアドレス位置から自動演奏データを読み出す。自動演
奏データはイベントデータ(チャンネルナンバを含む)
とデルタタイムデータとの組み合わせ複数で構成され
る。 ステップ44:前記ステップ43で読み出されたデータ
はデルタタイムデータかどうかを判定し、デルタタイム
データ(YES)の場合はステップ45に進み、そうで
ない他のイベントデータ(NO)の場合はステップ46
に進む。 ステップ45:タイミングカウンタTIMEにステップ
43で読み出されたデルタタイムデータを格納する。
【0052】ステップ46:ステップ43で読み出され
たイベントデータに対応した処理(イベント対応処理)
を実行する。図10はこのイベント対応処理の詳細を示
す図である。このイベント対応処理は次のようなステッ
プで順番に実行される。 ステップ460:この実施例では自動演奏データが1〜
16チャンネルのデータを含み、そのうちのチャンネル
ナンバCH1をテンポ制御用及び追従度制御用のチャン
ネルとし、キーオンイベントをテンポ制御用マークと
し、キーオフイベントを追従度制御用マークとして使用
している。従って、ここでは、前記ステップ43で読み
出されたイベントデータがチャンネルナンバCH1のイ
ベントかどうかを判定し、YESの場合はステップ46
1に進み、NOの場合はこれ以外のチャンネルナンバの
イベントなのでステップ467に進む。なお、チャンネ
ルナンバCH1のキーオンイベントは、各拍タイミング
の位置に記憶されており、各イベントのキーコードは、
3拍子の曲の場合はC3,C♯3,D3,C3,C♯
3,D3・・・の順に、2,4拍子の場合はC3,D
3,C3,D3の順に並んでいる。また、チャンネルナ
ンバCH1のキーオフイベントは、追従度を変更するた
めの任意の位置に記憶されており、各イベントのキーコ
ードはA,B,Cのいずれかである。なお、チャンネル
ナンバCH1のキーオンイベント、キーオフイベントを
それぞれテンポ制御用マーク、追従度制御用マークとし
て利用したが、各マークを表す専用のデータを持つよう
にしてもよい。
【0053】ステップ461:前記ステップ460でチ
ャンネルナンバCH1のイベントだと判定されたので、
ここでは、そのイベントが追従度制御用のキーオフイベ
ントかどうかを判定し、追従度制御用のキーオフイベン
ト(YES)の場合はステップ462に進み、テンポ制
御用のキーオンイベント(NO)の場合はステップ46
3に進む。 ステップ462:前記ステップ461で追従度制御用の
キーオフイベントだと判定されたので、ここでは、キー
コードすなわち追従度に応じて図14に示される移動平
均次数、差分リミット、下限値、上限値を、対応する各
レジスタα、β、γ、δに格納し、ステップ47に進
む。
【0054】ステップ463:前記ステップ461でテ
ンポ制御用のキーオンイベントだと判定されたので、こ
こでは、キーオンレシーブフラグKON_RCVが
『1』かどうかを判定し、『1』(YES)の場合はス
テップ464に進み、『0』(NO)の場合はステップ
465に進む。 ステップ464:前記ステップ463でキーオンレシー
ブフラグKON_RCVが『1』であるということは、
チャンネルナンバCH1のテンポ制御用のキーオンイベ
ントが読み出される前に指揮棒20からMIDIインタ
ーフェイス27及び1Bを介して既にテンポキーオン信
号が入力したことを意味するので、ここでは、そのキー
オンレシーブフラグKON_RCVに『0』をセット
し、ステップ47に進む。
【0055】ステップ465:前記ステップ463でキ
ーオンレシーブフラグKON_RCVが『0』であると
いうことは、前記ステップ43で読み出されたチャンネ
ルナンバCH1のテンポ制御用のキーオンイベントに対
応したテンポキーオン信号が未だ入力していないことを
意味するので、ここでは、そのキーコードレジスタKE
YCODEに読み出されたテンポ制御用のキーオンイベ
ントのキーコードを格納する。 ステップ466:テンポキーオン信号が未だ入力してい
ないので、一時停止フラグPAUSEに『1』をセット
し、次のステップ47に進む。一時停止フラグPAUS
Eに『1』がセットされることによって、これ以降はス
テップ41の判定がNOとなり、ステップ42〜4Aは
実行されなくなる。
【0056】ステップ467:前記ステップ460でチ
ャンネルナンバCH1以外のイベントだと判定されたの
で、ここでは、そのイベントを音源回路17に出力す
る。このとき、イベントがノートイベントの場合には図
3のステップ78によって算出されたダイナミクスに応
じてベロシティを修正する。このベロシティの修正によ
って指揮棒20の振りの速さなどの動作に応じて楽音の
音量を任意に制御することができる。なお、ベロシティ
以外の要素、例えば音色、ピッチ、効果などを任意に制
御するようにしてもよい。
【0057】ステップ47:前記ステップ45で読み出
されたデルタタイムデータが『0』の場合があるので、
ここでは再びタイミングカウンタTIMEが『0』がど
うかを判定し、『0』(YES)の場合は次のステップ
43に進み、『0』以外の値(NO)の場合は次のステ
ップ49にジャンプする。デルタタイムデータが『0』
ということは、同じタイミングに複数イベントが存在す
ることを意味する。 ステップ48:タイミングレジスタTIMEの格納値に
テンポ係数レジスタT_COEFの格納値(テンポ係
数)を乗じる。ここで、テンポ係数は『1』を基準とし
た値で、この値に応じてテンポが制御される。例えば、
テンポ係数が『0.5』であったときはテンポは2倍と
なり、『2』であったときはテンポは半分となる。
【0058】ステップ49:タイミングレジスタTIM
Eの値を『1』だけデクリメント処理する。 ステップ4A:デルタアキュムレートレジスタDELT
A_ACMの値を『1』だけインクリメント処理する。
デルタアキュムレートレジスタDELTA_ACMはチ
ャンネルナンバCH1から読み出されるイベント間の時
間を計時するものである。 ステップ4B:インターバルレジスタINTERVAL
の値を『1』だけインクリメント処理する。インターバ
ルレジスタINTERVALは指揮棒20から送信され
てくるテンポキーオン信号の時間間隔を計時するもので
ある。
【0059】ステップ4C:テンポキーオン受信処理を
行う。このテンポキーオン受信処理は指揮棒20からテ
ンポキーオン信号を受信する毎に行われる処理である。
従って、テンポキーオン信号が受信されない場合には実
質的な処理は行われない。図11はこのテンポキーオン
受信処理の詳細を示す図である。このテンポキーオン受
信処理は次のようなステップで順番に実行される。 ステップ4C0:指揮棒20からMIDIインターフェ
イス27及び1Bを介してテンポキーオン信号の受信有
りかどうかを判定し、受信有り(YES)の場合はステ
ップ4C1に進み、受信無し(NO)の場合は図9の再
生処理にリターンし、次の割り込みタイミングまで待機
する。
【0060】ステップ4C1:一時停止フラグPAUS
Eが『1』かどうかを判定し、『1』(YES)の場合
はステップ4C2に進み、『0』(NO)の場合はステ
ップ4C9に進む。 ステップ4C2:前記ステップ4C1で一時停止フラグ
PAUSEが『1』であると判定されたということは、
テンポキーオン信号の受信よりも先にチャンネルナンバ
CH1のテンポ制御用のキーオンイベントデータが読み
出され、そのキーコードがステップ465で既にキーコ
ードレジスタKEYCODEに格納されたことを意味す
るので、ここでは、その受信テンポキーオン信号のキー
コードとキーコードレジスタKEYCODEに格納され
ているキーコードとが一致するかどうかを判定し、一致
する(YES)場合はステップ4C3に進み、一致しな
い(NO)場合は図9の再生処理にリターンし、次の割
り込みタイミングまで待機する。
【0061】ステップ4C3:インターバルレジスタI
NTERVALの値とデルタアキュムレートレジスタD
ELTA_ACMの値との比をレートレジスタRATE
に格納する。すなわち、指揮棒20から送信されてくる
テンポキーオン信号の時間間隔と、実際にチャンネルナ
ンバCH1のイベントが読み出される時間間隔との比が
レートレジスタRATEに格納される。 ステップ4C4:テンポ係数計算処理を行う。このテン
ポ係数計算処理は、前記ステップ4C3で算出されたレ
ートレジスタRATEの値と、ステップ462でセット
された追従度に対応した移動平均次数αとに基づいて新
たなテンポ係数を計算する処理である。図12はこのテ
ンポ係数計算処理の詳細を示す図である。なお、このテ
ンポ係数計算処理はステップ4CFでも実行されるもの
である。このテンポ係数計算処理は次のようなステップ
で順番に実行される。
【0062】ステップ4C51:過去16回分のテンポ
係数を記憶している16個のレジスタTC16、TC1
5、TC14、・・・、TC2の値をそれぞれ更新す
る。すなわち、レジスタTC15の格納値をレジスタT
C16に格納し、レジスタTC14の格納値をレジスタ
TC15に格納し、以下順次各レジスタの格納値をシフ
トし、レジスタTC1の格納値をレジスタTC2に格納
する。 ステップ4C52:テンポ係数レジスタT_COEFの
格納値(テンポ係数)に前記ステップ4C3で算出され
たレート値RATEを乗算し、その乗算値(T_COE
F×RATE)をレジスタTC1に格納する。
【0063】ステップ4C53:追従度に対応した移動
平均次数αに基づいてテンポ係数の移動平均を取り、そ
れを新たなテンポ係数としてテンポ係数レジスタT_C
OEFに格納する。この移動平均次数αは図14に示さ
れるように追従度A,B,Cに対応した値である。すな
わち、追従度Aの場合には移動平均次数αは1となり、
前記ステップ4C52で算出されたレジスタTC1の格
納値がそのまま新たなテンポ係数としてテンポ係数レジ
スタT_COEFに格納する。追従度Bの場合には移動
平均次数αは4となり、過去4回分のテンポ係数を格納
しているレジスタTC1、TC2、TC3及びTC4の
格納値を加算し、それを次数α=4で除して得られた移
動平均値((TC1+TC2+TC3+TC4)/4)
を新たなテンポ係数としてテンポ係数レジスタT_CO
EFに格納する。追従度Cの場合には移動平均次数αは
16となり、過去16回分のテンポ係数を格納している
レジスタTC1、TC2、・・・、TC16の格納値を
加算し、それを次数α=16で除して得られた移動平均
値((TC1+TC2+・・・+TC16)/16)を
新たなテンポ係数としてテンポ係数レジスタT_COE
Fに格納する。
【0064】ステップ4C5:前記ステップ4C4のテ
ンポ係数計算処理によって得られたテンポ係数の値や前
回値との差分が追従度に対応した所定の範囲内に収まる
ようにテンポ係数リミット処理を行う。図13はこのテ
ンポ係数リミット処理の詳細を示す図である。なお、こ
のテンポ係数リミット処理はステップ4CGでも実行さ
れるものである。このテンポ係数リミット処理は次のよ
うなステップで順番に実行される。 ステップ4C54:前記ステップ4C4のテンポ係数計
算処理によって得られたテンポ係数の値(今回値)と前
回のテンポキーオン受信処理のテンポ係数計算処理によ
って得られたテンポ係数の値(前回値)との差が追従度
に対応した差分リミットβの範囲内にあるかどうかを判
定し、差分リミットβの範囲内(YES)の場合はステ
ップ4C56に進み、差分リミットβの範囲外(NO)
の場合はステップ4C55に進む。 ステップ4C55:前記ステップ4C54で今回値と前
回値との差が所定の範囲外にある(NO)と判定された
ので、その差分値が差分リミットβ以内となるようにテ
ンポ係数レジスタT_COEFの値をリミットする。こ
の差分リミットβは図14に示されるように追従度A,
B,Cに対応した値である。すなわち、追従度Aの場合
の差分リミットβは0.2、追従度Bの場合の差分リミ
ットβは0.1、追従度Cの場合の差分リミットβは
0.05である。従って、追従度に応じて今回値と前回
値との差すなわちテンポ係数の変化の大きさが異なるよ
うになっている。
【0065】ステップ4C56:前記ステップ4C4の
テンポ係数計算処理によって得られたテンポ係数の値
が、追従度に対応した下限値γ以上であり上限値δ以下
であるかどうかを判定し、YESの場合は図11のステ
ップ4C6に進み、NOの場合はステップ4C57に進
む。 ステップ4C57:前記ステップ4C56でテンポ係数
の値が所定の範囲外にある(NO)と判定されたので、
そのテンポ係数の値が下限値γ以上、上限値δ以下とな
るようにテンポ係数レジスタT_COEFの値をリミッ
トする。この下限値γ及び上限値δは図14に示される
ように追従度A,B,Cに対応した値である。すなわ
ち、追従度Aの場合の下限値γは0.5、上限値δは
2.0、追従度Bの場合の下限値γは0.7、上限値δ
は1.6、追従度Cの場合の下限値γは0.8、上限値
δは1.2である。従って、追従度に応じてテンポ係数
の取り得る値の範囲が異なるようになっている。
【0066】ステップ4C6:今回のテンポキーオン受
信時点から次のチャンネルナンバCH1のイベントが読
み出されるまでの時間間隔を計時するため、デルタアキ
ュムレートレジスタDELTA_ACMに『0』をセッ
トする。 ステップ4C7:今回のテンポキーオン受信時点から次
のテンポキーオン信号が受信されるまでの時間間隔を計
時するため、インターバルレジスタINTERVALに
『0』をセットする。 ステップ4C8:一時停止フラグPUASEに『0』を
セットする。これによって図9の再生処理が再び開始す
るようになる。
【0067】ステップ4C9:前記ステップ4C1で一
時停止フラグPAUSEが『0』であると判定されたと
いうことは、チャンネルナンバCH1のイベントデータ
がまだ読み出されていないことを意味するので、この時
点以降に最初に現れる次のチャンネルナンバCH1のイ
ベントをサーチして読み出す。 ステップ4CA:受信テンポキーオン信号のキーコード
とサーチしたチャンネルナンバCH1のキーコードとが
一致するかどうかを判定し、一致する(YES)場合は
ステップ4CAに進み、一致しない(NO)場合は図9
の再生処理にリターンし、次の割り込みタイミングまで
待機する。
【0068】ステップ4CB:前記ステップ4C8でサ
ーチしたチャンネルナンバCH1のイベントがサーチさ
れるまでに読み出された各イベントのデルタタイムデー
タの累算値にテンポ係数レジスタT_COEFのテンポ
係数を乗じたものと、その時点におけるタイミングレジ
スタTIMEの値とをデルタアキュムレートレジスタD
ELTA_ACMに加算する。 ステップ4CC:前記ステップ4C8でサーチしたイベ
ントまでのデルタタイム及びタイミングレジスタTIM
Eの値に1/Kを乗じる。ここでKは1以上の値とす
る。すなわち、指揮棒20からのテンポキーオン信号を
受信した時点以降の再生速度を上げて、テンポキーオン
信号受信タイミングと拍タイミングとを近づけるため
に、各イベントのデルタタイム及びタイミングレジスタ
TIMEの値を小さくする。 ステップ4CD:キーオンレシーブフラグKON_RC
Vに『1』をセットし、ステップ4CEに進む。ステッ
プ4CEからステップ4CJまでは前記ステップ4C3
から前記ステップ4C7までと同じなので、その説明は
省略する。
【0069】次に、このテンポキーオン信号を入力する
ことによって、電子楽器1H内のマイクロコンピュータ
(CPU11)がどのように再生処理を行うのか、その
動作例を図15を用いて説明する。図15は、指揮棒2
0から電子楽器1Hに取り込まれるテンポキーオン信号
の入力タイミングと、自動演奏データの読み出しタイミ
ンイグとの関係を示す図である。指揮棒20は図8のよ
うに三角手振り動作されるものとする。曲は全部で12
小節で構成され、初めの3小節が追従度Bであり、中間
の6小節が追従度Cであり、終わりの3小節が追従度A
で構成されているとする。図では、この追従度Cから追
従度Aに切り換わる部分のテンポキーオン信号の入力タ
イミングと自動演奏データの読み出しタイミングとの関
係を示している。
【0070】タイミングt1では図9のステップ40〜
ステップ42を経て、ステップ43でチャンネルナンバ
CH1のキーオフイベントすなわち追従度Aのキーオフ
イベントが読み出され、図10のステップ462でその
追従度Aに対応した値が各レジスタレジスタα、β、
γ、δに格納される。そして、次のステップ43でデル
タタイムD0が読み出され、ステップ45でタイミング
レジスタTIMEにそのデルタタイムD0が書き込まれ
る。ここで、デルタタイムD0は『0』であり、同じタ
イミングにチャンネルナンバCH1のキーオンイベント
が存在することを示す。
【0071】従って、同じタイミングt1において、ス
テップ43でチャンネルナンバCH1のキーオンイベン
トすなわちテンポ制御用のキーオンイベントが読み出さ
れる。このタイミングt1ではまだテンポキーオン信号
は受信されていないので、図10のステップ460及び
ステップ461を経てステップ463でNOと判定さ
れ、ステップ465でテンポ制御用キーオンイベントの
キーコード『C3』がキーコードレジスタKEYCOD
Eに格納され、一時停止フラグPAUSEに『1』がセ
ットされる。そして、次のステップ43でデルタタイム
D1が読み出され、ステップ45でタイミングレジスタ
TIMEにそのデルタタイムD1が書き込まれる。
【0072】タイミングt1よりも少し遅れたタイミン
グt2で今度は指揮棒20から電子楽器1Hに対してキ
ーコード『C3』のテンポキーオン信号とダイナミクス
が送信される。これによって、図11のテンポキーオン
受信処理のステップ4C0〜ステップ4C2を経て、ス
テップ4C3〜ステップ4C8の処理が行われる。この
とき、チャンネルナンバCH1のキーオンイベントとほ
とんど同じタイミングでテンポキーオン信号が受信され
たので、インターバルレジスタINTERVALの値と
デルタアキュムレートレジスタDELTA_ACMの値
との比はほぼ1に近い値である。従って、ステップ4C
3ではレートレジスタRATEにはその1に近い値が新
たに格納される。ステップ4C4ではテンポ係数レジス
タT_COEFには前回とほとんど同じ値のテンポ係数
が格納される。ステップ4C6〜ステップ4C8ではイ
ンターバルレジスタINTERVAL、デルタアキュム
レートレジスタDELTA_ACM及び一時停止フラグ
PAUSEに『0』がセットされる。
【0073】その後、デルタタイムD1に対応する時間
が経過することよって、タイミングレジスタTIMEの
値も0となり、タイミングt3ではチャンネルナンバC
H2のイベントが読み出され、図10のステップ467
でそのイベントが音源回路に出力される。このとき、ノ
ートイベントのベロシティは受信されたダイナミクスに
応じて修正される。次のステップ43でデルタタイムD
2が読み出され、ステップ45でタイミングレジスタT
IMEにそのデルタタイムD2が書き込まれる。以下、
同様にして各タイミングt3〜t7でチャンネルナンバ
CH3〜CH6のイベント及びデルタタイムD3〜D6
が順次読み出され、それぞれのイベントが音源回路に出
力される。
【0074】その後、デルタタイムD6に対応する時間
を計時中(タイミングレジスタTIMEのデクリメント
処理中)のタイミングt8で今度は指揮棒20から電子
楽器1Hに対してキーコード『C♯3』のテンポキーオ
ン信号とダイナミクスが受信される。これによって、図
11のテンポキーオン受信処理のステップ4C0及びス
テップ4C1を経て、ステップ4C9〜4CJの処理が
行われる。ステップ4C9ではチャンネルナンバCH1
のキーコード『C♯3』のイベントがサーチされる。そ
して、ステップ4CAを経て、ステップ4CBの処理が
行われる。ステップ4CBでは、チャンネルナンバCH
1のイベントがサーチされるまでの間にデルタタイムは
存在しなかったので、ここではデルタタイムの累算値は
『0』であり、タイミングレジスタTIMEの値だけが
デルタアキュムレートレジスタDELTA_ACMに加
算される。これによって、デルタアキュムレートレジス
タDELTA_ACMの値とインターバルレジスタIN
TERVALの値との関係は、デルタアキュムレートD
ELTA_ACMの方がインターバルレジスタINTE
RVALよりも大きくなる。
【0075】ステップ4CCではテンポキーオン信号を
受信したタイミングt8以降の再生速度を上げる(テン
ポをアップする)ために、各イベントのデルタタイム及
びタイミングレジスタTIMEの値にK分の1を乗じる
が、ここではチャンネルナンバCH1のイベントがサー
チされるまでの間にデルタタイムは存在しなかったの
で、タイミングレジスタTIMEの値にK分の1が乗じ
られる。ステップ4CDではキーオンレシーブフラグK
ON_RCVに『1』がセットされ、ステップ4CE〜
ステップ4CJではインターバルレジスタINTERV
ALの値とデルタアキュムレートレジスタDELTA_
ACMの値との比(1より小さい値)がレートレジスタ
RATEに新たに格納される。ステップ4CFではテン
ポ係数レジスタT_COEFに前回よりも小さなテンポ
係数が格納される。ステップ4CH及びステップ4CJ
ではデルタアキュムレートレジスタDELTA_ACM
及びインターバルレジスタINTERVALに『0』が
セットされる。
【0076】その後、タイミングレジスタTIMEの値
が0となり、タイミングt9でチャンネルナンバCH1
のテンポ制御用のキーオンイベント『C♯3』が読み出
されることによって、図10のステップ464でキーオ
ンレシーブフラグKON_RCVに『0』がセットされ
る。以下、同様にして各タイミングでチャンネルナンバ
のイベント及びデルタタイムがテンポ係数レジスタT_
COEFに格納されている1よりも小さなテンポ係数に
よって修正を加えられながら順次読み出され、それぞれ
のイベントが受信されたダイナミクスによって修正され
ながら音源回路に出力されるようになる。すなわち、指
揮棒20からのテンポキーオン信号の受信タイミングの
方が自動演奏データの読み出しタイミングよりも早い場
合には自動演奏データの再生処理のテンポがアップし、
逆の場合には自動演奏データの再生処理のテンポがダウ
ンする。
【0077】なお、上述の実施例では、追従度に関する
各種値の一例として図14のようなものを用いて説明し
たが、これに限らず、各種値を適宜変更可能としてもよ
い。例えば、ユーザが任意に設定できるようにしてもよ
いし、複数の値のセットを予め用意しておき、その中か
らいずれかを選択するようにしてもよい。また、曲毎に
最適なセットを1又は複数持たせるようにしてもよい
し、複数セットを用意しておき、その中から曲に応じた
最適なセットを自動的に選択するようにしてもよい。ま
た、追従度は3種類に限らず、2種類でも4種類以上で
もよい。追従度に応じて移動平均次数、差分リミット、
下限値、上限値の4つの値をそれぞれ用いてテンポ係数
やダイナミクスを制御する場合について説明したが、こ
れらの一部を適宜組み合わせてもよいし、他の条件を制
御するようにしてもよい。
【0078】実施例では、指揮棒などのように操作者の
身振り動作に応じてテンポ制御信号及びダイナミクスを
発生するものを例に説明したが、これに限らず、タッピ
ング操作や演奏操作子の操作によってテンポ制御信号を
発生するようにしてもよい。また、実施例では、動作種
類として3種類の場合について説明したが、もっと多く
の動作種類を検出するようにしてもよい。
【0079】なお、上述の実施例では、身振り動作を検
出するためのセンサとして、圧電ジャイロセンサに限ら
ず、加速度センサや、磁気や光を用いたものであっても
よい。例えば、身振り動作を撮像し、画像処理によって
身振り動作を検出するようなものでもよい。また、これ
らのセンサを複数個組み合わせてもよい。また、上述の
実施例では、身振り動作の特徴点として圧電ジャイロセ
ンサからの出力のピーク及び谷を抽出する場合について
説明したが、これに限らず、センサの種類を変えるなど
して、他の条件を用いてその特徴点を抽出するようにし
てもよい。さらに、上述の実施例では、MIDIインタ
ーフェイスを介して接続された指揮棒20と電子楽器1
Hを例に説明したが、両者を一体で構成してもよいこと
はいうまでもない。また、電子楽器1Hの発生するテン
ポクロックを外部装置に供給して、外部装置の演奏テン
ポを制御するように構成してもよい。
【0080】上述の実施例では、指揮棒20がピーク及
び谷を検出し、さらにその動作種類を検出する場合につ
いて説明したが、指揮棒20は単に身振り動作に応じた
センサ値を出力し、電子楽器1H側でこの出力に応じた
検出(ピーク及び谷検出、動作種類検出)処理などを行
うようにしてもよいことはいうまでもない。また、上述
の実施例では、圧電ジャイロセンサを2つを用いて身振
り動作を検出する場合について説明したが、3つ以上用
いてもよいことはいうまでもない。この場合、3拍子用
と、2/4拍子用とで異なる位置に設けられたセンサを
それぞれ用いてもよいし、3つ以上のセンサ出力を総合
判断して身振り動作を検出するようにしてもよい。
【0081】また、上述の実施例では、センサを指揮棒
に内蔵する場合について説明したが、操作者の身体(例
えば手など)に装着したり、マイクやその他の機器(例
えばカラオケ装置のリモコンなど)に内蔵したりしても
よい。この場合、センサ出力の送出は有線又は無線で行
えばよい。例えば、マイクに内蔵した場合、カラオケの
イントロ部分でのみテンポ制御を有効とし、マイクの身
振り動作に応じてカラオケの演奏テンポが決定されるよ
うにすればよい。実施例では演奏中常にテンポを制御す
る場合について説明したが、演奏に先立ってテンポを決
定する場合に用いてもよい。実施例では、演奏データが
イベントとデルタタイムから構成される場合について説
明したが、これ以外の記憶方式であってもよいことはい
うまでもない。例えば、演奏データをイベントと絶対時
間との組で構成する。また、デルタタイムの単位にはm
sなどの時間の単位を用いても、音符の長さ(例えば4
分音符の1/24など)を用いてもよい。
【0082】実施例では、テンポの制御は、デルタタイ
ムの値にテンポ係数を乗じ、デルタタイムの値を増減さ
せることによって行う場合について説明したが、処理の
周期(割り込みタイミング)を変化させることによって
テンポを変化させるようにしてもよい。実施例では、テ
ンポ制御用のデータと自動演奏用のデータを混在させ、
チャンネルナンバで区別する場合について説明したが、
両者を予め別々に設けてもよい。例えば、テンポを制御
する音符位置に対応するメモリのアドレスを記憶したも
のを、テンポ制御用データとしてもよい。テンポが滑ら
かに変化するように、テンポが変化したとき、テンポ係
数レジスタT_COEFの値を前の値と補間するように
してもよい。ダイナミクスの制御も同様に滑らかに変化
させてもよい。
【0083】実施例では、ピーク値に所定値を乗算して
ダイナミクスを算出する場合について説明したが、所定
値を加算してダイナミクスを算出してもよい。また、ピ
ークの大きさの変化に基づいて、乗算又は加算する値を
変化させてもよいし、複数の所定値の中から選択できる
ようにしてもよい。また、複数のテーブルを備えてお
き、ピークの大きさに応じていずれかのテーブルを適宜
選択するようにし、テーブル参照によってダイナミクス
を求めてもよい。上述の実施例ではダイナミクスに応じ
てベロシティを変化させる場合について説明したが、ダ
イナミクスに応じて音色、音高、効果などを変化させる
ようにしてもよい。また、これに限らず、演奏パート数
などを増減するようにしてもよいし、これらの少なくと
も1つを制御することで演奏のダイナミクスを制御する
ようにしてもよい。
【0084】実施例では、ダイナミクスとテンポの場合
とで同じ移動平均次数αを用いる場合について説明した
が、それぞれ異ならせてもよい。また、ダイナミクス算
出処理を指揮棒20側で行う場合について説明したが、
電子楽器1H側で行ってもよい。実施例では、テンポキ
ーオン信号の受信よりも先にチャンネルナンバCH1の
テンポ制御用のキーオンイベントデータが読み出された
場合と、逆にテンポキーオン信号の受信後にチャンネル
ナンバCH1のテンポ制御用のキーオンイベントデータ
が読み出された場合とで同じ移動平均次数α、差分リミ
ットβ、下限値γ、上限値δに基づいてテンポ係数計算
処理及びテンポ係数リミット処理を行う場合について説
明したが、両方の場合でこれらの各種値を異ならせても
よい。例えば、テンポキーオン信号の受信がキーオンイ
ベントデータの読み出しよりも先にあった場合における
各種値を、テンポキーオン信号の受信がキーオンイベン
トデータの読み出し後にあった場合における各種値より
も大きくすることによって、テンポアップの方を敏感に
反応させ、テンポダウンの方をやや鈍く反応させること
ができる。
【0085】
【発明の効果】この発明の演奏制御装置によれば、テン
ポやダイナミクスなどの音楽特性を表情豊かな思い入れ
を込めて大きく変動させて演奏したい場合や、あまり変
動させずに安定して演奏したい場合などのような相異な
る演奏形態を1つの曲の中で両立させることができる。
【図面の簡単な説明】
【図1】 電子楽器と、この電子楽器に操作者の手振り
動作に応じたテンポ制御信号を出力する指揮棒との詳細
構成及び両者間の接続関係を示すハードブロック図であ
る。
【図2】 図1の指揮棒内のマイクロコンピュータが処
理するセンサ出力処理の一例を示す図である。
【図3】 図2の中のピーク検出処理ステップの詳細を
示す図である。
【図4】 図3の中のピーク種類判定処理ステップの詳
細を示す図である。
【図5】 図3の中のダイナミクス算出処理ステップの
詳細を示す図である。
【図6】 図2の中の谷検出処理ステップの詳細を示す
図である。
【図7】 演算式によって求められた角度θと動作種類
との関係を示す図である。
【図8】 指揮棒が三角形の軌跡を描くようにして3拍
子で手振り動作される場合のセンサ出力処理の概念を示
す模式図である。
【図9】 電子楽器内のマイクロコンピュータが処理す
る楽音の再生処理の一例を示す図である。
【図10】 図9の中のイベント対応処理ステップの詳
細を示す図である。
【図11】 図9の中のテンポキーオン受信処理ステッ
プの詳細を示す図である。
【図12】 図11の中のテンポ係数計算処理ステップ
の詳細を示す図である。
【図13】 図11の中のテンポ係数リミット処理ステ
ップの詳細を示す図である。
【図14】 追従度と各種値との関係を表形式で示す図
である。
【図15】 指揮棒から電子楽器に取り込まれるテンポ
キーオン信号の入力タイミングと、自動演奏データの読
み出しタイミンイグとの関係を示す図である。
【符号の説明】
11,21…CPU、12,22…ROM、13,23
…RAM、14…押鍵検出回路、15,24…スイッチ
検出回路、16…表示回路、17…音源回路、18…効
果付与回路、19,28…タイマ、1A…フロッピーデ
ィスクドライブ(FDD)、1B,27…MIDIイン
ターフェイス(I/F)、1C…鍵盤、1D,29…パ
ネルスイッチ、1E…表示部、1F…サウンドシステ
ム、1G,2E…バス、1H…電子楽器、20…指揮
棒、25,26…A/D、2A…X方向圧電振動ジャイ
ロセンサ、2B…Y方向圧電振動ジャイロセンサ、2
C,2D…ノイズ除去回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−156594(JP,A) 特開 昭56−154797(JP,A) 特開 平4−133097(JP,A) 特開 平4−133095(JP,A) 特開 平5−173560(JP,A) 特開 平8−314454(JP,A) 特開 平6−67668(JP,A) 特開 平5−249957(JP,A) (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/00

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 自動演奏データを供給する演奏データ供
    給手段と、 前記自動演奏データに応じた演奏時に、その演奏の音楽
    特性に関するデータを時々刻々と変化させながら供給す
    る特性データ供給手段と、 前記音楽特性に関するデータの変化に対してどれだけ追
    従させて前記自動演奏データに応じた演奏を変化させる
    かを決定する追従度データを一連の演奏中において少な
    くとも1回変更して供給するものであって、該追従度デ
    ータは前記自動演奏データの中に含まれており、該自動
    演奏データの供給に伴って該追従度データを供給する
    従度データ供給手段と、 前記自動演奏データに応じた演奏を前記音楽特性に関す
    るデータ及び前記追従度データに従って行う制御手段と
    を備えることを特徴とする演奏制御装置。
  2. 【請求項2】 自動演奏データを供給する演奏データ供
    給手段と、 前記自動演奏データに応じた演奏時に、その演奏の音楽
    特性に関するデータを時々刻々と変化させながら供給す
    る特性データ供給手段と、 前記音楽特性に関するデータの変化に対してどれだけ追
    従させて前記自動演奏データに応じた演奏を変化させる
    かを決定する追従度データを一連の演奏中において少な
    くとも1回変更して供給する追従度データ供給手段と、 前記自動演奏データに応じた演奏を前記音楽特性に関す
    るデータ及び前記追従度データに従って行う制御手段と
    を備え、 前記制御手段は、前記特性データ供給手段から
    時々刻々と供給される前記音楽特性に関するデータを順
    次記憶し、それを追従度データに応じた個数で平均化
    し、前記自動演奏データに応じた演奏を前記平均化され
    た値に従って行うことを特徴とする演奏制御装置。
  3. 【請求項3】 自動演奏データを供給する演奏データ供
    給手段と、 前記自動演奏データに応じた演奏時に、その演奏の音楽
    特性に関するデータを時々刻々と変化させながら供給す
    る特性データ供給手段と、 前記音楽特性に関するデータの変化に対してどれだけ追
    従させて前記自動演奏データに応じた演奏を変化させる
    かを決定する追従度データを一連の演奏中にお いて少な
    くとも1回変更して供給する追従度データ供給手段と、 前記自動演奏データに応じた演奏を前記音楽特性に関す
    るデータ及び前記追従度データに従って行う制御手段と
    を備え、前記追従度データは複数の制御パラメータで構
    成され、 前記制御手段は、前記特性データ供給手段から
    時々刻々と供給すべき前記音楽特性に関するデータの
    化の追従度を該追従度データの各制御パラメータ毎に設
    定するよう該特性データ供給手段を制御するものである
    ことを特徴とする演奏制御装置。
  4. 【請求項4】 自動演奏データを供給する演奏データ供
    給手段と、 前記自動演奏データに応じた演奏時に、その演奏の音楽
    特性に関するデータを時々刻々と変化させながら供給す
    る特性データ供給手段と、 前記音楽特性に関するデータの変化に対してどれだけ追
    従させて前記自動演奏データに応じた演奏を変化させる
    かを決定する追従度データを一連の演奏中において少な
    くとも1回変更して供給する追従度データ供給手段と、 前記自動演奏データに応じた演奏を前記音楽特性に関す
    るデータ及び前記追従度データに従って行う制御手段と
    を備え、前記特性データ供給手段は複数種類の音楽特性
    に関するデータを夫々供給するものであり、 前記制御手
    段は、前記特性データ供給手段から時々刻々と供給すべ
    き各音楽特性に関するデータ毎の変化の追従度を前記追
    従度データに従ってそれぞれ設定するよう該特性データ
    供給手段を制御するものであることを特徴とする演奏制
    御装置。
  5. 【請求項5】 自動演奏データを供給する演奏データ供
    給手段と、 前記自動演奏データに応じた演奏時に、その演奏の音楽
    特性に関するデータを時々刻々と変化させながら供給す
    る特性データ供給手段と、 前記音楽特性に関するデータの変化に対してどれだけ追
    従させて前記自動演奏データに応じた演奏を変化させる
    かを決定する追従度データを一連の演奏中において少な
    くとも1回変更して供給する追従度データ供給手段と、 前記自動演奏データに応じた演奏を前記音楽特性に関す
    るデータ及び前記追従度データに従って行う制御手段と
    を備え、 前記特性データ供給手段は前記音楽特性に関す
    るデータとして演奏のダイナミクスに関するダイナミク
    ス制御データを供給することを特徴とする演奏制御装
    置。
JP16917595A 1995-06-12 1995-06-12 演奏制御装置 Expired - Fee Related JP3449045B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16917595A JP3449045B2 (ja) 1995-06-12 1995-06-12 演奏制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16917595A JP3449045B2 (ja) 1995-06-12 1995-06-12 演奏制御装置

Publications (2)

Publication Number Publication Date
JPH08339182A JPH08339182A (ja) 1996-12-24
JP3449045B2 true JP3449045B2 (ja) 2003-09-22

Family

ID=15881643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16917595A Expired - Fee Related JP3449045B2 (ja) 1995-06-12 1995-06-12 演奏制御装置

Country Status (1)

Country Link
JP (1) JP3449045B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003015648A (ja) * 2001-06-28 2003-01-17 Kawai Musical Instr Mfg Co Ltd 電子楽音発生装置及び自動演奏方法
JP5461070B2 (ja) * 2009-06-08 2014-04-02 株式会社総合車両製作所 レーザ溶接システムの異常検出方法
JP5600968B2 (ja) * 2010-03-03 2014-10-08 カシオ計算機株式会社 自動演奏装置および自動演奏プログラム

Also Published As

Publication number Publication date
JPH08339182A (ja) 1996-12-24

Similar Documents

Publication Publication Date Title
US5663514A (en) Apparatus and method for controlling performance dynamics and tempo in response to player's gesture
US20040040434A1 (en) Sound generation device and sound generation program
JP2005219631A (ja) 再生制御装置、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
JP2001215963A (ja) 音楽演奏装置、音楽演奏ゲーム装置及び記録媒体
JPH04274498A (ja) 自動演奏装置
JP3449045B2 (ja) 演奏制御装置
JP3750699B2 (ja) 楽音再生装置
JP3452792B2 (ja) カラオケ採点装置
JP3149736B2 (ja) 演奏ダイナミクス制御装置
JP3152104B2 (ja) テンポ制御装置
JP2009031549A (ja) メロディ表示制御装置及びカラオケ装置
JP3720004B2 (ja) 音楽制御装置
JP3259602B2 (ja) 自動演奏装置
JPH1039863A (ja) 自動伴奏装置
JPH08278786A (ja) ホロニック・リズム・ジェネレータ装置
JP3427569B2 (ja) 音楽制御装置
JP3627321B2 (ja) 演奏制御装置
JP3293521B2 (ja) 発音タイミング制御装置
JPS62187393A (ja) 電子楽器のタツチレスポンス装置
JP4108850B2 (ja) 歌唱による標準的なカロリー消費量を試算する方法およびカラオケ装置
US20020046639A1 (en) Method and apparatus for waveform reproduction
JPH08314455A (ja) 音楽制御装置
JP2024053144A (ja) 自動演奏装置及び自動演奏プログラム
JP3279122B2 (ja) テンポ制御装置
JP2007279490A (ja) 電子楽器

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090711

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090711

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100711

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100711

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120711

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130711

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees