JP4099284B2 - Performance control device - Google Patents

Performance control device Download PDF

Info

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
Application number
JP06284599A
Other languages
Japanese (ja)
Other versions
JP2000259153A (en
Inventor
剛彦 古川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roland Corp
Original Assignee
Roland 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 Roland Corp filed Critical Roland Corp
Priority to JP06284599A priority Critical patent/JP4099284B2/en
Publication of JP2000259153A publication Critical patent/JP2000259153A/en
Application granted granted Critical
Publication of JP4099284B2 publication Critical patent/JP4099284B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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 performance control apparatus 100 shown in FIG. 1 can perform a new operation corresponding to the changed tempo and depth even when the user changes the tempo and depth by operating the operator while a certain swing performance is being performed. It is a device that can be instantly changed to a swing performance.
[0018]
The performance control apparatus 100 includes a waveform memory 10, a waveform generation means 20, a control signal generation means 30, a start / stop operator 40, a tempo operator 50, and a depth operator 60. . First, each operation element 40, 50, 60 will be described.
[0019]
The start / stop operator 40 is an operator for instructing the start or stop of the performance of a series of musical sounds. Once operated, the start / stop operator 40 outputs an “H” level start / stop signal for instructing the start of the performance. When operated, an 'L' level start / stop signal for instructing stop of the performance is output.
[0020]
The tempo operator 50 corresponds to the reproduction tempo setting means referred to in the present invention, and sets the tempo of the reproduction waveform generated by the waveform generation means 20 to be described later while allowing changes during waveform reproduction. The playback tempo information representing the tempo is output.
[0021]
The depth operator 60 is for setting the magnitude of the applied swing (depth of modulation), and outputs depth information indicating the set depth of modulation.
[0022]
Next, the waveform memory 10 will be described. The waveform memory 10 will be described with reference to FIG.
[0023]
FIG. 2 is a diagram showing a data structure of the waveform memory shown in FIG.
[0024]
The waveform memory 10 corresponds to the waveform storage means according to the present invention. The waveform memory 10 includes PCM waveform data 11 which is the waveform data body, and an original tempo 12 which is the original tempo of the PCM waveform data 11. The start address 13 and the end address 14 indicating the last address of the PCM waveform data 11 are stored.
[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 means 23.
[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 data 11 is divided by a period corresponding to a predetermined note length, a playback waveform is generated by extending and compressing the first half and the second half of the waveform in each period, respectively. . The reading means 21a provided in the time axis compression / expansion processing means 21 reads the PCM waveform data 11, the original tempo 12 necessary for reproducing the PCM waveform data 11, etc. address), and the PCM waveform data 11 and the original tempo 12 are read from the waveform memory 10 as data.
[0029]
The dividing means 22 inputs the reproduction tempo information from the tempo operator 50 and the original tempo information from the reading means 21a, and divides "reproduction tempo information / original tempo information" to correspond to the reproduction tempo information. The “reference companding coefficient” for reproducing at the reproduction tempo is calculated. For example,
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 PCM waveform data 11 in the time axis direction to reproduce the reproduced waveform. Is generated. Accordingly, the playback tempo is increased. On the other hand, when a companding coefficient smaller than “1” is input, the PCM waveform data 11 is expanded in the time axis direction to generate a reproduction waveform. Therefore, the playback tempo is slowed down. When “1” is input as the companding coefficient, compression and expansion are not performed, and thus a reproduction waveform is generated at the original tempo.
[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 table selection unit 32, a sequence data storage unit 33, a control unit 34, an interpolation unit 35, a multiplication unit 36, an addition unit 37, Error correction means 38 is provided.
[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 depth operator 60 is also input. The multiplication unit 36 is an example of a signal changing unit that changes the amplitude of the periodic signal according to the present invention. Here, the multiplication unit 36 multiplies the interpolation cycle signal by a depth coefficient based on the depth information to obtain the amplitude of the interpolation cycle signal, that is, Sets the depth of modulation. As a result, the magnitude of the swing timing change can be set. In this way, a periodic signal whose period is changed by the interpolation means 35 and whose amplitude is changed by the multiplication means 36 is generated. This periodic signal is input to the error correction unit 38 via the addition unit 37.
[0043]
The process of the error correction unit 38 will be described with reference to FIGS.
[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 error correction unit 38 shown in FIG. 7 includes an integration unit 38a, a flip-flop 38b (FF1), a 1 / T calculation unit 38c, a flip-flop 38d (FF2), and a conversion table 38e. Here, as shown in FIG. 8, predetermined levels of depth information and playback tempo information are output from the depth operator 60 and the tempo operator 50 provided in the performance control apparatus 100. In such a state, the start / stop operator 40 is operated, and an 'H' level is output as a start / stop signal. Then, the control means 34 (see FIG. 4) is operated, whereby a periodic signal corresponding to the depth information and the reproduction tempo information is output from the multiplication means 36. This periodic signal is input to the integrating means 38a as the signal IN via the adding means 37. The integrating means 38a integrates the waveform of the periodic signal. Here, in the first section a1, which is determined by the beat timing signal shown in FIG. 8, the expansion area (one side area) which is the first half of the waveform represented by the periodic signal and the compression area which is the second half are shown. Since the area (the area on the + side) is equal, the integral value is zero. Next, the depth operator 60 is operated in the middle of the section a2, and the modulation is set in a shallow direction. Then, the area on the + side becomes smaller than the area on one side. For this reason, an integral value of the difference between these areas is output from the integrating means 38a. This integrated value is sampled by the flip-flop 38b by a beat timing signal, and an error signal having an area of level d1 × period T1 is output in the section a3. This error signal is input to the 1 / T calculating means 38c. On the other hand, data for obtaining a period based on the reproduction tempo information is output from the conversion table 38e to the flip-flop 38d. The flip-flop 38d samples this data with a beat timing signal to obtain a cycle T1, and inputs the cycle T1 to the 1 / T calculating means 38c. The 1 / T calculating means 38c divides the error signal from the flip-flop 38b by the period T1, and feeds back the divided value (d1 / T1) to the adding means 37 as a signal OUT. The error signal (inverted (−) signal of the signal shown at the bottom of FIG. 8, that is, the + signal) input to the adding means 37 by this feedback and the periodic signal in the column of the multiplication means output shown near the center of FIG. (The output signal of the multiplier 36 in FIG. 4) is added by the adding means 37, so that the integral value including the error in the section a2 converges to 0 in the subsequent section a3.
[0046]
Next, in the middle of the section a4, the tempo operator 50 is operated this time so that the tempo is set in a fast direction. Then, the level of the reproduction tempo information is raised, and the period of the periodic signal is shortened from the middle according to this level. For this reason, the area on the + side is smaller than the area on one side of the waveform of the periodic signal in the section a4. However, in the next section a5, the value (d2 / T2) obtained in the same manner as the section a3 described above. ) Is fed back to the adding means 37 as the signal OUT, so that the error signal is canceled.
[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 / stop operator 40 is operated to start the performance and the start / stop signal changes from the “L” level to the “H” level. . In this start processing routine, in step S11, the timer interruption of a timer (not shown) provided in the control means 34 is permitted, and this routine ends. When the timer interrupt is permitted, a timer interrupt signal is generated from the timer every predetermined time. Hereinafter, a description will be given with reference to FIG.
[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 step 31, the count value is set to 1 beat value B. Thereby, the beat timing signal at the next performance start can be accurately output. Next, in step S32, the sequence data read address is reset, and the process proceeds to step S33. In step S33, timer interruption is prohibited and this routine is terminated.
[0057]
In the performance control apparatus 100 of the present embodiment, the control means 34 operates in this way, and the tempo operator 50 and the depth operation are performed while the waveform generation means 20 reads out the musical sound waveform from the waveform memory 10 and performs the swing performance. Even when the playback tempo information and the depth information are changed by the child 60, the control signal generating means 30 generates a control signal so that the compression / decompression amount error based on the changed information converges to zero. , Change swing performance instantly.
[0058]
In this embodiment, the tempo operator 30 is provided, and the tempo operator 30 is operated to obtain reproduction tempo information representing a desired tempo. However, the present invention is not limited to this, and a MIDI interface is provided. The playback tempo information may be obtained through this. Alternatively, reproduction tempo information may be obtained by measuring the period of the MIDI clock.
[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 waveform memory 11 PCM waveform data 12 original tempo 13 start address 14 end address 20 waveform generating means 21 time axis compression / expansion processing means 21a reading means 22 division means 23, 37 adding means 30 control signal generating means 31 waveform table 32 Table selection means 33 Sequence data storage means 34 Control means 35 Interpolation means 36 Multiplication means 38 Error correction means 38a Integration means 38b, 38d Flip-flop 38c 1 / T calculation means 38e Conversion table 40 Start / stop operator 50 Tempo operator 60 Depth Operator 100 Arithmetic control device

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.
前記信号変更手段は、前記周期信号の周期を変化させるものであることを特徴とする請求項1記載の演奏制御装置。2. The performance control apparatus according to claim 1, wherein the signal changing means changes the period of the periodic signal. 前記圧縮伸長手段による再生波形のテンポを、波形再生途中での変更を許して設定する再生テンポ設定手段を備え、前記信号変更手段は、該再生テンポ設定手段で設定されたテンポに応じて前記周期信号の周期を変化させるものであることを特徴とする請求項2記載の演奏制御装置。Reproduction tempo setting means for setting the tempo of the reproduction waveform by the compression / expansion means to allow change during waveform reproduction is provided, and the signal changing means is configured to change the period according to the tempo set by the reproduction tempo setting means. 3. The performance control apparatus according to claim 2, wherein the period of the signal is changed. 前記信号変更手段は、前記周期信号発生手段より発生される周期信号の振幅を変化させるものであることを特徴とする請求項1記載の演奏制御装置。2. The performance control apparatus according to claim 1, wherein the signal changing means changes the amplitude of the periodic signal generated by the periodic signal generating means.
JP06284599A 1999-03-10 1999-03-10 Performance control device Expired - Fee Related JP4099284B2 (en)

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)

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