JP3659121B2 - Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium - Google Patents

Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium Download PDF

Info

Publication number
JP3659121B2
JP3659121B2 JP2000079460A JP2000079460A JP3659121B2 JP 3659121 B2 JP3659121 B2 JP 3659121B2 JP 2000079460 A JP2000079460 A JP 2000079460A JP 2000079460 A JP2000079460 A JP 2000079460A JP 3659121 B2 JP3659121 B2 JP 3659121B2
Authority
JP
Japan
Prior art keywords
waveform data
signal
noise component
component
periodic
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
JP2000079460A
Other languages
Japanese (ja)
Other versions
JP2001265350A (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 JP2000079460A priority Critical patent/JP3659121B2/en
Publication of JP2001265350A publication Critical patent/JP2001265350A/en
Application granted granted Critical
Publication of JP3659121B2 publication Critical patent/JP3659121B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、電子楽器、アミューズメント機器等、楽音を発生する装置に用いられる楽音信号の分析・合成方法等に関し、特に自然楽器音を再現する電子楽器等に用いて好適な楽音信号の分析・合成方法、楽音信号合成方法、楽音信号合成装置および記録媒体に関する。
【0002】
【従来の技術】
従来より、楽音信号を生成するために波形メモリ音源が用いられている。その一種として、エンベロープ付きの複数周期波形を記録しそれを一通り読み出して楽音波形を生成するものが知られている。しかし、この方式によれば多大なメモリ容量が必要になるため、コスト的に制約のある場合には、ループ波形を記録しそれを繰返し読み出しつつエンベロープを付与する方式が採られている。
【0003】
【発明が解決しようとする課題】
ところで、自然楽器が発生する音には、その楽器特有の物理的原因によるノイズ成分が含まれており、このノイズ成分が各楽器特有の表情を生み出す一因になっている。しかし、比較的短いループサイズで自然楽器の楽音波形(ループ波形)を記録し、これを繰返し再生すると、このノイズ成分が耳につくという不具合があった。すなわち、ループ波形を繰返し再生すると、当然に同一のノイズ成分が繰返し再生されるため、本来のノイズ成分とは異なるビート音が聞こえてしまう問題があった。
【0004】
例えばサックス音の場合、ループサイズが短い場合はノイズ成分がブザーのように聞こえ、ややループサイズを大きくした程度ではジッタ−のように聞こえてしまう。このため、自然なノイズ成分を再生するためには、ループサイズを相当に大きく設定する必要がある。
この発明は上述した事情に鑑みてなされたものであり、自然なノイズ成分を楽音信号に付与できる楽音信号の分析・合成方法、楽音信号合成方法、楽音信号合成装置および記録媒体を提供することを目的としている。
【0005】
【課題を解決するための手段】
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項1記載の構成にあっては、原波形の周波数成分を分析する過程(FFT解析処理部34)と、該分析結果に基づいて、時間軸上で不連続な周波数成分であるノイズ成分(50)を抽出する過程(減算部46)と、該ノイズ成分に基づいてノイズ成分波形データ第1メモリに記憶する過程(ノイズ波形作成部48)と、前記原波形の周期成分に基づいて時間軸上で連続的な周期成分を抽出する過程(連続成分分離部36)と、該抽出した周波数成分に基づいて周期成分波形データを第2メモリに記憶する過程(波形作成部38)と、所望の音高に応じた速度で変化する読出しアドレスを発生する過程(アドレス発生部62)と、該読出しアドレスにより前記第2メモリから前記周期成分波形データを繰り返し読み出し、読み出した周期成分波形データに基づいて周期成分信号を生成する周期成分信号生成過程(周期波形発生部60)と、前記読出しアドレスが所定のトリガ値になったことを検出すると、トリガ信号を発生するトリガ信号発生過程(同期制御部102)と、該トリガ信号の発生に応じて、前記第1メモリから前記ノイズ成分波形データを読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程(ノイズ波形発生部80)と、生成した周期成分信号ノイズ成分信号とを合成する合成過程(混合&再生部112)とを有することを特徴とする。
また、請求項2記載の構成にあっては、時間軸上で不連続な周波数成分であるノイズ成分のノイズ成分波形データを記憶する第1メモリ(ノイズ成分メモリ84)と、時間軸上で連続的な周波数成分である周期成分の周期成分波形データを記憶する第2メモリ(周期成分メモリ64)とを読み出して楽音信号を合成する楽音信号合成方法において、音高に応じた速度で変化する読出しアドレスを発生する過程(アドレス発生部62)と、該読出しアドレスにより前記第2メモリから前記周期成分波形データを繰り返し読み出し、読み出した周期成分波形データに基づいて周期成分信号を生成する周期成分信号生成過程(周期波形発生部60)と、前記読出しアドレスが所定のトリガ値になったことを検出すると、トリガ信号を発生するトリガ信号発生過程(同期制御部102)と、該トリガ信号の発生に応じて、前記第1メモリから前記ノイズ成分波形データを読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程(ノイズ波形発生部80)と、生成した周期成分信号とノイズ成分信号とを合成する合成過程(混合&再生部112)とを有することを特徴とする。
また、請求項3記載の構成にあっては、時間軸上で不連続な周波数成分であるノイズ成分のノイズ成分波形データを記憶する第1メモリ(ノイズ成分メモリ84)を読み出して楽音信号を合成する楽音信号合成方法において、時間軸上で連続的な周波数成分を有する周期成分信号を生成する周期成分信号生成過程(周期波形発生部60)と、該周期成分信号の位相が所定の位相になったか否かを判定する判定過程(同期制御部102/変形例(2))と、該判定過程が前記周期成分信号の位相が所定の位相になったと判定したとき、前記ノイズ成分波形データを前記メモリから読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程(ノイズ波形発生部80)と、生成されたノイズ成分信号と前記周期成分信号とを合成して楽音信号を生成する楽音信号生成過程(混合&再生部112)とを有することを特徴とする。
さらに、請求項4記載の構成にあっては、請求項2または3記載の楽音信号合成方法において、前記第1メモリ(ノイズ成分メモリ84)は、複数種類のノイズ成分波形データを記憶するものであり、前記ノイズ成分信号生成過程においては、該複数種類のノイズ成分波形データの何れかがランダムに選択されて読み出されることを特徴とする。
さらに、請求項5記載の構成にあっては、請求項2または3記載の楽音信号合成方法において、前記ノイズ成分信号生成過程において読み出されたノイズ成分波形データに対して、フィルタ係数に基づくフィルタ処理を施す過程(オールパスフィルタ85)と、該フィルタ係数をランダムに設定する過程(係数発生器87)とをさらに有することを特徴とする。
さらに、請求項6記載の構成にあっては、請求項2ないし5の何れかに記載の楽音信号合成方法において、前記第1メモリ(ノイズ成分メモリ84)は、前記周期成分の1周期長の前記ノイズ成分波形データを記憶するものであることを特徴とする。
また、請求項7記載の構成にあっては、請求項1ないしの何れかに記載の方法を実行することを特徴とする。
また、請求項8記載の構成にあっては、請求項1ないしの何れかに記載の方法を実行するプログラムを記憶することを特徴とする。
【0006】
【発明の実施の形態】
1.第1実施形態
1.1.実施形態の原理
(1)自然楽器の楽音波形に含まれるノイズ成分
ここで、各種の自然楽器におけるノイズ成分の発生メカニズムを説明しておく。
まず、サックスを演奏すると、共鳴管の振動によってリードがマウスピースにぶつかるために、「バチバチ」というノイズが発生する。このノイズはリードの動きの1周期に1回(ないし数回)発生する。そこで、このノイズは、リードの動きの周期すなわち波形の周期に応じて発生していることが解る。
【0007】
また、フルートを演奏すると、演奏者の吹き込んだ息が歌口にぶつかるときに乱気流が生じ、エッジノイズが発生する。これも、フルート自体の振動に関連するため、波形の周期とノイズとの間に関連性が生ずる。また、バイオリン等の擦弦楽器においては、弓が弦にスティックした状態ではノイズが発生しにくく、スリップした時に大きなノイズが発生する。このノイズもスリップ、スティックの周期、すなわち波形の周期に応じたノイズである。
【0008】
(2)ノイズ成分の詳細
自然楽器の楽音波形をFFT(高速フーリエ変換)解析すると、この楽音波形の周波数成分は時間軸上で連続した周波数成分と、時間軸上で断続した周波数成分とに分離できる。そして、前者の周波数成分に基づいて波形合成すると楽音波形の「周期成分」が得られ、後者の周波数成分に基づいて波形合成すると楽音波形の「ノイズ成分(ビート音成分)」が得られる。
【0009】
その一例を図1に示す。同図(a)はサックスの楽音波形(元波形)である。同図(b)はその周期成分、同図(c)はそのノイズ成分である。そして、図1(a)〜(c)を時間軸上で拡大した図を図2(a)〜(c)に示す。図2(b)において周期成分のピッチを求め、このピッチ周期毎にノイズ成分を切り分けると、同図(c)においてノイズ成分(ビート音成分)N1〜N4が得られる。
【0010】
これらノイズ成分N1〜N4を振幅軸上および時間軸上でさらに拡大した波形を図3(a)〜(d)に示す。図3(a)〜(d)において横軸は、各周期におけるサンプル数を示す。これらの図を比較すると、170〜190サンプルあたりにノイズ成分のピークが存在し、その後にノイズ成分が減少してゆくことが解る。
【0011】
1.2.実施形態のハードウエア構成
次に、本発明の第1実施形態による波形分析/合成システムのハードウエア構成を図4を参照し説明する。なお、本実施形態のハードウエアは汎用のパーソナルコンピュータによって構成されている。
【0012】
図において18はMIDI_I/Oボードであり、外部のMIDI機器との間でMIDI信号をやりとりする。20はCPUであり、後述する制御プログラムに基づいて、バス16を介して波形分析/合成システム内の各部を制御する。22はROMであり、イニシャルプログラムローダ等が格納されている。24はRAMであり、CPU20のワークメモリとして使用される。26はハードディスクであり、オペレーティングシステム、波形分析/合成システムのアプリケーションプログラム、および波形データその他各種のデータを格納する。
【0013】
2はネットワークI/Oボードであり、外部のネットワークに対して各種情報のやりとりを行う。4は表示器であり、CPU20の制御の下、ユーザに対して各種情報を表示する。6は操作子であり、キーボード、マウス、鍵盤等から構成され、CPU20に対して各種の情報を入力する。8はFs(サンプリング周波数)発生器であり、CPU20から指示された周波数のサンプリングクロックを生成する。
【0014】
10はサウンドI/Oボードであり、外部から入力されたアナログの楽音波形を該サンプリングクロックに同期してサンプリングしデジタルの楽音波形に変換する一方、供給されたデジタルの波形データをアナログ信号に変換し出力する。このアナログ信号は、サウンドシステム12を介して発音される。14はDMAコントローラであり、CPU20を介さずにサウンドI/Oボード10とRAM24との間でデジタルの波形データを転送する。
【0015】
1.3.実施形態の動作
1.3.1.波形データ作成処理
パーソナルコンピュータ上でオペレーティングシステムを立ち上げ、さらに波形分析/合成システムのアプリケーションプログラムを立ち上げた後、ユーザが所定の操作を行うと、波形データ作成処理が実行される。その処理の詳細を図5を参照し説明する。なお、同図はCPU20内で実行される処理(プログラム)の内容を機能ブロック図で示したものである。
【0016】
図において32は波形録音部であり、外部からサウンドI/Oボード10を介して入力された波形データ30をRAM24内に格納する。34はFFT解析処理部であり、この波形データ30に対してFFT解析処理を行う。ここでは、まず原波形データに対して、そのピッチ周期8倍の長さの窓関数が施され、該窓関数の範囲内における周波数成分が解析される。
【0017】
次に、窓関数の位置が時間軸上で該ピッチ周期の1/8だけ後ろにシフトされ、同様に周波数成分が解析される。この処理が原波形データ全体に対して繰り返えされると、時間軸上における周波数成分の変化が得られる。このようにして得られた一連の周波数成分は、時間軸上で連続している成分(決定論的周波数成分)と、それ以外の切れ切れの成分とに分類される。
【0018】
36は連続成分分離部であり、解析された各周波数成分の連続性に応じて、かかる分類を行う。44は波形合成部であり、これら周波数成分のうち決定論的周波数成分のみに基づいて決定論的波形データ(すなわち図1(b),図2(b)の周期成分波形データ)を出力する。次に、46は減算部であり、原波形データから決定論的波形データを減算する。この減算結果は図1(c),図2(c)におけるノイズ成分に相当する。
【0019】
48はノイズ波形作成部であり、減算部46の減算結果すなわちノイズ成分を、決定論的波形データの周期の整数倍の長さ毎に切り出し、その結果をノイズ成分波形データ50としてRAM24に記憶する。なお、ノイズ成分波形データ50の長さや数は、後述する波形合成処理の内容に応じて異なる。
【0020】
また、40はピッチ検出部であり、FFT解析処理部34の解析結果に基づいて原波形データのピッチを検出する。次に、42はアドレス設定部であり、検出されたピッチに基づいて、周期成分波形データのための各種アドレスを決定する。ここで決定されるアドレスは、例えば、波形再生の最初に1回だけ読み出されるアタック部の先頭を示すアタックスタートアドレス、その後に繰返し読み出されるループ部の先頭および終端を示すループスタートアドレスおよびループスエンドアドレス等である。
【0021】
次に、38は波形作成部であり、決定論的周波数成分およびアドレス設定部42において決定された各アドレスに基づいて、アタック部およびループ部の波形データを作成する。作成された波形データは周期成分波形データ52としてRAM24に記憶される。波形合成部44と波形作成部38では、いずれも決定論的周波数成分に基づいて波形データが作成されているが、波形作成部38ではアタック部とループ部から構成される波形データを作成するため、波形合成部44で作成される波形データとは多少異なる波形データとなっている。
【0022】
すなわち、ループ部の波形データにはループの繰返し周期の整数倍の周波数成分(ループ調和成分と呼ぶ)しか含めることができない。そこで、波形作成部38では以下のような方法でアタック部とループ部の波形データを作成している。まず、アタック部の波形データについては、決定論的周波数成分の中のループ調和成分に該当しない周波数成分について、アタック部の途中からアタック部の終わりにかけて徐々にフェードアウトするように加工し、その加工が行われた決定論的周波数成分により作成する。そして、ループ部の波形データは、決定論的周波数成分の中のループ調和成分に該当する周波数成分のみを選択的に使用して作成する。このようにして作成されたアタック部とループ部の波形データは、波形合成部44において作成される決定論的波形データと極めて類似した音色であり、かつ、ループエンドからループスタートへのつながりの良い波形データとなっている。
【0023】
1.3.2.波形合成処理
波形データが作成された後、操作子6またはMIDI_I/Oボード18を介してMIDIイベントが入力されると、これに基づいて楽音波形が合成される。また、ネットワークI/Oボード2等を介して供給されたSMF(スタンダードMIDIフォーマット)ファイルを再生する場合においても、そのイベント情報に基づいて楽音波形が合成される。この波形合成処理の機能ブロック図を図6に示す。
【0024】
図において60は周期波形発生部であり、周期成分波形データ52を記憶した周期成分メモリ64と、この周期成分メモリ64の読出しアドレスを発生させるアドレス発生部62と、アドレス発生部62から読み出された波形データに補間処理を施す補間部66とから構成されている。
【0025】
アドレス発生部62は、アタックスタートアドレスから周期成分メモリ64の読出しを開始し、読出しアドレスがループスエンドアドレスにまで達すると、読出しアドレスをループスタートアドレスに戻し、その後はループスタートアドレスないしループエンドアドレス間を繰返し読み出す。読出し速度は、音高すなわちFナンバにより制御される。
【0026】
なお、ループスタートアドレスからループエンドアドレスまでの長さは、一ないし数周期程度(ショートループ)である。一般的に、楽音波形は音域毎に異なるため、周期成分メモリ64には、音域(例えば低音域、中音域、高音域)毎に異なる周期成分波形データ52が記憶されている。そして、再生される波形データは、上記Fナンバに応じて決定される。
【0027】
80はノイズ波形発生部であり、周期波形発生部60と同様にノイズ成分波形データ50を記憶したノイズ成分メモリ84と、このノイズ成分メモリ84の読出しアドレスを発生させるアドレス発生部82と、アドレス発生部82から読み出された波形データに補間処理を施す補間部86とから構成されている。
【0028】
アドレス発生部82は、所定のトリガ信号が供給されると、スタートアドレス乃至エンドアドレス間の波形データを1回だけ読み出す。その後、トリガ信号が入力されるまで処理が待機し、トリガ信号が供給される毎にスタートアドレス乃至エンドアドレス間の波形データを1回づつ読み出す。
【0029】
102は同期制御部であり、アドレス発生部62が発生するアドレスを監視し、これが所定のトリガ値になると(換言すれば、周期成分波形が所定の位相になると)、上記トリガ信号をアドレス発生部82に供給する。これにより、ノイズ成分波形データは周期成分波形データに同期して生成されることになる。
【0030】
ところで、ノイズ成分波形データ50の1周期あたりの波形の例は図3(a)〜(d)に示した通りであるが、上述したようにノイズ成分波形には170〜190サンプルあたりにピークが存在する。この場合、上記ピークの部分がノイズ成分波形データの先頭に位置するように予め位相をずらしておく方が好適である。
【0031】
これにより、「ノイズ成分波形データの先頭にはそのピークが存在する」との共通認識が形成されるため、同期制御部102に設定する「トリガ値」と付与されるノイズ成分との関係を直感的に把握することができる。このように、ピークの部分が先頭に位置するように位相が設定されたノイズ成分波形データと、周期成分波形データと、トリガ信号との関係を図11に示しておく。
【0032】
114は乱数発生部であり、アドレス発生部82において使用される乱数を発生させる。ここで、ノイズ成分波形データ50のスタートアドレスからエンドアドレスまでの長さは、ピッチに対して数十倍程度確保されている。これは、従来技術について説明した通り、ループサイズが短い場合はノイズ成分がブザーのように聞こえ、ややループサイズを大きくした程度ではジッタのように聞こえてしまうからである。
【0033】
本実施形態においては、ノイズ成分波形データ50は、周期成分波形データ52の音域(例えば低音域、中音域、高音域)に対して一対一の音域毎に記憶されている。そして、Fナンバに応じて、各音域に対応するノイズ成分波形データ50が読み出される。104,108はフィルタ部であり、生成された周期成分信号およびノイズ成分信号に対して各々フィルタリング処理を施す。
【0034】
106,110はレベル制御部であり、フィルタリング処理後の信号のレベル調節を行う。112は混合&再生部であり、レベル調整された両信号を混合し、楽音信号として出力する。これにより、該楽音信号は、サウンドI/Oボード10、サウンドシステム12を介して発音される。本実施形態においては、周期成分波形データが所定の位相になるときに、該周期成分波形より充分に長いノイズ波形データをトリガすることで、該周期成分波形に対してその位相に同期し、かつ、ブザーのような周期感の無い、自然なノイズを付与することができる。
【0035】
2.第2実施形態
次に、本発明の第2実施形態について説明する。第2実施形態のハードウエア構成およびソフトウエア構成は、第1実施形態と同様である。
但し、ノイズ成分波形データ50としては各音域毎に複数種類(1音域につき4〜6種類程度)づつ記憶されており、1個のノイズ成分波形データ50の長さは1周期である。アドレス発生部82は、同期制御部102からトリガ信号が供給される毎に、その時点のFナンバに基づいて音域を判別する。
【0036】
そして、乱数発生部114の出力に基づいて、当該音域内のノイズ成分波形データ50の中から何れかをランダムに選択して再生する。本実施形態においては、第1実施形態と比較してノイズ成分メモリ84の所要メモリ容量を大幅に削減できるが、複数のノイズ成分波形データ50がランダムに選択されるため、ノイズ成分がブザーやジッタのように聞こえるような不具合を防止でき、自然なノイズ成分を楽音信号に付与することができる。すなわち、本実施形態においては、周期成分波形が所定の位相になるときに、複数のノイズ成分波形データからランダムに選択されたノイズ成分波形データを読み出すようになっているため、該ノイズ成分波形データが周期成分の周期と同程度の短い波形データであっても、第1実施形態と同様に、周期成分波形に対してその位相に同期し、かつ、ブザーのような周期感の無い、自然なノイズを付与することができる。
【0037】
3.第3実施形態
次に、本発明の第3実施形態について説明する。第3実施形態のハードウエア構成およびソフトウエア構成は、第2実施形態と同様である。
但し、ノイズ成分波形データ50は、音量(またはベロシティ)範囲毎にさらに複数のグループに分類されている。すなわち、音域を3グループ(低音域、中音域、高音域)に分け、音量を3グループ(弱、中、強)に分類した場合には、ノイズ成分波形データ50は全体で9グループに分類されることになる。また、周期成分波形データ52も音域および音量に応じた種類だけ記憶されている。
【0038】
そして、各グループ毎に4〜6種類程度のノイズ成分波形データ50が記憶されることになる。本実施形態においても、1個のノイズ成分波形データ50の長さは1周期である。アドレス発生部82は、同期制御部102からトリガ信号が供給される毎に、その時点のFナンバおよび音量に基づいて何れかのグループを選択する。
【0039】
そして、乱数発生部114の出力に基づいて、そのグループ内のノイズ成分波形データ50の中から何れかをランダムに選択して再生することになる。従って、本実施形態においては、第2実施形態と同様に、ノイズ成分波形データが周期成分の周期と同程度の短い波形データであっても、周期成分波形に対してその位相に同期し、かつ、ブザーのような周期感の無い、自然なノイズを付与することができる。さらに、本実施形態においては、音域および音量の相違に基づいてノイズ成分波形データ50が選択されるから、周期成分波形の音域や音量に応じて変化するような一層自然なノイズ成分を楽音信号に付与することが可能である。
【0040】
4.第4実施形態
次に、本発明の第4実施形態について説明する。第4実施形態のハードウエア構成およびソフトウエア構成は、第2実施形態と同様である。
但し、第2実施形態におけるノイズ波形発生部80に代えて、図7に示すノイズ波形発生部81が設けられる。図7においてノイズ成分メモリ84には、各音域毎に1個づつ、1周期長のノイズ成分波形データ50が記憶されている。
【0041】
そして、アドレス発生部82にトリガ信号が供給されると、各時点におけるFナンバに基づいて何れか一つのノイズ成分波形データ50が読み出される。85はオールパスフィルタであり、読み出されたノイズ成分波形データ50の全帯域を通過させるが、フィルタ係数に基づいて各帯域毎に位相特性(遅延量)を異ならせる。87は係数発生器であり、乱数発生部114の出力に基づいて、上記フィルタ係数をランダムに設定する。
【0042】
従って、オールパスフィルタ85を介して出力されるノイズ成分信号の波形は、同一のノイズ成分波形データ50に基づく場合においても、その時々の位相特性に基づいてランダムに変化する。これにより、本実施形態においても、ノイズ成分波形データが周期成分の周期と同程度の短い波形データであっても、周期成分波形に対してその位相に同期し、かつ、ブザーのような周期感の無い、自然なノイズを付与することができる。なお、第3実施形態と同様に、音域に加えて音量に応じて波形データを切り換えるようにしてもよい。
【0043】
5.第5実施形態
次に、本発明の第5実施形態について説明する。第5実施形態のハードウエア構成およびソフトウエア構成は、第2実施形態と同様である。但し、第2実施形態における波形データ作成処理(図5)および波形合成処理(図6)の内容は、各々図8および図9に示すように変形されている。
【0044】
図8において54はピッチ成分位相抽出部であり、決定論的周波数成分のピッチ成分を監視し、その位相を検出する。ここで、「ピッチ成分の位相」についてさらに詳細を説明しておく。FFT解析処理部34によって検出されるピッチ成分には、位相(または周波数)の「ゆらぎ」が存在する。
【0045】
この「ゆらぎ」は、FFT解析処理部34に用いられる窓関数の幅を大きくすると、ピッチ成分のサイドローブとして観察することができる。しかし、本実施形態においては、窓関数幅はピッチ周期の8倍程度であるから、例えばFFT解析結果をスペクトルアナライザ等で観察すると、窓関数の位置をシフトしてゆくに従ってピッチ成分がゆらぐ様子を観察することができる。
【0046】
ここで、ピッチ成分の位相の「ゆらぎ」の例を図10に示しておく。ピッチ成分位相抽出部54は、図10の特性を各ピッチ周期T毎に切り取り、数個(4〜6個)程度のピッチ成分位相データD1,D2,……,Dnを作成する。
【0047】
次に、図9において83はノイズ波形発生部であり、第2実施形態のノイズ波形発生部81と比較すると、アドレス発生部82とノイズ成分メモリ84との間にアドレスLUT(ルックアップテーブル)89が介挿されている点で異なる。また、ノイズ成分メモリ84においては、第4実施形態と同様に、各音域毎に1個づつ、1周期長のノイズ成分波形データ50が記憶されている。
【0048】
第4実施形態と同様に、アドレス発生部82にトリガ信号が供給されると、各時点におけるFナンバに基づいて何れか一つのノイズ成分波形データ50が読み出すためのアドレス信号がアドレス発生部82から出力される。アドレスLUT89においては、予めピッチ成分位相データD1,D2,……,Dnが記憶されており、そのうち何れかが乱数発生部114の出力によってランダムに選択される。
【0049】
すなわち、アドレスLUT89においては、図10の横軸における「ピッチ周期T」および縦軸における「位相2π」が共に「ピッチ周期のサンプル数」に対応するようにピッチ成分位相データがフォーマットされている。そして、アドレス発生部82から供給されたリニアな(鋸歯状波状の)アドレス信号に対して、図10に示したようなゆらぎが付与され、その結果が最終的なアドレス信号としてノイズ成分メモリ84に供給されることになる。
【0050】
このように本実施形態においては、ノイズ成分メモリ84において同一のノイズ成分波形データが読み出される場合においても、その読出しアドレスの生成に用いられるピッチ成分位相データD1,D2,……,Dnがランダムに変化するから、その時々の位相に基づいてノイズ成分信号はランダムに変化する。これにより、本実施形態においても、ノイズ成分波形データが周期成分の周期と同程度の短い波形データであっても、周期成分波形に対してその位相に同期し、かつ、ブザーのような周期感の無い、自然なノイズを付与することができる。なお、第3実施形態と同様に、音域に加えて音量に応じて波形データを切り換えるようにしてもよい。
【0051】
6.変形例
本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。
(1)第1および第2実施形態においては、音域(例えば低音域、中音域、高音域)毎にノイズ成分波形データ50および周期成分波形データ52を設けたが、周期成分波形データ52のみを音域毎に設け、ノイズ成分波形データ50は全音域において共通にしてもよい。これは、ノイズ成分波形データ50の音域毎の相違は、比較的感知されにくいことに基づくものである。
【0052】
(2)第2実施形態等においては、ノイズ成分波形データを読み出す速度は任意であり、周期成分波形のピッチとは独立に制御してもよい。
(3)第2実施形態等では、ノイズ成分波形データの長さを周期成分波形の1周期分としたが、2周期分、3周期分あるいは半周期分等、任意の長さとしてよい。但し、周期成分波形と同期したノイズであるため、周期成分波形の周期長と関連した長さにしておくと好適である。
【0053】
(4)第2実施形態では、各音域毎に複数種類のノイズ成分波形データを記憶したが、音域毎の複数種類のノイズ成分波形データのうち一部の波形データを、異なる音域間で共通に使用するようにしてもよい。同様に、第3実施形態においては、各グループ毎に複数種類のノイズ成分波形データを記憶したが、グループ毎の複数種類のノイズ成分波形データのうち一部の波形データを、異なるグループ間で共通に使用するようにしてもよい。
【0054】
(5)第2実施形態等の同期制御部102では、アドレス発生部62のアドレス(周期成分波形の位相)が所定のトリガ値になるタイミングでトリガ信号を発生しているが、前記トリガ値に小さな乱数を加える等の方法によりそのタイミングを多少揺らすようにしてもよい。すなわち、周期成分波形の波形周期の中で、トリガの発生する位相が例えば0〜20%程度ゆれるようにしてもよい。これは、自然楽器のノイズの発生タイミングにもゆらぎがあるからである。
【0055】
(6)上記各実施形態においては、周期成分信号を波形メモリ音源によって構成したが、周期成分信号はFM音源、物理モデル音源等、様々な音源方式を用いて良いことは言うまでもない。また、各実施形態において同期制御部102は周期波形発生用のアドレス発生部62が発生するアドレスを監視し、これが所定のトリガ値になるとトリガ信号を発生していた。
【0056】
しかし、トリガ信号を発生させる契機はこのアドレス値に限定されるものではなく、例えば周期成分信号のレベルや傾き等が所定の状態になった時にトリガ信号を発生するようにしてもよい。これは、周期波形発生部60として波形メモリ音源以外の音源方式を採用する場合に特に好適である。
【0057】
(7)上記各実施形態はハードウエア上で動作するソフトウエアによって波形分析/合成システムを実現したが、図4〜図9に示す各構成要素をハードウエアによって実現し、各種の電子楽器、その他アミューズメント機器に使用してもよい。また、上記実施形態に用いられるソフトウエアをCD−ROM、フロッピーディスク等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。
【0058】
【発明の効果】
以上説明したように本発明によれば、時間軸上で連続的な周波数成分を有する周期成分信号を生成し、これにノイズ成分を付加するから、自然なノイズ成分を楽音信号に付与することが可能である。
【図面の簡単な説明】
【図1】 サックスの楽音波形の分析結果を示す波形図である。
【図2】 図1を時間軸上で拡大した波形図である。
【図3】 図2(c)のノイズ成分を周期成分のピッチ周期毎に切り分けた波形図である。
【図4】 本発明の各実施形態における波形分析/合成システムのハードウエアブロック図である。
【図5】 本発明の第1〜第4実施形態における波形データ作成処理のブロック図である。
【図6】 第1実施形態における波形合成処理のブロック図である。
【図7】 第2実施形態におけるノイズ波形発生部81のブロック図である。
【図8】 第5実施形態における波形データ作成処理のブロック図である。
【図9】 第5実施形態における波形合成処理のブロック図である。
【図10】 第5実施形態におけるノイズ波形発生部83の動作説明図である。
【図11】 ノイズ成分波形データと、周期成分波形データと、トリガ信号との関係を示す図である。
【符号の説明】
20……CPU、22……ROM、24……RAM、26……ハードディスク、30……波形データ、32……波形録音部、34……FFT解析処理部、36……連続成分分離部、38……波形作成部、40……ピッチ検出部、42……アドレス設定部、44……波形合成部、46……減算部、48……ノイズ波形作成部、50……ノイズ成分波形データ、52……周期成分波形データ、54……ピッチ成分位相抽出部、60……周期波形発生部、62……アドレス発生部、64……周期成分メモリ、66……補間部、80,81,83……ノイズ波形発生部、82……アドレス発生部、84……ノイズ成分メモリ、85……オールパスフィルタ、86……補間部、87……係数発生器、102……同期制御部、112……混合&再生部、114……乱数発生部。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method for analyzing and synthesizing a musical sound signal used in an apparatus for generating musical sounds, such as an electronic musical instrument and an amusement device, and more particularly to analyzing and synthesizing a musical sound signal suitable for an electronic musical instrument that reproduces a natural musical instrument sound. The present invention relates to a method, a musical tone signal synthesis method, a musical tone signal synthesis apparatus, and a recording medium.
[0002]
[Prior art]
Conventionally, a waveform memory sound source has been used to generate a musical sound signal. As one type, there is known one that records a plurality of periodic waveforms with an envelope and reads them out to generate a musical sound waveform. However, since this method requires a large memory capacity, when there is a cost limitation, a method is adopted in which an envelope is given while recording a loop waveform and repeatedly reading it out.
[0003]
[Problems to be solved by the invention]
By the way, the sound generated by a natural musical instrument includes a noise component due to a physical cause specific to the musical instrument, and this noise component contributes to the expression unique to each musical instrument. However, when a musical instrument sound waveform (loop waveform) is recorded with a relatively short loop size and reproduced repeatedly, there is a problem that this noise component is heard. That is, when the loop waveform is repeatedly reproduced, naturally, the same noise component is repeatedly reproduced, so that there is a problem that a beat sound different from the original noise component can be heard.
[0004]
For example, in the case of a saxophone sound, when the loop size is short, the noise component sounds like a buzzer, and when the loop size is slightly increased, it sounds like jitter. For this reason, in order to reproduce a natural noise component, it is necessary to set the loop size to be considerably large.
The present invention has been made in view of the above-described circumstances, and provides a tone signal analysis / synthesis method, a tone signal synthesis method, a tone signal synthesis apparatus, and a recording medium that can add a natural noise component to a tone signal. It is aimed.
[0005]
[Means for Solving the Problems]
  In order to solve the above problems, the present invention is characterized by having the following configuration. The parentheses are examples.
  In the configuration according to claim 1, the process of analyzing the frequency component of the original waveform (FFT analysis processing unit 34), and the noise component (discontinuous frequency component on the time axis) based on the analysis result ( 50) extracting (subtracting unit 46) and the noise componentBased on noise component waveform dataTheFirstA process of storing in a memory (noise waveform creation unit 48);A process of extracting continuous periodic components on the time axis based on the periodic components of the original waveform (continuous component separating unit 36), and periodic component waveform data is stored in the second memory based on the extracted frequency components. A process (waveform generator 38), a process of generating a read address that changes at a speed corresponding to a desired pitch (address generator 62), and the periodic component waveform data from the second memory is repeated using the read address. Read, based on the read periodic component waveform dataA periodic component signal generation process (periodic waveform generator 60) for generating a periodic component signal;When it is detected that the read address has reached a predetermined trigger value, a trigger signal generation process (synchronization control unit 102) for generating a trigger signal and the noise component from the first memory according to the generation of the trigger signal A noise component signal generation process (noise waveform generator 80) for reading waveform data and generating a noise component signal based on the read noise component waveform data;Generated periodic component signalWhenNoise component signalProcess of synthesizing(Mixing & Reproducing Unit 112).
  Moreover, in the structure of Claim 2,A first memory (noise component memory 84) that stores noise component waveform data of noise components that are discontinuous frequency components on the time axis, and periodic component waveform data of periodic components that are continuous frequency components on the time axis In a musical sound signal synthesis method for reading out a second memory (periodic component memory 64) for storing a musical sound signal and synthesizing a musical sound signal, a process of generating a read address that changes at a speed corresponding to the pitch (address generator 62); A periodic component signal generation process (periodic waveform generator 60) for repeatedly reading the periodic component waveform data from the second memory by the read address and generating a periodic component signal based on the read periodic component waveform data; and the read address Trigger signal generation process (synchronization control unit 102) for generating a trigger signal when it is detected that has reached a predetermined trigger value; A noise component signal generation process (noise waveform generator 80) that reads the noise component waveform data from the first memory in response to generation of a trigger signal and generates a noise component signal based on the read noise component waveform data; A synthesis process (mixing and reproducing unit 112) for synthesizing the generated periodic component signal and noise component signal;It is characterized by having.
  Moreover, in the structure of Claim 3,In a tone signal synthesis method for synthesizing a tone signal by reading out a first memory (noise component memory 84) that stores noise component waveform data of a noise component that is a discontinuous frequency component on the time axis,A periodic component signal generation process (periodic waveform generator 60) for generating a periodic component signal having a continuous frequency component on the time axis, and the periodic component signalWhether or not the phase of the current has reached the specified phaseDetermination process (synchronization control unit 102 / modification (2)),When the determination process determines that the phase of the periodic component signal has reached a predetermined phase,The noise componentWaveform dataRead from the memoryNoise component signal generation that generates a noise component signal based on the read noise component waveform dataProcess (noise waveform generator 80);The generated noise component signal andThe periodic component signalTo generate a musical sound signalAnd a musical tone signal generation process (mixing and reproducing unit 112).
  Further, in the configuration according to claim 4, the claim2 or 3In the described musical sound signal synthesis method,The first memory (noise component memory 84) stores a plurality of types of noise component waveform data, and the noise component signal generation processThe plurality of types of noise componentsWaveform dataAny one of these is randomly selected and read.
  Furthermore, in the configuration according to claim 5,2 or 3In the musical sound signal synthesis method described above,Noise component signal generationNoise component read out in the processWaveform dataOn the other hand, the method further includes a step of performing filter processing based on the filter coefficient (all-pass filter 85) and a step of randomly setting the filter coefficient (coefficient generator 87).
  Furthermore, in the configuration according to claim 6, in the musical sound signal synthesis method according to any one of claims 2 to 5,The first memory (noise component memory 84) stores the noise component waveform data having one cycle length of the cycle component.
  Further, in the configuration according to claim 7, claims 1 to6The method according to any one of the above is executed.
  Moreover, in the structure of Claim 8, it is Claim 1 thru | or.6A program for executing the method described in any one of the above is stored.
[0006]
DETAILED DESCRIPTION OF THE INVENTION
1. First embodiment
1.1. Principle of the embodiment
(1) Noise components included in the musical sound waveform of natural musical instruments
Here, the generation mechanism of noise components in various natural musical instruments will be described.
First, when a saxophone is played, the reed hits the mouthpiece due to the vibration of the resonance tube, so that a noise called “beeps” is generated. This noise occurs once (or several times) in one cycle of lead movement. Thus, it can be seen that this noise is generated according to the period of the movement of the lead, that is, the period of the waveform.
[0007]
Also, when the flute is played, turbulence is generated when the breath blown by the performer hits the singing mouth, and edge noise is generated. Since this is also related to the vibration of the flute itself, there is a relationship between the period of the waveform and the noise. Further, in a bowed instrument such as a violin, noise hardly occurs when a bow sticks to a string, and a large noise occurs when slipping. This noise is also noise corresponding to the slip and stick cycle, that is, the waveform cycle.
[0008]
(2) Details of noise components
When the musical sound waveform of a natural musical instrument is subjected to FFT (Fast Fourier Transform) analysis, the frequency component of the musical sound waveform can be separated into a frequency component that is continuous on the time axis and a frequency component that is intermittent on the time axis. When a waveform is synthesized based on the former frequency component, a “sound component (beat sound component)” of a musical sound waveform is obtained when a waveform is synthesized based on the latter frequency component.
[0009]
An example is shown in FIG. FIG. 4A shows a musical sound waveform (original waveform) of a saxophone. FIG. 4B shows the periodic component, and FIG. 4C shows the noise component. And the figure which expanded Fig.1 (a)-(c) on the time-axis is shown to Fig.2 (a)-(c). When the pitch of the periodic component is obtained in FIG. 2 (b) and the noise component is divided for each pitch period, noise components (beat sound components) N1 to N4 are obtained in FIG. 2 (c).
[0010]
Waveforms obtained by further expanding these noise components N1 to N4 on the amplitude axis and the time axis are shown in FIGS. 3A to 3D, the horizontal axis indicates the number of samples in each period. Comparing these figures, it can be seen that there is a peak of the noise component around 170 to 190 samples, and then the noise component decreases.
[0011]
1.2. Hardware configuration of the embodiment
Next, the hardware configuration of the waveform analysis / synthesis system according to the first embodiment of the present invention will be described with reference to FIG. Note that the hardware of this embodiment is configured by a general-purpose personal computer.
[0012]
In the figure, reference numeral 18 denotes a MIDI_I / O board which exchanges MIDI signals with external MIDI devices. A CPU 20 controls each unit in the waveform analysis / synthesis system via the bus 16 based on a control program described later. A ROM 22 stores an initial program loader and the like. A RAM 24 is used as a work memory for the CPU 20. A hard disk 26 stores an operating system, an application program for a waveform analysis / synthesis system, waveform data, and other various data.
[0013]
A network I / O board 2 exchanges various information with an external network. Reference numeral 4 denotes a display that displays various types of information to the user under the control of the CPU 20. Reference numeral 6 denotes an operator, which includes a keyboard, a mouse, a keyboard, and the like, and inputs various types of information to the CPU 20. Reference numeral 8 denotes an Fs (sampling frequency) generator, which generates a sampling clock having a frequency designated by the CPU 20.
[0014]
Reference numeral 10 denotes a sound I / O board which samples an analog musical sound waveform input from the outside in synchronization with the sampling clock and converts it into a digital musical sound waveform, while converting the supplied digital waveform data into an analog signal. Then output. This analog signal is generated via the sound system 12. A DMA controller 14 transfers digital waveform data between the sound I / O board 10 and the RAM 24 without using the CPU 20.
[0015]
1.3. Operation of the embodiment
1.3.1. Waveform data creation process
When the operating system is started up on the personal computer and the application program of the waveform analysis / synthesis system is started up, and the user performs a predetermined operation, the waveform data creation process is executed. Details of the processing will be described with reference to FIG. FIG. 2 is a functional block diagram showing the contents of processing (program) executed in the CPU 20.
[0016]
In the figure, reference numeral 32 denotes a waveform recording unit, which stores waveform data 30 input from the outside via the sound I / O board 10 in the RAM 24. Reference numeral 34 denotes an FFT analysis processing unit, which performs FFT analysis processing on the waveform data 30. Here, first, a window function having a length of 8 times the pitch period is applied to the original waveform data, and a frequency component within the range of the window function is analyzed.
[0017]
Next, the position of the window function is shifted backward by 1/8 of the pitch period on the time axis, and the frequency component is similarly analyzed. When this process is repeated for the entire original waveform data, a change in frequency component on the time axis is obtained. The series of frequency components obtained in this way is classified into components that are continuous on the time axis (deterministic frequency components) and other components that are not cut off.
[0018]
A continuous component separation unit 36 performs such classification according to the continuity of each analyzed frequency component. A waveform synthesis unit 44 outputs deterministic waveform data (that is, periodic component waveform data in FIGS. 1B and 2B) based only on the deterministic frequency component among these frequency components. Next, 46 is a subtracting unit that subtracts deterministic waveform data from the original waveform data. This subtraction result corresponds to the noise component in FIGS. 1 (c) and 2 (c).
[0019]
Reference numeral 48 denotes a noise waveform generation unit, which extracts a subtraction result of the subtraction unit 46, that is, a noise component, every length that is an integral multiple of the period of deterministic waveform data, and stores the result in the RAM 24 as noise component waveform data 50. . Note that the length and number of the noise component waveform data 50 differ depending on the contents of the waveform synthesis processing described later.
[0020]
Reference numeral 40 denotes a pitch detection unit that detects the pitch of the original waveform data based on the analysis result of the FFT analysis processing unit 34. Next, reference numeral 42 denotes an address setting unit that determines various addresses for periodic component waveform data based on the detected pitch. The address determined here is, for example, an attack start address indicating the beginning of the attack portion read only once at the beginning of waveform reproduction, and a loop start address and a loop end address indicating the beginning and end of the loop portion that are repeatedly read thereafter. Etc.
[0021]
Next, reference numeral 38 denotes a waveform creation unit which creates waveform data of the attack unit and the loop unit based on the deterministic frequency component and each address determined by the address setting unit 42. The created waveform data is stored in the RAM 24 as periodic component waveform data 52. The waveform synthesis unit 44 and the waveform creation unit 38 both create waveform data based on deterministic frequency components, but the waveform creation unit 38 creates waveform data composed of an attack unit and a loop unit. The waveform data is slightly different from the waveform data created by the waveform synthesis unit 44.
[0022]
That is, the waveform data of the loop part can contain only frequency components (referred to as loop harmonic components) that are integral multiples of the loop repetition period. Therefore, the waveform creation unit 38 creates waveform data of the attack part and the loop part by the following method. First, the waveform data of the attack part is processed so that the frequency component not corresponding to the loop harmonic component in the deterministic frequency component is gradually faded out from the middle of the attack part to the end of the attack part. Created by the deterministic frequency component performed. The waveform data of the loop part is created by selectively using only the frequency component corresponding to the loop harmonic component in the deterministic frequency component. The waveform data of the attack section and the loop section created in this way is a tone that is very similar to the deterministic waveform data created by the waveform synthesis section 44, and has a good connection from the loop end to the loop start. It is waveform data.
[0023]
1.3.2. Waveform synthesis processing
After the waveform data is created, when a MIDI event is input via the operator 6 or the MIDI_I / O board 18, a musical sound waveform is synthesized based on the MIDI event. Also, when playing back an SMF (standard MIDI format) file supplied via the network I / O board 2 or the like, a musical sound waveform is synthesized based on the event information. A functional block diagram of this waveform synthesis processing is shown in FIG.
[0024]
In the figure, reference numeral 60 denotes a periodic waveform generating unit, which is read from the periodic component memory 64 storing the periodic component waveform data 52, the address generating unit 62 for generating a read address of the periodic component memory 64, and the address generating unit 62. The interpolation unit 66 performs interpolation processing on the waveform data.
[0025]
The address generation unit 62 starts reading the periodic component memory 64 from the attack start address. When the read address reaches the loop end address, the address generation unit 62 returns the read address to the loop start address, and thereafter, between the loop start address and the loop end address. Is read repeatedly. The reading speed is controlled by the pitch, that is, the F number.
[0026]
The length from the loop start address to the loop end address is about one to several cycles (short loop). Generally, since the musical sound waveform differs for each sound range, the periodic component memory 64 stores different periodic component waveform data 52 for each sound range (for example, a low sound range, a middle sound range, and a high sound range). The waveform data to be reproduced is determined according to the F number.
[0027]
Reference numeral 80 denotes a noise waveform generator, a noise component memory 84 storing the noise component waveform data 50 as in the periodic waveform generator 60, an address generator 82 for generating a read address of the noise component memory 84, and address generation The interpolation unit 86 is configured to perform interpolation processing on the waveform data read from the unit 82.
[0028]
When a predetermined trigger signal is supplied, the address generator 82 reads the waveform data between the start address and the end address only once. Thereafter, the process waits until the trigger signal is input, and the waveform data between the start address and the end address is read once each time the trigger signal is supplied.
[0029]
Reference numeral 102 denotes a synchronization control unit that monitors an address generated by the address generation unit 62, and when this becomes a predetermined trigger value (in other words, when the periodic component waveform has a predetermined phase), the trigger signal is sent to the address generation unit. 82. As a result, the noise component waveform data is generated in synchronization with the periodic component waveform data.
[0030]
Incidentally, examples of waveforms per cycle of the noise component waveform data 50 are as shown in FIGS. 3A to 3D. As described above, the noise component waveform has peaks around 170 to 190 samples. Exists. In this case, it is preferable to shift the phase in advance so that the peak portion is positioned at the head of the noise component waveform data.
[0031]
As a result, a common recognition that “the peak of the noise component waveform data is present” is formed, so that the relationship between the “trigger value” set in the synchronization control unit 102 and the noise component to be given can be intuitively understood. Can be grasped. FIG. 11 shows the relationship between the noise component waveform data, the phase component waveform data, and the trigger signal whose phase is set so that the peak portion is positioned at the head.
[0032]
A random number generator 114 generates a random number used in the address generator 82. Here, the length from the start address to the end address of the noise component waveform data 50 is secured about several tens of times the pitch. This is because the noise component sounds like a buzzer when the loop size is short as described in the prior art, and sounds like jitter when the loop size is slightly increased.
[0033]
In the present embodiment, the noise component waveform data 50 is stored for each one-to-one sound range with respect to the sound range of the periodic component waveform data 52 (for example, a low sound range, a middle sound range, and a high sound range). Then, in accordance with the F number, noise component waveform data 50 corresponding to each sound range is read. Reference numerals 104 and 108 denote filter units, which respectively perform filtering processing on the generated periodic component signal and noise component signal.
[0034]
Reference numerals 106 and 110 denote level control units for adjusting the level of the signal after the filtering process. Reference numeral 112 denotes a mixing and reproducing unit that mixes both level-adjusted signals and outputs them as musical tone signals. As a result, the musical tone signal is generated via the sound I / O board 10 and the sound system 12. In the present embodiment, when the periodic component waveform data has a predetermined phase, by triggering noise waveform data sufficiently longer than the periodic component waveform, the periodic component waveform is synchronized with the phase, and Natural noise with no periodicity like a buzzer can be added.
[0035]
2. Second embodiment
Next, a second embodiment of the present invention will be described. The hardware configuration and software configuration of the second embodiment are the same as those of the first embodiment.
However, as the noise component waveform data 50, a plurality of types (about 4 to 6 types per sound range) are stored for each sound range, and the length of one noise component waveform data 50 is one cycle. Each time the trigger signal is supplied from the synchronization control unit 102, the address generation unit 82 determines the sound range based on the F number at that time.
[0036]
Then, based on the output of the random number generator 114, any one of the noise component waveform data 50 in the sound range is randomly selected and reproduced. In the present embodiment, the required memory capacity of the noise component memory 84 can be significantly reduced as compared with the first embodiment, but the noise component is selected as a buzzer or jitter because a plurality of noise component waveform data 50 are selected at random. Can be prevented, and a natural noise component can be added to the musical sound signal. That is, in the present embodiment, when the periodic component waveform has a predetermined phase, the noise component waveform data selected at random from the plurality of noise component waveform data is read out. Even if the waveform data is as short as the cycle of the cycle component, as in the first embodiment, the cycle component waveform is synchronized with the phase of the cycle component waveform, and there is no periodic sense like a buzzer. Noise can be added.
[0037]
3. Third embodiment
Next, a third embodiment of the present invention will be described. The hardware configuration and software configuration of the third embodiment are the same as those of the second embodiment.
However, the noise component waveform data 50 is further classified into a plurality of groups for each volume (or velocity) range. That is, when the sound range is divided into 3 groups (low range, mid range, high range) and the volume is classified into 3 groups (weak, medium, strong), the noise component waveform data 50 is classified into 9 groups as a whole. Will be. Further, the periodic component waveform data 52 is also stored in the types corresponding to the sound range and volume.
[0038]
Then, about 4 to 6 types of noise component waveform data 50 are stored for each group. Also in this embodiment, the length of one noise component waveform data 50 is one cycle. Each time the trigger signal is supplied from the synchronization control unit 102, the address generation unit 82 selects any group based on the F number and volume at that time.
[0039]
Then, based on the output of the random number generator 114, any one of the noise component waveform data 50 in the group is randomly selected and reproduced. Therefore, in the present embodiment, as in the second embodiment, even if the noise component waveform data is short waveform data that is as short as the period of the periodic component, it is synchronized with the phase of the periodic component waveform, and Natural noise with no periodicity like a buzzer can be added. Furthermore, in the present embodiment, since the noise component waveform data 50 is selected based on the difference in the sound range and volume, a more natural noise component that changes according to the sound range and volume of the periodic component waveform is used as the musical sound signal. It is possible to grant.
[0040]
4). Fourth embodiment
Next, a fourth embodiment of the present invention will be described. The hardware configuration and software configuration of the fourth embodiment are the same as those of the second embodiment.
However, in place of the noise waveform generator 80 in the second embodiment, a noise waveform generator 81 shown in FIG. 7 is provided. In FIG. 7, the noise component memory 84 stores noise component waveform data 50 of one cycle length, one for each sound range.
[0041]
When a trigger signal is supplied to the address generation unit 82, any one noise component waveform data 50 is read based on the F number at each time point. Reference numeral 85 denotes an all-pass filter that passes through the entire band of the read noise component waveform data 50, but varies the phase characteristic (delay amount) for each band based on the filter coefficient. A coefficient generator 87 randomly sets the filter coefficient based on the output of the random number generator 114.
[0042]
Therefore, even when the waveform of the noise component signal output through the all-pass filter 85 is based on the same noise component waveform data 50, it randomly changes based on the phase characteristics at that time. As a result, even in this embodiment, even if the noise component waveform data is waveform data that is as short as the period of the periodic component, it is synchronized with the phase of the periodic component waveform and has a periodic sense like a buzzer. Natural noise without noise can be added. As in the third embodiment, the waveform data may be switched according to the volume in addition to the sound range.
[0043]
5. Fifth embodiment
Next, a fifth embodiment of the present invention will be described. The hardware configuration and software configuration of the fifth embodiment are the same as those of the second embodiment. However, the contents of the waveform data creation process (FIG. 5) and the waveform synthesis process (FIG. 6) in the second embodiment are modified as shown in FIGS. 8 and 9, respectively.
[0044]
In FIG. 8, a pitch component phase extraction unit 54 monitors the pitch component of the deterministic frequency component and detects its phase. Here, the “phase of the pitch component” will be described in more detail. The pitch component detected by the FFT analysis processing unit 34 has a phase (or frequency) “fluctuation”.
[0045]
This “fluctuation” can be observed as a side lobe of the pitch component when the width of the window function used in the FFT analysis processing unit 34 is increased. However, in this embodiment, since the window function width is about 8 times the pitch period, when the FFT analysis result is observed with a spectrum analyzer or the like, for example, the pitch component fluctuates as the position of the window function is shifted. Can be observed.
[0046]
An example of the “fluctuation” of the phase of the pitch component is shown in FIG. The pitch component phase extraction unit 54 cuts out the characteristics shown in FIG. 10 for each pitch period T and creates several (4-6) pieces of pitch component phase data D1, D2,..., Dn.
[0047]
Next, in FIG. 9, reference numeral 83 denotes a noise waveform generation unit. Compared with the noise waveform generation unit 81 of the second embodiment, an address LUT (look-up table) 89 is provided between the address generation unit 82 and the noise component memory 84. Is different in that is inserted. Further, in the noise component memory 84, one cycle length of noise component waveform data 50 is stored, one for each sound range, as in the fourth embodiment.
[0048]
As in the fourth embodiment, when a trigger signal is supplied to the address generator 82, an address signal for reading any one of the noise component waveform data 50 is read from the address generator 82 based on the F number at each time point. Is output. In the address LUT 89, pitch component phase data D1, D2,..., Dn are stored in advance, and any one of them is randomly selected by the output of the random number generator 114.
[0049]
That is, in the address LUT 89, the pitch component phase data is formatted such that both “pitch period T” on the horizontal axis and “phase 2π” on the vertical axis correspond to “number of samples of pitch period”. Then, a fluctuation as shown in FIG. 10 is given to the linear (sawtooth waveform) address signal supplied from the address generator 82, and the result is stored in the noise component memory 84 as a final address signal. Will be supplied.
[0050]
As described above, in this embodiment, even when the same noise component waveform data is read out in the noise component memory 84, the pitch component phase data D1, D2,. Since it changes, the noise component signal changes randomly based on the current phase. As a result, even in this embodiment, even if the noise component waveform data is waveform data that is as short as the period of the periodic component, it is synchronized with the phase of the periodic component waveform and has a periodic sense like a buzzer. Natural noise without noise can be added. As in the third embodiment, the waveform data may be switched according to the volume in addition to the sound range.
[0051]
6). Modified example
The present invention is not limited to the above-described embodiment, and various modifications can be made as follows, for example.
(1) In the first and second embodiments, the noise component waveform data 50 and the periodic component waveform data 52 are provided for each sound region (for example, the low sound region, the middle sound region, and the high sound region). The noise component waveform data 50 may be common to the entire sound range by providing for each sound range. This is based on the fact that the difference in the sound range of the noise component waveform data 50 is relatively difficult to detect.
[0052]
(2) In the second embodiment and the like, the speed at which the noise component waveform data is read is arbitrary, and may be controlled independently of the pitch of the periodic component waveform.
(3) In the second embodiment and the like, the length of the noise component waveform data is one period of the periodic component waveform, but may be any length such as two periods, three periods, or half periods. However, since the noise is synchronized with the periodic component waveform, it is preferable that the length is related to the periodic length of the periodic component waveform.
[0053]
(4) In the second embodiment, a plurality of types of noise component waveform data are stored for each sound range, but some of the plurality of types of noise component waveform data for each sound range are shared between different sound ranges. It may be used. Similarly, in the third embodiment, plural types of noise component waveform data are stored for each group. However, some of the plural types of noise component waveform data for each group are shared between different groups. You may make it use for.
[0054]
(5) In the synchronization control unit 102 according to the second embodiment or the like, the trigger signal is generated at the timing when the address (phase of the periodic component waveform) of the address generation unit 62 becomes a predetermined trigger value. The timing may be slightly varied by adding a small random number. That is, in the waveform period of the periodic component waveform, the phase at which the trigger is generated may be shifted by, for example, about 0 to 20%. This is because there are fluctuations in the generation timing of noise in natural musical instruments.
[0055]
(6) In each of the above embodiments, the periodic component signal is constituted by the waveform memory sound source. However, it goes without saying that the periodic component signal may use various sound source methods such as an FM sound source and a physical model sound source. In each embodiment, the synchronization control unit 102 monitors the address generated by the periodic waveform generating address generation unit 62, and generates a trigger signal when this reaches a predetermined trigger value.
[0056]
However, the trigger for generating the trigger signal is not limited to this address value. For example, the trigger signal may be generated when the level or inclination of the periodic component signal is in a predetermined state. This is particularly suitable when the sound source method other than the waveform memory sound source is adopted as the periodic waveform generation unit 60.
[0057]
(7) In each of the above embodiments, the waveform analysis / synthesis system is realized by software operating on hardware. However, each component shown in FIGS. 4 to 9 is realized by hardware, and various electronic musical instruments and others. It may be used for amusement equipment. Further, the software used in the above embodiment can be stored in a recording medium such as a CD-ROM or a floppy disk and distributed, or can be distributed through a transmission path.
[0058]
【The invention's effect】
As described above, according to the present invention, a periodic component signal having a continuous frequency component on the time axis is generated, and a noise component is added to the periodic component signal. Therefore, a natural noise component can be added to the musical sound signal. Is possible.
[Brief description of the drawings]
FIG. 1 is a waveform diagram showing an analysis result of a saxophone musical sound waveform.
FIG. 2 is a waveform diagram obtained by enlarging FIG. 1 on a time axis.
FIG. 3 is a waveform diagram obtained by dividing the noise component of FIG. 2 (c) for each pitch period of the periodic component.
FIG. 4 is a hardware block diagram of a waveform analysis / synthesis system in each embodiment of the present invention.
FIG. 5 is a block diagram of waveform data creation processing in the first to fourth embodiments of the present invention.
FIG. 6 is a block diagram of waveform synthesis processing in the first embodiment.
FIG. 7 is a block diagram of a noise waveform generator 81 in the second embodiment.
FIG. 8 is a block diagram of waveform data creation processing in the fifth embodiment.
FIG. 9 is a block diagram of waveform synthesis processing in the fifth embodiment.
FIG. 10 is an operation explanatory diagram of a noise waveform generator 83 in the fifth embodiment.
FIG. 11 is a diagram illustrating a relationship among noise component waveform data, periodic component waveform data, and a trigger signal.
[Explanation of symbols]
20 ... CPU, 22 ... ROM, 24 ... RAM, 26 ... hard disk, 30 ... waveform data, 32 ... waveform recording unit, 34 ... FFT analysis processing unit, 36 ... continuous component separation unit, 38 ...... Waveform creation unit, 40 ... Pitch detection unit, 42 ... Address setting unit, 44 ... Waveform synthesis unit, 46 ... Subtraction unit, 48 ... Noise waveform creation unit, 50 ... Noise component waveform data, 52 ... Period component waveform data 54... Pitch component phase extractor 60. Period waveform generator 62 62 Address generator 64. Period component memory 66. Interpolator 80, 81, 83. ... Noise waveform generator, 82 ... Address generator, 84 ... Noise component memory, 85 ... All-pass filter, 86 ... Interpolator, 87 ... Coefficient generator, 102 ... Synchronization controller, 112 ... Mixing & Playback part, 1 4 ...... random number generator.

Claims (8)

原波形の周波数成分を分析する過程と、
該分析結果に基づいて、時間軸上で不連続な周波数成分であるノイズ成分を抽出する過程と、
該ノイズ成分に基づいてノイズ成分波形データ第1メモリに記憶する過程と、
前記原波形の周期成分に基づいて時間軸上で連続的な周期成分を抽出する過程と、
該抽出した周波数成分に基づいて周期成分波形データを第2メモリに記憶する過程と、
所望の音高に応じた速度で変化する読出しアドレスを発生する過程と、
該読出しアドレスにより前記第2メモリから前記周期成分波形データを繰り返し読み出し、読み出した周期成分波形データに基づいて周期成分信号を生成する周期成分信号生成過程と、
前記読出しアドレスが所定のトリガ値になったことを検出すると、トリガ信号を発生するトリガ信号発生過程と、
該トリガ信号の発生に応じて、前記第1メモリから前記ノイズ成分波形データを読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程と、
生成した周期成分信号ノイズ成分信号とを合成する合成過程
を有することを特徴とする楽音信号の分析・合成方法。
Analyzing the frequency components of the original waveform;
A process of extracting a noise component which is a discontinuous frequency component on the time axis based on the analysis result;
Storing noise component waveform data in the first memory based on the noise component ;
A process of extracting continuous periodic components on the time axis based on the periodic components of the original waveform;
Storing periodic component waveform data in the second memory based on the extracted frequency component;
Generating a read address that changes at a rate depending on the desired pitch;
Periodically reading the periodic component waveform data from the second memory by the read address, and generating a periodic component signal based on the read periodic component waveform data ; and
A trigger signal generating process for generating a trigger signal upon detecting that the read address has reached a predetermined trigger value;
A noise component signal generation step of reading the noise component waveform data from the first memory in response to the generation of the trigger signal and generating a noise component signal based on the read noise component waveform data;
A method for analyzing and synthesizing a musical sound signal, comprising: a synthesis process for synthesizing a generated periodic component signal and a noise component signal.
時間軸上で不連続な周波数成分であるノイズ成分のノイズ成分波形データを記憶する第1メモリと、時間軸上で連続的な周波数成分である周期成分の周期成分波形データを記憶する第2メモリとを読み出して楽音信号を合成する楽音信号合成方法において、
音高に応じた速度で変化する読出しアドレスを発生する過程と、
該読出しアドレスにより前記第2メモリから前記周期成分波形データを繰り返し読み出し、読み出した周期成分波形データに基づいて周期成分信号を生成する周期成分信号生成過程と、
前記読出しアドレスが所定のトリガ値になったことを検出すると、トリガ信号を発生するトリガ信号発生過程と、
該トリガ信号の発生に応じて、前記第1メモリから前記ノイズ成分波形データを読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程と、
生成した周期成分信号とノイズ成分信号とを合成する合成過程と
を有することを特徴とする楽音信号の合成方法
A first memory that stores noise component waveform data of noise components that are discontinuous frequency components on the time axis, and a second memory that stores periodic component waveform data of periodic components that are continuous frequency components on the time axis In a musical sound signal synthesis method for synthesizing a musical sound signal by reading
The process of generating a read address that changes at a speed according to the pitch,
Periodically reading the periodic component waveform data from the second memory by the read address, and generating a periodic component signal based on the read periodic component waveform data; and
A trigger signal generating process for generating a trigger signal upon detecting that the read address has reached a predetermined trigger value;
A noise component signal generation step of reading the noise component waveform data from the first memory in response to the generation of the trigger signal and generating a noise component signal based on the read noise component waveform data;
A method for synthesizing a musical sound signal, comprising: a synthesis process for synthesizing the generated periodic component signal and noise component signal .
時間軸上で不連続な周波数成分であるノイズ成分のノイズ成分波形データを記憶する第1メモリを読み出して楽音信号を合成する楽音信号合成方法において、
時間軸上で連続的な周波数成分を有する周期成分信号を生成する周期成分信号生成過程と、
該周期成分信号の位相が所定の位相になったか否かを判定する判定過程と、
該判定過程が前記周期成分信号の位相が所定の位相になったと判定したとき、前記ノイズ成分波形データを前記メモリから読み出し、読み出したノイズ成分波形データに基づいてノイズ成分信号を生成するノイズ成分信号生成過程と、
生成されたノイズ成分信号と前記周期成分信号とを合成して楽音信号を生成する楽音信号生成過程と
を有することを特徴とする楽音信号合成方法。
In a musical sound signal synthesis method for synthesizing a musical sound signal by reading a first memory that stores noise component waveform data of a noise component that is a discontinuous frequency component on the time axis,
A periodic component signal generation process for generating a periodic component signal having a continuous frequency component on the time axis;
A determination process for determining whether or not the phase of the periodic component signal has reached a predetermined phase ;
When the determination process determines that the phase of the periodic component signal becomes a predetermined phase, the noise component waveform data read out from said memory, the read noise to generate a noise component signal based on the noise component waveform data Component signal generation process;
A musical sound signal synthesizing method comprising: generating a musical tone signal by synthesizing the generated noise component signal and the periodic component signal.
前記第1メモリは、複数種類のノイズ成分波形データを記憶するものであり、
前記ノイズ成分信号生成過程においては、該複数種類のノイズ成分波形データの何れかがランダムに選択されて読み出される
ことを特徴とする請求項2または3記載の楽音信号合成方法。
The first memory stores a plurality of types of noise component waveform data,
4. The musical tone signal synthesis method according to claim 2, wherein, in the noise component signal generation process , any one of the plurality of types of noise component waveform data is randomly selected and read out.
前記ノイズ成分信号生成過程において読み出されたノイズ成分波形デー に対して、フィルタ係数に基づくフィルタ処理を施す過程と、
該フィルタ係数をランダムに設定する過程と
をさらに有することを特徴とする請求項2または3記載の楽音信号合成方法。
With respect to the noise component signal generated noise component waveform data read in step, the steps of performing a filtering processing based on the filter coefficients,
The method for synthesizing a musical sound signal according to claim 2 or 3 , further comprising the step of randomly setting the filter coefficient.
前記第1メモリは、前記周期成分の1周期長の前記ノイズ成分波形データを記憶するものであることを特徴とする請求項2ないし5の何れかに記載の楽音信号合成方法。6. The musical sound signal synthesis method according to claim 2, wherein the first memory stores the noise component waveform data having one cycle length of the cycle component. 請求項1ないしの何れかに記載の方法を実行することを特徴とする楽音信号合成装置。Tone signal synthesizing apparatus characterized by performing a method according to any one of claims 1 to 6. 請求項1ないしの何れかに記載の方法を実行するプログラムを記憶することを特徴とする記録媒体。Recording medium characterized by storing a program for executing the method according to any of claims 1 to 6.
JP2000079460A 2000-03-22 2000-03-22 Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium Expired - Fee Related JP3659121B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000079460A JP3659121B2 (en) 2000-03-22 2000-03-22 Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000079460A JP3659121B2 (en) 2000-03-22 2000-03-22 Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium

Publications (2)

Publication Number Publication Date
JP2001265350A JP2001265350A (en) 2001-09-28
JP3659121B2 true JP3659121B2 (en) 2005-06-15

Family

ID=18596706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000079460A Expired - Fee Related JP3659121B2 (en) 2000-03-22 2000-03-22 Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium

Country Status (1)

Country Link
JP (1) JP3659121B2 (en)

Also Published As

Publication number Publication date
JP2001265350A (en) 2001-09-28

Similar Documents

Publication Publication Date Title
JP4940588B2 (en) Beat extraction apparatus and method, music synchronization image display apparatus and method, tempo value detection apparatus and method, rhythm tracking apparatus and method, music synchronization display apparatus and method
EP1688912A2 (en) Voice synthesizer of multi sounds
KR20080023199A (en) Audio reproduction apparatus and method and storage medium
JP2006251375A (en) Voice processor and program
JP2001188544A (en) Audio waveform reproducing device
US7094965B2 (en) Waveform data analysis method and apparatus suitable for waveform expansion/compression control
JP3654079B2 (en) Waveform generation method and apparatus
JPH07295560A (en) Midi data editing device
JP3654080B2 (en) Waveform generation method and apparatus
JP3654117B2 (en) Expansion and contraction method of musical sound waveform signal in time axis direction
JP3654082B2 (en) Waveform generation method and apparatus
JP3775319B2 (en) Music waveform time stretching apparatus and method
JP3654084B2 (en) Waveform generation method and apparatus
JP3659121B2 (en) Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium
JP3843199B2 (en) SOUND TIME EXPANDING DEVICE, METHOD, AND RECORDING MEDIUM CONTAINING SOUND TIME EXPANDING PROGRAM
JP2008518248A (en) Apparatus and method for reproducing MIDI file
JP3731476B2 (en) Waveform data analysis method, waveform data analysis apparatus, and recording medium
JP3846122B2 (en) Playback control device and medium
JP2002268637A (en) Meter deciding apparatus and program
JP3744247B2 (en) Waveform compression method and waveform generation method
JP3788096B2 (en) Waveform compression method and waveform generation method
JP4361919B2 (en) Karaoke equipment
JP3731477B2 (en) Waveform data analysis method, waveform data analysis apparatus, and recording medium
JP3829707B2 (en) Waveform generating apparatus and method
JP3404756B2 (en) Music synthesizer

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050128

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050307

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090325

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100325

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110325

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110325

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120325

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130325

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20140325

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees