JP3767236B2 - Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program - Google Patents

Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program Download PDF

Info

Publication number
JP3767236B2
JP3767236B2 JP07576099A JP7576099A JP3767236B2 JP 3767236 B2 JP3767236 B2 JP 3767236B2 JP 07576099 A JP07576099 A JP 07576099A JP 7576099 A JP7576099 A JP 7576099A JP 3767236 B2 JP3767236 B2 JP 3767236B2
Authority
JP
Japan
Prior art keywords
cell
frame
amplitude
peak point
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP07576099A
Other languages
Japanese (ja)
Other versions
JP2000267658A (en
Inventor
正尋 柿下
哲夫 西元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP07576099A priority Critical patent/JP3767236B2/en
Publication of JP2000267658A publication Critical patent/JP2000267658A/en
Application granted granted Critical
Publication of JP3767236B2 publication Critical patent/JP3767236B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する楽音波形分析装置及び楽音波形分析方法並びに楽音波形分析プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
従来、楽音の性質を分析したり楽音波形を合成する楽音分析・(再)合成(Analysis & (Re)Synthesis)の技術分野において、次のような処理が行われている。先ず、時系列なサンプリング波形に窓関数を掛けてフレームを切り出し、高速フーリエ変換(FFT)処理を施して周波数スペクトルの分析データを得る。この周波数スペクトルの分析データは、周波数軸上のデータすなわち周波数データ、振幅データおよび位相データを含んでおり、振幅データのピークとみなせる全てのピーク点(周波数値)を検出する。そして窓関数の窓を移動してフレームを更新し、上記の処理を繰り返し、各フレームにおける周波数スペクトルの振幅データのピーク点を検出する。
【0003】
ここで、各フレームにおけるピーク点は、一般に、複数の周波数に対応して複数個検出され、これらのピーク点は、元のサンプリング波形の基音、その倍音に相当する高調波成分、ノイズ成分、FFTの窓関数のサイドローブ等に対応して検出される。しかし、楽音の聴感上のピッチは主に基音および低次の倍音成分により得られ、また主に高次の倍音成分により音色感が得られるように、楽音の性質を分析したり楽音波形を合成するためには、基音や倍音に相当するピーク点を抽出することが重要である。この基音や倍音に相当するピークはFFTにおけるフレームの時間軸方向に連なる長い軌跡を形成するので、これらの楽音波形分析の処理では、ピーク点の軌跡を追跡することが要求される。
【0004】
図7は、FFTによる分析の結果得られた周波数スペクトルの振幅データのピークの一例を示す図である。この図に示す例は、ピアノのC4鍵(中央ハ)の音(基音周波数は約261.63Hz)を分析したものであり、横軸は時間(単位はms)、縦軸は周波数(単位はHz)であり、前記時間窓に対応する各フレーム毎に検出されたピーク点が点で表されている。また、横方向の細線は、前記基音周波数およびその理論上の倍音の周波数を表している。この図において、全ての点は独立に存在しており、図において軌跡を描いている線を見てとることができるが、この軌跡がつながっているという情報はまだ得られておらず、各フレーム毎にどの周波数でピークとなっているかという情報が得られているだけである。なお、長い軌跡として見える部分以外はノイズであったり、FFTの窓関数のサイドローブが表示されているものとみなされる。
【0005】
このようなピーク点のデータから軌跡をなすピーク点を抽出するために、一般に、各フレームで倍音関係にある成分をピッキングすることが行われている。すなわち、既知の基音周波数FBと、その整数倍、2×FB、3×FB,…の周波数に最も近いピーク点を基音あるいは倍音であると判断し、各フレーム毎に倍音データをピックアップしていく方法がとられている。そして、フレーム間で基音あるいは同倍音に関して検出されたピーク点同士が一つの軌跡をなすものと判定するようにしている。
【0006】
【発明が解決しようとする課題】
図8は、前記図7における基音の15msecあたりを拡大した図である。この図において、ピーク点の軌跡の追跡方向が右から左へ向かう場合に、フレームタイムAにおいてピーク点は矢印の方向へつながるとするのが自然である。しかしながら、上述した従来の方法では、例えば基音周波数(この場合は261.63Hz)についてみてみると、フレーム各々で基音周波数に最も近いピーク点を選択するという条件で追従が行われているため、次のような問題が生じる。例えば、図8の右側からフレームタイムAまでの各フレームでは基音周波数の近辺のピークは一つであるが、フレームタイムAの次のフレームタイムA−1において、ピーク点bがピーク点aよりも基音周波数に近く発生している。このため、フレームタイムAからA−1になるとき軌跡がピーク点bへつながってしまい、ピーク点の軌跡をうまく追跡できないことがある。
【0007】
本発明は、分析対象楽音波形の時系列なフレームにおける各周波数スペクトルのピーク点について、フレームの時間軸方向に連続するピーク点の軌跡を高い確度で追跡できるようにすることを課題とする。
【0008】
【課題を解決するための手段】
本発明の請求項1の楽音波形分析装置は、分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する楽音波形分析装置において、周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間が設定された記憶手段と、前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算する演算手段と、前記演算手段によって得られた各乗算値を、前記セル空間上のセル毎に累算する累算手段と、前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するピーク追跡手段と、を備えたことを特徴とする。
【0009】
上記のように構成された請求項1の楽音波形分析装置によれば、前記記憶手段に設定されたセル空間は、周波数座標と時間座標とで規定されるセルからなり少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されている。演算手段は、前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算する。累算手段は、前記演算手段によって得られた各乗算値を、前記セル空間上のセル毎に累算する。この累算された振幅は、隣接するピーク点間で最短距離となる経路上のセルで極値(例えば極大値)をとる傾向にある。したがって、ピーク追跡手段で、フレームの時間軸方向に、各セルで累算された重みの極値に追従して該セルを選択してピーク点の軌跡を追跡すると、ピーク点の軌跡を高い確度で追跡できる。
【0010】
本発明の請求項2の楽音波形分析方法は、分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する楽音波形分析方法において、周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間を使い、前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算し、前記乗算によって得られた各乗算値を、前記セル空間上のセル毎に累算し、前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するようにしたことを特徴とする。
【0011】
上記のように構成された請求項2の楽音波形分析方法によれば、前記請求項1と同様に、前記セル空間において、フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択してピーク点の軌跡を追跡するので、ピーク点の軌跡を高い確度で追跡できる。
【0012】
本発明の請求項3のコンピュータ読み取り可能な記録媒体は、分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する処理をコンピュータで実行するための楽音波形分析プログラムを記録したコンピュータ読み取り可能な記録媒体であって、周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間を使い、前記検出されたピーク点を該ピーク点の周波数とフレームに応じて前記セル空間のセルに対応付けるステップと、該ピーク点の周囲近傍のセルに該ピーク点からの前記セル空間上で定義された距離に応じた重みで該ピーク点の振幅を設定して各セル毎に設定された振幅をそれぞれ累算するステップと、前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算するステップと、前記乗算によって得られた各乗算値を、前記セル空間上のセル毎に累算するステップと、前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するステップと、をコンピュータで実行する楽音波形分析プログラムを記録したものであり、この請求項3の記録媒体に記録された楽音波形分析プログラムの実行によれば、請求項1および請求項2と同様な作用効果が得られる。
【0013】
【発明の実施の形態】
図1は本発明の一実施の形態の楽音波形分析装置のブロック図であり、CPU1を備えたパーソナルコンピュータで構成した場合を示している。プログラムメモリ2はハードディスク装置やCD−ROM装置あるいはその他の外部記憶装置であり、後述説明する楽音波形分析プログラムが記憶されている。また、データメモリ3はRAM等であり、分析対象となる楽音波形データや分析結果等が記憶される。また、入力装置4および演奏操作子5はキーボード等であり、ディスプレイ6はCRTあるいは液晶表示器等である。楽音合成部7は分析結果に基づいて楽音を合成する各種LSIチップを搭載した音源ボードあるいは音源装置等である。さらに、ネットワークインターフェース8はMIDI、LAN、電話回線等の各種ネットワーク9に接続するインターフェースである。
【0014】
CPU1はプログラムメモリ2の例えばハードディスク装置に格納されている波形分析プログラムに基づいて、データメモリ3の指定された楽音波形データについて後述説明する波形分析処理を行い、フーリエ解析処理の各フレームにおける周波数スペクトルのピーク点を検出する。そして、フレーム間で軌跡をなすピーク点を抽出し、この軌跡をなす各フレームにおけるピーク点の分析データを分析結果として得る。
【0015】
なお、CPU1は、後述説明する波形分析の結果得られたピーク点の軌跡に基づき、各フレーム毎に、軌跡をなすピーク点の分析データである周波数データ、振幅データおよび位相データをそのフレームタイムに合わせて楽音合成部7に出力することにより、楽音合成部7でフーリエ合成を行う。また、元波形データと上記フーリエ合成した波形データとの差分を残差波形データとして求める。この残差波形データとフーリエ合成した波形データは楽音合成部7で再合成され、ディジタル・アナログ変換されて楽音信号として発生される。また、楽音合成部7に出力される上記分析データや残差波形データをモディファイすることにより所望の波形データが得られる。
【0016】
図2は実施形態におけるCPU1が実行する波形分析処理のフローチャートであり、同図に基づいて実施形態における波形分析処理の動作を説明する。図6は図7と同じピアノのC4鍵の音の時間波形の一例を示す図であり、この波形を分析対象としてピーク追跡を行う場合について説明する。この時間波形の波形データは楽音波形の振幅を例えば44.1kHzのサンプリング周波数でサンプリングし量子化した時系列なサンプリングデータであり、データメモリ3に格納されている。
【0017】
波形分析処理が開始されると、先ず、ステップS1において分析対象音波形のフレーム分析を行う。このフレーム分析の処理は、まず、フーリエ解析処理を行うために、分析範囲、窓サイズ、FFTサイズ、窓関数を時間軸に沿って動かすHOPサイズの設定など初期設定を行う。一般に、FFTの窓サイズは波形の基本周期の整数倍とするのが適切であり、例えば、8倍とする。図6に示したC4鍵の音は基本周波数が261.63Hzであり、その1周期に含まれるサンプリングポイント数はサンプリング周波数が44.1kHzであるので168.6点である。したがって、窓サイズは、この8倍の1348点(小数点以下四捨五入)とする。
【0018】
さらに、FFTサイズは2のベキ数でなければならず、このFFTサイズは大きければ大きいほど周波数分解能は向上する。しかし、あまり大きすぎても計算時間がかかってしまうため、窓サイズを超える最小の2のベキ数を選ぶこととし、2048点とする。さらに、HOPサイズは基本周期の1/8とし、21点とする。そして、これらの条件により、図6の波形データに対して窓関数を時間軸上で移動して切り出した各フレームにおいてフーリエ解析処理を施し、時系列な各フレーム毎に周波数スペクトルの分析データを得る。この周波数スペクトルの分析データは、周波数軸上でのデータとしての周波数データ、振幅データおよび位相データである。
【0019】
次に、ステップS2で、周波数スペクトルにおける各フレームの分析データの振幅データのピークを抽出して例えば前掲の図7のような線スペクトル成分(1フレームの線スペクトルは縦軸上に離散する点で構成される。)を得る。なお、この図7では各ピーク点に対応する周波数データ(縦軸の値)のみが示されているが、各ピーク点に対応する振幅データおよび位相データも同時にデータメモリ3に記憶される。
【0020】
次に、ステップS3で、フレーム時間と周波数を細分化したframe-freq平面をセル空間としてデータメモリ3の予め定められった領域に設定し、このframe-freq平面上に検出されたピーク点を配置する。図3はframe-freq平面にピーク点を配置した状態を示す概念図であり、frame-freq平面は、時間座標と周波数座標とで規定されるマトリックス状に配置されるセルから構成されている。時間座標はフレーム時間の分解能(HOPサイズが1となる分解能)に対して4倍の分解能に設定され、周波数座標は、900Hz/120=7.5Hzを1単位とするように設定されている。この周波数座標の1単位の数値は、分析対象音波形の基音の周波数である約261.63Hzに対して約32分の1に設定したもので、これにより、分析対象音波形の基音の周波数間隔(および倍音間の周波数間隔)で分離できる。同様のことは16分の1でもほぼ可能である。なお、図では、便宜的に周波数座標を「A、B、C、…」のアルファベットで表し、時間座標を「1、2、3、…」の数で表し、以下の説明で、セルを指定するときは[A,1]([周波数座標,時間座標])のような座標表示を用いる。また、このフーリエ解析処理のフレームとの混同のおそれもないので、時間座標を適宜「フレーム」ともいう。図3において“0”以外の数値が記入されているセル(例えば“34”の[N,5]のセル、“35”の[M,9]のセル等)にピーク点が配置されており、各数値はそのピーク点の振幅をdB(デシベル)で示したものである。
【0021】
次に、ステップS4で、ピーク点毎に図4に示した振幅係数テンプレートを当てて、この振幅係数テンプレートの各セルに対応するframe-freq平面のセルに対して、ピーク点の振幅に振幅係数テンプレートのセルの振幅係数を乗算した値をそれぞれ設定し、frame-freq平面の各セルにおいて、それぞれ設定された乗算値を累算する。これにより、図5に示したようなframe-freq平面上での累算結果が得られる。
【0022】
以下、図3、図4、図5に基づいて、ステップ4の処理の具体例を説明する。図4の振幅係数テンプレートは、「a、b、c、d、e」のアルファベットで示す5つの周波数座標と、「1、2、3、4、5、6、7、8、9」の数字で示す9つの時間座標とで規定される5×9のマトリックス状のセルに振幅係数を配置したテンプレートである。そして、振幅係数は、中心のセルを“1”とし、その周囲のセルでは、例えば“1/2→1/4→1/8→1/16”あるいは“1/8→1/16→1/32→1/64”のように中心から離れるにしたがって減少する値に設定されている。なお、前記frame-freq平面の場合と同様に、振幅係数テンプレートのセルあるいはその振幅係数を指定するとき例えば<a,1>(<周波数座標,時間座標>)のような座標表示を用いる。
【0023】
例えば、図4の振幅係数テンプレートの<c,5>のセルを図3のframe-freq平面のピーク点の[N,5]のセルに合わせて、振幅係数テンプレートの周波数座標「a、…、e」をframe-freq平面の周波数座標「L、…、P」に対応させるとともに、振幅テンプレートの時間座標「1、…、9」をframe-freq平面の時間座標「1、…、9」に対応させ、frame-freq平面のセルと振幅係数テンプレートのセルを対応付ける。次に、frame-freq平面において、ピーク点のセルにはそのピーク点の振幅(この例では“34”)を設定し、その他のセルには、振幅係数テンプレートの対応するセルの振幅係数をピーク点の振幅に乗算してその乗算値を設定する。例えば、[N,4]のセルには、“34”に<c,4>のセルの振幅係数“1/2”を乗算した乗算値“17”を設定し、また、[N,3]のセルには、“34”に<c,3>のセルの振幅係数“1/4”を乗算した乗算値“18”(小数点以下切り捨て)を設定するなど、振幅係数テンプレートに対応するセルについて、振幅値と振幅係数との乗算値を設定する処理を行う。
【0024】
さらに、振幅係数テンプレートの<c,5>のセルをframe-freq平面のピーク点の[M,9]のセルに合わせて、上記同様にframe-freq平面のセルと振幅係数テンプレートのセルを対応付け、このピーク点の[M,9]の周囲のセルについても前記同様に振幅値と振幅係数との乗算値を設定する処理を行う。そして、これらのframe-freq平面のセルと振幅係数テンプレートのセルとの対応付けと、振幅値と振幅係数との乗算値の設定の処理を、全てのピーク点について実行する。これにより、frame-freq平面のセルには、隣接するピーク点の振幅値とその振幅係数に応じた乗算値が複数設定されるので、各セルにおいてその乗算値を累算する。以上の処理により、例えば図5に示したようなframe-freq平面のピーク点近傍に連なるセルに0以外の累算結果が得られる。例えば図5の[N,7]のセルは“12”となっているが、これは、図3の[N,5]のセルの“34”に<c,7>の“1/4”を乗算した乗算値“8”(小数点以下切り捨て)と、図3の[M,9]のセルの“35”に<d,3>の“1/8”を乗算した乗算値“4”(小数点以下切り捨て)との加算値(累算値)である。
【0025】
以上のような累算値が得られると、ステップ5において次のように軌跡追跡の処理を行う。この軌跡追跡の処理は適当なピーク点を基点と定め、frame-freq平面においてそのピーク点からフレーム時間方向(時間座標軸方向)のセルを検索し累算値が極大値となるセルを順次選択することでピーク点の軌跡を追跡する。このとき、以下の▲1▼〜▲3▼の条件に従ってセルを選択する。
▲1▼フレーム(時間座標)を進めて同一の周波数(同じ周波数座標)での値が極大値であればそのセル(周波数)を選択する。
▲2▼もし同一周波数の累算値より大きな累算値が左右のどちらかに存在すれば、累算値が一番大きくなるセル(周波数)を見つけてそれを選択する。
▲3▼もし同一周波数の累算値よと同じ値の累算値が左右どちらか、もしくはその両方にある場合、周波数座標を変更しないでセルを選択する。
【0026】
例えば、図5において、先ず、[N,5]のピーク点からはじめ、第6フレーム(時間座標「6」)において[N,6]の“19”が極大値であるので、この[N,6]のセルを選択する。第7フレームにおいては[M,7]の“12”と[N,7]の“12”がともに極大値となっているが、上記▲3▼の条件により[N,7]のセルを選択する。さらに、第8フレームでは[M,8]が“20”、[N,8]が“12”であるので、[M,8]のセルを選択する。以下、同様にセルを選択することにより、図5に太枠で示したセルが順次ピーク点の軌跡として追跡できる。
【0027】
なお、以上の説明は[N,5]のピーク点からピーク追跡を開始する場合について具体例を説明したが、複数のピーク軌跡について同様の処理を行うことはいうまでもない。すなわち、ピーク追跡の基点となる基点フレームを決定し、その基点フレーム上各ピーク点からそれぞれ軌跡追跡処理を行う。この基点フレームを決定する処理では、図6の時間波形のエンベロープが最大となる時点(以下、アタックマックスポイント(Attack Max Point)という)の検出を行う。これは、振幅レベルが最大となるアタックマックスポイントでは、すべての追従が必要なピーク点が出揃っている可能性が大きいためである。図6の時間波形では、アタックマックスポイントは、42.9msに見つけることができ、サンプリング周波数が44.1kHzであるので42.9msは1892点目と求まる。そこで、フレームの中心がこのアタックマックスポイント(1892点目)に最も近くなるようなフレームを検出し、それを第0フレームとしてピーク追跡の追跡開始の基点フレームとする。そして、第0フレームから時間的に後(未来)のフレームに向けてピーク追跡を行い、分析範囲上限に達すると、第0フレームから時間的に前(過去)のフレームに向けて分析範囲下限に達するまでピーク追跡を行う。これにより、追従が必要なピークをもらすことなく検出することが可能となる。
【0028】
以上のようにピーク点の軌跡追跡の処理が終了すると、ステップS6において、図5の軌跡追跡結果に基づき、楽音の再合成(正弦波加算合成)に適した形式にデータを編集して分析結果データとしてデータメモリ3に記憶し、処理を終了する。このデータの編集の処理では、例えば、図7のピーク点のデータから図5の軌跡に対応するピーク点のデータを抽出するなどして、軌跡をなすピーク点の分析データ(周波数データ、振幅データ、位相データ)を分析結果データとするなどの処理を行う。
【0029】
以上のように、各ピーク点をframe-freq平面に配置し、そのピーク点の周囲近傍にそのピーク点からの距離に応じた重み(振幅係数)で振幅を設定するとともに、各ピーク点による上記振幅値を累算し、この累算値の極値(上記の例では極大値)に追従してピーク軌跡を追跡するようにしているので、自然につながる軌跡を追跡できるようになる。
【0030】
以上の実施形態では、frame-freq平面はセル空間としてデータメモリ3の予め定められた領域に設定されているものとして説明したが、このようなセル空間として、例えばパーソナルコンピュータのグラフィックメモリやビデオメモリ等を使用し、frame-freq平面のピーク点や振幅の累算値等をグラフィック表示するようにしてもよい。この場合、累算値は画像処理で実行することもできる。また、frame-freq平面を示す図3等は概念図であり、これらのセル空間は記憶手段内でそのような形式で設定されていてもよい。このことは図4の振幅係数テンプレートについても同様である。
【0031】
実施形態では波形分析後に波形の合成、楽音の発生等を行うようにしているが、本発明は波形分析に関するものであり、波形の合成や楽音の発生等の処理の有無に限定されるものではない。また、残差波形データの生成もしなくてもよい。
【0032】
また、実施形態では、楽音波形分析プログラムがプログラムメモリ2に予め記憶されている場合について説明したが、これに限らず次のようにしてもよい。例えば、CD−ROMに楽音波形分析プログラムを記録しておき、CD−ROM装置から楽音波形分析プログラムをハードディスクにロードする。そして、CPUシステム1が、このハードディスクの楽音波形分析プログラムをRAM等に展開し、このRAMのプログラムに基づいて前記実施形態同様に楽音波形分析の動作を制御する。これにより、プログラムメモリに楽音波形分析プログラムを記憶している場合と同様の動作をCPUにさせることができる。このようにすると、楽音波形分析プログラムの新規インストールや追加あるいはバージョンアップ等が容易に行える。また、フロッピディスク、磁気ディスク(MO)等に楽音波形分析プログラムを記録しておいて、RAMあるいはハードディスクに供給するようにしてもよい。
【0033】
また、ネットワークインターフェース7を利用し、楽音波形分析プログラムをダウンロードするようにしてもよい。この場、例えば、LAN(ローカルエリアネットワーク)やインターネットあるいは電話回線等のネットワーク9に接続し、該ネットワーク9を介して、サーバコンピュータから楽音波形分析プログラムの配信を受けることにより、それをハードディスクに記録してダウンロードが完了する。さらには、ネットワークを通じて楽音波形分析プログラムを実行するようにしてもよい。
【0034】
本発明は上記実施形態のようなパーソナルコンピュータに限らず、各種電子楽器、音源装置、シーケンサ、エフェクタなど各種装置や、また、これらをMIDIあるいは各種ネットワーク等の通信手段を用いて各装置を接続するようなシステム等に、機能として、あるいはアプリケーションとして組み込むようにしてもよい。
【0035】
なお、以上の実施形態で説明したような楽音波形分析プログラムが記録された媒体、すなわちROM、RAM、ハードディスク、CD−ROM、光磁気ディスク、DVD(デジタル多目的ディスク)あるいはネットワークのサーバコンピュータなど配信先の記憶装置は、本発明の請求項3の楽音波形分析プログラムを記録したコンピュータ読み取り可能記録媒体に相当する。
【0036】
【発明の効果】
以上説明したように、本発明の請求項1の楽音波形分析装置または請求項2の楽音波形分析方法または請求項3のコンピュータ読み取り可能な記録媒体に記録された楽音波形分析プログラムの実行によれば、分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、周波数座標と時間座標をもつセル空間を使い、前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算し、前記乗算によって得られた各乗算値を、前記セル空間上のセル毎に累算し、前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従してセルを選択することでピーク点の軌跡を追跡するようにしたので、隣接するピーク点間で最短距離となる経路上のセルで累算値が極値をとる傾向にあるので、ピーク点の軌跡を高い確度で追跡することができる。
【図面の簡単な説明】
【図1】本発明の実施形態における楽音波形分析装置のブロック図である。
【図2】実施形態における波形分析処理のフローチャートである。
【図3】実施形態におけるframe-freq平面にピーク点を配置した状態を示す概念図である。
【図4】実施形態における振幅係数テンプレートを示す概念図である。
【図5】実施形態におけるframe-freq平面上での累算結果を示す概念図である。
【図6】実施形態に係るピアノのC4鍵の音の時間波形の一例を示す図である。
【図7】実施形態に係る周波数スペクトルのピークの一例を示す図である。
【図8】従来の問題点を説明する図である。
【符号の説明】
1…CPU、2…プログラムメモリ、3…データメモリ、7…楽音合成部
[0001]
BACKGROUND OF THE INVENTION
The present invention performs a Fourier transform process on a musical sound waveform to be analyzed to obtain a frequency spectrum of time-series frames, detects peak points of amplitude data of analysis data in each frame, and continues in the time axis direction of the frame. A musical tone waveform analyzer, a musical tone waveform analysis method, and a musical tone waveform analysis program for tracking the locus of the peak point are recorded. Computer readable The present invention relates to a recording medium.
[0002]
[Prior art]
Conventionally, the following processing is performed in the technical field of musical sound analysis and (re) synthesis (Analysis & (Re) Synthesis) for analyzing the characteristics of musical sounds and synthesizing musical sound waveforms. First, a time-series sampling waveform is multiplied by a window function to cut out a frame, and fast Fourier transform (FFT) processing is performed to obtain frequency spectrum analysis data. The analysis data of the frequency spectrum includes data on the frequency axis, that is, frequency data, amplitude data, and phase data, and all peak points (frequency values) that can be regarded as peaks of the amplitude data are detected. Then, the window of the window function is moved to update the frame, the above processing is repeated, and the peak point of the amplitude data of the frequency spectrum in each frame is detected.
[0003]
Here, a plurality of peak points in each frame are generally detected corresponding to a plurality of frequencies, and these peak points are a fundamental tone of the original sampling waveform, a harmonic component corresponding to its harmonic, a noise component, an FFT, and the like. Are detected corresponding to the side lobes of the window function. However, the audible pitch of the musical tone is obtained mainly from the fundamental tone and the lower harmonic components, and the characteristics of the musical tone are analyzed and the musical sound waveform is synthesized so that the timbre is obtained mainly from the higher harmonic components. In order to achieve this, it is important to extract peak points corresponding to fundamental and overtones. Since the peak corresponding to the fundamental tone or the harmonic overtone forms a long trajectory continuous in the time axis direction of the frame in the FFT, it is required to track the trajectory of the peak point in these musical sound waveform analysis processes.
[0004]
FIG. 7 is a diagram illustrating an example of the peak of the amplitude data of the frequency spectrum obtained as a result of the analysis by FFT. The example shown in this figure is an analysis of a piano C4 key (center c) sound (fundamental frequency is approximately 261.63 Hz), the horizontal axis is time (unit is ms), and the vertical axis is frequency (unit is Hz), and the peak points detected for each frame corresponding to the time window are represented by dots. Moreover, the horizontal thin line represents the fundamental frequency and its theoretical overtone frequency. In this figure, all the points exist independently, and you can see the line drawing the trajectory in the figure, but the information that this trajectory is connected is not yet obtained, each frame Only the information on which frequency is the peak at each time is obtained. In addition, it is considered that the part other than the part that appears as a long trajectory is noise or that the side lobe of the FFT window function is displayed.
[0005]
In order to extract a peak point having a locus from such peak point data, generally, a component having a harmonic relationship is picked in each frame. That is, it is determined that the peak point closest to the known fundamental frequency FB and its integral multiples 2 × FB, 3 × FB,... Is the fundamental tone or harmonics, and harmonic data is picked up for each frame. The method is taken. Then, it is determined that the peak points detected with respect to the fundamental tone or harmonics between frames form one locus.
[0006]
[Problems to be solved by the invention]
FIG. 8 is an enlarged view of the fundamental tone in FIG. 7 around 15 msec. In this figure, when the tracking direction of the locus of the peak point is from right to left, it is natural that the peak point is connected in the direction of the arrow at the frame time A. However, in the above-described conventional method, for example, when looking at the fundamental frequency (261.63 Hz in this case), the following is performed under the condition that the peak point closest to the fundamental frequency is selected in each frame. The following problems arise. For example, in each frame from the right side of FIG. 8 to frame time A, there is one peak in the vicinity of the fundamental frequency, but at frame time A-1 next to frame time A, peak point b is higher than peak point a. It occurs close to the fundamental frequency. For this reason, when the frame time A changes from A to A-1, the locus is connected to the peak point b, and the locus of the peak point may not be tracked well.
[0007]
It is an object of the present invention to make it possible to trace the locus of peak points continuous in the time axis direction of a frame with high accuracy with respect to the peak points of each frequency spectrum in a time-series frame of an analysis target musical sound waveform.
[0008]
[Means for Solving the Problems]
The musical sound waveform analyzer according to claim 1 of the present invention performs a Fourier transform process on the musical sound waveform to be analyzed to obtain a frequency spectrum of a time-series frame, and detects a peak point of amplitude data of analysis data in each frame. In the musical tone waveform analyzer for tracking the locus of the peak point that is continuous in the time axis direction of the frame, the cell space is composed of cells defined by frequency coordinates and time coordinates, and at least the time coordinates are the frame. The unit is the time interval that divides Storage means in which a cell space defined as coordinates is set; An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is forward or backward in time with respect to the center cell and the center cell. A calculation unit that uses a template in which a coefficient is assigned to each cell, superimposes the center of the template on each of the peak points, and multiplies the amplitude coefficient of each cell of the template at that time by the amplitude of the peak point; Accumulating means for accumulating each multiplication value obtained by the computing means for each cell in the cell space; Peak tracking means for tracking the locus of the peak point by selecting the cell following the extreme value of the amplitude accumulated in each cell in the time axis direction of the frame. And
[0009]
According to the musical tone waveform analyzer of claim 1 configured as described above, the cell space set in the storage means is composed of cells defined by frequency coordinates and time coordinates, and at least the time coordinates are the frames. The unit is the time interval that divides It is defined as coordinates. The calculation means is An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is forward or backward in time with respect to the center cell and the center cell. A template in which a coefficient is assigned to each cell is used, the center of the template is superimposed on each of the peak points, and the amplitude coefficient of each cell of the template at that time is multiplied by the amplitude of the peak point. The accumulating means accumulates each multiplication value obtained by the calculating means for each cell in the cell space. This accumulated amplitude tends to have an extreme value (for example, a local maximum value) in a cell on the path having the shortest distance between adjacent peak points. Therefore, if the peak tracking means tracks the peak point trajectory by selecting the cell following the extreme value of the weight accumulated in each cell in the time axis direction of the frame, the peak point trajectory has high accuracy. Can be tracked at.
[0010]
The musical sound waveform analysis method according to claim 2 of the present invention obtains a frequency spectrum of a time-series frame by performing a Fourier transform process on the musical sound waveform to be analyzed, and detects a peak point of the amplitude data of the analysis data in each frame. In the musical sound waveform analysis method for tracking the trajectory of the peak point continuous in the time axis direction of the frame, a cell space consisting of cells defined by frequency coordinates and time coordinates, and at least the time coordinates of the frame The unit is the time interval that divides Using cell space defined as coordinates, An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is forward or backward in time with respect to the center cell and the center cell. Using a template in which a coefficient is assigned to each cell, the center of the template is superimposed on each of the peak points, the amplitude coefficient of each cell of the template at that time is multiplied by the amplitude of the peak point, and the multiplication is performed. Each obtained multiplication value is accumulated for each cell on the cell space, The locus of the peak point is traced by selecting the cell following the extreme value of the amplitude accumulated in each cell in the time axis direction of the frame.
[0011]
According to the musical sound waveform analysis method of claim 2 configured as described above, as in the case of claim 1, in the cell space, the amplitude pole accumulated in each cell in the time axis direction of the frame. Since the cell is selected according to the value and the locus of the peak point is traced, the locus of the peak point can be traced with high accuracy.
[0012]
Claim 3 of the present invention Computer readable The recording medium performs a Fourier transform process on the musical tone waveform to be analyzed to obtain a frequency spectrum of a time-series frame, detects a peak point of the amplitude data of the analysis data in each frame, and continuously in the time axis direction of the frame Recorded a musical sound waveform analysis program for executing a process of tracking the locus of the peak point on a computer Computer readable A recording medium, which is a cell space composed of cells defined by frequency coordinates and time coordinates, and at least the time coordinates of the frame The unit is the time interval that divides Using the cell space defined as coordinates, associating the detected peak point with a cell in the cell space according to the frequency and frame of the peak point, and from the peak point to a cell in the vicinity of the peak point of Defined in the cell space Setting the amplitude of the peak point with a weight according to the distance and accumulating the amplitude set for each cell; An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is forward or backward in time with respect to the center cell and the center cell. Using a template in which a coefficient is assigned to each cell, superimposing the center of the template on each of the peak points, and multiplying the amplitude coefficient of each cell of the template at that time by the amplitude of the peak point; Accumulating each multiplication value obtained by multiplication for each cell in the cell space; In the time axis direction of the frame, following the extreme value of the amplitude accumulated in each cell, the step of tracking the peak point by selecting the cell and tracking the peak point trajectory is executed by a computer According to the execution of the musical sound waveform analysis program recorded on the recording medium according to the third aspect, the same effects as those of the first and second aspects can be obtained.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram of a musical sound waveform analyzer according to an embodiment of the present invention, and shows a case where the musical sound wave analyzer is constituted by a personal computer equipped with a CPU 1. The program memory 2 is a hard disk device, a CD-ROM device, or other external storage device, and stores a musical sound waveform analysis program described later. The data memory 3 is a RAM or the like, and stores musical sound waveform data to be analyzed, analysis results, and the like. The input device 4 and the performance operator 5 are a keyboard or the like, and the display 6 is a CRT or a liquid crystal display. The tone synthesis unit 7 is a tone generator board or tone generator equipped with various LSI chips for synthesizing a tone based on the analysis result. Further, the network interface 8 is an interface for connecting to various networks 9 such as MIDI, LAN, telephone line and the like.
[0014]
Based on the waveform analysis program stored in, for example, a hard disk device of the program memory 2, the CPU 1 performs waveform analysis processing, which will be described later, on the musical tone waveform data designated in the data memory 3, and the frequency spectrum in each frame of the Fourier analysis processing The peak point of is detected. And the peak point which makes a locus | trajectory between frames is extracted, and the analysis data of the peak point in each frame which makes this locus | trajectory are obtained as an analysis result.
[0015]
Note that the CPU 1 uses, for each frame, frequency data, amplitude data, and phase data, which are analysis data of the peak points forming the trajectory, based on the trajectory of the peak points obtained as a result of the waveform analysis described later. The musical sound synthesizing unit 7 performs Fourier synthesis by outputting them together to the musical sound synthesizing unit 7. Further, the difference between the original waveform data and the Fourier synthesized waveform data is obtained as residual waveform data. The residual waveform data and the Fourier-synthesized waveform data are re-synthesized by the tone synthesizing unit 7 and digital-analog converted to be generated as a tone signal. Also, desired waveform data can be obtained by modifying the analysis data and residual waveform data output to the musical tone synthesis unit 7.
[0016]
FIG. 2 is a flowchart of the waveform analysis process executed by the CPU 1 in the embodiment, and the operation of the waveform analysis process in the embodiment will be described with reference to FIG. FIG. 6 is a diagram showing an example of a time waveform of the sound of the C4 key of the same piano as in FIG. 7, and a case where peak tracking is performed using this waveform as an analysis target will be described. The waveform data of the time waveform is time-series sampling data obtained by sampling and quantizing the amplitude of the musical sound waveform at a sampling frequency of 44.1 kHz, for example, and is stored in the data memory 3.
[0017]
When the waveform analysis process is started, first, frame analysis of the analysis target sound waveform is performed in step S1. In this frame analysis processing, first, in order to perform Fourier analysis processing, initial settings such as setting of analysis range, window size, FFT size, and HOP size for moving the window function along the time axis are performed. In general, it is appropriate that the FFT window size is an integral multiple of the fundamental period of the waveform, for example, 8 times. The sound of the C4 key shown in FIG. 6 has a fundamental frequency of 261.63 Hz, and the number of sampling points included in one period is 168.6 because the sampling frequency is 44.1 kHz. Therefore, the window size is 8 times 1348 points (rounded off after the decimal point).
[0018]
Furthermore, the FFT size must be a power of 2, and the larger the FFT size, the better the frequency resolution. However, even if it is too large, it takes a long time to calculate. Therefore, the minimum number of powers of 2 exceeding the window size is selected, and 2048 points are set. Furthermore, the HOP size is set to 1/8 of the basic period and 21 points. Under these conditions, Fourier analysis processing is performed on each of the frames extracted by moving the window function on the time axis with respect to the waveform data shown in FIG. 6 to obtain frequency spectrum analysis data for each time-series frame. . The analysis data of the frequency spectrum is frequency data, amplitude data, and phase data as data on the frequency axis.
[0019]
Next, in step S2, the peak of the amplitude data of the analysis data of each frame in the frequency spectrum is extracted, for example, the line spectrum component as shown in FIG. 7 (the line spectrum of one frame is discrete on the vertical axis). Configured.) Although only frequency data (value on the vertical axis) corresponding to each peak point is shown in FIG. 7, amplitude data and phase data corresponding to each peak point are also stored in the data memory 3 at the same time.
[0020]
Next, in step S3, the frame-freq plane obtained by subdividing the frame time and frequency is set as a cell space in a predetermined area of the data memory 3, and the peak point detected on this frame-freq plane is set. Deploy. FIG. 3 is a conceptual diagram showing a state in which peak points are arranged on the frame-freq plane. The frame-freq plane is composed of cells arranged in a matrix defined by time coordinates and frequency coordinates. The time coordinate is set to four times the resolution of the frame time (the resolution at which the HOP size is 1), and the frequency coordinate is set to 900 Hz / 120 = 7.5 Hz as one unit. The numerical value of one unit of the frequency coordinate is set to about 1/32 with respect to about 261.63 Hz which is the frequency of the fundamental sound of the analysis target sound waveform. (And frequency interval between overtones). The same thing is almost possible with 1/16. In the figure, for convenience, frequency coordinates are represented by alphabets “A, B, C,...”, Time coordinates are represented by numbers “1, 2, 3,...”, And a cell is designated in the following description. To do this, a coordinate display such as [A, 1] ([frequency coordinate, time coordinate]) is used. Further, since there is no possibility of confusion with the frame of the Fourier analysis process, the time coordinate is also referred to as a “frame” as appropriate. In FIG. 3, peak points are arranged in cells in which numerical values other than “0” are entered (for example, “34” [N, 5] cell, “35” [M, 9] cell, etc.). Each numerical value indicates the amplitude of the peak point in dB (decibel).
[0021]
Next, in step S4, the amplitude coefficient template shown in FIG. 4 is applied to each peak point, and the amplitude coefficient is converted into the amplitude of the peak point with respect to the cell on the frame-freq plane corresponding to each cell of the amplitude coefficient template. A value obtained by multiplying the amplitude coefficient of the template cell is set, and the set multiplication value is accumulated in each cell on the frame-freq plane. As a result, an accumulation result on the frame-freq plane as shown in FIG. 5 is obtained.
[0022]
Hereinafter, a specific example of the process of step 4 will be described based on FIGS. 3, 4, and 5. The amplitude coefficient template of FIG. 4 includes five frequency coordinates indicated by alphabets “a, b, c, d, e” and numbers “1, 2, 3, 4, 5, 6, 7, 8, 9”. Is a template in which amplitude coefficients are arranged in a 5 × 9 matrix cell defined by the nine time coordinates. The amplitude coefficient is set to “1” at the center cell, and for example, “1/2 → 1/4 → 1/8 → 1/16” or “1/8 → 1/16 → 1” in the surrounding cells. It is set to a value that decreases with increasing distance from the center, such as / 32 → 1/64 ″. As in the case of the frame-freq plane, a coordinate display such as <a, 1>(<frequency coordinate, time coordinate>) is used when a cell of an amplitude coefficient template or its amplitude coefficient is designated.
[0023]
For example, the <c, 5> cell of the amplitude coefficient template in FIG. 4 is matched with the [N, 5] cell at the peak point of the frame-freq plane in FIG. e ”corresponds to the frequency coordinates“ L,..., P ”of the frame-freq plane, and the time coordinates“ 1,..., 9 ”of the amplitude template are changed to the time coordinates“ 1,. Correspondingly, the cell of the frame-freq plane is associated with the cell of the amplitude coefficient template. Next, on the frame-freq plane, the peak point cell is set with the amplitude of the peak point (in this example, “34”), and the other cells are peaked with the amplitude coefficient of the corresponding cell of the amplitude coefficient template. Multiply the amplitude of the point and set the multiplication value. For example, the multiplication value “17” obtained by multiplying “34” by the amplitude coefficient “1/2” of the cell of <c, 4> is set to the cell [N, 4], and [N, 3]. For the cell corresponding to the amplitude coefficient template, for example, a multiplication value “18” (rounded down to the decimal point) obtained by multiplying “34” by the amplitude coefficient “1/4” of the cell <c, 3> is set in Then, a process of setting a multiplication value of the amplitude value and the amplitude coefficient is performed.
[0024]
Further, the cell of the amplitude coefficient template is matched with the cell of the frame-freq plane and the cell of the amplitude coefficient template in the same manner as described above by matching the cell of <c, 5> of the amplitude coefficient template with the cell of [M, 9] at the peak point of the frame-freq plane. In addition, similarly to the above, processing for setting a multiplication value of the amplitude value and the amplitude coefficient is performed for the cells around [M, 9] at the peak point. Then, the process of associating the cells on the frame-freq plane with the cells of the amplitude coefficient template and setting the multiplication value of the amplitude value and the amplitude coefficient is executed for all peak points. As a result, a plurality of multiplication values corresponding to the amplitude value of the adjacent peak point and its amplitude coefficient are set in the cell on the frame-freq plane, and the multiplication value is accumulated in each cell. With the above processing, for example, an accumulation result other than 0 is obtained in a cell connected in the vicinity of the peak point on the frame-freq plane as shown in FIG. For example, the cell of [N, 7] in FIG. 5 is “12”, which corresponds to “1/4” of <c, 7> in “34” of the cell of [N, 5] in FIG. Is multiplied by “8” (rounded down) and “35” in the cell [M, 9] in FIG. 3 is multiplied by “1/8” in <d, 3> (4) ( It is an added value (accumulated value) with a decimal point.
[0025]
When the accumulated value as described above is obtained, the trajectory tracking process is performed in step 5 as follows. In this trace tracking process, an appropriate peak point is set as a base point, a cell in the frame time direction (time coordinate axis direction) is searched from the peak point on the frame-freq plane, and a cell having a maximum accumulated value is sequentially selected. To track the trajectory of the peak point. At this time, a cell is selected according to the following conditions (1) to (3).
(1) The frame (time coordinate) is advanced, and if the value at the same frequency (same frequency coordinate) is the maximum value, the cell (frequency) is selected.
(2) If an accumulated value larger than the accumulated value of the same frequency exists on either the left or right side, a cell (frequency) having the largest accumulated value is found and selected.
(3) If the accumulated value of the same value as the accumulated value of the same frequency is on the left or right, or both, the cell is selected without changing the frequency coordinates.
[0026]
For example, in FIG. 5, first, starting from the peak point of [N, 5], “19” of [N, 6] is the maximum value in the sixth frame (time coordinate “6”). 6] cell is selected. In the seventh frame, “12” of [M, 7] and “12” of [N, 7] are both maximum values, but the [N, 7] cell is selected according to the condition (3) above. To do. Further, since [M, 8] is “20” and [N, 8] is “12” in the eighth frame, the [M, 8] cell is selected. Thereafter, by selecting cells in the same manner, the cells indicated by thick frames in FIG. 5 can be sequentially traced as the locus of the peak point.
[0027]
In the above description, a specific example has been described in which peak tracking is started from the peak point [N, 5], but it goes without saying that similar processing is performed for a plurality of peak trajectories. That is, a base point frame serving as a base point for peak tracking is determined, and a track tracking process is performed from each peak point on the base point frame. In the process of determining the base point frame, a time point at which the envelope of the time waveform in FIG. 6 is maximized (hereinafter referred to as an attack max point) is detected. This is because at the attack max point where the amplitude level is maximum, there is a high possibility that all peak points that need to be tracked are available. In the time waveform of FIG. 6, the attack max point can be found at 42.9 ms, and since the sampling frequency is 44.1 kHz, 42.9 ms is obtained as the 1892th point. Therefore, the frame whose center is closest to this attack max point (1892nd point) is detected, and this is set as the 0th frame as the base frame for tracking start of peak tracking. Then, peak tracking is performed from the 0th frame toward the frame later in the future (future), and when the upper limit of the analysis range is reached, the lower limit of the analysis range is reached from the 0th frame toward the previous (past) frame in time. Follow the peak until it reaches. Thereby, it becomes possible to detect without giving a peak that needs to be tracked.
[0028]
When the peak point tracking process is completed as described above, in step S6, based on the track tracking result of FIG. 5, the data is edited into a format suitable for re-synthesis of the sound (sine wave addition synthesis), and the analysis result The data is stored in the data memory 3 and the process is terminated. In this data editing process, for example, the peak point data corresponding to the locus in FIG. 5 is extracted from the peak point data in FIG. , Phase data) is used as analysis result data.
[0029]
As described above, each peak point is arranged on the frame-freq plane, and the amplitude is set with a weight (amplitude coefficient) according to the distance from the peak point in the vicinity of the peak point. Since the amplitude value is accumulated and the peak locus is traced following the extreme value (maximum value in the above example) of the accumulated value, a naturally connected locus can be traced.
[0030]
In the above embodiments, the frame-freq plane has been described as being set in a predetermined area of the data memory 3 as a cell space. However, as such a cell space, for example, a graphic memory or a video memory of a personal computer is used. Etc. may be used to graphically display the peak point of the frame-freq plane, the accumulated value of the amplitude, and the like. In this case, the accumulated value can also be executed by image processing. Further, FIG. 3 showing the frame-freq plane is a conceptual diagram, and these cell spaces may be set in such a format in the storage means. The same applies to the amplitude coefficient template of FIG.
[0031]
In the embodiment, waveform synthesis, musical sound generation, etc. are performed after waveform analysis, but the present invention relates to waveform analysis, and is not limited to the presence or absence of processing such as waveform synthesis or generation of musical sounds. Absent. Further, the residual waveform data need not be generated.
[0032]
Moreover, although the case where the musical tone waveform analysis program is stored in the program memory 2 in advance has been described in the embodiment, the present invention is not limited to this and may be as follows. For example, a musical sound waveform analysis program is recorded on a CD-ROM, and the musical sound waveform analysis program is loaded from a CD-ROM device onto a hard disk. Then, the CPU system 1 develops the musical tone waveform analysis program of the hard disk in a RAM or the like, and controls the operation of the musical sound waveform analysis based on the program of the RAM as in the above embodiment. Thereby, it is possible to cause the CPU to perform the same operation as when the musical sound waveform analysis program is stored in the program memory. In this way, new installation, addition or version upgrade of the musical sound waveform analysis program can be easily performed. Further, a musical sound waveform analysis program may be recorded on a floppy disk, a magnetic disk (MO), etc., and supplied to a RAM or a hard disk.
[0033]
Alternatively, the musical sound waveform analysis program may be downloaded using the network interface 7. In this case, for example, it is connected to a network 9 such as a LAN (local area network), the Internet, or a telephone line, and through the network 9, a musical sound waveform analysis program is received from a server computer and recorded on a hard disk. And the download is complete. Furthermore, the musical sound waveform analysis program may be executed through a network.
[0034]
The present invention is not limited to the personal computer as in the above embodiment, but various devices such as various electronic musical instruments, tone generators, sequencers, and effectors, and these devices are connected to each other using communication means such as MIDI or various networks. Such a system may be incorporated as a function or an application.
[0035]
It is to be noted that a distribution destination such as a medium on which a musical sound waveform analysis program as described in the above embodiments is recorded, that is, ROM, RAM, hard disk, CD-ROM, magneto-optical disk, DVD (digital multipurpose disk), or network server computer In the storage device, the musical sound waveform analysis program according to claim 3 of the present invention is recorded. Computer readable records Corresponds to the medium.
[0036]
【The invention's effect】
As described above, the musical sound waveform analyzer of claim 1 of the present invention, the musical sound waveform analysis method of claim 2, or the claim 3 of the present invention. Computer readable According to the execution of the musical sound waveform analysis program recorded on the recording medium, the frequency spectrum of the time-series frame is obtained by performing Fourier transform processing on the musical sound waveform to be analyzed, and the peak point of the amplitude data of the analysis data in each frame Cell space with frequency and time coordinates Is defined in the cell space, and the value is reduced according to the distance defined in the cell space between the cell in the front or rear direction with respect to the center cell and the center cell. Using a template in which such an amplitude coefficient is assigned to each cell, the center of the template is superimposed on each of the peak points, and the amplitude coefficient of each cell of the template at that time is multiplied by the amplitude of the peak point, Each multiplication value obtained by the multiplication is accumulated for each cell in the cell space, and the amplitude accumulated in each cell is accumulated in the time axis direction of the frame. Since the locus of the peak point is tracked by selecting the cell following the extreme value, the accumulated value tends to take an extreme value in the cell on the route having the shortest distance between adjacent peak points. Therefore, the locus of the peak point can be tracked with high accuracy.
[Brief description of the drawings]
FIG. 1 is a block diagram of a musical sound waveform analyzer according to an embodiment of the present invention.
FIG. 2 is a flowchart of waveform analysis processing in the embodiment.
FIG. 3 is a conceptual diagram showing a state in which peak points are arranged on a frame-freq plane in the embodiment.
FIG. 4 is a conceptual diagram showing an amplitude coefficient template in the embodiment.
FIG. 5 is a conceptual diagram showing an accumulation result on a frame-freq plane in the embodiment.
FIG. 6 is a diagram illustrating an example of a time waveform of a C4 key sound of a piano according to the embodiment.
FIG. 7 is a diagram illustrating an example of a peak of a frequency spectrum according to the embodiment.
FIG. 8 is a diagram for explaining a conventional problem.
[Explanation of symbols]
1 ... CPU, 2 ... program memory, 3 ... data memory, 7 ... musical sound synthesis unit

