JP4026668B2 - Network AV system - Google Patents

Network AV system Download PDF

Info

Publication number
JP4026668B2
JP4026668B2 JP2006321694A JP2006321694A JP4026668B2 JP 4026668 B2 JP4026668 B2 JP 4026668B2 JP 2006321694 A JP2006321694 A JP 2006321694A JP 2006321694 A JP2006321694 A JP 2006321694A JP 4026668 B2 JP4026668 B2 JP 4026668B2
Authority
JP
Japan
Prior art keywords
server
list
client
content
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006321694A
Other languages
Japanese (ja)
Other versions
JP2007149103A5 (en
JP2007149103A (en
Inventor
年伸 佐野
貴宏 千葉
英之 澤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Onkyo Corp
Original Assignee
Onkyo Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Onkyo Corp filed Critical Onkyo Corp
Priority to JP2006321694A priority Critical patent/JP4026668B2/en
Publication of JP2007149103A publication Critical patent/JP2007149103A/en
Publication of JP2007149103A5 publication Critical patent/JP2007149103A5/ja
Application granted granted Critical
Publication of JP4026668B2 publication Critical patent/JP4026668B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Description

本発明は、音声及び/又は映像の再生が可能なネットワークAV(Audio/Video)システムに関し、さらに詳しくは、複数のサーバとクライアントとを備えたネットワークAVシステムに関する。   The present invention relates to a network AV (Audio / Video) system capable of reproducing audio and / or video, and more particularly to a network AV system including a plurality of servers and clients.

最近、クライアントサーバシステムを利用したネットワークAVシステムが提供されている。国際公開第03/102919号パンフレット(先行出願1は、多数のコンテンツを蓄積したサーバと、LAN(Local Area Network)経由で接続されたオーディオクライアントとを備えたネットワークAVシステムを開示する。オーディオクライアントは所望のコンテンツをサーバに要求し、これに応じてサーバは要求されたコンテンツをオーディオクライアントに配信する。オーディオクライアントはサーバから配信されたコンテンツを再生する。 Recently, a network AV system using a client server system has been provided. WO 03/102919 ( prior application 1 ) discloses a network AV system including a server storing a large number of contents and an audio client connected via a LAN (Local Area Network). The audio client requests a desired content from the server, and in response, the server delivers the requested content to the audio client. The audio client reproduces the content distributed from the server.

ネットワークAVシステムはサーバが複数あればそれだけ蓄積されるコンテンツを増やすことができる。しかしながら、サーバごとに蓄積されるコンテンツが異なれば、オーディオクライアントは所望のコンテンツがどのサーバに蓄積されているか探さなければならない。オーディオクライアントが所望のコンテンツを見つけるまで、ひとつひとつのサーバに接続するのは煩雑である。   In the network AV system, if there are a plurality of servers, the accumulated content can be increased. However, if the content stored in each server is different, the audio client has to search in which server the desired content is stored. It is cumbersome to connect to each server until the audio client finds the desired content.

また、サーバがコンテンツをオーディオクライアントに配信中に動作を停止すれば、オーディオクライアントの再生動作は中断してしまう。   Also, if the server stops operating while delivering content to the audio client, the playback operation of the audio client is interrupted.

また、オーディオクライアントがサーバからコンテンツの配信を受け、再生した後、別のコンテンツの再生をしたい場合、再生をしたいコンテンツを蓄積する当該他のサーバに接続し直す必要がある。   In addition, if the audio client wants to reproduce another content after receiving and reproducing the content from the server, it is necessary to reconnect to the other server that stores the content to be reproduced.

本発明の1つの目的は、複数のサーバが複数のコンテンツを蓄積していても、クライアントが所望のコンテンツを容易に見つけることができるネットワークAVシステムを提供することである。   One object of the present invention is to provide a network AV system in which a client can easily find a desired content even if a plurality of servers accumulate a plurality of contents.

本発明のもう1つの目的は、コンテンツを配信中のサーバがその動作を停止しても、クライアントがそのコンテンツを最後まで再生できるネットワークAVシステムを提供することである。   Another object of the present invention is to provide a network AV system that allows a client to play back the content to the end even if the server that is delivering the content stops its operation.

本発明のもう1つの目的は、クライアントがサーバを接続し直す必要のないネットワークAVシステムを提供することである。   Another object of the present invention is to provide a network AV system in which a client does not need to reconnect a server.

課題を解決するための手段及び発明の効果Means for Solving the Problems and Effects of the Invention

本発明によるネットワークAVシステムは、センタサーバと複数のサブサーバとからなる複数のサーバと、クライアントとを備えたネットワークAVシステムであって、
前記センタサーバ及びサブサーバの各々は、複数のコンテンツを蓄積するための蓄積手段と、自身が起動した後に起動した当該他のサーバから、当該他のサーバが蓄積する複数のコンテンツを列挙したローカルリストを取得するローカルリスト取得手段と、自身が蓄積するコンテンツを列挙した自身のローカルリストと、当該他のサーバごとのローカルリストとを記憶するためのリスト記憶手段とを備える。センタサーバはさらに、クライアントの要求に応じて、複数のローカルリストをまとめたグローバルリストをクライアントに送信するグローバルリスト送信手段を備える。クライアントは、センタサーバに前記グローバルリストを要求して取得するグローバルリスト取得手段を備える。センタサーバはさらに、自身が前記ネットワークAVシステムから離脱するとき、自身が起動した後に起動した前記当該他のサーバのうち、一番初めに自身に接続されたサーバに引継命令を送信する送信手段を備える。サブサーバはさらに、前記引継命令を受けたとき、前記センタサーバとして動作する。
Network AV system according to the present invention is a network AV system comprising a plurality of servers comprising a center server and multiple sub servers, and a client,
Each of the center server and the sub server includes a storage unit for storing a plurality of contents, and a local list that lists a plurality of contents stored in the other server from the other server started after the server starts. A local list acquisition means for acquiring the content, a local storage list for storing the local list of contents stored in the local list, and a local list for each of the other servers. The center server further includes global list transmission means for transmitting a global list in which a plurality of local lists are collected to the client in response to a request from the client . The client includes a global list acquisition unit that requests and acquires the global list from the center server. The center server further includes a transmission means for transmitting a takeover command to a server connected to itself first among the other servers started after the center server is started when the center server leaves the network AV system. Prepare. Further, the sub server operates as the center server when receiving the takeover command.

本発明によるネットワークAVシステムでは、センタサーバは、センタサーバ及びサブサーバが蓄積する複数のコンテンツを列挙したグローバルリストをクライアントに送信する。そのため、クライアントはコンテンツが蓄積されたサーバ(センタサーバ及びサブサーバ)ごとにコンテンツのリストを要求する必要がなく、グローバルリストに基づいて所望のコンテンツを容易に見つけることができる。
また、センタサーバはサブサーバの中からセンタサーバの動作を引き継ぐ引継サーバを選択し、引継サーバにセンタサーバの動作を引き継ぐように指令する。その結果、センタサーバが動作を終了しても、他のサーバ(サブサーバ)がセンタサーバとして機能する。
In the network AV system according to the present invention, the center server transmits a global list listing a plurality of contents stored in the center server and the sub server to the client. Therefore, the client does not need to request a list of contents for each server (center server and sub server) in which contents are accumulated, and can easily find desired contents based on the global list.
Further, the center server selects a takeover server that takes over the operation of the center server from among the sub servers, and instructs the takeover server to take over the operation of the center server. As a result, even if the center server ends its operation, another server (sub server) functions as the center server.

好ましくは、クライアントは、コンテンツ要求手段を備える。コンテンツ要求手段は送信されたグローバルリストの中から選択されたコンテンツをセンタサーバに要求する。センタサーバはさらに、コンテンツ返信手段を備える。コンテンツ返信手段はクライアントからの要求に応じて選択されたコンテンツをクライアントに返信する。クライアントはさらに再生手段を備える。再生手段はセンタサーバから返信されたコンテンツを再生する。 Preferably, the client includes content requesting means. Content request means for requesting a selected from a global list sent content Sentasa server. Sentasa server further includes a content reply means. The content reply means returns the content selected in response to the request from the client to the client. The client further includes playback means. Reproducing means for reproducing the content that has been Sentasa bus or we reply.

この場合、クライアントは、複数のサーバ(センタサーバ及びサブサーバ)に蓄積された複数のコンテンツの中から所望のコンテンツを容易に選択できる。選択されたコンテンツはセンタサーバからクライアントに送信され、クライアントはそのコンテンツに基づいて音声又は映像を再生できる。 In this case, the client can easily select a desired content from a plurality of contents stored in a plurality of servers (center server and sub server). The selected content is transmitted from the center server to the client, and the client can reproduce audio or video based on the content.

好ましくは、コンテンツ要求手段は、選択されたコンテンツをセンタサーバに要求し、センタサーバは、コンテンツ返信手段を備え、センタサーバはさらに、サーバ特定手段と、コンテンツ取得手段とを備える。サーバ特定手段はクライアントからの要求に応じてグローバルリストに基づいて選択されたコンテンツを蓄積するサーバを特定する。コンテンツ取得手段は、特定されたサーバがセンタサーバの場合、自己の蓄積手段から選択されたコンテンツを取得し、特定されたサーバがサブサーバの場合、そのサブサーバの蓄積手段から選択されたコンテンツを取得する。コンテンツ返信手段は、コンテンツ取得手段により取得されたコンテンツをクライアントに返信する。   Preferably, the content requesting unit requests the selected content from the center server, the center server includes a content return unit, and the center server further includes a server specifying unit and a content acquisition unit. The server specifying unit specifies a server that stores the content selected based on the global list in response to a request from the client. The content acquisition means acquires the content selected from its own storage means when the specified server is a center server, and when the specified server is a sub server, the content acquisition means acquires the content selected from the storage means of the sub server. get. The content reply unit returns the content acquired by the content acquisition unit to the client.

この場合、クライアントはセンタサーバに選択されたコンテンツを要求する。センタサーバはクライアントからの要求に応じて選択されたコンテンツを蓄積するサーバ(センタサーバ及びサブサーバ)をグローバルリストに基づいて特定し、特定したサーバからコンテンツを取得し、クライアントに取得したコンテンツを返信する。すなわち、センタサーバはクライアントとサブサーバとの間の中継機能を有する。この結果、クライアントはセンタサーバと接続すれば、グローバルリストもコンテンツも取得できる。   In this case, the client requests the selected content from the center server. The center server specifies the server (center server and sub server) that stores the content selected in response to the request from the client based on the global list, acquires the content from the specified server, and returns the acquired content to the client To do. That is, the center server has a relay function between the client and the sub server. As a result, if the client connects to the center server, the global list and contents can be acquired.

好ましくは、グローバルリストは複数のコンテンツに対応して複数のコンテンツが蓄積された複数のサーバのアドレスを含み、サーバ特定手段は、コンテンツ要求手段により要求されたコンテンツを蓄積したサーバのアドレスを特定する。   Preferably, the global list includes addresses of a plurality of servers storing a plurality of contents corresponding to the plurality of contents, and the server specifying unit specifies the addresses of servers storing the contents requested by the content requesting unit. .

この場合、センタサーバはグローバルリストに含まれるサーバのアドレスからコンテンツを蓄積するサーバ(センタサーバ及びサブサーバ)を容易に特定できる。   In this case, the center server can easily specify the server (center server and sub server) that accumulates the content from the address of the server included in the global list.

好ましくは、グローバルリストは複数のコンテンツに対応してコンテンツが蓄積された複数のサーバの特定情報を含む。クライアントはさらに、送信されたグローバルリストの中から選択されたコンテンツを、特定情報に基づいて、選択されたコンテンツを蓄積するセンタサーバ又はサブサーバに要求するコンテンツ要求手段を備える。センタサーバ及びサブサーバはさらに、クライアントの要求に応じて、選択されたコンテンツをクライアントに返信するコンテンツ返信手段を備える。クライアントはさらに、返信されたコンテンツを再生する再生手段を備えるPreferably, the global list includes specific information of a plurality of servers in which content stored in correspondence with a plurality of contents. The client further includes content requesting means for requesting the content selected from the transmitted global list to the center server or the sub server that stores the selected content based on the specific information . The center server and the sub server further include content return means for returning the selected content to the client in response to a request from the client. The client further includes playback means for playing back the returned content .

この場合、クライアントは選択されたコンテンツを蓄積するサーバ(センタサーバ及びサブサーバ)をグローバルリストから容易に特定できる。その結果、選択されたコンテンツを蓄積するサーバへクライアントが直接コンテンツを要求できる。   In this case, the client can easily specify the server (center server and sub server) that stores the selected content from the global list. As a result, the client can directly request the content from the server that stores the selected content.

以下、本発明の実施の形態を図面を参照して詳しく説明する。図中同一又は相当部分には同一符号を付してその説明を援用する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and the description thereof is incorporated.

[目次]
1.グローバルリストサーバシステム
1.1.概略
1.2.構成
1.2.1.サーバの構成
1.2.2.オーディオクライアントの構成
1.3.システム動作
1.3.1.サーバ起動処理
1.3.2.起動処理後のサーバ動作
1.3.2.1.他のサーバとの接続動作
1.3.2.2.オーディオクライアントとの接続動作
1.3.2.3.配信動作
1.3.2.4.リスト更新動作
1.3.2.4.1.自己のローカルリストが更新された場合
1.3.2.4.2.他のサーバのローカルリストが更新された場合
1.3.2.4.3.他のサーバが離脱した場合
1.3.2.5.終了動作
1.4.コントローラを含むグローバルサーバシステム
1.4.1.概略
1.4.2.構成
1.4.3.システム動作
1.4.3.1.ハンドル取得動作
1.4.3.2.グローバルリスト取得動作及び更新動作
1.4.3.3.監視動作
1.4.3.4.制御動作
2.センタサーバシステム
2.1.概略
2.2.システム動作
2.2.1.サーバ起動処理
2.2.2.起動処理後のセンタサーバ動作
2.2.2.1.配信動作
2.2.2.2.リスト更新動作
2.2.2.2.1自己のローカルリストが更新された場合
2.2.2.3.終了動作
2.2.3.起動処理後のサブサーバ動作
2.2.3.1.接続動作
2.2.3.2.リスト更新動作
2.2.3.2.1.自己のローカルリストが更新された場合
2.2.3.2.2.他のサーバのローカルリストが更新された場合
2.2.3.2.3.他のサーバが離脱した場合
2.2.3.3.終了動作
2.3.コントローラを含むセンタサーバシステム
2.3.1.システム動作
3.他の実施の形態
3.1.ファイル共有サーバシステム
3.2.ローカルリスト送信システム
1.グローバルリストサーバシステム
1.1.概略
図1を参照して、グローバルリストサーバシステム10は、多数の曲データを蓄積するための複数のサーバSV1〜SV3と、サーバSV1〜SV3からの曲データに基づいて音楽を再生するための複数のオーディオクライアントCL1〜CL3とを備える。
[table of contents]
1. Global list server system 1.1. Outline 1.2. Configuration 1.2.1. Server configuration 1.2.2. Configuration of audio client 1.3. System operation 1.3.1. Server startup processing 1.3.2. Server operation after startup processing 1.3.2.1. Connection operation with other servers 1.3.2.2. Connection operation with audio client 1.3.2.3. Distribution operation 1.3.2.4. List update operation 1.3.2.4.1. When its own local list is updated 1.3.2.4.2. When the local list of another server is updated 1.3.2.4.3. When another server leaves 1.3.2.5. Ending operation 1.4. Global server system including controller 1.4.1. Outline 1.4.2. Configuration 1.4.3. System operation 1.4.3.1. Handle acquisition operation 1.4.3.2. Global list acquisition operation and update operation 1.4.3.3. Monitoring operation 1.4.3.4. Control action Center server system 2.1. Outline 2.2. System operation 2.2.1. Server startup processing 2.2.2. Center server operation after startup processing 2.2.2.1. Distribution operation 2.2.2.2. List update operation 2.2.2.2.2.1 When own local list is updated 2.2.2.3. Ending operation 2.2.3. Sub-server operation after startup processing 2.2.3.1. Connection operation 2.2.3.2. List update operation 2.2.3.2.1. When own local list is updated 2.2.3.2.2. When the local list of another server is updated 2.2.3.2.3. When another server leaves 2.2.2.3. Ending operation 2.3. Center server system including controller 2.3.1. 2. System operation Other Embodiments 3.1. File sharing server system 3.2. Local list transmission system Global list server system 1.1. Referring to FIG. 1, a global list server system 10 includes a plurality of servers SV1 to SV3 for accumulating a large number of song data, and a plurality of songs for reproducing music based on song data from the servers SV1 to SV3. Audio clients CL1 to CL3.

ここではサーバSV1〜SV3は曲データを蓄積しているが、これに代えて又はこれと共に映像データを蓄積していてもよく、その他、さまざまなデジタルコンテンツを蓄積していてもよい。以下では、曲データを例に説明する。図1では、オーディオクライアントCL1〜CL3を表示したが、オーディオクライアントCLは少なくとも1つ存在すればよい。   Here, the servers SV1 to SV3 store music data, but instead of or together with this, video data may be stored, and various other digital contents may be stored. In the following, description will be given using music data as an example. Although the audio clients CL1 to CL3 are displayed in FIG. 1, it is sufficient that at least one audio client CL exists.

これらは、LAN(ローカルエリアネットワーク)50により相互に接続されるが、これに限定されることなく、USB、IEEE1394など、コンピュータネットワークを構築するのに適切なものを採用すればよい。LANを採用する場合、PC(パーソナルコンピュータ)で標準的なTCP/IPプロトコルを採用するのが好ましいが、UDPプロトコルなどを採用してもよく、プロトコルは特に限定されない。また、この図ではLAN50の基幹配線から枝分かれするようにサーバSVやオーディオクライアントCLが接続されているが、たとえば10BASE−Tや100BASE−TXの場合にはハブを中心にしてスター状に接続される。   These are connected to each other by a LAN (local area network) 50. However, the present invention is not limited to this, and any suitable device such as USB or IEEE 1394 may be adopted. When adopting a LAN, it is preferable to adopt a standard TCP / IP protocol in a PC (personal computer), but a UDP protocol or the like may be adopted, and the protocol is not particularly limited. Further, in this figure, the server SV and the audio client CL are connected so as to branch off from the basic wiring of the LAN 50. For example, in the case of 10BASE-T or 100BASE-TX, they are connected in a star shape with the hub as the center. .

サーバSV1のHDD(ハードディスクドライブ)14は、複数の曲データM11〜M1n(nは自然数)を含む。サーバSV2のHDD14は複数の曲データM21〜M2n、サーバSV3のHDD14は複数の曲データM31〜M3nを含む。   The HDD (hard disk drive) 14 of the server SV1 includes a plurality of pieces of music data M11 to M1n (n is a natural number). The HDD 14 of the server SV2 includes a plurality of song data M21 to M2n, and the HDD 14 of the server SV3 includes a plurality of song data M31 to M3n.

さらに、各サーバSV1〜SV3のHDD14内にはグローバルリストGLが蓄積される。グローバルリストGLとは、各曲データの曲名、アーティスト、ジャンル等をリスト化したものである。グローバルリストGLはLAN50に属する複数のサーバSV1〜SV3が蓄積する曲データM11〜M1n,M21〜M2n,M31〜M3nのリストを備える。曲データM11〜M1nのリストをローカルリストLL1、曲データM21〜M2nのリストをローカルリストLL2、曲データM31〜M3nのリストをローカルリストLL3とすると、サーバSV1〜SV3のHDD14に蓄積されるグローバルリストGLはローカルリストLL1〜LL3を含む。   Furthermore, a global list GL is stored in the HDD 14 of each of the servers SV1 to SV3. The global list GL is a list of song names, artists, genres, etc. of each song data. The global list GL includes a list of music piece data M11 to M1n, M21 to M2n, M31 to M3n stored in a plurality of servers SV1 to SV3 belonging to the LAN 50. When the list of song data M11 to M1n is a local list LL1, the list of song data M21 to M2n is a local list LL2, and the list of song data M31 to M3n is a local list LL3, a global list stored in the HDD 14 of the servers SV1 to SV3. The GL includes local lists LL1 to LL3.

各サーバSVは自己が蓄積する曲データを更新したとき、更新後のローカルリストLL1〜LL3を当該他のサーバSVに送信する。具体的には、サーバSV1に新たな曲データが登録されたとき、サーバSV1はローカルリストLL1を更新する。このとき、サーバSV1は更新されたローカルリストLL1をサーバSV2及びSV3に送信する(図中(1))。サーバSV2及びSV3は更新されたローカルリストLL1を受信し、グローバルリストGL内の更新前のローカルリストLL1と置き換える。同様に、サーバSV2に新たな曲データが登録されたとき、サーバSV2はローカルリストLL2を更新し、更新されたローカルリストLL2をサーバSV1及びSV3に送信する(図中(2))。サーバSV3に新たな曲データが登録されたとき、サーバSV3は更新されたローカルリストLL3をサーバSV1及びSV2に送信する(図中(3))。以上の動作により、各サーバSV内のグローバルリストGLは常に最新のローカルリストLL1〜LL3を含む。   When each server SV updates the music data stored by itself, it sends the updated local lists LL1 to LL3 to the other server SV. Specifically, when new song data is registered in the server SV1, the server SV1 updates the local list LL1. At this time, the server SV1 transmits the updated local list LL1 to the servers SV2 and SV3 ((1) in the figure). The servers SV2 and SV3 receive the updated local list LL1, and replace it with the local list LL1 before update in the global list GL. Similarly, when new song data is registered in the server SV2, the server SV2 updates the local list LL2, and transmits the updated local list LL2 to the servers SV1 and SV3 ((2) in the figure). When new song data is registered in the server SV3, the server SV3 transmits the updated local list LL3 to the servers SV1 and SV2 ((3) in the figure). Through the above operation, the global list GL in each server SV always includes the latest local lists LL1 to LL3.

続いて、オーディオクライアントCLで曲を再生する場合のグローバルリストサーバシステム10の動作の概略を説明する。図2(A)を参照して、オーディオクライアントCL2で曲データM31を再生する場合、オーディオクライアントCL2は任意のサーバSVに対してグローバルリストGLを要求する。図2(A)では、オーディオクライアントCL2はサーバSV2にグローバルリストGLを要求するが(図中(4))、サーバSV1に要求しても、サーバSV3に要求してもよい。オーディオクライアントCL2の要求に基づいて、サーバSV2はグローバルリストGLを送信する(図中(5))。オーディオクライアントCL2のユーザは送信されたグローバルリストGLを参照して、再生したい曲M31を選択する。選択後、図2(B)に示すように、オーディオクライアントCL2はサーバSV3に対して曲データM31の要求を行う(図中(6))。サーバSV3はオーディオクライアントCL2からの要求を受け、該当曲データM31をオーディオクライアントCL2に配信する(図中(7))。   Next, an outline of the operation of the global list server system 10 when a music piece is reproduced by the audio client CL will be described. With reference to FIG. 2A, when the music data M31 is reproduced by the audio client CL2, the audio client CL2 requests the global list GL from an arbitrary server SV. In FIG. 2A, the audio client CL2 requests the server SV2 for the global list GL ((4) in the figure), but it may request the server SV1 or the server SV3. Based on the request from the audio client CL2, the server SV2 transmits the global list GL ((5) in the figure). The user of the audio client CL2 refers to the transmitted global list GL and selects a music piece M31 to be reproduced. After the selection, as shown in FIG. 2B, the audio client CL2 requests the music data M31 from the server SV3 ((6) in the figure). The server SV3 receives the request from the audio client CL2, and distributes the music piece data M31 to the audio client CL2 ((7) in the figure).

以上の動作により、グローバルリストサーバシステム10では、オーディオクライアントCLはLAN50上のいずれかのサーバSVからグローバルリストGLを一度取得すれば、複数のサーバSVに蓄積されたいずれの曲でも選択できる。よって、オーディオクライアントCLは、LAN上の複数のサーバSVに蓄積された曲データMを選択するために、ローカルリストLLをサーバSVごとにいちいち要求する必要はない。   With the above operation, in the global list server system 10, once the audio client CL acquires the global list GL from any server SV on the LAN 50, any music stored in the plurality of servers SV can be selected. Therefore, the audio client CL does not need to request the local list LL for each server SV in order to select the music data M stored in the plurality of servers SV on the LAN.

1.2.構成
1.2.1.サーバの構成
図3を参照して、サーバSV1は、圧縮デジタル曲データを蓄積するためのHDD(ハードディスクドライブ)14と、データベース管理部16及びネットワークプロトコル処理部18を含むCPU処理部20と、本サーバSV1とLAN50との間で信号を送受信するLANコントローラ22とを備える。HDD14は曲データM11〜M1nを保存する。サーバSV2及びサーバSV3もサーバSV1と同じ構造である。サーバSV1〜SV3は相互に接続される。
1.2. Configuration 1.2.1. Server Configuration Referring to FIG. 3, the server SV1 includes an HDD (Hard Disk Drive) 14 for storing compressed digital music data, a CPU processing unit 20 including a database management unit 16 and a network protocol processing unit 18, A LAN controller 22 that transmits and receives signals between the server SV1 and the LAN 50; The HDD 14 stores music data M11 to M1n. The server SV2 and the server SV3 have the same structure as the server SV1. Servers SV1 to SV3 are connected to each other.

HDD14には表1に示すサーバリストが格納される。

Figure 0004026668
表1を参照して、サーバリストはサーバIDとサーバ情報とを含む。サーバIDはサーバSV1と接続した他のサーバSV2又はSV3の識別子である。サーバIDはサーバSV1の接続要求に応答した順番に登録される。サーバSV1の接続要求に初めに応答したのがサーバSV2であり、次に応答したのがサーバSV3である場合、表1に示すように、サーバID=1にはサーバSV2のサーバ情報が登録され、サーバID=2には、サーバSV3のサーバ情報が登録される。 The HDD 14 stores a server list shown in Table 1.
Figure 0004026668
Referring to Table 1, the server list includes a server ID and server information. The server ID is an identifier of another server SV2 or SV3 connected to the server SV1. Server IDs are registered in the order in which they responded to the connection request of the server SV1. When the server SV2 first responds to the connection request of the server SV1 and the server SV3 responds next, the server information of the server SV2 is registered in the server ID = 1 as shown in Table 1. In the server ID = 2, server information of the server SV3 is registered.

続いて、サーバ情報の一例としてサーバSV2のサーバ情報を示す。

Figure 0004026668
表2を参照して、サーバ情報はサーバ特定情報とサーバ名とローカルリストLL2とを含む。サーバ特定情報は、サーバSV2の場所を特定するためのサーバアドレスやポート番号等を含む。サーバアドレスとは、そのサーバSVのIP(Internet Protocol)アドレスやMACアドレス等である。ローカルリストLL2は、サーバSV2に格納されている曲データM21〜M2nのリストである。表3にローカルリストLL2を示す。
Figure 0004026668
表3を参照して、ローカルリストLL2は、サーバSV2がそのHDD14内に蓄積する複数の曲データM21〜M2nに関する曲情報I21〜I2nを含む。表4に曲情報I2nの詳細を示す。
Figure 0004026668
表4を参照して、曲情報I2nはファイル名と、曲名と、アーティスト名と、アルバム名と、ジャンル名と、曲の長さ(時間)と、ファイルフォーマットと、曲IDと、サーバ特定情報とを含む。ファイル名には、当該曲データMが格納されているHDD14のフルパス名が記録される。
Figure 0004026668
クライアントリストは、サーバSV1にクライアントとして接続された機器に関する情報(クライアント情報)を含む。サーバSV1にクライアントとして接続される機器は、オーディオクライアントCLやサーバSVである。クライアント情報はクライアントインデックスに対応して登録される。クライアントインデックスは、サーバSV1に接続された機器ごとに付与される識別子である。
クライアント情報を表6に示す。
Figure 0004026668
表6を参照して、クライアント情報中の「flag」はサーバSV1との接続の有無を示す。接続がある場合、「flag」はセットされ、接続がない場合「flag」はリセットされる。 「type」はサーバSV1に接続された機器のクライアントタイプを示す。サーバSV1に接続された機器がオーディオクライアントCLであれば、クライアントタイプは「オーディオクライアント」である。接続された機器がサーバSVであれば、クライアントタイプは「サーバ」である。 Subsequently, server information of the server SV2 is shown as an example of server information.
Figure 0004026668
Referring to Table 2, the server information includes server specifying information, a server name, and a local list LL2. The server specifying information includes a server address and a port number for specifying the location of the server SV2. The server address is an IP (Internet Protocol) address or a MAC address of the server SV. The local list LL2 is a list of song data M21 to M2n stored in the server SV2. Table 3 shows the local list LL2.
Figure 0004026668
Referring to Table 3, local list LL2 includes song information I21-I2n related to a plurality of song data M21-M2n stored in HDD 14 by server SV2. Table 4 shows details of the music information I2n.
Figure 0004026668
Referring to Table 4, song information I2n includes file name, song name, artist name, album name, genre name, song length (time), file format, song ID, and server identification information. Including. In the file name, the full path name of the HDD 14 in which the song data M is stored is recorded.
Figure 0004026668
The client list includes information (client information) related to devices connected to the server SV1 as clients. A device connected as a client to the server SV1 is an audio client CL or a server SV. Client information is registered corresponding to the client index. The client index is an identifier assigned to each device connected to the server SV1.
Table 6 shows the client information.
Figure 0004026668
Referring to Table 6, “flag” in the client information indicates the presence / absence of connection with server SV1. If there is a connection, “flag” is set, and if there is no connection, “flag” is reset. “Type” indicates the client type of the device connected to the server SV1. If the device connected to the server SV1 is an audio client CL, the client type is “audio client”. If the connected device is a server SV, the client type is “server”.

「status」以降の情報は、クライアントタイプが「オーディオクライアント」である場合に記録される。「status」は、再生、停止、完了、一時停止、早送り、巻き戻し等の現在のステータス(状態)である。「volume」は現在のボリューム値(音量)を示す。「productID」はクライアントタイプごとに付与されたプロダクトID(機種情報)である。「firmwareID」はオーディオクライアントCLにインストールされているファームウェアのバージョンを示すファームウェアIDである。「hostname」はクライアント機器に付与されたクライアント名である。「songID」は、再生中の曲を識別するための曲IDである。「curKey」は、再生中の曲リストを作成するために必要なリスト構築キーである。   Information after “status” is recorded when the client type is “audio client”. “Status” is a current status (state) such as playback, stop, completion, pause, fast forward, and rewind. “Volume” indicates the current volume value (volume). “ProductID” is a product ID (model information) assigned to each client type. “FirmwareID” is a firmware ID indicating the version of the firmware installed in the audio client CL. “Hostname” is a client name assigned to the client device. “SongID” is a song ID for identifying a song being reproduced. “CurKey” is a list construction key necessary for creating a list of songs being reproduced.

リスト構築キーは、フィルタの種類と、キーワードとを含む。フィルタの種類には、タイトル名、ジャンル名、アーティスト名、アルバム名、ファイル名等がある。たとえばフィルタの種類がアーティスト名の場合、キーワードには所望のアーティストの名称が記録される。リスト構築キーでグローバルリストGLを検索することにより所望の曲リストを作成することができる。詳細は前述した先行出願1に開示されている。   The list construction key includes a filter type and a keyword. Filter types include title name, genre name, artist name, album name, and file name. For example, when the type of filter is an artist name, the name of the desired artist is recorded as the keyword. A desired song list can be created by searching the global list GL with the list construction key. Details are disclosed in the aforementioned prior application 1.

サーバSVのHDD14はさらに、表7に示すプレゼンテーションコンテンツリストPLを含む。

Figure 0004026668
表7を参照して、プレゼンテーションコンテンツリストPLは各ローカルリストLL1〜LL3内の複数の曲データ(M11〜M1n,M21〜M2n,M31〜M3n)の曲情報I11〜I1n,I21〜I2n,I31〜I3nの格納場所、すなわち、HDD14内のどの場所に格納されているかを記録する。サーバSV1がオーディオクライアントCLからグローバルリストGLの要求を受けたとき、サーバSV1はプレゼンテーションコンテンツリストPLに基づいて、表8に示すグローバルリストGLを更新(作成)し、オーディオクライアントCLに送信する。
Figure 0004026668
表8を参照して、グローバルリストGLはローカルリストLL1〜LL3の曲情報I11〜I1n,I21〜I2n,I31〜I3nを含む。 The HDD 14 of the server SV further includes a presentation content list PL shown in Table 7.
Figure 0004026668
Referring to Table 7, the presentation content list PL includes song information I11 to I1n, I21 to I2n, I311 to a plurality of song data (M11 to M1n, M21 to M2n, M31 to M3n) in the local lists LL1 to LL3. The storage location of I3n, that is, the storage location in the HDD 14 is recorded. When the server SV1 receives a request for the global list GL from the audio client CL, the server SV1 updates (creates) the global list GL shown in Table 8 based on the presentation content list PL, and transmits it to the audio client CL.
Figure 0004026668
Referring to Table 8, global list GL includes music information I11-I1n, I21-I2n, I31-I3n of local lists LL1-LL3.

1.2.2.オーディオクライアントの構成
図4を参照して、オーディオクライアントCLは、ネットワークプロトコル処理部24及びシステム動作部26を含むマイコン処理部28と、フラッシュメモリ30と、順次入力された圧縮デジタル曲データ等を一時的に記憶して順次出力するメモリ32と、圧縮デジタル曲データをデコードして非圧縮デジタル曲データを生成する音声処理部34と、デジタル曲データをアナログ曲データに変換するD/A変換器(DAC)36と、本オーディオクライアントCLとLAN50との間で信号を送受信するLANコントローラ38とを備える。オーディオクライアントCLは、サーバSVと異なり、曲データMを蓄積するためのHDDを備えていない。
1.2.2. Configuration of Audio Client Referring to FIG. 4, the audio client CL temporarily stores a microcomputer processing unit 28 including a network protocol processing unit 24 and a system operation unit 26, a flash memory 30, and sequentially input compressed digital music data. A memory 32 for storing and outputting sequentially, an audio processing unit 34 for decoding compressed digital music data to generate uncompressed digital music data, and a D / A converter for converting digital music data into analog music data ( DAC) 36, and a LAN controller 38 that transmits and receives signals between the audio client CL and the LAN 50. Unlike the server SV, the audio client CL does not include an HDD for storing the song data M.

1.3.システム動作
1.3.1.サーバ起動処理
グローバルリストサーバシステム10におけるサーバSVの起動処理について説明する。図1中のサーバSV2、SV3が稼働している場合であってサーバSV1が起動するとき、図5を参照して、サーバSV1はLAN50上の他のサーバSV(SV2,SV3)を探索し、探索後、起動中のサーバSV2及びSV3からローカルリストLL2、LL3を取得する。以下、詳細を説明する。なお、本項では例として図1におけるサーバSV1の起動処理について説明するが、他のサーバSV(SV2,SV3)の起動処理も同様である。
1.3. System operation 1.3.1. Server Activation Processing Server SV activation processing in the global list server system 10 will be described. When the servers SV2 and SV3 in FIG. 1 are operating and the server SV1 is activated, referring to FIG. 5, the server SV1 searches for other servers SV (SV2 and SV3) on the LAN 50, After the search, the local lists LL2 and LL3 are acquired from the active servers SV2 and SV3. Details will be described below. In this section, the startup process of the server SV1 in FIG. 1 will be described as an example, but the startup processes of the other servers SV (SV2, SV3) are the same.

図5を参照して、サーバSV1はLAN50上で稼働している他のサーバSVを探索する前に、HDD14内のサーバリストをクリアする(S1)。続いて、サーバSV1は、LAN50で稼働している他のサーバSVを探索する。具体的には、サーバSV1はたとえばUDPプロトコルにより、コマンドポートで予め定められたマジックワードをLAN50にブロードキャストする(S2)。LAN50ではサーバSV2及びサーバSV3が稼働しているので、サーバSV2及びサーバSV3はステップS2でブロードキャストされたマジックワードをサーチポートで受信し、ブロードキャストしたサーバSV1に同じマジックワードを返信する。このとき、サーバSV2及びSV3は自身を特定するためのサーバ特定情報(IPアドレス)をサーバSV1に送信する。   Referring to FIG. 5, the server SV1 clears the server list in the HDD 14 before searching for another server SV operating on the LAN 50 (S1). Subsequently, the server SV1 searches for another server SV operating on the LAN 50. Specifically, the server SV1 broadcasts a magic word predetermined at the command port to the LAN 50 by, for example, the UDP protocol (S2). Since the server SV2 and the server SV3 are operating in the LAN 50, the server SV2 and the server SV3 receive the magic word broadcast in step S2 at the search port, and return the same magic word to the broadcast server SV1. At this time, the servers SV2 and SV3 transmit server specifying information (IP address) for specifying themselves to the server SV1.

続いて、サーバSV1は、マジックワード送信後の経過時間を計測するためのタイマをリセットし(S3)、その後、マジックワードの返信を受けたか否かを判断する(S4)。マジックワードの返信を受けた場合(他のサーバSVを発見した場合)、サーバSV1はそのサーバSVのサーバ特定情報をサーバリストに記録する(S5)。このとき、サーバSV1はマジックワードを返信したサーバSV順にサーバIDを付与し、サーバ特定情報を登録する。たとえば、サーバSV2、SV3の順にマジックワードを返信してきた場合、サーバSV1はサーバリストのサーバID=1にサーバSV2のサーバ特定情報を、サーバID=2にサーバSV3のサーバ特定情報を登録する。   Subsequently, the server SV1 resets a timer for measuring the elapsed time after sending the magic word (S3), and then determines whether a magic word reply has been received (S4). When a magic word reply is received (when another server SV is found), the server SV1 records server specifying information of the server SV in the server list (S5). At this time, the server SV1 assigns server IDs in the order of the server SVs to which the magic words are returned, and registers server specifying information. For example, when the magic words are returned in the order of the servers SV2 and SV3, the server SV1 registers the server identification information of the server SV2 in the server ID = 1 of the server list and the server identification information of the server SV3 in the server ID = 2.

サーバ特定情報を登録後、タイマが所定時間、たとえば2秒を超えたか否かを判断し(S6)、未だ超えていない場合はステップS4に戻る。すなわち、サーバSV1は2秒間だけ他のサーバSVからの応答を待つ。   After registering the server specifying information, it is determined whether or not the timer has exceeded a predetermined time, for example, 2 seconds (S6). That is, the server SV1 waits for a response from another server SV for 2 seconds.

なお、ステップS4でマジックワードの返信を受けない場合(他のサーバSVを発見しない場合)、サーバSV1は、マジックワードをブロードキャストしてから2秒を超えたか否かを判断し(S6)、未だ超えていない場合はステップS4に戻る。   If no magic word reply is received in step S4 (when no other server SV is found), the server SV1 determines whether or not it has exceeded 2 seconds since the magic word was broadcast (S6), and is still If not, the process returns to step S4.

ブロードキャスト後2秒を超えた場合、サーバSV1はサーバリストにサーバ特定情報が登録されているか否かを判断する(S7)。サーバリストが空の場合、つまりサーバリストにサーバ特定情報が全く記録されていない場合、サーバSV1は起動処理を終了する。一方、サーバリストが空でない場合、つまりサーバリストに少なくとも1つのサーバSVのサーバ特定情報が記録されている場合、サーバSV1はサーバリストに記録されたサーバSVに対して接続処理を行う(S8〜S12)。   If it has exceeded 2 seconds after the broadcast, the server SV1 determines whether or not server specifying information is registered in the server list (S7). When the server list is empty, that is, when no server identification information is recorded in the server list, the server SV1 ends the activation process. On the other hand, when the server list is not empty, that is, when the server identification information of at least one server SV is recorded in the server list, the server SV1 performs a connection process to the server SV recorded in the server list (S8 to S8). S12).

初めに、カウント値n=1とし(S8)、サーバリストに登録されたサーバ数がn以上か否かを判断する(S9)。判断の結果、サーバリストに登録されたサーバ数がn以上である場合、サーバSV1はサーバID=1のサーバSVのローカルリストLLを取得する(S10)。このローカルリスト取得処理については後述する。ローカルリスト取得処理を実行後、カウント値nをカウントアップし(S12)、ステップS9に戻ってローカルリスト取得処理を継続する。すなわち、サーバリストに登録された全てのサーバSV(SV2,SV3)のローカルリストLL(LL2,LL3)を取得するまでローカルリスト取得処理は継続される。ここで、ステップS10のローカルリスト取得処理について説明する。   First, the count value n is set to 1 (S8), and it is determined whether or not the number of servers registered in the server list is n or more (S9). As a result of the determination, if the number of servers registered in the server list is n or more, the server SV1 acquires the local list LL of the server SV with the server ID = 1 (S10). This local list acquisition process will be described later. After executing the local list acquisition process, the count value n is counted up (S12), and the process returns to step S9 to continue the local list acquisition process. That is, the local list acquisition process is continued until the local lists LL (LL2, LL3) of all the servers SV (SV2, SV3) registered in the server list are acquired. Here, the local list acquisition process in step S10 will be described.

サーバSV1がサーバSV2のローカルリストLL2を取得する場合、図6を参照して、サーバSV1は初めにサーバSV2との接続を確立し(接続処理:S1000)、その後ローカルリストLL2を取得する(リスト取得処理:S1010)。   When the server SV1 acquires the local list LL2 of the server SV2, referring to FIG. 6, the server SV1 first establishes a connection with the server SV2 (connection process: S1000), and then acquires the local list LL2 (list) Acquisition process: S1010).

サーバSV1が接続処理(S1000)を実行するとき、サーバSV2は接続応答処理(S1020)を実行する。具体的には、サーバSV1は、TCP(Transmission Control Protocol)に従い、サーバリストに登録されたサーバSV2のIPアドレス及びコマンドポートに基づいてソケットを生成し、このソケットでサーバSV2に接続を要求する(S1001)。コマンドポートは、サーバSV1からサーバSV2へのコマンドを受信し、かつサーバSV2からサーバSV1への応答を送信するためのポートである。サーバSV2はコマンドポートでの接続を受け付け(S1021)、これによりサーバSV1はサーバSV2のコマンドポートに接続を確立する。   When the server SV1 executes the connection process (S1000), the server SV2 executes the connection response process (S1020). Specifically, the server SV1 generates a socket based on the IP address and command port of the server SV2 registered in the server list in accordance with TCP (Transmission Control Protocol), and requests connection to the server SV2 using this socket ( S1001). The command port is a port for receiving a command from the server SV1 to the server SV2 and transmitting a response from the server SV2 to the server SV1. The server SV2 accepts a connection at the command port (S1021), whereby the server SV1 establishes a connection to the command port of the server SV2.

続いて、サーバSV1はコマンドポートにクライアントインデックス要求コマンドを送信する(S1002)。サーバSV2はクライアントインデックス要求コマンドに応答してコマンドポートからクライアントインデックスをサーバSV1に返信し(S1022)、サーバSV1はこれを受信する(S1003)。クライアントインデックス要求コマンドは、サーバSV1がサーバSV2にクライアントインデックスを要求するコマンドである。   Subsequently, the server SV1 transmits a client index request command to the command port (S1002). In response to the client index request command, the server SV2 returns the client index from the command port to the server SV1 (S1022), and the server SV1 receives this (S1003). The client index request command is a command in which the server SV1 requests a client index from the server SV2.

続いて、サーバSV1は、TCPに従い、サーバSV2のIPアドレス及びプッシュポートでソケットを生成し、このソケットでサーバSV2に接続を要求する(S1004)。プッシュポートは、サーバSV2からサーバSV1への要求を送信するためのポートである。サーバSV2はプッシュポートでの接続を受け付け(S1023)、これによりサーバSV1はサーバSV2のプッシュポートに接続を確立する。ただし、この時点ではまだ、サーバSV2はプッシュポートに接続されたものがどのサーバSVか又はどのオーディオクライアントCLか特定できていない。そのため、サーバSV1はステップS1003で受信したクライアントインデックスをサーバSV2のプッシュポートに送信する(S1005)。サーバSV2はクライアントインデックスを受信し、これによりプッシュポートに接続されたのがサーバSV1であると特定する(S1024)。プッシュポートの接続を確立後、サーバSV1はサーバSV2に対して自身のクライアント情報を送信する(S1006)。サーバSV2は送信されたクライアント情報を受信し、表5に示すクライアントリストに登録する。   Subsequently, the server SV1 generates a socket with the IP address and push port of the server SV2 in accordance with TCP, and requests connection to the server SV2 using this socket (S1004). The push port is a port for transmitting a request from the server SV2 to the server SV1. The server SV2 accepts a connection at the push port (S1023), whereby the server SV1 establishes a connection to the push port of the server SV2. However, at this time, the server SV2 has not yet identified which server SV or which audio client CL is connected to the push port. Therefore, the server SV1 transmits the client index received in step S1003 to the push port of the server SV2 (S1005). The server SV2 receives the client index, and thereby identifies that the server SV1 is connected to the push port (S1024). After establishing the push port connection, the server SV1 transmits its client information to the server SV2 (S1006). The server SV2 receives the transmitted client information and registers it in the client list shown in Table 5.

サーバSV1が接続処理(S1000)を実行し、サーバSV2が接続応答処理(S1020)を実行した結果、サーバSV1がサーバSV2に接続されると、サーバSV1はサーバSV2のローカルリストLL2を取得する(リスト取得処理:S1010)。このとき、サーバSV2はローカルリストLL2を送信する(リスト送信処理:S1030)。具体的には、サーバSV1はコマンドポートを用いてローカルリストLL2の要求コマンドをサーバSV2に送信する(S1011)。サーバSV2はサーバSV1から要求コマンドを受け、サーバSV2のローカルリストLL2をサーバSV1に送信する(S1031)。サーバSV1はサーバSV2からローカルリストLL2を受信し、HDD14内にローカルリストLL2を登録する(S1012)。このとき、サーバSV1内のサーバリスト内に、サーバSV2のサーバ情報がすべて登録される。なお、サーバSV1はサーバSV3に対しても同様の動作を行い、ローカルリストLL3を含むサーバSV3のサーバ情報をサーバリストに登録する。   As a result of the server SV1 executing the connection process (S1000) and the server SV2 executing the connection response process (S1020), when the server SV1 is connected to the server SV2, the server SV1 acquires the local list LL2 of the server SV2 ( List acquisition processing: S1010). At this time, the server SV2 transmits the local list LL2 (list transmission processing: S1030). Specifically, the server SV1 transmits a request command for the local list LL2 to the server SV2 using the command port (S1011). The server SV2 receives the request command from the server SV1, and transmits the local list LL2 of the server SV2 to the server SV1 (S1031). The server SV1 receives the local list LL2 from the server SV2, and registers the local list LL2 in the HDD 14 (S1012). At this time, all server information of the server SV2 is registered in the server list in the server SV1. The server SV1 performs the same operation on the server SV3, and registers the server information of the server SV3 including the local list LL3 in the server list.

以上の動作により、サーバSV1はサーバリストに登録された全てのサーバSV2及びSV3と接続を確立し、かつ、全てのローカルリストLL2及びLL3を取得する。   With the above operation, the server SV1 establishes connections with all the servers SV2 and SV3 registered in the server list, and acquires all the local lists LL2 and LL3.

図5に戻って、LAN50で稼働中の全てのサーバSVのローカルリストLLを取得後、カウント値nはサーバリスト内のサーバ数を超えるため(S9)、サーバSV1はLAN50上の他のサーバSVに対して自己の有するローカルリストLL1を送信する(ローカルリスト送信処理:S11)。以下、ステップS11のローカルリスト送信処理の詳細を説明する。   Returning to FIG. 5, since the count value n exceeds the number of servers in the server list after acquiring the local list LL of all servers SV operating on the LAN 50 (S9), the server SV1 is another server SV on the LAN 50. The local list LL1 owned by itself is transmitted to (local list transmission processing: S11). Details of the local list transmission process in step S11 will be described below.

図7を参照して、サーバSV1はステップS10にて全てのサーバSVのローカルリストLLを取得した後、準備OKコマンドをブロードキャストする(S1101)。LAN50上のサーバSV2、SV3はサーバSV1からブロードキャストされた準備OKコマンドを受けた後、サーバSV1に対し、接続処理(S1000)を実行する。このときサーバSV1は接続応答処理(S1020)を実行する。サーバSV2、SV3はサーバSV1との接続を確立後、リスト取得処理(S1010)を実行する。これに対しサーバSV1はリスト送信処理(S1030)を実行し、サーバSV1が有するローカルリストLL1をサーバSV2、SV3に送信する。   Referring to FIG. 7, server SV1 obtains local lists LL of all servers SV in step S10, and then broadcasts a preparation OK command (S1101). After receiving the preparation OK command broadcast from the server SV1, the servers SV2 and SV3 on the LAN 50 execute connection processing (S1000) on the server SV1. At this time, the server SV1 executes connection response processing (S1020). The servers SV2 and SV3 execute list acquisition processing (S1010) after establishing a connection with the server SV1. In response to this, the server SV1 executes list transmission processing (S1030), and transmits the local list LL1 of the server SV1 to the servers SV2 and SV3.

以上の動作によりサーバSV2、SV3はサーバSV1のローカルリストLL1を取得できる。よって、各サーバSVは、LAN50上の複数のサーバSVが有するローカルリストLLを全て蓄積する。   Through the above operation, the servers SV2 and SV3 can acquire the local list LL1 of the server SV1. Therefore, each server SV accumulates all local lists LL possessed by a plurality of servers SV on the LAN 50.

なお、図7において、サーバSV1は準備OKコマンドをブロードキャストする前であっても、他のサーバSV又はオーディオクライアントCLからコマンドポート接続要求を受けるが、この場合サーバSV1はそのコマンドポート接続要求を受け付けない。他のサーバSVのローカルリストLLを全て取得した後でなければ、正確なグローバルリストGLをオーディオクライアントに送信できないからである。   In FIG. 7, the server SV1 receives a command port connection request from another server SV or the audio client CL even before the preparation OK command is broadcast. In this case, the server SV1 receives the command port connection request. Absent. This is because the accurate global list GL cannot be transmitted to the audio client unless all the local lists LL of the other servers SV are acquired.

1.3.2.起動処理後のサーバ動作
図8を参照して、起動後のサーバSVは、接続動作(S100)、配信動作(S200)、リスト更新動作(S300)を実行する。接続動作(S100)では、LAN50上に新たに起動したサーバSVと接続しローカルリストLLの授受を実行したり、LAN50上のオーディオクライアントCLと接続してグローバルリストGLを送信したりする。配信動作(S200)では、オーディオクライアントCLからの要求に応じて曲データを配信する。リスト更新動作(S300)では、自身のローカルリストLL又は他のサーバSVのローカルリストLLが更新されたとき、更新されたローカルリストLLの授受を実行する。各動作を実行後、サーバSVは自身の動作を終了する動作終了が選択されたか否か判断する(S15)。動作を終了するか否かの選択は、たとえばそのサーバSVを管理するユーザにより行われる。動作終了が選択されなかった場合、サーバSVはステップS100に戻って各動作を繰り返す(S100〜S300)。一方、ステップS15で動作終了が選択された場合、サーバSVは終了動作を実行する(S400)。以下、それぞれの動作について詳細を説明する。
1.3.2. Server Operation After Startup Processing Referring to FIG. 8, server SV after startup executes connection operation (S100), distribution operation (S200), and list update operation (S300). In the connection operation (S100), the local list LL is exchanged by connecting to the server SV newly activated on the LAN 50, or the global list GL is transmitted by connecting to the audio client CL on the LAN 50. In the distribution operation (S200), music data is distributed in response to a request from the audio client CL. In the list update operation (S300), when the own local list LL or the local list LL of another server SV is updated, the updated local list LL is exchanged. After executing each operation, the server SV determines whether or not the operation end for ending its own operation has been selected (S15). The selection of whether or not to end the operation is performed by a user who manages the server SV, for example. If the operation end is not selected, the server SV returns to step S100 and repeats each operation (S100 to S300). On the other hand, when the operation end is selected in step S15, the server SV executes the end operation (S400). Details of each operation will be described below.

1.3.2.1.他のサーバとの接続動作
サーバSV1が稼働中にLAN50上に新たなサーバSV(以下、起動サーバSVと称する)が起動した場合、起動サーバSVはサーバ探索用のマジックワードをブロードキャストする。図9を参照して、サーバSV1は起動サーバSVによりブロードキャストされたマジックワードを受信したか否かを判断する(S101)。マジックワードを受けたとき、サーバSV1はブロードキャストした起動サーバSVに対して接続応答処理(S1020)を実行し、起動サーバSVとの接続を確立する。このとき、サーバSV1はクライアントリストに起動サーバSVのクライアント情報を登録する。
1.3.2.1. Connection Operation with Other Servers When a new server SV (hereinafter referred to as an activation server SV) is activated on the LAN 50 while the server SV1 is in operation, the activation server SV broadcasts a server search magic word. Referring to FIG. 9, server SV1 determines whether or not a magic word broadcast by activation server SV has been received (S101). When receiving the magic word, the server SV1 executes a connection response process (S1020) for the broadcasted start server SV to establish a connection with the start server SV. At this time, the server SV1 registers the client information of the activation server SV in the client list.

接続を確立後、サーバSV1は起動サーバSVに対してリスト送信処理を実行し(S1030)、ローカルリストLL1を送信する。ローカルリストLL1を送信後、サーバSV1はステップS1020で接続された装置がサーバSVかクライアントCLかを判断する(S102)。このときサーバSV1はクライアントリストに登録したクライアント情報内の「type」(クライアントタイプ)を参照して判断する。判断の結果、接続された装置が起動サーバSVであるため、サーバSV1は起動サーバSVからローカルリストLLを取得し、サーバリストにサーバ情報を登録する。グローバルリストGLを更新するためである。よって、サーバSV1は起動サーバSVに対して接続処理(S1000)を実行する。接続処理実行後、サーバSVは接続が成功したか否かを判断する(S103)。起動サーバSVが準備OKコマンドをブロードキャストする前(すなわち、起動サーバSVがサーバSV1との接続を確立し、ローカルリストLL1を取得後、他のサーバSVのローカルリストLLnの取得処理を実行中であるとき)、サーバSV1が起動サーバSVに接続処理(S1000)を実行しても接続は失敗する。この場合、サーバSV1は起動サーバSVから準備OKコマンドを受けた後(S104)、再び接続処理を実行する(S1000)。接続に成功した場合、サーバSV1は起動サーバSVからローカルリストLLを取得すべくリスト取得処理を実行する(S1010)。起動サーバSVのローカルリストLLを取得した後、サーバSVは接続動作を終了する。   After establishing the connection, the server SV1 executes list transmission processing to the activation server SV (S1030), and transmits the local list LL1. After transmitting the local list LL1, the server SV1 determines whether the device connected in step S1020 is the server SV or the client CL (S102). At this time, the server SV1 makes a determination with reference to “type” (client type) in the client information registered in the client list. As a result of the determination, since the connected device is the activation server SV, the server SV1 acquires the local list LL from the activation server SV and registers server information in the server list. This is for updating the global list GL. Therefore, the server SV1 executes connection processing (S1000) with respect to the activation server SV. After executing the connection process, the server SV determines whether or not the connection is successful (S103). Before the activation server SV broadcasts the preparation OK command (that is, after the activation server SV establishes a connection with the server SV1 and acquires the local list LL1, acquisition processing of the local list LLn of another server SV is being executed) When the server SV1 executes the connection process (S1000) to the activation server SV, the connection fails. In this case, after receiving the preparation OK command from the activation server SV (S104), the server SV1 executes the connection process again (S1000). If the connection is successful, the server SV1 executes list acquisition processing to acquire the local list LL from the activation server SV (S1010). After acquiring the local list LL of the activation server SV, the server SV ends the connection operation.

以上の動作により、サーバSV1は新たに起動したサーバSVのローカルリストLLも取得できる。   Through the above operation, the server SV1 can also acquire the local list LL of the newly started server SV.

1.3.2.2.オーディオクライアントとの接続動作
LAN50上のオーディオクライアントCL2がグローバルリストGLを取得すべく、サーバSV1に接続を要求する場合もある。このようなオーディオクライアントCLからの接続依頼処理(S120)に対して、サーバSV1は接続動作(S110)を実行する。図10を参照して、オーディオクライアントCL2がサーバSV1に対して接続処理を実行したとき(S1000)、サーバSV1は接続応答処理を実行する(S1020)。このとき、サーバSV1はクライアントリストにオーディオクライアントCL2のクライアント情報を登録する。
1.3.2.2. Connection Operation with Audio Client The audio client CL2 on the LAN 50 may request connection to the server SV1 in order to acquire the global list GL. In response to the connection request processing (S120) from the audio client CL, the server SV1 executes a connection operation (S110). Referring to FIG. 10, when audio client CL2 executes a connection process for server SV1 (S1000), server SV1 executes a connection response process (S1020). At this time, the server SV1 registers the client information of the audio client CL2 in the client list.

サーバSV1が接続応答処理を実行後(S1020)、オーディオクライアントCL2はグローバルリストGLの要求コマンドをコマンドポートを用いてサーバSV1に送信する(S105)。サーバSV1はオーディオクライアントCL2からのグローバルリスト要求コマンドを受け、プレゼンテーションコンテンツリストPLに基づいてグローバルリストGLを作成する(S106)。具体的には、プレゼンテーションコンテンツリストPLに登録された複数の曲情報Iの格納場所から曲情報Iを取得し、全ての曲情報Iをリスト化してグローバルリストGLを作成する。グローバルリストGLを作成後、サーバSV1はオーディオクライアントCL2にそのグローバルリストGLを送信する(S107)。オーディオクライアントCL2はグローバルリストGLを受信し、メモリ32に登録する(S108)。   After the server SV1 executes the connection response process (S1020), the audio client CL2 transmits a request command for the global list GL to the server SV1 using the command port (S105). The server SV1 receives the global list request command from the audio client CL2, and creates the global list GL based on the presentation content list PL (S106). Specifically, the music information I is acquired from the storage locations of the plurality of music information I registered in the presentation content list PL, and all the music information I is listed to create the global list GL. After creating the global list GL, the server SV1 transmits the global list GL to the audio client CL2 (S107). The audio client CL2 receives the global list GL and registers it in the memory 32 (S108).

なお、オーディオクライアントCL2はサーバSV1以外のサーバSV(SV2、SV3)からでもグローバルリストGLを取得できる。また他のオーディオクライアントCLも同様にグローバルリストGLを取得できる。   The audio client CL2 can acquire the global list GL from a server SV (SV2, SV3) other than the server SV1. Similarly, the other audio clients CL can acquire the global list GL.

以上の動作により、クライアントCLはLAN50上のいずれかのサーバSVに接続すれば、LAN50上のすべての曲情報Iを含むグローバルリストGLを取得できる。   With the above operation, the client CL can acquire the global list GL including all the music information I on the LAN 50 by connecting to any server SV on the LAN 50.

1.3.2.3.配信動作
オーディオクライアントCL2のユーザはサーバSV1から取得したグローバルリストGLを参照し、聴きたい曲を選択する。グローバルリストGLを参照後、ユーザが曲データM31を選択した場合、図11を参照して、オーディオクライアントCL2は選択された曲データM31を蓄積するサーバSV3に対して曲データM31を要求する配信依頼処理を実行する(S240)。オーディオクライアントCL3が要求する曲データM31を蓄積するサーバSV3は配信動作(S200)を実行する。
1.3.2.3. Distribution Operation The user of the audio client CL2 refers to the global list GL acquired from the server SV1 and selects a song to be listened to. When the user selects the song data M31 after referring to the global list GL, referring to FIG. 11, the audio client CL2 requests the server SV3 that stores the selected song data M31 to request the song data M31. The process is executed (S240). The server SV3 that stores the music data M31 requested by the audio client CL3 executes the distribution operation (S200).

図11を参照して、オーディオクライアントCL2はサーバSV3に対して接続処理を実行する(S1000)。グローバルリストGLには、曲データが蓄積されるサーバSVを特定するためのサーバ特定情報(IPアドレス及びポート番号)が記録されている。オーディオクライアントCL2は選択された曲データM31の曲情報I31内に登録されたサーバ特定情報に基づいて、サーバSV3に対して接続処理を実行する。サーバSV3はオーディオクライアントCL2に対して接続応答処理(S1020)を実行する。これにより、曲データM31を配信するための接続が確立する。なお、このとき、サーバSV1は接続動作(S100)において確立したオーディオクライアントCL2との接続を維持する。つまり、オーディオクライアントCL2はサーバSV1とサーバSV3とに接続を確立したことになる。オーディオクライアントCL2がサーバSV1との接続を切断した後にサーバSV3との接続を試みた結果、接続に失敗した場合、オーディオクライアントCL2はLAN50から離脱してしまう。そのような事態を防止するために、サーバSV1はオーディオクライアントCL2との接続を維持しておく。   Referring to FIG. 11, the audio client CL2 executes a connection process for the server SV3 (S1000). In the global list GL, server specifying information (IP address and port number) for specifying a server SV in which song data is stored is recorded. The audio client CL2 executes a connection process with respect to the server SV3 based on the server specifying information registered in the music information I31 of the selected music data M31. The server SV3 executes connection response processing (S1020) for the audio client CL2. Thereby, the connection for distributing the music data M31 is established. At this time, the server SV1 maintains the connection with the audio client CL2 established in the connection operation (S100). That is, the audio client CL2 has established a connection with the server SV1 and the server SV3. If the audio client CL2 disconnects from the server SV1 and then attempts to connect to the server SV3 as a result of the connection failure, the audio client CL2 leaves the LAN 50. In order to prevent such a situation, the server SV1 maintains a connection with the audio client CL2.

サーバSV3とオーディオクライアントCL2との接続が確立した後、オーディオクライアントCL2はコマンドポートを介して表9に示す曲データ転送要求コマンドを送信する(S221)。

Figure 0004026668
この曲データ転送要求コマンドは、転送すべき曲データM31の取得開始アドレス及び取得データ長を含む。サーバSV3は曲データM31の転送要求コマンドに応答して、取得開始アドレスにより指定された先頭アドレスからその取得データ長分だけ曲データM31のデータをオーディオクライアントCL2に配信する(S201)。オーディオクライアントCL2は配信された曲データM31のデータをメモリ32に格納する。メモリ32は図12に示すように複数(図12では8つ)のバッファを含む。図13に示すように、オーディオクライアントCL2は曲データ転送要求コマンドで曲の先頭から1バッファ分(=取得データ長)の曲データを取得して格納する(S222)。格納後、オーディオクライアントCL2はメモリ32のバッファが全て曲データで埋まったか判断し(S223)、図14に示すようにバッファが全て埋まるまで曲データを取得して格納する。 After the connection between the server SV3 and the audio client CL2 is established, the audio client CL2 transmits a song data transfer request command shown in Table 9 via the command port (S221).
Figure 0004026668
This song data transfer request command includes the acquisition start address and the acquisition data length of the song data M31 to be transferred. In response to the transfer request command of the music data M31, the server SV3 distributes the data of the music data M31 from the head address specified by the acquisition start address for the acquired data length to the audio client CL2 (S201). The audio client CL2 stores the distributed music data M31 in the memory 32. As shown in FIG. 12, the memory 32 includes a plurality of (eight in FIG. 12) buffers. As shown in FIG. 13, the audio client CL2 acquires and stores music data for one buffer (= acquired data length) from the head of the music by a music data transfer request command (S222). After the storage, the audio client CL2 determines whether all the buffers in the memory 32 are filled with music data (S223), and acquires and stores the music data until all the buffers are filled as shown in FIG.

ステップS221〜S223を繰り返し、バッファが曲データで全て埋まったら、オーディオクライアントCL2は再生を開始する(S224)。具体的には、図15に示すように、先頭バッファから曲データを音声処理部34に出力し始める。曲データを出力して再生していると、やがて図16に示すように1バッファ分の空きが生じる。メモリ32に空きが生じると(S225)、オーディオクライアントCL2は再び曲データ転送要求をサーバSV3に送信し(S226)、サーバSV3は要求分の曲データを配信する(S202)。オーディオクライアントCL2は配信された曲データをメモリ32の空いたバッファに格納する(S227)。格納後、オーディオクライアントCL2は曲データM31を全て受信したか否か確認する(S228)。曲データM31を全て受信していない場合、すなわち、サーバSV3が曲データM31の全データを未だオーディオクライアントCL2に送信していない場合、オーディオクライアントCL2及びサーバSV3は再生によりメモリ32に空きが生じるたびにステップS226、S202、S227を繰り返す。なお、上記では、バッファが曲データで全て埋まってから再生を開始しているが、全て埋まる前に再生し始めてもよい。   Steps S221 to S223 are repeated, and when the buffer is completely filled with music data, the audio client CL2 starts reproduction (S224). Specifically, as shown in FIG. 15, music data starts to be output from the head buffer to the audio processing unit 34. When music data is output and played back, there will eventually be an empty space for one buffer as shown in FIG. When the memory 32 becomes empty (S225), the audio client CL2 transmits a music piece data transfer request to the server SV3 again (S226), and the server SV3 distributes the music data for the request (S202). The audio client CL2 stores the distributed music piece data in an empty buffer in the memory 32 (S227). After the storage, the audio client CL2 confirms whether or not all the music data M31 has been received (S228). When all the music data M31 has not been received, that is, when the server SV3 has not yet transmitted all the data of the music data M31 to the audio client CL2, the audio client CL2 and the server SV3 are freed up in the memory 32 due to reproduction. Steps S226, S202, and S227 are repeated. In the above description, the reproduction is started after the buffer is completely filled with music data. However, the reproduction may be started before the buffer is completely filled.

オーディオクライアントCL2がサーバSV3から曲データM31を全て受信した場合(S228)、オーディオクライアントCL2は曲データM31を全て再生するまで再生動作を継続する(S229)。   When the audio client CL2 receives all the music piece data M31 from the server SV3 (S228), the audio client CL2 continues the reproduction operation until all the music piece data M31 is reproduced (S229).

以上のように、クライアントCLは選択した曲データを蓄積するサーバSVをグローバルリストGLから特定し、曲データの転送を要求できる。また、曲データを分割し、サーバSVからオーディオクライアントCLに断続的に配信するため、バッファ容量が少なくても適切に音楽を再生できる。   As described above, the client CL can specify the server SV for storing the selected song data from the global list GL and request the transfer of the song data. In addition, the music data is divided and intermittently distributed from the server SV to the audio client CL, so that music can be appropriately reproduced even if the buffer capacity is small.

1.3.2.4.リスト更新動作
サーバSVは(1)自己のローカルリストLLが更新された場合、(2)他のサーバSVのローカルリストLLが更新された場合、(3)他のサーバが動作を終了し、LAN50から離脱した場合、にそれぞれグローバルリストGLを更新する動作であるリスト更新動作を行う。このような場合、LAN50上の複数のサーバSVが保有する曲データ数が変更するため、オーディオクライアントCLが変更後の最新のグローバルリストGLを取得する必要があるためである。以下、(1)〜(3)のリスト更新動作についてそれぞれ説明する。
1.3.2.4. List update operation The server SV (1) When its own local list LL is updated, (2) When the local list LL of another server SV is updated, (3) The other server ends its operation, and the LAN 50 When the user leaves the list, a list update operation, which is an operation of updating the global list GL, is performed. In such a case, since the number of song data held by the plurality of servers SV on the LAN 50 changes, the audio client CL needs to acquire the latest global list GL after the change. Hereinafter, the list update operations (1) to (3) will be described.

1.3.2.4.1.自己のローカルリストが更新された場合
図17を参照して、サーバSV1のHDD14に新たな曲データM12が蓄積されたとき、サーバSV1はローカルリストLL1を更新する(S301)。さらに、サーバSV1はローカルリストLL1が更新される前のプレゼンテーションコンテンツリストPLを削除する(S302)。その後、ステップS301で更新されたローカルリストLL1に対応した新たなプレゼンテーションコンテンツリストPLを作成する(S303)。
1.3.2.4.1. When its own local list is updated Referring to FIG. 17, when new song data M12 is stored in the HDD 14 of the server SV1, the server SV1 updates the local list LL1 (S301). Further, the server SV1 deletes the presentation content list PL before the local list LL1 is updated (S302). Thereafter, a new presentation content list PL corresponding to the local list LL1 updated in step S301 is created (S303).

新たなプレゼンテーションコンテンツリストPLを作成後、サーバSV1に対して接続を確立している全てのサーバSV及びオーディオクライアントCLに対し、リスト更新通知を行う(S304〜S307)。具体的には、サーバSV1はカウント値n=1とし(S304)、nがクライアントリストに登録されたクライアント数よりも多いか否か判断する(S305)。判断の結果、クライアント数がn以上であった場合、サーバSV1はクライアントインデックス=nのサーバSV又はオーディオクライアントCLに対してリスト更新通知を送信する(S306)。通知後、サーバSV1はnをカウントアップし(S307)、ステップS305に戻る。   After creating a new presentation content list PL, a list update notification is sent to all servers SV and audio clients CL that have established connections to the server SV1 (S304 to S307). Specifically, the server SV1 sets the count value n = 1 (S304), and determines whether n is larger than the number of clients registered in the client list (S305). As a result of the determination, if the number of clients is n or more, the server SV1 transmits a list update notification to the server SV or the audio client CL with the client index = n (S306). After the notification, the server SV1 counts up n (S307) and returns to step S305.

以上の動作を繰り返すことにより、サーバSV1に対して接続を確立している全てのサーバSV及びオーディオクライアントCLに対してリスト更新通知を送信できる。ステップS305でクライアント数よりもnが大きい場合、サーバSV1はクライアントリスト中の全てのサーバSV及びオーディオクライアントCLに対して通知したため、その動作を終了する。   By repeating the above operation, the list update notification can be transmitted to all the servers SV and audio clients CL that have established connections with the server SV1. When n is larger than the number of clients in step S305, the server SV1 notifies all the servers SV and audio clients CL in the client list, and thus ends its operation.

[サーバからリスト更新通知を受けたオーディオクライアントの動作]
図18を参照して、サーバSV1からのリスト更新通知(S306)を受けたオーディオクライアントCLは、初めに自身がメモリ32に登録しているグローバルリストGLを削除する(S351)。続いて、オーディオクライアントCLはサーバSV1にグローバルリスト要求コマンドを送信する(S352)。サーバSV1はグローバルリスト要求コマンドを受け、更新されたグローバルリストGLをオーディオクライアントCL2に送信する(S308)。オーディオクライアントCLは送信されたグローバルリストGLをメモリ32に登録する(S353)。
[Operation of audio client that received list update notification from server]
Referring to FIG. 18, the audio client CL that has received the list update notification (S306) from the server SV1 first deletes the global list GL registered in the memory 32 (S351). Subsequently, the audio client CL transmits a global list request command to the server SV1 (S352). The server SV1 receives the global list request command, and transmits the updated global list GL to the audio client CL2 (S308). The audio client CL registers the transmitted global list GL in the memory 32 (S353).

ステップS306で送信されたリスト更新通知を受けた他のサーバSVの動作について次に説明する。   Next, the operation of another server SV that has received the list update notification transmitted in step S306 will be described.

1.3.2.4.2.他のサーバのローカルリストLLが更新された場合
図19を参照して、ステップS306でサーバSV1から送信されたリスト更新通知をサーバSV2が受信したとき(S311)、サーバSV2は既存のプレゼンテーションコンテンツリストPLを削除する(S312)。削除後、サーバSV2はHDD14に登録しているローカルリストLL1を削除する(S313)。ローカルリストLL1を削除後、サーバSV2は更新されたローカルリストLL1をサーバSV1に要求する(S314)。サーバSV1はサーバSV2からの要求を受信し(S331)、更新されたローカルリストLL1を送信する(S332)。サーバSV2は送信されたローカルリストLL1を受信し、HDD14に登録する(S315)。登録後、サーバSV2はプレゼンテーションコンテンツリストPLを作成する(S316)。これにより、グローバルリストGLは更新される。
1.3.2.4.2. When Local List LL of Other Server is Updated Referring to FIG. 19, when server SV2 receives the list update notification transmitted from server SV1 in step S306 (S311), server SV2 has an existing presentation content list. The PL is deleted (S312). After the deletion, the server SV2 deletes the local list LL1 registered in the HDD 14 (S313). After deleting the local list LL1, the server SV2 requests the updated local list LL1 from the server SV1 (S314). The server SV1 receives the request from the server SV2 (S331), and transmits the updated local list LL1 (S332). The server SV2 receives the transmitted local list LL1 and registers it in the HDD 14 (S315). After registration, the server SV2 creates a presentation content list PL (S316). Thereby, the global list GL is updated.

プレゼンテーションコンテンツリストPLを作成後、サーバSV2は更新されたグローバルリストGLをサーバSV2と接続する複数のオーディオクライアントCLに送信するために、リスト更新通知処理(S320)を行う。具体的には、サーバSV2はカウント値n=1とした後(S321)、クライアントリストに登録されたクライアント数がn以上であるか否か判断する(S322)。判断の結果、クライアント数がn以上である場合、サーバSV2はクライアントインデックス=nの機器がオーディオクライアントCLであるか否か判断する(S323)。判断はクライアントリストに登録されたクライアント情報内の「type」(クライアントタイプ)に基づいて行う。判断の結果、クライアントインデックス=nの「type」が「オーディオクライアント」の場合、サーバSV2はそのオーディオクライアントCLに対してリスト更新通知を送信する(S324)。送信後、カウント値nをカウントアップして(S325)、S325に戻る。一方、ステップS323での判断の結果、クライアントインデックス=nの「type」が「サーバ」である場合はリスト更新通知を送信することなくステップS325へ進む。他のサーバSVに対してはサーバSV1からリスト更新通知が送信されているため、サーバSV2はオーディオクライアントCLに対してのみリスト更新通知を行えばよいためである。   After creating the presentation content list PL, the server SV2 performs list update notification processing (S320) in order to transmit the updated global list GL to the plurality of audio clients CL connected to the server SV2. Specifically, after setting the count value n = 1 (S321), the server SV2 determines whether the number of clients registered in the client list is n or more (S322). As a result of the determination, if the number of clients is n or more, the server SV2 determines whether or not the device with the client index = n is the audio client CL (S323). The determination is made based on “type” (client type) in the client information registered in the client list. As a result of the determination, if “type” of the client index = n is “audio client”, the server SV2 transmits a list update notification to the audio client CL (S324). After transmission, the count value n is counted up (S325), and the process returns to S325. On the other hand, as a result of the determination in step S323, if “type” of the client index = n is “server”, the process proceeds to step S325 without transmitting the list update notification. This is because the list update notification is transmitted from the server SV1 to the other server SV, so that the server SV2 only needs to send the list update notification to the audio client CL.

以上の動作を繰り返すことで、サーバSV2に接続された全てのオーディオクライアントCLに対してリスト更新通知を送信する。リスト更新通知を受けたオーディオクライアントCLの動作は図18と同じである。   By repeating the above operation, a list update notification is transmitted to all audio clients CL connected to the server SV2. The operation of the audio client CL that has received the list update notification is the same as in FIG.

1.3.2.4.3.他のサーバが離脱した場合
図20を参照して、LAN50で稼働中のサーバSV2がその動作を停止し、LAN50から離脱する場合、サーバSV2はLAN50上の他のサーバSV(SV1、SV3)に対して離脱通知をブロードキャストする(S335)。サーバSV1はサーバSV2からの離脱通知を受信し(S311)、既存のプレゼンテーションコンテンツリストPLを削除する(S312)。さらにサーバSV1は、HDD14に登録しているローカルリストLL2を削除する(S313)。ローカルリストLL2を削除後、サーバSV1はプレゼンテーションコンテンツリストPLを作成する(S316)。これにより、プレゼンテーションコンテンツリストPLに基づき作成されるグローバルリストGLは、ローカルリストLL2を含まない。サーバSV1はプレゼンテーションコンテンツリストPLを作成後、リスト更新通知処理(S320)を実行する。サーバSV3についてもサーバSV1と同じ動作を行う。
1.3.2.4.3. When another server leaves the server Referring to FIG. 20, when the server SV2 operating on the LAN 50 stops its operation and leaves the LAN 50, the server SV2 is transferred to another server SV (SV1, SV3) on the LAN 50. On the other hand, a notification of departure is broadcasted (S335). The server SV1 receives the withdrawal notification from the server SV2 (S311), and deletes the existing presentation content list PL (S312). Further, the server SV1 deletes the local list LL2 registered in the HDD 14 (S313). After deleting the local list LL2, the server SV1 creates a presentation content list PL (S316). Accordingly, the global list GL created based on the presentation content list PL does not include the local list LL2. After creating the presentation content list PL, the server SV1 executes list update notification processing (S320). The server SV3 performs the same operation as the server SV1.

以上のリスト更新動作により、オーディオクライアントCLは常に最新のグローバルリストGLを取得できる。   Through the above list update operation, the audio client CL can always acquire the latest global list GL.

1.3.2.5.終了動作
オーディオクライアントCLに接続されたサーバSV1が動作を終了し、LAN50から離脱する場合、そのオーディオクライアントCLの接続先をLAN50上の他のサーバSVに変更する方が好ましい。また、サーバSV1がオーディオクライアントCLに対して曲データを配信中に離脱する場合、クライアントCLがその曲データの配信を継続して受けられるように対処する方が好ましい。
1.3.2.5. Ending Operation When the server SV1 connected to the audio client CL ends the operation and leaves the LAN 50, it is preferable to change the connection destination of the audio client CL to another server SV on the LAN 50. Further, when the server SV1 leaves during the distribution of music data to the audio client CL, it is preferable to deal with such that the client CL can continue to receive the music data.

図21を参照して、サーバSV1がその動作を終了する場合、初めにカウント値n=0とし(S401)、サーバSV1に接続しているオーディオクライアントCL数がnより大きいか否かを判断する(S402)。ステップS402の判断は、クライアントリストに基づいて行われる。判断の結果、オーディオクライアントCL数がn以下であった場合、サーバSV1にはオーディオクライアントCLが接続されていない。よって、サーバSV1は離脱通知を他のサーバSVに送信し(S335)。動作を終了する。   Referring to FIG. 21, when server SV1 ends its operation, first, count value n = 0 is set (S401), and it is determined whether or not the number of audio clients CL connected to server SV1 is larger than n. (S402). The determination in step S402 is made based on the client list. As a result of the determination, if the number of audio clients CL is n or less, the audio client CL is not connected to the server SV1. Accordingly, the server SV1 transmits a leave notification to another server SV (S335). End the operation.

一方、ステップS402でオーディオクライアントCL数がnよりも大きい場合(つまり、サーバSV1に接続しているオーディオクライアントCLが存在する場合)、クライアントインデックス=nのオーディオクライアントCLが現在再生中か否かを判断する(S403)。   On the other hand, if the number of audio clients CL is larger than n in step S402 (that is, if there is an audio client CL connected to the server SV1), it is determined whether or not the audio client CL with client index = n is currently being reproduced. Judgment is made (S403).

判断の結果、クライアントインデックス=nのオーディオクライアントCLが再生中でない場合(以降、このオーディオクライアントCLをCL2とする)、サーバSV1はオーディオクライアントCL2に対して引継サーバSVに接続を切り替えるようサーバ切換指示を送信する(S404)。ここで、引継サーバSVとは、オーディオクライアントCL2との接続を引き継ぐサーバSVである。サーバSV1は引継サーバSVをサーバリストに基づいて決定する。具体的には、サーバリスト中のサーバID=1のサーバSVを引継サーバSVに決定する。たとえば、サーバID=1にサーバSV2のサーバ特定情報が登録されているとき、サーバSV1は引継サーバSVをサーバSV2に決定する。サーバSV1はサーバ切換指示を送信した後、カウント値nをカウントアップし(S407)、再びステップS402に戻る。   As a result of the determination, if the audio client CL with the client index = n is not being reproduced (hereinafter, this audio client CL is referred to as CL2), the server SV1 instructs the audio client CL2 to switch the connection to the takeover server SV. Is transmitted (S404). Here, the takeover server SV is a server SV that takes over the connection with the audio client CL2. The server SV1 determines the takeover server SV based on the server list. Specifically, the server SV having the server ID = 1 in the server list is determined as the takeover server SV. For example, when the server identification information of the server SV2 is registered in the server ID = 1, the server SV1 determines the takeover server SV as the server SV2. After transmitting the server switching instruction, the server SV1 counts up the count value n (S407) and returns to step S402 again.

オーディオクライアントCL2はサーバSV1からのサーバ切換指示を受けた後(S431)、サーバSV1との接続を切断する(S432)。切断後、オーディオクライアントCL2は切換指示に従って、サーバSV2に対して接続処理を実行する(S1000)。このとき、サーバSV2は接続応答処理を実行する(S1020)。オーディオクライアントCL2はサーバSV2と接続を確立後、リスト取得処理を実行する(S1010)。このとき、サーバSV2はリスト送信処理を実行する(S1030)。以上の動作により、サーバSV1が動作を終了しても、オーディオクライアントCL2は接続先をサーバSV2に切り替えることで、最新のグローバルリストGLをサーバSV2から取得できる。   After receiving the server switching instruction from the server SV1 (S431), the audio client CL2 disconnects from the server SV1 (S432). After the disconnection, the audio client CL2 executes a connection process for the server SV2 in accordance with the switching instruction (S1000). At this time, the server SV2 executes a connection response process (S1020). After establishing connection with the server SV2, the audio client CL2 executes list acquisition processing (S1010). At this time, the server SV2 executes list transmission processing (S1030). With the above operation, even when the server SV1 ends the operation, the audio client CL2 can acquire the latest global list GL from the server SV2 by switching the connection destination to the server SV2.

一方、ステップS403での判断の結果、クライアントインデックス=nのオーディオクライアントCLが曲データM11を再生中である場合(以降、このオーディオクライアントCLをCL1とする)、サーバSV1が動作を終了した後も、オーディオクライアントCL1は曲データM11の配信の続きを受ける必要がある。曲データM11の配信が途切れたら、オーディオクライアントCL1は曲データM11の再生を途中で終了させなければならなくなるからである。よって、サーバSV1は曲データM11の配信の続きを引継サーバSVに実行させるように対処した後、その動作を終了する。具体的には、サーバSV1はサーバSV2に対して曲データM11の曲データ引継処理を実行する(S404)。このときサーバSV2は曲データ引受処理を実行する(S414)。以下、曲データ引継処理及び曲データ引受処理について説明する。   On the other hand, as a result of the determination in step S403, if the audio client CL with the client index = n is reproducing the song data M11 (hereinafter, this audio client CL is referred to as CL1), even after the server SV1 finishes the operation. The audio client CL1 needs to receive the continuation of the distribution of the music data M11. This is because if the distribution of the music data M11 is interrupted, the audio client CL1 must end the reproduction of the music data M11 in the middle. Therefore, the server SV1 finishes the operation after dealing with the takeover server SV to continue the distribution of the music data M11. Specifically, the server SV1 executes the music data takeover process of the music data M11 with respect to the server SV2 (S404). At this time, the server SV2 executes music data acceptance processing (S414). Hereinafter, the music data takeover process and the music data takeover process will be described.

図22を参照して、サーバSV1はサーバSV2に対してオーディオクライアントCL1に配信中の曲データM11の登録を要求する(S4041)。サーバSV2はサーバSV1からの要求を受信し(S4111)、曲データM11を格納するためにHDD14内に新規曲IDを登録する(S4112)。サーバSV2は新規曲IDをサーバSV1に送信する(S4113)。サーバSV1は新規曲IDを受信し、受信した新規曲IDを付与した曲データM11をサーバSV2に送信する(ステップS4043)。サーバSV2は曲データM11を受信し、HDD14内の新規曲IDの領域に格納する(S4114)。以上の動作により、曲データM11はサーバSV1からサーバSV2に引き継がれる。   Referring to FIG. 22, the server SV1 requests the server SV2 to register the music data M11 being distributed to the audio client CL1 (S4041). The server SV2 receives the request from the server SV1 (S4111), and registers a new song ID in the HDD 14 to store the song data M11 (S4112). The server SV2 transmits the new song ID to the server SV1 (S4113). The server SV1 receives the new song ID, and transmits the song data M11 to which the received new song ID is assigned to the server SV2 (step S4043). The server SV2 receives the music data M11 and stores it in the area of the new music ID in the HDD 14 (S4114). With the above operation, the music data M11 is taken over from the server SV1 to the server SV2.

図21に戻って、引継サーバSVであるサーバSV2がサーバSV1から曲データM11を引き継いだ後、オーディオクライアントCL1が曲データM11中のどの位置からデータ配信サーバSV2に要求すれば良いかを決定する必要がある。オーディオクライアントCL1はサーバSV1から曲データM11の途中まで配信を受けているため、サーバSV2から曲データM11を初めから配信してもらう必要はないからである。よって、サーバSV1はオーディオクライアントCL1がサーバSV2から配信してもらう曲データM11の取得開始アドレスを算出する(S405)。具体的には、サーバSV1はオーディオクライアントCL2に今まで配信した曲データM11のデータ長を曲データM11の先頭アドレスに加算した値を取得開始アドレスに決定する。取得開始アドレスを算出後、サーバSV1は再生コマンドをオーディオクライアントCL2に送信する(S406)。再生コマンドには、パラメータとしてサーバSV2のサーバ特定情報とステップS405で算出した取得開始アドレスが含まれる。   Returning to FIG. 21, after the server SV2, which is the takeover server SV, takes over the song data M11 from the server SV1, the audio client CL1 determines from which position in the song data M11 the data distribution server SV2 should be requested. There is a need. This is because the audio client CL1 receives the distribution of the music data M11 from the server SV1 and does not need to receive the music data M11 from the server SV2. Therefore, the server SV1 calculates the acquisition start address of the music data M11 that the audio client CL1 receives from the server SV2 (S405). Specifically, the server SV1 determines a value obtained by adding the data length of the music data M11 distributed so far to the audio client CL2 to the head address of the music data M11 as an acquisition start address. After calculating the acquisition start address, the server SV1 transmits a playback command to the audio client CL2 (S406). The reproduction command includes the server identification information of the server SV2 and the acquisition start address calculated in step S405 as parameters.

再生コマンドを送信後、サーバSV1はカウント値nをカウントアップし(S407)、再びステップS402に戻って動作を繰り返す。これにより、サーバSV1に接続されている全てのオーディオクライアントCLに対して終了動作を実行できる。全てのオーディオクライアントCLに対して終了動作を実行後、すなわち、カウント値nがクライアント接続数を超えたとき、(S402)、サーバSV1は他のサーバSVに離脱通知を送信し(S335)、その動作を終了する。   After transmitting the reproduction command, the server SV1 increments the count value n (S407), returns to step S402 again, and repeats the operation. As a result, the end operation can be executed for all the audio clients CL connected to the server SV1. After executing the termination operation for all audio clients CL, that is, when the count value n exceeds the number of client connections (S402), the server SV1 transmits a leave notification to the other server SV (S335), End the operation.

オーディオクライアントCL1はサーバSV1からの再生コマンドを受信後(S421)、サーバSV1との接続を切断する(S422)。切断後、サーバSV2に対してクライアント接続依頼処理(S120)を実行し、サーバSV2は接続動作(S110)を実行することで、オーディオクライアントCL1はサーバSV2に対して接続を確立する。その後、オーディオクライアントCL1は配信依頼処理(S240)を実行する。このとき、オーディオクライアントCL2はステップS421で受信した取得開始アドレスをパラメータに曲データ転送要求を行う。サーバSV2は曲データ転送要求内の取得開始アドレスに基づいて、配信動作を実行する(S200)。以上の動作によりオーディオクライアントCL2は曲データM11の続きをサーバSV2から取得でき、曲データM11の再生を継続できる。   After receiving the reproduction command from the server SV1 (S421), the audio client CL1 disconnects from the server SV1 (S422). After the disconnection, the client connection request process (S120) is executed for the server SV2, and the server SV2 executes the connection operation (S110), so that the audio client CL1 establishes a connection to the server SV2. Thereafter, the audio client CL1 executes a distribution request process (S240). At this time, the audio client CL2 makes a music piece data transfer request using the acquisition start address received in step S421 as a parameter. The server SV2 executes a distribution operation based on the acquisition start address in the song data transfer request (S200). With the above operation, the audio client CL2 can acquire the continuation of the music piece data M11 from the server SV2, and can continue the reproduction of the music piece data M11.

以上に示したように、サーバSVがその動作を終了する場合、そのサーバSVから曲データが配信されている(つまり再生中の)オーディオクライアントCLが存在しても、引継サーバSVにその曲データを引き継ぐ。そのため、オーディオクライアントCLは再生を継続できる。   As described above, when the server SV finishes its operation, even if there is an audio client CL to which music data is distributed (that is, being reproduced) from the server SV, the music data is sent to the takeover server SV. Take over. Therefore, the audio client CL can continue reproduction.

1.4.コントローラを含むグローバルサーバシステム
1.4.1.概略
グローバルサーバシステム10は、図23に示すようにコントローラCNを備えてもよい。コントローラCNはサーバSV1〜SV3と接続し、サーバSV1〜SV3を介してオーディオクライアントCL1〜CL3を制御する。たとえば、コントローラCNは所望のオーディオクライアントCLに所望の曲を再生させたり、再生中の曲を停止させたりする。図23ではコントローラCNを1つとしたが、複数あってもよい。
1.4. Global server system including controller 1.4.1. Outline The global server system 10 may include a controller CN as shown in FIG. The controller CN is connected to the servers SV1 to SV3 and controls the audio clients CL1 to CL3 via the servers SV1 to SV3. For example, the controller CN causes the desired audio client CL to play a desired song or stop the song being played. Although one controller CN is shown in FIG. 23, there may be a plurality of controllers CN.

図23に示すサーバSV1〜SV3、オーディオクライアントCL1〜CL3、及びコントローラCNの接続関係を図24に示す。図24に示すように、コントローラCNは全てのサーバSV1〜SV3に接続する。オーディオクライアントCL1〜CL3はサーバSV1〜SV3の何れかに接続する。図24では、オーディオクライアントCL1はサーバSV1に接続され、オーディオクライアントCL2及びCL3はサーバSV2に接続されている。つまり、オーディオクライアントCL1はサーバSV1からグローバルリストGLを取得し、オーディオクライアントCL2及びCL3はサーバSV2からグローバルリストGLを取得する。   FIG. 24 shows a connection relationship among the servers SV1 to SV3, audio clients CL1 to CL3, and the controller CN shown in FIG. As shown in FIG. 24, the controller CN is connected to all the servers SV1 to SV3. The audio clients CL1 to CL3 are connected to any of the servers SV1 to SV3. In FIG. 24, the audio client CL1 is connected to the server SV1, and the audio clients CL2 and CL3 are connected to the server SV2. That is, the audio client CL1 acquires the global list GL from the server SV1, and the audio clients CL2 and CL3 acquire the global list GL from the server SV2.

図23に戻って、コントローラCNがオーディオクライアントCL2に曲データM31に基づく曲を再生させる場合、コントローラCNはオーディオクライアントCL2に再生コマンドを送信する。具体的には、コントローラCNはオーディオクライアントCL2がサーバSV2と接続されているのを確認した後、サーバSV2を介して(図中(1))、オーディオクライアントCL2に再生コマンドを送信する(図中(2))。再生コマンドを受けたオーディオクライアントCL2の動作は図2中の(B)と同じである。   Returning to FIG. 23, when the controller CN causes the audio client CL2 to play a song based on the song data M31, the controller CN transmits a playback command to the audio client CL2. Specifically, after confirming that the audio client CL2 is connected to the server SV2, the controller CN transmits a playback command to the audio client CL2 via the server SV2 ((1) in the figure) (in the figure). (2)). The operation of the audio client CL2 that has received the playback command is the same as (B) in FIG.

1.4.2.構成
コントローラCNは、サーバSV1〜SV3に対してクライアントとして機能する。図25を参照して、コントローラCNは、LANコントローラ38と、マイコン処理部28と、フラッシュメモリ30と、メモリ32と、CRTやLCDといった表示装置37と、キーボードやマウスといった入力装置39とを備える。コントローラCNがオーディオクライアントCLと異なる点は、オーディオクライアントCLは再生機能を有するのに対し、コントローラCNは再生機能を有さなくてもよく、主としてオーディオクライアントCLのモニタ機能及び制御機能を有する点である。
1.4.2. Configuration The controller CN functions as a client for the servers SV1 to SV3. Referring to FIG. 25, the controller CN includes a LAN controller 38, a microcomputer processing unit 28, a flash memory 30, a memory 32, a display device 37 such as a CRT or LCD, and an input device 39 such as a keyboard or a mouse. . The controller CN is different from the audio client CL in that the audio client CL has a reproduction function, whereas the controller CN does not have to have a reproduction function, and mainly has a monitoring function and a control function of the audio client CL. is there.

コントローラCNのメモリ32には、表1と同じ構成のコントローラ用サーバリストが登録される。コントローラ用サーバリストに登録されるサーバ情報(コントローラ用サーバ情報)を表10に示す。

Figure 0004026668
表10を参照して、コントローラ用サーバ情報は、表2と比較して、ローカルリストLLの代わりにクライアントリスト(「clientlist」)が登録される。クライアントリストには、サーバSV1〜SV3が持つ全てのクライアント情報が登録される。要するに、コントローラCNはサーバSV1〜SV3が持つ全てのクライアント情報を持つ。そのため、コントローラCNはグローバルサーバシステム10で稼働するオーディオクライアントCL1〜CL3の存在を把握し、かつ、各オーディオクライアントCLがどのサーバSVと接続しているかを把握する。 A controller server list having the same configuration as in Table 1 is registered in the memory 32 of the controller CN. Table 10 shows server information (controller server information) registered in the controller server list.
Figure 0004026668
Referring to Table 10, in the controller server information, a client list (“clientlist”) is registered instead of the local list LL as compared with Table 2. All client information possessed by the servers SV1 to SV3 is registered in the client list. In short, the controller CN has all client information possessed by the servers SV1 to SV3. Therefore, the controller CN grasps the existence of the audio clients CL1 to CL3 operating in the global server system 10, and grasps which server SV each audio client CL is connected to.

さらに、メモリ32にはグローバルリストGLも登録される。   Furthermore, a global list GL is also registered in the memory 32.

1.4.3.システム動作
1.4.3.1.ハンドル取得動作
コントローラCNは、グローバルサーバシステム10の全てのサーバSVと接続し、各サーバSVに接続されたオーディオクライアントCL1〜CL3を監視及び制御するための監視ハンドル及び制御ハンドルを取得する。
1.4.3. System operation 1.4.3.1. Handle acquisition operation The controller CN is connected to all the servers SV of the global server system 10, and acquires a monitoring handle and a control handle for monitoring and controlling the audio clients CL1 to CL3 connected to each server SV.

図26を参照して、ステップS1〜ステップS7の動作は図5と同じである。要するに、コントローラCNは、LAN50で稼働しているサーバSV1〜SV3を探索し、サーバSV1〜SV3のサーバ特定情報をサーバリストに登録する。   Referring to FIG. 26, the operations in steps S1 to S7 are the same as those in FIG. In short, the controller CN searches for the servers SV1 to SV3 operating on the LAN 50, and registers the server specifying information of the servers SV1 to SV3 in the server list.

ステップS7でサーバリストにサーバ特定情報が登録されていると判断した場合、サーバリストに登録されたサーバごとにハンドル取得処理を実行する(S71〜S74)。初めに、カウント値n=1とし(S71)、サーバリストに登録されたサーバ数がn以上か否かを判断する(S72)。サーバ数がn以上の場合、サーバSV1はサーバID=1のサーバSVに対して、ハンドル取得処理を実行する(S73)。ハンドル取得処理を実行後、カウント値nをカウントアップし(S74)、ステップS72に戻る。要するに、コントローラCNは、サーバリストに登録された全てのサーバに対してハンドル取得処理を実行する。一例として、サーバSV2に対するハンドル取得処理について説明する。   If it is determined in step S7 that the server identification information is registered in the server list, a handle acquisition process is executed for each server registered in the server list (S71 to S74). First, the count value n is set to 1 (S71), and it is determined whether or not the number of servers registered in the server list is n or more (S72). When the number of servers is n or more, the server SV1 executes a handle acquisition process for the server SV with the server ID = 1 (S73). After executing the handle acquisition process, the count value n is counted up (S74), and the process returns to step S72. In short, the controller CN executes a handle acquisition process for all servers registered in the server list. As an example, a handle acquisition process for the server SV2 will be described.

