(57)【特許請求の範囲】
【請求項１】
基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形を供給するステップと、
前記供給された原波形から、少なくとも、基本波成分と１つ以上の高調波成分との組み合わせからなる基本倍音成分と、それ以外の高調波成分の組み合わせからなる上位倍音成分とを分離するステップと、
前記分離した基本倍音成分についての圧縮データを生成するステップと、
前記分離した上位倍音成分についての圧縮データを生成するステップと
を具える波形圧縮方法。
【請求項２】
基本波成分と組み合わせる高調波成分又は基本波成分と組み合わせしない高調波成分のいずれかを選択するステップを具えてなり、
前記分離するステップは、前記高調波成分の選択に基づき、前記供給された原波形から少なくとも前記基本倍音成分と前記上位倍音成分とを分離することを特徴とする請求項１に記載の波形圧縮方法。
【請求項３】
前記基本倍音成分又は前記上位倍音成分の圧縮データは、波形情報に対応する波形ベクトル、ピッチ情報に対応するピッチベクトル、振幅情報に対応する振幅ベクトルのいずれかを含む請求項１に記載の波形圧縮方法。
【請求項４】
前記基本倍音成分又は前記上位倍音成分の圧縮データは、前記基本倍音成分又は前記上位倍音成分を時間軸上で複数区間に分け、各区間毎の基本倍音成分又は上位倍音成分を圧縮した複数の区間圧縮データから構成されることを特徴とする請求項１乃至３のいずれかに記載の波形圧縮方法。
【請求項５】
前記分離するステップは、前記供給された原波形から１つの前記基本倍音成分と複数の前記上位倍音成分とを分離することを特徴とする請求項１乃至４のいずれかに記載の波形圧縮方法。
【請求項６】
基本波成分と基本波に対して非整数倍の周期性を持つ１つ以上の高調波成分との組み合わせからなる基本倍音成分用の圧縮データと、基本波に対して非整数倍の周期性を持つ高調波成分の組み合わせからなる上位倍音成分用の圧縮データとを取得するステップと、
前記取得した基本倍音成分用の圧縮データに基づいて基本倍音成分の波形データを生成するステップと、
前記取得した上位倍音成分用の圧縮データに基づいて上位倍音成分の波形データを生成するステップと、
前記生成した基本倍音成分の波形データと前記生成した上位倍音成分の波形データとを合成して、基本波に対して非整数倍の周期性を持つ非整数倍音からなる高調波成分を含む非調和音の楽音波形を生成するステップと
を具える波形生成方法。
【請求項７】
前記取得するステップは、１つの前記基本倍音成分用の圧縮データと複数の前記上位倍音成分用の圧縮データとを取得することを特徴とする請求項６に記載の波形生成方法。
【請求項８】
コンピュータに、
基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形を供給する手順と、
前記供給された原波形から、少なくとも、基本波成分と１つ以上の高調波成分との組み合わせからなる基本倍音成分と、それ以外の高調波成分の組み合わせからなる上位倍音成分とを分離する手順と、
前記分離した基本倍音成分についての圧縮データを生成する手順と、
前記分離した上位倍音成分についての圧縮データを生成する手順と
を実行させるためのプログラム。
【請求項９】
コンピュータに、
基本波成分と基本波に対して非整数倍の周期性を持つ１つ以上の高調波成分との組み合わせからなる基本倍音成分用の圧縮データと、基本波に対して非整数倍の周期性を持つ高調波成分の組み合わせからなる上位倍音成分用の圧縮データとを取得する手順と、
前記取得した基本倍音成分用の圧縮データに基づいて基本倍音成分の波形データを生成する手順と、
前記取得した上位倍音成分用の圧縮データに基づいて上位倍音成分の波形データを生成する手順と、
前記生成した基本倍音成分の波形データと前記生成した上位倍音成分の波形データとを合成して、基本波に対して非整数倍の周期性を持つ非整数倍音からなる高調波成分を含む非調和音の楽音波形を生成する手順と
を実行させるためのプログラム。
【請求項１０】
基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形を供給する手段と、
前記供給された原波形から、少なくとも、基本波成分と１つ以上の高調波成分との組み合わせからなる基本倍音成分と、それ以外の高調波成分の組み合わせからなる上位倍音成分とを分離する手段と、
前記分離した基本倍音成分についての圧縮データを生成する手段と、
前記分離した上位倍音成分についての圧縮データを生成する手段と
を具える波形圧縮装置。
【請求項１１】
基本波成分と基本波に対して非整数倍の周期性を持つ１つ以上の高調波成分との組み合わせからなる基本倍音成分用の圧縮データと、基本波に対して非整数倍の周期性を持つ高調波成分の組み合わせからなる上位倍音成分用の圧縮データとを取得する手段と、
前記取得した基本倍音成分用の圧縮データに基づいて基本倍音成分の波形データを生成する手段と、
前記取得した上位倍音成分用の圧縮データに基づいて上位倍音成分の波形データを生成する手段と、
前記生成した基本倍音成分の波形データと前記生成した上位倍音成分の波形データとを合成して、基本波に対して非整数倍の周期性を持つ非整数倍音からなる高調波成分を含む非調和音の楽音波形を生成する手段と
を具える波形生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ベクトル量子化技術を用いて楽音あるいは音声その他様々な音の波形を圧縮する波形圧縮方法に関し、また、そのような波形圧縮方法を使用して任意の波形を生成する波形生成方法に関するもので、特に非整数倍音成分を含む音を高圧縮率かつ高品質に圧縮・合成することができるように波形圧縮方法を改善したものに関する。この発明は、電子楽器は勿論のこと、自動演奏装置、コンピュータ、電子ゲーム装置その他のマルチメディア機器等、楽音あるいは音声若しくはその他任意の音を発生する機能を有するあらゆる分野の機器若しくは装置または方法において広範囲に応用できるものである。なお、この明細書において、楽音波形という場合、音楽的な音の波形に限るものではなく、音声あるいはその他任意の音の波形を含んでいてもよい意味合いで用いるものとする。
【０００２】
【従来の技術】
波形メモリにおいて、ＰＣＭ（パルス符号変調）あるいはＤＰＣＭ（差分ＰＣＭ）又はＡＤＰＣＭ（適応差分ＰＣＭ）等の符号化方式で符号化した波形データを記憶しておき、これを所望のピッチに対応して読み出すことにより、楽音波形を形成するようにした、いわゆる「波形メモリ読み出し」技術は既に公知であり、また、様々なタイプの「波形メモリ読み出し」技術が知られている。従来知られた「波形メモリ読み出し」技術において発音開始から終了までの1つの音の波形を発生するためのものがあり、こうしたものとして発音開始から終了までの1音をアタック部とループ部とに分けてそれぞれの波形データを波形テーブルに記憶するアタック−ループ型の波形メモリ音源がある。このアタック−ループ型の波形メモリ音源では、発音開始直後の音の変化が複雑な立ち上がり区間であるアタック部についてはその区間内の全波形データを記憶し、その後における変化のあまりない音の減衰区間である持続部については１乃至複数の所定のループ波形を記憶する（こうしたループ波形のみを記憶する区間のことをループ部と呼ぶ）。また、従来のアタック−ループ型の波形メモリ音源では、波形データを波形テーブルに記憶する際にデータ圧縮を行ってから記憶する。このように、多数の波形データをそのまま普通に記憶するのではデータ記憶に必要なメモリ記憶容量がかなり増大してしまうことになるので、持続部においてはループ波形のみを記憶したりデータ圧縮したりすることによって、波形データを記憶するのに必要な波形テーブルのメモリ記憶容量を節約するようにしている。なお、本明細書において、「ループ波形」とは繰り返し読出し（つまりループ読出し）される波形という意味で用いるものとする。
【０００３】
【発明が解決しようとする課題】
ところで、上述したようなアタック−ループ型の波形メモリ音源では、ピアノやギターなどの自然楽器が奏でる楽音のように時間経過に従い音色がうねる（つまり音色に揺らぎが発生する）ように変化する独特の特徴を持つ音（すなわち非整数倍音成分を含む音であり、こうした音を非調和音と呼ぶ）を実現するために、ループ部を１波のみで実現する方法が従来から知られている。このループ部を１波（こうしたループ部をショートループと呼ぶ）のみで実現する方法は、波形メモリ記憶容量が大量に確保できないためにデータの圧縮率を高くする必要がある場合に用いられる方法である。非調和音の場合、そのままでは１波のループがとれず、またノイズが発生するために、あらかじめ高次倍音の位相を分析合成することによって１波のループがとれるように処理したものを使用する。しかし、こうしたループ部を１波（ショートループ）で実現する方法では、特にループ部を繰り返し再生することにより実現される持続部において非調和感のないきれい、かつ、単調な音が合成されてしまうこととなり、ピアノやギターなどといった自然楽器の特徴である非調和感のある音（つまり非調和音）を再現することが困難である、という問題点があった。
【０００４】
そこで、こうしたループ部を１波（ショートループ）のみで実現する方法で生ずる問題点を解決するために、ループ部を複数波で実現する方法が従来から知られている。このループ部を複数波（こうしたループ部をロングループと呼ぶ）で実現する方法はある程度長い時間（例えば数百ミリ秒〜数秒）の波形を繰り返し再生することで、非調和感のある音を再現できるようにした方法である。この方法では録音した音の原波形をそのまま再生することに近いために、上記したようなループ部を１波（ショートループ）で実現する方法と比較するとより高品質な合成音を再現することができる。しかし、こうしたループ部を複数波（ロングループ）で実現する方法においては、元の音が音色変化が滑らかな減衰音である場合に、ループ部の繰り返し再生により周期性（すなわちロングループ感）を持って合成音が実現されてしまう、という問題点があった。こうしたロングループ感を目立たせないようにするにはループ部を長くとって波形テーブルに記憶するようにすればよいが、そうするとその分だけ大容量の波形メモリ記憶容量が必要となる。すなわち、データの圧縮率が低くなることから都合が悪い。
【０００５】
本発明は上述の点に鑑みてなされたもので、非整数倍音成分を含む音、つまり非調和音を高圧縮率かつ高品質に圧縮・合成することができるようにした波形圧縮方法及び波形生成方法を提供しようとするものである。
【０００６】
【課題を解決するための手段】
本発明の請求項１に係る波形圧縮方法は、基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形を供給するステップと、前記供給された原波形から、少なくとも、基本波成分と１つ以上の高調波成分との組み合わせからなる基本倍音成分と、それ以外の高調波成分の組み合わせからなる上位倍音成分とを分離するステップと、前記分離した基本倍音成分についての圧縮データを生成するステップと、前記分離した上位倍音成分についての圧縮データを生成するステップとを具えるものである。
【０００７】
この発明によれば、同じ記憶容量で非整数倍音成分を含む音、つまり非調和音に関する原波形を数多く記録することができるようになる。すなわち、データ圧縮しようとする、基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形が供給されると、この原波形を少なくとも、基本波成分と１つ以上の高調波成分との組み合わせからなる基本倍音成分と、それ以外の高調波成分の組み合わせからなる上位倍音成分とに分離する。そして、分離した基本倍音成分と上位倍音成分のそれぞれについて圧縮データを生成する。一例として、前記基本倍音成分又は前記上位倍音成分の圧縮データは、波形情報に対応する波形ベクトル、ピッチ情報に対応するピッチベクトル、振幅情報に対応する振幅ベクトルのいずれかを含む。このベクトル量子化に際しては、基本倍音成分及び／又は上位倍音成分について複数区間に分割し、この複数区間毎にベクトル量子化してもよい。複数区間毎にベクトル量子化することで、原波形により忠実な波形圧縮を可能とする。このように、基本波に対して非整数倍の周期性を持つ非整数倍音成分からなる高調波成分を含む非調和音の原波形を少なくとも基本倍音成分と上位倍音成分とに分離し、各成分をデータ圧縮することによって、同じ記憶容量で多くの種類の非整数倍音成分を含む音、つまり非調和音を記録しておくことができるようになる。この点、もう少し詳しく述べるのなら、非調和音の楽音は各倍音成分の周波数が第１倍音の整数倍ではないことに起因する独特の非調和感（うなり）を持ち、このうなりは発音後の時間経過と共に周期や大きさが複雑に変化する。非調和音はこのような性質を持つため、非調和音を（少なくとも）２つの成分に分けて圧縮することで、ピッチ変化と音量変化が各々異なる２種類の非調和音が合成されることになる。これら２つの非調和音を加算することで、上記非調和的特徴をほぼ再現でき、これにより従来に比べて高いデータ圧縮が可能でありながら良好な非調和性を確保できる非調和音を合成することができる。
【０００８】
本発明の請求項６に係る波形生成方法は、基本波成分と基本波に対して非整数倍の周期性を持つ１つ以上の高調波成分との組み合わせからなる基本倍音成分用の圧縮データと、基本波に対して非整数倍の周期性を持つ高調波成分の組み合わせからなる上位倍音成分用の圧縮データとを取得するステップと、前記取得した基本倍音成分用の圧縮データに基づいて基本倍音成分の波形データを生成するステップと、前記取得した上位倍音成分用の圧縮データに基づいて上位倍音成分の波形データを生成するステップと、前記生成した基本倍音成分の波形データと前記生成した上位倍音成分の波形データとを合成して、基本波に対して非整数倍の周期性を持つ非整数倍音からなる高調波成分を含む非調和音の楽音波形を生成するステップとを具えるものである。これによると、基本波成分と基本波に対して非整数倍の周期性を持つ１つ以上の高調波成分との組み合わせからなる基本倍音成分用の圧縮データと、基本波に対して非整数倍の周期性を持つ高調波成分の組み合わせからなる上位倍音成分用の圧縮データとを取得し、これに基づき、基本倍音成分の波形データと上位倍音成分の波形データとを別々に生成し、これらの波形データを合成することで所望の楽音波形を生成するようにしたので、上述と同様の理由により、従来に比べて高いデータ圧縮が可能でありながら良好な非調和性を確保できる非調和音を簡単に再現することができるようになる。
【０００９】
本発明は、方法の発明として構成し実施することができるのみならず、装置の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。
【００１０】
【発明の実施の形態】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１１】
図１は、この発明に係る波形圧縮方法及び波形生成方法を実施するために使用されるハードウエア構成例を示すブロック図である。ここに示されたハードウエア構成例はコンピュータを用いて構成されており、そこにおいて、波形圧縮及び波形生成処理は、コンピュータがこの発明に係る波形圧縮方法及び波形生成方法を実現する所定のプログラム（ソフトウエア）を実行することにより実施される。勿論、この波形圧縮方法及び波形生成方法はコンピュータソフトウエアの形態に限らず、ＤＳＰ（ディジタル・シグナル・プロセッサ）によって処理されるマイクロプログラムの形態でも実施可能であり、また、この種のプログラムの形態に限らず、ディスクリート回路又は集積回路若しくは大規模集積回路等を含んで構成された専用ハードウエア装置の形態で実施してもよい。また、このハードウエア構成は、電子楽器、カラオケ装置もしくは電子ゲーム装置又はその他のマルチメディア機器、もしくはパーソナルコンピュータ等、任意の製品応用形態をとっていてよい。
なお、図１に示したハードウエア構成例はこれら以外のハードウェアを有する場合もあるが、ここでは必要最小限の資源を用いた場合について説明する。
【００１２】
図１に示されたハードウェア構成例においては、マイクロプロセッサユニット（ＣＰＵ）１、ＲＯＭ（リードオンリメモリ）２、ＲＡＭ（ランダムアクセスメモリ）３からなるマイクロコンピュータによって該装置全体の動作が制御されるようになっている。このコンピュータのメイン制御部としてのＣＰＵ１に対して、タイマ１Ａ、ＲＯＭ２、ＲＡＭ３、ＭＩＤＩインタフェース４、入力操作装置５、表示装置６、波形インタフェース７、外部記憶装置８、通信インタフェース９等がバスライン１Ｄ（データあるいはアドレスバス等）を介して接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ１Ａが接続される。すなわち、タイマ１Ａは波形記録の際に用いるサンプリング時間を計数したり、ＣＰＵ１に対して処理タイミング命令やインタラプト命令として与えられるクロックパルスなどを発生する。ＣＰＵ１は、こうした処理タイミング命令やインタラプト命令に従って「波形圧縮処理」（後述する図２及び図３参照）や「波形生成処理」（後述する図６参照）などの各種処理を実行する。
【００１３】
ＲＯＭ２は、ＣＰＵ１により実行あるいは参照される各種プログラムや各種データ等を格納するものである。ＲＡＭ３は、ＣＰＵ１が波形圧縮や波形生成に関する所定のプログラムを実行する際に発生する各種データを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリとして使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。
【００１４】
ＭＩＤＩインタフェース４は、当該装置に接続された外部のＭＩＤＩ鍵盤モジュールやシーケンサ（つまり、自動演奏装置）あるいは他のコンピュータや電子楽器等の各種機器（図示せず）からＭＩＤＩ規格の演奏情報（つまり、ＭＩＤＩデータ）を当該装置へ入力したり、あるいは当該装置からＭＩＤＩデータを外部のコンピュータや電子楽器等へ出力するためのインタフェースである。ＭＩＤＩインタフェース４に接続される外部の各種機器はユーザによる操作に応じてＭＩＤＩデータを発生する機器であればよく、鍵盤型、弦楽器型、管楽器型、打楽器型、身体装着型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってよい。こうしたＭＩＤＩインタフェース４を具えることにより、当該装置では外部の各種機器から入力されたＭＩＤＩデータに従って波形を生成することができる。なお、ＭＩＤＩインタフェース４は専用のＭＩＤＩインタフェースを用いるものに限らず、ＲＳ−２３２Ｃ、ＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインタフェースを用いてＭＩＤＩインタフェース４を構成するようにしてもよい。この場合、ＭＩＤＩデータ以外のデータをも同時に送受信するようにしてもよい。ＭＩＤＩインタフェース４として上記したような汎用のインタフェースを用いる場合には、外部の各種機器はＭＩＤＩデータ以外のデータも送受信できるようにしてよい。勿論、演奏情報に関するデータフォーマットはＭＩＤＩ形式のデータに限らず他の形式であってもよく、その場合にはＭＩＤＩインタフェース４と外部の各種機器はそれにあった構成とすることは言うまでもない。
【００１５】
入力操作装置５は、波形圧縮処理及び波形生成処理の過程において必要な制御情報や文字情報等を入力するための各種の操作子を含んで構成される。例えば、数値データ入力用のテンキーや文字データ入力用のキーボード、表示装置６に表示される所定のポインティングデバイスを操作するために用いるマウス、あるいは鍵盤型、弦楽器型、管楽器型、打楽器型、身体装着型等の操作子などである。勿論、こうした制御情報や文字情報等を入力するための各種操作子の他に、音高や音色や効果等を選択・設定・制御するための各種操作子を含んでいてもよい。
【００１６】
表示装置６は、入力操作装置５により入力された各種情報やサンプリングされた波形データ等を表示する、例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等のディスプレイである。すなわち、表示装置６においては、波形圧縮処理及び波形生成処理の過程において、ＣＰＵ１からの指示に応じて、様々なグラフィック画面を表示する。例えば、録音した波形の形状をグラフィック表示したり、波形圧縮処理の際の波形エディット状態をグラフィック表示したり、音色設定、音色編集、システム設定等の各種データ設定・選択等のための制御画面を表示したり、というように多様に使用される。
【００１７】
波形インタフェース７は、外部からマイクロフォン等を介して入力されるアナログ波形信号（つまりオーディオ信号）を、ＣＰＵ１からの指示に応じて、所定のサンプリング周波数に従ってサンプリングしてディジタル信号に変換し、これを通信バス１Ｄに送り出す波形入力機能と、このコンピュータにより実行した波形生成処理によって圧縮データに基づき生成したディジタル波形データを通信バス１Ｄを介して受け取り、所定のサンプリング周波数に従ってアナログ波形信号に変換してスピーカシステム（図示せず）等に出力する波形出力機能等を有する。
【００１８】
外部記憶装置８は、本発明に係る波形圧縮処理に応じて生成される圧縮波形データや、ＣＰＵ１が実行する各種制御プログラム等の制御に関するデータなどを記憶するものである。例えば、前記ＲＯＭ２に制御プログラムが記憶されていない場合に、この外部記憶装置８（例えばハードディスク）に制御プログラムを記憶させておき、それをＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置８はハードディスク（ＨＤ）に限られず、フレキシブルディスク（ＦＤ）、コンパクトディスク（ＣＤ−ＲＯＭ・ＣＤ−ＲＷ）、光磁気ディスク（ＭＯ）、あるいはＤＶＤ（Digital Versatile Disk）等の着脱自在な様々な形態の外部記憶媒体を利用する記憶装置であればどのようなものであってもよい。半導体メモリなどであってもよい。
【００１９】
通信インタフェース９は、例えばＬＡＮやインターネット、電話回線等の有線あるいは無線の通信ネットワークＸに接続されており、該通信ネットワークＸを介して、図示しない外部のホスト又はサーバコンピュータなどと接続され、当該ホスト又はサーバコンピュータなどから制御プログラムや圧縮波形データや原波形などの各種データを該装置側に取り込むためのインタフェースである。すなわち、ＲＯＭ２や外部記憶装置８（例えば、ハードディスク）等に制御プログラムや各種データが記憶されていない場合に、外部のホスト又はサーバコンピュータなどから制御プログラムや各種データをダウンロードするために用いられる。クライアントとなる該装置は、通信インターフェース９及び通信ネットワークＸを介して外部のホスト又はサーバコンピュータへと制御プログラムや各種データのダウンロードを要求するコマンドを送信する。外部のホスト又はサーバコンピュータは、このコマンドを受け、要求された制御プログラムや各種データを通信ネットワークＸを介して本装置へと配信し、本装置が通信インタフェース９を介して、これら制御プログラムや各種データを受信して外部記憶装置８（例えば、ハードディスク）等に蓄積することにより、ダウンロードが完了する。なお、通信インタフェース９及び通信ネットワークＸは、有線のものに限らず無線のものであってもよい。また、双方を具えていてもよい。
【００２０】
上述した波形インタフェース７を介して変換入力されたディジタル波形データは、ＲＡＭ３あるいは外部記憶装置８等における所定の記憶領域に一旦書き込まれ、この入力波形データに対して、ＣＰＵ１からの指示に従ってこの発明に従う所定の波形圧縮処理（後述する）が施される。圧縮されたデータは、適宜の波形データベース（波形メモリとも呼ぶ）に記憶される。この場合、アナログ波形信号に限らずディジタル波形データを通信インタフェース９等を介して入力し、この入力波形データに対して所要のデータ圧縮を施すようにしてもよい。波形データベースの機能は、どのタイプのデータ記憶装置が受け持ってもよい。すなわち、上記したＲＡＭ３、外部記憶装置８のいずれを波形データベースとして機能させてもよい。一般的には、大容量の記憶装置である外部記憶装置８を波形データベースとして機能させればよい。あるいは、外部のホスト又はサーバコンピュータに具備されている波形データベースに対して、通信インタフェース９及び通信ネットワークを介してアクセスして、圧縮したデータをそこに書き込んだり、再生時に必要な圧縮データを外部記憶装置８あるいはＲＡＭ３等にダウンロードするようにしてもよい。波形生成時には、波形データベースに記憶されている圧縮データを使用して所定の波形生成処理（後述する）を行い、ディジタル波形データを生成する。生成したディジタル波形データは、上記のように波形インタフェース７を介してアナログ出力してもよいし、あるいは、通信インタフェース９等を介してディジタルデータのまま外部に転送出力することも可能である。なお、波形データベースとして、外部記憶装置８あるいは外部のホスト又はサーバコンピュータ等、外部メモリを使用した場合は、指定された波形データに迅速にアクセスできるようにするために、内部の転送バッファ（ＲＡＭ３等で構成する）に波形データベースの全部あるいは一部を転送しておくようにするとよい。
【００２１】
なお、上述した実施例に示すような装置は入力操作装置５や表示装置６あるいは外部記憶装置８などを１つの装置本体に内蔵したものに限らず、それぞれが別々に構成され、ＭＩＤＩインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものであってもよいことは言うまでもない。
なお、この発明の実施にあたっては、図１に示したようなコンピュータシステムが波形圧縮処理と波形生成処理の両方の機能を必ずしも兼備している必要はなく、どちらか一方のみを実施し得るような構成であってもよい。
【００２２】
上述したように、波形インタフェース７を介して変換入力されたディジタル波形データは、ＲＡＭ３あるいは外部記憶装置８等における所定の記憶領域に一旦書き込まれることで一時記憶される。この一時記憶された波形データに対して、ＣＰＵ１からの指示に従って所定の波形圧縮処理が施されることにより、圧縮データが生成される。生成された圧縮データは、適宜の波形データベースに記憶される。このようにして、波形データを圧縮して記憶するようにしておくことで、波形データを記憶するのに必要な波形メモリ記憶容量を節約している。そこで、こうした波形圧縮処理の実施例について、図２を用いて説明する。図２は、ＣＰＵ１の制御の下で実行される波形圧縮処理の手順を等価的ブロック図によって略示するものである。ただし、この実施例においてＲＡＭ３あるいは外部記憶装置８等に一時記憶されているディジタル波形データは、ピアノやギターなどの各種の自然楽器を実際に演奏して得られる単音毎のアナログ波形信号たる非調和音を、所定のサンプリング周波数に従ってサンプリングすることによりディジタル信号へと変換されたデータである。
【００２３】
まず、「非調和音原波形入力」（プロセスＰ１）では、ＲＡＭ３あるいは外部記憶装置８等に一時的に記憶されている単音毎の波形データを選択的に読み出す。勿論、一般的に音高（又は音名）が同じである単音であっても、ピアノ音やギター音等のように各楽器毎にその演奏音の波形特徴（つまり音色）は異なっている。従って、「非調和音原波形入力」（プロセスＰ１）で入力する波形データは、これらの各種観点に従う波形特徴の違いを考慮したものである。よって、「単音毎の波形データ」は、例えば「楽器名」と「音高」の組合わせを用いて区別され、記述することができる。「非調和音原波形入力」（プロセスＰ１）では、該「楽器名」と「音高」とからなる音色指定データを生成し、生成した音色指定データを例えばＲＡＭ３の所定領域に割当てられる波形情報記憶部Ｍ３に記憶する。この波形情報記憶部Ｍ３に記憶される音色指定データは、波形データ圧縮のためのプロセスＰ２〜Ｐ５の処理によって生成される圧縮データのインデックス情報として使用される。
【００２４】
次に、「周波数分析による成分分離」（プロセスＰ２）では、上述の「非調和音原波形入力」（プロセスＰ１）で読み出された単音の波形データを、基本倍音成分と上位倍音成分とノイズ成分とに分離する処理を行う。すなわち、後述するように、非調和音では基本波に対して各高調波（倍音）の全てが非調和の関係にあるが、基本波あたりだけを取り出すとその音は調和的な音であり、上位の高調波あたりだけを取り出すとその音は非調和的な音が多く含まれた音である。そこで、「非調和音原波形入力」（プロセスＰ１）で読み出された単音の波形データを、少なくとも基本倍音成分と上位倍音成分とに分離する。この分離処理の一例を示すと、まず、分離対象たる波形データを入力し、これを高速フーリエ変換（ＦＦＴ）によって周波数分析（スペクトル分析）してその基本周波数成分と高調波成分（つまり倍音成分）とを抽出する。こうして抽出された基本周波数成分と高調波成分のうち、例えば基本周波数成分と２次高調波（２倍音）成分と３次高調波（３倍音）成分とを基本倍音成分、それ以外の４次高調波（４倍音）以上の全ての高調波成分を上位倍音成分として、抽出した各成分をいずれかに分離する。また、こうして分離した基本倍音成分と上位倍音成分とをそれぞれ逆フーリエ変換することにより、基本倍音成分波形と上位倍音成分波形とを生成する。そして、該基本倍音成分波形及び上位倍音成分波形を用いて分離対象たる入力波形との間で所定の演算処理（例えば減算処理など）を行うことにより、その演算結果としてノイズ成分波形を得る。
【００２５】
上述した高速フーリエ変換（ＦＦＴ）による周波数分析処理の一例を図３に示す。この図３は、「周波数分析による成分分離」（プロセスＰ２）において実行される周波数分析結果の一実施例を示した概念図である。この実施例においては、縦軸に周波数（ピッチ）を示し、横軸に時間を示した。この図において波打つようにして現れている曲線は各倍音における周波数を示したものであり、直線は基本周波数（この実施例では０．３５ｋＨｚ）及び基本周波数の所定の整数倍の各周波数を便宜的に等間隔に示した周波数目盛りである。すなわち、各曲線は各倍音のピッチの時間的変化の様子を表したものである。なお、この実施例においては、仮に１０倍音（３．５ｋＨｚ）の周波数を示す曲線が３．５ｋＨｚを示す直線上に重なるように表示した場合（すなわち、１０倍音でチューニングした場合）を例に示した。
【００２６】
この図３から理解できるように、非調和音を周波数分析すると、チューニングした１０倍音よりも低い倍音ほど対応する各周波数目盛りよりも各倍音のピッチが低く現れ、１０倍音よりも高い倍音ほど対応する各周波数目盛りよりも各倍音のピッチが高く現れる。すなわち、周波数分析対象の音が調和音である場合には本来各倍音全てのピッチが対応する各周波数目盛り上に重なって現れることになるのだが、周波数分析対象の音が非調和音である場合には各倍音のピッチが対応する各周波数目盛りと全てずれて現れる。このことは所望のどの倍音のピッチを対応する周波数目盛りにあわせた場合であっても現れることであり、こうしたことが非調和音の特徴である。このように、ピアノやギターなどの自然楽器から奏でられる楽器音は、各倍音のピッチがそれぞれに対応する基本周波数の完全な整数倍の周波数と一致せずに、各倍音のピッチがそれぞれに対応する基本周波数の整数倍の周波数と少しずつだがずれをもっている、つまり非整数倍音成分を含む音である。また、自然楽器においては、１つの音を出しているあいだ中、完全に一定の周波数・強さが保たれることはまずないことから、この図３に示した曲線のように不規則的な揺らぎを含んでいるのが普通である。したがって、ピアノやギターなどの自然楽器から奏でられる楽器音を高品質に表現するためには、こうした「ずれ・揺らぎ」を再現できるようにすることが非常に重要である。
【００２７】
図２に戻って、「基本倍音成分分析」（プロセスＰ３）では、上述の「周波数分析による成分分離」（プロセスＰ２）で原波形から分離・生成された基本倍音成分波形の特徴を分析し、この特徴に従って最適なベクトル量子化処理を行い、ベクトル量子化に従って圧縮された当該基本倍音成分波形の圧縮データを生成する。同様に、「上位倍音成分分析」（プロセスＰ４）では、上述の「周波数分析による成分分離」（プロセスＰ２）で原波形から分離・生成された上位倍音成分波形の特徴を分析し、この特徴に従って最適なベクトル量子化処理を行い、ベクトル量子化に従って圧縮された当該上位倍音成分波形の圧縮データを生成する。こうした「基本倍音成分分析」（プロセスＰ３）や「上位倍音成分分析」（プロセスＰ４）では、それぞれを複数区間に分割し、この複数区間毎にベクトル量子化することにより、原波形により忠実に波形圧縮をすることができる。複数区間に分割する際には、処理対象の基本倍音成分波形や上位倍音成分波形の波形の位置や波形形状の特性等を考慮し各部分ごとの特徴を観察、分析し、それぞれの部分的特徴にあった箇所で区切って、当該基本倍音成分波形や上位倍音成分波形を複数の波形区間に分割する。例えば、位置としては、「アタック部」（音の立ち上がり部分）、「持続部」（音の定常部）などが考慮される。また、波形形状の特性等としては、振幅エンベロープ形状（その実効値やピーク値など）、ゼロクロス回数あるいはゼロクロス間の周期、ピーク回数あるいはピーク間の周期、前記ピーク値の存在場所や、複数ピークレベルの分布など、種々の要素を適宜考慮するとよい。
【００２８】
一般的に、ピアノの鍵盤押下やギターの弦を弾くことに伴って発せられる単音は減衰音であり、音の立ち上がりが急であるアタック部と音が時間経過と共に減衰する持続部とで構成される。アタック部は基本的には繰り返し性を持たないランダムな波形に該当することから、例えば、その内容や発音期間の中のどの位置に位置するかといった重要度の有無等を考慮して、必要な時間長からなる代表ベクトルをループさせずに一回だけ使用することで所要の基本倍音成分波形や上位倍音成分波形を再生する。他方、減衰する持続部は基本的に繰り返し波形とみなすことができるので、例えば、１周期ないし複数周期の波形を代表ベクトルとして用いて、該代表ベクトルをループする（または相前後する２つの代表ベクトルをクロスフェードループする）ことで、こうした持続部の再生を行うことができる。そこで、そのような代表ベクトルのうちの波形部分に該当するベクトルを基本倍音成分音色ベクトルとして基本倍音成分音色ベクトル記憶部Ｍ１に記憶しておき、この「基本倍音成分分析」（プロセスＰ３）で生成する圧縮データとして、基本倍音成分音色ベクトル記憶部Ｍ１に記憶した音色ベクトルを指定するベクトル情報と、この指定された音色ベクトルをどのように用いるか（例えばそのベクトルを使用する区間やループする期間、あるいはそれに付与するエンベロープの形態など）を記述する情報等を含むものを生成するようにするとよい。
【００２９】
一方、「上位倍音成分分析」（プロセスＰ４）の処理手順は、基本的には、図３に示された「基本倍音成分分析」（プロセスＰ３）の処理手順と略同様の手順を用いてよい。すなわち、「上位倍音成分分析」においても、「基本倍音成分分析」と同様の「波形区間分割」処理をしてもよく、その場合は分割された各波形区間を対象にしてベクトル量子化処理を施す。上位倍音成分波形の区間分割は、基本倍音成分の区間分割とほぼ一致させてもよい。勿論、上位倍音成分の波形区間分割形態は、それに対応する基本倍音成分の波形区間分割形態とは当然異なるものであるため、基本倍音成分及び上位倍音成分をそれぞれ独自に区間分割してもよいことは言うまでもない。
【００３０】
次に、「ノイズ成分切り出し」（プロセスＰ５）では、上述の「周波数分析による成分分離」（プロセスＰ２）で原波形から分離・生成されたノイズ成分の波形データを分析し、ノイズ成分波形の一部区間の波形のみをノイズ成分記憶部Ｍ４に記憶する。すなわち、ノイズ成分については、打鍵や打弦あるいはピッキング直後の短い時間（例えば、数十〜数百ミリ秒程度）分の波形データしか必要ないために、その時間部分に対応する波形データのみをノイズ成分記憶部Ｍ４に記憶する。こうすることにより、ノイズ成分記憶部Ｍ４に記憶しておくノイズ成分波形のデータ量を大幅に削減することができる。なお、場合によっては、こうしたノイズ成分を基本倍音成分あるいは上位倍音成分いずれかのアタック部に混ぜ、基本倍音成分あるいは上位倍音成分として記憶するようにしてもよい。こうした場合には、上述した「周波数分析による成分分離」（プロセスＰ２）によるノイズ成分の分離や、ノイズ成分切り出し（プロセスＰ５）などの処理を行わなくてもよいことから、これらを省略することができる。また、ノイズ成分については、ノイズ成分自体のデータを共通することが可能であるために、こうしたデータ共通化を行うことでさらに圧縮率を下げるようにしてもよい。例えば、ピアノの各鍵を押下する際に生ずる音は各鍵毎に大きく異なるわけではないことから、こうしたノイズ音を共通化するとよい。
【００３１】
図２において、波形情報記憶部Ｍ３は、上述の「基本倍音成分分析」（プロセスＰ３）で生成された圧縮データのうち音色ベクトルを除く圧縮データ（第１の圧縮データ）と「上位倍音成分分析」（プロセスＰ４）で生成された圧縮データのうち音色ベクトルを除く圧縮データ（第２の圧縮データ）とを、前記「非調和音原波形入力」（プロセスＰ１）で生成された音色指定データと組にして、音色指定情報として記憶するものである。従って、波形再生のために、所望の楽器名と音高とをインデックスにして、波形情報記憶部Ｍ３から該当する音高についての基本倍音成分及び上位倍音成分の第１及び第２の圧縮データを呼び出すことができる。また、上記楽器名と音高とによるインデックスに応じて、基本倍音成分音色ベクトル記憶部Ｍ１及び上位倍音成分音色ベクトル記憶部Ｍ２からそれぞれ所定の基本倍音成分音色ベクトルと上位倍音成分音色ベクトルとを読み出し、この呼び出された圧縮データに含まれるベクトル情報に基づき基本倍音成分波形と上位倍音成分波形とをそれぞれ再生し、この両者とノイズ成分波形とを加算的に合成することで非調和音の楽音波形を生成することができる。非調和音の楽音は各倍音成分の周波数が第１倍音の整数倍ではないことに起因する独特の非調和感（うなり）を持ち、このうなりは発音後の時間経過と共に周期や大きさが複雑に変化する。非調和音はこのような性質を持つため、非調和音を（少なくとも）２つの成分に分けて圧縮することで、ピッチ変化と音量変化が各々異なる２種類の調和音が合成されることになる。これら２つの調和音を加算することで、上記非調和的特徴をほぼ再現でき、これにより高いデータ圧縮を実現して非調和音を合成することができる。
【００３２】
次に、図４を参照しながら、上述した「基本倍音成分分析」（図３のプロセスＰ３）の処理について詳細を説明する。図４は、「基本倍音成分分析」の処理手順を等価的ブロック図によって略示するものである。なお、図４に示された処理は、「基本倍音成分分析」（プロセスＰ３）のすべてを示しているわけではなく、主に、新規に基本倍音成分の音色ベクトルを生成して、これを基本倍音成分音色ベクトル記憶部Ｍ１に蓄積記憶する処理に関連する部分を示している。また、ここでは「基本倍音成分分析」の処理についてのみを説明するが、「上位倍音成分分析」（図３のプロセスＰ４）の処理も同様の処理でよいことから、その説明については省略する。すなわち、以下の説明において、「基本倍音成分」の部分を「上位倍音成分」に読み替えれば、「上位倍音成分分析」処理についての説明となる。
【００３３】
まず、「波形区間分割」処理Ｓ１がなされるとすると（前述したように必須処理ではないが）、上述の「周波数分析による成分分離」（図２のプロセスＰ２）で原波形から分離・生成された基本倍音成分波形を複数の波形区間に分割する。次に、「各波形区間のベクトル生成」処理Ｓ２では、各分割区間においてベクトル量子化の処理を行い、基本倍音成分についての「振幅ベクトル」、「ピッチベクトル」「音色ベクトル」を各々抽出する。音色ベクトルの抽出においては、１周期毎の波形形状の特徴が共通又は類似しているかの判定を効率的に行うために、基本周波数の１周期毎に波形を切り出して、そのピッチと振幅レベルを共通にする規格化処理を行い、純粋に１周期波形の波形形状のみの比較が行えるようにするとよい。その場合、以後の音色ベクトル量子化処理は、ピッチと振幅レベルが規格化された波形データに関して行われることになり、この規格化したピッチと振幅レベルに対する元のピッチと振幅レベルの時間的変化状態を示すベクトルとして、「ピッチベクトル」と「振幅ベクトル」を生成する。なお、この「波形区間分割」処理Ｓ１がなされた場合は、複数の波形区間の分割態様を記述する情報として「区間情報」が生成され、ベクトル情報に対応して記憶される。
【００３４】
「各波形区間のベクトル生成」処理Ｓ２の音色ベクトル抽出について詳述すると、分割した各波形区間毎の波形の特徴を考慮して、それらの波形データの代表ベクトルを生成する。例えば、１つの波形区間において同じ様な１周期又は複数周期波形が繰り返している場合、とりあえず、それを仮の代表ベクトルとして選定し、同一波形区間内の波形データの仮の代表ベクトルの平均的又は中間的または最も特徴的なベクトルを、当該グループの代表ベクトルとして決定し、これを生成する。生成した代表ベクトル（具体的には１又は複数周期からなる波形データである）は、基本倍音成分音色ベクトル記憶部Ｍ１に記憶され、音色ベクトルとして登録される。波形情報記憶部Ｍ３には、基本倍音成分音色ベクトル記憶部Ｍ１に記憶されているいずれかの音色ベクトルを特定する基本倍音成分用の「ベクトル情報」が生成される。この「ベクトル情報」は、基本倍音成分音色ベクトル記憶部Ｍ１に記憶されているどの音色ベクトル（具体的には１又は複数周期からなる波形データ）を指示するインデックスデータであるから、複数ビットからなる僅かなデータである。
【００３５】
音色ベクトル以外の「ベクトル情報」であるピッチベクトル及び振幅ベクトルは、「波形区間分割」処理Ｓ１から生成された「区間情報」との組合わせで、当該波形区間における基本倍音成分の圧縮データとして、波形情報記憶部Ｍ３に記憶される。従って、１つの奏法区間に関する圧縮データは、その奏法区間を分割してなる複数の波形区間の各々についての「ベクトル情報」と「区間情報」との組合わせを含んでいる。前述のように音色ベクトルはピッチと振幅レベルを規格化した波形データに関してベクトル量子化処理を施すことによって形成され、規格化されたピッチ及び振幅との差分をそれぞれ「ピッチベクトル」と「振幅ベクトル」として、波形情報記憶部Ｍ３に記憶する。
【００３６】
こうして、周期分析を行うことにより、「基本倍音成分」及び「上位倍音成分」の各々について「振幅ベクトル」、「ピッチベクトル」、「音色ベクトル」を抽出する。振幅ベクトルとピッチベクトルは、分析した１波につき１点の時刻と所定の値を持つデータの集合であるため、原波形そのものに比べて波形メモリに記憶するデータ量が少なくて済む。例えば、４４０Ｈｚ付近の音で約１００分の１（４４．１ｋＨｚサンプリングの場合）と十分に圧縮率が高いものである。なお、同じような値が連続する冗長な部分を削除することにより、さらに圧縮率を上げるようにしてもよい。音色ベクトルは、アタック部は数十ミリ秒程度、持続部は例えば３０波に１波程度の割合で代表ベクトルを採用し、それぞれの代表ベクトルを位相同期させてクロスフェード接続することにより、トータルで数十分の１の圧縮率を実現することができる。勿論、必要に応じてさらに圧縮率を上げることも可能であることは言うまでもない。
【００３７】
ここで、上述した「波形圧縮処理」（図２参照）の実行により生成され各波形データベース（つまり基本倍音成分音色ベクトル記憶部Ｍ１、上位倍音成分音色ベクトル記憶部Ｍ２、波形情報記憶部Ｍ３、ノイズ成分記憶部Ｍ４）のそれぞれに記憶される基本倍音成分ベクトルデータと上位倍音成分ベクトルデータとノイズ成分データとについて、それぞれの一例を図５に示す。図５は、「波形圧縮処理」における各処理実行毎のデータを概略的に示す概念図である。
【００３８】
まず、図５（ａ）は入力された原波形の一例を振幅エンベロープによって概略的に示す概念図である。このデータは図２に示した「非調和音原波形入力」（プロセスＰ１）において読み出される非調和音の原波形に関するデータであり、この波形データは音の立ち上がりが急であり時間の経過と共に次第に減衰している減衰音であることを示している。こうした波形形状は、例えばピアノの１つの鍵盤やギターの１本の弦などを１回のみ押下したり弾いたりした場合によく現れる形状である。
【００３９】
図５（ｂ）は、上記した原波形から分離・生成された基本倍音成分波形、上位倍音成分波形、ノイズ成分波形の一例をそれぞれ振幅エンベロープによって概略的に示す概念図である。これらのデータは、図２に示した「周波数分析による成分分離」（プロセスＰ２）の実施により生じる波形である。基本倍音成分には各種楽器が持つ基本的な音の特徴が含まれており、上位倍音成分には各種楽器が持つ非調和的な音の特徴がより多く含まれることから、非調和音の原波形を周波数分析して成分分離すると、図５（ｂ）の上段及び中段に示すようなデータがそれぞれ生成される。また、ノイズ成分は例えばピアノの鍵盤の押下に伴う鍵盤自身から生ずる音やギターの弦を指（あるいはピックなど）を用いて弾く際の弦と指（あるいはピックなど）とが摺れることにより生ずる音など、実際の楽器音が生ずる前の短い時間に発せられる楽器音以外のノイズであることから、図５（ｂ）の下段に示すような音の立ち上がり部分の短い時間の間だけに波形の生じるデータが生成される。
【００４０】
次に、図５（ｃ）は、基本倍音成分ベクトルデータと上位倍音成分ベクトルデータとノイズ成分データの一例をそれぞれ示す概念図である。これらのデータは、図２に示した「基本倍音成分分析」（プロセスＰ３）や「上位倍音成分分析」（プロセスＰ４）や「ノイズ成分切り出し」（プロセスＰ５）の実施により各々生じるデータである。この図５（ｃ）では、基本倍音成分ベクトルデータ及び上位倍音成分ベクトルデータのそれぞれについて、上から順に、抽出された「振幅ベクトル」、「ピッチベクトル」、「アタック+マルチループ波形」（すなわち、音色ベクトル）の一例を示した。
【００４１】
この実施例に示した「振幅ベクトル」から理解できるように、上位倍音成分の振幅は基本倍音成分の振幅よりも早い時間に収束する。また、この実施例に示した「ピッチベクトル」から理解できるように、上位倍音成分のピッチは基本倍音成分のピッチと揺らぎ方が全然異なり、基本倍音成分のピッチと比較すると全体的に高いピッチで時間的に変化している。これにより、非調和が再現されることになる。すなわち、基本倍音成分波形と上位倍音成分波形とを同じピッチで再生するとあまり非調和を再現することができないが、基本倍音成分波形と上位倍音成分波形とをそれぞれ微妙に異なるピッチで再生・生成し、該生成した波形を混合することにより簡単にデチューン効果を得ることができ、各倍音の周波数の「ずれ・揺らぎ」を再現することができることから、合成音はうなりが生じた音となる。このように、基本倍音成分波形と上位倍音成分波形とを２種類のピッチベクトルを用いて生成することで、高品質な非調和音を再現性よく生成できるようになっている。
【００４２】
この実施例に示した「アタック+マルチループ波形」において、太線は音色ベクトルを表す。例えば、時点ｔ０からｔ１までの波形区間については、比較的サイズの大きな（多数周期波形からなる）基本倍音成分音色ベクトルＷ１が音色ベクトルとして使用されており、再生時には、これが、時点ｔ０からｔ１までの間の始まりの所定期間で１回再生され、残りの期間で適宜ループ再生される（例えば、基本倍音成分音色ベクトルＷ１の末尾の波形と次の区間の基本倍音成分音色ベクトルＷ２との間でクロスフェードループ再生される）。また、時点ｔ１からｔ２までの波形区間については、基本倍音成分音色ベクトルＷ２が音色ベクトルとして使用されており、再生時には、これが、時点ｔ１からｔ２までの間でループ再生される（基本倍音成分音色ベクトルＷ２と基本倍音成分音色ベクトルＷ３との間でクロスフェードループ再生される）。以下、同様にして各時間毎に音色ベクトルをループ再生する。なお、上位倍音成分についても上記した基本倍音成分と同様の処理を行えばよいことから、上位倍音成分についての説明は省略する。
また、図５（ｃ）下段の図から理解できるように、ノイズ成分データは図５（ｂ）下段に示したノイズ成分波形の内の特徴ある波形部分のみを所定時間分だけ切り出したものである。上述したように、ノイズ成分は実際の楽器音が生ずる前の短い時間に発せられる楽器音以外のノイズであることから、音の立ち上がり部分の短い時間での波形のみを記録しておけばよい。
【００４３】
次に、図５（ｃ）に示した基本倍音成分ベクトルデータと上位倍音成分ベクトルデータとノイズ成分データとを用いて波形を生成する「波形生成処理」について、図６を参照しながら説明する。図６は、入力された所定の演奏開始情報、例えばユーザによる鍵盤操作に従う演奏開始情報あるいは予め用意されたＭＩＤＩデータに含まれる演奏開始情報などに基づき、楽音再生すなわち波形生成を行う処理過程の一例を等価的ブロック図によって略示するものである。この楽音再生すなわち波形生成処理は、図１のハードウェア装置を用いて、ＣＰＵ１による所定のソフトウェアプログラムの実行によって行われる。
【００４４】
「再生制御」処理Ｓ１０は、ユーザによる鍵盤操作などに伴って入力される演奏開始指示、あるいは予め生成済みのＭＩＤＩデータなどに基づいて入力される演奏開始指示に従って、該演奏開始指示によって指示されるピッチと音色等を持つ楽音波形を生成するための各種制御を行う。まず、演奏開始指示に含まれる「楽器名」（音色）と「キーナンバ」（音高）などの所定の情報に応じて、基本倍音成分音色ベクトル記憶部Ｍ１、上位倍音成分音色ベクトル記憶部Ｍ２及び波形情報記憶部Ｍ３から、指定される所定の波形についてのベクトルセット、つまり基本倍音成分の音色ベクトル、ピッチベクトル、振幅ベクトルと、上位倍音成分の音色ベクトル、ピッチベクトル、振幅ベクトルとを選択し、これらを読み出す。前述のように、基本倍音成分についての第１の圧縮データは、基本倍音成分音色ベクトルを指示する「ベクトル情報」と、「区間情報」、「ピッチベクトル」、「振幅ベクトル」等を含んでいる。また、上位倍音成分についての第２の圧縮データは、上位倍音成分音色ベクトルを指示する「ベクトル情報」と、「区間情報」、「ピッチベクトル」、「振幅ベクトル」等を含んでいる。
【００４５】
「基本倍音読出」処理Ｓ１１では、基本倍音成分についての第１の圧縮データのうちの「ベクトル情報」及び「区間情報」に基づき、上位倍音成分音色ベクトル記憶部Ｍ１から基本倍音成分音色ベクトルを読み出す。「基本倍音加工」処理Ｓ１２では、基本倍音成分音色ベクトル記憶部Ｍ１から読み出した基本倍音成分音色ベクトルと必要な第２の圧縮データ（つまり、区間情報、ピッチベクトル、振幅ベクトル等）とに基づき、所要の基本倍音成分波形を再生・生成する。すなわち、基本倍音成分音色ベクトルの波形を区間情報に従って適宜ループし（繰り返し）、かつピッチベクトルに従ってそのピッチを時間的に制御し（勿論、基本ピッチはＭＩＤＩデータに含まれるキーナンバに応じて設定・制御される）、かつ振幅ベクトルに従ってその振幅エンベロープを設定・制御する。この際に行われる各基本倍音成分音色ベクトルの接続は、接続対象である２つの音色ベクトル間でクロスフェード合成により行われる。こうして、基本倍音成分波形を生成する。
【００４６】
他方、上位倍音成分についても、上記基本倍音成分と同様にして、「上位倍音読出」処理Ｓ１３では、上位倍音成分についての第２の圧縮データのうちの「ベクトル情報」及び「区間情報」に基づき、上位倍音成分音色ベクトル記憶部Ｍ２から上位倍音成分音色ベクトルを読み出す。そして、「上位倍音加工」処理Ｓ１４では、上位倍音ベクトル記憶部Ｍ２から読み出した上位倍音成分音色ベクトルと必要な第２の圧縮データ（つまり、区間情報、振幅ベクトル、ピッチベクトル等）とに基づいて、所要の上位倍音成分波形を再生・生成する。
【００４７】
なお、再生しようとする上位倍音成分の圧縮データは、対応する基本倍音成分の周期性に同期させた区間分割を行ってベクトル量子化し作成してもよい。この場合における波形の時間軸上の伸縮制御は、「ベクトル情報」に基づき上位倍音成分音色ベクトル記憶部Ｍ２から上位倍音成分音色ベクトルを読み出す際に若しくは読み出した後に、該上位倍音成分音色ベクトルの時間長を、今回同時に再生しようとする基本倍音成分の周期に応じて、適宜伸縮制御するものとする。これは、再生しようとする基本倍音成分の周期の伸縮に同期させて上位倍音成分音色ベクトルの時間長も伸縮させた方が、上位倍音成分波形の再現性がよくなるからである。上位倍音成分音色ベクトルの時間長伸縮制御は、対応する基本倍音成分音色ベクトルの読出周期（読出レート）の変化に連動させて上位倍音成分音色ベクトル記憶部Ｍ２の読出レートを変化させる、といった単純なやりかたであってもよいし、時間軸伸縮制御を採用して行ってもよい。
【００４８】
「ノイズ読出」処理Ｓ１５では、ノイズ成分記憶部Ｍ４からノイズ成分データを読み出す。ノイズ成分記憶部Ｍ４にはノイズ成分そのものの波形データが記憶されていることから、この記憶されたノイズ成分データをそのまま読み出すだけで、ノイズ成分波形を再生・生成することができる。このノイズ成分データを読み出す際には、演奏開始指示に含まれる「キーナンバ」に応じた音高に対して比例することのない一定の周波数を用いる。こうして生成される基本倍音成分波形は楽器音の基本・骨格となる音響的特徴を、上位倍音成分波形は非調和的な音響的特徴を、ノイズ成分波形は撥弦的な音響的特徴を再現した波形である。「混合」処理Ｓ１６では、上記のようにして再生・生成された基本倍音成分波形と上位倍音成分波形とノイズ成分波形とを混合し、これら全ての成分を混合してなる楽音波形データを生成する。こうして生成された楽音波形データは、再生・提供される（ステップＳ１７）。再生された楽音波形データは、ディジタルデータのまま他の利用装置に供給するようにしてもよいし、あるいはアナログ変換し、適宜のサウンドシステムを介して空間的に発音させるようにしてもよい。なお、基本倍音成分波形の信号と上位倍音成分波形の信号とノイズ成分波形の信号とを別々に発音して、これらを空間で混合するようにしてもよい。
【００４９】
なお、上述した「周波数分析による成分分離」（プロセスＰ２）で実行される周波数分析においては、抽出された基本周波数成分と高調波成分のうち、基本周波数成分と２次高調波成分と３次高調波成分とを「基本倍音成分」、それ以外の４次高調波以上の全ての高調波成分を「上位倍音成分」として、抽出した基本周波数成分と高調波成分を２つの成分に分離するようにしたがこれに限らない。例えば、基本周波数成分と高調波成分のうちの２次・３次・４次・５次高調波成分までを「基本倍音成分」、それ以外の６次高調波以上の全ての高調波成分を「上位倍音成分」として分離するようにしてもよい。また、上述した実施例においては、「上位倍音成分」に分離する高調波成分を「基本倍音成分」に含まれない全ての高調波成分としたがこれに限らず、所定の範囲内にある高調波成分までを「上位倍音成分」として分離するようにしてもよい。さらに、ユーザが適宜に所定の範囲内にある高調波成分までを「基本倍音成分」とし、それ以外の高調波成分を「上位倍音成分」として適宜に設定することができるようにしてもよい。また、所望の高調波成分のみを選択的に「基本倍音成分」や「上位倍音成分」として分離することができるようにしてもよい。
【００５０】
また、上述した実施例においては、入力波形を基本倍音成分と上位倍音成分の２つの成分に分離するようにしたがこれに限らず、少なくとも２以上の複数の成分に分離するようにしてもよい。例えば、基本周波数成分と２次高調波成分と３次高調波成分とを「基本倍音成分」、４次・５次・６次高調波成分を「第１上位倍音成分」、それ以外の７次高調波以上の全ての高調波成分を「第２上位倍音成分」などとして、入力波形を複数の成分（この場合には３つの成分）に分離するようにしてもよい。ただし、そうした場合には上述した各実施例において、分離した成分毎に対応するように「波形圧縮処理」や「波形生成処理」などの各種処理を一部変更する必要があることは言うまでもない。
【００５１】
なお、上記装置において使用する演奏情報（ＭＩＤＩデータなど）のフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏情報を表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。また、複数チャンネル分の演奏情報が存在する場合は、複数のチャンネルのデータが混在した形式であってもよいし、各チャンネルのデータがトラック毎に分かれているような形式であってもよい。
【００５２】
【発明の効果】
この発明によれば、非調和音の原波形を基本倍音成分と上位倍音成分とに分離して各成分毎にベクトル量子化を行って波形データベースに記憶しておき、これらのベクトルデータを波形生成時に成分毎に異なるピッチで読み出して合成できるようにしたことから、これにより波形圧縮効率を高めることに寄与するとともに、波形生成の際には簡単にデチューン効果を得ることができるようになることから、原波形の再現性、特に非調和音の再現性に大変優れている、等々の種々の優れた効果を奏する。
【図面の簡単な説明】
【図１】  この発明に係る波形圧縮方法及び波形生成方法を実施するために使用されるハードウエア構成例を示すブロック図である。
【図２】  ＣＰＵの制御の下で実行される波形圧縮処理の手順を等価的ブロック図によって略示するものである。
【図３】  「周波数分析による成分分離」において実行される周波数分析結果の一実施例を示した概念図である。
【図４】  「基本倍音成分分析」の処理手順を等価的ブロック図によって略示するものである。
【図５】  「波形圧縮処理」における各処理実行毎のデータを概略的に示す概念図であり、図５（ａ）は原波形の一例を振幅エンベロープによって概略的に示す概念図、図５（ｂ）は原波形から分離・生成された基本倍音成分波形、上位倍音成分波形、ノイズ成分波形の一例をそれぞれ振幅エンベロープによって概略的に示す概念図、図５（ｃ）は基本倍音成分ベクトルデータと上位倍音成分ベクトルデータとノイズ成分データの一例をそれぞれ示す概念図である。
【図６】  入力された所定の演奏開始情報に基づいて波形生成を行う処理過程の一例を等価的ブロック図によって略示するものである。
【符号の説明】
１…ＣＰＵ、１Ａ…タイマ、２…リードオンリメモリ（ＲＯＭ）、３…ランダムアクセスメモリ（ＲＡＭ）、４…ＭＩＤＩインタフェース、５…入力操作装置、６…表示装置、７…波形インタフェース、８…外部記憶装置、９…通信インタフェース、１Ｄ…通信バス、Ｘ…通信ネットワーク
【図１】
0003804522.tif 000002
【図２】
0003804522.tif 000003
【図３】
0003804522.tif 000004
【図４】
0003804522.tif 000005
【図５】
0003804522.tif 000006
【図６】
0003804522.tif 000007