Claims (3)

分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する楽音波形分析装置において、
周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間が設定された記憶手段と、
前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算する演算手段と、
前記演算手段によって得られた各乗算値を、前記セル空間上のセル毎に累算する累算手段と、
前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するピーク追跡手段と、を備えたことを特徴とする楽音波形分析装置。
The frequency spectrum of the time-series frame is obtained by performing Fourier transform processing on the musical sound waveform to be analyzed, the peak point of the amplitude data of the analysis data in each frame is detected, and the peak point continuous in the time axis direction of the frame In a musical sound waveform analyzer that tracks the trajectory of
Storage means in which a cell space defined by frequency coordinates and time coordinates is defined, and at least for time coordinates, a cell space defined as coordinates in units of time intervals dividing the frame into a plurality of equal parts ,
An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is temporally forward or backward with respect to the central cell and the central cell. A calculation unit that uses a template in which a coefficient is assigned to each cell, superimposes the center of the template on each of the peak points, and multiplies the amplitude coefficient of each cell of the template at that time by the amplitude of the peak point;
Accumulating means for accumulating each multiplication value obtained by the computing means for each cell in the cell space;
Peak tracking means for tracking the locus of the peak point by selecting the cell following the extreme value of the amplitude accumulated in each cell in the time axis direction of the frame. Musical sound waveform analyzer.
分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する楽音波形分析方法において、
周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間を使い、
前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振幅を乗算し、
前記乗算によって得られた各乗算値を、前記セル空間上のセル毎に累算し、
前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するようにしたことを特徴とする楽音波形分析方法。
The frequency spectrum of the time-series frame is obtained by performing Fourier transform processing on the musical sound waveform to be analyzed, the peak point of the amplitude data of the analysis data in each frame is detected, and the peak point continuous in the time axis direction of the frame In the musical sound waveform analysis method to track the trajectory of
A cell space composed of cells defined by frequency coordinates and time coordinates, and at least for time coordinates, a cell space defined as coordinates in units of time intervals dividing the frame into a plurality of equal parts is used.
An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is forward or backward in time with respect to the center cell and the center cell. Using a template in which a coefficient is assigned to each cell, the center of the template is superimposed on each of the peak points, and the amplitude coefficient of each cell of the template at that time is multiplied by the amplitude of the peak point,
Accumulating each multiplication value obtained by the multiplication for each cell in the cell space;
Musical sound waveform analysis characterized in that the locus of the peak point is traced by selecting the cell following the extreme value of the amplitude accumulated in each cell in the time axis direction of the frame. Method.
分析対象楽音波形に対してフーリエ変換処理を施して時系列なフレームの周波数スペクトルを求め、各フレームにおける分析データの振幅データのピーク点を検出し、前記フレームの時間軸方向に連続する前記ピーク点の軌跡を追跡する処理をコンピュータで実行するための楽音波形分析プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
周波数座標と時間座標とで規定されるセルからなるセル空間であって少なくとも時間座標については前記フレームを複数等分する時間間隔を単位とする座標として規定されたセル空間を使い、前記検出されたピーク点を該ピーク点の周波数とフレームに応じて前記セル空間のセルに対応付けるステップと、
該ピーク点の周囲近傍のセルに該ピーク点からの前記セル空間上で定義された距離に応じた重みで該ピーク点の振幅を設定して各セル毎に設定された振幅をそれぞれ累算するステップと、
前記セル空間上で定義され、中心のセルに対し時間的に前または後方向にあるセルと中心のセルとの間の該セル空間上で定義された距離に応じて値が小さくなるような振幅係数が各セルに割り当てられたテンプレートを用い、該テンプレートの中心を前記ピーク点のそれぞれに重ね合わせ、そのときの該テンプレートの各セルの振幅係数と該ピーク点の振 幅を乗算するステップと、
前記乗算によって得られた各乗算値を、前記セル空間上のセル毎に累算するステップと、
前記フレームの時間軸方向に、前記各セルで累算された振幅の極値に追従して該セルを選択することにより前記ピーク点の軌跡を追跡するステップと、
をコンピュータで実行する楽音波形分析プログラムを記録したコンピュータ読み取り可能な記録媒体。
The frequency spectrum of the time-series frame is obtained by performing Fourier transform processing on the musical tone waveform to be analyzed, the peak point of the amplitude data of the analysis data in each frame is detected, and the peak point continuous in the time axis direction of the frame A computer-readable recording medium on which a musical sound waveform analysis program for executing a process for tracking a trajectory of a computer is recorded,
A cell space composed of cells defined by frequency coordinates and time coordinates, and at least for time coordinates, the detected cell space is defined using coordinates defined in units of time intervals that divide the frame into a plurality of equal parts . Associating a peak point with a cell in the cell space according to the frequency and frame of the peak point;
The amplitude set for each cell is accumulated for each cell in the vicinity of the peak point by setting the amplitude of the peak point with a weight according to the distance defined in the cell space from the peak point. Steps,
An amplitude that is defined in the cell space and has a value that decreases according to the distance defined in the cell space between a cell that is temporally forward or backward with respect to the central cell and the central cell. a step of coefficients using the template assigned to each cell, the center of the template superimposed on each of the peak point, multiplying the amplitude of the amplitude coefficient and the peak point of each cell in the template at that time,
Accumulating each multiplication value obtained by the multiplication for each cell in the cell space;
Tracing the locus of the peak point by selecting the cell following the extreme value of the amplitude accumulated in each cell in the time axis direction of the frame;
A computer-readable recording medium having recorded thereon a musical sound waveform analysis program for executing on a computer .
JP07576099A 1999-03-19 1999-03-19 Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program Expired - Fee Related JP3767236B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07576099A JP3767236B2 (en) 1999-03-19 1999-03-19 Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07576099A JP3767236B2 (en) 1999-03-19 1999-03-19 Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program

Publications (2)

Publication Number Publication Date
JP2000267658A JP2000267658A (en) 2000-09-29
JP3767236B2 true JP3767236B2 (en) 2006-04-19

Family

ID=13585519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07576099A Expired - Fee Related JP3767236B2 (en) 1999-03-19 1999-03-19 Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program

Country Status (1)

Country Link
JP (1) JP3767236B2 (en)

Also Published As

Publication number Publication date
JP2000267658A (en) 2000-09-29

Similar Documents

Publication Publication Date Title
US11410637B2 (en) Voice synthesis method, voice synthesis device, and storage medium
US7117154B2 (en) Converting apparatus of voice signal by modulation of frequencies and amplitudes of sinusoidal wave components
US7999169B2 (en) Sound synthesizer
JP3649197B2 (en) Musical sound generating apparatus and musical sound generating method
JP3797283B2 (en) Performance sound control method and apparatus
JP3767236B2 (en) Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program
JP4736046B2 (en) Waveform data production method, waveform data production apparatus, program, and waveform memory production method
JP3037861B2 (en) Waveform forming device and electronic musical instrument using the output waveform
JP3521821B2 (en) Musical sound waveform analysis method and musical sound waveform analyzer
JP3741106B2 (en) Musical sound waveform analysis method and musical sound waveform analysis synthesis method
JP3644296B2 (en) Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable recording medium recording a musical sound waveform analysis program
JP5163606B2 (en) Speech analysis / synthesis apparatus and program
JP5552794B2 (en) Method and apparatus for encoding acoustic signal
JP3770127B2 (en) Waveform data editing method, waveform data editing apparatus, program, and waveform memory production method
JP3733964B2 (en) Sound source waveform synthesizer using analysis results
JP4012410B2 (en) Musical sound generation apparatus and musical sound generation method
JP3062392B2 (en) Waveform forming device and electronic musical instrument using the output waveform
JP3454147B2 (en) Musical sound waveform analyzer, musical sound waveform analysis method, and computer-readable medium recording musical sound waveform analysis program
US6235980B1 (en) Apparatus and method for generating waveform data for musical tone signal generating apparatus
JP3433673B2 (en) Music waveform analysis method and music waveform analyzer
JP3304709B2 (en) Music signal analysis method
JP2001134269A (en) Acoustic signal analysis method
JP2004077918A (en) Device, method, and program for speech synthesis
JP4172369B2 (en) Musical sound processing apparatus, musical sound processing method, and musical sound processing program
JP3779058B2 (en) Sound source system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051004

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051205

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: 20060110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060123

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: 20090210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120210

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130210

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees