JP2007274244A - Content data distribution system, content data distribution method, terminal device, and program thereof - Google Patents
Content data distribution system, content data distribution method, terminal device, and program thereof Download PDFInfo
- Publication number
- JP2007274244A JP2007274244A JP2006096098A JP2006096098A JP2007274244A JP 2007274244 A JP2007274244 A JP 2007274244A JP 2006096098 A JP2006096098 A JP 2006096098A JP 2006096098 A JP2006096098 A JP 2006096098A JP 2007274244 A JP2007274244 A JP 2007274244A
- Authority
- JP
- Japan
- Prior art keywords
- terminal device
- channel
- ring buffer
- content data
- buffer area
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、コンテンツデータ配信の技術に関する。詳細には、チャンネル毎にコンテンツ配信装置を頂点として複数の端末装置が階層構造で多層に論理接続され、コンテンツ配信装置からストリーミング配信されるコンテンツデータがチャンネル毎に端末装置の中継機能により順次階層構造の下流に中継され、複数の端末装置によってコンテンツデータを再生可能としたコンテンツデータ配信システム、コンテンツデータ配信方法、端末装置、及びそのプログラムに関する。 The present invention relates to content data distribution technology. Specifically, a plurality of terminal devices are logically connected in a multilayered manner with a content distribution device at the top for each channel, and content data streamed from the content distribution device is sequentially layered for each channel by the relay function of the terminal device The present invention relates to a content data distribution system, a content data distribution method, a terminal device, and a program thereof, which are relayed downstream from each other and allow content data to be reproduced by a plurality of terminal devices.
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などコンテンツのデータ(以下、「コンテンツデータ」と呼ぶ。)のストリーミング配信を行うコンテンツ配信サービスが開始され始めている。ここで、ストリーミング配信とは、クライアント端末装置(以下、単に「端末装置」と呼ぶ。)がストリーミング受信できるストリーミング形式でコンテンツデータを配信する配信方法であり、端末装置はストリーミング配信されるコンテンツデータを受信しながら再生することができる。また、ストリーミング配信形態としては、コンテンツデータの配信時間が決められた放送形式のものと、端末装置からの要求に応じて個々の端末装置にストリーミング配信するオンデマンド形式のものがある。 In recent years, content distribution services for streaming distribution of content data (hereinafter referred to as “content data”) such as music, movies, and talk programs have started to be started via networks such as the Internet. Here, the streaming distribution is a distribution method for distributing content data in a streaming format that can be stream-received by a client terminal device (hereinafter simply referred to as “terminal device”). You can play while receiving. Further, as a streaming distribution form, there are a broadcast format in which a distribution time of content data is determined and an on-demand format in which streaming distribution is performed to individual terminal devices in response to a request from the terminal device.
放送形式のコンテンツ配信サービスは、従来、一つのコンテンツ配信装置から複数の端末装置に対して直接コンテンツの配信を行うものが主流であった。 Conventionally, a content distribution service in a broadcast format has been mainly used to directly distribute content from a single content distribution device to a plurality of terminal devices.
ところが、コンテンツ配信サービスの充実やネットワークへ接続する端末装置の増加に伴い、コンテンツ配信装置に対してコンテンツデータの配信を要求する端末装置が増加し、配信装置の負荷が増大していくのに加え、ネットワークにおけるトラフィックの集中が深刻な影響を及ぼすようになってきた。 However, with the enhancement of content distribution services and the increase in the number of terminal devices connected to the network, the number of terminal devices that request content data distribution from the content distribution devices increases, and the load on the distribution devices increases. The concentration of traffic in the network has become a serious influence.
このようなコンテンツ配信装置への負荷やトラフィックの増大を回避するため、オリジナルの配信サーバに加え、ミラーサーバやキャッシュなどのサーバをネットワーク内に複数配置することにより負荷分散する技術が実用化されているが、コンテンツを配信するサーバが複数必要となり設備のコストが増大する。 In order to avoid such an increase in load and traffic on the content distribution device, a technology for distributing the load by placing a plurality of servers such as mirror servers and caches in the network in addition to the original distribution server has been put into practical use. However, a plurality of servers for distributing contents are required, and the cost of facilities increases.
そのため、端末装置間でのコンテンツデータの中継、すなわちP2P通信形態を用いることによりコンテンツ配信装置を増加することなく負荷やトラフィックの集中を低減することができるコンテンツデータ配信方法が提案されている。このコンテンツデータ配信方法は、コンテンツ配信装置を頂点としたツリー構造で多層に複数の端末装置を論理接続し、コンテンツ配信装置からコンテンツデータを下流の端末装置へ順次配信していくものである。すなわち、コンテンツ配信装置から配信されたコンテンツデータは、最上位層(第1階層)に位置する端末装置へ配信され、この最上位層に位置する端末装置はコンテンツ配信装置から配信されたコンテンツデータを第2階層に位置する端末装置へ中継し、このコンテンツデータの中継を最下層に位置する端末装置へ配信するまで行うものである(たとえば、特許文献1,2参照)。
Therefore, a content data distribution method has been proposed that can reduce load and traffic concentration without increasing the number of content distribution devices by relaying content data between terminal devices, that is, using a P2P communication mode. In this content data distribution method, a plurality of terminal devices are logically connected in multiple layers in a tree structure with the content distribution device as a vertex, and content data is sequentially distributed from the content distribution device to downstream terminal devices. That is, the content data distributed from the content distribution device is distributed to the terminal device located in the highest layer (first layer), and the terminal device located in the highest layer receives the content data distributed from the content distribution device. The relay is performed until the terminal device located in the second hierarchy is relayed and the content data is relayed to the terminal device located in the lowest layer (see, for example,
このようなコンテンツデータ配信システムにおいては、複数の端末装置をツリー構造で論理接続するための接続管理装置がネットワーク上に配置されている。接続管理装置は、コンテンツ配信システムの階層構造における端末装置の接続状態を管理する機能を有しており、この階層構造に参加していない端末装置からの参加要求を受信すると、階層構造を構成する複数の端末装置のうち、どの端末装置に接続すべきかを参加要求を行った端末装置に通知する。この通知を受けた端末装置は、接続管理装置から紹介を受けた接続先候補に対して接続要求することにより、コンテンツ配信システムに参加することができ、これにより、コンテンツ配信装置からのコンテンツデータを、論理的に接続している上流の端末装置から受信しながら再生することができる。 In such a content data distribution system, a connection management device for logically connecting a plurality of terminal devices in a tree structure is arranged on the network. The connection management device has a function of managing the connection state of the terminal devices in the hierarchical structure of the content distribution system, and forms a hierarchical structure when receiving a participation request from a terminal device not participating in the hierarchical structure. Of the plurality of terminal devices, the terminal device that made the participation request is notified of which terminal device should be connected. The terminal device that has received this notification can participate in the content distribution system by making a connection request to the connection destination candidate that has been introduced by the connection management device. It is possible to reproduce while receiving from the upstream terminal device that is logically connected.
ところで、放送形式のコンテンツデータ配信システムにおいて、複数のチャンネルによりコンテンツデータをストリーミング配信する場合、コンテンツ配信装置を頂点としたツリー型階層構造は、チャンネル毎に構成されることになる。 By the way, in the content data distribution system in the broadcast format, when content data is streamed and distributed by a plurality of channels, a tree-type hierarchical structure having the content distribution device as a vertex is configured for each channel.
したがって、端末装置のユーザが、視聴しているチャンネルとは異なるチャンネルを視聴するために操作を行った場合、視聴しているチャンネルに対応するツリー型階層構造とは異なるツリー型階層構造に参加することになる。
上述のようなコンテンツ配信システムの端末装置においては、パケット損失に対する補完処理や、受信済みのコンテンツデータに対するトリックプレイを行うことができるように、コンテンツデータを一時的に蓄積しておくリングバッファ領域が設定される。 In the terminal device of the content distribution system as described above, a ring buffer area for temporarily storing content data is provided so that a supplementary process for packet loss and trick play for received content data can be performed. Is set.
このリングバッファ領域は、大きければ大きいほど、パケット損失に対する補完処理の精度やトリックプレイの操作性を向上させることができる。 The larger this ring buffer area is, the more the accuracy of complementary processing for packet loss and the trick play operability can be improved.
ところが、それぞれのチャンネルによって、端末装置のユーザによる視聴状況は異なることから、リングバッファ領域のバッファ容量を一定に設定するのでは、視聴するチャンネルに関するパケット損失に対する補完処理やトリックプレイにおいて必ずしも必要のないバッファ容量となる場合があり、端末装置の記憶領域を有効に使用することができない。 However, since the viewing situation by the user of the terminal device varies depending on each channel, setting the buffer capacity of the ring buffer area to be constant is not necessarily required in the complementary processing or trick play for packet loss related to the channel to be viewed. The buffer capacity may be reached, and the storage area of the terminal device cannot be used effectively.
特に、記憶領域が小さいセットトップボックスやデジタル家電などの装置では、他の処理に用いる記憶容量をできるだけ確保することが望ましく、このような装置を端末装置として用いる場合、リングバッファ領域のバッファ容量を適切に設定することが望ましい。 In particular, in devices such as set-top boxes and digital home appliances with a small storage area, it is desirable to secure as much storage capacity as possible for other processing. When such a device is used as a terminal device, the buffer capacity of the ring buffer area is reduced. It is desirable to set appropriately.
そこで、かかる課題を解決するために、請求項1に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信する1以上のコンテンツ配信装置と、前記コンテンツデータを受信及び再生する複数の端末装置と、前記チャンネル毎に前記コンテンツ配信装置を頂点として複数の端末装置が階層構造で多層に論理接続されるように管理する接続管理装置とを有し、前記コンテンツ配信装置からストリーミング配信される前記コンテンツデータが前記チャンネル毎に前記端末装置の中継機能により順次前記階層構造の下流に中継され、前記複数の端末装置によって前記コンテンツデータを再生可能としたコンテンツデータ配信システムにおいて、前記コンテンツ配信装置は、前記コンテンツデータを配信する配信手段を備え、前記接続管理装置は、前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶する接続状態情報記憶手段と、前記端末装置から接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択する接続先候補選択手段と前記接続先候補選択手段によって選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ通知する通知手段と、を備え、前記端末装置は、記憶手段と、前記チャンネルを選択するためのチャンネル選択手段と、前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に接続する接続手段と、前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するリングバッファ設定手段と、前記チャンネル選択手段によって選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生する再生手段と、前記再生手段による前記チャンネル毎のコンテンツデータの再生状況を検出するコンテンツデータ再生状況検出手段と、他の前記端末装置から前記コンテンツデータの中継依頼を受信する中継依頼受信手段と、他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送する転送手段と、を備え、前記端末装置のリングバッファ設定手段は、前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータの再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定することを特徴とする。
Accordingly, in order to solve such a problem, the invention according to
また、請求項2に記載の発明は、請求項1に記載の発明において、前記端末装置の前記接続手段は、前記チャンネル選択手段によって選択されたチャンネルに対応するリングバッファ領域のバッファ容量を含む接続先紹介要求を前記接続先紹介要求として送信し、前記接続管理装置は、前記端末装置のリングバッファ領域のバッファ容量を受信して前記接続状態情報記憶手段に記憶するバッファ容量受信手段を備え、前記接続管理装置の接続先候補選択手段は、前記端末装置から前記リングバッファ領域のバッファ容量を含む接続先紹介要求を受信したとき、当該接続先紹介要求に対応するチャンネルの階層構造において、当該階層構造を構成する前記端末装置の前記リングバッファ領域のバッファ容量が前記階層構造の上流から下流にかけて小さくなるように、前記接続先紹介要求に対する接続先候補を、前記接続状態情報記憶手段に記憶された前記接続状態情報から選択することを特徴とする。
Further, the invention according to
また、請求項3に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信する1以上のコンテンツ配信装置と、前記コンテンツデータを受信及び再生する複数の端末装置と、前記チャンネル毎に前記コンテンツ配信装置を頂点として複数の端末装置が階層構造で多層に論理接続されるように管理する接続管理装置とを有し、前記コンテンツ配信装置からストリーミング配信される前記コンテンツデータが前記チャンネル毎に前記端末装置の中継機能により順次前記階層構造の下流に中継され、前記複数の端末装置によって前記コンテンツデータを再生可能としたコンテンツデータ配信システムのコンテンツデータ配信方法において、前記コンテンツ配信装置は、前記コンテンツデータを配信するステップを有し、前記接続管理装置は、前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶するステップと、前記端末装置から接続先紹介要求を受信したとき、前記記憶された接続状態情報から接続先候補を選択するステップと、前記選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ通知するステップと、を有し、前記端末装置は、前記チャンネルの選択を検出するステップと、前記選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信するステップと、前記接続管理装置から通知された前記接続先候補に接続するステップと、前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するステップと、前記選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生するステップと、前記チャンネル毎のコンテンツデータの再生状況を検出するステップと、他の前記端末装置から前記コンテンツデータの中継依頼を受信するステップと、他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送するステップと、前記選択されるチャンネルのコンテンツデータ再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定するステップを有することを特徴とする。
The invention according to
また、請求項4に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信する1以上のコンテンツ配信装置と、前記コンテンツデータを受信及び再生する複数の端末装置と、前記チャンネル毎に前記コンテンツ配信装置を頂点として複数の端末装置が階層構造で多層に論理接続されるように管理する接続管理装置とを有し、前記コンテンツ配信装置からストリーミング配信される前記コンテンツデータが前記チャンネル毎に前記端末装置の中継機能により順次前記階層構造の下流に中継され、前記複数の端末装置によって前記コンテンツデータを再生可能としたコンテンツデータ配信システムにおける前記端末装置において、記憶手段と、前記チャンネルを選択するためのチャンネル選択手段と、前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に接続する接続手段と、前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するリングバッファ設定手段と、前記チャンネル選択手段によって選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生する再生手段と、前記再生手段による前記チャンネル毎のコンテンツデータの再生状況を検出するコンテンツデータ再生状況検出手段と、他の前記端末装置から前記コンテンツデータの中継依頼を受信する中継依頼受信手段と、他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送する転送手段と、を備え、前記リングバッファ設定手段は、前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータの再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定することを特徴とする。 According to a fourth aspect of the present invention, there is provided one or more content distribution apparatuses for streaming distribution of content data through a plurality of channels, a plurality of terminal apparatuses for receiving and reproducing the content data, and the content for each channel. A connection management device that manages a plurality of terminal devices so as to be logically connected in multiple layers with a distribution device at the top, and the content data streamed from the content distribution device is the terminal for each channel In the terminal device in the content data distribution system that is sequentially relayed downstream of the hierarchical structure by the relay function of the device, and the content data can be reproduced by the plurality of terminal devices, for selecting the storage means and the channel Channel selection means and the channel A connection means for transmitting the connection destination introduction request regarding the channel selected by the selection means to the connection management apparatus, and then connecting to the connection destination candidate notified from the connection management apparatus; and the channel selection means A ring buffer setting means for setting a ring buffer area for receiving and temporarily storing content data of a channel from the connection destination candidate in the storage means for each channel selected by the channel selection means; and the channel selection A reproduction means for retrieving the content data of the latest channel selected by the means from the ring buffer area corresponding to the channel, and a content data reproduction status for detecting the reproduction status of the content data for each channel by the reproduction means Detection means; Relay request receiving means for receiving the relay request for the content data from the terminal device, and transfer means for transferring the content data stored in the ring buffer area to the other terminal device, and the ring buffer setting The means sets the ring buffer area having a buffer capacity corresponding to the reproduction status of the content data of the channel selected by the channel selection means in the storage means.
また、請求項5に記載の発明は、請求項4に記載の発明において、前記コンテンツデータの再生状況に関する条件は、各チャンネルにおける前記コンテンツデータの再生回数であることを特徴とする。 According to a fifth aspect of the present invention, in the fourth aspect of the present invention, the condition relating to the reproduction state of the content data is the number of reproductions of the content data in each channel.
また、請求項6に記載の発明は、請求項4に記載の発明において、前記コンテンツデータの再生状況に関する条件は、各チャンネルにおける前記コンテンツデータの再生時間であることを特徴とする。 According to a sixth aspect of the present invention, in the fourth aspect of the present invention, the condition relating to the reproduction state of the content data is a reproduction time of the content data in each channel.
また、請求項7に記載の発明は、請求項4〜6のいずれか1項に記載の発明において、前記リングバッファ設定手段は、所定期間毎に、前記チャンネル毎のコンテンツデータの再生状況に応じたバッファ容量となるように前記リングバッファ領域を更新することを特徴とする。
The invention according to
また、請求項8に記載の発明は、請求項4〜7のいずれか1項に記載の発明において、前記リングバッファ設定手段は、前記チャンネル選択手段によって選択されたチャンネルの接続先候補に前記接続手段よって接続したときに、前記記憶手段に当該選択したチャンネルに対応するリングバッファ領域が存在せず、かつ前記記憶手段に設定した前記リングバッファ領域の数が所定数に達していると判定すると、複数の前記リングバッファ領域のうち、一つのリングバッファ領域を前記記憶手段から削除し、前記記憶手段に前記選択したチャンネルに対応するリングバッファ領域を設定することを特徴とする。
The invention according to
また、請求項9に記載の発明は、請求項8に記載の発明において、前記リングバッファ設定手段は、前記記憶手段に設定されたリングバッファ領域のうち、前記再生手段によって再生されていない期間が最も長いリングバッファ領域を前記記憶手段から削除し、前記記憶手段に前記選択したチャンネルに対応するリングバッファ領域を設定することを特徴とする。
The invention according to
また、請求項10に記載の発明は、請求項4〜9のいずれか1項に記載の発明において、前記リングバッファ領域のバッファ容量を所定期間毎に前記接続管理装置に通知するバッファ容量通知手段を備えたことを特徴とする。
Further, the invention according to
また、請求項11に記載の発明は、請求項4〜9のいずれか1項に記載の発明において、前記リングバッファ設定手段によって前記リングバッファ領域を設定したとき、又は前記リングバッファ設定手段によって前記リングバッファ領域のバッファ容量を変更したとき、前記リングバッファ領域のバッファ容量を前記接続管理装置に通知するバッファ容量通知手段を有することを特徴とする。
The invention according to claim 11 is the invention according to any one of
また、請求項12に記載の発明は、請求項4〜11のいずれか1項に記載の発明において、自端末装置の電源が切断されたことを検出すると、前記記憶手段に設定された前記複数のリングバッファ領域のバッファ容量を不揮発性記憶装置に記憶し、自端末装置の電源が再度供給されると、前記不揮発性記憶装置に記憶したバッファ容量に基づいて、前記複数のリングバッファ領域を前記記憶手段に再設定するバックアップ処理手段を備えたことを特徴とする。
The invention according to claim 12 is the invention according to any one of
また、請求項13に記載の発明は、請求項4〜12のいずれか1項に記載の発明において、前記階層構造における自端末装置の上流にある端末装置が有する前記リングバッファ領域の前記バッファ容量を取得する上流バッファ容量取得手段と、自端末装置が有する前記リングバッファ領域のバッファ容量と、前記上流の端末装置が有する前記リングバッファ領域の前記バッファ容量とを比較する比較手段と、前記比較手段による比較の結果、自端末装置が有する前記リングバッファ領域のバッファ容量が前記上流にある端末装置が有する前記リングバッファ領域のバッファ容量よりも大きい場合に、前記上流の端末装置よりも前記階層構造上における上流に再接続する再接続手段と、を備えたことを特徴とする。
The invention according to claim 13 is the buffer capacity of the ring buffer area of the terminal device upstream of the terminal device in the hierarchical structure according to any one of
また、請求項14に記載の発明は、請求項13に記載の発明において、前記上流バッファ容量取得手段は、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を所定契機毎に前記接続管理装置へ問い合わせることにより、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を取得することを特徴とする。 Further, in the invention described in claim 14, in the invention described in claim 13, the upstream buffer capacity acquisition means determines the buffer capacity of the ring buffer area of the upstream terminal device for each predetermined trigger. A buffer capacity of the ring buffer area of the upstream terminal device is acquired by inquiring of the device.
また、請求項15に記載の発明は、請求項13に記載の発明において、前記上流バッファ容量取得手段は、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を所定契機毎に前記上流の端末装置へ問い合わせることにより、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を取得することを特徴とする。 Further, in the invention described in claim 15, in the invention described in claim 13, the upstream buffer capacity acquisition means obtains the buffer capacity of the ring buffer area of the upstream terminal device at the predetermined upstream timing. A buffer capacity of the ring buffer area of the upstream terminal device is acquired by making an inquiry to the terminal device.
また、請求項16に記載の発明は、請求項4〜15のいずれか1項に記載の発明において、前記階層構造における自端末装置の下流にある端末装置が有する前記リングバッファ領域のバッファ容量を取得する下流バッファ容量取得手段と、自端末装置が有する前記リングバッファ領域のバッファ容量と、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量とを比較する比較手段と、前記比較手段による比較の結果、自端末装置が有する前記リングバッファ領域のバッファ容量が前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量よりも小さい場合に、下流の端末装置或いは前記下流の端末装置よりも前記階層構造上における下流に再接続する再接続手段と、を備えたことを特徴とする。
The invention according to
また、請求項17に記載の発明は、請求項16に記載の発明において、前記下流バッファ容量取得手段は、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を所定契機毎に前記接続管理装置へ問い合わせることにより、前記下流の端末装置の前記バッファ容量を取得することを特徴とする。
The invention according to
また、請求項18に記載の発明は、請求項16に記載の発明において、前記下流バッファ容量取得手段は、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を所定契機毎に前記下流の端末装置へ問い合わせることにより、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を取得することを特徴とする。
Further, in the invention described in
また、請求項19に記載の発明は、請求項4〜10のいずれか1項に記載の発明において、前記接続手段は、前記接続先紹介要求に関するチャンネルに対する前記リングバッファ領域のバッファ容量を含む接続先紹介要求を前記接続先紹介要求として送信することを特徴とする。
The invention according to claim 19 is the connection according to any one of
また、請求項20に記載の発明は、コンピュータに、請求項4〜19のいずれか1項に記載の端末装置の各手段として機能させるためのプログラムである。
An invention according to claim 20 is a program for causing a computer to function as each unit of the terminal device according to any one of
請求項1,3,4,20に記載の発明によれば、コンテンツデータを一時的に蓄積しておくリングバッファ領域をユーザの視聴状況に応じて動的に設定するようにしたので、セットトップボックスやデジタル家電のような記憶領域が小さい機器を端末装置として用いる場合であっても、リングバッファ領域を適切に設定することができる。たとえば、視聴ユーザによるチャンネルを切替え要求に迅速に対応するための機能(コネクションのプーリング機能)を維持しながら、上流から下流へコンテンツデータを中継するときに生じるパケット損失に対する補完機能や、受信済みのコンテンツデータに対するトリックプレイ機能の実施の度合いを、視聴頻度に応じて適切に設定することが可能になる。つまり、視聴頻度が高いチャンネルに対してはパケット損失の補完機能をより確実に、トリックプレイ機能を広範囲に行い、視聴頻度が低いチャンネルに対してはパケット損失の損失補完機能を適度に、トリックプレイ機能を狭範囲に行うようリングバッファ領域のバッファ容量を調整できる。 According to the present invention, the ring buffer area for temporarily storing the content data is dynamically set in accordance with the viewing situation of the user. Even when a device with a small storage area such as a box or a digital home appliance is used as a terminal device, the ring buffer area can be set appropriately. For example, while maintaining a function (connection pooling function) for quickly responding to a channel switching request by a viewing user, a complementary function for packet loss that occurs when relaying content data from upstream to downstream, It is possible to appropriately set the execution degree of the trick play function for the content data in accordance with the viewing frequency. In other words, the packet loss compensation function is more reliably applied to channels with high viewing frequency, and the trick play function is performed over a wide range, and the packet loss loss compensation function is moderately applied to channels with low viewing frequency. The buffer capacity of the ring buffer area can be adjusted to perform the function in a narrow range.
また、請求項2に記載の発明によれば、端末装置におけるリングバッファ領域のバッファ容量に応じて、階層構造を構成する端末装置のリングバッファ領域のバッファ容量が階層構造の上流から下流にかけて小さくなるように配信経路を形成することができるので、各端末装置ではストリームの中継過程で生じる損失パケットの補完処理を確実に行えるようになる。 According to the second aspect of the present invention, the buffer capacity of the ring buffer area of the terminal device constituting the hierarchical structure decreases from upstream to downstream of the hierarchical structure in accordance with the buffer capacity of the ring buffer area in the terminal device. Thus, the distribution path can be formed as described above, so that each terminal apparatus can reliably perform the process of complementing the lost packet generated in the stream relay process.
また、請求項5に記載によれば、コンテンツデータの再生回数に応じたバッファ容量のリングバッファ領域を設定するので、再生回数が少ないようなチャンネルのリングバッファ領域を小さくすることができ、リングバッファ領域のバッファ容量を効率的に配分することができる。 According to the fifth aspect of the present invention, since the ring buffer area having a buffer capacity corresponding to the number of times content data is reproduced is set, the ring buffer area of a channel having a small number of reproduction times can be reduced, and the ring buffer area The buffer capacity of the area can be efficiently allocated.
また、請求項6に記載によれば、コンテンツデータの再生時間に応じたバッファ容量のリングバッファ領域を設定するので、再生時間が少ないようなチャンネルのリングバッファ領域を小さくすることができ、リングバッファ領域のバッファ容量を効率的に配分することができる。 According to the sixth aspect of the present invention, since the ring buffer area having a buffer capacity corresponding to the reproduction time of the content data is set, the ring buffer area of the channel having a short reproduction time can be reduced, and the ring buffer area can be reduced. The buffer capacity of the area can be efficiently allocated.
また、請求項7に記載によれば、所定期間毎に、前記チャンネル毎のコンテンツデータの再生状況に応じたバッファ容量となるようにリングバッファ領域を更新するので、可及的に最新の再生状況に応じたバッファ容量のリングバッファ領域を記憶手段に設定することができる。 According to the seventh aspect of the present invention, the ring buffer area is updated so as to have a buffer capacity corresponding to the reproduction status of the content data for each channel every predetermined period. A ring buffer area having a buffer capacity corresponding to the storage capacity can be set in the storage means.
また、請求項8に記載の発明によれば、所定数を越えるリングバッファ領域を記憶手段に設定しないようにしているため、記憶手段に無制限にリングバッファ領域が設定されることを抑制することができる。
According to the invention described in
また、請求項9に記載の発明によれば、記憶手段に設定されたリングバッファ領域のうち、再生されていない期間が最も長いリングバッファ領域を削除し、新たに選択されたチャンネルに対応するリングバッファ領域に設定するので、端末装置のユーザによるコンテンツ再生に影響が少ないリングバッファ領域を削除することができ、端末装置の利用状況に応じた適切な置き換えを行うことができる。 According to the ninth aspect of the present invention, the ring buffer area having the longest non-reproduced period is deleted from the ring buffer areas set in the storage means, and the ring corresponding to the newly selected channel is deleted. Since the buffer area is set, it is possible to delete the ring buffer area that has little influence on the content reproduction by the user of the terminal device, and to perform appropriate replacement according to the usage status of the terminal device.
また、請求項10に記載の発明によれば、リングバッファ領域のバッファ容量を所定期間毎に接続管理装置に通知するようにしているので、接続管理装置は各端末装置のバッファ容量に関する情報を収集することが可能となり、リングバッファ領域のバッファ容量の大小に基づく接続先紹介処理をより的確に行えるようになる。 According to the tenth aspect of the invention, since the buffer capacity of the ring buffer area is notified to the connection management apparatus every predetermined period, the connection management apparatus collects information on the buffer capacity of each terminal apparatus. This makes it possible to perform connection destination introduction processing more accurately based on the size of the buffer capacity of the ring buffer area.
また、請求項11に記載の発明によれば、リングバッファ設定手段によってリングバッファ領域を設定したとき、又はリングバッファ設定手段によってリングバッファ領域のバッファ容量を変更したとき、リングバッファ領域のバッファ容量を接続管理装置に通知するようにしているので、接続管理装置は各端末装置のバッファ容量に関する情報を収集することが可能となり、リングバッファ領域のバッファ容量の大小に基づく接続先紹介処理をより的確に行えるようになる。 According to the eleventh aspect of the present invention, when the ring buffer area is set by the ring buffer setting means, or when the buffer capacity of the ring buffer area is changed by the ring buffer setting means, the buffer capacity of the ring buffer area is reduced. Since the connection management device is notified, the connection management device can collect information on the buffer capacity of each terminal device, and the connection destination introduction process based on the size of the buffer capacity of the ring buffer area can be more accurately performed. You can do it.
また、請求項12に記載の発明によれば、不揮発性記憶装置を用いてリングバッファ領域を設定することができるため、電源が一時的にダウンした場合であっても、リングバッファ領域を電源がダウンする前の状態に戻すことが可能となり、適切な停電(瞬断)対策を行うことができる。 According to the twelfth aspect of the present invention, since the ring buffer area can be set using the nonvolatile storage device, the ring buffer area is supplied with power even when the power is temporarily down. It becomes possible to return to the state before going down, and appropriate power failure (instantaneous interruption) measures can be taken.
また、請求項13に記載の発明によれば、自端末装置におけるリングバッファ領域のバッファ容量が上流装置よりも大きいときに、さらに上流に再接続するようにしているので、バッファ容量が大きい端末装置ほど階層構造における上層に配置することが可能となり、損失パケットの補完処理を的確に行うことができる階層構造を構成することが可能となる。 According to the invention described in claim 13, when the buffer capacity of the ring buffer area in the terminal device is larger than that of the upstream device, reconnection is further performed upstream, so that the terminal device having a large buffer capacity. As a result, it is possible to arrange in a higher layer in the hierarchical structure, and it is possible to configure a hierarchical structure that can accurately perform the lost packet complementing process.
また、請求項14,15に記載の発明によれば、上流の端末装置が有するリングバッファ領域のバッファ容量を所定契機毎に取得するようにしていため、定期的に階層構造の位置の変更を行うことが可能となり、バッファ容量が頻繁に変更されるような端末装置が階層構造に配置されている場合であっても、損失パケットの補完処理を的確に行うことができる階層構造を適宜構成することが可能となる。 In addition, according to the inventions of claims 14 and 15, since the buffer capacity of the ring buffer area of the upstream terminal device is acquired at every predetermined opportunity, the position of the hierarchical structure is periodically changed. Even when terminal devices whose buffer capacity is frequently changed are arranged in a hierarchical structure, a hierarchical structure capable of accurately performing the process of compensating for lost packets is appropriately configured. Is possible.
また、請求項16に記載の発明によれば、自端末装置におけるリングバッファ領域のバッファ容量が下流装置よりも小さいときに、さらに下流に再接続するようにしているので、バッファ容量が小さい端末装置ほど階層構造における下層に配置することが可能となり、損失パケットの補完処理を的確に行うことができる階層構造を構成することが可能となる。
According to the invention described in
また、請求項17,18に記載の発明によれば、下流の端末装置が有するリングバッファ領域のバッファ容量を所定契機毎に取得するようにしていため、定期的に階層構造の位置の変更を行うことが可能となり、バッファ容量が頻繁に変更されるような端末装置が階層構造に配置されている場合であっても、損失パケットの補完処理を的確に行うことができる階層構造を適宜構成することが可能となる。
Further, according to the inventions of
また、請求項19に記載の発明によれば、階層構造に参加するときに、リングバッファ領域のバッファ容量を接続管理装置に通知するようにしているため、通知されたバッファ容量に応じた位置になるように接続先候補を選択することが可能となる。 According to the nineteenth aspect of the present invention, the buffer capacity of the ring buffer area is notified to the connection management device when participating in the hierarchical structure, so that the position corresponding to the notified buffer capacity is set. It becomes possible to select a connection destination candidate.
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施形態は、P2Pを用いたツリー構造によるコンテンツ配信システムであって、放送形式でコンテンツ配信装置から配信されるコンテンツデータを、ツリー状階層構造を構成する端末装置がP2Pを用いて受信する放送形式のコンテンツ配信システムに対して本発明を適用した場合の実施形態である。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described based on the drawings. The embodiment described below is a content distribution system with a tree structure using P2P, in which content data distributed from a content distribution apparatus in a broadcast format is P2P by a terminal device that configures a tree-like hierarchical structure. This is an embodiment in which the present invention is applied to a broadcast-type content distribution system that is used and received.
(第1実施形態)
[1.コンテンツ配信システムの構成等]
まず、図1を参照して、第1実施形態におけるコンテンツ配信システムSの概要構成等について説明する。
(First embodiment)
[1. Content distribution system configuration]
First, with reference to FIG. 1, a schematic configuration and the like of the content distribution system S in the first embodiment will be described.
図1は、第1実施形態に係るコンテンツ配信システムSの概要構成例を示す図である。図1に示すように、第1実施形態に係るコンテンツ配信システムSは、放送形式のコンテンツ配信システムであり、複数のコンテンツデータをそれぞれ別個にストリーミング配信するための複数の配信チャンネル(以下、単に「チャンネル」と呼ぶ、)を有している。たとえば、チャンネルch1は、コンテンツ配信装置1を頂点として複数の端末装置2a1,2a2,2b1〜2b4,2c1〜2c8が論理的にツリー状階層構造で接続されており、コンテンツ配信装置1からコンテンツデータが当該ツリー構造の上層から下層にかけてストリーミング配信されるように構成される。他のチャンネルにおいても、同様な構成をとる。
FIG. 1 is a diagram illustrating a schematic configuration example of a content distribution system S according to the first embodiment. As shown in FIG. 1, the content distribution system S according to the first embodiment is a broadcast-type content distribution system, and a plurality of distribution channels (hereinafter simply referred to as “ Called “channel”). For example, in the channel ch1, a plurality of terminal devices 2a1, 2a2, 2b1-2b4, 2c1-2c8 are logically connected in a tree-like hierarchical structure with the
また、コンテンツ配信システムSには、接続管理装置3が設けられており、この接続管理装置3が各チャンネルのツリー状階層構造を管理する。
In addition, the content distribution system S is provided with a
コンテンツ配信装置1、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8、接続管理装置3には、各々IPアドレスが割り当てられており、これら装置は、ネットワークの一例としてのインターネット4にルータ10等を介して接続されている。すなわち、目的の接続先端末装置のIPアドレスを宛先IPアドレス、自装置のIPアドレスを送信元IPアドレスとしたヘッダを含むパケットを送信することによって通信接続が可能となっている。
An IP address is assigned to each of the
なお、接続管理装置3をコンテンツ配信装置1の内部に有することとしてもよい。この場合には接続管理装置3にはIPアドレスは割り当てなくてもよく、コンテンツ配信装置1のIPアドレスと共用するようにしてもよい。また、コンテンツ配信装置1は、コンテンツ配信システムSを構成する複数のチャンネル(ここでは、チャンネルch1〜チャンネルchnとする。)の全てのチャンネルのコンテンツデータを配信するものとしてもよく、それぞれのチャンネル毎にコンテンツ配信装置1が設けられるようにしてもよい。第1実施形態においては、一つのコンテンツ配信装置1が全てのチャンネルch1〜chnのコンテンツデータをストリーミング配信するものとして説明する。
The
また、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8のいずれかの端末装置又はすべての端末装置を示す場合には、便宜上、端末装置2という場合がある。また、第1階層の端末装置2a1,2a2は便宜上端末装置2aと、第2階層の端末装置2b1〜2b4は便宜上端末装置2bと、第2階層の端末装置2c1〜2c8は便宜上端末装置2cという場合がある。
Further, in the case of showing any one of the terminal devices 2a1, 2a2, 2b1-2b4, 2c1-2c8 or all the terminal devices, it may be called the
このコンテンツ配信システムSは、コンテンツ配信装置1を頂点(ここでは、便宜上第0階層とする。)として複数の端末装置2がツリー状階層構造で多層に論理接続されるように接続管理装置3によって管理される。なお、第1実施形態においては、ツリー状階層構造として説明するが、これに限られず、複数の端末装置2がチェーン状の階層構造で多層に論理接続されるようにしてもよい。
In the content distribution system S, the
接続管理装置3は、コンテンツ配信システムSに参加していない端末装置2、言い換えればツリー状階層構造を構成していない端末装置2から接続先紹介要求を受信すると、コンテンツ配信システムSのツリー状階層構造の状態等に基づいて、その端末装置2がストリーミング配信を受けるための上流の装置として接続する接続先候補(コンテンツ配信装置1又は端末装置2)を選択する。そして、接続管理装置3は、このように選択した接続先候補の所在情報(接続先候補のIPアドレスやポート番号など)及び通信プロトコル等を端末装置2に通知する。
When the
なお、コンテンツ配信システムSにおいて、すでに通信プロトコルやポート番号が固定されているときには、端末装置2へのポート番号及び通信プロトコルは通知しなくてもよい。ここで、通信プロトコルとして、MMS(Microsoft Media Server)プロトコル、RTSP(Real Time Streaming Protocol)等が用いられる。また、コンテンツデータの形式として、ASF(Advanced Streaming Format)、WMA(Windows(登録商標) Media Audio)、WMV(Windows(登録商標) Media Video)等が用いられる。
In the content distribution system S, when the communication protocol and the port number are already fixed, the port number and the communication protocol to the
端末装置2は、接続管理装置3から接続先候補の所在情報を受信すると、その所在情報を宛先として接続先候補に対し、コンテンツ配信システムSへの参加(接続)を要求し、これにより端末装置2がコンテンツ配信システムSにおける階層構造へ組み込まれる。すなわち、端末装置2はコンテンツ配信装置1から配信されるコンテンツデータを受信可能となる。なお、コンテンツ配信システムSへの参加は、コンテンツ配信装置1の各チャンネル毎に行われるものであり、端末装置2は各チャンネル毎に参加を行い、参加を行ったチャンネルのコンテンツデータを受信することになる。ここで、チャンネルへの参加とは、チャンネルに対応するコンテンツ配信装置1を頂点とする階層構造に参加することを意味し、このようにチャンネルに参加することによって、参加を行ったチャンネルのコンテンツデータを階層構造の上流の装置から受信することができる。また、「上流の装置」とは、階層構造において自端末装置2に接続されている上流の装置(端末装置2或いはコンテンツ配信装置1)を意味する。たとえば、図1における端末装置2b2における上流の端末装置とは、端末装置2a1を指す。
Upon receiving the location information of the connection destination candidate from the
コンテンツ配信システムSは、このように端末装置2が次々と各チャンネルに参加することによって、各チャンネル毎にコンテンツ配信装置1を頂点として複数の端末装置2がツリー状階層構造で多層に論理接続される。そして、コンテンツ配信装置1からチャンネル毎に配信されるコンテンツデータは、端末装置2の中継機能により順次下層の端末装置2へ中継されて複数の端末装置2にストリーミング配信される。
In the content distribution system S, when the
すなわち、図1に示すように、チャンネルch1においては、コンテンツ配信装置1から端末装置2a1,2a2(第1層の端末装置)へコンテンツデータが送信され、端末装置2a1,2a2はコンテンツデータを受信すると、下層の端末装置2b1〜2b4(第2階層の端末装置)へ受信したコンテンツデータを順次中継する。端末装置2b1〜2b4はコンテンツデータを受信すると、下層の端末装置2c1〜2c8(第3階層の端末装置)へ受信したコンテンツデータを順次中継する。
That is, as shown in FIG. 1, in channel ch1, content data is transmitted from the
なお、端末装置2は、組み込まれた階層構造の位置の上流の端末装置2又はコンテンツ配信装置1の所在情報と、その位置の下流の端末装置2の所在情報とを後述の第1記憶部202に記憶しており、このように記憶した所在情報に基づいて、コンテンツデータの中継を行なうようにしている。また、配信されるコンテンツデータは、複数のパケットに分割されて順次配信されるものであり、このようにパケットに分割されて配信されるデータをコンテンツパケットという。
The
このように端末装置2へ配信されるコンテンツデータは、チャンネル毎にコンテンツ配信システムSに参加しているすべての端末装置2へ配信される。配信されるコンテンツデータには、音楽や映画などコンテンツのデータのほか、再生時刻情報(以下、「再生時刻データ」という。)が含まれている。そして、コンテンツデータを受信した複数の端末装置2は、順次送信されるコンテンツデータの再生を再生時刻データに基づいて行なう。このようにして、コンテンツ配信システムSは、チャンネル毎にコンテンツ配信装置1から送信されたコンテンツデータが複数の端末装置2にストリーミング配信され、複数の端末装置2において同時刻にコンテンツを再生することができる。すなわち、コンテンツ配信システムSは、P2Pを用いて複数の端末装置2への放送形式のストリーミング配信を実現している。
Thus, the content data distributed to the
上述のように第1実施形態におけるコンテンツ配信システムSは、複数のコンテンツデータをそれぞれストリーミング配信する複数のチャンネルを有している。端末装置2は、ユーザにより所望のチャンネルが選択されると、選択したチャンネルにおける自端末装置2の接続先装置(以下、「接続先候補」とする。)を接続管理装置3から取得する。そして、端末装置2は、その接続先候補に接続することによって所望のチャンネルの階層構造に参加し、この階層構造における自端末装置2の上流の装置からコンテンツデータを受信し、再生する。
As described above, the content distribution system S according to the first embodiment has a plurality of channels for streaming distribution of a plurality of content data. When the user selects a desired channel, the
次にこのように端末装置2が、あるチャンネルの階層構造に参加した後、この端末装置2のユーザが視聴(再生)するチャンネルを切替える場合について説明する。ユーザがチャンネルを切替える選択を行った場合、従来のコンテンツ配信システムSでは、端末装置2は参加しているチャンネルの階層構造から脱退し、切替えの選択を行ったチャンネルの階層構造への参加を上述の手順で行っていた。
Next, a case will be described in which the
この場合参加しているあるチャンネルの階層構造から別のチャンネル階層構造への参加する際には、接続管理装置3から接続先候補の情報を受け取るための処理、及びその接続先候補へ接続するための処理等の一連の接続処理を行う必要がある。このため、従来のコンテンツ配信システムSでは、切替え先のチャンネルのコンテンツデータを受信して再生するまでの時間、コンテンツデータが再生されない状態が発生し、端末装置2のユーザの操作性を低下させていた。
In this case, when joining from a hierarchical structure of a participating channel to another channel hierarchical structure, a process for receiving information on connection destination candidates from the
そこで、第1実施形態における端末装置2においては、複数のチャンネルの階層構造への参加を継続して行うことにより、端末装置2においてチャンネルが切替えられた場合であっても、コンテンツデータの再生されない期間を発生させないようにしている。すなわち、端末装置2は、複数のチャンネルにそれぞれ参加している他の端末装置2との接続(セッション)を確立し、それらの接続を継続するのである。
Therefore, in the
端末装置2には、ストリーミングで配信される複数のチャンネルのコンテンツデータを受信し、再生或いは下流の端末装置2へ中継することができるように、それぞれのチャンネルのコンテンツデータを一時的に蓄積するリングバッファ領域をRAMなどの記憶装置に設定するようにしている。ここで、「下流の端末装置」とは、階層構造における自端末装置2に接続されている下流の端末装置を意味する。たとえば、図1における端末装置2b2における下流の端末装置とは、端末装置2c3,2c4を指す。
A ring that temporarily stores content data of each channel so that the
ところで、同時に接続するチャンネル、すなわち同時に参加するチャンネルが多くなってくると、それに伴って用意すべきリングバッファ領域の数が増え、必要となる記憶領域が増大してしまうことになる。セットトップボックスやデジタル家電のように記憶領域が少ない端末装置においては、このように複数のリングバッファ領域を設定するのは負担が大きく、限界がある。 By the way, when the number of channels that are connected simultaneously, that is, the number of channels that participate at the same time increases, the number of ring buffer areas to be prepared increases accordingly, and the necessary storage area increases. In a terminal device with a small storage area such as a set-top box or a digital home appliance, setting a plurality of ring buffer areas in this way is heavy and has a limit.
そこで、第1実施形態における端末装置2においては、再生のために選択されたチャンネルに対応するリングバッファ領域以外のリングバッファ領域のバッファ容量(以下、「リングバッファ容量」と呼ぶことがある。)を小さくしている。すなわち、複数のリングバッファ領域のうち、再生状態でないチャンネルに対応するリングバッファ領域のバッファ容量を、再生状態のチャンネルに対応するリングバッファ領域のバッファ容量よりも小さくするのである。
Therefore, in the
ここで、端末装置2におけるリングバッファ領域について説明する。図2は、第1実施形態の端末装置2におけるリングバッファ領域を用いてコンテンツデータを受信し、再生或いは下流の端末装置2へ中継する構成を概念的に表した図である。
Here, the ring buffer area in the
端末装置2は、所望のチャンネルの階層構造に参加したときに、この階層構造の上流の装置からストリーミングで送信されるコンテンツパケットをストリーム受信器によって順次受信し、受信したコンテンツパケットに含まれるコンテンツデータをリングバッファ領域に一時的に蓄積する。リングバッファ領域に一時的に蓄積されたコンテンツデータは、その再生時刻になると、端末装置2の再生手段であるプレイヤによってリングバッファ領域から取り出されて再生される。
When the
ここで、図2に示すように、リングバッファ領域には時計回りの方向で新しいコンテンツデータが順次蓄積され、最も古いコンテンツデータが新しいコンテンツデータに書き換わるように構成されている。すなわち、ストリーム受信器によってリングバッファ領域に書き込まれるポイントをAとすると、このポイントAが時計回りに移動していくのである。 Here, as shown in FIG. 2, new content data is sequentially stored in the ring buffer area in the clockwise direction, and the oldest content data is rewritten to new content data. That is, if the point written in the ring buffer area by the stream receiver is A, the point A moves clockwise.
なお、図2におけるリングバッファ領域は概念的に示したものであり、実際にリング形状をしているのではなく、端末装置2の制御手段が、記憶領域における所定アドレス領域に蓄積した最も古いコンテンツデータを順次新しいコンテンツデータに書き換えることにより実現するものである。
Note that the ring buffer area in FIG. 2 is conceptually shown, and is not actually ring-shaped, but the control unit of the
また、コンテンツデータには上述のように再生時刻情報が格納されており、プレイヤはリングバッファ領域に蓄積したコンテンツデータのうち、現時刻と合致する再生時刻データを有するコンテンツデータ(ここでは、図2中Bのポイントのコンテンツデータ)をリングバッファ領域から取り出して順次再生する。 Further, the playback time information is stored in the content data as described above, and the player has content data having playback time data that matches the current time among the content data accumulated in the ring buffer area (here, FIG. 2). The content data of the middle B point) is taken out from the ring buffer area and sequentially reproduced.
このようなリングバッファ領域によって、再生時刻前のコンテンツデータを蓄積しながら、再生時刻までにインターネット4の状態に依存して間欠的に発生するコンテンツパケットの損失に対処する。言い換えれば、コンテンツ配信装置1は、パケットの損失補完処理を行えるだけのマージンを確保しながらコンテンツデータを配信している。
With such a ring buffer area, content data before the playback time is accumulated, and content packet loss that occurs intermittently depending on the state of the
ここで、階層構造の下流に他の端末装置2が2台接続されている場合、図2に示すように、端末装置2に2つのストリーム送信器が設けられる。このストリーム送信器は、リングバッファ領域に格納されているコンテンツデータを所定量毎にコンテンツパケットのデータ領域に格納してコンテンツパケットを生成し、それぞれ下流に接続された他の端末装置2へこのコンテンツパケットを順次送信する。
Here, when two other
なお、第1実施形態における端末装置2では、上流の装置から送信されるコンテンツパケットに含まれるコンテンツデータを取り出してリングバッファ領域に蓄積するようにしているが、コンテンツパケットをそのままリングバッファ領域に蓄積するようにしてもよい。いずれにせよ、ストリーム送信器は、ストリーム受信器によって受信したコンテンツパケットの送信先及び送信元の情報を置き換えたコンテンツパケットを下流の端末装置2に送信することになる。
In the
ところで、端末装置2のユーザは、コンテンツ配信装置1からストリーミング配信されているコンテンツデータを視聴しているとき、再生時間を経過したコンテンツデータについて任意の位置から再生したいと考える場合がある。いわゆるトリックプレイである。図2に示すリングバッファ領域の例では反時計回りにポイントBからポイントCにかけてのバッファ領域Xについてトリックプレイが可能である。
By the way, when the user of the
以上に示すように、端末装置2は、コンテンツデータを一時的に蓄積するリングバッファ領域を設けることによって、コンテンツパケットをプリバッファリングしながらパケット損失に対する補完を行い、インターネット4の経路上で発生するパケット損失の影響を回避するようにしている。
As described above, the
また、リングバッファ領域のバッファ容量を上記プリバッファリングのためのバッファ容量よりも大きくすることによって、端末装置2のユーザの操作によって、再生時刻を経過したコンテンツデータに対してトリックプレイを行えるようになる。
Further, by making the buffer capacity of the ring buffer area larger than the buffer capacity for the pre-buffering, it is possible to perform trick play on the content data whose playback time has passed by the user operation of the
第1実施形態における端末装置2では、複数のチャンネルのコンテンツデータをそれぞれ一時的に蓄積する複数のリングバッファ領域を記憶領域に設定することができるように構成されており、さらに、これらのリングバッファ領域のバッファ容量を再生状況に応じたバッファ容量としている。
The
図3は、リングバッファ領域のバッファ容量の分配を説明するための図であり、チャンネルch1〜ch3の3つのチャンネルのコンテンツデータをそれぞれ第1〜第3リングバッファ領域で受信している例を示しているものである。この例では、チャンネルch1の再生頻度(視聴頻度)が高く、チャンネルch2,3の再生頻度(視聴頻度)が低いため、第2,第3リングバッファ領域のバッファ容量を第1リングバッファ領域のバッファ容量に比べて小さくしている状態が示されている。 FIG. 3 is a diagram for explaining the distribution of the buffer capacity of the ring buffer area, and shows an example in which the content data of the three channels ch1 to ch3 are received by the first to third ring buffer areas, respectively. It is what. In this example, since the reproduction frequency (viewing frequency) of the channel ch1 is high and the reproduction frequency (viewing frequency) of the channels ch2 and 3 is low, the buffer capacity of the second and third ring buffer areas is set to the buffer of the first ring buffer area. A state in which it is smaller than the capacity is shown.
ここで、再生状況に応じたバッファ容量とするための条件として、上述のように再生頻度がある。この再生頻度には、各チャンネルにおける単位時間当りのコンテンツデータの再生回数や再生時間などがある。 Here, as a condition for setting the buffer capacity according to the reproduction status, there is a reproduction frequency as described above. The reproduction frequency includes the number of reproductions of content data per unit time in each channel, the reproduction time, and the like.
再生回数が少ないほど、或いは再生時間が短いほどリングバッファ領域のバッファ容量を小さくすることにより、あまり使用されない(すなわち、再生回数や再生時間が少ない)チャンネルのリングバッファ領域のバッファ容量を小さくすることができる。 By reducing the buffer capacity of the ring buffer area as the number of playbacks is reduced or the playback time is shorter, the buffer capacity of the ring buffer area of a channel that is not used much (ie, the number of playbacks and playback time is less) is reduced. Can do.
また、再生状況を定期的に或いは所定契機で検出して、リングバッファ領域のバッファ容量を更新するようにしており、最新の再生状況に応じたリングバッファ領域のバッファ容量の分配を行うことができる。 In addition, the buffer status of the ring buffer area is updated by detecting the playback status periodically or at a predetermined timing, and the buffer capacity of the ring buffer area can be distributed according to the latest playback status. .
このように第1実施形態における端末装置2においては、リングバッファ領域のバッファ容量を再生状況に応じたバッファ容量とすることで、リングバッファ領域を設定するために必要な記憶領域を可及的に小さくしている、これによりリングバッファ領域を設定することができる記憶領域の容量が小さな端末装置において記憶領域を効率的に使用することが可能となる。
As described above, in the
すなわち、複数のリングバッファ領域を記憶領域に設定し複数のチャンネルとの接続を保つことによってユーザによるチャンネル切替え時の接続処理を不要としてコンテンツデータ再生の空白期間をなくしつつ、リングバッファ領域による記憶領域の占有率を総体的に抑制することができるのである。 That is, by setting a plurality of ring buffer areas as storage areas and maintaining connection with a plurality of channels, the connection process at the time of channel switching by the user is unnecessary, eliminating the blank period of content data reproduction, and the storage area by the ring buffer area Therefore, the occupancy ratio can be suppressed overall.
ところで、上述したように、同時に接続するチャンネルが多くなってくると、それに伴って用意すべきリングバッファ領域の数が増え、必要となる記憶領域が増大してしまう。 As described above, when the number of channels connected simultaneously increases, the number of ring buffer areas to be prepared increases accordingly, and the required storage area increases.
そこで、第1実施形態における端末装置2においては、上述のように再生状態と非再生状態とでリングバッファ領域のバッファ容量を変えることに加え、記憶領域に設定するリングバッファ領域の数を制限するようにしている。たとえば、同時に接続することができるチャンネルを10チャンネルと定めるのである。
Therefore, in the
このように同時に接続するチャンネル数に制限を設けることで、無制限にリングバッファ領域が増大するのを防止している。 By limiting the number of channels connected at the same time as described above, it is possible to prevent the ring buffer area from increasing without limitation.
このように構成された端末装置2においては、上限数のチャンネルに接続している状態でさらに新規チャンネルに接続すべき状態が発生すると、非再生状態にあるチャンネルであってかつ所定条件を満たすチャンネルとの接続を切断してリングバッファ領域を記憶領域から取り除く。そして、端末装置2は、新規チャンネルのリングバッファ領域を記憶領域に設定すると共に、そのチャンネルに接続する。たとえば、新規チャンネルが選択されると、端末装置2は、非再生状態の継続時間が最も長いチャンネルに対応するリングバッファ領域を削除して新たに選択されたチャンネルに対応するリングバッファ領域を確保するのである。
In the
また、第1実施形態の端末装置2では、接続を行うチャンネルは、ユーザによって選択されたチャンネルとする。すなわち、端末装置2のユーザが後述のチャンネル選択手段としてリモコン205等を操作することによって、端末装置2は、順次選択したチャンネルに接続していき、接続したチャンネルごとにリングバッファ領域を記憶手段に設定していくようにしている。
In the
図4には、チャンネルch1に接続された端末装置2c1において、ユーザのリモコン等の操作によりチャンネルch1からチャンネルch2への切替えが指示され、端末装置2が、チャンネルch1の接続を継続しつつ、チャンネルch2への接続する様子が示されている。なお、チャンネルch2への接続は、接続管理装置3から通知される接続先候補に対して行う。図4に示す例では、接続先候補として、接続管理装置3から端末装置2d1が通知されている。
In FIG. 4, in the terminal device 2c1 connected to the channel ch1, switching from the channel ch1 to the channel ch2 is instructed by a user's operation of the remote controller or the like, and the
ここで、端末装置2c1が端末装置2e1として端末装置2d1に接続する前後の端末装置2c1のリングバッファ領域の様子を図5(a),(b)に示す。この図で示すように、端末装置2にはチャンネルch1のリングバッファ領域に加え、チャンネルch2のリングバッファ領域が記憶領域に設定されるが、各リングバッファ領域のバッファ容量は、チャンネルの再生状況に応じて設定される。
Here, the state of the ring buffer area of the terminal device 2c1 before and after the terminal device 2c1 is connected to the terminal device 2d1 as the terminal device 2e1 is shown in FIGS. As shown in this figure, in the
また、ユーザによる予めの選択によって、端末装置2の電源ON時に設定されたチャンネルに同時に接続するようにすることもできる。以下、端末装置2において、このように予め選択された複数のチャンネルに接続する動作について説明する。
Further, it is also possible to simultaneously connect to a channel set when the
まず、端末装置2のユーザは、後述のリモコン205の操作によって、電源ON時に接続するチャンネルを選択する。このように選択されたチャンネルの情報(たとえば、チャンネル番号)は、端末装置2の記憶手段に記憶される。そして、端末装置2の電源がONになると、端末装置2のプログラムの実行により、端末装置2は、記憶手段に記憶されたチャンネルの情報が取り出されて、これらのチャンネルに接続していく。
First, the user of the
このように、ユーザによって予め選択されたチャンネルへの接続が電源ON時に行われるので、コンテンツデータが再生されない期間が発生せず、端末装置2のユーザは快適にコンテンツデータの視聴を行うことができる。
Thus, since the connection to the channel selected in advance by the user is made when the power is turned on, there is no period during which the content data is not reproduced, and the user of the
また、ユーザによる予めの設定に代えて、或いはユーザの予めの設定に加えて、端末装置2によって電源ON時に接続するチャンネルを選択するように構成することもできる。
Further, instead of the user's pre-setting or in addition to the user's pre-setting, the
たとえば、端末装置2の制御手段によって、ユーザが選択したチャンネルの再生時間や再生頻度などの再生履歴を検出し、この再生履歴を自端末装置2の記憶領域に記憶する。そして、端末装置2の電源ON時に、この再生履歴に基づいて、ユーザが視聴する可能性の高いチャンネルを制御手段が選択し、端末装置2は、このように選択したチャンネルに接続していくのである。
For example, the control means of the
このように、電源ON時に接続しにいくチャンネルの選択を、再生履歴に基づいて行うことによって、ユーザによる予めの設定作業を軽減することができる。すなわち、チャンネル選択手段としてリモコン205ではなく、端末装置2に予め格納したプログラムとするのである。このように電源ON時に接続しにいくチャンネルは、言い換えれば、初期設定で予め決められたチャンネルとも言うことができる。
As described above, by selecting a channel to be connected when the power is turned on based on the reproduction history, it is possible to reduce the setting work by the user in advance. In other words, the channel selection means is a program stored in advance in the
ところで、端末装置2がプリバッファリングしなければならないコンテンツデータのデータ量は、端末装置2が階層構造のどの位置に接続されるかによって変わってくる。
By the way, the amount of content data that the
すなわち、端末装置2においてコンテンツパケットの中継処理のための配信経路、すなわち階層構造におけるコンテンツパケットのインターネット4上の配信経路において発生するコンテンツパケットの損失の補完処理を確実に行えるようにするために、上層の端末装置2ほどプリバッファリングの量を多くしなければならない。
In other words, in order to ensure that the
たとえば、図1に示すように、階層構造が4層構造(コンテンツ配信装置1は第0階層とする)により構成されているとき、コンテンツ配信装置1から第1階層の端末装置2aまでの第1経路、第1階層の端末装置2aから第2階層の端末装置2bまでの第2経路、第2階層の端末装置2bから第3階層の端末装置2cまでの第3経路において、それぞれコンテンツパケットの損失の可能性があるが、この際、下流側の端末装置2で補完される損失パケットは上流側の端末装置2が保有している必要があるため、上流側の端末装置2ほどプリバッファリング量が多くなるように配信経路を形成する。
For example, as shown in FIG. 1, when the hierarchical structure is configured by a four-layer structure (the
ここで、図6を参照して、各階層における装置のプリバッファリングについて説明する。 Here, with reference to FIG. 6, the pre-buffering of the device in each layer will be described.
図6に示すように、端末装置2のリングバッファ領域においては、再送処理による送信遅延を考慮して、送受信ポイントと再生ポイントとの間にマージン(以下、「再生マージン」とする。)が必要である。すなわち、コンテンツ配信システムSは、1トラック当りのストリーム中継処理で発生する可能性がある再送時間を考慮した再生マージンをもってコンテンツデータの配信をしなければならない。この再生マージンとは、言い換えれば、コンテンツ配信装置1による1トラックのコンテンツ配信開始から配信終了までに消費してもよいコンテンツパケット損失に対する回復処理時間である。
As shown in FIG. 6, in the ring buffer area of
図6(a)は、あるチャンネルの階層構造において、再送処理が発生しなかったときの端末装置2のリングバッファ領域の様子を示すものである。第1実施形態においては、1階層当たりの端末装置2の再生マージンが3パケット分に設定されている。この図の例では、未だ再送処理が発生していないため、最下層の端末装置2cでは再生ポイントと受信ポイントとに9パケット分の再生マージンが存在している。
FIG. 6A shows the state of the ring buffer area of the
一方、図6(b)に示すように、第1階層目の端末装置2aで2パケット分の再送処理が、第2階層目の端末装置2bで3パケット分の再送制御が発生したとき、最下層の端末装置2cでは再生マージンが4パケット分まで縮減する。すなわち、コンテンツ配信装置1から最下層の端末装置2cまでの経路で行なわれた累積再送時間分の再生マージンが最下層の端末装置2cまでに失われることを表している。
On the other hand, as shown in FIG. 6B, when retransmission processing for two packets occurs in the terminal device 2a in the first layer, and retransmission control for three packets occurs in the terminal device 2b in the second layer, In the lower terminal apparatus 2c, the reproduction margin is reduced to 4 packets. That is, the reproduction margin for the accumulated retransmission time performed on the route from the
したがって、コンテンツパケットに格納された時刻情報によって、全ての端末装置2において同時刻にコンテンツデータの再生を行わせるためには、コンテンツ配信装置1から最下層の端末装置2cまでの経路において、コンテンツデータ1トラックのストリーム中継処理で発生する可能性がある再送時間をもった再生マージンが必要となり、この再生マージンを持つためのリングバッファ領域が必要となる。そして、上層の端末装置2ほどプリバッファリングの量を多くする必要がある。
Therefore, in order to cause all the
そこで、第1実施形態における接続管理装置3は、各チャンネル毎に、そのチャンネルの階層構造を構成する端末装置2のリングバッファ領域のバッファ容量の情報を接続状態情報記憶手段に記憶しておき、階層構造を構成する端末装置2のリングバッファ領域のバッファ容量が階層構造の上流から下流にかけて小さくなるように各チャンネルの階層構造を管理するようにしている。
Therefore, the
ここで、端末装置2における所定のチャンネル(ここでは、チャンネルch1とする。)への参加動作について図7を参照して説明する。図7に示すように、チャンネルch1に接続している各端末装置2は、それぞれ接続管理装置3に対して定期的にチャンネルch1に対応するリングバッファ領域のバッファ容量を定期的に通知する。
Here, an operation of joining the predetermined channel (here, channel ch1) in the
そして、端末装置2xがチャンネルch1に参加するために、接続管理装置3に接続先候補の通知を依頼する。このとき端末装置2xは、チャンネルch1に対応するリングバッファ領域のバッファ容量(ここでは、20MBとする。)も合わせて接続管理装置3へ通知する。
Then, in order for the
接続管理装置3は、端末装置2xから接続先候補の通知要求及びバッファ容量を受信すると、参加要求対象のチャンネルch1の階層構造を構成する端末装置2のうち、端末装置2xのバッファ容量よりも大きいリングバッファ領域のバッファ容量(ここでは、30MBとする。)を有する端末装置2b4を接続先候補として選択して、参加要求を行った端末装置2xへ通知する。なお、端末装置2a2のリングバッファ領域のバッファ容量も40MBと大きいが、接続管理装置3が選択する接続先候補は、端末装置2xのリングバッファ領域のバッファ容量に一番近いバッファ容量を持つ端末装置、すなわち端末装置2b4を選択することになる。
When receiving the connection destination candidate notification request and the buffer capacity from the
接続管理装置3から接続先候補の通知を受けた端末装置2は、通知された接続先候補である端末装置2b4への接続を行い、この端末装置2b4からチャンネルch1のコンテンツデータを受信して再生する。
The
他方、チャンネルの階層構造を構成する端末装置2では、接続しているチャンネルの階層構造において、自端末装置2の上流や下流にある端末装置2が有するリングバッファ領域のバッファ容量を取得し、自端末装置2のリングバッファ領域のバッファ容量と比較して、その階層構造における適切な位置に再接続を行うようにしている。
On the other hand, the
ここで、端末装置2における再接続動作について図8を参照して説明する。図8に示すように、チャンネルch1の階層構造に接続している端末装置2a2,2b4,2c8におけるそれぞれのリングバッファ領域のバッファ容量が40MB,10MB,20MBであるとする。
Here, the reconnection operation in the
チャンネルch1の階層構造に接続している端末装置2b4は、自端末装置2の上流の端末装置2a2や下流の端末装置2c8に対して、これらの端末装置2a2,2c8のリングバッファ領域のバッファ容量を通知するように要求する。
The terminal device 2b4 connected to the hierarchical structure of the channel ch1 has the buffer capacity of the ring buffer area of these terminal devices 2a2 and 2c8 with respect to the upstream terminal device 2a2 and downstream terminal device 2c8 of the
この要求に対して端末装置2a2は、自端末装置2a2のリングバッファ領域のバッファ容量が40MBであることを端末装置2b4に通知する。端末装置2c8も同様に、自端末装置2c8のリングバッファ領域のバッファ容量が20MBであるであることを端末装置2b4に通知する。 In response to this request, the terminal device 2a2 notifies the terminal device 2b4 that the buffer capacity of the ring buffer area of the terminal device 2a2 is 40 MB. Similarly, the terminal device 2c8 notifies the terminal device 2b4 that the buffer capacity of the ring buffer area of the terminal device 2c8 is 20 MB.
端末装置2b4は、自己のリングバッファ領域のバッファ容量が下流の端末装置2c8よりも低いため、接続管理装置3に対して接続先候補の通知を要求する。接続管理装置3は上述のように、階層構造を構成する端末装置のリングバッファ領域のバッファ容量が階層構造の上流から下流にかけて小さくなるような位置の接続先候補(ここでは、端末装置2c5とする)を選択し、端末装置2b4に通知する。端末装置2b4は、接続管理装置3から通知を受けた接続先候補に接続をする。
Since the terminal device 2b4 has a buffer capacity of its own ring buffer area lower than that of the downstream terminal device 2c8, the terminal device 2b4 requests the
このように、端末装置2は、自端末装置2の上流や下流にある端末装置2が有するリングバッファ領域のバッファ容量を取得し、自端末装置2のリングバッファ領域のバッファ容量と比較し、その階層構造における適切な位置に再接続を行うことで、コンテンツパケットの損失の補完処理を確実に行える。
In this way, the
以下、コンテンツ配信システムSを構成するコンテンツ配信装置1、端末装置2及び接続管理装置3についてそれらの具体的な構成及び動作について図面を参照して説明する。
Hereinafter, specific configurations and operations of the
[2.コンテンツ配信装置1の構成等の説明]
次に、図9を参照して、コンテンツ配信装置1の構成及び動作について説明する。
[2. Description of
Next, the configuration and operation of the
図9は、第1実施形態におけるコンテンツ配信装置1の概略構成例を示す図である。コンテンツ配信装置1は、一般のサーバコンピュータを適用可能であり、図9に示すように、CPU(Central Processing Unit)101と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置としての第1記憶部102と、各種データ等を記憶するHDD(Hard Disc Drive)等から構成された第2記憶部103と、インターネット4を介して端末装置2や接続管理装置3との間で通信を行うネットワークインターフェイス104と、所定の情報を入力可能なキーボード105やマウス106等の入力手段を制御する周辺機器制御チップ107と、CPU101からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ109に表示するビデオチップ108と、ビデオチップ108から送信される信号に応じた表示を行うディスプレイ109と、FM音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ110と、音源チップ110から出力されるオーディオ信号を音波に変換する内蔵スピーカ111とを備えて構成され、これらの各種構成要素はシステムバス112を介して相互に接続されている。
FIG. 9 is a diagram illustrating a schematic configuration example of the
なお、ネットワークインターフェイス104は、ルータ10aを介してインターネット4に接続される。
The
なお、第1実施形態においては、CPU101と第1記憶部102とで制御部113を構成している。また、コンテンツ配信装置1には、上述のようにディスプレイ(液晶ディスプレイ等)109等が接続されるようになっており、例えば、コンテンツ配信システムSを運用する放送運営者は、このディスプレイ109を見ながら入力手段から所定の情報を入力することができる。
In the first embodiment, the
(第1記憶部102について)
また、第1記憶部102には、コンテンツ配信装置1のコンピュータとしての基本的な機能を提供するためのOS(オペレーティングシステム)プログラム120と、第2記憶部103に記憶されたコンテンツデータを取り出して端末装置2へストリーミング配信するためのストリーム制御プログラム121と、チャンネル毎に第1階層の端末装置2aの所在情報(IPアドレスやポート番号など)の管理等を行なうためのトポロジー管理プログラム122と、ディスプレイ109を制御するための画面制御プログラム123と、エンコードされたコンテンツデータをデコードしたり、放送用コンテンツデータベース114のコンテンツデータをデコードするためのプレイヤプログラム124等を記憶しており、これらはCPU101によって読み出され、CPU101によってこれらのプログラムに従った機能が実行される。
(About the first storage unit 102)
Further, the
また、第1記憶部102には、リングバッファ設定可能領域125が設けられている。このリングバッファ設定可能領域125には、各チャンネル毎のリングバッファ領域を設定することができる。ここで、チャンネルch1〜chnにそれぞれ対応するリングバッファ領域をリングバッファ領域125a〜125n(図示せず)とし、リングバッファ設定可能領域125には、配信されるチャンネルに対応するリングバッファ領域が設定される。
The
ここで、OSプログラム120は、CPU101によって読み出されて実行されることにより、キーボード105やマウス106入出力に関する機能や、第1記憶部102や第2記憶部103どのメモリ管理などのコンテンツ配信装置1であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム120がCPU101によって実行された状態で、上述のストリーム制御プログラム121と、トポロジー管理プログラム122と、画面制御プログラム123と、プレイヤプログラム124とが第1記憶部102から読み出されて実行される。
Here, the
なお、OSプログラム120、ストリーム制御プログラム121、トポロジー管理プログラム122、画面制御プログラム123、プレイヤプログラム124等は、例えば、インターネット4に接続されたサーバ等から第1記憶部102にダウンロードされるようにしてもよく、又CD−ROM等の記録媒体に記録されてから当該記録媒体のドライブを介して、第1記憶部102に読み込まれるようにしてもよい。
The
(制御部113について)
制御部113は、上述のようにCPU101と第1記憶部102とから構成され、CPU101が第1記憶部102に記憶された各種プログラム120〜124を読み出して実行することにより、コンテンツ配信装置1全体を統括制御し、かつ、後述する配信手段、トポロジー管理手段、表示制御手段、再生手段等として機能するようになっている。なお、CPU101がストリーム制御プログラム121を実行することによって、配信手段等として、またCPU101がトポロジー管理プログラム122を実行することによって、トポロジー管理手段として、また、CPU101が画面制御プログラム123を実行することによって、表示制御手段等として、CPU101がプレイヤプログラム124を実行することによって、再生手段としてそれぞれ機能するようになっている。
(Regarding the controller 113)
The
(配信手段について)
配信手段は、キーボード105などの入力手段によって、チャンネル毎に指定されたコンテンツデータを放送用コンテンツデータベース114から取り出し、ネットワークインターフェイス104を介して、各チャンネルの第1階層の端末装置2a等にストリーミング配信する。
(About distribution means)
The distribution means takes out the content data designated for each channel from the
この配信手段による端末装置2a等へのストリーミング配信は、以下の手順で実行される。 Streaming distribution to the terminal device 2a and the like by this distribution means is executed according to the following procedure.
配信手段は、各チャンネル毎に選択されたコンテンツ或いは予め設定されたコンテンツに対応するコンテンツデータを放送用コンテンツデータベース114から取り出す。
The distribution unit retrieves content data corresponding to the content selected for each channel or the preset content from the
次に、配信手段は、放送用コンテンツデータベース114から取り出したコンテンツデータを、ストリーミング配信用のデータ形式、たとえばASF、WMA、WMV等のデータ形式にエンコードする。
Next, the distribution means encodes the content data extracted from the
その後、配信手段は、各チャンネルの第1階層の端末装置2a等に対して、それぞれ対応するコンテンツデータを所定容量毎に分割しながらコンテンツパケットに格納し、ネットワークインターフェイス104を介して、このコンテンツパケットへ送信する。
Thereafter, the distribution means stores the corresponding content data in the content packet while dividing the content data for each predetermined capacity with respect to the first layer terminal device 2a and the like of each channel, and the content packet is transmitted via the
(トポロジー管理手段)
コンテンツ配信装置1は、異なるコンテンツを同時にストリーミング配信するために複数のチャンネルを有しており(コンテンツ配信装置1が複数存在して、各コンテンツ配信装置1に1つのチャンネルを割り振ってもよい)、トポロジー管理手段は、これらのチャンネル毎に構成されるツリー状階層構造の第1階層に参加している端末装置2の所在情報(IPアドレスやポート番号など)を管理している。また、トポロジー管理手段は、複数のチャンネルにそれぞれ対応する配信用IPアドレスを管理している。そして、上述の配信手段はトポロジー管理手段が管理する端末装置2のIPアドレスを宛先アドレスとし、配信用IPアドレスを送信元として端末装置2へコンテンツデータの配信を行なう。
(Topology management means)
The
第1実施形態においては、複数のチャンネルのIPアドレスを異ならせることとしたが、同一IPアドレスを用いてポート番号を異ならせることによって複数のチャンネルを構成するようにしてもよい。この場合、ポート番号毎にツリー状の配信構造を構成することになる。 In the first embodiment, the IP addresses of the plurality of channels are made different. However, the plurality of channels may be configured by making the port numbers different using the same IP address. In this case, a tree-like distribution structure is configured for each port number.
(表示制御手段について)
表示制御手段は、ビデオチップ108及びディスプレイ109を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、ディスプレイ109にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
(Display control means)
The display control means has a function of controlling the
(再生手段について)
再生手段は、放送用コンテンツデータベース114に記憶されているコンテンツデータをディスプレイ109に表示したり、スピーカ111から出力したりする機能を有している。
(About playback means)
The reproduction means has a function of displaying content data stored in the
[3.端末装置2の構成等の説明]
次に、図10を参照して、端末装置2の構成及び動作について説明する。
[3. Description of Configuration of Terminal Device 2]
Next, the configuration and operation of the
図10は、第1実施形態における端末装置2の概略構成例を示す図である。端末装置2は、一般のパーソナルコンピュータあるいは専用端末を適用可能であり、図10に示すように、CPU(Central Processing Unit)201と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置としての第1記憶部202と、各種データ等を記憶するHDD(Hard Disc Drive)等から構成された第2記憶部203と、インターネット4を介してコンテンツ配信装置1や接続管理装置3との間で通信を行うネットワークインターフェイス204と、ユーザが端末装置2を遠隔操作するために所定の赤外線信号を送信及び受信するリモコン205と、このリモコン205と赤外線により通信を行なうための赤外線ポート206と、赤外線ポート206を制御する周辺機器制御チップ207と、CPU201からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータを後述の内蔵ディスプレイ209に表示するビデオチップ208と、ビデオチップ208から送信される信号に応じた表示を行う内蔵ディスプレイ209と、FM音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ210と、音源チップ210から出力されるオーディオ信号を音波に変換する内蔵スピーカ211とを備えて構成され、これらの各種構成要素はシステムバス212を介して相互に接続されている。
FIG. 10 is a diagram illustrating a schematic configuration example of the
なお、第1実施形態においては、CPU201と第1記憶部202とで制御部213を構成している。また、ネットワークインターフェイス204は、ルータ10bを介して、インターネット4に接続されている。
In the first embodiment, the
ここで、リモコン205は、コンテンツ配信システムSのチャンネルを選択するための選択手段としてチャンネル選択ボタン(図示せず)を有しており、端末装置2のユーザはこのチャンネル選択ボタンによって所望のチャンネルに接続することができる。
Here, the
(第1記憶部202について)
また、第1記憶部202には、端末装置2のコンピュータとしての基本的な機能を提供するためのOSのプログラム220と、コンテンツ配信装置1から直接又は他の端末装置2に中継されてストリーミング配信されるコンテンツデータをストリーム受信及び下流の端末装置2へストリーミング送信するためのストリーム制御プログラム221と、接続された上流の装置(或いはコンテンツ配信装置1)の所在情報(IPアドレスやポート番号)とツリー接続された下流の端末装置2の所在情報の管理等を行なうためのトポロジー制御プログラム222と、ディスプレイ209を制御するための画面制御プログラム223と、上流の装置からストリーミング受信したコンテンツデータを再生するためのプレイヤ(再生)プログラム224と、複数のチャンネルとの接続を管理する接続プールプログラム225等を記憶しており、これらはCPU201によって読み出され、CPU201によってこれらのプログラムに従った機能が実行される。
(Regarding the first storage unit 202)
The
また、第1記憶部202には、チャンネル毎に配信されるコンテンツデータを一時的に蓄積するリングバッファ領域を設定可能なリングバッファ設定可能領域226が設けられている。このリングバッファ設定可能領域226には、各チャンネル毎のリングバッファ領域を設定することができる。ここで、チャンネルch1〜chnにそれぞれ対応するリングバッファ領域をリングバッファ領域226a〜226nとし、リングバッファ設定可能領域226には、接続されるチャンネルに対応するリングバッファ領域が設定される。ここで、第1記憶部202は、不揮発性記憶装置と揮発性記憶装置とから構成され、リングバッファ設定可能領域226は不揮発性記憶装置とし、一方、各種プログラム220〜225が格納される領域は揮発性記憶装置としている。
Further, the
ここで、OSプログラム220は、CPU201によって読み出されて実行されることにより、リモコン205の入出力に関する機能や、第1記憶部202や第2記憶部203などのメモリ管理などの端末装置2であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラムがCPU201によって実行された状態で、上述のストリーム制御プログラム221、トポロジー制御プログラム222、画面制御プログラム223、プレイヤプログラム224、接続プールプログラム225等が第1記憶部202から読み出されて実行される。
Here, the
なお、OSプログラム220、ストリーム制御プログラム221、トポロジー制御プログラム222、画面制御プログラム223、プレイヤプログラム224、接続プールプログラム225等は、例えば、インターネット4に接続されたサーバ等から第1記憶部202にダウンロードされるようにしてもよく、又CD−ROM等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第1記憶部202に読み込まれるようにしてもよい。
The
(制御部213について)
制御部213は、上述のようにCPU201と第1記憶部202とから構成され、CPU201が第1記憶部202に記憶された各種プログラム220〜225を読み出して実行することにより、端末装置2全体を統括制御し、かつ、後述する接続手段、トポロジー管理手段、ストリーミング受信手段、再生手段、表示制御手段、コンテンツデータ再生状況検出手段、リングバッファ設定手段、中継依頼受信手段、転送手段、バッファ容量通知手段、バックアップ処理手段、バッファ容量取得手段、比較手段、再接続手段等として機能するようになっている。
(About the control unit 213)
The
なお、CPU201がストリーム制御プログラム221を実行することによって、ストリーミング制御手段、転送手段等として、またCPU201がトポロジー管理プログラム122を実行することによって、接続手段、トポロジー管理手段、中継依頼受信手段等として、またCPU201が画面制御プログラム223を実行することによって表示制御手段等として、さらにCPU201がプレイヤプログラム224を実行することによって再生手段等として、さらにCPU201が接続プールプログラム225を実行することによって、コンテンツデータ再生状況検出手段、リングバッファ設定手段、バッファ容量通知手段、バックアップ処理手段、バッファ容量取得手段、比較手段、再接続手段等として、それぞれ機能するようになっている。
As the
(接続手段について)
接続手段は、端末装置2をコンテンツ配信システムSへ参加させるために、チャンネル選択手段であるリモコン205のチャンネル選択ボタンのユーザによる操作によって選択されたチャンネルに関する接続先紹介要求を接続管理装置3へ送信し、その後、接続管理装置3から通知された接続先候補に接続する。
(About connection means)
The connection means transmits a connection destination introduction request for the channel selected by the user's operation of the channel selection button of the
より具体的には、接続手段は、端末装置2をコンテンツ配信システムSへ参加させるために、接続管理装置3へ登録要求を送信して接続管理装置3へ登録すると共に、接続先紹介要求を送信して接続管理装置3へ接続先候補を要求する機能を有している。この登録要求や接続先紹介要求には、端末装置2のユーザがリモコン205のチャンネル選択ボタン等を操作することによって選択されるチャンネルを指定した情報及び自端末装置2の所在情報等を含む。
More specifically, the connection means transmits a registration request to the
また、接続手段は、登録要求や接続先紹介要求を接続管理装置3へ送信する際に、その接続先紹介要求に関するチャンネルに対するリングバッファ領域のバッファ容量を送信するようにしている。たとえば、チャンネルch1の接続先紹介要求を行う場合には、リングバッファ領域226aのバッファ容量である。なお、このリングバッファ領域のバッファ容量は、登録要求や接続先紹介要求に含ませるようにしても、別個に送信するようにしてもよい。
Further, when the connection means transmits a registration request or a connection destination introduction request to the
さらに、接続手段は、自端末装置2があるチャンネルに接続している状態で、端末装置2のユーザがリモコン205等を操作することによってチャンネルの切替え操作を行ったときには、その切替え操作によって新たに接続すべきチャンネルを判定し、チャンネル切替え要求を含む接続先紹介要求を接続管理装置3へ送信する。
Furthermore, when the user of the
これにより端末装置2は一のチャンネルから新たなチャンネルへの接続の切替えを行うことができる。なお、リモコン205のチャンネル切替えボタンを設けずに、後述の表示制御手段を動作させてディスプレイ209にチャンネルの選択画面を表示させ、リモコン205操作によって選択させるようにしてもよい。
As a result, the
また、接続手段は、接続管理装置3へ送信した接続先紹介要求に対して、接続管理装置3から通知される接続先候補の情報、すなわち接続先候補の端末装置の所在情報であるIPアドレスやポート番号などの情報(以下、接続先候補の情報を含めて、「接続先候補」と略すことがある。)を受信する機能を有する。
Further, the connection means responds to the connection destination introduction request transmitted to the
さらに、接続手段は、受信した接続先候補の情報に基づいて、その接続先候補への接続を行う機能を有する。すなわち、接続手段は、接続先候補の情報に基づいて、接続先候補のIPアドレス及びポート番号等をあて先とした接続要求を行い、接続先候補との論理接続を行う。このように接続先候補と接続することによってチャンネルに参加、すなわち自端末装置2をツリー状階層構造の一部に組み込むことが可能となる。
Further, the connection unit has a function of connecting to the connection destination candidate based on the received information about the connection destination candidate. In other words, the connection means makes a connection request with the destination IP address and port number as the destination based on the information about the destination candidate, and makes a logical connection with the destination candidate. By connecting with the connection destination candidates in this way, it becomes possible to participate in the channel, that is, to incorporate the own
(トポロジー管理手段について)
トポロジー管理手段は、現在接続している各チャンネルにおいて、接続手段によって接続したツリー状階層構造の上流の装置の所在情報などを第1記憶部202に記憶して管理すると共に、後述で詳説する転送手段によってコンテンツデータをツリー状階層構造の下流の端末装置2の所在情報などを第1記憶部202に記憶して管理する。
(About topology management means)
The topology management means stores the location information of the upstream device of the tree-like hierarchical structure connected by the connection means in each first connected channel in the
(ストリーミング受信手段)
ストリーミング受信手段は、階層構造における上流の端末装置2或いはコンテンツ配信装置1からストリーミング配信されるコンテンツパケットを受信し、そのコンテンツパケットに含まれるコンテンツデータを当該コンテンツデータのチャンネルに対応するリングバッファ領域に一時的に蓄積する。
(Streaming reception means)
The streaming receiving unit receives a content packet that is streamed from the upstream
(再生手段について)
再生手段は、ストリーミング受信手段によってストリーミング受信したコンテンツデータ、すなわちリングバッファ領域に格納したコンテンツデータを順次再生する機能を有している。
(About playback means)
The reproduction means has a function of sequentially reproducing the content data stream-received by the streaming reception means, that is, the content data stored in the ring buffer area.
この再生手段は、音源チップ210やビデオチップ208を動作させることによってその機能を実現しており、リングバッファ領域に格納したコンテンツデータを順次取り出し、所定のコンテンツデータ形式(たとえば、Wave形式)に変換して音源チップ210やビデオチップ208へ入力し、コンテンツの再生を行う。
This reproduction means realizes its function by operating the
再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータは、そのコンテンツデータがオーディオ情報を含む場合には、そのオーディオ情報が音源チップ210によってオーディオ信号へ変換された後、内蔵スピーカ211から出力される。
When the content data includes audio information, the content data converted into a predetermined content data format by the reproduction unit is output from the built-in
また、再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータに映像情報が含まれるときには、後述の表示制御手段による制御によってこの映像情報がディスプレイ209に表示される。
Further, when the video data is included in the content data converted into the predetermined content data format by the reproducing means, the video information is displayed on the
また、再生手段は、リングバッファ領域に格納されたコンテンツデータに含まれる再生時刻情報に基づいて、当該コンテンツデータを再生するタイミングを決定する。すなわち、再生手段は、リングバッファ領域に格納されたコンテンツデータをその再生時刻で内蔵スピーカ211やディスプレイ209に出力するように構成されている。
Further, the reproduction means determines the timing for reproducing the content data based on the reproduction time information included in the content data stored in the ring buffer area. That is, the playback means is configured to output the content data stored in the ring buffer area to the built-in
この再生手段による再生は、チャンネル選択ボタン等によって最後に選択された最新のチャンネルに対応するリングバッファ領域からコンテンツデータを取り出して、ビデオチップ208や音源チップ210に出力することによって行われる。
The reproduction by this reproduction means is performed by taking out the content data from the ring buffer area corresponding to the latest channel last selected by the channel selection button or the like and outputting it to the
(表示制御手段について)
表示制御手段は、ビデオチップ208及びディスプレイ209を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、ディスプレイ209にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
(Display control means)
The display control means has a function of controlling the
(コンテンツデータ再生状況検出手段について)
コンテンツデータ再生状況検出手段は、再生手段によるチャンネル毎のコンテンツデータの再生状況を検出する機能を有している。
(Content data playback status detection means)
The content data playback status detection means has a function of detecting the playback status of content data for each channel by the playback means.
コンテンツデータの再生状況には、上述のように単位時間当りの再生回数や再生時間があるが、ここでは、チャンネル毎のコンテンツデータの再生回数を検出するものとして説明する。なお、コンテンツデータの再生回数とは、言い換えれば、チャンネルの選択回数である。 As described above, the content data reproduction state includes the number of reproductions and the reproduction time per unit time. Here, the description will be made assuming that the number of reproductions of content data for each channel is detected. Note that the number of times content data is reproduced is, in other words, the number of channel selections.
ところで、端末装置2のユーザによっては、チャンネルを極めて頻繁に切替えることがある。このような場合にコンテンツデータの再生回数をそのまま検出することが適切でないことが多い。そこで、コンテンツデータ再生状況検出手段は、すぐに切替えられたチャンネルは再生回数に含めないようにしている。すなわち、所定期間以上閲覧したものだけをその再生回数のカウントに含めるのである。
By the way, depending on the user of the
コンテンツデータ再生状況検出手段は、再生手段によるチャンネル毎のコンテンツデータの再生状況を検出すると、第1記憶部202に設けた再生状況履歴テーブルにその再生状況を登録及び更新をする。
When the content data playback status detection unit detects the playback status of the content data for each channel by the playback unit, the content data playback status detection unit registers and updates the playback status in the playback status history table provided in the
ここで、再生状況履歴テーブルの例を図11に示す。この図の例では、チャンネルch1〜ch5までの各チャンネルの一日当りの再生回数が当日から30日前まで格納されている。なお、この例では、単位時間を1日とし、それを30個(30日)分前までとしているが、単位時間を1時間にしてもいし、1週間にしてもよい。また、曜日単位の再生状況履歴テーブルとするようにしてもよい。この場合、月曜日〜日曜日までのそれぞれについて各チャンネルの再生回数がこのテーブルに格納されることになる。 Here, an example of the reproduction status history table is shown in FIG. In the example of this figure, the number of reproductions per day for each channel from channel ch1 to ch5 is stored from the current day to 30 days ago. In this example, the unit time is one day and is 30 minutes (30 days) before, but the unit time may be one hour or one week. Alternatively, a reproduction status history table for each day of the week may be used. In this case, the number of reproductions of each channel is stored in this table for each of Monday through Sunday.
(リングバッファ設定手段について)
リングバッファ設定手段は、チャンネル選択ボタン等のチャンネル選択手段によって選択されるチャンネルごとのリングバッファ領域の領域を第1記憶部202のリングバッファ設定可能領域226に設定する機能を有している。そして、このように設定したリングバッファ領域の情報を接続プール情報として第1記憶部202の接続プール情報領域(以下、「接続プール」と呼ぶ。)に登録する。
(About ring buffer setting means)
The ring buffer setting unit has a function of setting a ring buffer area for each channel selected by the channel selection unit such as a channel selection button in the ring buffer
リングバッファ領域のバッファ容量はリングバッファ設定手段よって決定されるものであり、リングバッファ領域に対応するチャンネルのコンテンツデータの再生状況に応じたバッファ容量とする。すなわち、リングバッファ設定手段は、コンテンツデータ再生状況検出手段により検出したチャンネルの再生状況に応じたバッファ容量を所定の演算式やテーブルを用いて算出し、そのチャンネルのリングバッファ領域に割り当てるのである。 The buffer capacity of the ring buffer area is determined by the ring buffer setting means, and is set to a buffer capacity according to the reproduction status of the content data of the channel corresponding to the ring buffer area. That is, the ring buffer setting means calculates the buffer capacity corresponding to the channel reproduction status detected by the content data reproduction status detection means using a predetermined arithmetic expression or table, and allocates it to the ring buffer area of that channel.
ここで、コンテンツデータの再生状況とは、上述のように各チャンネルにおける単位時間当りのコンテンツデータの再生回数や再生時間などである。ここでは、リングバッファ領域設定手段が、各チャンネルの再生回数に重み付けを行う計算方法で算出したバッファ容量をそれぞれリングバッファ領域に割り当てるようものとして説明する。 Here, the content data reproduction status refers to the number of times content data is reproduced per unit time and the reproduction time in each channel as described above. Here, description will be made assuming that the ring buffer area setting means allocates the buffer capacity calculated by the calculation method for weighting the number of reproductions of each channel to the ring buffer area.
以下では、接続プールのエントリ数が3つ、評価区間が3つの場合についての計算方法を例に挙げて説明する。ここで、「接続プールのエントリ数」とは、リングバッファ設定可能領域226に同時に設定することができるリングバッファ領域の数を意味する。
Hereinafter, a calculation method in the case where the number of entries in the connection pool is three and the evaluation section is three will be described as an example. Here, the “number of entries in the connection pool” means the number of ring buffer areas that can be set simultaneously in the ring buffer
ここで、第1記憶部202に設定できるリングバッファ領域のメモリ容量をSfとし、以下の式(1)によって、SIとSrを定義する。
Here, the memory capacity of the ring buffer area that can be set in the
このようにSI及びSrを定義したときに、チャンネルiのリングバッファ領域のバッファ容量を以下の式(2)によって、再生状況に応じたバッファ容量として算出する。ここで、図12に示す各評価区間1〜3における選択確率Pch(i)_t1〜t3は、図11の再生状況履歴テーブルから導出している。重み付けWt1〜Wt3は、過去の評価区間ほど重み付けを小さくしていくように調整されたパラメータである。
When SI and Sr are defined in this way, the buffer capacity of the ring buffer area of channel i is calculated as the buffer capacity according to the reproduction status by the following equation (2). Here, the selection probabilities Pch (i) _t1 to t3 in the
なお、各パラメータは、以下の式(3),式(4)で定義される。 Each parameter is defined by the following formulas (3) and (4).
このように、リングバッファ設定手段は、新しい再生ほど重み付けを大きくする算出方法で各チャンネルに割り当てるリングバッファ領域のバッファ容量を算出しており、チャンネルの再生状況に応じて、リングバッファ領域のバッファ容量を効率的に配分することができる。 In this way, the ring buffer setting means calculates the buffer capacity of the ring buffer area allocated to each channel by a calculation method in which the weight is increased as new playback is performed, and the buffer capacity of the ring buffer area is determined according to the channel playback status. Can be allocated efficiently.
また、リングバッファ設定手段は、チャンネル選択手段によって選択されたチャンネルの接続先候補に接続手段よって接続したときに、第1記憶部202に当該選択されたチャンネルに対応するリングバッファ領域が第1記憶部202に存在せず、かつ第1記憶部202のリングバッファ設定可能領域226に設定したリングバッファ領域の数が所定数(上限値)に達していると判定すると、これら複数のリングバッファ領域のうち、一つのリングバッファ領域を第1記憶部202から削除すると共に、選択したチャンネルに対応するリングバッファ領域を第1記憶部202に設定する。
Further, when the ring buffer setting means connects to the connection destination candidate of the channel selected by the channel selection means by the connection means, the ring buffer area corresponding to the selected channel is first stored in the
たとえば、リングバッファ設定手段は、第1記憶部202に設定されたリングバッファ領域のうち、再生手段によって再生されていない期間が最も長いリングバッファ領域を第1記憶部202から削除し、選択されたチャンネルに対応するリングバッファ領域を第1記憶部202に設定する。
For example, the ring buffer setting unit deletes the ring buffer area set in the
(中継依頼受信手段)
中継依頼受信手段は、下流に接続される端末装置2からコンテンツデータの中継依頼を受信する。このコンテンツデータの中継依頼は、自端末装置2の下流の端末装置2からの接続要求と同時或いは別個に行われるものである。すなわち、自端末装置2の下流の端末装置2から接続要求がコンテンツデータの中継依頼を兼ねるようにしてもよく、自端末装置2との接続(セッション)を確立した後にコンテンツデータの中継依頼を受信する構成をとるようにしてもよい。ここでは、接続要求がこのコンテンツデータの中継依頼を兼ねるものとする。また、このコンテンツデータの中継依頼には、中継対象のコンテンツデータのチャンネルの指定情報が含まれており、中継依頼受信手段は、このチャンネルの指定情報により中継すべきチャンネルを判定する。
(Relay request receiving means)
The relay request receiving unit receives a content data relay request from the
(転送手段)
転送手段は、リングバッファ領域に一時的に蓄積したコンテンツデータを取り出して、下流の端末装置2へストリーミング配信する。すなわち、転送手段は、ストリーミング受信手段によって受信しているコンテンツデータを、中継依頼を行った下流の端末装置へストリーミング形式で転送するのである。
(Transfer means)
The transfer means takes out the content data temporarily stored in the ring buffer area and distributes the content data to the downstream
ここで、転送手段は、中継依頼受信手段によって受信したチャンネルの指定情報に基づき、転送すべきチャンネルに対応するリングバッファ領域を判定する。そして、転送手段は、このように判定したリングバッファ領域からコンテンツデータを順次取り出して、下流の端末装置2へ転送するようにしている。
Here, the transfer means determines the ring buffer area corresponding to the channel to be transferred based on the channel designation information received by the relay request receiving means. Then, the transfer means sequentially extracts the content data from the ring buffer area determined as described above and transfers it to the downstream
(バッファ容量通知手段)
バッファ容量通知手段は、自端末装置2のリングバッファ設定可能領域226に設定された各リングバッファ領域のバッファ容量を所定期間毎に接続管理装置3に通知する。ここで、この所定期間は、たとえば、1時間でもよく、1日でもよい。なお、この所定期間は、ユーザによるリモコン205等の操作により、変更可能に構成されている。
(Buffer capacity notification means)
The buffer capacity notification means notifies the
また、バッファ容量通知手段は、他の端末装置2から自端末装置2におけるリングバッファ領域のバッファ容量の問い合わせを受信した場合に、この問い合わせに対応するチャンネルのリングバッファ領域のバッファ容量を問い合わせ元の端末装置2へ通知する。
In addition, when the buffer capacity notifying unit receives an inquiry about the buffer capacity of the ring buffer area in the own
また、バッファ容量通知手段は、リングバッファ設定手段によってリングバッファ領域が設定されたときに、或いはリングバッファ設定手段によってリングバッファ領域のバッファ容量が更新されて変更されたときに、リングバッファ領域のバッファ容量を接続管理装置3に通知する。
Further, the buffer capacity notifying means is configured to provide a buffer for the ring buffer area when the ring buffer area is set by the ring buffer setting means or when the buffer capacity of the ring buffer area is updated and changed by the ring buffer setting means. The capacity is notified to the
(バックアップ処理手段)
バックアップ処理手段は、自端末装置2の電源が切断されたことを検出すると、第1記憶部202のリングバッファ設定可能領域226に設定されたリングバッファ領域のバッファ容量を不揮発性記憶装置である第2記憶部203に記憶し、自端末装置2の電源が再度供給されたことを検出すると、第2記憶部203に設定されたリングバッファ領域のバッファ容量に基づいて、リングバッファ領域を第1記憶部202に再設定する。
(Backup processing means)
When the backup processing unit detects that the power of the
ここで、バックアップ処理手段による上記電源切断の検出や上記電源再供給の検出は、自端末装置2の電源回路(図示せず)の出力電圧を監視することによって行われる。すなわち、出力電圧が所定値よりも小さくなったとなったときに電源切断を検出し、その後出力電圧が所定値以上となったときに電源再供給の検出を行うのである。
Here, the detection of the power-off and the detection of the re-supply of power by the backup processing means are performed by monitoring the output voltage of the power circuit (not shown) of the
(バッファ容量取得手段)
バッファ容量取得手段は、接続手段によって接続している各チャンネル階層構造における自端末装置2の上流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する上流バッファ容量取得手段として機能する。すなわち、バッファ容量取得手段は、上流バッファ容量取得手段として、接続管理装置3或いは自端末装置2の上流にある端末装置2にリングバッファ領域のバッファ容量の情報を要求し、その要求に応じて上流の端末装置2から送信されるリングバッファ領域のバッファ容量を取得する。
(Buffer capacity acquisition means)
The buffer capacity acquisition means functions as upstream buffer capacity acquisition means for acquiring information on the buffer capacity of the ring buffer area of the
また、バッファ容量取得手段は、接続手段によって接続している各チャンネルの階層構造における自端末装置2の下流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する下流バッファ容量取得手段として機能する。すなわち、バッファ容量取得手段は、下流バッファ容量取得手段として、接続管理装置3或いは自端末装置2の下流にある端末装置2にリングバッファ領域のバッファ容量の情報を要求し、その要求に応じて下流の端末装置2から送信されるリングバッファ領域のバッファ容量を取得する。
The buffer capacity acquisition means acquires downstream buffer capacity acquisition means for acquiring information on the buffer capacity of the ring buffer area of the
(比較手段)
比較手段は、各チャンネル毎に、自端末装置2が有するリングバッファ領域のバッファ容量と、バッファ容量取得手段によって取得した上流の端末装置が有するリングバッファ領域のバッファ容量とを比較する。さらに、比較手段は、各チャンネル毎に、自端末装置2が有するリングバッファ領域のバッファ容量と、バッファ容量取得手段によって取得した下流の端末装置が有するリングバッファ領域のバッファ容量とを比較する。
(Comparison means)
The comparison means compares the buffer capacity of the ring buffer area of the
また、比較手段は、下流に端末装置が複数ある場合には、それぞれの下流の端末装置2に関してバッファ容量の比較を行う。
In addition, when there are a plurality of terminal devices downstream, the comparison means compares the buffer capacity with respect to each downstream
(再接続手段)
再接続手段は、比較手段による比較の結果、自端末装置2が有するリングバッファ領域のバッファ容量が上流にある端末装置が有するリングバッファ領域のバッファ容量よりも大きい場合に、上流の端末装置よりも前記階層構造上における上流の端末装置2に再接続するように再接続処理を行う。
(Reconnection method)
As a result of the comparison by the comparison means, the reconnection means determines that the buffer capacity of the ring buffer area possessed by the
また、再接続手段は、比較手段による比較の結果、自端末装置2が有するリングバッファ領域のバッファ容量が下流にある端末装置が有するリングバッファ領域のバッファ容量よりも小さい場合に、下流の端末装置2或いは下流の端末装置2よりも階層構造上における下流の端末装置2に再接続するように再接続処理を行う。
Further, the reconnection means determines that the downstream terminal apparatus when the buffer capacity of the ring buffer area of the
なお、再接続手段は、比較手段による比較の結果、自端末装置2が有するリングバッファ領域のバッファ容量が上流にある端末装置2が有するリングバッファ領域のバッファ容量も大きく、かつ自端末装置2が有するリングバッファ領域のバッファ容量が下流にある端末装置2が有するリングバッファ領域のバッファ容量も小さいときには、上流の端末装置2よりも上流の端末装置2への再接続を優先して行う。
As a result of the comparison by the comparison means, the reconnection means has a large buffer capacity of the ring buffer area of the
[4.接続管理装置3の構成等の説明]
次に、図13を参照して、接続管理装置3の構成及び動作について説明する。
[4. Description of Configuration of Connection Management Device 3]
Next, the configuration and operation of the
図13は、第1実施形態における接続管理装置3の概略構成例を示す図である。接続管理装置3は、一般のサーバコンピュータを適用可能であり、図13に示すように、CPU(Central Processing Unit)301と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置としての第1記憶部302と、各種データ等を記憶するHDD(Hard Disc Drive)等から構成された第2記憶部303と、インターネット4を介してコンテンツ配信装置1や端末装置2との間で通信を行うネットワークインターフェイス304と、所定の情報を入力可能なキーボード305やマウス306等の入力手段を制御する周辺機器制御チップ307と、CPU301からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ309に表示するビデオチップ308とを備えて構成され、これらの各種構成要素はシステムバス310を介して相互に接続されている。
FIG. 13 is a diagram illustrating a schematic configuration example of the
なお、第1実施形態においては、CPU301と第1記憶部302とで制御部315を構成している。なお、ネットワークインターフェイス304は、ルータ10cを介して、インターネット4に接続されている。
In the first embodiment, the
(第1記憶部302について)
また、第1記憶部302には、接続管理装置3のコンピュータとしての基本的な機能を提供するためのOSプログラム320と、チャンネルに接続される複数の端末装置2の所在情報(IPアドレスやポート番号など)などを管理するための端末管理プログラム321と、各チャンネルのツリー状階層構造を構築及び管理等するためのトポロジー管理プログラム322と、端末装置2から送信される接続先紹介要求に対応するチャンネルの接続先候補を選択し、端末装置2へ接続先候補の情報を送信等するための接続先紹介プログラム323と、コンテンツ配信システムSの運用を管理等するための運用管理プログラム324等を記憶しており、これらはCPU301によって読み出され、CPU301によってこれらのプログラムに従った機能が実行される。
(Regarding the first storage unit 302)
The
ここで、OSプログラム320は、CPU301によって読み出されて実行されることにより、キーボード305やマウス306の入出力に関する機能や、第1記憶部302や第2記憶部303などのメモリ管理などの接続管理装置3であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム320がCPU301によって実行された状態で、上述の端末管理プログラム321、トポロジー管理プログラム322、接続先紹介プログラム323、運用管理プログラム324等が実行される。
Here, the
なお、OSプログラム320、端末管理プログラム321、トポロジー管理プログラム322、接続先紹介プログラム323、運用管理プログラム324等は、例えば、インターネット4に接続されたサーバ等から第1記憶部302にダウンロードされるようにしてもよく、又CD−ROM等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第1記憶部302に読み込まれるようにしてもよい。
The
(制御部315について)
制御部315は、上述のようにCPU301と第1記憶部302とから構成され、CPU301が第1記憶部302に記憶された各種プログラム320〜324を読み出して実行することにより、接続管理装置3全体を統括制御し、かつ、後述する接続先候補選択手段、通知手段、トポロジー管理手段、端末管理手段等として機能させ、さらに第1記憶部302を接続状態情報記憶手段として使用する。
(About the control unit 315)
The
なお、CPU301が端末管理プログラム321を実行することによって、端末管理手段等として、またCPU301がトポロジー管理プログラム322を実行することによってトポロジー管理手段等として、さらにCPU301が接続先紹介プログラム323を実行することによってバッファ容量受信手段、接続先候補選択手段、通知手段等として、それぞれ機能するようになっている。
It should be noted that the
(端末管理手段について)
端末管理手段は、端末装置2からの登録要求を受信すると、端末管理データベース314へこの端末装置2の所在情報であるIPアドレスなどをチャンネル毎に登録する。また、コンテンツ配信装置1からの登録要求を受信した場合も、このコンテンツ配信装置1の所在情報であるIPアドレスなどを各チャンネル毎に端末管理データベース314に登録する。なお、これらの端末装置2の所在情報は端末装置2からの登録要求に含まれ、この登録要求から所在情報を取得する。
(About terminal management means)
When receiving the registration request from the
(トポロジー管理手段について)
トポロジー管理手段は、コンテンツ配信装置1から送信される新規チャンネル生成要求に基づいて、新規チャンネルのツリー状階層構造を生成するための新規トポロジー生成手段と、端末装置2の接続先紹介要求や接続切断通知などのトポロジー変動通知によってチャンネルにおける端末装置2の接続情報を変更するトポロジー変更手段としての機能を有している。また、トポロジー管理手段は、チャンネル毎に階層構造を構成する端末装置2の接続状態情報を接続状態情報記憶手段としてのトポロジーデータベース313へ記憶する。
(About topology management means)
The topology management means includes a new topology generation means for generating a tree-like hierarchical structure of a new channel based on a new channel generation request transmitted from the
新規トポロジー生成手段は、コンテンツ配信装置1から新規チャンネル生成要求を受信すると、新規チャンネルのトポロジーテーブルを生成してトポロジーデータベース313へ登録する。ここで、トポロジーテーブルは、チャンネル毎に階層構造を構成する端末装置2の接続状態情報などを格納するためのテーブルであり、チャンネルごとに生成されてトポロジーデータベース313に登録される。
When receiving a new channel generation request from the
トポロジー変更手段は、トポロジーデータベース313に記憶される複数のトポロジーテーブルに端末装置2の情報を追加又は削除する機能を実行するものであり、端末装置2からの接続先紹介要求トポロジー参加報告に基づいて、トポロジーテーブルへの追加又は変更を行うものである。
The topology changing means executes a function of adding or deleting information of the
ここで、トポロジーデータベース313におけるトポロジーテーブルについて、図14を参照して具体的に説明する。
Here, the topology table in the
トポロジーテーブルは、図14に示すように、各端末装置2の端末番号(たとえば、端末装置2のMACアドレスなど)を主項目として、それらの端末装置2毎の上流のノードにある端末装置、下流のノードにある端末装置、所在情報、リングバッファ領域のバッファ容量がそれぞれ関連付けられたテーブルであり、このトポロジーテーブルはチャンネル毎に設けられる。
As shown in FIG. 14, the topology table has the terminal number of each terminal device 2 (for example, the MAC address of the terminal device 2) as a main item, the terminal device in the upstream node for each
ここで、端末装置2の端末番号、所在情報、リングバッファ領域のバッファ容量は、接続先紹介要求に含まれる情報に基づいて、トポロジーテーブルに登録される。
Here, the terminal number, location information, and buffer capacity of the ring buffer area of the
すなわち、トポロジー変更手段によって、各端末装置2から送信される各チャンネル毎のリングバッファ領域のバッファ容量、端末番号、所在情報が受信され、端末管理データベース314に登録される。
That is, the topology changing means receives the buffer capacity, terminal number, and location information of the ring buffer area for each channel transmitted from each
(バッファ容量受信手段について)
バッファ容量受信手段は、チャンネルに新規に参加しようとする端末装置2からリングバッファ領域のバッファ容量を含む接続先紹介要求を受信する。また、チャンネルに参加している端末装置2からリングバッファ領域のバッファ容量を定期的に受信する。
(About buffer capacity receiving means)
The buffer capacity receiving means receives a connection destination introduction request including the buffer capacity of the ring buffer area from the
(接続先候補選択手段について)
接続先候補選択手段は、チャンネルに新規に参加、或いは再接続しようとする端末装置からリングバッファ領域のバッファ容量を含む接続先紹介要求を受信したとき、接続先紹介要求に対応するチャンネルの階層構造において、当該階層構造を構成する端末装置のリングバッファ領域のバッファ容量が階層構造の上流から下流にかけて小さくなるように、接続先紹介要求に対する接続先候補を、トポロジーデータベース313に記憶された接続状態情報から選択する。
(About connection destination candidate selection means)
When the connection destination candidate selection means receives a connection destination introduction request including the buffer capacity of the ring buffer area from a terminal device that is newly joining or reconnecting to the channel, the hierarchical structure of the channel corresponding to the connection destination introduction request Connection state information stored in the
すなわち、接続先候補選択手段は、接続先紹介要求をした端末装置2のリングバッファ領域のバッファ容量よりも大きいバッファ容量のリングバッファ領域を有する端末装置の下流で、かつ接続先紹介要求をした端末装置2のリングバッファ領域のバッファ容量よりも小さいバッファ容量のリングバッファ領域を有する端末装置の上流である端末装置2を接続先候補として選択する。
That is, the connection destination candidate selection means is a terminal downstream of a terminal device having a ring buffer area having a buffer capacity larger than the buffer capacity of the ring buffer area of the
(通知手段について)
通知手段は、接続先候補選択手段によって選択された接続先候補を、接続先紹介要求を送信した端末装置2へ通知する機能を有する。この接続先候補の通知は、接続先候補の情報、すなわち接続先候補の端末装置2の通信プロトコル、IPアドレスやポート番号などの情報を含む。
(Notification means)
The notifying unit has a function of notifying the connection destination candidate selected by the connection destination candidate selecting unit to the
[5.コンテンツ配信システムSの動作]
以下、端末装置2及び接続管理装置3の詳細動作について、フローチャートを用いて更に具体的に説明する。
[5. Operation of content distribution system S]
Hereinafter, detailed operations of the
(端末装置2の処理フローの説明)
まず、端末装置2の更に具体的な動作について、図15〜図17を参照して説明する。図15は端末装置2における処理全体を示すフローチャート、図16は端末装置2におけるチャンネル切替え処理を示すフローチャート、図17は端末装置2における接続変更処理を示すフローチャートである。
(Description of processing flow of terminal device 2)
First, a more specific operation of the
まず、図15を参照して、端末装置2における処理全体の概要を説明する。
First, with reference to FIG. 15, an overview of the entire processing in the
まず、端末装置2の電源がONされると、端末装置2では各プログラム220〜225の初期化が行われ、各プログラム220〜225をCPU201による実行状態とし、制御部213としての機能を動作させる。このように制御部213が動作状態となると、接続管理装置3に対して自端末装置2の登録要求とともに接続紹介要求を行う(ステップS100)。すなわち、この制御部213は、端末装置2の所在情報(IPアドレスやポート番号など)、初期設定で予め決められたチャンネル(以下、「初期設定チャンネル」と呼ぶ。)及びこのチャンネルのリングバッファ領域のバッファ容量などの情報を接続管理装置3へ送信する。
First, when the
接続管理装置3は、端末装置2から登録要求及び接続先紹介要求を受信すると、登録要求及び接続先紹介要求を行った端末装置2から受信した情報をトポロジーデータベース313と端末管理データベース314へ登録する。その後、接続管理装置3は、トポロジーデータベース313の情報に基づいて、初期設定チャンネルにおける接続先候補を選択して、接続先紹介要求を行った端末装置2に選択した接続先候補を通知する。
When receiving the registration request and the connection destination introduction request from the
端末装置2の制御部213は、登録要求及び接続先紹介要求を接続管理装置3に送信した後、接続管理装置3から通知される接続先候補を受信すると、この接続先候補(端末装置2或いはコンテンツ配信装置1)との接続を確立する。端末装置2の制御部213は、このように接続を確立した接続先候補から初期設定チャンネルのコンテンツデータを受信するために、この初期設定チャンネル用のリングバッファ領域を第1記憶部202に設定する。
After transmitting the registration request and the connection destination introduction request to the
接続先候補から初期設定チャンネルのコンテンツパケットがストリーミング配信されると、端末装置2の制御部213は、このコンテンツパケットからコンテンツデータを取り出して、初期設定チャンネル用のリングバッファ領域に順次蓄積していく。
When the content packet of the initial setting channel is streamed from the connection destination candidate, the
端末装置2の制御部213は、初期設定チャンネル用のリングバッファ領域に蓄積されたコンテンツデータに含まれる再生時刻情報をチェックし、再生時刻となったコンテンツデータをそのリングバッファ領域から取り出し、内蔵ディスプレイ209や内蔵スピーカ211を用いて再生を開始する。なお、初期設定チャンネルのコンテンツパケットの受信及び再生処理は、以下説明するステップS150,S151の処理としてもよい。
The
その後、端末装置2の制御部213は、チャンネルの切替え要求が行われたか否かを判定する(ステップS101)。すなわち、ユーザによるリモコン205に設けられたチャンネル選択ボタンの操作によって現在再生しているチャンネルと異なるチャンネルが選択されたか否かを判定するのである。
Thereafter, the
ステップS101において、チャンネル切替え要求が行われたと判定する(ステップS101:YES)と、制御部213は、ステップS110においてチャンネル切替え処理を行う。このステップS110におけるチャンネル切替え処理は後述で詳説する。
If it is determined in step S101 that a channel switching request has been made (step S101: YES), the
また、ステップS101において、チャンネル切替え要求が行われていないと判定すると(ステップS101:NO)、制御部213は、リングバッファ領域の更新契機になっているか否かを判定する(ステップS102)。
If it is determined in step S101 that a channel switching request has not been made (step S101: NO), the
このリングバッファ領域の更新契機は、予め一定間隔の更新契機(たとえば、30分間隔)となるように第1記憶部202の更新契機記憶領域に設定されているが、ユーザによるリモコン205の操作によりこの更新契機記憶領域の設定された更新契機の情報を変更することができるような構成にしてもよい。制御部213は、この更新契機記憶領域を参照して、リングバッファ領域の更新契機となっているかを判定する。
The update trigger of the ring buffer area is set in the update trigger storage area of the
なお、上述したように、再生状況によるバッファ容量の算出を日付単位の再生回数に基づいて行う場合、日付が変わることによって算出元となる再生回数が変わることを意味する。図11に示す例では、日付が変わると30日前のデータが29日前のデータに書き換わってしまうことになる。そのため、このように日付単位の再生回数による再生状況を検出する場合には、日付が変わったときをリングバッファ領域の更新契機とすることになる。 As described above, when the calculation of the buffer capacity according to the reproduction status is performed based on the number of reproductions by date, it means that the number of reproductions as a calculation source is changed by changing the date. In the example shown in FIG. 11, when the date changes, the data 30 days before is rewritten to the data 29 days ago. For this reason, when the reproduction status based on the number of reproductions in date units is detected in this way, the time when the date changes is used as an update trigger for the ring buffer area.
ステップS102において、リングバッファ領域の更新契機となっていると判定する(ステップS102:YES)と、制御部213は、プーリング中のリングバッファ領域に割り当てるバッファ容量を再生状況に応じて再計算し、その結果に応じたバッファ容量になるようにリングバッファ領域のバッファ容量を設定する(ステップS120)。
If it is determined in step S102 that the ring buffer area is being updated (step S102: YES), the
ここで、プーリング中のリングバッファ領域とは、接続を確立(接続をプール)しているチャンネルのうち非再生状態のチャンネル(以下、「待機中チャンネル」とする。)のリングバッファ領域(以下、「リングバッファ(3)」とする。)である。 Here, the ring buffer area being pooled is a ring buffer area (hereinafter referred to as “standby channel”) of a non-reproducing channel (hereinafter referred to as “standby channel”) among the channels that have established connections (pool connections). "Ring buffer (3)").
その後、制御部213は、リングバッファ(3)のバッファ容量を接続管理装置3へ送信することによって接続管理装置3にリングバッファ(3)のバッファ容量を報告する(ステップS121)。
Thereafter, the
また、ステップS102において、リングバッファ領域の更新契機となっていないと判定する(ステップS102:NO)と、制御部213は、プーリング中のリングバッファ領域のバッファ容量の問い合わせ契機になっているか否かを判定する(ステップS103)。
If it is determined in step S102 that the ring buffer area is not updated (step S102: NO), the
このリングバッファ(3)のバッファ容量の問い合わせ契機は、予め一定間隔の問い合わせ契機(たとえば、30分間隔)となるように第1記憶部202の問い合わせ契機記憶領域に設定されているが、ユーザによるリモコン205の操作によりこの問い合わせ契機記憶領域の設定された問い合わせ契機の情報を変更することができるような構成にしてもよい。制御部213は、この問い合わせ契機記憶領域を参照して、リングバッファ領域のバッファ容量の問い合わせ契機となっているかを判定する。
The buffer capacity inquiry trigger of the ring buffer (3) is set in the inquiry trigger storage area of the
ステップS103において、プーリング中のリングバッファ(3)のバッファ容量の問い合わせ契機になっていると判定すると(ステップS103:YES)、制御部213は、制御部213は、S130において接続変更処理を行う。このステップS130における接続変更処理は後述で詳説する。
If it is determined in step S103 that the buffer capacity of the ring buffer (3) being pooled is inquired (step S103: YES), the
ステップS103において、プーリング中のリングバッファ(3)のバッファ容量の問い合わせ契機となっていないと判定する(ステップS103:NO)と、制御部213は、自端末装置2のリングバッファ領域のバッファ容量の問い合わせが他の端末装置2からあったか否かを判定する(ステップS104)。
If it is determined in step S103 that the buffer capacity of the ring buffer (3) being pooled is not triggered (step S103: NO), the
ステップS104において、リングバッファ領域のバッファ容量の問い合わせがあったと判定すると(ステップS104:YES)、制御部213は、問い合わせ要求にかかるチャンネルに関する自端末装置2のリングバッファ領域のバッファ容量を、その問い合わせを行った他の端末装置2に通知する(ステップS140)。
If it is determined in step S104 that there is an inquiry about the buffer capacity of the ring buffer area (step S104: YES), the
また、ステップS104において、リングバッファ領域のバッファ容量の問い合わせがないと判定すると(ステップS104:NO)、制御部213は、接続中のチャンネルの階層構造における上流の装置からコンテンツパケットを受信したか否かを判定する(ステップS105)。
If it is determined in step S104 that there is no inquiry about the buffer capacity of the ring buffer area (step S104: NO), the
なお、コンテンツパケットの受信は、上述で説明したように、受信したコンテンツパケットに対応するチャンネル用に用意したリングバッファ領域に順次蓄積することによって行われる。すなわち、自端末装置2が接続したチャンネル毎に設定されたリングバッファ領域にそれぞれ対応するコンテンツパケットを蓄積するのである。なお、リングバッファ領域に蓄積するのは、コンテンツパケットに含まれるコンテンツデータであり、コンテンツパケットのヘッダ部分を取り除いた情報である。
As described above, the content packet is received by sequentially accumulating in the ring buffer area prepared for the channel corresponding to the received content packet. That is, the content packet corresponding to each of the ring buffer areas set for each channel to which the
ステップS105において、上流の装置からコンテンツパケットを受信したと判定すると(ステップS105:YES)、制御部213は、受信したコンテンツパケットを下流の端末装置2へ転送する(ステップS150)。なお、受信したコンテンツパケットを転送する下流の端末装置2がない場合には、このS150の処理は行われない。
If it is determined in step S105 that the content packet has been received from the upstream device (step S105: YES), the
下流の装置への転送は、各チャンネル毎に行われるものであり、それぞれ対応するリングバッファ領域からコンテンツデータを取り出してコンテンツパケットとして送信することによって行われる。 The transfer to the downstream apparatus is performed for each channel, and is performed by extracting the content data from the corresponding ring buffer area and transmitting it as a content packet.
また、制御部213は、リングバッファ領域から再生時刻に達したコンテンツデータをリングバッファ領域から取得して、再生する。なお、再生するコンテンツデータは、第1記憶部202のリングバッファ設定可能領域226に複数のリングバッファ領域が設定されている場合には、リモコン205等で再生選択されているチャンネルのコンテンツデータであり、複数のリングバッファ領域から再生選択されているチャンネルのリングバッファ領域から順次データが取り出されて再生される(ステップS151)。
In addition, the
ステップS110,S121,S130,S140,S151の処理が終了したとき、或いはステップS105において、上流の装置からコンテンツパケットを受信していないと判定(ステップS105:NO)したとき、制御部213は、自端末装置2の電源がOFFにされたか否かを判定する(ステップS160)。自端末装置2の電源がOFFにされていないと判定すると(S160:NO)、ステップS101からの処理を繰り返し、自端末装置2の電源がOFFされたと判定すると(S160:YES)、処理を終了する。
When the processes of steps S110, S121, S130, S140, and S151 are completed, or when it is determined in step S105 that a content packet has not been received from an upstream device (step S105: NO), the
次に、S110におけるチャンネル切替え処理について図16を参照して具体的に説明する。 Next, the channel switching process in S110 will be specifically described with reference to FIG.
まず、制御部213は、再生中のチャンネルのリングバッファ領域(ここで、このリングバッファ領域を「リングバッファ(1)」とする。)のバッファ容量の状態を非再生状態、すなわち待機状態に変更する(ステップS200)。
First, the
次に、制御部213は、要求のあった切替え先のチャンネル(以下、「要求チャンネル」と呼ぶ。)に関する情報が接続プールに存在するか否かを判定する。すなわち、第1記憶部202の接続プール情報領域に要求チャンネルに関する情報があるか否かを判定する。言い換えれば、制御部213は、要求のあった要求チャンネルに対応するリングバッファ領域が第1記憶部202のリングバッファ設定可能領域226に存在するのか否かを判定するのである(ステップS201)。
Next, the
ステップS201において、要求チャンネルに関する情報が接続プールに存在すると判定すると(ステップS201:YES)、制御部213は、要求チャンネル用のリングバッファ領域(以下、「リングバッファ(2)」とする。)のバッファ容量を再生状況に応じて計算し、その結果に基づいて、第1記憶部202に設定したリングバッファ(2)のバッファ容量を更新する(ステップS202)。
If it is determined in step S201 that information related to the requested channel exists in the connection pool (step S201: YES), the
次に、制御部213は、要求チャンネルに関するリングバッファ(2)の選択時刻を更新する。すなわち、上述の再生状況履歴テーブルにリングバッファ(2)の選択時刻を登録して、再生状況履歴テーブルを更新する(ステップS203)。
Next, the
ステップS201において、要求チャンネルに関する情報が接続プールに存在しないと判定すると(ステップS201:NO)、制御部213は、要求チャンネル用のリングバッファ(2)のバッファ容量を再生状況に応じて計算する(ステップS204)。すなわち、要求チャンネルに関するリングバッファ(2)を、そのバッファ容量が再生状況に応じて計算したバッファ容量となるように、リングバッファ(2)を第1記憶部202に設定する(ステップS205)。その後、制御部213は、リングバッファ(2)を接続プールへ登録する(ステップS205)。
If it is determined in step S201 that information related to the requested channel does not exist in the connection pool (step S201: NO), the
次に、制御部213は、接続プールの登録数、すなわち第1記憶部202に設定されたリングバッファ領域の数が所定数の上限値に達しているか否かを判定する(ステップS206)。
Next, the
ステップS206において、接続プールの登録数が上限値に達していると判定すると(ステップS206:YES)、制御部213は、接続プール内の最古の登録情報を削除する(ステップS207)。ここで、「接続プール内の最古の登録情報」には、接続プール内の登録情報のうちその登録が最も古い登録情報のほか、接続プール内の登録情報のうち再生されていない期間が最も長い登録情報や、接続プール内の登録情報のうち再生された時間が最も古い登録情報などがある。以下、「接続プール内の最古の登録情報」は、接続プール内の登録情報のうちその登録が最も古い登録情報であるとして説明する。なお、既に要求チャンネルに接続しているときには、この要求チャンネルに対応するリングバッファ領域が第1記憶部202に設定されているため、ステップS206,S207の処理は行われずに、ステップS208の処理に移行する。すなわち、要求チャンネルに対応するリングバッファ領域が存在しない場合に、ステップS206,S207の処理を行うのである。
If it is determined in step S206 that the number of registered connection pools has reached the upper limit (step S206: YES), the
ここで、ステップS207における登録情報の削除とは、削除する登録情報に対応するチャンネルの階層構造から脱退し、対応するリングバッファ領域を第1記憶部202から削除することをいう。すなわち、制御部213は、削除する登録情報に対応するチャンネルに関するコンテンツデータの受信を停止し、このチャンネルの階層構造から脱退し、さらに、このように脱退するチャンネルに対応するリングバッファ領域を第1記憶部202から削除するのである。
Here, the deletion of the registration information in step S207 means withdrawal from the channel hierarchical structure corresponding to the registration information to be deleted and deletion of the corresponding ring buffer area from the
ステップS206において、接続プールの登録数が上限値に達していないと判定(ステップS206:NO)された場合、或いはステップS207の処理が終了した場合、制御部213は、切替え要求のあった要求チャンネルに接続するために、接続管理装置3に対して、接続先候補の通知を要求する。
When it is determined in step S206 that the number of registered connection pools has not reached the upper limit (step S206: NO), or when the process of step S207 is completed, the
また、制御部213は、要求チャンネルの情報を含む接続先紹介要求に加え、要求チャンネル用に設定するリングバッファ領域のバッファ容量を接続管理装置へ通知する。その後、制御部213は、接続管理装置3から通知される接続先候補を受信する(ステップS208)。
Further, the
次に、制御部213は、ステップS208において接続管理装置3から受信した接続先候補である上流の装置に接続を要求する。その後、接続先候補との接続が確立する。これによって要求チャンネルの階層構造(トポロジー)に参加する(ステップS209)。
Next, the
このように接続先候補との接続が確立すると、制御部213は、要求チャンネルの階層構造に参加した旨、すなわちトポロジー参加報告を接続管理装置3へ通知する(ステップS210)。このトポロジー参加報告には、自端末装置2の所在情報の他、要求チャンネル用として設定するリングバッファ(2)のバッファ容量が含まれる。
When the connection with the connection destination candidate is established in this way, the
その後、制御部213は、要求チャンネルのリングバッファ(2)を再生可能な状態とする(ステップS211)。なお、既に要求チャンネルに接続しているときには、このリングバッファ(2)は第1記憶部202に設定されているため、このステップS208〜S211の処理は行われない。
Thereafter, the
その後、制御部213は、接続した接続先候補からコンテンツデータを受信し順次リングバッファ(2)に蓄積し、このように蓄積したコンテンツデータの再生時刻に応じて、コンテンツデータを順次再生する。
Thereafter, the
次に、制御部213は、再生状況履歴テーブルのリングバッファ(2)についてのチャンネルの選択回数を1だけインクリメントして、再生状況履歴テーブルを更新する(ステップS212)。このステップS212の処理が終了すると、S110のチャンネル切替え処理が終了する。
Next, the
以上のように、チャンネル切替え処理では、切替え先チャンネルが接続プールで管理していないチャンネル(すなわち、接続状態でなく対応するリングバッファ領域がないチャンネル)であるとき、接続プールで管理しているチャンネルの登録数が所定数の上限値となっているとき、制御部213によって、接続プール内の最古の登録情報を削除されるため、リングバッファ設定可能領域226が無制限に拡大することがなく、しかも、接続しているチャンネルのうち、使用される可能性が低いチャンネルの接続を切断するため、リングバッファ領域を効率的に使用することができる。
As described above, in the channel switching process, when the switching destination channel is a channel that is not managed in the connection pool (that is, a channel that is not connected and does not have a corresponding ring buffer area), the channel that is managed in the connection pool Since the oldest registration information in the connection pool is deleted by the
次に、S130における接続変更処理について図17を参照して具体的に説明する。 Next, the connection change process in S130 will be specifically described with reference to FIG.
まず、制御部213は、待機中チャンネルに関して、それぞれ自端末装置2の上流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する(ステップS300)。このバッファ容量の取得は、制御部213が上流にある端末装置2に問い合わせることによって、上流の端末装置2から通知してもらう形式をとる。
First, the
次に、制御部213は、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファ領域のバッファ容量よりも大きいか否かを判定する(ステップS301)。
Next, the
ステップS301において、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファ領域のバッファ容量よりも大きいと判定すると(ステップS301:YES)、制御部213は、待機中チャンネルについての接続先紹介要求を接続管理装置3へ送信する。このとき、制御部213は、リングバッファ(3)のバッファ容量も合わせて接続管理装置3へ送信する(ステップS302)。
If it is determined in step S301 that the buffer capacity of the ring buffer (3) of the standby channel is larger than the buffer capacity of the ring buffer area of the upstream terminal device 2 (step S301: YES), the
その後、制御部213は、接続管理装置3から受信した接続先候補である上流の装置に接続を要求する。その後、接続先候補との接続が確立する。これによってチャンネルの階層構造(トポロジー)に再参加する(ステップS303)。
Thereafter, the
このように接続先候補との接続が確立すると、制御部213は、要求チャンネルの階層構造に参加した旨、すなわちトポロジー参加報告を接続管理装置3へ通知する(ステップS304)。このトポロジー参加報告には、自端末装置2の所在情報の他、リングバッファ(3)のバッファ容量が含まれる。
When the connection with the connection destination candidate is established in this way, the
ステップS304の処理が終了した後、或いはステップS301において、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファ領域のバッファ容量よりも大きくないと判定すると(ステップS301:NO)、次のステップS305の処理が行われる。 After the process of step S304 is completed, or when it is determined in step S301 that the buffer capacity of the ring buffer (3) of the standby channel is not larger than the buffer capacity of the ring buffer area of the upstream terminal device 2 (step S301: NO), the process of the next step S305 is performed.
すなわち、制御部213は、接続している各チャンネルに関して、それぞれ自端末装置2の下流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する(ステップS305)。このバッファ容量の取得は、制御部213が下流にある端末装置2に問い合わせることによって、下流の端末装置2から通知してもらう形式をとる。
That is, the
次に、制御部213は、待機中チャンネルのリングバッファ(3)のバッファ容量がこの待機中チャンネルにおける自端末装置2の下流の端末装置2のリングバッファ領域のバッファ容量よりも小さいか否かを判定する(ステップS306)。
Next, the
そして、リングバッファ(3)のバッファ容量が下流の端末装置2のリングバッファ領域のバッファ容量よりも小さいと判定すると(ステップS306:YES)、制御部213は、この待機中チャンネルについての接続先紹介要求を接続管理装置3へ送信する。このとき、制御部213は、リングバッファ(3)のバッファ容量も合わせて接続管理装置3へ送信する(ステップS307)。
When it is determined that the buffer capacity of the ring buffer (3) is smaller than the buffer capacity of the ring buffer area of the downstream terminal device 2 (step S306: YES), the
その後、接続管理装置3から通知される接続先候補を受信すると、制御部213は、ステップS307において接続管理装置3から受信した接続先候補である上流の装置に接続を要求する。その後、接続先候補との接続が確立する。これによって階層構造(トポロジー)に再参加する(ステップS308)。
Thereafter, when the connection destination candidate notified from the
このように接続先候補との接続が確立すると、制御部213は、要求チャンネルの階層構造に参加した旨、すなわちトポロジー参加報告を接続管理装置3へ通知する(ステップS309)。このトポロジー参加報告には、自端末装置2の所在情報の他、リングバッファ(3)のバッファ容量が含まれる。
When the connection with the connection destination candidate is established in this way, the
ステップS309の処理が終了した後、或いは、ステップS306にて待機中チャンネルのリングバッファ(3)のバッファ容量が下流の端末装置2のリングバッファ領域のバッファ容量よりも小さくないと判定すると(ステップS306:NO)、この接続変更処理が終了する。 After the process of step S309 is completed, or when it is determined in step S306 that the buffer capacity of the ring buffer (3) of the standby channel is not smaller than the buffer capacity of the ring buffer area of the downstream terminal device 2 (step S306). : NO), this connection change process is terminated.
以上のように、接続変更処理では、待機中チャンネルのリングバッファ(3)のバッファ容量が、待機中チャンネルにおける上流の端末装置2のリングバッファ領域のバッファ容量よりも大きいときには、自端末装置2をさらに上流の端末装置2に再接続する。すなわち、階層構造の上流から下流にかけてその階層構造を構成する端末装置2のリングバッファ領域のバッファ容量が小さくなるように階層構造が動的に変更されることになる。
As described above, in the connection change process, when the buffer capacity of the ring buffer (3) of the standby channel is larger than the buffer capacity of the ring buffer area of the upstream
同様に、待機中チャンネルのリングバッファ(3)のバッファ容量が待機中チャンネルにおける下流の端末装置2のリングバッファ領域のバッファ容量よりも小さいときには、自端末装置2をさらに下流の端末装置2に再接続する。すなわち、階層構造の上流から下流にかけてその階層構造を構成する端末装置2のリングバッファ領域のバッファ容量が小さくなるように階層構造が動的に変更されることになる。
Similarly, when the buffer capacity of the ring buffer (3) of the standby channel is smaller than the buffer capacity of the ring buffer area of the downstream
このように、第1実施形態では、階層構造の上流から下流にかけてその階層構造を構成する端末装置2のリングバッファ領域のバッファ容量が小さくなるように階層構造が動的に変更されることになり、各装置に設定されたリングバッファ領域の使用効率を向上させつつ、損失パケットの補完処理を適切に行うことができる。
As described above, in the first embodiment, the hierarchical structure is dynamically changed so that the buffer capacity of the ring buffer area of the
なお、端末装置2において、リングバッファ領域の更新契機やリングバッファ容量問い合わせ契機をそれぞれ一つの契機として説明したがこれに限られるものではない。たとえば、各チャンネル毎にリングバッファ領域の更新契機やリングバッファ容量問い合わせ契機をもうけるようにしてもよく、このようにすれば、より使用環境に適したリングバッファ領域の更新等を行うことができる。
In the
(接続管理装置3の処理フローの説明)
次に、接続管理装置3の更に具体的な動作について、図18を参照して説明する。図18は接続管理装置3における処理全体を示すフローチャートである。
(Description of processing flow of connection management device 3)
Next, a more specific operation of the
接続管理装置3の電源がONになると、接続管理装置3は、各プログラム320〜324の初期化を行い、各プログラム320〜324をCPU301による実行状態とし、制御部315としての機能を動作させる(ステップS400)。
When the power of the
制御部315は、まず、端末装置2からチャンネルへの参加要求を受信したか否かを判定する(ステップS401)。
First, the
ステップS401において、端末装置2からチャンネルへの参加要求を受信したと判定すると(ステップS401:YES)、制御部315は、受信した参加要求に含まれる端末装置2の所在情報を端末管理データベース314へ登録する(ステップS405)。
If it is determined in step S401 that a request for participation in the channel has been received from the terminal device 2 (step S401: YES), the
一方、ステップS401において、端末装置2からチャンネルへの参加要求を受信していないと判定すると(ステップS401:NO)、制御部315は、コンテンツ配信装置1からの登録要求を受信したか否かを判定する(ステップS402)。
On the other hand, if it is determined in step S401 that a request to join a channel has not been received from the terminal device 2 (step S401: NO), the
ステップS402において、コンテンツ配信装置1からの登録要求を受信したと判定すると(ステップS402:YES)、制御部315は、受信した登録要求に含まれるコンテンツ配信装置1の所在情報を端末管理データベース314へ登録する(ステップS406)。
If it is determined in step S402 that a registration request from the
次に、制御部315は、新しいチャンネルの情報をトポロジーデータベース313に登録する。すなわち、トポロジーデータベース313に新しいチャンネルのトポロジーテーブルを生成するのである(ステップS407)。
Next, the
ステップS402において、コンテンツ配信装置1からの登録要求を受信していないと判定すると(ステップS402:NO)、制御部315は、端末装置2から接続先紹介要求を受信したか否かを判定する(ステップS403)。
If it is determined in step S402 that the registration request from the
ステップS403において、端末装置2から接続先紹介要求を受信したと判定すると(ステップS403:YES)、制御部315は、トポロジーデータベース313から接続先候補となる端末装置2を選択する(ステップS408)。
If it is determined in step S403 that a connection destination introduction request has been received from the terminal device 2 (step S403: YES), the
ここで、接続先候補の選択は次のように行われる。すなわち、制御部315は、端末装置2から送信される接続先紹介要求に含まれる接続先チャンネルの情報と、端末装置2がこの接続先チャンネル用として割り当てたリングバッファ領域のバッファ容量(以下、「通知バッファ容量」と呼ぶ。)の情報とを取り出す。そして、この接続先チャンネルのトポロジーテーブルをトポロジーデータベース313から取り出し、通知バッファ容量に基づいて、このトポロジーテーブルに登録している端末装置2のうち、接続先チャンネルにおける階層構造の上流から下流にかけて、その階層構造を構成する端末装置2のリングバッファ領域のバッファ容量が、次第に小さくなるような階層構造とするのに適した端末装置2を接続先候補として選択する。
Here, selection of connection destination candidates is performed as follows. That is, the
接続管理装置3の制御部315は、このように選択した接続先候補を、接続先紹介要求を行った端末装置2へ返信して通知する(ステップS409)。
The
さらに、制御部315は、ステップS409において接続先候補を通知した端末装置2の所在情報と共に通知バッファ容量をトポロジーデータベース313に登録する(ステップS410)。
Further, the
ステップS403において、端末装置2から接続先紹介要求を受信していないと判定すると(ステップS403:NO)、制御部315は、端末装置2からトポロジー参加報告があったか否かを判定する(ステップS404)。
If it is determined in step S403 that a connection destination introduction request has not been received from the terminal device 2 (step S403: NO), the
ステップS404において、端末装置2からトポロジー参加報告があったと判定すると(ステップS404:YES)、制御部315は、このトポロジー参加報告に含まれる端末装置の所在情報と通知バッファ容量とを取り出し、トポロジーデータベース313の更新処理を行う(ステップS411)。すなわち、制御部315は、トポロジーの変動をトポロジーデータベース313へ登録する。
If it is determined in step S404 that there has been a topology participation report from the terminal device 2 (step S404: YES), the
ステップS404において端末装置2からトポロジー参加報告がないと判定したとき(ステップS404:NO)、制御部315は、端末装置2からリングバッファ領域のバッファ容量の報告があったか否かを判定する(ステップS405)。
When it is determined in step S404 that there is no topology participation report from the terminal device 2 (step S404: NO), the
ステップS405において、端末装置2からリングバッファ領域のバッファ容量の報告があったと判定すると(ステップS405:YES)、制御部315は、リングバッファ領域のバッファ容量を報告した端末装置2に対応する情報として、トポロジーデータベース313に登録する(ステップS412)。すなわち、端末装置2からのリングバッファ容量通知に応じてトポロジーデータベース313のトポロジーテーブルを更新するのである。
If it is determined in step S405 that the
ステップS405,S407,S410,S411,S412の処理が終了したとき、或いはステップS405において端末装置2からリングバッファ領域のバッファ容量の報告がないと判定したとき(ステップS405:NO)、制御部315は、接続管理装置3のサービス終了の操作が行われたか否かを判定する(ステップS413)。サービスの終了操作が行われていないと判定すると(S413:NO)、ステップS401からの処理を繰り返し、接続管理装置3のサービス終了の操作が行われたと判定すると(S413:YES)、処理を終了する。
When the processes of steps S405, S407, S410, S411, and S412 are completed, or when it is determined in step S405 that there is no report of the buffer capacity of the ring buffer area from the terminal device 2 (step S405: NO), the
(第2実施形態)
次に、本発明の第2実施形態について説明する。第2実施形態では、端末装置2における再接続動作を接続管理装置3に依存せずに行うものである。第2実施形態においては、第1実施形態と異なる部分のみ説明し、その他同様の部分については、説明を省略する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described. In the second embodiment, the reconnection operation in the
第2実施形態の端末装置2は、再接続動作を接続管理装置3に依存せずに行うものであり、第1実施形態における接続変更処理動作のみ異なるため、この接続変更処理動作について、図19及び図20を参照して説明する。
The
図19に示すように、端末装置2は、所定のホップ数内となる近隣の他の端末装置2の情報を第1記憶部202における近隣端末情報記憶領域に記憶しており、この情報に基づいて、再接続処理を行うように構成している。
As illustrated in FIG. 19, the
ここで、所定のホップ数は、たとえば、2ホップや3ホップである。また、ホップ数とは端末装置2の送信するパケットが受信されるまでに通過するルータの数を意味する。
Here, the predetermined number of hops is 2 hops or 3 hops, for example. The number of hops means the number of routers that pass until a packet transmitted by the
また、他の端末装置2の情報には、所在情報が含まれており、これらの情報に基づいて、接続管理装置3に頼らずに再接続処理を行うようにしている。
Further, the location information is included in the information of the other
以下、図20のフローチャートを用いて、第2実施形態における接続変更処理について具体的に説明する。 Hereinafter, the connection change process in the second embodiment will be described in detail with reference to the flowchart of FIG.
まず、制御部213は、待機中チャンネルに関して、それぞれ自端末装置2の上流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する(ステップS500)。このバッファ容量の取得は、制御部213が上流にある端末装置2に問い合わせることによって、上流の端末装置2から通知してもらう形式をとる。
First, the
まず、制御部213は、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファ領域のバッファ容量よりも大きいか否かを判定する(ステップS501)。
First, the
ステップS501において、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファ領域のバッファ容量よりも大きいと判定すると(ステップS501:YES)、制御部213は、近隣端末情報記憶領域に記憶した近隣の端末装置2の情報に基づいて、現在自端末装置2の上流装置となっている端末装置の上流装置(上流ノード)を選択する。すなわち、階層構造における自端末装置2の接続位置を一層上段に上げることができる端末装置を選択するのである。そして、このように選択した端末装置2に接続を要求してこの端末装置2との接続を確立する。これによって再生中チャンネルの階層構造(トポロジー)の参加位置を自律的に変更する(ステップS502)。
If it is determined in step S501 that the buffer capacity of the ring buffer (3) of the standby channel is larger than the buffer capacity of the ring buffer area of the upstream terminal device 2 (step S501: YES), the
このように接続先候補との接続が確立すると、制御部213は、要求チャンネルの階層構造に参加した旨、すなわちトポロジー参加報告を接続管理装置3へ通知する(ステップS503)。このトポロジー参加報告には、自端末装置2の所在情報の他、リングバッファ(3)のバッファ容量が含まれる。
When the connection with the connection destination candidate is established in this way, the
ステップS503の処理が終了した後、或いはステップS501において、待機中チャンネルのリングバッファ(3)のバッファ容量が上流の端末装置2のリングバッファのバッファ容量よりも大きくないと判定すると(ステップS501:NO)、次のステップS504の処理が行われる。 After the processing of step S503 is completed or when it is determined in step S501 that the buffer capacity of the ring buffer (3) of the standby channel is not larger than the buffer capacity of the ring buffer of the upstream terminal device 2 (step S501: NO) ), The next step S504 is performed.
すなわち、制御部213は、接続している各チャンネルに関して、それぞれ自端末装置2の下流にある端末装置2が有するリングバッファ領域のバッファ容量の情報を取得する(ステップS504)。このバッファ容量の取得は、制御部213が下流にある端末装置2に問い合わせることによって、下流の端末装置2から通知してもらう形式をとる。
That is, the
次に、制御部213は、ステップS505において、待機中チャンネルのリングバッファ(3)のバッファ容量がこの待機中チャンネルにおける自端末装置2の下流の端末装置2のリングバッファ領域のバッファ容量よりも小さいか否かを判定する。
Next, in step S505, the
そして、リングバッファ(3)のバッファ容量が下流の端末装置2のリングバッファ領域のバッファ容量よりも小さいと判定すると(ステップS505:YES)、制御部213は、近隣端末情報記憶領域に記憶した近隣の端末装置2の情報に基づいて、現在自端末装置2の下流装置となっている端末装置を選択する。すなわち、階層構造における自端末装置2の接続位置を一層下段に下げることができる端末装置を選択するのである。そして、このように選択した端末装置2に接続を要求してこの端末装置2との接続を確立する。これによって再生中チャンネルの階層構造(トポロジー)の参加位置を自律的に変更する(ステップS506)。
If it is determined that the buffer capacity of the ring buffer (3) is smaller than the buffer capacity of the ring buffer area of the downstream terminal device 2 (step S505: YES), the
このように接続先候補との接続が確立すると、制御部213は、トポロジー参加報告を接続管理装置3へ通知する(ステップS507)。このトポロジー参加報告には、自端末装置2の所在情報の他、リングバッファ(3)のバッファ容量が含まれる。
When the connection with the connection destination candidate is established in this way, the
ステップS507の処理が終了した後、或いは、ステップS505にて待機中チャンネルのリングバッファ(3)のバッファ容量が下流の端末装置2のリングバッファのバッファ容量よりも小さくないと判定すると(ステップS505:NO)、この接続変更処理が終了する。 After the processing of step S507 is completed, or when it is determined in step S505 that the buffer capacity of the ring buffer (3) of the standby channel is not smaller than the buffer capacity of the ring buffer of the downstream terminal device 2 (step S505: NO), this connection change process is terminated.
以上のように、端末装置2は、各チャンネル毎に、階層構造の上流から下流にかけてその階層構造を構成する端末装置2のリングバッファのバッファ容量が小さくなるように階層構造を自律的に構築するようにしている。
As described above, the
以上、本発明の実施の形態のうちのいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の開示]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。 As described above, some of the embodiments of the present invention have been described in detail with reference to the drawings. However, these are merely examples, and the knowledge of those skilled in the art including the aspects described in the above [Disclosure of the Invention] section. It is possible to implement the present invention in other forms in which various modifications and improvements are made based on the above.
S コンテンツ配信システム
1 コンテンツ配信装置
2 端末装置
3 接続管理装置
213 端末装置の制御部
226 端末装置のリングバッファ設定可能領域
313 接続管理装置のトポロジーデータベース
315 接続管理装置の制御部
S
Claims (20)
前記コンテンツ配信装置は、
前記コンテンツデータを配信する配信手段を備え、
前記接続管理装置は、
前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶する接続状態情報記憶手段と、
前記端末装置から接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択する接続先候補選択手段と
前記接続先候補選択手段によって選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ通知する通知手段と、を備え、
前記端末装置は、
記憶手段と、
前記チャンネルを選択するためのチャンネル選択手段と、
前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に接続する接続手段と、
前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するリングバッファ設定手段と、
前記チャンネル選択手段によって選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生する再生手段と、
前記再生手段による前記チャンネル毎のコンテンツデータの再生状況を検出するコンテンツデータ再生状況検出手段と、
他の前記端末装置から前記コンテンツデータの中継依頼を受信する中継依頼受信手段と、
他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送する転送手段と、を備え、
前記端末装置のリングバッファ設定手段は、
前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータの再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定する
ことを特徴とするコンテンツデータ配信システム。 One or more content distribution devices that stream-distribute content data on a plurality of channels, a plurality of terminal devices that receive and reproduce the content data, and a plurality of terminal devices that have the content distribution device as a vertex for each channel A connection management device that manages the logical connection in multiple layers in a structure, and the content data streamed from the content distribution device is sequentially downstream of the hierarchical structure by the relay function of the terminal device for each channel In the content data distribution system that is relayed to and can reproduce the content data by the plurality of terminal devices,
The content distribution device includes:
A distribution means for distributing the content data;
The connection management device includes:
Connection state information storage means for storing connection state information of the terminal device constituting the hierarchical structure for each channel;
When a connection destination introduction request is received from the terminal device, the connection destination candidate selection unit that selects a connection destination candidate from the connection state information stored in the connection state information storage unit and the connection destination candidate selection unit are selected. Notification means for notifying the connection destination candidate to the terminal device that has transmitted the connection destination introduction request,
The terminal device
Storage means;
Channel selection means for selecting the channel;
A connection means for transmitting the connection destination introduction request for the channel selected by the channel selection means to the connection management device, and then connecting to the connection destination candidate notified from the connection management device;
A ring buffer that sets a ring buffer area for receiving and temporarily storing content data of a channel selected by the channel selection means from the connection destination candidate in the storage means for each channel selected by the channel selection means Setting means;
Reproduction means for taking out and reproducing the content data of the latest channel selected by the channel selection means from the ring buffer area corresponding to the channel;
Content data reproduction status detection means for detecting the reproduction status of the content data for each channel by the reproduction means;
Relay request receiving means for receiving a relay request for the content data from the other terminal device;
Transfer means for transferring the content data stored in the ring buffer area to the other terminal device,
The ring buffer setting means of the terminal device includes:
The content data distribution system, wherein the ring buffer area having a buffer capacity corresponding to a reproduction status of content data of a channel selected by the channel selection means is set in the storage means.
前記チャンネル選択手段によって選択されたチャンネルに対応するリングバッファ領域のバッファ容量を含む接続先紹介要求を前記接続先紹介要求として送信し、
前記接続管理装置は、
前記端末装置のリングバッファ領域のバッファ容量を受信して前記接続状態情報記憶手段に記憶するバッファ容量受信手段を備え、
前記接続管理装置の接続先候補選択手段は、
前記端末装置から前記リングバッファ領域のバッファ容量を含む接続先紹介要求を受信したとき、当該接続先紹介要求に対応するチャンネルの階層構造において、当該階層構造を構成する前記端末装置の前記リングバッファ領域のバッファ容量が前記階層構造の上流から下流にかけて小さくなるように、前記接続先紹介要求に対する接続先候補を、前記接続状態情報記憶手段に記憶された前記接続状態情報から選択することを特徴とする請求項1に記載のコンテンツデータ配信システム。 The connection means of the terminal device is:
A connection destination introduction request including a buffer capacity of a ring buffer area corresponding to the channel selected by the channel selection means is transmitted as the connection destination introduction request;
The connection management device includes:
Buffer capacity receiving means for receiving the buffer capacity of the ring buffer area of the terminal device and storing it in the connection state information storage means;
The connection destination candidate selection means of the connection management device includes:
When receiving a connection destination introduction request including the buffer capacity of the ring buffer area from the terminal device, in the hierarchical structure of the channel corresponding to the connection destination introduction request, the ring buffer area of the terminal device constituting the hierarchical structure The connection destination candidate for the connection destination introduction request is selected from the connection state information stored in the connection state information storage means so that the buffer capacity of the connection destination becomes smaller from upstream to downstream of the hierarchical structure. The content data distribution system according to claim 1.
前記コンテンツ配信装置は、
前記コンテンツデータを配信するステップを有し、
前記接続管理装置は、
前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶するステップと、
前記端末装置から接続先紹介要求を受信したとき、前記記憶された接続状態情報から接続先候補を選択するステップと、
前記選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ通知するステップと、を有し、
前記端末装置は、
前記チャンネルの選択を検出するステップと、
前記選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信するステップと、
前記接続管理装置から通知された前記接続先候補に接続するステップと、
前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するステップと、
前記選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生するステップと、
前記チャンネル毎のコンテンツデータの再生状況を検出するステップと、
他の前記端末装置から前記コンテンツデータの中継依頼を受信するステップと、
他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送するステップと、
前記選択されるチャンネルのコンテンツデータ再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定するステップを有する
ことを特徴とするコンテンツデータ配信方法。 One or more content distribution devices that stream-distribute content data on a plurality of channels, a plurality of terminal devices that receive and reproduce the content data, and a plurality of terminal devices that have the content distribution device as a vertex for each channel A connection management device that manages the logical connection in a multi-layer structure, and the content data streamed from the content distribution device is sequentially downstream of the hierarchical structure by the relay function of the terminal device for each channel. In the content data distribution method of the content data distribution system that is relayed to and the content data can be reproduced by the plurality of terminal devices,
The content distribution device includes:
Delivering the content data;
The connection management device includes:
Storing connection state information of the terminal device constituting the hierarchical structure for each channel;
When receiving a connection destination introduction request from the terminal device, selecting connection destination candidates from the stored connection state information;
Notifying the selected connection destination candidate to the terminal device that has transmitted the connection destination introduction request,
The terminal device
Detecting the selection of the channel;
Transmitting the connection destination introduction request for the selected channel to the connection management device;
Connecting to the connection destination candidate notified from the connection management device;
Setting a ring buffer area in which content data of a channel selected by the channel selection unit is received from the connection destination candidate and temporarily stored in the storage unit for each channel selected by the channel selection unit; ,
Retrieving the content data of the selected latest channel from the ring buffer area corresponding to the channel and reproducing the content data;
Detecting the reproduction status of the content data for each channel;
Receiving a relay request for the content data from another terminal device;
Transferring the content data stored in the ring buffer area to the other terminal device;
A content data distribution method comprising: setting, in the storage unit, the ring buffer area having a buffer capacity corresponding to the content data reproduction status of the selected channel.
記憶手段と、
前記チャンネルを選択するためのチャンネル選択手段と、
前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に接続する接続手段と、
前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータを前記接続先候補から受信して一時的に蓄積するリングバッファ領域を、前記チャンネル選択手段によって選択されるチャンネルごとに前記記憶手段に設定するリングバッファ設定手段と、
前記チャンネル選択手段によって選択された最新のチャンネルのコンテンツデータを当該チャンネルに対応する前記リングバッファ領域から取り出して再生する再生手段と、
前記再生手段による前記チャンネル毎のコンテンツデータの再生状況を検出するコンテンツデータ再生状況検出手段と、
他の前記端末装置から前記コンテンツデータの中継依頼を受信する中継依頼受信手段と、
他の前記端末装置へ前記リングバッファ領域に蓄積した前記コンテンツデータを転送する転送手段と、を備え、
前記リングバッファ設定手段は、
前記チャンネル選択手段によって選択されるチャンネルのコンテンツデータの再生状況に応じたバッファ容量を有する前記リングバッファ領域を、前記記憶手段に設定する
ことを特徴とする端末装置。 One or more content distribution apparatuses for streaming distribution of content data on a plurality of channels, a plurality of terminal apparatuses for receiving and reproducing the content data, and a plurality of terminal apparatuses for each channel with the content distribution apparatus at the top A connection management device that manages the logical connection in a multi-layer structure, and the content data streamed from the content distribution device is sequentially downstream of the hierarchical structure by the relay function of the terminal device for each channel. In the terminal device in the content data distribution system that is relayed to the content data and can be reproduced by the plurality of terminal devices,
Storage means;
Channel selection means for selecting the channel;
A connection means for transmitting the connection destination introduction request for the channel selected by the channel selection means to the connection management device, and then connecting to the connection destination candidate notified from the connection management device;
A ring buffer that sets a ring buffer area for receiving and temporarily storing content data of a channel selected by the channel selection means from the connection destination candidate in the storage means for each channel selected by the channel selection means Setting means;
Reproduction means for taking out and reproducing the content data of the latest channel selected by the channel selection means from the ring buffer area corresponding to the channel;
Content data reproduction status detection means for detecting the reproduction status of the content data for each channel by the reproduction means;
Relay request receiving means for receiving a relay request for the content data from the other terminal device;
Transfer means for transferring the content data stored in the ring buffer area to the other terminal device,
The ring buffer setting means includes:
The terminal device characterized in that the ring buffer area having a buffer capacity corresponding to the reproduction status of the content data of the channel selected by the channel selection means is set in the storage means.
ことを特徴とする請求項4に記載の端末装置。 The terminal device according to claim 4, wherein the condition relating to the reproduction state of the content data is the number of reproductions of the content data in each channel.
ことを特徴とする請求項4に記載の端末装置。 The terminal device according to claim 4, wherein the condition regarding the reproduction state of the content data is a reproduction time of the content data in each channel.
所定期間毎に、前記チャンネル毎のコンテンツデータの再生状況に応じたバッファ容量となるように前記リングバッファ領域を更新する
ことを特徴とする請求項4から6のいずれか1項に記載の端末装置。 The ring buffer setting means includes:
The terminal device according to any one of claims 4 to 6, wherein the ring buffer area is updated so as to have a buffer capacity corresponding to a reproduction status of the content data for each channel for each predetermined period. .
前記チャンネル選択手段によって選択されたチャンネルの接続先候補に前記接続手段よって接続したときに、前記記憶手段に当該選択したチャンネルに対応するリングバッファ領域が存在せず、かつ前記記憶手段に設定した前記リングバッファ領域の数が所定数に達していると判定すると、複数の前記リングバッファ領域のうち、一つのリングバッファ領域を前記記憶手段から削除し、前記記憶手段に前記選択したチャンネルに対応するリングバッファ領域を設定する
ことを特徴とする請求項4から7のいずれか1項に記載の端末装置。 The ring buffer setting means includes:
When the connection means is connected to the connection destination candidate of the channel selected by the channel selection means, there is no ring buffer area corresponding to the selected channel in the storage means, and the storage means set in the storage means When it is determined that the number of ring buffer areas has reached a predetermined number, one ring buffer area is deleted from the storage means among the plurality of ring buffer areas, and the ring corresponding to the selected channel is stored in the storage means. The terminal area according to claim 4, wherein a buffer area is set.
前記記憶手段に設定されたリングバッファ領域のうち、前記再生手段によって再生されていない期間が最も長いリングバッファ領域を前記記憶手段から削除し、前記記憶手段に前記選択したチャンネルに対応するリングバッファ領域を設定する
ことを特徴とする請求項8に記載の端末装置。 The ring buffer setting means includes:
Among the ring buffer areas set in the storage means, the ring buffer area that has the longest period not being played back by the playback means is deleted from the storage means, and the ring buffer area corresponding to the selected channel is stored in the storage means The terminal device according to claim 8, wherein: is set.
ことを特徴とする請求項4〜9のいずれか1項に記載の端末装置。 The terminal device according to any one of claims 4 to 9, further comprising a buffer capacity notification unit that notifies the connection management apparatus of a buffer capacity of the ring buffer area at predetermined intervals.
ことを特徴とする請求項4〜9のいずれか1項に記載の端末装置。 A buffer that notifies the connection management device of the buffer capacity of the ring buffer area when the ring buffer area is set by the ring buffer setting means or when the buffer capacity of the ring buffer area is changed by the ring buffer setting means It has a capacity | capacitance notification means. The terminal device of any one of Claims 4-9 characterized by the above-mentioned.
ことを特徴とする請求項4〜11のいずれか1項に記載の端末装置。 When it is detected that the power supply of the own terminal device is cut off, the buffer capacities of the plurality of ring buffer areas set in the storage means are stored in a nonvolatile storage device, and the power supply of the own terminal device is supplied again The backup processing means for resetting the plurality of ring buffer areas in the storage means based on the buffer capacity stored in the non-volatile storage device is provided. The terminal device described in 1.
自端末装置が有する前記リングバッファ領域のバッファ容量と、前記上流の端末装置が有する前記リングバッファ領域の前記バッファ容量とを比較する比較手段と、
前記比較手段による比較の結果、自端末装置が有する前記リングバッファ領域のバッファ容量が前記上流にある端末装置が有する前記リングバッファ領域のバッファ容量よりも大きい場合に、前記上流の端末装置よりも前記階層構造上における上流に再接続する再接続手段と、を備えた
ことを特徴とする請求項4〜12のいずれか1項に記載の端末装置。 Upstream buffer capacity acquisition means for acquiring the buffer capacity of the ring buffer area of a terminal apparatus upstream of the terminal apparatus in the hierarchical structure;
Comparing means for comparing the buffer capacity of the ring buffer area of the terminal apparatus with the buffer capacity of the ring buffer area of the upstream terminal apparatus;
As a result of the comparison by the comparison means, when the buffer capacity of the ring buffer area of the terminal apparatus is larger than the buffer capacity of the ring buffer area of the upstream terminal apparatus, the upstream terminal apparatus The terminal device according to any one of claims 4 to 12, further comprising reconnection means for reconnecting upstream in a hierarchical structure.
前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を所定契機毎に前記接続管理装置へ問い合わせることにより、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を取得する
ことを特徴とする請求項13に記載の端末装置。 The upstream buffer capacity acquisition means includes
The buffer capacity of the ring buffer area of the upstream terminal apparatus is obtained by inquiring of the connection management apparatus at every predetermined time the buffer capacity of the ring buffer area of the upstream terminal apparatus. The terminal device according to claim 13.
前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を所定契機毎に前記上流の端末装置へ問い合わせることにより、前記上流の端末装置が有する前記リングバッファ領域のバッファ容量を取得する
ことを特徴とする請求項13に記載の端末装置。 The upstream buffer capacity acquisition means includes
Obtaining the buffer capacity of the ring buffer area possessed by the upstream terminal device by inquiring of the upstream terminal device the buffer capacity of the ring buffer area possessed by the upstream terminal device at predetermined intervals. The terminal device according to claim 13.
自端末装置が有する前記リングバッファ領域のバッファ容量と、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量とを比較する比較手段と、
前記比較手段による比較の結果、自端末装置が有する前記リングバッファ領域のバッファ容量が前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量よりも小さい場合に、下流の端末装置或いは前記下流の端末装置よりも前記階層構造上における下流に再接続する再接続手段と、を備えた
ことを特徴とする請求項4〜15のいずれか1項に記載の端末装置。 Downstream buffer capacity acquisition means for acquiring the buffer capacity of the ring buffer area of the terminal device downstream of the terminal device in the hierarchical structure;
Comparison means for comparing the buffer capacity of the ring buffer area of the terminal apparatus with the buffer capacity of the ring buffer area of the downstream terminal apparatus;
As a result of comparison by the comparison means, when the buffer capacity of the ring buffer area of the terminal apparatus is smaller than the buffer capacity of the ring buffer area of the downstream terminal apparatus, the downstream terminal apparatus or the downstream terminal apparatus The terminal device according to any one of claims 4 to 15, further comprising reconnection means for reconnecting downstream in the hierarchical structure with respect to the terminal device.
前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を所定契機毎に前記接続管理装置へ問い合わせることにより、前記下流の端末装置の前記バッファ容量を取得する
ことを特徴とする請求項16に記載の端末装置。 The downstream buffer capacity acquisition means includes
The buffer capacity of the downstream terminal device is acquired by inquiring the connection management device at every predetermined time about the buffer capacity of the ring buffer area of the downstream terminal device. The terminal device described.
前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を所定契機毎に前記下流の端末装置へ問い合わせることにより、前記下流の端末装置が有する前記リングバッファ領域の前記バッファ容量を取得する
ことを特徴とする請求項16に記載の端末装置。 The downstream buffer capacity acquisition means includes
Obtaining the buffer capacity of the ring buffer area of the downstream terminal device by inquiring of the buffer capacity of the ring buffer area of the downstream terminal device to the downstream terminal apparatus at predetermined intervals. The terminal device according to claim 16, characterized in that:
前記接続先紹介要求に関するチャンネルに対する前記リングバッファ領域のバッファ容量を含む接続先紹介要求を前記接続先紹介要求として送信する
ことを特徴とする請求項4〜18のいずれか1項に記載の端末装置。 The connecting means includes
The terminal device according to any one of claims 4 to 18, wherein a connection destination introduction request including a buffer capacity of the ring buffer area for a channel related to the connection destination introduction request is transmitted as the connection destination introduction request. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006096098A JP4605071B2 (en) | 2006-03-30 | 2006-03-30 | Content data distribution system, content data distribution method, terminal device, and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006096098A JP4605071B2 (en) | 2006-03-30 | 2006-03-30 | Content data distribution system, content data distribution method, terminal device, and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007274244A true JP2007274244A (en) | 2007-10-18 |
JP4605071B2 JP4605071B2 (en) | 2011-01-05 |
Family
ID=38676596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006096098A Expired - Fee Related JP4605071B2 (en) | 2006-03-30 | 2006-03-30 | Content data distribution system, content data distribution method, terminal device, and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4605071B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012004662A (en) * | 2010-06-14 | 2012-01-05 | Mitsubishi Electric Corp | Content reproduction device and method |
US8924586B2 (en) | 2009-04-22 | 2014-12-30 | Fujitsu Limited | Management device in distributing information, management method and medium |
JP2016134674A (en) * | 2015-01-16 | 2016-07-25 | Kddi株式会社 | Receiver, display method and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003309600A (en) * | 2002-04-17 | 2003-10-31 | Bios:Kk | Contents distribution/reproduction system and reproduction management system |
JP2004171411A (en) * | 2002-11-21 | 2004-06-17 | Hitachi Global Storage Technologies Netherlands Bv | Data storage device and management method of buffer memory |
JP2006033515A (en) * | 2004-07-16 | 2006-02-02 | Brother Ind Ltd | Connection state control apparatus, connection state control method, and connection state control program |
JP2007265172A (en) * | 2006-03-29 | 2007-10-11 | Brother Ind Ltd | Content data distribution system, content data distribution method, connection management device, terminal device, and its program |
-
2006
- 2006-03-30 JP JP2006096098A patent/JP4605071B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003309600A (en) * | 2002-04-17 | 2003-10-31 | Bios:Kk | Contents distribution/reproduction system and reproduction management system |
JP2004171411A (en) * | 2002-11-21 | 2004-06-17 | Hitachi Global Storage Technologies Netherlands Bv | Data storage device and management method of buffer memory |
JP2006033515A (en) * | 2004-07-16 | 2006-02-02 | Brother Ind Ltd | Connection state control apparatus, connection state control method, and connection state control program |
JP2007265172A (en) * | 2006-03-29 | 2007-10-11 | Brother Ind Ltd | Content data distribution system, content data distribution method, connection management device, terminal device, and its program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924586B2 (en) | 2009-04-22 | 2014-12-30 | Fujitsu Limited | Management device in distributing information, management method and medium |
JP2012004662A (en) * | 2010-06-14 | 2012-01-05 | Mitsubishi Electric Corp | Content reproduction device and method |
JP2016134674A (en) * | 2015-01-16 | 2016-07-25 | Kddi株式会社 | Receiver, display method and program |
Also Published As
Publication number | Publication date |
---|---|
JP4605071B2 (en) | 2011-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4950295B2 (en) | Distributed server network for providing triple play services to end users | |
US7773615B2 (en) | Connection state control device, connection state control method, and connection state controlling program | |
WO2008041421A1 (en) | Content distribution system, content distribution method, terminal device in the content distribution system, and recording medium containing its program | |
WO2006008885A1 (en) | Connection mode control device, connection mode control method, and connection mode control program | |
JPWO2008120374A1 (en) | Content distribution system | |
JP2009182629A (en) | Data providing system | |
JP4605071B2 (en) | Content data distribution system, content data distribution method, terminal device, and program thereof | |
US7805475B2 (en) | Contents distribution system, terminal apparatus, contents distribution method, and recording medium on which is recorded a program used therein | |
JP4604919B2 (en) | Content distribution system, content distribution method, connection management device, distribution device, terminal device, and program thereof | |
JP2007265172A (en) | Content data distribution system, content data distribution method, connection management device, terminal device, and its program | |
JP5272991B2 (en) | Information communication system, information communication method and program | |
JP4539598B2 (en) | CONTENT DATA DISTRIBUTION SYSTEM, CONTENT DATA DISTRIBUTION METHOD, TERMINAL DEVICE, AND OPERATION PROGRAM FOR THE TERMINAL DEVICE | |
JP4924389B2 (en) | TERMINAL DEVICE, INFORMATION PROCESSING PROGRAM, AND INFORMATION PROCESSING METHOD USED FOR INFORMATION DISTRIBUTION SYSTEM | |
JP4586723B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE USED FOR THE SAME, AND PROGRAM THEREOF | |
JP2007207013A (en) | Information processor and information sharing program | |
WO2003100679A1 (en) | Content distribution device and method | |
WO2007145078A1 (en) | Content delivery system, content delivery method, terminal device and recording medium with its program recorded therein | |
JP4894838B2 (en) | Karaoke network system and karaoke device | |
US7983193B2 (en) | Information distribution system, terminal apparatus used in same system and recording medium on which is recorded a program, as well as information processing method | |
JP2008085678A (en) | Content distribution system, content distribution method, terminal device in the content distribution system and program thereof | |
JP5359728B2 (en) | Karaoke system, karaoke device, node device, karaoke program, node program, and karaoke data transmission method | |
JP4635966B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF | |
JP2008293196A (en) | Information distribution system, terminal apparatus used for the system, information processing program thereof, and information processing method | |
JP7413827B2 (en) | Distribution system, distribution device, program and distribution method | |
JP4894837B2 (en) | Karaoke network system and karaoke device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20100615 |
|
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: 20100907 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100920 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131015 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |