JP3636056B2 - 波形データ処理方法 - Google Patents
波形データ処理方法 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
- 238000003672 processing method Methods 0.000 title claims description 16
- 238000010586 diagram Methods 0.000 description 23
- 238000004458 analytical method Methods 0.000 description 21
- 238000000034 method Methods 0.000 description 18
- 238000009499 grossing Methods 0.000 description 15
- 230000015572 biosynthetic process Effects 0.000 description 12
- 238000003786 synthesis reaction Methods 0.000 description 12
- 230000002194 synthesizing effect Effects 0.000 description 9
- 238000013500 data storage Methods 0.000 description 6
- 238000005562 fading Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004807 localization Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、互いに関連した複数の波形データの、波形再生時に繰り返し再生されるループ部の波形を作成するための波形データ処理方法に関するものである。
【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の加工済波形データ記憶部
Claims (5)
- 原波形データに基づいて、波形再生時に繰り返し再生されるループ部の波形を作成するための波形データ処理方法であって、
前記原波形データに関連した、基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、
前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、
前記原波形データの周波数成分のうち、少なくとも基音成分の位相が、前記ループ部の終了位置から開始位置へ連続的に変化するように、前記原波形データの前記少なくとも基音成分の、前記ループ部内における位相を調整するループ内位相調整ステップ、
を有することを特徴とする波形データ処理方法。 - 原波形データに基づいて、波形再生時に繰り返し再生されるループ部の波形を作成するための波形データ処理方法であって、
前記原波形データに関連した基準となる原波形データに基づいて作成された、波形再生時に繰り返し再生される基準となるループ部のループ長を設定するループ長設定ステップと、
前記原波形データに対し、前記ループ部のループ長が、前記基準となるループ部のループ長に等しくなるように、前記ループ部の位置を決定するループ位置決定ステップと、
前記原波形データの基音成分の、前記ループ部内における位相に対し、前記基準となる原波形データの前記基音成分の、前記基準となるループ部内における位相の傾きと同じ位相の傾きを与えるループ内位相調整ステップ、
を有することを特徴とする波形データ処理方法。 - 前記ループ位置決定ステップは、前記ループ部のループ位置を前記基準となるループ部のループ位置に一致させるものであり、
さらに、前記原波形データの基音成分の位相を、前記ループ部より以前の位置から前記ループ部の開始位置まで、前記原波形データの基音成分の位相の傾きから前記基準となる原波形データの基音成分の位相の傾きに徐々に変化させるループ前位相調整ステップ、
を有することを特徴とする請求項2に記載の波形データ処理方法。 - 前記ループ前位相調整ステップは、前記原波形データの基音成分の、前記ループ部の開始位置における位相が、前記原波形データの基音成分の位相を変化させる前の位相にほぼ保たれるように、前記原波形データを前記基準となる原波形データに対してずらせた上で、前記原波形データの基音成分の位相を変化させるとともに、前記原波形データのループ部の位置をずらせる、
ことを特徴とする請求項3に記載の波形データ処理方法。 - 前記基準となる波形データの周波数成分のうち少なくとも基音成分の位相が、前記基準となるループ部の終了位置から開始位置へ連続的に変化するように前記基準となる原波形データの前記基準となるループ部の位置を決定する基準ループ位置決定ステップ、
を有することを特徴とする請求項1ないし4のいずれか1項に記載の波形データ処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000309120A JP3636056B2 (ja) | 2000-10-10 | 2000-10-10 | 波形データ処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000309120A JP3636056B2 (ja) | 2000-10-10 | 2000-10-10 | 波形データ処理方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002116763A JP2002116763A (ja) | 2002-04-19 |
| JP3636056B2 true JP3636056B2 (ja) | 2005-04-06 |
Family
ID=18789334
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000309120A Expired - Fee Related JP3636056B2 (ja) | 2000-10-10 | 2000-10-10 | 波形データ処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3636056B2 (ja) |
-
2000
- 2000-10-10 JP JP2000309120A patent/JP3636056B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002116763A (ja) | 2002-04-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3399297B2 (ja) | 電子楽器 | |
| KR20010039504A (ko) | 웨이브테이블 합성기내에 이용되는 음 샘플 사전 처리용 주기 촉성 필터 | |
| JP2001092453A (ja) | リミックス装置および記憶媒体 | |
| US7102068B2 (en) | Waveform data analysis method and apparatus suitable for waveform expansion/compression control | |
| JP2001188544A (ja) | オーディオ波形再生装置 | |
| JP2017049349A (ja) | 楽音信号発生装置 | |
| JP3482685B2 (ja) | 電子楽器の音源装置 | |
| JP3601373B2 (ja) | 波形編集方法 | |
| JP3659053B2 (ja) | 波形データ生成方法、波形データ生成プログラムを記録した記録媒体および波形データ生成装置 | |
| JP3636056B2 (ja) | 波形データ処理方法 | |
| JP3731476B2 (ja) | 波形データ解析方法、波形データ解析装置および記録媒体 | |
| JP3428401B2 (ja) | 波形データ処理方法 | |
| JP3752855B2 (ja) | 波形データ作成方法 | |
| JP3714397B2 (ja) | 波形データ処理装置及び波形データ処理方法 | |
| JP4236570B2 (ja) | 波形再生装置および波形再生プログラム | |
| JP3404850B2 (ja) | 音源装置 | |
| JP4043126B2 (ja) | 波形再生装置の制御データ生成装置 | |
| JP3428230B2 (ja) | 電子楽器の繰返し波形の形成法及び繰返し波形形成装置 | |
| JP5353305B2 (ja) | 波形データの形成方法 | |
| JP3095018B2 (ja) | 楽音発生装置 | |
| JP5316091B2 (ja) | 波形メモリ音源 | |
| JP5359203B2 (ja) | 楽曲処理装置およびプログラム | |
| JP4345010B2 (ja) | ピッチ変更量決定方法、ピッチ変更量決定装置およびプログラム | |
| JP3977654B2 (ja) | 波形生成装置 | |
| JP2890530B2 (ja) | 音声速度変換装置 |
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 |