図27を参照して、コントローラCNはサーバSV2に対して接続処理を実行する(S1000)。このとき、サーバSV2は接続応答処理を実行する(S1020)。接続処理及び接続応答処理により、コントローラCNはサーバSV2と接続を確立する。なお、接続処理において、コントローラCNは、自身のクライアント情報をサーバSV2に送信するが、このとき、コントローラCNは、クライアントタイプが「コントローラ」であることを通知する。   Referring to FIG. 27, controller CN executes a connection process for server SV2 (S1000). At this time, the server SV2 executes a connection response process (S1020). The controller CN establishes a connection with the server SV2 by the connection process and the connection response process. In the connection process, the controller CN transmits its own client information to the server SV2. At this time, the controller CN notifies that the client type is “controller”.

接続を確立後、コントローラCNはサーバSV2に対してクライアントリスト要求コマンドを送信する(S7301)。サーバSV2はクライアントリスト要求コマンドを受け、HDD14内のクライアントリストをコントローラCNに送信する(S7302)。サーバSV2にはオーディオクライアントCL2及びCL3とコントローラCNとが接続されているため、ステップS7302で送信されるクライアントリストには、オーディオクライアントCL2及びCL3のクライアント情報と、コントローラCNのクライアント情報とが含まれる。コントローラCNは、クライアントリストを受信後、メモリ32内のコントローラ用サーバリストに登録する(S7303)。より具体的には、コントローラ用サーバリスト内のサーバSV2のコントローラ用サーバ情報の「clientlist」に、取得したクライアントリストを登録する。   After establishing the connection, the controller CN transmits a client list request command to the server SV2 (S7301). The server SV2 receives the client list request command and transmits the client list in the HDD 14 to the controller CN (S7302). Since the audio clients CL2 and CL3 and the controller CN are connected to the server SV2, the client list transmitted in step S7302 includes the client information of the audio clients CL2 and CL3 and the client information of the controller CN. . After receiving the client list, the controller CN registers it in the controller server list in the memory 32 (S7303). More specifically, the acquired client list is registered in “clientlist” of the controller server information of the server SV2 in the controller server list.

クライアントリストを登録後、コントローラCNは、クライアントリストに基づいて、サーバSV2に接続されているオーディオクライアントCL2及びCL3の監視ハンドル及び制御ハンドルをサーバSV2に要求して取得する(S7305〜S7311)。監視ハンドルは、サーバSVからコントローラCNに与えられるオーディオクライアントCLを監視する権限である。また、制御ハンドルは、サーバSVからコントローラCNに与えられるオーディオクライアントCLを制御する権限である。   After registering the client list, the controller CN requests and acquires the monitoring handle and control handle of the audio clients CL2 and CL3 connected to the server SV2 from the server SV2 based on the client list (S7305 to S7311). The monitoring handle is an authority to monitor the audio client CL given from the server SV to the controller CN. The control handle is an authority to control the audio client CL given from the server SV to the controller CN.

コントローラCNは、カウント値n=1とし(S7304)、クライアントリスト内のクライアント数がn以上か否かを判断する(S7305)。クライアント数がn以上の場合、コントローラCNはクライアントインデックス=1のクライアント情報が自身の情報か否かを判断する(S7306)。自身のクライアント情報でない場合、そのクライアントインデックス(=1)をサーバSV2に送信し、その監視ハンドル及び制御ハンドルを要求する(S7307)。   The controller CN sets the count value n = 1 (S7304), and determines whether the number of clients in the client list is n or more (S7305). When the number of clients is n or more, the controller CN determines whether or not the client information with the client index = 1 is its own information (S7306). If it is not its own client information, the client index (= 1) is transmitted to the server SV2, and its monitoring handle and control handle are requested (S7307).

サーバSV2は、コントローラから送信されたクライアントインデックス(=1)を、コントローラCNのクライアントインデックスと対応付けて記録し(S7308)、コントローラCNに対して監視ハンドル及び制御ハンドルを発行する(S7309)。その結果、コントローラCNはクライアントインデックス=1に対応したオーディオクライアントCLの監視ハンドル及び制御ハンドルを取得する(S7310)。   The server SV2 records the client index (= 1) transmitted from the controller in association with the client index of the controller CN (S7308), and issues a monitoring handle and a control handle to the controller CN (S7309). As a result, the controller CN acquires the monitoring handle and control handle of the audio client CL corresponding to the client index = 1 (S7310).

続いて、コントローラCNはカウント値nをカウントアップし(S7311)、再びステップS7305の動作に戻る。要するに、コントローラCNはクライアントリスト内に登録された全てのオーディオクライアントCL(ここではCL2及びCL3)に対して監視ハンドル及び制御ハンドルを取得する。なお、ステップS7306での判断の結果、クライアントインデックス=nのクライアント情報が自身のクライアント情報である場合、ステップS7311に進む。コントローラは自分自身に対して監視ハンドル及び制御ハンドルを取得する必要がないためである。   Subsequently, the controller CN increments the count value n (S7311), and returns to the operation of step S7305. In short, the controller CN obtains a monitoring handle and a control handle for all audio clients CL (here CL2 and CL3) registered in the client list. If it is determined in step S7306 that the client information with the client index = n is its own client information, the process advances to step S7311. This is because the controller does not need to obtain a monitoring handle and a control handle for itself.

ハンドル取得処理は、全てのサーバSV1〜SV3に対して実行される。そのため、コントローラCNはグローバルサーバシステム10で稼働する全てのオーディオクライアントCL1〜CL3の監視ハンドル及び制御ハンドルを取得する。   The handle acquisition process is executed for all the servers SV1 to SV3. Therefore, the controller CN acquires the monitoring handles and control handles of all the audio clients CL1 to CL3 operating in the global server system 10.

1.4.3.2.グローバルリスト取得動作及び更新動作
コントローラCNがサーバSVからグローバルリストGLを取得する動作は図10のオーディオクライアントCL2の動作と同じである。コントローラCNは任意のサーバSVからグローバルリストGLを取得する。なお、ハンドル取得動作により既に全てのサーバSV1〜SV3と接続を確立している場合、コントローラCNは図5中の接続処理(S1000)を実行することなく任意のサーバSVに対してグローバルリストを要求する(図5中のステップS105)。任意のサーバSVとは、たとえばコントローラ用サーバリスト中のサーバID=1のサーバSVである。
1.4.3.2. Global List Acquisition Operation and Update Operation The operation in which the controller CN acquires the global list GL from the server SV is the same as the operation of the audio client CL2 in FIG. The controller CN acquires the global list GL from an arbitrary server SV. If connections have already been established with all the servers SV1 to SV3 by the handle acquisition operation, the controller CN requests a global list from any server SV without executing the connection process (S1000) in FIG. (Step S105 in FIG. 5). The arbitrary server SV is, for example, a server SV with a server ID = 1 in the controller server list.

コントローラCNはオーディオクライアントCLと同様に、サーバSVからリスト更新通知を受け、グローバルリストGLを更新する。グローバルリストを更新する動作は図18と同じである。   Similarly to the audio client CL, the controller CN receives a list update notification from the server SV and updates the global list GL. The operation for updating the global list is the same as in FIG.

以上の動作により、コントローラCNも常に最新のグローバルリストを取得できる。   With the above operation, the controller CN can always acquire the latest global list.

1.4.3.3.監視動作
コントローラCNは監視ハンドルを取得することにより、オーディオクライアントCLを監視できる。図28を参照して、オーディオクライアントCL2のボリューム値が変更された場合、オーディオクライアントCL2はボリューム値変更通知をサーバSV2に送信する(S7501)。ボリューム値変更通知は変更されたボリューム値の情報を含む。
1.4.3.3. Monitoring Operation The controller CN can monitor the audio client CL by acquiring a monitoring handle. Referring to FIG. 28, when the volume value of the audio client CL2 is changed, the audio client CL2 transmits a volume value change notification to the server SV2 (S7501). The volume value change notification includes information on the changed volume value.

サーバSV2はボリューム値変更通知を受信後、オーディオクライアントCL2のクライアント情報を更新する(S7502)。具体的には、クライアント情報内の「volume」のデータを更新する。サーバSV2はさらに、オーディオクライアントCL2の監視ハンドルを取得しているコントローラCNに、更新されたクライアント情報を送信する(S7503)。   After receiving the volume value change notification, the server SV2 updates the client information of the audio client CL2 (S7502). Specifically, the data of “volume” in the client information is updated. The server SV2 further transmits the updated client information to the controller CN that has acquired the monitoring handle of the audio client CL2 (S7503).

コントローラCNは更新されたクライアント情報を受信し、コントローラ用サーバリスト内のオーディオクライアントCL2のクライアント情報を更新する(S7504)。更新されたクライアント情報は、表示装置37に表示される(S7505)。   The controller CN receives the updated client information and updates the client information of the audio client CL2 in the controller server list (S7504). The updated client information is displayed on the display device 37 (S7505).

以上の処理は、コントローラCNが監視ハンドルを取得した全てのオーディオクライアントCL1〜CL3のうちいずれかのクライアント情報が更新されるたびに繰り返される。   The above process is repeated each time client information of all the audio clients CL1 to CL3 from which the controller CN has acquired the monitoring handle is updated.

以上のように、サーバSVがオーディオクライアントCLからクライアント情報を受信した際に、コントローラCNにクライアント情報を送信することにより、コントローラCNはオーディオクライアントCLを常に監視できる。   As described above, when the server SV receives client information from the audio client CL, the controller CN can always monitor the audio client CL by transmitting the client information to the controller CN.

1.4.3.4.制御動作
コントローラCNは制御ハンドルを取得することにより、オーディオクライアントCLを制御できる。制御動作の一例として、コントローラCNがオーディオクライアントCL2に対して曲データM31に基づく曲の再生を指示する処理について説明する。曲データはコントローラCNが持つグローバルリストGLに基づいて選択される。
1.4.3.4. Control operation The controller CN can control the audio client CL by obtaining a control handle. As an example of the control operation, a process in which the controller CN instructs the audio client CL2 to play a song based on the song data M31 will be described. The song data is selected based on the global list GL held by the controller CN.

図29を参照して、コントローラCNはグローバルリストGLに基づいて曲データM31を選択する(S7601)。選択後、コントローラCNは、コントローラ用サーバリストに基づいて、オーディオクライアントCL2を接続しているサーバを特定する(S7602)。具体的には、コントローラCNはコントローラ用サーバリストを参照し、オーディオクライアントCL2のクライアント情報を持つサーバ情報がサーバSV2のサーバ情報であると判断する。換言すれば、コントローラCNは、オーディオクライアントCL2を接続しているサーバはサーバSV2であると判断する。そのため、コントローラCNはサーバSV2に再生コマンドを送信する(S7601)。再生コマンドは曲データM31を特定する情報(たとえば曲ID)を含む。   Referring to FIG. 29, controller CN selects song data M31 based on global list GL (S7601). After the selection, the controller CN identifies the server connected to the audio client CL2 based on the controller server list (S7602). Specifically, the controller CN refers to the controller server list and determines that the server information having the client information of the audio client CL2 is the server information of the server SV2. In other words, the controller CN determines that the server connected to the audio client CL2 is the server SV2. Therefore, the controller CN transmits a reproduction command to the server SV2 (S7601). The reproduction command includes information (for example, song ID) for specifying the song data M31.

サーバSV2はコントローラCNから送信された再生コマンドをオーディオクライアントCL2に送信する(S7602)。要するに、コントローラCNはサーバSV2を介してオーディオクライアントCL2に再生コマンドを送信する。   The server SV2 transmits the reproduction command transmitted from the controller CN to the audio client CL2 (S7602). In short, the controller CN transmits a reproduction command to the audio client CL2 via the server SV2.

再生コマンドを受けたオーディオクライアントCL2は曲データM31を取得して再生するために、配信依頼処理を実行する(S240)。なお、このときサーバSV3が配信動作を実行する(S200)。   Upon receiving the playback command, the audio client CL2 executes a distribution request process in order to acquire and play the music data M31 (S240). At this time, the server SV3 executes a distribution operation (S200).

図29では曲の再生を指示する場合の動作を示したが、曲再生を停止する場合も同様である。コントローラCNが曲再生の停止コマンドをサーバSV2を介してオーディオクライアントCL2に送信することで、オーディオクライアントCL2は曲再生を停止する。ボリュームの調整等の制御についても同様である。   FIG. 29 shows the operation in the case of instructing the reproduction of the music, but the same applies to the case of stopping the music reproduction. When the controller CN transmits a music playback stop command to the audio client CL2 via the server SV2, the audio client CL2 stops music playback. The same applies to control such as volume adjustment.

以上の動作により、コントローラCNは制御ハンドルを取得したオーディオクライアントCLを制御できる。   With the above operation, the controller CN can control the audio client CL that has acquired the control handle.

なお、グローバルサーバシステム10が複数のコントローラCNを備える場合、各オーディオクライアントCLの制御ハンドルは複数発行されない。換言すれば、各オーディオクライアントCLを制御できるのは1つのコントローラCNである。一方、各オーディオクライアントCLの監視ハンドルは重複して発行され、複数のコントローラCNが1つのオーディオクライアントCLを監視できる。   If the global server system 10 includes a plurality of controllers CN, a plurality of control handles for each audio client CL are not issued. In other words, only one controller CN can control each audio client CL. On the other hand, the monitoring handle of each audio client CL is issued redundantly, and a plurality of controllers CN can monitor one audio client CL.

2.センタサーバシステム
2.1.概略
図30はセンタサーバシステムの全体構成を示す図である。図30を参照して、センタサーバシステム70は、センタサーバCSVと複数のサブサーバSSV1,SSV2と、複数のオーディオクライアントCL1〜CL3とを備える。これらはLAN60で互いに接続される。センタサーバCSV及びサブサーバSSVの構成は図3と同じである。また、図30ではサブサーバSSVを2つ(SSV1,SSV2)としたが、サブサーバSSVは1以上あればよい。また、クライアントCLも1以上あればよい。
2. Center server system 2.1. Outline FIG. 30 is a diagram showing an overall configuration of a center server system. Referring to FIG. 30, the center server system 70 includes a center server CSV, a plurality of sub servers SSV1, SSV2, and a plurality of audio clients CL1 to CL3. These are connected to each other via a LAN 60. The configurations of the center server CSV and the sub server SSV are the same as those in FIG. In FIG. 30, the number of subservers SSV is two (SSV1, SSV2). However, one or more subservers SSV are sufficient. Further, it is sufficient if there are one or more clients CL.

グローバルリストサーバシステム10ではLAN50上の全てのサーバSV1〜SV3がグローバルリストGLを有するのに対し、センタサーバシステム70では、センタサーバCSVのみがグローバルリストGLを備える。センタサーバCSVはさらに曲データM31〜M3nとローカルリストLL3とを備える。一方、サブサーバSSV1は曲データM11〜M1nとローカルリストLL1とを備え、サブサーバSSV2は曲データM21〜M2nとローカルリストLL2とを備える。   In the global list server system 10, all the servers SV1 to SV3 on the LAN 50 have the global list GL, whereas in the center server system 70, only the center server CSV has the global list GL. The center server CSV further includes song data M31 to M3n and a local list LL3. On the other hand, the sub server SSV1 includes music data M11 to M1n and a local list LL1, and the sub server SSV2 includes music data M21 to M2n and a local list LL2.

