JP4099284B2 - Performance control device - Google Patents
Performance control device Download PDFInfo
- Publication number
- JP4099284B2 JP4099284B2 JP06284599A JP6284599A JP4099284B2 JP 4099284 B2 JP4099284 B2 JP 4099284B2 JP 06284599 A JP06284599 A JP 06284599A JP 6284599 A JP6284599 A JP 6284599A JP 4099284 B2 JP4099284 B2 JP 4099284B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- waveform
- tempo
- periodic signal
- reproduction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、演奏を制御する演奏制御装置に関する。
【0002】
【従来の技術】
従来より、一連の楽音波形を記憶しておき、記憶された楽音波形の時間軸を圧縮あるいは伸長して再生波形を生成することにより演奏を制御する演奏制御装置が知られている。このような演奏制御装置の1つとして、特開平10−55180号公報に、スイング演奏を制御する技術が提案されている。この技術によれば、楽音波形を記憶しておき、記憶された楽音波形を所定の音符長に対応する周期で区切ったときの各周期内の波形の前半部分,後半部分を、それぞれ、相対的に遅い速度,相対的に速い速度で読み出すことにより、時間軸の伸長および圧縮を行ない、再生される楽音にスイングが付与される。
【0003】
【発明が解決しようとする課題】
ところで、上記公報では、波形読出の読出速度を制御する変化パターンを、ユーザの操作により切り替えるとき、本来ずれては困るタイミングがずれないように、所定のタイミングのみで変化パターンを切り替える制御を行なっている。
【0004】
従って、上記公報では、変化パターンを変更しようとしても即座に変更するというような制御は困難であるという問題がある。
【0005】
また、演奏テンポを変更するためのテンポ操作子やスイングの効果の大きさを変更するためのデプス操作子を備え、その操作子への操作が直ちに演奏に反映する演奏制御装置も望まれるが、満足するものは提案されていない。
【0006】
本発明は、上記事情に鑑み、所望の演奏に即座に変更することのできる演奏制御装置を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記目的を達成する本発明の演奏制御装置は、
(1)一連の楽音波形を記憶する波形記憶手段
(2)圧縮伸張のレベルを指示する、時間的な変化が許容された制御信号の変化に追随しながら上記楽音波形の時間軸を圧縮あるいは伸長することにより再生波形を生成する圧縮伸長手段
(3)圧縮伸張のレベルを指示する周期信号を発生する周期信号発生手段
(4)その周期信号発生手段を制御し、発生される周期信号に変化を付加する信号変更手段
(5)上記周期信号発生手段により発生された、変化が付加された周期信号において、その周期信号の整数周期毎のタイミングでの積分値をそれぞれそれに続く整数周期で0に収束するように上記周期信号を修正する誤差補正手段
を備えたことを特徴とする。
【0008】
本発明の演奏制御装置は、波形記憶手段に記憶された楽音波形の時間軸を圧縮あるいは伸長することにより再生波形を生成している途中で、圧縮伸長のレベルが変更されても、その変更されたレベルに起因して発生する圧縮伸長量の誤差が0に収束するように制御信号が生成される。このため、例えばテンポやデプスが変更された場合であっても、その変更されたテンポやデプスに応じた演奏を即座に行なうことができる。従って、従来のように、所定の区間の区切りを待つ必要はなく、所望の演奏に即座に変更することができる。
【0009】
ここで、上記信号変更手段は、上記周期信号の周期を変化させるものであることが好ましい。
【0010】
このような信号変更手段を備えると、テンポが変更された場合であっても、その変更されたテンポに応じた演奏を即座に行なうことができる。
【0011】
また、上記圧縮伸長手段による再生波形のテンポを、波形再生途中での変更を許して設定する再生テンポ設定手段を備え、上記信号変更手段は、その再生テンポ設定手段で設定されたテンポに応じて上記周期信号の周期を変化させるものであることも好ましい形態である。
【0012】
このような再生テンポ設定手段および信号変更手段を備えると、ユーザは、演奏中にその再生テンポ設定手段を操作して、その演奏のテンポを所望のテンポに即座に変更することができる。
【0013】
さらに、上記信号変更手段は、上記周期信号発生手段より発生される周期信号の振幅を変化させるものであってもよい。
【0014】
このような信号変更手段を備えると、例えばスイング演奏中にデプスが変更された場合であっても、その変更されたデプスに対応する大きさのスイング効果で即座に演奏を行なうことができる。
【0015】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0016】
図1は、本発明の演奏制御装置の一実施形態のハードウェア構成を示すブロック図である。
【0017】
図1に示す演奏制御装置100は、あるスイング演奏が行なわれている途中でユーザが操作子を操作してテンポやデプスを変更した場合であっても、変更されたテンポやデプスに応じた新たなスイング演奏に即座に変更することのできる装置である。
【0018】
この演奏制御装置100には、波形メモリ10と、波形生成手段20と、制御信号発生手段30と、スタート/ストップ操作子40と、テンポ操作子50と、デプス操作子60とが備えられている。先ず、各操作子40,50,60について説明する。
【0019】
スタート/ストップ操作子40は、一連の楽音の演奏の開始あるいは停止を指示する操作子であり、一度操作すると演奏の開始を指示するための’H’レベルのスタート/ストップ信号を出力し、再度操作すると演奏の停止を指示するための’L’レベルのスタート/ストップ信号を出力する。
【0020】
テンポ操作子50は、本発明にいう再生テンポ設定手段に相当し、後述する波形生成手段20で生成される再生波形のテンポを、波形再生途中での変更を許して設定するものであり、設定されたテンポをあらわす再生テンポ情報を出力する。
【0021】
デプス操作子60は、付与されるスイングの大きさ(変調の深さ)を設定するためのものであり、設定された変調の深さを表わすデプス情報を出力する。
【0022】
次に波形メモリ10について説明する。この波形メモリ10については、図2を参照して説明する。
【0023】
図2は、図1に示す波形メモリのデータ構造を示す図である。
【0024】
この波形メモリ10は、本発明にいう波形記憶手段に相当し、この波形メモリ10には、波形データ本体であるPCM波形データ11と、そのPCM波形データ11の本来のテンポであるオリジナルテンポ12と、そのPCM波形データ11の先頭のアドレス,最終のアドレスを示すスタート・アドレス13,エンド・アドレス14とが記憶される。
【0025】
波形生成手段20については、図3を参照して説明する。
【0026】
図3は、図1に示す波形生成手段の内部構成をブロック化して示した図である。
【0027】
図3に示す波形生成手段20は、読出手段21aが備えられた時間軸圧縮伸長処理手段21と、割算手段22と、加算手段23とから構成されている。
【0028】
時間軸圧縮伸長処理手段21は、本発明にいう圧縮伸長手段に相当し、圧縮伸長のレベルを指示する、詳細は後述する時間的な変化が許容された制御信号の変化に追随しながらPCM波形データ11があらわす楽音波形を、所定の音符長に対応する周期で区切ったときの各周期内の波形の前半部分,後半部分を、それぞれ、時間軸の伸長,圧縮することにより再生波形を生成する。時間軸圧縮伸長処理手段21に備えられた読出手段21aは、前述した波形メモリ10に向けて、PCM波形データ11やそのPCM波形データ11の再生に必要なオリジナルテンポ12等を読み出すためのアドレス(address)を出力し、これにより波形メモリ10からPCM波形データ11やオリジナルテンポ12等をデータ(data)として読み出す。
【0029】
割算手段22は、テンポ操作子50からの再生テンポ情報と、読出手段21aからのオリジナルテンポ情報を入力し、「再生テンポ情報/オリジナルテンポ情報」の割算を行なって、再生テンポ情報に対応した再生テンポで再生を行なうための「基準圧伸係数」を算出する。例えば、
再生テンポ情報=180BPM
オリジナルテンポ情報=100BPM
とすると、
基準圧伸係数=180/100=1.8となる。
【0030】
加算手段23は、割算手段22で求めた基準圧伸係数に制御信号のレベルを加算して圧伸係数を生成して時間軸圧縮伸長処理手段21に入力する。
【0031】
ここで、時間軸圧縮伸長処理手段21に、「1」より大きい圧伸係数が入力された場合は、時間軸圧縮伸長処理手段21は、PCM波形データ11を時間軸方向に圧縮して再生波形を生成する。従って、再生テンポは速くなる。一方、「1」より小さい圧伸係数が入力された場合は、PCM波形データ11を時間軸方向に伸長して再生波形を生成する。従って、再生テンポは遅くなる。また、圧伸係数として「1」が入力された場合は、圧縮や伸長は行なわず、従ってオリジナルテンポで再生波形が生成されることとなる。
【0032】
次に、制御信号発生手段30について、図4を参照して説明する。
【0033】
図4は、図1に示す制御信号発生手段の内部構成をブロック化して示した図である。
【0034】
図4に示す制御信号発生手段30には、波形テーブル31と、テーブル選択手段32と、シーケンスデータ記憶手段33と、制御手段34と、補間手段35と、乗算手段36と、加算手段37と、誤差補正手段38とが備えられている。
【0035】
波形テーブル31,テーブル選択手段32,シーケンスデータ記憶手段33,制御手段34,補間手段35,乗算手段36が本発明にいう圧縮伸長レベルを指示する周期信号を発生する周期信号発生手段に相当する。波形テーブル31およびシーケンスデータ記憶手段33については、図5および図6を参照して説明する。
【0036】
図5は、波形テーブルに記憶された、複数種類の周期波形を示す図、図6は、シーケンスデータ記憶手段に記憶されたシーケンスデータを示す図である。
【0037】
波形テーブル31には、図5に示すように、1拍分の周期信号を1つの単位として、波形形状や周期が異なる複数種類の周期波形wave1,wave2,wave3,wave4,…が記憶されている。また、シーケンスデータ記憶手段33には、図6に示すように、複数の周期波形wave1,wave2,wave3,wave4,…を読み出す順序が規定されたシーケンスデータが記憶されている。この図6では、周期波形wave1,wave2,wave5,…,wave3の順に読み出される。
【0038】
図4に示す制御手段34には、スタート/ストップ信号および再生テンポ情報が入力される。ここで、制御手段34に、スタート/ストップ信号として’H’レベルが入力されると、この制御手段34は、シーケンスデータ記憶手段33に記憶されたシーケンスデータを参照し、参照したシーケンスデータに対応するテーブル選択情報をテーブル選択手段32に向けて出力する。テーブル選択手段32は、このテーブル選択情報に基づいて、波形テーブル31に記憶された、そのシーケンスデータに対応する周期波形を選択する。これにより、選択された周期波形をあらわす波形データが、補間手段35に入力される。また、制御手段34は、入力された再生テンポ情報に応じて拍タイミングを生成して、後述する誤差補正手段38に入力する。
【0039】
補間手段35には、前述した波形データに加え、再生テンポ情報も入力される。補間手段35は、本発明にいう信号変更手段の一例であり、ここでは再生テンポ情報に対応した歩進アドレスで前述の選択された周期波形をあらわす波形データに補間演算を施して、前記周期波形の時間軸を、再生テンポ情報に対応して圧縮または伸長した補間周期信号を生成する。
【0040】
つまり、再生テンポ情報に対応した歩進アドレスで前記波形テーブル31を読み出すとき、読出アドレスは小数点表現のアドレスとなり、波形データは存在しないことがある。そのため、そのアドレスの前後の整数アドレスの波形データを読み出し、それらから補間演算によって小数点アドレスの波形データを生成し前記補間周期信号を生成することになる。
【0041】
このような手法は、波形読出方式の電子楽器の音源で使用されており公知の手法である。
尚、波形テーブル31には、120BPMの周期波形が記憶されている。ここで、歩進アドレスは、
歩進アドレス=再生テンポ情報/120
の演算で求められる。例えば、再生テンポ情報が120BPMの場合は歩進アドレスは「1」となり、従って補間周期信号の周期は、第1の周期信号の周期と同じになる。また、例えば再生テンポ情報が60BPMの場合は歩進アドレスは0.5となり、従って補間周期信号の周期は第1の周期信号の周期の2倍に引き伸ばされる。
【0042】
乗算手段36には、補間手段35で生成された補間周期信号が入力される。また、デプス操作子60からのデプス情報も入力される。この乗算手段36は、本発明にいう、周期信号の振幅を変化させる信号変更手段の一例であり、ここでは補間周期信号にデプス情報に基づくデプス係数を乗算して、補間周期信号の振幅、即ち変調の深さを設定する。これにより、スイングのタイミング変化の大きさを設定することができる。このようにして、補間手段35で周期が変化し、かつ乗算手段36で振幅が変化した周期信号が生成される。この周期信号は、加算手段37を経由して誤差補正手段38に入力される。
【0043】
誤差補正手段38の処理の様子を図7,図8を参照して説明する。
【0044】
図7は、図4に示す誤差補正手段の内部構成をブロック化して示した図、図8は、図1に示す演奏制御装置の動作波形を示す図である。
【0045】
図7に示す誤差補正手段38は、積分手段38aと、フリップフロップ38b(FF1)と、1/T演算手段38cと、フリップフロップ38d(FF2)と、変換テーブル38eとから構成されている。ここで、図8に示すように、演奏制御装置100に備えられたデプス操作子60,テンポ操作子50から所定のレベルのデプス情報、再生テンポ情報が出力されている。このような状態において、スタート/ストップ操作子40が操作され、スタート/ストップ信号として’H’レベルが出力される。すると、制御手段34(図4参照)が動作し、これによりデプス情報,再生テンポ情報に応じた周期信号が、乗算手段36から出力される。この周期信号は、加算手段37を経由して信号INとして、積分手段38aに入力される。積分手段38aは周期信号の波形を積分する。ここで、図8に示す、拍タイミング信号により定まる、最初の区間a1では、周期信号があらわす波形の、前半部分である伸長用の面積(一側の面積)と、後半部分である圧縮用の面積(+側の面積)とは等しいため、積分値は0になる。次に区間a2の途中でデプス操作子60が操作され、変調が浅い方向に設定される。すると、一側の面積よりも+側の面積の方が小さくなる。このため、積分手段38aからそれら面積の差分の積分値が出力される。この積分値は拍タイミング信号でフリップフロップ38bにサンプリングされ、区間a3において、レベルd1×周期T1の面積をもつ誤差信号が出力される。この誤差信号は1/T演算手段38cに入力される。一方、変換テーブル38eから、再生テンポ情報に基づく周期を得るためのデータが、フリップフロップ38dに向けて出力される。フリップフロップ38dは、このデータを拍タイミング信号でサンプリングして周期T1を得、1/T演算手段38cに入力する。1/T演算手段38cは、フリップフロップ38bからの誤差信号を周期T1で割算し、割算した値(d1/T1)を信号OUTとして加算手段37にフィードバックする。このフィードバックにより加算手段37に入力された誤差信号(図8の最下段に示す信号の反転(−)信号つまり+信号)と図8の中央付近に示されている乗算手段出力の欄の周期信号(図4の乗算器36の出力信号)とを加算手段37で加算することで、区間a2の誤差分を含む積分値がそれに続く区間a3で0に収束するように処理を行なう。
【0046】
次に、区間a4の途中で、今度はテンポ操作子50が操作されてテンポが速い方向に設定される。すると、再生テンポ情報のレベルが上がり、このレベルに応じて周期信号の周期が途中から短くなる。このため、区間a4における周期信号の波形の一側の面積よりも+側の面積の方が小さくなるが、次の区間a5において、前述した区間a3と同様にして得られた値(d2/T2)が信号OUTとして加算手段37にフィードバックされるため、誤差信号が打ち消される。
【0047】
尚、前記実施形態では、前の周期の終わりでの積分値を次の1周期区間で0に収束するような処理をしていたが、収束処理を行なう周期は整数周期であっても良い。
【0048】
図9は、図4に示す制御手段で実行されるスタート処理ルーチンのフローチャートである。
【0049】
このスタート処理ルーチンは、演奏を開始するためにスタート/ストップ操作子40が操作されてスタート/ストップ信号が’L’レベルから’H’レベルに変化した時点で発生する割込信号により起動される。このスタート処理ルーチンでは、ステップS11において、制御手段34に備えられたタイマ(図示せず)のタイマ割込を許可してこのルーチンを終了する。タイマ割込が許可されると、タイマから所定時間毎にタイマ割込信号が発生する。以下、図10を参照して説明する。
【0050】
図10は、図4に示す制御手段で実行されるタイマ割込処理ルーチンのフローチャートである。
【0051】
前述した図9に示すステップS11において、タイマ割込が許可されると、制御手段34に備えられたタイマからのタイマ割込信号により、このルーチンが所定時間毎に繰り返し実行される。
【0052】
先ずステップS21において、スタート/ストップ信号が’H’レベルにあるか’L’レベルにあるかが判定される’H’レベルにあると判定された場合は演奏の開始が指示されたためステップS22に進む。ステップS22では、再生テンポ情報を入力してステップS23に進む。ステップS23では、再生テンポ情報を歩進データに変換し、カウンタにカウント値として歩進データを設定する。
【0053】
次にステップS24において、カウンタのカウント値が1拍値B以上か否かが判定される。ここで、1拍値Bは1拍の間にカウンタがカウントすべき値であるBを示すものである。カウント値が1拍値Bよりも小さいと判定された場合は、まだ1拍分の時間が経過していないため、後述するステップS30に進む。一方、カウント値が1拍値B以上であると判定された場合は、一拍分の時間が経過しているため、ステップS25に進む。ステップS25では、再生テンポ情報に応じた周期の拍タイミング信号を出力する。
【0054】
次にステップS26において、シーケンスデータ記憶手段33からシーケンスデータを読み込み、テーブル選択情報を設定する。次にステップS27に進む。ステップS27では、シーケンスデータが終了したか否かが判定される。シーケンスデータが終了したと判定された場合は、演奏を終了するため、後述するステップS31に進む。シーケンスデータがまた終了していないと判定された場合は、演奏を引き続き行なうため、ステップS28に進む。ステップS28では、シーケンスデータ読込アドレスをインクリメントして、ステップS29に進む。ステップS29では、カウント値から1拍値Bを引算した値を新たなカウント値として設定する。カウント値が1拍値Bを越えている場合、その差分を補正するためである。ステップS30ではカウント値を歩進データで歩進してこのルーチンを終了する。
【0055】
一方、ステップS21において、スタート/ストップ信号が’L’レベルであると判定された場合は、現在行なわれている演奏を停止するためにステップS31に進む。
【0056】
ステップ31ではカウント値を1拍値Bに設定する。これにより、次の演奏スタートにおける拍タイミング信号を正確に出力することができる。次にステップS32において、シーケンスデータ読込アドレスをリセットしてステップS33に進む。ステップS33では、タイマ割込を禁止してこのルーチンを終了する。
【0057】
本実施形態の演奏制御装置100では、このようにして制御手段34が動作し、波形生成手段20で波形メモリ10から楽音波形を読み出してスイング演奏を行なっている途中でテンポ操作子50,デプス操作子60で再生テンポ情報、デプス情報を変更した場合であっても、変更されたそれら情報に基づく圧縮伸長量の誤差を0に収束するように、制御信号発生手段30で制御信号を生成して、スイング演奏を即座に変更する。
【0058】
尚、本実施形態では、テンポ操作子30を備え、このテンポ操作子30を操作して所望のテンポをあらわす再生テンポ情報を得たが、本発明はこれに限られるものではなく、MIDIインターフェースを介して再生テンポ情報を得てもよい。あるいは、MIDIクロックの周期を測定して再生テンポ情報としてもよい。
【0059】
また、本実施形態では、スイング演奏の例で説明したが、これに限られるものではない。
【0060】
【発明の効果】
以上説明したように、本発明によれば、所望の演奏に即座に対応することができるという効果とともに、本発明の演奏制御装置を使用した波形信号演奏と並行して、同じテンポで他の自動演奏装置による自動演奏を行なう場合でも、テンポの変更や変調の深さを変更してもタイミングのずれが生じることがないという効果を得ることができる。
【図面の簡単な説明】
【図1】本発明の演奏制御装置の一実施形態のハードウェア構成を示すブロック図である。
【図2】図1に示す波形メモリのデータ構造を示す図である。
【図3】図1に示す波形生成手段の内部構成をブロック化して示した図である。
【図4】図1に示す制御信号発生手段の内部構成をブロック化して示した図である。
【図5】波形テーブルに記憶された、複数種類の周期波形を示す図である。
【図6】シーケンスデータ記憶手段に記憶されたシーケンスデータを示す図である。
【図7】図4に示す誤差補正手段の内部構成をブロック化して示した図である。
【図8】図1に示す演奏制御装置の動作波形を示す図である。
【図9】図4に示す制御手段で実行されるスタート処理ルーチンのフローチャートである。
【図10】図4に示す制御手段で実行されるタイマ割込処理ルーチンのフローチャートである。
【符号の説明】
10 波形メモリ
11 PCM波形データ
12 オリジナルテンポ
13 スタート・アドレス
14 エンド・アドレス
20 波形生成手段
21 時間軸圧縮伸長処理手段
21a 読出手段
22 割算手段
23,37 加算手段
30 制御信号発生手段
31 波形テーブル
32 テーブル選択手段
33 シーケンスデータ記憶手段
34 制御手段
35 補間手段
36 乗算手段
38 誤差補正手段
38a 積分手段
38b,38d フリップフロップ
38c 1/T演算手段
38e 変換テーブル
40 スタート/ストップ操作子
50 テンポ操作子
60 デプス操作子
100 演算制御装置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a performance control apparatus that controls performance.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, a performance control device that stores a series of musical sound waveforms and controls the performance by compressing or expanding the time axis of the stored musical sound waveforms to generate a reproduction waveform is known. As one of such performance control apparatuses, Japanese Patent Laid-Open No. 10-55180 proposes a technique for controlling swing performance. According to this technique, a musical sound waveform is stored, and when the stored musical sound waveform is divided by a cycle corresponding to a predetermined note length, the first half portion and the second half portion of the waveform in each cycle are respectively relative to each other. By reading out at a slower speed and a relatively faster speed, the time axis is expanded and compressed, and a swing is given to the reproduced musical sound.
[0003]
[Problems to be solved by the invention]
By the way, in the above publication, when a change pattern for controlling the reading speed of waveform reading is switched by a user's operation, control is performed to switch the change pattern only at a predetermined timing so that a timing that is not likely to be shifted is not shifted. Yes.
[0004]
Therefore, in the above publication, there is a problem that it is difficult to control such that the change pattern is changed immediately even if it is to be changed.
[0005]
In addition, a performance control device that includes a tempo operation element for changing the performance tempo and a depth operation element for changing the magnitude of the effect of the swing, and an operation to the operation element is immediately reflected in the performance is desired. No one has been proposed to be satisfied.
[0006]
An object of this invention is to provide the performance control apparatus which can be changed into a desired performance immediately in view of the said situation.
[0007]
[Means for Solving the Problems]
The performance control device of the present invention that achieves the above-described object provides:
(1) Waveform storage means for storing a series of musical sound waveforms. (2) Compressing or expanding the time axis of the musical sound waveforms while following the change in the control signal that indicates the level of compression / expansion that is allowed to change with time. (3) A periodic signal generating means for generating a periodic signal instructing the level of compression / expansion (4) The periodic signal generating means is controlled to change the generated periodic signal. Signal changing means to be added (5) In the periodic signal generated by the periodic signal generating means and to which the change is added, the integral value at the timing of each integer period of the periodic signal converges to 0 in each subsequent integer period. Thus, an error correction means for correcting the periodic signal is provided.
[0008]
The performance control apparatus according to the present invention changes the compression / expansion level even when the playback waveform is being generated by compressing or expanding the time axis of the musical sound waveform stored in the waveform storage means. The control signal is generated so that the error of the compression / decompression amount generated due to the level converges to zero. For this reason, even if the tempo and depth are changed, for example, performance according to the changed tempo and depth can be performed immediately. Therefore, unlike the prior art, there is no need to wait for a break between predetermined sections, and it is possible to immediately change to a desired performance.
[0009]
Here, it is preferable that the signal changing means changes the period of the periodic signal.
[0010]
With such signal changing means, even if the tempo is changed, a performance according to the changed tempo can be performed immediately.
[0011]
The tempo of the reproduction waveform by the compression / expansion means includes reproduction tempo setting means for allowing change during waveform reproduction, and the signal changing means corresponds to the tempo set by the reproduction tempo setting means. It is also a preferred form that the period of the periodic signal is changed.
[0012]
When such a playback tempo setting means and signal changing means are provided, the user can immediately change the tempo of the performance to a desired tempo by operating the playback tempo setting means during the performance.
[0013]
Furthermore, the signal changing means may change the amplitude of the periodic signal generated by the periodic signal generating means.
[0014]
With such a signal changing means, even if the depth is changed during a swing performance, for example, it is possible to perform the performance immediately with a swing effect having a magnitude corresponding to the changed depth.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0016]
FIG. 1 is a block diagram showing a hardware configuration of an embodiment of the performance control apparatus of the present invention.
[0017]
The
[0018]
The
[0019]
The start /
[0020]
The
[0021]
The
[0022]
Next, the
[0023]
FIG. 2 is a diagram showing a data structure of the waveform memory shown in FIG.
[0024]
The
[0025]
The waveform generation means 20 will be described with reference to FIG.
[0026]
FIG. 3 is a block diagram showing the internal configuration of the waveform generating means shown in FIG.
[0027]
The waveform generating means 20 shown in FIG. 3 includes a time axis compression / expansion processing means 21 provided with a reading means 21a, a dividing means 22, and an adding
[0028]
The time axis compression / expansion processing means 21 corresponds to the compression / expansion means referred to in the present invention, and indicates the level of compression / expansion. The PCM waveform while following the change of the control signal allowed to change with time as will be described in detail When a musical sound waveform represented by the
[0029]
The dividing means 22 inputs the reproduction tempo information from the
Playback tempo information = 180 BPM
Original tempo information = 100 BPM
Then,
Reference companding coefficient = 180/100 = 1.8.
[0030]
The adding means 23 adds the control signal level to the reference companding coefficient obtained by the dividing means 22 to generate a companding coefficient, and inputs it to the time axis compression / expansion processing means 21.
[0031]
Here, when a companding coefficient larger than “1” is input to the time axis compression / expansion processing means 21, the time axis compression / expansion processing means 21 compresses the
[0032]
Next, the control signal generating means 30 will be described with reference to FIG.
[0033]
FIG. 4 is a block diagram showing the internal configuration of the control signal generating means shown in FIG.
[0034]
4 includes a waveform table 31, a
[0035]
The waveform table 31, the table selection means 32, the sequence data storage means 33, the control means 34, the interpolation means 35, and the multiplication means 36 correspond to the periodic signal generating means for generating a periodic signal indicating the compression / decompression level according to the present invention. The waveform table 31 and the sequence data storage means 33 will be described with reference to FIGS.
[0036]
FIG. 5 is a diagram showing a plurality of types of periodic waveforms stored in the waveform table, and FIG. 6 is a diagram showing sequence data stored in the sequence data storage means.
[0037]
As shown in FIG. 5, the waveform table 31 stores a plurality of types of periodic waveforms wave1, wave2, wave3, wave4,... Having different waveform shapes and periods, with a period signal for one beat as one unit. . Further, as shown in FIG. 6, the sequence data storage means 33 stores sequence data in which the order of reading a plurality of periodic waveforms wave1, wave2, wave3, wave4,. In FIG. 6, the periodic waveforms wave1, wave2, wave5,..., Wave3 are read in this order.
[0038]
A start / stop signal and reproduction tempo information are input to the control means 34 shown in FIG. Here, when 'H' level is input as a start / stop signal to the control means 34, the control means 34 refers to the sequence data stored in the sequence data storage means 33 and corresponds to the referenced sequence data. The table selection information to be output is output to the table selection means 32. Based on this table selection information, the table selection means 32 selects a periodic waveform corresponding to the sequence data stored in the waveform table 31. As a result, waveform data representing the selected periodic waveform is input to the interpolation means 35. Further, the control means 34 generates a beat timing according to the input reproduction tempo information and inputs it to an error correction means 38 described later.
[0039]
In addition to the waveform data described above, reproduction tempo information is also input to the interpolation means 35. The interpolating means 35 is an example of the signal changing means referred to in the present invention. Here, the interpolating operation is performed on the waveform data representing the selected periodic waveform at the step address corresponding to the reproduction tempo information, and the periodic waveform is obtained. The interpolation periodic signal is generated by compressing or expanding the time axis corresponding to the reproduction tempo information.
[0040]
That is, when the waveform table 31 is read with the step address corresponding to the reproduction tempo information, the read address is an address expressed in decimal point, and waveform data may not exist. For this reason, waveform data at integer addresses before and after the address are read out, waveform data at the decimal point address is generated from them by interpolation calculation, and the interpolation cycle signal is generated.
[0041]
Such a method is a publicly known method used in the sound source of an electronic musical instrument of a waveform reading type.
The waveform table 31 stores a periodic waveform of 120 BPM. Here, the step address is
Step address = playback tempo information / 120
It is calculated by the operation of For example, when the reproduction tempo information is 120 BPM, the step address is “1”, and therefore the cycle of the interpolation cycle signal is the same as the cycle of the first cycle signal. For example, when the reproduction tempo information is 60 BPM, the step address is 0.5, and therefore the cycle of the interpolation cycle signal is extended to twice the cycle of the first cycle signal.
[0042]
The multiplication means 36 receives the interpolation cycle signal generated by the interpolation means 35. The depth information from the
[0043]
The process of the
[0044]
7 is a block diagram showing the internal configuration of the error correction means shown in FIG. 4, and FIG. 8 is a diagram showing operation waveforms of the performance control device shown in FIG.
[0045]
The
[0046]
Next, in the middle of the section a4, the
[0047]
In the above-described embodiment, the integration value at the end of the previous period is processed to converge to 0 in the next one period, but the period for performing the convergence process may be an integer period.
[0048]
FIG. 9 is a flowchart of a start processing routine executed by the control means shown in FIG.
[0049]
This start processing routine is activated by an interrupt signal generated when the start /
[0050]
FIG. 10 is a flowchart of a timer interrupt processing routine executed by the control means shown in FIG.
[0051]
In step S11 shown in FIG. 9 described above, when the timer interrupt is permitted, this routine is repeatedly executed every predetermined time by the timer interrupt signal from the timer provided in the control means 34.
[0052]
First, in step S21, it is determined whether the start / stop signal is at the "H" level or the "L" level. If it is determined that the start / stop signal is at the "H" level, the start of the performance is instructed, so the process proceeds to step S22. move on. In step S22, reproduction tempo information is input, and the process proceeds to step S23. In step S23, the reproduction tempo information is converted into step data, and step data is set as a count value in the counter.
[0053]
Next, in step S24, it is determined whether or not the count value of the counter is 1 beat value B or more. Here, the 1-beat value B indicates B that is a value that the counter should count during one beat. If it is determined that the count value is smaller than one beat value B, the time for one beat has not yet elapsed, and the process proceeds to step S30 described later. On the other hand, if it is determined that the count value is equal to or greater than 1 beat value B, the process proceeds to step S25 because the time for one beat has elapsed. In step S25, a beat timing signal having a period corresponding to the reproduction tempo information is output.
[0054]
Next, in step S26, sequence data is read from the sequence data storage means 33, and table selection information is set. Next, the process proceeds to step S27. In step S27, it is determined whether or not the sequence data has been completed. If it is determined that the sequence data has been completed, the process proceeds to step S31 to be described later in order to end the performance. If it is determined that the sequence data has not been completed, the process proceeds to step S28 in order to continue the performance. In step S28, the sequence data read address is incremented, and the process proceeds to step S29. In step S29, a value obtained by subtracting one beat value B from the count value is set as a new count value. This is to correct the difference when the count value exceeds one beat value B. In step S30, the count value is incremented by the increment data, and this routine is terminated.
[0055]
On the other hand, if it is determined in step S21 that the start / stop signal is at the “L” level, the process proceeds to step S31 in order to stop the currently performed performance.
[0056]
In
[0057]
In the
[0058]
In this embodiment, the
[0059]
In this embodiment, the example of the swing performance has been described, but the present invention is not limited to this.
[0060]
【The invention's effect】
As described above, according to the present invention, it is possible to immediately respond to a desired performance, and in addition to the waveform signal performance using the performance control device of the present invention, other automatic operations are performed at the same tempo. Even in the case of performing an automatic performance by a performance device, it is possible to obtain an effect that a timing shift does not occur even if the tempo is changed or the modulation depth is changed.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a hardware configuration of an embodiment of a performance control apparatus of the present invention.
FIG. 2 is a diagram showing a data structure of the waveform memory shown in FIG. 1;
3 is a block diagram showing the internal configuration of the waveform generating means shown in FIG. 1. FIG.
4 is a block diagram showing the internal configuration of the control signal generating means shown in FIG. 1. FIG.
FIG. 5 is a diagram showing a plurality of types of periodic waveforms stored in a waveform table.
FIG. 6 is a diagram showing sequence data stored in sequence data storage means.
7 is a block diagram showing the internal configuration of the error correction means shown in FIG. 4. FIG.
FIG. 8 is a diagram showing operation waveforms of the performance control device shown in FIG. 1;
9 is a flowchart of a start processing routine executed by the control means shown in FIG.
10 is a flowchart of a timer interrupt processing routine executed by the control means shown in FIG.
[Explanation of symbols]
10
Claims (4)
圧縮伸張のレベルを指示する、時間的な変化が許容された制御信号の変化に追随しながら前記楽音波形の時間軸を圧縮あるいは伸長することにより再生波形を生成する圧縮伸長手段と、
圧縮伸張のレベルを指示する周期信号を発生する周期信号発生手段と、
該周期信号発生手段を制御し、発生される周期信号に変化を付加する信号変更手段と、
前記周期信号発生手段により発生された、変化が付加された周期信号において、その周期信号の整数周期毎のタイミングでの積分値をそれぞれそれに続く整数周期で0に収束するように前記周期信号を修正する誤差補正手段とを備えたことを特徴とする演奏制御装置。Waveform storage means for storing a series of musical sound waveforms;
A compression / expansion means for generating a reproduced waveform by compressing or expanding the time axis of the musical sound waveform while following a change in a control signal in which a change in time is allowed, instructing a level of compression / expansion;
Periodic signal generating means for generating a periodic signal indicating the level of compression and expansion;
Signal changing means for controlling the periodic signal generating means and adding a change to the generated periodic signal;
In the periodic signal generated by the periodic signal generation means and to which the change is added, the periodic signal is corrected so that the integral value at the timing of each integer period of the periodic signal converges to 0 in the subsequent integer period. A performance control apparatus comprising: an error correction means for performing the operation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06284599A JP4099284B2 (en) | 1999-03-10 | 1999-03-10 | Performance control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06284599A JP4099284B2 (en) | 1999-03-10 | 1999-03-10 | Performance control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000259153A JP2000259153A (en) | 2000-09-22 |
JP4099284B2 true JP4099284B2 (en) | 2008-06-11 |
Family
ID=13212062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06284599A Expired - Fee Related JP4099284B2 (en) | 1999-03-10 | 1999-03-10 | Performance control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4099284B2 (en) |
-
1999
- 1999-03-10 JP JP06284599A patent/JP4099284B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000259153A (en) | 2000-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3399297B2 (en) | Electronic musical instrument | |
US20020178006A1 (en) | Waveform forming device and method | |
JP2001188544A (en) | Audio waveform reproducing device | |
JP2007011217A (en) | Musical sound synthesizer and program | |
JPH09127941A (en) | Electronic musical instrument | |
JP4099284B2 (en) | Performance control device | |
US6207885B1 (en) | System and method for rendition control | |
US5559298A (en) | Waveform read-out system for an electronic musical instrument | |
JP6575585B2 (en) | Effect imparting device, effect imparting method, program, and electronic musical instrument | |
JP3844214B2 (en) | Modulation waveform generator | |
JPH07306681A (en) | Musical sound producing device | |
JP2000250547A (en) | Musical performance controller | |
KR100236786B1 (en) | Sound source device | |
JPH09179561A (en) | Musical tone generating method | |
JP4179243B2 (en) | Waveform generator and program | |
JP4236570B2 (en) | Waveform playback device and waveform playback program | |
JP2683975B2 (en) | Tone generator | |
JP3974408B2 (en) | SAMPLING SIGNAL GENERATION DEVICE, SAMPLING SIGNAL REPRODUCTION DEVICE, AND METHOD THEREOF | |
JP2746068B2 (en) | Modulation signal generator | |
JP4213835B2 (en) | Waveform playback device | |
JP3378066B2 (en) | Music synthesizer | |
JP3871119B2 (en) | Modulation waveform generator | |
JPH0243196B2 (en) | ||
JP2970438B2 (en) | Waveform memory type tone generator | |
JP3223555B2 (en) | Waveform reading device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071023 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071225 |
|
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: 20080311 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080317 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120321 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130321 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140321 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |