(57)【要約】【課題】  要求された接続先の処理要素が新たな接続を確立できない状態にある場合に、変更可能な他の処理要素に接続先を自動的に変更できるようにする。【解決手段】  部屋１ないし部屋４にはハブ１０〜ハブ４０が設置されてスター型のＬＡＮが構築されており、ハブ１０〜ハブ４０には楽音発生関連の装置がそれぞれ接続されている。内部ネットワークにおいて、ＫＢ（鍵盤）１４をＴＧ（音源）１２の入力側に論理接続し、ＴＧ（音源）１２の出力側にＳＰ２（スピーカ）２１およびＳＰ１（スピーカ）１５を論理接続することにより楽音発生システムを構築することができる。これらの各装置は、プログラムを処理装置が実行することにより機能する処理要素であり、識別情報の対応表である装置テーブルにおける自動的に他の処理要素への接続を確立するか否かを示す負荷分散対象情報を参照して、接続相手を他の処理装置へ変更できるか否かを判定すると共に、接続相手の処理要素と同じ処理要素をもつ処理装置を検出する。【選択図】  図１
2007256376.tif 000002
【特許請求の範囲】
【請求項１】
スター型のネットワークに接続されている複数の処理装置を用いて構成される楽音発生システムであって、前記処理装置は実行されるプログラムに応じた処理要素として機能するようにされており、
発生した演奏情報と、送信元の処理要素およびあて先の処理要素の識別情報とを含むフレームを生成してネットワークに送り出す演奏情報を発生する処理要素として機能する処理装置と、
自処理装置において機能している処理要素の識別情報と一致するフレームをネットワークから受信し、受信したフレームから取り出した演奏情報から楽音信号を合成すると共に、合成した楽音信号と、送信元の処理要素およびあて先の処理要素の識別情報とを含むフレームを生成してネットワークに送り出す音源用の処理要素として機能する処理装置と、
自処理装置において機能している処理要素の識別情報と一致するフレームをネットワークから受信し、受信したフレームから取り出した楽音信号のサウンド処理を行うサウンド用の処理要素として機能する処理装置とを少なくとも備え、
前記各処理要素間を論理接続することにより楽音発生システムを構築することができ、論理接続される接続相手の処理要素が機能している処理装置において新たな接続を確立できない状態にある場合であって接続相手を他の処理装置へ変更できる場合は、接続相手の処理要素と同じ処理要素をもつ処理装置を検出して新たな接続を確立できるかを判定し、新たな接続を確立できると判定された場合は、当該処理要素を接続相手として論理接続を確立するようにしたことを特徴とする楽音発生システム。
【請求項２】
内部ネットワークにおけるすべての処理要素毎の識別情報の対応表である装置テーブルが前記処理装置に用意されており、該装置テーブルにおける負荷分散対象となるか否かの情報を参照することにより、接続相手を他の処理装置へ変更できるか否かを判定すると共に、接続相手の処理要素と同じ処理要素をもつ処理装置を検出するようにしたことを特徴とする請求項１記載の楽音発生システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークに接続されている複数の処理装置を用いて構成される楽音発生システムに関する。
【背景技術】
【０００２】
従来、複数の電子楽器を互いに接続して電子楽器ネットワークシステムを構成している、いわゆるＭＩＤＩ（Musical Instrument Digital Interface）が知られている。このＭＩＤＩは、自動演奏データ等を伝送するための共通規格であり、ネットワーク上に分散した複数の楽器の内のあるものから他のものにキーコード等の演奏データを一方向に伝送することを可能としている。ＭＩＤＩでは、ＭＩＤＩメッセージがシリアルデータであると共に、電子楽器間を接続しているＭＩＤＩラインは各機器を直列に接続するようそれぞれ布線されているため、各機器間を接続したＭＩＤＩラインがかなりの占有場所を取るようになり、また、ＭＩＤＩラインが誤って１か所でもはずれてしまうと、その先に信号が伝送されず発音が停止されてしまうようになる。さらには、一度接続をはずしてしまうと元に戻す配線作業が大変になってしまう。
【０００３】
そこで、ネットワークを用いる楽器システムとしてｍＬＡＮ（music Local Area Network）が提唱されている。ｍＬＡＮは、ＩＥＥＥ１３９４を使ったデジタルオーディオ／ＭＩＤＩデータの伝送技術であり、ＡＶ機器や電子楽器、コンピュータシステム間をＩＥＥＥ１３９４インターフェイスで接続することにより、２５６チャンネル以上のデジタルオーディオデータやＭＩＤＩデータをやり取りすることができる。このｍＬＡＮは、ＩＥＥＥ１３９４上でオーディオ／ＭＩＤＩデータをやり取りするためのプロトコルである「IEC61833-6  Audio and Music Data Transmission Protocol」をベースにして、ＡＶ機器や電子楽器を制御したり、連携して動作するように制御するためのコマンドを定義している。このｍＬＡＮにより、従来はアナログケーブルやＭＩＤＩケーブルなどを使って行われていた複雑な機器間の接続を、ＩＥＥＥ１３９４ケーブルのデイジーチェイン接続に置き換えることができ、機器間の接続を大幅に簡略化することができる。
【特許文献１】特許第３２７１４９３号公報
【特許文献２】特開昭５９−１９７０９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ｍＬＡＮはデイジーチェーン接続であるため、新たな機器を任意の箇所に物理的に接続して論理的な接続設定を行うことは困難な作業を伴うという問題点があった。また、各機器を直列に接続するようそれぞれ布線されているため、各機器間を接続したラインがかなりの占有場所を取るようになる。さらに、ラインが誤って１か所でもはずれてしまうと、その先に信号が伝送されず発音が停止されてしまうようになり、さらには、一度接続をはずしてしまうと元に戻す配線作業が大変になる。
また、新たな装置を任意の箇所に接続することのできるネットワークとしてＬＡＮ（Local Area Network）が知られている。ＬＡＮは、企業内ネットワークなど比較的限られたエリア内のコンピュータ・ネットワークであり、最近では一般家庭においても構築されるようになってきている。しかしながら、ＬＡＮに直接接続できる音源や各種の楽音発生関連装置が存在せず、ＬＡＮのような一般的なネットワークを用いた楽器システムを構築することができない。
ここで、ＬＡＮのような一般的なネットワークを用いた楽器システムを構築することを考えた場合に、このような電子楽器システムにおいては鍵盤や音源およびスピーカなどの楽音発生関連装置をネットワークを介して論理接続することになる。この場合に、要求された論理接続の状態に従って論理接続を確立していくのであるが、要求された接続先の楽音発生関連装置が新たな接続を確立できない状態にある場合は、要求された接続を行うことができない。この場合は、ユーザが他の楽音発生関連装置との論理接続を改めて設定する処理を繰り返して行うことにより、接続可能な楽音発生関連装置をさがさなければならず、その接続操作が煩雑でユーザに負担をかけるという問題点があった。
【０００５】
そこで、本発明はＬＡＮのような一般的なネットワークを利用して、音源や各種の楽音発生関連の装置として機能する処理装置をネットワーク上の任意の箇所へ物理的に接続して論理的な接続設定を行う際に、要求された接続先の処理要素が新たな接続を確立できない状態にある場合に、変更可能な他の処理要素に接続先を自動的に変更できるようにした楽音発生システムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の楽音発生システムは、スター型のネットワークに接続されている複数の処理装置を用いて構成され、処理装置は実行されるプログラムに応じた楽音発生に関連する処理要素として機能するようにされており、要求された接続先の処理要素が新たな接続を確立できない状態にある場合には、接続相手の処理要素と同じ処理要素をもつ処理装置を検出して新たな接続を確立できるかを判定し、新たな接続を確立できると判定された場合に、当該処理要素を接続相手として論理接続を確立するようにしたことを最も主要な特徴としている。
【発明の効果】
【０００７】
本発明によれば、スター型のネットワークに接続されている複数の処理装置を用いて構成され、処理装置は実行されるプログラムに応じた楽音発生に関連する処理要素として機能するようにされており、要求された接続先の処理要素が新たな接続を確立できない状態にある場合には、接続相手の処理要素と同じ処理要素をもつ処理装置を検出して新たな接続を確立できるかを判定し、新たな接続を確立できると判定された場合に、当該処理要素を接続相手として論理接続を確立するようにしたことから、自動的に適切な処理装置の処理要素へ接続を切り替えられるようになり、ユーザが接続可能な処理要素をさがす手間が省けるようになる。また、たとえばスピーカ要素では接続が切り替えられると放音する場所が異なるようになってユーザが所定の場所において楽音を聴取できなくなる。このように、自動的に他の処理要素へ接続されるとユーザの意図を反映できなくなる処理要素の場合は、自動的に他の処理要素への接続を確立しないように装置テーブルに情報を記録しておくことにより、ユーザの意図を反映できる範囲で自動的に接続の確立が行われるようになる。
【発明を実施するための最良の形態】
【０００８】
本発明の実施例の楽音発生システムの構成を示すブロック図を図１に示す。
本発明にかかる楽音発生システムは、図１に示すように外部ネットワークに接続可能な内部ネットワークを備えている。内部ネットワークはイーサネット等のＬＡＮとされ、この内部ネットワークはルータ２と、ルータ２の複数のＬＡＮ端子にＬＡＮケーブルを介してそれぞれ接続されているハブ１０，ハブ２０，ハブ３０，ハブ４０を備え、部屋１，部屋２，部屋３，部屋４の４つの部屋にまたがって構築されるスター型のネットワークとされている。ルータ２のＷＡＮ端子はインターネット１に接続されており、インターネット１には他のネットワークに接続されているルータ３，ルータ４が接続されている。これにより、内部ネットワークはルータ２およびインターネット１を介してルータ３に接続されている他のネットワークやルータ４に接続されている他のネットワークに接続可能とされる。
【０００９】
部屋１には、ＳＶ（サーバ）１１，ＴＧ１（音源）１２，ＴＧ２（音源）１３，ＫＢ（鍵盤）１４，ＳＰ１（スピーカ）１５の各装置が設置されており、これらの装置にはネットワークアダプタが設けられてＬＡＮ装置とされている。部屋１に設けられたハブ１０の上流のＬＡＮ端子はＬＡＮケーブルを介してルータ２のＬＡＮ端子に接続されており、ハブ１０の下流の複数のＬＡＮ端子とＳＶ（サーバ）１１，ＴＧ１（音源）１２，ＴＧ２（音源）１３，ＫＢ（鍵盤）１４，ＳＰ１（スピーカ）１５にそれぞれ設けられているネットワークアダプタのＬＡＮ端子との間が、それぞれＬＡＮケーブルを介して接続されている。
また、部屋２には、ＳＰ２（スピーカ）２１，ＤＵ（ＤＳＰユニット）２２，ＭＸ（ミキサ）２３，ＣＲ（コンテンツレコーダ）２４の各装置が設置されており、これらの装置にはネットワークアダプタが設けられてＬＡＮ装置とされている。部屋２に設けられたハブ２０の上流のＬＡＮ端子はＬＡＮケーブルを介してルータ２のＬＡＮ端子に接続されており、ハブ２０の下流の複数のＬＡＮ端子とＳＰ２（スピーカ）２１，ＤＵ（ＤＳＰユニット）２２，ＭＸ（ミキサ）２３，ＣＲ（コンテンツレコーダ）２４にそれぞれ設けられているネットワークアダプタのＬＡＮ端子との間が、それぞれＬＡＮケーブルを介して接続されている。
【００１０】
さらに、部屋３には、ＡＡ（自動伴奏）３１，ＭＲ（ＭＩＤＩレコーダ）３２，ＥＤ（エディタ）３３，ＥＦ（エフェクタ）３４，ＡＲ（オーディオレコーダ）３５，ＳＹ（音源、鍵盤）３６の各装置が設置されており、これらの装置にはネットワークアダプタが設けられてＬＡＮ装置とされている。部屋３に設けられたハブ３０の上流のＬＡＮ端子はＬＡＮケーブルを介してルータ２のＬＡＮ端子に接続されており、ハブ３０の下流の複数のＬＡＮ端子とＡＡ（自動伴奏）３１，ＭＲ（ＭＩＤＩレコーダ）３２，ＥＤ（エディタ）３３，ＥＦ（エフェクタ）３４，ＡＲ（オーディオレコーダ）３５，ＳＹ（音源、鍵盤）３６にそれぞれ設けられているネットワークアダプタのＬＡＮ端子との間が、それぞれＬＡＮケーブルを介して接続されている。
さらにまた、部屋４には、ＭＣ（マイク）４１，ＣＤ（ＣＤプレーヤ）４２の各装置が設置されており、これらの装置にはネットワークアダプタが設けられてＬＡＮ装置とされている。部屋４に設けられたハブ４０の上流のＬＡＮ端子はＬＡＮケーブルを介してルータ２のＬＡＮ端子に接続されており、ハブ４０の下流の複数のＬＡＮ端子とＭＣ（マイク）４１，ＣＤ（ＣＤプレーヤ）４２にそれぞれ設けられているネットワークアダプタのＬＡＮ端子との間が、それぞれＬＡＮケーブルを介して接続されている。
【００１１】
本発明の楽音発生システムにおける内部ネットワークに接続されている、部屋１ないし部屋４に設置されている各装置はＤＵ（ＤＳＰユニット）２２を除いて、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory ）、ＲＯＭ（Read Only Memory）を少なくとも備え、各装置に対応するハードウェアを備える構成とされている。そして、装置名に対応するプログラムが実行されることにより、装置名の機能で動作するようになされている。このように、本発明における各装置はＤＵ（ＤＳＰユニット）２２を除いて、種々のプログラムを実行することのできる処理装置（コンピュータ）とされており、以下の記載においてはこの処理装置がプログラムを実行することにより達成される機能を処理要素と定義している。すなわち、部屋１に設置されるＳＶ（サーバ）１１，ＴＧ１（音源）１２，ＴＧ２（音源）１３，ＫＢ（鍵盤）１４，ＳＰ１（スピーカ）１５、部屋２に設置されるＳＰ２（スピーカ）２１，ＭＸ（ミキサ）２３，ＣＲ（コンテンツレコーダ）２４、部屋３に設置されるＡＡ（自動伴奏）３１，ＭＲ（ＭＩＤＩレコーダ）３２，ＥＤ（エディタ）３３，ＥＦ（エフェクタ）３４，ＡＲ（オーディオレコーダ）３５，ＳＹ（音源、鍵盤）３６、部屋４に設置されるＭＣ（マイク）４１，ＣＤ（ＣＤプレーヤ）４２は、全て処理要素であり処理装置が対応するプログラムを実行することにより、その処理要素として機能している。
ＳＶ（サーバ）１１はクライアントコンピュータに対し、自身の持っている機能やデータを提供するコンピュータであり、クライアントコンピュータは上記した処理要素が機能している処理装置である。また、ＤＵ（ＤＳＰユニット）２２は多数のＤＳＰを備える処理装置により構成され、ＤＳＰがマイクロプログラムを実行することにより、ミキサ、エディタやエフェクタ等の処理要素として機能するようになる。すなわち、ＤＵ（ＤＳＰユニット）２２はマイクロプログラムを選択して実行させることにより、機能する処理要素を切り替えることができる。
【００１２】
処理要素について具体的に説明すると、ＴＧ１（音源）１２およびＴＧ２（音源）１３は、処理装置が音源プログラムを実行することにより音源要素として機能している。ＫＢ（鍵盤）１４は、ハードウェアとしての鍵盤を備える処理装置が鍵盤プログラムを実行することにより鍵盤要素として機能している。ＳＰ１（スピーカ）１５およびＳＰ２（スピーカ）２１は、ハードウェアとしてのスピーカを備える処理装置がスピーカプログラムを実行することによりスピーカ要素として機能している。ＭＸ（ミキサ）２３は、処理装置がミキサプログラムを実行することによりミキサ要素として機能している。ＣＲ（コンテンツレコーダ）２４は、大容量の記憶装置を備える処理装置がレコーダプログラムを実行することによりコンテンツレコーダ要素として機能している。ＡＡ（自動伴奏）３１は、処理装置が自動伴奏プログラムを実行することにより自動伴奏要素として機能している。ＭＲ（ＭＩＤＩレコーダ）３２は、大容量の記憶装置を備える処理装置がレコーダプログラムを実行することによりＭＩＤＩレコーダ要素として機能している。ＥＤ（エディタ）３３は、処理装置がエディタプログラムを実行することによりエディタ要素として機能している。ＥＦ（エフェクタ）３４は、処理装置がエフェクタプログラムを実行することによりエフェクタ要素として機能している。ＡＲ（オーディオレコーダ）３５は、大容量の記憶装置を備える処理装置がレコーダプログラムを実行することによりオーディオレコーダ要素として機能している。ＳＹ（音源、鍵盤）３６は、ハードウェアとしての鍵盤を備える処理装置が音源プログラムと鍵盤プログラムを実行することにより音源要素および鍵盤要素の２つで機能している。ＭＣ（マイク）４１は、ハードウェアとしてのマイクを備える処理装置がマイクプログラムを実行することによりマイク要素として機能している。ＣＤ（ＣＤプレーヤ）４２は、ハードウェアとしてのＣＤドライブを備える処理装置がプレーヤプログラムを実行することによりＣＤプレーヤ要素として機能している。
なお、ＳＶ（サーバ）１１とＤＵ（ＤＳＰユニット）２２や上記した処理要素との間や処理要素同士の間で通信を行ってデータの授受を行うことができるが、ここではＳＶ（サーバ）１１と上記した処理要素とはＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）をサポートしており、ＴＣＰ／ＩＰプロトコルを用いてデータ授受の通信を行うようにしている。
【００１３】
内部ネットワークにおいて、ＬＡＮケーブル上を流れる情報はすべてＭＡＣフレームと呼ばれる所定長のパケットに入れられる。ＭＡＣフレームにはＩＰパケットがカプセル化されており、その先頭と最後にはそれぞれ受信部で信号の先頭を見つけるためのプリアンブルとＭＡＣフレームの内容の正当性を検査するためのチェックコードが付けられている。さらに、ＭＡＣフレームのヘッダには送信先と送信元を表わすＭＡＣアドレス（Media Access Control Address）が含まれている。ＭＡＣアドレスとは、すべてのネットワーク手段に一意に与えられている固有の番号であり、イーサネットの場合はＭＡＣアドレスは４８ビットとされている。また、ＭＡＣフレームの送信はＣＳＭＡ／ＣＤ（Carrier Sense Multiple Access with Collision Detection ）方式で行われ、各ノード（処理装置）ではケーブル上のＭＡＣフレームを監視していて、自分宛かブロードキャストであれば受信するようにしている。ＣＳＭＡ／ＣＤとは「搬送波感知多重アクセス／衝突検出方式」であり、データを送信したいノード（処理装置）はケーブルの搬送波を検出することにより通信状況を監視し空いている場合は送信を開始する。このとき、もし複数のノード（処理装置）が同時に送信を開始するとケーブル内でデータが衝突して壊れるので、これを検出（Collision Detection）しランダムな時間待機して送信を再開している。
【００１４】
また、ＴＣＰ／ＩＰは通信プロトコルのひとつでありＯＳＩ参照モデルではＩＰが第３層（ネットワーク層）、ＴＣＰが第４層（トランスポート層）に相当している。ＴＣＰ層では、ＩＰ層によるデータグラム指向の通信機能を使って信頼性のある全二重のフロー制御つきの通信機能を上位の処理要素（アプリケーション）に対して提供している。これにより、データの抜けや重複あるいは誤りがなく、送信側で送ったデータがそのままの順序で正しく受信側へ届くようになる。すなわち、ＩＰ層やその下位の物理的な伝送媒体の特性により、送信側が送り出したパケットが消失したり、遅延によって順序が入れ替わって到着したり、再送によって重複して到着したりすることがあるが、それらの影響を排除して、処理要素にとって信頼性のある通信路をＴＣＰにより確保している。ＴＣＰを使って送受信されるデータの各バイトには、シーケンス番号という連続する一連の番号が付けられており、シーケンス番号によりデータの抜けや重複がないかどうかを検査している。データを受け取った側では、ＡＣＫ（ACKnowledgement）を送信元へ返すことによりどのシーケンス番号のデータまでを受け取ったかを通知しており、これにより、送信側ではデータが正しく相手に届いたことが確認できる。この場合、所定の時間が経過してもＡＣＫが返ってこなければ、途中でデータが消失したか、相手がパケットを受信できなかったと判断して再度パケットを送信する再送制御を行う。これにより、信頼性の高い通信を行うことができるようになる。なお、再送を開始するまでの待ち時間は固定とされておらず、通信路の遅延特性、ＡＣＫが返ってくるまでの時間や再送回数などの条件によって動的に変更され、効率よく通信が行なえるように高度に制御されている。
【００１５】
本発明にかかる楽音発生システムは、図１に示す内部ネットワークに接続されている複数の処理装置において機能している処理要素を組み合わせることにより構成される。例えば、ＫＢ（鍵盤）１４から出力される演奏データをＴＧ１（音源）１２に供給し、ＴＧ１（音源）１２において演奏データに基づいて生成されて出力される楽音波形データをＳＰ１（スピーカ）１５に供給する楽音発生システムを構築する場合は、ＫＢ（鍵盤）１４とＴＧ１（音源）１２、および、ＴＧ１（音源）１２とＳＰ１（スピーカ）１５とを論理的に接続する設定を行うことにより、楽音発生システムが構築されるようになる。このような楽音発生システムは、内部ネットワークに接続されている複数の処理装置において機能している処理要素を組み合わせて構築することができる。すなわち、ＫＢ（鍵盤）１４とＳＹ（鍵盤，音源）３６の音源機能とＳＰ２（スピーカ）２１との間を論理的に接続しても楽音発生システムが構築されるようになる。この場合、ＥＦ（エフェクタ）３４やＭＸ（ミキサ）２３をさらに論理的に接続することにより、楽音波形データにエフェクトをかけたり複数の楽音波形データをミキシングすることができるようになる。
【００１６】
処理装置において機能している処理要素はＬＡＮにより物理的に接続されているが、論理的に接続されることにより処理装置において機能している処理要素間においてデータの受け渡しが可能となる。例えば、ＫＢ（鍵盤）１４とＴＧ１（音源）１２とが論理的に接続された際には、処理要素であるＫＢ（鍵盤）１４から出力される演奏データを、処理要素であるＴＧ１（音源）１２に受け渡すことができるようになる。この場合、ＫＢ（鍵盤）１４とＴＧ１（音源）１２とはＴＣＰ／ＩＰを用いて通信を行うことにより、ＫＢ（鍵盤）１４からパケット化されて出力された演奏データが、ＴＧ１（音源）１２で受信されるようになる。この場合の送信元の処理要素において生成されてネットワーク上に出力されるＭＡＣフレームの生成過程の概要を図２に示す。
【００１７】
図２に示すように、送信元の処理要素から出力されるデータは所定の長さの送信データに分割され、ＴＣＰ層において所定長の送信データの先頭にＴＣＰヘッダを付加してＴＣＰセグメントが生成される。ＴＣＰヘッダには、シーケンス番号と送信元の処理要素のポート番号とあて先の処理要素のポート番号とが含まれている。ＩＰ層では、このＴＣＰセグメントの先頭にＩＰヘッダを付加してＩＰパケットが生成される。ＩＰヘッダには、送信元のＩＰアドレスとあて先のＩＰアドレスと、図示していないがパケット長やプロトコル番号等が含まれている。ＩＰアドレスは、図１に示す内部ネットワークおよびインターネットを含む外部ネットワークに接続された処理装置の１台１台に割り振られた識別番号であり、ＩＰｖ４では、８ビットずつ４つに区切られた３２ビットの数値が使われており、「１９２．１６８．１００．８」などのように、０から２５５までの１０進数の数字を４つ並べて表現されている。そして、データリンク層および物理層においてこのＩＰパケットの先頭にＭＡＣヘッダを付加してＭＡＣフレームが生成される。ＭＡＣヘッダには、送信元の処理装置に一意に与えられている送信元ＭＡＣアドレスと、あて先の処理装置に一意に与えられているあて先ＭＡＣアドレスとが含まれている。このようにして生成されたＭＡＣフレームが送信元の処理装置からＬＡＮケーブル上に送出され、ＭＡＣフレームにおけるあて先ＭＡＣアドレスが一致する処理装置がこのＭＡＣフレームを取り込み、ＩＰアドレスとポート番号とで特定される処理要素に送信データが渡されるようになる。このように、ポート番号はＩＰアドレスの下のサブアドレスでありＩＰアドレスとポート番号との組み合わせにより処理要素を特定できることから、ＳＹ（音源、鍵盤）３６のように１つの処理装置において機能している処理要素が複数とされていてもそれぞれの処理要素をＩＰアドレスとポート番号との組み合わせにより特定してＭＡＣフレームを渡すことができるようになる。
【００１８】
次に、図１に示す内部ネットワークにおけるすべての処理要素毎の識別情報の対応表である装置テーブルを図３に示す。この装置テーブルでは、ブロードキャストドメイン内に含まれる処理装置で機能している全ての処理要素が含まれている。この装置テーブルはＳＶ（サーバ）１１で作成されて、内部ネットワーク上の全ての処理装置に記録され、その内容は同一とされている。内部ネットワークに接続される処理装置に変更があった際の装置テーブルの内容はＳＶ（サーバ）１１が更新し、更新後の装置テーブルをＳＶ（サーバ）１１から全ての処理装置へ送信するようにしている。なお、内部ネットワークに接続された処理装置は、ＳＶ（サーバ）１１から装置テーブルを取得して自機内の装置テーブルに記録する。
図３に示す装置テーブルにおいて、「論理装置ＩＤ」は処理要素のポート番号に相当し処理要素毎に異なるＩＤが割り当てられている。「ＩＰアドレス」は、内部ネットワークおよびインターネットを含む外部ネットワークに接続された処理装置の１台１台に一意に割り振られた識別番号であり、処理装置がネットワークにログインした際に、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバが予め用意されたＩＰアドレスの１つをその処理装置に割り当てるようにしている。ＤＨＣＰサーバにはルータ２がなることができるが、ＳＶ（サーバ）１１や処理装置の一つがなることもできる。「物理装置ＩＤ」は、すべてのネットワーク装置に一意に与えられている固有の番号であり、ＭＡＣアドレスに対応しており図３では内部ネットワークの処理装置に一意に与えられた固有番号とされている。「装置名」は、処理要素が機能している処理装置の略称とされている。
【００１９】
「処理ＩＤ」は、処理要素のポート番号に相当し処理要素毎に異なる処理ＩＤが割り当てられているが、論理装置ＩＤがあることから省略しても良い。「処理要素名」は、処理要素が実現している楽音発生関連装置の名称とされている。なお、論理装置ＩＤ”Ｎｏ．７”の処理要素名「ＤＳＰユニット」においては、実行されるマイクロプログラムに応じた処理要素で機能することから、設定されている処理要素の処理ＩＤと処理要素名とが装置テーブルに記録される。また、論理装置ＩＤ”Ｎｏ．１５”の処理要素名「音源」と論理装置ＩＤ”Ｎｏ．１６”の処理要素名「鍵盤」は１つの処理装置で機能している処理要素であることから、ＩＰアドレスと物理装置ＩＤは同一とされるものの、異なる論理装置ＩＤ（ポート番号）を与えてそれぞれ独立して扱えるようにしている。「ボイスファイル提供」は、外部にボイスファイルを提供するか否かの情報であり、提供できる場合は［○］を提供できない場合は［×］を記録している。この場合、ボイスファイルが記録されている処理装置であっても、そのボイスファイルを外部へ送出することが禁止されている処理装置は［×］となる。「負荷分散対象」は、負荷分散対象となるか否かの情報であり、負荷分散対象となる場合は［○］を、負荷分散対象とならない場合は［×］を記録する。この場合、負荷分散対象となるのは、処理を他の処理装置にまかせてもユーザの意図した処理を実行できる処理要素についてに限られる。なお、負荷とはソフト処理（ＣＰＵで実行）による処理装置においてＣＰＵにかかる負荷のことを指しており、処理要素をソフトウェアで実現している処理装置は対象となるが、ハードウェアのみで処理要素を実現している処理装置は負荷分散対象とはならない。
【００２０】
本発明の楽音発生システムにおいて、処理装置には上記した各種の処理要素として機能することができるように各種のプログラムが内蔵するハードディスク装置等の記憶手段に格納可能とされている。そして、記憶手段に記憶されているいずれかのプログラムを選択して実行することにより当該処理装置で機能する処理要素を切り替えることができる。この際に、同時に複数のプログラムを選択して実行することにより、１台の処理装置が複数の処理要素で機能するようになる。この場合、処理装置において機能させたい処理要素を選択した際には、処理要素に対応するプログラムが実行されるよう処理装置に設定されると共に、当該処理要素がＳＶ（サーバ）１１に登録されることにより論理装置ＩＤ（ポート番号）がその処理要素に設定される。そして、ＳＶ（サーバ）１１で更新された装置テーブルが、内部ネットワーク上の全ての処理装置に送信されて記録されるようになる。
【００２１】
本発明の楽音発生システムにおいて、処理要素間において通信するデータは、実体データと制御データの２種類に分類される。ここでは、再生する音楽の内容を直接表すデータであって、リアルタイムでの通信を必要として優先的に通信するデータを実体データと定義する。具体的にはＭＩＤＩデータやオーディオ（ＰＣＭやＭＰ３）データが実体データとなる。また、実体データ以外のデータを制御データと定義する。制御データの送受信はＳＶ（サーバ）１１を含むすべての処理装置が実行することができる。
そこで、内部ネットワーク上の処理要素において、実体データの通信が可能な処理要素毎の入力側と出力側ごとに記録される接続テーブルを図４に示す。接続テーブルは、ＳＶ（サーバ）１１で作成されて、内部ネットワーク上の全ての処理装置に記録され、その内容は同一とされている。この接続テーブルには、図１に示す内部ネットワークに接続可能な全処理装置において機能している処理要素毎についての情報が記録されている。内部ネットワークに接続された処理装置は、ＳＶ（サーバ）１１から接続テーブルを取得して記録する。
【００２２】
図４に示す接続テーブルは図１に示す構成の内部ネットワークにおける一部の処理要素の接続テーブルであり、接続テーブル中の「×」は、接続できる処理要素がないことを表しており、処理ＩＤが「ＡＡ」のサーバは実体データの送受信を行わないことを示している。このサーバは、図１に示すＳＶ（サーバ）１１である。処理ＩＤが「ＡＢ」の音源要素は、実体データとしてＭＩＤＩデータ等の演奏データを送信する処理要素を入力接続することができ、実体データとしてオーディオデータを受信する処理要素を出力接続することができる。すなわち、入力接続できる処理要素は、処理ＩＤが「ＡＣ」の鍵盤要素、処理ＩＤが「ＡＨ」の自動伴奏要素、処理ＩＤが「ＡＩ」のＭＩＤＩレコーダ要素、処理ＩＤが「ＡＪ」のエディタ要素となり、出力接続できる処理要素は、処理ＩＤが「ＡＤ」のスピーカ、処理ＩＤ「ＡＫ」のエフェクタ要素、処理ＩＤが「ＡＬ」のオーディオレコーダ要素となる。また、処理ＩＤが「ＡＣ」の鍵盤は、実体データとしてＭＩＤＩデータ等の演奏データを受信する処理要素を出力接続することができ、その性質から入力接続できる処理要素はない。すなわち、出力接続できる処理要素は、処理ＩＤが「ＡＢ」の音源要素、処理ＩＤが「ＡＩ」のＭＩＤＩレコーダ要素、処理ＩＤが「ＡＪ」のエディタ要素となる。さらに、処理ＩＤが「ＡＤ」のスピーカは、実体データとしてオーディオデータを送信する処理要素を入力接続することができ、その性質から出力接続できる処理要素はない。すなわち、入力接続できる処理要素は、処理ＩＤが「ＡＢ」の音源要素、処理ＩＤが「ＡＦ」のミキサ要素、処理ＩＤが「ＡＫ」のエフェクタ要素、処理ＩＤが「ＡＬ」のオーディオレコーダ要素、処理ＩＤが「ＡＭ」のマイク要素、処理ＩＤが「ＡＮ」のＣＤプレーヤ要素等となる。接続テーブルでは、このような入力接続できる処理要素や出力接続できる処理要素が処理要素毎に示されており、接続テーブルを参照することにより入力接続する処理要素や出力接続する処理要素を選択することができるようになる。
【００２３】
次に、内部ネットワークに新たに処理装置が接続（ログイン）された際に実行されるネットワーク接続処理のフローチャートを図６に示す。なお、クライアントはＳＶ（サーバ）１１に対するクライアントであり、内部ネットワークにおいてＳＶ（サーバ）１１以外の処理装置は全てクライアントとなる。なお、クライアントとＳＶ（サーバ）１１間で通信される制御データは、あて先の処理装置のＩＰアドレスと予め定められている制御データ用のポート番号とを用いて通信される。
ネットワーク接続処理が起動されると、ステップＳ１０にて新たに接続された新クライアントが複数の処理要素を有しているか否かが判断される。ここで、新クライアントが図５の上段に示す処理装置ＮＥＷのように鍵盤プログラムおよび音源プログラムを実行することにより鍵盤要素ＫＢと音源要素ＴＧとして機能しており、鍵盤要素ＫＢで発生したＭＩＤＩデータを音源要素ＴＧへ入力できるように接続されていた場合はＹＥＳと判断されてステップＳ１１に進み、図５の下段に示すように鍵盤要素ＫＢと音源要素ＴＧとの間の内部接続が切断される。これにより、複数の処理要素が機能している処理装置ＮＥＷにおいては、ログオンした際に自動的に処理要素間の接続が切断されることから、ログオンする前に予め切断しておく作業を省略することができるようになる。そして、ステップＳ１０で複数の処理要素を持っていないと判断された場合と同様にステップＳ１２に進み、自機情報と登録要求を含むデータ部を作成する。自機情報は、その処理装置における全ての処理要素の論理装置ＩＤ、ＩＰアドレス（ＩＰアドレスは内部ネットワークにログインした際にＤＨＣＰサーバから割り当てられている）、物理装置ＩＤ、全ての処理要素の処理ＩＤと処理要素名の情報、ボイスファイル提供情報および負荷分散対象情報であり、登録要求とは、ＳＶ（サーバ）１１にある装置テーブルへ自機情報を登録する要求とされる。次いで、ステップＳ１３にて送信処理が行われる。送信処理では、ステップＳ１２において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。ＭＡＣフレームのＭＡＣヘッダにはあて先ＭＡＣアドレスとしてＳＶ（サーバ）１１のＭＡＣアドレス（物理装置ＩＤ）が設定される。
【００２４】
新クライアントから送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ２０）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。例えば、新クライアントがハブ３０に物理的に接続された場合は、ハブ３０は受信したＭＡＣフレームをルータ２に中継し、ルータ２は受信したＭＡＣフレームをハブ１０に中継し、ハブ１０は受信したＭＡＣフレームをＳＶ（サーバ）１１に中継する。これにより、新クライアントから送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致するＳＶ（サーバ）１１で受信されて、受信処理が行われる（ステップＳ３０）。受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、取得されたデータ部を解釈して登録要求があることから登録要求処理を行うと判断する。次いで、ステップＳ３１にてデータ部の自機情報を装置テーブルへ記録し、ステップＳ３２にて変更後の装置テーブルと変更要求を含むデータ部を作成する。このデータ部は、ステップＳ３３で送信処理が行われることにより内部ネットワーク上に送信される。この送信処理は、前述したステップＳ１３の送信処理と同様の処理とされるが、あて先ＭＡＣアドレスにはオール”１”のブロードキャストアドレス（FF-FF-FF-FF-FF-FF）が設定され、あて先ＩＰアドレスもブロードキャストアドレスが設定される。この場合、図３に示す装置テーブルのように内部ネットワークのネットワークアドレスが”１９２．１６８．１１１．０”とされている場合は、ＩＰアドレスのブロードキャストアドレスは”１９２．１６８．１１１．２５５”とされる。
【００２５】
ＳＶ（サーバ）１１からブロードキャストされたＭＡＣフレームは、ハブ１０で受信され経路決定処理が行われる（ステップＳ２０）。この経路決定処理では、ステップＳ２０と同様の経路決定処理が行われるが、ブロードキャストアドレスのＭＡＣフレームとされていることからルータ２およびハブ１０〜４０により全ての処理装置にＭＡＣフレームが中継されるようになる。新クライアントは、ブロードキャストされたＭＡＣフレームが到来した際にブロードキャストアドレスとされていることからステップＳ３０と同様のＭＡＣフレームを受信する受信処理を行う（ステップＳ１４）。次いで、ステップＳ１５にて受信されたＭＡＣフレームから取り出された装置テーブル情報を内部の記憶手段に記憶し、新クライアントにおけるネットワーク接続処理は終了する。また、他のクライアントにおいてはブロードキャストされたＭＡＣフレームが到来した際にブロードキャストアドレスとされていることからステップＳ３０と同様のＭＡＣフレームを受信する受信処理を行う（ステップＳ４０）。次いで、ステップＳ４１にて受信されたＭＡＣフレームから取り出された装置テーブル情報で記憶されている装置テーブルを更新し、他のクライアントにおけるネットワーク接続処理は終了する。これにより、内部ネットワークに接続されている全てのクライアントにおいて更新された図３に示す装置テーブルを持つようになる。また、ＳＶ（サーバ）１１は装置テーブルと共に接続テーブルを内部ネットワークに接続されている全てのクライアントにブロードキャストするようにしても良い。
【００２６】
次に、内部ネットワークに接続されている処理装置が切断（ログオフ）された際に実行されるネットワーク切断処理のフローチャートを図７に示す。
内部ネットワークに接続されている処理装置が切断（ログオフ）されると、ネットワーク切断処理が起動され、ステップＳ５０にて切断された処理装置が複数の処理要素を有しており復帰すべき接続があるか否かが判断される。ここで、切断された処理装置が図８の上段に示す処理装置ＯＬＤのように複数の処理要素を有しており復帰すべき接続があると判断された場合は、ステップＳ５１に進み複数の処理要素における復帰すべき全ての接続を復帰する。例えば、図８の上段に示すように鍵盤要素ＫＢと音源要素ＴＧとを有している処理装置ＯＬＤの場合は、鍵盤要素ＫＢで発生したＭＩＤＩデータを音源要素ＴＧへ入力できるように、鍵盤要素ＫＢと音源要素ＴＧとの間を図８の下段に示すように内部接続する。ステップＳ５１の処理が終了した場合と、ステップＳ５０にて復帰すべき接続がないと判断された場合は、ネットワーク切断処理は終了する。これにより、複数の処理要素が機能している処理装置ＯＬＤにおいては、ログオフした際に自動的に処理要素間の接続が復帰されてあらためて処理要素間の接続を行うことなく使用できるようになる。なお、処理要素間の接続はＡＰＩ（Application Program Interface）等を使用して内部接続されるが、各処理要素に割り当てられているポート番号を用いて論理的に接続する外部接続としてもよい。
【００２７】
なお、ＳＶ（サーバ）１１は、定期的に内部ネットワーク上のクライアントの存在を確認する処理を行っており、この処理により切断されたクライアントが検出された際に、当該クライアントの情報を装置テーブルから削除して、装置テーブルを更新する。そして、更新された装置テーブルを全クライアントへブロードキャスト送信する。ブロードキャストを受信した各クライアントでは、受信した装置テーブル情報により自機に記憶している装置テーブルが更新されるようになる。
【００２８】
次に、処理要素と処理要素との接続を設定する接続選択処理を実行する際に表示される設定画面を図１０および図１１に示す。この設定画面は、内部ネットワークが図９に示す簡易な構成とされている際の設定画面とされている。
図９に示す内部ネットワークでは、複数の処理要素が機能している処理装置ＳＹ１がハブＨＢａにＬＡＮケーブルで接続されていると共に、複数の処理要素が機能している処理装置ＳＹ２がハブＨＢａにＬＡＮケーブルで接続されている。処理装置ＳＹ１では鍵盤要素ＫＢａと、音源要素ＴＧａと、スピーカ要素ＳＰａとが機能しており、処理装置ＳＹ２では音源要素ＴＢｂと、スピーカ要素ＳＰｂとが機能している。処理装置ＳＹ１、ＳＹ２におけるこれらの処理要素は内部においてそれぞれ論理的に接続が分離されている。このように複数の処理要素が機能している処理装置ＳＹ１，ＳＹ２において、処理要素の接続選択は処理要素毎に行うことができる。ここでは、処理装置ＳＹ１の鍵盤要素ＫＢａから接続選択の設定を行う場合を説明する。この場合は、処理装置ＳＹ１において接続選択処理を起動させる。すると、処理装置ＳＹ１の画面上に図１０に示す画面Ａ１が表示される。画面Ａ１は、処理装置ＳＹ１において機能している鍵盤要素ＫＢａ、音源要素ＴＧａ、スピーカ要素ＳＰａの３つの処理要素を表示して、接続を設定する処理要素としてそのうちの一つを選択する画面とされる。ここで、画面Ａ１において鍵盤要素ＫＢａを接続設定する処理要素として選択すると、処理装置ＳＹ１の画面上に図１０に示す画面Ａ２が表示される。
【００２９】
画面Ａ２は、図９に示す内部ネットワーク上にあって、選択された処理要素である鍵盤要素ＫＢａに接続することのできる処理要素が表示され、そのうちの一つを選択する画面とされる。内部ネットワーク上にあって鍵盤要素に接続することのできる処理要素は、装置テーブルと接続テーブルを参照して表示する。この場合、装置テーブルには鍵盤要素ＫＢａ、音源要素ＴＧａ、スピーカＳＰａと、音源ＴＢｂ、スピーカＳＰｂとが記録されている。また、接続テーブルを参照すると鍵盤要素ＫＢａには入力接続がないので出力接続可能な処理要素についてのみ記録されている。すると、鍵盤要素に出力接続できる内部ネットワーク上の処理要素は音源要素のみであることから画面Ａ２には音源要素だけが表示される。画面Ａ２において表示されている音源要素を選択すると、処理装置ＳＹ１の画面上に図１０に示す画面Ａ３が表示される。画面Ａ３は、選択した処理要素である音源要素の先の接続を行うか（続行）、否か（終了）を選択させる画面とされる。ここで続行を選択すると、処理装置ＳＹ１の画面上に図１０に示す画面Ａ４が表示される。画面Ａ４は、選択された処理要素である音源要素の先に接続することのできる処理要素であって図９に示す内部ネットワーク上にある処理要素が表示され、そのうちの一つを選択する画面とされる。
【００３０】
内部ネットワーク上にある接続可能な処理要素は、装置テーブルと接続テーブルを参照して検出され、この場合、装置テーブルには鍵盤要素ＫＢａ、音源要素ＴＧａ、スピーカＳＰａと、音源ＴＢｂ、スピーカＳＰｂとが記録されている。すると、音源要素の先に接続できる処理要素はスピーカ要素とされることから画面Ａ４にはスピーカ要素だけが表示される。この画面Ａ４において表示されているスピーカ要素を選択すると、処理装置ＳＹ１の画面上に図１０に示す画面Ａ６が表示される。画面Ａ６では、スピーカ要素の出力接続はなくスピーカ要素の先に処理要素を接続することができないことから終了を選択する画面とされる。そこで、画面Ａ６において終了を選択すると処理装置ＳＹ１の画面上に図１０に示す画面Ａ７が表示される。終了を選択したことにより、鍵盤要素−音源要素−スピーカ要素の順に論理接続する設定が行われたことになり、内部ネットワーク上に複数の同じ処理要素がある場合は、それぞれの処理要素についていずれかの処理要素を選択して設定することになる。そこで、まず画面Ａ２で選択された音源要素が機能している処理装置を装置テーブルを参照することにより内部ネットワークから検出して、その処理装置の装置名を画面Ａ７に表示し、音源要素が機能している表示された装置名のいずれかを接続先として選択させる。図９に示す内部ネットワークの場合は、処理装置ＳＹ１と処理装置ＳＹ２とが音源要素が機能している処理装置として検出され、その装置名ＳＹ１および装置名ＳＹ２のいずれかが音源要素として選択されるように画面Ａ７に表示される。
【００３１】
ここで、装置名ＳＹ２（あるいは装置名ＳＹ１）の音源要素を選択すると、次に、画面Ａ４で選択されたスピーカ要素が機能している処理装置を装置テーブルを参照することにより内部ネットワークから検出して、その処理装置の装置名を画面Ａ８に表示し、スピーカ要素が機能している表示された装置名のいずれかを接続先として選択させる。画面Ａ８で、装置名ＳＹ１（あるいは装置名ＳＹ２）のスピーカ要素を選択すると接続するそれぞれの処理要素が決定されて、鍵盤要素ＫＢａ−音源要素ＴＧｂ−スピーカ要素ＳＰａの順で論理接続を行う設定が終了し、処理要素間の接続を行う接続選択処理は終了する。なお、選択された処理要素が機能している処理装置が複数あればそれらすべてについて順番に装置名を選択させる画面が順次表示されるようになる。
【００３２】
また、画面Ａ３において終了を選択すると処理装置ＳＹ１の画面上に図１０に示す画面Ａ５が表示される。終了を選択したことにより、鍵盤要素−音源要素の順で論理接続する設定が行われたことになり、次に、それぞれの処理要素について内部ネットワーク上に複数の同じ処理要素がある場合はいずれかの処理要素を選択することになる。そこで、選択された音源要素が機能している処理装置を装置テーブルを参照することにより内部ネットワークから検出して、その処理装置の装置名を画面Ａ５に表示し、音源要素が機能している表示された装置名のいずれかを接続先として選択させる。すなわち、画面Ａ７と同様の画面が画面Ａ５に表示され、ここで、装置名ＳＹ２の音源要素を選択すると接続するそれぞれの処理要素が決定されて、鍵盤要素ＫＢａ−音源要素ＴＧｂの順で論理接続を行う設定が終了し、処理要素間の接続を行う接続選択処理は終了する。
なお、処理要素間の接続を行う接続選択処理が終了した際には、設定された接続情報が設定を行った処理装置の接続バッファに記録される。そして、後述する周期的に起動される接続確立処理が起動された際に、接続バッファの接続情報に基づいて接続確立処理が行われて論理接続が確立され、確立された接続情報がカレントバッファに記録されるようになる。
【００３３】
次に、処理装置ＳＹ２の音源要素ＴＧｂから接続選択の設定をする際の説明を行う。ただし、この設定は図１０に示す設定が行われて鍵盤要素ＫＢａ−音源要素ＴＧｂ−スピーカ要素ＳＰａの順で論理接続を行う設定が終了しているものとする。ここで、処理装置ＳＹ２において接続選択処理を起動させる。すると、処理装置ＳＹ２の画面上に図１１に示す画面Ｂ１が表示される。画面Ｂ１は、処理装置ＳＹ２において機能している音源要素ＴＧｂ、スピーカ要素ＳＰｂの２つの処理要素を表示して、接続を設定する処理要素としてそのうちの一つを選択する画面とされる。ここで、画面Ｂ１において音源要素ＴＧｂを接続を設定する処理要素として選択すると、処理装置ＳＹ２の画面上に図１１に示す画面Ｂ２が表示される。
画面Ｂ２は、選択された処理要素である音源要素ＴＧｂに接続することのできる処理要素であって図９に示す内部ネットワーク上にある処理要素が表示され、そのうちの一つを選択する画面とされる。内部ネットワーク上にあって接続可能な処理要素は、装置テーブルと接続テーブルを参照して検出する。この場合、装置テーブルには鍵盤要素ＫＢａ、音源要素ＴＧａ、スピーカＳＰａと、音源ＴＢｂ、スピーカＳＰｂとが登録されている。接続テーブルを参照すると音源要素は入力接続および出力接続可能とされているので、まず入力接続を選択する画面Ｂ２が表示される。音源要素に入力接続できる処理要素は鍵盤要素のみとされることから、画面Ｂ２には鍵盤要素のみが表示されると共に、「入力接続」のタイトルも表示される。この画面Ｂ２において鍵盤要素を選択すると処理装置ＳＹ２の画面上に図１１に示す画面Ｂ３が表示される。鍵盤要素が選択されると、その先に接続される処理要素を選択する処理が続けられるのであるが、鍵盤要素の先には処理要素を接続することができないことから、画面Ｂ３には入力接続に替えて出力接続を選択する画面が表示されるようになる。なお、処理要素が選択された際にその先に接続できる処理要素があれば、続行か出力接続かのいずれかを選択させる画面を表示して、続行であればその先に接続する処理要素を選択させるようにする。
【００３４】
画面Ｂ３において、出力接続を選択すると処理装置ＳＹ２の画面上に図１１に示す画面Ｂ４が表示される。画面Ｂ４では、音源要素に出力接続できる処理要素が「出力接続」のタイトルと共に表示される。内部ネットワーク上にある出力接続可能な処理要素は、装置テーブルと接続テーブルを参照して検出される。この場合は、音源要素に出力接続できる内部ネットワーク上の処理要素はスピーカ要素のみであることから画面Ｂ４にはスピーカ要素と、スピーカ要素を選択することなく設定を終了する「終了」とのいずれかを選択する画面が表示される。画面Ｂ４においてスピーカ要素を選択すると、処理装置ＳＹ２の画面上に図１１に示す画面Ｂ５が表示される。スピーカ要素が選択されると、スピーカ要素の先に処理要素を接続することができないことから画面Ｂ５には、終了を選択する画面が「出力接続」のタイトルと共に表示される。そこで、画面Ｂ５において終了を選択すると処理装置ＳＹ２の画面上に図１１に示す画面Ｂ７が表示される。終了を選択したことにより、鍵盤要素−音源要素−スピーカ要素の順に論理接続する設定が行われたことになり、次に、内部ネットワーク上に複数の同じ処理要素がある場合はそれぞれの処理要素についていずれかの処理要素を選択することになる。
【００３５】
そこで、画面Ｂ７では装置テーブルを参照して選択された音源要素が機能している処理装置を内部ネットワークから検出して、その処理装置の装置名を表示して、表示された装置名の音源要素のいずれかを接続先として選択させる画面とされる。この場合、音源要素ＴＧｂに論理接続することのできる鍵盤要素は処理装置ＳＹ１のみで機能していると検出されるから、その装置名ＳＹ１を選択する画面が画面Ｂ７に表示される。この場合、図１０に示す設定が既に行われて鍵盤要素ＫＢａ−音源要素ＴＧｂの論理接続を行う設定が終了していることから鍵盤要素ＫＢａが機能している装置名ＳＹ１には既に選択されていることを示すアンダーラインが付されて表示される。画面Ｂ７において鍵盤要素として装置名ＳＹ１を選択すると、音源要素に論理接続することのできるスピーカ要素が機能している処理装置を内部ネットワークから検出して、その処理装置の装置名を表示して、表示された装置名のスピーカ要素のいずれかを接続先として選択させる画面Ｂ８が表示される。この場合、図１０に示す設定が行われて音源要素ＴＧｂ−スピーカ要素ＳＰａの論理接続を行う設定が終了していることからスピーカ要素ＳＰａが機能している装置名ＳＹ１には既に選択されていることを示すアンダーラインが付されて表示される。画面Ｂ８において装置名ＳＹ２のスピーカ要素を選択すると、音源要素ＴＧｂはスピーカ要素ＳＰａに加えてスピーカ要素ＳＰｂにも論理的に接続される設定が行われたことになる。これにより、図９に示す内部ネットワークにおいて論理接続するそれぞれの処理要素が決定されて、鍵盤要素ＫＢａと音源要素ＴＧｂとを論理接続する設定と、音源要素ＴＧｂとスピーカ要素ＳＰａおよびスピーカ要素ＳＰｂとを論理接続する設定が終了し、処理要素間の接続を行う接続選択処理は終了する。なお、選択された処理要素が機能している処理装置が複数あればそれらすべてについて順番に装置名を選択させる画面が順次表示されるようになる。
【００３６】
また、画面Ｂ４において終了を選択すると処理装置ＳＹ２の画面上に図１１に示す画面Ｂ６が表示される。終了を選択したことにより、鍵盤要素−音源要素の順で論理接続する設定が行われたことになり、次に、それぞれの処理要素について内部ネットワーク上に複数の同じ処理要素がある場合はいずれかの処理要素を選択することになる。そこで、選択された鍵盤要素が機能している処理装置を装置テーブルを参照することにより内部ネットワークから検出して、その処理装置の装置名を画面Ｂ６に表示し、鍵盤要素が機能している表示された装置名のいずれかを接続先として選択させる。すなわち、画面Ｂ７とほぼ同様の画面が画面Ｂ６に表示され、ここで、装置名ＳＹ１の鍵盤要素を選択すると接続するそれぞれの処理要素が決定されて、鍵盤要素ＫＢａ−音源要素ＴＧｂの順で論理接続を行う設定が終了し、処理要素間の接続を行う接続選択処理は終了する。
なお、処理要素間の接続を行う接続選択処理が終了した際には、設定された接続情報が設定を行った処理装置の接続バッファに記録される。そして、後述する周期的に起動される接続確立処理が起動された際に、接続バッファの接続情報に基づいて接続確立処理が行われて論理接続が確立され、確立された接続情報がカレントバッファに記録されるようになる。
【００３７】
図１０および図１１に示す設定画面により処理要素と処理要素との接続を設定する接続選択処理のフローチャートを図１２に示す。
処理要素の接続を設定する処理装置において接続選択処理が起動されると、ステップＳ６０にて図１０の画面Ａ１や図１１の画面Ｂ１のように自機の全処理要素を画面に表示し、いずれかの処理要素の選択を受け付ける。ここで、いずれかの処理要素が選択されるとステップＳ６１に進み、接続テーブルを参照して選択された処理要素が入力接続と出力接続とを持つか否かが判断される。ここで、選択された処理要素が入力接続と出力接続とを持たない場合はＮＯと判断されてステップＳ６２に進み選択された処理要素に接続することのできる処理要素を表示し、表示された処理要素の選択を受け付ける画面を表示する。表示された処理要素のいずれかが選択されると、ステップＳ６３にて選択された処理要素の先に続けて接続できる処理要素があれば、続けて接続するか終了するかのいずれかを選択させる画面を表示する。また、続けて接続できる処理要素がなければ、終了を選択させる画面を表示する。そして、処理要素の選択を終了する選択がされたか否かがステップＳ６４にて判断される。ここで、「終了」を選択した場合はステップＳ６５に進むが、続行すると選択した場合はステップＳ６２に戻り、ステップＳ６２ないしステップＳ６４の処理が再度行われて前回選択された処理要素の先に続けて接続できる処理要素の選択処理が行われる。ステップＳ６２ないしステップＳ６４の処理は、先に続けて接続できる処理要素がなくなるまで、あるいは、終了が選択されるまで繰り返し実行される。
【００３８】
また、ステップＳ６１にて選択された処理要素が入力接続と出力接続とを持つと検出された場合はステップＳ６９に分岐して、まず、処理要素の入力に接続できる処理要素を表示して、表示された処理要素の選択を受け付ける画面を表示する。表示された処理要素のいずれかが選択されると、ステップＳ７０にて選択された処理要素の先に続けて接続できる処理要素があれば、続けて接続するか終了するかのいずれかを選択させる画面を表示する。また、続けて接続できる処理要素がなければ、終了を選択させる画面を表示する。そして、処理要素の選択を終了する選択がされたか否かがステップＳ７１にて判断される。ここで、終了すると選択した場合はステップＳ７２に進むが、続行すると選択した場合はステップＳ６９に戻り、ステップＳ６９ないしステップＳ７１の処理が再度行われて前回選択された処理要素の先に続けて接続できる処理要素の選択処理が行われる。ステップＳ６９ないしステップＳ７１の処理は、先に続けて接続できる処理要素がなくなるまで、あるいは、終了が選択されるまで繰り返し実行される。
【００３９】
ステップＳ７１にて終了が選択されたと判断されてステップＳ７２に進むと、ステップＳ６１にて選択された処理要素の出力に接続できる処理要素を表示して、表示された処理要素の選択を受け付ける画面を表示する。表示された処理要素のいずれかが選択されると、ステップＳ７３にて選択された処理要素の先に続けて接続できる処理要素があれば、続けて接続するか終了するかのいずれかを選択させる画面を表示する。また、続けて接続できる処理要素がなければ、終了を選択させる画面を表示する。そして、処理要素の選択を終了する選択がされたか否かがステップＳ７４にて判断される。ここで、終了すると選択した場合はステップＳ６５に進むが、続行すると選択した場合はステップＳ７２に戻り、ステップＳ７２ないしステップＳ７４の処理が再度行われて前回選択された処理要素の先に続けて接続できる処理要素の選択処理が行われる。ステップＳ７２ないしステップＳ７４の処理は、先に続けて接続できる処理要素がなくなるまで、あるいは、終了が選択されるまで繰り返し実行される。
【００４０】
ステップＳ６４あるいはステップＳ７４にて終了が選択されたと判断されてステップＳ６５に進むと、装置テーブルを参照して選択された処理要素毎に該当する処理要素が機能している処理装置の装置名を表示して、表示された装置名のいずれかの選択を受け付ける画面を表示する。表示されたいずれかの装置名が選択されると、選択された装置名の処理装置で機能している処理要素が選択されるようになり、これにより設定された論理接続の接続情報を接続バッファにステップＳ６６で記録する。この場合、連続して選択された論理接続は連続して通信を行うものとして対応付けて接続バッファに記録し、処理要素の入力と出力の接続が連続して選択されたときはそれらの間で通信が行われることを接続バッファに記録する。ステップＳ６６の処理が終了すると、ステップＳ６７にて自動フラグが「１」か否かが判定される。自動フラグは後述するデフォルトバッファの更新を行うか否かを示すフラグであり、自動フラグ「０」はデフォルトバッファの更新を行うことを示しており、自動フラグ「１」はデフォルトバッファの更新を行わないことを示している。各処理装置において電源オン時には、後述するようにデフォルトバッファに記録された接続を自動的に復元する処理が行われることから、ユーザが新たに接続を設定した場合は、その設定された接続を反映するようデフォルトバッファを更新するようにしている。そこで、ステップＳ６７にて自動フラグが「１」と判定された場合はステップＳ６８に分岐して、自動フラグを「０」にセットすることにより、接続選択処理において設定された接続が次回の電源オン時に自動的に復元されるようにしている。ステップＳ６８の処理が終了すると、接続選択処理は終了する。また、ステップＳ６７にて自動フラグが「１」でないと判定された場合は、自動フラグは「０」であることからそのまま接続選択処理は終了する。そして、後述する周期的に起動される接続確立処理が起動された際に、ステップＳ６６において設定された接続情報が記録された接続バッファの接続情報に基づいて接続確立処理が行われて論理接続が確立され、確立された接続情報がカレントバッファに記録されるようになる。
【００４１】
なお、図１０および図１１に示す接続選択処理が行われて処理要素の論理接続の設定が行われた場合に、接続バッファに記録される接続情報の例が図１３に示されている。
図１０に示す接続選択処理は処理装置ＳＹ１において、鍵盤要素ＫＢａの接続から開始され、鍵盤要素ＫＢａと処理装置ＳＹ２の音源要素ＴＧｂとの接続が設定されると共に、音源要素ＴＧｂと処理装置ＳＹ１のスピーカ要素ＳＰａとの接続が設定されることから、図１３に「●ＳＹ１鍵盤の例」として示すように、接続バッファには「出力１→ＳＹ２音源→ＳＹ１スピーカ」の接続情報が記録される。なお、「出力１」はＳＹ１鍵盤の１番目の出力を意味している。
また、図１１に示す接続選択処理は処理装置ＳＹ２において、音源要素ＴＧｂの接続から開始され、音源要素ＴＧｂの入力に処理装置ＳＹ１の鍵盤要素ＫＢａを接続する設定と、音源要素ＴＧｂの出力に処理装置ＳＹ２のスピーカ要素ＳＰｂを接続する設定が行われることから、図１３に「●ＳＹ２音源の例」として示すように、接続バッファには「入力１←ＳＹ１鍵盤」「入力１→出力１」「出力１→ＳＹ２スピーカ」の接続情報が記録される。ここで、「入力１←ＳＹ１鍵盤」「入力１→出力１」「出力１→ＳＹ２スピーカ」はＳＹ１鍵盤から入力されたＭＩＤＩデータ（入力１）の、自機（ＳＹ２）の音源要素ＴＧｂでの処理結果（出力１）を、ＳＹ２スピーカへ出力する（対応付ける)ことを表わす接続情報である。
【００４２】
次に、接続確立処理のフローチャートを図１４に示す。接続確立処理は所定時間間隔で周期的に起動される。なお、接続確立処理において操作している処理装置と接続相手の処理装置間で通信される制御データは、あて先の処理装置のＩＰアドレスと予め定められている制御データ用のポート番号とを用いて通信される。
接続確立処理が起動されると、ステップＳ８０にて接続バッファの記録内容から未処理の接続があるか否かが判定される。ここで、未処理の接続がないと判定された場合は接続確立処理はそのまま終了する。また、ステップＳ８０にて未処理の接続があると判定された場合はステップＳ８１に進み未処理の接続の一つを接続確立の対象とする。ここで確立する接続とは実体データの通信を行うためのポートの設定を意味している。次いで、ステップＳ８２にてカレントバッファが参照され、対象とする接続が既に確立しているか否かを検出する。ここで、対象とする接続が既に確立されていると検出された場合は、新たな接続の確立を行わずステップＳ８３に進む。ステップＳ８３では、対象とする接続の先の接続があるか否かが検出され、先の接続がないと検出された場合は接続確立処理はそのまま終了する。また、ステップＳ８３にて先の接続があると検出された場合はステップＳ８４に進み接続指示を含むデータ部を作成する。この場合、対応付けがある場合は対応付けを指示する接続要求をデータ部に含める。接続指示は、接続相手に接続させる先の相手の指示とされ、接続相手の先に複数の接続が連続して設定されている場合にはそれらすべての情報を含めるようにする。
【００４３】
また、ステップＳ８２にてカレントバッファに対象とする接続の記録がされておらず、対象とする接続が未だ確立していないと検出された場合はステップＳ８５に分岐し、接続要求と接続指示を含むデータ部を作成する。接続要求は、接続を確立する要求であり、対応付けがある場合は対応付けも指示する。接続指示は、接続相手に接続させる先の相手の指示とされ、接続相手の先に複数の接続が連続して設定されている場合にはそれらすべての情報を含めるようにする。ステップＳ８４あるいはステップＳ８５においてデータ部が作成されると、ステップＳ８６にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ８４あるいはステップＳ８５において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、対象とする接続先の処理要素が機能している処理装置のＭＡＣアドレス（物理装置ＩＤ）が、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。
【００４４】
接続確立の操作をしている処理装置からネットワーク上に送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ９０）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。この結果、接続確立の操作をしている処理装置から送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致する接続相手の処理要素が機能している処理装置で受信されて、受信処理が行われる（ステップＳ１００）。受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、ステップＳ１０１にて負荷分散処理が行われる。負荷分散処理は後述するが、要求された接続先のクライアントが新たな接続を確立できない状態にある場合に、要求された接続を同じ処理要素をもつ他のクライアントに変更することができる処理である。負荷分散処理が終了すると、ステップＳ１０２にて取得されたデータ部を解釈して要求された接続を確立する。また、対応付けの指示がある場合は対応付けも行われ、確立した接続の接続情報および対応付けがカレントバッファに記録される。接続確立では、装置テーブルを参照して対象とされる接続の接続相手の処理要素が機能している処理装置のＩＰアドレスと、当該処理要素の論理装置ＩＤ（ポート番号）が取得される。このＩＰアドレスとポート番号とにより処理装置における接続相手の処理要素を特定することができることから、ＩＰアドレスとポート番号とを設定することにより対象とする接続を確立することができる。ステップＳ１０２の処理が終了するとステップＳ１０３に進み接続指示があるか否かが判定される。ここで、接続指示があると判定された場合は接続指示で指示された他の処理装置との接続を自己の接続バッファに記録してステップＳ１０５に進む。
【００４５】
また、ステップＳ１０３にてデータ部に接続指示があると検出されない場合は、ステップＳ１０５に分岐する。ステップＳ１０５では接続完了を含むデータ部が作成され、ステップＳ１０６にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ１０５において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、操作している処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。接続相手である処理装置からネットワーク上に送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ９１）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。この結果、接続相手の処理装置から送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致する接続確立処理が実行されている処理装置で受信されて、受信処理が行われる（ステップＳ８７）。
【００４６】
受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、ステップＳ８８にて取得されたデータ部を解釈して接続完了の返答（ＡＣＫ）がされた接続を確立する。また、対応付けがある場合は対応付けも行われ、確立した接続の接続情報および対応付けがカレントバッファに記録される。接続確立では、装置テーブルを参照して対象とされる接続の接続相手の処理要素が機能している処理装置のＩＰアドレスと、当該処理要素の論理装置ＩＤ（ポート番号）が取得される。このＩＰアドレスとポート番号とにより処理装置における接続相手の処理要素を特定することができることから、ＩＰアドレスとポート番号とを設定することにより対象とする接続を確立することができる。ステップＳ８８の処理が終了すると接続確立処理は終了する。
なお、接続相手の処理装置の接続バッファに記録された接続情報に基づく接続確立は、接続相手の処理装置において接続確立処理が起動された際に、接続相手の処理装置が操作している処理装置となって、図１４に示す接続確立処理が実行されることにより確立される。
【００４７】
上述したように、接続確立処理が実行されることにより確立された接続の接続情報と対応付けがカレントバッファに記録される。そこで、カレントバッファに記録される接続情報と対応付けの例を図１５に示す。この場合、カレントバッファには自処理装置において現在確立している実体データを通信するための接続が記録される。
図１５に示す接続情報と対応付けは、図１３に示すように記録された接続バッファの接続情報に基づいて接続確立処理を行った場合とされ、処理装置ＳＹ１のカレントバッファには処理装置ＳＹ１で機能している鍵盤要素ＫＢａ、音源要素ＴＧａおよびスピーカ要素ＳＰａのそれぞれの接続情報と対応付けが記録される。この場合、鍵盤要素ＫＢａの接続情報と対応付けは「ポート１：出力→ＳＹ２音源」とされ、鍵盤要素ＫＢａから出力されるＭＩＤＩデータを処理装置ＳＹ１のポート１からＳＹ２音源へ出力する接続情報とされる。また、音源要素ＴＧａは接続されていないことから接続情報と対応付けはなく、スピーカ要素ＳＰａの接続情報と対応付けは「ポート２：入力←ＳＹ２音源」とされ、処理装置ＳＹ２の音源要素ＴＧｂから出力されるオーディオデータを処理装置ＳＹ１のポート２で受信することによりスピーカ要素ＳＰａに入力される接続情報とされる。
【００４８】
また、処理装置ＳＹ２のカレントバッファには処理装置ＳＹ２で機能している音源要素ＴＧｂとスピーカ要素ＳＰｂのそれぞれの接続情報と対応付けが記録される。この場合、音源要素ＴＧｂの接続情報と対応付けは「ポート１：入力←ＳＹ１鍵盤」、「ポート１→ポート２」、「ポート１→ポート３」、「ポート２：出力→ＳＹ１スピーカ」、「ポート３：出力→ＳＹ２スピーカ」とされている。「ポート１：入力←ＳＹ１鍵盤」は、処理装置ＳＹ１の鍵盤要素ＫＢａから出力されるＭＩＤＩデータを処理装置ＳＹ２のポート１で受信することにより、音源要素ＴＧｂへ入力する接続情報である。「ポート１→ポート２」、「ポート１→ポート３」は、処理装置ＳＹ１の鍵盤要素ＫＢａから入力されたＭＩＤＩデータの音源要素ＴＧｂでの処理結果であるオーディオデータをポート２およびポート３から出力する接続情報である。「ポート２：出力→ＳＹ１スピーカ」、「ポート３：出力→ＳＹ２スピーカ」は、音源要素ＴＧｂから出力されるオーディオデータをポート２から処理装置ＳＹ１のスピーカ要素ＳＰａへ出力すること、および、音源要素ＴＧｂから出力されるオーディオデータをポート３から処理装置ＳＹ２のスピーカ要素ＳＰｂへ出力する接続情報である。スピーカ要素ＳＰｂの接続情報と対応付けは「ポート３：入力←ＳＹ２音源」とされ、処理装置ＳＹ２の音源要素ＴＧｂから出力されるオーディオデータをポート３で受信することによりスピーカ要素ＳＰｂに入力される接続情報と対応付けとされる。
【００４９】
次に、図１４に示す接続確立処理のステップＳ１０１において実行される負荷分散処理のフローチャートを図１６および図１７に示す。この場合、接続の確立を開始している（操作している）処理装置自身が負荷分散処理を行うことはなく、外部から接続相手としてアクセスされた接続相手の処理装置において負荷分散処理が行われる。なお、負荷分散処理において操作している処理装置と接続相手の処理装置間で通信される制御データは、あて先の処理装置のＩＰアドレスと予め定められている制御データ用のポート番号とを用いて通信される。
負荷分散処理が起動されると、ステップＳ２００にて図３に示す装置テーブルにおける「負荷分散対象」の情報をみて負荷分散の実行を判断する必要があるか否かを判断する。すなわち、接続相手の処理装置における接続を確立する処理要素の「負荷分散対象」の欄に［○］が付されていれば負荷分散の実行を判断する必要があると判断してステップＳ２０１へ進み、［×］が付されていれば負荷分散の実行を判断する必要がないと判断して接続確立処理のステップＳ１０２にリターンされる。
【００５０】
ステップＳ２０１では、自機の処理装置におけるＣＰＵ使用率が所定値を超えていると処理に時間遅れが生じるおそれがあることから負荷分散を行うと判断される。この場合、ソフトウェアではなくハードウェアで構成されている音源要素やミキサ要素やエフェクト要素は除外される。ここで、自機のＣＰＵ使用率が所定値を超えておらず負荷分散を行わないと判断された場合は、接続確立処理のステップＳ１０２にリターンされ、自機のＣＰＵ使用率が所定値を超えており負荷分散を行うと判断された場合はステップＳ２０２に進む。ステップＳ２０２では、図３に示す装置テーブルを参照して同じ処理要素が機能しているクライアント（処理装置）を全て抽出し、ステップＳ２０３にて抽出したクライアントを１つずつ順に対象とするよう抽出した内の１つの処理装置を対象とする。次いで、ステップＳ２０４にて対象とした処理装置に、新たな接続を追加することができるかを問い合わせるデータ部が作成され、ステップＳ２０５にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ２０４において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、対象の処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。接続相手の処理装置からネットワーク上に送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ２１０）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。この結果、接続相手の処理装置から送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致する対象の処理装置で受信されて、受信処理が行われる（ステップＳ２２０）。
【００５１】
受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、ステップＳ２２１にて取得されたデータ部を解釈して新たな接続が追加できるかを判断する。ここで、対象とする処理装置においてＣＰＵの使用率が高くなっており新たな接続を追加することができないと判断された場合は、ステップＳ２２３に進み新たな接続を追加できないことを示すデータ部が作成され、ステップＳ２２４にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ２２３において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、接続相手の処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、上記したと同様にして線路決定処理（Ｓ２１１）が行われて接続相手の処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ２０６）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈されて新たな接続を追加できないことから、ステップＳ２０７にて他に問い合わせるクライアント（処理装置）があるか否かが判断される。ここで、ステップＳ２０２にて複数のクライアントが抽出されており、問い合わせていないクライアントがあると判断された場合は、ステップＳ２０３に戻りステップＳ２０３ないしステップＳ２０７の処理が問い合わせていないクライアントがなくなるまで繰り返し行われる。また、ステップＳ２０７にて問い合わせていないクライアントがないと判断された場合は図１７に示すＢ以降の処理に移行する。
【００５２】
図１７に示すＢ以降の処理に移行すると、ステップＳ２３０にて接続が確立不可能であることを示すデータ部が作成されて、ステップＳ２３１にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ２３０において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、操作している処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、上記したと同様にして線路決定処理（Ｓ２４０）が行われて操作している処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ２５０）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈されて接続が確立不可能であることから、ステップＳ２５１にて接続が確立が不可能である旨の表示を行って負荷分散処理を終了させると共に接続確立処理を終了させる。
【００５３】
また、ステップＳ２２２にて対象とする処理装置においてＣＰＵの使用率が低くなっており新たな接続を追加できると判断された場合は、ステップＳ２２５に分岐し新たな接続を追加できることを示すデータ部が作成されて、ステップＳ２２６にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ２２５において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、接続相手の処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、上記したと同様にして線路決定処理（Ｓ２１２）が行われて接続相手の処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ２０８）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈されて新たな接続を追加できるとされ、図１７に示すＡ以降の処理に移行する。
【００５４】
図１７に示すＡ以降の処理に移行すると、ステップＳ２３２にて接続相手を、対象のクライアント（処理装置）へ変更することを示すデータ部が作成されて、ステップＳ２３３にてデータ部を送信する送信処理が行われる。送信処理では、ステップＳ２３２において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、操作している処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、上記したと同様にして線路決定処理（Ｓ２４１）が行われて操作している処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ２５２）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈されて接続相手を対象のクライアントへ変更することから、ステップＳ２５３にて接続相手を対象のクライアントへ変更するよう接続バッファを書き換える。そして、負荷分散処理を終了させると共に接続確立処理を終了させる。書き換えられた接続バッファにおける接続相手を対象のクライアントへ変更する接続設定に基づく接続確立は、操作している処理装置において次回以降に接続確立処理が起動されて、その接続設定が接続の対象とされた際に確立する処理が実行される。
このように、負荷分散処理において負荷分散を行うと判断された場合は、負荷分散できる場合であってもできない場合であっても負荷分散処理が終了された際に、接続確立処理はステップＳ１０２以降の処理を行うことなく終了することになる。
【００５５】
ところで、上記説明した接続選択処理はＳＶ（サーバ）１１において実行することもできる。ＳＶ（サーバ）１１で実行される接続選択処理のフローチャートを図１８に示す。なお、ＳＶ（サーバ）１１と基点とされる処理装置間で通信される制御データは、あて先の処理装置のＩＰアドレスと予め定められている制御データ用のポート番号とを用いて通信される。
ＳＶ（サーバ）１１において接続選択処理が起動されると、ステップＳ１２０にて装置テーブルを参照し、内部ネットワーク上の全処理装置を表示して、接続の基点とする処理装置の選択を受け付ける。ここで、接続の基点とする処理装置が選択されたことが検出されると、ステップＳ１２１にてＳＶ（サーバ）１１は選択された処理装置を基点とする接続の選択処理を実行し、接続の選択処理を行うことにより設定された内部ネットワーク上の全処理装置の接続内容をＳＶ（サーバ）１１に記憶する。次いで、ステップＳ１２２にて接続の選択処理を行うことにより設定された接続内容と、接続の基点とした処理装置へ接続内容の接続を確立することを指示する接続確立指示とを含むデータ部を作成する。
【００５６】
次いで、ステップＳ１２３にて送信処理が行われる。送信処理では、ステップＳ１２２において作成されたデータ部が送信データとされて図２に示すように最終的にデータ部がカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。この場合、基点とされる処理装置のＭＡＣアドレス（物理装置ＩＤ）が、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。ＳＶ（サーバ）１１からネットワーク上に送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ１３０）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。この結果、ＳＶ（サーバ）１１から送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致する基点として選択された処理装置で受信されて、受信処理が行われる（ステップＳ１４０）。受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、ステップＳ１４１にて取得されたデータ部を解釈して接続確立指示された接続内容を接続バッファへ記録し、接続選択処理は終了する。
なお、基点の処理装置の接続バッファに記録された接続情報に基づく接続確立は、基点の処理装置において接続確立処理が起動された際に、基点の処理装置が操作している処理装置となって、図１４に示す接続確立処理が実行されることにより確立される。
【００５７】
次に、音源要素において音色を変更する際に実行されるボイス変更処理のフローチャートを図１９に示す。ボイス変更処理は、所定の間隔で周期的に起動される。ボイス変更処理は、要求されるボイスファイルが自機の処理装置にない場合に、ネットワーク上から要求されたボイスファイルを提供することができる処理である。
ボイス変更処理が起動されると、ステップＳ３００にてボイス変更要求（プログラムチェンジ）が検出されたか否かが判断される。ここで、音色を変更する操作が行われたりネットワーク上からボイス変更の要求が行われてボイス変更要求が検出された場合はステップＳ３０１へ進み、ボイス変更要求が検出されない場合はそのままボイス変更処理は終了する。ステップＳ３０１では、要求されたボイスファイルがボイスメモリ内にあるか否かが判断される。この場合、ボイスメモリには複数のボイスファイルが記録されていて  ボイスファイルごとに固有の識別情報が記録されている。ボイスファイルには音色データが記録されており、音色データは音色を合成できるＰＣＭ、ＦＭ、物理モデルなどの形式の音色データとされている。ステップＳ３０１ではボイスメモリ内の識別情報の中に要求されたボイスの識別情報と同じ識別情報があるか否かが判断される。ここで、要求されたボイスファイルがボイスメモリ内にあると判断された場合は、ステップＳ３０２に進んでボイスメモリから要求されたボイスファイルを取り出し、取り出したボイスファイルからステップＳ３０３にて音色データを取り出す。そして、取り出した音色データをステップＳ３０４にて操作している処理装置における音源要素に設定してボイス変更処理は終了する。設定とは、例えばＭＩＤＩデータを受信したときにＰＣＭデータを生成できるように準備することである。
【００５８】
また、ステップＳ３０１にて要求されたボイスファイルがボイスメモリ内にないと判断された場合は、ステップＳ３０５に分岐してネットワーク上に要求されたボイスファイルを提供できる処理装置があるか否かが判断される。ここでは、図３に示す装置テーブル中の論理装置ＩＤごとに、「ボイスファイル提供」の欄を参照することによりボイスファイルを提供できる処理装置を検出する。あるいは、装置テーブルに音源の種類も登録しておき、ボイスファイルを提供できる処理装置を探す場合に、音源の種類まで含めて検索してい抽出するようにしてもよい。ここで、ネットワーク上に要求されたボイスファイルを提供できる処理装置があると判断された場合は、ステップＳ３０６に進み該当する処理装置を抽出して抽出した処理装置のリストを作成する。次いで、ステップＳ３０７にてリストの内の１つの処理装置を対象として、ステップＳ３０８にてボイスファイル要求と識別情報（プログラムチェンジ番号）とＰＣＭ、ＦＭ、物理モデルなどの音源の種類を含むデータ部を作成する。このデータ部はステップＳ３０９のネットワーク処理により問い合わせ相手の処理装置に送られるが、このネットワーク処理のフローチャートを図２０に示す。
【００５９】
図２０に示すようにネットワーク処理では、ステップＳ３０８において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される送信処理がステップＳ３２０で行われる。この場合、問い合わせ相手の処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、線路決定処理（Ｓ３３０）が行われて問い合わせ相手の処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ３４０）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈されて要求されたボイスファイルが自機の処理装置内にあるか否かが判断される。ここで、識別情報が一致すると共に音源の種類が一致するボイスファイルがあると判断された場合はそのボイスファイルをステップＳ３４２にてボイスメモリから取り出し、取り出したボイスファイルと要求されたボイスファイルがあったことを示すデータ部をステップＳ３４３で作成する。また、ステップＳ３４１にて要求されたボイスファイルがないと判断された場合は、ステップＳ３４４にて要求されたボイスファイルがなかったことを示すデータ部を作成する。そして、ステップＳ３４３で作成されたデータ部あるいはステップＳ３４４で作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される送信処理がステップＳ３４５で行われる。この場合、操作している処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、線路決定処理（Ｓ３３１）が行われて操作している処理装置においてＭＡＣフレームが受信されて受信処理（Ｓ３２１）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈される。以上がステップＳ３０９で実行されるネットワーク処理である。
【００６０】
ステップＳ３０９のネットワーク処理が終了すると、ステップＳ３１０にて解釈されたデータ部にボイスファイルがあるか否かが判断される。ここで、データ部において要求されたボイスファイルがあったことが示されており、要求されたボイスファイルがある場合は、ステップＳ３１３に分岐してボイスファイルが取り出されてステップＳ３０３、ステップＳ３０４の処理が行われ、ボイスファイルから音色データを取り出して、その音色データを音源に設定する処理が行われる。また、データ部において要求されたボイスファイルがなかったことが示されており、要求されたボイスファイルがない場合は、ステップＳ３１１に進み、まだ問い合わせていない処理装置があるか否かが判断される。ここで、問い合わせていない処理装置があると判断された場合は、ステップＳ３０７に戻りステップＳ３０７ないしステップＳ３１１の処理が再度行われて、要求されたボイスファイルを取得できるようにする。この処理はステップＳ３０６で抽出した処理装置の１つ１つについて順番に最後まで処理が実行される。そして、ステップＳ３１１にて問い合わせていない処理装置がないと判断された場合は、ステップＳ３１２に進んで要求されたボイスファイルがなかった旨のメッセージを表示部に表示してボイス変更処理は終了する。
【００６１】
ところで、本発明にかかる楽音発生システムにおいては、各処理装置上で行われる各種の設定を不揮発性のデフォルトバッファへ順次記録しておいて、次回の電源オン時には、記録されている設定（前回の電源オフ前の最新の設定）を読み出して自動的に復元するようにしている。そこで、電源オン時に実行される自動設定処理のフローチャートを図２１に示す。
内部ネットワークに接続されている処理装置の電源が投入され新たに処理装置が接続（ログイン）されると、前記したように図６に示すネットワーク接続処理が実行される。そして、ネットワーク接続処理が終了すると引き続いて自動設定処理が起動される。自動設定処理が起動されると、ステップＳ３５０にて新クライアントとなった処理装置のデフォルトバッファから接続対象とされている処理要素の一つが読み出される。次いで、読み出された処理要素がネットワーク上にあるか否かがステップＳ３５１にて判断される。ここで、ネットワーク接続処理においてＳＶ（サーバ）１１から取得した装置テーブルを参照して読み出された処理要素がネットワーク上にあると判断された場合は、ステップＳ３５２に進んで当該処理要素が利用できるかを問い合わせるデータ部を作成する。問い合わせは、当該処理要素の入力側と出力側の必要なすべてに対して行う。
【００６２】
そして、ステップＳ３５２で作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成され、内部ネットワーク上に送信される送信処理がステップＳ３５３で行われる。この場合、接続対象の処理要素が機能している処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、線路決定処理（Ｓ３７０）が行われて接続対象の処理要素が機能している処理装置においてＭＡＣフレームが受信され、接続対象の処理要素において受信処理（Ｓ３８０）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が処理要素が利用できるかの問い合わせであると解釈される。そこで、ステップＳ３８１にて処理要素が利用できるか否かが判断される。ここで、利用できるかの問い合わせがされた処理要素において、入力側と出力側の問い合わせのすべてについて利用できるかを判断する。ここで、カレントバッファの記録内容を参照して問い合わせのあった処理要素の入力側と出力側における接続を検出し、未だ他の処理要素と接続されていないと検出された場合は問い合わせのあった処理要素が利用できると判断されてステップＳ３８２に進む。ステップＳ３８２では、問い合わせのあった処理要素が利用できることを示すデータ部を作成する。また、既に他の処理要素と接続されていると検出された場合は、ステップＳ３８１にて問い合わせのあった処理要素が利用できないと判断されてステップＳ３８３に分岐する。ステップＳ３８３では、問い合わせのあった処理要素が利用できないことを示すデータ部を作成する。
【００６３】
そして、ステップＳ３８２で作成されたデータ部あるいはステップＳ３８３で作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成され、内部ネットワーク上に送信される送信処理がステップＳ３８４で行われる。この場合、新クライアントである処理装置のＭＡＣアドレスが、ＭＡＣフレームのＭＡＣヘッダにあて先ＭＡＣアドレスとして設定される。そして、線路決定処理（Ｓ３７１）が行われて新クライアントの処理装置においてＭＡＣフレームが受信され、接続対象の処理要素において受信処理（Ｓ３５４）が行われる。受信処理では、ＭＡＣフレームからデータ部が取得され、取得されたデータ部が解釈される。次いで、ステップＳ３５５にて問い合わせた処理要素が利用できるか否かが判断されるが、受信されたデータ部を解釈してデータ部が利用できることを示すデータ部であった場合は、利用できると判断されてステップＳ３５７へ進む。ステップＳ３５７ではデフォルトバッファから読み出していない接続対象の処理要素があるか否かが判断される。
【００６４】
ところで、前記したステップＳ３５１にて装置テーブルを参照して読み出された処理要素がネットワーク上にないと判断された場合は、ステップＳ３５６に分岐してデフォルトの接続はしなかった旨の表示を表示部に行い、自動設定処理は終了する。この場合、処理要素が装置テーブルに登録されていない場合は、「登録されていません」とのメッセージを表示しても良い。また、ステップＳ３５５にて受信されたデータ部を解釈してデータ部が利用できないことを示すデータ部であった場合は、利用できないと判断されてステップＳ３５６に分岐しデフォルトの接続はしなかった旨の表示を表示部に行い、自動設定処理は終了する。この場合、処理要素が他に接続されている場合は、「他に利用されております」とのメッセージを表示しても良い。
【００６５】
ステップＳ３５７では、デフォルトバッファから読み出していない接続対象の処理要素が残っていると判断された場合は、ステップＳ３５０へ戻りステップＳ３５０ないしステップＳ３５７の上記した処理が、読み出していない接続対象の処理要素がなくなったとステップＳ３５７で判断されるまで繰り返し行われる。そして、ステップＳ３５７において読み出していない接続対象の処理要素がなくなったと判断されると、ステップＳ３５８へ進んで利用できるとされた処理要素の接続の情報を接続バッファに書き込み、ステップＳ３５９へ進む。ステップＳ３５９では自動フラグが「１」にセットされて自動設定処理は終了する。自動フラグ「１」は、前述したようにデフォルトバッファの更新を行なわないことを示すフラグであるが、上記したようにデフォルトバッファに記録されている接続を復元することを示すフラグでもある。また、自動設定処理においてはデフォルトバッファの接続が一つでもできない場合は、デフォルトバッファの全ての接続を行わないように、デフォルトバッファの接続の情報を接続バッファに書き込まないようにしている。この場合、自動フラグは「０」の状態を維持するようになり、自動フラグ「０」はデフォルトバッファに記録されている接続を行わないことを示すフラグでもある。
なお、ネットワーク接続時にデフォルトバッファに基づく接続を行うか否かを、ユーザが選択できるようにしてもよい。
【００６６】
そして、上述した周期的に起動される図１４に示す接続確立処理が実行されて終了した際に、引き続いて実行されるフラグ処理のフローチャートを図２２に示す。
フラグ処理が起動されると、ステップS３９０にて自動フラグが「０」か否かが判断される。ここで、デフォルトバッファの接続が更新されなかった場合および接続選択処理が行われた場合は自動フラグが「０」になっていると判断され、ステップＳ３９１に進んでカレントバッファに接続情報が記録されているか否かが判断される。ここで、デフォルトバッファの接続が復元されておらず、手動で設定された接続や外部から要求されて設定された接続もなされていない場合は、カレントバッファに接続情報が記録されておらずカレントバッファが空と判断されてそのままフラグ処理は終了する。また、手動で設定された接続や外部から要求されて設定された接続があり、カレントバッファに接続情報が記録されている場合は、ステップＳ３９２にてカレントバッファに記録されている接続情報をデフォルトバッファに記録してフラグ処理は終了する。これにより、手動で設定された接続や外部から要求されて設定された接続の接続情報が反映されているカレントバッファの接続情報で、デフォルトバッファが更新されるようになる。また、デフォルトバッファの接続が復元されるだけで、手動で設定された接続や外部から要求されて設定された接続がなされていない場合は、ステップＳ３９０において自動フラグが「１」と判断され、デフォルトバッファの更新を行うことなくそのままフラグ処理は終了する。
これにより、新クライアントが内部ネットワークに接続された際に接続対象の処理要素の全てが利用できる場合は、前回の電源オフ前の完全な接続状態に復元されることになる。また、接続対象の処理要素の少なくとも一部を利用することができず、前回の電源オフ前の接続状態が復元されない場合にログオフしても、その不完全な接続状態はデフォルトバッファに記録されないことから、次回ログオン時に不完全な接続状態が復元されることを防止することができるようになる。
【００６７】
ところで、図６に示すネットワーク接続処理、図７に示すネットワーク切断処理、図１０ないし図１２に示す接続選択処理、図１４ないし図１６に示す接続確立処理と負荷分散処理、図１８に示すＳＶ（サーバ）１１において実行される接続選択処理、図１９および図２０に示すボイス変更処理、図２１に示す自動設定処理、図２２に示すフラグ処理を、これらの処理を行う処理装置においてブラウザソフトウェアを立ち上げてブラウザを利用して実行することができる。ブラウザでは、ＨＴＴＰ（HyperText Transfer Protocol）よるファイル転送を行え、ＨＴＭＬ（Hyper Text Markup Language）で記述されたハイパーテキストを解読し表示することができる。この場合、ブラウザに必要とする設定画面や選択画面を表示させて、ユーザが画面上で設定や選択を行えるようになる。そして、制御データの通信はＨＴＴＰに用意されているファイル要求を行える”ＧＥＴ”、任意のデータを送る”ＰＯＳＴ”やファイルの更新を行える”ＰＵＴ”等のリクエスト・メソッドを用いて行うことができる。なお、ＨＴＴＰで使用されるポート番号は一般に８０番とされるが、これに限るものではない。
【００６８】
次に、各処理要素の説明を行う。まず、音源要素の機能ブロック図を図２３に示す。図示するように音源要素ＴＧは、受信ポートからＭＩＤＩデータを受信して処理順に記録する受信バッファ１００と、音源要素ＴＧの内臓ＭＩＤＩクロックのタイミングにあわせて、受信バッファ１００から処理すべきＭＩＤＩデータを順次に読み出して、そのＭＩＤＩデータを楽音合成部１０２に供給する読出部１０１と、供給されたＭＩＤＩデータのノートデータで音高を決定すると共に、プログラムチェンジデータで音色を決定し、さらに、コントロールチェンジデータで音量やエフェクト量などの制御量を決定して、決定された情報でＰＣＭデータの楽音を生成する楽音合成部１０２と、楽音合成部１０２で生成されたＰＣＭデータを発生順に記録する送信バッファ１０３から構成されている。受信バッファ１００は音源要素の受信ポートから実体データ（ＭＩＤＩデータ）を受信し、送信バッファ１０３は音源要素の送信ポートから実体データ（ＰＣＭデータ）を送信する。なお、受信ポートのポート番号は図３に示される装置テーブルに記録されている該当する音源要素の論理装置ＩＤであり、送信ポートは送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。また、送信バッファ１０３から送信されるＰＣＭデータはＭＰ３データとして圧縮して送信するようにしてもよい。
【００６９】
次に、鍵盤要素の機能ブロック図を図２４に示す。図示するように鍵盤要素ＫＢは、ハードウェアの操作子１１１と、操作子１１１の操作を検出して、発生されたＭＩＤＩデータのタイミングデータを内蔵ＭＩＤＩクロックに基づいて発生する操作検出部１１２と、操作検出部１１２からのＭＩＤＩデータとタイミングデータを組にして発生順に記録する送信バッファ１１３とから構成されている。送信バッファ１１３は鍵盤要素の送信ポートからＭＩＤＩデータである実体データを送信する。なお、送信ポートは送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
次に、スピーカ要素の機能ブロック図を図２５に示す。図示するようにスピーカ要素ＳＰは、受信ポートから受信したＰＣＭデータを処理順に記録する受信バッファ１２１と、サンプリング周波数ｆｓのタイミングにあわせてＰＣＭデータを１サンプルずつ受信バッファ１２１から取り出してＤＡ変換部１２３へ供給する読出部１２２と、読出部１２２から供給されたＰＣＭデータをアナログのオーディオ信号に変換するＤＡ変換部１２３と、ＤＡ変換部１２３からのオーディオ信号を増幅して放音するスピーカを備える出力部１２４とから構成されている。受信バッファ１２１はスピーカ要素の受信ポートから実体データ（ＰＣＭデータ）を受信する。なお、受信ポートのポート番号は図３に示される装置テーブルに記録されている該当するスピーカ要素の論理装置ＩＤである。
【００７０】
次に、ＤＳＰユニットの機能ブロック図を図２６に示す。ＤＳＰユニットＤＵは処理装置であり機能している処理要素を切り替えられるようにされている。ＤＳＰユニットＤＵは、処理要素を実現するためのＤＳＰが実行する処理要素毎のマイクロプログラムとパラメータが記録されている処理装置記憶部１３３と、切替指示を検出して切替部１３１へ設定すべき処理要素の情報を含む切り替えを指示する切替検出部１３２と、切替指示で指示された処理要素のマイクロプログラムとパラメータを処理装置記憶部１３３から読み出して複数のＤＳＰを有する信号処理部１３４へ設定する切替部１３１と、設定されたマイクロプログラムとパラメータに基づいて信号処理を行う信号処理部１３４とから構成されている。信号処理部１３４が信号処理を行うことにより、ＤＳＰユニットＤＵはマイクロプログラムに対応する処理要素として機能するようになる。すなわち、ＤＳＰユニットＤＵは、図２３ないし図２５に示す機能ブロックの処理要素のいずれかとしてとして機能することができる。なお、処理要素が切り替えられた際には、カレントバッファから変更前の処理要素の接続を切断するようにかかる接続の情報を削除する。
【００７１】
ＤＳＰユニットＤＵにおいて処理要素が切り替えられた際に、切り替えられたことを通知する通知処理のフローチャートを図２７に示す。
ＤＳＰユニットＤＵにおいて処理要素を切り替える切替指示が検出されると通知処理が起動される（ステップＳ１５０）。次いで、ステップＳ１５１にて切替指示されたマイクロプログラムとパラメータを設定して処理要素を機能させる。さらに、ステップＳ１５２にて自機情報と変更要求を含むデータ部を作成する。この場合の自機情報は、論理装置ＩＤ、ＩＰアドレス（ＩＰアドレスは内部ネットワークにログインした際にＤＨＣＰサーバから割り当てられている）、物理装置ＩＤ、装置名、信号処理部１３４に設定した処理要素名とその処理ＩＤの情報であり、変更要求とは、ＳＶ（サーバ）１１にある装置テーブルのデータを添付した自機情報で書き換える要求とされる。次いで、ステップＳ１５３にて送信処理が行われる。送信処理では、ステップＳ１５２において作成されたデータ部が送信データとされて図２に示すように最終的にＭＡＣフレームが生成されて、内部ネットワーク上に送信される。ＭＡＣフレームのＭＡＣヘッダにはあて先ＭＡＣアドレスとしてＳＶ（サーバ）１１のＭＡＣアドレス（物理装置ＩＤ）が設定される。
【００７２】
ＤＳＰユニットＤＵから送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ１６１）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。これにより、ＤＳＰユニットＤＵから送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致するＳＶ（サーバ）１１で受信されて、受信処理が行われる（ステップＳ１７０）。受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。そして、取得されたデータ部を解釈して変更要求があることから変更要求処理を行うと判断する。次いで、ステップＳ１７１にてデータ部におけるＤＳＰユニットＤＵの自機情報で装置テーブルを書き換えて、ステップＳ１７２にて変更後の装置テーブルと変更要求を含むデータ部を作成する。このデータ部は、ステップＳ１７３で送信処理が行われることにより内部ネットワーク上に送信される。この送信処理は、前述したステップＳ１５３の送信処理と同様の処理とされるが、あて先ＭＡＣアドレスにはオール”１”のブロードキャストアドレス（FF-FF-FF-FF-FF-FF）が設定され、あて先ＩＰアドレスもブロードキャストアドレスが設定される。この場合、図３に示す装置テーブルのように内部ネットワークのネットワークアドレスが”１９２．１６８．１１１．０”とされている場合は、ＩＰアドレスのブロードキャストアドレスは”１９２．１６８．１１１．２５５”とされる。
【００７３】
ＳＶ（サーバ）１１からブロードキャストされたＭＡＣフレームは、ハブで受信され経路決定処理が行われる（ステップＳ１６１）。この経路決定処理では、ステップＳ１６０と同様の経路決定処理が行われるが、ブロードキャストアドレスのＭＡＣフレームとされていることから全ての処理装置にＭＡＣフレームが中継されるようになる。ＤＳＰユニットＤＵは、ブロードキャストされたＭＡＣフレームが到来した際にブロードキャストアドレスとされていることからステップＳ１７０と同様のＭＡＣフレームを受信する受信処理を行う（ステップＳ１５４）。次いで、ステップＳ１５５にて受信されたＭＡＣフレームから取り出された装置テーブル情報を内部の記憶手段に記憶することにより装置テーブルを更新し、ＤＳＰユニットにおけるネットワーク接続処理は終了する。また、他のクライアントにおいてはブロードキャストされたＭＡＣフレームが到来した際にブロードキャストアドレスとされていることからステップＳ１７０と同様のＭＡＣフレームを受信する受信処理を行う（ステップＳ１８０）。次いで、ステップＳ１８１にて受信されたＭＡＣフレームから取り出された装置テーブル情報で記憶されている装置テーブルを更新し、他のクライアントにおけるネットワーク接続処理は終了する。
【００７４】
次に、ミキサ要素の機能ブロック図を図２８に示す。図示するようにミキサ要素ＭＸは、受信ポートからＰＣＭデータを受信して処理順に記録する受信チャンネル毎に用意されている受信バッファ１４１と、受信バッファ１４１からサンプリング周波数ｆｓのタイミングにあわせてＰＣＭデータを１サンプルずつ取り出してミックス部１４３へ供給する読出部１４２と、操作子１４４から入力された各種のパラメータの設定にあわせて、受信バッファ１４１から入力されたＰＣＭデータをミキシング（信号処理）するミックス部１４３と、各種パラメータの設定を行う操作子１４４と、ミックス部１４３から出力されるＰＣＭデータを発生順に記録する送信チャンネル毎に用意されている送信バッファ１４５から構成されている。受信バッファ１４１はミキサ要素の受信ポートから実体データ（ＰＣＭデータ）を受信し、送信バッファ１４５はミキサ要素の送信ポートから実体データ（ＰＣＭデータ）を送信する。なお、受信ポートのポート番号は図３に示される装置テーブルに記録されている該当する音源要素の論理装置ＩＤであり、送信ポートは送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００７５】
次に、コンテンツレコーダ要素の機能ブロック図を図２９に示す。コンテンツレコーダ要素ＣＲにおいて通信するデータは、実体データではなく制御データとされ、他の処理要素と通信を行うときは実体データの通信に使うポートではなく制御データ通信用のポートを使用して通信を行う。この場合、コンテンツを要求する処理要素（処理装置）にコンテンツの取得に必要とする画面を表示させて、ユーザが画面上でコンテンツの選択を行えるようにしてもよい。そして、制御データの通信はＨＴＴＰに用意されているファイル要求を行う”ＧＥＴ”のリクエスト・メソッドを用いて行うことができる。
コンテンツレコーダ要素ＣＲにコンテンツを要求する処理要素（処理装置）は、コンテンツ要求とコンテンツデータの識別情報を送信する制御データのデータ部に入れて送信する。コンテンツとは特定の処理要素で使用されるファイル、ソングやスタイルやボイスなどのファイルである。コンテンツレコーダ要素ＣＲは、受信ポートからコンテンツ要求を検出（受信）して、コンテンツ要求とコンテンツデータの識別情報を読出部１５１へ供給する要求検出部１５２と、識別情報に該当するコンテンツデータをコンテンツ記憶部１５３から読み出してコンテンツ送信部１５４へわたす読出部１５１と、複数のコンテンツデータを識別情報と共に記憶しているコンテンツ記憶部１５３と、コンテンツ要求を送信した処理要素（処理装置）へ、読み出したコンテンツデータを送信ポートから送信するコンテンツ送信部１５４から構成されている。なお、受信ポートのポート番号は図３に示される装置テーブルに記録されている該当するコンテンツレコーダ要素ＣＲの論理装置ＩＤであり、送信ポートは送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００７６】
次に、自動伴奏要素の機能ブロック図を図３０に示す。自動伴奏要素ＡＡは、他の処理要素からの伴奏データの要求に応じて、指示された伴奏データを演奏データに基づいて編集し、伴奏データを処理要素に送るようにしている。そして、自動伴奏の要求データは実体データの通信に使うポートではなく制御データ通信用のポートを使用して通信を行う。この場合、伴奏データを要求する処理要素が機能している処理装置において自動伴奏の要求に必要とする画面を表示させて、ユーザが画面上で自動伴奏の選択や伴奏データの送り先の選択を行うようにしてもよい。そして、伴奏データの要求および取得の通信をＨＴＴＰにより行うようにしてもよい。
自動伴奏要素ＡＡは、受信ポート１からＭＩＤＩデータ（演奏データ）を受信して処理順に記録する受信バッファ１６１と、自動伴奏要素ＡＡの内臓ＭＩＤＩクロックのタイミングにあわせて、処理すべきＭＩＤＩデータ（演奏データ）を受信バッファ１６１から取り出す読出部１６２と、読出部１６２で取り出したＭＩＤＩデータ（演奏データ）のうちのノートオンイベントとノートオフイベントを使用して演奏データにおける和音を検出する和音検出部１６３を備えている。
【００７７】
また、自動伴奏要素ＡＡに自動伴奏を要求する処理要素（処理装置）は、伴奏データ要求と伴奏データの識別情報を送信する制御データのデータ部に入れて送信する。そして、自動伴奏要素ＡＡは、受信ポート２から伴奏データ要求を検出（受信）した際に、受信された伴奏データ要求と自動伴奏の識別情報を読出部１６４へわたす要求検出部１６５と、識別情報に該当する伴奏データを伴奏データ記憶部１６６から読み出して伴奏データバッファ１６７へわたす読出部１６４と、複数の伴奏データを識別情報と共に記憶している伴奏データ記憶部１６６と、伴奏データ記憶部１６６から読み出した伴奏データを記録する伴奏データバッファ１６７を備えている。なお、伴奏データとは伴奏を再生するためのＭＩＤＩデータを処理順に記録したファイルとされている。
【００７８】
和音検出部１６３は検出した和音データと供給されたＭＩＤＩデータ（演奏データ）とを自動伴奏部１６８にわたし、伴奏データバッファ１６７はＭＩＤＩデータ（伴奏データ）を自動伴奏部１６８に渡す。自動伴奏部１６８は、自動伴奏要素ＡＡの内臓ＭＩＤＩクロックのタイミングにあわせて、処理すべきＭＩＤＩデータ（伴奏データ）を伴奏データバッファ１６７から順に取り出す。そして、取り出したＭＩＤＩデータ（伴奏データ）がノートオンであれば和音検出部１６３から渡されたその時点の和音データでノートナンバを変更し、変更後もしくは取り出したＭＩＤＩデータ（伴奏データ）と和音検出部１６３より受け取ったＭＩＤＩデータ（演奏データ）を、各データの処理タイミングを表すタイミングデータとともに、送信バッファ１６９へわたしている。送信バッファ１６９では、自動伴奏部１６８から送られたＭＩＤＩデータとタイミングデータを処理順に記録し、伴奏データ要求に含まれているあて先のＩＰアドレスとポート番号で特定される処理要素に送信ポートから送信している。なお、受信ポート１は実体データ（ＭＩＤＩデータ）の受信ポートであり、受信ポート１のポート番号は図３に示される装置テーブルに記録されている該当する自動伴奏要素ＡＡの論理装置ＩＤとされ、受信ポート２のポート番号は制御データ用に予め割り当てられたポート番号（ＨＴＴＰの場合は一般に８０番とされるが、これに限られない）とされ、送信ポートは実体データ（ＭＩＤＩデータ）の送信ポートであり送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００７９】
次に、ＭＩＤＩレコーダ要素の機能ブロック図を図３１に示す。ＭＩＤＩレコーダ要素ＭＲは、受信したＭＩＤＩデータを記録することができ、読出要求に応じて記録されたＭＩＤＩデータをあて先の処理要素（処理装置）に送信するようにしている。
ＭＩＤＩレコーダ要素ＭＲは、受信ポート１からＭＩＤＩデータを受信して処理順に記録する受信バッファ１７１と、受信バッファ１７１からＭＩＤＩデータを取り出して、ＭＩＤＩのイベントデータとその処理タイミングを表すタイミングデータの組を処理順にＭＩＤＩ記録部１７３に書き込む書込部１７２と、書込部１７２によりＭＩＤＩデータからなる演奏データがＭＩＤＩファイルとして記録されるＭＩＤＩ記録部１７３を備えている。また、ＭＩＤＩレコーダ要素ＭＲにＭＩＤＩデータ（演奏データ）を要求する処理要素（処理装置）は、読出要求とＭＩＤＩファイルの識別情報を制御データのデータ部に入れて送信する。この場合、読出要求する処理要素が機能している処理装置において読出要求に必要とする画面を表示させて、ユーザが画面上でＭＩＤＩファイルの選択やＭＩＤＩデータの送り先の選択を行うようにしてもよいし、読出要求およびＭＩＤＩデータの取得の通信をＨＴＴＰにより行うようにしてもよい。
【００８０】
そして、ＭＩＤＩレコーダ要素ＭＲは、受信ポート２から読出要求を検出（受信）した際に、受信された読出要求とＭＩＤＩファイルの識別情報を読出部１７４へわたす要求検出部１７６と、識別情報に対応するＭＩＤＩファイルから、ＭＩＤＩレコーダ要素ＭＲの内臓ＭＩＤＩクロックのタイミングにあわせて、処理すべきＭＩＤＩデータをＭＩＤＩ記録部１７３から読み出して送信バッファ１７５へわたす読出部１７４と、読出部１７４から送られたＭＩＤＩデータとタイミングデータを処理順に記録する送信バッファ１７５とを備えている。送信バッファ１７５は、バッファに記録されたＭＩＤＩデータとタイミングデータを、読出要求に含まれているあて先のＩＰアドレスとポート番号で特定される処理要素に送信ポートから送信している。なお、受信ポート１は実体データ（ＭＩＤＩデータ）の受信ポートであり、受信ポート１のポート番号は図３に示される装置テーブルに記録されている該当するＭＩＤＩレコーダ要素ＭＲの論理装置ＩＤとされ、受信ポート２のポート番号は制御データ用に予め割り当てられたポート番号（ＨＴＴＰの場合は一般に８０番とされるが、これに限られない）とされ、送信ポートは実体データ（ＭＩＤＩデータ）の送信ポートであり送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００８１】
次に、エディタ要素の機能ブロック図を図３２に示す。エディタ要素ＥＤは、受信したＭＩＤＩデータを設定要求に応じてエディットしてあて先の処理要素（処理装置）に送信するようにしている。
エディタ要素ＥＤは、ＭＩＤＩデータを受信ポート１から受信して処理順に記録する受信バッファ１８１と、受信バッファ１８１からエディタ要素ＥＤの内臓ＭＩＤＩクロックのタイミングにあわせて処理すべきＭＩＤＩデータを読み出してエディット部１８３へ渡す読出部１８２とを備えている。また、エディタ要素ＥＤにエディットの設定を要求する処理要素（処理装置）は、設定要求とエディット情報を制御データのデータ部に入れて送信する。この場合、設定要求する処理要素が機能している処理装置において設定要求に必要とする画面を表示させて、ユーザが画面上でエディットする内容の設定を行うようにしてもよいし、設定要求の通信をＨＴＴＰにより行うようにしてもよい。なお、エディット情報はエディット内容を表す情報である。
【００８２】
そして、エディタ要素ＥＤは、受信ポート２から設定要求を検出（受信）した際に、受信された設定要求とエディット情報をエディット部１８３へわたす要求検出部１８５と、読出部１８２から渡されたＭＩＤＩデータに要求検出部１８５からのエディット情報に基づいてエディットを行い、エディットされたＭＩＤＩデータを送信バッファ１８４に渡すエディット部１８３と、エディット部１８３から送られたＭＩＤＩデータとタイミングデータを処理順に記録する送信バッファ１８４を備えている。エディット部１８３では、自動作曲の場合、読み出したＭＩＤＩデータ（フレーズ）から１曲分の楽曲を表すＭＩＤＩデータをエディット情報に基づいて作成し、作成したＭＩＤＩデータを送信バッファ１８４へわたしている。また、自動編曲の場合、読み出したＭＩＤＩデータ（メロディ）をエディット情報に基づいて編曲してオーケストラ曲を表すＭＩＤＩデータを作成し、作成したＭＩＤＩデータを送信バッファ１８４へわたしている。送信バッファ１８４は、バッファに記録されたＭＩＤＩデータとタイミングデータを、設定要求に含まれているあて先のＩＰアドレスとポート番号で特定される処理要素に送信ポートから送信している。なお、受信ポート１は実体データ（ＭＩＤＩデータ）の受信ポートであり、受信ポート１のポート番号は図３に示される装置テーブルに記録されている該当するエディタ要素ＥＤの論理装置ＩＤとされ、受信ポート２のポート番号は制御データ用に予め割り当てられたポート番号（ＨＴＴＰの場合は一般に８０番とされるが、これに限られない）とされ、送信ポートは実体データ（ＭＩＤＩデータ）の送信ポートであり送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００８３】
次に、エフェクタ要素の機能ブロック図を図３３に示す。エフェクタ要素ＥＦは、受信したＰＣＭデータに設定要求に応じたエフェクトを施してあて先の処理要素（処理装置）に送信するようにしている。
エフェクタ要素ＥＦは、ＰＣＭデータを受信ポート１から受信して処理順に記録する図示していないが受信チャンネル（入力チャンネル）毎に設けられた受信バッファ１９１と、受信バッファ１９１からサンプリング周波数ｆｓのタイミングにあわせてＰＣＭデータを１サンプルずつ取り出してエフェクト部１９３へ送る読出部１９２とを備えている。また、エフェクタ要素ＥＦにエフェクトの設定を要求する処理要素（処理装置）は、設定要求とエフェクト情報を制御データのデータ部に入れて送信する。この場合、設定要求する処理要素が機能している処理装置において設定要求に必要とする画面を表示させて、ユーザが画面上でエフェクト内容の設定を行うようにしてもよいし、設定要求の通信をＨＴＴＰにより行うようにしてもよい。なお、エフェクト情報はエフェクトの設定内容を表す情報である。
【００８４】
そして、エフェクタ要素ＥＦは、受信ポート２から設定要求を検出（受信）した際に、受信された設定要求とエフェクト情報をエフェクト部１９３へわたす要求検出部１９５と、読出部１９２から読み出されたＰＣＭデータにエフェクトを施して新たなＰＣＭデータを作成し、作成後のＰＣＭデータを送信バッファ１９４へわたすエフェクト部１９３と、エフェクト部１９３から送られたＰＣＭデータとタイミングデータを処理順に記録する図示していないが送信チャンネル毎に設けられた送信バッファ１９４を備えている。エフェクト部１９３でのエフェクトは、エフェクト情報に基づいて設定（決定）され、リバーブやコーラスなどのエフェクトがＰＣＭデータに施される。送信バッファ１９４は、バッファに記録されたＰＣＭデータを、設定要求に含まれているあて先のＩＰアドレスとポート番号で特定される処理要素に送信ポートから送信している。なお、受信ポート１は実体データ（ＰＣＭデータ）の受信ポートであり、受信ポート１のポート番号は図３に示される装置テーブルに記録されている該当するエフェクタ要素ＥＦの論理装置ＩＤとされ、受信ポート２のポート番号は制御データ用に予め割り当てられたポート番号（ＨＴＴＰの場合は一般に８０番とされるが、これに限られない）とされ、送信ポートは実体データ（ＰＣＭデータ）の送信ポートであり送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００８５】
次に、オーディオレコーダ要素の機能ブロック図を図３４に示す。オーディオレコーダ要素ＡＲは、受信したＰＣＭデータを記録することができ、読出要求に応じて記録されたＰＣＭデータをあて先の処理要素（処理装置）に送信するようにしている。
オーディオレコーダ要素ＡＲは、受信ポート１からＰＣＭデータを受信して処理順に記録する受信バッファ２０１と、受信バッファ２０１からＰＣＭデータを取り出してＰＣＭ記録部２０３に書き込む書込部２０２と、書込部２０２によりＰＣＭデータがＰＣＭファイルとして記録されるＰＣＭ記録部２０３を備えている。また、オーディオレコーダ要素ＡＲにＰＣＭデータを要求する処理要素（処理装置）は、読出要求とＰＣＭファイルの識別情報を制御データのデータ部に入れて送信する。この場合、読出要求する処理要素が機能している処理装置において読出要求に必要とする画面を表示させて、ユーザが画面上でＰＣＭファイルの選択やＰＣＭデータの送り先の選択を行うようにしてもよいし、読出要求およびＰＣＭデータの取得の通信をＨＴＴＰにより行うようにしてもよい。
【００８６】
そして、オーディオレコーダ要素ＡＲは、受信ポート２から読出要求を検出（受信）した際に、受信された読出要求とＰＣＭファイルの識別情報を読出部２０４へわたす要求検出部２０６と、識別情報に対応するＰＣＭファイルからサンプリング周波数ｆｓのタイミングにあわせて、ＰＣＭデータをＰＣＭ記録部２０３から読み出して送信バッファ２０５へわたす読出部２０４と、読出部２０４から送られたＰＣＭデータを処理順に記録する送信バッファ２０５とを備えている。送信バッファ２０５は、バッファに記録されたＰＣＭデータを、読出要求に含まれているあて先のＩＰアドレスとポート番号で特定される処理要素に送信ポートから送信している。なお、受信ポート１は実体データ（ＰＣＭデータ）の受信ポートであり、受信ポート１のポート番号は図３に示される装置テーブルに記録されている該当するオーディオレコーダ要素ＡＲの論理装置ＩＤとされ、受信ポート２のポート番号は制御データ用に予め割り当てられたポート番号（ＨＴＴＰの場合は一般に８０番とされるが、これに限られない）とされ、送信ポートは実体データ（ＰＣＭデータ）の送信ポートであり送信する際にランダムなポート番号が割り当てられるが、固定のポート番号としても良い。
【００８７】
次に、実体データの通信を行う際に実行される通信処理のフローチャートを図３５に示す。
実体データの通信を行う際には、実体データを送信する処理装置において通信処理が起動され、ステップＳ１９０にて送信バッファからデータを取り出してデータ部が作成される。次いで、ステップＳ１９１にて送信処理が行われる。送信処理では、ステップＳ１９０において作成されたデータ部が送信データとされて図２に示すように最終的に送信データがカプセル化されたＭＡＣフレームが生成されて、内部ネットワーク上に送信される。ＭＡＣフレームのＭＡＣヘッダにはあて先ＭＡＣアドレスとして実体データを受信するあて先の処理装置のＭＡＣアドレス（物理装置ＩＤ）が設定される。
送信されたＭＡＣフレームは、スター型の内部ネットワークとされていることからハブで受信され、経路決定処理が行われる（ステップＳ２００）。経路決定処理では、ハブは受信されたＭＡＣフレームのあて先ＭＡＣアドレスを見て送信経路を決定し、ＭＡＣフレームを中継する。これにより、送信する処理装置から送信されたＭＡＣフレームがあて先ＭＡＣアドレスが一致する受信する処理装置で受信されて、受信処理が行われる（ステップＳ２１０）。受信処理では、ＭＡＣフレームからＩＰパケットが取り出され、ＩＰパケットからＴＣＰセグメントが取り出され、さらに、ＴＣＰセグメントからデータ部が取得される。次いで、ステップＳ２１１で取得されたデータ部が受信バッファに記録される。なお、通信には実態データを送信するために確立されたカレントバッファに記録されているポートが使用される。
【産業上の利用可能性】
【００８８】
以上の説明では、内部ネットワークをイーサネットのＬＡＮとしたが本発明はこれに限るものではなく、他のネットワーク媒体としても良い。また、通信プロトコルとしてＴＣＰとしたが、本発明はこれに限るものではなく、リアルタイムを重んずる場合は信頼性は低いが転送速度が高いＵＤＰ（User Datagram Protocol）を用いても良いし、ＴＣＰ／ＩＰに替えてＩＰＸ／ＳＰＸ（Internetwork Packet Exchange/Sequenced Packet Exchange）を用いるようにしても良い。
また、エディタ要素のエディット情報やエフェクタ要素のエフェクト情報を他の処理要素で設定して送ることができるようにすると、他の部屋にあるエディタ要素やエフェクト要素をスピーカ要素のある部屋から操作することができるようになり、あたかもその部屋にエディタ要素やエフェクト要素があるものとして操作することができることから操作性を向上することができる。
さらに、一つの処理装置内の複数の処理要素間の接続解除はネットワーク接続時にかぎるものではなく、ネットワーク接続後の任意のタイミングで解除を可能とすることができる。この場合、ネットワーク接続時には接続の解除を行わず、ネットワーク接続後に接続解除の指示を確認する処理を周期的に起動するようにしておき、接続解除の指示を検出したときに処理装置内の処理要素間の接続を解除するようにすればよい。また、接続解除の指示はそれを指示する特別なスイッチを設けてそのスイッチにより指示してもよい。このような接続解除の指示は自処理装置に限らず、ネットワーク上の他の処理装置から行うこともできる。
【図面の簡単な説明】
【００８９】
【図１】本発明の実施例の楽音発生システムの構成を示すブロック図である。
【図２】本発明にかかる楽音発生システムにおいてネットワーク上に送出されるＭＡＣフレームの生成過程の概要を示す図である。
【図３】本発明にかかる楽音発生システムの内部ネットワークにおけるすべての処理要素毎の識別情報の対応表である装置テーブルである。
【図４】本発明にかかる楽音発生システムの内部ネットワーク上の処理要素において、実体データの通信が可能な処理要素毎の入力側と出力側の接続テーブルである。
【図５】本発明にかかる楽音発生システムにおいて、ネットワーク接続処理の一部の処理の態様を示す図である。
【図６】本発明にかかる楽音発生システムにおいて、内部ネットワークに新たに処理装置が接続（ログイン）された際に実行されるネットワーク接続処理のフローチャートである。
【図７】本発明にかかる楽音発生システムにおいて、内部ネットワークに接続されている処理装置が切断（ログオフ）された際に実行されるネットワーク切断処理のフローチャートである。
【図８】本発明にかかる楽音発生システムにおいて、ネットワーク切断処理の一部の処理の態様を示す図である。
【図９】本発明にかかる楽音発生システムにおける内部ネットワークの構成の例を示す図である。
【図１０】本発明にかかる楽音発生システムにおいて、処理要素間の接続を行う接続処理時に表示される設定画面の例を示す図である。
【図１１】本発明にかかる楽音発生システムにおいて、処理要素間の接続を行う接続処理時に表示される設定画面の他の例を示す図である。
【図１２】本発明にかかる楽音発生システムにおいて、処理要素と処理要素との接続を設定する際に実行される接続選択処理のフローチャートである。
【図１３】本発明にかかる楽音発生システムにおいて、接続選択処理が行われて処理要素の論理接続の設定が行われた場合に、接続バッファに記録される接続情報の例を示す図である。
【図１４】本発明にかかる楽音発生システムにおいて、接続選択処理に続けて実行される接続確立処理のフローチャートである。
【図１５】本発明にかかる楽音発生システムにおいて、カレントバッファに記録される接続情報と対応付けの例を示す図である。
【図１６】本発明にかかる楽音発生システムにおいて、接続確立処理において実行される負荷分散処理のフローチャートである。
【図１７】本発明にかかる楽音発生システムにおいて、接続確立処理において実行される負荷分散処理のフローチャートの続きである。
【図１８】本発明にかかる楽音発生システムにおいて、ＳＶ（サーバ）で実行される接続選択処理のフローチャートである。
【図１９】本発明にかかる楽音発生システムにおいて、音源要素において音色を変更する際に実行されるボイス変更処理のフローチャートである。
【図２０】本発明にかかる楽音発生システムにおいて、ボイス変更処理で実行されるネットワーク処理のフローチャートである。
【図２１】本発明にかかる楽音発生システムにおいて、処理装置の電源オン時に実行される自動設定処理のフローチャートである。
【図２２】本発明にかかる楽音発生システムにおいて、周期的に実行されるフラグ処理のフローチャートである。
【図２３】本発明にかかる楽音発生システムにおける音源要素の機能ブロック図である。
【図２４】本発明にかかる楽音発生システムにおける鍵盤要素の機能ブロック図である。
【図２５】本発明にかかる楽音発生システムにおけるスピーカ要素の機能ブロック図である。
【図２６】本発明にかかる楽音発生システムにおけるＤＳＰユニットの機能ブロック図である。
【図２７】本発明にかかる楽音発生システムにおいて、ＤＳＰユニットにおいて処理要素が切り替えられた際に、切り替えられたことを通知する通知処理のフローチャートである。
【図２８】本発明にかかる楽音発生システムにおけるミキサ要素の機能ブロック図である。
【図２９】本発明にかかる楽音発生システムにおけるコンテンツレコーダ要素の機能ブロック図である。
【図３０】本発明にかかる楽音発生システムにおける自動伴奏要素の機能ブロック図である。
【図３１】本発明にかかる楽音発生システムにおけるＭＩＤＩレコーダ要素の機能ブロック図である。
【図３２】本発明にかかる楽音発生システムにおけるエディタ要素の機能ブロック図である。
【図３３】本発明にかかる楽音発生システムにおけるエフェクタ要素の機能ブロック図である。
【図３４】本発明にかかる楽音発生システムにおけるオーディオレコーダ要素の機能ブロック図である。
【図３５】本発明にかかる楽音発生システムにおける実体データの通信を行う際に実行される通信処理のフローチャートである。
【符号の説明】
【００９０】
１  インターネット、２  ルータ、３  ルータ、４  ルータ、１０  ハブ、１１  ＳＶ（サーバ）、１２  ＴＧ１（音源）、１３  ＴＧ２（音源）、１４  ＫＢ（鍵盤）、１５  ＳＰ１（スピーカ）、２０  ハブ、２１  ＳＰ２（スピーカ）、２２  ＤＵ（ＤＳＰユニット）、２３  ＭＸ（ミキサ）、２４  ＣＲ（コンテンツレコーダ）、３０  ハブ、３１  ＡＡ（自動伴奏）、３２  ＭＲ（ＭＩＤＩレコーダ）、３３  ＥＤ（エディタ）、３４  ＥＦ（エフェクタ）、３５  ＡＲ（オーディオレコーダ）、３６  ＳＹ（音源、鍵盤）４０  ハブ、４１  ＭＣ（マイク）、４２  ＣＤ（ＣＤプレーヤ）、１００  受信バッファ、１０１  読出部、１０２  楽音合成部、１０３  送信バッファ、１１１  操作子、１１２  操作検出部、１１３  送信バッファ、１２１  受信バッファ、１２２  読出部、１２３  ＤＡ変換部、１２４  出力部、１３１  切替部、１３２  切替検出部、１３３  処理装置記憶部、１３４  信号処理部、１４１  受信バッファ、１４２  読出部、１４３  ミックス部、１４４  操作子、１４５  送信バッファ、１５１  読出部、１５２  要求検出部、１５３  コンテンツ記憶部、１５４  コンテンツ送信部、１６１  受信バッファ、１６２  読出部、１６３  和音検出部、１６４  読出部、１６５  要求検出部、１６６  伴奏データ記憶部、１６７  伴奏データバッファ、１６８  自動伴奏部、１６９  送信バッファ、１７１  受信バッファ、１７２  書込部、１７３  記録部、１７４  読出部、１７５  送信バッファ、１７６  要求検出部、１８１  受信バッファ、１８２  読出部、１８３  エディット部、１８４  送信バッファ、１８５  要求検出部、１９１  受信バッファ、１９２  読出部、１９３  エフェクト部、１９４  送信バッファ、１９５  要求検出部、２０１  受信バッファ、２０２  書込部、２０３  記録部、２０４  読出部、２０５  送信バッファ、２０６  要求検出部
【図１】
2007256376.tif 000003
【図２】
2007256376.tif 000004
【図３】
2007256376.tif 000005
【図４】
2007256376.tif 000006
【図５】
2007256376.tif 000007
【図６】
2007256376.tif 000008
【図７】
2007256376.tif 000009
【図８】
2007256376.tif 000010
【図９】
2007256376.tif 000011
【図１０】
2007256376.tif 000012
【図１１】
2007256376.tif 000013
【図１２】
2007256376.tif 000014
【図１３】
2007256376.tif 000015
【図１４】
2007256376.tif 000016
【図１５】
2007256376.tif 000017
【図１６】
2007256376.tif 000018
【図１７】
2007256376.tif 000019
【図１８】
2007256376.tif 000020
【図１９】
2007256376.tif 000021
【図２０】
2007256376.tif 000022
【図２１】
2007256376.tif 000023
【図２２】
2007256376.tif 000024
【図２３】
2007256376.tif 000025
【図２４】
2007256376.tif 000026
【図２５】
2007256376.tif 000027
【図２６】
2007256376.tif 000028
【図２７】
2007256376.tif 000029
【図２８】
2007256376.tif 000030
【図２９】
2007256376.tif 000031
【図３０】
2007256376.tif 000032
【図３１】
2007256376.tif 000033
【図３２】
2007256376.tif 000034
【図３３】
2007256376.tif 000035
【図３４】
2007256376.tif 000036
【図３５】
2007256376.tif 000037