JPH04133095A - Tempo controller - Google Patents

Tempo controller

Info

Publication number
JPH04133095A
JPH04133095A JP2255742A JP25574290A JPH04133095A JP H04133095 A JPH04133095 A JP H04133095A JP 2255742 A JP2255742 A JP 2255742A JP 25574290 A JP25574290 A JP 25574290A JP H04133095 A JPH04133095 A JP H04133095A
Authority
JP
Japan
Prior art keywords
time
tempo
tapping
score time
deviation
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
JP2255742A
Other languages
Japanese (ja)
Other versions
JP2653232B2 (en
Inventor
Hirobumi Mukono
博文 向野
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 JP2255742A priority Critical patent/JP2653232B2/en
Priority to DE69129522T priority patent/DE69129522T2/en
Priority to US07/765,041 priority patent/US5227574A/en
Priority to EP91116253A priority patent/EP0477869B1/en
Publication of JPH04133095A publication Critical patent/JPH04133095A/en
Application granted granted Critical
Publication of JP2653232B2 publication Critical patent/JP2653232B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To smoothly follow up the output of automatic performance at the time of tapping by eliminating a time difference (deviation) in score time, which is generated at the time of the tapping, with a certain function. CONSTITUTION:A tempo clock is supplied from the tempo controller 1 to a sequencer 2 through an MIDI cable. At this time, the quantity of the deviation in score time at the time of the tapping is found and reduced according to the specific function. Then performance data are read out of the performance data memory in the sequencer 2 according to the tempo clock and sent to a sound source 3. Waveform data corresponding to the performance data are read out of the sound source memory of the sound source 3 and outputted to a sound system 4. Then while the score time deviation quantity is reduced according to the specific function, the current score time is updated. Consequently, the output of automatic performance at the time of the tapping can smoothly be followed up.

Description

【発明の詳細な説明】 (a)産業上の利用分野 この発明は、シーケンサやリズムマシン等に対して実時
間で制御されたテンポクロックを与えることのできるテ
ンポコントローラに関する。
DETAILED DESCRIPTION OF THE INVENTION (a) Industrial Application Field The present invention relates to a tempo controller that can provide a tempo clock controlled in real time to a sequencer, rhythm machine, or the like.

(b)従来の技術 音楽の最も重要な基本要素の一つに演奏のテンポという
ものがある。テンポは一つの曲の演奏の中でも様々に変
化し曲の表情作りの中で大きな役割を果たしている。そ
のテンポ変化の中には、リタルダンドやアッチェレラン
ドのように大局的なテンポ変化や小節内の細かなテンポ
の揺らぎ等様々なものが含まれる。を子楽器で、特にそ
の自動演奏でこのテンポの微妙な変化を与えるように出
来るとより音楽的な表現が可能になる。従来は、シーケ
ンサ等で自動演奏を行う場合、このテンポの表現は予め
データとして打ち込んでおくことによって実現されてい
る。
(b) Conventional technology One of the most important basic elements of music is the tempo of performance. The tempo changes in various ways even during the performance of a single song, and plays a major role in creating the expression of the song. These tempo changes include a variety of things, such as global tempo changes like ritardando and accelerando, and small tempo fluctuations within a measure. If you can make subtle changes in tempo with child instruments, especially when playing automatically, you will be able to express yourself more musically. Conventionally, when automatic performance is performed using a sequencer or the like, the tempo is expressed by inputting data in advance.

(C)発明が解決しようとする課題 ところが、従来のシーケンサ等では実時間での柔軟なテ
ンポ変更を行うことができない。このことは、シーケン
サは人間との演奏の同期に関しては無能に近く、人間の
演奏者が機械の方に合わせてやらなければならないこと
を意味する。そこで、この問題を解決するためにはシー
ケンサ内で形成されているテンポクロック情報を外部か
ら与え、しかもこのテンポクロック情報を実時間で制御
する方法が考えられる。テンポを表現する手段としては
最も基本的なものとしてタンピングがある、即ち、演奏
者はタッピングを行うことにより、そのタッピングに基
づいてテンポクロックを発生するようにする。そこで、
タッピングで与えられるテンポに対しコンピュータの演
奏をどのように制御するかを考えてみる。
(C) Problems to be Solved by the Invention However, conventional sequencers and the like cannot flexibly change the tempo in real time. This means that the sequencer is nearly incompetent at synchronizing the performance with a human, and the human performer must adapt to the machine. Therefore, in order to solve this problem, a method can be considered in which the tempo clock information generated within the sequencer is supplied externally and the tempo clock information is controlled in real time. Tamping is the most basic means of expressing tempo; that is, the performer taps to generate a tempo clock based on the tapping. Therefore,
Let's consider how to control the computer's performance based on the tempo given by tapping.

まず、コンピュータ(シーケンサ等の自動演奏を行う電
子楽器)に対してタップでテンポを次々に与えながら演
奏を進めていくとする。第5図においてタップ操作者(
または演奏者)がAの位置でまず第1回目のタップをし
たとする。この時にはコンピュータの楽譜時間とタンプ
を行った時の物理時間とがうまく同期している。仮にそ
の時のテンポのまま演奏が続くと、次の強拍点(即ち次
にタップされるべき位置)はBの所である。この時操作
者がテンポを速めるために少し早い目にB′の所でタッ
プしたとする。ここで操作者とコンピュータとの間に楽
譜時間としてのずれが生じる(この場合は4分の1拍)
。勿論、この時にテンポの差も生じる。そこで、コンピ
ュータの演奏を操作者の意図する演奏と同期させるため
にテンポを合わせることが必要になってくる。この例だ
とテンポを4/3倍に上げることになる。しかしそれだ
けだとコンピュータの次の強拍点はCになり一方操作者
のタンプはC′であるために時間的ずれ(4分の1拍)
が保存されてしまい完全な同期にはならない。そこで、
B′のタップの時に生した時間的ずれは何等かの形で解
消してやることが必要になる。一番簡単な方法はB′が
きた時点でまだ4分の3拍の位置にあるコンピュータの
楽譜時間を無理やり1拍の位置に合わせてしまうことで
ある。同様にC′の位置でもCで示される楽譜時間を無
理やりC′の位1に合わせてしまう。
First, let's assume that the computer (an electronic musical instrument that performs automatically, such as a sequencer) advances the performance while giving tempos one after another by tapping. In Figure 5, the tap operator (
Suppose that the player (or performer) makes the first tap at position A. At this time, the computer score time and the physical time at the time of tamping are well synchronized. If the performance continues at the current tempo, the next strong beat point (that is, the position to be tapped next) will be at B. At this time, assume that the operator taps at B' a little early to speed up the tempo. Here, there is a difference in musical score time between the operator and the computer (in this case, one-quarter beat).
. Of course, differences in tempo also occur at this time. Therefore, it becomes necessary to match the tempo in order to synchronize the performance of the computer with the performance intended by the operator. In this example, the tempo would be increased by 4/3. However, if that is the case, the computer's next strong beat point will be C, and the operator's tamp will be C', so there will be a time lag (1/4 beat).
will be saved, resulting in incomplete synchronization. Therefore,
It is necessary to eliminate the time lag that occurred when tapping B' in some way. The simplest method is to force the music score time on the computer, which is still at three-quarters of a beat when B' arrives, to one beat. Similarly, at the position of C', the musical score time indicated by C is forced to match the digit 1 of C'.

第6図はこの方法を示している。これによると操作者と
コンピュータの演奏とを1拍毎に完全に同期させること
ができる。ところがこれには一つ問題がある。つまり、
B′でタップがされた時コンピュータはまだ4分の3拍
の位置にいるために急に1拍に移動するとその4分の3
〜1拍間の音符がその瞬間に鳴ってしまう。勿論その間
に音符がなければ実害はないが、例えば4連音符があっ
た場合それらの音符は1度になってしまい音楽的に問題
となる。
Figure 6 illustrates this method. According to this, it is possible to completely synchronize the performance of the operator and the computer beat by beat. However, there is one problem with this. In other words,
When the tap is made on B', the computer is still at the 3/4 beat position, so if it suddenly moves to 1 beat, it will be at the 3/4 beat position.
~A note of one beat will sound at that moment. Of course, if there are no notes in between, there will be no real harm, but if there is a quadruplet, for example, those notes will become one degree, which will cause a musical problem.

なお、ここで物理時間と楽譜時間の定義を行うと次のよ
うになる。
The definition of physical time and musical score time is as follows.

物理時間・・・通常の時間である。コンピュータのタイ
マによって生成される例えばミリ秒単位の時間を意味す
る。
Physical time: normal time. Refers to time, e.g., in milliseconds, generated by a computer timer.

楽譜時間・・・楽譜の中での位置を表す0通常1拍の何
分の1かを基本単位として用いる。例えばこの明細書全
体を通して示しているように、1拍の384分の1を単
位として楽譜時間を表現することが出来、また、M r
 D I規格ではF8が1拍の24分の1の楽譜時間を
表す単位と解釈される。
Musical score time...Represents the position in the musical score. Usually a fraction of one beat is used as the basic unit. For example, as shown throughout this specification, musical score time can be expressed in units of 1/384th of one beat, and M r
According to the DI standard, F8 is interpreted as a unit representing musical score time of 1/24th of one beat.

この楽譜時間と物理時間で第5図および第6図の方式を
表現すると、第7図(A)、(B)、第8図(A)、(
B)のようになる。ここでは楽譜時間をこの明細書全体
を通して示しているように1拍の384分の1を単位と
して表現している第7図(A)、(B)においては物理
時間のt3において操作者によりタップが少し速められ
たことを示している。この場合には、次回からテンポが
少し速まるわけであるが、t3の時点において14 (
384−370)単位分(クロック分)の楽譜時間の遅
れが生じ、以後テンポが変わらないとすると、その遅れ
(時間的ずれ)がぞのまま保存されていく。一方、第8
図(A)、(B)では時間L3てタップが早く打たれる
とその時点で3拍目の楽譜時間(1152楽譜時間位置
)とt3とを合わせてしまう。このため、この時点で3
拍目直前の14クロンク分乙こ相当する音符が一度に発
生されてしまう。4回目のタップ位置ても同様である。
If we express the system in Figures 5 and 6 using this music score time and physical time, we can express the system in Figures 7 (A), (B), Figure 8 (A), (
B). Here, as shown throughout this specification, musical score time is expressed in units of 1/384th of one beat. This shows that it has been slightly sped up. In this case, the tempo will be slightly faster from the next time onwards, but at t3 the tempo will be 14 (
384-370) If there is a musical score time delay of a unit minute (clock minute) and the tempo does not change thereafter, that delay (time shift) will be preserved as is. On the other hand, the 8th
In Figures (A) and (B), if the tap is struck early at time L3, the third beat musical score time (1152 musical score time position) and t3 will be aligned at that point. Therefore, at this point, 3
Notes equivalent to 14 clocks immediately before the beat are generated at once. The same applies to the fourth tap position.

以上のように、単なるテンポの修正や時間的ずれの無理
矢理な修正のみでは演奏とタッピングとが同期しなかっ
たり音符が一度に出力されたりして何れも音楽的な問題
を生じる不都合がある。
As described above, simply correcting the tempo or forcibly correcting the time lag has the disadvantage that the performance and the tapping may not be synchronized or the notes may be output all at once, resulting in musical problems.

この発明の目的は、タップ時に住じる楽譜時間の時間差
(ずれ)をある関数てもって解消させることでタンプ時
に演奏が滑らかに追従できるようにするテンボコントー
ラを提供することにある。
An object of the present invention is to provide a tempo controller that allows the performance to follow smoothly when tapping by using a certain function to eliminate the time difference (displacement) in musical score time that occurs when tapping.

(d)課題を解決するための手段 請求項(1)に係る発明は、タップデータを形成するタ
ッピング手段と、 タ、プ時の楽譜時間ずれ量を求める楽譜時間ずれI検出
手段と、 前記楽譜時間ずれ量を所定の関数に基づいて減少させつ
つ現在の楽譜時間の更新を行う楽譜時間更新手段と、 楽譜時間の更新毎にテンポクロック情報を出力するテン
ポクロック情報出力手段と、 を備えてなることを特徴としている。
(d) Means for Solving the Problem The invention according to claim (1) comprises: a tapping means for forming tap data; a musical score time deviation I detection means for determining the amount of musical score time deviation at tap and tap; and the musical score. Musical score time updating means for updating the current musical score time while reducing the amount of time deviation based on a predetermined function; and tempo clock information output means for outputting tempo clock information each time the musical score time is updated. It is characterized by

また請求項(2)に係る説明は、前記関数のパラメータ
を設定する手段を備えることを特徴とする。
Further, the description according to claim (2) is characterized in that the method includes means for setting parameters of the function.

更に請求項(3)に係る発明は、タップ時のテンポずれ
量を求めるテンポずれ量検出手段を備え、前記楽譜時間
更新手段は、前記楽譜時間ずれ量と前記テンポずれ量を
所定の関数に基づいて減少させつつ現在の楽譜時間の更
新を行うことを特徴としている。
Furthermore, the invention according to claim (3) is provided with a tempo deviation amount detection means for determining a tempo deviation amount at the time of tapping, and the score time updating means calculates the score time deviation amount and the tempo deviation amount based on a predetermined function. The feature is that the current score time is updated while decreasing it.

(e)作用 請求項(1)に係る発明では、タッピング手段によって
タップが与えられた時物理時間と楽譜時間とのずれ量が
求められる。そして、この楽譜時間ずれ量は所定の関数
に基づいて減少するように現在の楽譜時間の更新を行っ
ていく。テンポクロック情報出力手段は、楽譜時間の更
新毎にテンポクロック情報を外部に出力する。シーケン
サ等のコンピュータはこのテンポクロックに基づいて演
奏データを出力していく。
(e) Effect In the invention according to claim (1), when a tap is applied by the tapping means, the amount of deviation between the physical time and the musical score time is determined. Then, the current score time is updated so that this score time shift amount decreases based on a predetermined function. The tempo clock information output means outputs tempo clock information to the outside every time the musical score time is updated. A computer such as a sequencer outputs performance data based on this tempo clock.

請求項(2)に係る発明では、前記関数のパラメータが
任意に設定できる手段を備えている。このパラメータを
関数の返す値が急速に収束するように設定すれば追従性
が改善される。反対に関数の返す値の収束性を低くすれ
ば滑らかさが改善される。操作者はこの追従性と滑らか
さとのトレーF′オフを自由な状態に設定できるわけで
ある。
The invention according to claim (2) includes means for arbitrarily setting parameters of the function. Trackability can be improved by setting this parameter so that the value returned by the function converges rapidly. Conversely, smoothness can be improved by lowering the convergence of the value returned by the function. The operator can freely set the followability and smoothness of the tray F' off.

請求項(3)に係る発明では、更に、タップ時のテンポ
ずれ量が求められる。そして、楽譜時間更新手段は前記
楽譜時間ずれ量とともに、このテンポずれ■も所定の関
数に基づいて減少させつつ現在の楽譜時間の更新を行う
、この請求項(3)の発明ではテンポの変化に対しても
追従するようにしているため追従性が更に改善される。
In the invention according to claim (3), the amount of tempo shift at the time of tapping is further determined. In the invention according to claim (3), the score time updating means updates the current score time while reducing the tempo shift (2) as well as the score time shift amount based on a predetermined function. The tracking performance is further improved because the tracking is also possible.

(f)実施例 第1図はこの発明の実施例のプロ、ツタ図を示している
。同図の1はテンポコントローラ、2はシーケンサ、3
は音源、4はサウンドシステムを示している。シーケン
サ2内の演奏データメモリには予め演奏データが記憶さ
れている。テンポコントローラ1はシーケンサ2に対し
てM I D Iケーブルを介してテンポクロック情報
を与える。実際には、MIDIケーブル上はクロックで
はなく、F8データが流れる。また、F8データの他、
スタート時にはFAデータが出力され、ストップ時には
FCデータが出力される。シーケンサ2はF8データを
受けると、演奏データメモリのポインタを一つ進める。
(f) Embodiment FIG. 1 shows a professional ivy diagram of an embodiment of the present invention. In the figure, 1 is a tempo controller, 2 is a sequencer, and 3
indicates the sound source, and 4 indicates the sound system. Performance data is stored in the performance data memory in the sequencer 2 in advance. A tempo controller 1 provides tempo clock information to a sequencer 2 via an MIDI cable. Actually, F8 data, not a clock, flows on the MIDI cable. In addition to F8 data,
FA data is output when starting, and FC data is output when stopping. When the sequencer 2 receives the F8 data, it advances the pointer in the performance data memory by one.

つまり、シーケンサ2は、このテンポクロックに基づい
て内部の演奏データメモリから演奏データを読み出し音
源3に送る。音源3はその演奏データに対応する波形デ
ータを音源メモリから読み出してサウンドシステム4に
出力する。
That is, the sequencer 2 reads performance data from the internal performance data memory and sends it to the sound source 3 based on this tempo clock. The sound source 3 reads waveform data corresponding to the performance data from the sound source memory and outputs it to the sound system 4.

前記テンポコントローラ1はマイクロコンピュータ10
.i作パネル11、タイマ12、タップスイッチ13お
よびM I D Iインタフェース14を備えている。
The tempo controller 1 is a microcomputer 10
.. It is equipped with an i-operation panel 11, a timer 12, a tap switch 13, and an MID I interface 14.

操作パネル11はスタート/ストップスイッチ、時間ず
れ初期解消率(bypassRatio)入カスインチ
、テンポずれ解消量(i ncTemp o)入力スイ
ッチを含む。タイマ12は外部割り込みタイマとして使
用される。
The operation panel 11 includes a start/stop switch, an input switch for an initial time difference elimination ratio (bypassRatio), and an input switch for a tempo difference elimination amount (incTemp o). Timer 12 is used as an external interrupt timer.

タップスイッチ13は通常のオンオフスイッチである。Tap switch 13 is a normal on/off switch.

このスイッチは操作者がタンピングし易いように、例え
ば足の甲の上下動作でオンオフ動作するものや、手の上
下動作でオンオフ動作する構造のものが望ましい。M 
I D Iインタフェース14はマイクロコンピュータ
10から出力されるテンポクロック情報に基づいて演奏
データメモリカウントアツプ用のF8データをMrDI
ケーブル15に乗せる。なお、テンポクロック情報が0
0ときにはF8データは形成されない、MIDIケーブ
ル15はM I D iインタフェース1ヰ0シーケン
サ2はシーケンサ本体20とM I D Iインタフェ
ース21とを含む。M I D Iケーブル15はM 
I D Iインク7エ=ス2 1ノMID I IN端
子に接続される。シーケンサ本体20は内部に設けられ
ている演奏データメモリに図示のような演奏データを予
め記憶している。図のイベントデータ間のF8の数は楽
譜上のイヘント間隔に相当する数に等しい。イヘントデ
ータは、例えばに○N (/−トt7)、KCD (音
高)、vEL(キーベロシティニ音りから構成され、ポ
インタがKONを指したときこれらの演奏データを順に
音#3に出力する。
In order to facilitate tamping by the operator, it is desirable that this switch be turned on and off by the up and down movement of the top of the foot, or turned on and off by the up and down movement of the hand. M
The IDI interface 14 inputs F8 data for performance data memory count-up to MrDI based on the tempo clock information output from the microcomputer 10.
Put it on cable 15. Note that the tempo clock information is 0.
When it is 0, no F8 data is formed, the MIDI cable 15 is a MIDI interface 1-0, and the sequencer 2 includes a sequencer main body 20 and a MIDI interface 21. M I D I cable 15 is M
Connected to the MID I IN terminal of I D I Ink 7 S2 1. The sequencer main body 20 has previously stored performance data as shown in the performance data memory provided therein. The number of F8s between event data in the figure is equal to the number corresponding to event intervals on the musical score. The event data consists of, for example, ○N (/-tt7), KCD (pitch), and vEL (key velocity pitch), and when the pointer points to KON, these performance data are sequentially output to note #3. .

以上の構成により、テンポコントローラ1から出力され
るF8データの周期が短くなればシーケンサ2からは楽
譜時間が短(なるように演奏データが出力される。また
、反対に上記周期が長くなれば楽譜時間が長くなるよう
に演奏データが出力される。
With the above configuration, if the period of the F8 data output from the tempo controller 1 becomes short, the sequencer 2 will output performance data such that the musical score time becomes short. Performance data is output so that the time becomes longer.

次に第2図(A)〜(F)を参照して上記テンポコント
ローラ1の動作を説明する。
Next, the operation of the tempo controller 1 will be explained with reference to FIGS. 2(A) to 2(F).

第2図(A)はタップスイッチ13が操作された時の動
作を示している。このフローでは、テンポずれおよび楽
譜時間ずれを求め、楽譜時間ずれの一部を解消する動作
を行う。
FIG. 2(A) shows the operation when the tap switch 13 is operated. In this flow, the tempo deviation and musical score time deviation are determined, and an operation is performed to eliminate a part of the musical score time deviation.

まず、nlにおいてタップ時における操作者の意図する
強拍点の楽譜時間の推定を行う。この位置はGuess
Posて表される。第3図においてタップ時をt3とす
るとこのGuessPosは楽譜時間で1152の位置
である。GuessPosは、 GuessPos= (CurPo s/Bea t)*Bea tで求めら
れる.ここでBeatは1拍の楽譜時間、即ち384で
あり、CurPosは現在の楽譜時間位置を表す0例え
ば第3図で現在の物理時間がL3とすると、CurPo
sは1056である.また、(CurPos/Beat
)は四捨五入値を返す.したがって例えば、現在の物理
時間がt3とした場合、CutPosが960〜115
2の間にある場合にはGuessPosは1152とな
り、Curiosが768〜959の間にある場合には
CruessPosは768となる本実施例では楽譜時
間のずれの解消とともに、テンポずれの解消も行うよう
にしているため、次のn2ではテンポの計算を行う。
First, at nl, the musical score time of the strong beat point intended by the operator at the time of tapping is estimated. This position is Guess
It is expressed as Pos. In FIG. 3, if the tap time is t3, this GuessPos is at position 1152 in musical score time. GuessPos is calculated by: GuessPos=(CurPos/Beat)*Beat. Here, Beat is the musical score time of one beat, that is, 384, and CurPos is 0 representing the current musical score time position.For example, if the current physical time is L3 in Fig. 3, CurPos is 384.
s is 1056. Also, (CurPos/Beat
) returns a rounded value. Therefore, for example, if the current physical time is t3, CutPos is 960 to 115.
If the Curios is between 2 and 2, the GuessPos will be 1152, and if the Curios is between 768 and 959, the CruessPos will be 768. In this embodiment, the tempo deviation is also resolved in addition to the musical score time deviation. Therefore, in the next step n2, the tempo is calculated.

テンポの計算は、 newTempo= (GuessPos−PrevPos)/(CurTi
me−Pr evTime)で求められる。ここで、n
ewTempoは以後実行すべき演奏テンポであり、P
revPosは前回の楽譜時間位置を示し、CurTi
meは現在の物理時間を示し、PrevTimeは前回
の物理時間を示している.つまり、newTempOは
第3図から明らかなように直線の傾きを表していること
に他ならない。
Calculation of tempo is: newTempo= (GuessPos-PrevPos)/(CurTi
me-PrevTime). Here, n
ewTempo is the performance tempo to be performed from now on, and P
revPos indicates the previous musical score time position, CurTi
me indicates the current physical time, and PrevTime indicates the previous physical time. In other words, newTempO represents nothing but the slope of a straight line, as is clear from FIG.

続いてテンポずれの計算を行う(n3)。テンポずれは
、 tempoDif f=newTemp。
Next, the tempo shift is calculated (n3). The tempo difference is tempoDif f=newTemp.

−CurTemp。-CurTemp.

で表される。It is expressed as

また、続いてn4て楽譜時間のずれを求める。Further, in n4, the musical score time shift is determined.

楽譜時間のずれ1PosDiffは、 Po5Diff =CurPos−GuessPos て求められる。第3図に示す例ではPo5Diffは−
96である。次に、データの更新を行う。
The music score time difference 1PosDiff is obtained as Po5Diff=CurPos-GuessPos. In the example shown in Figure 3, Po5Diff is -
It is 96. Next, update the data.

つまり、GuessPosをPrevPosとして更新
し、CurTimeをPrevTimeとして更新する
That is, GuessPos is updated as PrevPos, and CurTime is updated as PrevTime.

以上の処理を行った後n6で時間ずれの初期解消モジュ
ールを実行する。
After performing the above processing, a time lag initial elimination module is executed at n6.

第2図(B)は時間ずれ初期解消モジュールのフローチ
ャートを示している。ここてはタップ時に生じた時間ず
れのうち直ちに解消するずれ量を求める。この時に必要
な係数は時間ずれ解消率bypassRatioである
。このbypassRatioは第2図(C)に示すよ
うに予め操作パネル11から人力されている。bypa
ssRatioの大きさは0〜1の範囲に設定される。
FIG. 2(B) shows a flowchart of the time lag initial elimination module. Here, the amount of time difference that occurs during tapping that can be immediately resolved is determined. The coefficient required at this time is the time lag cancellation rate bypassRatio. This bypassRatio is manually set in advance from the operation panel 11 as shown in FIG. 2(C). bypa
The size of ssRatio is set in a range of 0 to 1.

時間ずれ解消モジュールのnl Qでは、時間ずれを1
)ypa s sRa t i oの分だけ解消するこ
とによってCurPosを次のように変更する。
In the time lag cancellation module nlQ, the time lag is set to 1
) CurPos is changed as follows by canceling ypassRatio.

CutPos+= PosDiff*bypassRati。CutPos+= PosDiff*bypassRati.

なお、上記の式はC言語の記述手法によって示している
。数学的に表すと次のようになる。
Note that the above equations are expressed using the C language description method. Expressed mathematically, it is as follows.

CurPos=CurPos −i−PosDi f f*bypassRat i。CurPos=CurPos -i-PosDi f f*bypassRat i.

第4図(A)では上記の式によってタップ時にCurP
osがplからp2に移動していることが分かる。
In Fig. 4(A), CurP is
It can be seen that os has moved from pl to p2.

次にnilにおいて時間ずれの更新を行う。即ち、 Po5Diff*= (1−bypassRaL io) で更新できる。Next, the time shift is updated at nil. That is, Po5Diff*= (1-bypassRaLio) You can update it with .

第2図(D)はMmsec毎にタイマ割り込みで実行さ
れるフローチャートである。このフローではタフブスイ
ンチがオンしてから時間ずれとテンポずれを少しずつ解
消していく動作を行う。
FIG. 2(D) is a flowchart that is executed by a timer interrupt every Mmsec. In this flow, after Tough Bus Inch is turned on, the time and tempo deviations are gradually resolved.

n30でtempoDiffがOかどうかの判定を行い
、uempoDiffがOであれば、つまりテンポずれ
かない場合にはn32へ進みここで時間ずれの解消ステ
ップを実行する。また、LempoDiffが0てなけ
ればn3iてテンポずれの解消ステップを実行し、続い
て時間ずれ解消のステップを実行する。n32の時間ず
れ解消ステップは次の式によって行われる。
At n30, it is determined whether tempoDiff is O or not. If uempoDiff is O, that is, if there is no tempo deviation, the process advances to n32, where a step for eliminating the time difference is executed. Further, if LempoDiff is not 0, a tempo shift elimination step is executed at n3i, and then a time shift elimination step is executed. The time lag elimination step n32 is performed using the following equation.

CurPos工= Po5Diff*0.06; Po5Diff*=0.94 ここで、0.06はタンプ時以腎の時間ずれ解消率であ
り、予め定められている。この式によって、第4図に示
すように1回目の実行てはp2からp3にCurPos
が移動する。そして、POsDiffも更新することに
より次回の割り込みに備える。
CurPos = Po5Diff*0.06; Po5Diff*=0.94 Here, 0.06 is the rate of time lag elimination after the tamping time, and is predetermined. According to this formula, as shown in Figure 4, the first execution results in CurPos being transferred from p2 to p3.
moves. Then, POsDiff is also updated to prepare for the next interrupt.

またn31のテンポずれ解消ステップでは、次の式が実
行される。
Further, in the tempo deviation eliminating step of n31, the following equation is executed.

CurTempo+=incTempo ;tempo
Dif f−=incTemp。
CurTempo+=incTempo ; tempo
Dif f-=incTemp.

ここでincTempoはテンポずれの1回当たりの解
消量を示すもので、第2図(E)に示すように予め操作
パネル11によって入力されている。
Here, incTempo indicates the amount of tempo deviation removed per time, and is input in advance from the operation panel 11 as shown in FIG. 2(E).

第4図(B)は上記テンポずれ解消ステップ(n31)
によって推移してい< Cu rTemp 。
FIG. 4(B) shows the above tempo deviation elimination step (n31)
It is transitioned by <CurTemp.

を示している。It shows.

第4図(A)、(B)に示すように、楽譜時間のずれ量
はタップ間で指数関数的に減少していき、テンポずれ量
は一次関数で減少していく。
As shown in FIGS. 4(A) and 4(B), the amount of musical score time deviation decreases exponentially between taps, and the tempo deviation amount decreases linearly.

第2図(F)はNm5ec毎にタイマ割り込みによって
実行されるフローチャートである。このフローでは、M
 I D Iケーブルに対して演奏データメモリのカウ
ントアツプのためのM I D IデータF8を出力す
る。
FIG. 2(F) is a flowchart executed by a timer interrupt every Nm5ec. In this flow, M
MIDI data F8 for counting up the performance data memory is output to the IDI cable.

n51.n52ではそれぞれ物理時間の維持と楽譜時間
の維持を行う。続いてn53で、現在までのMIDIC
1ock数を求める。ここで、MIDIC1ock数と
はM I D I規格で定められる分解能(1拍当たり
のカウント数が24)でのカウント数である。現在まで
のM I D I Cl o ckk数urF8Cou
nt、は、次式で求められるCurF8Count= Cu r P o s / F F3 T i m e
ここでF3TimeはMIDIC1ock1個当たりの
楽譜時間を表す。
n51. n52 maintains physical time and musical score time, respectively. Next was the n53, and the current MIDIC
Find the number of 1ocks. Here, the MIDIC1ock number is the count number at the resolution defined by the MID I standard (the number of counts per beat is 24). Number of MID I Cl o ck to date urF8Cou
nt, is calculated by the following formula: CurF8Count= Cur Pos / F F3 Time
Here, F3Time represents the musical score time per one MIDIC.

続いてn54でM I D Iケーブルに対して出力す
るki I D I C1o c kの数即ちF8デー
タの数を求める。これは、 (CurF8Count − PrevF8Count) で求められる。ここて、PrevF8Countは前回
まてのM I D I Cl o c k数を表す。な
お、この割り込みフローが例えば3ms e c毎に行
われるとした場合、n54で出力される〜1lDIC1
ock(F8データ)の数はOまたは1であり、しかも
通常の楽譜の演奏では0がかなり多く、たまに1になる
ものと考えられる。
Next, in step n54, the number of ki I D I C1oc k to be output to the M I D I cable, that is, the number of F8 data is determined. This is determined by (CurF8Count - PrevF8Count). Here, PrevF8Count represents the previous MID ICloc count. In addition, if this interrupt flow is performed every 3ms e c, for example, the output from n54 ~1lDIC1
The number of ocks (F8 data) is either 0 or 1, and in normal music score performance, there are quite a lot of 0s, and it is thought that it will occasionally be 1.

次にn55において、 PrevF8Count= CurF8CounL を実行して次回の処理のだめの準備を行ってリターンす
る。
Next, at n55, PrevF8Count=CurF8CountL is executed to prepare for the next process, and the process returns.

以上の動作により、時間ずれ初期解消率(bypass
Ratio)の値を大きく設定すればタッピングに対す
る自動演奏出力の追従性が良くなり、また反対にその値
を低(設定すれば滑らかさが良くなる。操作者はこの滑
らかさと追従性のトレードオフを任意に選択することが
できる。また、上記実施例ではテンポずれの解消も行う
ようにしているために、上記の追従性がより改善される
ことになる。
By the above operation, the time lag initial elimination rate (bypass
If you set a large value (Ratio), the automatic performance output will follow the tapping better, and conversely, if you set the value low (Ratio), the smoothness will improve.The operator should make a trade-off between smoothness and followability. It can be selected arbitrarily.Furthermore, in the above embodiment, since the tempo deviation is also resolved, the above-mentioned followability is further improved.

なお、第4図(A)に示すように楽譜時間のずれ量は指
数関数的に解消されるが、勿論−次関数で解消するよう
にすることも可能である。同様にテンポずれ量も任意の
関数で減少させてい(ことができる。また、第2図(D
)のn32に示すように時間ずれ解消率を0.06の一
定値としだが、この値も操作者が任意に設定可能にでき
る。
Note that, as shown in FIG. 4(A), the amount of deviation in musical score time is canceled out exponentially, but of course it is also possible to cancel it out using a -order function. Similarly, the amount of tempo deviation can be reduced by any function.
), the time lag cancellation rate is set to a constant value of 0.06, but this value can also be set arbitrarily by the operator.

(g)発明の効果 この発明によれば、タッピングを行っている時の自動演
奏の出力は操作者のタッピングに対して滑らかに追従す
るようになる。また、楽譜時間ずれ■の減少率を定める
関数のパラメータは操作者によって決めることができる
ために、操作者は上記の滑らかさを一層向上させたり、
または追従性を向上させたりする等、曲に合わせて追従
性と滑らかな時間変化の特性を任意に設定することがで
きる。例えば、曲の追従性が欲しい場合にはタップ時に
直ぐにずれ量を解消する初期解消率を大きくし、滑らか
さが欲しい時には反対に初期解消率を小さくする。これ
によって曲毎にタンプに追従する演奏出力の最適な時間
変化を実現することができる。
(g) Effects of the Invention According to the present invention, the automatic performance output when tapping is performed smoothly follows the operator's tapping. In addition, since the parameters of the function that determines the reduction rate of the musical score time lag ■ can be determined by the operator, the operator can further improve the smoothness described above.
Alternatively, it is possible to arbitrarily set the characteristics of followability and smooth time change according to the song, such as improving followability. For example, if you want good followability of a song, you increase the initial cancellation rate that eliminates the amount of deviation immediately upon tapping, and if you want smoothness, you conversely decrease the initial cancellation rate. This makes it possible to realize an optimal temporal change in performance output that follows the taps for each song.

接続した時の構成図、第2図(A)〜(F)はテンポコ
ントローラの動作を示すフローチャート、第3図は上記
テンポコントローラの動作を説明するための図、第4図
(A)、(B)は楽譜時間ずれ量とテンポずれlの変化
を説明するための図、第5図〜第8図は従来考えること
のできたテンポコントローラの原理を説明するため図で
ある。
A configuration diagram when connected, FIGS. 2(A) to (F) are flowcharts showing the operation of the tempo controller, FIG. 3 is a diagram for explaining the operation of the tempo controller, and FIGS. 4(A), ( B) is a diagram for explaining changes in the musical score time shift amount and tempo shift l, and FIGS. 5 to 8 are diagrams for explaining the principle of a conventional tempo controller.

1−テンポコントローラ、2−シーケンサ、3−音源、
4−サウンドシステム。
1-tempo controller, 2-sequencer, 3-sound source,
4-Sound system.

Claims (3)

【特許請求の範囲】[Claims] (1)タップデータを形成するタッピング手段とタップ
時の楽譜時間ずれ量を求める楽譜時間ずれ量検出手段と
、 前記楽譜時間ずれ量を所定の関数に基づいて減少させつ
つ現在の楽譜時間の更新を行う楽譜時間更新手段と、 楽譜時間の更新に応じてテンポクロック情報を出力する
テンポクロック情報出力手段と、を備えてなるテンポコ
ントローラ。
(1) A tapping means for forming tap data, a score time shift amount detection means for determining a score time shift amount at the time of tapping, and an update of the current score time while decreasing the score time shift amount based on a predetermined function. A tempo controller comprising: musical score time updating means for updating the musical score time; and tempo clock information output means for outputting tempo clock information in accordance with the updating of the musical score time.
(2)請求項(1)において、前記関数のパラメータを
設定する手段を備えることを特徴とするテンポコントロ
ーラ。
(2) The tempo controller according to claim (1), further comprising means for setting parameters of the function.
(3)請求項(1)において、 タップ時のテンポずれ量を求めるテンポずれ量検出手段
を備え、 前記楽譜時間更新手段は、前記楽譜時間ずれ量と前記テ
ンポずれ量を所定の関数に基づいて減少させつつ現在の
楽譜時間の更新を行うものであることを特徴とするテン
ポコントローラ。
(3) In claim (1), further comprising a tempo deviation amount detection means for determining a tempo deviation amount at the time of tapping, and the score time updating means calculates the score time deviation amount and the tempo deviation amount based on a predetermined function. A tempo controller that updates the current score time while decreasing it.
JP2255742A 1990-09-25 1990-09-25 Tempo controller Expired - Fee Related JP2653232B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2255742A JP2653232B2 (en) 1990-09-25 1990-09-25 Tempo controller
DE69129522T DE69129522T2 (en) 1990-09-25 1991-09-24 Clock control for automatically playing music
US07/765,041 US5227574A (en) 1990-09-25 1991-09-24 Tempo controller for controlling an automatic play tempo in response to a tap operation
EP91116253A EP0477869B1 (en) 1990-09-25 1991-09-24 Tempo controller for automatic music play

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2255742A JP2653232B2 (en) 1990-09-25 1990-09-25 Tempo controller

Publications (2)

Publication Number Publication Date
JPH04133095A true JPH04133095A (en) 1992-05-07
JP2653232B2 JP2653232B2 (en) 1997-09-17

Family

ID=17283003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2255742A Expired - Fee Related JP2653232B2 (en) 1990-09-25 1990-09-25 Tempo controller

Country Status (1)

Country Link
JP (1) JP2653232B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020217324A1 (en) * 2019-04-23 2020-10-29
JP2023515122A (en) * 2020-02-20 2023-04-12 アンテスコフォ Improved Synchronization of Prerecorded Musical Accompaniment as User Plays Music

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5988795A (en) * 1982-11-15 1984-05-22 ヤマハ株式会社 Tempo controller for automatically performing machine
JPS63187199U (en) * 1987-05-15 1988-11-30
JPH0271894U (en) * 1988-11-18 1990-05-31

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5988795A (en) * 1982-11-15 1984-05-22 ヤマハ株式会社 Tempo controller for automatically performing machine
JPS63187199U (en) * 1987-05-15 1988-11-30
JPH0271894U (en) * 1988-11-18 1990-05-31

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020217324A1 (en) * 2019-04-23 2020-10-29
WO2020217324A1 (en) * 2019-04-23 2020-10-29 AlphaTheta株式会社 Electronic musical instrument and musical piece phrase generation program
JP2023515122A (en) * 2020-02-20 2023-04-12 アンテスコフォ Improved Synchronization of Prerecorded Musical Accompaniment as User Plays Music

Also Published As

Publication number Publication date
JP2653232B2 (en) 1997-09-17

Similar Documents

Publication Publication Date Title
US5227574A (en) Tempo controller for controlling an automatic play tempo in response to a tap operation
US9711119B2 (en) Audio processing device, method of audio processing, storage medium, and electronic musical instrument
JPH04133095A (en) Tempo controller
JP2630054B2 (en) Multitrack sequencer
JP2780475B2 (en) Tempo controller
US4354412A (en) Adaptive metronome for an automatic rhythm generator
JP2780476B2 (en) Tempo controller
JP2940123B2 (en) Tempo controller
JP3052476B2 (en) Tempo information control device
JP2523779B2 (en) Automatic playing device
JP4412859B2 (en) Electronic musical instrument with synchronized performance function using external sync signal
JPH04133097A (en) Tempo controller
JP2624104B2 (en) Performance progress control device of automatic performance device
JP3304889B2 (en) Electronic musical instrument
JP3057793B2 (en) Electronic musical instrument
JP2626146B2 (en) Tempo controller
JP2537963B2 (en) Automatic playing device
JPH04156592A (en) Tempo controller
JP2715804B2 (en) Automatic performance device
JP3042183B2 (en) Electronic musical instrument
JPH0863168A (en) Tempo setting device
JPH04151694A (en) Tempo controller
JPH04186297A (en) Tempo controller
JPH087583B2 (en) Electronic musical instrument
JPH04285998A (en) Electronic musical instrument

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090523

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees