(57)【特許請求の範囲】
【請求項１】
ａ．通常音色セットを規定する通常音色セットファイルであって、
ａ−１．当該通常音色セットを構成する複数の音色で使用される複数の波形データを含 むとともに、
ａ−２．当該通常音色セットを構成する複数の音色の各々について、
複数の波形データを特定する波形データ特定情報と、
前記波形データ特定情報により特定される複数の波形データのうちから演奏 情報に応じて１つの波形データを選択する選択情報と
でなる通常音色情報
を含む通常音色セットファイルと、
ｂ．参照音色セットを規定する参照音色セットファイルであって、
ｂ−１．前記通常音色セットファイルを特定するための属性情報を含むとともに、
ｂ−２．当該参照音色セットを構成する複数の音色の各々について、
前記属性情報によって特定される前記通常音色セットファイルに含まれる複 数の波形データを特定する参照波形データ特定情報と、
前記参照波形データ特定情報により特定される複数の波形データのうちから 演奏情報に応じて１つの波形データを選択する選択情報と
でなる参照音色情報
を含む参照音色セットファイルと
が記録されていることを特徴とする記録媒体。
【請求項２】
前記参照音色セットファイルに含まれる前記属性情報は、
前記通常音色セットファイルを特定するともに、
当該参照音色セットファイルによって規定される参照音色セットが、当該属性情報によって特定される前記通常音色セットファイルの音色セットに対する追加の音色セットであることを示す
ことを特徴とする請求項１に記載の記録媒体。
【請求項３】
通常音色セットファイルに含まれる前記選択情報及び参照音色セットファイルに含まれる前記選択情報は、前記演奏情報に含まれるキーコード及びベロシティと、前記波形データ特定情報により特定される複数の波形データのうちの１つとを対応付ける情報であることを特徴とする請求項１に記載の記録媒体。
【請求項４】
前記通常音色セットファイルに含まれる通常音色情報又は前記参照音色セットファイルに含まれる前記参照音色情報には、
各々の前記波形データに対して適用される個別パラメータと、
全ての前記波形データに適用される共通パラメータであって、前記個別パラメータに優先して適用される共通パラメータと
が含まれていることを特徴とする請求項１に記載の記録媒体。
【請求項５】
ａ．通常音色セットを規定する通常音色セットファイルであって、
ａ−１．当該音色セットを構成する複数の音色で使用される複数の波形データを含むと ともに、
ａ−２．当該音色セットを構成する複数の音色の各々について、
複数の波形データを特定する波形データ特定情報と、
前記波形データ特定情報によって特定された複数の波形データのうちから演 奏情報に応じて１つの波形データを選択する選択情報と
でなる通常音色情報
をそれぞれ含む第１及び第２の通常音色セットファイルと、
ｂ．組合せ音色セットを規定する組合せ音色セットファイルであって、
ｂ−１．前記第１の音色セットファイルと前記第２の音色セットファイルとを特定する ための属性情報を含むとともに、
ｂ−２．当該組合せ音色セットを構成する複数の音色の各々について、
前記属性情報によって特定される第１の音色セットファイル乃至第２の音色 セットファイルに含まれる通常音色情報から複数の通常音色情報を特定する 音色情報特定情報と、
前記音色情報特定情報によって特定される複数の通常音色情報のうちから演 奏情報に応じて１つの通常音色情報を選択するための選択情報と
でなる組合音色情報
を含む組合せ音色セットファイルと
が記憶されていることを特徴とする記録媒体。
【請求項６】
前記組合せ音色セットファイルに含まれる前記選択情報は、前記演奏情報に含まれるキーコード及びベロシティと、前記音色情報特定情報により特定される第１の音色セットファイル乃至第２の音色セットファイルに含まれる複数の通常音色情報のうちの１つとを対応付ける情報であることを特徴とする請求項５に記載の記録媒体。
【請求項７】
前記組合音色情報には、
前記音色情報特定情報により特定される各々の通常音色情報ごとに生成される楽音に適用される個別パラメータと、
全ての前記音色情報について生成される楽音に適用される共通パラメータであって、前記個別パラメータに優先して適用される共通パラメータと
が含まれることを特徴とする請求項５に記載の記録媒体。
【請求項８】
請求項１乃至４のいずれか１項に記載の記録媒体に記録された音色セットファイルを利用して、楽音生成装置が演奏情報に応じた楽音信号を生成する楽音信号生成方法であって、
前記楽音生成装置に前記演奏情報を供給する過程と、
前記通常音色セットファイルと前記参照音色セットファイルとを楽音生成装置にロードする過程と、
前記楽音生成装置が、供給された前記演奏情報と、ロードされた前記参照音色セットファイルに含まれる前記参照波形データ特定情報及び前記選択情報とに基づいて、前記通常音色セットファイルに含まれる１つの波形データを特定する過程と、
前記楽音生成装置が、特定された前記波形データに基づいて楽音信号を生成する過程と
を有することを特徴とする楽音信号生成方法。
【請求項９】
請求項５乃至７のいずれか１項に記載の記録媒体に記録された音色セットファイルを利用して、楽音生成装置が演奏情報に応じた楽音信号を生成する楽音信号生成方法であって、
前記楽音生成装置に前記演奏情報を供給する過程と、
前記第１の通常音色セットファイルと、前記第２の通常音色セットファイルと、前記組合せ音色セットファイルとを楽音生成装置にロードする過程と、
前記楽音生成装置が、供給された前記演奏情報と、ロードされた組合せ音色セットファイルに含まれる前記音色情報特定情報及び前記選択情報とに基づいて、ロードされた前記第１の通常音色セットファイル乃至前記第２の通常音色セットファイルに含まれる複数の通常音色情報から１つの通常音色情報を特定する過程と、
前記楽音生成装置が、供給された前記演奏情報と、特定された通常音色情報に含まれる音色情報特定情報及び選択情報とに基づいて、前記ロードされた第１の音色セットファイルないし第２の音色セットファイルに含まれる１つの波形データを特定する過程と、
前記楽音生成装置が該特定された波形データに基づいて楽音信号を生成する過程と
を有することを特徴とする楽音信号生成方法。
【請求項１０】
ＣＰＵ、記録媒体読込手段、楽音信号生成装置を有するコンピュータ装置にて読み込み可能な記録媒体であって、該記録媒体は、前記請求項８または９に記載の楽音信号生成方法を前記ＣＰＵ及び前記楽音信号生成装置にて実行させるプログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子楽器あるいはコンピューターミュージック用の波形データの記録に用いて好適な記録媒体および楽音信号生成方法に関する。
【０００２】
【従来の技術】
今日、電子楽器あるいはコンピューターミュージック用に種々の波形データが提供されている。そして、１セットの音色データをネットワークや記録媒体を介してやりとりできるように、ＤＬＳ(Downloadable Sound、商標)あるいはサウンドフォント（商標）等の規格が提唱されている。
【０００３】
ここで、ＤＬＳにおける音色セットファイルのデータ構成を図２(a)に示す。図において１００は音色セットファイルであり、INFOチャンク１０１、WAVE＿DATAチャンク１０２およびPRESET＿DATAチャンク１０３から構成されている。INFOチャンク１０１には、音色セットファイル１００の音色セット名（ここではST＿SET7）、作成者の表示、作成日付等、種々の情報が格納される。
【０００４】
WAVE＿DATAチャンク１０２には、各種波形データのサンプリング値が記憶されている。そして、PRESET＿DATAチャンク１０３には、音色の具体的な情報が示されている。音色セットファイル１００には、一般的に複数の音色データが記憶されており、各音色データは、ＧＭ（General MIDI）規格のプログラムチェンジおよびバンクセレクトに対応付けられている。
【０００５】
音色セットファイル１００のマッピング例を図２(b)に示す。図において横軸はプログラムチェンジ、縦軸はバンクセレクトに対応し、ハッチングを施した領域１０５に対応して音色データが記憶されていることとする。上述したPRESET＿DATAチャンク１０３においては、各音色に対して「INSTブロック」というデータブロックが設けられている。
【０００６】
任意の一音色に対するINSTブロックを図３に示す。図においてINSTブロック１１０は、ナンバ部１１１、パラメータ部１１２、およびポインタ部１１３から構成されている。ナンバ部１１１には、上述したプログラムチェンジおよびバンクセレクトが記憶されている。パラメータ部１１２には、エンベロープ波形、フィルタリング特性、ＬＦＯ等のパラメータが記憶されている。
【０００７】
また、ポインタ部１１３には、複数のリージョンブロック１２０，１３０，……，１９０を各々指標する複数のポインタが記憶されている。なお、各リージョンブロックは、鍵域（または音高）およびベロシティに応じて異なる波形を発生するために、これら鍵域およびベロシティに対応して設けられている。
【０００８】
ここでリージョンブロック１２０は、上記鍵域およびベロシティの範囲（以下リージョンという）を示すリージョン情報を記憶するリージョン部１２１と、エンベロープ波形、フィルタリング特性、ＬＦＯ等のパラメータを記憶するパラメータ部１２２と、該リージョンに対応する波形データへのポインタを記憶するポインタ部１２３とから構成される。なお、ポインタ部１２３によって指標される波形データは、上記WAVE＿DATAチャンク１０２に記憶されている波形データである。
【０００９】
リージョンブロック１３０，……，１９０も上記リージョンブロック１２０と同様に構成されている。上述したように、INSTブロック１１０内のパラメータ部１１２とリージョンブロック１２０，１３０，……，１９０内のパラメータ部１２２，１３２，……，１９２においては、同一種類のパラメータを定義することが可能である。ここで、ある波形データに対して複数箇所でパラメータが定義されている場合には、INSTブロック１１０から見て上位のパラメータが優先される。例えば、パラメータ部１２２およびパラメータ部１１２において共にエンベロープ波形が定義されている場合は、パラメータ部１１２の定義が優先される。
【００１０】
これは、元々別の音色に対応して作成されたリージョンブロックや波形データを他の音色データとして流用する場合に、パラメータ部１１２において統一感を確保するためである。従って、一般的には、リージョンブロックのパラメータ部には全パラメータの内容が定義され、INSTブロック１１０のパラメータ部１１２においては必要な場合にのみパラメータが定義されることになる。
【００１１】
ここで、上記音色セットファイル１００を用いて音源（これは専用の音源装置であってもよくパーソナルコンピュータ等で実現してもよい）にて楽音信号を生成する動作を簡単に説明しておく。まず、音源にＭＩＤＩのプログラムチェンジイベントまたはバンクセレクトイベントが供給されると、その内容が音源に記憶され、これによってアクセスすべきINSTブロック１１０が特定される。
【００１２】
次に、音源にノートオンイベント（これにはキーコードおよびベロシティが付随する）が供給されると、対応するリージョンブロックが特定され、そのポインタ部によって読み出すべき波形データが特定される。この波形データはキーコードに応じた速度で読み出され、波形データにピッチが付与される。
【００１３】
また、対応するリージョンブロックのパラメータ部およびINSTブロック１１０のパラメータ部１１２が読み出され、後者を優先しつつ波形データに付与するパラメータが決定される。そして、波形データに対して、決定されたパラメータを付与すると、楽音信号が合成される。
【００１４】
【発明が解決しようとする課題】
しかし、上述した技術においては、楽音信号を合成しうるバリエーションは一個の音色セットファイルによって完結していた。すなわち、ユーザが複数の音色セットファイルを入手したとしても、それぞれのファイル内に存在するパラメータや波形データしか用いることができず、複数の音色セットファイルにまたがって音色を構成することは不可能であった。
この発明は上述した事情に鑑みてなされたものであり、多彩な音色を生成できる記録媒体および楽音信号生成方法を提供することを目的としている。
【００１５】
【課題を解決するための手段】
上記課題を解決するため請求項１記載の構成にあっては、
ａ．通常音色セットを規定する通常音色セットファイルであって、
ａ−１．当該通常音色セットを構成する複数の音色で使用される複数の波形データを含 むとともに、
ａ−２．当該通常音色セットを構成する複数の音色の各々について、
複数の波形データを特定する波形データ特定情報と、
前記波形データ特定情報により特定される複数の波形データのうちから演奏 情報に応じて１つの波形データを選択する選択情報と
でなる通常音色情報
を含む通常音色セットファイルと、
ｂ．参照音色セットを規定する参照音色セットファイルであって、
ｂ−１．前記通常音色セットファイルを特定するための属性情報を含むとともに、
ｂ−２．当該参照音色セットを構成する複数の音色の各々について、
前記属性情報によって特定される前記通常音色セットファイルに含まれる複 数の波形データを特定する参照波形データ特定情報と、
前記参照波形データ特定情報により特定される複数の波形データのうちから 演奏情報に応じて１つの波形データを選択する選択情報と
でなる参照音色情報
を含む参照音色セットファイルと
が記録されていることを特徴とする。
また、請求項２記載の構成にあっては、請求項１記載の記録媒体において、
前記参照音色セットファイルに含まれる前記属性情報は、
前記通常音色セットファイルを特定するともに、
当該参照音色セットファイルによって規定される参照音色セットが、当該属性情報によって特定される前記通常音色セットファイルの音色セットに対する追加の音色セットであることを示す
ことを特徴とする。
さらに、請求項３記載の構成にあっては、請求項１記載の記録媒体において、
通常音色セットファイルに含まれる前記選択情報及び参照音色セットファイルに含まれる前記選択情報は、前記演奏情報に含まれるキーコード及びベロシティと、前記波形データ特定情報により特定される複数の波形データのうちの１つとを対応付ける情報であることを特徴とする。
また、請求項４記載の構成にあっては、請求項１記載の記録媒体において、
前記通常音色セットファイルに含まれる通常音色情報又は前記参照音色セットファイルに含まれる前記参照音色情報には、
各々の前記波形データに対して適用される個別パラメータと、
全ての前記波形データに適用される共通パラメータであって、前記個別パラメータに優先して適用される共通パラメータと
が含まれていることを特徴とする。
また、請求項５記載の構成にあっては、
ａ．通常音色セットを規定する通常音色セットファイルであって、
ａ−１．当該音色セットを構成する複数の音色で使用される複数の波形データを含むと ともに、
ａ−２．当該音色セットを構成する複数の音色の各々について、
複数の波形データを特定する波形データ特定情報と、
前記波形データ特定情報によって特定された複数の波形データのうちから演 奏情報に応じて１つの波形データを選択する選択情報と
でなる通常音色情報
をそれぞれ含む第１及び第２の通常音色セットファイルと、
ｂ．組合せ音色セットを規定する組合せ音色セットファイルであって、
ｂ−１．前記第１の音色セットファイルと前記第２の音色セットファイルとを特定する ための属性情報を含むとともに、
ｂ−２．当該組合せ音色セットを構成する複数の音色の各々について、
前記属性情報によって特定される第１の音色セットファイル乃至第２の音色 セットファイルに含まれる通常音色情報から複数の通常音色情報を特定する 音色情報特定情報と、
前記音色情報特定情報によって特定される複数の通常音色情報のうちから演 奏情報に応じて１つの通常音色情報を選択するための選択情報と
でなる組合音色情報
を含む組合せ音色セットファイルと
が記憶されていることを特徴とする。
また、請求項６記載の構成にあっては、請求項５記載の記録媒体において、
前記組合せ音色セットファイルに含まれる前記選択情報は、前記演奏情報に含まれるキーコード及びベロシティと、前記音色情報特定情報により特定される第１の音色セットファイル乃至第２の音色セットファイルに含まれる複数の通常音色情報のうちの１つとを対応付ける情報であることを特徴とする。
また、請求項７記載の構成にあっては、請求項５記載の記録媒体において、
前記組合音色情報には、
前記音色情報特定情報により特定される各々の通常音色情報ごとに生成される楽音に適用される個別パラメータと、
全ての前記音色情報について生成される楽音に適用される共通パラメータであって、前記個別パラメータに優先して適用される共通パラメータと
が含まれることを特徴とする。
また、請求項８記載の構成にあっては、請求項１乃至４のいずれか１項に記載の記録媒体に記録された音色セットファイルを利用して、楽音生成装置が演奏情報に応じた楽音信号を生成する楽音信号生成方法であって、
前記楽音生成装置に前記演奏情報を供給する過程と、
前記通常音色セットファイルと前記参照音色セットファイルとを楽音生成装置にロードする過程と、
前記楽音生成装置が、供給された前記演奏情報と、ロードされた前記参照音色セットファイルに含まれる前記参照波形データ特定情報及び前記選択情報とに基づいて、前記通常音色セットファイルに含まれる１つの波形データを特定する過程と、
前記楽音生成装置が、特定された前記波形データに基づいて楽音信号を生成する過程と
を有することを特徴とする。
また、請求項９記載の構成にあっては、
請求項５乃至７のいずれか１項に記載の記録媒体に記録された音色セットファイルを利用して、楽音生成装置が演奏情報に応じた楽音信号を生成する楽音信号生成方法であって、
前記楽音生成装置に前記演奏情報を供給する過程と、
前記第１の通常音色セットファイルと、前記第２の通常音色セットファイルと、前記組合せ音色セットファイルとを楽音生成装置にロードする過程と、
前記楽音生成装置が、供給された前記演奏情報と、ロードされた組合せ音色セットファイルに含まれる前記音色情報特定情報及び前記選択情報とに基づいて、ロードされた前記第１の通常音色セットファイル乃至前記第２の通常音色セットファイルに含まれる複数の通常音色情報から１つの通常音色情報を特定する過程と、
前記楽音生成装置が、供給された前記演奏情報と、特定された通常音色情報に含まれる音色情報特定情報及び選択情報とに基づいて、前記ロードされた第１の音色セットファイルないし第２の音色セットファイルに含まれる１つの波形データを特定する過程と、
前記楽音生成装置が該特定された波形データに基づいて楽音信号を生成する過程と
を有することを特徴とする。
また、請求項１０記載の構成にあっては、
ＣＰＵ、記録媒体読込手段、楽音信号生成装置を有するコンピュータ装置にて読み込み可能な記録媒体であって、該記録媒体は、前記請求項８または９に記載の楽音信号生成方法を前記ＣＰＵ及び前記楽音信号生成装置にて実行させるプログラムを記録したことを特徴とする。
【００１６】
１．実施形態の構成
次に、本発明の一実施形態の構成を図１を参照し説明する。なお、本実施形態は汎用パーソナルコンピュータ２０によって楽音信号生成装置を実現したものである。
パーソナルコンピュータ２０の内部において９はＣＰＵであり、後述する制御プログラムによりパーソナルコンピュータ２０内の各部を制御する。
【００１７】
１はネットワークインターフェースであり、ネットワーク２５との間で各種の情報をやりとりする。２はＭＩＤＩインターフェースであり、鍵盤あるいは音源等のＭＩＤＩ機器に接続され、ＭＩＤＩデータのやりとりを行う。３は表示器であり、ユーザに対して各種の情報を表示する。４は入力装置であり、キーボードおよびマウス等から構成され、ユーザの操作に基づいてＣＰＵ９に対して各種の操作情報を供給する。
【００１８】
１０はＲＯＭであり、パーソナルコンピュータ２０を起動させるためのイニシャルプログラムローダ等が記憶されている。１１はＲＡＭであり、ＣＰＵ９によって読出しおよび書込み可能になっている。５は波形インターフェースであり、マイク等を介してアナログの楽音信号を収集しこれをＰＣＭ情報に変換してＲＡＭ１１に記憶させるとともに、ＲＡＭ１１上のＰＣＭ情報をアナログ信号に変換し、図示せぬサウンドシステムを介して発音させる。
【００１９】
６はハードディスクであり、ＲＡＭ１１に展開されるオペレーティングシステム、ドライバ、アプリケーションプログラム、音色セットファイル等が記憶される。７はディスクドライブであり、ＣＤ−ＲＯＭ、フロッピーディスク等のリムーバルディスク１２に対してデータの読み書きを行う。８はタイマであり、所定時間毎にＣＰＵ９に対してタイマ割込みを発生させる。３０はサーバーであり、ネットワーク２５に対して各種データの送受信を行うデータ送受信部３１と、ユーザに提供されるソフトウエアを格納するデータ記憶装置３２とから構成されている。
【００２０】
２．実施形態のデータ構成
本実施形態においては、ハードディスク６に種々の音色セットファイルが記憶される。これら音色セットファイルには、以下のような種別がある。
２．１．通常音色セットファイル
通常音色セットファイルとは、従来技術（図２，３）において説明した通りの構成を有するファイルである。
【００２１】
２．２．追加音色セットファイル
追加音色セットファイルとは、通常音色セットファイルのバージョンアップ、あるいはオプションとして提供しうるファイルである。追加音色セットファイル２００のデータ構成を図４(a)に示す。追加音色セットファイル２００は、通常の音色セットファイル１００と同様に、INFOチャンク２０１、WAVE＿DATAチャンク２０２およびPRESET＿DATAチャンク２０３から構成されている。
【００２２】
INFOチャンク１０１と同様に、INFOチャンク２０１には追加音色セットファイル２００の音色セット名（ここではAD＿SET2）、作成者の表示、作成日付等、種々の情報が格納される。さらに、INFOチャンク２０１には、音色セットファイル２００の属性情報２０１ａが含まれている。この属性情報２０１ａは、該音色セットファイル２００の種別と、参照すべき他の音色セットファイル名と、音色セットファイル１００，２００の関係とを特定する。
【００２３】
ここで、追加音色セットファイル２００が通常音色セットファイル１００（ST＿SET7）の追加音色を格納する場合、属性情報２０１ａの内容は、「本音色セットは音色セットST＿SET7に対する追加情報である」旨を示す情報になる。WAVE＿DATAチャンク２０２には、WAVE＿DATAチャンク１０２と同様に、各種波形データのサンプリング値が記憶されている。
【００２４】
PRESET＿DATAチャンク２０３には、PRESET＿DATAチャンク１０３と同様に、音色の具体的な情報が示されている。但し、PRESET＿DATAチャンク２０３内においては、必要に応じて、音色セットファイル１００内の情報が参照されている（詳細は後述する）。追加音色セットファイル２００の各音色データは、音色セットファイル１００に対して重複しないように、ＧＭ（General MIDI）規格のプログラムチェンジおよびバンクセレクトに対応付けられている。
【００２５】
音色セットファイル１００，２００を合わせたマッピング結果を図４(b)に示す。
図において領域１０５は図２(b)と同一であり、それに加えて領域２０６が追加音色セットファイル２００に対応する領域になっている。そして、追加音色セットファイル２００のPRESET＿DATAチャンク２０３には、該領域２０６の各音色に対応してINSTブロックが設けられている。
【００２６】
次に、PRESET＿DATAチャンク２０３内のINSTブロック例を図５に示す。図においてINSTブロック２１０は、通常音色セットファイル１００のINSTブロック１１０と同様に、ナンバ部２１１、パラメータ部２１２、およびポインタ部２１３から構成されている。そして、ポインタ部２１３には、複数のリージョンブロック２２０，２３０，……，２９０を各々指標する複数のポインタが記憶されている。
【００２７】
ここで、リージョンブロック２２０，２３０，……，２９０は、図３において説明したリージョンブロック１２０等と同様に、鍵域およびベロシティの範囲であるリージョン情報を記憶するリージョン部と、エンベロープ波形、フィルタリング特性、ＬＦＯ等のパラメータを記憶するパラメータ部と、該リージョンに対応する波形データへのポインタを記憶するポインタ部とから構成される。
【００２８】
但し、リージョンブロック２２０，２３０，……，２９０は、必ずしもPRESET＿DATAチャンク２０３に記憶されているわけではなく、追加される側の音色セットファイル内のリージョンブロックである場合もある。追加される側の音色セットファイルを「親音色セットファイル」という。上記例にあっては、親音色セットファイルは通常音色セットファイル１００であり、リージョンブロック２４０はこの通常音色セットファイル１００内のリージョンブロックである。なお、「親音色セットファイル」は通常音色セットファイルに限られるわけではない。
【００２９】
以上のように親音色セットファイルのリージョンブロックの指標を可能ならしめると、追加された音色においてある鍵域のあるベロシティの範囲が親音色セットのものと同一である場合、その範囲についてはポインタによって既存のリージョンブロックを指標すればよい。これにより、音色セットファイル１００，２００において同一内容のリージョンブロックおよび波形データを重複して記憶する必要がなくなる。
【００３０】
また、PRESET＿DATAチャンク２０３内に実体が記憶されたリージョンブロックにおいて、ポインタ部によって指標される波形データは、必ずしもWAVE＿DATAチャンク２０２に記憶されているものに限られず、親音色セットファイルの波形データであってもよい。例えば、図５においてリージョンブロック２３０自体はその実体がPRESET＿DATAチャンク２０３に記憶されているが、そのポインタ部２３３によって指標されている波形データ２３４は、通常音色セットファイル１００のWAVE＿DATAチャンク１０２に記憶されているものである。
【００３１】
このようなデータ構成によれば、親音色セットファイルの波形データを流用して、パラメータや対応するリージョン情報が異なる音色を追加音色セットファイル２００内に設けることができる。さらに、音色セットファイル１００，２００において波形データを重複して記憶する必要もない。
【００３２】
２．３．組合せ音色セットファイル
組合せ音色セットファイルとは、一または複数の音色セットファイル内の音色による合奏等に用いられる音色セットファイルである。組合せ音色セットファイル３００のデータ構成を図６(a)に示す。組合せ音色セットファイル３００は、通常の音色セットファイル１００と同様に、INFOチャンク３０１およびPRESET＿DATAチャンク３０３を有しているが、WAVE＿DATAチャンクは設けられていない。
【００３３】
INFOチャンク１０１と同様に、INFOチャンク３０１には組合せ音色セットファイル３００の音色セット名（ここではCO＿SET4）、作成者の表示、作成日付等、種々の情報が格納される。さらに、INFOチャンク３０１には、上述したINFOチャンク２０１と同様に、音色セットファイル３００の属性情報３０１ａが含まれている。
【００３４】
ここで、組合せ音色セットファイル３００が音色セットファイル１００（ST＿SET7）および他の音色セットファイル（ST＿SET3）を組み合わせる場合は、属性情報３０１ａは、「本音色セットは音色セットST＿SET7と音色セットST＿SET3を組み合わせて使用する合奏情報である」旨を示す情報になる。なお、音色セットST＿SET3に対応する音色セットファイルは特に図示していないが、音色セットST＿SET7と同様の構成を有することとする。
【００３５】
ここで、音色セットST＿SET3，ST＿SET7およびCO＿SET4のマッピング結果を図６(b)に示す。図示のように、音色セットCO＿SET4における各音色のプログラムチェンジおよびバンクセレクトは、音色セットST＿SET3，ST＿SET7のものとは独立に設定される。
【００３６】
次に、PRESET＿DATAチャンク３０３内において音色セットCO＿SET4内の一音色に対応して設けられたINSTブロック例を図７に示す。図においてINSTブロック３１０は、通常音色セットファイル１００のINSTブロック１１０と同様に、ナンバ部３１１、パラメータ部３１２、およびポインタ部３１３から構成されている。そして、ポインタ部３１３には、複数のリージョンブロック３２０，３３０，……，３９０を各々指標する複数のポインタが記憶されている。
【００３７】
ここで、リージョンブロック３２０，３３０，……，３９０は、図３において説明したリージョンブロック１２０等と同様に、リージョン情報を記憶するリージョン部と、エンベロープ波形、フィルタリング特性、ＬＦＯ等のパラメータを記憶するパラメータ部と、ポインタ部とから構成される。
【００３８】
但し、該リージョンブロック３２０，３３０，……，３９０のポインタ部３２３，３３３，……，３９３は、波形データへのポインタではなく、組み合わされる音色セットファイルのINSTブロックを指標するポインタになっている。上記例においては、音色セットCO＿SET4は音色セットST＿SET3，ST＿SET7を組み合わせるから、ポインタ部３２３，３３３，……，３９３は、音色セットST＿SET7に係るINSTブロックまたは音色セットST＿SET3に係るINSTブロックのうち一方を指標することになる。
【００３９】
図示の例にあっては、ポインタ部３２３，３３３，……，３９３によってINSTブロック１１０，４１０，５１０，……，６１０が指標されているが、これらは何れも音色セットST＿SET3，ST＿SET7のうち何れかに属するものである。なお、複数のポインタ部３２３，３３３，……，３９３が同一のINSTブロックを指標してもよい。
【００４０】
上記リージョンブロック３２０，３３０，……，３９０のリージョン部３２１，３３１，……，３９１においては、通常音色セットファイル１００のリージョン部１２１と同様に、各リージョンブロックに対応するリージョン情報が記憶される。ここで、所望のリージョンにおいて音色セットST＿SET3，ST＿SET7による合奏を行わせる場合には、２つのリージョンブロックのリージョン部に同一のリージョン情報を記憶させておく。
【００４１】
例えば、リージョン部３２１，３３１において同一のリージョンを記憶させると、それらのポインタ部３２３，３３３によってINSTブロック１１０，４１０がリンクされるから、発音処理（詳細は後述する）の際に該INSTブロック１１０，４１０に対応する楽音信号が各々再生され合奏されることになる。なお、組合せ音色セットファイル３００以外の音色セットファイルにおいても、上述したように複数のリージョン部におけるリージョン情報を一部または全部重複させることにより、合奏を指示することができる。
【００４２】
２．４．波形組合せ音色セットファイル
波形組合せ音色セットファイルとは、一または複数の他の音色セットファイル内の波形データを流用し、必要に応じて独自の波形データを使用しつつ、新たな音色を提供するための音色セットファイルである。波形組合せ音色セットファイルのデータ構成を図８(a)に示す。波形組合せ音色セットファイル７００は、通常の音色セットファイル１００と同様に、INFOチャンク７０１、WAVE＿DATAチャンク７０２およびPRESET＿DATAチャンク７０３を有している。
【００４３】
INFOチャンク１０１と同様に、INFOチャンク７０１には波形組合せ音色セットファイル７００の音色セット名（ここではCT＿SET5）、作成者の表示、作成日付等、種々の情報が格納される。さらに、INFOチャンク７０１には、上述したINFOチャンク２０１と同様に、波形組合せ音色セットファイル７００の属性情報７０１ａが含まれている。
【００４４】
ここで、波形組合せ音色セットファイル７００が通常音色セットファイル１００（ST＿SET7）および他の音色セットファイル（ST＿SET3）の波形データを使用する場合は、属性情報７０１ａは、「本音色セットは音色セットST＿SET7と音色セットST＿SET3の波形データを使用する音色セットの情報である」旨を示す情報になる。
【００４５】
ここで、音色セットST＿SET3，ST＿SET7およびCT＿SET5のマッピング結果を図８(b)に示す。図示のように、音色セットCT＿SET5における各音色のプログラムチェンジおよびバンクセレクトは、音色セットST＿SET3，ST＿SET7のものとは独立に設定される。
【００４６】
次に、PRESET＿DATAチャンク７０３内において音色セットCT＿SET5内の一音色に対応して設けられたINSTブロック例を図９に示す。図においてINSTブロック７１０は、通常音色セットファイル１００のINSTブロック１１０と同様に、ナンバ部７１１、パラメータ部７１２、およびポインタ部７１３から構成されている。そして、ポインタ部７１３には、複数のリージョンブロック７２０，７３０，……，７９０を各々指標する複数のポインタが記憶されている。
【００４７】
ここで、リージョンブロック７２０，７３０，……，７９０は、図３において説明したリージョンブロック１２０等と同様に、リージョン情報を記憶するリージョン部と、エンベロープ波形、フィルタリング特性、ＬＦＯ等のパラメータを記憶するパラメータ部と、ポインタ部とから構成される。
【００４８】
但し、該リージョンブロック７２０，７３０，……，７９０のポインタ部７２３，７３３，……，７９３は、音色セットCT＿SET5内の波形データのみならず、音色セットST＿SET3，ST＿SET7内の波形データも指標することが可能になっている。図示の例にあっては、ポインタ部７２３によって音色セットST＿SET3内の波形データ７２４が指標され、ポインタ部７３３によって音色セットST＿SET7内の波形データ７３４が指標されている。また、ポインタ部７９３によって、該波形組合せ音色セットファイル７００内の波形データ７９４が指標されている。
【００４９】
３．実施形態の動作
３．１．ノートオンイベントの受信
本実施形態において、パーソナルコンピュータ２０上で動作するソフトウエアは、一般的に「音源モジュール」と称されるものであり、ハードウエアの音源装置の動作をシミュレートする。
【００５０】
音源モジュールは、電子楽器ソフトやゲームソフト等のアプリケーションプログラムによって生成されたＭＩＤＩデータ、あるいはＭＩＤＩインターフェース２を介して受信したＭＩＤＩデータに基づいて楽音信号のＰＣＭ情報を生成し、これをＲＡＭ１１上に展開する。展開された波形データは、波形インターフェース５のデバイスドライバによって波形インターフェース５に転送される。
【００５１】
音源モジュールは複数パートの楽音信号を同時に発生することができ、各パート毎に音色（すなわちプログラムチェンジおよびバンクセレクト）が予め対応付けられている。ここで、音源モジュールに対してノートオンイベントが供給された際の処理を図１０を参照し説明する。なお、このノートオンイベントには、該イベントに係るパートＰＴ、ノートナンバＮＮおよびベロシティＶＥＬが含まれている。
【００５２】
アプリケーションプログラム等によって音源モジュールにノートオンイベントが供給されると、図１０に示すルーチンが起動される。図において処理がステップＳＰ１に進むと、パートＰＴ、ノートナンバＮＮおよびベロシティＶＥＬが呼出元のプログラムから受領される。
【００５３】
３．２．枝数の確定
次に処理がステップＳＰ２に進むと、該パートＰＴに係る音色の各リージョンの設定に基づいて、発音に使用される枝およびその数が選択される。その詳細を音色セットファイルの種類に応じて説明する。
【００５４】
（１）通常音色セットファイルまたは波形組合せ音色セットファイルの場合
まず、音源モジュールにおいて通常音色セットファイル（図２，図３）が用いられていた場合の処理を説明する。アプリケーションプログラム等から供給されたパートＰＴには、予めプログラムチェンジおよびバンクセレクトが対応付けられているから、パートＰＴによって、PRESET＿DATAチャンク１０３内の一のINSTブロックが特定される。
【００５５】
ここで特定されたINSTブロックは、図３に示すINSTブロック１１０であったこととする。次に、ポインタ部１１３内の複数のポインタが順次参照され、これらポインタによって指標されるリージョンブロック１２０，１３０，……，１９０内のリージョン部１２１，１３１，……，１９１の内容が順次読み出される。そして、先に供給されたノートナンバＮＮおよびベロシティＶＥＬが各リージョン（鍵域およびベロシティの範囲）に属するか否かが、逐次判定される。
【００５６】
そして、ポインタ部１１３によって指標された全てのリージョンブロック１２０，１３０，……，１９０に対してかかる処理が行われると、ノートナンバＮＮおよびベロシティＶＥＬに対応するリージョンブロックの数が確定される。この確定されたリージョンブロックの数が「枝数」に等しくなる。
【００５７】
音源モジュールにおいて波形組合せ音色セットファイル（図８，図９）が用いられていた場合は、上述したように他の音色セットファイルにおける波形データが用いられるが、リージョンブロックすなわち枝を特定するまでの処理は通常音色セットファイルと同様である。
【００５８】
（２）追加音色セットファイルの場合
次に、音源モジュールにおいて追加音色セットファイル（図４，図５）が用いられていた場合の処理を説明する。この場合にもアプリケーションプログラム等から供給されたパートＰＴには、予めプログラムチェンジおよびバンクセレクトが対応付けられているから、パートＰＴによって、PRESET＿DATAチャンク２０３内の一のINSTブロックが特定される。
【００５９】
ここで特定されたINSTブロックは、図５に示すINSTブロック２１０であったこととする。次に、ポインタ部２１３内の複数のポインタが順次参照され、これらポインタによって指標されるリージョンブロック２２０，２３０，……，２９０内のリージョン部２２１，２３１，２４１，……，２９１の内容が順次読み出される。そして、先に供給されたノートナンバＮＮおよびベロシティＶＥＬは各リージョンに属するか否かが、逐次判定される。
【００６０】
ここで、リージョンブロック２４０は親音色セットファイルである音色セットファイル１００内のブロックであるが、INFOチャンク２０１内の属性情報２０１ａにおいて、「本音色セットは音色セットST＿SET7に対する追加情報である」旨が記憶されているから、該音色セットST＿SET7におけるリージョンブロックも読み出される。
【００６１】
そして、ポインタ部２１３によって指標された全てのリージョンブロック２２０，２３０，……，２９０に対してかかる処理が行われると、ノートナンバＮＮおよびベロシティＶＥＬに対応するリージョンブロックの数が確定される。この確定されたリージョンブロックの数が「枝数」に等しくなる。
【００６２】
（３）組合せ音色セットファイルの場合
次に、音源モジュールにおいて組合せ音色セットファイル（図６，図７）が用いられていた場合の処理を説明する。この場合にもアプリケーションプログラム等から供給されたパートＰＴには、予めプログラムチェンジおよびバンクセレクトが対応付けられているから、パートＰＴによって、PRESET＿DATAチャンク３０３内の一のINSTブロックが特定される。
【００６３】
ここで特定されたINSTブロックは、図７に示すINSTブロック３１０であったこととする。次に、ポインタ部３１３内の複数のポインタが順次参照され、これらポインタによって指標されるリージョンブロック３２０，３３０，……，３９０内のリージョン部３２１，３３１，……，３９１の内容が順次読み出される。そして、先に供給されたノートナンバＮＮおよびベロシティＶＥＬが各リージョンに属するか否かが、逐次判定される。
【００６４】
ここで、「属する」と判定されたリージョンについては、そのリージョンブロック３２０，３３０，……，３９０内のポインタ部３２３，３３３，……，３９３の内容がさらに参照される。なお、上述したように、ポインタ部３２３，３３３，……，３９３は、音色セットST＿SET7に係るINSTブロックまたは音色セットST＿SET3に係るINSTブロックのうち一方を指標するものである。
【００６５】
例えば、リージョンブロック３２０内のポインタ部３２３によれば、図３に示すINSTブロック１１０が指標される。次に、指標されたINSTブロック内のポインタ部が参照され、これらポインタによって指標されるリージョンブロック内のリージョン部の内容が順次読み出される。上記例にあっては、ポインタ部１１３が参照され、先に供給されたノートナンバＮＮおよびベロシティＶＥＬがリージョン部１２１，１３１，……，１９１に係るリージョンに属するか否かが、逐次判定される。
【００６６】
そして、ポインタ部２１３によって指標された全てのリージョンブロック２２０，２３０，……，２９０に対して上述した処理が行われ、ポインタ部２２３，２３３，……，２９３およびINSTブロック１１０，４１０，５１０，……，６１０を介して組合せ対象となる音色セットファイルのリージョンブロックが全て検索される。これにより、末端のリージョンブロック（組合せ対象となる音色セットST＿SET3，ST＿SET7のリージョンブロック）のうちノートナンバＮＮおよびベロシティＶＥＬに対応するものの数が確定される。この確定された数が「枝数」に等しくなる。
【００６７】
以上のように枝および枝数を特定する処理は音色セットファイルに応じて異なるが、一般的に、組合せ音色セットファイルが用いられている場合は複数の枝が、その他の音色セットファイルが用いられている場合は一つの枝が、各々確保される。これは、波形組合せ音色セットファイルは既存の複数の音色セットファイルを用いた合奏を行うこと主眼としているためである。
【００６８】
但し、あるノートナンバＮＮおよびベロシティＶＥＬに対応する枝は、リージョン部の内容によって任意に設定することが可能であるため、組合せ音色セットファイルが用いられている場合においても一つの枝のみが確保されることがあり、その他の音色セットファイルが用いられている場合においても複数の枝が確保される場合もあり得る。
【００６９】
３．３．発音処理
次に、図１０において処理がステップＳＰ３に進むと、先に確定された枝数と同一数の発音チャンネルが確保される。次に処理がステップＳＰ４に進むと、各枝の発音に使用される波形データが特定される。すなわち、各枝の末端のリージョンブロック内のポインタ部で指標される波形データが、使用される波形データである。
【００７０】
次に、処理がステップＳＰ５に進むと、各枝の発音に使用されるパラメータが決定される。まず、組合せ音色セットファイル以外の音色セットファイルにあっては、末端のリージョンブロックにおけるパラメータ部が読み出され、一時的に記憶される。次に、その上位のINSTブロック内のパラメータ部の内容が読み出され、一時的に記憶されたパラメータと異なる値が読み出された場合には、新たに読み出された内容を優先して記憶内容が更新される。そして、最後に残った記憶内容が、使用すべきパラメータの内容になる。
【００７１】
組合せ音色セットファイルにあっては、上述したのと同様の処理が行われた後、組み合わせ対象の音色セットファイルのINSTブロックの上位にあるリージョンブロック３２０，３３０，……，３９０内のパラメータ部３２２，３３２，３４２，……，３９２が読み出され、さらに最上位にある組合せ音色セットファイル自体のINSTブロック３１０内のパラメータ部３１２が読み出され、後に読み出された内容を優先しつつ記憶内容が更新される。そして、かかる場合においても最後に残った記憶内容が、使用すべきパラメータの内容になる。
【００７２】
次に、処理がステップＳＰ６に進むと、ノートナンバＮＮ、ベロシティＶＥＬ、特定された波形データおよびパラメータに基づいてＰＣＭ情報である楽音信号が生成され、生成された楽音信号はＲＡＭ１１内に展開される。展開された波形データは、波形インターフェース５のデバイスドライバによって波形インターフェース５に転送され、アナログ信号に変換された後、図示せぬサウンドシステムを介して発音される。
【００７３】
４．変形例
本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。
（１）上記実施形態においては、末端のリージョンブロックから上位のINSTブロックあるいはリージョンブロックを辿る際に同一のパラメータが規定されていた場合は上位のブロックのパラメータを優先して適用した。しかし、上位のブロックに末端のブロックのパラメータの「差分」を記憶させ、末端のブロックにおけるパラメータの値と各上位ブロックにおける「差分」との合計を最終的なパラメータの値として用いてもよい。また、末端のブロックにおけるパラメータの値と上位のブロックにおけるパラメータの値とを重み付け合成してその合成値を最終的なパラメータの値としてもよい。あるいは、両パラメータ値を合成用の所定の関数に入れてその関数の値を最終的なパラメータ値としてもよい。
【００７４】
（２）上記実施形態において、各リージョン部はノートナンバＮＮおよびベロシティＶＥＬの双方に基づいて選択されたが、ノートナンバＮＮまたはベロシティＶＥＬのうち一方のみに基づいてリージョン部を選択してもよく、また、リージョン部の選択に際して他の種々の情報を用いてもよい。
【００７５】
（３）上記実施形態において、追加音色セットファイル２００の各音色データは、通常音色セットファイル１００に対して重複しないように対応づけられていたが、その重複を許し、プログラムチェンジとバンクセレクトの値が重複しているところでは、追加音色セットファイル２００の音色データを優先的に使用するようにしてもよい。つまり、通常音色セットファイル１００の一部の音色データが、追加音色セットファイル２００の音色データでオーバーライド（内容の置き換え）される。
【００７６】
【発明の効果】
以上説明したようにこの発明によれば、ある音色セットファイルが他の音色セットファイルの波形データ等を流用することによって楽音信号を生成することができ、あるいは、複数の音色セットファイルの波形データ等を組み合わせることによって楽音信号を生成することができるから、多彩な音色を生成することが可能である。
【図面の簡単な説明】
【図１】  本発明の一実施形態の楽音信号生成装置のブロック図である。
【図２】  従来例および上記実施形態の通常音色セットファイル１００のメモリマップおよび音色マップである。
【図３】  従来例および上記実施形態の通常音色セットファイル１００のデータ構成図である。
【図４】  上記実施形態の追加音色セットファイル２００のメモリマップおよび音色マップである。
【図５】  上記実施形態の追加音色セットファイル２００のデータ構成図である。
【図６】  上記実施形態の組合せ音色セットファイル３００のメモリマップおよび音色マップである。
【図７】  上記実施形態の組合せ音色セットファイル３００のデータ構成図である。
【図８】  上記実施形態の波形組合せ音色セットファイル７００のメモリマップおよび音色マップである。
【図９】  上記実施形態の波形組合せ音色セットファイル７００のデータ構成図である。
【図１０】  上記実施形態の制御プログラムのフローチャートである。
【符号の説明】
１……ネットワークインターフェース、２……ＭＩＤＩインターフェース、３……表示器、４……入力装置、５……波形インターフェース、６……ハードディスク (記録媒体)、７……ディスクドライブ、９……ＣＰＵ、１０……ＲＯＭ、１１……ＲＡＭ、１２……リムーバルディスク（記録媒体）、２０……パーソナルコンピュータ、２５……ネットワーク、３０……サーバー、３１……データ送受信部、３２……データ記憶装置、１００……通常音色セットファイル、１００，２００……音色セットファイル、１０１……INFOチャンク、１０２……WAVE＿DATAチャンク、１０３……PRESET＿DATAチャンク、１０５……領域、１１０，４１０，５１０，……，６１０……INSTブロック、１１１……ナンバ部、１１２……パラメータ部、１１３……ポインタ部、１２０，１３０，……，１９０……リージョンブロック、１２１，１３１，……，１９１……リージョン部（選択情報）、１２２，１３２，……，１９２……パラメータ部、１２３，１３３，……，１９３……ポインタ部（波形データ特定情報）、２００……追加音色セットファイル（他ファイル参照型音色セットファイル）、２０１……INFOチャンク、２０１ａ……属性情報、２０２……WAVE＿DATAチャンク、２０３……PRESET＿DATAチャンク、２０６……領域、２１０……INSTブロック、２１１……ナンバ部、２１２……パラメータ部、２１３……ポインタ部、２２０，２３０，……，２９０……リージョンブロック、２２１，２３１，２４１，……，２９１……リージョン部（選択情報）、２２３，２３３，……，２９３……ポインタ部（波形データ特定情報）、２３４……波形データ、２４０……リージョンブロック、３００……組合せ音色セットファイル（他ファイル参照型音色セットファイル）、３０１……INFOチャンク、３０１ａ……属性情報、３０３……PRESET＿DATAチャンク、３１０……INSTブロック、３１１……ナンバ部、３１２……パラメータ部、３１３……ポインタ部、３２０，３３０，……，３９０……リージョンブロック、３２１，３３１，……，３９１……リージョン部（選択情報）、３２２，３３２，３４２，……，３９２……パラメータ部、３２３，３３３，……，３９３……ポインタ部（他ファイル特定情報）、７００……波形組合せ音色セットファイル（他ファイル参照型音色セットファイル）、７０１……INFOチャンク、７０１ａ……属性情報、７０３……PRESET＿DATAチャンク、７１０……INSTブロック、７２０，７３０，……，７９０……リージョンブロック、７１１……ナンバ部、７１２……パラメータ部、７２１，……，７９１……リージョン部（選択情報）、７２２，……，７９２……パラメータ部、７１３，７２３，７３３，……，７９３……ポインタ部（波形データ特定情報）、７２４，７３４，……，７９４……波形データ。
【図１】
0003840851.tif 000002
【図２】
0003840851.tif 000003
【図３】
0003840851.tif 000004
【図４】
0003840851.tif 000005
【図５】
0003840851.tif 000006
【図６】
0003840851.tif 000007
【図７】
0003840851.tif 000008
【図８】
0003840851.tif 000009
【図９】
0003840851.tif 000010
【図１０】
0003840851.tif 000011