サブサーバSSV1,SSV2は自己が蓄積する曲データが更新されたとき、更新後のローカルリストLL1、LL2をセンタサーバCSVに送信する(図中(1))。センタサーバCSVはローカルリストLL1,LL2を受け、ローカルリストLL3と合わせてグローバルリストGLを更新する。なお、センタサーバCSVからサブサーバSSV1,SSV2にローカルリストLL3は送信されない。また、サブサーバSSV1とサブサーバSSV2との間でローカルリストLL1、LL2の送受信は行われない。   When the music data stored therein are updated, the sub-servers SSV1 and SSV2 transmit the updated local lists LL1 and LL2 to the center server CSV ((1) in the figure). The center server CSV receives the local lists LL1 and LL2, and updates the global list GL together with the local list LL3. The local list LL3 is not transmitted from the center server CSV to the sub servers SSV1 and SSV2. In addition, the local lists LL1 and LL2 are not transmitted and received between the sub server SSV1 and the sub server SSV2.

図31(A)を参照して、複数のオーディオクライアントCL1〜CL3はグローバルリストGLの転送要求をセンタサーバCSVに送信する(図中(2))。センタサーバCSVはグローバルリストGLの要求を受け、各オーディオクライアントCL1〜CL3にグローバルリストGLを送信する(図中(3))。   Referring to FIG. 31A, the plurality of audio clients CL1 to CL3 transmit a transfer request for the global list GL to the center server CSV ((2) in the figure). The center server CSV receives the request for the global list GL and transmits the global list GL to each of the audio clients CL1 to CL3 ((3) in the figure).

グローバルリストGLを受信後、オーディオクライアントCL2が曲データM21を再生する場合、図31(B)を参照して、オーディオクライアントCL2は曲データM21の曲データ転送要求をセンタサーバCSVに送信する(図中(4))。センタサーバCSVは曲データ転送要求を受け、曲データM21を蓄積するサブサーバSSV2に対し曲データM21をセンタサーバCSVに配信するよう要求する(図中(5))。図31(C)を参照して、サブサーバSSV2はセンタサーバCSVの要求を受け、曲データM21をセンタサーバCSVに配信する(図中(6))。センタサーバCSVはサブサーバSSV2から配信された曲データM21をオーディオクライアントCL2に配信する(図中(7))。   When the audio client CL2 reproduces the song data M21 after receiving the global list GL, the audio client CL2 transmits a song data transfer request for the song data M21 to the center server CSV with reference to FIG. Medium (4)). The center server CSV receives the music data transfer request and requests the sub server SSV2 storing the music data M21 to distribute the music data M21 to the center server CSV ((5) in the figure). Referring to FIG. 31C, the sub server SSV2 receives the request from the center server CSV and distributes the music piece data M21 to the center server CSV ((6) in the figure). The center server CSV distributes the music data M21 distributed from the sub server SSV2 to the audio client CL2 ((7) in the figure).

以上に示すように、センタサーバシステム70では、グローバルリストGLの転送要求や曲データ転送要求等のオーディオクライアントCLからの要求は全てセンタサーバCSVに送信される。また、サブサーバSSVからオーディオクライアントCLへの曲データMの配信は、センタサーバCSVを介して行われる。センタサーバCSVはサブサーバSSVとオーディオクライアントCLとの中継を行うとともに、自身も曲データMを備え、オーディオクライアントCLに直接自身が蓄積した曲データMの配信を行う。オーディオクライアントCLはセンタサーバCSVに要求すれば、LAN60上のすべての曲データMを再生できる。   As described above, in the center server system 70, all requests from the audio client CL such as a transfer request for the global list GL and a music data transfer request are transmitted to the center server CSV. The music data M is distributed from the sub server SSV to the audio client CL via the center server CSV. The center server CSV relays between the sub server SSV and the audio client CL, and also includes the music data M, and distributes the music data M stored therein directly to the audio client CL. The audio client CL can play back all music data M on the LAN 60 if requested to the center server CSV.

なお、オーディオクライアントCLから曲データMを要求するときは、センタサーバCSVサーバを介さずに所望の曲データMを蓄積するサブサーバSSVに曲データの転送要求をおこなってもよい。   When the music data M is requested from the audio client CL, a music data transfer request may be made to the sub server SSV that stores desired music data M without going through the center server CSV server.

2.2.システム動作
2.2.1.サーバ起動処理
センタサーバシステム70では、LAN60上に最初に起動したサーバSVがセンタサーバCSVとして動作し、2番目以降に起動したサーバSVはサブサーバSSVとして動作する。
2.2. System operation 2.2.1. Server Activation Process In the center server system 70, the server SV activated first on the LAN 60 operates as the center server CSV, and the server SV activated second and later operates as the sub server SSV.

図32を参照して、起動時のサーバSV(以下、起動サーバSVと称する)のステップS1〜S6までの動作は図5中と同じである。起動サーバSVはマジックワードをブロードキャストしてLAN60上の他のサーバSVが既に稼働しているか否かを判断する。ブロードキャストして2秒経過した後、サーバリストにサーバ特定情報がない場合(S7)、LAN60上に他のサーバSVが存在していないため、起動サーバSVはセンタサーバCSVとして動作する(S50)。センタサーバCSVの動作については2.2.2.で説明する。   Referring to FIG. 32, the operation from step S1 to S6 of the server SV at the time of activation (hereinafter referred to as activation server SV) is the same as in FIG. The activation server SV broadcasts a magic word to determine whether another server SV on the LAN 60 is already operating. After two seconds have passed since the broadcast, if there is no server specific information in the server list (S7), the other server SV does not exist on the LAN 60, so the activation server SV operates as the center server CSV (S50). Regarding the operation of the center server CSV, 2.2.2. I will explain it.

一方、ステップS7でサーバリストにサーバ特定情報がある場合、センタサーバCSVは既に稼働しているため、起動サーバSVはサブサーバSSVとして稼働する。このとき、サブサーバSSVはセンタサーバCSVへの接続処理を実行する(S1000)。このときの接続処理は図6中のステップS1000の動作と同じである。またサブサーバSSVが接続処理(S1000)を実行したとき、センタサーバCSVは接続応答処理(図6中のS1020と同じ処理)を行う。   On the other hand, if the server specifying information is included in the server list in step S7, the center server CSV is already operating, so the activation server SV operates as the sub server SSV. At this time, the sub server SSV executes connection processing to the center server CSV (S1000). The connection process at this time is the same as the operation in step S1000 in FIG. When the sub server SSV executes the connection process (S1000), the center server CSV performs a connection response process (the same process as S1020 in FIG. 6).

センタサーバCSVへの接続処理(S1000)後、サブサーバSSVはセンタサーバCSVに対し、ローカルリスト送信処理を実行し(S11)、センタサーバCSVに自身のローカルリストLLを送信する。ローカルリスト送信処理の詳細は図7と同じである。なお、グローバルリストサーバシステム10でのサーバSVは他の全てのサーバSVに対して接続処理を実行した後に準備OKコマンドをブロードキャストするが、サブサーバSSVはセンタサーバCSVに対して接続処理を実行後に準備OKコマンドをブロードキャストする。   After the connection process to the center server CSV (S1000), the sub server SSV executes a local list transmission process for the center server CSV (S11), and transmits its local list LL to the center server CSV. Details of the local list transmission processing are the same as those in FIG. The server SV in the global list server system 10 broadcasts a preparation OK command after executing connection processing to all other servers SV, but the sub server SSV performs connection processing to the center server CSV. Broadcast a preparation OK command.

以上の動作により、起動サーバSVがサブサーバSSVになる場合、センタサーバCSVに接続し、自身のローカルリストLLをセンタサーバCSVに送信した後、サブサーバSSVの動作を実行する(S65)。サブサーバSSVの動作については2.2.3.で説明する。   As a result of the above operation, when the activation server SV becomes the sub server SSV, after connecting to the center server CSV and transmitting its own local list LL to the center server CSV, the operation of the sub server SSV is executed (S65). Regarding the operation of the sub server SSV, see 2.2.3. I will explain it.

2.2.2.起動処理後のセンタサーバ動作
図33を参照して、センタサーバCSVは、接続動作(S100,S110)、配信動作(S500)、リスト更新動作(S600)を実行し、終了時(S15)、終了動作(S700)を実行する。接続動作(S100,S110)については、グローバルリストサーバシステム10におけるサーバの接続処理動作(1.3.2.1及び1.3.2.2)と同じである。以下、配信動作(S500)、リスト更新動作(S600)、終了動作(S700)について説明する。
2.2.2. Center Server Operation after Startup Processing Referring to FIG. 33, the center server CSV executes a connection operation (S100, S110), a distribution operation (S500), and a list update operation (S600), and ends (S15). The operation (S700) is executed. The connection operation (S100, S110) is the same as the server connection processing operation (1.3.2.1 and 1.3.2.2) in the global list server system 10. The distribution operation (S500), list update operation (S600), and end operation (S700) will be described below.

2.2.2.1.配信動作
センタサーバCSVからグローバルリストGLを取得したオーディオクライアントCL2がそのグローバルリストGLからサブサーバSSV2の曲データM21を選択した場合、オーディオクライアントCL2はセンタサーバCSVに曲データ転送要求を送信し、サブサーバSSV2からセンタサーバCSVを経由して曲データM21の配信を受け、再生を行う。以下、詳細を説明する。
2.2.2.1. Distribution operation When the audio client CL2 that has acquired the global list GL from the center server CSV selects the music data M21 of the sub server SSV2 from the global list GL, the audio client CL2 transmits a music data transfer request to the center server CSV. The music data M21 is received from the server SSV2 via the center server CSV and played. Details will be described below.

図34を参照して、初めに、オーディオクライアントCL2はセンタサーバCSVに対して接続処理を実行する(S1000)。これに対しセンタサーバCSVは接続応答処理を実行する(S1020)。この接続処理により、曲データM21を配信するための接続がセンタサーバCSVとオーディオクライアントCL2との間で確立する。なお、このとき、センタサーバCSVは先の接続動作(S110)で確立したオーディオクライアントCL2との接続も維持する。よって、オーディオクライアントCL2はセンタサーバCSVとグローバルリスト受信用の接続と曲データ受信用の接続とを確立したことになる。このように、グローバルリスト受信用のコマンドポートと曲データ転送要求用のコマンドポートとを分けることで、トラフィックの混雑を緩和できる。   Referring to FIG. 34, first, the audio client CL2 executes a connection process with respect to the center server CSV (S1000). On the other hand, the center server CSV executes a connection response process (S1020). By this connection process, a connection for distributing the music data M21 is established between the center server CSV and the audio client CL2. At this time, the center server CSV also maintains the connection with the audio client CL2 established in the previous connection operation (S110). Therefore, the audio client CL2 has established a connection for receiving the global list and a connection for receiving music data with the center server CSV. Thus, by separating the command port for global list reception and the command port for music data transfer request, traffic congestion can be alleviated.

接続処理後のオーディオクライアントCL2の動作は図11中のオーディオクライアントCL2の動作と同じである。   The operation of the audio client CL2 after the connection process is the same as the operation of the audio client CL2 in FIG.

ステップS221でオーディオクライアントCLがセンタサーバCSVに対して曲データM21の曲データ転送要求を送信したとき、センタサーバCSVは曲データ配信処理を実行する(S501)。以下、曲データ配信処理について説明する。   When the audio client CL transmits a song data transfer request for the song data M21 to the center server CSV in step S221, the center server CSV executes song data distribution processing (S501). Hereinafter, the music data distribution process will be described.

図35を参照して、センタサーバCSVはオーディオクライアントCL2から曲データ転送要求を受け(S5011)、要求された曲データがセンタサーバCSV内の曲データか否かを判断する(S5012)。センタサーバCSV内の曲データである場合、センタサーバCSVはその曲データをオーディオクライアントCL2に配信する(S5015)。   Referring to FIG. 35, center server CSV receives a song data transfer request from audio client CL2 (S5011), and determines whether the requested song data is song data in center server CSV (S5012). If the song data is in the center server CSV, the center server CSV distributes the song data to the audio client CL2 (S5015).

今、オーディオクライアントCL2は曲データM21を要求しているため(S5012)、センタサーバCSVは曲データM21を蓄積するサブサーバSSV2から曲データM21を取得し、オーディオクライアントCL2に配信する。初めにセンタサーバCSVはサブサーバSSV2に対して接続処理を実行する(S1000)。これに対し、サブサーバSSV2は接続応答処理を実行し(S1020)、サーバ間で曲データ転送要求用の接続を確立する。トラフィックの混雑の緩和のためにローカルリスト取得用の接続とともに曲データ転送用の接続を確立する。接続を確立後、センタサーバCSVは曲データ中継処理を実行する(S502)。具体的には、センタサーバCSVはサブサーバSSV2に対して曲データM21の曲データ転送要求を送信する(5013)。サブサーバSSV2は曲データ転送要求を受け、曲データ転送要求内の取得開始アドレス及びデータ長に基づいて曲データM21をセンタサーバCSVに配信する(S5014)。センタサーバCSVはサブサーバSSV2から配信された曲データM21をオーディオクライアントCL2に配信する(S5015)。   Since the audio client CL2 now requests the music data M21 (S5012), the center server CSV acquires the music data M21 from the sub server SSV2 that stores the music data M21, and distributes it to the audio client CL2. First, the center server CSV executes connection processing for the sub server SSV2 (S1000). On the other hand, the sub server SSV2 executes a connection response process (S1020), and establishes a connection for music data transfer request between the servers. In order to alleviate traffic congestion, a connection for music list data transfer is established together with a connection for obtaining a local list. After establishing the connection, the center server CSV executes music piece data relay processing (S502). Specifically, the center server CSV transmits a song data transfer request for the song data M21 to the sub server SSV2 (5013). The sub server SSV2 receives the song data transfer request and distributes the song data M21 to the center server CSV based on the acquisition start address and the data length in the song data transfer request (S5014). The center server CSV distributes the music data M21 distributed from the sub server SSV2 to the audio client CL2 (S5015).

以上の動作によりS501においてセンタサーバCSVはオーディオクライアントCL2に曲データM21を配信する。   With the above operation, the center server CSV distributes the music data M21 to the audio client CL2 in S501.

なお、オーディオクライアントCL2がステップS224で曲再生を開始した後、ステップS226の曲データ転送要求を受けたセンタサーバCSVは曲データ中継処理を実行し(S502)、曲データM21の配信を継続する。   Note that after the audio client CL2 starts playing the music in step S224, the center server CSV that has received the music data transfer request in step S226 executes the music data relay process (S502), and continues to deliver the music data M21.

以上の動作により、センタサーバCSVがサブサーバSSV2とオーディオクライアントCL2との間を中継することで、オーディオクライアントCL2は曲データM21を再生できる。   With the above operation, the center server CSV relays between the sub server SSV2 and the audio client CL2, so that the audio client CL2 can reproduce the music piece data M21.

なお、クライアントCL2はグローバルリストGLから曲データM21はサブサーバSSV2に蓄積されていることを認識できるため、クライアントCL2が直接サブサーバSSV2に対して配信依頼処理を実行し(S240)、サブサーバSSV2が配信動作(S200)を実行してもよい。この場合の動作は図11と同じである。   Since the client CL2 can recognize from the global list GL that the song data M21 is stored in the sub server SSV2, the client CL2 directly executes a distribution request process for the sub server SSV2 (S240), and the sub server SSV2 May execute the distribution operation (S200). The operation in this case is the same as in FIG.

2.2.2.2.リスト更新処理
センタサーバシステム70では、グローバルリストGLを作成するのはセンタサーバCSVのみである。そのため、センタサーバCSVが新たな曲データを登録した場合、センタサーバCSVはLAN60上の複数のサブサーバSSVにリスト更新通知を送信する必要はなく、オーディオクライアントCLに対してのみリスト更新通知を行う。また、サブサーバSSVからのリスト更新通知に対するセンタサーバCSVの動作は図19のサーバSV2の動作と同じである。また、サブサーバSSVの離脱時のセンタサーバCSVの動作は図20のサーバSV1の動作と同じである。以下、センタサーバCSVが新たな曲データM31を登録した場合のセンタサーバCSVのリスト更新動作について説明する。
2.2.2.2. List Update Processing In the center server system 70, only the center server CSV creates the global list GL. Therefore, when the center server CSV registers new song data, the center server CSV does not need to send a list update notification to a plurality of sub-servers SSV on the LAN 60, and performs a list update notification only to the audio client CL. . The operation of the center server CSV in response to the list update notification from the sub server SSV is the same as the operation of the server SV2 in FIG. Further, the operation of the center server CSV when the sub server SSV leaves is the same as the operation of the server SV1 in FIG. Hereinafter, the list update operation of the center server CSV when the center server CSV registers new music data M31 will be described.

2.2.2.2.1.自己のサーバがリストを更新した場合
図36を参照して、曲データM31が更新された場合、センタサーバCSVはローカルリストLL3を更新し(S601)、既存のプレゼンテーションコンテンツリストPLを削除する(S602)。その後、新たなプレゼンテーションコンテンツリストPLを作成し(S603)、リスト更新通知処理を実行する(S320)。リスト更新通知処理はLAN60上の複数のオーディオクライアントCLに対して行われる。
2.2.2.2.1. When the server updates the list Referring to FIG. 36, when the song data M31 is updated, the center server CSV updates the local list LL3 (S601) and deletes the existing presentation content list PL (S602). ). Thereafter, a new presentation content list PL is created (S603), and list update notification processing is executed (S320). The list update notification process is performed for a plurality of audio clients CL on the LAN 60.

2.2.2.3.終了動作
[クライアントCLが再生中でない場合のセンタサーバの終了動作]
図37を参照して、ステップS401からオーディオクライアントCLが再生中でない場合(図37におけるクライアントCL2の場合)のセンタサーバCSVの終了動作(S403、S405、S335、S431、S432、S1000,S1020)については図21と同じである。
2.2.2.3. End operation [End operation of center server when client CL is not playing]
Referring to FIG. 37, the end operation (S403, S405, S335, S431, S432, S1000, S1020) of the center server CSV when the audio client CL is not playing from step S401 (in the case of client CL2 in FIG. 37). Is the same as FIG.

[サブサーバの曲データを配信中のセンタサーバの終了動作]
オーディオクライアントCL1が曲データを再生中の場合(S403)、センタサーバCSVはオーディオクライアントCL1が再生中の曲データがセンタサーバCSV自身が蓄積する曲データであるか否かを判断する(S701)。判断の結果、センタサーバCSVが蓄積する曲データでない場合、たとえば、オーディオクライアントCL1が曲データM21を再生していた場合、センタサーバCSVは曲データM21の中継処理を行っていることになる。このとき、センタサーバCSVは取得開始アドレスを算出する(S405)。取得開始アドレスはセンタサーバCSVがサブサーバSSV2から既に取得した曲データ長に基づいて算出される。算出された取得開始アドレスは再生要求コマンド内に含まれ、オーディオクライアントCL1に送信される(S406)。なお、再生要求コマンド内には、センタサーバCSVの引継サーバSVのサーバ特定情報も含まれる。センタサーバCSVは自身が蓄積するサーバリスト内のサーバID=1のサブサーバSSVを引継サーバSVとする。サーバID=1がサブサーバSSV1の場合、サブサーバSSV1はセンタサーバCSVから離脱通知を受けたときに引継命令も受け、センタサーバCSVとして動作する。
[End operation of center server that is distributing song data of sub server]
When the audio client CL1 is reproducing music data (S403), the center server CSV determines whether or not the music data being reproduced by the audio client CL1 is music data stored in the center server CSV itself (S701). As a result of the determination, if the music data is not stored in the center server CSV, for example, if the audio client CL1 is reproducing the music data M21, the center server CSV is performing relay processing of the music data M21. At this time, the center server CSV calculates an acquisition start address (S405). The acquisition start address is calculated based on the song data length that the center server CSV has already acquired from the sub server SSV2. The calculated acquisition start address is included in the reproduction request command and transmitted to the audio client CL1 (S406). Note that the reproduction request command includes server specifying information of the takeover server SV of the center server CSV. The center server CSV sets the sub server SSV with the server ID = 1 in the server list stored therein as the takeover server SV. When the server ID = 1 is the sub server SSV1, the sub server SSV1 also receives a takeover command when receiving a withdrawal notification from the center server CSV, and operates as the center server CSV.

再生コマンドを送信後、センタサーバCSVはカウント値nをカウントアップしてステップS402に戻る。   After transmitting the reproduction command, the center server CSV increments the count value n and returns to step S402.

オーディオクライアントCL1はセンタサーバCSVから再生コマンドを受信後(S421)、センタサーバCSVとの接続を切断する(S422)。切断後、引継サーバSV(サブサーバSSV1)に対してクライアント接続依頼処理(S120)を実行し、引継サーバSVは接続動作(S100)を実行することで、オーディオクライアントCL1は引継サーバSVに対して接続を確立する。その後、オーディオクライアントCL1は配信依頼動作(S240)を実行する。このとき、オーディオクライアントCL1はステップS421で受信した取得開始アドレスをパラメータに曲データ転送要求を行う。引継サーバSVは曲データ転送要求内の取得開始アドレスに基づいて、配信動作を実行する(S500)。以上の動作によりオーディオクライアントCL1は曲データM21の続きを引継サーバSVから取得でき、曲データM21の再生を継続できる。   After receiving the reproduction command from the center server CSV (S421), the audio client CL1 disconnects from the center server CSV (S422). After the disconnection, the client connection request process (S120) is executed for the takeover server SV (sub server SSV1), and the takeover server SV executes the connection operation (S100), so that the audio client CL1 receives the call from the takeover server SV. Establish a connection. Thereafter, the audio client CL1 executes a distribution request operation (S240). At this time, the audio client CL1 makes a music piece data transfer request using the acquisition start address received in step S421 as a parameter. The takeover server SV executes the distribution operation based on the acquisition start address in the music data transfer request (S500). With the above operation, the audio client CL1 can acquire the continuation of the music piece data M21 from the takeover server SV and can continue the reproduction of the music piece data M21.

[自己の曲データを配信中のセンタサーバの終了動作]
ステップS701での判断の結果、オーディオクライアントCL1で曲データM31が再生されている場合、センタサーバCSVは自身が蓄積する曲データM31を引継サーバSVへ送信する必要がある。そのため、センタサーバCSVは曲データ引継処理を実行する(S404)。また、引継サーバSVは曲データ引受処理を実行する(S411)。曲データ引継処理後、センタサーバCSVはステップS405へ進む。
[End operation of the center server that is distributing its song data]
As a result of the determination in step S701, when the music data M31 is being reproduced by the audio client CL1, the center server CSV needs to transmit the music data M31 stored therein to the takeover server SV. Therefore, the center server CSV executes music piece data takeover processing (S404). In addition, the takeover server SV executes music data acceptance processing (S411). After the music data takeover process, the center server CSV proceeds to step S405.

