JPH0990941A - 演奏制御装置 - Google Patents
演奏制御装置Info
- Publication number
- JPH0990941A JPH0990941A JP7273518A JP27351895A JPH0990941A JP H0990941 A JPH0990941 A JP H0990941A JP 7273518 A JP7273518 A JP 7273518A JP 27351895 A JP27351895 A JP 27351895A JP H0990941 A JPH0990941 A JP H0990941A
- Authority
- JP
- Japan
- Prior art keywords
- value
- tempo
- control information
- peak
- data
- 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
Links
- 238000001514 detection method Methods 0.000 claims abstract description 37
- 230000033001 locomotion Effects 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 40
- 238000000034 method Methods 0.000 abstract description 84
- 230000008569 process Effects 0.000 abstract description 82
- 238000006243 chemical reaction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 6
- 230000005484 gravity Effects 0.000 description 4
- GHOKWGTUZJEAQD-ZETCQYMHSA-N (D)-(+)-Pantothenic acid Chemical compound OCC(C)(C)[C@@H](O)C(=O)NCCC(O)=O GHOKWGTUZJEAQD-ZETCQYMHSA-N 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 241001494479 Pecora Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000005389 magnetism Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
Landscapes
- Feedback Control In General (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
において、動作特徴点の検出や動作種類の判別に関する
信頼性を高め、安定した音楽演奏を可能にする。 【解決手段】 揺動分析装置10は、指揮棒32に設け
たx,y方向の角速度センサの出力X,Yに基づいて絶
対角速度のピークを検出し且つ何拍目のピークか判別す
る際にファジィ推論処理を行なうことによりピーク発生
周期に対応してテンポ制御情報TCを発生し且つピーク
の大きさに対応してダイナミクス制御情報DCを発生す
る。自動演奏装置では、テンポ制御情報TCに応じて演
奏のテンポを制御すると共にダイナミクス制御情報DC
に応じて音量等の演奏音特性を制御する。
Description
動作に応答する演奏制御装置に関し、特に動作特徴点の
検出や動作種類の判別にファジィ推論処理を適用するこ
とにより制御の信頼性を高め、安定した音楽演奏を可能
にしたものである。
からピーク等の特徴点を検出したり、振り下ろし等の動
作種類を判別したりするために、フィルタ処理(平均化
処理)や大小比較処理等の信号処理を用いることが提案
されている。
極めて曖昧且つ不安定である。このため、上記したよう
な単純な信号処理だけでは、検出や判別の精度が低く、
検出ミスや判別誤りが頻繁に発生した。従って、検出結
果や判別結果に応じて例えば自動演奏のテンポを制御し
ようとしても、(イ)ユーザーがシステムに慣れる(機
械にふさわしい動作をする)のに時間がかかること、
(ロ)動作意図と異なる反応(誤動作)が生じるため、
制御の信頼性が低く、安定した音楽演奏が困難であるこ
となどの不都合を免れなかった。
頼性の高い演奏制御をなしうる新規な演奏制御装置を提
供することにある。
奏制御装置は、揺動動作を検知する検知手段と、この検
知手段の検知出力に基づいて揺動動作の特徴点を検出す
る検出手段であって、ファジィ推論処理により特徴点の
検出を行なうものと、前記検出手段の検出出力に基づい
て演奏態様を制御する演奏制御手段とを備えたものであ
る。
理を用いて揺動動作の速度ピーク(又は谷)等の特徴点
を検出するので、検出精度が向上し、信頼性の高い演奏
態様制御が可能になる。
動動作を検知する検知手段と、この検知手段の検知出力
に基づいて揺動動作の特徴点を検出する検出手段と、前
記検知手段の検知出力及び前記検出手段の検出出力に基
づいて揺動動作の動作種類を判別する判別手段であっ
て、ファジィ推論処理により動作種類の判別を行なうも
のと、前記判別手段の判別出力に基づいて演奏態様を制
御する演奏制御手段とを備えたものである。
理を用いて何拍目の動作か等の動作種類判別を行なうよ
うにしたので、判別精度が向上し、信頼性の高い演奏態
様制御が可能になる。
装置10を示すもので、この装置は、図2に示す電子楽
器50における自動演奏のテンポ及びダイナミクス(強
弱)を制御するために使用されるものである。
には、操作検出回路14、A/D(アナログ/ディジタ
ル)変換回路16,18、CPU(中央処理装置)2
0、ROM(リード・オンリィ・メモリ)22、RAM
(ランダム・アクセス・メモリ)24、タイマ26、M
IDI(Musical Instrument Digital Interface) イン
ターフェース28等が接続されている。
チ等を含むスイッチ群30中の各スイッチ毎に操作情報
を検出するものである。演奏スタートスイッチは、電子
楽器50に設けてもよいが、指揮棒32の把持部近傍に
設けると操作しやすい。
電振動ジャイロセンサからなるx方向(水平方向)及び
y方向(垂直方向)の角速度センサ34及び36が設け
られており、センサ34及び36の出力X及びYは、そ
れぞれノイズ除去回路38及び40を介してA/D変換
回路16及び18に供給される。A/D変換回路16
は、ノイズ除去回路38でノイズ除去された出力XをA
/D変換した形のディジタル出力DX を送出し、A/D
変換回路18は、ノイズ除去回路40でノイズ除去され
た出力YをA/D変換した形のディジタル出力DY を送
出する。
プログラムに従ってA/D変換回路16,18の出力D
X ,DY を分析してテンポ制御情報TC及びダイナミク
ス制御情報DCを発生するための各種処理を実行するも
ので、これらの処理については図3〜10を参照して後
述する。RAM24は、CPU20による各種処理に際
してレジスタ等として使用される記憶領域を含んでい
る。
を供給するもので、割込命令信号の発生周期は、一例と
して10[ms]である。CPU20は、タイマ26か
ら割込命令信号が発生されるたびに図6のセンサ出力処
理を実行する。
MIDIイーターフェース70とMIDIケーブルで接
続されたもので、テンポ制御情報TC、ダイナミクス制
御情報DC等をMIDIイーターフェース70に供給す
る。
は、押鍵検出回路54、操作検出回路56、表示回路5
8、音源回路60、CPU62、ROM64、RAM6
6、タイマ68、MIDIイーターフェース70、フロ
ッピィディスク装置72が接続されている。
にそれぞれ設けられた多数のキースイッチを走査するな
どして各鍵毎に鍵操作情報を検出するものである。
ッチ等を含むスイッチ群76中の各スイッチ毎に操作情
報を検出するものである。演奏モード選択スイッチによ
りマニアル演奏モード及び自動演奏モードのうち一方又
は双方を選択可能である。
を表示する表示器を含んでいる。
の音源チャンネルを有するもので、各音源チャンネル毎
にイベントデータに応じて楽音信号を発生可能である。
例えば、キーオンに係るチャンネルナンバ1のイベント
データがチャンネルナンバ1の音源チャンネルに割当て
られると、この音源チャンネルからは、供給されたイベ
ントデータの指示する音高及び音量を有する楽音信号の
発生が開始される。そして、キーオフに係るチャンネル
ナンバ1のイベントデータがチャンネルナンバ1の音源
チャンネルに割当てられると、この音源チャンネルで
は、供給されたイベントデータの指示する音高を有する
楽音信号の減衰が開始される。他の音源チャンネルにお
いても、上記したと同様にして楽音信号発生制御動作が
行なわれる。
楽音信号は、サウンドシステム78に供給され、音響に
変換される。
プログラムに従って鍵盤74の操作に基づくマニアル演
奏音信号の発生及び/又はRAM66の演奏データに基
づく自動演奏音信号の発生を制御するもので、自動演奏
音信号の発生のための各種処理については図11〜17
を参照して後述する。RAM66には、フロッピィディ
スク装置72から所望の楽曲の演奏データを選択して書
込めるようになっている。別の選択方法としては、演奏
データをROM64から選択して読出すようにしてもよ
い。RAM66は、CPU62による各種処理に際して
レジスタ、カウンタ等として使用される記憶領域も含ん
でいる。
を供給するもので、割込命令信号の発生周期は、一例と
して1[ms]である。CPU62は、タイマ68から
割込命令信号が発生されるたびに図13の再生処理を実
行する。この結果として、RAM66の演奏データに基
づく自動演奏が遂行される。
揺動分析装置10からテンポ制御情報TC及びダイナミ
クス制御情報DCを受信する。CPU62は、テンポ制
御情報TCに応じて自動演奏のテンポを制御すると共
に、ダイナミクス制御情報DCに応じて自動演奏音の音
量を制御する。
場合(A)と2拍子又は4拍子の場合(B)とに分けて
示したものである。
2 ,P3 の順に3角形を描くような揺動動作が行なわれ
る。センサ34の出力X及びセンサ36の出力Yに対応
してA/D変換回路16及び18から得られる出力値を
それぞれDX 及びDY とすると、絶対角速度DZ は、次
の数1の式で求められる。
で、変化波形における3つの谷は、図3の位置P1 ,P
2 ,P3 にそれぞれ対応する。また、位置P1〜P2 間
の動作1と位置P2 〜P3 の動作2と位置P3 〜P1 の
動作3とは、変化波形におけるピークQ1 ,Q2 ,Q3
(1,2,3拍目のピーク)にそれぞれ対応する。
推論処理を用いてピークQ1 〜Q3をそれぞれ検出する
と共に動作1〜3(ピーク種類)をそれぞれ判別し、そ
れぞれの判別結果に応じて動作1ならばC3 のキーコー
ドを有するテンポ制御情報TCを発生し、動作2ならば
C#3 のキーコードを有するテンポ制御情報TCを発生
し、動作3ならばD3 のキーコードを有するテンポ制御
情報TCを発生する。なお、この実施形態ではテンポ制
御情報として所定のキーコードを有するキーデータを用
いたが、テンポ制御専用のデータを用いてもよい。
は、位置P11から位置P12への振り下ろし動作1と位置
P12から位置P11への振り上げ動作3との2動作とな
り、3拍子の場合と同様の処理により動作1ならばC3
のキーコードを有するテンポ制御情報TCを発生し、動
作3ならばD3 のキーコードを有するテンポ制御情報T
Cを発生する。
も、ダイナミクス制御情報DCは、絶対角速度DZ のピ
ーク値(Q1 〜Q3 等)の大きさに対応して発生され
る。
ある。角度θは、A/D変換回路16,18の出力値D
X ,DY をxy平面にプロットしたときの点をSとする
と、原点0と点Sを通る直線がx軸となす角度として定
義される。角度θの情報は、ファジィ推論処理により動
作1〜3(ピーク種類)を判別する際に使用される。
の処理は、タイマ26から割込命令信号が発生されるた
びに(すなわち10[ms]の周期で)行なわれる。
18から出力値DX ,DY を取込む。そして、ステップ
82に移り、前掲の数1の式に従って絶対角速度DZ を
求める。
を行なう。ピーク検出処理では、図4のQ1 〜Q3 等の
ピークを検出すると共に検出したピークが何拍目のピー
クか判別するが、詳しくは図7を参照して後述する。
御情報DCを作成し、イーターフェース28を介して送
出する。ダイナミクス制御情報DCは、ステップ84で
ピークが検出されたときそのピーク値の大きさに対応す
る音量レベルを指示するように作成される。イーターフ
ェース28から図2の電子楽器50に送信されたダイナ
ミクス制御情報DCは、RAM66内の音量制御レジス
タにセットされる。この後、図示しないメインルーチン
にリターンする。
テップ90では、ルール1のファジィ推論処理を行な
う。このファジィ推論処理では、今回より1つ前のDZ
値がピークである確率を求め、その確率が所定の条件を
満たすときにピークとするが、詳しくは図8,9を参照
して後述する。
処理においてピークが得られたか判定する。この判定結
果が肯定的(Y)であればステップ94に移る。
行なう。この判別処理では、検出したピークが何拍目の
ピークか(例えば図3の動作1〜3のいずれか)判別す
るが、詳しくは図10を参照して後述する。
ップ92の判定結果が否定的(N)であったときは、図
6のルーチンにリターンする。
すもので、ステップ100では、今回より1つ前のDZ
の値がピークである確率を求める。一例として、ファジ
ィルール1は次の数2のように記述される。
大きい) 且つ([b]1つ前の値は今回の値よりも大きい) 且つ([c]前回のピーク発生時刻から時間が経ってい
る) 且つ([d]1つ前の値はダイナミックなしきい値より
大きい) 且つ([e]前回の谷発生時刻から時間が経っている) 且つ([f]1つ前の値が前回のピーク値と比べて小さ
すぎない)} ならば([g]1つ前の値がピークである確率が高い) ここで、ダイナミックなしきい値とは、次々に求められ
たDZ 値を所定時間内で平均した値をいう。
る言語をメンバーシープ関数で表わす。図9(A)〜
(G)は、ファジィルール1中の条件[a]〜[g]に
それぞれ対応するメンバーシップ関数を例示するもの
で、tは時間を表わす。
数について入力に対するメンバーシップ値を求める。
(A)のグラフにおいて、D2 を2つ前の値とすると、
1つ前の値に対応するメンバーシップ値は破線で示すよ
うにM1 となる。(B)のグラフにおいて、D0 を今回
の値とすると、1つ前の値に対応するメンバーシップ値
は破線で示すようにM2 となる。(C)のグラフにおい
て、前回のピーク発生時刻からの経過時間に対応するメ
ンバーシップ値は破線で示すようにM3 となる。(D)
のグラフにおいて、Dd をダイナミックなしきい値とす
ると、1つ前の値に対応するメンバーシップ値は破線に
対応してM4 =1となる。(E)のグラフにおいて、前
回の谷発生時刻からの経過時間に対応するメンバーシッ
プ値は破線で示すようにM5 となる。(F)のグラフに
おいて、Dp を前回のピーク値とすると、1つ前の値に
対応するメンバーシップ値は破線で示すようにM6 とな
る。
数に基づく推論結果から最終的な推論結果を求める。す
なわち、[a]〜[f]の条件は「且つ」で結ばれてい
るので、メンバーシップ値M1 〜M6 のうちから最小値
Mmin を求め、Mmin を(G)のグラフにメンバーシッ
プ値として適用して図形FがMmin 以上の部分を削除す
る。そして、残った図形Fについて重心Fgを演算によ
り求める。重心の変動範囲Pは、確率0〜1の範囲であ
り、重心Fgに対応してピークである確率を求める。
プ100で求めた確率に基づいてピークであるか否か決
定する。すなわち、求めた確率が所定値(例えば0.
5)以上か判定し、この判定結果が肯定的ならばピーク
であると決定し、否定的ならばピークでないと決定す
る。そして、図7のルーチンにリターンする。
で、ステップ110では、ルール2のファジィ推論処理
を行なう。この推論処理では、今回のピーク種類が動作
1である確率を求める。一例として、ファジィルール2
は、次の数3のように記述される。
値DX が大きい)) 又は(前回のピーク種類が動作3) 又は((前回のピーク種類が動作2)且つ(今回と前回
の角度差が大きい))) 且つ(今回の角度は中位)} ならば(今回のピーク種類は動作1である確率が高い) ここで、角度とは、図5に関して前述したものであり、
角度差とは、かような角度の差である。
について前述したと同様に行なうことができる。すなわ
ち、ルール2において変数となる言語をメンバーシップ
関数で表わし、「ならば」の前までの各条件について入
力に対するメンバーシップ値を求める。そして、「且
つ」で結ばれた条件については最小のメンバーシップ値
を求め、「又は」で結ばれた条件については最大のメン
バーシップ値を求める。「ならば」のメンバーシップ関
数に基づいて重心法により今回のピーク種類が動作1で
ある確率を求める。
ル3のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が動作2である確率を求める。一例と
して、ファジィルール3は、次の数4のように記述され
る。
(今回と前回の角度差が小さい) 又は((前回のピーク種類が動作3)且つ(今回と前回
の角度差が大きい)) 又は((前回のピーク種類が判別失敗)且つ(出力値D
Y が大きい)且つ(出力値DX が小さい)) 又は(前回のピーク種類が判別失敗)且つ(今回の角度
が0°に近い)))} ならば(今回のピーク種類は動作2である確率が高い) ルール3のファジィ推論処理は、ルール2について前述
したと同様にして行なうことができる。
ル4のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が動作3である確率を求める。一例と
して、ファジィルール4は、次の数5のように記述され
る。
(今回と前回の角度差が小さい) 又は((前回のピーク種類が動作1)且つ(今回と前回
の角度差が大きい)) 又は((前回のピーク種類が判別失敗)且つ(出力値D
Y が大きい))} ならば(今回のピーク種類は動作3である確率が高い) ルール4のファジィ推論処理は、ルール2について前述
したと同様にして行なうことができる。
ル5のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が判別失敗である確率を求める。一例
として、ファジィルール5は、次の数6のように記述さ
れる。
求めた確率も小さい) ならば(今回のピーク種類は判別失敗である確率が高
い) ルール5のファジィ推論処理もルール2について前述し
たと同様にして行なうことができる。
推論結果に基づいて判別失敗か否か決定する。すなわ
ち、ステップ116で求めた確率が所定値(例えば0.
5)以上か判定し、この判定結果が肯定的であれば判別
失敗であるとし、否定的であれば判別失敗でないとす
る。そして、ステップ120に移る。
る。この判定結果が否定的(N)であればステップ12
2に移り、ルール2〜4の推論処理で求めた確率のうち
最も高い確率についてピーク種類を決定する。例えば、
ルール2の推論処理で求めた確率が最も高い場合、ピー
ク種類は動作1と決定される。
応じたキーコードを有するテンポ制御情報TCを発生す
る。例えば、ピーク種類が動作1であれば、C3 のキー
コードを有するテンポ制御情報TCが発生される。発生
されたテンポ制御情報TCは、インターフェース28,
70を介してRAM66内の所定のレジスタにセットさ
れる。
であったときは、ステップ126でピーク種類不明と決
定する。ステップ124又は126の処理が終ったとき
は、図7のルーチンにリターンする。
のフォーマットを示すものである。
ってデルタタイムデータΔT、イベントデータEV、デ
ルタタイムデータΔT、イベントデータEV…のように
データΔT及びEVを交互に配置したものである。いず
れのデルタタイムデータΔTも、[ms]の単位で時間
を表わすもので、最初のデルタタイムデータは、最初の
イベントまでの時間を表わし、イベント間のデルタタイ
ムデータは、イベント間の相対時間を表わす。例えば和
音発音のように1タイミングに複数イベントがあるとき
は、該イベント間のデルタタイムデータは0を表わす。
うに3バイトのデータからなる。第1バイトのうち上位
4ビットがイベント種類データESであり、下位4ビッ
トがチャンネルナンバデータCHNである。イベント種
類データESは、キーオン又はキーオフのようなイベン
ト種類を表わす。チャンネルナンバデータCHNは、0
〜15のいずれかのチャンネルナンバを表わす。チャン
ネルナンバ1〜15は、音源回路60の第1〜第15の
音源チャンネルに対応しているが、チャンネルナンバ0
は、テンポ制御マークとして使用される。
トは、キーコードデータKCであり、音高を表わす。ま
た、第3バイトは、ベロシティデータVLであり、押鍵
速度に対応する音量を表わす。
ナンバ0のテンポ制御用のイベントデータと、チャンネ
ルナンバ1〜15の発音/非発音制御用のイベントデー
タ(キーオン/オフに係るイベントデータ)との2種類
のものが存在する。発音/非発音制御用のイベントデー
タは、楽曲を構成する各音符毎に楽音信号の発生及び減
衰開始を制御するもので、自動演奏の分野で広く使用さ
れている。一方、テンポ制御用のイベントデータは、こ
の発明を実施するために使用されるもので、以下では、
簡単のため「テンポ制御データ」と称する。
合、C3 ,C#3 ,D3 の3種類のキーコードを有する
ものが使用される。そして、C3 ,C#3 ,D3 のキー
コードを有するテンポ制御データは、基準となるテンポ
において第1拍、第2拍、第3拍のタイミングに対応す
る位置に配置され、このような順序で読出される。ま
た、4拍子の楽曲の場合、C3 ,D3 ,C3 ,D3 のテ
ンポ制御データがそれぞれ第1拍,第2拍,第3拍,第
4拍のタイミングに対応する位置に配置され、このよう
な順序で読出される。テンポ制御は、一例として、C3
のキーコードを有するテンポ制御データの読出タイミン
グに対して、C3 のキーコードを有するテンポ制御情報
TCの受信タイミングが早ければテンポを進めるよう
に、また遅ければテンポを遅らせるように行なわれる。
理は、タイマ68から割込命令信号が発生されるたびに
(すなわち1[ms]の周期で)行なわれる。以下の説
明にて言及されるフラグ、レジスタ等は、RAM66内
に存在するものである。
1か判定する。フラグRUNは、前述の演奏スタートス
イッチをオンするたびに1であれば0になり、0であれ
ば1になるもので、RUN=1は、自動演奏中であるこ
とを表わす。ステップ130の判定結果が肯定的(Y)
であればステップ132に移る。
USEが0か判定する。フラグPAUSEは、RAM6
6からテンポ制御データを読出したにもかかわらず、そ
の読出タイミングまでに対応するテンポ制御情報TCが
受信されていないときに1となるもので、ステップ13
2の判定結果が肯定的(Y)であるとき(TCを受信済
みのとき)は、ステップ134に移る。
タTIMEが0か判定する。レジスタTIMEには、R
AM66から読出したデルタタイムデータΔTをセット
し(ステップ142)、データΔTの示す値を割込みの
たびに1ずつ減算している(ステップ148)ので、T
IME=0は、次のイベントデータを読出すべきタイミ
ングになったことを意味する。ステップ134の判定結
果が肯定的(Y)であればステップ136に移る。
スを1つ進めてデータを読出す。そして、ステップ13
8に移り、読出したデータがデルタタイムデータΔTか
判定する。ステップ134の後初めてステップ138に
きたときは、ステップ138の判定結果が否定的(N)
となる(ΔTの次は必ずイベントデータEVの読出しと
なる)ので、ステップ140に移る。ステップ140で
は、図14について後述するようにイベント対応処理を
行なう。この後、ステップ136に戻る。
てデータを読出す。そして、ステップ138で読出デー
タがデルタタイムデータΔTか判定すると、判定結果が
肯定的(Y)となり、ステップ142に移る。
イムデータΔTをレジスタTIMEにセットする。そし
て、ステップ144でTIME=0か判定する。通常
は、読出直後にデルタタイムデータΔTがゼロになるこ
とはないが、前述したように和音発音等の場合にはΔT
=0のこともある。このような場合には、ステップ14
4の判定結果が肯定的(Y)となり、ステップ136に
戻る。
を読出し、ステップ138を介してステップ140でイ
ベント対応処理を行なう。そして、ステップ136に戻
って次のデルタタイムデータΔTを読出してステップ1
38,142を介して再びステップ144にくる。ステ
ップ144の判定結果が肯定的(Y)であれば、ステッ
プ136に戻る。ステップ136では、次のイベントデ
ータを読出し、ステップ138を介してステップ140
でイベントデータ対応処理を行なう。このようにして、
和音を構成する第1〜第3音を実質的に同時に発音させ
ることができる。ステップ140の後は、上記したと同
様にステップ136,138,142,144の処理を
行なう。
であったときは、ステップ146に移る。ステップ14
6では、レジスタTIMEの値にテンポ係数レジスタT
MKの値(テンポ係数TMK)を乗じたものをTIME
にセットする。
指揮棒32の揺動速度が速い又は遅いに応じてそれぞれ
1より小さく又は大きくなるように後述のステップ15
4の処理で変更される。従って、TIMEの値は、テン
ポ係数TMKの乗算により修正され、この結果として自
動演奏のテンポが指揮棒32の揺動速度に追従すべく制
御される。
テップ134の判定結果が否定的(N)であった(読出
すべきタイミングに達していない)ときは、ステップ1
48に移る。ステップ148では、TIMEの値を1減
らす。そして、ステップ150に移り、読出間隔レジス
タRBの値を1増やす。レジスタRBは、図16に示す
ようにあるテンポ制御データTEV1 の読出タイミング
から次のテンポ制御データTEV2 の読出タイミングま
での時間間隔に対応する数値を得るためのものである。
テップ132の判定結果が否定的(N)であった(TC
の受信待ちである)ときは、ステップ152に移る。ス
テップ152では、受信間隔レジスタRAの値を1増や
す。レジスタRAは、図16に示すようにあるテンポ制
御情報TC1 の受信タイミングから次のテンポ制御情報
TC2 の受信タイミングまでの時間間隔に対応する数値
を得るためのものである。ステップ152の後は、ステ
ップ154に移り、図15について後述するようにテン
ポ制御処理を実行する。
テップ130の判定結果が否定的(N)であった(自動
演奏中でない)ときは、図示しないメインルーチンにリ
ターンする。
で、ステップ160では、読出データがテンポ制御デー
タTEVが判定する。この判定結果が肯定的(Y)であ
ればステップ162に移る。
が1か(テンポ制御情報TCを受信済みか)判定する。
この判定結果が肯定的(Y)であればステップ164に
移り、TCRFに0をセットする。これは、テンポ制御
データTEVを読出したときに対応するテンポ制御情報
TCが受信済みであることを意味する。
であったときは、ステップ166に移り、テンポ制御デ
ータTEV中のキーコードデータKCをレジスタKEY
にセットする。そして、ステップ168に移り、レジス
タPAUSEに1をセットする。これは、テンポ制御デ
ータTEVに対応するテンポ制御情報TCを受信するま
でRAM66からの演奏データ読出しを停止するためで
ある。すなわち、図13では、ステップ132でPAU
SE=1であればステップ136〜146の読出処理を
しないでステップ148に移る。そして、テンポ制御情
報TCが受信されると、ステップ154の処理でPAU
SE=1となり、この後は、RAM66からの演奏デー
タ読出しが行なわれる。
であったときは、ステップ170に移り、発音/非発音
制御用のイベントデータPEVのうち発音用のものだけ
ベロシティデータLVの値をRAM66内のレジスタに
あるダイナミクス制御情報DCに応じて修正する。例え
ば、指揮棒の振りが強いときは、制御情報DCに応じて
音量を高めるべくVLの値を修正する。そして、ステッ
プ172に移る。
のイベントデータPEVを音源回路60に送出する。こ
のとき送出されるデータが発音制御用のイベントデータ
(キーオンに係るイベントデータ)であればそれに対応
する楽音信号の発生が開始され、非発音制御用のイベン
トデータ(キーオフに係るイベントデータ)であればそ
れに対応する楽音信号の減衰が開始される。
が終ったときは、図13のルーチンにリターンする。
ステップ180では、テンポ制御情報TCの受信ありか
判定する。この判定結果が否定的(N)であれば図13
のルーチンにリターンする。
であったときは、ステップ182でPAUSE=1か
(読出停止中か)判定する。この判定結果が肯定的
(Y)である場合は、テンポ制御データTEVの読出し
よりそれに対応するテンポ制御情報TCの受信が遅れた
(揺動速度が遅い)場合であり、その一例を図16に示
す。すなわち、テンポ制御データTEV2 が読出された
時点でTEV2 に対応するテンポ制御情報TC2'が受信
されておらず(PAUSE=1)、この後でTC2'が受
信された場合である。
(N)である場合は、テンポ制御データTEVの読出し
よりそれに対応するテンポ制御情報TCの受信が早かっ
た(揺動速度が速い)場合であり、その一例を図16に
示す。すなわち、テンポ制御データTEV2 が読出され
た時点でTEV2 に対応するテンポ制御情報TC2 がす
でに受信されている(PAUSE=0)場合である。
であったときは、ステップ184に移り、受信したテン
ポ制御情報TCのキーコードKCとレジスタKEYのキ
ーコードKCとが一致するか判定する。この判定結果が
否定的(N)であれば図13のルーチンにリターンし、
肯定的(Y)であればステップ186に移る。換言すれ
ば、テンポ制御情報TCを受信してそのキーコードKC
が読出しに係るテンポ制御データTCVのキーコードK
Cと一致することを条件としてステップ186〜196
の処理を行なう。
の値の比RA/RBをレジスタRATEにセットする。
そして、ステップ188に移り、レジスタTMKの値に
RATEの値を乗じたものをTMKにセットする。この
結果、テンポ係数TMKがRATEの値に応じて修正さ
れたことになる。一例として、図16のTEV2 ,TC
2'の例では、比RA/RBの値は、1より大きくなり、
テンポ係数TMKは、1より大きくなる。
MKの値のリミット処理を行なう。これは、TMK値が
大きすぎないように所定値(例えば2.0)以下に制限
する処理である。
では、それぞれレジスタRB,RA,フラグPAUSE
に0をセットする。そして、図13のルーチンにリター
ンする。
り、ステップ146でレジスタTIMEの値にテンポ係
数TMKを乗ずると、TIMEの値は以前より大きくな
り、自動演奏のテンポは揺動速度に追従して遅くなる。
(N)であったときは、ステップ198に移り、次のテ
ンポ制御データTEVをサーチする。そして、ステップ
200に移る。
情報TCのキーコードKCとサーチしたテンポ制御デー
タTEVのキーコードKCとが一致するか判定する。こ
れは、前述のステップ184に対応する処理である。こ
の判定結果が否定的(N)であれば図13のルーチンに
リターンし、肯定的(Y)であればステップ202に移
る。
タの読出タイミングからサーチしたテンポ制御データT
EVの読出タイミングまで時間間隔をレジスタRBにセ
ットする。例えば、図16に示すように発音/非発音制
御用のイベントデータPEVを読出した後テンポ制御情
報TC2 を受信してからテンポ制御データTEV2 をサ
ーチした場合、レジスタRBには、テンポ制御データT
EV1 の読出タイミングからTC2 の受信タイミングま
での時間間隔に対応する数値がセットされているだけ
で、TC2 の受信タイミングからTEV2 を(サーチで
はなく)演奏進行に応じて読出すべきタイミングまでの
時間間隔に対応する数値が含まれていない。この時間間
隔に対応する数値は、TEV2 を読出すべきタイミング
で0になるレジスタTIMEにおいてTC2 受信時に残
されている数値RTに等しい。そこで、レジスタRBの
値にTIMEの値RTを加えたものをRBにセットす
る。
御用のイベントデータPEVを読出した後テンポ制御情
報TC2 を受信してからサーチ動作により発音/非発音
制御用のイベントデータPEV’及びテンポ制御データ
TEV2 を読出した場合には、TC2 の受信タイミング
からPEV’を演奏進行に応じて読出すべきタイミング
までの時間に対応してレジスタTIMEの値RTを考慮
すると共に、PEV’を演奏進行に応じて読出すべきタ
イミングからTEV2 を演奏進行に応じて読出すべきタ
イミングまでの時間に対応して数値RT’を考慮する。
数値RT’は、データPEV’及びTEV2 のイベント
間相対時間をΔTとし、テンポ係数をTMKとすると、
次の数7の式で表わされる。
IMEの値RTと数値RT’とを加えたものをRBにセ
ットする。なお、TEV2 をサーチする際にPEV’の
ようなイベントデータが複数読出されるときは各イベン
トデータについてRT’と同様の考慮を払えばよい。
の値に1/Nを乗じたものをRBにセットすると共に、
レジスタTIMEの値に1/Nを乗じたものをTIME
にセットする。ここで、Nは、RBの値をレジスタRA
の値に近づけるために適宜選定される定数である。
Fに1をセットする。この結果、この後の割込みにより
図14のステップ162にくると、判定結果が肯定的
(Y)となり、ステップ164でTCRT=0とされ
る。
A,RBの値の比RA/RBをレジスタRATEにセッ
トする。そして、ステップ210に移り、レジスタTM
Kの値にRATEの値を乗じたものをTMKにセットす
る。この結果、テンポ係数TMKがRATEの値に応じ
て修正されたことになる。一例として、図16のT
C2,TEV2 の例では、比の値RA/RBが1より小
さくなり、テンポ係数TMKが1より小さくなる。この
後、ステップ212に移る。
値のリミット処理を行なう。これは、TMK値が小さす
ぎないように所定値(例えば0.5)以上に制限する処
理である。
れぞれレジスタRB,RAに0をセットする。そして、
図13のルーチンにリターンする。
り、ステップ146でレジスタTIMEの値にテンポ係
数TMKを乗ずると、TIMEの値は以前より小さくな
り、自動演奏のテンポは揺動速度に追従して速くなる。
るものではなく、種々の改変形態で実施可能なものであ
る。例えば、次の(1)〜(14)のような変更が可能
である。
うようにしたが、動作種類判別を省略し、ピーク検出出
力に応じてテンポ制御情報TCやダイナミクス制御情報
DCを発生するようにしてもよい。
ジィ推論処理によりピークや動作種類を求めるようにし
たが、従来の手法により求めたピークや動作種類をファ
ジィ推論処理により修正するようなものであってもよ
い。また、ニューラルネットワークと融合させ、例えば
メンバーシップ関数を決定乃至修正するのにニューラル
ネットワークを用いるようにしてもよい。
は、圧電振動ジャイロセンサ等の角速度センサに限ら
ず、加速度センサや磁気又は光を用いたセンサであって
もよい。また、揺動動作を撮影し、画像処理によって揺
動動作を検知するものであってもよい。さらに、複数種
類のセンサを組合せて用いてもよい。
に限らず、もっと多くの種類の動作を判別するようにし
てもよい。
たが、指揮棒に揺動分析装置を内蔵させるようにしても
よい。また、揺動分析装置と自動演奏装置付き電子楽器
とを別体としたが、これらを一体に構成してもよい。さ
らに、揺動分析装置からの出力情報TC,DCは、図2
の電子楽器以外の電子楽器や自動演奏装置に供給して上
述のような演奏制御を行なうようにしてもよい。
センサを用いたが、3つ以上のセンサを用いてもよい。
例えば、3拍子用と、2,4拍子用とで異なるセンサを
用いるようにしてもよいし、3つ以上のセンサの出力を
総合的に判断して動作を検知するようにしてもよい。
揮棒に代わる揺動部材に装着したり、手など身体の一部
に装着したり、マイクロホンに内蔵したり、カラオケ装
置等の機器のリモートコントローラに内蔵したりしても
よい。センサと揺動分析装置との間の通信は、有線又は
無線のいずれでもよい。
にしたが、演奏に先立って演奏テンポを決定する場合に
もこの発明を適用することができる。
+デルタタイム(イベント間相対時間)としたが、イベ
ント+絶対時間等の他の方式を採用してもよい。また、
デルタタイムは、msの単位であるとしたが、音符の長
さを単位とする(例えば4分音符の1/24とする)よ
うにしてもよい。
値にテンポ係数を乗算し、デルタタイムの値を変化させ
ることで行なうようにしたが、図13のタイマ割込みの
周期を変化させることで行なうようにしてもよい。ま
た、1回のタイマ割込みにおいてデルタタイムの値から
減算する値を1以外の値とすることによりテンポを制御
するようにしてもよい。さらに、デルタタイムの値を変
化させるには、乗算に限らず、加算等の処理を用いても
よい。
なめらかに変化するように変化前の値から目標値までの
間を補間するようにしてもよい。ダイナミクスの制御も
同様にしてなめらかな変化が得られるようにしてもよ
い。
て演奏音の音量を制御するようにしたが、該情報DCに
応じて演奏音の音色、音高、効果等を制御してもよい。
また、ダイナミクス制御情報DCに応じて演奏パート数
等を制御してもよい。これらのパラメータのうち複数の
ものを組合せて制御することで演奏のダイナミクスを一
層強調するようにしてもよい。
関数をユーザがエディット可能とし、ユーザが最も操作
しやすいように調節可能としてもよい。
判別の両方に対してファジィ推論処理を適用したが、揺
動動作の特徴点検出のみ又は動作種類判別のみにファジ
ィ推論処理を適用するようにしてもよい。
ジィ推論処理により揺動動作の特徴点検出や動作種類判
別を行なうようにしたので、検出精度や判別精度が向上
し、信頼性の高い演奏態様制御が可能となり、安定した
音楽演奏を行なえる効果が得られるものである。
すブロック図である。
子楽器の回路構成を示すブロック図である。
る。
る。
る。
ャートである。
を示すグラフである。
である。
る。
ある。
ある。
る。
A/D変換回路、20,62:CPU、22,64:R
OM、24,66:RAM、26,68:タイマ、2
8,70:MIDIインターフェース、32:指揮棒、
34,36:角速度センサ、50:電子楽器、60:音
源回路。
Claims (2)
- 【請求項1】揺動動作を検知する検知手段と、 この検知手段の検知出力に基づいて揺動動作の特徴点を
検出する検出手段であって、ファジィ推論処理により特
徴点の検出を行なうものと、 前記検出手段の検出出力に基づいて演奏態様を制御する
演奏制御手段とを備えた演奏制御装置。 - 【請求項2】揺動動作を検知する検知手段と、 この検知手段の検知出力に基づいて揺動動作の特徴点を
検出する検出手段と、 前記検知手段の検知出力及び前記検出手段の検出出力に
基づいて揺動動作の動作種類を判別する判別手段であっ
て、ファジィ推論処理により動作種類の判別を行なうも
のと、 前記判別手段の判別出力に基づいて演奏態様を制御する
演奏制御手段とを備えた演奏制御装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27351895A JP3627319B2 (ja) | 1995-09-27 | 1995-09-27 | 演奏制御装置 |
| US08/710,706 US5648627A (en) | 1995-09-27 | 1996-09-20 | Musical performance control apparatus for processing a user's swing motion with fuzzy inference or a neural network |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27351895A JP3627319B2 (ja) | 1995-09-27 | 1995-09-27 | 演奏制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0990941A true JPH0990941A (ja) | 1997-04-04 |
| JP3627319B2 JP3627319B2 (ja) | 2005-03-09 |
Family
ID=17528981
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP27351895A Expired - Fee Related JP3627319B2 (ja) | 1995-09-27 | 1995-09-27 | 演奏制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3627319B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018506050A (ja) * | 2014-12-12 | 2018-03-01 | インテル コーポレイション | ウェアラブルな音声混合 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01277293A (ja) * | 1988-04-28 | 1989-11-07 | Yamaha Corp | 楽音制御装置 |
| JPH02232692A (ja) * | 1989-03-06 | 1990-09-14 | Kan Oteru | 自動演奏機能を有する機器の制御装置 |
| JPH0519760A (ja) * | 1991-07-11 | 1993-01-29 | Yamaha Corp | 電子楽器 |
| JPH0594183A (ja) * | 1991-07-16 | 1993-04-16 | Yamaha Corp | 楽音制御装置 |
| JPH0635466A (ja) * | 1992-07-20 | 1994-02-10 | Casio Comput Co Ltd | 電子楽器 |
| JPH06161440A (ja) * | 1992-11-24 | 1994-06-07 | Sony Corp | 自動演奏装置 |
| JPH06348272A (ja) * | 1993-06-07 | 1994-12-22 | Roland Corp | テンポ検出装置 |
-
1995
- 1995-09-27 JP JP27351895A patent/JP3627319B2/ja not_active Expired - Fee Related
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01277293A (ja) * | 1988-04-28 | 1989-11-07 | Yamaha Corp | 楽音制御装置 |
| JPH02232692A (ja) * | 1989-03-06 | 1990-09-14 | Kan Oteru | 自動演奏機能を有する機器の制御装置 |
| JPH0519760A (ja) * | 1991-07-11 | 1993-01-29 | Yamaha Corp | 電子楽器 |
| JPH0594183A (ja) * | 1991-07-16 | 1993-04-16 | Yamaha Corp | 楽音制御装置 |
| JPH0635466A (ja) * | 1992-07-20 | 1994-02-10 | Casio Comput Co Ltd | 電子楽器 |
| JPH06161440A (ja) * | 1992-11-24 | 1994-06-07 | Sony Corp | 自動演奏装置 |
| JPH06348272A (ja) * | 1993-06-07 | 1994-12-22 | Roland Corp | テンポ検出装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018506050A (ja) * | 2014-12-12 | 2018-03-01 | インテル コーポレイション | ウェアラブルな音声混合 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3627319B2 (ja) | 2005-03-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5648627A (en) | Musical performance control apparatus for processing a user's swing motion with fuzzy inference or a neural network | |
| CN109478399B (zh) | 演奏分析方法、自动演奏方法及自动演奏系统 | |
| JP2025100899A (ja) | 演奏情報予測装置、有効弦振動判定モデル訓練装置、演奏情報生成システム、演奏情報予測方法及び有効弦振動判定モデル訓練方法 | |
| US5218158A (en) | Musical tone generating apparatus employing control of musical parameters in response to note duration | |
| JPH09127937A (ja) | 楽音パラメータ制御装置 | |
| JP3231482B2 (ja) | テンポ検出装置 | |
| US6075196A (en) | Player piano reproducing special performance techniques using information based on musical instrumental digital interface standards | |
| JP3627321B2 (ja) | 演奏制御装置 | |
| JP2007256631A (ja) | 演奏制御装置、およびプログラム | |
| JPH06289857A (ja) | 音声入力機能付き電子楽器 | |
| JPH0990941A (ja) | 演奏制御装置 | |
| JPH03242697A (ja) | 電子楽器 | |
| JPH09185716A (ja) | 動作判定方法および動作判定装置 | |
| JP3303608B2 (ja) | 自動演奏装置 | |
| JP3307162B2 (ja) | 音楽制御装置 | |
| JP3353661B2 (ja) | 音楽制御装置および記憶媒体 | |
| JP2003091280A (ja) | 音楽制御装置 | |
| JP3427569B2 (ja) | 音楽制御装置 | |
| JP2005128208A (ja) | 演奏再生装置及び演奏再生制御プログラム | |
| JPH1138970A (ja) | 音楽制御装置および記憶媒体 | |
| JP3471480B2 (ja) | テンポ制御装置 | |
| JPH0352762U (ja) | ||
| JPH07111633B2 (ja) | 電子楽器 | |
| JPH0573047A (ja) | 楽音発生制御装置 | |
| JP3677906B2 (ja) | 発音条件設定装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040521 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040601 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040802 |
|
| 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: 20041116 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041129 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091217 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101217 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101217 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111217 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111217 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121217 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131217 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |