(57)【要約】      （修正有）【課題】少ない容量で減衰系の楽器音の波形データをメモリに記憶しても、種々の演奏強度の楽音を忠実に得る。【解決手段】最大強度の波形データ(f)は接続ポイントが設定された全波形データを波形メモリに記憶する。最大強度より弱い演奏強度(mf)の波形データW(mf)については、アタック波形作成処理Ａを行うことにより、アタック特徴部の波形の後に波形データ(f)は接続ポイント以降に接続する接続部の波形からなるアタック部波形データWa(mf)を形成して波形メモリに記憶する。演奏強度(mf)より弱い演奏強度(mp)、(p)の波形データW(p)についても、同様のアタック波形作成処理Ｂ、Ｃを行うことによりアタック部波形データWa(mp)、Wa(p)を波形メモリに記憶する。これにより、波形メモリの記憶容量を低減することができる。【選択図】図３
2010204366.tif 000002
【特許請求の範囲】
【請求項１】
演奏強度が最強の全波形であって、複数の演奏強度に対応した複数の接続ポイントと、同複数の演奏強度に対応した複数の読出開始アドレスとが設定されている第１波形データと、複数の演奏強度に対応した複数の第４波形データであって、それぞれ、対応する演奏強度の波形データにおけるアタック特徴部と、それに続く、前記第１波形データの該演奏強度に対応した接続ポイント以降へ接続するための接続部とを含む複数の第４波形データとが記憶されている波形メモリと、
供給される発音指示に含まれる演奏強度データが示す演奏強度に応じて、複数の前記第４波形データの内の何れか１を選択する選択する選択部と、
前記発音指示に応じて、前記選択部により選択された第４波形データをその先頭アドレスから読み出すとともに、該読み出しに同期して、前記第１波形データを、前記複数の読出開始アドレスの内の当該演奏強度に対応する読出開始アドレスから読み出す読出部と、
前記読出部により読み出された第４波形データの前記接続部の末尾以降の所定ポイントで、該第４波形データに同読み出された第１波形データを接続し、該接続された波形データに基づいて楽音波形データを形成する楽音形成部と、
を備えることを特徴とする波形メモリ音源。
【請求項２】
演奏強度が最強の全波形であって、複数の演奏強度に対応した複数の接続ポイントと、同複数の演奏強度に対応した複数の読出開始アドレスとが設定されている第１波形データと、複数の演奏強度に対応した複数の第４波形データであって、それぞれ、対応する演奏強度の波形データにおけるアタック特徴部と、それに続く、前記第１波形データの該演奏強度に対応した接続ポイント以降へ接続するための接続部とを含む複数の第４波形データとが記憶されている波形メモリと、
供給される発音指示に含まれる強度データに応じて、前記第１波形データと前記複数の第４波形データとの内の何れか１の波形データを選択する選択部と、
前記選択部により第１波形データが選択された場合は、前記波形メモリから、該選択された第１波形データをその先頭アドレスから読み出し、前記選択部により何れかの第４波形データが選択された場合は、前記波形メモリから、該選択された第４波形データを読み出すとともに、該読み出しに同期して、前記第１波形データを、前記複数の読出開始アドレスの内の当該演奏強度に対応する読出開始アドレスから読み出す読出部と、
前記選択部により第１波形データが選択された場合は、前記読出部により読み出された第１波形データに基づいて楽音波形データを形成し、何れかの第４波形データが選択された場合には、前記読出部により読み出された第４波形データの接続部の末尾以降の所定ポイントで、該第４波形データに同読み出された第１波形データを接続し、該接続された波形データに基づいて楽音波形データを形成する楽音形成部と、
を備えることを特徴とする波形メモリ音源。
【請求項３】
複数の前記各第４波形データは、その接続部に前記第１波形データと特性が同一な同一特性部を含んでおり、前記楽音形成部における前記第４波形データと前記第１波形データとの接続は、前記第１波形データの前記同一特性部内の全部あるいは一部の範囲において、前記第１波形データから前記第４波形データにクロスフェードすることにより接続されていることを特徴とする請求項１あるいは２記載の波形メモリ音源。
【請求項４】
前記第４波形データの読み出しに同期した前記第１波形データの読み出しは、前記読出部が、前記第４波形データの前記接続部を読み終えたタイミングで開始されることを特徴とする請求項１あるいは２記載の波形メモリ音源。
【請求項５】
前記第４波形データの読み出しに同期した前記第１波形データの読み出しは、前記読出部が、前記第４波形データを読み始めるタイミングで開始されることを特徴とする請求項１あるいは２記載の波形メモリ音源。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、波形メモリに記憶された波形データから楽音を合成する波形メモリ音源に関する。
【背景技術】
【０００２】
従来、楽音生成装置における音源の一つとして波形メモリ音源が知られている。波形メモリ音源は、実際の楽器を演奏したときの楽音をサンプリングしてデジタル信号に変換した波形データを波形メモリに記憶させておき、発生すべきノートナンバに応じた読出速度で波形メモリから波形データを読み出して、楽音を生成するようにしている。このような波形メモリ音源において自然楽器の音色に近似した楽音を波形メモリ音源で再生するためには、音高毎あるいは音域毎の波形データを音色毎に波形メモリに記憶させる必要があることから、波形メモリに記憶する波形データのデータ量が膨大な量となる。さらに、楽音の音高（音域）や鍵盤の押鍵速度等の演奏強度に応じて発生される楽音の音色が異なるようになる。例えば、鍵盤を強いタッチで押鍵すると、高域成分が増加した楽音が発生され、鍵盤を押鍵するタッチが弱くなるに従って、高域成分が減少した楽音が発生されるようになる。そこで、波形メモリ音源を備える楽音生成装置においては、波形メモリに音高（音域）や演奏強度に応じた楽音波形データを記憶することも必要とされる。このように、音高（音域）や演奏強度に応じた波形データを音色毎に波形メモリに記憶するようにすると、より膨大なメモリ容量の波形メモリが必要になる。
【０００３】
ところで、楽音波形のアタック部においては基本波の高調波成分等の高い周波数成分が多く含まれているが、持続部においては高調波の減衰が速く進んでおり、残った成分はほとんど基本波成分となるため、アタック部に比較して含まれる周波数成分は低いものとなる。そこで、波形メモリ音源のメモリ容量を低減する一手法として、全波形の波形データを波形メモリに記憶することに替えて、アタック部の波形データと、持続部の波形データの一部を繰り返し再生するループ波形データとして波形メモリに記憶するようにすることが提案されていた。このような波形メモリ音源において楽音を生成する際には、まず、アタック部の波形データを読み出し、次いで、ループ波形データを繰り返し再生するループ再生処理を行うことにより楽音波形を生成するようにしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３６６６３４６号公報
【特許文献２】特許第３５３４０１２号公報
【特許文献３】特許第３６５９０５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
波形メモリ音源において、メモリ容量を低減するために、アタック部の波形データとループ波形データを波形メモリに記憶するようにすると、楽音を生成する際に、ループ波形データを繰り返し再生する持続部においては音色が単調になるという問題点があった。また、従来の波形メモリ音源において、楽音波形の開始から終了までの全波形を波形メモリに記憶する場合は、膨大なメモリ容量を必要とすることから、通常は１つの演奏強度の波形データのみを波形メモリに記憶するようにしており、種々の演奏強度の楽音が忠実に得られないという問題点があった。
【０００６】
そこで、本発明は、少ない容量で減衰系の楽器音の波形データをメモリに記憶しても、種々の演奏強度の楽音を忠実に得ることのできる波形メモリ音源を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の波形メモリ音源は、演奏強度が最強の全波形であって、複数の演奏強度に対応した複数の接続ポイントと、同複数の演奏強度に対応した複数の読出開始アドレスとが設定されている第１波形データと、複数の演奏強度に対応した複数の第４波形データであって、それぞれ、対応する演奏強度の波形データにおけるアタック特徴部と、それに続く、前記第１波形データの該演奏強度に対応した接続ポイント以降へ接続するための接続部とを含む複数の第４波形データとが記憶されている波形メモリと、供給される発音指示に含まれる演奏強度データが示す演奏強度に応じて、複数の前記第４波形データの内の何れか１を選択する選択する選択部と、前記発音指示に応じて、前記選択部により選択された第４波形データをその先頭アドレスから読み出すとともに、該読み出しに同期して、前記第１波形データを、前記複数の読出開始アドレスの内の当該演奏強度に対応する読出開始アドレスから読み出す読出部と、前記読出部により読み出された第４波形データの前記接続部の末尾以降の所定ポイントで、該第４波形データに同読み出された第１波形データを接続し、該接続された波形データに基づいて楽音波形データを形成する楽音形成部とを備えることを最も主要な特徴としている。
【発明の効果】
【０００８】
本発明によれば、接続ポイントが設定されている最高強度の第１波形データと、アタック特徴部と、それに続く、第１波形データの接続ポイント以降へ接続するための接続部とを含む複数の第４波形データだけが波形メモリに記憶されていることから、波形メモリの記憶容量は少なくなっている。そして、楽音を合成する場合は、第４波形データをその先頭アドレスから読み出すとともに、該読み出しに同期して、第４波形データに対応する読出開始アドレスから第１波形データを読み出して、第４波形データの接続部以降に第１波形データを接続することにより楽音波形データを形成しているため、演奏強度に応じた複数の全波形データを、そのまま波形メモリに記憶した場合と比べて殆ど変わらない品質で、楽音を合成することができる。従って、種々の演奏強度の楽音を忠実に得ることができるようになる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例の波形メモリ音源を備える楽音生成装置の構成を示す回路ブロック図である。
【図２】本発明の実施例の波形メモリ音源の詳細な構成を示す回路ブロック図である。
【図３】本発明の波形メモリ音源における波形メモリに記憶する第１の波形データの形成方法の概要を示す図である。
【図４】本発明の波形メモリ音源における波形メモリに記憶する第２の波形データの形成方法の概要を示す図である。
【図５】本発明の波形メモリ音源における波形メモリに記憶する波形データの形成方法においてアタック波形作成処理を説明する図である。
【図６】本発明の波形メモリ音源における波形メモリに記憶する波形データの形成方法においてアタック波形作成処理を説明する他の図である。
【図７】波形データの形成方法にかかるアタック部波形データWa(x)の決定論的成分の波形データDa(x)を作成する処理の概念図である。
【図８】波形データの形成方法にかかるアタック部波形データWa(x)を作成する処理の概念図である。
【図９】波形データの形成方法にかかるスムージング処理における位相のスムージング処理の概念図である。
【図１０】波形データの形成方法にかかるスムージング処理における振幅のスムージング処理の概念図である。
【図１１】波形データの形成方法においてクロスフェードを行うことによりアタック部波形データを作成する処理を説明する図である。
【図１２】波形データの形成方法においてクロスフェードを行うことによりアタック部波形データを作成する処理の概念図である。
【図１３】波形データの形成方法にかかる楽音生成装置において楽音を生成する処理を説明する図である。
【図１４】本発明にかかる楽音生成装置においてノートオンが検出された際に楽音が生成されるタイミングチャートを示す図である。
【図１５】本発明にかかる楽音生成装置の音源において実行されるノートオンイベント処理のフローチャートである。
【図１６】本発明にかかる楽音生成装置の音源において実行されるリンクポイント割込処理のフローチャートである。
【図１７】本発明にかかる楽音生成装置の音源において実行されるフェードアウト終了割込処理のフローチャートである。
【図１８】本発明にかかる楽音生成装置の音源において実行されるピッチ変化イベント処理のフローチャートである。
【図１９】本発明にかかる楽音生成装置の音源において実行される他のノートオンイベント処理のフローチャートの一部である。
【発明を実施するための形態】
【００１０】
本発明の波形メモリ音源を備える楽音生成装置１の構成を示す回路ブロック図を図１に示す。
図１に示す本発明にかかる楽音生成装置１において、ＣＰＵ（Central Processing Unit）１０は楽音生成装置１の全体の動作を制御すると共に、波形メモリ２３に記憶させる波形データを形成する波形データ形成処理や楽音制御処理等を実行している。ＲＡＭ（Random Access Memory）１２には、ＣＰＵ１０のワークエリアや各種データ等の記憶エリアが設定されている。フラッシュＲＯＭ１１には、ＣＰＵ１０が実行する波形データ形成処理や楽音制御処理等の動作ソフトウェアが格納されている。フラッシュＲＯＭ１１は書き換え可能とされていることから、動作ソフトウェアを書き換え可能となり動作ソフトウェアのバージョンアップを容易に行うことができる。タイマ１３はウォッチドックタイマ、インターバルタイマ、タイマ割り込みとして機能するタイマである。ハードディスクを備えるハードディスクドライブ（ＨＤＤ）１４には、音域や演奏強度に応じた全波形の波形データを音色毎に録音することができる。ＨＤＤ１４から読み出された波形データに波形データ形成処理を施すことにより、波形メモリ２３に記憶する波形データが形成される。また、ＨＤＤ１４にはオペレーティングシステム（ＯＳ）や種々のアプリケーションプログラムやデータを格納することができる。
【００１１】
ＭＩＤＩ  Ｉ／Ｏ１５は、外部ＭＩＤＩ機器との間でＭＩＤＩイベントの授受を行うためのＭＩＤＩインタフェースであり、ＭＩＤＩ機器から出力されたＭＩＤＩ信号を楽音生成装置１において受信することができる。そして、受信したＭＩＤＩ信号に基づいて楽音信号を生成してサウンドシステム２１から放音することができる。パネルスイッチ（パネルＳＷ）１６はパネルに備えられており、パネルＳＷ１６が走査されることによって操作されたパネル操作子のイベントが検出されてバスライン２５に出力される。パネル表示器１７は液晶等の表示手段を備え、各種設定画面を表示手段に表示したり波形データ形成処理や楽音制御処理時の操作画面が表示される。書込回路１８は、外部波形入力端子２４から入力される楽音波形信号をサンプリングして、ＨＤＤ１４に送って記録したり、波形データ形成処理が施された波形データを波形メモリ２３に書き込む。バッファ（ＢＵＦＦ）１９は、ＲＡＭ１２から波形メモリ２３に書き込まれる波形データ形成処理が施された波形データ、あるいは、波形メモリ２３から読み出された波形データを一時記憶して、ＣＰＵ１０やＲＡＭ１２等に転送する。音源２０はバスライン２５を介して供給される各情報に基づいて、波形メモリ２３から波形データを順次読み出し、読み出した波形データに基づいて楽音信号を生成する波形メモリ音源とされている。音源２０は、複数の発音チャネルを有し、これら各発音チャネルの楽音信号発生処理を時分割多重制御により行っており、各発音チャネル毎に独立した楽音信号を生成し得るように構成されている。この場合、音源２０は、複数時分割チャンネル動作を行い、ＣＰＵ１０から音源パラメータ情報をノートオン時に受けて、複数チャンネル分の複数の楽音信号を生成している。音源パラメータ情報は、割り当てチャンネル、ピッチ情報、エンベロープパラメータ等とされる。音源２０の各チャンネルでは、それぞれ、波形メモリ２３に記録されている波形データを読み出して、読み出した波形データを音源パラメータ情報に沿って加工することにより楽音信号を生成している。音源２０で生成された楽音信号はサウンドシステム２１から放音される。アクセス管理部２２は、波形メモリ２３に対する書込回路１８と音源２０とバッファ１９とからのアクセスが互いに衝突しないように、波形メモリ２３のアクセスタイムスロットを管理している。なお、楽音生成装置１の各部はコントロールバス、アドレスバスおよびデータバスからなるバスライン２５により相互にデータの授受を行っている。
【００１２】
次に、本発明の実施例にかかる音源２０の詳細な構成を示す回路ブロック図を図２に示す。図２に示す音源２０において、制御レジスタ３８には、ＣＰＵ１０により、各発音チャンネルのノートオン信号、ノートオフ信号、各発音チャンネルで生成される楽音信号の特性を制御するパラメータ、後述するリンク情報、ＤＳＰ３６で付与される音響効果を制御するエフェクトパラメータ等の各種パラメータが書き込まれる。さらに、ＣＰＵ１０が、複数同時書込部３９を用いて該書き込みを行うことにより、同一チャンネル乃至異チャンネルの複数パラメータを、制御レジスタ３８に同時に書き込むことができる。具体的には、ＣＰＵ１０が同時に書き込みたい複数のパラメータを、予め複数同時書込部３９に渡しておき、その後のＣＰＵ１０からのトリガに応じて、複数同時書込部３９が、あるサンプリング周期と次のサンプリング周期の間の隙間のタイミングで、それら複数のパラメータを制御レジスタ３８に順次書き込む。このようにして書き込まれた複数のパラメータは、各発音チャンネルで生成される楽音信号に対し、同一のタイミング（該次のサンプリング周期）で反映されるので、この明細書では、それを指して「同時書込」と呼んでいる。制御レジスタ３８に書き込まれる各発音チャンネルのパラメータには、ノートナンバNN、ピッチデータPD、音量差分、読み出すべき波形データのスタートアドレス及びエンドアドレス、同波形データの原音高、振幅エンベロープ（振幅EG）パラメータ、クロスフェード制御データ等が含まれる。Ｆナンバ生成部３１は、各時分割チャンネルタイミング毎に、制御レジスタ３８から供給される当該チャンネルのノートナンバNN、ピッチデータPD、原音高に基づいて、整数部および小数部から構成され、かつ、波形データの音高をノートナンバNNとピッチデータPDにより示される音高にピッチシフトするための、当該チャンネルの周波数ナンバ（以下、「Ｆナンバ」という）を発生して読出部３２に送る。読出部３２は、各時分割チャンネル毎に、供給されるＦナンバを累算することにより、制御レジスタ３８からの当該チャンネルのスタートアドレスからエンドアドレスまで、Ｆナンバに応じた速度で進行するアドレスを生成し、生成されたアドレスの整数部に基づいて波形メモリ２３から波形データのサンプルを読み出し、読み出された波形データのサンプルを、生成されたアドレスの少数部に基づいて、サンプル間補間して、当該チャンネルの補間サンプルを生成する。
【００１３】
振幅変化制御部３３は、制御レジスタ３８から供給されるノートオン信号、ノートオフ信号、音量EGパラメータに応じて、各時分割チャンネルタイミング毎に、楽音の立上りから立下りまでの音量変化を制御する当該チャンネルの音量エンベロープ（音量EG）波形データを生成する。各時分割チャンネルタイミング毎に、生成された音量EG波形データは、読出部３２から出力された波形データの補間サンプルに、第１乗算器Ｍ１において乗算されて波形データの音量制御が行われる。クロスフェード（Xfade）制御部３４は、制御レジスタ３８から供給されるクロスフェード制御データに応じて、各時分割チャンネルタイミング毎に、当該チャンネルのクロスフェード係数を生成する。各時分割チャンネルタイミング毎に、生成されたクロスフェード係数は、第１乗算器Ｍ１から出力される波形データのサンプルに乗算される。この場合、クロスフェード制御データでフェードインが指示されたチャンネルでは、所定のクロスフェード時間内に０％（０．００）から１００％（１．００）に徐々に増加（フェードイン）するクロスフェード係数が生成され、フェードアウトが指示されたチャンネルでは、所定のクロスフェード時間内に１００％（１．００）から０％（０．００）に徐々に減少（フェードアウト）するクロスフェード係数が生成される。ここでのフェードイン、フェードアウトは、もともと同じ形状（又はほぼ同じ形状）の波形データ同士の接続用なので、変化カーブには制約がない。クロスフェードにかかる時間を短縮するため、リニアスケールで直線的に変化する変化カーブとするのがよい。また、クロスフェード制御データにより、各チャンネルの生成されるクロスフェード係数の値を、１００％（１．００）ないし０％（０．００）に直接設定することもできる。
【００１４】
各時分割チャンネル毎に、第２乗算器Ｍ２から出力される波形データのサンプルは、ミキサ３５に供給され、複数の出力先毎に重み付けされミキシングされる。ＤＳＰ３６は、制御レジスタ３８からのエフェクトパラメータに基づき、各サンプリング周期毎に、ミキサ３５から供給される波形データのサンプルに対し、リバーブ、コーラス等の各種音響効果を付与して、ミキサ３５に戻す。さらに、ミキサ３５は、各サンプリング周期毎に、ＤＡＣ（デジタル−アナログ変換器）３７を出力先とする波形データのサンプルに、ＤＳＰ３６からの波形データを足しこんでから該ＤＡＣ３７へ出力する。このようにして、エフェクトが付与されたミキサ３５からのミキシング出力は、サンプリング周期毎に、ＤＡＣ３７においてアナログ信号に変換され、サウンドシステム２１に出力される。
【００１５】
次に、楽音生成装置１の波形メモリ２３に記憶させる波形データを形成する第１の波形データの形成方法の概要を図３を用いて説明する。
例えば、鍵盤楽器を最高強度の演奏強度(f)、演奏強度(f)より弱い演奏強度(mf)、演奏強度(mf)よりさらに弱い演奏強度(mp)、演奏強度(mp)よりさらに弱い演奏強度(p)の４種類の演奏強度で押鍵して、それぞれの楽音を同じマイクでかつ同じ録音レベルでＨＤＤ１４に録音する。ＨＤＤ１４に録音した波形データが、図３における演奏強度(f)の波形データW(f)、演奏強度(mf)の波形データW(mf)、演奏強度(mp)の波形データW(mp)、演奏強度(p)の波形データW(p)である。次いで、波形メモリ２３に記憶する波形データを作成するが、最高強度とされる演奏強度(f)の波形データW(f)の全波形データは、波形作成処理を施すことなくそのまま波形メモリ２３に第１波形データとして記憶される。次に、波形データW(mf)にアタック波形作成処理Ａを行って、波形データW(mf)のアタック特徴部と波形データW(f)に接続する接続部からなるアタック部波形データWa(mf)を作成する。この全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(mf)を波形メモリ２３に記憶する。なお、アタック波形作成処理Ａにおいては、後述するが最高強度とされる波形データW(f)を利用することにより、波形データW(mf)のアタック特徴部より後の領域において波形データW(f)に接続できるアタック部波形データWa(mf)を作成する。
【００１６】
また、波形データW(mp)には上記した処理と同様のアタック波形作成処理Ｂを行うことにより、全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(mp)を作成して波形メモリ２３に記憶し、波形データW(p)には上記した処理と同様のアタック波形作成処理Ｃを行うことにより、全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(p)を作成して波形メモリ２３に記憶する。このようにして波形メモリ２３に記憶された演奏強度に応じた複数のアタック部波形データWa(mf)〜アタック部波形データWa(p)が第４波形データとされる。図３に示されている１波形セットは、ある音色におけるある音域の演奏強度に応じた波形セットである。この１波形セットにおいては、全波形データは最高強度とされる演奏強度(f)の波形データW(f)のみが必要とされ、最高強度より弱い演奏強度の波形データについては全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(x)のみ必要とされることから、波形メモリ２３に必要とされる波形データ用の記憶領域の容量を非常に低減することができる。
【００１７】
また、この波形メモリ２３を利用して楽音を生成する際には、指示された演奏強度のアタック部波形データWa(x)を読み出し、この波形データWa(x)の接続部により波形データW(f)に接続して、以後は接続した波形データW(f)を読み出して再生する。このことから、指示された演奏強度の全波形データを再生する場合と比べて殆ど変わらない品質で楽音を合成することができる。この場合、音源の第１発音チャンネルと第２発音チャンネルを用いて、第１発音チャンネルにてアタック部波形データWa(x)を読み出して発音させるとともに、それに同期して、第２発音チャンネルにて波形データW(f)を読み出して発音させ、クロスフェード用波形データ（後述する）が読み出されるタイミングで、その２つの発音チャンネルの出力をクロスフェードすることにより、第１発音チャンネルのアタック部の波形データWa(x)から第２発音チャンネルの波形データW(f)になめらかに移行させる。なお、指示された演奏強度が最高強度の場合は、１つの発音チャンネルだけを用意して演奏強度(f)の波形データW(f)における全波形データを読み出して１つの発音チャンネルで再生するようにする。なお、波形データWa(x)から波形データW(f)への接続は、必ずしもクロスフェードによらなくてもよい。
【００１８】
また、楽音生成装置１の波形メモリ２３に記憶させる波形データを形成する第２の波形データの形成方法の概要を図４を用いて説明する。
第２の波形データの形成方法においても、第１の波形データの形成方法と同様にしてＨＤＤ１４に演奏強度(f)の波形データW(f)、演奏強度(mf)の波形データW(mf)、演奏強度(mp)の波形データW(mp)、演奏強度(p)の波形データW(p)を録音する。次いで、最高強度とされる演奏強度(f)の波形データW(f)の全波形データを、波形メモリ２３に第１波形データとして記憶する。次に、波形データW(f)にアタック波形切出作成処理Ｄを行って、波形データW(f)のアタック特徴部と接続部からなるアタック部波形データWa(f)を切り出して、アタック部波形データWa(f)を波形メモリ２３に記憶する。また、波形データW(mf)には第１実施例と同様のアタック波形作成処理Ａを行うことにより作成された、全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(mf)を波形メモリ２３に記憶する。さらに、第１実施例と同様にしてアタック波形作成処理Ｂを行うことによりアタック部波形データWa(mp)を作成し、アタック波形作成処理Ｃを行うことによりアタック部波形データWa(p)を作成して、波形メモリ２３にそれぞれ記憶する。このようにして波形メモリ２３に記憶された演奏強度に応じた複数のアタック部波形データWa(f)〜アタック部波形データWa(p)が第４波形データとされる。
【００１９】
波形メモリ２３に記憶されたある音色におけるある音域の演奏強度に応じた１波形セットが図４に示されている。図４に示されている１波形セットにおいては、全波形データは最高強度とされる演奏強度(f)の波形データW(f)のみが記憶とされ、各演奏強度における全波形データよりかなり少ない記憶容量とされるアタック部波形データWa(x)が記憶されている。このことから、波形メモリ２３に必要とされる波形データ用の記憶領域の容量を非常に低減することができる。また、この波形メモリ２３を利用して楽音を生成する際には、上記第１実施例と同様に、指示された演奏強度のアタック部波形データWa(x)を読み出し、この波形データWa(x)の接続部により波形データW(f)に接続して、以後は接続した波形データW(f)を読み出して再生する。このことから、指示された演奏強度の全波形データを再生する場合と比べて殆ど変わらない品質で楽音を合成することができる。この場合、アタック部波形データWa(x)を発音する第１発音チャンネルと波形データW(f)を発音する第２発音チャンネルとを用意して、接続部においてクロスフェードすることにより第１発音チャンネルのアタック部の波形データWa(x)から第２発音チャンネルの波形データW(f)になめらかに移行させる。なお、指示された演奏強度が最高強度の場合であっても、第１発音チャンネルアタック部の波形データWa(f)から第２発音チャンネルの波形データW(f)に移行させることから、演奏強度によって楽音生成処理を変更する必要をなくすことができる。第２実施例においても、波形データWa(x)から波形データW(f)への接続は、必ずしもクロスフェードによらなくてもよい。
【００２０】
次に、アタック波形作成処理Ａ〜Ｃについて図を参照しながら説明する。参照する図においては最高強度より弱い演奏強度(x)の波形データをＷ(x)として示している。
アタック波形作成処理においては、まず、図５の上段に示すように波形データW(f)と波形データW(x)とを減衰していく振幅レベルが相互に略一致するように時間軸上に並べる。ただし、図５に示す減衰波形はイメージ図であり、実際の減衰波形は、立上りがより速くて立下りがより遅くなると共に、立下りのカーブは指数カーブになる。次いで、演奏強度(f)の波形データW(f)と演奏強度(x)の波形データW(x)を周波数分析して、それぞれ、ピーク軌跡データ（決定論的成分）と残余波形データ（残余波形）とを分離抽出する。この抽出方法は、特許第３５３４０１２号公報ないし特許第３６５９０５３号公報で説明されている抽出方法と基本的に同じである。図５の下段に、演奏強度(f)の波形データW(f)を周波数分析して分離抽出した決定論的成分d(f)および残余波形R(f)と、最高強度より弱い演奏強度(x)の波形データW(x)を周波数分析して分離抽出した決定論的成分d(x)および残余波形R(x)とが示されている。波形データの周波数分析処理においては、まず、分析する波形データを、分析区間を時間軸方向に移動させながらスペクトル分析して、周波数成分のピーク軌跡を作成する。波形のスペクトルは、ＦＦＴ（高速フーリエ変換：Fast Fourier Transform）することによって分析することができる。そして、作成されたすべてのピーク軌跡のスペクトルからピーク軌跡データ（決定論的成分）が得られ、元の波形データから、その得られたピーク軌跡データ（決定論的成分）を逆フーリエ変換した波形データを差し引くことにより残余波形データ（残余波形）が得られる。さらに、残余波形に対して再度のスペクトル分析を行って、より精密なピーク軌跡データ（決定論的成分）を求めるようにしてもよい。このような、残余波形に対するスペクトル分析は、必要な回数だけ行われる。
【００２１】
このようにして得られた図５の下段に示す最高強度より弱い演奏強度(x)の波形データW(x)における決定論的成分d(x)に基づいて、波形データW(x)のアタック特徴部より後の領域に、波形データW(x)から最高強度の波形データW(f)に移行させるための接続開始点と接続終了点とを設定する。波形データW(x)に設定された接続開始点と接続終了点との一例を図６に示すが、図６において接続開始点はスムージングの開始点SSとして示されており、接続終了点はスムージングの終了点SEとして示されている。また、波形メモリ２３に記憶するアタック部波形データWa(x)の終了点に対応する波形終了点WEを設定する。波形データW(x)のアタック特徴部より後の領域とは、時間軸上で減衰状態を揃えた波形データW(f)と、その先頭より比較した場合に、波形データW(x)の特徴が薄れ、音色的に類似した波形データとなる点以降の領域のことであり、この領域内に、開始点SS、終了点SE、波形終了点WEが順に設定される。該領域の決定方法としては、例えば、波形データW(x)と波形データW(f)とで、スペクトルの主要成分のレベルバランスを比較し、それらが略一致する点以降をその領域とすることができる。或いは、聴感に基づいて、減衰状態を揃えた波形データW(x)と波形データW(f)とを、その時間軸上の同じ点から再生してみて、同じように聞こえる最も前の点以降とすることができる。さらに、減衰状態を揃えた波形データW(x)と波形データW(f)の波形形状を見比べて、同じように見える最も前の点以降としてもよい。なお、開始点SS、終了点SE、波形終了点WEは、複数のアタック部波形データWa(x)の各波形データ毎に定められる。なお、本明細書においては、各データが、時間領域と周波数領域の何れのデータであるかを区別するため、時間領域における波形についてはアルファベット符号の１文字目を大文字とし、周波数領域における成分についてはアルファベット符号の１文字目を小文字としている。
【００２２】
開始点SS、終了点SE、波形終了点WEが設定されることにより、波形データW(f)の決定論的成分d(f)は、成分(df1)、成分(df2)、成分(df3)、成分(df4)に分割され、残余波形R(f)は、波形(Rf1)、波形(Rf2)、波形(Rf3)、波形(Rf4)に分割される。また、波形データW(x)の決定論的成分d(x)は、成分(dx1)、成分(dx2)、成分(dx3)、成分(dx4)に分割され、残余波形R(x)は、波形(Rx1)、波形(Rx2)）、波形(Rx3)、波形(Rx4)に分割される。そこで、最高強度の波形データW(f)の決定論的成分(df2)および成分(df3)と、波形データW(x)の決定論的成分(dx1)および成分(dx2)に基づいて、アタック部波形データWa(x)の決定論的成分の波形データDa(x)を作成する。
【００２３】
波形データDa(x)を作成する処理の概念図を図７に示す。図７において、波形データW(x)の決定論的成分(dx2)にスムージング処理を行うことにより、第３波形データの接続部（決定論的成分）に相当する中間決定論的成分(di2)を形成する。スムージング処理では、その結果として得られる中間決定論的成分(di2)の最後の位相および振幅が、接続先となる波形データW(f)の決定論的成分(df3)の最初の位相および振幅に一致するように、決定論的成分(dx2)を構成する全スペクトルのうちの、決定論的成分(df3)を構成する何れかのスペクトルと対応付けができたスペクトル成分の各々の位相および振幅の軌跡が、時間軸方向ないしレベル方向に調整される。その詳細については、後に、図９ないし図１０を参照して説明する。なお、中間決定論的成分(di2)の形成方法としては、スムージング処理によらずに、例えば、波形データW(x)の決定論的成分(dx2)から破線で示す波形データW(f)の決定論的成分(df2)にクロスフェードさせることにより形成するようにしても良い。
中間決定論的成分(di2)が形成されたら、図７の２段目に示すように時間軸上に並べた波形データW(x)の決定論的成分(dx1)と波形データW(f)の決定論的成分(df3)との間に中間決定論的成分(di2)を配置して接続する。これら３成分のうち、決定論的成分(dx1)がアタック特徴部に、中間決定論的成分(di2)が接続部に、決定論的成分(df3)が同一特性部にそれぞれ対応する。接続した状態が図７の３段目に示されており、接続されて時間軸上に並べられた決定論的成分(dx1)、中間決定論的成分(di2)、決定論的成分(df3)を逆ＦＦＴすることにより、アタック部波形データWa(x)の決定論的成分の波形データDa(x)が作成される。
【００２４】
そして、作成された波形データDa(x)と、波形データW(f)の残余波形(Rf2)および波形(Rf3)と、波形データW(x)の残余波形(Rx1)および波形(Rx2)を重み付け合成して、第４波形データとされるアタック部波形データWa(x)が作成される。アタック部波形データWa(x)を作成する処理の概念図を図８に示す。図８に示すように、開始点SSから波形終了点WEまで、波形データDa(x)の重みは１００％（０dB）とされ、波形データW(f)の残余波形(Rf2)の重みについては、開始点SSにおいて０％（−∞dB）とされ終了点SEに向かって上昇（フェードイン）していき終了点SEにおいて１００％（０dB）とされて、波形(Rf3)の重みは、終了点SEから波形終了点WEまで１００％（０dB）とされている。また、波形データW(x)の残余波形（Rx1）の重みは、最初から開始点SSまで１００％（０dB）とされ、波形(Rx2)の重みは、開始点SSにおいて１００％（０dB）とされ終了点SEに向かって減少（フェードアウト）していき終了点SEにおいて０％（−∞dB）とされる。ここで、開始点SSから終了点SEでフェードアウトされる残余波形(Rx2)とフェードインされる残余波形(Rf2)とを加算合成した波形が、第３波形データの接続部（残余波形）に相当する。また、ここでのフェードイン、フェードアウトは、異なる２波形の接続用であるので、重みの変化カーブは、混合後の音量がほぼ一定に保てるように、それぞれ、デシベルスケールで直線的に変化する形状とするのがよい。このように重み付けされた波形データDa(x)と、波形データW(f)の残余波形(Rf2)および波形(Rf3)と、波形データW(x)の残余波形(Rx1)および波形(Rx2)とが合成されて、アタック部波形データWa(x)が作成される。なお、アタック部波形データWa(x)における終了点SEから波形終了点WEまでの波形データは、波形データW(f)の決定論的成分(df3)を逆フーリエ変換した波形と、波形データW(f)の残余波形(Rf3)との和であるので、波形データW(f)における終了点SEから波形終了点WEまでの波形データと同じ形状になるはずである。アタック部波形データWa(x)におけるクロスフェード用波形データ（同一特性部）は、終了点SEから波形終了点WEまでの領域となる。
【００２５】
ここで、スムージング処理について図９および図１０を参照しながら説明する。図９は波形データW(x)の決定論的成分d(x)のスムージング処理のうちの、該決定論的成分d(x)を構成するスペクトルの一つである第ｙ成分の位相に関する処理の概念図であり、横軸は時間軸とされ縦軸は位相とされている。位相のスムージング処理では、決定論的成分d(x)の第ｙ成分の位相のうちの開始点SSから終了点SEまでの位相を、位相方向にシフトしたり時間軸方向に伸縮することにより、終了点SEにおける位相がその接続先となる決定論的成分(df3)の対応する第ｙ成分の最初の位相に一致するよう調整される。位相方向のシフトは、開始点から終了点SEの期間で滑らかに変化する位相オフセットを加算したり、同変化する位相係数を乗算することにより行われる。時間軸方向の伸縮では、まず、終了点SEの近傍で決定論的成分d(x)の第ｙ成分の位相が該最初の位相と一致するポイントを検出し、そのポイントが終了点SEに一致するよう、決定論的成分d(x)の第ｙ成分の開始点SSからそのポイントまでの位相を時間軸方向に伸縮する。なお、位相方向へのシフトと時間軸方向への伸縮を組み合わせて前記調整を行ってもよい。位相のスムージング処理は、決定論的成分d(x)の全成分うちの、決定論的成分(df3)の何れかの成分と対応付けできた全ての成分について行われ、決定論的成分d(x)の各成分の位相が、終了点SEにおいて、決定論的成分(df3)の最初の位相に一致するようになる。
【００２６】
また、図１０は波形データW(x)の決定論的成分d(x)のスムージング処理のうちの、該決定論的成分d(x)を構成するスペクトルの一つである第ｙ成分の振幅に関する処理の概念図であり、横軸は時間軸とされ縦軸は振幅とされている。振幅のスムージング処理では、決定論的成分d(x)の第ｙ成分の振幅のうちの開始点SSから終了点SEまでの振幅を、振幅方向にシフトしたり時間軸方向に伸縮することにより、終了点SEにおける振幅がその接続先となる決定論的成分(df3)の対応する第ｙ成分の最初の振幅に一致するよう調整される。振幅方向のシフトは、開始点から終了点SEの期間で滑らかに変化する振幅オフセットを加算したり、同変化する振幅係数を乗算することにより行われる。時間軸方向の伸縮では、まず、終了点SEの近傍で決定論的成分d(x)の第ｙ成分の振幅が該最初の振幅と一致するポイントを検出し、そのポイントが終了点SEに一致するよう、決定論的成分d(x)の第ｙ成分の開始点SSからそのポイントまでの振幅を時間軸方向に伸縮する。なお、振幅方向へのシフトと時間軸方向への伸縮を組み合わせて前記調整を行ってもよい。振幅のスムージング処理では、決定論的成分d(x)の全成分うちの、決定論的成分(df3)の何れかの成分と対応付けできた全成分について上述した処理が行われる。また、決定論的成分(df3)のうちの対応付けできなかった成分については、開始点SSから終了点SEの間に減少（フェードアウト）させる処理が行われ、決定論的成分(df3)のうちの対応付けできなかった成分については、開始点SSから終了点SEの間に上昇（フェードイン）させる処理が行われる。このようにして、決定論的成分d(x)の各成分の振幅は、終了点SEにおいて、決定論的成分(df3)の最初の振幅に完全一致するようになる。
なお、図９および図１０ではそれぞれ位相あるいは振幅の態様が誇張して示されており、実際には波形データW(f)と波形データW(x)との間において図示するほど大きく位相あるいは振幅がずれることはない。また、スムージング処理を、上述したようなシフト処理や時間軸の制御で行う代わりに、決定論的成分(dx2)と決定論的成分(df2)の対応付けできた各成分における、位相および振幅のクロスフェードで行うようにしてもよい。
【００２７】
ところで、アタック部波形データは、上記説明したような周波数分析処理を用いた周波数ドメインでのスムージング処理による精密な方法を用いる代わりに、波形データのクロスフェード（時間ドメインにおけるスムージング処理）を用いた簡易な方法で作成することもできる。これにより作成されたアタック部波形データをWa'(x)として説明する。
波形のクロスフェードを行うことにより、アタック部波形データWa'(x)を作成する際には、まず、図５に示すように波形データW(f)と波形データW(x)とを減衰していく振幅レベルが相互に略一致するように時間軸上に並べ、波形データW(x)のアタック特徴部より後の領域に、波形データW(x)から最高強度の波形データW(f)に移行させるためのクロスフェードの開始点SSと、終了点SEと、波形終了点WEとを図１１に示すように設定する。この場合、開始点SS、終了点SE、波形終了点WEの設定は、聴感で決めたり、波形形状を見比べて決めることができる。
【００２８】
開始点SS、終了点SE、波形終了点WEが設定されることにより、波形データW(f)は、波形データ(Wf1)、波形データ(Wf2)、波形データ(Wf3)、波形データ(Wf4)に領域が分割され、波形データW(x)は、波形データ(Wx1)、波形データ(Wx2)、波形データ(Wx3)、波形データ(Wx4)に領域が分割される。これらの分割された領域の波形をクロスフェードすることにより、アタック部波形データWa'(x)を作成する。このアタック部波形データWa'(x)を作成する処理の概念図を図１２に示す。図１２に示すように、波形データW(f)における波形データ(Wf1)の重みは開始点SSまで０％（−∞dB）とされ、波形データ(Wf2)の重みは開始点SSにおいて０％とされ終了点SEに向かって上昇（フェードイン）していき終了点SEにおいて１００％（０dB）とされて、波形データ(Wf3)の重みは終了点SEから波形終了点WEまで１００％とされる。また、波形データW(x)における波形データ(Wx1)の重みは先頭から開始点SSまで１００％とされ、波形データ(Wx2)の重みは開始点SSにおいて１００％とされ終了点SEに向かって減少（フェードアウト）していき終了点SEにおいて０％とされ、波形データ(Wx3)の重みは終了点SEから波形終了点WEまで０％とされる。ここでのフェードイン、フェードアウトも、異なる２波形の接続用であるので、混合後の音量がほぼ一定に保てるように、それぞれ、デシベルスケールで直線的に変化する変化カーブとするのがよい。このように重み付けされた波形データW(x)と波形データW(f)とが重み合成されて、図１２に示すようにアタック部波形データWa'(x)が作成される。波形のクロスフェードを行うことによりアタック部波形データWa'(x)を作成する処理は、スムージング処理より簡易に行うことができるが、音質においてやや劣るようになる。形成されるアタック部波形データWa'(x)のうち、先頭から開始点SSまでの波形データ（Wx1と同一形状）がアタック特徴部に、開始点SSから終了点SEまでのフェードアウトする波形データ(Wx2)とフェードインする波形データ(Wf2)とを加算合成した波形データが接続部に、終了点SEから波形終了点WEまでの波形データ（Wf3と同一形状）が同一特性部にそれぞれ相当する。
【００２９】
次に、図１にかかる楽音生成装置１において演奏強度(x)の楽音を生成する処理について説明する。本発明は、波形メモリに記憶する波形データの形成と、その波形メモリを用いた楽音の生成に関するものであり、楽音生成では、波形データの形成の過程で現れる４つの波形データのうちの２つの波形データ（第１波形データ、第４波形データ）だけを用いる。従って、楽音生成に関し、使用する波形データだけで番号を振りなおすことも考えられるが、波形データの形成過程との対応付けを維持するために、本明細書ではそれを行わない。
波形メモリ２３には、各音色の各音域毎に、図３ないし図４に示す波形セットが記憶されている。図１３には、合成波形データCW(x)を生成するために選択された、それらの波形セットの１に含まれる第１波形データとされる最高強度の波形データW(f)と、第４波形データとされるアタック部波形データWa(x)とが示されている。図示するように、アタック部波形データWa(x)に第１ポイント（第１ｐ）が設定され、第１波形データW(f)に第２ポイント（第２ｐ）が設定されている。アタック部波形データWa(x)上の第１ポイント以降が第１波形データW(f)の第２ポイント以降に接続するためのクロスフェード用波形データ（同一特性部）とされ、第１ポイントは前述した終了点SEに相当し、同一特性部は終了点SEから波形終了点WEまでの波形データとなる。すなわち、アタック部波形データWa(x)における第１ポイント以降の波形特性は、第１波形データW(f)の第２ポイント以降の波形特性と同一になっている。第１ポイントと第２ポイントとは、それぞれ、第４波形データとされる複数のアタック部波形データWa(x)の各波形データ毎に定められている。また、第１波形データW(f)には第３ポイント（第３ｐ）が設定されており、第１波形データW(f)において、アタック部波形データWa(x)の先頭から第１ポイントまでの長さ分、第２ポイントより前に位置するポイントが第３ポイントとされている。
【００３０】
図１４に、楽音の発音開始を指示するノートオンに応じて、本発明にかかる音源２０を備える楽音生成装置１において楽音が生成される場合のタイミングチャートが示されている。
図１４では、タイミングt0においてノートオンが発生したとする。これに応じて、ＣＰＵ１０は、ノートナンバやベロシティに応じて発音に使用する波形データWa(x)とW(f)とを決定するとともに、発音チャンネル割り当てを行い発音に使用する第１発音チャンネルと第２発音チャンネルとを決定して、制御レジスタ３８に第１および第２発音チャンネルのパラメータとリンク情報を設定し、第１発音チャンネルにノートオン信号を供給する。ここで設定される第１発音チャンネルのパラメータには、アタック部波形データWa(x)の先頭を示すスタートアドレス、末尾を示すエンドアドレスが含まれる。設定される第２チャンネルのパラメータには、波形データW(f)の第２ポイントを示すスタートアドレス、末尾を示すエンドアドレスが含まれる。また、設定されるリンク情報は、第１チャンネルにおいて、読み出しアドレスが第１ポイントに達したとき、第２チャンネルへ発音のトリガをかけることを示す。
これらスタートアドレスおよびエンドアドレスの設定は、読出部３２において、第１発音チャンネルの時分割チャンネルタイミングで、波形データWa(x)のサンプルを順次読み出させ、第２発音チャンネルの時分割チャンネルタイミングで、波形データW(f)のサンプルを順次読み出させるためのものである。以下では、この第１発音チャンネルの読み出し動作を第１読出部とし、第２発音チャンネルの読み出し動作を第２読出部とする。また、第１発音チャンネルと第２発音チャンネルは、Ｆナンバ生成部３１で生成されるＦナンバが常時同じとなるように制御される。すなわち、ノートオン時に、同じノートナンバNN、同じピッチデータPD、同じ原音高が設定され、また、楽音生成中にピッチデータPDを変更する場合は、複数同時書込部３９を用いて、同じ値のピッチデータPDが両発音チャンネルに同時（同じサンプリング周期）に設定される。
【００３１】
ＣＰＵ１０からのノートオン信号に応じて、第１読出部は、アタック部波形データWa(x)を先頭のサンプルから読み出し始める。すなわち、読出部３２では、第１発音チャンネルの時分割チャンネルタイミングで、供給されるＦナンバを累算し、波形データWa(x)の先頭を起点として該Ｆナンバに応じた速度で進行する読出アドレスが生成され、該生成された読出アドレスに基づいて波形メモリ２３から波形データWa(x)のサンプルが順次読み出される。そして、第１読出部（第１発音チャンネル）がアタック部波形データの第１ポイントを読み出すタイミングt1になった時に、設定されたリンク情報に基づいて、第２読出部（第２発音チャンネル）に対してトリガが供給され、第２読出部は、波形データW(f)を第２ポイントから読み出し始める。音源２０の読出部３２は、このトリガの発生時に、第１発音チャンネル（第１読出部）にて累算されたＦナンバの小数部を、第２発音チャンネル（第２読出部）に引き継がせる引継機能を備えており、第１読出部と第２読出部とで、読み出される波形データのサンプルの位相を完全同期することができる。なお、この引継機能は必須ではなく省略することができるが、その場合、第１読出部と第２読出部の同期は位相の整数部のみとなり、小数部にずれが生じて出力される補間サンプルは僅かに異なる値となる虞がある。このようにして、タイミングt1では、第２読出部が、第１読出部によるアタック部波形データWa(x)の読み出しに同期して、波形データW(f)の読み出しを開始する。
【００３２】
また、Xfade制御部３４は、制御レジスタ３８に設定されたクロスフェード制御データに基づいて、第１発音チャンネルの時分割チャンネルタイミングで、ノートオン時（タイミングt0）に１００％（１．００）に設定され、第１発音チャンネルの読出アドレスが第１ポイントに達したとき（タイミングt1）に減少（フェードアウト）を開始し、所定のクロスフェード時間後（タイミングt2）に０％（０．００）となる第１Xfade係数を生成し、第２発音チャンネルの時分割チャンネルタイミングで、ノートオン時（タイミングt0）に０％（０．００）に設定され、第１発音チャンネルの読出アドレスが第１ポイントに達したとき（タイミングt1）に上昇（フェードイン）を開始し、所定のクロスフェード時間後（タイミングt2）に１００％（１．００）となる第２Xfade係数を生成する。乗算器Ｍ２において、第１発音チャンネルの時分割チャンネルタイミングで、第１読出部から出力され乗算器Ｍ１で音量変化が付与されたアタック部波形データWa(x)のサンプルに第１Xfade係数が乗算されて、ノートオン時（タイミングt0）から発音開始されタイミングt1でフェードアウトを開始されタイミングt2で消音される第１チャンネルの波形データが形成される。また、第２発音チャンネルの時分割チャンネルタイミングで、第２読出部から出力され乗算器Ｍ１で音量制御された波形データW(f)のサンプルに第２Xfade係数が乗算されて、タイミングt1で発音開始されるとともにフェードインされその後発音を継続する第２チャンネルの波形データが形成される。ミキサ３５では、形成された第１チャンネルの波形データと第２チャンネルの波形データとが合成されて、このノートオンに係る合成波形データである波形データCW(x)が生成される。最終的な合成波形データCW(x)のうち、ノートオン（タイミングt0）からタイミングt1までは、アタック部波形データWa(x)に基づいて形成され、タイミングt1からタイミングt2までは、アタック部波形データWa(x)から波形データW(f)へのクロスフェード波形に基づいて形成され、タイミングt2以降は、波形データW(f)に基づいて形成されている。なお、アタック部波形データWa(x)は、タイミングt2以降は読み出されないため、第１発音チャンネルは、タイミングt2に達した際に開放される
【００３３】
なお、クロスフェードが行われるタイミングt1からタイミングt2の期間において、アタック部波形データWa(x)と第１波形データW(f)とは、前述したように同一特性（又は、ほぼ同一特性）となっている。このように同一特性の波形データの領域（同一特性部）においてクロスフェードすることから、クロスフェードのタイミング、速さ、変化カーブなど、はどのようであっても聴感上の問題を生じない。実施例のように、クロスフェードをタイミングt1からタイミングt2の全期間にかけて行う必要もない。
この実施例では接続をクロスフェードで行っているので、同一特性部を読み出すタイミングにおいて、第１発音チャンネルにおける波形データと第２発音チャンネルにおける波形データとで、形状が多少違っていても接続時にノイズを生じない。先程、第１発音チャンネルから第２発音チャンネルへの引継機能が必ずしも必要ないと述べたが、これは接続時のクロスフェードがあるためである。また、各発音チャンネルを音色フィルタを備えたものとした場合に、第１発音チャンネルと第２発音チャンネルとでフィルタ係数を異ならせることも可能になる。逆に、クロスフェードを行わず、タイミングt1直後の１サンプリング周期で、第１発音チャンネルの出力を１００％から０％に変更し、第２発音チャンネルの出力を０％から１００％にして、チャンネルを切り替えることが考えられる。その場合には、前記引継機能は必須となり、また、前記フィルタ係数は同一にしなければならない。
【００３４】
ところで、ノートオンにより最高強度の波形データW(f)が選択された場合において、波形メモリ２３に図３に示す構成の波形セットが記憶されている場合は、発音チャンネルは１つだけ割り当てられ、１つの割当チャンネルにおいて波形データW(f)が立上りから立下りまで読み出されて、合成波形データCW(x)とされるようになる。また、波形メモリ２３に図４に示す構成の波形セットが記憶されている場合は、上記したように２つの発音チャンネルが割り当てられて上記した処理が行われる。
上記の説明では、第１読出部が、アタック部波形データWa(x)の第１ポイントを読み出すタイミングにおいて、第２読出部が、第１波形データW(f)を第２ポイントから読み出し始めることにより、第１波形データW(f)をアタック部波形データWa(x)に同期させるようにしている。先述したように、第１読出部と第２読出部には、同じＦナンバが供給されるので、ある時点で同期させた位相は、その後にピッチを変化させてもずれることがない。なお、第２読出部の読出開始タイミングについては、第１読出部が、アタック部波形データWa(x)を読み出し始めるタイミングt0で、第２読出部が、第１波形データW(f)を第３ポイントから読み出し始めるようにしてもよい。その場合、第１、第２読出部に同時（同じサンプリング周期）にノートオン信号を供給して、同時に読み出しを開始させる。第１読出部から第２読出部への発音のトリガは供給されず、上述したような位相の引継機能も不要である。
【００３５】
次に、図２に示す音源２０において、新規楽音の発音開始を指示するノートオンイベントが起こった際に実行されるノートオンイベント処理のフローチャートを図１５に示す。ただし、波形メモリ２３には、図３に示す構成の波形セットが、各音色の各音域毎に記憶されているものとする。
音源２０にノートオンが指示されるとノートオンイベント処理がスタートされ、ステップＳ１０にてノートオンにおける、音高を示すノートナンバがレジスタNNに、演奏強度を示すベロシティがレジスタVELに格納される。本明細書では、レジスタXに記憶するパラメータを、簡略化してパラメータXと記載する。次いで、ステップＳ１１にてタッチカーブ（Ｔカーブ）を参照してレジスタVELに格納されているベロシティを音量を示すボリューム値に変換してレジスタtvolに格納する。ステップＳ１２では、波形メモリ２３に記憶されている波形セットのうちの、現在当該パートで選択されている音色に対応する複数の波形セットの中から、ノートナンバNNが属する音域に応じた波形セットが選択され、さらに、選択された波形セットの中から、ベロシティVELに応じた波形（W(f)ないしWa(x)）が選択される。次いで、ステップＳ１２において選択された波形が当該波形セットにおいて最高強度の波形データW(f)か否かがステップＳ１３にて判断される。
【００３６】
ここで、最高強度の波形データW(f)が選択されたとステップＳ１３において判断された場合は、ステップＳ１４に進み、当該ノートオンに係る楽音の生成のために、音源２０が有する複数の発音チャンネルのうちの１の発音チャンネルが割り当てられ、ステップＳ１５にて割り当てられた発音チャンネルに最高強度の波形データW(f)の先頭を示すスタートアドレス(SA)と末尾を示すエンドアドレス（EA）と原音高とがセットされる。さらに、ステップＳ１６にて、当該発音チャンネルに、ボリューム値tvolと選択された波形のボリューム値wvolとの差分の音量がセットされる。これにより、当該発音チャンネルでは、ボリューム値tvolに応じた音量で発音されるようになる。次いで、ステップＳ１７にて、当該発音チャンネルに、ノートナンバNN、ピッチのずれを示すピッチデータPD、ベロシティVELに応じた振幅エンベロープパラメータ、クロスフェード係数を１００％に設定するクロスフェード制御データ等の各種楽音制御用のパラメータがセットされる。そして、当該発音チャンネルに対する発音開始の指示（ノートオン信号の供給）がステップＳ１８にて行われる。これにより、音源２０の当該発音チャンネルにおいて、波形メモリ２３から波形データW(f)が、ノートナンバNN、ピッチデータPD、および原音高に応じた速度で、スタートアドレスが示すその先頭から読み出され、読み出された波形データに基づき、かつ、楽音制御用のパラメータに応じて特性制御された最高強度の合成波形データCW(f)が生成されるようになる。次いで、ステップＳ１９にて、今回割り当てた発音チャンネルの数である「１」を、ノートナンバNNに応じたチャンネル数レジスタであるch数（NN）にセットして、ノートオンイベント処理は終了する。当該発音チャンネルにおける波形データW(f)の読み出しは、振幅エンベロープ波形が減衰しきるまで、ないし、読出アドレスがエンドアドレスに達するまで継続される。
【００３７】
また、ステップＳ１３にて選択された波形が波形セットにおいて最高強度の波形データW(f)ではないと判断された場合は、ステップＳ２０に分岐して第１チャンネル（＃１）と第２チャンネル（＃２）の発音チャンネルが割り当てられる。次いで、ステップＳ２１にて割り当てられた第１チャンネル（＃１）に、ベロシティVELに応じて選択されたアタック部波形データWa(x)の先頭を示すスタートアドレス（SA）と末尾を示すエンドアドレス（EA）と原音高とがセットされ、割り当てられた第２チャンネル（＃２）に、該アタック部波形データWa(x)が属する波形セットの最高強度の波形データW(f)の第２ポイントを示すスタートアドレス（SA）と末尾を示すエンドアドレス（EA）と原音高とがセットされる。ここで、該第２ポイントの位置は、選択されるアタック部波形データWa(x)に応じて異なる。また、セットされる原音高は、アタック部波形データWa(x)と波形データW(f)とで同一である。次に、ステップＳ２２にて、第１チャンネル（＃１）に、ボリューム値tvolとアタック部波形データWa(x)のボリューム値wvolとの差分の音量がセットされると共に、第２チャンネル（＃２）に、ボリューム値tvolと波形データW(f)の第３ポイントにおけるボリューム値wvolとの差分の音量がセットされる。これにより、第２チャンネル（＃２）で生成されるボディ部の楽音波形の音量と、第１チャンネル（＃１）で生成されるアタック部の楽音波形の音量とを、ボリューム値tvolが示す音量に一致させることができる。
【００３８】
次いで、ステップＳ２３にて、割り当てられた第１チャンネル（＃１）と第２チャンネル（＃２）とに、ノートナンバNN、ピッチのずれを示すピッチデータPD、ベロシティVELに応じた振幅エンベロープパラメータ等の各種楽音制御用の同じ値のパラメータがそれぞれセットされる。また、クロスフェード制御データとして、第１チャンネル（＃１）には、クロスフェード係数を１００％に設定するデータが、第２チャンネル（＃２）には、クロスフェード係数を０％に設定するデータが設定される。次いで、ステップＳ２４にて、制御レジスタ３８には、トリガをかける側である第１チャンネル（＃１）を示すトリガチャンネル番号、トリガをかける第１ポイントを示すリンクアドレス、トリガをかけられる第２チャンネルを示す被トリガチャンネル番号が、リンク情報として設定される。そして、第１チャンネル（＃１）に対する発音開始の指示（ノートオン信号の供給）がステップＳ２５にて行われる。これにより、音源２０の第１チャンネル（＃１）において、波形メモリ２３からアタック部波形データWa(x)が、ノートナンバNN、ピッチデータPD、および原音高に応じた速度で、スタートアドレスが示すその先頭から読み出され（第１読出部）、読み出された波形データに基づき、かつ、楽音制御用のパラメータに応じて特性制御された演奏強度(x)の合成波形データCW(x)のアタック部が生成されるようになる。次いで、ステップＳ２６にて、今回割り当てた発音チャンネルの数である「２」を、チャンネル数レジスタであるｃｈ数（NN）にセットしてノートオンイベント処理は終了する。
そして、トリガチャンネル番号が示す第１チャンネル（＃１）における読出アドレスが、リンクアドレスが示すアタック部波形データWa(x)の第１ポイントに達した時に、被トリガチャンネル番号が示す第２チャンネル（＃２）にトリガ（位相の小数部を含む）が与えられる。音源２０の第２チャンネル（＃２）は、該トリガに応じて、波形メモリ２３に記憶された最高強度の波形データW(f)を、ノートナンバNN、ピッチデータPD、および原音高に応じた速度で、スタートアドレスが示す第２ポイントから読み出し始める（第２読出部）。これにより、第２読出部では、第１読出部によるアタック部波形データWa(x)の読み出しに同期して、そのアタック部波形データに接続されるべき波形データW(f)の読み出しが開始される。この時点では、第１チャンネル（＃１）のクロスフェード係数は１００％であり、第２チャンネルのクロスフェード係数は０％であるので、合成波形データCW(x)は第１チャンネルの波形データのみとなるが、読み出される両波形データの位相は、相互に同じになるよう制御されており、また、乗算器Ｍ２に入力する波形データ（クロスフェード係数が乗算される前の波形データ）の音量も、相互に同じになるように制御されている。
【００３９】
音源２０は、第１チャンネル（＃１）の読出アドレスがリンクアドレスが示す第１ポイントに達した時に、ＣＰＵ１０に対してリンクポイント割込をかける。図１６は、該割込に応じてＣＰＵ１０が実行する、リンクポイント割込処理のフローチャートである。リンクポイント割込がかけられると、ＣＰＵ１０は、まず、ステップＳ３０にて制御レジスタ３８に第２チャンネル（＃２）のフェードイン開始を指示するクロスフェード制御データを設定し、続いて、ステップＳ３１にて第１チャンネル（＃１）のフェードアウト開始を指示するクロスフェード制御データを設定して、リンクポイント割込処理は終了する。これにより、図１４に示すように、第２チャンネル（＃２）のクロスフェード係数が０％から１００％まで徐々に増加し、第２チャンネルで生成される合成波形データCW(x)のボディ部がフェードインされるとともに、第１チャンネル（＃１）のクロスフェード係数が１００％から０％まで徐々に減少し、第１チャンネルで生成される合成波形データCW(x)のアタック部がフェードアウトされる。そして、ミキサ３５においては、リンクポイントでフェードアウトされるアタック部の楽音波形とリンクポイントからフェードインされるボディ部の楽音波形とがミキシングされて、１つのノートオンに応じた立上りから立下りまでの波形データである、合成波形データCW(x)が生成される。
【００４０】
クロスフェード制御部３４が発生する第１チャンネル（＃１）のクロスフェード係数が０％に達すると、音源２０は、ＣＰＵ１０に対してクロスフェード終了割込をかける。図１７は、該割込に応じてＣＰＵ１０が実行する、フェードアウト終了割込処理のフローチャートである。クロスフェード終了割込がかけられると、ＣＰＵ１０は、ステップＳ４０にてフェードアウトし終えた第１チャンネル（＃１）を、新たな発音に使用できるように開放する。次いで、ステップＳ４１にて、当該チャンネルで生成していた楽音のノートナンバNNに対応するｃｈ数（NN）のレジスタに、割り当てたチャンネルが１つ残っていることを示す「１」をセットしてフェードアウト終了割込処理を終了する。このように、第１チャンネル（＃１）は、合成波形データCW(x)のアタック部の生成が終わったらすぐに開放されるので、１つのノートオンに対して２つの発音チャンネルを割り当てるようにしても、実質的な同時発音数はそれほど減らないのである。
【００４１】
なお、アタック部波形データWa(x)における同一特性部の波形データは、前述したように、波形データW(f)の第２ポイント以降と同じ形状とされていることから、クロスフェードすることなく切り替えてもノイズ等は発生しない。例えば、音源２０の内部において、第１チャンネル（＃１）がリンクポイントに達したタイミングで、第２チャンネル（＃２）に発音開始のトリガをかけるとともに、クロスフェード制御部３４自身が、同トリガに応じて、第１チャンネル（＃１）のクロスフェード係数を０％に設定し、かつ、第２チャンネル（＃２）のクロスフェード係数を１００％に設定するようにすればよい。この場合、アタック部波形データWa(x)の同一特性部は必要ないので、同一特性部を含まないさらに短い波形データとすることができる。また、ＣＰＵ１０による、リンクポイント割込処理も不要である。
あるいは、リンクポイント割込に応じたリンクポイント割込処理で、ＣＰＵ１０が、クロスフェード制御部３４の第１チャンネル（＃１）のクロスフェード係数を０％に設定し、かつ、第２チャンネル（＃２）のクロスフェード係数を１００％に設定するようにしてもよい。その場合、アタック部波形データWa(x)には、その割込処理の遅れに相当する分の同一特性部が必要となる。
【００４２】
次に、ピッチ変化イベント処理のフローチャートを図１８に示す。
楽音生成装置１に備えられているピッチベンド操作子が操作されたときや、ＣＰＵ１０がビブラート波形やピッチエンベロープ波形を生成する処理を行ったときには、楽音のピッチを動的な変化を指示するピッチ変化イベントが発生する。図１８は、該ピッチ変化イベントに応じて、ＣＰＵ１０が実行するピッチ変化イベント処理のフローチャートである。MIDIにおけるピッチベンド等のピッチ変化イベントは、各パートごとピッチ変化を制御するイベントとなっている。ピッチ変化イベントが発生すると、まず、ステップＳ５０にて変化した新しいピッチがレジスタＰＤに格納される。次いで、ステップＳ５１にて、当該パートにおいて現在発音されているノートナンバ（NN）が検出され、発音中のノートナンバがあるか否かがステップＳ５２にて判断される。ここで、発音中のノートナンバがないと判断された場合は、ピッチ変化イベント処理はそのまま終了し、発音中のノートナンバがあると判断された場合はステップＳ５３に進んで検出されたノートナンバの内の一つ目のノートナンバが選択される。次いで、ステップＳ５４にて選択されたノートナンバにセットされている発音チャンネル数が当該ノートナンバのｃｈ数（NN）のレジスタを参照して「１」とされているか「２」とされているかが判断される。ここで、当該ノートナンバにおいて発音チャンネル数が「１」とされていると判断された場合は、ステップＳ５５に進んで、制御レジスタ３８に、当該ノートナンバの楽音生成に割り当てられている発音チャンネルのピッチデータとして、レジスタPDに格納されたピッチデータが書き込まれる。また、ステップＳ５４にて当該ノートナンバにおいて発音チャンネル数が「２」とされていると判断された場合は、ステップＳ５７に分岐して、複数同時書込部３９を利用して、制御レジスタ３８に、当該ノートナンバの楽音生成に割り当てられている第１チャンネル（＃１）および第２チャンネル（＃２）の２つのチャンネルの２つのピッチデータとして、レジスタPDに格納されたピッチデータを同時（同じサンプリング周期）に書き込む。
【００４３】
ステップＳ５５あるいはステップＳ５７の処理が終了するとステップＳ５６に進み、処理していないノートナンバが残っているか否かが判断される。ここで、ノートナンバが残っていると判断された場合はステップＳ５８に分岐して次のノートナンバが選択されてステップＳ５４に戻り、ステップＳ５４ないしステップＳ５７の処理が繰り返し行われる。この繰り返し処理は、処理していない発音中のノートナンバがなくなるまで行われ、ステップＳ５６において当該パートで発音中のノートナンバの全てについて処理が行われて処理していないノートナンバがないと判断されると、ピッチ変化イベント処理は終了する。このピッチ変化イベント処理により、ピッチを変化させる操作をした際には当該パートで発音中のすべてのノートナンバにおいて、２つの発音チャンネルを割り当てている場合も１つの発音チャンネルを割り当てている場合も、合成波形データCW(x)のピッチを時間変化させることができるようになる。これにより、当該パートで発音中の全発音チャンネルの楽音波形のピッチを動的に変化させることができる。さらに、演奏強度(x)の合成波形データCW(x)を生成している第１チャンネル（＃１）と第２チャンネル（＃２）とには、ピッチデータを同時に書き込むようにしたので、ピッチを動的に変化させた場合でも、第１チャンネル（＃１）と第２チャンネル（＃２）とで読み出される波形データの位相にずれが生じない。
【００４４】
ところで、前述したように、第２読出部を同期させるタイミングは、第１読出部がアタック部波形データWa(x)の先頭を読み出し始めるタイミングとすることもできる。この場合においては、図１５のノートオンイベント処理におけるステップＳ２０からステップＳ２６までの処理のうち、ステップＳ２１、Ｓ２４、Ｓ２５を以下のように変更すればよい。
まず、ステップＳ２１では、割り当てられた第１チャンネル（＃１）に、ベロシティVELに応じて選択されたアタック部波形データWa(x)の先頭を示すスタートアドレス（SA）と末尾を示すエンドアドレス（EA）と原音高とがセットされ、割り当てられた第２チャンネル（＃２）に該アタック部波形データWa(x)が属する波形セットの最高強度の波形データW(f)の第３ポイントを示すスタートアドレス（SA）と末尾を示すエンドアドレス（EA）と原音高がセットされるようにする。ステップＳ２４では、トリガをかける側である第１チャンネル（＃１）を示すトリガチャンネル番号と、トリガをかける第１ポイントを示すリンクアドレスとをリンク情報として設定し、被トリガチャンネル番号は設定しない。従って、第１チャンネル（＃１）から第２チャンネル（＃２）へのトリガは、供給されることがない。そして、ステップＳ２５では、第１チャンネル（＃１）と第２チャンネル（＃２）に対して同時発音開始の指示（同じサンプリング周期にノートオン信号を供給）を行う。
これにより、ステップＳ２５で供給されるノートオン信号に応じて、音源部２０の第１チャンネル（＃１）では、アタック部波形データWa(x)がスタートアドレスの示すその先頭から読み出され（第１読出部）、第２チャンネル（＃２）では、最高強度の波形データW(f)がスタートアドレスの示す第３ポイントから読み出される（第２読出部）。この時点では、第１チャンネル（＃１）のクロスフェード係数は１００％であり、第２チャンネルのクロスフェード係数は０％であるので、合成波形データCW(x)は第１チャンネルの波形データのみとなる。そして、第１チャンネル（＃１）の読出アドレスがリンクアドレスが示す第１ポイントに達したとき、リンクポイント割込処理が実行され、第１チャンネルで生成されるアタック部の楽音波形がフェードアウトされ、それに替えて、第２チャンネルで生成されるボディ部の楽音波形がフェードインされる。それら生成された楽音波形はミキサ３５でミキシングされ、合成波形データCW(x)となる。
【００４５】
なお、上記説明した波形データの形成方法において、波形メモリ２３に図４に示す構成の波形セットが記憶されている場合は、演奏強度に応じて選択された波形が最高強度の波形であっても、最高強度より弱い演奏強度の波形であっても同様のノートオンイベント処理が行われる。この場合は、図１５に示すノートオンイベント処理におけるステップＳ１３ないしステップＳ１９の処理は不要になると共に、ステップＳ１２の処理が終了すると続いてステップＳ２０ないしステップＳ２６の処理が行われるようになる。このように、波形メモリ２３に図４に示す構成の波形セットが記憶するようにすると、演奏強度によらずノートオンに対して２つの発音チャンネルを割り当てることになることから、上記したように演奏強度に応じて異なるノートオンイベント処理を行うことがなくなる。
また、音源２０の第１および第２チャンネルを用いて楽音を生成する場合の、第２チャンネルにおける第１波形データの読み出し開始アドレスは、図１３の第２ポイントないし第３ポイントとされていたが、第２ポイントからクロスフェード用波形データの長さ分後のポイントを第４ポイントとして、該読出開始アドレスは、第３ポイントから第４ポイントまでの範囲のどのポイントにも設定することもできる。その場合、リンクアドレスは、第４波形データの、その設定された読出開始アドレスに対応するアドレスとすればよい。
【産業上の利用可能性】
【００４６】
以上説明した波形データの形成方法では、４種類の演奏強度のアタック部波形データＷａ（ｘ）を波形メモリ２３に記憶するようにしたが、４種類に限らず任意の数の演奏強度に対応するアタック部波形データＷａ（ｘ）を形成して波形メモリ２３に記憶するようにしてもよい。
また、上記した波形データの形成方法においては、アタック部波形データＷａ（ｘ）から切り換えられる最強強度の波形データＷ（ｆ）の読み出しは、第２ポイント（終了点ＳＥ）以前の何れのポイントから開始しても良い。ただし、第２ポイントにおいてアタック部波形データＷａ（ｘ）と同期している必要がある。
【符号の説明】
【００４７】
１  楽音生成装置、１０  ＣＰＵ、１１  フラッシュＲＯＭ、１２  ＲＡＭ、１３  タイマ、１４  ＨＤＤ、１５  ＭＩＤＩ  Ｉ／Ｏ、１６  パネルＳＷ、１７  パネル表示器、１８  書込回路、１９  バッファ、２０  音源、２１  サウンドシステム、２２  アクセス管理部、２３  波形メモリ、２４  外部波形入力端子、２５  バスライン、３１  Ｆナンバ生成部、３２  読出部、３３  振幅変化生成部、３４  X fade制御部、３５  ミキサ、３６  ＤＳＰ、３７  ＤＡＣ  Ｉ／Ｏ、３８  制御レジスタ、３９  複数同時書込部、Ｍ１  乗算器、Ｍ２  乗算器
【図１】
2010204366.tif 000003
【図２】
2010204366.tif 000004
【図３】
2010204366.tif 000005
【図４】
2010204366.tif 000006
【図５】
2010204366.tif 000007
【図６】
2010204366.tif 000008
【図７】
2010204366.tif 000009
【図８】
2010204366.tif 000010
【図９】
2010204366.tif 000011
【図１０】
2010204366.tif 000012
【図１１】
2010204366.tif 000013
【図１２】
2010204366.tif 000014
【図１３】
2010204366.tif 000015
【図１４】
2010204366.tif 000016
【図１５】
2010204366.tif 000017
【図１６】
2010204366.tif 000018
【図１７】
2010204366.tif 000019
【図１８】
2010204366.tif 000020
【図１９】
2010204366.tif 000021