ステップS406で再生コマンドを送信後、センタサーバCSVはカウント値nをカウントアップし(S407)、再びステップS402に戻って動作を繰り返す。これにより、センタサーバCSVに接続されている全てのオーディオクライアントCLに対して終了動作を実行できる。全てのオーディオクライアントCLに対して終了動作を実行後、すなわち、カウント値nがクライアント接続数を超えたとき、(S402)、センタサーバCSVは複数のサブサーバSSVに離脱通知を送信し(S335)、その動作を終了する。
なお、センタサーバCSVは離脱通知を他のサブサーバSSVに送信するとき、引継サーバに対しては引継命令も送信する。
After transmitting the reproduction command in step S406, the center server CSV increments the count value n (S407), returns to step S402 again, and repeats the operation. As a result, the end operation can be executed for all the audio clients CL connected to the center server CSV. After the end operation is executed for all audio clients CL, that is, when the count value n exceeds the number of client connections (S402), the center server CSV transmits a leave notification to the plurality of subservers SSV (S335). The operation is finished.
The center server CSV also transmits a takeover command to the takeover server when sending the leave notification to the other subserver SSV.

2.2.3.起動処理後のサブサーバ動作
センタサーバシステム70ではオーディオクライアントCLへのグローバルリストGLの送信及び曲データMの送信はすべてセンタサーバCSVが行う。そのため、センタサーバCSVでは接続動作(S100)やリスト更新動作(S500)を行うことで、サブサーバSSVから更新されたローカルリストLLを取得し、オーディオクライアントCLに最新のグローバルリストGLを配信する。一方、サブサーバSSVも図38に示すように、接続動作(S650)とリスト更新動作(S550)を行う。サブサーバSSVはオーディオクライアントCLに対してグローバルリストGLを配信しないが、センタサーバCSVが動作終了(S700)を実行するとき、センタサーバCSVに一番初めに接続したサブサーバSSVがセンタサーバCSVから引継命令を受ける。つまり、サブサーバSSVはセンタサーバCSVに変わる場合がある。そのため、サブサーバSSVは自分が起動処理を行った後に起動したサブサーバSSVのローカルリストLLを取得しておき、センタサーバCSVから引継命令を受けたときセンタサーバとして機能できるように準備する。
2.2.3. Sub-Server Operation After Startup Processing In the center server system 70, the center server CSV performs all transmissions of the global list GL and the music data M to the audio client CL. Therefore, the center server CSV acquires the updated local list LL from the sub server SSV by performing the connection operation (S100) and the list update operation (S500), and distributes the latest global list GL to the audio client CL. On the other hand, as shown in FIG. 38, the sub server SSV also performs the connection operation (S650) and the list update operation (S550). Although the sub server SSV does not distribute the global list GL to the audio client CL, when the center server CSV executes the operation end (S700), the sub server SSV connected to the center server CSV first is connected from the center server CSV. Receive a takeover order. That is, the sub server SSV may change to the center server CSV. For this reason, the sub server SSV acquires the local list LL of the sub server SSV that has been started after performing the start processing, and prepares to function as a center server when receiving a takeover command from the center server CSV.

ステップS650の接続動作及びステップS550のリスト更新処理を実行後、サブサーバSSVはセンタサーバCSVから引継命令を受けたか否かを判断する(S21)。引継命令を受けた場合、サブサーバSSVはセンタサーバCSVとしてセンタサーバの動作を実行する(S50)。一方、引継命令を受けなくても、サブサーバSSV自身に対して接続されたサーバ(センタサーバCSV及び他のサブサーバSSV)が存在しない場合もそのサブサーバSSVはセンタサーバCSVとしてセンタサーバの動作を実行する。当該サブサーバSSV自身に対して接続されたサーバSVが存在するか否かはサーバリストに基づいて判断される。   After executing the connection operation in step S650 and the list update process in step S550, the sub server SSV determines whether or not a takeover command has been received from the center server CSV (S21). When receiving the takeover command, the sub server SSV executes the operation of the center server as the center server CSV (S50). On the other hand, even if no takeover command is received, even if there is no server (center server CSV and other subserver SSV) connected to the subserver SSV itself, the subserver SSV operates as a center server CSV. Execute. Whether there is a server SV connected to the sub server SSV itself is determined based on the server list.

サブサーバSSVが動作を終了する場合であって(S23)、かつ、サブサーバSSVがセンタサーバCSVに曲データMを配信していないときは(S24)、離脱通知を送信した後(S335)、動作を終了する。一方、センタサーバCSVに曲データMを配信している場合、その曲データMの引き継ぎをセンタサーバCSVにした後(S750)、動作を終了する。   When the sub server SSV finishes the operation (S23), and the sub server SSV does not distribute the music piece data M to the center server CSV (S24), after sending a leave notification (S335), End the operation. On the other hand, when the music data M is distributed to the center server CSV, after the music data M is taken over by the center server CSV (S750), the operation is terminated.

以下、接続動作(S650)、リスト更新動作(S550)、終了動作(S750)について説明する。   The connection operation (S650), list update operation (S550), and end operation (S750) will be described below.

2.2.3.1.接続動作
図39を参照して、稼働中のサブサーバSSV1がサーバ探索のマジックワードを受信したとき(S651)、サブサーバSSV1は応答しない、又は、自身がサブサーバSSVである旨の応答を行う(S652)。これによりオーディオクライアントCLはサブサーバSSVには接続できない。
2.2.3.1. Connection Operation Referring to FIG. 39, when the active sub-server SSV1 receives a magic word for server search (S651), the sub-server SSV1 does not respond or responds that it is a sub-server SSV. (S652). As a result, the audio client CL cannot be connected to the sub server SSV.

次に、マジックワードをブロードキャストしたのが起動サーバSVであるかクライアントCLであるか判断する(S653)。サブサーバSSVは起動サーバSV(他のサブサーバSSV)から探索用のマジックワードを受けるポートと、オーディオクライアントCLから探索用のマジックワードを受けるポートとを分けているため、ステップS653の判断ができる。なお、起動サーバSVとオーディオクライアントCLの探索用のマジックワードが異なっていることで、サブサーバSSVがS653の判断ができるようにしてもよい。   Next, it is determined whether the magic word is broadcast by the activation server SV or the client CL (S653). Since the sub server SSV separates the port that receives the search magic word from the activation server SV (other sub server SSV) and the port that receives the search magic word from the audio client CL, the determination in step S653 can be made. . Note that the sub-server SSV may be able to make the determination in S653 because the magic words for searching the activation server SV and the audio client CL are different.

ステップS653での判断の結果、ブロードキャストしたのがオーディオクライアントCLである場合、サブサーバSSV1は接続動作を終了する。一方、判断の結果、ブロードキャストしたのが起動サーバSV(サブサーバSSV2とする)である場合、サブサーバSSV2はサブサーバSSV1よりも後で起動したことになる。このとき、サブサーバSSV1は自分より後に起動したサブサーバSSV2のサーバ特定情報をサーバリストに登録する(S654)。サーバ特定情報はマジックワードとともにブロードキャストされる。   If the result of determination in step S653 is that the audio client CL has broadcast, the sub server SSV1 ends the connection operation. On the other hand, as a result of the determination, if the start server SV (sub server SSV2) broadcasts, the sub server SSV2 has started after the sub server SSV1. At this time, the sub server SSV1 registers the server specifying information of the sub server SSV2 started later than itself in the server list (S654). Server specific information is broadcast along with the magic word.

続いて、サブサーバSSV1はローカルリストLL2を取得するため、サブサーバSSV2に対して接続処理(S1000)を実行する。起動サーバSVであるサブサーバSSV2がセンタサーバCSVとの接続処理を実施中(つまり、起動処理中)の場合、サブサーバSSV1がサブサーバSSV2に接続処理(S1000)を実行しても接続は失敗する。この場合、サブサーバSSV1はサブサーバSSV2から準備OKコマンドを受けた後(S656)、再び接続処理を実行する(S1000)。接続に成功した場合(S655)、サブサーバSSV1は接続したサブサーバSSV2からローカルリストLL2を取得し、HDD14に格納する(S1010)。   Subsequently, the sub server SSV1 executes a connection process (S1000) to the sub server SSV2 in order to acquire the local list LL2. If the sub server SSV2, which is the activation server SV, is executing the connection process with the center server CSV (that is, during the activation process), the connection fails even if the sub server SSV1 executes the connection process (S1000) to the sub server SSV2. To do. In this case, after receiving the preparation OK command from the sub server SSV2 (S656), the sub server SSV1 executes the connection process again (S1000). When the connection is successful (S655), the sub server SSV1 acquires the local list LL2 from the connected sub server SSV2 and stores it in the HDD 14 (S1010).

以上の動作により、サブサーバSSVは自身が起動した後に起動したサブサーバSSVのローカルリストLLを全て取得し、HDD14内に蓄積する。引継指令を受けた等によりセンタサーバCSVとなったときに、取得したローカルリストLLからグローバルリストGLを作成し、複数のオーディオクライアントCLに送信する必要があるからである。なお、サブサーバSSVは自身が起動する前に既に起動していたサーバSV(センタサーバCSV又はサブサーバSSV)のローカルリストLLは取得しない。センタサーバシステム70ではセンタサーバCSVが引き継がれるとき、起動したサーバSV順に引き継がれる。よって、あるサブサーバSSVがセンタサーバCSVになるときは、そのサブサーバSSV以前に起動したサーバSVはすべてLAN60から離脱している。そのため、自身の起動前に既に起動しているサーバSVのローカルリストLLは取得しなくてよい。   With the above operation, the sub server SSV acquires all the local lists LL of the sub server SSV started up after starting up and stores it in the HDD 14. This is because it is necessary to create a global list GL from the acquired local list LL and transmit it to a plurality of audio clients CL when it becomes the center server CSV by receiving a takeover command or the like. Note that the sub server SSV does not acquire the local list LL of the server SV (center server CSV or sub server SSV) that has been started before the sub server SSV is started. In the center server system 70, when the center server CSV is taken over, it is taken over in the order of the activated server SV. Therefore, when a certain sub server SSV becomes the center server CSV, all the server SVs activated before the sub server SSV are disconnected from the LAN 60. Therefore, it is not necessary to acquire the local list LL of the server SV that has already been activated before its own activation.

2.2.3.2.リスト更新動作
2.2.3.2.1.自己のローカルリストが更新された場合
サブサーバSSVは自己の曲データを更新したとき、リスト更新通知をセンタサーバCSVと自分よりも先に起動したサブサーバSSVに送信する。
2.2.3.2. List update operation 2.2.3.2.1. When its own local list is updated When the sub server SSV updates its own song data, the sub server SSV transmits a list update notification to the center server CSV and the sub server SSV started earlier than itself.

図40を参照して、サブサーバSSV1が自己の曲データを更新したとき、サブサーバSSV1はローカルリストLL1を更新する(S551)。次に、サブサーバSSV1は既存のプレゼンテーションコンテンツリストPLを削除する(S552)。サブサーバSSV1のプレゼンテーションコンテンツリストPLには、サブサーバSSV1自身のローカルリストLL1の格納場所及びサブサーバSSV1の起動後に起動した他のサブサーバSSVのローカルリストLLの格納場所が記録される。プレゼンテーションコンテンツリストPLを削除後、サブサーバSSV1は更新されたローカルリストLL1に基づいて、新たなプレゼンテーションコンテンツリストPLを作成する(S553)。プレゼンテーションコンテンツリストを作成するのは、自身がセンタサーバCSVとなったときに必要だからである。プレゼンテーションコンテンツリストPLを作成後、サブサーバSSV1はリスト更新通知を送信する(S554)。リスト更新通知は、サブサーバSSV1内のクライアントリストに登録された複数のサーバSVに対して送信される

Referring to FIG. 40, when the sub server SSV1 updates its song data, the sub server SSV1 updates the local list LL1 (S551). Next, the sub server SSV1 deletes the existing presentation content list PL (S552). In the presentation content list PL of the sub server SSV1, the storage location of the local list LL1 of the sub server SSV1 and the storage location of the local list LL of the other sub server SSV started after the sub server SSV1 is started are recorded. After deleting the presentation content list PL, the sub server SSV1 creates a new presentation content list PL based on the updated local list LL1 (S553). The reason for creating the presentation content list is that it is necessary when it becomes the center server CSV. After creating the presentation content list PL, the sub server SSV1 transmits a list update notification (S554). The list update notification is transmitted to a plurality of servers SV registered in the client list in the sub server SSV1 .

2.2.3.2.2.他のサーバのローカルリストが更新された場合
サブサーバSSV1は自分より後に起動したサブサーバSSVからリスト更新通知を受ける。図41を参照して、サブサーバSSV1、SSV2の順に起動したセンタサーバシステム70において、サブサーバSSV2が新たな曲データを登録したとき、サブサーバSSV2は自身より先に起動したセンタサーバCSV及びサブサーバSSV1に対してリスト更新通知を送信する(S555)。サブサーバSSV1はリスト更新通知を受信後(S556)、既存のプレゼンテーションコンテンツリストPLを削除する(S557)。続いて、サブサーバSSV1はサブサーバSSV2のローカルリストLL2を削除する(S558)。ローカルリストLL2を削除後、サブサーバSSV1はサブサーバSSV2に対して更新されたローカルリストLL2の転送要求コマンドを送信する(S559)。サブサーバSSV2は転送要求コマンドを受信後(S560)、更新されたローカルリストLL2をサブサーバSSV1に送信する(S561)。サブサーバSSV1は更新されたローカルリストLL2を受信後(S562)、プレゼンテーションコンテンツリストPLを作成する(S563)。
2.2.3.2.2. When the local list of another server is updated The sub server SSV1 receives a list update notification from the sub server SSV activated after itself. Referring to FIG. 41, in the center server system 70 activated in the order of the sub servers SSV1 and SSV2, when the sub server SSV2 registers new song data, the sub server SSV2 starts the center server CSV and sub A list update notification is transmitted to the server SSV1 (S555). After receiving the list update notification (S556), the sub server SSV1 deletes the existing presentation content list PL (S557). Subsequently, the sub server SSV1 deletes the local list LL2 of the sub server SSV2 (S558). After deleting the local list LL2, the sub server SSV1 transmits an updated transfer request command for the local list LL2 to the sub server SSV2 (S559). After receiving the transfer request command (S560), the sub server SSV2 transmits the updated local list LL2 to the sub server SSV1 (S561). After receiving the updated local list LL2 (S562), the sub server SSV1 creates the presentation content list PL (S563).

以上の動作により、サブサーバSSV1はセンタサーバCSVから引継命令を受けて、自身がセンタサーバCSVとして動作することになっても、最新のグローバルリストGLをクライアントCLに送信できる。   With the above operation, the sub server SSV1 receives the takeover command from the center server CSV and can transmit the latest global list GL to the client CL even when the sub server SSV1 operates as the center server CSV.

2.2.3.2.3.他のサーバが離脱した場合
図42を参照して、サブサーバSSV1、SSV2の順に起動したセンタサーバシステム70において、サブサーバSSV2が動作を終了し、LAN60から離脱するとき、サブサーバSSV2は自身より先に起動したサーバSVに対して離脱通知を送信する(S564)。離脱通知は、サブサーバSSV2内のクライアントリストに登録された全てのサーバSVに対して送信される。サブサーバSSV1は離脱通知を受けた後(S565)、既存のプレゼンテーションコンテンツリストPLを削除する(S566)。その後、HDD14に登録したローカルリストLL2を削除する(S567)。ローカルリストLL2を削除後、サブサーバSSV1はプレゼンテーションコンテンツリストPLを作成する(S568)。
2.2.3.2.3. When Other Servers Referring to FIG. 42, in the center server system 70 activated in the order of the sub servers SSV1 and SSV2, when the sub server SSV2 finishes its operation and leaves the LAN 60, the sub server SSV2 A leave notification is transmitted to the server SV that has been activated first (S564). The leave notification is transmitted to all the servers SV registered in the client list in the sub server SSV2. After receiving the withdrawal notification (S565), the sub-server SSV1 deletes the existing presentation content list PL (S566). Thereafter, the local list LL2 registered in the HDD 14 is deleted (S567). After deleting the local list LL2, the sub server SSV1 creates the presentation content list PL (S568).

2.2.3.3.終了動作
図43を参照して、サブサーバSSV1が動作を終了するとき、サブサーバSSV1はセンタサーバCSVに対して自身が蓄積する曲データを配信中であるか否か判断する(S751)。曲データを配信していない場合、サブサーバSSV1はサブサーバSSV1より前に起動したサーバSVに対して離脱通知を送信後(S757)、動作を終了する。一方、曲データM11を配信中である場合、サブサーバSSV1は曲データM11の登録要求コマンドをセンタサーバCSVに送信する(S752)。センタサーバCSVは要求コマンドを受け、HDD14内に新規曲IDを登録する(S753)。登録後、センタサーバCSVは新規曲IDをサブサーバSSV1に送信する(S754)。サブサーバSSV1は新規曲IDを受け、曲データM11に新規曲IDを付与してセンタサーバCSVに送信する(S755)。送信後、サブサーバSSV1は離脱通知を送信して(S757)、動作を終了する。センタサーバCSVは曲データM11を受信し、HDD14内の新規曲IDが付与された曲データを格納する場所に曲データM11を登録する(S756)。
2.2.3.3. Ending operation Referring to FIG. 43, when the sub server SSV1 ends the operation, the sub server SSV1 determines whether or not the music data stored therein is being distributed to the center server CSV (S751). If the song data is not distributed, the sub server SSV1 transmits a disconnection notification to the server SV activated before the sub server SSV1 (S757), and ends the operation. On the other hand, when the music data M11 is being distributed, the sub server SSV1 transmits a registration request command for the music data M11 to the center server CSV (S752). The center server CSV receives the request command and registers a new song ID in the HDD 14 (S753). After registration, the center server CSV transmits the new song ID to the sub server SSV1 (S754). The sub server SSV1 receives the new song ID, assigns the new song ID to the song data M11, and transmits it to the center server CSV (S755). After the transmission, the sub server SSV1 transmits a leave notification (S757) and ends the operation. The center server CSV receives the song data M11, and registers the song data M11 in the HDD 14 in a location where the song data to which the new song ID is assigned is stored (S756).

以上の動作により、サブサーバSSV1が自身の曲データMを配信中の場合であっても、LAN60上から離脱できる。   With the above operation, even when the sub server SSV1 is distributing its own music data M, it can leave the LAN 60.

2.3.コントローラを含むセンタサーバシステム
上記で説明したセンタサーバシステム70は、図44に示すようにコントローラCNを備えてもよい。コントローラCNはセンタサーバSVと接続し、サーバSVを介してオーディオクライアントCLを制御する。コントローラCNの構成は図25と同じである。コントローラCNはコントローラ用サーバリスト及びグローバルリストを持つ。なお、図44では1つのコントローラCNを示したが、複数あってもよい。
2.3. Center Server System Including Controller The center server system 70 described above may include a controller CN as shown in FIG. The controller CN is connected to the center server SV and controls the audio client CL via the server SV. The configuration of the controller CN is the same as that in FIG. The controller CN has a controller server list and a global list. In FIG. 44, one controller CN is shown, but a plurality of controllers CN may be provided.

コントローラCNがオーディオクライアントCL2に曲データM21に基づく曲を再生させる場合、コントローラCNはオーディオクライアントCL2に再生コマンドを送信する。具体的には、コントローラCNはセンタサーバCSVを介してオーディオクライアントCL2に再生コマンドを送信する(1)。再生コマンドを受けたオーディオクライアントCL2の動作は図31中の(B)及び(C)と同じである。   When the controller CN causes the audio client CL2 to play a song based on the song data M21, the controller CN transmits a playback command to the audio client CL2. Specifically, the controller CN transmits a playback command to the audio client CL2 via the center server CSV (1). The operation of the audio client CL2 that has received the playback command is the same as (B) and (C) in FIG.

2.3.1.システム動作
コントローラCNは、センタサーバCSVと接続し、ハンドル取得処理を実行する。ハンドル取得処理は図27と同じである。図27におけるサーバSV2の動作をセンタサーバCSVが実行する。センタサーバシステム70の全てのオーディオクライアントCL1〜CL3はセンタサーバCSVと接続されている。そのため、コントローラCNはセンタサーバCSVに対してハンドル取得処理を実行すれば、オーディオクライアントCL1〜CL3の監視ハンドル及び制御ハンドルを取得できる。
2.3.1. System operation The controller CN is connected to the center server CSV and executes a handle acquisition process. The handle acquisition process is the same as in FIG. The center server CSV executes the operation of the server SV2 in FIG. All the audio clients CL1 to CL3 of the center server system 70 are connected to the center server CSV. Therefore, the controller CN can acquire the monitoring handles and control handles of the audio clients CL1 to CL3 by executing a handle acquisition process for the center server CSV.

また、グローバルリストGLの取得動作及び更新動作は1.4.3.2.と同じである。ただし、グローバルリストGLを送信するサーバはセンタサーバCSVである。   The global list GL acquisition operation and update operation are described in 1.4.3.2. Is the same. However, the server that transmits the global list GL is the center server CSV.

監視ハンドルを取得したコントローラCNは、オーディオクライアントCLを監視できる。コントローラCNの監視動作は図28と同じである。センタサーバシステム70では、図28中のサーバSV2の動作をセンタサーバCSVが実行する。   The controller CN that has acquired the monitoring handle can monitor the audio client CL. The monitoring operation of the controller CN is the same as in FIG. In the center server system 70, the center server CSV executes the operation of the server SV2 in FIG.

また、制御ハンドルを取得したコントローラCNは、オーディオクライアントCLを制御できる。図45を参照して、コントローラCNは再生コマンドをセンタサーバCSVに送信する(S7603)。サーバSV2はコントローラCNから送信された再生コマンドをオーディオクライアントCL2に送信する(S7604)。   The controller CN that has acquired the control handle can control the audio client CL. Referring to FIG. 45, controller CN transmits a reproduction command to center server CSV (S7603). The server SV2 transmits the reproduction command transmitted from the controller CN to the audio client CL2 (S7604).

再生コマンドを受けたオーディオクライアントCL2は曲データを取得して再生するために、配信依頼処理を実行する(S240)。このときセンタサーバCSVは配信動作を実行する(S500)。   Upon receiving the playback command, the audio client CL2 executes a distribution request process in order to acquire and play the song data (S240). At this time, the center server CSV executes a distribution operation (S500).

以上の動作により、コントローラCNは制御ハンドルを取得したオーディオクライアントCLに対して、再生や再生停止を指示できる。すなわち、オーディオクライアントを制御できる。   With the above operation, the controller CN can instruct the audio client CL that has acquired the control handle to perform playback or stop playback. That is, the audio client can be controlled.

3.他の実施の形態
3.1.ファイル共有サーバシステム
ファイル共有サーバシステムは、SMB(Server Message Block)やCIFS(Common Internet File System)といったファイル共有プロトコルを利用する。図46(A)を参照して、サーバSV2は自身が蓄積する曲データM21〜M2nのリストと、サーバSV1及びサーバSV3が蓄積する曲データM11〜M1n,M31〜M3nのリストとを有する。つまり、サーバSV2はサーバSV1及びサーバSV3が蓄積するファイルを共有できる。サーバSV2はクライアントCL2からのリスト要求に応じて、リストをクライアントCL2に提供する。クライアントCL2はリストに基づいて所望の曲データM31を要求する。図46(B)を参照して、サーバSV2は要求を受け、サーバSV3内の曲データM31を取得して、クライアントCL2に配信する。
3. Other Embodiments 3.1. File Sharing Server System The file sharing server system uses a file sharing protocol such as SMB (Server Message Block) or CIFS (Common Internet File System). Referring to FIG. 46A, server SV2 has a list of music data M21 to M2n stored therein and a list of music data M11 to M1n and M31 to M3n stored in server SV1 and server SV3. That is, the server SV2 can share files stored in the server SV1 and the server SV3. The server SV2 provides the list to the client CL2 in response to the list request from the client CL2. The client CL2 requests the desired music piece data M31 based on the list. Referring to FIG. 46B, the server SV2 receives the request, acquires the music data M31 in the server SV3, and distributes it to the client CL2.

ファイル共有サーバシステムでは、サーバSV1及びサーバSV3は単なる曲データを蓄積する装置として機能する。そのため、たとえばサーバSV1に新たな曲データを登録しても、サーバSV1はサーバSV2に更新通知を送信しない。   In the file sharing server system, the server SV1 and the server SV3 function as devices that simply store music data. Therefore, for example, even if new song data is registered in the server SV1, the server SV1 does not transmit an update notification to the server SV2.

なお、サーバSV1及びSV3もサーバSV2と同様に当該他のサーバSVのファイルを共有できてもよい。   Note that the servers SV1 and SV3 may be able to share the files of the other servers SV similarly to the server SV2.

3.2.ローカルリスト送信システム
ローカルリスト送信システムは、オーディオクライアントCLが複数のサーバSVから複数のローカルリストLLを取得することで、LAN上に蓄積された全ての曲データMを選択できるシステムである。
3.2. Local List Transmission System The local list transmission system is a system in which the audio client CL can select all the music data M stored on the LAN by acquiring a plurality of local lists LL from a plurality of servers SV.

図47(A)を参照して、ローカルリスト送信システム30では、各サーバSVは自身が蓄積する曲データのローカルリストLLのみ保有する。オーディオクライアントCL2がローカルリストLLを要求すると(図中(1))、図47(B)に示すように、各サーバSV1〜SV3はオーディオクライアントCL2にローカルリストLL1〜LL3を送信する(図中(2))。オーディオクライアントCL2は全てのローカルリストLL1〜LL3を取得後、それらのリストに基づいて曲を選択する。選択した曲が曲データM31である場合、図47(C)に示すようにオーディオクライアントCL2はサーバSV3に対して曲データM31を要求し(図中(3))、サーバSV3は要求に応じて曲データM31を送信する(図中(4))。   Referring to FIG. 47A, in the local list transmission system 30, each server SV holds only the local list LL of music data stored therein. When the audio client CL2 requests the local list LL ((1) in the figure), as shown in FIG. 47B, each of the servers SV1 to SV3 transmits the local lists LL1 to LL3 to the audio client CL2 (( 2)). After acquiring all the local lists LL1 to LL3, the audio client CL2 selects a song based on those lists. If the selected song is song data M31, as shown in FIG. 47C, the audio client CL2 requests the song data M31 from the server SV3 ((3) in the figure), and the server SV3 responds to the request. The song data M31 is transmitted ((4) in the figure).

以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。   While the embodiments of the present invention have been described above, the above-described embodiments are merely examples for carrying out the present invention. Therefore, the present invention is not limited to the above-described embodiment, and can be implemented by appropriately modifying the above-described embodiment without departing from the spirit thereof.

例えば、センタサーバを引継ぐ際に、クライアントが再生中の曲だけでなく、クラインアントが再生予定である曲を引継サーバに送信してもよい。さらに、センタサーバシステムにおいて、クライアントがサブサーバに直接曲を要求してもよいが、その場合、クライアントはセンタサーバとプッシュポートで接続しておくことにより、センタサーバからリスト更新の通知を直ぐに受けることができる。さらに、センタサーバシステムにおいて、クライアントは起動時にセンタサーバと自動的に接続するようにしてもよい。さらに、センタサーバシステムにおいて、複数のサーバグループが存在し、その各グループにそれぞれセンタサーバが設けられていてもよい。さらに、クライアントがサーバを探索する際に、センタサーバシステムにおいては少なくともセンタサーバがクライアントに応答すればよい。しかし、クライアントがセンタサーバに対応していない場合には、マジックワードの属性(センタサーバに対応していない旨の属性)を判断することにより、サブサーバがクライアントに応答するようにしてもよい。さらに、サーバはクライアントの情報(接続情報、ステータス(再生中、停止中等)、クライアントのタイプ、ボリューム、プロダクトID、ファームウェアID、クライアント名、再生ファイル名および/またはリスト作成用のリスト構築キー)を有しており、グローバルリストサーバシステムにおいては、各サーバが他のサーバが有するクライアント情報を有し、センタサーバシステムにおいては、センタサーバが全サブサーバのクライアント情報を有することもできる。これにより、クライアントの状態を監視するためのコントローラを有するシステムにおいては、コントローラは、1つのサーバ(センタサーバシステムにおいてはセンタサーバ)に接続すれば、全てのクライアントの情報を監視することができる。なお、クライアント情報の共有、更新などの方法はコンテンツリストの共有、更新方法と同じ方法で実現することができる。さらに、コンテンツリストの中にクライアント情報が含まれていてもよい。   For example, when taking over the center server, not only the song being played by the client but also the song that the client is planning to play may be transmitted to the takeover server. Further, in the center server system, the client may directly request a song from the sub server. In this case, the client is immediately notified of the list update from the center server by connecting to the center server via a push port. be able to. Further, in the center server system, the client may be automatically connected to the center server at startup. Further, in the center server system, a plurality of server groups may exist, and a center server may be provided for each group. Further, when the client searches for a server, at least the center server may respond to the client in the center server system. However, if the client does not support the center server, the sub server may respond to the client by determining the magic word attribute (attribute indicating that the center server is not supported). Further, the server stores client information (connection information, status (playing, stopped, etc.), client type, volume, product ID, firmware ID, client name, playback file name, and / or list creation key for creating a list). In the global list server system, each server can have client information that other servers have, and in the center server system, the center server can have client information of all sub-servers. Thereby, in a system having a controller for monitoring the state of the client, the controller can monitor information of all the clients by connecting to one server (center server in the center server system). Note that client information sharing and updating methods can be implemented in the same manner as content list sharing and updating methods. Furthermore, client information may be included in the content list.

グローバルリストサーバシステムの全体構成を示す機能ブロック図である。It is a functional block diagram which shows the whole structure of a global list server system. 図1のグローバルリストサーバシステムを説明するための概略図である。It is the schematic for demonstrating the global list server system of FIG. 図1中のサーバの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the server in FIG. 図1中のオーディオクライアントの構成を示すブロック図である。It is a block diagram which shows the structure of the audio client in FIG. 図1中のマルチサーバシステムでサーバが起動するときの動作を示すフロー図である。It is a flowchart which shows operation | movement when a server starts with the multi-server system in FIG. 図5中のステップS10の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S10 in FIG. 図5中のステップS11の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S11 in FIG. 図1中のマルチサーバシステムで稼働中のサーバの動作を示すフロー図である。It is a flowchart which shows operation | movement of the server currently operate | moving with the multi-server system in FIG. 図8中のステップS100の動作のうち、他のサーバから接続依頼を受けたサーバの動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of the server which received the connection request from the other server among operation | movement of step S100 in FIG. 図8中のステップS100の動作のうち、オーディオクライアントから接続依頼を受けたサーバの動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of the server which received the connection request from the audio client among operation | movement of step S100 in FIG. 図8中のステップS200の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S200 in FIG. 図11中のステップS222で曲データを格納するためのバッファメモリの構成を示す図である。It is a figure which shows the structure of the buffer memory for storing music data by step S222 in FIG. 図12に示したバッファメモリにおいて、曲の先頭から1バッファ分の曲データを格納した状態を示す図である。FIG. 13 is a diagram showing a state in which music data for one buffer is stored from the beginning of the music in the buffer memory shown in FIG. 12. 図13に続き、全バッファ分の曲データを格納した状態を示す図である。It is a figure which shows the state which stored the music data for all the buffers following FIG. 図14に続き、先頭バッファから曲データを出力する状態を示す図である。FIG. 15 is a diagram illustrating a state in which music data is output from the head buffer following FIG. 14. 図15に続き、1バッファ分の空きが生じた状態を示す図である。FIG. 16 is a diagram illustrating a state in which an empty space for one buffer has occurred, following FIG. 15. 図8中のステップS300の動作のうち、サーバ自身の曲データが更新された場合の更新動作を示すフロー図である。It is a flowchart which shows the update operation | movement when the music data of a server itself are updated among the operation | movement of step S300 in FIG. 図17中のステップS306以降のサーバとオーディオクライアントとの動作を示すフロー図である。It is a flowchart which shows operation | movement with the server and audio client after step S306 in FIG. 図8中のステップS300の動作のうち、他のサーバの曲データが更新された場合の更新動作を示すフロー図である。It is a flowchart which shows the update operation | movement when the music data of another server are updated among the operation | movement of step S300 in FIG. 図8中のステップS300の動作のうち、他のサーバがLANから離脱する場合の更新動作を示すフロー図である。It is a flowchart which shows the update operation | movement when another server detaches | leaves from LAN among the operation | movement of step S300 in FIG. 図8中のステップS400の終了動作の詳細を示すフロー図である。It is a flowchart which shows the detail of completion | finish operation | movement of step S400 in FIG. 図21中のステップS404及びS411の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S404 and S411 in FIG. コントローラを含むグローバルサーバシステムの全体構成を示す機能ブロック図である。It is a functional block diagram which shows the whole structure of the global server system containing a controller. 図23中のサーバとオーディオクライアントとコントローラとの接続関係を説明するための概略図である。It is the schematic for demonstrating the connection relation of the server in FIG. 23, an audio client, and a controller. 図23中のコントローラの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the controller in FIG. 図23に示したグローバルサーバシステムのハンドル取得動作を示すフロー図である。FIG. 24 is a flowchart showing a handle acquisition operation of the global server system shown in FIG. 23. 図26中のステップS73の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S73 in FIG. 図23に示したグローバルサーバシステムの監視動作を示すフロー図である。It is a flowchart which shows the monitoring operation | movement of the global server system shown in FIG. 図23に示したグローバルサーバシステムの制御動作を示すフロー図である。FIG. 24 is a flowchart showing a control operation of the global server system shown in FIG. 23. センタサーバシステムの全体構成を示す機能ブロック図である。It is a functional block diagram which shows the whole structure of a center server system. 図30のセンタサーバシステムを説明するための概略図である。It is the schematic for demonstrating the center server system of FIG. 図30に示したセンタサーバシステムでサーバが起動するときの動作を示すフロー図である。FIG. 31 is a flowchart showing an operation when a server is activated in the center server system shown in FIG. 30. 図30に示したセンタサーバシステムで稼働中のセンタサーバの動作を示すフロー図である。FIG. 31 is a flowchart showing an operation of a center server operating in the center server system shown in FIG. 30. 図33中のステップS500の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S500 in FIG. 図34中のステップS501の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S501 in FIG. 図35中のステップS600の更新動作のうち、センタサーバが自己のローカルリストを更新したときの更新動作の詳細を示すフロー図である。FIG. 36 is a flowchart showing details of the update operation when the center server updates its own local list in the update operation of step S600 in FIG. 図33中のステップS700の終了動作の詳細を示すフロー図である。It is a flowchart which shows the detail of completion | finish operation | movement of step S700 in FIG. 図30に示したセンタサーバシステムで稼働中のサブサーバの動作を示すフロー図である。FIG. 31 is a flowchart showing an operation of a sub-server operating in the center server system shown in FIG. 30. 図38中のステップS650の動作の詳細を示すフロー図である。It is a flowchart which shows the detail of operation | movement of step S650 in FIG. 図38中のステップS550のリスト更新動作のうち、自己のローカルリストがされた場合のリスト更新動作の詳細を示すフロー図である。It is a flowchart which shows the detail of list update operation | movement when a self local list | wrist is made among list update operation | movement of step S550 in FIG. 図38中のステップS550のリスト更新動作のうち、他のサブサーバのローカルリストが更新された場合のリスト更新動作の詳細を示すフロー図である。It is a flowchart which shows the detail of list update operation | movement when the local list | wrist of another subserver is updated among list update operation | movement of step S550 in FIG. 図40中のステップS550のリスト更新動作のうち、他のサブサーバがLANを離脱する場合のリスト更新動作の詳細を示すフロー図である。It is a flowchart which shows the detail of list update operation | movement when another subserver leaves | leaves LAN among the list update operation | movement of step S550 in FIG. 図38中のステップS750の終了動作の詳細を示すフロー図である。It is a flowchart which shows the detail of completion | finish operation | movement of step S750 in FIG. コントローラを含むセンタサーバシステムの全体構成を示す機能ブロック図である。It is a functional block diagram which shows the whole structure of the center server system containing a controller. 図44に示したセンタサーバシステムの制御動作を示すフロー図である。FIG. 45 is a flowchart showing a control operation of the center server system shown in FIG. 44. ファイル共有サーバシステムを説明するための概略図である。It is the schematic for demonstrating a file sharing server system. ローカルリスト送信サーバシステムを説明するための概略図である。It is the schematic for demonstrating a local list transmission server system.

Claims (5)

センタサーバと複数のサブサーバとからなる複数のサーバと、クライアントとを備えたネットワークAVシステムであって、
前記センタサーバ及びサブサーバの各々は、
複数のコンテンツを蓄積するための蓄積手段と
自身が起動した後に起動した前記当該他のサーバから、前記当該他のサーバが蓄積する複数のコンテンツを列挙したローカルリストを取得するローカルリスト取得手段と、
自身が蓄積するコンテンツを列挙した自身のローカルリストと、前記当該他のサーバごとのローカルリストとを記憶するためのリスト記憶手段とを備え、
前記センタサーバはさらに、
前記クライアントの要求に応じて、前記複数のローカルリストをまとめたグローバルリストを前記クライアントに送信するグローバルリスト送信手段を備え
前記クライアントは、
前記センタサーバに前記グローバルリストを要求して取得するグローバルリスト取得手段を備え、
前記センタサーバはさらに、
自身が前記ネットワークAVシステムから離脱するとき、自身が起動した後に起動した前記当該他のサーバのうち、一番初めに自身に接続されたサーバに引継命令を送信する送信手段を備え、
前記サブサーバはさらに、前記引継命令を受けたとき、前記センタサーバとして動作することを特徴とするネットワークAVシステム。
A plurality of servers comprising a center server and multiple sub servers, a network AV system comprising a client,
Each of the center server and sub-server is
Storage means for storing a plurality of contents ;
A local list acquisition means for acquiring a local list enumerating a plurality of contents stored in the other server from the other server started after the server is started;
Comprises a local list of own listing the content itself accumulates, and a list storage means for storing a local list of each of the said other server,
The center server further includes
In response to a request from the client, a global list transmission unit that transmits a global list in which the plurality of local lists are collected to the client,
The client
A global list acquisition means for requesting and acquiring the global list from the center server;
The center server further includes
When its leaves from the network AV system, one of the the other servers that it has started after starting, a transmission means to transmit the takeover command to the connected very first to their server,
The network AV system, wherein the sub server further operates as the center server when receiving the takeover instruction.
請求項1に記載のネットワークAVシステムであって、
前記クライアントは、
前記送信されたグローバルリストの中から選択されたコンテンツを前記センタサーバに要求するコンテンツ要求手段を備え、
前記センタサーバはさらに、
前記クライアントからの要求に応じて前記選択されたコンテンツを前記クライアントに返信するコンテンツ返信手段を備え、
前記クライアントはさらに、
前記センタサーバから返信されたコンテンツを再生する再生手段を備えることを特徴とするネットワークAVシステム。
The network AV system according to claim 1,
The client
Comprising a content request means for requesting the content selected from among the transmitted global list to the Sentasa server,
The Sentasa bar further,
Content return means for returning the selected content to the client in response to a request from the client;
The client further includes:
Network AV system characterized in that it comprises reproducing means for reproducing a content that is the Sentasa bar or al reply.
請求項2に記載のネットワークAVシステムであって
記センタサーバはさらに、
前記クライアントからの要求に応じて前記グローバルリストに基づいて前記選択されたコンテンツを蓄積するサーバを特定するサーバ特定手段と、
前記特定されたサーバがセンタサーバの場合、自己の前記蓄積手段から前記選択されたコンテンツを取得し、前記特定されたサーバがサブサーバの場合、そのサブサーバの蓄積手段から前記選択されたコンテンツを取得するコンテンツ取得手段とを備え、
前記コンテンツ返信手段は、前記コンテンツ取得手段により取得されたコンテンツを前記クライアントに返信することを特徴とするネットワークAVシステム。
The network AV system according to claim 2 ,
Before Symbol center server further,
Server specifying means for specifying a server for storing the selected content based on the global list in response to a request from the client;
When the specified server is a center server, the selected content is acquired from its own storage means. When the specified server is a sub server, the selected content is acquired from the storage means of the sub server. Content acquisition means for acquiring,
The network AV system, wherein the content return means returns the content acquired by the content acquisition means to the client.
請求項3に記載のネットワークAVシステムであって、
前記グローバルリストは前記複数のコンテンツに対応して前記複数のコンテンツが蓄積された複数のサーバのアドレスを含み、
前記サーバ特定手段は、前記コンテンツ要求手段により要求されたコンテンツを蓄積した前記サーバのアドレスを特定することを特徴とするネットワークAVシステム。
The network AV system according to claim 3, wherein
The global list includes addresses of a plurality of servers in which the plurality of contents are stored corresponding to the plurality of contents,
The network AV system, wherein the server specifying unit specifies an address of the server that stores the content requested by the content requesting unit.
請求項に記載のネットワークAVシステムであって、
前記グローバルリストは複数のコンテンツに対応して前記コンテンツが蓄積された複数のサーバの特定情報を含み、
前記クライアントはさらに、
送信されたグローバルリストの中から選択されたコンテンツを、前記特定情報に基づいて、前記選択されたコンテンツを蓄積する前記センタサーバ又は前記サブサーバに要求するコンテンツ要求手段を備え、
前記センタサーバ及びサブサーバはさらに、
前記クライアントの要求に応じて、前記選択されたコンテンツを前記クライアントに返信するコンテンツ返信手段を備え、
前記クライアントはさらに、
前記返信されたコンテンツを再生する再生手段を備えることを特徴とするネットワークAVシステム。
The network AV system according to claim 1 ,
The global list may include identification information of a plurality of servers in which the content is accumulated in correspondence with a plurality of contents,
The client further includes:
The content selected from the previous SL transmitted global list, based on the specific information includes a content request means for requesting the center server or the sub-server storing the selected content,
The center server and the sub server further include
In response to a request from the client, a content return means for returning the selected content to the client is provided.
The client further includes:
A network AV system characterized by comprising playback means for playing back the returned content .
JP2006321694A 2003-08-08 2006-11-29 Network AV system Expired - Fee Related JP4026668B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006321694A JP4026668B2 (en) 2003-08-08 2006-11-29 Network AV system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003290384 2003-08-08
JP2006321694A JP4026668B2 (en) 2003-08-08 2006-11-29 Network AV system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005512894A Division JP3979432B2 (en) 2003-08-08 2004-05-11 Network AV system

Publications (3)

Publication Number Publication Date
JP2007149103A JP2007149103A (en) 2007-06-14
JP2007149103A5 JP2007149103A5 (en) 2007-07-26
JP4026668B2 true JP4026668B2 (en) 2007-12-26

Family

ID=38210378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006321694A Expired - Fee Related JP4026668B2 (en) 2003-08-08 2006-11-29 Network AV system

Country Status (1)

Country Link
JP (1) JP4026668B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8868688B2 (en) 2010-07-20 2014-10-21 Empire Technology Development Llc Outputting content from multiple devices

Also Published As

Publication number Publication date
JP2007149103A (en) 2007-06-14

Similar Documents

Publication Publication Date Title
JP3979432B2 (en) Network AV system
EP1427170B1 (en) Peer-to-Peer content broadcast method
JP2021185489A (en) System and method for synchronizing operation among multiple digital data processing devices being independently clocked
US8516042B2 (en) Network type content reproducing system
JP3873405B2 (en) Data distribution system and data distribution apparatus
JP4305004B2 (en) Information processing apparatus, content information processing method, and computer program
US20050055718A1 (en) Peer-to-peer architecture for sharing video on demand content
JPH07200380A (en) System and method for distribution of video file
JPH0946688A (en) Video information offer/reception system
KR20050104358A (en) Information processing device, content management method, content information management method, and computer program
JP2003330827A (en) Contents reproducing device, server connecting method, server connecting program and record medium
JP2009259111A (en) Network apparatus, content distribution method and program
CN101873481A (en) Method and system for playing back videos in video monitoring system and network monitoring client side
Chen et al. What a juke! A collaborative music sharing system
JP4220523B2 (en) Group reproduction method, computer system and computer-readable medium applied on network
CN106507142A (en) A kind of synchronous broadcast method of non-Streaming Media audio-video document, device
KR20100099659A (en) Base server apparatus, communication method, communication control program, distribution system, and communication system
JP4026668B2 (en) Network AV system
JP4807361B2 (en) Karaoke network system, karaoke apparatus, content acquisition method, and content distribution method
JP2011124940A (en) Distribution system, node device, information processor, node program, and advertising content reproducing method
WO2003100679A1 (en) Content distribution device and method
JP2008097625A (en) Display control device, display method and program
JP2010085662A (en) Karaoke network system and karaoke device
JP2006252214A (en) Client or controller with automatic network connecting function and network connecting program
JP5880526B2 (en) Information sharing system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070918

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071001

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4026668

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131019

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees