(57)【特許請求の範囲】
【請求項１】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、
外部から取り込み可能な音色データを取り込む取り込み手段と、ここで、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随して有するものであり、
前記所定の音色規格に従う音色選択空間内において前記外部から取り込み可能な音色データを配置するための専用の領域を設定し、前記取り込み手段を介して外部から取り込んだ音色データを該専用の領域に配置する手段と、
前記専用の領域に配置された前記外部から取り込んだ音色データを、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って、選択する手段と、
前記オリジナル音色選択情報を、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に置換する置換手段と
を具備し、
前記置換手段の介在によって、オリジナル音色選択情報を用いて前記専用の領域から前記音色データを選択可能であることを特徴とする音色選択装置。
【請求項２】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置する手段と、
前記専用の領域に配置された前記外部から取り込んだ音色データを、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って、選択する手段と
を具備し、
前記音色選択空間の前記専用の領域には複数の音色データが配置することができ、
前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随しており、
前記外部から取り込んだ音色データを前記専用の領域に配置するときに、該音色データに付随するオリジナル音色選択情報が該専用の領域を示しているならば、該オリジナル音色選択情報が示す配置で該音色データを配置し、そうでないならば、該専用の領域内の空いている位置に該音色データを配置することを特徴とする音色選択装置。
【請求項３】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、
外部から取り込み可能な音色データを取り込む手段と、ここで、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随して有するものであり、
前記外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置する手段であって、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とするものと
を具備し、前記外部から取り込んだ音色データを前記オリジナル音色選択情報に従って選択可能にすることを特徴とする音色選択装置。
【請求項４】
前記音色選択空間内に配置された前記外部から取り込んだ音色データをキャンセルする手段を更に具備し、該外部から取り込んだ音色データがキャンセルされたならば、それまで該外部から取り込んだ音色データが配置されていた前記音色選択空間の配置を、前記所定の音色規格に従う初期配置に戻すことを特徴とする請求項３に記載の音色選択装置。
【請求項５】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、
外部から取り込み可能な音色データを取り込む手段と、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第１の手段と、
前記外部から取り込み可能な音色データの有するオリジナル音色選択情報を、前記第１の手段により当該音色データが配置された前記専用の領域を指定する音色選択情報に置換する置換手段を含み、該オリジナル音色選択情報に応じて該置換手段を介在させて音色を選択することにより、該オリジナル音色選択情報の示す配置位置で当該音色データを選択可能にする第２の手段と、
前記第１の手段を使用する第１のモードと第２の手段を使用する第２のモードの一方を選択するモード選択手段と
を具えた音色選択装置。
【請求項６】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、
外部から取り込み可能な音色データを取り込む手段と、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第１の手段と、
前記外部から取り込んだ音色データを、該音色データに付随するオリジナル音色選択情報に従う配置で前記音色選択空間内に配置し、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とし、前記オリジナル音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第２の手段と、
前記第１の手段を使用する第１のモードと第２の手段を使用する第２のモードの一方を選択するモード選択手段と
を具えた音色選択装置。
【請求項７】
前記モード選択手段は、演奏データに含まれる音色規格を記す情報に従って前記所定の音色規格に従う音色データを使用すべきか、または前記外部から取り込んだ音色データを使用すべきか、を判定し、この判定に従って前記モードを自動的に選択するものである請求項５または６に記載の音色選択装置。
【請求項８】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能にする音色選択方法において、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置するステップと、
前記外部から取り込んだ音色データを、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って、選択するステップと
を具える音色選択方法。
【請求項９】
前記外部から取り込み可能な音色データは、特有の規格に従って該音色データを選択するためのオリジナル音色選択情報と対応づけられるものであり、
前記オリジナル音色選択情報を、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に置換するステップを更に具備し、
前記置換するステップの介在によって、オリジナル音色選択情報を用いて前記専用の領域から前記音色データを選択可能であることを特徴とする請求項８に記載の音色選択方法。
【請求項１０】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能にする音色選択方法において、
外部から取り込み可能な音色データを取り込むステップと、ここで、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随して有するものであり、
前記外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置するステップであって、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とするものと、
前記外部から取り込んだ音色データを前記オリジナル音色選択情報に従って選択するステップと
を具える音色選択方法。
【請求項１１】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能にする音色選択方法において、
外部から取り込み可能な音色データを取り込むステップと、
音色選択のために第１のモードと第２のモードの一方を選択するステップと、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記第１のモードが選択された場合、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にするステップと、
前記外部から取り込み可能な音色データの有するオリジナル音色選択情報を、当該音色データが配置された前記専用の領域を指定する音色選択情報に置換する置換ステップを含み、該オリジナル音色選択情報に応じて該置換ステップを介在させて音色を選択することにより、該オリジナル音色選択情報の示す配置位置で当該音色データを選択可能にするステップと、
を具えた音色選択方法。
【請求項１２】
所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能にする音色選択方法において、
外部から取り込み可能な音色データを取り込むステップと、
音色選択のために第１のモードと第２のモードの一方を選択するステップと、
前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記第１のモードが選択された場合、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にするステップと、
前記外部から取り込んだ音色データを、該音色データに付随するオリジナル音色選択情報に従う配置で前記音色選択空間内に配置し、前記第２のモードが選択された場合、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とし、前記オリジナル音色選択情報に従って前記外部から取り込んだ音色データを選択可能にするステップと
を具えた音色選択方法。
【請求項１３】
コンピュータ読み取り可能な記憶媒体であって、請求項８乃至１２のいずれかに記載の音色選択方法における前記各ステップをコンピュータに実行させるプログラムを記憶してなる記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＤＬＳ（Down Loadable Sounds）やサウンドフォント（Sound Font）等のロード可能な音色データを外部から取り込む（ロードする）ことによって、ＭＩＤＩ等の所定の音色規格の音色データ群の中に追加し、選択することのできる音色選択装置及び方法並びに記憶媒体に関する。
【０００２】
【従来の技術】
電子楽器を別の電子楽器やコンピュータに接続するためのデジタル信号インタフェース規格の１つとして、ＭＩＤＩ（Musical Instrument Digital Interface）（「ＭＩＤＩ」は商標である。以下、同様。）が知られている。通信カラオケやＤＴＭ（Desk Top Music）等の楽音発生装置は、このＭＩＤＩに規定された標準形式の曲データに基づいて、波形データを合成して楽音を発生する。こうした楽音発生装置では、通常、ピアノやギターなどの標準的な楽器の音色を生成するために必要な波形データがメモリに予め記憶されている。一般的に、このようなＭＩＤＩ音源における音色の選択はプログラムチェンジメッセージを使用して行うようになっている。プログラムチェンジメッセージが７ビットデータで構成される場合、プログラムチェンジでは１２８通り（２の７乗）の音色しか選択することができないが、最近のＭＩＤＩ音源ではこれを超える数の音色が選択可能に構成されている。そこで、最近のＭＩＤＩ音源では１２８通りを超える音色の選択をコントロールするためにバンクという考え方を採用している。これは、複数用意されているバンク（例えば、それぞれ最大１２８個の音色を収容可能なバンク）のうちの１個のバンクをコントロールチェンジデータにより選択し、選択したバンクの中からプログラムチェンジ番号に対応して１つの音色を指定することができるようになっている。典型的なバンク選択形式は、バンクＭＳＢとバンクＬＳＢの組合せを用いるやり方である。バンクＭＳＢのデータを用いて２の７乗＝１２８通りの選択を可能にし、バンクＬＳＢのデータを用いて更に２の７乗＝１２８通りの選択を可能にする。その場合、選択可能なバンク数は合計「１２８の２乗」となる。
【０００３】
メモリに記憶された音色データを選択するための音色選択情報は、音色マップという仮想的な音色選択空間における所望の音色データの配置を選択しうるように、マッピング情報からなっている。特定の音色選択空間は特定の音色規格に従ってマッピングがなされており、該特定の音色規格に従う音色選択情報（マッピング情報）であれば該特定の音色選択空間において正しく音色を選択することができる。現在では、ＭＩＤＩ規格にみられるように楽音関連情報の基本的な面での統一化・規格化が図られてはいるが、その細部や様々な拡張機能においては各楽器製造メーカ間で種々のバリエーションが存在している。特に、音色選択空間については、ＭＩＤＩ規格のデータ形式をベースにしつつも、各楽器製造メーカでは独自の規格で、システムを構築している。従って、特定の音色規格に従う音色選択空間の音色データは、それとは規格の異なる音色選択情報では、正しく選択することができない場合がある。
【０００４】
典型的なＭＩＤＩ音源システムにおいては、ＲＯＭ（読み出し専用メモリ）に多数の音色データ（波形データ）を記憶しておき、それを読み出して使用することを基本としているが、最近ではＲＡＭ（ランダムアクセスメモリ）やハードディスクのような書き込み可能なメモリに外部から任意の音色データ（波形データ）を取り込んで記憶し、それを読み出して使用することもできるようになってきている。例えば、前述のように選択可能なバンク数が合計「１２８の２乗」にものぼる音色選択空間においては、ＲＯＭに予め記憶した音色データのためにそのすべてのバンクが使用されるわけではなく、かなりの数の空きバンクがある。
一方、最近では、取り込み可能な音色データとして、ＤＬＳ（Down Loadable Sounds）（「ＤＬＳ」は商標である。以下、同様。）やサウンドフォント（Sound Font）（「サウンドフォント」は商標である。以下、同様。）等のロード可能音色セットが存在する。しかし、従来のロード可能音色セットの利用の仕方は、自己の電子楽器内に所望の音色セットを排他的にセットするようなやり方になっており、ＭＩＤＩ規格等の音色セットを記憶している音色選択空間の一部に別のロード可能音色セットを配置するようなことは考えられていなかった。
【０００５】
ＤＬＳ等のロード可能音色データを取り込んで使用する場合、従来の楽音発生装置では、原則的に、外部から取り込もうとするロード可能音色データに含まれるマッピング情報が示す当該ロード可能音色の規格に従った音色選択空間（すなわち音色マップ）の所定位置に該ロード可能音色データを割り当てる（配置する）ようにしており、例外的に、該ロード可能音色データのマッピング情報が示す音色選択空間の所定位置に既に既存の音色データが存在する場合には該音色選択空間の他の空いている位置にロード可能音色データを割り当てる（配置する）ようにしている。すなわち、該ロード可能音色データを受け入れる側の音源システムにおける音色選択空間の規格が如何なるものであるかを考慮していなかった。
【０００６】
【発明が解決しようとする課題】
ところで、受け入れる側の音源システムにおける音色選択空間で使用する所定の音色規格（例えば、ＭＩＤＩのＧＭ規格やＸＧ規格など）（「ＧＭ」及び「ＸＧ」はそれぞれ商標である。以下、同様。）によっては、仮りに音色選択空間の空いている位置があったとしても、その位置については所定音色の代理の音色データを割り当てるために専用に使用するように決められているものがある。従って、そのような代理音色用の位置に、外部から取り込んだ音色データを割り当てる（配置する）と、その外部から取り込んだ音色データが予定された代理音色と無関係な音色であった場合は、再生時にそれを利用したとすると、不都合な音色の楽音が発生されてしまうことになるので、好ましくない。すなわち、受け入れる側の音源システムにおける音色選択空間の所定の音色規格とは外れた配置でロード可能音色データが取り込まれてしまうことになり、該所定の音色規格に従う音色選択情報に従って再生を行なう場合（例えば該所定の音色規格に従う音色選択情報を含む演奏データに従って自動演奏を行なうような場合）に、極めて不都合なことになってしまう。
一方、特定のロード可能音色データがそれ自身の規格に従うマッピング情報とは異なる配置で、受け入れる側の音源システムにおける音色選択空間内の空いている位置にロードされた場合には、該ロード可能音色データの規格に従う音色選択情報に従って再生を行なう場合（例えば該ロード可能音色データの規格に従う音色選択情報を含む演奏データに従って自動演奏を行なうような場合）に、不都合なことになってしまう、という問題もあった。
【０００７】
本発明は上述の点に鑑みてなされたもので、所定の音色規格に従った音色選択空間内に外部から取り込み可能な音色データを配置する場合に、当該所定の音色規格に従う音色選択に不都合が生じないように工夫した音色選択装置及び方法並びに記憶媒体を提供しようとするものである。
また、所定の音色規格に従った音色選択空間内に外部から取り込み可能な音色データを配置する場合に、当該外部から取り込み可能な音色データのオリジナル音色選択情報に従った音色選択もできるように工夫した音色選択装置及び方法並びに記憶媒体を提供しようとするものである。
【０００８】
【課題を解決するための手段】
本発明に係る音色選択装置は、所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、外部から取り込み可能な音色データを取り込む取り込み手段と、ここで、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随して有するものであり、前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、前記取り込み手段を介して外部から取り込んだ音色データを該専用の領域に配置する手段と、前記専用の領域に配置された前記外部から取り込んだ音色データを、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って、選択する手段と、前記オリジナル音色選択情報を、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に置換する置換手段とを具備し、前記置換手段の介在によって、オリジナル音色選択情報を用いて前記専用の領域から前記音色データを選択可能であることを特徴とする。
これにより、外部から取り込んだ音色データを専用の領域に配置するようマッピングが行なわれ、この外部から取り込んだ音色データの選択は、所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って行なわれることになるので、所定の音色規格に従うマッピング規則を乱すことなく、外部から取り込んだ音色データの選択を行なうことができる。例えば、所定の音色規格に従う音色選択空間において、該所定の音色規格に従う代理音色が配置されるべき領域が空いていたとしても、無闇にその空き領域に外部から取り込んだ音色データが割り付けられることがなくなるため、当該所定の音色規格に従う音色選択に不都合が生じないようになる。このように外部から取り込んだ音色データを該専用の領域に配置する手段は、以下で説明する実施例では「音色選択テーブルＡ」に関連して説明されている。
【０００９】
また、置換手段を具備することにより、所定の音色規格に従う音色選択空間内において該所定の音色規格に従ってマッピングされた「外部から取り込んだ音色データ」を、その音色データに特有のオリジナル音色選択情報で選択することができるようになる。例えば、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、ロード可能音色データのオリジナル音色選択情報を含む演奏データに従って自動演奏を行なったとしても、置換手段による置換によって不都合なく、オリジナル音色の配置を活かして適切な演奏を行なうことができる。
【００１０】
本発明の別の観点に従う音色選択装置は、所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置する手段と、前記専用の領域に配置された前記外部から取り込んだ音色データを、前記所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って、選択する手段とを具備し、前記音色選択空間の前記専用の領域には複数の音色データが配置することができ、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随しており、前記外部から取り込んだ音色データを前記専用の領域に配置するときに、該音色データに付随するオリジナル音色選択情報が該専用の領域を示しているならば、該オリジナル音色選択情報が示す配置で該音色データを配置し、そうでないならば、該専用の領域内の空いている位置に該音色データを配置する。これにより、所定の音色規格に従う音色選択空間内に「外部から取り込んだ音色データ」を配置する（マッピングする）際に、その「外部から取り込んだ音色データ」のオリジナル音色選択情報が使えるのであればできるだけそれを考慮した配置（マッピング）を行なうことができる。よって、この場合も、例えば、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、ロード可能音色データのオリジナル音色選択情報を含む演奏データに従って自動演奏を行なったとき、できるだけオリジナル音色の配置を活かした適切な演奏を行なうことができる。
【００１１】
本発明の別の観点に従う音色選択装置は、所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、外部から取り込み可能な音色データを取り込む手段と、ここで、前記外部から取り込み可能な音色データは、該音色データを前記音色選択空間のどこへ配置するかを指示するオリジナル音色選択情報を付随して有するものであり、前記外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置する手段であって、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とするものとを具備し、前記外部から取り込んだ音色データを前記オリジナル音色選択情報に従って選択可能にすることを特徴とする。
【００１２】
これによれば、所定の音色規格に従う音色選択空間内に「外部から取り込んだ音色データ」を配置する（マッピングする）際に、外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置することが優先される。つまり、外部から取り込んだ音色データのオリジナル音色選択情報に従う配置に、既に別の音色が配置（マッピング）されている場合、たとえ該別の音色が所定の音色規格に従うものであったとしても該別の音色データは選択不能とし、その代わりに該外部から取り込んだ音色データのオリジナル音色選択情報に従って配置（マッピング）する。これによって、例えば、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、ード可能音色データのオリジナル音色選択情報を含む演奏データに従って自動演奏を行なった場合、それに応じてオリジナル音色の配置を活かした適切な演奏を行なうことができる。このように、外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置する手段は、以下で説明する実施例では「音色選択テーブルＢ」に関連して説明されている。
【００１３】
一実施態様において、前記音色選択空間内に配置された前記外部から取り込んだ音色データをキャンセルする手段を更に具備し、該外部から取り込んだ音色データがキャンセルされたならば、それまで該外部から取り込んだ音色データが配置されていた前記音色選択空間の配置を、前記所定の音色規格に従う初期配置に戻す。これにより、上記のように外部から取り込んだ音色データのオリジナル音色選択情報に従って配置（マッピング）を優先した場合であっても、該外部から取り込んだ音色データがキャンセルされたならば、元の所定の音色規格に従う初期配置に戻すことができるので、不都合のない音色選択が行なわれる。
【００１４】
本発明の更に別の観点に従う音色選択装置は、所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、外部から取り込み可能な音色データを取り込む手段と、前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第１の手段と、前記外部から取り込み可能な音色データの有するオリジナル音色選択情報を、前記第１の手段により当該音色データが配置された前記専用の領域を指定する音色選択情報に置換する置換手段を含み、該オリジナル音色選択情報に応じて該置換手段を介在させて音色を選択することにより、該オリジナル音色選択情報の示す配置位置で当該音色データを選択可能にする第２の手段と、前記第１の手段を使用する第１のモードと第２の手段を使用する第２のモードの一方を選択するモード選択手段とを具える。
【００１５】
この場合、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、例えば、所定の音色規格に従う音色選択情報を含む演奏データに従って自動演奏を行なうときは、前記第１の手段を使用する第１のモードを選択し、それとは異なるロード可能音色データのオリジナル音色選択情報を含む演奏データに従って自動演奏を行なうときは、前記第２の手段を使用する第２のモードを選択する。こうして、所定の音色規格に従う音色選択空間を持つ楽音発生装置を使用しながら、モード選択を使い分けることによって、該所定の音色規格に従う音色選択情報に従う演奏のみならず、ロード可能音色データのオリジナル音色選択情報を生かした演奏をも不都合なく遂行することができるようになる。
【００１６】
本発明の更に別の観点に従う音色選択装置は、所定の音色規格に従って音色選択情報と対応づけて音色データを配置した音色選択空間を有し、音色選択情報に応じて該音色選択空間から音色データを選択可能とした音色選択装置において、外部から取り込み可能な音色データを取り込む手段と、前記所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置し、前記専用の領域を指定する音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第１の手段と、前記外部から取り込んだ音色データを、該音色データに付随するオリジナル音色選択情報に従う配置で前記音色選択空間内に配置し、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、前記外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とし、前記オリジナル音色選択情報に従って前記外部から取り込んだ音色データを選択可能にする第２の手段と、前記第１の手段を使用する第１のモードと第２の手段を使用する第２のモードの一方を選択するモード選択手段とを具える。この場合、以下で説明する実施例では、上記第１の手段に相当するものは「音色選択テーブルＡ」に関連して説明されており、上記第２の手段に相当するものは「音色選択テーブルＢ」に関連して説明されている。この場合も、上記と同様に、所定の音色規格に従う音色選択空間を持つ楽音発生装置を使用しながら、モード選択を使い分けることによって、該所定の音色規格に従う音色選択情報に従う演奏のみならず、ロード可能音色データのオリジナル音色選択情報を生かした演奏をも不都合なく遂行することができるようになる。
【００１７】
一実施態様として、前記モード選択手段は、演奏データに含まれる音色規格を記す情報に従って前記所定の音色規格に従う音色データを使用すべきか、または前記外部から取り込んだ音色データを使用すべきか、を判定し、この判定に従って前記モードを自動的に選択する。所定の音色規格に従う音色選択空間を持つ楽音発生装置を使用しながら、曲の自動演奏データの規格に従って自動的にモード選択を使いわけて、不都合のない演奏を遂行することができる。
【００１８】
本発明は、装置の発明として構成し、実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記録媒体の形態で実施することもできる。
【００１９】
【発明の実施の形態】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
図１は、この発明に係る音色選択装置及び方法を適用した電子楽器の全体構成の一実施例を示したハード構成ブロック図である。
本実施例に示す電子楽器は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）３、揮発性あるいは不揮発性のランダムアクセスメモリ（ＲＡＭ）４及び５からなるマイクロコンピュータによって制御されるようになっている。ＣＰＵ１は、この電子楽器全体の動作を制御するものである。このＣＰＵ１に対して、データ及びアドレスバス１８を介してリードオンリメモリ（ＲＯＭ）３、揮発性あるいは不揮発性のランダムアクセスメモリ（ＲＡＭ）４及び５、ドライブ６、ＭＩＤＩインタフェース（Ｉ／Ｆ）７、ネットワークインタフェース８、パネルスイッチ（ＳＷ）５、パネル表示器１０、書込回路１１、バッファ１２、音源１３がそれぞれ接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ２が接続されている。すなわち、タイマ２は時間間隔を計数したり、生成した楽音を再生する際の再生テンポを設定したりするためのテンポクロックパルスを発生する。このテンポクロックパルスの周波数は、パネルスイッチ９の中のテンポ設定スイッチ等によって調整される。このようなタイマ２からのテンポクロックパルスはＣＰＵ１に対して処理タイミング命令として与えられたり、あるいはＣＰＵ１に対してインタラプト命令として与えられる。ＣＰＵ１は、これらの命令に従って各種処理を実行する。各種処理には、例えば記憶した音色名をパネル表示器１０に表示する画面表示処理等がある。
なお、この電子楽器は専用の装置に限られず、例えばパソコンなどの汎用装置あるいはマルチメディア機器等であってもよく、本発明に従う所定のソフトウエア又はハードウエアを用いることによって音色データをロードして記憶することのできるように構成した装置であればよい。
【００２０】
ＲＯＭ３は、ＣＰＵ１により実行あるいは参照される各種プログラムや各種データ、所定の音色規格（例えば、ＭＩＤＩのＧＭ（商標）規格やＸＧ（商標）規格等）に従う音色に関するプリセットデータ、あるいはバンクセレクトＭＳＢやバンクセレクトＬＳＢといわれるようなバンク選択データ及びプログラムチェンジ番号の指定による音色の選択を行うための音色選択テーブル等を予め格納したものである。ＲＡＭ４は、ロードした音色に関するプリセットデータやロードした音色の選択を行うための音色選択テーブル等を記憶するメモリとして、あるいは現在実行中のプログラムやＣＰＵ１が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリ等として使用される。ＲＡＭ４の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。音色を追加するために用いられるＤＬＳ（DownLoadable Sounds）（商標）やサウンドフォント（SoundFont）（商標）形式の音色ファイルのINFOチャンクデータやPRESETDATAチャンクデータは、上記ＲＡＭ４に新たに記憶される。不揮発ＲＡＭ５は、ＣＰＵ１が実行する制御プログラム等を一時的に記憶し保持する不揮発性のメモリである。
【００２１】
ドライブ６は、音色を追加するために用いられる音色ファイルや波形データ等の各種データ、あるいはＣＰＵ１が実行する制御プログラム等を記憶した外部記憶媒体６Ａを駆動することで、該外部記憶媒体６Ａから該電子楽器に各種データあるいは制御プログラム等を取り込むための装置である。例えば、外部記憶媒体６Ａに記憶された音色ファイルのINFOチャンクデータやPRESETDATAチャンクデータはドライブ６の駆動に伴い該電子楽器のＲＡＭ４に配送されて記憶される。また、前記ＲＯＭ３に制御プログラムが記憶されていない場合、外部記憶媒体装置６Ａに制御プログラムを記憶させておき、それを前記ＲＡＭ４（あるいは不揮発ＲＡＭ５）に読み込むことにより、ＲＯＭ３に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶媒体６Ａはハードディスク（ＨＤ）のような固定した形態の外部記憶媒体であってもよいし、フロッピィーディスク（ＦＤ）、コンパクトディスク（ＣＤ−ＲＯＭ・ＣＤ−ＲＡＭ）、光磁気ディスク（ＭＯ）、ディジタル多用途ディスク（ＤＶＤ）、あるいはＲＡＭカードのような半導体メモリ等の着脱自在な形態の外部記憶媒体であってもよい。
【００２２】
ＭＩＤＩインタフェース（Ｉ／Ｆ）７は、他のＭＩＤＩ機器（図示せず）等からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を当該電子楽器へ入力したり、あるいは当該電子楽器からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を他のＭＩＤＩ機器等へ出力するためのインタフェースである。他のＭＩＤＩ機器はユーザによる操作に応じてＭＩＤＩデータを発生する機器であればよく、鍵盤型、ギター型、管楽器型、打楽器型、ミブリ型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってもよい。ＭＩＤＩインタフェース７は専用のＭＩＤＩインタフェースを用いるものに限らず、ＲＳ２３２−Ｃ、ＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインタフェースを用いてＭＩＤＩインタフェース７を構成するようにしてもよい。この場合、ＭＩＤＩイベントデータ以外のデータをも同時に送受信するようにしてもよい。ＭＩＤＩインタフェース７として上記したような汎用のインタフェースを用いる場合には、他のＭＩＤＩ機器はＭＩＤＩイベントデータ以外のデータも送受信できるようにしてよい。勿論、音楽情報に関するデータフォーマットはＭＩＤＩ形式のデータに限らず、他の形式であってもよく、その場合はＭＩＤＩインタフェース７と他のＭＩＤＩ機器はそれにあった構成とする。こうした場合、ＤＬＳやサウンドフォント形式の音色ファイルは、外部記憶媒体６Ａの他に該ＭＩＤＩインタフェース７を通じて当該電子楽器のＲＡＭ４に配送し記憶することもできる。
【００２３】
ネットワークインタフェース８は、例えばＬＡＮやインターネット、光ケーブルや電話回線、ＩＳＤＮ等の有線あるいは無線の通信ネットワーク（図示せず）に接続されており、該通信ネットワークを介して、サーバコンピュータ（図示せず）などと接続され、サーバコンピュータなどから制御プログラムや各種データを電子楽器側に取り込むためのインタフェースである。すなわち、ＲＯＭ３やＲＡＭ４等に制御プログラムや各種データが記憶されていない場合に、サーバコンピュータから制御プログラムや各種データをダウンロードするために用いられる。クライアントとなる電子楽器は、ネットワークインターフェース８及び通信ネットワークを介してサーバコンピュータへと制御プログラムや各種データのダウンロードを要求するコマンドを送信する。サーバコンピュータは、このコマンドを受け、要求された制御プログラムやデータを、通信ネットワークを介して本電子楽器へと配信し、本電子楽器がネットワークインタフェース８を介して、これら制御プログラムや各種データを受信してＲＡＭ４等に蓄積することにより、ダウンロードが完了する。例えば、ＤＬＳやサウンドフォント形式の音色ファイルは、該ネットワークインタフェース８を通じて通信ネットワーク上のサーバコンピュータなどから当該電子楽器に配送し、ＲＡＭ４、不揮発ＲＡＭ５、ハードディスクＨＤ等に記憶することもできる。
【００２４】
パネルスイッチ９は各種のパラメータを指定したり、あるいは曲データ再生の際に使用する各種演奏条件を入力するための各種の操作子を含んで構成される。例えば、音色を選択するための音色選択スイッチなどが含まれる。勿論、この他にも音高、音色、効果等を選択・設定・制御するために用いる数値データ入力用のテンキーや文字データ入力用のキーボードなどの各種操作子を含んでいてよい。パネルスイッチ９の各操作子の操作状態に応じたスイッチ情報は、データ及びアドレスバス１Ｄを介してＣＰＵ１に出力される。パネル表示器１０は上記パネルスイッチ９のスイッチ類を、例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイ６Ａに表示するのは勿論のこと、曲データ再生時に使用する各種演奏条件あるいはＣＰＵ１の制御状態などをディスプレイ６Ａに表示する。
【００２５】
波形ＲＯＭ１５は当該電子楽器で採用されている所定の音色規格（例えばＭＩＤＩのＧＭ規格またはＸＧ規格など）に従う音色ファイルの波形データを予め多数記憶した波形メモリである。波形ＲＡＭ１６は外部からロードした音色ファイルの波形データを記憶するための波形メモリである。すなわち、ＤＬＳ規格やサウンドフォント規格などその「ロード可能音色」に特有の音色規格からなる音色ファイルを外部から取り込むと、該取り込んだ「ロード可能音色」の音色ファイル中の波形データが波形ＲＡＭ１６に書き込まれ記憶される。書き込み回路１１は、ＣＰＵ１の指示に応じて、外部波形入力から入力する波形をサンプリングして、その波形データをアクセス管理部１４を介して波形ＲＡＭ１６へ書き込むための回路である。バッファ１２は、ＣＰＵ１がアクセス管理部１４を介して波形ＲＡＭ１６を読み書きしたり、波形ＲＯＭ１５を読んだりするためのアクセスバッファである。例えば、ＣＰＵ１は、音色ファイルをロード処理する際に、該音色ファイルに含まれる波形データを波形ＲＡＭ１６に書き込む。アクセス管理部１４は、書き込み回路１１、バッファ１２、音源１３からの波形ＲＯＭ１５、波形ＲＡＭ１６に対するアクセスが互いにぶつからないように管理するための回路である。勿論、波形ＲＡＭ１６に代えてハードディスクを使用して、取り込んだ「ロード可能音色」の音色ファイル中の波形データを記憶するようにしてもよい。
【００２６】
音源１３は複数のチャンネルで楽音信号の同時発生が可能であり、波形ＲＯＭ１５ないし波形ＲＡＭ１６からアクセス管理部１４を介して波形データを読み出し、この波形データに基づいて楽音信号を発生する。音源１３から発生された楽音信号は、サウンドシステム１７を介して発音される。この音源１３における楽音信号発生方式はいかなるものを用いてもよい。例えば、発生すべき楽音の音高に対応して変化するアドレスデータに応じて波形メモリに記憶した楽音波形サンプル値データを順次読み出す波形メモリ読み出し方式、又は上記アドレスデータを位相角パラメータデータとして所定の周波数変調演算を実行して楽音波形サンプル値データを求めるＦＭ方式、あるいは上記アドレスデータを位相角パラメータデータとして所定の振幅変調演算を実行して楽音波形サンプル値データを求めるＡＭ方式等の公知の方式を適宜採用してもよい。すなわち、音源１３の方式は、波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ＋ＶＣＦ＋ＶＣＡのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源１３を構成するものに限らず、ＤＳＰとマイクロプログラム、あるいはＣＰＵとソフトウェアを用いて音源１３を構成するようにしてもよい。さらに、１つの回路を時分割で使用することによって複数の発音チャンネルを形成するようなものでもよいし、１つの発音チャンネルが１つの回路で形成されるようなものであってもよい。
【００２７】
ここで、音色ファイルの構成例について、図２及び図３を用いて簡単に説明する。図２は、或る１つの音色規格に従う音色ファイルの全体構成の一実施例を示す概念図であり、図３は該音色ファイル中の１つの音色ナンバ（INSTj）によって特定される波形データとプリセットデータとのフォーマット例を示す概念図である。或る音色規格とは、例えば、当該電子楽器で採用されている所定の音色規格（例えばＭＩＤＩのＧＭ規格またはＸＧ規格など）などのことである。一方、外部から当該電子楽器の音源にロードするロード可能な音色ファイルの規格は、例えばＤＬＳ（DownLoadable Sounds）規格やサウンドフォント（Sound Font）規格などである。図２に示す音色ファイルの全体構成は、例えばＤＬＳ規格ならば、ＤＬＳ規格の音色ファイルの全体を示している。以下、説明の便宜上、図２，図３は、ＤＬＳ規格の音色ファイルを示しているものとして説明を進める。
【００２８】
図２に示すように、ＤＬＳ規格の音色ファイルは、大きく分けてINFO チャンクと、WAVE DATA チャンクと、PRESET DATA チャンクとの３つのチャンクのデータ群で構成される。INFOチャンクは、ユーザ名やメーカ名などの該音色データを生成した製作者情報や該音色に付与された音色名などの情報を表わすインフォメーションデータのデータ群である。WAVE DATA チャンクは、最終的に再生する楽音波形の基となる複数の具体的な波形データのデータ群である。なお、該WAVE DATA チャンク内の各データには、具体的な波形データのほかに、該波形データの具体的記憶場所を示すスタートアドレスデータや、ループ開始／終了アドレスデータ、該波形データのオリジナルピッチを示すデータ等の各種関連情報が含まれる。PRESET DATA チャンクは、当該音色ファイルに係る特定の音色規格に従って音色選択空間に配置（マッピング）される該音色ファイル内の各音色を選択するための音色選択情報、各音色の楽音波形を生成する際に使用する各種パラメータ、WAVE DATAチャンクに記憶されている波形データを選択するためのデータ等を含むデータ群である。
【００２９】
図３は、１つの音色ナンバで特定される１つの音色（ＩＮＳＴ：楽器音色名の略）に関して、プリセットデータ（PRESE TDATA チャンクのデータ）と、該プリセットデータによって選択される波形データ（WAVE DATA チャンクのデータ）との関係を示すものである。プリセットデータは、１つの共通データの下に複数のリージョンデータを具えた階層構造からなっている。プリセットデータの上位階層（共通データ）は、１つの音色ナンバと、該音色ナンバで特定される１つの音色に共通の音色設定・制御用の各種パラメータと、下位階層の各リージョンの記憶場所を指摘する複数のリージョンポインタとからなっている。この音色ナンバは、当該音色ファイルに係る特定の音色規格（例えばＤＬＳ規格）に従う音色選択空間に配置（マッピング）される当該１つの音色を選択するための音色選択情報（すなわちオリジナル音色選択情報）に相当するもので、この実施例では、バンクセレクトＭＳＢとバンクセレクトＬＳＢとプログラムチェンジ番号とを含む、合計３バイトのデータからなる。すなわち、この実施例ではバンクセレクトＭＳＢ及びＬＳＢとプログラムチェンジ番号との組合せによって、１つの音色名（ＩＮＳＴ）を選択するようになっている。
【００３０】
リージョンとは、同一の音色名（ＩＮＳＴ）でありながら、具体的な波形データの内容が幾分若しくは適宜相違している波形データグループを区分する概念である。すなわち、周知のように、同じ音色名であっても、音域やベロシティ値の範囲などに応じて適宜波形を異ならせることにより発生楽音の高品質化を図っている。そのような音域やベロシティ値の範囲などに応じた波形データグループの区分がリージョンである。例えば、発生すべき楽音のノート名若しくはピッチ情報及び／又はベロシティ値に応じて、複数のリージョンのうちの１つが特定され、そのリージョンポインタが読み出され、該リージョンポインタに対応する下位階層の１つのリージョンについてのプリセットデータが読み出される。下位階層の１つのリージョンについてのプリセットデータは、該リージョンについての音色設定・制御用の各種パラメータと、該リージョンに対応する特定の波形データ（波形データ１、波形データ２、…、波形データｎのいずれか）の記憶場所を指摘する波形ポインタとからなっている。
【００３１】
なお、上位階層のプリセットデータにおけるパラメータは当該音色名（ＩＮＳＴ）についての波形を共通にコントロールするためのパラメータであり、例えばＡＤＳＲ（Attack、Decay、Sustain、Release）といった音色エンベロープ特性あるいは音量エンベロープ特性などのパラメータがある。下位階層のプリセットデータにおけるパラメータは各リージョン毎に波形をコントロールするためのパラメータであり、上位階層のデータのパラメータと異なる種類及び／または内容であってもよいし、同じ種類及び／または内容であってもよい。こうすることで、当該音色に関する全ての波形に対して共通の音色波形制御を行うようにパラメータを設定することもできるし、個々のリージョン毎に異なる音色波形制御を行うようにパラメータを設定することもできる。
以上のように、音色ファイルは上記したようなデータ構造を具えており、バンクセレクトＭＳＢ及びＬＳＢとプログラムチェンジ番号を用いることによって１つの音色（例えば、所望のロード可能音色）を選択し、さらにＭＩＤＩノートナンバとベロシティに応じて該音色に属する１つのリージョンの波形データを指定することができるようになっている。
【００３２】
どのような音色ファイルのフォーマット規格であっても、基本的なファイル構造は、図２，図３によって説明したような構造からなる。ここで、３バイトの音色ナンバつまりオリジナル音色選択情報は、いかなる音色規格とも関係なく任意に設定することができる。したがって、１つの所定の音色規格（例えばＭＩＤＩのＧＭ規格またはＸＧ規格など）に従う音色選択空間を有する電子楽器において、音源にロード可能音色（ＤＬＳ規格あるいはサウンドフォント規格など）をロードして、それを利用しようとする場合において、本発明に従う管理が重要となる。以下説明する例では、この電子楽器に元々備わっているＭＩＤＩ−ＸＧ規格の音色選択空間に、ＤＬＳ規格のロード可能音色をロードする場合について説明する。
【００３３】
ユーザからのダウンロード指示に応じて、この電子楽器においては、ＭＩＤＩインタフェース７やネットワークインタフェース８を介して外部の機器から、あるいはドライブ６を介してＣＤ−ＲＯＭ等の外部記憶媒体６Ａから所望の“ロード可能音色” （ＤＬＳ規格）の音色ファイルを受信して、不揮発ＲＡＭ５、ハードディスクＨＤ等に保存する。その後、保存された音色ファイルのロード指示に応じて、音色ファイルのINFOチャンクのインフォメーションデータ及びPRESET DATA チャンクのプリセットデータをＲＡＭ４に、またそのWAVE DATA チャンクの波形データを波形ＲＡＭ１６に追加登録し、更に、これらの“ロード可能音色” （ＤＬＳ規格）の音色ファイルをこの電子楽器に元々備わっている所定の音色規格（ＭＩＤＩ−ＸＧ規格）に従う音色選択空間に配置して該電子楽器で利用可能にする音色選択空間配置再構成処理を行う。これにより、曲データの再生時に“ロード可能音色”の新たな音色を使用することができるようにする。このように所望の“ロード可能音色”の音色ファイルを電子楽器の音源にロードして該電子楽器で利用可能にするために、図４に示す音色ロード処理が実行される。
【００３４】
以下説明する例では、この音色選択空間配置再構成処理は、２種類の「音色選択テーブルＡ」と「音色選択テーブルＢ」のいずれか一方を使用して行われる。概ね、「音色選択テーブルＡ」を使用するモードは、“ロード可能音色”を音色選択空間における専用の領域に対応付けて配置するモードであり、そのオリジナル音色選択情報は生かされない。これによって、所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択空間の配置秩序を確実に維持して“ロード可能音色”を利用可能に取り込むことができる。一方、「音色選択テーブルＢ」を使用するモードは、、所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択空間において“ロード可能音色” のオリジナル音色選択情報を生かして配置するモードである。これによって、所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択空間を持つ電子楽器において、“ロード可能音色”のオリジナル音色選択情報に従う演奏データを用いた楽音演奏を容易に行うことができる。例えば、所定の音色規格に従う音色のうちの一部に品質的に満足できなかった場合に、ロード可能音色にその音色のより良い音色データを用意して、その満足できない音色を置き換えてしまうことも可能である。実施例では、必要に応じていつでもどちらのモードでも選択できるように、「音色選択テーブルＡ」と「音色選択テーブルＢ」の両方が準備されるようになっている。しかし、どちらか一方のテーブルのみを準備し、一方のモードでのみ実施するようにしてもよいのは勿論である。なお、後述するように、「音色選択テーブルＢ」を作成せずに、「音色選択テーブルＡ」と「置換テーブル」とを使用して同等の処理を行うことができる。
【００３５】
図４において、ステップＳ１では、外部記憶媒体６等に保存されている“ロード可能音色”の音色ファイルから音源にロードしたい所望の音色ファイルを指定する。例えば、ユーザがパネルスイッチ９等を操作して音色ファイルを指定すると、ドライブ６を介して外部記憶媒体６Ａから該音色ファイルを読み込んで、各チャンク内の各データ毎に記憶装置に取り込む。ステップＳ２では取得した該音色ファイルのINFO チャンク内のインフォメーションデータをＲＡＭ４に記憶する。音色選択の際に、予め記憶している所定の音色規格（ＭＩＤＩ−ＸＧ規格）に従うインフォメーションデータと共にロードした“ロード可能音色”のインフォメーションデータとをパネル表示器１０等に表示するようにすると、ユーザは拡大された音色選択可能範囲の中から簡単に所望の音色を選択することができるようになる。ステップＳ３では取り込んだ該“ロード可能音色”の音色ファイルのWAVE DATA チャンク内の波形データを波形ＲＡＭ１６に記憶する。ステップＳ４では取り込んだ該“ロード可能音色”の音色ファイルのPRESE TDATA チャンク内のプリセットデータをＲＡＭ４に記憶する。
【００３６】
図５は、該電子楽器内に既存の所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色の波形データ及びプリセットデータと、ロードされた“ロード可能音色”の音色ファイルに含まれる波形データ及びプリセットデータとのメモリマップを示す。図５（Ａ）は波形データを記憶する波形メモリ（すなわち、波形ＲＯＭ１５及び波形ＲＡＭ１６）上のメモリマップを概念的に示した図であり、図５（Ｂ）はプリセットデータを記憶するメモリ（すなわち、ＲＯＭ３及びＲＡＭ４）上のメモリマップを概念的に示した図である。
【００３７】
図５（Ａ）に示すように、波形ＲＯＭ１５には所定の音色規格（ＭＩＤＩ−ＸＧ規格）に従う音色（以下便宜上これを“規格音色”という）についての複数の波形データ（これをＷＤ１、ＷＤ２、…、ＷＤｎで示す）が記憶されている。“ロード可能音色”についての波形データは波形ＲＡＭ１６に記憶される（これをＷＤn+1、…、ＷＤn+mで示す）。また、図５（Ｂ）に示すように、ＲＯＭ３におけるプリセットデータ記憶領域には予め“規格音色”についての複数の音色のプリセットデータ（これをINST1、INST2、…、INSTjで示す）が記憶されている。“ロード可能音色”に属する各音色のプリセットデータは、ＲＡＭ４におけるプリセットデータ記憶領域に記憶される（これをINSTj+1、…、INSTj+kで示す）。ＲＯＭ３及びＲＡＭ４における各プリセットデータ記憶領域に記憶された各音色毎のプリセットデータは、ＲＯＭ３及びＲＡＭ４におけるメモリ上の該プリセットデータの記憶位置を指し示すプリセットデータポインタ（ＲＯＭ３におけるプリセットデータ記憶領域の所定の記憶位置を指し示すポインタをOP1、OP2、…、OPjで示し、ＲＡＭ４におけるプリセットデータ記憶領域の所定の記憶位置を指し示すポインタをAP1、AP2、…、APkで示す）によって指定される。音色選択空間において、各音色毎の音色選択情報つまり音色ナンバに対応付けてプリセットデータポインタが記憶されており、音色選択時には、音色選択情報つまり音色ナンバに応じてプリセットデータポインタが読み出される。そして、読み出されたプリセットデータポインタの示すプリセットデータが読み出され、そこに含まれる波形データポインタに応じて波形データが読み出される。
なお、図５においては、複数の波形データ及びプリセットデータを整然と順に連続して展開したメモリマップを図示したが、実際にメモリに記憶する場合には図示したように各データを順次に整然と連続するように記憶する必要はない。つまり、これらの実データは、適宜にばらばらな記憶場所に記憶されていてよく、そうであっても、公知のメモリ管理手法に従って、整然と管理できる。
【００３８】
図４に戻り、ステップＳ５では「音色選択テーブルＡ」を作成し、該音色選択テーブルＡに基づいて、この電子楽器で採用している所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択フォーマットに従う音色マップを再構成する。「音色選択テーブル」は、音色選択情報に応じて音色データ（プリセットデータ及び波形データ）を選択するための音色選択空間を定義するものである。「音色選択テーブルＡ」は、基本的に所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従って音色選択情報と対応づけて音色データを配置した音色選択空間を定義するものであって、該音色選択空間内において外部から取り込み可能な“ロード可能音色”の音色データを配置（マッピング）するための専用の領域を設定するものである。すなわち、“ロード可能音色”に対して、該専用の領域を指定するように音色選択情報が割付けられる。こうして、「音色選択テーブルＡ」にあっては、基本的には“ロード可能音色”のオリジナル音色選択情報は無視され、該“ロード可能音色”に対して該専用の領域を指定するように音色選択情報が割付けられる。この専用の領域は、所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択フォーマットでは使用されない領域であり、当然、代理音色用の領域でもない。よって、「音色選択テーブルＡ」を利用すれば、所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択空間の配置秩序を確実に維持して“ロード可能音色”を利用可能に配置することができる。
【００３９】
次にステップＳ６では、「音色選択テーブルＢ（あるいは、置換テーブル）」を作成し、該音色選択テーブルＢ（あるいは、置換テーブル）に基づいて、上記と同様に、この電子楽器で採用している所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色選択フォーマットに従う音色マップを再構成する。ただし、この「音色選択テーブルＢ」では、“ロード可能音色”のオリジナル音色選択情報に従う配置で音色選択空間内に該“ロード可能音色”を配置するようにする。すなわち、音源にロードしようとする“ロード可能音色”の音色データ（プリセットデータと波形データ）をそれに付随するオリジナル音色選択情報に従って読み出せるように配置（マッピング）する。その場合、“ロード可能音色”のオリジナル音色選択情報に対応する配置に、すでに所定の音色規格（例えばＭＩＤＩ−ＸＧ規格）に従う音色データが配置されていることがありうるが、その場合は、所定の音色規格に従う音色データを無視し、“ロード可能音色”の方を優先して選択するようにする。こうして、「音色選択テーブルＢ」にあっては、基本的には“ロード可能音色”のオリジナル音色選択情報が優先される。例えば、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、ロード可能音色データのオリジナル音色選択情報が示す音色配置に従う音色選択情報を含む演奏データに従って自動演奏を行なったとしても、オリジナル音色の配置を活かして適切な演奏を行なうことができる。後述するように、「音色選択テーブルＢ」を作成せずに、「音色選択テーブルＡ」と「置換テーブル」とを使用して同等の処理を行うことができる。
【００４０】
まず、音色選択テーブルＡについて説明する。図６は、音色選択テーブルＡの内容を説明するための概念図である。図６（Ａ）は、上述の音色ロード処理で作成する音色選択テーブルＡ（図４のステップＳ５参照）の全体構成を示す概念図である。図６（Ｂ）〜（Ｆ）の各図は、音色選択テーブルＡにおける各テーブル内容を説明するための概念図である。ただし、図６ではＲＯＭ３に予め記憶されている音色選択テーブルとＲＡＭ４に新たに追加する音色選択テーブルとを組み合わせた仮想的な音色選択テーブルＡを示し、ＲＯＭ３に予め記憶されている音色選択テーブルを斜線なしで、ＲＡＭ４に新たに追加作成する音色選択テーブルを斜線有りで表示した。なお、前記予め記憶されている音色選択テーブルをＲＯＭ３に置くかわりに、ＲＡＭ４に記憶して書き換え禁止状態に設定してもよい。
【００４１】
ここで、この実施例で採用する音色選択フォーマットについて概略説明しておく。複数（例えば、１２８個）の音色が１つのバンクに属しており、そのようなバンクが複数存在する。１つの音色を特定する音色ナンバは、前述のとおり、“バンクセレクトＭＳＢ”と、“バンクセレクトＬＳＢ”と、“プログラムチェンジ番号”という３バイトのデータで構成されており、そのうち、“バンクセレクトＭＳＢ”と“バンクセレクトＬＳＢ”の組み合わせによって１つのバンクを特定し、特定された１バンク内における当該音色の所在を“プログラムチェンジ番号”によって特定する。なお、ここでいう「バンク」は仮想的なものである。この実施例における音色選択テーブルＡのタイプでは、“ロード可能音色”のために、“バンクセレクトＭＳＢ”の値「016」と“バンクセレクトＬＳＢ”の値「000」及び「001」によって特定される２つのバンクが専用の領域として使用される。すなわち、バンクセレクトＭＳＢ「016」、バンクセレクトＬＳＢ「000」及び「001」で決定されるバンクを、追加音色つまり“ロード可能音色”を記憶する専用のバンクとして用いる。
【００４２】
図６（Ａ）に示すように、音色選択テーブルＡは、バンクセレクトＭＳＢテーブル、バンクセレクトＬＳＢテーブル１、バンクセレクトＬＳＢテーブル２、及び複数のプログラムチェンジテーブルとから構成されるテーブルである。バンクセレクトＭＳＢテーブルは、“バンクセレクトＭＳＢ”のデータ値とバンクセレクトＬＳＢテーブル１及びバンクセレクトＬＳＢテーブル２、あるいはプログラムチェンジテーブルとを対応付けるテーブルである（図６（Ｂ）参照）。この実施例においては、バンクセレクトＭＳＢの値「000」に応じてバンクセレクトＬＳＢテーブル１を選択し、バンクセレクトＭＳＢの値「016」に応じてバンクセレクトＬＳＢテーブル２を選択し、バンクセレクトＭＳＢの値「064」に応じてプログラムチェンジテーブル１２９（PGM_129）を選択し、バンクセレクトＭＳＢの値「126」に応じてプログラムチェンジテーブル１３０（PGM_130）を選択し、バンクセレクトＭＳＢの値「127」に応じてプログラムチェンジテーブル１３１（PGM_131）を選択するように各々対応付けられている。バンクセレクトＬＳＢテーブル１及び２は、バンクセレクトＬＳＢのデータ値とプログラムチェンジテーブルとを対応付けるテーブルである（図６（Ｃ）及び図６（Ｄ）参照）。この実施例において、バンクセレクトＬＳＢテーブル１は“規格音色”のバンクをセレクトするためのテーブルであり、バンクセレクトＬＳＢの取り得る全ての値0〜127に対応して所定のプログラムチェンジテーブルが割り当てられている。バンクセレクトＬＳＢテーブル２は“ロード可能音色”のバンクをセレクトするためのテーブルであり、バンクセレクトＬＳＢの値「000」に応じてプログラムチェンジテーブルＸ１（PGM_X1）を選択し、バンクセレクトＬＳＢの値「001」に応じてプログラムチェンジテーブルＸ２（PGM_X2）を選択するように対応付けられている。ここで、バンクセレクトＭＳＢテーブルには、対応するバンクセレクトＬＳＢテーブルないしプログラムチェンジテーブルが存在するバンクセレクトＭＳＢの値の要素のみが記憶され、バンクセレクトＬＳＢテーブルには、対応するプログラムチェンジテーブルが存在するバンクセレクトＬＳＢの値の要素のみが記憶されている。プログラムチェンジテーブルには、各プログラムチェンジ番号000〜127に対応して、ＲＯＭ３あるいはＲＡＭ４のプリセットデータ記憶領域におけるプリセットデータの記憶場所を指し示すプリセットデータポインタを記憶する（図６（Ｅ）及び図６（Ｆ）参照）。このプログラムチェンジテーブルは、ＲＯＭ３（予め記憶している音色、すなわち“規格音色”に関するプリセットデータ）あるいはＲＡＭ４（追加した音色、すなわち“ロード可能音色”に関するプリセットデータ）に記憶され、プログラムチェンジ番号に応じてプリセットデータ記憶領域に記憶した当該音色のプリセットデータを指し示すプリセットデータポインタを読み出す。すなわち、該ポインタは図３に示した当該１音色のプリセットデータの先頭の記憶位置を指し示すポインタである。なお、各プログラムチェンジテーブルについて、000〜127の１２８個全てのプログラムチェンジ番号に音色が配置されている訳ではない。音色の配置されていないプログラムチェンジ番号ついては、未配置を��す識別データ（例えば、＆ＨＦＦ（１６進数）＝255）が、プログラムチェンジテーブルのプリセットデータポインタとして記憶される。
【００４３】
音色選択テーブルＡの作成例について具体的に説明する。上述のように、本実施例では、バンクセレクトＭＳＢの値が「016」、バンクセレクトＬＳＢの値が「000」又は「001」で示されるバンクを追加音色（つまり、“ロード可能音色”）を記憶するために用いるバンクとして使用する例について説明する。
音色ロード処理における音色選択テーブルＡの作成（図４のステップＳ５参照）に際して、“ロード可能音色”として音源にロードする音色ファイル中のある１つの音色（プリセットデータ）のオリジナル音色選択情報について、バンクセレクトＭＳＢの値が「016」、バンクセレクトＬＳＢの値が「000」、プログラムチェンジ番号が「000」である場合には、プログラムチェンジテーブルＸ１におけるプログラムチェンジ番号「000」に対応したポインタが書き換えられる。すなわち、バンクセレクトＭＳＢの値が「016」、バンクセレクトＬＳＢの値が「000」、プログラムチェンジ番号が「000」である音色をロードしようとする場合は、バンクセレクトＭＳＢの値が「016」であることからバンクセレクトＬＳＢテーブル２が選択され、さらに、バンクセレクトＬＳＢの値が「000」であることからプログラムチェンジテーブルＸ１が選択される。さらに、プログラムチェンジ番号が「000」であるからプログラムチェンジテーブルＸ１（図６（Ｆ）参照）の該当する位置に当該追加音色のプリセットデータを記憶したメモリ上の位置を指し示すポインタが書込まれる。一方、“ロード可能音色”として音源にロードする音色ファイル中の別の１つの音色（プリセットデータ）のオリジナル音色選択情報について、バンクセレクトＭＳＢの値が「016」以外（例えば、「024」）、バンクセレクトＬＳＢの値が「001」、プログラムチェンジ番号が「111」である場合には、プログラムチェンジテーブルＸ２におけるプログラムチェンジ番号「111」に対応した位置に該音色のプリセットデータを記憶したメモリ上の位置を指し示すポインタが書込まれる。すなわち、“ロード可能音色”として外部より送信されてきた音色ファイルが例えばバンクセレクトＭＳＢの値「024」をもつ既存の“規格音色”に相当するものであっても、それを“ロード可能音色”として取り込むことが可能であり、その場合はバンクセレクトＭＳＢの値が「016」に対応するバンクセレクトＬＳＢテーブル２が選択され、バンクセレクトＬＳＢの値「001」に対応するプログラムチェンジテーブルＸ２が選択される。なお、ここでの書き込もうとするプログラムチェンジテーブルの選択は、一つの例であり、順次ロードされる音色を、バンクセレクトの値に関わらずプログラムチェンジテーブルＸ１ないしＸ２の未だ音色の配置されていない場所（プリセットデータポインタが255である所）へ書き込むようにすればよい。また、前記ある音色について、プログラムチェンジテーブルＸ１のプログラムチェンジ番号「000」に既に別の音色が配置されていた場合には、その音色を別の未配置のプログラムチェンジ番号に移動してそこへ配置するようにしてもよいし、既に配置されている音色はそのままで、その音色を別の未配置のプログラムチェンジ番号に配置するようにしてもよい。
このように、音色選択テーブルＡを作成する場合には、受信した“ロード可能音色”のバンクセレクトＭＳＢの値が「016」である場合には勿論のこと、そのバンクセレクトＭＳＢの値が「016」以外であっても、バンクセレクトＬＳＢテーブル２が選択され、プログラムチェンジテーブルＸ１あるいはＸ２のいずれかのプログラムチェンジ番号に従う位置に当該音色を記憶したメモリ上の位置を指し示すポインタが書込まれる。
【００４４】
上述のような音色選択テーブルＡに対応する音色マップＡを具体的に示すと、図７のようになる。図７は、上述の音色選択テーブルＡに基づく音色マップＡ（すなわち、バンクの仮想的なマップ）を示す概念図である。ここではＲＯＭ３に予め記憶されている音色選択テーブルに基づく音色マップを斜線なしで、ＲＡＭ４に新たに追加作成する音色選択テーブルに基づく音色マップを斜線有りで表示している。図の左側には個々のバンクに対応するプログラムチェンジテーブルを示し、図の右側には各バンクを指定するバンクセレクトＭＳＢ及びバンクセレクトＬＳＢの値を示す。
図６（Ａ）に示した音色選択テーブルＡに従う各バンクの仮想的な所在を展開すると、図７に図示した音色マップＡになる。ユーザは音色を選択する際に、該音色マップＡに従い、バンクセレクトＭＳＢ及びＬＳＢの組合せによって１つのバンク、つまりプログラムチェンジテーブルを選択することができる。例えば、バンクセレクトＭＳＢ「000」、バンクセレクトＬＳＢ「000」を指定すればプログラムチェンジテーブル１（PGM_1）を、バンクセレクトＭＳＢ「064」（バンクセレクトＬＳＢ「000」）を指定すればプログラムチェンジテーブル129（PGM_129）を選択することができる。既に説明したように、プログラムチェンジテーブルは音色データを記憶したメモリ上の記憶位置を指し示すポインタをプログラムチェンジ番号に従って読み出すことができるように構成したテーブルであることから、ユーザはバンクセレクトＭＳＢ及びバンクセレクトＬＳＢの値と共に、プログラムチェンジ番号を指定することによって１つの音色を選択することができる。例えば、バンクセレクトＭＳＢの値として「000」、バンクセレクトＬＳＢの値として「001」、プログラムチェンジ番号として「002」を指定した場合には、プログラムチェンジテーブル２（PGM_2）のポインタINST_T2（2）により指定されるメモリ上の記憶位置に記憶されている音色が指定されることになる。すなわち、指定されたバンクセレクトＭＳＢの値に従ってバンクセレクトＬＳＢテーブルが選択される。このとき、指定されたバンクセレクトＭＳＢの値により、バンクセレクトＬＳＢテーブル１又はバンクセレクトＬＳＢテーブル２のいずれかが選択される。そして、選択されたバンクセレクトＬＳＢテーブル１又は２を参照して、指定されたバンクセレクトＬＳＢの値に従ってプログラムチェンジテーブルが選択される。そして、選択されたプログラムチェンジテーブルを参照して、指定されたプログラムチェンジ番号に従って音色が選択される。音色選択テーブルＡの実施例においては、バンクセレクトＭＳＢの値「016」、バンクセレクトＬＳＢの値「000」「001」で指定される所定のバンクのみにユーザ音色（つまり、“ロード可能音色”）を追加することができるように構成したことから、ユーザはバンクセレクトＭＳＢの値「016」及びバンクセレクトＬＳＢの値「000」（あるいは「001」）を指定することによって所望のユーザ音色（つまり、“ロード可能音色”）を選択することができることになる。
【００４５】
以上のように、音色選択テーブルＡ（すなわち、音色マップＡ）に従うと、バンクセレクトＭＳＢ、バンクセレクトＬＳＢ、プログラムチェンジ番号を指定することによってＲＯＭ３あるいはＲＡＭ４に記憶されたユーザ音色（つまり、“ロード可能音色”）を含む全ての音色の中から1つの音色を指定することができる。
なお、バンクセレクトＭＳＢの値「064」、「126」、「127」については、それのみでバンク指定可能な仕様であるため、更にバンクセレクトＬＳＢの値を指定することなく、バンクセレクトＭＳＢの値を指定するだけでプログラムチェンジテーブルを直接指定することができる（図６（Ｂ）参照）。ここで、例えばバンクセレクトＭＳＢの「064」は効果音音色のバンクであり、「126」と「127」は打楽器音音色のバンクである。また、この実施例では、バンクセレクトＭＳＢの値「001」〜「015」、バンクセレクトＭＳＢの値「017」〜「063」、バンクセレクトＭＳＢの値「065」〜「125」に対応するプログラムチェンジテーブルは存在しない（すなわち、音色マップＡの該当位置は「空き領域」である）ことから、ユーザがこれらを指定したとしても音色を選択することはできない。一方、バンクセレクトＭＳＢの値「000」の領域にも、プログラムチェンジテーブルが存在しないバンクセレクトＬＳＢの値（「002」〜「004」等）があるが、そのバンクセレクトＬＳＢの値が指定された場合は適宜代理音色が選択されるようになっている。例えば、代理音色として音色マップＡの該指定位置に近いプログラムチェンジテーブルを選択するようにしてもよい。すなわち、この実施例においてはプログラムチェンジテーブル２（PGM_2）あるいはプログラムチェンジテーブル５（PGM_5）を選択するようにしてもよい。あるいは、代理音色としてバンク０のプログラムチェンジテーブル０（PGM_1）を選択するようにしてもよい。
【００４６】
次に、音色選択テーブルＢについて説明する。図８は、音色選択テーブルＢの内容を説明するための概念図である。図８（Ａ）は、上述の音色ロード処理で作成する音色選択テーブルＢ（図４のステップＳ６参照）の全体構成を示す概念図である。図８（Ｂ）〜（Ｄ）の各図は、音色選択テーブルＢにおける各テーブル内容を説明するための概念図である。ただし、図８（Ａ）においてはＲＯＭ３に予め記憶されている音色選択テーブルとＲＡＭ４に新たに追加する音色選択テーブルとを組み合わせた仮想的な音色選択テーブルＢを示し、ＲＯＭ３に予め記憶されている音色選択テーブルを斜線なしで、ＲＡＭ４に新たに追加作成する音色選択テーブルを斜線有りで表示した。
【００４７】
図８（Ａ）に示すように、音色選択テーブルＢは、ＲＯＭ３に記憶されたバンクセレクトＭＳＢテーブル、バンクセレクトＬＳＢテーブル１、プログラムチェンジテーブルと、ＲＡＭ４に記憶されたバンクセレクトＭＳＢテーブルＹ１、バンクセレクトＬＳＢテーブルＹ１、Ｙ２、Ｙ３・・・、プログラムチェンジテーブルとにより構成される。ここで、ＲＯＭ３に記憶されたバンクセレクトＭＳＢテーブル、バンクセレクトＬＳＢテーブル１、プログラムチェンジテーブルは、図６中の同じ名前の各テーブルと全く同じ物であり、音色選択テーブルＡと音色選択テーブルＢで同じテーブルを共用することができる。新規のテーブルを作成してＲＡＭ４に記憶しようとする際に、ＲＯＭ３に対応するテーブルが存在する場合は、そのテーブルをコピーして新規に作成するテーブルの初期化データとする。例えば、音色ロード処理の音色選択テーブルＢの作成（図４のステップＳ６参照）において、音源にロードする“ロード可能音色”の音色ファイルのPRESET DATAチャンクに記憶されたある１つの音色の３バイトの音色ナンバつまりオリジナル音色情報が、バンクセレクトＭＳＢが「024」、バンクセレクトＬＳＢが「000」、プログラムチェンジ番号が「000」である場合には、ＲＯＭ３に記憶されたバンクセレクトＭＳＢテーブルをＲＡＭ４にコピーしてバンクセレクトＭＳＢテーブルＹ１を生成する。次に、バンクセレクトＭＳＢ「024」に対応するバンクセレクトＬＳＢテーブルはＲＯＭ３中に存在しないので、要素を持たないバンクセレクトＬＳＢテーブルを初期データとしてバンクセレクトＬＳＢテーブルＹ１を作成する。さらに、「000」〜「127」の全てのプログラムチェンジについて音色未配置のプログラムチェンジテーブルを初期データとして、バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「000」に対応するプログラムチェンジテーブルＹ１を作成する。そして、該プログラムチェンジテーブルＹ１のプログラムチェンジ番号「000」に対応するポインタを、新たに追加する“ロード可能音色”の音色ファイルのPRESET DATAチャンクの当該音色のプリセットデータを記憶したＲＡＭ４の所定位置を指し示すポインタに書き換える（図８（Ｄ）参照）。また、バンクセレクトＬＳＢテーブルＹ１のバンクセレクトＬＳＢが「000」に対応するプログラムチェンジテーブルをプログラムチェンジテーブルＹ１に書き換える（図８（Ｃ）参照）。さらに、バンクセレクトＭＳＢテーブルＹ１のバンクセレクトＭＳＢが「024」に対応するバンクセレクトＬＳＢテーブルをバンクセレクトＬＳＢテーブルＹ１に書き換える（図８（Ｂ）参照）。
このように、新たに追加しようとする “ロード可能音色”のオリジナル音色選択情報にあわせて、それに関連するプログラムチェンジテーブル、バンクセレクトＬＳＢテーブル、バンクセレクトＭＳＢテーブルが存在する場合にはそれを初期データとしてＲＯＭ３からＲＡＭ４へとコピーして、ＲＡＭ４にコピーしたそれぞれのテーブルの内容を書き換えて、音色選択の際に該テーブルを用いることによって、どのような場所に“ロード可能音色”の音色データ（プリセットデータと波形データ）を取り込んでも、そのオリジナル音色選択情報に従って該音色を選択・指定することができる。なお、バンクセレクトＭＳＢテーブルＹ１を作成するのは、音源に“ロード可能音色”の音色ファイルの何れかの音色を初めてロードするとき（すなわち、未だバンクセレクトＭＳＢテーブルが存在しないとき）のみであり、２つ目以降の音色をロードする際は、既に作成されているバンクセレクトＭＳＢテーブルＹ１の一部を当該音色のオリジナル音色選択情報に基づいて書き換えるだけでよい。また、ロードする音色のオリジナル音色選択情報のバンクセレクトＭＳＢに対応するバンクセレクトＬＳＢテーブルがＲＡＭ４に既に存在する場合には、該バンクセレクトＬＳＢテーブルを当該音色のオリジナル音色選択情報に基づいて書き換えるだけでよい。さらに、ロードする音色のオリジナル音色選択情報のバンクセレクトＭＳＢ、バンクセレクトＬＳＢに対応するプログラムチェンジテーブルがＲＡＭ４に既に存在する場合には、該プログラムチェンジテーブルを当該音色のオリジナル音色選択情報に基づいて書き換えるだけでよい。
【００４８】
上述のようにして、“ロード可能音色”の音色ファイルの複数の音色を順次ロードし、その結果として生成された音色選択テーブルＢに基づく音色マップＢの具体例を示すと、図９のようになる。図９は、上述の音色選択テーブルＢに基づく音色マップＢを示す概念図である。ただし、ここではＲＯＭ３に予め記憶されている音色選択テーブルに基づく音色マップを斜線なしで、ＲＡＭ４に新たに追加作成する音色選択テーブルに基づく音色マップを斜線有りで表示している。また、図の右側には該音色マップを選択する際に指定するバンクセレクトＭＳＢ及びＬＳＢを示し、図の左側に各バンクセレクトＭＳＢ及びＬＳＢに対応するプログラムチェンジテーブルを示す。
図８（Ａ）に示したような音色選択テーブルＢの例（ただし、図８の音色選択テーブルＢと同一ではない）をメモリマップとして展開すると、図９に示す音色マップＢのようになる。ユーザは音色を選択する際に、該音色マップＢに従い、バンクセレクトＭＳＢ及びＬＳＢの組合せによって１つのプログラムチェンジテーブルを選択することができる。例えば、バンクセレクトＭＳＢ「000」、バンクセレクトＬＳＢ「001」を指定すればプログラムチェンジテーブルＹ１（PGM_Y1）を、バンクセレクトＭＳＢ「016」、バンクセレクトＬＳＢ「000」を指定すればプログラムチェンジテーブルＹ２（PGM_Y2）を選択することができる。既に説明したように、プログラムチェンジテーブルは音色を記憶した領域を指し示すポインタをプログラムチェンジ番号に従って決定することができるように構成したテーブルであることから、ユーザはバンクセレクトＭＳＢ及びＬＳＢと共に、プログラムチェンジ番号を指定することによって１つの音色のみを選択することができる。
このように、音色選択テーブルＢを用いれば、ロードしようとするロード可能音色のオリジナル音色選択情報に従って、電子楽器に固有の所定音色規格に従う音色選択フォーマットに制約されることなく、任意の位置にロード可能音色を配置（マッピング）することができる。よって、所定音色規格に従う音色選択フォーマットに従う電子楽器を使用して、さらにロード可能音色のオリジナル情報に従う音色配置を行って、容易に楽音演奏を遂行することができる。
【００４９】
次に、音色選択テーブルＡ及び音色選択テーブルＢを用いて音色を選択する処理について説明する。
まず、ＢＳ＆ＰＣ発生イベント処理について図１０を用いて説明する。図１０は、ＢＳ＆ＰＣ発生イベント処理の一実施例を示すフローチャートである。該処理は、ユーザによるパネルスイッチ９の操作による音色選択操作に従って、あるいは自動演奏データに含まれる音色選択情報に従って、すなわち、なんらかの音色選択操作又は音色選択情報が与えられたとき、すなわち、バンクセレクトＢＳとプログラムチェンジＰＣが発生したときに、それに応じてＣＰＵ１で実行される処理である。なお、プログラムチェンジＰＣのみが発生した場合にも、過去のバンクセレクトＢＳ等によりその時点で有効となっているバンクセレクトＢＳとの組合わせにより、同様の処理がＣＰＵ１により実行される。
【００５０】
ステップＳ１１では、選択しようとする音色を指定する音色選択情報に含まれる、バンクセレクトＭＳＢ及びＬＳＢ（これをＢＳと略称する）、プログラムチェンジ番号（これをＰＣと略称する）の各値を取得し、かつ、該選択しようとする音色の演奏パートを指定するパート番号（これをｉで示す）を特定する。ステップＳ１２では、モード選択信号ＭＯＤＥに応じた音色マップ（つまり音色選択テーブルＡ及び音色選択テーブルＢのどちらか）を使用して、上記ステップＳ１１で得たバンクセレクトＭＳＢ及びＬＳＢ（ＢＳ）及びプログラム番号（ＰＣ）に応じてＲＯＭ３あるいはＲＡＭ４に記憶された音色データ（選択された１つの音色ＩＮＳＴｊのプリセットデータ）のプリセットデータポインタを取得し、該ポインタをパート番号ｉに対応する所定のレジスタＩＰ（ｉ）へ格納する。パート番号ｉについて発音指示があった場合は、ＣＰＵ１は、該発音指示を何れかの発音チャンネルに割り当て、音源の割り当てられた発音チャンネルに対して該発音指示とレジスタＩＰ（ｉ）の示すプリセットデータに基づく楽音の発生を指示する。すなわち、パート番号ｉのパートでは、レジスタＩＰ（ｉ）の示すプリセットデータに対応した音色による楽音が生成される。モード選択信号ＭＯＤＥは、音色選択テーブルＡ及び音色選択テーブルＢのどちらを使用すべきかを指示する。この実施例では、ＭＯＤＥが「０」の場合には音色選択テーブルＡに従う音色マップＡを用いて音色を決定し、ＭＯＤＥが「１」の場合には音色選択テーブルＢに従う音色マップＢを用いて音色を決定する。
【００５１】
上記ＭＯＤＥの設定は、所定のモード指定スイッチを操作することによりユーザーの望みにより行うようにしてよい。あるいは演奏しようとする曲の自動演奏データに含まれる音色規格ＩＤ情報に従って自動的にモード選択が行われるようにしてもよい。この際に行われるモード指定ＳＷイベント処理を図１１に示す。図１１の処理はモード指定スイッチを操作する度毎に行われ、スイッチ操作を１回毎に行う度に
１−（現在設定されているＭＯＤＥ）
で示される演算式に従う反転演算を行い、１から０に、またはその逆に０から１に、反転させることで、モードを切替える。該演算によって得られた値を新たな設定値としてＭＯＤＥに再設定する（ステップＳ３１）。
【００５２】
次に、ノートオン発生イベント処理について図１２を用いて説明する。図１２は、ノートオン発生イベント処理の一実施例を示すフローチャートである。
ステップＳ２１では、このノートオン発生イベントに対応して与えられるノートナンバ（ＮＮ）、ベロシティ（ＶＥＬ）、及びパート番号（ｉ）の各値を取得する。ステップＳ２２では、上述のＢＳ＆ＰＣ発生イベント処理によって得られたレジスタＩＰ（ｉ）（図１０のステップＳ１２参照）に保持されたポインタが指示する音色データを利用して、該ノートナンバ（ＮＮ）及びベロシティ（ＶＥＬ）に応じた楽音信号の生成を準備する。この準備には、楽音波形を送信し発音するための発音チャンネルの割り当てを含む。図３に示したように、１つの音色は複数のリージョンから構成され、各リージョンはノートナンバ及び／又はベロシティの範囲によって区分される。そこで、レジスタＩＰ（ｉ）の内容により１つの音色ＩＮＳＴｊを決定し、さらにその中からノートナンバ（ＮＮ）及びベロシティ（ＶＥＬ）に従って１つのリージョンを決定する。そして、決定された音色ＩＮＳＴｊの上位階層のプリセットデータにおけるパラメータと、決定された１つのリージョンに対応する波形データの選択情報と、同リージョンにおけるパラメータが、ノートナンバ（ＮＮ）やベロシティ（ＶＥＬ）とともに、音源の割り当てられた発音チャンネルに設定される。ステップ２３では、音源のその発音チャンネルに対して発音指示を行う。すなわち、音源１３は該リージョンの波形データを波形ＲＯＭ１５ないし波形ＲＡＭ１６から読み出し、読み出された波形データ、設定されたノートナンバ、ベロシティ、パラメータに基づいて楽音信号を生成する。こうして、選択された音色ＩＮＳＴｊの、発音指示された音高（ノートナンバ）および演奏強度（ベロシティ）に対応した楽音が発音される。
【００５３】
次に、曲データに連動する自動的なモード選択処理について図１３を用いて説明する。図１３は、曲データ再生指示イベント処理の一実施例を示すフローチャートである。
ステップＳ４１では、再生する曲データを指定する。例えば、ユーザがパネル表示器１０に表示された曲名をパネルスイッチ９を用いて選択することによって、曲データを指定する。あるいは、再生すべき曲の演奏データを通信回線等を介して外部から入力することで、曲データの指定がなされるようになっていてもよい。ステップＳ４２では、該曲データで使用する演奏データの形式等を調査してモードを判定し、該判定結果をＭＯＤＥに設定する。このＭＯＤＥの判定は、例えば曲のヘッダデータに記憶されている演奏環境に関する情報（例えば、音色規格を示すＩＤ情報、ロード可能音色を使用するか否か、使用する場合のロード可能音色の音色ファイル名など）を参照することによって判定したり、あるいは曲データのスタート部にある「ＧＭオン」「ＸＧオン」等の各種音色規格の音色リセット情報を参照して判定し、これにより該曲を演奏するときのベースとなる音色規格を判定し、該音色規格に応じてモードＭＯＤＥを自動的に選択する。例えば、「ＸＧオン」も「ＧＭオン」も含まれないとき、ないし、「ＧＭオン」だけのときはＭＯＤＥを１に設定し、「ＸＧオン」が含まれているときはＭＯＤＥを０に設定すればよい。あるいは、曲のヘッダの音色規格に関する情報の一部にＭＯＤＥの値（すなわち、電子楽器の音色規格とロード可能音色の何れの配置を優先させるかを示すデータ）をそのまま記憶しておき、それに従ってＭＯＤＥを設定するようにしてもよい。ステップ４３では、該曲データを再生するための準備を行う。ステップＳ４４では、再生開始指示を行う。その後は、再生演奏時のイベント発生に応じて、図１０のＢＳ＆ＰＣ発生イベント処理、あるいは図１２のノートオン発生イベント処理などが実行される。すなわち、モードＭＯＤＥの値に応じて音色選択テーブルＡまたは音色選択テーブルＢが使用される。これによって、例えば、曲データがロード可能音色を優先させる演奏データからなっている場合は、音色選択テーブルＢを選択して、最適な音色で楽音演奏を遂行することができる。また、曲データがＭＩＤＩ−ＸＧ規格を優先させる演奏データからなっている場合は、音色選択テーブルＡを選択して、最適な音色で楽音演奏を遂行することができる。
【００５４】
上述した実施例においては、音色マップＡと共に音色マップＢを作成し、ＭＯＤＥによって音色選択時に参照する音色マップを決定する例を示したが、音色マップＢを作成する代わりに置換テーブルを作成する方法もある。そこで、この置換テーブルと音色選択テーブルＡを用いて音色を選択する実施例について説明する。
まず、置換テーブルについて簡単に説明する。図１４は、置換テーブルの一実施例を示す概念図である。置換テーブルは、ロード可能音色を音色選択テーブルＡに従って配置するために設定される専用の領域である、バンクセレクトＭＳＢ「016」とバンクセレクトＬＳＢ「000」によって特定されるバンクと、バンクセレクトＭＳＢ「016」とバンクセレクトＬＳＢ「001」によって特定されるバンク、の２つのバンクに対応して設けられる。バンクセレクトＭＳＢ「016」とバンクセレクトＬＳＢ「000」によって特定されるバンクに対応する一方の置換テーブルをＣ１で示し、バンクセレクトＭＳＢ「016」とバンクセレクトＬＳＢ「001」によって特定される他方の置換テーブルをＣ２で示す。１つの置換テーブル（例えばＣ１）は１バンク内の１２８個のプログラムチェンジ番号に対応して１２８個の置換データＢＳ＆ＰＣ（0）〜ＢＳ＆ＰＣ（127）を含んでいる。各バンクに対応する置換テーブルＣ１、Ｃ２には、音色選択テーブルＡに従ってそれぞれの位置に配置されたロード可能音色のオリジナル音色選択情報が、置換データＢＳ＆ＰＣ（0）〜ＢＳ＆ＰＣ（127）として記憶される。すなわち、各置換データＢＳ＆ＰＣ（0）〜ＢＳ＆ＰＣ（127）は、置き換えをしようとするオリジナル音色選択情報を示すバンクセレクトＭＳＢ及びＬＳＢ（ＢＳ）とプログラムチェンジ番号（ＰＣ）の組からなる。この置換テーブルＣ１、Ｃ２は、ロード可能音色の音色データを追加する際に音色選択テーブルＡを作成したとき同時に作成される。置換テーブルは、音色選択テーブルＡに従う配置からロード可能音色のオリジナル音色選択情報を取得できるようにこれを置換データとして記憶しておき、音色選択テーブルＡに従ってロード可能音色が専用の領域に配置されている場合であっても、オリジナル音色選択情報に従って音色データの選択が行えるようにするものである。
【００５５】
例えば、オリジナル音色選択情報が、バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」であるロード可能音色の音色ファイルがロードされた場合に、音色選択テーブルＡに従う該音色ファイルの配置はバンクセレクトＭＳＢ「016」及びバンクセレクトＬＳＢ「001」のプログラムチェンジ番号「010」であったと仮定する。その場合は、置換テーブルＣ２における（バンクセレクトＬＳＢ「001」の）プログラムチェンジ番号が「010」に対応する置換データＢＳ＆ＰＣ（10）として、該オリジナル音色選択情報である「バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」が記憶される。ただし、置き換えを行わなくてよい場合には、置換テーブルを作成しないことは言うまでもない。例えば、オリジナル音色選択情報がバンクセレクトＭＳＢ「016」、バンクセレクトＬＳＢ「001」、プログラムチェンジ番号「010」である音色ファイルが同じ配置でロードされた場合などには、置換テーブルにおいて対応する置換データを記憶してなくてもよいのは勿論である。しかしながら、条件分岐をへらして制御を単純化するために、その場合でも置換データを記憶するようにしても良い。
【００５６】
置換テーブルＣ１、Ｃ２の作成は、図４の音色ロード処理において、ステップＳ６で音色選択テーブルＢを作成することに代えて上述の要領で該置換テーブルＣ１、Ｃ２を作成するようにすればよい。音色選択テーブルＢを作成する場合に比べて置換テーブルのほうが記憶容量が少なくて済む、という利点がある。なお、上記実施例で音色選択テーブルＢを使用するモード（ＭＯＤＥ＝1）が、置換テーブルを使用するモードに相当する。
【００５７】
置換テーブルを用いる場合のＢＳ＆ＰＣ発生イベント処理について、図１５を用いて説明する。
ステップＳ５１では、図１０のステップＳ１１と同様に、選択しようとする音色の音色選択情報から、バンクセレクトＭＳＢ及びＬＳＢ（ＢＳ）及びプログラムチェンジ番号（ＰＣ）を取得し、かつ、その演奏パートに応じてパート番号ｉを入力する。ステップＳ５２では、ＭＯＤＥの設定値が「１」であるか否かを判定する。ＭＯＤＥの設定値が「１」でない（すなわち、「０」である）場合には（ステップＳ５２のＮＯ）、音色選択テーブルＡに従う音色マップＡを使用して、バンクセレクトＭＳＢ及びＬＳＢ（ＢＳ）とプログラムチェンジ番号（ＰＣ）に応じて音色データ（プリセットデータ）を記憶したＲＯＭ3あるいはＲＡＭ４へのプリセットデータポインタを取得し、該ポインタをレジスタＩＰ（ｉ）に設定する。すなわち、この場合には音色マップＡを使用することで、所定の音色規格に従う音色選択マップを優先する。
【００５８】
ＭＯＤＥの設定値が「１」である場合には（ステップＳ５２のＹＥＳ）、置換テーブルＣ１及びＣ２から、今回取得したバンクセレクトＭＳＢ及びＬＳＢ（ＢＳ）とプログラムチェンジ番号（ＰＣ）に合致するものをサーチする。サーチの結果、合致するものがない場合には（ステップＳ５５のＮＯ）、ステップＳ５３の処理へ行く。すなわち、この場合には置き換えを行わず、音色選択テーブルＡに従う音色選択を行う。一方、サーチの結果、合致するものがある場合には（ステップＳ５５のＹＥＳ）、合致した置換データが記憶されている置換テーブルがＣ１であるかＣ２であるかに応じてバンクセレクトＬＳＢを再設定する。すなわち、該置換テーブルがＣ１のときはバンクセレクトＬＳＢを「000」に、Ｃ２のときは「001」に設定する。なお、バンクセレクトＭＳＢは、何れの場合も「016」（ロード可能音色の専用領域）に再設定される。そして、該置換テーブル内の合致した置換データの位置に応じてプログラムチェンジ番号（ＰＣ）を再設定する（ステップＳ５６）。例えば、置換テーブルＣ１の１５個目の置換データが一致した場合は、バンクセレクトＭＳＢ「016」、バンクセレクトＬＳＢ「000」、プログラムチェンジ番号「014」に再設定される。このようにして、音色マップ上での音色の置き換え（バンクセレクトＢＳとプログラムチェンジＰＣの変換）を行う。この場合、ステップＳ５１で入力された音色選択情報は、ロード可能音色のオリジナル音色選択情報であり、このオリジナル音色選択情報に合致する置換データが置換テーブルＣ１又はＣ２に記憶されていることを意味する。
【００５９】
上記例のように、オリジナル音色選択情報が、バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」であるロード可能音色の音色ファイルがロードされた場合に、音色選択テーブルＡに従う該音色ファイルの配置はバンクセレクトＭＳＢ「016」及びバンクセレクトＬＳＢ「001」のプログラムチェンジ番号「010」であったと仮定し、置換テーブルＣ２における（バンクセレクトＬＳＢ「001」の）プログラムチェンジ番号が「010」に対応する置換データＢＳ＆ＰＣ（10）として、該オリジナル音色選択情報である「バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」が記憶されるとする。この場合、モードＭＯＤＥ＝１のときに、選択しようとする所望の音色を指示する情報として、バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」からなるオリジナル音色選択情報が入力されると、置換テーブルＣ２における置換データＢＳ＆ＰＣ（10）がこれに合致することが判定され、ステップＳ５６における再設定によって、音色選択情報が、音色選択テーブルＡに従う専用の領域であるバンクセレクトＭＳＢ「016」及びバンクセレクトＬＳＢ「001」のプログラムチェンジ番号「010」を示す内容に置換される。これによって、音色データの記憶場所を指摘するポインタを得ることができる。このように、音色マップＡを再構成することによって仮想の音色マップ（仮にＡ’とする）を生成し、該音色マップＡ’を用いて音色選択を行うことができる。
【００６０】
図１６は上述した置換テーブルを用いた場合の置換による音色選択例を示している。上記のように、置換テーブルは、音色選択テーブルＡに基づく音色マップＡを変換して新たな仮想の音色マップＡ’を生成し、該音色マップＡ’に基づいて音色選択を行うことができるようにする。例えば、オリジナル音色選択情報がバンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」の音色ファイルが実際にはバンクセレクトＭＳＢ「016」、バンクセレクトＬＳＢ「001」、プログラムチェンジ番号「009」に配置されているとしても、オリジナル通りに、バンクセレクトＭＳＢ「024」、バンクセレクトＬＳＢ「005」、プログラムチェンジ番号「010」が指定された場合に正しく音色を選択することができる。すなわち、実際には音色マップＡに示すような位置に音色が配置されたとしても、置換テーブルＣ１あるいはＣ２によって仮想的に構成される音色マップＡ’を参照すれば正しく音色を指定することができる。
【００６１】
尚、上記実施例において、音色選択テーブルＡを使用してロード可能音色を専用の領域に配置する場合において、ロード可能音色のオリジナル音色選択情報が該専用の領域を示しているならば、該オリジナル音色選択情報が示す配置で該音色データを配置し、そうでないならば、該専用の領域内の空いている位置に該音色データを配置するようにするとよい。例えば、ロード可能音色のオリジナル音色選択情報が、バンクセレクトＭＳＢ「016」でバンクセレクトＬＳＢ「000」又は「001」ならば、そのバンク内のプログラムチェンジ番号が示すとおりの位置に配置するようにするとよい。そうでないならば、専用バンク内の空いている位置に配置すればよい。このようにすれば、置換テーブルの構成を簡略化できる。また、音色選択テーブルＡのみを使用する場合においても、できるだけオリジナルに近い音色選択が行える。
【００６２】
また、上記実施例において、音色選択テーブルＢを使用してロード可能音色を規格音色に優先させる場合に、該ロード可能音色がキャンセルされた場合は、元の規格音色をデフォルト復帰させるようにするとよい。すなわち、音色選択空間内に配置された外部から取り込んだロード可能音色の音色データをキャンセルするスイッチ等の手段を設け、ユーザーが望みに応じてキャンセル操作（ロードされている音色をアンロードする操作）できるようにする。該外部から取り込んだ音色データがキャンセルされたならば、それまで該外部から取り込んだ音色データが配置されていた前記音色選択空間の配置を、所定の音色規格に従う初期配置に戻すようにする。これにより、不都合のない音色管理を行うことができる。
【００６３】
なお、上述の実施例では音色の選択時に、バンクセレクトＭＳＢとバンクセレクトＬＳＢとを両方用いた例を示したがこれに限らない。例えば、音色の選択時にバンクセレクトＬＳＢのみを選択するようにしてもよい。すなわち、バンクセレクトＬＳＢのみによってプログラムチェンジテーブルを選択し、プログラムチェンジ番号に従って該プログラムチェンジテーブルから音色を記憶した位置を指し示すポインタを選択するようにしてもよい。
なお、上述した音色ロード処理、ＢＳ＆ＰＣ発生イベント処理、ノートオン発生イベント処理、モード指定ＳＷイベント処理、曲データ再生指示イベント処理の各処理はソフトウエアプログラムに基づく処理に限らず、上記実施例と同様の処理を行うマイクロプログラムで動作するように構成されたＤＳＰ装置によって処理するようにしてもよいし、あるいは、ＬＳＩ回路やディスクリート回路によって上記各実施例と同様の処理を行うように専用のハードウエア回路を構成してもよい。
【００６４】
本発明に係る音色選択装置を電子楽器に適用する場合、電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、音源装置、自動作曲装置等を１つの電子楽器本体に内蔵したものに限らず、それぞれが別々に構成され、ＭＩＤＩインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。さらに、カラオケ装置や自動演奏ピアノのような自動演奏装置、ゲーム装置、携帯電話等の携帯型通信端末などに適用してもよい。携帯型通信端末に適用した場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバ側に持たせ、端末とサーバとからなるシステム全体として所定の機能を実現するようにしてもよい。
【００６５】
自動演奏装置に適用する場合、生成するメロディの演奏データのフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。また生成した演奏データの自動演奏時における処理方法は、設定されたテンポに応じて処理周期を変更する方法、処理周期は一定で１回の処理において演奏データ中のタイミングデータの計数の仕方をテンポに応じて変更する方法等、どのようなものであってもよい。また、複数チャンネル分の演奏データが存在する場合は、複数のチャンネルのデータが混在した形式であってもよいし、各チャンネルのデータがトラック毎に別れているような形式であってもよい。
なお、本実施例のリージョンでは、ピッチ情報及び／又はベロシティ値に応じて、複数のリージョンのうちの１つが特定されるようになっていたが、ここで、複数の波形を重ねた音色を実現したい場合には、その重なる数のリージョンが特定されるようにすればよい。
【００６６】
【発明の効果】
本発明によれば、所定の音色規格に従う音色選択空間内において外部から取り込み可能な音色データを配置するための専用の領域を設定し、外部から取り込んだ音色データを該専用の領域に配置するようにしたので、外部から取り込んだ音色データを専用の領域に配置するようマッピングが行なわれ、この外部から取り込んだ音色データの選択は、所定の音色規格に従って前記専用の領域を指定する音色選択情報に従って行なわれることになり、所定の音色規格に従うマッピング規則を乱すことなく、外部から取り込んだ音色データの選択を行なうことができる、という優れた効果を奏する。例えば、所定の音色規格に従う音色選択空間において、該所定の音色規格に従う代理音色が配置されるべき領域が空いていたとしても、無闇にその空き領域に外部から取り込んだ音色データが割り付けられることがなくなるため、当該所定の音色規格に従う音色選択に不都合が生じないようになる。
また、外部から取り込んだ音色データを、該音色データに付随するオリジナル音色選択情報に従う配置で音色選択空間内に配置し、該オリジナル音色選択情報に従う配置に既に別の音色データが配置されている場合は、外部から取り込んだ音色データを優先して選択可能にし、該別の音色データは選択不能とすることで、外部から取り込んだ音色データをそのオリジナル音色選択情報に従って選択可能にすることができ、これによれば、所定の音色規格に従う音色選択空間内に「外部から取り込んだ音色データ」を配置する（マッピングする）際に、外部から取り込んだ音色データを、該音色データに付随する前記オリジナル音色選択情報に従う配置で前記音色選択空間内に配置することが優先されることとなり、外部から取り込んだ音色データのオリジナル音色選択情報に従う配置に、既に別の音色が配置（マッピング）されている場合、たとえ該別の音色が所定の音色規格に従うものであったとしても該別の音色データは選択不能とし、その代わりに該外部から取り込んだ音色データのオリジナル音色選択情報に従って配置（マッピング）され、これによって、例えば、所定の音色規格に従う音色選択空間を持つ楽音発生装置において、ロード可能音色データのオリジナル音色選択情報を含む演奏データに従って自動演奏を行なった場合に、オリジナル音色の配置を活かして適切な演奏を行なうことができる、という優れた効果を奏する。
【図面の簡単な説明】
【図１】  この発明に係る音色選択装置を適用した電子楽器の全体構成の一実施例を示したハード構成ブロック図である。
【図２】  音色ファイルの全体構成の一実施例を示す概念図である。
【図３】  音色ファイル中の１つの音色ナンバすなわち音色選択情報によって特定される波形データとプリセットデータとのフォーマット例を示す概念図である。
【図４】  音色ロード処理の一実施例を示したフローチャートである。
【図５】  波形データの波形メモリ上のメモリマップとプリセットデータのメモリ上のメモリマップの一実施例であり、（Ａ）は波形データのメモリマップを概念的に示した図、Ｂ）はプリセットデータのメモリマップを概念的に示した図である。
【図６】  音色選択テーブルＡの内容を説明するための概念図であり、（Ａ）は音色選択テーブルＡの全体構成を示す概念図、（Ｂ）〜（Ｆ）の各図は音色選択テーブルＡにおける各テーブル内容を説明するための概念図である。
【図７】  音色選択テーブルＡに基づく音色マップＡを示す概念図である。
【図８】  音色選択テーブルＢの内容を説明するための概念図であり、（Ａ）は音色選択テーブルＢの全体構成を示す概念図、（Ｂ）〜（Ｄ）の各図は音色選択テーブルＢにおける各テーブル内容を説明するための概念図である。
【図９】  音色選択テーブルＢに基づく音色マップＢを示す概念図である。
【図１０】  ＢＳ＆ＰＣ発生イベント処理の一実施例を示すフローチャートである。
【図１１】  モード指定ＳＷイベント処理の一実施例を示すフローチャートである。
【図１２】  ノートオン発生イベント処理の一実施例を示すフローチャートである。
【図１３】  曲データ再生指示イベント処理の一実施例を示すフローチャートである。
【図１４】  置換テーブルの一実施例を示す概念図である。
【図１５】  置換テーブルを用いる場合に行われるＢＳ＆ＰＣ発生イベント処理の一実施例を示すフローチャートである。
【図１６】  置換テーブルを用いた場合の音色選択を説明するための図である。
【符号の説明】
１…ＣＰＵ、２…タイマ、３…ＲＯＭ、４…ＲＡＭ、５…不揮発ＲＡＭ、６…ドライブ、６Ａ…外部記憶媒体、７…ＭＩＤＩインタフェース、８…ネットワークインタフェース、９…パネルスイッチ、１０…パネル表示器、１１…書込回路、１２…バッファ、１３…音源、１４…アクセス管理部、１５…波形ＲＯＭ、１６…波形ＲＡＭ、１７…サウンドシステム、１８…データ及びアドレスバス
【図１】
0003700599.tif 000002
【図２】
0003700599.tif 000003
【図３】
0003700599.tif 000004
【図４】
0003700599.tif 000005
【図５】
0003700599.tif 000006
【図６】
0003700599.tif 000007
【図７】
0003700599.tif 000008
【図８】
0003700599.tif 000009
【図９】
0003700599.tif 000010
【図１０】
0003700599.tif 000011
【図１１】
0003700599.tif 000012
【図１２】
0003700599.tif 000013
【図１３】
0003700599.tif 000014
【図１４】
0003700599.tif 000015
【図１５】
0003700599.tif 000016
【図１６】
0003700599.tif 000017