JP2003263170A - 楽音波形分析方法及び楽音波形分析合成方法 - Google Patents
楽音波形分析方法及び楽音波形分析合成方法Info
- Publication number
- JP2003263170A JP2003263170A JP2003043802A JP2003043802A JP2003263170A JP 2003263170 A JP2003263170 A JP 2003263170A JP 2003043802 A JP2003043802 A JP 2003043802A JP 2003043802 A JP2003043802 A JP 2003043802A JP 2003263170 A JP2003263170 A JP 2003263170A
- Authority
- JP
- Japan
- Prior art keywords
- waveform
- analysis
- musical tone
- peak
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
に、その振幅が最大値をとる点を特定ポイントし、該特
定ポイントから時間軸の正方向に時間窓を順次シフトさ
せながら、短時間フーリエ変換によりスペクトル解析を
行う。次に、前記特定ポイントから今度は時間軸の負方
向に時間窓を順次シフトさせながらスペクトル解析を行
う。各フレームで検出されたピークの軌跡を双方向に判
定することにより軌跡の追従を行う。また、倍音グルー
プ毎に異なる分析条件で前記スペクトル解析を行う。
Description
及び楽音波形分析合成方法に関する。
を分析し、該分析することにより得られたもとの楽音波
形に含まれている周波数成分の信号を発生させてこれら
を加算することにより、楽音波形を合成する分析・
(再)合成(Analysis & (Re)Synthesis)方式が知られ
ている。この楽音波形分析合成方式においては、まず、
楽音波形をスペクトル解析してその楽音に含まれている
基音周波数およびその倍音周波数に対応する線スペクト
ル成分を抽出する。通常、このスペクトル解析は、時間
窓(ウインドウ)を用いたフーリエ変換による短時間ス
ペクトル解析を用いて行われている。すなわち、分析対
象となる楽音をサンプリングし、該楽音波形サンプルに
窓関数を掛けてFFT(高速フーリエ変換:Fast Fouri
er Transform)を行い、該フーリエ変換出力の振幅デー
タからピークを成す全ての周波数位置を検出する。以上
の処理を、前記時間窓を移動しながら行い(短時間フー
リエ変換(SFFT:Short-time Fast Fourier Transf
orm))、各フレームにおけるピークを検出し、得られ
たピークのうち、軌跡を成すものを追跡する。そして、
得られた軌跡の中から所望のデータを選択し、その一つ
ひとつを正弦波合成し、加算することによりもとの楽音
波形のうち決定論的に得られる波形を合成する。そし
て、前記もとの楽音波形から前記決定論的に得られる波
形(Deterministic Wave)を減算することにより残差波
形(Residual Wave)を得る。
のデータをモディファイすることによりモディファイす
ることができ、前記残差波形はEQ(イコライザ)やF
FT他の信号処理によりモディファイすることができ
る。このようにしてモディファイされた決定論的に得ら
れる波形と前記残差波形とを加算することにより、所望
の楽音波形を得ることができる。なお、上記楽音波形の
分析は、上述したような楽音波形の合成のためだけでは
なく、楽器音の特徴と楽器の物理的性質との関連を明ら
かにするため、あるいは、楽器音の機械認識などのため
にも用いられている。
れた前記ピークデータの一例を示す図である。この図に
示す例は、ピアノの中央ハ(C4,基音周波数は約26
1.63Hz)を分析したものであり、横軸は時間(単
位はms)、縦軸は周波数(単位はHz)であり、前記
時間窓に対応する各フレーム毎に検出されたピークデー
タが点で表されている。また、横方向の細線は、前記基
音周波数およびその倍音の周波数を表している。この図
において、全ての点は独立に存在しており、図において
軌跡を描いている線を見てとることができるが、これが
つながっているとの情報はまだ得られていない。また、
線として見える部分以外はノイズであったり、非調和な
成分であったり、あるいは、FFTの窓関数のサイドロ
ーブが表示されているものとみなされる。このようなピ
ークデータから軌跡を成すデータを抽出するためには、
各フレームタイムにおける各ピーク点がどのように接続
しているかを判定することが必要である。このために、
一般に、各フレームで倍音関係にある成分をピッキング
することが行われている。すなわち、既知の基音周波数
FBに対して、その整数倍、2×FB,3×FB,…の
周波数近辺で最大の振幅を持つ点を倍音であると判断
し、各フレーム毎に倍音データをピックアップしていく
方法がとられている。
における基音の20msecあたりを拡大した図であ
る。この図において、時間軸を右から左へ見ると、時刻
Aにおいてピークは矢印の方向へつながるとするのが正
解であろう。しかしながら、上述した従来の方法では、
各フレーム各々で倍音周波数に最も近いものを選択する
という条件で追従が行われているため、時間Aでaのピ
ークにつながるのか、それともbのピークへつながるの
かが確定しないという問題点がある。
03Hz)の楽音ピークを上述した従来の方法で検出し
た結果を示す図である。このデータは、時間窓の幅(ウ
インドウサイズ)をC1の基本周期30.5msの8
倍、244.6msとし、ウインドウの移動時間(ウイ
ンドウホップサイズ)を基本周期の1/8(3.82m
s)として得たものである。また、図23は、前記図1
2の高調波部分におけるのピークを拡大した図である。
なお、これらの図において、横軸は時間、縦軸は周波
数、横方向の細線は基音周波数およびその倍音を示して
いる。図23をみると、高次の倍音の軌跡が倍音周波数
からかなり外れていることが判る。これは、例えば、8
倍音(261.62Hz)の成分では、前述のウインド
ウ内に64周期入ってしまうためであると考えられる。
短時間高速フーリエ変換(SFFT)の不確定性とし
て、周波数を正確に得ようとするにはある程度以上のウ
インドウサイズが必要である。32.703Hz付近を
正確に検出するためには上述程度以上のウインドウサイ
ズが必要である。しかしウインドウが広いと時間分解能
が悪くなってしまうという問題点がある。一般に、SF
FTの性質として一つのウインドウ内では周波数、振幅
が変化してもその情報を得ることができない。高調波成
分の方が変化が速いとするならば、8倍音は64周期内
に周波数、振幅の揺らぎが生じていると考えられる。こ
の状況はさらに高調波であればあるほど顕著となる。
に、被解析信号をBPFをかけることにより帯域分割
し、分割された帯域毎にウインドウサイズ、ウインドウ
のホップサイズを決めてSFFTする方法が行なわれて
いる。この方法は、図24に示す楽音分析合成装置のよ
うに、ローパスフィルタ(LPF)101、複数のバン
ドパスフィルタ(BPF)102およびハイパスフィル
タ(HPF)103を用いて被解析信号を複数の周波数
帯域に分割し、乗算器104を用いて帯域分割された各
周波数帯の信号にそれぞれ対応する時間窓を掛け、それ
ぞれ対応して設けられたSFFT部105により各々の
帯域のスペクトル解析を実行し、各解析結果についてそ
れぞれ別個に設けられたピーク検出及びピーク追従処理
部106で前記ピークの軌跡の追従を行い、正弦波合成
部107において、前記それぞれの帯域において検出さ
れた軌跡に対応する正弦波を生成し、それらを合成して
前述した決定論的波形(Deterministic Wave)を出力す
るものである。
数のBPF102およびHPF103の位相特性を均一
に設計することが困難であり、このようにして解析した
結果得られた各倍音の軌跡から正弦波合成によりDeterm
inistic Waveを合成したとしても、被解析信号との間に
位相のずれが生じてしまい、被解析信号からDeterminis
tic Waveを減算するという方法ではResidual Waveは得
られないという問題点があった。
数が低く、高次倍音が豊富に含まれているような波形に
おいて、これを分離しようとする際、SFFTの不確定
性により、基本周波数の周波数精度を上げようとしてウ
インドウサイズを大きくすると、高調波の変化に追従す
ることができなくなる。また、高調波の変化に追従しよ
うとしてウインドウサイズを小さくすると、基本周波数
の周波数精度が低くなってしまい、DeterministicとRes
idualの分離精度が悪くなるという問題点がある。
クの追従を正確に行うことのできる高精度の楽音分析方
法および装置を提供することを目的としている。また、
基本周波数が低く、高次倍音が豊富に含まれているよう
な波形であっても、高精度に分離することのできる楽音
波形分離方法および装置を提供することを目的としてい
る。
に、本発明の楽音波形分析方法は、分析対象楽音波形サ
ンプルに対し順次シフトする時間窓を用いてフーリエ変
換を行うことにより前記時間窓の位置に対応する各フレ
ームにおけるピーク点を検出してスペクトル解析を行う
楽音波形分析方法において、当該分析対象楽音の複数の
倍音のグループ毎にそれぞれ対応して設定された分析条
件を用いて前記スペクトル解析を行うようにしたもので
ある。
楽音波形から線スペクトル成分を抽出し、該抽出した線
スペクトル成分に対応する正弦波信号波形を生成して合
成し、前記楽音波形から前記合成した信号波形を減算し
た残差成分と前記合成した信号波形とを加算することに
より楽音を合成する楽音波形分析合成方法であって、前
記楽音波形を分析するとき、当該楽音波形の複数の倍音
のグループ毎にそれぞれ対応して設定された分析条件を
用いて前記楽音波形の分析を行い、該分析結果に基づい
て前記線スペクトル成分を抽出するようにしたものであ
る。さらに、前記倍音のグループに対応する前記残差成
分を抽出し、該残差成分を順次さらに異なるグループ対
応に分析するようにしたものである。
実行される楽音分析合成装置のハードウエア構成の一例
を示すブロック図である。この図において、1はこの楽
音分析合成装置全体の制御を行うCPU、2はCPU1
が実行する各種制御プログラム、楽音分析プログラムお
よび楽音合成プログラムなどの各種プログラムを記憶す
るプログラムメモリ、3は各種制御情報、後述する各種
のデータの記憶および一時記憶領域(バッファ)やワー
クエリアとして使用されるデータメモリ、4は表示装
置、5はキーボードおよびポインティングデバイスなど
の入力装置、6は鍵盤などの演奏操作子、7は楽音を合
成する楽音合成部(シンセサイズユニット)、8は楽音
波形サンプルをアナログ信号に変換し、図示しないサウ
ンドシステムに出力するデジタルアナログ変換器(DA
C)である。また、9は電話回線、インターネット、L
ANなどの通信ネットワーク11と接続するためのネッ
トワークインターフェース回路、10はシステムバスで
ある。なお、この図1に示したハードウエア構成におい
ては、楽音合成部7および演奏操作子6が設けられてい
るが、これらは必ずしも設けることが必要ではない。ま
た、図示していないが、CD−ROM、DVD、MO、
FDなどの外部記憶媒体の駆動装置を接続してもよいこ
とは当然である。
を示す図であり、図2の(a)は、前述した各軌跡に対
応する周波数成分の波形を発生する複数個の正弦波波形
発生部を有する場合の一構成例を示す図である。図2の
(a)において、71および73は前記システムバス1
0を介して前記CPU1に接続するためのインターフェ
ース回路、72は正弦波波形演算部であり、図示するよ
うに複数の正弦波波形発生器SWG1〜SWGnが設け
られている。この複数の正弦波波形発生器SWG1〜S
WGnは、前記楽音波形を分析して検出された各ピーク
点の軌跡の各々に対応した正弦波波形を生成するもので
ある。また、74は残差波形演算部であり、前述した残
差波形(Residual Wave)を生成する。さらに、75は
ミキサであり、前記正弦波波形演算部72の出力と前記
残差波形演算部74の出力とを合成して、合成楽音を前
記DAC8に出力する。
成例を示す図である。この図において、76は前記CP
U1とのインターフェース回路、77は波形メモリ、7
8は前記波形メモリ77から波形データの読出を制御す
る位相発生部、79は前記読み出された波形サンプルに
対して所望の加工を行う波形加工部である。この例にお
いては、前記楽音波形サンプルを分析して得られたピー
ク点の各軌跡に対応する正弦波波形の合成波形および前
記残差波形の合成波形が前記CPU1によりソフトウエ
アにより演算生成され、前記波形メモリ77に格納され
るようになされている。そして、当該楽音発生制御信号
に応じて、前記位相発生部78により前記波形メモリ7
7から当該合成楽音信号波形が読み出され、波形加工部
79を介して、前記DAC8に出力されることなる。
分析処理について説明する。図3は、前記図20と同じ
ピアノのC4打鍵音の時間波形の一例を示す図である。
この波形を使ってピーク追従する場合を例にとって説明
する。図4は、波形分析処理を説明するためのフローチ
ャートである。なお、波形分析処理を実行するときに
は、分析対象波形の先頭からフレームを少しずつずらし
て、ピークを見つけ、すべてのピークを見つけてからピ
ークを追従することも当然可能であるが、すべてのフレ
ームの全てのピークデータを貯えておくためには、膨大
な記憶容量を必要とする場合がある。そこで、本発明に
おいては、分析フレーム毎に追従をチェックし、追従可
能なピークのみを記憶するようにしている。
ず、ステップS1において、分析対象波形のサンプリン
グ処理が実行され、分析の対象となる楽器音のサンプリ
ングデータが前記データメモリ3に格納される。すなわ
ち、例えば、44.1kHzのサンプリング周波数で分
析対象楽音波形がサンプリングされ、前記図3に示した
ような分析対象波形がデータメモリ3に格納される。次
に、ステップS2に進み、分析条件が入力されるととも
に分析の前処理が行われる。すなわち、前記ステップS
1において格納された分析対象データの振幅調整、イコ
ライズ処理、フィルタリング処理などが行われ、同時に
分析範囲の設定も行われる。
象データのエンベロープが最大となる時点(以下、アタ
ックマックスポイント(Attack Max Point)という)の
検出が行われる。これは、振幅レベルが最大となるアタ
ックマックスポイントでは、すべての追従が必要なピー
クが出揃っている可能性が大きいので、この時間波形の
振幅レベルが最大振幅を示す時間が窓サイズの中央位置
にくるようにして分析を開始するようにしているためで
ある。図3の例では、アタックマックスポイントはサン
プリング開始時点から42.9ms後に見つけられる。
この実施の形態では、サンプリング周波数が44.1k
Hzであるので、42.9msは1892点目と求めら
れる。これにより、追従が必要なピークをもらすことな
く検出することが可能となる。
設定などが行われる。一般に、FFTの窓サイズは波形
の基本周期の整数倍とするのが適切であり、例えば、8
倍とされる。前記図3に示したC4打鍵音は基音周波数
が261.63Hzであり、その1周期に含まれるサン
プルポイント数は、サンプリング周波数fsを44.1
kHzとしたとき、168.6点となる。したがって、
窓サイズは、この8倍、1348点(小数以下四捨五
入)となる。また、FFTサイズは、2のベキ数でなけ
ればならず、前述のように、このFFTサイズが大きけ
れば大きいほど周波数分解能は向上する。しかし、あま
り大きすぎても計算時間がかかってしまうので、ここで
は、窓サイズを超える最少の2のベキ数を選ぶこととす
る。したがって、この例では、2048点と決定され
る。
置を計数するフラグnを0に初期化する。そして、ステ
ップS6に進み、分析窓位置の設定を行う。前述のよう
に、アタックマックスポイントは1892点目であり、
窓サイズが1348点であるため、最初のフレームは1
218点目から2566点目となる。これを第0フレー
ムとする。続いて、ステップS7に進み、分析対象波形
の分析範囲が分析対象波形の分析範囲の最大値framemax
を超過したか否かを判定する。この判定結果がNOのと
きは、次のステップS8に進みFFT処理が実行され
る。また、この判定結果がYESのときは、ステップS
15に進む。
れ、ステップS9において、このFFT処理の結果から
ピークが求められる。このピークを求めた結果の例を図
5に示す。この第0フレームのそれぞれのピークをPK0-
1,PK0-2,…,PK0-M0と表すこととする。ここで、それ
ぞれのピークは、周波数(Frequency)、振幅(Magnitud
e)、位相(Phase)の3つの情報を有している。これをPK0
-1.Frequency,PK0-1.Magnitude,PK0-1.Phase,…と表
すこととする。なお、M0はフレーム0で検出されたピ
ークの総数である。これらのピークはリファレンス(Fr
ame n)として、前記データメモリ3中のバッファに格
納される。
番号nが0であるか否かが判定される。処理開始直後に
おいてはn=0であるため、ステップS10の判定結果
がYESとなり、前記ステップS11が実行される。こ
のステップS11において、前記バッファに格納された
Frame 0のデータは、前記データメモリ3に確保された
分析結果を格納するテーブル領域中の対応する個所TFra
me 0に格納される。また、nが0でないときは、ステッ
プS12においてピーク追従処理が実行され、続いてス
テップS13において、前記分析結果を格納するテーブ
ルに追従結果が格納される。この追従処理の詳細につい
ては後述する。
る情報を格納するテーブルのイメージを示す図である。
この図に示すテーブルにおいて、行は線スペクトル成
分、列は解析された全フレームであり、各セルには各フ
レームにおいて検出されたピークの番号を示している。
なお、ここでは、周波数の低い方から順に各ピーク点に
番号を付している。前記ステップS11により、このテ
ーブルのFrame 0の列に、前記ステップS9で得られた
各ピーク点の情報が書き込まれる。
波数、振幅および位相の3つの要素が含まれており、実
際には、この図6に示した線スペクトル成分数×総フレ
ーム数のデータが3枚分作成されることとなる。前述し
た楽音合成時には、このテーブルを読み出して、各行に
対応して正弦波波形発生器を割り当て、フレーム進行に
伴い、各データ(周波数、振幅および位相)に基づいて
正弦波波形を発生させることとなる。なお、前後のスペ
クトルの発生消滅具合をみて、正弦波波形発生器のチャ
ンネルの割り当てを柔軟に行うようにすれば、楽音合成
時における処理効率を向上させることができ、また、複
音発生の差異の正弦波波形発生器の有効利用を図ること
ができる。例えば、図6に示した例においては、第xフ
レームで第12番目のピークが消滅し、第yおよびy+
1フレームで復活して現れているが、図6に示したよう
に、フレーム前後の割り当て状態を参照して、ピーク成
分の連続性を崩さない限り、空いているチャンネルを使
用するようにしてもよい。
の終了後に、前記フレーム番号nが1だけ増加され(ス
テップS14)、再び、前記ステップS6に処理が戻
る。このステップS6の分析窓位置設定処理において
は、第n+1フレームに対応する分析窓位置が設定され
る。このとき、前記フレームが時間軸に沿って時間軸の
正方向に移動される。この実施の形態においては、移動
するサンプルデータ数を基本周期の1/8、すなわち、
21点としている。したがって、例えば、第1フレーム
については、前述した第0フレームの分析窓位置(12
18点目〜2566点目)を21点だけ時間軸の正方向
にずらした第1239点目〜2587点目が第1フレー
ムの分析窓位置として設定されることとなる。そして、
前記ステップS7、S8、S9が実行され、第1フレー
ムにおけるピークPK1-1,PK1-2,…,PK1-M1(M1は見
つかったピークの総数)が検出される。
の判定結果がNOとなり、ステップS12のピーク追従
処理が実行される。ここでは、前記第0フレームにおい
て検出されたピーク(ピークのリファレンス0とこの第
1フレームにおいて検出されたピークとを後述する方法
によって双方向に比較し、追従結果を得る。この追従結
果として得られたつながっているピークのみをメモリの
前述したテーブルに格納していくと同時に、次のフレー
ムに対するリファレンスとする。図6に示した例におい
ては、第0フレームの11という番号が付されたピーク
に接続されるピークが、第1フレームになかったことが
示されている。以下、このステップS6〜S14の処理
を繰り返し、分析波形の分析範囲の最後までピーク追従
処理を実行する。このように、まず、第0フレームから
フレームを時間軸の正方向に順次ずらしながら、分析範
囲の最後の位置まで、ピーク追従処理が実行される。
前記ステップS7の判定結果がYESとなり、ステップ
S15に進む。このステップS15においては、前記フ
レーム番号nを−1に設定する。以下、前記第0フレー
ムから時間軸の負の方向に沿ってのピーク追従処理が開
始される。すなわち、ステップS16において、分析窓
位置が設定される。このステップS16における分析窓
位置の設定処理は、前記ステップS6における処理とは
異なり、時間を逆順に進めて行われる。すなわち、前述
のように、第0フレーム分析窓位置が21点だけ時間軸
の負の方向にずらされ、第1197点目〜第2545点
目が第−1フレームの分析窓位置と設定される。そし
て、ステップS17において分析範囲を超過したか否か
が判定され、この判定結果がNOのときはステップS1
8において、FFT処理が実行される。そして、前述の
場合と同様にピーク検出処理が実行され(S19)、ピ
ーク追従処理が実行される(S20)。そして、追従結
果が前記テーブルに格納される(S21)。そして、ス
テップS22において、n−1をあらたなnとして、前
記ステップS16以降の処理が繰り返し実行される。そ
して、前記分析範囲を超過した場合に、前記ステップS
17の判定結果がYESとなり、この波形分析処理を終
了する。このとき、前記図6に示したテーブル中に分析
結果が得られていることとなる。
おけるピーク追従処理について説明する。互いに隣り合
った第pフレームと第rフレームについてピーク追従処
理を行うものとする。まず、第pフレームにおいて検出
されたピークPKp-q(PKp-1,PKp-2,…,PKp-Mp)につ
いて、第rフレームのすべてのピークPKr-s(PKr-1,PK
r-2,…,PKr-Mr)とつながる可能性を計算する。この
可能性を示す値をCP(Connection Possibility)と名付
けることとする。CP(p-q,r-s)は、フレームp側から見
た、PKp-qとPKr-sとのつながる可能性を示す数値であ
る。このCPは次の式(1)により、計算することができ
る。 CP(p-q,r-s)=FuncA(|PKp-q.Frequency-PKr-s.Frequency|)*FunkB(|PKp-q.Mag nitude-PKr-s.Magnitude|)*FuncC(PredictionPhase(sign(r-p),PKp-q,PKr-s)-PK r-s.Phase) …(1)。 ここで、FunkAは周波数について近いものを捜す関数
(周波数比較関数)である。図7にこの周波数比較関数
FuncAの一例を示す。この図において、横軸xは当該ピ
ークの周波数、縦軸は確率であり、Fは比較対象となる
ピークの周波数、FBは当該楽音の基音周波数である。
この例に示すように、両者が全く同一の周波数のときに
1となり、全領域についての積分値が1となる関数を用
いればよい。また、FuncBは振幅について近いものを捜
す振幅比較関数である。図8は、この振幅比較関数の一
例を示す図であり、前記周波数比較関数と同様に、全く
振幅の差がないときに1となり、全領域についての積分
値が1となる関数である。楽音の場合、フレームの移動
距離が短いため、この間ではそれ程急峻な変化はないと
仮定している。
る。また、次の式(2)に示すように、PredictionPhas
eは位相予測関数でフレームの移動方向の関数となり、
フレームpの情報から予測されるフレームrでの位相を
計算するものである。 PredictionPhase(sign(r-p),PKp-q,PKr-s)=PKp-q.Phase+sign(r-p)2π*PKp-q .Frequency/SamplingFrequency*HopSize …(2)。 ここで、HopSizeはフレームの移動サンプル点数であ
り、この例では21点となる。HopSize/SamplingFrequ
encyはフレームの移動サンプル時間を示しており、この
例では4.76msである。この式(2)は、pフレー
ムで周波数がPKp-q.Frequencyであったとして、隣のフ
レームまでこれが変わらなかったとした場合、rフレー
ムの位相が何度であるのかを計算するものである。ま
た、sign(r-p)はフレームの移動方向で、正の場合には
位相は進み、負の場合には位相が戻ることを示してい
る。FuncCは位相間の距離が近いとき1となるような関
数であり、例えば、次の式(3)のような形式の比較関
数が用いられる。 FuncC(phase1-phase2)=(1+cos(phase1-phase2))/2 …(3)。
r側のすべてのピークに対するCP(p-q,r-1),CP(p-q,r-
2),…,CP(p-q,r-Mr)を計算し、CP値が最大となるピー
クがp側からr側を見たときに一番つながる可能性のあ
るピークであるということができる。図9は、PKp-1に
ついて計算した例を示す図である。この図9に示した例
においては、CP(p-1,r-1)が最大値となっているので、P
Kp-1はPKr-1と最もつながる可能性があると考えられ
る。なお、このときに前記CPの最小値を予め決定してお
き、例えば、すべてのCP値が0.001以下の場合はつ
ながる可能性のあるピークがないとする方が現実的であ
る。この場合のピークはフレームpで消滅したものと考
えられる。
ークについて最もつながる可能性のあるフレームrでの
ピークが見つかったとする。しかし、図10に示すよう
な場合には、p上での2つのピークがr上での1つのピ
ークにつながってしまう可能性がある。この図10に示
した例では、PKp-3とPKp-4の2つがPKr-3に接続されて
しまう。そこで、本発明においては、今度はr側からp
側を見てもっともつながる可能性のあるピークを捜すよ
うにしている。この場合においても、前記式(1)に示
したCPを用いる。ただし、この場合には、前記Predicti
onPhaseの計算式が異なっている。すなわち、位相予測
関数PredictionPhaseは、時間的に逆方向を予測するも
のとなるため、sign(p-r)が負となり、次の式(4)の
ようになる。 PredictionPhase(sign(p-r),PKr-s,PKp-q)=PKr-s.Phase-2π*PKr-s.Frequenc y/SamplingFrequency*Hopsize …(4)。
(r-s,p-2),…,CP(r-s,p-Mp)の値から最大のものを見
つけて、r側からp側を見たときに一番つながる可能性
のあるピークを捜す。図11はこの結果の一例を示す図
である。図示した例においては、PKr-3はPKp-4とつなが
る可能性が高いという結果が得られる。これにより、PK
p-4とPKr-3がつながっていると判断する。また、PKp-3
についてはフレームpで消滅したと考えることができ
る。このように双方向からのマッチングをとるようにす
ることにより、最適なピークの接続を見い出すことが可
能となる。
を見たときに、PKp-3についてはCP(p-3,r-3)が最大値を
とり、PKp-4についてもCP(p-4,r-3)が最大値をとったと
する。すなわち、PKp-3とPKp-4がともにPKr-3につなが
る可能性があるということである。この場合、r側から
p側を見て再度CP(r-3,p-3)とCP(r-3,p-4)の値を計算す
るようにしてもよいが、これをCP(p-3,r-3)とCP(p-4,r-
3)で代用し、このうち大きい方を選ぶようにしてもよ
い。
フレーム側から第−1フレームとのCP値を計算するとき
には、前記PredictionPhaseは時間的に逆方向を予想す
ることとなるため、前記式(4)で示した位相予測関数
を用いる。また、第−1フレームから第0フレームをみ
るときには、当然、式(2)の位相予測関数を用いるこ
ととなる。
最後まで各フレームでの各ピークの接続が分かったもの
とする。図12は、このようにして判定された結果の一
例を示す図である。この図において、一番最初にリファ
レンスとしたのは、前述のように、第0フレームのピー
クであり、このフレームのピークをすべて追従したこと
になる。もちろん、途中で消滅条件により消えてつなが
らなくなってしまったピークも含まれている。また、図
12に示したピーク軌跡には、必要でないピークまで追
従対象に含まれてしまっている可能性もある。例えば、
aで示したピークの軌跡は、不必要なものであると考え
られる。そこで、得られた結果を必要に応じてクリーニ
ングする。このクリーニングの条件は、1.ハーモニッ
クであること、2.全フレーム数に対してある程度以上
の長さを持つこと、である。この条件のうち、いずれか
一方でもよいし、あるいは、前記1と2のアンド条件で
あってもよい。図13に、このようにしてクリーニング
した結果の一例を示す。
てしまっている場合もある。図14はこのような場合の
例を示す図である。この図において、M番目のピーク軌
跡はN−1フレームで消滅し、N+1フレームで生成さ
れているように見える。しかし、1つの軌跡は1つの正
弦波発振器に対応しており、軌跡が消滅した時点で対応
の正弦波発振器は未使用状態あるいは出力途絶、すなわ
ちN−1フレームとN+1フレーム間で正弦波出力がぷ
っつりと切れてしまうということになってしまい、クリ
ックノイズの発生などの不都合が生じる恐れがある。こ
のような場合は、図15に示すようにNフレームに振幅
0のピークがあるように補って考え、一続きの軌跡と考
えるようにすればよい。あるいは、フレームN−1のピ
ークの情報とフレームN+1のピークの情報を補間し、
フレームのピーク情報を作り出すようにすることもでき
る。前述した図12において、aで示した軌跡は、この
ようにして補間された例である。このような補間はリフ
ァレンスピークを次のように作ることにより実現するこ
とができる。すなわち、PKN-Mは実際には見つけられな
かったのであるから、振幅は0である。しかし、N-1の
ピークのデータから周波数と位相を予想することができ
る。そこで、一旦途切れてしまったピークのリファレン
スとして、周波数と位相の情報のみを持つピークとし
て、その情報を保持しておくようにする。これにより、
フレームNへ接続できなかったピークについて、さもフ
レームNにピークがあったかのようにリファレンスを作
成しN+1の接続を行うようにすることが可能となる。
においては、ウインドウサイズを大きくすると基本周波
数の周波数精度は向上するものの高調波の変化に追従す
ることができなくなり、ウインドウサイズを小さくする
と基本周波数の周波数精度が悪くなってしまうという問
題点があった。このような問題点を解決する本発明の楽
音分析および合成処理について、図16の処理の流れ図
および図17の波形図を参照して説明する。
は、第1の窓関数(Window Function1)と第1のホップ
サイズ(Window Hopsize 1)に基づいて設定される分析
窓(Window 1)と乗算され(ステップS32)、第1の
短時間フーリエ変換(SFFT)が行われる(ステップ
S33)。この第1の短時間フーリエ変換においては、
前述したと同様に、基本周波数から決定されるウインド
ウサイズ及びウインドウポップサイズによる分析が行わ
れる。
1のSFFTの結果から第1のピーク検出及びピーク追
従処理が行われる。この第1のピーク検出及びピーク追
従処理においては、前述したと同様のピーク検出及びピ
ーク追従であるが、ここでは、基本周波数の8倍音以下
の周波数のピークを対象として、処理を行う。このステ
ップS34の出力を第1の軌道情報と呼ぶ。続いて、ス
テップS35に進み、該第1の軌道情報の正弦波合成を
実行し、第1の決定論的波形(DeterministicWave)を
出力する。図17におけるは前記被解析信号の一例
(この例では、ピアノのC1の波形)であり、は前記
第1の決定論的波形を示している。なお、前記正弦波合
成は、前述のように、離散的な正弦波波形サンプルを生
成し、これらを加算することにより行ってもよいし、あ
るいは、複数個の正弦波波形発生器を用いて対応する正
弦波波形を発生させ、それらの出力を合成するようにし
てもよい。
istic Waveの極性を反転して(ステップS36)、前記
被解析信号と加算する(ステップS37)。これによ
り、第1の残余波形(Residual Wave)を得る。図17
のは、この第1の残余波形の一例を示すものであり、
この第1の残余波形は、前記被解析信号と前記8倍音以
下の周波数を有するピークの軌跡から合成された第1の
Deterministic Waveとの差の信号である。次に、この第
1のResidual Waveについて、第2の窓関数(Window Fu
nction 2)と第2のウインドウホップサイズ(Window H
opsize 2)とにより設定される第2の窓関数(Window
2)を乗算し(ステップS39)、第2の短時間フーリ
エ変換処理を実行する(S40)。この第2のSFFT
は、ウインドウサイズとして8倍音の周期の8倍、すな
わち、基本周期と同じサイズを用い、また、ウインドウ
のホップサイズは、8倍音の1/8、すなわち基本周波
数の1/64として、分析を行う。このようなウインド
ウサイズ及びウインドウホップサイズを用いることによ
り、高い周波数成分についても精度のよいピーク検出及
び軌跡の追従が可能となる。そして、この第2のSFF
Tの出力から、8倍音以上の周波数成分について、ピー
ク検出及びピーク追従処理を実行し(S41)、第2の
軌道情報を得る。次に、この第2の軌道情報から前述と
同様に正弦波合成を行い(S42)、第2のDeterminis
tic Waveを得る。この第2のDeterministic Waveは、8
倍音以上の高調波成分についての合成信号である。
tic Waveと前記ステップS35で得られた第1のDeterm
inistic Waveとを合成して(ステップS43)、最終的
な決定論的波形(Deterministic Wave)を得る。図17
のは、この決定論的波形の一例を示している。このス
テップS43における合成においては、前記第1の決定
論的波形Deterministic Waveと前記第2の決定論的波形
との加算が行われるが、前述のように、前記第1の決定
論的波形は基本周期の1/8のウインドウホップサイズ
間隔で得られた第1の軌道情報に基づいており、前記第
2の決定論的波形は基本周期の1/64のウインドウホ
ップサイズ間隔で得られた第2の軌道情報に基づいてい
る。したがって、この2つのデータを加算するために
は、精度の細かい間隔にデータを合わせ込むことが必要
となる。すなわち、前記第1の決定論的波形のデータを
8倍に補間して1/64の精度にあわせることが必要と
なる。
ぞれ振幅、周波数および位相の3つの情報を有してい
る。図18は振幅情報および周波数情報の補間を説明す
るための図であり、この図に示すように、基本周期の1
/8の間隔で得られた第1の決定論的波形データのピー
クP1-1とP1-2との間を例えば直線補間して、P1-1-1,P1
-1-2,…,P1-1-7を得ることにより1/64の精度の振
幅情報あるいは周波数情報とする。なお、補間方法とし
ては直線補間に限らず、合い前後する数点のデータをと
って多項式補間をしてもよい。また、位相情報について
は、基本周期の1/8の間隔で得られた第1の決定論的
波形データのピークP1-1の位相及び周波数のデータと、
ピークP1-2の位相及び周波数のデータを用いて、図19
に示すような位相の回転を記述し、各点P1-1-1,P1-1-
2,…,P1-1-7の位相を読み取るようにすればよい。こ
のようにして、第1のDeterministic Waveと第2のDete
rministic Waveとの時間分解能を揃えてから、データの
加算を行うことができる。
性を反転して(S44)、前記第1のResidual Waveと
加算する(S45)ことにより、図17のに示すよう
な、最終的なResidual Waveを得ることもできる。この
図17のから明らかなように、残余波形は立ち上がり
直後以外においては非常に低レベルなものとなってい
る。なお、上記においては、被解析信号の周波数帯域を
2分割した例を示したが、これに限られることはなく、
3分割、4分割等、それぞれの場合に応じた数に分割
し、上述の例と同様の方法で、実現することが可能であ
る。
について、まず、低次倍音グループについてSFFTを
実行し、当該正弦波合成波形との残差波形について、高
次倍音グループについてのSFFTを実行しているが、
これに限ることはない。例えば、分析対象楽音波形につ
いて、低次倍音グループについてのSFFT処理と高次
倍音グループについてのSFFT処理をそれぞれ実行
し、前記低次倍音グループに関する正弦波合成波形と前
記高次倍音グループに関する正弦波合成波形とを前記分
析対象楽音波形から減算することにより、残差波形を求
めるようにしてもよい。
算はソフトウエア処理で実行するものとして説明した
が、前記楽音合成部7における正弦波合成機能を用いて
波形演算を実行させるようにしてもよい。この場合は、
分析結果を正弦波合成部に与え、合成結果をその出力か
ら受け取るようにすればよい。さらにまた、前述した各
処理の実行部および楽音合成部などは、ハードウエアあ
るいはソフトウエアのいずれによっても実現することが
可能である。さらにまた、上記においては前記図1に示
したような構成を有する楽音分析合成装置において本発
明の楽音分析方法および楽音分析合成方法が実行される
ものとして説明したが、本発明の楽音分析方法及び楽音
分析合成方法は、これに限られることなく、パーソナル
コンピュータ等の汎用コンピュータ、電子楽器、ゲーム
マシン、カラオケ装置、スペクトルアナライザ等の計測
器など各種の装置において実行させることができるもの
である。
方法によれば、各フレームにおけるピークの追従を正確
に行うことができる。また、基本周波数が低く、高次倍
音が豊富に含まれているような波形であっても、精度よ
くスペクトル分析ができるという効果がある。
方法が実行される楽音分析合成装置の一構成例を示すブ
ロック図である。
る。
図である。
トである。
例である。
である。
性の計算結果の一例を示す図である。
を示す図である。
を示す図である。
示す図である。
の一例を示す図である。
るための図である。
ための図である。
ついて説明するための流れ図である。
の一例を示す図である。
明するための図である。
明するための図である。
る。
れる楽音波形の分析結果の一例を示す図である。
れる楽音波形の分析結果の一例を示す図である。
示す図である。
リ、4 表示装置、5入力装置、6 演奏操作子、7
楽音合成部、8 デジタルアナログ変換器、9ネットワ
ークインターフェース、10 システムバス、11 通
信ネットワーク、71、73、76 CPUインターフ
ェース回路、72 正弦波波形演算部、74 残差波形
演算部、75 ミキサ、77 波形メモリ、78 位相
発生部、79 波形加工部、101 ローパスフィル
タ、102 バンドパスフィルタ、103 ハイパスフ
ィルタ、104 乗算部、105 短時間FFT部、1
06 ピーク検出およびピーク追従処理部、107 正
弦波合成部
Claims (3)
- 【請求項1】 分析対象楽音波形サンプルに対し順次シ
フトする時間窓を用いてフーリエ変換を行うことにより
前記時間窓の位置に対応する各フレームにおけるピーク
点を検出してスペクトル解析を行う楽音波形分析方法に
おいて、 当該分析対象楽音の複数の倍音のグループ毎にそれぞれ
対応して設定された分析条件を用いて前記スペクトル解
析を行うようにしたことを特徴とする楽音波形分析方
法。 - 【請求項2】 楽音波形から線スペクトル成分を抽出
し、該抽出した線スペクトル成分に対応する正弦波信号
波形を生成して合成し、前記楽音波形から前記合成した
信号波形を減算した残差成分と前記合成した信号波形と
を加算することにより楽音を合成する楽音波形分析合成
方法であって、 前記楽音波形を分析するとき、当該楽音波形の複数の倍
音のグループ毎にそれぞれ対応して設定された分析条件
を用いて前記楽音波形の分析を行い、該分析結果に基づ
いて前記線スペクトル成分を抽出するようにしたことを
特徴とする楽音波形分析合成方法。 - 【請求項3】 前記倍音のグループに対応する前記残差
成分を抽出し、該残差成分を順次さらに異なるグループ
対応に分析することを特徴とする請求項2記載の楽音波
形分析合成方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003043802A JP3741106B2 (ja) | 2003-02-21 | 2003-02-21 | 楽音波形分析方法及び楽音波形分析合成方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003043802A JP3741106B2 (ja) | 2003-02-21 | 2003-02-21 | 楽音波形分析方法及び楽音波形分析合成方法 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17437298A Division JP3433673B2 (ja) | 1998-06-22 | 1998-06-22 | 楽音波形分析方法及び楽音波形分析装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003263170A true JP2003263170A (ja) | 2003-09-19 |
| JP3741106B2 JP3741106B2 (ja) | 2006-02-01 |
Family
ID=29208466
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003043802A Expired - Lifetime JP3741106B2 (ja) | 2003-02-21 | 2003-02-21 | 楽音波形分析方法及び楽音波形分析合成方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3741106B2 (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2009011438A1 (ja) * | 2007-07-18 | 2009-01-22 | Wakayama University | 周期信号処理方法、周期信号変換方法、周期信号処理装置および周期信号の分析方法 |
| JP2010217476A (ja) * | 2009-03-17 | 2010-09-30 | Yamaha Corp | 波形データ生成方法 |
| JP2010217477A (ja) * | 2009-03-17 | 2010-09-30 | Yamaha Corp | 波形データ生成方法 |
| EP3346468A4 (en) * | 2015-09-03 | 2019-04-24 | Pioneer DJ Corporation | MUSIC PIECE ANALYSIS DEVICE, MUSIC PIECE ANALYSIS PROCEDURE AND MUSIC PIECE ANALYSIS PROGRAM |
| CN112948331A (zh) * | 2021-03-01 | 2021-06-11 | 湖南快乐阳光互动娱乐传媒有限公司 | 音频文件的生成方法、解析方法、生成器及解析器 |
-
2003
- 2003-02-21 JP JP2003043802A patent/JP3741106B2/ja not_active Expired - Lifetime
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2009011438A1 (ja) * | 2007-07-18 | 2009-01-22 | Wakayama University | 周期信号処理方法、周期信号変換方法、周期信号処理装置および周期信号の分析方法 |
| US8781819B2 (en) | 2007-07-18 | 2014-07-15 | Wakayama University | Periodic signal processing method, periodic signal conversion method, periodic signal processing device, and periodic signal analysis method |
| JP2010217476A (ja) * | 2009-03-17 | 2010-09-30 | Yamaha Corp | 波形データ生成方法 |
| JP2010217477A (ja) * | 2009-03-17 | 2010-09-30 | Yamaha Corp | 波形データ生成方法 |
| EP3346468A4 (en) * | 2015-09-03 | 2019-04-24 | Pioneer DJ Corporation | MUSIC PIECE ANALYSIS DEVICE, MUSIC PIECE ANALYSIS PROCEDURE AND MUSIC PIECE ANALYSIS PROGRAM |
| CN112948331A (zh) * | 2021-03-01 | 2021-06-11 | 湖南快乐阳光互动娱乐传媒有限公司 | 音频文件的生成方法、解析方法、生成器及解析器 |
| CN112948331B (zh) * | 2021-03-01 | 2023-02-03 | 湖南快乐阳光互动娱乐传媒有限公司 | 音频文件的生成方法、解析方法、生成器及解析器 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3741106B2 (ja) | 2006-02-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Dolson | The phase vocoder: A tutorial | |
| JP4527287B2 (ja) | オーディオ信号の時間スケール及び/又は基本周波数を変更するための信号処理技術 | |
| US7672835B2 (en) | Voice analysis/synthesis apparatus and program | |
| JP4734961B2 (ja) | 音響効果付与装置、及びプログラム | |
| JPH0315758B2 (ja) | ||
| JP2003263170A (ja) | 楽音波形分析方法及び楽音波形分析合成方法 | |
| JP3433673B2 (ja) | 楽音波形分析方法及び楽音波形分析装置 | |
| KR20070100334A (ko) | 오디오 파형처리장치, 방식 및 프로그램 | |
| US5691496A (en) | Musical tone control apparatus for filter processing a musical tone waveform ONLY in a transient band between a pass-band and a stop-band | |
| JP2001100763A (ja) | 波形分析方法 | |
| JP3733964B2 (ja) | 分析結果を用いた音源波形合成装置 | |
| JP3644296B2 (ja) | 楽音波形分析装置及び楽音波形分析方法並びに楽音波形分析プログラムを記録したコンピュータで読み取り可能な記録媒体 | |
| JP2765306B2 (ja) | 音源装置 | |
| JP3767236B2 (ja) | 楽音波形分析装置及び楽音波形分析方法並びに楽音波形分析プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| JPS6091227A (ja) | 音響解析装置の合成装置 | |
| JP3304709B2 (ja) | 楽音信号分析方法 | |
| JP4246160B2 (ja) | 楽曲検索装置および楽曲検索方法 | |
| JP3454147B2 (ja) | 楽音波形分析装置及び楽音波形分析方法並びに楽音波形分析プログラムを記録したコンピュータ読み取り可能な媒体 | |
| JP5609280B2 (ja) | 音響信号の符号化方法および装置 | |
| JP2001134269A (ja) | 音響信号分析方法 | |
| JP2924366B2 (ja) | 音源装置 | |
| JPH09251294A (ja) | 音源装置および楽音のスペクトル成分分析方法 | |
| JP5246208B2 (ja) | 基音抽出装置、及びプログラム | |
| JP2003162287A (ja) | 楽音波形のスペクトルピーク軌跡追従方法および装置 | |
| JPS6097398A (ja) | 音響解析装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040421 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051007 |
|
| 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: 20051018 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051031 |
|
| R150 | Certificate of patent or registration of utility model |
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: 20081118 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091118 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101118 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101118 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121118 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121118 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131118 Year of fee payment: 8 |
|
| EXPY | Cancellation because of completion of term |