JPH0990941A - Musical performance controller - Google Patents

Musical performance controller

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
Application number
JP7273518A
Other languages
Japanese (ja)
Other versions
JP3627319B2 (en
Inventor
Satoshi Usa
聡史 宇佐
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 JP27351895A priority Critical patent/JP3627319B2/en
Priority to US08/710,706 priority patent/US5648627A/en
Publication of JPH0990941A publication Critical patent/JPH0990941A/en
Application granted granted Critical
Publication of JP3627319B2 publication Critical patent/JP3627319B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable the musical performance controller which responds to the swing operation of a baton to stably play music by improving the reliability regarding the detection of operation feature points and decisions of operation kinds. SOLUTION: A swing analyzing device 10 performs a fuzzy inference process when detecting the peak of an absolute angular velocity according to the outputs X and Y of (x)-and (y)-directional angular velocity sensors arranged on a baton 32 and also deciding which beat in a measure the peak corresponds to generate tempo control information TC corresponding to the peak generation period and also generate dynamics control information corresponding to the value of the peak. An automatic playing device controls the tempo of a musical performance according to the tempo control information TC and controls played sound characteristics such sound volume according to the dynamics control information DC.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、指揮棒等の揺動
動作に応答する演奏制御装置に関し、特に動作特徴点の
検出や動作種類の判別にファジィ推論処理を適用するこ
とにより制御の信頼性を高め、安定した音楽演奏を可能
にしたものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a performance control device which responds to a swinging motion of a baton or the like, and more particularly to the reliability of control by applying fuzzy inference processing to detect motion feature points and distinguish motion types. It enables the stable performance of music.

【0002】[0002]

【従来の技術】従来、人間の動作に伴うセンサ出力波形
からピーク等の特徴点を検出したり、振り下ろし等の動
作種類を判別したりするために、フィルタ処理(平均化
処理)や大小比較処理等の信号処理を用いることが提案
されている。
2. Description of the Related Art Conventionally, in order to detect characteristic points such as peaks from a sensor output waveform associated with human motion, or to judge the type of motion such as swinging down, a filtering process (averaging process) or a magnitude comparison is performed. It has been proposed to use signal processing such as processing.

【0003】[0003]

【発明が解決しようとする課題】一般に、人間の動作は
極めて曖昧且つ不安定である。このため、上記したよう
な単純な信号処理だけでは、検出や判別の精度が低く、
検出ミスや判別誤りが頻繁に発生した。従って、検出結
果や判別結果に応じて例えば自動演奏のテンポを制御し
ようとしても、(イ)ユーザーがシステムに慣れる(機
械にふさわしい動作をする)のに時間がかかること、
(ロ)動作意図と異なる反応(誤動作)が生じるため、
制御の信頼性が低く、安定した音楽演奏が困難であるこ
となどの不都合を免れなかった。
Generally, human movements are extremely vague and unstable. Therefore, the accuracy of detection and discrimination is low only by the simple signal processing as described above,
Misdetection and misjudgment frequently occurred. Therefore, even if the tempo of the automatic performance is controlled according to the detection result or the determination result, (a) it takes time for the user to get used to the system (to perform the operation suitable for the machine),
(B) Because a reaction (malfunction) different from the intended motion occurs,
The control was unreliable, and it was inevitable that stable music performance was difficult.

【0004】この発明の目的は、揺動動作に応答して信
頼性の高い演奏制御をなしうる新規な演奏制御装置を提
供することにある。
An object of the present invention is to provide a novel performance control device capable of highly reliable performance control in response to rocking motion.

【0005】[0005]

【課題を解決するための手段】この発明に係る第1の演
奏制御装置は、揺動動作を検知する検知手段と、この検
知手段の検知出力に基づいて揺動動作の特徴点を検出す
る検出手段であって、ファジィ推論処理により特徴点の
検出を行なうものと、前記検出手段の検出出力に基づい
て演奏態様を制御する演奏制御手段とを備えたものであ
る。
SUMMARY OF THE INVENTION A first performance control device according to the present invention is a detection means for detecting a rocking motion, and a detection for detecting a characteristic point of the rocking motion based on a detection output of this detection means. Means for detecting feature points by fuzzy inference processing, and performance control means for controlling the performance mode based on the detection output of the detection means.

【0006】このような構成によれば、ファジィ推論処
理を用いて揺動動作の速度ピーク(又は谷)等の特徴点
を検出するので、検出精度が向上し、信頼性の高い演奏
態様制御が可能になる。
According to this structure, since characteristic points such as velocity peaks (or valleys) of rocking motion are detected by using fuzzy inference processing, detection accuracy is improved and highly reliable performance mode control is performed. It will be possible.

【0007】この発明に係る第2の演奏制御装置は、揺
動動作を検知する検知手段と、この検知手段の検知出力
に基づいて揺動動作の特徴点を検出する検出手段と、前
記検知手段の検知出力及び前記検出手段の検出出力に基
づいて揺動動作の動作種類を判別する判別手段であっ
て、ファジィ推論処理により動作種類の判別を行なうも
のと、前記判別手段の判別出力に基づいて演奏態様を制
御する演奏制御手段とを備えたものである。
A second performance control apparatus according to the present invention is a detecting means for detecting a swinging movement, a detecting means for detecting a characteristic point of the swinging movement based on a detection output of the detecting means, and the detecting means. Discriminating means for discriminating the motion type of the rocking motion based on the detection output of the detecting means and the detection output of the detecting means, wherein the motion type is discriminated by fuzzy inference processing, and based on the discrimination output of the discriminating means. And a performance control means for controlling a performance mode.

【0008】このような構成によれば、ファジィ推論処
理を用いて何拍目の動作か等の動作種類判別を行なうよ
うにしたので、判別精度が向上し、信頼性の高い演奏態
様制御が可能になる。
According to such a configuration, since the type of motion such as what beat motion is determined by using the fuzzy inference process, the accuracy of the determination is improved, and highly reliable performance mode control is possible. become.

【0009】[0009]

【発明の実施の形態】図1は、この発明に係る揺動分析
装置10を示すもので、この装置は、図2に示す電子楽
器50における自動演奏のテンポ及びダイナミクス(強
弱)を制御するために使用されるものである。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows a swing analysis device 10 according to the present invention, which is for controlling the tempo and dynamics (strength) of automatic performance in an electronic musical instrument 50 shown in FIG. Is used for.

【0010】揺動分析制御装置10において、バス12
には、操作検出回路14、A/D(アナログ/ディジタ
ル)変換回路16,18、CPU(中央処理装置)2
0、ROM(リード・オンリィ・メモリ)22、RAM
(ランダム・アクセス・メモリ)24、タイマ26、M
IDI(Musical Instrument Digital Interface) イン
ターフェース28等が接続されている。
In the swing analysis control device 10, the bus 12
The operation detection circuit 14, the A / D (analog / digital) conversion circuits 16 and 18, and the CPU (central processing unit) 2
0, ROM (Read Only Memory) 22, RAM
(Random access memory) 24, Timer 26, M
An IDI (Musical Instrument Digital Interface) interface 28 and the like are connected.

【0011】操作検出回路14は、演奏スタートスイッ
チ等を含むスイッチ群30中の各スイッチ毎に操作情報
を検出するものである。演奏スタートスイッチは、電子
楽器50に設けてもよいが、指揮棒32の把持部近傍に
設けると操作しやすい。
The operation detection circuit 14 detects operation information for each switch in the switch group 30 including a performance start switch and the like. The performance start switch may be provided on the electronic musical instrument 50, but if it is provided near the grip portion of the baton 32, it is easy to operate.

【0012】指揮棒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 を送
出する。
In the vicinity of the tip of the baton 32, angular velocity sensors 34 and 36 in the x direction (horizontal direction) and the y direction (vertical direction), which are piezoelectric vibration gyro sensors, are provided as an example. The outputs X and Y are supplied to the A / D conversion circuits 16 and 18 via the noise removal circuits 38 and 40, respectively. A / D conversion circuit 16
Is the output X from which noise has been removed by the noise removal circuit 38
A / D converted digital output D X is sent out and A / D
The conversion circuit 18 sends out a digital output D Y in a form obtained by A / D converting the output Y from which the noise has been removed by the noise removal circuit 40.

【0013】CPU20は、ROM22にストアされた
プログラムに従ってA/D変換回路16,18の出力D
X ,DY を分析してテンポ制御情報TC及びダイナミク
ス制御情報DCを発生するための各種処理を実行するも
ので、これらの処理については図3〜10を参照して後
述する。RAM24は、CPU20による各種処理に際
してレジスタ等として使用される記憶領域を含んでい
る。
The CPU 20 outputs the outputs D of the A / D conversion circuits 16 and 18 in accordance with the program stored in the ROM 22.
Various processes for analyzing the X and D Y to generate the tempo control information TC and the dynamics control information DC are executed, and these processes will be described later with reference to FIGS. The RAM 24 includes a storage area used as a register or the like for various processing by the CPU 20.

【0014】タイマ26は、CPU20に割込命令信号
を供給するもので、割込命令信号の発生周期は、一例と
して10[ms]である。CPU20は、タイマ26か
ら割込命令信号が発生されるたびに図6のセンサ出力処
理を実行する。
The timer 26 supplies an interrupt command signal to the CPU 20, and the generation cycle of the interrupt command signal is, for example, 10 [ms]. The CPU 20 executes the sensor output process of FIG. 6 every time the timer 26 generates an interrupt command signal.

【0015】MIDIイーターフェース28は、図2の
MIDIイーターフェース70とMIDIケーブルで接
続されたもので、テンポ制御情報TC、ダイナミクス制
御情報DC等をMIDIイーターフェース70に供給す
る。
The MIDI eater face 28 is connected to the MIDI eater face 70 of FIG. 2 with a MIDI cable and supplies tempo control information TC, dynamics control information DC and the like to the MIDI eater face 70.

【0016】図2の電子楽器50において、バス52に
は、押鍵検出回路54、操作検出回路56、表示回路5
8、音源回路60、CPU62、ROM64、RAM6
6、タイマ68、MIDIイーターフェース70、フロ
ッピィディスク装置72が接続されている。
In the electronic musical instrument 50 shown in FIG. 2, the bus 52 has a key pressing detection circuit 54, an operation detection circuit 56, and a display circuit 5.
8, tone generator circuit 60, CPU 62, ROM 64, RAM 6
6, a timer 68, a MIDI eater face 70, and a floppy disk device 72 are connected.

【0017】押鍵検出回路54は、鍵盤74の多数の鍵
にそれぞれ設けられた多数のキースイッチを走査するな
どして各鍵毎に鍵操作情報を検出するものである。
The key-depression detection circuit 54 detects key operation information for each key by scanning a number of key switches provided on each key of the keyboard 74.

【0018】操作検出回路56は、演奏モード選択スイ
ッチ等を含むスイッチ群76中の各スイッチ毎に操作情
報を検出するものである。演奏モード選択スイッチによ
りマニアル演奏モード及び自動演奏モードのうち一方又
は双方を選択可能である。
The operation detection circuit 56 detects operation information for each switch in the switch group 76 including the performance mode selection switch and the like. One or both of the manual performance mode and the automatic performance mode can be selected by the performance mode selection switch.

【0019】表示回路58は、テンポ、音量等の設定値
を表示する表示器を含んでいる。
The display circuit 58 includes a display for displaying set values such as tempo and volume.

【0020】音源回路60は、一例として第1〜第15
の音源チャンネルを有するもので、各音源チャンネル毎
にイベントデータに応じて楽音信号を発生可能である。
例えば、キーオンに係るチャンネルナンバ1のイベント
データがチャンネルナンバ1の音源チャンネルに割当て
られると、この音源チャンネルからは、供給されたイベ
ントデータの指示する音高及び音量を有する楽音信号の
発生が開始される。そして、キーオフに係るチャンネル
ナンバ1のイベントデータがチャンネルナンバ1の音源
チャンネルに割当てられると、この音源チャンネルで
は、供給されたイベントデータの指示する音高を有する
楽音信号の減衰が開始される。他の音源チャンネルにお
いても、上記したと同様にして楽音信号発生制御動作が
行なわれる。
The tone generator circuit 60 includes, for example, the first to fifteenth tone generator circuits.
, And it is possible to generate a musical tone signal according to the event data for each sound source channel.
For example, when the event data of the channel number 1 related to the key-on is assigned to the sound source channel of the channel number 1, generation of a tone signal having the pitch and volume indicated by the supplied event data is started from this sound source channel. It When the event data of the channel number 1 related to the key-off is assigned to the sound source channel of the channel number 1, the tone signal having the pitch indicated by the supplied event data starts to be attenuated in this sound source channel. The tone signal generation control operation is performed in the other sound source channels in the same manner as described above.

【0021】音源回路60から発生される1又は複数の
楽音信号は、サウンドシステム78に供給され、音響に
変換される。
One or a plurality of tone signals generated by the tone generator circuit 60 are supplied to the sound system 78 and converted into sound.

【0022】CPU62は、ROM64にストアされた
プログラムに従って鍵盤74の操作に基づくマニアル演
奏音信号の発生及び/又はRAM66の演奏データに基
づく自動演奏音信号の発生を制御するもので、自動演奏
音信号の発生のための各種処理については図11〜17
を参照して後述する。RAM66には、フロッピィディ
スク装置72から所望の楽曲の演奏データを選択して書
込めるようになっている。別の選択方法としては、演奏
データをROM64から選択して読出すようにしてもよ
い。RAM66は、CPU62による各種処理に際して
レジスタ、カウンタ等として使用される記憶領域も含ん
でいる。
The CPU 62 controls the generation of the manual performance sound signal based on the operation of the keyboard 74 and / or the automatic performance sound signal based on the performance data of the RAM 66 in accordance with the program stored in the ROM 64. 11 to 17 for various processes for the occurrence of
Will be described later with reference to. Performance data of a desired music piece can be selected and written in the RAM 66 from the floppy disk device 72. As another selection method, performance data may be selected from the ROM 64 and read out. The RAM 66 also includes a storage area used as a register, a counter, or the like for various processing by the CPU 62.

【0023】タイマ68は、CPU62に割込命令信号
を供給するもので、割込命令信号の発生周期は、一例と
して1[ms]である。CPU62は、タイマ68から
割込命令信号が発生されるたびに図13の再生処理を実
行する。この結果として、RAM66の演奏データに基
づく自動演奏が遂行される。
The timer 68 supplies an interrupt command signal to the CPU 62, and the generation cycle of the interrupt command signal is, for example, 1 [ms]. The CPU 62 executes the reproduction process of FIG. 13 every time an interrupt command signal is generated from the timer 68. As a result, the automatic performance based on the performance data in the RAM 66 is performed.

【0024】MIDIイーターフェース70は、図1の
揺動分析装置10からテンポ制御情報TC及びダイナミ
クス制御情報DCを受信する。CPU62は、テンポ制
御情報TCに応じて自動演奏のテンポを制御すると共
に、ダイナミクス制御情報DCに応じて自動演奏音の音
量を制御する。
The MIDI eater face 70 receives the tempo control information TC and the dynamics control information DC from the swing analyzer 10 of FIG. The CPU 62 controls the tempo of the automatic performance according to the tempo control information TC, and controls the volume of the automatic performance sound according to the dynamics control information DC.

【0025】図3は、指揮棒32の揺動動作を3拍子の
場合(A)と2拍子又は4拍子の場合(B)とに分けて
示したものである。
FIG. 3 shows the swing motion of the baton 32 divided into three beats (A) and two beats or four beats (B).

【0026】(A)の3拍子の場合には、位置P1 ,P
2 ,P3 の順に3角形を描くような揺動動作が行なわれ
る。センサ34の出力X及びセンサ36の出力Yに対応
してA/D変換回路16及び18から得られる出力値を
それぞれDX 及びDY とすると、絶対角速度DZ は、次
の数1の式で求められる。
In the case of the triple beat of (A), the positions P 1 , P
A rocking motion is performed such that a triangle is drawn in the order of 2 and P 3 . Assuming that the output values obtained from the A / D conversion circuits 16 and 18 corresponding to the output X of the sensor 34 and the output Y of the sensor 36 are D X and D Y , respectively, the absolute angular velocity D Z can be calculated by the following formula 1. Required by.

【0027】[0027]

【数1】 図4は、絶対角速度DZ の時間的変化の一例を示すもの
で、変化波形における3つの谷は、図3の位置P1 ,P
2 ,P3 にそれぞれ対応する。また、位置P1〜P2
の動作1と位置P2 〜P3 の動作2と位置P3 〜P1
動作3とは、変化波形におけるピークQ1 ,Q2 ,Q3
(1,2,3拍目のピーク)にそれぞれ対応する。
[Equation 1] FIG. 4 shows an example of the change over time of the absolute angular velocity D Z. The three valleys in the change waveform are the positions P 1 and P in FIG.
2 and P 3 , respectively. The operation 1 between the positions P 1 and P 2, the operation 2 between the positions P 2 and P 3 and the operation 3 between the positions P 3 and P 1 are peaks Q 1 , Q 2 , and Q 3 in the change waveform.
(Peaks of beats 1, 2 and 3) respectively.

【0028】この発明の実施形態にあっては、ファジィ
推論処理を用いてピークQ1 〜Q3をそれぞれ検出する
と共に動作1〜3(ピーク種類)をそれぞれ判別し、そ
れぞれの判別結果に応じて動作1ならばC3 のキーコー
ドを有するテンポ制御情報TCを発生し、動作2ならば
C#3 のキーコードを有するテンポ制御情報TCを発生
し、動作3ならばD3 のキーコードを有するテンポ制御
情報TCを発生する。なお、この実施形態ではテンポ制
御情報として所定のキーコードを有するキーデータを用
いたが、テンポ制御専用のデータを用いてもよい。
In the embodiment of the present invention, the fuzzy inference processing is used to detect the peaks Q 1 to Q 3 and the operations 1 to 3 (peak types) are respectively discriminated. In the operation 1, the tempo control information TC having the key code of C 3 is generated, in the operation 2, the tempo control information TC having the key code of C # 3 is generated, and in the operation 3, the tempo control information TC having the key code of D 3 is generated. The tempo control information TC is generated. In this embodiment, key data having a predetermined key code is used as the tempo control information, but tempo control dedicated data may be used.

【0029】図3(B)の2拍子又は4拍子の場合に
は、位置P11から位置P12への振り下ろし動作1と位置
12から位置P11への振り上げ動作3との2動作とな
り、3拍子の場合と同様の処理により動作1ならばC3
のキーコードを有するテンポ制御情報TCを発生し、動
作3ならばD3 のキーコードを有するテンポ制御情報T
Cを発生する。
In the case of 2 beats or 4 beats of FIG. 3B, there are two movements, that is, a swinging-down movement 1 from the position P 11 to the position P 12 and a swinging-up movement 3 from the position P 12 to the position P 11 . By the same processing as in the case of 3 beats, if it is motion 1, C 3
Tempo control information TC having the key code of D 3 is generated, and in operation 3, tempo control information T having the key code of D 3 is generated.
Generate C.

【0030】図3(A)又は(B)のいずれの場合に
も、ダイナミクス制御情報DCは、絶対角速度DZ のピ
ーク値(Q1 〜Q3 等)の大きさに対応して発生され
る。
In either case of FIG. 3A or 3B, the dynamics control information DC is generated in correspondence with the magnitude of the peak value (Q 1 to Q 3 etc.) of the absolute angular velocity D Z. .

【0031】図5は、xy平面内の角度θを示すもので
ある。角度θは、A/D変換回路16,18の出力値D
X ,DY をxy平面にプロットしたときの点をSとする
と、原点0と点Sを通る直線がx軸となす角度として定
義される。角度θの情報は、ファジィ推論処理により動
作1〜3(ピーク種類)を判別する際に使用される。
FIG. 5 shows the angle θ in the xy plane. The angle θ is the output value D of the A / D conversion circuits 16 and 18.
Letting S be the point when X and D Y are plotted on the xy plane, it is defined as the angle formed by the straight line passing through the origin 0 and the point S with the x axis. The information of the angle θ is used when discriminating the operations 1 to 3 (peak type) by the fuzzy inference process.

【0032】図6は、センサ出力処理を示すもので、こ
の処理は、タイマ26から割込命令信号が発生されるた
びに(すなわち10[ms]の周期で)行なわれる。
FIG. 6 shows the sensor output process. This process is performed every time an interrupt command signal is generated from the timer 26 (that is, at a cycle of 10 [ms]).

【0033】ステップ80では、A/D変換回路16,
18から出力値DX ,DY を取込む。そして、ステップ
82に移り、前掲の数1の式に従って絶対角速度DZ
求める。
In step 80, the A / D conversion circuit 16,
Input output values D X and D Y from 18. Then, the process proceeds to step 82, and the absolute angular velocity D Z is obtained according to the equation of the above-mentioned formula 1.

【0034】次に、ステップ84では、ピーク検出処理
を行なう。ピーク検出処理では、図4のQ1 〜Q3 等の
ピークを検出すると共に検出したピークが何拍目のピー
クか判別するが、詳しくは図7を参照して後述する。
Next, at step 84, peak detection processing is performed. In the peak detection processing, the peaks such as Q 1 to Q 3 in FIG. 4 are detected and the beat of the detected peak is determined, which will be described later in detail with reference to FIG. 7.

【0035】次に、ステップ86では、ダイナミクス制
御情報DCを作成し、イーターフェース28を介して送
出する。ダイナミクス制御情報DCは、ステップ84で
ピークが検出されたときそのピーク値の大きさに対応す
る音量レベルを指示するように作成される。イーターフ
ェース28から図2の電子楽器50に送信されたダイナ
ミクス制御情報DCは、RAM66内の音量制御レジス
タにセットされる。この後、図示しないメインルーチン
にリターンする。
Next, at step 86, the dynamics control information DC is created and transmitted via the eater interface 28. The dynamics control information DC is created to indicate the volume level corresponding to the magnitude of the peak value when the peak is detected in step 84. The dynamics control information DC transmitted from the eater face 28 to the electronic musical instrument 50 of FIG. 2 is set in the volume control register in the RAM 66. Then, the process returns to the main routine (not shown).

【0036】図7は、ピーク検出処理を示すもので、ス
テップ90では、ルール1のファジィ推論処理を行な
う。このファジィ推論処理では、今回より1つ前のDZ
値がピークである確率を求め、その確率が所定の条件を
満たすときにピークとするが、詳しくは図8,9を参照
して後述する。
FIG. 7 shows the peak detection processing. In step 90, rule 1 fuzzy inference processing is performed. In this fuzzy inference process, D Z one before this time
The probability that the value is a peak is obtained, and when the probability satisfies a predetermined condition, it is regarded as a peak. Details will be described later with reference to FIGS.

【0037】次に、ステップ92では、ステップ90の
処理においてピークが得られたか判定する。この判定結
果が肯定的(Y)であればステップ94に移る。
Next, in step 92, it is determined whether or not a peak has been obtained in the process of step 90. If this determination result is affirmative (Y), the process proceeds to step 94.

【0038】ステップ94では、ピーク種類判別処理を
行なう。この判別処理では、検出したピークが何拍目の
ピークか(例えば図3の動作1〜3のいずれか)判別す
るが、詳しくは図10を参照して後述する。
At step 94, peak type discrimination processing is performed. In this determination process, the number of beats of the detected peak is determined (for example, any one of the operations 1 to 3 in FIG. 3), which will be described later in detail with reference to FIG.

【0039】ステップ94の処理が終ったとき又はステ
ップ92の判定結果が否定的(N)であったときは、図
6のルーチンにリターンする。
When the process of step 94 is completed or the result of the determination in step 92 is negative (N), the routine returns to the routine of FIG.

【0040】図8は、ルール1のファジィ推論処理を示
すもので、ステップ100では、今回より1つ前のDZ
の値がピークである確率を求める。一例として、ファジ
ィルール1は次の数2のように記述される。
FIG. 8 shows the fuzzy inference process of rule 1. In step 100, D Z one before this time is executed.
Find the probability that the value of is a peak. As an example, the fuzzy rule 1 is described as the following Expression 2.

【0041】[0041]

【数2】もし{([a]1つ前の値は2つ前の値よりも
大きい) 且つ([b]1つ前の値は今回の値よりも大きい) 且つ([c]前回のピーク発生時刻から時間が経ってい
る) 且つ([d]1つ前の値はダイナミックなしきい値より
大きい) 且つ([e]前回の谷発生時刻から時間が経っている) 且つ([f]1つ前の値が前回のピーク値と比べて小さ
すぎない)} ならば([g]1つ前の値がピークである確率が高い) ここで、ダイナミックなしきい値とは、次々に求められ
たDZ 値を所定時間内で平均した値をいう。
If {([a] the previous value is larger than the previous value) and ([b] the previous value is larger than the current value) and ([c] the previous value (Time has passed since the peak occurrence time) and ([d] The previous value is larger than the dynamic threshold) and ([e] Time has passed since the last valley occurrence time) and ([f] The previous value is not too small compared to the previous peak value)} (if [g] the previous value is a peak is high) Here, the dynamic threshold is calculated one after another. It is a value obtained by averaging the obtained D Z values within a predetermined time.

【0042】次に、ファジィルール1において変数とな
る言語をメンバーシープ関数で表わす。図9(A)〜
(G)は、ファジィルール1中の条件[a]〜[g]に
それぞれ対応するメンバーシップ関数を例示するもの
で、tは時間を表わす。
Next, the language that is a variable in the fuzzy rule 1 is represented by a member sheep function. FIG. 9 (A)-
(G) illustrates membership functions respectively corresponding to the conditions [a] to [g] in the fuzzy rule 1, and t represents time.

【0043】次に、(A)〜(F)のメンバーシップ関
数について入力に対するメンバーシップ値を求める。
(A)のグラフにおいて、D2 を2つ前の値とすると、
1つ前の値に対応するメンバーシップ値は破線で示すよ
うにM1 となる。(B)のグラフにおいて、D0 を今回
の値とすると、1つ前の値に対応するメンバーシップ値
は破線で示すようにM2 となる。(C)のグラフにおい
て、前回のピーク発生時刻からの経過時間に対応するメ
ンバーシップ値は破線で示すようにM3 となる。(D)
のグラフにおいて、Dd をダイナミックなしきい値とす
ると、1つ前の値に対応するメンバーシップ値は破線に
対応してM4 =1となる。(E)のグラフにおいて、前
回の谷発生時刻からの経過時間に対応するメンバーシッ
プ値は破線で示すようにM5 となる。(F)のグラフに
おいて、Dp を前回のピーク値とすると、1つ前の値に
対応するメンバーシップ値は破線で示すようにM6 とな
る。
Next, regarding the membership functions of (A) to (F), the membership value for the input is obtained.
In the graph of (A), if D 2 is the value two before,
The membership value corresponding to the previous value is M 1 as indicated by the broken line. In the graph of (B), when D 0 is the current value, the membership value corresponding to the previous value is M 2 as shown by the broken line. In the graph of (C), the membership value corresponding to the elapsed time from the previous peak occurrence time is M 3 as shown by the broken line. (D)
In the graph, the membership value corresponding to the previous value is M 4 = 1 corresponding to the broken line, where D d is a dynamic threshold value. In the graph of (E), the membership value corresponding to the elapsed time from the previous valley occurrence time is M 5 , as shown by the broken line. In the graph of (F), when D p is the previous peak value, the membership value corresponding to the previous value is M 6 , as indicated by the broken line.

【0044】次に、(A)〜(F)のメンバーシップ関
数に基づく推論結果から最終的な推論結果を求める。す
なわち、[a]〜[f]の条件は「且つ」で結ばれてい
るので、メンバーシップ値M1 〜M6 のうちから最小値
min を求め、Mmin を(G)のグラフにメンバーシッ
プ値として適用して図形FがMmin 以上の部分を削除す
る。そして、残った図形Fについて重心Fgを演算によ
り求める。重心の変動範囲Pは、確率0〜1の範囲であ
り、重心Fgに対応してピークである確率を求める。
Next, a final inference result is obtained from the inference results based on the membership functions of (A) to (F). That is, since the conditions [a] to [f] are connected by “and”, the minimum value M min is obtained from the membership values M 1 to M 6 , and M min is a member in the graph of (G). It is applied as a ship value and the part of the figure F above M min is deleted. Then, the center of gravity Fg of the remaining figure F is calculated. The variation range P of the center of gravity is a range of probabilities 0 to 1, and the probability of being a peak corresponding to the center of gravity Fg is obtained.

【0045】次に、図8のステップ102では、ステッ
プ100で求めた確率に基づいてピークであるか否か決
定する。すなわち、求めた確率が所定値(例えば0.
5)以上か判定し、この判定結果が肯定的ならばピーク
であると決定し、否定的ならばピークでないと決定す
る。そして、図7のルーチンにリターンする。
Next, in step 102 of FIG. 8, it is determined whether or not there is a peak based on the probability obtained in step 100. That is, the calculated probability is a predetermined value (for example, 0.
5) It is determined whether or not it is above, and if this determination result is affirmative, it is determined that it is a peak, and if it is negative, it is determined that it is not a peak. Then, the process returns to the routine of FIG.

【0046】図10は、ピーク種類判別処理を示すもの
で、ステップ110では、ルール2のファジィ推論処理
を行なう。この推論処理では、今回のピーク種類が動作
1である確率を求める。一例として、ファジィルール2
は、次の数3のように記述される。
FIG. 10 shows the peak type discrimination processing. In step 110, the fuzzy inference processing of rule 2 is performed. In this inference process, the probability that the current peak type is motion 1 is obtained. As an example, fuzzy rule 2
Is described as the following Expression 3.

【0047】[0047]

【数3】もし{(((出力値DY が小さい)且つ(出力
値DX が大きい)) 又は(前回のピーク種類が動作3) 又は((前回のピーク種類が動作2)且つ(今回と前回
の角度差が大きい))) 且つ(今回の角度は中位)} ならば(今回のピーク種類は動作1である確率が高い) ここで、角度とは、図5に関して前述したものであり、
角度差とは、かような角度の差である。
If {(((the output value D Y is small) and (the output value D X is large)) or (the previous peak type is operation 3) or ((the previous peak type is operation 2) and (this time) And (the angle difference of the previous time is large))) and (the angle of this time is medium)} (the probability of the peak type of this time being operation 1 is high), where the angle is the one described above with reference to FIG. Yes,
The angle difference is such an angle difference.

【0048】ルール2のファジィ推論処理は、ルール1
について前述したと同様に行なうことができる。すなわ
ち、ルール2において変数となる言語をメンバーシップ
関数で表わし、「ならば」の前までの各条件について入
力に対するメンバーシップ値を求める。そして、「且
つ」で結ばれた条件については最小のメンバーシップ値
を求め、「又は」で結ばれた条件については最大のメン
バーシップ値を求める。「ならば」のメンバーシップ関
数に基づいて重心法により今回のピーク種類が動作1で
ある確率を求める。
The fuzzy inference processing of rule 2 is the same as rule 1
Can be performed in the same manner as described above. That is, the language that is a variable in rule 2 is represented by a membership function, and the membership value for the input is obtained for each condition up to the "if". Then, the minimum membership value is obtained for the condition connected by "and", and the maximum membership value is obtained for the condition connected by "or". The probability that the peak type this time is the motion 1 is calculated by the center of gravity method based on the membership function of “if”.

【0049】次に、図10のステップ112では、ルー
ル3のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が動作2である確率を求める。一例と
して、ファジィルール3は、次の数4のように記述され
る。
Next, in step 112 of FIG. 10, fuzzy inference processing of rule 3 is performed. In this inference process,
The probability that the peak type this time is motion 2 is calculated. As an example, the fuzzy rule 3 is described as the following Expression 4.

【0050】[0050]

【数4】もし{(((前回のピーク種類が動作1)且つ
(今回と前回の角度差が小さい) 又は((前回のピーク種類が動作3)且つ(今回と前回
の角度差が大きい)) 又は((前回のピーク種類が判別失敗)且つ(出力値D
Y が大きい)且つ(出力値DX が小さい)) 又は(前回のピーク種類が判別失敗)且つ(今回の角度
が0°に近い)))} ならば(今回のピーク種類は動作2である確率が高い) ルール3のファジィ推論処理は、ルール2について前述
したと同様にして行なうことができる。
If {(((the previous peak type is operation 1) and (the current and previous angle difference is small)) or ((the last peak type is operation 3) and (the current and previous angle difference is large) ) Or ((the previous peak type was not determined) and (output value D
( Y is large) and (the output value D X is small)) or (the previous peak type has failed to be discriminated) and (the current angle is close to 0 °)))) (the current peak type is operation 2) (High probability) The fuzzy inference process of rule 3 can be performed in the same manner as described above for rule 2.

【0051】次に、図10のステップ114では、ルー
ル4のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が動作3である確率を求める。一例と
して、ファジィルール4は、次の数5のように記述され
る。
Next, in step 114 of FIG. 10, fuzzy inference processing of rule 4 is performed. In this inference process,
The probability that the peak type this time is the operation 3 is calculated. As an example, the fuzzy rule 4 is described as the following Expression 5.

【0052】[0052]

【数5】もし{(((前回のピーク種類が動作2)且つ
(今回と前回の角度差が小さい) 又は((前回のピーク種類が動作1)且つ(今回と前回
の角度差が大きい)) 又は((前回のピーク種類が判別失敗)且つ(出力値D
Y が大きい))} ならば(今回のピーク種類は動作3である確率が高い) ルール4のファジィ推論処理は、ルール2について前述
したと同様にして行なうことができる。
[Equation 5] If {(((the last peak type is operation 2) and (the current and previous angle difference is small) or ((the last peak type is operation 1) and (the current and previous angle difference is large) ) Or ((the previous peak type was not determined) and (output value D
If ( Y is large))} (the probability that the type of peak this time is action 3 is high), the fuzzy inference process of rule 4 can be performed in the same manner as described above for rule 2.

【0053】次に、図10のステップ116では、ルー
ル5のファジィ推論処理を行なう。この推論処理では、
今回のピーク種類が判別失敗である確率を求める。一例
として、ファジィルール5は、次の数6のように記述さ
れる。
Next, in step 116 of FIG. 10, fuzzy inference processing of rule 5 is performed. In this inference process,
The probability that the peak type this time is a discrimination failure is calculated. As an example, the fuzzy rule 5 is described as the following Expression 6.

【0054】[0054]

【数6】もし(ルール2,3,4のいずれの推論処理で
求めた確率も小さい) ならば(今回のピーク種類は判別失敗である確率が高
い) ルール5のファジィ推論処理もルール2について前述し
たと同様にして行なうことができる。
[Equation 6] If (the probability obtained by any of the inference processes of the rules 2, 3 and 4 is small) (the probability that the peak type this time is a discrimination failure is high), the fuzzy inference process of the rule 5 is also the rule 2. It can be performed in the same manner as described above.

【0055】図10のステップ118では、ルール5の
推論結果に基づいて判別失敗か否か決定する。すなわ
ち、ステップ116で求めた確率が所定値(例えば0.
5)以上か判定し、この判定結果が肯定的であれば判別
失敗であるとし、否定的であれば判別失敗でないとす
る。そして、ステップ120に移る。
In step 118 of FIG. 10, it is determined based on the inference result of rule 5 whether or not the discrimination has failed. That is, the probability obtained in step 116 is a predetermined value (for example, 0.
5) It is determined whether or not, and if the determination result is affirmative, it is determined that the determination has failed, and if the determination result is negative, it is determined that the determination has not failed. Then, the process proceeds to step 120.

【0056】ステップ120では、判別失敗か判定す
る。この判定結果が否定的(N)であればステップ12
2に移り、ルール2〜4の推論処理で求めた確率のうち
最も高い確率についてピーク種類を決定する。例えば、
ルール2の推論処理で求めた確率が最も高い場合、ピー
ク種類は動作1と決定される。
In step 120, it is determined whether or not the discrimination has failed. If the determination result is negative (N), step 12
2, the peak type is determined for the highest probability among the probabilities obtained by the inference processing of rules 2-4. For example,
If the probability obtained by the inference process of rule 2 is the highest, the peak type is determined to be action 1.

【0057】次に、ステップ124では、ピーク種類に
応じたキーコードを有するテンポ制御情報TCを発生す
る。例えば、ピーク種類が動作1であれば、C3 のキー
コードを有するテンポ制御情報TCが発生される。発生
されたテンポ制御情報TCは、インターフェース28,
70を介してRAM66内の所定のレジスタにセットさ
れる。
Next, at step 124, tempo control information TC having a key code corresponding to the peak type is generated. For example, if the peak type is operation 1, tempo control information TC having a C 3 key code is generated. The generated tempo control information TC is transferred to the interface 28,
It is set in a predetermined register in the RAM 66 via 70.

【0058】ステップ120の判定結果が肯定的(Y)
であったときは、ステップ126でピーク種類不明と決
定する。ステップ124又は126の処理が終ったとき
は、図7のルーチンにリターンする。
The determination result of step 120 is positive (Y).
If it is, it is determined in step 126 that the peak type is unknown. When the processing of step 124 or 126 ends, the routine returns to the routine of FIG. 7.

【0059】図11は、RAM66における演奏データ
のフォーマットを示すものである。
FIG. 11 shows the format of performance data in the RAM 66.

【0060】所望の楽曲の演奏データは、楽曲進行に従
ってデルタタイムデータΔT、イベントデータEV、デ
ルタタイムデータΔT、イベントデータEV…のように
データΔT及びEVを交互に配置したものである。いず
れのデルタタイムデータΔTも、[ms]の単位で時間
を表わすもので、最初のデルタタイムデータは、最初の
イベントまでの時間を表わし、イベント間のデルタタイ
ムデータは、イベント間の相対時間を表わす。例えば和
音発音のように1タイミングに複数イベントがあるとき
は、該イベント間のデルタタイムデータは0を表わす。
The performance data of a desired music piece is data in which ΔT and EV are alternately arranged like delta time data ΔT, event data EV, delta time data ΔT, event data EV, ... Any delta time data ΔT represents time in the unit of [ms], the first delta time data represents the time until the first event, and the delta time data between events represents the relative time between events. Represent. For example, when there are a plurality of events at one timing such as a chord sound, the delta time data between the events represents 0.

【0061】各イベントデータEVは、図12に示すよ
うに3バイトのデータからなる。第1バイトのうち上位
4ビットがイベント種類データESであり、下位4ビッ
トがチャンネルナンバデータCHNである。イベント種
類データESは、キーオン又はキーオフのようなイベン
ト種類を表わす。チャンネルナンバデータCHNは、0
〜15のいずれかのチャンネルナンバを表わす。チャン
ネルナンバ1〜15は、音源回路60の第1〜第15の
音源チャンネルに対応しているが、チャンネルナンバ0
は、テンポ制御マークとして使用される。
Each event data EV consists of 3-byte data as shown in FIG. The upper 4 bits of the first byte are the event type data ES, and the lower 4 bits are the channel number data CHN. The event type data ES represents an event type such as key-on or key-off. Channel number data CHN is 0
Represents a channel number of any one of .about.15. The channel numbers 1 to 15 correspond to the first to fifteenth sound source channels of the sound source circuit 60, but the channel number 0
Is used as a tempo control mark.

【0062】各イベントデータEVにおいて、第2バイ
トは、キーコードデータKCであり、音高を表わす。ま
た、第3バイトは、ベロシティデータVLであり、押鍵
速度に対応する音量を表わす。
In each event data EV, the second byte is the key code data KC and represents the pitch. The third byte is velocity data VL and represents the volume corresponding to the key pressing speed.

【0063】イベントデータEVとしては、チャンネル
ナンバ0のテンポ制御用のイベントデータと、チャンネ
ルナンバ1〜15の発音/非発音制御用のイベントデー
タ(キーオン/オフに係るイベントデータ)との2種類
のものが存在する。発音/非発音制御用のイベントデー
タは、楽曲を構成する各音符毎に楽音信号の発生及び減
衰開始を制御するもので、自動演奏の分野で広く使用さ
れている。一方、テンポ制御用のイベントデータは、こ
の発明を実施するために使用されるもので、以下では、
簡単のため「テンポ制御データ」と称する。
There are two types of event data EV: event data for tempo control of channel number 0 and event data for sounding / non-sounding control of channel numbers 1 to 15 (event data related to key on / off). Things exist. The event data for controlling pronunciation / non-pronuncing is used for controlling the generation and attenuation start of a musical tone signal for each note constituting a musical composition, and is widely used in the field of automatic performance. On the other hand, the event data for tempo control is used to carry out the present invention.
For the sake of simplicity, it is called “tempo control data”.

【0064】テンポ制御データとしては、3拍子の場
合、C3 ,C#3 ,D3 の3種類のキーコードを有する
ものが使用される。そして、C3 ,C#3 ,D3 のキー
コードを有するテンポ制御データは、基準となるテンポ
において第1拍、第2拍、第3拍のタイミングに対応す
る位置に配置され、このような順序で読出される。ま
た、4拍子の楽曲の場合、C3 ,D3 ,C3 ,D3 のテ
ンポ制御データがそれぞれ第1拍,第2拍,第3拍,第
4拍のタイミングに対応する位置に配置され、このよう
な順序で読出される。テンポ制御は、一例として、C3
のキーコードを有するテンポ制御データの読出タイミン
グに対して、C3 のキーコードを有するテンポ制御情報
TCの受信タイミングが早ければテンポを進めるよう
に、また遅ければテンポを遅らせるように行なわれる。
As the tempo control data, in the case of 3 beats, data having three types of key codes C 3 , C # 3 , and D 3 is used. Then, the tempo control data having the key codes of C 3 , C # 3 , and D 3 are arranged at the positions corresponding to the timings of the first beat, the second beat, and the third beat in the reference tempo. Read in order. Also, in the case of a four-beat musical piece, the tempo control data of C 3 , D 3 , C 3 , and D 3 are arranged at positions corresponding to the timings of the first beat, the second beat, the third beat, and the fourth beat, respectively. , Are read in this order. The tempo control is, for example, C 3
With respect to the read timing of the tempo control data having the key code of 3 , the tempo is advanced if the reception timing of the tempo control information TC having the key code of C 3 is early, and is delayed if it is late.

【0065】図13は、再生処理を示すもので、この処
理は、タイマ68から割込命令信号が発生されるたびに
(すなわち1[ms]の周期で)行なわれる。以下の説
明にて言及されるフラグ、レジスタ等は、RAM66内
に存在するものである。
FIG. 13 shows a reproducing process. This process is performed every time an interrupt command signal is generated from the timer 68 (that is, at a cycle of 1 [ms]). The flags, registers and the like referred to in the following description are present in the RAM 66.

【0066】ステップ130では、ランフラグRUNが
1か判定する。フラグRUNは、前述の演奏スタートス
イッチをオンするたびに1であれば0になり、0であれ
ば1になるもので、RUN=1は、自動演奏中であるこ
とを表わす。ステップ130の判定結果が肯定的(Y)
であればステップ132に移る。
In step 130, it is determined whether the run flag RUN is 1. The flag RUN is set to 0 if it is 1 and 0 if it is 0 each time the performance start switch is turned on, and RUN = 1 indicates that the automatic performance is being performed. The determination result of step 130 is positive (Y)
If so, the process proceeds to step 132.

【0067】ステップ132では、読出停止フラグPA
USEが0か判定する。フラグPAUSEは、RAM6
6からテンポ制御データを読出したにもかかわらず、そ
の読出タイミングまでに対応するテンポ制御情報TCが
受信されていないときに1となるもので、ステップ13
2の判定結果が肯定的(Y)であるとき(TCを受信済
みのとき)は、ステップ134に移る。
At step 132, the read stop flag PA
Determine if USE is 0. The flag PAUSE is in RAM6.
Even though the tempo control data has been read from 6, the corresponding tempo control information TC has not been received by the read timing.
When the determination result of 2 is affirmative (Y) (when TC has been received), the process proceeds to step 134.

【0068】ステップ134では、デルタタイムレジス
タTIMEが0か判定する。レジスタTIMEには、R
AM66から読出したデルタタイムデータΔTをセット
し(ステップ142)、データΔTの示す値を割込みの
たびに1ずつ減算している(ステップ148)ので、T
IME=0は、次のイベントデータを読出すべきタイミ
ングになったことを意味する。ステップ134の判定結
果が肯定的(Y)であればステップ136に移る。
In step 134, it is determined whether the delta time register TIME is 0. The register TIME contains R
The delta time data ΔT read from the AM 66 is set (step 142), and the value indicated by the data ΔT is decremented by 1 at each interrupt (step 148).
IME = 0 means that it is time to read the next event data. If the determination result of step 134 is affirmative (Y), the process proceeds to step 136.

【0069】ステップ136では、RAM66のアドレ
スを1つ進めてデータを読出す。そして、ステップ13
8に移り、読出したデータがデルタタイムデータΔTか
判定する。ステップ134の後初めてステップ138に
きたときは、ステップ138の判定結果が否定的(N)
となる(ΔTの次は必ずイベントデータEVの読出しと
なる)ので、ステップ140に移る。ステップ140で
は、図14について後述するようにイベント対応処理を
行なう。この後、ステップ136に戻る。
At step 136, the address of the RAM 66 is advanced by 1 to read the data. And step 13
8 and it is determined whether the read data is delta time data ΔT. When step 138 is first reached after step 134, the determination result of step 138 is negative (N).
(Event data EV is always read after ΔT), the process proceeds to step 140. In step 140, event handling processing is performed as described later with reference to FIG. Then, the process returns to step 136.

【0070】ステップ136では、再びアドレスを進め
てデータを読出す。そして、ステップ138で読出デー
タがデルタタイムデータΔTか判定すると、判定結果が
肯定的(Y)となり、ステップ142に移る。
In step 136, the address is advanced again to read the data. When it is determined in step 138 whether the read data is the delta time data ΔT, the determination result is affirmative (Y), and the process proceeds to step 142.

【0071】ステップ142では、読出されたデルタタ
イムデータΔTをレジスタTIMEにセットする。そし
て、ステップ144でTIME=0か判定する。通常
は、読出直後にデルタタイムデータΔTがゼロになるこ
とはないが、前述したように和音発音等の場合にはΔT
=0のこともある。このような場合には、ステップ14
4の判定結果が肯定的(Y)となり、ステップ136に
戻る。
In step 142, the read delta time data ΔT is set in the register TIME. Then, in step 144, it is determined whether TIME = 0. Normally, the delta time data ΔT does not become zero immediately after reading, but as described above, in the case of chord sounding, ΔT.
= 0 in some cases. In such a case, step 14
The determination result of 4 is affirmative (Y), and the process returns to step 136.

【0072】ステップ136では、次のイベントデータ
を読出し、ステップ138を介してステップ140でイ
ベント対応処理を行なう。そして、ステップ136に戻
って次のデルタタイムデータΔTを読出してステップ1
38,142を介して再びステップ144にくる。ステ
ップ144の判定結果が肯定的(Y)であれば、ステッ
プ136に戻る。ステップ136では、次のイベントデ
ータを読出し、ステップ138を介してステップ140
でイベントデータ対応処理を行なう。このようにして、
和音を構成する第1〜第3音を実質的に同時に発音させ
ることができる。ステップ140の後は、上記したと同
様にステップ136,138,142,144の処理を
行なう。
At step 136, the next event data is read out, and the event handling process is performed at step 140 via step 138. Then, returning to step 136, the next delta time data ΔT is read out, and step 1
Steps 144 and 38 again come to step 144. If the determination result of step 144 is affirmative (Y), the process returns to step 136. In step 136, the next event data is read out and step 140 is executed via step 138.
The event data handling process is performed. In this way,
The first to third tones constituting the chord can be sounded substantially simultaneously. After step 140, steps 136, 138, 142 and 144 are processed in the same manner as described above.

【0073】ステップ144の判定結果が否定的(N)
であったときは、ステップ146に移る。ステップ14
6では、レジスタTIMEの値にテンポ係数レジスタT
MKの値(テンポ係数TMK)を乗じたものをTIME
にセットする。
The determination result of step 144 is negative (N).
If it is, the process proceeds to step 146. Step 14
In 6, the value of the register TIME is set to the tempo coefficient register T
TIME is the product of the MK value (tempo coefficient TMK)
Set to.

【0074】テンポ係数TMKは、基準値が1であり、
指揮棒32の揺動速度が速い又は遅いに応じてそれぞれ
1より小さく又は大きくなるように後述のステップ15
4の処理で変更される。従って、TIMEの値は、テン
ポ係数TMKの乗算により修正され、この結果として自
動演奏のテンポが指揮棒32の揺動速度に追従すべく制
御される。
The tempo coefficient TMK has a reference value of 1,
Step 15 to be described later is set so as to be smaller or larger than 1 depending on whether the swing speed of the baton 32 is fast or slow.
It is changed in the process of 4. Therefore, the value of TIME is corrected by multiplying the tempo coefficient TMK, and as a result, the tempo of the automatic performance is controlled so as to follow the swing speed of the baton 32.

【0075】ステップ146の処理が終ったとき又はス
テップ134の判定結果が否定的(N)であった(読出
すべきタイミングに達していない)ときは、ステップ1
48に移る。ステップ148では、TIMEの値を1減
らす。そして、ステップ150に移り、読出間隔レジス
タRBの値を1増やす。レジスタRBは、図16に示す
ようにあるテンポ制御データTEV1 の読出タイミング
から次のテンポ制御データTEV2 の読出タイミングま
での時間間隔に対応する数値を得るためのものである。
When the processing of step 146 is completed or the determination result of step 134 is negative (N) (the timing to read is not reached), step 1
Move to 48. In step 148, the value of TIME is decremented by 1. Then, the process proceeds to step 150, and the value of the read interval register RB is incremented by 1. The register RB is for obtaining a numerical value corresponding to the time interval from the read timing of certain tempo control data TEV 1 to the read timing of the next tempo control data TEV 2 , as shown in FIG.

【0076】ステップ150の処理が終ったとき又はス
テップ132の判定結果が否定的(N)であった(TC
の受信待ちである)ときは、ステップ152に移る。ス
テップ152では、受信間隔レジスタRAの値を1増や
す。レジスタRAは、図16に示すようにあるテンポ制
御情報TC1 の受信タイミングから次のテンポ制御情報
TC2 の受信タイミングまでの時間間隔に対応する数値
を得るためのものである。ステップ152の後は、ステ
ップ154に移り、図15について後述するようにテン
ポ制御処理を実行する。
When the processing of step 150 is completed or the determination result of step 132 is negative (N) (TC
(Waiting for reception of), the process moves to step 152. At step 152, the value of the reception interval register RA is incremented by 1. The register RA is for obtaining a numerical value corresponding to the time interval from the reception timing of certain tempo control information TC 1 to the reception timing of the next tempo control information TC 2 as shown in FIG. After step 152, the process proceeds to step 154, and the tempo control process is executed as described later with reference to FIG.

【0077】ステップ154の処理が終ったとき又はス
テップ130の判定結果が否定的(N)であった(自動
演奏中でない)ときは、図示しないメインルーチンにリ
ターンする。
When the processing of step 154 is completed or when the determination result of step 130 is negative (N) (not during automatic performance), the routine returns to a main routine (not shown).

【0078】図14は、イベント対応処理を示すもの
で、ステップ160では、読出データがテンポ制御デー
タTEVが判定する。この判定結果が肯定的(Y)であ
ればステップ162に移る。
FIG. 14 shows the event handling process. In step 160, the read data is determined by the tempo control data TEV. If the determination result is affirmative (Y), the process proceeds to step 162.

【0079】ステップ162では、受信フラグTCRF
が1か(テンポ制御情報TCを受信済みか)判定する。
この判定結果が肯定的(Y)であればステップ164に
移り、TCRFに0をセットする。これは、テンポ制御
データTEVを読出したときに対応するテンポ制御情報
TCが受信済みであることを意味する。
At step 162, the reception flag TCRF
Is 1 (whether the tempo control information TC has been received).
If this determination result is affirmative (Y), the process proceeds to step 164 and TCRF is set to 0. This means that the corresponding tempo control information TC has been received when the tempo control data TEV is read.

【0080】ステップ162の判定結果が否定的(N)
であったときは、ステップ166に移り、テンポ制御デ
ータTEV中のキーコードデータKCをレジスタKEY
にセットする。そして、ステップ168に移り、レジス
タPAUSEに1をセットする。これは、テンポ制御デ
ータTEVに対応するテンポ制御情報TCを受信するま
でRAM66からの演奏データ読出しを停止するためで
ある。すなわち、図13では、ステップ132でPAU
SE=1であればステップ136〜146の読出処理を
しないでステップ148に移る。そして、テンポ制御情
報TCが受信されると、ステップ154の処理でPAU
SE=1となり、この後は、RAM66からの演奏デー
タ読出しが行なわれる。
The determination result of step 162 is negative (N).
If it is, the process proceeds to step 166 and the key code data KC in the tempo control data TEV is stored in the register KEY.
Set to. Then, the process proceeds to step 168 and 1 is set in the register PAUSE. This is because the reading of the performance data from the RAM 66 is stopped until the tempo control information TC corresponding to the tempo control data TEV is received. That is, in FIG. 13, in step 132, PAU
If SE = 1, the read process of steps 136 to 146 is skipped and the process proceeds to step 148. Then, when the tempo control information TC is received, PAU is executed in the processing of step 154.
SE = 1, and thereafter, performance data is read from the RAM 66.

【0081】ステップ160の判定結果が否定的(N)
であったときは、ステップ170に移り、発音/非発音
制御用のイベントデータPEVのうち発音用のものだけ
ベロシティデータLVの値をRAM66内のレジスタに
あるダイナミクス制御情報DCに応じて修正する。例え
ば、指揮棒の振りが強いときは、制御情報DCに応じて
音量を高めるべくVLの値を修正する。そして、ステッ
プ172に移る。
The determination result of step 160 is negative (N).
If so, the process proceeds to step 170, and the value of the velocity data LV of only the sounding one of the sounding / non-sounding controlling event data PEV is corrected according to the dynamics control information DC in the register in the RAM 66. For example, when the baling of the baton is strong, the value of VL is corrected to increase the volume according to the control information DC. Then, the process proceeds to step 172.

【0082】ステップ172では、発音/非発音制御用
のイベントデータPEVを音源回路60に送出する。こ
のとき送出されるデータが発音制御用のイベントデータ
(キーオンに係るイベントデータ)であればそれに対応
する楽音信号の発生が開始され、非発音制御用のイベン
トデータ(キーオフに係るイベントデータ)であればそ
れに対応する楽音信号の減衰が開始される。
At step 172, the event data PEV for sounding / non-sounding control is sent to the sound source circuit 60. If the data transmitted at this time is event data for tone generation control (event data related to key-on), the generation of a tone signal corresponding thereto is started, and it may be event data for non-sound generation control (event data related to key-off). For example, the attenuation of the musical tone signal corresponding to that is started.

【0083】ステップ164,168又は172の処理
が終ったときは、図13のルーチンにリターンする。
When the processing of step 164, 168 or 172 is completed, the routine returns to the routine of FIG.

【0084】図15は、テンポ制御処理を示すもので、
ステップ180では、テンポ制御情報TCの受信ありか
判定する。この判定結果が否定的(N)であれば図13
のルーチンにリターンする。
FIG. 15 shows the tempo control process.
In step 180, it is determined whether the tempo control information TC is received. If the determination result is negative (N), FIG.
Return to the routine.

【0085】ステップ180の判定結果が肯定的(Y)
であったときは、ステップ182でPAUSE=1か
(読出停止中か)判定する。この判定結果が肯定的
(Y)である場合は、テンポ制御データTEVの読出し
よりそれに対応するテンポ制御情報TCの受信が遅れた
(揺動速度が遅い)場合であり、その一例を図16に示
す。すなわち、テンポ制御データTEV2 が読出された
時点でTEV2 に対応するテンポ制御情報TC2'が受信
されておらず(PAUSE=1)、この後でTC2'が受
信された場合である。
The determination result of step 180 is positive (Y).
If it is, it is determined in step 182 whether PAUSE = 1 (whether reading is stopped). If the determination result is affirmative (Y), it means that the reception of the tempo control information TC corresponding to the read of the tempo control data TEV is delayed (the swing speed is slow), and an example thereof is shown in FIG. Show. That is, the tempo control information TC 2 ′ corresponding to TEV 2 has not been received (PAUSE = 1) at the time when the tempo control data TEV 2 is read, and TC 2 ′ is received thereafter.

【0086】一方、ステップ182の判定結果が否定的
(N)である場合は、テンポ制御データTEVの読出し
よりそれに対応するテンポ制御情報TCの受信が早かっ
た(揺動速度が速い)場合であり、その一例を図16に
示す。すなわち、テンポ制御データTEV2 が読出され
た時点でTEV2 に対応するテンポ制御情報TC2 がす
でに受信されている(PAUSE=0)場合である。
On the other hand, when the determination result of step 182 is negative (N), it means that the reception of the tempo control information TC corresponding thereto is faster than the reading of the tempo control data TEV (the swing speed is faster). 16 shows an example thereof. That is, if the tempo control information TC 2 tempo control data TEV 2 corresponds to the TEV 2 at the time of the read has already been received (PAUSE = 0).

【0087】ステップ182の判定結果が肯定的(Y)
であったときは、ステップ184に移り、受信したテン
ポ制御情報TCのキーコードKCとレジスタKEYのキ
ーコードKCとが一致するか判定する。この判定結果が
否定的(N)であれば図13のルーチンにリターンし、
肯定的(Y)であればステップ186に移る。換言すれ
ば、テンポ制御情報TCを受信してそのキーコードKC
が読出しに係るテンポ制御データTCVのキーコードK
Cと一致することを条件としてステップ186〜196
の処理を行なう。
The determination result of step 182 is positive (Y).
If so, the process proceeds to step 184, and it is determined whether the key code KC of the received tempo control information TC and the key code KC of the register KEY match. If the determination result is negative (N), the routine returns to the routine of FIG.
If affirmative (Y), the process proceeds to step 186. In other words, the tempo control information TC is received and its key code KC is received.
Is the key code K of the tempo control data TCV for reading
Steps 186 to 196 on condition that it matches C
Is processed.

【0088】ステップ186では、レジスタRA,RB
の値の比RA/RBをレジスタRATEにセットする。
そして、ステップ188に移り、レジスタTMKの値に
RATEの値を乗じたものをTMKにセットする。この
結果、テンポ係数TMKがRATEの値に応じて修正さ
れたことになる。一例として、図16のTEV2 ,TC
2'の例では、比RA/RBの値は、1より大きくなり、
テンポ係数TMKは、1より大きくなる。
In step 186, the registers RA and RB are registered.
The ratio RA / RB of the values of is set in the register RATE.
Then, the process proceeds to step 188, and the value obtained by multiplying the value of the register TMK by the value of RATE is set in TMK. As a result, the tempo coefficient TMK is modified according to the value of RATE. As an example, TEV 2 , TC in FIG.
In the 2'example, the value of the ratio RA / RB is greater than 1,
The tempo coefficient TMK becomes larger than 1.

【0089】次に、ステップ190では、テンポ係数T
MKの値のリミット処理を行なう。これは、TMK値が
大きすぎないように所定値(例えば2.0)以下に制限
する処理である。
Next, at step 190, the tempo coefficient T
Performs limit processing of the MK value. This is a process of limiting the TMK value to a predetermined value (for example, 2.0) or less so that the TMK value is not too large.

【0090】この後、ステップ192,194,196
では、それぞれレジスタRB,RA,フラグPAUSE
に0をセットする。そして、図13のルーチンにリター
ンする。
After this, steps 192, 194 and 196
Then, register RB, RA and flag PAUSE, respectively.
Is set to 0. Then, the process returns to the routine of FIG.

【0091】次回の割込みにより図13のルーチンに入
り、ステップ146でレジスタTIMEの値にテンポ係
数TMKを乗ずると、TIMEの値は以前より大きくな
り、自動演奏のテンポは揺動速度に追従して遅くなる。
When the routine of FIG. 13 is entered by the next interruption, and the value of the register TIME is multiplied by the tempo coefficient TMK in step 146, the value of TIME becomes larger than before, and the tempo of automatic performance follows the swing speed. Become slow.

【0092】一方、ステップ182の判定結果が否定的
(N)であったときは、ステップ198に移り、次のテ
ンポ制御データTEVをサーチする。そして、ステップ
200に移る。
On the other hand, if the determination result of step 182 is negative (N), the process moves to step 198 to search for the next tempo control data TEV. Then, the process proceeds to step 200.

【0093】ステップ200では、受信したテンポ制御
情報TCのキーコードKCとサーチしたテンポ制御デー
タTEVのキーコードKCとが一致するか判定する。こ
れは、前述のステップ184に対応する処理である。こ
の判定結果が否定的(N)であれば図13のルーチンに
リターンし、肯定的(Y)であればステップ202に移
る。
In step 200, it is determined whether the key code KC of the received tempo control information TC and the key code KC of the searched tempo control data TEV match. This is a process corresponding to step 184 described above. If the determination result is negative (N), the process returns to the routine of FIG. 13, and if the determination is positive (Y), the process proceeds to step 202.

【0094】ステップ202では、前のテンポ制御デー
タの読出タイミングからサーチしたテンポ制御データT
EVの読出タイミングまで時間間隔をレジスタRBにセ
ットする。例えば、図16に示すように発音/非発音制
御用のイベントデータPEVを読出した後テンポ制御情
報TC2 を受信してからテンポ制御データTEV2 をサ
ーチした場合、レジスタRBには、テンポ制御データT
EV1 の読出タイミングからTC2 の受信タイミングま
での時間間隔に対応する数値がセットされているだけ
で、TC2 の受信タイミングからTEV2 を(サーチで
はなく)演奏進行に応じて読出すべきタイミングまでの
時間間隔に対応する数値が含まれていない。この時間間
隔に対応する数値は、TEV2 を読出すべきタイミング
で0になるレジスタTIMEにおいてTC2 受信時に残
されている数値RTに等しい。そこで、レジスタRBの
値にTIMEの値RTを加えたものをRBにセットす
る。
In step 202, the tempo control data T searched from the read timing of the previous tempo control data.
The time interval is set in the register RB until the EV read timing. For example, as shown in FIG. 16, when the tempo control data TEV 2 is searched after the tempo control information TC 2 is received after reading the event data PEV for sounding / non-sounding control, the tempo control data is stored in the register RB. T
Only when the numerical value corresponding to the time interval from the read timing of EV 1 to the receive timing of TC 2 is set, the timing at which TEV 2 should be read from the receive timing of TC 2 (instead of the search) according to the performance progress The number corresponding to the time interval up to is not included. The numerical value corresponding to this time interval is equal to the numerical value RT left when TC 2 is received in the register TIME which becomes 0 at the timing when TEV 2 should be read. Therefore, the value obtained by adding the value RT of TIME to the value of the register RB is set in RB.

【0095】また、図17に示すように発音/非発音制
御用のイベントデータPEVを読出した後テンポ制御情
報TC2 を受信してからサーチ動作により発音/非発音
制御用のイベントデータPEV’及びテンポ制御データ
TEV2 を読出した場合には、TC2 の受信タイミング
からPEV’を演奏進行に応じて読出すべきタイミング
までの時間に対応してレジスタTIMEの値RTを考慮
すると共に、PEV’を演奏進行に応じて読出すべきタ
イミングからTEV2 を演奏進行に応じて読出すべきタ
イミングまでの時間に対応して数値RT’を考慮する。
数値RT’は、データPEV’及びTEV2 のイベント
間相対時間をΔTとし、テンポ係数をTMKとすると、
次の数7の式で表わされる。
Also, as shown in FIG. 17, after the event data PEV for sounding / non-sounding control is read out, the tempo control information TC 2 is received and then the search operation is performed to generate event data PEV 'for sounding / non-sounding control. When the tempo control data TEV 2 is read, the value RT of the register TIME is considered in correspondence with the time from the reception timing of TC 2 to the timing at which PEV ′ should be read according to the progress of the performance, and PEV ′ is read. consider numerical RT 'corresponds to the time from the timing to be read in accordance with the performance progression until a timing to be read in accordance with TEV 2 to play progression.
If the relative time between events of the data PEV ′ and TEV 2 is ΔT and the tempo coefficient is TMK, the numerical value RT ′ is
It is expressed by the following equation (7).

【0096】[0096]

【数7】RT’=ΔT×TMK 従って、この場合には、レジスタRBの値にレジスタT
IMEの値RTと数値RT’とを加えたものをRBにセ
ットする。なお、TEV2 をサーチする際にPEV’の
ようなイベントデータが複数読出されるときは各イベン
トデータについてRT’と同様の考慮を払えばよい。
## EQU00007 ## RT '=. DELTA.T.times.TMK Therefore, in this case, the value of the register RB is added to the value of the register T.
The sum of the value RT of IME and the value RT 'is set in RB. When a plurality of event data such as PEV ′ is read when searching TEV 2 , the same consideration as RT ′ may be taken for each event data.

【0097】次に、ステップ204では、レジスタRB
の値に1/Nを乗じたものをRBにセットすると共に、
レジスタTIMEの値に1/Nを乗じたものをTIME
にセットする。ここで、Nは、RBの値をレジスタRA
の値に近づけるために適宜選定される定数である。
Next, at step 204, the register RB
The value of is multiplied by 1 / N is set in RB, and
The value obtained by multiplying the value of the register TIME by 1 / N is TIME.
Set to. Here, N is the value of RB in the register RA
Is a constant that is appropriately selected to approach the value of.

【0098】次に、ステップ206では、フラグTCR
Fに1をセットする。この結果、この後の割込みにより
図14のステップ162にくると、判定結果が肯定的
(Y)となり、ステップ164でTCRT=0とされ
る。
Next, at step 206, the flag TCR is set.
Set 1 to F. As a result, if a subsequent interrupt comes to step 162 in FIG. 14, the determination result is affirmative (Y), and TCRT = 0 is set in step 164.

【0099】次に、ステップ208では、レジスタR
A,RBの値の比RA/RBをレジスタRATEにセッ
トする。そして、ステップ210に移り、レジスタTM
Kの値にRATEの値を乗じたものをTMKにセットす
る。この結果、テンポ係数TMKがRATEの値に応じ
て修正されたことになる。一例として、図16のT
2,TEV2 の例では、比の値RA/RBが1より小
さくなり、テンポ係数TMKが1より小さくなる。この
後、ステップ212に移る。
Next, at step 208, the register R
The ratio RA / RB of the values of A and RB is set in the register RATE. Then, the process proceeds to step 210, where the register TM
The value obtained by multiplying the value of K by the value of RATE is set in TMK. As a result, the tempo coefficient TMK is modified according to the value of RATE. As an example, T in FIG.
In the example of C 2 and TEV 2 , the ratio value RA / RB becomes smaller than 1 and the tempo coefficient TMK becomes smaller than 1. After this, the process proceeds to step 212.

【0100】ステップ212では、テンポ係数TMKの
値のリミット処理を行なう。これは、TMK値が小さす
ぎないように所定値(例えば0.5)以上に制限する処
理である。
At step 212, a limit process for the value of the tempo coefficient TMK is performed. This is a process of limiting the TMK value to a predetermined value (for example, 0.5) or more so that the TMK value is not too small.

【0101】この後、ステップ214,216では、そ
れぞれレジスタRB,RAに0をセットする。そして、
図13のルーチンにリターンする。
Thereafter, in steps 214 and 216, 0 is set in the registers RB and RA, respectively. And
It returns to the routine of FIG.

【0102】次回の割込みにより図13のルーチンに入
り、ステップ146でレジスタTIMEの値にテンポ係
数TMKを乗ずると、TIMEの値は以前より小さくな
り、自動演奏のテンポは揺動速度に追従して速くなる。
When the routine of FIG. 13 is entered by the next interrupt, and the value of the register TIME is multiplied by the tempo coefficient TMK in step 146, the value of TIME becomes smaller than before, and the tempo of automatic performance follows the swing speed. Get faster

【0103】この発明は、上記した実施形態に限定され
るものではなく、種々の改変形態で実施可能なものであ
る。例えば、次の(1)〜(14)のような変更が可能
である。
The present invention is not limited to the above-described embodiment, but can be implemented in various modified forms. For example, the following modifications (1) to (14) are possible.

【0104】(1)ピーク検出の後動作種類判別を行な
うようにしたが、動作種類判別を省略し、ピーク検出出
力に応じてテンポ制御情報TCやダイナミクス制御情報
DCを発生するようにしてもよい。
(1) Although the operation type determination is performed after the peak detection, the operation type determination may be omitted and the tempo control information TC and the dynamics control information DC may be generated according to the peak detection output. .

【0105】(2)揺動動作に応じた出力から直接ファ
ジィ推論処理によりピークや動作種類を求めるようにし
たが、従来の手法により求めたピークや動作種類をファ
ジィ推論処理により修正するようなものであってもよ
い。また、ニューラルネットワークと融合させ、例えば
メンバーシップ関数を決定乃至修正するのにニューラル
ネットワークを用いるようにしてもよい。
(2) Although the peak and the motion type are directly obtained by the fuzzy inference process from the output according to the swing motion, the peak and the motion type obtained by the conventional method are corrected by the fuzzy inference process. May be It may also be fused with a neural network and used, for example, to determine or modify membership functions.

【0106】(3)揺動動作を検知するためのセンサ
は、圧電振動ジャイロセンサ等の角速度センサに限ら
ず、加速度センサや磁気又は光を用いたセンサであって
もよい。また、揺動動作を撮影し、画像処理によって揺
動動作を検知するものであってもよい。さらに、複数種
類のセンサを組合せて用いてもよい。
(3) The sensor for detecting the rocking motion is not limited to an angular velocity sensor such as a piezoelectric vibration gyro sensor, but may be an acceleration sensor or a sensor using magnetism or light. Alternatively, the swinging motion may be photographed and the swinging motion may be detected by image processing. Furthermore, a plurality of types of sensors may be used in combination.

【0107】(4)判別する揺動動作の種類は、3種類
に限らず、もっと多くの種類の動作を判別するようにし
てもよい。
(4) The types of rocking motions to be discriminated are not limited to three types, and more types of motions may be discriminated.

【0108】(5)揺動分析装置と指揮棒とを別体とし
たが、指揮棒に揺動分析装置を内蔵させるようにしても
よい。また、揺動分析装置と自動演奏装置付き電子楽器
とを別体としたが、これらを一体に構成してもよい。さ
らに、揺動分析装置からの出力情報TC,DCは、図2
の電子楽器以外の電子楽器や自動演奏装置に供給して上
述のような演奏制御を行なうようにしてもよい。
(5) Although the swing analyzer and the baton are separate, the swing analyzer may be built in the baton. Further, although the swing analysis device and the electronic musical instrument with the automatic performance device are separate bodies, they may be integrally configured. Further, the output information TC and DC from the fluctuation analyzer are shown in FIG.
The electronic musical instrument other than the electronic musical instrument or the automatic musical instrument may be supplied to perform the above-mentioned musical performance control.

【0109】(6)揺動動作の検知手段として、2つの
センサを用いたが、3つ以上のセンサを用いてもよい。
例えば、3拍子用と、2,4拍子用とで異なるセンサを
用いるようにしてもよいし、3つ以上のセンサの出力を
総合的に判断して動作を検知するようにしてもよい。
(6) Although two sensors are used as the rocking motion detecting means, three or more sensors may be used.
For example, different sensors may be used for three beats and for two and four beats, or the motion may be detected by comprehensively judging the outputs of three or more sensors.

【0110】(7)センサは、指揮棒に装着したが、指
揮棒に代わる揺動部材に装着したり、手など身体の一部
に装着したり、マイクロホンに内蔵したり、カラオケ装
置等の機器のリモートコントローラに内蔵したりしても
よい。センサと揺動分析装置との間の通信は、有線又は
無線のいずれでもよい。
(7) Although the sensor is attached to the baton, it is attached to a swing member that replaces the baton, is attached to a part of the body such as a hand, is incorporated in a microphone, or is a device such as a karaoke device. It may be built into the remote controller of. The communication between the sensor and the fluctuation analysis device may be wired or wireless.

【0111】(8)演奏中に演奏テンポを制御するよう
にしたが、演奏に先立って演奏テンポを決定する場合に
もこの発明を適用することができる。
(8) Although the performance tempo is controlled during the performance, the present invention can be applied to the case where the performance tempo is decided prior to the performance.

【0112】(9)演奏データの記憶方式は、イベント
+デルタタイム(イベント間相対時間)としたが、イベ
ント+絶対時間等の他の方式を採用してもよい。また、
デルタタイムは、msの単位であるとしたが、音符の長
さを単位とする(例えば4分音符の1/24とする)よ
うにしてもよい。
(9) Although the performance data is stored in the event + delta time (relative time between events), other methods such as event + absolute time may be used. Also,
Although the delta time is set to the unit of ms, the length of the note may be set to the unit (for example, 1/24 of a quarter note).

【0113】(10)テンポの制御は、デルタタイムの
値にテンポ係数を乗算し、デルタタイムの値を変化させ
ることで行なうようにしたが、図13のタイマ割込みの
周期を変化させることで行なうようにしてもよい。ま
た、1回のタイマ割込みにおいてデルタタイムの値から
減算する値を1以外の値とすることによりテンポを制御
するようにしてもよい。さらに、デルタタイムの値を変
化させるには、乗算に限らず、加算等の処理を用いても
よい。
(10) The tempo is controlled by multiplying the delta time value by the tempo coefficient and changing the delta time value, but it is performed by changing the timer interrupt cycle in FIG. You may do it. Further, the tempo may be controlled by setting the value subtracted from the delta time value in one timer interrupt to a value other than 1. Furthermore, in order to change the value of the delta time, not only multiplication but also processing such as addition may be used.

【0114】(11)テンポ制御にあっては、テンポが
なめらかに変化するように変化前の値から目標値までの
間を補間するようにしてもよい。ダイナミクスの制御も
同様にしてなめらかな変化が得られるようにしてもよ
い。
(11) In the tempo control, the interval between the value before the change and the target value may be interpolated so that the tempo changes smoothly. The dynamics control may be made to obtain a smooth change in the same manner.

【0115】(12)ダイナミクス制御情報DCに応じ
て演奏音の音量を制御するようにしたが、該情報DCに
応じて演奏音の音色、音高、効果等を制御してもよい。
また、ダイナミクス制御情報DCに応じて演奏パート数
等を制御してもよい。これらのパラメータのうち複数の
ものを組合せて制御することで演奏のダイナミクスを一
層強調するようにしてもよい。
(12) Although the volume of the performance sound is controlled according to the dynamics control information DC, the tone color, pitch, effect, etc. of the performance sound may be controlled according to the information DC.
Further, the number of performance parts and the like may be controlled according to the dynamics control information DC. The dynamics of the performance may be further emphasized by controlling a combination of a plurality of these parameters.

【0116】(13)ファジィルールやメンバーシップ
関数をユーザがエディット可能とし、ユーザが最も操作
しやすいように調節可能としてもよい。
(13) The fuzzy rules and membership functions may be editable by the user and may be adjusted so that the user can operate them most easily.

【0117】(14)揺動動作の特徴点検出と動作種類
判別の両方に対してファジィ推論処理を適用したが、揺
動動作の特徴点検出のみ又は動作種類判別のみにファジ
ィ推論処理を適用するようにしてもよい。
(14) The fuzzy inference processing is applied to both the feature point detection of the swing motion and the motion type determination, but the fuzzy inference process is applied only to the swing motion feature point detection or the motion type determination. You may do it.

【0118】[0118]

【発明の効果】以上のように、この発明によれば、ファ
ジィ推論処理により揺動動作の特徴点検出や動作種類判
別を行なうようにしたので、検出精度や判別精度が向上
し、信頼性の高い演奏態様制御が可能となり、安定した
音楽演奏を行なえる効果が得られるものである。
As described above, according to the present invention, the fuzzy inference processing is used to detect the characteristic points of the swing motion and to discriminate the motion type, so that the detection precision and the discrimination precision are improved and the reliability is improved. This makes it possible to perform high-performance control of the playing mode and obtain an effect that a stable music performance can be performed.

【図面の簡単な説明】[Brief description of drawings]

【図1】 この発明に係る揺動分析装置の回路構成を示
すブロック図である。
FIG. 1 is a block diagram showing a circuit configuration of a fluctuation analyzer according to the present invention.

【図2】 図1の装置の出力に応じて自動演奏可能な電
子楽器の回路構成を示すブロック図である。
FIG. 2 is a block diagram showing a circuit configuration of an electronic musical instrument that can be automatically played according to an output of the apparatus of FIG.

【図3】 指揮棒の揺動動作の説明図である。FIG. 3 is an explanatory diagram of a swinging motion of a baton.

【図4】 絶対角速度の変化の一例を示す波形図であ
る。
FIG. 4 is a waveform diagram showing an example of changes in absolute angular velocity.

【図5】 xy平面内の角度の説明図である。FIG. 5 is an explanatory diagram of angles in the xy plane.

【図6】 センサ出力処理を示すフローチャートであ
る。
FIG. 6 is a flowchart showing a sensor output process.

【図7】 ピーク検出処理を示すフローチャートであ
る。
FIG. 7 is a flowchart showing peak detection processing.

【図8】 ルール1のファジィ推論処理を示すフローチ
ャートである。
FIG. 8 is a flowchart showing a fuzzy inference process of rule 1.

【図9】 図8の処理で用いられるメンバーシップ関数
を示すグラフである。
9 is a graph showing a membership function used in the process of FIG.

【図10】 ピーク種類判別処理を示すフローチャート
である。
FIG. 10 is a flowchart showing peak type determination processing.

【図11】 演奏データのフォーマットを示す図であ
る。
FIG. 11 is a diagram showing a format of performance data.

【図12】 イベントデータのフォーマットを示す図で
ある。
FIG. 12 is a diagram showing a format of event data.

【図13】 再生処理を示すフローチャートである。FIG. 13 is a flowchart showing a reproduction process.

【図14】 イベント対応処理を示すフローチャートで
ある。
FIG. 14 is a flowchart showing an event handling process.

【図15】 テンポ制御処理を示すフローチャートであ
る。
FIG. 15 is a flowchart showing a tempo control process.

【図16】 テンポ制御動作の説明図である。FIG. 16 is an explanatory diagram of a tempo control operation.

【図17】 テンポ制御動作の説明図である。FIG. 17 is an explanatory diagram of a tempo control operation.

【符号の説明】[Explanation of symbols]

10:揺動分析装置、12,52:バス、16,18:
A/D変換回路、20,62:CPU、22,64:R
OM、24,66:RAM、26,68:タイマ、2
8,70:MIDIインターフェース、32:指揮棒、
34,36:角速度センサ、50:電子楽器、60:音
源回路。
10: rocking analyzer, 12, 52: bus, 16, 18:
A / D conversion circuit, 20, 62: CPU, 22, 64: R
OM, 24, 66: RAM, 26, 68: timer, 2
8,70: MIDI interface, 32: baton,
34 and 36: angular velocity sensor, 50: electronic musical instrument, 60: sound source circuit.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】揺動動作を検知する検知手段と、 この検知手段の検知出力に基づいて揺動動作の特徴点を
検出する検出手段であって、ファジィ推論処理により特
徴点の検出を行なうものと、 前記検出手段の検出出力に基づいて演奏態様を制御する
演奏制御手段とを備えた演奏制御装置。
1. A detection means for detecting a swing motion, and a detection means for detecting a feature point of the swing motion based on a detection output of the detection means, wherein the feature point is detected by fuzzy inference processing. And a performance control device for controlling the performance mode based on the detection output of the detection means.
【請求項2】揺動動作を検知する検知手段と、 この検知手段の検知出力に基づいて揺動動作の特徴点を
検出する検出手段と、 前記検知手段の検知出力及び前記検出手段の検出出力に
基づいて揺動動作の動作種類を判別する判別手段であっ
て、ファジィ推論処理により動作種類の判別を行なうも
のと、 前記判別手段の判別出力に基づいて演奏態様を制御する
演奏制御手段とを備えた演奏制御装置。
2. Detecting means for detecting a swinging motion, detecting means for detecting a characteristic point of the swinging motion based on a detection output of the detecting means, detection output of the detecting means and detection output of the detecting means. Discriminating means for discriminating the motion type of the rocking motion based on the above, and for discriminating the motion type by fuzzy inference processing, and performance control means for controlling the performance mode based on the discrimination output of the discrimination means. Equipped performance control device.
JP27351895A 1995-09-27 1995-09-27 Performance control device Expired - Fee Related JP3627319B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP27351895A JP3627319B2 (en) 1995-09-27 1995-09-27 Performance control device
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 (en) 1995-09-27 1995-09-27 Performance control device

Publications (2)

Publication Number Publication Date
JPH0990941A true JPH0990941A (en) 1997-04-04
JP3627319B2 JP3627319B2 (en) 2005-03-09

Family

ID=17528981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27351895A Expired - Fee Related JP3627319B2 (en) 1995-09-27 1995-09-27 Performance control device

Country Status (1)

Country Link
JP (1) JP3627319B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018506050A (en) * 2014-12-12 2018-03-01 インテル コーポレイション Wearable audio mixing

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01277293A (en) * 1988-04-28 1989-11-07 Yamaha Corp Musical sound control device
JPH02232692A (en) * 1989-03-06 1990-09-14 Kan Oteru Controller for equipment with automatic playing function
JPH0519760A (en) * 1991-07-11 1993-01-29 Yamaha Corp Electronic musical instrument
JPH0594183A (en) * 1991-07-16 1993-04-16 Yamaha Corp Musical tone controller
JPH0635466A (en) * 1992-07-20 1994-02-10 Casio Comput Co Ltd Electronic musical instrument
JPH06161440A (en) * 1992-11-24 1994-06-07 Sony Corp Automatic playing device
JPH06348272A (en) * 1993-06-07 1994-12-22 Roland Corp Tempo detecting device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01277293A (en) * 1988-04-28 1989-11-07 Yamaha Corp Musical sound control device
JPH02232692A (en) * 1989-03-06 1990-09-14 Kan Oteru Controller for equipment with automatic playing function
JPH0519760A (en) * 1991-07-11 1993-01-29 Yamaha Corp Electronic musical instrument
JPH0594183A (en) * 1991-07-16 1993-04-16 Yamaha Corp Musical tone controller
JPH0635466A (en) * 1992-07-20 1994-02-10 Casio Comput Co Ltd Electronic musical instrument
JPH06161440A (en) * 1992-11-24 1994-06-07 Sony Corp Automatic playing device
JPH06348272A (en) * 1993-06-07 1994-12-22 Roland Corp Tempo detecting device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018506050A (en) * 2014-12-12 2018-03-01 インテル コーポレイション Wearable audio mixing

Also Published As

Publication number Publication date
JP3627319B2 (en) 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 (en) Performance analysis method, automatic performance method, and automatic performance system
JP2007256631A (en) Performance control device and program
US5218158A (en) Musical tone generating apparatus employing control of musical parameters in response to note duration
JPH09127937A (en) Musical sound parameter control device
JP3231482B2 (en) Tempo detection device
US6075196A (en) Player piano reproducing special performance techniques using information based on musical instrumental digital interface standards
JP3627321B2 (en) Performance control device
JPH06289857A (en) Electronic musical instrument provided with speech input function
JPH0990941A (en) Musical performance controller
JPH09185716A (en) Operation judging method and its device
JPH03242697A (en) Electronic musical instrument
JP3303608B2 (en) Automatic performance device
JP3353661B2 (en) Music control device and storage medium
JP2003091280A (en) Music controller
JP3427569B2 (en) Music control device
JP3471480B2 (en) Tempo control device
JP2560485B2 (en) Electronic musical instrument
JPH0352762U (en)
JPH07111633B2 (en) Electronic musical instrument
JPH1138970A (en) Music controller and storage medium
JPH08314455A (en) Musical tone controller
JPH0573047A (en) Musical sound generation controller
JP3677906B2 (en) Sound condition setting device
JPH10149180A (en) Tempo controller for karaoke

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