JP3636056B2 - Waveform data processing method - Google Patents
Waveform data processing method Download PDFInfo
- Publication number
- JP3636056B2 JP3636056B2 JP2000309120A JP2000309120A JP3636056B2 JP 3636056 B2 JP3636056 B2 JP 3636056B2 JP 2000309120 A JP2000309120 A JP 2000309120A JP 2000309120 A JP2000309120 A JP 2000309120A JP 3636056 B2 JP3636056 B2 JP 3636056B2
- Authority
- JP
- Japan
- Prior art keywords
- loop
- waveform data
- phase
- waveform
- original
- 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】
【従来の技術】
波形メモリ音源として、楽器を演奏した時の楽音信号をマイクロフォンでステレオ録音し、得られたLch(左チャンネル),Rch(右チャンネル)のステレオ原波形データを加工して波形メモリに記憶しておき、ノートオンに応じてこのステレオ原波形データを並列に読み出すことにより、2チャンネルの楽音波形を生成するものがある。
ここで、ステレオ原波形データの並列読み出しは、波形メモリ音源の2つの時分割発音チャンネルを使用して行われ、読み出された波形データに基づいて楽音波形を生成する。
波形メモリ音源は、通常、アタック部とループ部の波形データを記憶している。ノートオンに応じてアタック部を一通り読み出した後、ループ部を複数回繰り返して読み出し、読み出された波形データに基づいて楽音波形を生成している。
【0003】
一般に楽音波形のアタック部に後続する部分は、完全に定常的な変化をしているわけではなく、各周波数成分の周波数、位相および振幅は微妙に時間変動している。
したがって、ループ波形の読み出し位置がループエンドポイントからループスタートポイントに戻る際に、波形がスムーズに接続できるという保証がない。しかし、ループ部のつながりを自然なものにすることは、高品質の楽音発生のために重要である。そこで、つながりが不自然にならないように、ループ部の取り出しを自動的に行うものが、例えば、特開2000−10565号公報,特開2000−056774号公報等で知られている。
【0004】
図9は、従来の波形データ処理装置の一例を示すハードウエア構成図である。図中、31はCPU、32は各種プログラムおよび各種制御情報などが格納されるROM、33はワークエリアやバッファ領域あるいは各種プログラムを格納する領域として使用されるRAM、34は計時動作やタイマ割込を行うためのタイマである。
35は各種の操作スイッチが配備されたパネルスイッチ、36は原波形や周波数成分などの表示を行うパネル表示器である。37はMIDIインターフェース、38はCD−ROM,HD(ハード磁気ディスク),MO,FD等の記録媒体39にアクセスするための駆動装置である。
【0005】
40は波形メモリである。41は、書込回路43,音源部45,CPU31からのアクセスが互いに衝突しないように、波形メモリ40のアクセスタイムスロットを管理するアクセス管理部、42は外部波形入力端子、43は外部から入力される原波形データをサンプリングして、波形メモリ40に書き込む書込回路、44は記録媒体39やRAM33から波形メモリ40に書き込まれる波形データ、あるいは、波形メモリ40から読み出される波形データを転送するためのバッファである。
45は音源部、46は楽音信号を出力するサウンドシステム、47は各要素間の情報の授受のために使用されるバスラインである。
なお、通信インターフェース回路を設け、ネットワーク上のサーバから波形データや各種プログラムなどをダウンロードしてもよい。また、鍵盤操作子を設けてもよい。
【0006】
CPU31は、ROM32,RAM33に記憶された各種制御プログラムにしたがい、パネルスイッチ35やMIDIインターフェース37からの外部入力等に応じて、本装置全体の制御を行う。
音源波形データ作成処理時においては、バッファ44を介して波形メモリ40のデータの読み書きを行い、波形データを読み出して分析,加工,編集して再度、波形メモリ40に書き込んだり、記録媒体39や通信ネットワークから供給された波形データを波形メモリ40に書き込んだり、逆に波形メモリ40から記録媒体39や通信ネットワークに供給したりする。
また、演奏処理実行時においては、MIDIインターフェース37、記録媒体39,RAM33などから供給される演奏情報に応じて、発音チャンネルの楽音生成状態を制御する。音源部45では、割り当てられた発音チャンネルを用いて、波形メモリ40から選択された波形データを使用して楽音を生成する。
【0007】
図10は、従来の波形データ処理装置の処理の概要を示すフローチャートである。
S51において、原波形データが波形メモリ40に書き込まれる。続くS52において波形データ分析処理を行い、S53において、S52での周波数成分の分析値に基づいて、アタック部およびループ部の波形データを加工し合成し、合成された音源波形データを波形メモリ40に書き込む。
S54では、S53で作成された音源波形データを使用し、MIDIデータに基づいて演奏制御情報を作成し、音源部45に供給する。音源部45は、演奏制御情報に基づいて、波形メモリ40から楽音波形データを読み出し、アタック部の波形についてはそのまま、ループ部についてはループ波形を繰り返し読み出して、所定のエンベロープの付与、エフェクト処理等を実行し、各チャンネルの楽音を生成し合成してサウンドシステム46に供給する。
【0008】
次に、上述したS52の波形データ分析処理について説明する。
原波形データを複数の各分析ポイントを中心とする時間窓を用いた短時間フーリエ分析(STF分析:Short-time Fast Fourier analysis)で周波数分析する。原波形データに窓関数を掛け、FFT(高速フーリエ変換:Fast Fourier Transform)により周波数成分の周波数,振幅,位相の各データを得る。振幅がピークをなす全ての周波数を検出する。分析ポイントを移動し、上述した処理を繰り返し、各分析ポイントにおける振幅のピークを抽出する。ピークをなす各周波数成分の周波数,位相,振幅の各々について前後の分析ポイントで比較し、近接したピーク同士を対応付けて接続して行くと、複数のピーク軌跡が求められる。
【0009】
この軌跡のうち、ノイズなど不要な成分を除去して、基音成分,倍音成分,非調和成分等の所望の周波数成分の軌跡を選択し、その一つ一つの周波数成分に応じた正弦波信号を生成して正弦波加算合成することにより、原楽音波形データのうち、決定論的に得られる波形(Deterministic波形)を合成する。また、原楽音波形から決定論的に得られる波形を減算することにより残余波形(Residual波形)を得る。選択された軌跡の周波数成分をモディファするとともに、残余波形をイコライザ,FFTその他の信号処理によりモディファイする。このモディファイされた両波形を加算することにより所望の楽音波形波形を得る。
【0010】
図11は、原波形データからループ部を切り出すための、ループポイントの決定処理、および、スムージング処理を説明するための基音成分の位相の軌跡を示す線図である。
なお、位相とは、各周波数成分に対応する波形の位相を意味する。したがって、周波数分析されて得られる各周波数成分の、基準位相に対する位相差という意味での位相ではない。
ループスタートポイントを決定し、次いで、仮入力されたループエンドポイントを相対移動させつつ、ループスタートポイントとの関係で最適なループエンドポイントを確定する。
ループスタートポイントにおける基音成分の位相を基準とし、これより、基音成分の位相が2Nπ(Nは予め任意に指定できる正の整数値)だけ隔たった位置をループエンドポイントとする。
【0011】
しかし、基音成分の位相がループスタートポイントから2Nπだけ隔たった位置をループエンドポイントに設定したとしても、原波形データを構成するm倍音成分と基音成分(m=1)との周波数比は必ずしもm倍とはならないので、周波数成分によっては、ループスタートポイントとループエンドポイントとの間の位相差が2mNπからずれている場合がある。
したがって、基音成分以外の位相については、図11(b)に示すスムージング処理を実行する。
スムージング処理は、ループスタートポイントからループエンドポイント間の倍音成分に対し、位相の傾きを変える処理を行うことにより、ループスタートの位相とループエンドポイントとの間の位相差を2πの整数倍となるようにして位相を連続させるものである。ここで、必ずしも2mNπにする必要はない。位相差が、その倍音周波数において2πの整数倍にさえなれば、位相の連続性に関しては確保される。したがって、最小限の位相傾きの調整で済むように最も近い2πの整数倍となるような位相差にする
【0012】
次に、スムージング処理の一具体例を説明する。
予め設定されたループスタートポイントと基音成分の位相連続性から決まったループエンドポイントとの間において、各分析ポイントの周波数成分をRAM33から読み出す。ループスタートポイントとループエンドポイント間の位相差が2πの整数倍となるように、読み出された各分析ポイントの位相データに、一律に適切な係数を乗算する。
上述したスムージング処理は、所望の1または複数の周波数成分について行えばよい。なお、基音成分についても、位相差が厳密に2Nπにならないときに、同様にしてスムージング処理をすることができる。
【0013】
ステレオのLchとRchの各波形データに、上述したループ波形の切り出しおよびループ部内の位相調整を別々に行えば、各波形データに、適切なループスタートポイントおよびループエンドポイントを、自動的に設定することができる。しかし、LchとRchのループスタートポイントとループエンドポイントとが同じになる保証はない。これは、チャンネル毎に、ピッチに対する変調(モジュレーション)のかかり具合や録音条件に違いに原因があると考えられる。
【0014】
ここで、ループスタートポイント,ループエンドポイントを両チャンネルで一致させる必要は必ずしもなく、録音条件を補正したり、特殊な音場効果を狙うために、各ポイントを自由にずらせたりしてもよい。
しかし、ループスタートポイントからループエンドポイントまでの時間(ループ長:ループレングス)は同じにする必要があることがわかった。
その理由を次に説明する。発音時に波形メモリに記憶された音源波形データのアドレスを指示するために、Fナンバ演算方式を採用している。このFナンバは、アドレスカウンタの進む速さを制御するパラメータであって、音高周波数(楽音のピッチ)に比例したFナンバを、所定のクロック周期毎にカウンタで累算し、その整数部を音源波形データのアドレスとして、音源波形データを読み出している。Lch,Rchの波形データには、同一の音高周波数が指定されるから、同じ値のFナンバを、各チャンネルの音源波形の読み出しに使用する。ところが、ループ長が等しくなければ、2つの発音チャンネルのループ繰り返し周期が異なることになる。
【0015】
ループ部には、基音成分のピッチ周期の整数倍の長さの音源波形が記憶されているから、ループ部の発音では、ループ長の差に応じて、発音される両チャンネルの楽音波形の基本ピッチ周波数が異なることになる。しかも、ループ部の繰り返し回数が増えて行くにしたがって、両チャンネルで読み出しているループ波形内の位置が互いにずれて行く。一般に、ステレオ再生では、LchとRchの波形の位相関係が変化すると定位に影響が出ることが知られており、この場合も、生成するステレオ波形の定位感が不安定になる。
【0016】
ここで、Lch,Rchのループ部の音源波形の読み出しピッチを調整すれば、上述した問題は一応解決する。例えば、長いループ部の音源波形データを読み出す方のFナンバに比べ、短いループの音源波形データを読み出す方のFナンバを小さく調整する。
しかしながら、Fナンバの桁数は有限である。たとえFナンバで微調整できたとしても、調整にはわずかな誤差が残ってしまう。その結果、波形を読み出す周期も、完全に一致するわけではなく、わずかな誤差が残る。このわずかな誤差が累積して位相関係が徐々にずれて行くので、再生されるステレオの楽音信号の定位感が不安定になる。
【0017】
【発明が解決しようとする課題】
本発明は、上述した問題点を解決するためになされたもので、ステレオ楽音波形など、相互に関連する複数の原波形データから、それぞれ、相互の位相関係を損なうことなく、ループ部の波形データを作成するための波形データ処理方法を提供することを目的とするものである。
【0018】
【課題を解決するための手段】
本発明は、請求項1に記載の発明においては、原波形データに基づいて、波形再生時に繰り返し再生されるループ部の波形を作成するための波形データ処理方法であって、前記原波形データに関連した、基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、前記原波形データの周波数成分のうち、少なくとも基音成分の位相が、前記ループ部の終了位置から開始位置へ連続的に変化するように、前記原波形データの前記少なくとも基音成分の、前記ループ部内における位相を調整するループ内位相調整ステップを有するものである。
したがって、原波形データのループ長を、基準となる原波形データの基準となるループ部のループ長に一致させることができるため、波形再生時に、ループ部の波形と、基準となるループ部の波形とを、相互の位相関係を損なうことなく再生することが可能になる。
なお、前記ループ部の波形は、前記原波形データを周波数分析した周波数成分に基づいて波形合成されることにより作成されるものとすれば、原波形データに含まれる周波数成分のうち、所望の成分のみを選択したり、残余波形の成分を取り除いたりして、自由にループ部の波形を作成することができる。
また、前記ループ位置決定ステップは、前記原波形データの基音成分の前記ループ部での開始位相と前記基準となる原波形データの基音成分の前記ループ部での開始位相とが一致するように、前記原波形データの前記ループ部の開始位置を決定するものとすれば、前記ループ部が開始される時と、前記基準となるループ部が開始される時との時間差が、そのまま、前記ループ部の波形と、前記基準となるループ部の波形との位相差を表すことになる。その結果、波形再生時に、前記ループ部と前記基準となるループ部との間の位相関係を容易に制御することができる。
【0019】
請求項2に記載の発明においては、原波形データに基づいて、波形再生時に繰り返し再生されるループ部の波形を作成するための波形データ処理方法であって、前記原波形データに関連した基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、前記原波形データの基音成分の、前記ループ部内における位相に対し、前記基準となる原波形データの前記基音成分の、前記基準となるループ部内における位相の傾きと同じ位相の傾きを与えるループ内位相調整ステップを有するものである。
したがって、原波形データのループ長を、基準となるループ部のループ長に一致させることができるため、波形再生時に、相互の位相関係を損なうことなく再生することが可能になる。
【0020】
請求項3に記載の発明においては、請求項2に記載の波形データ処理方法において、前記ループ位置決定ステップは、前記ループ部のループ位置を前記基準となるループ部のループ位置に一致させるものであり、
さらに、前記原波形データの基音成分の位相を、前記ループ部より以前の位置から前記ループ部の開始位置まで、前記原波形データの基音成分の位相の傾きから前記基準となる原波形データの基音成分の位相の傾きに徐々に変化させるループ前位相調整ステップを有するものである。
したがって、原波形のループ部より前の位置からループ部の開始位置に至ったときの、基音成分の位相の傾きを連続させることができる。
【0021】
請求項4に記載の発明においては、請求項3に記載の波形データ処理方法において、前記ループ前位相調整ステップは、前記原波形データの基音成分の、前記ループ部の開始位置における位相が、前記原波形データの基音成分の位相を変化させる前の位相にほぼ保たれるように、前記原波形データを前記基準となる原波形データに対してずらせた上で、前記原波形データの基音成分の位相を変化させるとともに、前記原波形データのループ部の位置をずらせるものである。
したがって、原波形のループ部より前の位置からループ部の開始位置に至ったときの、基音成分の開始位相を、位相調整する前の値に保持することができる。
【0022】
請求項5に記載の発明においては、請求項1ないし4のいずれか1項に記載の波形データ処理方法において、前記基準となる波形データの周波数成分のうち少なくとも基音成分の位相が、前記基準となるループ部の終了位置から開始位置へ連続的に変化するように前記基準となる原波形データの前記基準となるループ部の位置を決定する基準ループ位置決定ステップを有するものである。
したがって、基準となる波形データについても、基準となるループ部の終了位置から開始位置への波形のつながりをよくすることができる。
【0023】
【発明の実施の形態】
図1は、本発明の波形データ処理装置の第1の実施の形態の機能ブロック構成図である。
この実施の形態では、Lch,Rchの波形をSTF分析し、それぞれに対して、ループスタートポイントとループエンドポイントとを決定し、Lch,Rchの加工済波形データを記憶装置に格納する。ハードウエア構成は、図9に示した従来の処理装置の構成を用いればよい。
図中、1はLchの原波形データ記憶部,8はRchの原波形データ記憶部である。2はLchのSTF分析(短時間フーリエ分析)部,9はRchのSTF分析部であって、それぞれ、原波形データを短時間フーリエ分析する。決定論的に得られる波形(Deterministic Wave)を正弦波加算合成するための決定論的成分(以下、「STF成分」という)と、その残りの残余(Residual)波形とを分離する。このSTF成分は、ピーク周波数成分の振幅,位相,周波数のデータを有する。一方、残余波形は、原波形から決定論的に得られる波形を引き算した値である。
【0024】
3は入力部であって、Lchの原波形データに対するスタートポイント、ループスタートポイント、仮のループエンドポイントの各アドレス情報、Rchの原波形データに対するスタートポイント、ループスタートポイントの各アドレス情報を、ユーザが入力する部分である。スタートポイントは、アタック部の開始位置であって、LchとRchとで同じアドレス情報を設定する。
ユーザによる設定入力に代えて、上述したアドレス情報を自動設定できる機能ブロックを設ける場合もある。
4はLchのループアドレス決定部であって、Lchのループスタートポイント,仮のループエンドポイントの各アドレス情報とLchのSTF成分とに基づいて、従来と同様の方法で、Lchのループスタートポイント,ループエンドポイントの各アドレス情報およびループ長(ループサイズ)を決定する。なお、スタートポイントについては、Lchの残余波形のループ処理および合成部6にそのまま出力する。
また、入力部3は、仮のループエンドポイントに代えて、ループ長を基音成分の周期の何倍にするかという値を指定してもよい。
【0025】
5はLchのループ調整部であって、従来技術でいう「スムージング処理」と同様である。決定されたループエンドポイントからループスタートポイントにかけて、基音成分および各倍音成分の位相が連続的に接続されるようにSTF成分を加工する。
6はLchの残余波形のループ処理および合成部である。まず、元の残余波形に基づいてループ部に適した残余波形を合成する。これを以後、合成残余波形という。次に、ループスタートポイントの手前に所定幅の領域を設定する。スタートポイントからこの所定幅の領域に至るまでの元の残余波形は、そのまま後述する合成に用いる。この所定幅の領域における元の残余波形は、上述した合成残余波形のうち、そのループエンドポイントの手前の所定幅の領域の波形とクロスフェード処理して合成に使用する。ループスタートポイントからループエンドポイントまでは、合成残余波形を合成に使用する。その結果、スタートポイントからループスタートポイントを経て、ループエンドポイントまでの残余波形が最終的に作成される。
次に、最終的に作成された残余波形と、スタートポイントからループエンドポイントまでのループ調整された後のSTF成分に基づいて正弦波合成された決定論的に得られる波形とが合成される。7は、Lchの波形メモリ音源用の加工済波形データメモリであって、アタック部とループ部とからなる合成波形データを格納する。なお、ループ部の波形データを、決定論的に得られる波形だけにしてもよい。
【0026】
10はRチャンネルのループアドレス決定部である。Rchのループスタートポイントのアドレス情報と、先にLchについて決定されたループ長とから、Rchのループエンドポイントのアドレス情報を決定する。なお、スタートポイントについては、Rchの残余波形ループ処理および合成部12にそのまま出力する。
11はRchのループ調整部であって、Lchのループ調整部5と同様な機能を有するが、使用形態が異なる。12はRchの残余波形ループ処理および合成部、13はRchの加工済波形データ記憶部であって、それぞれ、Lch側と同様のものである。
【0027】
図2は、本発明の第1の実施の形態における、ループ波形を取り出す動作およびスムージング処理の説明図である。基準チャンネルを、Lchとして処理を行っている。
図2(a)に示すように、ステップ1として、LchのループスタートポイントLSPLを入力する。次に、仮のループエンドポイントを入力し、STF分析に基づいて、仮のループエンドポイントから、時間軸の前方または後方へ移動させることにより、ループスタートポイントLSPLからループエンドポイントLEPLまでの基音成分の位相差が2Nπとなるような、ループに適したループエンドポイントLEPLを探し出し、Lchのループ長LLLを決定する。図2(b)にLchの基音成分の位相の軌跡を示す。
ステップ2として、Rchの波形データについて、ループスタートポイントLSPRを入力する。次に、Lchのループアドレス決定部4で決定されたLchのループ長LLLに等しくなるように、Rchのループ長LLRを設定し、ループエンドポイントLEPRのアドレス情報を決定する。Lchのループ長LLLとRchのループ長LLRとは、厳密に一致させる必要がある。図2(c)にRchの基音成分の位相の軌跡を示す。
【0028】
ループ長を等しくすれば、Lch,Rchの各発音チャンネルのFナンバの値を同一にすることにより、各チャンネルの時間的な位相関係を一定に保つことができる。
しかし、Rchのループ長がLchのループ長に強制的に合わせ込まれた結果、Rchについては、基音成分についても、ループスタートポイントLSPRからループエンドポイントLEPRまでの位相差が、必ずしも2Nπとはならない。
したがって、2Nπにならないときには、基音成分についても、倍音成分、非調和成分と同様に、従来のループスムージング処理を行う。
【0029】
例えば、図2(c)に示すように、ループスタートポイントLSPRとループエンドポイントLEPR間の基音成分については、位相の値に係数を乗算して、位相軸方向に伸長あるいは圧縮することにより、基音成分の位相差が、元の位相差から最も近い2πの整数倍になるように調整する。その結果、ループ長が、Lch,Rchのいずれについても、基音成分の周期のN倍となる。Rchの基音成分以外の周波数成分については、従来と同様に、ループスタートポイントLSPRとループエンドポイントLEPRとで、位相差が、それぞれ、元の位相差から最も近い2πの整数倍になるように調整する。
なお、Lch,Rchの各波形のループスタートポイントの時間位置(アドレス情報)が一致している必要はない。ループ部の繰り返し中に、各波形のループスタートポイントでの各基音成分の開始位相が、常に所定の位相関係を保っていればよい。
【0030】
図3は、本発明の第2の実施の形態における、ループ波形を取り出す動作およびスムージング処理の説明図である。
この実施の形態は、ループスムージング処理を時間軸の圧縮伸長で行うものである。
ステップ1は、図2(a)と同様であるので説明を省略する。図3(a)に示すステップ2および図3(b)に示す線図において、Rchの基音成分についても、従来と同様の方法で、ループエンドポイントLEPR1を決定し、ループ長をLLRとする。
図3(a)に示すステップ3および図3(c)に示す線図において、ループ長LLRがLchのループ長LLLに等しくなるように、ループスタートポイントLSPRからループエンドポイントLEPR1までのSTF成分を圧縮あるいは伸長する。その結果、ループ長がRchとLchとで一致する。
【0031】
図4は、本発明の第3の実施の形態における、ループ波形を取り出す動作の説明図である。
この実施の形態は、Lch,Rchの各波形データに基づいて、各チャンネルのループ長LLL,LLRを仮決定し、その仮決定された2つのループ長に基づいてLch,Rch共通のループ長LLXを最終的に決定するものである。
【0032】
ステップ1,2として、従来と同様の方法で、Lch,Rchについて独立に、ループスタートポイント,ループエンドポイントのアドレス情報を決定する。ただし、ループ長を基音成分の周期の何倍とするかは、両チャンネル間で一致させる必要がある。このアドレス情報は仮決定であり、Lch,Rchのループ長LLL,LLRも仮決定である。
ステップ3において、次式の通り、入力された制御値αに応じて最終的なループ長LLXを決定する。
LLX=LLL×α+LLR×(1−α)
すなわち、ループ長LLL,LLRを内挿補間(あるいは外挿補間)することにより最終的なループ長LLXを決定する。この決定されたループ長LLXとループスタートポイントLSPL,LSPRのアドレス情報とに基づいて、ループエンドポイントLEPL,LEPRのアドレス情報を決定する。
【0033】
この実施の形態においては、Lch,Rchの各基音成分についてもスムージング処理を行うことになる。この実施の形態は、例えば、Lch,Rchの原波形に異なるピッチ変調等がかかってピッチがずれているときに、ピッチが高い方のチャンネルの基音成分を時間軸方向に伸長してループ長LLXとし、ピッチが低い方のチャンネルの基音成分を時間軸方向に圧縮することにより、ループ長LLXとして、ピッチ差を小さくするのに有効である。
【0034】
図5は、本発明の第4,第5の実施の形態の機能ブロック構成の部分図である。この部分図は、図1に示した機能ブロック構成図に破線で示した基音成分位相合成部14の内部構成図である。
図6は、図5に示した機能ブロック構成における、基音成分の位相微分値の時間的変化を表す模式的な線図である。位相微分値は、周波数であるが位相の傾きでもある。
この実施の形態においては、Lchのループ長に等しいループ長が設定されたRch側のループスタートポイントからループエンドポイントまでの波形に対し、その基音成分をモディファイして、その位相の傾きを、Lchの基音成分の位相の傾きに一致させる(位相傾きのフィッティング)処理をする。Lchでループエンドポイントからループスタートポイントへの基音成分の位相の連続性が確保されているので、Rch側でも、当然に、ループエンドポイントからループスタートポイントへの基音成分の位相の連続性が確保される。
ただし、このままでは、Rchについて、ループスタートポイントで位相の傾きが不連続になる場合が多く、この位相の傾きの不連続の度合いが大きいと、楽音再生時にノイズとして感じられるおそれがある。
【0035】
図5において、21はLch基音成分の位相の傾きを出力する微分処理部、22はRch基音成分の位相の傾きを出力する微分処理部である。図6には、それぞれの微分出力が、Lch,Rchとして示されている。Lch,Rchのループスタートポイント,ループエンドポイントは一致させる。
23はクロスフェード合成部であって、Rchの基音成分の位相の傾きから徐々にLchの基音成分の位相の傾きに近づけて行き、ループスタートポイントからループエンドポイントまでは、Lchの基音成分の位相の傾きに完全一致させる機能を有する。
【0036】
24は積分処理部であって、ループ部のスタートポイントから所定距離だけ以前の位置(例えば、波形のアタックが終わった直後の位置)にあるクロスフェードスタートポイントにおける、Rchの基音成分の位相を初期値として、合成された位相の傾きを積分することにより、合成された基音成分の位相を出力する。この出力は、図1において、Rchの基音成分の位相として使用される。なお、このRchの基音成分の振幅については、そのままSTF分析部9の出力に使用される。
基音成分を除く倍音成分については、ループエンドポイントからループスタートポイントへ位相が連続してつながるように、スムージング処理を行う。
【0037】
図7は、上述した本発明の第4の実施の形態における、ループ波形の位相を合成する動作を説明する模式的な線図である。ただし、図7は図6に示した位相傾きに正確に合うように作図されたものではない。
図7には、Lch,Rchの各基音成分の位相およびクロスフェード合成されたRchの基音成分の位相の軌跡が示されている。クロスフェード合成されたRchの基音成分の位相は、クロスフェードスタートポイントから徐々に、Lchの基音成分の位相に接近して行き、ループスタートポイント以後、ループエンドポイントまでは、Lchの基音成分の位相の軌跡とRchの基音成分の位相の軌跡が、一定位相差で並行している。すなわち、ループスタートポイント,ループエンドポイント間において、Lchの基音成分の位相差と、Rchの基音成分の位相差とが等しくなる。
【0038】
Lchの基音成分についてループエンドポイントからループスタートポイントへ位相が連続するので、Rchの基音成分についても、同様に位相が連続する。その結果、一方のチャンネルで決定されたループスタートポイント,ループエンドポイントで、両チャンネルともに、適切なループを切り出すことができる。
このようにクロスフェード処理を行うことにより、ループ部の前からループループスタートポイントに入るときのRchの位相の傾きを連続したものにすることができる。
【0039】
ただし、クロスフェード処理を行った場合、図7において、合成されたRchの基音成分の位相が、ループスタートポイントにおいて、合成前のRchの基音成分の位相から、わずかにずれることになる。
このとき、合成されたRchの基音成分の位相が、ループスタートポイントにおける合成前の元のRchの基音成分の位相0と一致するのは、図示の例では、位相が0となるポイントよりもΔ(Δ<0)だけ左に戻ったポイントとなっている。なお、Lch,元のRchの基音成分の位相関係によっては、右に進んだポイント(0<Δ)となる場合もある。
【0040】
図8は、本発明の第5の実施の形態における、ループ波形の位相を合成する動作を説明する模式的な線図である。
この実施の形態では、上述した第4の実施の形態にしたがって、クロスフェード合成の計算を行って、Δの値を予め計算しておき、このΔだけ、元のRchのSTF成分を遅らせた上で、クロスフェード処理およびループ部内の位相傾きのフィッティング処理を行うものである。
図7においては、Δ<0であったので、クロスフェードスタートポイントの位置は、元のRchの黒丸の位置からΔだけ波形の始端側に戻し、図示の白丸の位置にしている。なお、図6にも、黒丸,白丸の位置を示している。
上述した処理によってもなお、ループスタートポイントにおいて、元のRchの基音成分の位相と、合成されたRchの基音成分の位相とが、完全に一致する保証はない。しかし、図7に示した場合よりは、よりよく一致させることができる。
【0041】
上述した各実施の形態において、Lch,Rchの基音成分のループスタート時の各開始位相の位相差を考慮していなかった。しかし、Rchの基音成分のループスタートポイントでの開始位相が、Lchの基音成分のループスタートポイントでの開始位相と一致するように、各チャンネルのループスタートポイントを決めれば、合成された楽音を発音させるときの楽音制御に好適となる。
上述した各実施の形態において、Lchの基音成分のループスタートポイントを入力してループエンドポイントを決定していたが、逆にループエンドポイントを入力してループスタートポイントを決定してもよい。また、上述した第1ないし第3の実施の形態において、Rchの基音成分のループスタートポイントを入力していたが、逆にループエンドポイントを入力してもよい。
【0042】
上述した説明では、基準となるLchのループ長は、原波形データを周波数分析した基音成分について、ループエンドポイントからループスタートへ連続的に位相が変化するように、ループエンドポイントを決めていた。しかし、ループエンドポイントの決め方としては、基音成分だけでなく所望の複数の倍音成分を含めて、位相の不連続が生じないようなループエンドポイントを探したり、残余波形の揺らぎや、基音成分の振幅の揺らぎの周期なども考慮してループエンドポイントを決めてもよい。
また、基準となるLchの波形データを周波数分析することなく、波形振幅だけに関して、ループエンドポイントになめらかにノイズなしで接続できるループエンドポイントが存在するようなループスタートポイントを探しだし、その結果として基準となるLchのループ長を決定してもよい。
【0043】
上述した説明では、Rchのループ部の波形は、波形データを周波数分析した周波数成分に基づいて波形合成することにより作成されるものであった。しかし、Lchのループ長に等しくなるように、Rchの波形データをそのまま切り出した波形データに対して、ループのつながりをよくするためにのみ、その基音成分に上述した各実施の形態に示したような波形処理をしてもよい。
上述した説明では、相互に関連したLch,Rchのステレオ楽音信号の波形データの処理について説明した。しかし、2chを超える場合についても、1つの波形を基本として同様にして波形データの処理を行うことができる。また、楽音信号に限らず、人声音信号や音響信号などの一般波形にも適用可能である。
【0044】
【発明の効果】
本発明は、上述した説明から明らかなように、関連した複数の波形データから、それぞれ、波形相互の位相関係を損なうことなく、ループ部の波形データを合成することが可能になるという効果がある。
ステレオ楽音波形データに適用した場合、ループ部の基音の位相変化がLchとRchとで一致するため、定位感の安定した音像が得られ、かつ、倍音成分の位相に関してはLchとRchの違いが保存されているので豊かなステレオ感が残る。
【図面の簡単な説明】
【図1】 本発明の波形データ処理装置の第1の実施の形態の機能ブロック構成図である。
【図2】 本発明の本発明の第1の実施の形態における、ループ波形を取り出す動作およびスムージング処理の説明図である。
【図3】 本発明の第2の実施の形態における、ループ波形を取り出す動作およびスムージング処理の説明図である。
【図4】 本発明の第3の実施の形態における、ループ波形を取り出す動作の説明図である。
【図5】 本発明の第4,第5の実施の形態の機能ブロック構成の部分図である。
【図6】 図5に示した機能ブロック構成における、基音成分の位相微分値の時間的変化を表す模式的な線図である。
【図7】 本発明の第4の実施の形態における、ループ波形の位相を合成する動作を説明する模式的な線図である。
【図8】 本発明の第5の実施の形態における、ループ波形の位相を合成する動作を説明する模式的な線図である。
【図9】 従来の波形データ処理装置の一例を示すハードウエア構成図である。
【図10】 従来の波形データ処理装置において、演奏が実行されるまでに行われる処理の概要を示すフローチャートである。
【図11】 従来におけるループポイントの決定処理およびスムージング処理を説明するための基音成分の位相の軌跡を示す線図である。
【符号の説明】
1…Lchの原波形データ記憶部、2,9…STF分析部、3…入力部、4,10…ループアドレス決定部、5,11…ループ調整部、6,12…残余波形のループ処理および合成部、7…Lchの加工済波形データメモリ、8…Rchの原波形データ記憶部、13…Rchの加工済波形データ記憶部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a waveform data processing method for creating a waveform of a loop portion that is repeatedly reproduced during waveform reproduction of a plurality of waveform data related to each other.
[0002]
[Prior art]
As a waveform memory sound source, a musical sound signal when a musical instrument is played is recorded in stereo by a microphone, and the obtained stereo original waveform data of Lch (left channel) and Rch (right channel) is processed and stored in the waveform memory. Some stereo sound waveform data are read in parallel in response to note-on to generate a 2-channel musical sound waveform.
Here, parallel reading of the original stereo waveform data is performed using two time-division sound generation channels of the waveform memory sound source, and a musical sound waveform is generated based on the read waveform data.
The waveform memory sound source normally stores waveform data of an attack part and a loop part. After the attack part is read out in response to the note-on, the loop part is repeatedly read out a plurality of times, and a musical sound waveform is generated based on the read waveform data.
[0003]
In general, the portion following the attack portion of the musical tone waveform does not change completely in a steady manner, and the frequency, phase and amplitude of each frequency component slightly vary with time.
Therefore, there is no guarantee that the waveform can be connected smoothly when the loop waveform readout position returns from the loop end point to the loop start point. However, natural connection of the loop portions is important for generating high-quality musical sounds. Therefore, for example, Japanese Patent Application Laid-Open No. 2000-10565 and Japanese Patent Application No. 2000-056774 disclose that the loop portion is automatically taken out so that the connection is not unnatural.
[0004]
FIG. 9 is a hardware configuration diagram illustrating an example of a conventional waveform data processing apparatus. In the figure, 31 is a CPU, 32 is a ROM storing various programs and various control information, 33 is a RAM used as a work area, a buffer area or an area for storing various programs, and 34 is a clocking operation or timer interrupt. It is a timer for performing.
[0005]
45 is a sound source unit, 46 is a sound system that outputs a musical tone signal, and 47 is a bus line used for exchanging information between each element.
A communication interface circuit may be provided to download waveform data, various programs, etc. from a server on the network. A keyboard operator may be provided.
[0006]
The
During the sound source waveform data creation process, data in the
Further, at the time of performance processing execution, the tone generation state of the tone generation channel is controlled according to performance information supplied from the
[0007]
FIG. 10 is a flowchart showing an outline of processing of a conventional waveform data processing apparatus.
In S51, the original waveform data is written into the
In S54, performance control information is created based on the MIDI data using the sound source waveform data created in S53, and supplied to the
[0008]
Next, the waveform data analysis process of S52 described above will be described.
The original waveform data is frequency-analyzed by short-time Fourier analysis (STF analysis) using a time window centered on a plurality of analysis points. The original waveform data is multiplied by a window function, and frequency, frequency and amplitude data of frequency components are obtained by FFT (Fast Fourier Transform). Detect all frequencies where the amplitude peaks. The analysis point is moved, and the above-described processing is repeated to extract an amplitude peak at each analysis point. When the frequency, phase, and amplitude of each frequency component forming a peak are compared at the previous and next analysis points and adjacent peaks are associated and connected, a plurality of peak loci are obtained.
[0009]
Unnecessary components such as noise are removed from this trajectory, and a trajectory of a desired frequency component such as a fundamental tone component, overtone component, or anharmonic component is selected, and a sine wave signal corresponding to each frequency component is selected. By generating and synthesizing a sine wave, a deterministic waveform is synthesized from the original musical sound waveform data. Further, a residual waveform is obtained by subtracting a waveform obtained deterministically from the original musical sound waveform. The frequency component of the selected locus is modified, and the remaining waveform is modified by equalizer, FFT or other signal processing. By adding the two modified waveforms, a desired tone waveform is obtained.
[0010]
FIG. 11 is a diagram showing the phase trajectory of the fundamental component for explaining the loop point determination process and the smoothing process for cutting out the loop portion from the original waveform data.
The phase means a phase of a waveform corresponding to each frequency component. Therefore, it is not a phase in the sense of a phase difference of each frequency component obtained by frequency analysis with respect to a reference phase.
The loop start point is determined, and then the optimum loop end point is determined in relation to the loop start point while relatively moving the temporarily input loop end point.
Based on the phase of the fundamental component at the loop start point as a reference, the position at which the phase of the fundamental component is separated by 2Nπ (N is a positive integer value that can be arbitrarily specified in advance) is defined as the loop end point.
[0011]
However, even if the position where the phase of the fundamental component is separated by 2Nπ from the loop start point is set as the loop end point, the frequency ratio between the m harmonic component and the fundamental component (m = 1) constituting the original waveform data is not necessarily m. Since it is not doubled, the phase difference between the loop start point and the loop end point may be shifted from 2 mNπ depending on the frequency component.
Therefore, the smoothing process shown in FIG. 11B is executed for phases other than the fundamental component.
In the smoothing process, the phase difference between the loop start phase and the loop end point becomes an integer multiple of 2π by changing the phase gradient of the harmonic component between the loop start point and the loop end point. In this way, the phase is made continuous. Here, it is not necessarily 2 mNπ. As long as the phase difference is an integral multiple of 2π at the harmonic frequency, phase continuity is ensured. Therefore, the phase difference is set to the nearest integer multiple of 2π so that the minimum phase inclination adjustment is sufficient.
[0012]
Next, a specific example of the smoothing process will be described.
The frequency component of each analysis point is read from the
The smoothing process described above may be performed for one or more desired frequency components. Note that the fundamental tone component can be similarly smoothed when the phase difference is not strictly 2Nπ.
[0013]
If the above-described extraction of the loop waveform and phase adjustment in the loop part are separately performed for each of the stereo Lch and Rch waveform data, appropriate loop start points and loop end points are automatically set for each waveform data. be able to. However, there is no guarantee that the Lch and Rch loop start points and loop end points will be the same. This is considered to be caused by a difference in the degree of modulation with respect to the pitch and recording conditions for each channel.
[0014]
Here, it is not always necessary to match the loop start point and the loop end point in both channels, and each point may be freely shifted in order to correct the recording condition or aim for a special sound field effect.
However, it was found that the time from the loop start point to the loop end point (loop length: loop length) should be the same.
The reason will be described next. In order to indicate the address of the sound source waveform data stored in the waveform memory at the time of sound generation, the F number calculation method is adopted. This F number is a parameter that controls the speed at which the address counter advances. The F number that is proportional to the pitch frequency (musical pitch) is accumulated by the counter every predetermined clock period, and the integer part is obtained. The sound source waveform data is read out as the address of the sound source waveform data. Since the same pitch frequency is specified for the Lch and Rch waveform data, the same F number is used for reading the sound source waveform of each channel. However, if the loop lengths are not equal, the loop repetition periods of the two sound generation channels are different.
[0015]
Since the sound source waveform with a length that is an integral multiple of the pitch period of the fundamental tone component is stored in the loop part, the sound of the loop part is based on the difference between the loop lengths and the basic sound waveform of both channels that are sounded. The pitch frequency will be different. In addition, as the number of repetitions of the loop portion increases, the positions in the loop waveform read by both channels are shifted from each other. In general, in stereo reproduction, it is known that if the phase relationship between the Lch and Rch waveforms changes, the localization will be affected. In this case as well, the sense of localization of the generated stereo waveform becomes unstable.
[0016]
Here, if the read-out pitch of the sound source waveform of the Lch and Rch loop portions is adjusted, the above-described problem is solved. For example, the F number for reading the sound waveform data of the short loop is adjusted to be smaller than the F number for reading the sound waveform data of the long loop.
However, the number of digits of the F number is finite. Even if fine adjustment is possible with the F number, a slight error remains in the adjustment. As a result, the period for reading out the waveform does not completely match, and a slight error remains. Since these slight errors are accumulated and the phase relationship gradually shifts, the sense of localization of the reproduced stereo sound signal becomes unstable.
[0017]
[Problems to be solved by the invention]
The present invention has been made in order to solve the above-mentioned problems. From a plurality of mutually related original waveform data such as a stereo musical sound waveform, the waveform data of the loop portion is obtained without impairing the mutual phase relationship. It is an object of the present invention to provide a waveform data processing method for creating a waveform.
[0018]
[Means for Solving the Problems]
The present invention according to
Therefore, since the loop length of the original waveform data can be matched with the loop length of the reference loop part of the original original waveform data, the waveform of the loop part and the reference loop part waveform can be reproduced during waveform playback. Can be reproduced without impairing the mutual phase relationship.
If the waveform of the loop part is created by waveform synthesis based on a frequency component obtained by frequency analysis of the original waveform data, a desired component among the frequency components included in the original waveform data is obtained. The waveform of the loop portion can be freely created by selecting only the waveform or removing the residual waveform component.
Further, in the loop position determination step, the start phase in the loop portion of the fundamental component of the original waveform data and the start phase in the loop portion of the fundamental component of the reference original waveform data are matched. If the start position of the loop part of the original waveform data is determined, the time difference between the time when the loop part is started and the time when the reference loop part is started is left as it is. And the phase difference between the waveform of the reference loop portion. As a result, the phase relationship between the loop part and the reference loop part can be easily controlled during waveform reproduction.
[0019]
The invention according to claim 2 is a waveform data processing method for creating a waveform of a loop portion that is repeatedly reproduced during waveform reproduction based on the original waveform data, the reference being related to the original waveform data and A loop length setting step for setting a loop length of a reference loop portion which is created based on the original waveform data and which is repeatedly reproduced at the time of waveform reproduction, and the loop length of the loop portion with respect to the original waveform data, The loop position determining step for determining the position of the loop part so as to be equal to the loop length of the reference loop part, and the reference for the phase of the fundamental component of the original waveform data in the loop part In-loop phase adjustment step for giving the same phase gradient as the phase gradient in the reference loop portion of the fundamental component of the original waveform data It is intended.
Therefore, since the loop length of the original waveform data can be matched with the loop length of the reference loop portion, it is possible to reproduce the waveform without damaging the mutual phase relationship.
[0020]
According to a third aspect of the present invention, in the waveform data processing method according to the second aspect, the loop position determining step matches the loop position of the loop part with the loop position of the reference loop part. Yes,
Further, the phase of the fundamental waveform component of the original waveform data is shifted from the position before the loop section to the start position of the loop section from the slope of the phase of the fundamental waveform component of the original waveform data. It has a pre-loop phase adjustment step that gradually changes to the phase gradient of the component.
Therefore, it is possible to make the gradient of the phase of the fundamental component continuous when the position before the loop portion of the original waveform reaches the start position of the loop portion.
[0021]
According to a fourth aspect of the present invention, in the waveform data processing method according to the third aspect of the present invention, in the phase adjustment before loop phase, the phase of the fundamental component of the original waveform data at the start position of the loop portion is The original waveform data is shifted with respect to the reference original waveform data so that the phase of the fundamental waveform component of the original waveform data is substantially maintained before the phase is changed. While changing the phase, the position of the loop portion of the original waveform data is shifted.
Therefore, the start phase of the fundamental sound component when the position before the loop portion of the original waveform reaches the start position of the loop portion can be held at the value before the phase adjustment.
[0022]
According to a fifth aspect of the present invention, in the waveform data processing method according to any one of the first to fourth aspects, at least a phase of a fundamental component among frequency components of the reference waveform data is the reference and A reference loop position determining step for determining the position of the reference loop portion of the original waveform data to be continuously changed from the end position of the loop portion to the start position.
Therefore, the waveform connection from the end position to the start position of the reference loop portion can be improved for the reference waveform data.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a functional block configuration diagram of a first embodiment of a waveform data processing apparatus of the present invention.
In this embodiment, the Lch and Rch waveforms are subjected to STF analysis, the loop start point and the loop end point are determined for each, and the processed waveform data of Lch and Rch are stored in the storage device. As the hardware configuration, the configuration of the conventional processing apparatus shown in FIG. 9 may be used.
In the figure, 1 is an Lch original waveform data storage unit, and 8 is an Rch original waveform data storage unit. Reference numeral 2 denotes an Lch STF analysis (short-time Fourier analysis) unit, and 9 denotes an Rch STF analysis unit, which respectively perform short-time Fourier analysis on the original waveform data. A deterministic component (hereinafter referred to as an “STF component”) for adding and synthesizing a deterministic waveform is separated from a residual waveform. This STF component has amplitude, phase, and frequency data of the peak frequency component. On the other hand, the residual waveform is a value obtained by subtracting a waveform obtained deterministically from the original waveform.
[0024]
Instead of setting input by the user, a function block that can automatically set the address information described above may be provided.
Reference numeral 4 denotes an Lch loop address determination unit, which is based on the Lch loop start point, each address information of the temporary loop end point, and the Lch STF component in the same manner as in the prior art. Each address information and loop length (loop size) of the loop end point is determined. The start point is output to the Lch residual waveform loop processing and synthesis unit 6 as it is.
Further, the
[0025]
Reference numeral 6 denotes a loop processing and synthesis unit for the Lch residual waveform. First, a residual waveform suitable for the loop portion is synthesized based on the original residual waveform. This is hereinafter referred to as a synthesized residual waveform. Next, an area having a predetermined width is set before the loop start point. The original residual waveform from the start point to this predetermined width region is used as it is for the synthesis described later. The original residual waveform in the predetermined width region is used for synthesis after cross-fading with the waveform of the predetermined width region in front of the loop end point of the above-described synthesized residual waveform. From the loop start point to the loop end point, the synthesized residual waveform is used for synthesis. As a result, a residual waveform from the start point through the loop start point to the loop end point is finally created.
Next, the finally created residual waveform is synthesized with a deterministically obtained waveform that is sine wave synthesized based on the STF component after the loop adjustment from the start point to the loop end point. Reference numeral 7 denotes a processed waveform data memory for an Lch waveform memory sound source, which stores combined waveform data composed of an attack portion and a loop portion. Note that the waveform data of the loop portion may be only a waveform obtained deterministically.
[0026]
[0027]
FIG. 2 is an explanatory diagram of an operation of extracting a loop waveform and a smoothing process in the first embodiment of the present invention. The reference channel is processed as Lch.
As shown in FIG. 2A, as a
As step 2, loop start point LSP for Rch waveform data R Enter. Next, the Lch loop length LL determined by the Lch loop address determination unit 4 L Rch loop length LL to be equal to R Set the loop end point LEP R Address information is determined. Lch loop length LL L And Rch loop length LL R Must be matched exactly. FIG. 2C shows the locus of the phase of the fundamental component of Rch.
[0028]
If the loop lengths are made equal, the temporal phase relationship of each channel can be kept constant by making the F number values of the sound channels of Lch and Rch the same.
However, as a result of forcibly adjusting the Rch loop length to the Lch loop length, the Rch loop start point LSP is also obtained for the fundamental component. R To loop end point LEP R The phase difference up to is not necessarily 2Nπ.
Therefore, when it does not become 2Nπ, the conventional loop smoothing process is performed for the fundamental component as well as the harmonic component and the anharmonic component.
[0029]
For example, as shown in FIG. 2 (c), the loop start point LSP R And loop end point LEP R For the fundamental component in between, multiply the phase value by a coefficient and expand or compress in the phase axis direction so that the phase difference of the fundamental component becomes an integer multiple of 2π closest to the original phase difference. adjust. As a result, the loop length becomes N times the period of the fundamental component for both Lch and Rch. For the frequency components other than the fundamental component of Rch, the loop start point LSP is the same as in the past. R And loop end point LEP R Then, the phase difference is adjusted so as to be an integer multiple of 2π closest to the original phase difference.
Note that the time positions (address information) of the loop start points of the Lch and Rch waveforms do not have to match. It is only necessary that the start phase of each fundamental sound component at the loop start point of each waveform always maintains a predetermined phase relationship during the repetition of the loop portion.
[0030]
FIG. 3 is an explanatory diagram of an operation for extracting a loop waveform and a smoothing process in the second embodiment of the present invention.
In this embodiment, the loop smoothing process is performed by compressing and expanding on the time axis.
In
[0031]
FIG. 4 is an explanatory diagram of an operation of extracting a loop waveform in the third embodiment of the present invention.
In this embodiment, the loop length LL of each channel is based on the Lch and Rch waveform data. L , LL R , And the Lch and Rch common loop length LL based on the two temporarily determined loop lengths X Is finally determined.
[0032]
In
In
LL X = LL L × α + LL R × (1-α)
That is, the loop length LL L , LL R The final loop length LL is obtained by interpolating (or extrapolating) X To decide. This determined loop length LL X And loop start point LSP L , LSP R Loop end point LEP based on the address information of L , LEP R Address information is determined.
[0033]
In this embodiment, smoothing processing is also performed for the fundamental components of Lch and Rch. In this embodiment, for example, when different pitch modulation or the like is applied to the original waveforms of Lch and Rch and the pitch is shifted, the fundamental component of the channel with the higher pitch is expanded in the time axis direction to loop length LL. X By compressing the fundamental component of the channel with the lower pitch in the time axis direction, the loop length LL X Is effective in reducing the pitch difference.
[0034]
FIG. 5 is a partial view of the functional block configuration of the fourth and fifth embodiments of the present invention. This partial diagram is an internal configuration diagram of the fundamental tone component
FIG. 6 is a schematic diagram showing a temporal change in the phase differential value of the fundamental component in the functional block configuration shown in FIG. The phase differential value is a frequency but also a phase gradient.
In this embodiment, the fundamental component is modified for the waveform from the loop start point on the Rch side to the loop end point on which the loop length equal to the loop length of the Lch is set, and the slope of the phase is changed to Lch. To match the phase gradient of the fundamental tone component (phase gradient fitting). Since the continuity of the phase of the fundamental component from the loop end point to the loop start point is secured on the Lch, naturally the continuity of the phase of the fundamental component from the loop end point to the loop start point is secured on the Rch side as well. Is done.
However, as it is, the phase gradient of Rch is often discontinuous at the loop start point, and if the degree of the phase gradient discontinuity is large, it may be felt as noise during music reproduction.
[0035]
In FIG. 5, 21 is a differential processing unit that outputs the phase gradient of the Lch fundamental component, and 22 is a differential processing unit that outputs the phase gradient of the Rch fundamental component. FIG. 6 shows the differential outputs as Lch and Rch. The Lch and Rch loop start points and loop end points are matched.
23 is a cross-fade synthesizing unit that gradually approaches the phase gradient of the Lch fundamental component from the phase gradient of the Rch fundamental component. From the loop start point to the loop end point, the phase of the Lch fundamental component It has a function to make it completely coincide with the inclination of.
[0036]
For harmonic components other than the fundamental tone component, smoothing processing is performed so that the phase is continuously connected from the loop end point to the loop start point.
[0037]
FIG. 7 is a schematic diagram for explaining the operation of synthesizing the phases of the loop waveforms in the above-described fourth embodiment of the present invention. However, FIG. 7 is not drawn so as to accurately match the phase inclination shown in FIG.
FIG. 7 shows the phases of the fundamental sound components of Lch and Rch and the trajectory of the phase of the fundamental sound component of Rch synthesized by cross-fading. The phase of the fundamental component of the Rch synthesized by the crossfade gradually approaches the phase of the fundamental component of the Lch from the crossfade start point. From the loop start point to the loop end point, the phase of the fundamental component of the Lch And the phase trajectory of the fundamental component of Rch are parallel with a constant phase difference. That is, between the loop start point and the loop end point, the phase difference of the Lch fundamental component and the phase difference of the Rch fundamental component are equal.
[0038]
Since the phase of the fundamental component of Lch is continuous from the loop end point to the loop start point, the phase of the fundamental component of Rch is also continuous. As a result, an appropriate loop can be cut out for both channels at the loop start point and loop end point determined for one channel.
By performing the cross-fading process in this way, the Rch phase gradient when entering the loop loop start point from the front of the loop portion can be made continuous.
[0039]
However, when the cross-fading process is performed, in FIG. 7, the phase of the synthesized fundamental component of the Rch is slightly shifted from the phase of the fundamental component of the Rch before synthesis at the loop start point.
At this time, the phase of the synthesized fundamental component of the Rch matches the
[0040]
FIG. 8 is a schematic diagram for explaining the operation of synthesizing the phases of the loop waveforms in the fifth embodiment of the present invention.
In this embodiment, according to the fourth embodiment described above, the crossfade synthesis is calculated, the value of Δ is calculated in advance, and the STF component of the original Rch is delayed by this Δ. Thus, cross-fade processing and phase gradient fitting processing in the loop portion are performed.
In FIG. 7, since Δ <0, the position of the cross-fade start point is returned to the waveform start end side by Δ from the original Rch black circle position to the white circle position shown in the figure. FIG. 6 also shows the positions of black circles and white circles.
Even with the above-described processing, there is no guarantee that the phase of the fundamental component of the original Rch and the phase of the synthesized fundamental component of the Rch completely match at the loop start point. However, they can be matched better than the case shown in FIG.
[0041]
In each of the above-described embodiments, the phase difference between the start phases at the time of loop start of the fundamental components of Lch and Rch is not considered. However, if the channel start point of each channel is determined so that the start phase of the Rch fundamental component at the loop start point matches the start phase of the Lch fundamental component at the loop start point, the synthesized musical sound is produced. This is suitable for musical tone control when the sound is played.
In each of the above-described embodiments, the loop start point of the fundamental sound component of the Lch is input to determine the loop end point. Conversely, the loop end point may be input to determine the loop start point. In the first to third embodiments described above, the loop start point of the Rch fundamental component is input, but a loop end point may be input conversely.
[0042]
In the above description, the loop length of the reference Lch is determined such that the phase of the fundamental component obtained by frequency analysis of the original waveform data changes continuously from the loop end point to the loop start. However, the loop end point can be determined by searching for a loop end point that does not cause phase discontinuity, including not only the fundamental component but also multiple desired harmonic components, fluctuations in the residual waveform, and the fundamental component. The loop end point may be determined in consideration of the amplitude fluctuation period.
Also, without analyzing the frequency of the reference Lch waveform data, the loop start point where there is a loop end point that can be connected to the loop end point without any noise in terms of only the waveform amplitude is searched, and as a result The reference Lch loop length may be determined.
[0043]
In the above description, the waveform of the Rch loop portion is created by synthesizing the waveform based on the frequency component obtained by frequency analysis of the waveform data. However, for the waveform data obtained by cutting out the Rch waveform data as it is so as to be equal to the Lch loop length, the fundamental component is only shown in the above-described embodiments for improving the loop connection. Waveform processing may be performed.
In the above description, the processing of the waveform data of the Lch and Rch stereo music signals related to each other has been described. However, even when the number of channels exceeds two, waveform data can be processed in the same manner based on one waveform. Moreover, it is applicable not only to a musical sound signal but also to a general waveform such as a human voice signal or an acoustic signal.
[0044]
【The invention's effect】
As is apparent from the above description, the present invention has an effect that it is possible to synthesize waveform data of a loop portion from a plurality of related waveform data without impairing the phase relationship between waveforms. .
When applied to stereo musical sound waveform data, the phase change of the fundamental tone of the loop portion matches between Lch and Rch, so that a stable sound image with a sense of localization can be obtained, and the difference between Lch and Rch is related to the phase of the overtone component. Rich stereo feeling remains because it is preserved.
[Brief description of the drawings]
FIG. 1 is a functional block configuration diagram of a first embodiment of a waveform data processing apparatus of the present invention.
FIG. 2 is an explanatory diagram of an operation of extracting a loop waveform and a smoothing process in the first embodiment of the invention.
FIG. 3 is an explanatory diagram of an operation of extracting a loop waveform and a smoothing process in the second embodiment of the present invention.
FIG. 4 is an explanatory diagram of an operation of extracting a loop waveform in the third embodiment of the present invention.
FIG. 5 is a partial view of a functional block configuration according to fourth and fifth embodiments of the present invention.
6 is a schematic diagram showing a temporal change in a phase differential value of a fundamental component in the functional block configuration shown in FIG.
FIG. 7 is a schematic diagram illustrating an operation of synthesizing phases of a loop waveform in the fourth embodiment of the present invention.
FIG. 8 is a schematic diagram for explaining an operation of synthesizing phases of a loop waveform in the fifth embodiment of the present invention.
FIG. 9 is a hardware configuration diagram illustrating an example of a conventional waveform data processing apparatus.
FIG. 10 is a flowchart showing an outline of processing performed until a performance is executed in a conventional waveform data processing apparatus.
FIG. 11 is a diagram showing a phase trajectory of a fundamental component for explaining conventional loop point determination processing and smoothing processing;
[Explanation of symbols]
DESCRIPTION OF
Claims (5)
前記原波形データに関連した、基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、
前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、
前記原波形データの周波数成分のうち、少なくとも基音成分の位相が、前記ループ部の終了位置から開始位置へ連続的に変化するように、前記原波形データの前記少なくとも基音成分の、前記ループ部内における位相を調整するループ内位相調整ステップ、
を有することを特徴とする波形データ処理方法。A waveform data processing method for creating a waveform of a loop portion that is repeatedly reproduced during waveform reproduction based on original waveform data,
A loop length setting step for setting a loop length of a reference loop portion that is created based on the original waveform data that is related to the original waveform data and is repeatedly reproduced during waveform reproduction;
A loop position determining step for determining the position of the loop portion so that the loop length of the loop portion is equal to the loop length of the reference loop portion with respect to the original waveform data;
Among the frequency components of the original waveform data, at least the fundamental component of the original waveform data in the loop portion so that at least the phase of the fundamental component continuously changes from the end position of the loop portion to the start position. In-loop phase adjustment step to adjust the phase,
A waveform data processing method characterized by comprising:
前記原波形データに関連した基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、
前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、
前記原波形データの基音成分の、前記ループ部内における位相に対し、前記基準となる原波形データの前記基音成分の、前記基準となるループ部内における位相の傾きと同じ位相の傾きを与えるループ内位相調整ステップ、
を有することを特徴とする波形データ処理方法。A waveform data processing method for creating a waveform of a loop portion that is repeatedly reproduced during waveform reproduction based on original waveform data,
A loop length setting step for setting a loop length of a reference loop portion that is created based on the original waveform data that is a reference related to the original waveform data and that is repeatedly reproduced during waveform reproduction;
A loop position determining step for determining the position of the loop portion so that the loop length of the loop portion is equal to the loop length of the reference loop portion with respect to the original waveform data;
A phase in the loop that gives the same slope of the phase of the fundamental component of the reference original waveform data as the slope of the phase in the reference loop part of the fundamental waveform component of the original waveform data to the phase in the loop part Adjustment steps,
A waveform data processing method characterized by comprising:
さらに、前記原波形データの基音成分の位相を、前記ループ部より以前の位置から前記ループ部の開始位置まで、前記原波形データの基音成分の位相の傾きから前記基準となる原波形データの基音成分の位相の傾きに徐々に変化させるループ前位相調整ステップ、
を有することを特徴とする請求項2に記載の波形データ処理方法。In the loop position determination step, the loop position of the loop portion is matched with the loop position of the reference loop portion,
Further, the phase of the fundamental waveform component of the original waveform data is shifted from the position before the loop section to the start position of the loop section from the slope of the phase of the fundamental waveform component of the original waveform data. Pre-loop phase adjustment step that gradually changes to the phase gradient of the component,
The waveform data processing method according to claim 2, wherein:
ことを特徴とする請求項3に記載の波形データ処理方法。In the pre-loop phase adjustment step, the phase of the fundamental component of the original waveform data at the start position of the loop portion is substantially maintained at the phase before the phase of the fundamental component of the original waveform data is changed. After shifting the original waveform data with respect to the reference original waveform data, the phase of the fundamental component of the original waveform data is changed, and the position of the loop portion of the original waveform data is shifted,
The waveform data processing method according to claim 3.
を有することを特徴とする請求項1ないし4のいずれか1項に記載の波形データ処理方法。Among the frequency components of the reference waveform data, at least the fundamental component phase becomes the reference of the reference original waveform data so that the phase of the reference loop portion continuously changes from the end position of the reference loop portion to the start position. A reference loop position determining step for determining the position of the loop portion;
5. The waveform data processing method according to claim 1, wherein the waveform data processing method is provided.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000309120A JP3636056B2 (en) | 2000-10-10 | 2000-10-10 | Waveform data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000309120A JP3636056B2 (en) | 2000-10-10 | 2000-10-10 | Waveform data processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002116763A JP2002116763A (en) | 2002-04-19 |
JP3636056B2 true JP3636056B2 (en) | 2005-04-06 |
Family
ID=18789334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000309120A Expired - Fee Related JP3636056B2 (en) | 2000-10-10 | 2000-10-10 | Waveform data processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3636056B2 (en) |
-
2000
- 2000-10-10 JP JP2000309120A patent/JP3636056B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002116763A (en) | 2002-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3399297B2 (en) | Electronic musical instrument | |
JP2001092453A (en) | Re-mixing device and storage medium | |
KR20010039504A (en) | A period forcing filter for preprocessing sound samples for usage in a wavetable synthesizer | |
JP2001188544A (en) | Audio waveform reproducing device | |
US7102068B2 (en) | Waveform data analysis method and apparatus suitable for waveform expansion/compression control | |
JP2017049349A (en) | Musical sound signal generation device | |
JP3482685B2 (en) | Sound generator for electronic musical instruments | |
JP3601373B2 (en) | Waveform editing method | |
JP3659053B2 (en) | Waveform data generation method, recording medium recording waveform data generation program, and waveform data generation apparatus | |
JP3636056B2 (en) | Waveform data processing method | |
US6300552B1 (en) | Waveform data time expanding and compressing device | |
JP3428401B2 (en) | Waveform data processing method | |
JP3731476B2 (en) | Waveform data analysis method, waveform data analysis apparatus, and recording medium | |
JP3752855B2 (en) | Waveform data creation method | |
JP3714397B2 (en) | Waveform data processing apparatus and waveform data processing method | |
JP4236570B2 (en) | Waveform playback device and waveform playback program | |
JP3404850B2 (en) | Sound source device | |
JP4043126B2 (en) | Control data generation device for waveform reproduction device | |
JP3428230B2 (en) | Method and apparatus for forming repetitive waveform of electronic musical instrument | |
JP5316091B2 (en) | Waveform memory sound source | |
JP3095018B2 (en) | Music generator | |
JP3977654B2 (en) | Waveform generator | |
JP2890530B2 (en) | Audio speed converter | |
JP3788096B2 (en) | Waveform compression method and waveform generation method | |
JP2001075571A (en) | Waveform generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041201 |
|
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: 20041214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3636056 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090114 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100114 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110114 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120114 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130114 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |