JP2012080417A - Streaming reproduction device, streaming reproduction method, computer program and recording medium - Google Patents

Streaming reproduction device, streaming reproduction method, computer program and recording medium Download PDF

Info

Publication number
JP2012080417A
JP2012080417A JP2010225104A JP2010225104A JP2012080417A JP 2012080417 A JP2012080417 A JP 2012080417A JP 2010225104 A JP2010225104 A JP 2010225104A JP 2010225104 A JP2010225104 A JP 2010225104A JP 2012080417 A JP2012080417 A JP 2012080417A
Authority
JP
Japan
Prior art keywords
fragment
content
data
data providing
streaming
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.)
Pending
Application number
JP2010225104A
Other languages
Japanese (ja)
Inventor
Hiroki Tamada
裕貴 玉田
Hideto Endo
秀人 遠藤
Kyoichi Terao
恭一 寺尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pioneer Corp
Original Assignee
Pioneer Electronic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pioneer Electronic Corp filed Critical Pioneer Electronic Corp
Priority to JP2010225104A priority Critical patent/JP2012080417A/en
Publication of JP2012080417A publication Critical patent/JP2012080417A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To smoothly perform streaming reproduction of a content with high quality regardless of processing capacity of a reproduction device.SOLUTION: A streaming reproduction device 100 is comprised of a first storage device 170 and a second storage device 160 with lower writing speed and larger storage capacitance compared with the first storage device. The streaming reproduction device 100 includes: means for acquiring a fragment Na including reproduction start data of a content and a fragment Nb in sequence with the fragment Na, respectively; means for storing the acquired fragments Na and Nb in each of the first and the second storage devices; means for starting reproduction of the content by sequentially reading out the fragments from the fragment Na to Nb; and means for determining the fragment Na and Nb, and their transfer rates so as to finish storing the fragment Nb before or at the same time finishing reading out the fragment Na.

Description

本発明は、例えば、映像や音声等に係る各種コンテンツのストリーミング再生を行うためのストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体の技術分野に関する。   The present invention relates to a technical field of a streaming playback device, a streaming playback method, a computer program, and a recording medium for performing streaming playback of various contents related to, for example, video and audio.

コンテンツのストリーミング再生方法として、コンテンツストリームを再生レートよりも大きいレートで搬送する方法1と、同じく再生レートで搬送する方法2とを用いたリアルタイムストリーミング方式を採用したものが提案されている(例えば、特許文献1参照)。特許文献1に開示されたコンテンツ配信システムによれば、再生開始時に上記方法1を選択することによりバッファにキャッシュを蓄積すると共に、バッファにキャッシュが蓄積された後は上記方法2を選択することにより、ネットワークが途切れた場合でも、バッファ内のキャッシュを用いて再生を継続させることができるとされている。   As a content streaming reproduction method, a method using a real-time streaming method using a method 1 for conveying a content stream at a rate larger than the reproduction rate and a method 2 for conveying the content stream at a reproduction rate has been proposed (for example, Patent Document 1). According to the content distribution system disclosed in Patent Document 1, a cache is accumulated in the buffer by selecting the method 1 at the start of reproduction, and after the cache is accumulated in the buffer, the method 2 is selected. Even when the network is interrupted, playback can be continued using the cache in the buffer.

特開2008−244548号公報JP 2008-244548 A

ところで、コンテンツの再生速度でバッファへの書き込みを行う場合、書き込みに要する時間は、コンテンツの再生時間と等しくなる。従って、この種のリアルタイムストリーミングにおいては、ネットワークに接続している必要のある時間が総じて長大化し易い。無論、この種のリアルタイムストリーミングに用いられるバッファの容量を、コンテンツのデータ量に対して十分に大きく採ることができれば、再生速度に同期した書き込みは必ずしも必要ではないが、例えば各種映像コンテンツのように比較的大容量のコンテンツを考えた場合、バッファの容量はコンテンツのデータ量に対して十分に小さいのが一般的である。   By the way, when writing to the buffer at the content playback speed, the time required for writing is equal to the content playback time. Therefore, in this type of real-time streaming, the time required to connect to the network tends to be long as a whole. Of course, if the capacity of the buffer used for this type of real-time streaming can be made sufficiently large with respect to the data amount of the content, writing synchronized with the playback speed is not necessarily required. When considering a relatively large amount of content, the buffer capacity is generally sufficiently small with respect to the content data amount.

一方、ネットワークの状態は、時間的に安定しない場合も多く、ネットワークへの接続が不意に中断する等、何らかの障害が発生する可能性は低くない。従って、ネットワークへの接続時間が相対的に長くならざるを得ないこの種のリアルタイムストリーミングにおいては、コンテンツの再生品質が、ネットワークの状態に依存することになる。   On the other hand, the state of the network is often not stable over time, and it is not unlikely that some kind of failure will occur, such as unexpectedly interrupting the connection to the network. Therefore, in this type of real-time streaming in which the connection time to the network must be relatively long, the reproduction quality of the content depends on the state of the network.

ここで特に、特許文献1に開示された装置によれば、ネットワークに障害が発生したとしても、バッファに蓄積されたキャッシュによって一定時間はコンテンツの再生を継続し得るが、上述したようにバッファの容量はコンテンツのデータ量に対して大きくないから、その効果は限定的であって、コンテンツの安定的再生を目的とするには実践的にみて不十分であると言わざるを得ない。   Here, in particular, according to the apparatus disclosed in Patent Document 1, even if a failure occurs in the network, the content can be continuously played back for a certain time by the cache stored in the buffer. Since the capacity is not large with respect to the data amount of the content, the effect is limited, and it must be said that it is practically insufficient for the purpose of stable reproduction of the content.

ところで、この種のリアルタイムストリーミング方式とは別に、HDD(Hard Disk Drive)等の大容量記憶装置に一定単位のコンテンツをダウンロードしつつ順次再生するプログレッシブダウンロード方式も公知である。この方式であれば、バッファとしてのHDDの容量をコンテンツのデータ量よりも大きく採ることも容易であり、ネットワークへの接続時間を短縮化することも可能である。   Incidentally, apart from this type of real-time streaming method, a progressive download method is also known in which a fixed unit of content is downloaded to a large-capacity storage device such as an HDD (Hard Disk Drive) and played sequentially. With this method, it is easy to make the capacity of the HDD as a buffer larger than the content data amount, and it is possible to shorten the time for connecting to the network.

ところが、この場合、HDDへのコンテンツの書き込みとHDDからのコンテンツの読み出しとが同時に実行される必要がある。読み出しと書き込みとを同時に行うには、制御装置側に大きな処理能力が必要であるから、プログレッシブダウンロード方式の恩恵を享受できるのは、現実的には、高い処理能力を有する一部の高性能な(言うなれば、高価な)再生装置だけである。即ち、例えば携帯型端末装置や比較的安価なネットワーク対応型家庭用電機機器等の、機器性能が少なからず制限されざるを得ない装置環境においては、コンテンツの書き込みと読み出しとのいずれかが円滑に行われない可能性が高くなり、結果的にコンテンツの円滑なストリーミングが難しくなる。   However, in this case, it is necessary to simultaneously execute content writing to the HDD and content reading from the HDD. In order to perform reading and writing at the same time, a large amount of processing power is required on the control device side. Therefore, the benefits of the progressive download method can be enjoyed from some high-performance, high-performance processing equipment. Only a playback device (that is, expensive). In other words, in a device environment where the device performance is inevitably limited, such as a portable terminal device or a relatively inexpensive network-compatible household electrical appliance, either content writing or reading is smoothly performed. The possibility of not being performed increases, and as a result, smooth streaming of content becomes difficult.

即ち、従来の再生装置には、再生装置側の処理能力に影響されない、コンテンツの高品質なストリーミング再生が困難であるという技術的問題点がある。   That is, the conventional playback device has a technical problem that it is difficult to perform high-quality streaming playback of content without being affected by the processing capability of the playback device.

本発明は、係る問題点に鑑みてなされたものであり、再生装置側の処理能力によらずにコンテンツの円滑且つ高品質なストリーミング再生を実現し得るストリーミング再生装置を提供することを課題とする。   The present invention has been made in view of such problems, and it is an object of the present invention to provide a streaming playback device that can realize smooth and high-quality streaming playback of content regardless of the processing capability of the playback device. .

上述した課題を解決するため、請求項1のストリーミング再生装置は、コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置であって、前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求手段と、前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得手段と、前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御手段と、前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御手段と、前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生手段と、前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定手段と、前記第1及び第2記憶装置の状態を特定する第2特定手段と、前記コンテンツの状態を特定する第3特定手段と、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように前記フラグメントNa及びNb並びにその転送速度を決定する決定手段とを具備し、前記要求手段は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求することを特徴とする。   In order to solve the above-described problem, the streaming playback apparatus according to claim 1 holds content data related to content and accommodates the fragment of the content data requested to be transferred in a network together with at least one data providing node capable of transferring the content data. A first storage device having a volatile storage area, and a second storage device having a nonvolatile storage area and having a slower writing speed and a larger storage capacity than the first storage device, A streaming playback device capable of streaming playback of content, wherein the fragment Na including playback start data capable of starting streaming playback of the content as the fragment to the data providing node is continuous with at least the fragment Na With fragment Nb containing data part Request means for requesting transmission, acquisition means for acquiring the fragments Na and Nb transferred from the data providing node via the network, and the acquired fragment Na is stored in the volatile storage area. First storage control means for controlling the first storage device, and second storage control means for controlling the second storage device so that the acquired fragment Nb is accumulated in the nonvolatile storage area, At the time when the reproduction start data is accumulated, the accumulated fragment Na is sequentially read to start streaming reproduction of the content, and at the time when streaming reproduction of the content corresponding to the accumulated fragment Na is completed, The accumulated fragment Nb is continued to the accumulated fragment Na And a first specifying unit that specifies a communication state between the data providing node via the network, a reproducing unit that sequentially reads out the content and continues the streaming reproduction of the content, and states of the first and second storage devices Based on the specified communication status, the status of the first and second storage devices, and the status of the content, the second specifying means for specifying the content, the third specifying means for specifying the status of the content, Determining means for determining the fragments Na and Nb and the transfer rate thereof so that the accumulation of the fragment Nb ends before or at the same time as the reading ends, and the request means includes the data providing node Requesting transfer of the determined fragments Na and Nb at the determined transfer rate. Features.

上述した課題を解決するため、請求項14のストリーミング再生方法は、コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置におけるストリーミング再生方法であって、前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求工程と、前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得工程と、前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御工程と、前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御工程と、前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生工程と、前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定工程と、前記第1及び第2記憶装置の状態を特定する第2特定工程と、前記コンテンツの状態を特定する第3特定工程と、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように前記フラグメントNa及びNb並びにその転送速度を決定する決定工程とを具備し、前記要求工程は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求することを特徴とする。   In order to solve the above-described problem, the streaming playback method according to claim 14 holds content data related to content and accommodates the fragment of the content data requested to be transferred in a network together with at least one data providing node capable of transferring the content data. A first storage device having a volatile storage area, and a second storage device having a nonvolatile storage area and having a slower writing speed and a larger storage capacity than the first storage device, A streaming playback method in a streaming playback apparatus capable of streaming playback of content, the fragment Na including playback start data capable of starting streaming playback of the content as the fragment to the data providing node, and at least the fragment Na and consecutive days A request step for requesting transfer with a fragment Nb including a portion, an acquisition step for acquiring the fragment Na and Nb transferred from the data providing node via the network, and the acquired fragment Na being the volatile A first storage control step of controlling the first storage device so as to be accumulated in the sexual storage area; and controlling the second storage device so that the acquired fragment Nb is accumulated in the nonvolatile storage area A second storage control step, and when the playback start data is stored, the stored fragment Na is sequentially read to start streaming playback of the content, and the content streaming corresponding to the stored fragment Na When reproduction is completed, the accumulated fragment Nb is accumulated. A playback step of sequentially reading out the content Na from the continuous portion of the fragment Na and continuing the streaming playback of the content; a first specifying step of specifying a communication state between the data providing nodes via the network; A second specifying step for specifying the states of the first and second storage devices, a third specifying step for specifying the state of the content, the specified communication state, the states of the first and second storage devices, and the state of the content And determining the fragment Na and Nb and the transfer rate thereof so that the accumulation of the fragment Nb ends before or at the same time as the reading of the fragment Na ends, The requesting step is for the data providing node to determine the determined fragment N according to the determined transfer rate. It is characterized by requesting transfer of a and Nb.

上述した課題を解決するため、請求項15のコンピュータプログラムは、コンピュータシステムを請求項1から13のいずれか一項に記載のコンテンツ再生装置として機能させることを特徴とする。   In order to solve the above-described problems, a computer program according to a fifteenth aspect causes a computer system to function as the content reproduction device according to any one of the first to thirteenth aspects.

上述した課題を解決するため、請求項16の記録媒体は、請求項15のコンピュータプログラムを記録することを特徴とする。
<ストリーミング再生装置の実施形態>
In order to solve the above-mentioned problem, a recording medium according to a sixteenth aspect records the computer program according to the fifteenth aspect.
<Embodiment of Streaming Playback Device>

本発明のストリーミング再生装置に係る実施形態は、コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置であって、前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求手段と、前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得手段と、前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御手段と、前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御手段と、前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生手段と、前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定手段と、前記第1及び第2記憶装置の状態を特定する第2特定手段と、前記コンテンツの状態を特定する第3特定手段と、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように前記フラグメントNa及びNb並びにその転送速度を決定する決定手段とを具備し、前記要求手段は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求する。   The embodiment of the streaming playback apparatus of the present invention holds content data related to content and is accommodated in a network together with at least one data providing node capable of transferring a fragment of the content data requested to be transferred. Streaming playback of the content, comprising: a first storage device having an area; and a second storage device having a nonvolatile storage area and a writing speed slower than that of the first storage device and a large storage capacity. A possible streaming playback apparatus, wherein the data providing node includes, as the fragment, a fragment Na including playback start data capable of starting streaming playback of the content, and a fragment including at least a data portion continuous with the fragment Na Necessary to request transfer with Nb Means, acquisition means for acquiring the fragments Na and Nb transferred from the data providing node via the network, respectively, and the first fragment so that the acquired fragment Na is accumulated in the volatile storage area. First storage control means for controlling a storage device, second storage control means for controlling the second storage device so that the acquired fragment Nb is accumulated in the nonvolatile storage area, and the reproduction start data The accumulated fragments Na are sequentially read out at the time of accumulation to start streaming reproduction of the content, and the accumulated fragments at the time when streaming reproduction of the content corresponding to the accumulated fragment Na is completed. Read Nb sequentially from the portion that continues to the accumulated fragment Na Then, the reproduction means for continuing the streaming reproduction of the content, the first identification means for identifying the communication state between the data providing node via the network, and the states of the first and second storage devices are identified. And reading out the fragment Na based on the specified communication status, the status of the first and second storage devices, and the status of the content. Determining means for determining the fragments Na and Nb and their transfer rate so that the accumulation of the fragment Nb ends before or at the same time as the termination, and the request means , Request transfer of the determined fragments Na and Nb at the determined transfer rate.

実施形態に係る、揮発性記憶領域を有する第1記憶装置とは、例えば、RAM(Random Access Memory)等の各種メモリデバイスであり、不揮発性記憶領域を有する第2記憶装置とは、例えば、HDD等を指す。但し、これらの実践的態様は、書き込み速度と蓄積容量との相対関係が満たされる限りにおいて如何様にも限定されない趣旨である。   The first storage device having a volatile storage area according to the embodiment is, for example, various memory devices such as a RAM (Random Access Memory), and the second storage device having a nonvolatile storage area is, for example, an HDD. Etc. However, these practical aspects are not limited in any way as long as the relative relationship between the writing speed and the storage capacity is satisfied.

実施形態に係る「ネットワーク」とは、例えばWAN(Wide Area Network)網、LAN(Local Area Network)網、又はこれらWAN網又はLAN網を介して或いは電話回線、ADSL(Asymmetric Digital Subscriber Line)又は光ファイバーケーブル等を介して適宜に接続されるインターネット網等の各種データ通信網を包括する概念である。   The “network” according to the embodiment is, for example, a WAN (Wide Area Network) network, a LAN (Local Area Network) network, or a WAN, an ADSL (Asymmetric Digital Subscriber Line), or an optical fiber via the WAN network or the LAN network. It is a concept encompassing various data communication networks such as the Internet network appropriately connected via a cable or the like.

実施形態に係る「データ提供ノード」とは、例えば、各種サーバ装置やパーソナルコンピュータ装置等を意味する。サーバ装置は、接続者を限定しない開かれたサーバ装置であってもよいし、接続者が限定される閉じられたサーバ装置であってもよい。尚、データ提供ノードは、予め決まった装置であってもよいし、然るべき候補の中から、その都度適宜選択或いは決定される装置であってもよい。   The “data providing node” according to the embodiment means, for example, various server devices, personal computer devices, and the like. The server apparatus may be an open server apparatus that does not limit the number of connected persons, or may be a closed server apparatus that is limited in the number of connected persons. The data providing node may be a predetermined device, or may be a device that is appropriately selected or determined from appropriate candidates each time.

実施形態に係るストリーミング再生装置によれば、その動作時には、要求手段により、一又は複数のデータ提供ノードに対し、フラグメントNa及びフラグメントNbの転送が要求される。   According to the streaming playback apparatus according to the embodiment, at the time of operation, the request unit requests transfer of the fragment Na and the fragment Nb to one or a plurality of data providing nodes.

転送が要求される、フラグメントNa及びNbは、夫々コンテンツデータを分割してなる断片データとしてのフラグメントであり、好適には、複数の転送単位データの集合である。フラグメントNaは、コンテンツのストリーミング再生を開始するために必要となる再生開始データ(ストリーミング再生装置に固有のデータ量に相当するデータである)を含むデータである。また、フラグメントNbは、このフラグメントNaと連続するデータ部分を含むデータである。   The fragments Na and Nb that are required to be transferred are fragments as fragment data obtained by dividing content data, and are preferably a set of a plurality of transfer unit data. The fragment Na is data including reproduction start data (data corresponding to a data amount specific to the streaming reproduction device) necessary for starting streaming reproduction of the content. Fragment Nb is data including a data portion continuous with fragment Na.

尚、フラグメントNbについて補足すると、フラグメントNbは、好適には、フラグメントNaの最終データ部分と連続性を有するデータ部分からコンテンツデータの最終位置を規定するデータ部分までを含むフラグメントである。但し、フラグメントNaとの連続部分を含む限りにおいて、一部がフラグメントNaと重複していてもよい。また、必ずしも当該最終位置を規定するデータ部分を含まずともよい。   Note that supplementing the fragment Nb, the fragment Nb is preferably a fragment that includes a data portion that is continuous with the final data portion of the fragment Na to a data portion that defines the final position of the content data. However, as long as the continuous portion with the fragment Na is included, a part thereof may overlap with the fragment Na. Further, it is not always necessary to include a data portion that defines the final position.

一又は複数のデータ提供ノードにおいては、この転送要求によって指定されたフラグメントを、順次ネットワークを介して、ストリーミング再生装置の実施形態に対し転送する。この際、少なくともフラグメントNaに関して言えば、好適には、コンテンツデータの先頭に相当するデータから順次転送される。各データ提供ノードから転送されてくるフラグメントは、取得手段によりその各々について順次取得される。尚、転送要求を含む、データ提供ノードとの間の各種データの送受信形態は、例えば然るべきサーバ装置を介したものであってもよいし、例えばP2P(Peer To Peer)等サーバ装置を介さないものであってもよい。   In one or a plurality of data providing nodes, the fragments designated by the transfer request are sequentially transferred to the embodiment of the streaming playback device via the network. At this time, as far as at least the fragment Na is concerned, it is preferably transferred sequentially from the data corresponding to the head of the content data. Fragments transferred from each data providing node are sequentially acquired for each by the acquisition means. In addition, the transmission / reception mode of various data including the transfer request with the data providing node may be, for example, via an appropriate server device, or not via a server device such as P2P (Peer To Peer), for example. It may be.

一方、実施形態によれば、転送されるフラグメントのうち、フラグメントNaが、第1記憶装置における揮発性記憶領域に記憶され、フラグメントNbが、第2記憶装置における不揮発性記憶領域に記憶される。尚、一又は複数のデータ提供ノードから転送されるフラグメントがいずれのフラグメントであるかは、各データ提供ノードがフラグメントを転送するにあたって送信するプロトコル等に記述されたフラグメント位置等の情報により判別される。   On the other hand, according to the embodiment, among the transferred fragments, the fragment Na is stored in the volatile storage area in the first storage device, and the fragment Nb is stored in the nonvolatile storage area in the second storage device. It should be noted that which fragment is transferred from one or a plurality of data providing nodes is determined by information such as a fragment position described in a protocol or the like transmitted when each data providing node transfers the fragment. .

他方、取得されたフラグメントが、夫々然るべき記憶領域(記憶装置)へ蓄積される過程において、再生手段は、コンテンツのストリーミングを然るべき開始タイミングで開始する。より具体的には、再生手段は、再生開始データが第1記憶装置の揮発性記憶領域に蓄積された時点以降、揮発性記憶領域からフラグメントNaを順次読み出してコンテンツのストリーミング再生を開始する。   On the other hand, in the process in which the acquired fragments are accumulated in the appropriate storage areas (storage devices), the playback means starts streaming the content at the appropriate start timing. More specifically, the playback means sequentially reads the fragment Na from the volatile storage area after the playback start data is accumulated in the volatile storage area of the first storage device, and starts streaming playback of the content.

ストリーミング再生が開始されると、第1記憶装置の揮発性記憶領域に蓄積されたフラグメント量(即ち、キャッシュ量)は、フラグメントNaの転送速度と、コンテンツの再生速度(好適には、コンテンツのエンコードビットレート)との相対関係で決まる増減速度で増減する。   When streaming playback is started, the fragment amount (that is, the cache amount) accumulated in the volatile storage area of the first storage device is determined by the transfer speed of the fragment Na and the content playback speed (preferably the content encoding). Increase / decrease at an increase / decrease speed determined by the relative relationship with the bit rate.

例えば、キャッシュ量が揮発性記憶領域の蓄積容量(ハードウェア上の容量或いはその時点の負荷状況等に応じて許可される容量)に到達するまでコンテンツの再生速度よりも広帯域でフラグメントNaを取得し、それ以降、再生速度とフラグメントNaの転送速度とを一致させる等の措置を講じる場合、再生済みのキャッシュデータが順次揮発性記憶領域から破棄されるとすれば、キャッシュ量は、第1記憶装置に許容される蓄積容量に到達して以降、暫時この蓄積容量に維持される。また、フラグメントNaの書き込み終了後は、キャッシュ量は漸減する。   For example, the fragment Na is acquired in a wider band than the playback speed of the content until the cache amount reaches the storage capacity of the volatile storage area (capacity on the hardware or the capacity permitted according to the load status at that time). Thereafter, when taking measures such as matching the reproduction speed and the transfer rate of the fragment Na, if the reproduced cache data is sequentially discarded from the volatile storage area, the cache amount is the first storage device. The storage capacity is maintained for a while after reaching the storage capacity allowed for. Further, the cache amount gradually decreases after the writing of the fragment Na is completed.

この第1記憶装置のキャッシュ量の減少に伴い、キャッシュ量がゼロとなると、所謂再生バッファとしての記憶装置が、第1記憶装置から第2記憶装置へ切り替えられ、第2記憶装置の不揮発性記憶領域に記憶されたフラグメントNbが、最後に読み出されたフラグメントNaに連続する部分から順次読み出されてストリーミング再生が継続される。   When the cache amount becomes zero with the decrease in the cache amount of the first storage device, the storage device as a so-called playback buffer is switched from the first storage device to the second storage device, and the non-volatile storage of the second storage device The fragment Nb stored in the area is sequentially read from the portion that is continuous with the last read fragment Na, and the streaming reproduction is continued.

ここで、このようにフラグメントNaとフラグメントNbとを、その少なくとも一部において相互に並行して然るべき記憶領域に記憶することにより、例えば、相対的に蓄積容量が小さい第1記憶装置のみにコンテンツデータを蓄積する場合や、相対的に書き込み速度の遅い第2記憶装置のみにコンテンツデータを蓄積する場合と較べて、コンテンツデータの取得に要する時間は短縮化され得る。その結果、ネットワーク障害等に影響され難い高品質なストリーミング再生が可能となる。   Here, by storing the fragment Na and the fragment Nb in the appropriate storage area in parallel with each other at least in part, for example, the content data is stored only in the first storage device having a relatively small storage capacity. Compared to storing the content data or storing the content data only in the second storage device having a relatively low writing speed, the time required to acquire the content data can be shortened. As a result, it is possible to perform high-quality streaming reproduction that is not easily affected by a network failure or the like.

ところで、不揮発性記憶領域へのフラグメントの書き込み及び読み出しに係る処理は、揮発性記憶領域に対するそれと比べて高負荷な処理であり、これらを並行して実行するには、ストリーミング再生装置側に高い処理能力が要求されることが多い。従って、必ずしもデータ処理能力が最優先されない各種の携帯型端末や比較的安価なネットワーク対応型家庭用電気機器等においては、フラグメントの書き込み速度が低下する或いはフラグメントの読み出しが円滑に行われない等の問題が新たに発生し、結局のところ、コンテンツの再生品質が低下し易いといった問題が解決され難い。   By the way, the processing related to the writing and reading of fragments to and from the nonvolatile storage area is a process that is more expensive than that to the volatile storage area. Capability is often required. Therefore, in various portable terminals where data processing capability is not always given the highest priority, relatively inexpensive network-compatible household electric appliances, etc., the fragment writing speed is reduced or fragment reading is not performed smoothly. A new problem occurs, and after all, it is difficult to solve the problem that the reproduction quality of the content is likely to deteriorate.

そこで、本実施形態においてストリーミング再生装置では、第1、第2及び第3特定手段の作用により、ネットワークを介したデータ提供ノードとの間の通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態が夫々特定され、決定手段が、これら特定された要素に基づいて、データ提供ノードに要求すべきフラグメントNa及びフラグメントNbを、その転送速度と共に決定する仕組みとなっている。   Therefore, in the streaming playback device in the present embodiment, the state of communication with the data providing node via the network, the state of the first and second storage devices, and the content by the action of the first, second, and third specifying means. The determination means determines a fragment Na and a fragment Nb to be requested from the data providing node based on the specified elements together with the transfer rate.

第1特定手段により特定されるネットワークの通信状態とは、例えば、データ提供ノードの送信帯域、ストリーミング再生装置の受信帯域、ネットワークの伝送速度、RTT(Round Trip Time)、TTL(Time To Live)及びハードウェア性能等を意味する。また、第2特定手段により特定される各記憶装置の状態とは、例えば、各記憶装置における使用可能な蓄積容量や負荷状態等を意味する。更に、第3特定手段により特定されるコンテンツの状態とは、コンテンツのデータサイズや再生速度(エンコードビットレート)等を意味する。これら各種の被特定要素は、いずれも、単独で或いは複数の要素を組み合わせることによって、第1記憶装置におけるフラグメントNaの読み出し終了タイミングと、第2記憶装置におけるフラグメントNbの書き込み終了タイミングとの時間軸上の関係を推定し得る情報となる。   The network communication state specified by the first specifying means includes, for example, the transmission band of the data providing node, the reception band of the streaming playback device, the transmission speed of the network, RTT (Round Trip Time), TTL (Time To Live), and Means hardware performance. Further, the state of each storage device specified by the second specifying means means, for example, a usable storage capacity or a load state in each storage device. Furthermore, the content state specified by the third specifying means means the data size of the content, the playback speed (encoded bit rate), and the like. Each of these various specified elements is a time axis between the read end timing of the fragment Na in the first storage device and the write end timing of the fragment Nb in the second storage device, either alone or by combining a plurality of elements. This information can be used to estimate the above relationship.

ここで、決定手段は、これら各特定手段により特定された情報に基づいて、フラグメントNaの読み出しが終了する以前に又は終了するのと同時にフラグメントNbの蓄積が終了するように、フラグメントNa及びNb並びにその転送速度を決定する。要求手段は、データ提供ノードに対し、この決定されたフラグメントNa及びNbの、この決定された転送速度による転送を要求する。   Here, the determining means, based on the information specified by each of these specifying means, before the end of reading of the fragment Na or at the same time as the completion of the fragment Nb, Determine the transfer rate. The requesting unit requests the data providing node to transfer the determined fragments Na and Nb at the determined transfer rate.

上述した第2記憶装置におけるフラグメントの書き込み処理と読み出し処理との重複は、フラグメントNaの読み出しが、フラグメントNbの書き込み終了以前に終了してしまうことによって発生する。従って、このような事態を回避すれば、即ち、フラグメントNaの読み出し終了以前に又は読み出し終了と同時にフラグメントNbの書き込みが終了すれば、第2記憶装置におけるフラグメントの書き込み処理と読み出し処理とは、相互に異なる時間帯に行われることとなる。これらが時間軸上で重複して実行されることがなければ、フラグメントの書き込み処理と読み出し処理とが相互いに阻害し合うことはなくなり、再生装置側の処理能力によらずにコンテンツの円滑且つ高品質なストリーミング再生が実現されるのである。   The overlap between the fragment writing process and the reading process in the second storage device described above occurs when the reading of the fragment Na ends before the end of the writing of the fragment Nb. Therefore, if such a situation is avoided, that is, if the writing of the fragment Nb is completed before or at the same time as the reading of the fragment Na, the fragment writing process and the reading process in the second storage device are mutually Will be performed at different times. If these are not executed in duplicate on the time axis, the fragment writing process and the reading process will not interfere with each other, and the content will be smooth and high regardless of the processing capability of the playback device. Quality streaming playback is realized.

このような時間軸上の関係を実現し得るフラグメントNa及びNbは、要求手段による転送要求時における両フラグメントの転送速度を規定することにより求めることができる。また逆に、予めフラグメントNa及びNbが規定されていれば、このような時間軸上の関係を実現し得る両フラグメントの転送速度を求めることができる。但し、通常、ストリーミング再生装置とデータ提供ノードとの間のデータ転送速度には各種の制約があるから、後者よりも前者の方が現実的であることは言うまでも無い。即ち、好適な一形態としては、予め設定される、或いはその都度適宜設定される(いずれにせよ、「決定」の範疇である)両フラグメントの転送速度に基づいた各種演算処理の結果として、フラグメントNa及びNbが決定される。   Fragments Na and Nb that can realize such a relationship on the time axis can be obtained by defining the transfer rates of both fragments at the time of the transfer request by the requesting means. Conversely, if the fragments Na and Nb are defined in advance, the transfer rates of both fragments that can realize such a relationship on the time axis can be obtained. However, since there are various restrictions on the data transfer speed between the streaming playback device and the data providing node, it is needless to say that the former is more realistic than the latter. That is, as a preferred embodiment, the fragment is set as a result of various calculation processes based on the transfer speed of both fragments which are set in advance or appropriately set each time (in any case, which is a category of “determination”). Na and Nb are determined.

尚、決定手段は、少なくともフラグメントNbの書き込み中にフラグメントNaの読み出しが終了しない限りにおいて、比較的自由にコンテンツデータをその断片たる各フラグメントに分割することができる。   Note that the determining means can relatively freely divide the content data into each fragment as long as the reading of the fragment Na is not completed during the writing of the fragment Nb.

この際、第2記憶装置の不揮発性記憶領域に対する書き込み処理の終了タイミングと、第1記憶装置の揮発性記憶領域に対する読み出し処理の終了タイミング(即ち、一義的に、第2記憶装置の不揮発性記憶領域に対する読み出し処理の開始タイミングである)との間に生じる時間間隔は、コンテンツデータの総体的な転送時間を短縮する観点からは小さい方がよい。   At this time, the end timing of the writing process with respect to the non-volatile storage area of the second storage device and the end timing of the reading process with respect to the volatile storage area of the first storage device (ie, uniquely, the non-volatile storage of the second storage device). Is smaller from the viewpoint of reducing the overall transfer time of content data.

一方、ネットワークを介した通信状態や、記憶装置各々の負荷状態等は、必ずしも一定でないから、係る時間間隔に冗長度が全く無いと、例えば第2記憶装置における書き込み処理が何らかの理由により一時的に遅延した場合等において、第1記憶装置から第2記憶装置へのバッファの切り替え時を含む過渡的な期間について、第2記憶装置の不揮発性記憶領域に対する書き込み処理と読み出し処理とが並存して、コンテンツの円滑なストリーミングが阻害される可能性がある。そのような観点から言えば、予め実験的に、経験的に、理論的に又はシミュレーション等に基づいて、転送時間と再生品質とが共に要求値を満たし得る、当該時間間隔の適当な基準が設けられていてもよい。   On the other hand, the communication state via the network, the load state of each storage device, etc. are not necessarily constant. Therefore, if there is no redundancy in the time interval, for example, the write processing in the second storage device is temporarily performed for some reason. In the case of delay or the like, the writing process and the reading process for the non-volatile storage area of the second storage device coexist for a transitional period including the switching of the buffer from the first storage device to the second storage device. Smooth streaming of content may be hindered. From this point of view, an appropriate standard for the time interval is established so that both the transfer time and reproduction quality can satisfy the required values experimentally, empirically, theoretically or based on simulation. It may be done.

尚、特定手段に係る特定プロセスは、例えば一定又は不定の周期で周期的に実行されてもよいし、然るべき条件が満たされた場合においてオンデマンドで実行されるものであってもよい。また、実施形態に係る「特定」とは、特定対象を、直接的に又は間接的に制御上の参照値として確定させることを意味しており、検出、算出、導出、推定、同定、選択或いは取得等、その実践上のプロセスは何ら限定されない趣旨である。   Note that the specifying process according to the specifying means may be executed periodically, for example, at a constant or indefinite period, or may be executed on demand when an appropriate condition is satisfied. In addition, “specific” according to the embodiment means that a specific target is determined directly or indirectly as a reference value for control, and is detected, calculated, derived, estimated, identified, selected, or The practical process such as acquisition is not limited in any way.

尚、ストリーミング再生装置の実施形態に係る各手段は、夫々が或いは全体として、例えばCPU(Central Processing Unit)又はMPU(Micro Processing Unit)等の各種演算処理装置、各種プロセッサ、コントローラ又は各種機能モジュール等として構成されていてもよい。   Note that each means according to the embodiment of the streaming playback device is, for example, various arithmetic processing devices such as a CPU (Central Processing Unit) or MPU (Micro Processing Unit), various processors, controllers, various functional modules, etc. It may be configured as.

ストリーミング再生装置に係る実施形態の一の態様では、前記データ提供ノードは前記ネットワークに複数収容され、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記複数のデータ提供ノードの中から、前記決定されたフラグメントNaの転送を要求すべき複数のデータ提供ノードを選択すると共に、該選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき前記決定されたフラグメントNaの一部を夫々割り当てる第1割り当て手段と、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記複数のデータ提供ノードの中から、前記決定されたフラグメントNbの転送を要求すべき複数のデータ提供ノードを選択すると共に、該選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき前記決定されたフラグメントNbの一部を夫々割り当てる第2割り当て手段とを更に具備し、前記要求手段は、前記選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、夫々前記割り当てられたフラグメントNaの一部を要求すると共に、前記選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、夫々前記割り当てられたフラグメントNbの一部を要求する。   In one aspect of the embodiment of the streaming playback device, a plurality of the data providing nodes are accommodated in the network, and based on the specified communication state, the state of the first and second storage devices, and the state of the content, A plurality of data providing nodes that should request the transfer of the determined fragment Na are selected from among the plurality of data providing nodes, and each of the plurality of data providing nodes that should request the transfer of the selected fragment Na On the basis of the first allocation means for allocating a part of the determined fragment Na to be transferred respectively, the specified communication state, the state of the first and second storage devices, and the state of the content A plurality of data to be requested to transfer the determined fragment Nb from the plurality of data providing nodes A second allocation for selecting a serving node and allocating a part of the determined fragment Nb to be transferred to each of a plurality of data providing nodes to be requested to transfer the selected fragment Nb. Means for requesting each of a plurality of data providing nodes that should request transfer of the selected fragment Na to each of a part of the allocated fragment Na, and A part of the allocated fragment Nb is requested to each of the plurality of data providing nodes that should request the transfer of the selected fragment Nb.

データ提供ノードがネットワークに複数収容される場合、フラグメントNa及びNbを要求するノードを、これら複数のデータ提供ノードから比較的自由に選択することができる。特に、特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいてデータ提供ノードを選択する場合、フラグメントの転送を要求するのに最も適した一のデータ提供ノードを、或いは、フラグメントの転送を要求するのに比較的適した複数のデータ提供ノードを、確実に選択することができる。   When a plurality of data providing nodes are accommodated in the network, a node that requests fragments Na and Nb can be relatively freely selected from the plurality of data providing nodes. In particular, when selecting a data providing node based on the specified communication state, the state of the first and second storage devices, and the state of the content, the most suitable data providing node for requesting the transfer of the fragment is Alternatively, it is possible to reliably select a plurality of data providing nodes that are relatively suitable for requesting transfer of fragments.

従って、例えば、ストリーミング再生装置の受信帯域幅が、各データ提供ノードの送信帯域幅よりも大きい場合等に、フラグメントNa或いはNbを適宜分割して、複数のデータ提供ノードから当該分割されたフラグメントを取得する等を措置を講じることにより、受信帯域をより効率的に使用することが可能となる。   Therefore, for example, when the reception bandwidth of the streaming playback device is larger than the transmission bandwidth of each data providing node, the fragment Na or Nb is appropriately divided, and the divided fragments are divided from a plurality of data providing nodes. By taking measures such as acquisition, the reception band can be used more efficiently.

第1割り当て手段及び第2割り当て手段に係る、データ提供ノードの選択及びフラグメントの割り当てに関する実践的態様は、決定手段により決定されるフラグメントNa及びNb並びにその転送速度が担保される限りにおいて如何様にも限定されない。フラグメントNa及びNbのデータサイズと、その転送速度とが担保される限りにおいて、第2記憶装置においてフラグメントの書き込みと読み出しとが同時に発生することはないからである。   The practical aspect regarding the selection of the data providing node and the assignment of the fragments according to the first assigning means and the second assigning means is as long as the fragments Na and Nb determined by the determining means and their transfer rates are guaranteed. Is not limited. This is because, as long as the data sizes of the fragments Na and Nb and their transfer rates are secured, the writing and reading of the fragments will not occur simultaneously in the second storage device.

尚、この態様では、前記第1割り当て手段は、前記選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードのうち少なくとも一つのデータ提供ノードとの間でネットワーク障害が発生した場合に、前記複数のデータ提供ノードの中から、該発生したネットワーク障害に対応する少なくとも一つのデータ提供ノードに代替すべき少なくとも一つのデータ提供ノードを再選択すると共に、該再選択されたデータ提供ノードを含む、新たに前記フラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき、前記決定されたフラグメントNaのうち転送が完了していないフラグメントの一部を再度割り当て、前記第2割り当て手段は、前記選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードのうち少なくとも一つのデータ提供ノードとの間でネットワーク障害が発生した場合に、前記複数のデータ提供ノードの中から、該発生したネットワーク障害に対応する少なくとも一つのデータ提供ノードに代替すべき少なくとも一つのデータ提供ノードを再選択すると共に、該再選択されたデータ提供ノードを含む、新たに前記フラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき、前記決定されたフラグメントNbのうち転送が完了していないフラグメントの一部を再度割り当ててもよい。   In this aspect, the first assigning unit, when a network failure occurs with at least one data providing node among the plurality of data providing nodes that should request the transfer of the selected fragment Na, Reselecting at least one data providing node to be replaced with at least one data providing node corresponding to the occurred network failure from among the plurality of data providing nodes, and including the reselected data providing node Reassigning a part of the determined fragment Na that has not yet been transferred to each of a plurality of data providing nodes that should newly request transfer of the fragment Na. , The second allocating means should request a plurality of transfer of the selected fragment Nb When a network failure occurs with at least one data providing node among the data providing nodes, the plurality of data providing nodes are replaced with at least one data providing node corresponding to the generated network failure Reselecting at least one data providing node to be transferred, and each of the plurality of data providing nodes including the reselected data providing node to newly request transfer of the fragment Nb, A part of the determined fragment Nb that has not been transferred may be reassigned.

複数のデータ提供ノードからフラグメントを取得し得る構成においては、上述のように、ストリーミング再生装置の受信帯域を有効利用することが可能となるが、その一方で、一時的又は長期的な各種のネットワーク障害の影響を受ける可能性もまた高くなる。   In the configuration in which fragments can be obtained from a plurality of data providing nodes, as described above, the reception band of the streaming playback device can be effectively used. On the other hand, various temporary or long-term networks can be obtained. The possibility of being affected by a failure is also increased.

例えば、フラグメントNbを要求すべきものとして選択されたデータ提供ノードの一部との間でネットワーク障害が生じた場合、フラグメントNbの取得完了が遅れてフラグメントNbの読み出しと書き込みとが一時的にせよ同時に発生しかねない。或いは、フラグメントNaを要求すべきものとして選択されたデータ提供ノードの一部との間でネットワーク障害が生じた場合、フラグメントNaの取得完了が遅れて、コンテンツの再生が中断しかねない。   For example, when a network failure occurs with a part of the data providing nodes selected to request the fragment Nb, the completion of acquisition of the fragment Nb is delayed, and reading and writing of the fragment Nb are temporarily or simultaneously performed. It can happen. Alternatively, when a network failure occurs with a part of the data providing nodes selected to request the fragment Na, the completion of the acquisition of the fragment Na is delayed and the reproduction of the content may be interrupted.

この態様によれば、第1及び第2割り当て手段に、データ提供ノードの再選択及び再選択されたデータ提供ノードに対するフラグメントの再割り当て機能が備わるため、各瞬のネットワーク障害の発生に際しても、迅速且つ柔軟に対処することが可能となり、コンテンツのストリーミング再生を安定して継続させることができる。尚、ネットワーク障害の検出は、転送を要求したデータ(フラグメントの一部)が転送されたか否か等の情報に基づいて、常時遅滞なく検出可能である。   According to this aspect, since the first and second allocating units are provided with the data selection node reselection and the fragment reassignment function with respect to the reselected data provision node, it is possible to quickly perform even when an instantaneous network failure occurs. In addition, it is possible to cope flexibly, and it is possible to stably continue streaming playback of content. It should be noted that the detection of a network failure can always be detected without delay based on information such as whether or not data (part of a fragment) requested to be transferred has been transferred.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記フラグメントは、前記フラグメントNa及び前記フラグメントNbのうち少なくとも一方に含まれる。   In another aspect of the embodiment of the streaming playback device of the present invention, the fragment is included in at least one of the fragment Na and the fragment Nb.

この態様によれば、相互いに連続する断片データのみからなるフラグメントNaと、同じく相互いに連続する断片データのみからなるフラグメントNbとによって、コンテンツデータが形成される。従って、データ提供ノードへ各フラグメントを要求するにあたっての処理負荷が軽減され得る。また、この際、理想的には、フラグメントNaとフラグメントNbとの間には、重複部分が存在しないのが望ましい。   According to this aspect, the content data is formed by the fragment Na that consists only of fragment data that are mutually continuous and the fragment Nb that is also composed of only fragment data that is mutually continuous. Therefore, the processing load in requesting each fragment from the data providing node can be reduced. At this time, ideally, it is desirable that there is no overlapping portion between the fragment Na and the fragment Nb.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記フラグメントNaの転送速度は、前記コンテンツの再生速度であり、前記フラグメントNbの転送速度は、前記ストリーミング再生装置の受信帯域のうち前記再生速度に相当する帯域を除く残余の受信帯域に相当する転送速度である。   In another aspect of the embodiment of the streaming playback device of the present invention, the transfer rate of the fragment Na is the playback rate of the content, and the transfer rate of the fragment Nb is the bandwidth of the reception bandwidth of the streaming playback device. This is the transfer rate corresponding to the remaining reception band excluding the band corresponding to the playback speed.

この態様によれば、フラグメントNaがコンテンツの再生速度に相当する転送速度で転送され、フラグメントNbが、使用可能な受信帯域のうちフラグメントNaの転送に使用される帯域を除く残余の受信帯域に相当する転送速度で転送される。   According to this aspect, the fragment Na is transferred at a transfer speed corresponding to the content playback speed, and the fragment Nb corresponds to the remaining reception band excluding the band used for the transfer of the fragment Na among the usable reception bands. It is transferred at the transfer speed to be.

第1記憶装置の揮発性記憶領域は、通常、再生開始データと比較して大きく且つコンテンツのデータサイズと比較して小さい。このため、取得されたフラグメントNaが第1記憶装置に許容される記憶容量に達してしまえば、再生済みのキャッシュを順次破棄したとして、フラグメントNaの転送速度はコンテンツの再生速度に律束される。逆に、コンテンツの再生速度でフラグメントNaを取得すれば、基本的に、第1記憶装置に蓄積されるコンテンツのキャッシュは、フラグメントNaの取得完了まで減少することがないから、コンテンツの再生は安定的に継続される。   The volatile storage area of the first storage device is usually larger than the reproduction start data and smaller than the content data size. For this reason, if the acquired fragment Na reaches the storage capacity allowed for the first storage device, the transfer speed of the fragment Na is limited to the playback speed of the content, assuming that the reproduced cache is sequentially discarded. . On the contrary, if the fragment Na is acquired at the content playback speed, the content cache stored in the first storage device does not decrease until the completion of the fragment Na acquisition, so that the content playback is stable. Will continue.

この態様によれば、ストリーミング再生装置の受信帯域のうち、再生速度に相当する帯域を除く残余の帯域を利用してフラグメントNbが取得される。従って、一方でコンテンツを安定的に再生しつつ、第2記憶装置に効率的にフラグメントNbを蓄積し、コンテンツデータの全体的なダウンロード時間を短縮化することが可能となる。   According to this aspect, the fragment Nb is acquired using the remaining band excluding the band corresponding to the playback speed, out of the reception band of the streaming playback device. Therefore, on the other hand, it is possible to efficiently accumulate the fragment Nb in the second storage device while stably reproducing the content, and to shorten the overall download time of the content data.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記フラグメントNaは、前記再生開始データを含むフラグメントN0と、該フラグメントN0を除くフラグメントN1から構成され、前記要求手段は、前記フラグメントN0の取得が完了するまで前記フラグメントNbの要求を待機する。   In another aspect of the embodiment of the streaming playback apparatus of the present invention, the fragment Na is composed of a fragment N0 including the playback start data and a fragment N1 excluding the fragment N0, and the request means includes the fragment N0. Until the fragment Nb is requested.

この態様によれば、フラグメントNaが、再生開始データを含むフラグメントN0とそれ以外のフラグメントN1とに分割され、データ提供ノードへフラグメントを要求するにあたっては、先ずフラグメントN0のみの転送が要求される。即ち、フラグメントN0の取得が完了するまでは、フラグメントNaの取得が、フラグメントNbの取得に優先される。従って、ストリーミング再生装置の受信帯域を、フラグメントN0の取得のために優先的に使用することが可能となり、フラグメントN0の取得完了に要する時間を可及的に短縮化することができる。   According to this aspect, the fragment Na is divided into the fragment N0 including the reproduction start data and the other fragment N1, and when requesting the fragment to the data providing node, first, the transfer of only the fragment N0 is requested. That is, until acquisition of the fragment N0 is completed, acquisition of the fragment Na has priority over acquisition of the fragment Nb. Therefore, the reception band of the streaming playback device can be preferentially used for acquiring the fragment N0, and the time required for completing the acquisition of the fragment N0 can be shortened as much as possible.

ここで特に、フラグメントN0は、フラグメントNaのうち再生開始データを含む断片であるから、このようにその取得が優先され、その取得時期が早められることにより、コンテンツの再生開始時期を可及的に早めることが可能となる。   In particular, since the fragment N0 is a fragment including the reproduction start data in the fragment Na, the acquisition is prioritized in this way, and the acquisition timing is advanced, thereby making the content reproduction start timing as possible as possible. It becomes possible to speed up.

尚、再生手段は、再生開始データの取得(蓄積)完了をトリガとしてコンテンツのストリーミング再生を開始する。従って、フラグメントN0のうち再生開始データの取得完了後は、フラグメントN0の転送速度とコンテンツの再生速度との差分に相当する速度でフラグメントN0の取得が進行する。ここで、第1記憶装置における揮発性記憶領域の蓄積容量が、この再生開始データに対して十分に大きくない場合(無論、少なくとも再生開始データよりは大きい)、コンテンツの再生開始から間を置かずして当該揮発性記憶領域はフラグメントN0で満たされる。それ以降は、再生速度以上でのフラグメントの蓄積は出来なくなる。その点に鑑みれば、フラグメントN0のデータサイズは、好適には、第1記憶装置の蓄積容量がフラグメントN0で満たされた時点における、フラグメントの総取得量(当該蓄積容量よりは、再生による読み出し分だけ大きい)であるのが望ましい。   Note that the playback means starts streaming playback of content triggered by the completion of acquisition (accumulation) of playback start data. Accordingly, after the completion of the acquisition of the reproduction start data in the fragment N0, the acquisition of the fragment N0 proceeds at a speed corresponding to the difference between the transfer speed of the fragment N0 and the content reproduction speed. Here, when the storage capacity of the volatile storage area in the first storage device is not sufficiently large with respect to the reproduction start data (of course, at least larger than the reproduction start data), there is no interval from the start of content reproduction. The volatile storage area is filled with the fragment N0. After that, it is impossible to accumulate fragments above the playback speed. In view of this point, the data size of the fragment N0 is preferably set so that the total amount of fragments acquired at the time when the storage capacity of the first storage device is filled with the fragment N0 (rather than the storage capacity, It is desirable that

尚、上述したフラグメントNaをコンテンツの再生速度に相当する転送速度で転送し、フラグメントNbを受信帯域の残余の帯域に相当する転送速度で転送する態様において本態様が適用されるにあたっては、フラグメントN1の転送速度をコンテンツの再生速度相当とし、フラグメントNbをフラグメントN0の取得完了以降、残余の帯域に相当する転送速度で転送するようにするのが好適である。   When this aspect is applied in a mode in which the above-described fragment Na is transferred at a transfer speed corresponding to the content reproduction speed and the fragment Nb is transferred at a transfer speed corresponding to the remaining band of the reception band, the fragment N1 is applied. It is preferable to transfer the fragment Nb at the transfer rate corresponding to the remaining bandwidth after the completion of the acquisition of the fragment N0.

このようにすれば、再生済みのキャッシュを順次第1記憶装置から破棄することによって、第1記憶装置におけるフラグメントの蓄積量は、フラグメントN1の取得完了時点まで時間的に不変となる。従って、第1記憶装置におけるバッファオーバーフローやバッファアンダーフローを考慮することなく、ストリーミング再生装置の残余の受信帯域又はデータ提供ノードの残余の送信帯域を、フラグメントNbの取得又は転送に効率的に使用することができる。また、フラグメントNbがその時点の最大転送速度で転送されることとなるため、フラグメントNbを可及的迅速に取得することができ、コンテンツデータのダウンロード時間を短縮化することが可能となる。   In this way, by sequentially discarding the regenerated cache from the first storage device, the amount of fragments accumulated in the first storage device remains unchanged in time until the completion of acquisition of the fragment N1. Therefore, the remaining reception band of the streaming playback apparatus or the remaining transmission band of the data providing node is efficiently used for acquiring or transferring the fragment Nb without considering the buffer overflow or buffer underflow in the first storage device. be able to. Further, since the fragment Nb is transferred at the maximum transfer speed at that time, the fragment Nb can be acquired as quickly as possible, and the download time of the content data can be shortened.

尚、この際、前述したように、フラグメントN0の取得完了時点で第1記憶装置の蓄積容量が最大限に使用されていれば、フラグメントN1の取得完了時点まで、第1記憶装置は、その蓄積容量を最大限に使用した状態が維持され、より好適である。   At this time, as described above, if the storage capacity of the first storage device is used to the maximum when the acquisition of the fragment N0 is completed, the first storage device stores the storage until the completion of the acquisition of the fragment N1. The state where the capacity is used to the maximum is maintained, which is more preferable.

尚、この態様では、前記フラグメントN0の転送速度は、前記データ提供ノードの間で規定される最大転送速度であってもよい。   In this aspect, the transfer rate of the fragment N0 may be a maximum transfer rate defined between the data providing nodes.

最大転送速度による転送とは、ストリーミング再生装置の受信帯域の利用効率が理論的に又は何らか制約の範囲で実質的に最大であることと等価である。従って、この場合、許容される条件下でフラグメントN0を最短時間で取得することが可能となり、コンテンツの再生要求が生じた時点から、ストリーミング再生が開始されるまでの時間的遅延を最大限に短縮化することができる。   The transfer at the maximum transfer rate is equivalent to that the use efficiency of the reception band of the streaming playback device is theoretically or substantially maximum within a certain limitation range. Therefore, in this case, the fragment N0 can be acquired in the shortest time under allowable conditions, and the time delay from when the content playback request is made until the streaming playback is started is maximized. Can be

尚、受信帯域の利用効率は、受信帯域全域をフラグメントN0の取得に供した場合に100%で最大となる(この場合の転送速度が、理論的な最大転送速度である)。例えば、データ提供ノードが一つで且つその送信帯域幅がストリーミング再生装置の受信帯域幅を超える場合、フラグメントN0の転送速度を当該受信帯域に等しくすることが可能となり、受信帯域の利用効率は100%となる。一方、データ提供ノードが一つで且つその送信帯域がストリーミング再生装置の受信帯域よりも小さければ、当該受信帯域の全域を使用することはできず、利用効率としては100%未満となるが、データ提供ノードが一つである場合に、実質的にその送信帯域の全てをフラグメントN0の転送に供しているのであれば、結局は、フラグメントN0が最大転送速度で転送されることに変わりはない。   The use efficiency of the reception band is maximized at 100% when the entire reception band is used for obtaining the fragment N0 (the transfer speed in this case is the theoretical maximum transfer speed). For example, when there is one data providing node and the transmission bandwidth exceeds the reception bandwidth of the streaming playback device, the transfer rate of the fragment N0 can be made equal to the reception bandwidth, and the usage efficiency of the reception bandwidth is 100. %. On the other hand, if there is one data providing node and its transmission band is smaller than the reception band of the streaming playback device, the entire reception band cannot be used, and the utilization efficiency is less than 100%. If there is only one providing node, if substantially all of the transmission band is used for the transfer of the fragment N0, the fragment N0 is eventually transferred at the maximum transfer rate.

他方、例えば上述した一態様の如く、データ提供ノードが複数存在する場合、データ提供ノードの送信帯域の総和が当該受信帯域を越えるまで、データ提供ノードの数量を増やすことができる。この場合、個々のデータ提供ノードの送信帯域に関係なく、受信帯域の全域をフラグメントN0の取得に利用することが可能となり、効果的である。   On the other hand, for example, when there are a plurality of data providing nodes as in the above-described aspect, the number of data providing nodes can be increased until the sum of the transmission bands of the data providing nodes exceeds the reception band. In this case, the entire reception band can be used for obtaining the fragment N0 regardless of the transmission band of each data providing node, which is effective.

尚、複数のデータ提供ノードに対してフラグメントN0を要求する場合、フラグメントN0を構成するフラグメントのデータ位置は、基本的にはノード間で異ならしめられる。但し、データの伝送プロトコルによっては、フラグメントを転送する際にパケットエラーが頻繁に生じることがある。このような場合に、フラグメントの再送要求を頻繁に行われるのは、必ずしも効率的なデータ転送に繋がらない場合もある。そのような観点から、最大転送速度での転送を要求するにあたり、予め複数のノードに対し一部又は全体が重複するフラグメントN0が要求されてもよい。   When requesting a fragment N0 to a plurality of data providing nodes, the data positions of the fragments constituting the fragment N0 are basically different among the nodes. However, packet errors may frequently occur when transferring fragments depending on the data transmission protocol. In such a case, frequently requesting retransmission of fragments may not necessarily lead to efficient data transfer. From such a point of view, when requesting transfer at the maximum transfer rate, a fragment N0 that partially or entirely overlaps a plurality of nodes may be requested in advance.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記要求手段は、前記フラグメントNaが前記コンテンツデータの先頭から順次取得されるように前記フラグメントNaを要求すると共に、前記フラグメントNbが最後尾の前記フラグメントから順次取得されるように前記フラグメントNbを要求し、前記取得手段は、前記フラグメントNaと前記フラグメントNbとが重複しないように前記フラグメントNaと前記フラグメントNbを取得する。   In another aspect of the embodiment of the streaming playback device of the present invention, the requesting unit requests the fragment Na so that the fragment Na is sequentially acquired from the head of the content data, and the fragment Nb is the last. The fragment Nb is requested to be sequentially acquired from the tail fragment, and the acquisition means acquires the fragment Na and the fragment Nb so that the fragment Na and the fragment Nb do not overlap.

この態様によれば、フラグメントNa(先述した、フラグメントN0及びN1に分割される場合も含む)がコンテンツデータの先頭位置から、フラグメントNbは、コンテンツデータの最後尾の位置から夫々取得される。従って、フラグメントNaとフラグメントNbとは、その並行取得の過程において、最終的に、コンテンツデータの一のデータ位置で出会うことになる。   According to this aspect, the fragment Na (including the case where the fragment is divided into the fragments N0 and N1 described above) is acquired from the start position of the content data, and the fragment Nb is acquired from the end position of the content data. Therefore, the fragment Na and the fragment Nb finally meet at one data position of the content data in the process of parallel acquisition.

即ち、この態様におけるフラグメントNaとは、予め設定されたデータ量のフラグメントではなく、コンテンツデータの先頭位置からフラグメントNbの先頭(コンテンツの再生順序としての先頭であり、取得順序としては即ち最後尾である)のデータまでのデータ量を有するフラグメントである。同様に、この態様におけるフラグメントNbとは、予め設定されたデータ量のフラグメントではなく、コンテンツデータの最後尾の位置からフラグメントNaの最後尾のデータまでのデータ量を有するフラグメントである。   That is, the fragment Na in this aspect is not a fragment with a preset data amount, but the beginning of the fragment Nb from the beginning position of the content data (the beginning as the content playback order, and the acquisition order is the end. It is a fragment having a data amount up to (some) data. Similarly, the fragment Nb in this aspect is not a fragment having a preset data amount but a fragment having a data amount from the last position of the content data to the last data of the fragment Na.

ここで、先に述べたように、ネットワークの伝送状態や、第1及び第2記憶装置の負荷状態等は、時間的に決して不変ではなく、コンテンツデータのダウンロード時間の範囲において、変動することも珍しくない。このような場合、予めフラグメントNa及びNbのデータ量を定めてしまうと、フラグメントNbの書き込み終了前にフラグメントNaの読み出しが終了してしまう可能性がある。   Here, as described above, the transmission state of the network, the load state of the first and second storage devices, etc. are never invariant in time, and may vary within the range of the content data download time. Not uncommon. In such a case, if the data amounts of the fragments Na and Nb are determined in advance, there is a possibility that the reading of the fragment Na is completed before the writing of the fragment Nb is completed.

その点、このように、フラグメントNaを先頭から、フラグメントNbを最後尾から夫々転送するように転送要求が構築されていれば、ネットワークの伝送状態や各記憶装置の負荷状態を反映した現実的なデータ転送プロセスの中で、フラグメントNbの書き込み終了前にフラグメントNaの読み出しが終了する事態を確実に防止することができる。   In this respect, if the transfer request is constructed so that the fragment Na is transferred from the head and the fragment Nb is transferred from the tail, it is realistic to reflect the transmission state of the network and the load state of each storage device. In the data transfer process, it is possible to reliably prevent a situation where reading of the fragment Na ends before the writing of the fragment Nb ends.

即ち、何らかの理由で第2記憶装置の不揮発性記憶領域へのフラグメントNbの書き込みが遅滞すれば、その分フラグメントNaが大きくなり、何らかの理由で第1記憶装置の揮発性記憶領域へのフラグメントNaの書き込みが遅滞すれば、その分フラグメントNbが大きくなるのである。   That is, if the writing of the fragment Nb to the non-volatile storage area of the second storage device is delayed for some reason, the fragment Na becomes larger correspondingly, and the fragment Na to the volatile storage area of the first storage device for some reason. If the writing is delayed, the fragment Nb increases accordingly.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記第1特定手段は、前記ストリーミング再生装置の受信帯域及び前記データ提供ノードの送信帯域を特定する。   In another aspect of the embodiment of the streaming playback apparatus of the present invention, the first specifying unit specifies a reception band of the streaming playback apparatus and a transmission band of the data providing node.

この態様によれば、第1特定手段により、通信状態として、ストリーミング再生装置の受信帯域及びデータ提供ノードの送信帯域が特定される。これらは、フラグメントNaの読み出し終了タイミング及びフラグメントNbの書き込み開始タイミングを推定するために重要な情報であり、実施形態に係る「通信状態」の好適な一例となる。   According to this aspect, the first specifying unit specifies the reception band of the streaming playback device and the transmission band of the data providing node as the communication state. These are important information for estimating the read end timing of the fragment Na and the write start timing of the fragment Nb, and are suitable examples of the “communication state” according to the embodiment.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記第2特定手段は、前記第1及び第2記憶装置の残容量及び負荷状態を特定する。   In another aspect of the embodiment of the streaming playback device of the present invention, the second specifying means specifies the remaining capacity and the load state of the first and second storage devices.

この態様によれば、第2特定手段により、各記憶装置の状態として、残容量及び定性的又は定量的な負荷状態が特定される。これらは、フラグメントNaの読み出し終了タイミング及びフラグメントNbの書き込み開始タイミングを推定するために重要な情報であり、実施形態に係る「第1及び第2記憶装置の状態」の好適な一例となる。   According to this aspect, the remaining capacity and the qualitative or quantitative load state are specified as the state of each storage device by the second specifying unit. These are important information for estimating the read end timing of the fragment Na and the write start timing of the fragment Nb, and are suitable examples of the “states of the first and second storage devices” according to the embodiment.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記第3特定手段は、前記コンテンツのデータサイズ及び再生速度を特定する。   In another aspect of the embodiment of the streaming playback apparatus of the present invention, the third specifying means specifies the data size and playback speed of the content.

この態様によれば、第3特定手段により、コンテンツの状態として、コンテンツのデータサイズ及び再生速度が特定される。これらは、フラグメントNaの読み出し終了タイミング及びフラグメントNbの書き込み開始タイミングを推定するために重要な情報であり、実施形態に係る「コンテンツの状態」の好適な一例となる。   According to this aspect, the data size and playback speed of the content are specified as the content state by the third specifying means. These are important information for estimating the read end timing of the fragment Na and the write start timing of the fragment Nb, and are suitable examples of the “content state” according to the embodiment.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記第2記憶制御手段は、前記順次読み出されたフラグメントNaが前記第2記憶装置に蓄積されるように前記第2記憶装置を制御する。   In another aspect of the embodiment of the streaming playback device of the present invention, the second storage control means sets the second storage device so that the sequentially read fragment Na is accumulated in the second storage device. Control.

第1記憶装置の記憶領域は揮発性記憶領域であり、フラグメントNaをあくまで一時的に保持するに過ぎず、フラグメントNaのうち読み出されたデータ断片は、基本的に消失することになる。結果的に、コンテンツデータのうち、再生後にストリーミング再生装置に残存するデータは、フラグメントNbのみとなる。従って、次回、同一のコンテンツを再生しようとした場合には、フラグメントNaを再度取得する必要が生じ、効率的でない。   The storage area of the first storage device is a volatile storage area, and only holds the fragment Na temporarily, and the read data fragment of the fragment Na basically disappears. As a result, of the content data, the data remaining in the streaming playback device after playback is only the fragment Nb. Therefore, the next time the same content is to be reproduced, it becomes necessary to acquire the fragment Na again, which is not efficient.

この態様によれば、例えば、フラグメントNaのデータ断片が第1記憶装置の揮発性記憶領域から読み出される毎に、当該データ断片が複製され、第2記憶制御手段の作用により、第2記憶装置の不揮発性記憶領域に書き込まれる。   According to this aspect, for example, every time a data fragment of the fragment Na is read from the volatile storage area of the first storage device, the data fragment is duplicated, and the second storage control means operates to store the second storage device. It is written in the non-volatile storage area.

従って、コンテンツのストリーミング再生終了後は、コンテンツデータ全体が第2記憶装置の不揮発性記憶領域に蓄積された状態となり、再度コンテンツの再生が所望される場合において、冗長なデータ転送が不要となり、極めて円滑且つ効率的な再生が可能となる。   Therefore, after the streaming playback of the content is completed, the entire content data is stored in the nonvolatile storage area of the second storage device, and when it is desired to play back the content again, redundant data transfer becomes unnecessary. Smooth and efficient reproduction is possible.

尚、このように読み出し後のフラグメントNaが第2記憶装置に書き込まれる構成としても、第2記憶装置の不揮発性記憶領域に対する書き込み処理と読み出し処理とが並行して実行されることはなく、円滑且つ高品質なストリーミング再生を可能とする旨の実施形態の効果は確実に担保される。   Even if the fragment Na after reading is written to the second storage device in this way, the writing processing and the reading processing for the nonvolatile storage area of the second storage device are not executed in parallel, and smooth. And the effect of embodiment which enables high quality streaming reproduction | regeneration is ensured reliably.

本発明のストリーミング再生装置に係る実施形態の他の態様では、前記第2制御手段は、所定の消去要求に応じて前記不揮発性記憶領域に蓄積されたフラグメントを消去する。   In another aspect of the embodiment of the streaming playback apparatus of the present invention, the second control means erases the fragments stored in the nonvolatile storage area in response to a predetermined erase request.

この態様によれば、キーボード、各種ポインティングデバイス、或いは各種スイッチ等の各種入力手段を介した人為操作をトリガとして、或いは何らかの消去条件が満たされた場合に各種コントローラ等を介して自動的に生成される消去要求に応じて、第2記憶装置の不揮発性記憶領域に蓄積されたフラグメント、例えばフラグメントNb或いはそれに加えてフラグメントNa(即ち、この場合、実質的にコンテンツデータそのもの)が消去される。従って、第2記憶装置の不揮発性記憶領域を効率的に使用することができる。   According to this aspect, it is automatically generated through various controllers or the like, triggered by an artificial operation through various input means such as a keyboard, various pointing devices, or various switches, or when some erasing condition is satisfied. In response to the erasure request, the fragment stored in the non-volatile storage area of the second storage device, for example, the fragment Nb or the fragment Na (that is, the content data itself in this case) is erased. Therefore, the non-volatile storage area of the second storage device can be used efficiently.

本発明のストリーミング再生方法に係る実施形態は、コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置におけるストリーミング再生方法であって、前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求工程と、前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得工程と、前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御工程と、前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御工程と、前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生工程と、前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定工程と、前記第1及び第2記憶装置の状態を特定する第2特定工程と、前記コンテンツの状態を特定する第3特定工程と、前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように前記フラグメントNa及びNb並びにその転送速度を決定する決定工程とを具備し、前記要求工程は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求する。   An embodiment according to the streaming playback method of the present invention holds content data related to content and is accommodated in a network together with at least one data providing node capable of transferring a fragment of the content data requested to be transferred. Streaming playback of the content, comprising: a first storage device having an area; and a second storage device having a nonvolatile storage area and a writing speed slower than that of the first storage device and a large storage capacity. A streaming playback method in a possible streaming playback device, the fragment Na including playback start data capable of starting streaming playback of the content as the fragment to the data providing node, and data continuous with at least the fragment Na Flag with part A requesting step for requesting transfer to and from the client Nb, an acquiring step for acquiring the fragment Na and Nb transferred from the data providing node via the network, and the acquired fragment Na in the volatile storage area. A first storage control step for controlling the first storage device so as to be stored in the second storage device, and a second storage for controlling the second storage device so that the acquired fragment Nb is stored in the nonvolatile storage area The control step, and when the reproduction start data is accumulated, the accumulated fragment Na is sequentially read to start streaming reproduction of the content, and the streaming reproduction of the content corresponding to the accumulated fragment Na ends. When the accumulated fragment Nb is replaced with the accumulated fragment a playback step of sequentially reading out the content continuously from the portion that continues to a, a first specifying step of specifying a communication state between the data providing nodes via the network, the first and first 2 based on the second specifying step for specifying the state of the storage device, the third specifying step for specifying the state of the content, the specified communication state, the state of the first and second storage devices, and the state of the content. Determining the fragment Na and Nb and their transfer rate so that the accumulation of the fragment Nb ends before or at the same time as the reading of the fragment Na ends, and the requesting step comprises: , Transferring the determined fragments Na and Nb to the data providing node at the determined transfer rate. Request.

本発明のストリーミング再生方法に係る実施形態は、本発明のストリーミング再生装置に係る実施形態における各手段の動作に対応する各工程によって、本発明のストリーミング再生装置に係る実施形態と同等の効果を奏し得る。
<コンピュータプログラムの実施形態>
The embodiment according to the streaming playback method of the present invention achieves the same effect as the embodiment of the streaming playback device according to the present invention by each step corresponding to the operation of each means in the embodiment according to the streaming playback device of the present invention. obtain.
<Embodiment of Computer Program>

本発明のコンピュータプログラムに係る実施形態は、コンピュータシステムを上記いずれかのストリーミング再生装置として機能させる。   The embodiment according to the computer program of the present invention causes a computer system to function as any one of the above streaming playback devices.

当該コンピュータプログラムを格納するROM、CD−ROM、DVD−ROM、ハードディスク等の記録媒体或いはUSB(Universal Serial Bus)メモリ等コンピュータシステムに着脱可能な固体型記憶装置から、当該コンピュータプログラムをコンピュータシステムに読み込んで実行させれば、或いは、当該コンピュータプログラムを、例えば、通信手段等を介してコンピュータシステムにダウンロードさせた後に実行させれば、上述した本発明のストリーミング再生装置に係る実施形態を比較的簡単に実現できる。   The computer program is loaded into the computer system from a solid-state storage device such as a ROM, CD-ROM, DVD-ROM, hard disk or other storage medium storing the computer program or a USB (Universal Serial Bus) memory. If the computer program is executed, or if the computer program is executed after being downloaded to a computer system via, for example, communication means, the embodiment of the above-described streaming playback device of the present invention can be relatively easily performed. realizable.

尚、上述した本発明のストリーミング再生装置に係る各実施形態における各種態様に対応して、本発明のコンピュータプログラムに係る実施形態も各種態様を採ることが可能である。
<記録媒体の実施形態>
Incidentally, in response to the various aspects of the embodiments of the streaming playback apparatus of the present invention described above, the embodiments of the computer program of the present invention can also adopt various aspects.
<Embodiment of Recording Medium>

本発明の記録媒体に係る実施形態は、本発明のコンピュータプログラムに係る実施形態を記録する。   The embodiment according to the recording medium of the present invention records the embodiment according to the computer program of the present invention.

本発明の記録媒体に係る実施形態によれば、コンピュータシステムに装着又は接続することによって、或いはコンピュータシステムに備わる又は接続された然るべき読取装置に挿入することによって、記録している本発明のコンピュータプログラムに係る実施形態を、コンピュータシステムに読み込ませて実行させることができ、上述した本発明のストリーミング再生装置に係る実施形態を比較的簡単に実現できる。   According to the embodiment of the recording medium of the present invention, the computer program of the present invention recorded by being attached to or connected to a computer system, or by being inserted into an appropriate reader provided in or connected to the computer system. The embodiment according to the present invention can be read and executed by a computer system, and the embodiment according to the streaming playback apparatus of the present invention described above can be realized relatively easily.

以上説明したように、本発明のストリーミング再生装置に係る実施形態によれば、要求手段、取得手段、第1記憶制御手段、第2記憶制御手段、再生手段、第1特定手段、第2特定手段、第3特定手段及び決定手段を具備するので、再生装置側の処理能力によらずにコンテンツの円滑且つ高品質なストリーミング再生が実現される。   As described above, according to the embodiment of the streaming playback apparatus of the present invention, the request unit, the acquisition unit, the first storage control unit, the second storage control unit, the playback unit, the first specifying unit, and the second specifying unit. Since the third specifying means and the determining means are provided, smooth and high-quality streaming reproduction of content can be realized regardless of the processing capability of the reproducing apparatus.

以上説明したように、本発明のストリーミング再生方法に係る実施形態によれば、要求工程、取得工程、第1記憶制御工程、第2記憶制御工程、再生工程、第1特定工程、第2特定工程、第3特定工程及び決定工程を具備するので、再生装置側の処理能力によらずにコンテンツの円滑且つ高品質なストリーミング再生が実現される。   As described above, according to the embodiment of the streaming playback method of the present invention, the request process, the acquisition process, the first storage control process, the second storage control process, the playback process, the first specifying process, and the second specifying process. Since the third specifying step and the determination step are provided, smooth and high-quality streaming reproduction of content can be realized regardless of the processing capability on the reproducing apparatus side.

以上説明したように、本発明のコンピュータプログラムに係る実施形態によれば、コンピュータシステムを本発明のストリーミング再生装置に係る実施形態として機能させることができる。   As described above, according to the embodiment of the computer program of the present invention, the computer system can function as the embodiment of the streaming playback apparatus of the present invention.

以上説明したように、本発明の記録媒体に係る実施形態によれば、本発明のコンピュータプログラムに係る実施形態を記録することにより、コンピュータシステムを本発明のストリーミング再生装置に係る実施形態として機能させることができる。   As described above, according to the embodiment of the recording medium of the present invention, by recording the embodiment of the computer program of the present invention, the computer system functions as the embodiment of the streaming playback apparatus of the present invention. be able to.

本発明のこのような作用及び他の利得は次に説明する実施例から明らかにされる。   These effects and other advantages of the present invention will become apparent from the embodiments described below.

本発明の第1実施例に係るストリーミングシステムの構成を概念的に表してなる概略構成図である。1 is a schematic configuration diagram conceptually showing a configuration of a streaming system according to a first example of the present invention. 図1のストリーミングシステムにおけるコンテンツ再生装置の構成を概念的に表してなるブロック図である。FIG. 2 is a block diagram conceptually showing a configuration of a content reproduction device in the streaming system of FIG. 1. 図2のコンテンツ再生装置において実行されるストリーミング再生制御のフローチャートである。It is a flowchart of the streaming reproduction control performed in the content reproduction apparatus of FIG. 図2のストリーミング再生制御のサブルーチンたる準備処理のフローチャートである。3 is a flowchart of a preparation process which is a subroutine of the streaming reproduction control of FIG. 図2のストリーミング再生制御のサブルーチンたる初期フラグメント処理のフローチャートである。FIG. 3 is a flowchart of initial fragment processing which is a subroutine of streaming reproduction control of FIG. 2. FIG. 図2のストリーミング再生制御のサブルーチンたる並列フラグメント処理のフローチャートである。It is a flowchart of the parallel fragment process which is a subroutine of the streaming reproduction control of FIG. 図2のストリーミング再生制御のサブルーチンたる受信後処理のフローチャートである。3 is a flowchart of a post-reception process that is a subroutine of the streaming reproduction control of FIG. 2. 図2のストリーミング再生制御における各フラグメントの流れの概念図である。It is a conceptual diagram of the flow of each fragment in the streaming reproduction control of FIG. 図2のストリーミング再生制御における各データ量の一時間推移を例示する図である。It is a figure which illustrates 1 time transition of each data amount in the streaming reproduction | regeneration control of FIG. 本発明の第2実施例に係るストリーミング再生制御のフローチャートである。It is a flowchart of the streaming reproduction | regeneration control which concerns on 2nd Example of this invention. 図10のストリーミング再生制御のサブルーチンたる初期フラグメント処理のフローチャートである。It is a flowchart of the initial fragment process which is a subroutine of the streaming reproduction | regeneration control of FIG. 図10のストリーミング再生制御のサブルーチンたる並列フラグメント処理のフローチャートである。It is a flowchart of the parallel fragment process which is a subroutine of the streaming reproduction control of FIG. 図10のストリーミング再生制御のサブルーチンたる受信後処理のフローチャートである。It is a flowchart of the post-reception process which is a subroutine of the streaming reproduction control of FIG. 図10のストリーミング再生制御における各フラグメントの流れの概念図である。It is a conceptual diagram of the flow of each fragment in the streaming reproduction control of FIG. 本発明の第3実施例に係るストリーミングシステムの構成を概念的に表してなる概略構成図である。It is a schematic block diagram which represents notionally the structure of the streaming system based on 3rd Example of this invention. 図15のコンテンツ再生装置において実行されるストリーミング再生制御のフローチャートである。It is a flowchart of the streaming reproduction control performed in the content reproduction apparatus of FIG. 図16のストリーミング再生制御のサブルーチンたる準備処理のフローチャートである。FIG. 17 is a flowchart of a preparation process that is a subroutine of the streaming playback control of FIG. 16. FIG. 図16のストリーミング再生制御のサブルーチンたる初期フラグメント処理のフローチャートである。FIG. 17 is a flowchart of initial fragment processing, which is a subroutine for streaming playback control in FIG. 16. FIG. 図16のストリーミング再生制御のサブルーチンたる並列フラグメント処理のフローチャートである。It is a flowchart of the parallel fragment process which is a subroutine of the streaming reproduction | regeneration control of FIG. 図16のストリーミング再生制御における各フラグメントの流れの概念図である。It is a conceptual diagram of the flow of each fragment in the streaming reproduction control of FIG.

以下、適宜図面を参照して、本発明の好適な各種実施例について説明する。
<第1実施例>
<実施例の構成>
始めに、図1を参照し、本発明の第1実施例に係るストリーミングシステム1の構成について説明する。ここに、図1は、ストリーミングシステム1の構成を概念的に表してなる概略構成図である。
Hereinafter, various preferred embodiments of the present invention will be described with reference to the drawings as appropriate.
<First embodiment>
<Configuration of Example>
First, the configuration of the streaming system 1 according to the first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a schematic configuration diagram conceptually showing the configuration of the streaming system 1.

図1において、ストリーミングシステム1は、夫々が広域ネットワーク200(本実施例ではIP(Internet Protocol)網である)に収容された、コンテンツ再生装置100並びにデータ提供ノード300(即ち、本発明に係る「データ提供ノード」の一例である)を備え、コンテンツ再生装置100で映像或いは音声に係る各種コンテンツのストリーミング再生を実現するためのシステムである。より具体的には、コンテンツ再生装置100は、データ提供ノード300に対してコンテンツデータを要求し、データ提供ノード300から転送されるコンテンツデータの断片的データに基づいて、ストリーミング再生を行う構成となっている。   In FIG. 1, the streaming system 1 includes a content reproduction device 100 and a data providing node 300 (that is, according to the present invention) each accommodated in a wide area network 200 (in this embodiment, an IP (Internet Protocol) network). This is a system for realizing streaming playback of various contents related to video or audio on the content playback apparatus 100. More specifically, the content playback apparatus 100 is configured to request content data from the data providing node 300 and perform streaming playback based on fragmented data of the content data transferred from the data providing node 300. ing.

尚、図1に例示されるストリーミングシステム1の構成は、コンテンツ再生装置100でストリーミング再生を行うための一例に過ぎない。例えば、ストリーミングシステム1では、コンテンツ再生装置100とデータ提供ノード300とが、特定のサーバ装置を介することなく個別にP2P通信を行う構成となっているが、コンテンツ再生装置100とデータ提供ノード300とは、ネットワーク200に収容された、然るべきサーバ装置を介して通信を行ってもよい。また、図1においては、一つのデータ提供ノード300が示されるが、現実的な制約を除けば、基本的にデータ提供ノードの数に制限はなく、データ提供ノードは複数であってもよい。P2P通信によりストリーミングシステムを構築する場合、ネットワーク200に収容された不特定多数のノード(例えば、個人所有のパーソナルコンピュータ等)が適宜データ提供ノードとなり得る同時に、コンテンツ再生装置100も、他のノードに対してデータ提供ノードの一つとなり得る。尚、データ提供ノードが複数である場合については、第3実施例において説明することとする。   Note that the configuration of the streaming system 1 illustrated in FIG. 1 is merely an example for performing streaming playback on the content playback apparatus 100. For example, in the streaming system 1, the content playback device 100 and the data providing node 300 are configured to perform P2P communication individually without going through a specific server device. May communicate via an appropriate server device accommodated in the network 200. In FIG. 1, one data providing node 300 is shown. However, the number of data providing nodes is basically not limited except for realistic restrictions, and a plurality of data providing nodes may be provided. When a streaming system is constructed by P2P communication, an unspecified number of nodes (for example, personal computers owned by individuals) accommodated in the network 200 can appropriately be data providing nodes. At the same time, the content reproduction apparatus 100 can be transferred to other nodes. On the other hand, it can be one of the data providing nodes. The case where there are a plurality of data providing nodes will be described in the third embodiment.

次に、図2を参照し、コンテンツ再生装置100の構成について、その動作を交えて説明する。ここに、図2は、コンテンツ再生装置100の構成を概念的に表してなるブロック図である。尚、同図において、図1と重複する箇所には、同一の符合を付してその説明を適宜省略することとする。   Next, the configuration of the content reproduction apparatus 100 will be described with reference to FIG. FIG. 2 is a block diagram conceptually showing the configuration of the content reproduction apparatus 100. In the figure, the same parts as those in FIG. 1 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.

図2において、コンテンツ再生装置100は、制御部110、プロトコル生成部120、送信部130、受信部140、受信データ処理部150、HDD160、高速メモリ170及び再生部180を備えた、本発明に係る「ストリーミング再生装置」の一例である。   2, the content reproduction apparatus 100 includes a control unit 110, a protocol generation unit 120, a transmission unit 130, a reception unit 140, a reception data processing unit 150, an HDD 160, a high-speed memory 170, and a reproduction unit 180 according to the present invention. It is an example of a “streaming playback device”.

制御部110は、CPU又はMPU等の演算処理装置と、ROM(Read Only Memory)及びRAM(Random Access Memory)等の記憶装置を備えた、コンテンツ再生装置10の動作全体を制御する電子制御装置であり、ROMに格納されたコンピュータプログラムに従って、後述するストリーミング再生制御を実行可能に構成される。当該コンピュータプログラムは、本発明に係る「ストリーミング再生方法」を実現するための、本発明に係る「コンピュータプログラム」の一例である。   The control unit 110 is an electronic control device that controls the overall operation of the content playback device 10, which includes an arithmetic processing device such as a CPU or MPU, and a storage device such as a ROM (Read Only Memory) and a RAM (Random Access Memory). In accordance with a computer program stored in the ROM, it is configured to be able to execute streaming playback control to be described later. The computer program is an example of the “computer program” according to the present invention for realizing the “streaming reproduction method” according to the present invention.

このコンピュータプログラムは、ハードディスク、CD−ROM及びDVD−ROM等の各種記録媒体(本発明に係る「記録媒体」の一例である)に記録することが可能であり、この種の記録媒体が、例えば各種のコンピュータシステムに内蔵又は付設される然るべき記録再生装置に設置、格納又は挿入された状態において、当該コンピュータシステムを、本発明に係る「ストリーミング再生装置」の一例として機能させることもまた可能である。   This computer program can be recorded on various recording media such as a hard disk, CD-ROM, and DVD-ROM (an example of the “recording medium” according to the present invention). It is also possible to cause the computer system to function as an example of the “streaming playback device” according to the present invention in a state of being installed, stored, or inserted in an appropriate recording / playback device built in or attached to various computer systems. .

尚、制御部110は、このストリーミング再生制御の実行過程において、本発明に係る「決定手段」、「第1特定手段」、「第2特定手段」及び「第3特定手段」の夫々一例として機能する構成となっている。   The control unit 110 functions as an example of each of the “determination unit”, “first identification unit”, “second identification unit”, and “third identification unit” according to the present invention in the execution process of the streaming playback control. It is the composition to do.

プロトコル生成部120は、データ提供ノード300に対してコンテンツデータの断片データたる各種フラグメントを要求するためのデータ要求プロトコルを生成する処理ユニットであり、本発明に係る「要求手段」の一例である。尚、プロトコル生成部120は、制御部110によってその動作が上位に制御される構成となっている。   The protocol generation unit 120 is a processing unit that generates a data request protocol for requesting the data providing node 300 for various fragments that are fragment data of content data, and is an example of the “request unit” according to the present invention. Note that the protocol generator 120 is configured such that its operation is controlled by the controller 110 at a higher level.

送信部130は、出力端子(符合省略)がネットワーク200に接続された送信インターフェイスであり、ネットワーク200を介し、制御部110から指定される各種のデータをデータ提供ノード300へ送信可能に構成されている。尚、制御部110がストリーミング再生制御を実行する過程においてプロトコル生成部120により生成されるデータ要求プロトコルも、このデータの一つとして送信部130から送信される構成となっている。即ち、送信部130は、プロトコル生成部120と共に、本発明に係る「要求手段」の一例として機能するように構成されている。   The transmission unit 130 is a transmission interface having an output terminal (not shown) connected to the network 200, and is configured to be able to transmit various data designated by the control unit 110 to the data providing node 300 via the network 200. Yes. Note that the data request protocol generated by the protocol generation unit 120 in the process in which the control unit 110 executes streaming playback control is also transmitted from the transmission unit 130 as one of the data. That is, the transmission unit 130 is configured to function as an example of the “request unit” according to the present invention, together with the protocol generation unit 120.

受信部140は、出力端子(符合省略)がネットワーク200に接続された、本発明に係る「取得手段」の一例たる受信インターフェイスであり、ネットワーク200を介し、データ提供ノード300から転送される各種のデータを受信可能に構成されている。尚、データ提供ノード300からネットワーク200を介して転送される各種フラグメントも、このデータの一つとして受信部140で受信される構成となっている。   The receiving unit 140 is a receiving interface that is an example of an “acquiring unit” according to the present invention, whose output terminal (not shown) is connected to the network 200, and various types of data transferred from the data providing node 300 via the network 200. It is configured to receive data. Various fragments transferred from the data providing node 300 via the network 200 are also received by the receiving unit 140 as one of the data.

受信データ処理部150は、受信部140を介して受信された受信データの内容を解析する処理ユニットである。受信データ処理部150は、制御部110によってその動作が上位に制御される構成となっている。受信データ処理部150は、例えば、データ提供ノード300がフラグメントと共に転送する送信プロトコルを解析して、転送されたフラグメントの断片位置やデータサイズを特定することができる。   The reception data processing unit 150 is a processing unit that analyzes the content of reception data received via the reception unit 140. The reception data processing unit 150 is configured such that its operation is controlled by the control unit 110 at a higher level. For example, the reception data processing unit 150 can identify the fragment position and data size of the transferred fragment by analyzing a transmission protocol that the data providing node 300 transfers together with the fragment.

HDD160は、比較的大容量(例えば、数十〜数百GB或いは数TB)の不揮発性記憶領域を有するハードディスクと、当該ハードディスクに対する情報の記録再生処理を実行する光ピックアップ装置と、その制御系とを含んでなる、本発明に係る「第2記憶装置」の一例たる記憶装置である。   The HDD 160 includes a hard disk having a relatively large capacity (for example, several tens to several hundreds GB or several TB) of a non-volatile storage area, an optical pickup device that performs information recording / reproduction processing on the hard disk, and a control system thereof. Is a storage device that is an example of a “second storage device” according to the present invention.

高速メモリ170は、HDD160と較べて(厳密には、HDD160に備わるハードディスクと較べて)小容量(例えば、数百MB〜数GB)の蓄積容量M(byte)を有する揮発性記憶領域を備えたメモリ素子であり、本発明に係る「第1記憶装置」の一例である。尚、高速メモリ170は、その揮発性記憶領域に対し、HDD160の書き込み速度より十分に速い(例えば、数倍〜数十倍)速度で情報を書き込むことができる。その一方で、高速メモリ170は、読み出されたデータが揮発性記憶領域から消去される構成となっている。   The high-speed memory 170 includes a volatile storage area having a storage capacity M (byte) of a small capacity (for example, several hundred MB to several GB) compared to the HDD 160 (strictly speaking, compared to a hard disk provided in the HDD 160). It is a memory element and is an example of the “first storage device” according to the present invention. The high-speed memory 170 can write information in the volatile storage area at a speed sufficiently faster (for example, several times to several tens of times) than the writing speed of the HDD 160. On the other hand, the high-speed memory 170 is configured to erase the read data from the volatile storage area.

再生部180は、コンテンツデータ或いはその断片データを、そのエンコードビットレートに等しい再生速度P(byte/sec)でデコードして出力可能なデコーダ部を備えたコンテンツ再生ユニットであり、本発明に係る「再生手段」の一例である。尚、再生部180は、制御部110によりその動作が上位に制御される構成となっている。
<実施例の動作>
以下、本実施例の動作として、ストリーミング再生制御について説明する。
The playback unit 180 is a content playback unit including a decoder unit that can decode and output content data or fragment data thereof at a playback speed P (byte / sec) equal to the encoding bit rate. It is an example of “reproducing means”. Note that the playback unit 180 is configured such that its operation is controlled by the control unit 110 at a higher level.
<Operation of Example>
Hereinafter, streaming playback control will be described as the operation of this embodiment.

<ストリーミング再生制御の概要>
始めに、ストリーミング再生制御の概要について説明する。
<Overview of streaming playback control>
First, an overview of streaming playback control will be described.

ストリーミング再生制御は、コンテンツ再生装置100においてコンテンツのストリーミング再生を実現するための制御である。コンテンツの再生に必要なコンテンツデータは、コンテンツ再生装置100に蓄積されておらず、ネットワーク200を介してデータ提供ノード300から取得される。この際、データ提供ノード300から取得されるデータは、コンテンツデータを所定の基準に従って細分化してなる断片データを一単位として取得される。この断片データは、フラグメントと称されるデータ単位を構築する。   The streaming playback control is control for realizing streaming playback of content in the content playback apparatus 100. Content data necessary for content reproduction is not stored in the content reproduction device 100 and is acquired from the data providing node 300 via the network 200. At this time, the data acquired from the data providing node 300 is acquired as a unit of fragment data obtained by subdividing the content data according to a predetermined standard. This fragment data constructs a data unit called a fragment.

フラグメントは、フラグメントN0、フラグメントN1及びフラグメントN2から構成され、これらの総和は、コンテンツデータに等しくなっている。フラグメント相互間のデータの割り当て(データ量及びデータ位置)は、プロトコル生成部120において生成されるデータ要求プロトコルによって規定される。   The fragment is composed of a fragment N0, a fragment N1, and a fragment N2, and the sum of these is equal to the content data. Data allocation (data amount and data position) between fragments is defined by a data request protocol generated in the protocol generation unit 120.

コンテンツ再生装置100は、取得されるコンテンツデータのうち、先頭のデータからM0(bit)のデータ量(以下、適宜「再生開始データ量M0」と称する)に相当する再生開始データが取得された時点で、コンテンツの再生を開始することができる。ストリーミング再生制御は、データ要求プロトコルの送信時点からコンテンツデータのダウンロード完了までの時間を抑制しつつ、制御部110の処理能力によらない円滑且つ高品質なストリーミング再生の実現を目的とした制御である。   The content playback device 100, when the playback start data corresponding to the data amount of M0 (bit) (hereinafter referred to as “playback start data amount M0” as appropriate) is acquired from the top data among the acquired content data Thus, the reproduction of the content can be started. The streaming playback control is a control aimed at realizing smooth and high-quality streaming playback regardless of the processing capability of the control unit 110 while suppressing the time from the transmission point of the data request protocol to the completion of downloading of the content data. .

<ストリーミング再生制御の詳細>
次に、図3を参照し、ストリーミング再生制御の詳細について説明する。ここに、図3は、ストリーミング再生制御のフローチャートである。尚、本実施例では、データ提供ノード300が再生すべきコンテンツに係るコンテンツデータを全て保持しているものとする。
<Details of streaming playback control>
Next, details of the streaming playback control will be described with reference to FIG. FIG. 3 is a flowchart of the streaming playback control. In this embodiment, it is assumed that the data providing node 300 holds all the content data related to the content to be reproduced.

図3において、制御部110は、準備処理(ステップS100)、初期フラグメント処理(ステップS200)、並列フラグメント処理(ステップS300)及び受信後処理(ステップS400)の順で順次各サブルーチンを実行する。受信後処理が終了すると、ストリーミング再生制御は終了する。   In FIG. 3, the control unit 110 sequentially executes each subroutine in the order of preparation processing (step S100), initial fragment processing (step S200), parallel fragment processing (step S300), and post-reception processing (step S400). When the post-reception process ends, the streaming playback control ends.

<準備処理の詳細>
次に、図4を参照し、準備処理の詳細について説明する。ここに、図4は、準備処理のフローチャートである。
<Details of preparation process>
Next, the details of the preparation process will be described with reference to FIG. FIG. 4 is a flowchart of the preparation process.

図4において、制御部110は、ノード情報を取得する(ステップS101)。   In FIG. 4, the control unit 110 acquires node information (step S101).

ここで、ノード情報とは、データ提供ノード300のIPアドレス、保持するフラグメントの情報及び各種ハードウェア性能に関する情報(CPUの処理速度やメモリの情報)等を意味する。ノード情報は、データ提供ノード300自身が保持しており、制御部110は、データ提供ノードに対してこれらの情報の提供を要求することができる。要求に応じてこれらの情報が提供されると、制御部110は、これらを順次受信データ解析部150を介して解析し、ノード情報としてRAMに格納する。   Here, the node information means the IP address of the data providing node 300, information on fragments to be held, information on various hardware performances (CPU processing speed and memory information), and the like. The node information is held by the data providing node 300 itself, and the control unit 110 can request the data providing node to provide such information. When these pieces of information are provided in response to the request, the control unit 110 sequentially analyzes them through the reception data analysis unit 150 and stores them in the RAM as node information.

次に、制御部110は、コンテンツ情報を取得する(ステップS102)。本実施例において、コンテンツ情報とは、コンテンツの再生速度P(byte/sec)及びコンテンツサイズN(byte)であるとする。ステップS102は、コンテンツの状態を特定する旨の、本発明に係る「第3特定手段」の動作の一例である。尚、この際、制御部110は、送信部130を介して、コンテンツ情報の送信を促すリクエストを送信し、受信部140を介し、当該リクエストに応じてデータ転送ノード300から送信されるコンテンツ情報を取得すると共に、その内容を受信データ解析部150により解析することによって、コンテンツ情報を取得し、RAMに格納する。   Next, the control unit 110 acquires content information (step S102). In this embodiment, the content information is a content playback speed P (byte / sec) and a content size N (byte). Step S102 is an example of the operation of the “third specifying means” according to the present invention to specify the state of the content. At this time, the control unit 110 transmits a request for urging transmission of content information via the transmission unit 130, and transmits content information transmitted from the data transfer node 300 in response to the request via the reception unit 140. At the same time, the received data analysis unit 150 analyzes the content, thereby acquiring the content information and storing it in the RAM.

次に、制御部110は、バッファ状態を取得する(ステップS103)。本実施例において、バッファ状態とは、HDD160及び高速メモリ170の空き容量及び負荷状態(ビジー状態)であるとする。ステップS103は、第1及び第2記憶装置の状態を特定する旨の、本発明に係る「第2特定手段」の動作の一例である。尚、HDD160及び高速メモリ170共にコンテンツ再生装置100の構成要素であるので、制御部110は、コンテンツ再生装置100の動作状態を制御する過程で常にこれらの情報を取得することができる。尚、先に述べた高速メモリ170の蓄積容量M(byte)とは、この段階でコンテンツの再生に供し得ると判断された空き容量であるとする。   Next, the control part 110 acquires a buffer state (step S103). In this embodiment, the buffer state is assumed to be the free capacity and load state (busy state) of the HDD 160 and the high-speed memory 170. Step S103 is an example of the operation of the “second specifying means” according to the present invention to specify the states of the first and second storage devices. Since both the HDD 160 and the high-speed memory 170 are constituent elements of the content reproduction apparatus 100, the control unit 110 can always acquire these pieces of information in the process of controlling the operation state of the content reproduction apparatus 100. It is assumed that the storage capacity M (byte) of the high-speed memory 170 described above is a free capacity determined to be available for content reproduction at this stage.

次に、制御部110は、ネットワーク状態を取得する(ステップS104)。本実施例において、ネットワーク状態とは、ネットワーク200を介したコンテンツ再生装置100とデータ提供ノード300との通信状態を意味し、より具体的には、コンテンツ再生装置100の受信帯域幅B(byte/sec)、データ提供ノード300の送信帯域幅C(byte/sec)、ネットワーク200の伝送遅延としてのRTT(Round Trip Time)及びTTL(Time To Live)であるとする。ステップS104は、ネットワークを介したデータ提供ノードとの間の通信状態を特定する旨の、本発明に係る「第1特定手段」の動作の一例である。   Next, the control part 110 acquires a network state (step S104). In the present embodiment, the network state means a communication state between the content reproduction apparatus 100 and the data providing node 300 via the network 200, and more specifically, the reception bandwidth B (byte / byte) of the content reproduction apparatus 100. sec), transmission bandwidth C (byte / sec) of the data providing node 300, RTT (Round Trip Time) and TTL (Time To Live) as transmission delay of the network 200. Step S104 is an example of the operation of the “first specifying unit” according to the present invention to specify the communication state with the data providing node via the network.

尚、受信帯域幅B及び送信帯域幅Cは、コンテンツ再生装置100及びデータ提供ノード300における設定値である。また、RTTは、RTCP(Real-time Transport Control Protocol)のSR(Sender Report)やRR(Receiver Report)を利用する等して測定される。尚、各通信帯域幅については、ネットワーク200を介してランダムにデータの送受信を行った際のデータの実際の伝送状態に基づいて適宜推定されてもよい。   The reception bandwidth B and the transmission bandwidth C are set values in the content reproduction device 100 and the data providing node 300. Further, RTT is measured by using SR (Sender Report) or RR (Receiver Report) of RTCP (Real-time Transport Control Protocol). Each communication bandwidth may be appropriately estimated based on an actual transmission state of data when data is transmitted / received randomly via the network 200.

ステップS101乃至S104において必要な情報を取得すると、制御部110は、コンテンツデータのフラグメントサイズを決定する(ステップS105)。ここで、本実施例におけるフラグメントサイズの決定方法について説明する。制御部110は先ず、コンテンツデータを、フラグメントN0、フラグメントN1及びフラグメントN2の三種類のフラグメントに分割する。即ち、下記(1)式が成立する。尚、下記(1)式において、N0、N1及びN2は、各フラグメントのデータ量(bit)を表すものとする。尚、フラグメントN0とフラグメントN1とにより、本発明に係る「フラグメントNa」が、フラグメントN2により本発明に係るフラグメントNbが、夫々構成される。   When the necessary information is acquired in steps S101 to S104, the control unit 110 determines the fragment size of the content data (step S105). Here, a method for determining the fragment size in the present embodiment will be described. First, the control unit 110 divides the content data into three types of fragments: a fragment N0, a fragment N1, and a fragment N2. That is, the following equation (1) is established. In the following formula (1), N0, N1, and N2 represent the data amount (bit) of each fragment. The fragment N0 and the fragment N1 constitute the “fragment Na” according to the present invention, and the fragment N2 constitutes the fragment Nb according to the present invention.

N=N0+N1+N2・・・(1)
次に、制御部110は、フラグメントN0を下記(2)式に従って決定する。
N = N0 + N1 + N2 (1)
Next, the control unit 110 determines the fragment N0 according to the following equation (2).

N0=min(M+(M−M0)/(B−P)×P,N)・・・(2)
ここで、(2)式右辺の左側の比較項のデータ量が、コンテンツサイズNよりも大きければ、N0=Nとなり、フラグメントN0とは即ちコンテンツデータそのものとなるが、通常、コンテンツサイズNは、高速メモリ170の蓄積容量Mよりも十分に大きいため、N0は、(2)式右辺の左側の比較項となる。
N0 = min (M + (M−M0) / (B−P) × P, N) (2)
Here, if the data amount of the comparison term on the left side of the right side of equation (2) is larger than the content size N, N0 = N, and the fragment N0 is the content data itself, but usually the content size N is Since it is sufficiently larger than the storage capacity M of the high-speed memory 170, N0 is a comparison term on the left side of the right side of equation (2).

尚、本実施例では、データ提供ノード300の送信帯域幅Cがコンテンツ再生装置100の受信帯域幅Bよりも十分に大きいものとし、これらの間の最大の転送速度は、受信帯域幅Bに等しいものとする。また、フラグメントN0の転送速度は、最大転送速度である受信帯域幅Bに相当する速度に、フラグメントN1の転送速度はコンテンツの再生速度Pに、フラグメントN2の転送速度は受信帯域幅Bから再生速度Pに相当する帯域幅を除く残余の帯域幅(即ち、B−Pである)に相当する速度に、夫々予め決定されている。   In this embodiment, it is assumed that the transmission bandwidth C of the data providing node 300 is sufficiently larger than the reception bandwidth B of the content reproduction device 100, and the maximum transfer speed between them is equal to the reception bandwidth B. Shall. The transfer speed of the fragment N0 is a speed corresponding to the reception bandwidth B which is the maximum transfer speed, the transfer speed of the fragment N1 is the playback speed P of the content, and the transfer speed of the fragment N2 is the playback speed from the reception bandwidth B. The speed corresponding to the remaining bandwidth excluding the bandwidth corresponding to P (that is, BP) is determined in advance.

尚、データ提供ノード300が単一のノードである場合、その送信帯域幅Cがコンテンツ再生ノード100の受信帯域幅B未満であれば、当然ながらこれらの間のデータ伝送速度は、送信帯域幅Cに律束される。   In the case where the data providing node 300 is a single node, if the transmission bandwidth C is less than the reception bandwidth B of the content reproduction node 100, the data transmission speed between them is naturally the transmission bandwidth C. To be ruled.

次に、制御部110は、フラグメントN1及びN2を下記(3)及び(4)式に従って決定する。   Next, the control unit 110 determines the fragments N1 and N2 according to the following equations (3) and (4).

N1=(N−N0)/B×P・・・(3)
N2=(N−N0)/B×(B―P)・・・(4)
上記(3)式及び(4)式は、フラグメントN0を除いた残余のフラグメントを、フラグメントN1及びN2に割り当てられる受信帯域幅(即ち、転送速度である)の比率でフラグメントN1及びN2に割り当てることを意味している。別言すれば、本実施例において、フラグメントN1の取得完了タイミングと、フラグメントN2の取得完了タイミングとは、理想的には一致する。
N1 = (N−N0) / B × P (3)
N2 = (N−N0) / B × (BP) (4)
In the above equations (3) and (4), the remaining fragments excluding the fragment N0 are allocated to the fragments N1 and N2 at the ratio of the reception bandwidth (that is, the transfer rate) allocated to the fragments N1 and N2. Means. In other words, in this embodiment, the acquisition completion timing of the fragment N1 and the acquisition completion timing of the fragment N2 ideally match.

フラグメントサイズが決定されると、制御部110は、HDD160及び高速メモリ170に然るべきバッファ領域を確保して(ステップS106)、準備処理を終了する。   When the fragment size is determined, the control unit 110 secures appropriate buffer areas in the HDD 160 and the high-speed memory 170 (step S106) and ends the preparation process.

<初期フラグメント処理の詳細>
次に、図5を参照し、初期フラグメント処理の詳細について説明する。ここに、図5は、初期フラグメント処理のフローチャートである。
<Details of initial fragment processing>
Next, details of the initial fragment processing will be described with reference to FIG. FIG. 5 is a flowchart of the initial fragment processing.

始めに、制御部110は、データ提供ノード300に対し、フラグメントN0を要求する(ステップS201)。この際、制御部110は、プロトコル生成部120を介して、先に決定されたフラグメントサイズをデータ提供ノード300に伝達するプロトコルを生成し、送信部130を介してデータ提供ノード300に送信する。このプロトコルには、フラグメントN0のデータサイズN0、コンテンツデータにおけるフラグメントN0の断片位置及びフラグメントN0を構成する各断片データの断片位置が記述されている。   First, the control unit 110 requests the fragment N0 from the data providing node 300 (step S201). At this time, the control unit 110 generates a protocol for transmitting the previously determined fragment size to the data providing node 300 through the protocol generating unit 120 and transmits the protocol to the data providing node 300 through the transmitting unit 130. In this protocol, the data size N0 of the fragment N0, the fragment position of the fragment N0 in the content data, and the fragment position of each piece of fragment data constituting the fragment N0 are described.

フラグメントN0の転送を要求すると、制御部110は、データ提供ノード300から要求に応じたフラグメントN0の転送が開始されるのを待ち、データ転送単位たる一パケットに収まる断片データサイズ毎に受信部140に到着するフラグメントN0を受信する(ステップS202)。受信されたフラグメントN0は、高速メモリ170に順次蓄積される(ステップS203)。このフラグメントN0の受信及び高速メモリ170への蓄積に係る処理は、データ提供ノード300からのフラグメントN0の転送が終了するまで継続する。   When the transfer of the fragment N0 is requested, the control unit 110 waits for the data providing node 300 to start the transfer of the fragment N0 according to the request, and receives the reception unit 140 for each fragment data size that fits in one packet as a data transfer unit. Fragment N0 arriving at is received (step S202). The received fragment N0 is sequentially stored in the high speed memory 170 (step S203). The processing relating to the reception of the fragment N0 and the storage in the high-speed memory 170 continues until the transfer of the fragment N0 from the data providing node 300 is completed.

尚、この段階でデータ提供ノード300に要求されるフラグメントはフラグメントN0のみであるから、フラグメントN0は、最大転送速度、即ち、この場合、コンテンツ再生装置100の受信帯域幅B全域を使用して取得される。   Note that since the fragment requested to the data providing node 300 at this stage is only the fragment N0, the fragment N0 is acquired using the maximum transfer rate, that is, in this case, the entire reception bandwidth B of the content reproduction device 100. Is done.

一方、制御部110は、高速メモリ170へのフラグメントN0の蓄積と並行して、高速メモリ170に蓄積されたフラグメント量たるメモリキャッシュ量が、再生開始データ量M0よりも大きいか否かを判別する(ステップS204)。メモリキャッシュ量がM0以下である場合には(ステップS204:NO)、処理はステップS202に戻される。   On the other hand, in parallel with the accumulation of the fragment N0 in the high-speed memory 170, the control unit 110 determines whether or not the memory cache amount that is the fragment amount accumulated in the high-speed memory 170 is larger than the reproduction start data amount M0. (Step S204). If the memory cache amount is less than or equal to M0 (step S204: NO), the process returns to step S202.

メモリキャッシュ量が再生開始データ量M0より大きい場合(ステップS204:YES)、制御部110は、高速メモリ170に蓄積されたフラグメントN0たるメモリキャッシュを、先頭データから順次読み出して再生する(ステップS205)。即ち、この段階で、コンテンツのストリーミング再生が開始される。   When the memory cache amount is larger than the reproduction start data amount M0 (step S204: YES), the control unit 110 sequentially reads and reproduces the memory cache as the fragment N0 stored in the high-speed memory 170 from the top data (step S205). . That is, at this stage, streaming playback of content is started.

コンテンツのストリーミング再生が開始されると、制御部110は、受信データ量がフラグメントN0のデータ量N0以上であるか否かを判別する(ステップS206)。受信データ量がN0未満であれば(ステップS206:NO)、処理はステップS202に戻され、受信データ量がN0以上であれば(ステップS206:YES)、即ち、高速メモリ170の蓄積容量Mに相当するフラグメントが蓄積されると、初期フラグメント処理は終了する。   When streaming playback of content is started, the control unit 110 determines whether or not the received data amount is equal to or greater than the data amount N0 of the fragment N0 (step S206). If the received data amount is less than N0 (step S206: NO), the process returns to step S202. If the received data amount is N0 or more (step S206: YES), that is, the storage capacity M of the high-speed memory 170 is reached. When the corresponding fragment is accumulated, the initial fragment processing ends.

<並列フラグメント処理の詳細>
次に、図6を参照し、並列フラグメント処理の詳細について説明する。ここに、図6は、並列フラグメント処理のフローチャートである。
<Details of parallel fragment processing>
Next, the details of the parallel fragment processing will be described with reference to FIG. FIG. 6 is a flowchart of parallel fragment processing.

始めに、制御部110は、データ提供ノード300に対し、フラグメントN1及びN2を要求する(ステップS301)。この際、制御部110は、プロトコル生成部120を介して、先に決定されたフラグメントサイズをデータ提供ノード300に伝達するプロトコルを生成し、送信部130を介してデータ提供ノード300に送信する。このプロトコルには、フラグメントN1及びN2のデータサイズN1及びN2、コンテンツデータにおけるフラグメントN1及びN2の断片位置並びに各フラグメントにおける断片データの断片位置が記述されている。また、制御部110は、これと合わせて、フラグメントN1の転送速度をコンテンツの再生速度Pとし、フラグメントN2の転送速度を受信帯域幅Bから再生速度Pを除外した残余の帯域幅とする旨をデータ提供ノード300に対し指示する。   First, the control unit 110 requests the fragments N1 and N2 from the data providing node 300 (step S301). At this time, the control unit 110 generates a protocol for transmitting the previously determined fragment size to the data providing node 300 through the protocol generating unit 120 and transmits the protocol to the data providing node 300 through the transmitting unit 130. This protocol describes the data sizes N1 and N2 of fragments N1 and N2, the fragment positions of fragments N1 and N2 in content data, and the fragment positions of fragment data in each fragment. In addition to this, the control unit 110 sets the transfer speed of the fragment N1 as the content playback speed P, and sets the transfer speed of the fragment N2 as the remaining bandwidth excluding the playback speed P from the reception bandwidth B. An instruction is given to the data providing node 300.

制御部110は、フラグメントの受信が開始されると(ステップS302)、受信データ解析部150を介して、受信したフラグメントがフラグメントN1であるかフラグメントN2であるかを判別する(ステップS303)。   When reception of a fragment is started (step S302), the control unit 110 determines whether the received fragment is the fragment N1 or the fragment N2 via the reception data analysis unit 150 (step S303).

受信したフラグメントが、フラグメントN1である場合(ステップS303:YES)、制御部110は、フラグメントを高速メモリ170に蓄積する(ステップS304)と共に、高速メモリ170からキャッシュを読み出して、メモリキャッシュを再生速度Pで再生する(ステップS306)。即ち、高速メモリ170には、再生速度Pでフラグメントが読み出される一方で、再生速度Pでフラグメントが書き込まれる。従って、高速メモリ170に蓄積されているフラグメント量は、基本的に蓄積容量Mに維持される。   When the received fragment is the fragment N1 (step S303: YES), the control unit 110 accumulates the fragment in the high speed memory 170 (step S304) and reads the cache from the high speed memory 170 to reproduce the memory cache. Playback is performed with P (step S306). That is, the fragment is read at the reproduction speed P while the fragment is written at the reproduction speed P in the high-speed memory 170. Therefore, the fragment amount stored in the high-speed memory 170 is basically maintained at the storage capacity M.

一方、受信したフラグメントがフラグメントN2である場合(ステップS303:YES)、制御部110は、受信したフラグメントをHDD160に蓄積する(ステップS305)。   On the other hand, when the received fragment is the fragment N2 (step S303: YES), the control unit 110 accumulates the received fragment in the HDD 160 (step S305).

ステップS305又はステップS307が実行されると、制御部110は、ストリーミング再生制御の開始時点以降に受信されたデータ量たる受信データ量が、コンテンツサイズN以上であるか否かを判別する(ステップS307)。尚、上記(1)式の関係に鑑みれば、ステップS307に係る判別処理は、フラグメントN1及びN2の取得が完了したか否かを意味する。   When step S305 or step S307 is executed, the control unit 110 determines whether or not the received data amount, which is the amount of data received after the start of streaming playback control, is equal to or greater than the content size N (step S307). ). In view of the relationship of the above expression (1), the determination processing according to step S307 means whether or not the acquisition of the fragments N1 and N2 has been completed.

受信データ量がN未満であれば(ステップS307:NO)、制御部110は、処理をステップS302に戻し、一連の処理を繰り返す。一方、受信データ量がN以上である場合(ステップS307:YES)、並列フラグメント処理は終了する。   If the amount of received data is less than N (step S307: NO), control unit 110 returns the process to step S302 and repeats a series of processes. On the other hand, when the amount of received data is N or more (step S307: YES), the parallel fragment processing ends.

<受信後処理の詳細>
次に、図7を参照し、受信後処理の詳細について説明する。ここに、図7は、受信後処理のフローチャートである。
<Details of post-reception processing>
Next, details of post-reception processing will be described with reference to FIG. FIG. 7 is a flowchart of post-reception processing.

図7において、制御部110は、ネットワーク200を介したデータ提供ノード300との通信回線を切断する(ステップS401)。続いて、高速メモリ170から蓄積されたフラグメントであるメモリキャッシュを読み出して再生する(ステップS402)。尚、ステップS402は、ステップS306から継続される処理である。ここで、ステップS402における再生処理は、ステップS306に係る処理と違い、新たなフラグメントの書き込みを伴わない。従って、ステップS402の実行過程においては、高速メモリ170のフラグメント蓄積量は、蓄積容量Mから再生速度Pで漸減する。   In FIG. 7, the control unit 110 disconnects the communication line with the data providing node 300 via the network 200 (step S401). Subsequently, the memory cache that is the fragment accumulated from the high-speed memory 170 is read and reproduced (step S402). Note that step S402 is processing continued from step S306. Here, unlike the process according to step S306, the reproduction process at step S402 does not involve writing a new fragment. Accordingly, in the execution process of step S402, the fragment accumulation amount of the high-speed memory 170 gradually decreases from the accumulation capacity M at the reproduction speed P.

制御部110は、メモリキャッシュが漸減した結果、メモリキャッシュ量がゼロとなったか否かを判別する(ステップS403)。メモリキャッシュ量がゼロでなければ(ステップS403:NO)、即ち、フラグメントN2よりも再生順序が早いフラグメントが未だ高速メモリ170に残存していれば、制御部110は、メモリキャッシュの再生を継続する。   The control unit 110 determines whether or not the memory cache amount has become zero as a result of the gradual decrease of the memory cache (step S403). If the amount of memory cache is not zero (step S403: NO), that is, if a fragment whose reproduction order is earlier than that of fragment N2 still remains in high-speed memory 170, control unit 110 continues to reproduce the memory cache. .

一方、メモリキャッシュ量がゼロとなった場合(ステップS403:YES)、制御部110は、HDD160に蓄積されたフラグメントN2、即ち、HDDキャッシュを順次読み出して再生する(ステップS404)。HDDキャッシュの再生が開始されると、制御部110は、HDDキャッシュの再生が終了したか否かを判別し(ステップS405)、再生が終了していなければ(ステップS405:NO)、処理をステップS404に戻してフラグメントN2の再生を継続すると共に、再生が終了した場合には(ステップS405:YES)、受信後処理を終了する。   On the other hand, when the memory cache amount becomes zero (step S403: YES), the control unit 110 sequentially reads and reproduces the fragment N2, that is, the HDD cache, stored in the HDD 160 (step S404). When reproduction of the HDD cache is started, the control unit 110 determines whether or not reproduction of the HDD cache has been completed (step S405). If reproduction has not been completed (step S405: NO), the process proceeds to step S405. Returning to S404, the reproduction of the fragment N2 is continued, and when the reproduction is completed (step S405: YES), the post-reception process is terminated.

<ストリーミング再生制御の効果>
次に、図8を参照し、ストリーミング再生制御の効果について説明する。ここに、図8は、ストリーミング再生制御における各フラグメントの流れの概念図である。尚、図8において、既出の各図と重複する箇所には同一の符合を付してその説明を適宜省略することとする。
<Effect of streaming playback control>
Next, the effect of streaming playback control will be described with reference to FIG. FIG. 8 is a conceptual diagram of the flow of each fragment in streaming playback control. In FIG. 8, the same reference numerals are given to the portions overlapping with the above-described drawings, and the description thereof will be omitted as appropriate.

図8において、フラグメントN0、N1及びN2の流れが、ストリーミング再生制御における該当ステップに係るステップ番号と共に示される。このステップ番号の百の位は、サブルーチンの識別番号となっており、小さい程時系列上早く実行されることを意味している。   In FIG. 8, the flows of the fragments N0, N1, and N2 are shown together with the step numbers related to the corresponding steps in the streaming playback control. The hundreds of the step number is an identification number of the subroutine, and the smaller the step number, the faster the time series is executed.

これから明らかなように、データ提供ノード300から転送されたフラグメントN0の高速メモリ170への書き込み処理(ステップS203)及び高速メモリ170からのフラグメントN0の読み出し処理(ステップS205)は、他のフラグメントに先んじて実行される(厳密には、高速メモリ170に蓄積されたキャッシュにN0とN1との区別はないから、N0の一部はステップS306でも読み出される)。   As is clear from this, the process of writing the fragment N0 transferred from the data providing node 300 to the high-speed memory 170 (step S203) and the process of reading the fragment N0 from the high-speed memory 170 (step S205) precede the other fragments. (Strictly speaking, since there is no distinction between N0 and N1 in the cache stored in the high-speed memory 170, a part of N0 is also read in step S306).

一方、フラグメントN1は、ステップS304において高速メモリ170に書き込まれ、ステップS306において高速メモリ170から読み出される。即ち、高速メモリ170の揮発性記憶領域に対するフラグメントの書き込み処理及び読み出し処理は、相互に並行して実行される。高速メモリ170におけるフラグメントの書き込み速度及び読み出し速度は十分に速く、これらが時間軸上で重複して実行されても、実践上問題は生じない。   On the other hand, the fragment N1 is written in the high speed memory 170 in step S304, and is read from the high speed memory 170 in step S306. That is, the fragment writing process and the reading process for the volatile storage area of the high-speed memory 170 are executed in parallel with each other. The fragment writing speed and the reading speed in the high-speed memory 170 are sufficiently high, and even if they are executed in duplicate on the time axis, there is no practical problem.

他方、制御系及び光ピックアップ等の駆動を介してなされる、不揮発性記憶領域に対するフラグメントの書き込み処理及び読み出し処理は、制御部110に要求される負荷が高速メモリ170に対するそれと較べて大きい。従って、これらが時間軸上で重複して実行されると、フラグメントの読み出しが遅れてコンテンツの円滑な再生が阻害される、或いはフラグメントの書き込みが遅れてこれらが時間軸上で重複する期間が更に長大化する等、コンテンツの再生品質が低下する要因となる。とりわけ、制御部110の処理能力が現実的な各種制約の範囲で律束される、携帯型端末や比較的安価なネットワーク対応型家庭用電気機器等においてはその傾向が強くなる。   On the other hand, the fragment writing process and the reading process for the nonvolatile storage area, which are performed through the driving of the control system and the optical pickup, require a larger load on the control unit 110 than the high-speed memory 170. Therefore, if these are executed in duplicate on the time axis, the reading of the fragments is delayed and smooth playback of the content is hindered, or the period in which the writing of the fragments is delayed and these overlap on the time axis is further increased. It becomes a factor that the reproduction quality of content deteriorates, such as becoming longer. In particular, the tendency becomes strong in portable terminals and relatively inexpensive network-compatible household electric appliances in which the processing capability of the control unit 110 is regulated within a range of various practical restrictions.

その点、本実施例によれば、HDD160の不揮発性記憶領域に対するフラグメントN2の書き込み処理は、ステップS305で実行され、HDD160の不揮発性記憶領域からのフラグメントN2の読み出し処理は、ステップS403で実行される。即ち、後者は前者よりも時系列上確実に遅くなる。従って、本実施例によれば、HDD160の不揮発性記憶領域に対する書き込み処理と読み出し処理とが重複することはなく、コンテンツの再生品質が制御部110の処理能力に応じて低下する懸念が生じない。即ち、コンテンツの再生品質が好適に確保されるのである。   In this regard, according to the present embodiment, the process of writing the fragment N2 to the nonvolatile storage area of the HDD 160 is executed in step S305, and the process of reading the fragment N2 from the nonvolatile storage area of the HDD 160 is executed in step S403. The That is, the latter is surely slower in time series than the former. Therefore, according to the present embodiment, the writing process and the reading process with respect to the nonvolatile storage area of the HDD 160 do not overlap, and there is no concern that the reproduction quality of the content is lowered according to the processing capability of the control unit 110. That is, the reproduction quality of the content is suitably ensured.

次に、図9を参照し、ストリーミング再生制御におけるデータ量の時間推移について説明する。ここに、図9は、ストリーミング再生制御における各データ量の一時間推移を例示する図である。尚、同図において、既出の各図と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, with reference to FIG. 9, the time transition of the data amount in the streaming reproduction control will be described. FIG. 9 is a diagram exemplifying a one-hour transition of each data amount in the streaming reproduction control. In the figure, the same reference numerals are given to the same portions as those in the above-described drawings, and the description thereof will be omitted as appropriate.

図9において、縦軸はデータ量(byte)であり、横軸は時刻である。   In FIG. 9, the vertical axis represents the data amount (byte), and the horizontal axis represents time.

時刻T0において、初期フラグメント処理が開始されたとする。時刻T1で受信データ量が再生開始データ量M0に達し、コンテンツの再生が開始される。コンテンツの再生開始以降も、受信帯域Bの全域を使用したフラグメントN0の取得は継続され、時刻T2において、メモリキャッシュ量(図示ハッチング領域参照)が蓄積容量Mに到達すると、フラグメントN0の取得も完了する(上記(2)式は、このような関係が満たされるように規定されている)。   Assume that the initial fragment processing is started at time T0. At time T1, the received data amount reaches the reproduction start data amount M0, and content reproduction is started. Even after the start of content reproduction, the acquisition of the fragment N0 using the entire reception band B is continued. When the memory cache amount (see the hatched area in the figure) reaches the storage capacity M at time T2, the acquisition of the fragment N0 is also completed. (Formula (2) is defined so that such a relationship is satisfied).

取得したフラグメントの総量がコンテンツサイズNに達した時刻T3において、高速メモリ170の揮発性記憶領域に対するフラグメントN1の書き込み処理とHDD160の不揮発性記憶領域に対するフラグメントN2の書き込み処理とが終了すると、時刻T4にかけて高速メモリ170のメモリキャッシュ量が再生速度Pで漸減する。メモリキャッシュ量がゼロとなる時刻T4において、再生用のバッファがHDD160に切り替えられ、それ以後、時刻T5において再生データ量がコンテンツサイズNに達するまで、HDDキャッシュによるコンテンツ再生が継続される。   At the time T3 when the total amount of acquired fragments reaches the content size N, when the writing process of the fragment N1 into the volatile storage area of the high-speed memory 170 and the writing process of the fragment N2 into the nonvolatile storage area of the HDD 160 are completed, the time T4 The memory cache amount of the high-speed memory 170 gradually decreases at the playback speed P. At time T4 when the memory cache amount becomes zero, the reproduction buffer is switched to the HDD 160, and thereafter, content reproduction by the HDD cache is continued until the reproduction data amount reaches the content size N at time T5.

尚、HDD160の容量は、コンテンツサイズNに対して十分に大きいため、HDDキャッシュが読み出されても、読み出し済み(再生済み)のHDDキャッシュを消去する必要はなく、図示するように、その量は減少しない。また、このように再生済みのHDDキャッシュを消去する必要がないから、HDDキャッシュに基づいたコンテンツの再生中に、HDD160に対する読み出し処理と書き込み処理とが同時に発生する事態が回避される。   Since the capacity of the HDD 160 is sufficiently large with respect to the content size N, it is not necessary to erase the read (reproduced) HDD cache even if the HDD cache is read. Will not decrease. In addition, since it is not necessary to erase the HDD cache that has been reproduced in this way, a situation in which read processing and write processing to the HDD 160 occur simultaneously during reproduction of content based on the HDD cache is avoided.

図9から明らかなように、HDD160においてフラグメントN2の書き込み処理が終了する時刻T4と、HDDキャッシュの読み出し処理が開始される時刻T5との間には、T5−T4に相当する時間遅延があり、両者が重複して実行されることはない。
<第2実施例>
次に、図10を参照し、本発明の第2実施例に係るストリーミング再生制御について説明する。ここに、図10は、ストリーミング再生制御のフローチャートである。尚、同図において、図3と重複する箇所には同一の符合を付してその説明を適宜省略することとする。尚、第2実施例に係るハードウェア構成は、第1実施例と同等であるとする。
As is clear from FIG. 9, there is a time delay corresponding to T5-T4 between time T4 when the writing process of the fragment N2 is completed in the HDD 160 and time T5 when the reading process of the HDD cache is started. Both are never executed in duplicate.
<Second embodiment>
Next, streaming playback control according to the second embodiment of the present invention will be described with reference to FIG. FIG. 10 is a flowchart of the streaming playback control. In the figure, the same reference numerals are given to the same portions as those in FIG. 3, and the description thereof will be omitted as appropriate. Note that the hardware configuration according to the second embodiment is equivalent to that of the first embodiment.

図10において、準備処理を実行した後、制御部110は、初期フラグメント処理を実行し(ステップS210)、並列フラグメント処理を実行し(ステップS310)、受信後処理を実行する(ステップS410)。   In FIG. 10, after executing the preparation process, the control unit 110 executes an initial fragment process (step S210), executes a parallel fragment process (step S310), and executes a post-reception process (step S410).

続いて、図11を参照し、第2実施例に係る初期フラグメント処理について説明する。ここに、図11は、初期フラグメント処理のフローチャートである。尚、同図において、図5と重複する箇所については同一の符号を付してその説明を適宜省略することとする。   Subsequently, the initial fragment processing according to the second embodiment will be described with reference to FIG. FIG. 11 is a flowchart of the initial fragment processing. In the figure, the same parts as those in FIG. 5 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.

図11において、メモリキャッシュの再生を実行すると(ステップS205)、制御部110は、コンテンツの保存要求の有無を判別する(ステップS211)。コンテンツの保存要求は、例えば、コンテンツ再生装置100のユーザが然るべき入力装置を介して与えるコマンドに対応するものであってもよいし、予め設定された条件等に従って制御部110が自動的に生成するものであってもよい。   In FIG. 11, when the reproduction of the memory cache is executed (step S205), the control unit 110 determines whether or not there is a content storage request (step S211). The content saving request may correspond to, for example, a command given by the user of the content reproduction device 100 via an appropriate input device, or is automatically generated by the control unit 110 according to a preset condition or the like. It may be a thing.

コンテンツの保存要求が無い場合(ステップS211:NO)、制御部100は、第1実施例と同様に処理をステップS206に移行させる。一方、コンテンツの保存要求が有る場合(ステップS211:YES)、制御部110は、再生済みのメモリキャッシュをHDD160の不揮発性記憶領域に複製して書き込み、保存する(ステップS212)。   When there is no content storage request (step S211: NO), the control unit 100 shifts the processing to step S206 as in the first embodiment. On the other hand, when there is a content storage request (step S211: YES), the control unit 110 duplicates and writes the reproduced memory cache in the nonvolatile storage area of the HDD 160 (step S212).

次に、図12を参照し、第2実施例に係る並列フラグメント処理について説明する。ここに、図12は、並列フラグメント処理のフローチャートである。尚、同図において、図6と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, parallel fragment processing according to the second embodiment will be described with reference to FIG. FIG. 12 is a flowchart of parallel fragment processing. In the figure, the same reference numerals are given to the same portions as those in FIG. 6, and the description thereof is omitted as appropriate.

図12において、メモリキャッシュの再生を実行すると(ステップS306)、制御部110は、コンテンツの保存要求の有無を判別する(ステップS311)。コンテンツの保存要求は、例えば、コンテンツ再生装置100のユーザが然るべき入力装置を介して与えるコマンドに対応するものであってもよいし、予め設定された条件等に従って制御部110が自動的に生成するものであってもよい。   In FIG. 12, when the reproduction of the memory cache is executed (step S306), the control unit 110 determines whether or not there is a content storage request (step S311). The content saving request may correspond to, for example, a command given by the user of the content reproduction device 100 via an appropriate input device, or is automatically generated by the control unit 110 according to a preset condition or the like. It may be a thing.

コンテンツの保存要求が無い場合(ステップS311:NO)、制御部100は、第1実施例と同様に処理をステップS307に移行させる。一方、コンテンツの保存要求が有る場合(ステップS311:YES)、制御部110は、再生済みのメモリキャッシュをHDD160の不揮発性記憶領域に複製して書き込み、保存する(ステップS312)。   If there is no content storage request (step S311: NO), the control unit 100 shifts the processing to step S307 as in the first embodiment. On the other hand, when there is a content storage request (step S311: YES), the control unit 110 duplicates and writes the reproduced memory cache in the nonvolatile storage area of the HDD 160 (step S312).

次に、図13を参照し、第2実施例に係る受信後処理について説明する。ここに、図13は、受信後処理のフローチャートである。尚、同図において、図7と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, post-reception processing according to the second embodiment will be described with reference to FIG. FIG. 13 is a flowchart of post-reception processing. In the figure, the same reference numerals are given to the same portions as those in FIG. 7, and the description thereof will be omitted as appropriate.

図13において、HDDキャッシュの再生が終了すると(ステップS405:YES)、制御部110は、コンテンツの消去要求の有無を判別する(ステップS411)。コンテンツの消去要求は、例えば、コンテンツ再生装置100のユーザが然るべき入力装置を介して与えるコマンドに対応するものであってもよいし、予め設定された条件等に従って制御部110が自動的に生成するものであってもよい。   In FIG. 13, when the reproduction of the HDD cache is completed (step S405: YES), the control unit 110 determines whether or not there is a content erasure request (step S411). The content erasure request may correspond to, for example, a command given by the user of the content reproduction device 100 via an appropriate input device, or is automatically generated by the control unit 110 according to a preset condition or the like. It may be a thing.

コンテンツの消去要求が有る場合(ステップS411:YES)、制御部110はHDD160からHDDキャッシュ(この場合、フラグメントN0、N1及びN2からなるコンテンツデータそのもの)を消去する(ステップS412)。コンテンツの消去要求が無い場合(ステップS411:NO)、制御部100は、受信後処理を終了させる。   When there is a content deletion request (step S411: YES), the control unit 110 deletes the HDD cache (in this case, the content data itself including the fragments N0, N1, and N2) from the HDD 160 (step S412). When there is no content erasure request (step S411: NO), the control unit 100 ends the post-reception process.

次に、図14を参照し、第2実施例に係るストリーミング再生制御の効果について説明する。ここに、図14は、第2実施例に係るストリーミング再生制御における各フラグメントの流れの概念図である。尚、図14において、図8と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, the effect of streaming playback control according to the second embodiment will be described with reference to FIG. FIG. 14 is a conceptual diagram of the flow of each fragment in the streaming playback control according to the second embodiment. In FIG. 14, parts that are the same as those in FIG. 8 are given the same reference numerals, and descriptions thereof are omitted as appropriate.

図14から明らかなように、第2実施例に係るストリーミング再生制御によれば、第1実施例においては高速メモリ170にのみ蓄積されていたフラグメントN0及びN1(尚、図14では、高速メモリ170にフラグメントN0及びN1が全量格納されているように描かれているが、実際に蓄積されるデータ量は、蓄積容量Mに相当するデータのみである)が、順次HDD160の不揮発性記憶領域に複製され蓄積される、従って、一度ダウンロードしたコンテンツについては、再度のダウンロードが不要となり、効率的である。
<第3実施例>
次に、本発明の第3実施例について説明する。
As apparent from FIG. 14, according to the streaming playback control according to the second embodiment, the fragments N0 and N1 (only the high-speed memory 170 in FIG. 14 are stored in the high-speed memory 170 in the first embodiment). Are depicted as if all the fragments N0 and N1 are stored, but the actual amount of data stored is only the data corresponding to the storage capacity M). Therefore, once downloaded, the contents need not be downloaded again, which is efficient.
<Third embodiment>
Next, a third embodiment of the present invention will be described.

<実施例の構成>
始めに、図15を参照し、本発明の第3実施例に係るストリーミングシステム2の構成について説明する。ここに、図15は、ストリーミングシステム2の構成を概念的に表してなる概略構成図である。尚、同図において、図1と重複する箇所には同一の符合を付してその説明を適宜省略することとする。
<Configuration of Example>
First, the configuration of the streaming system 2 according to the third embodiment of the present invention will be described with reference to FIG. FIG. 15 is a schematic configuration diagram conceptually showing the configuration of the streaming system 2. In the figure, the same reference numerals are given to the same portions as those in FIG. 1, and the description thereof will be omitted as appropriate.

図15において、ストリーミングシステム2は、第1実施例と異なり、複数のデータ提供ノード300A、300B、300C及び300Dを備えており、これら複数のデータ提供ノードからコンテンツデータをダウンロードすることが可能である。   In FIG. 15, unlike the first embodiment, the streaming system 2 includes a plurality of data providing nodes 300A, 300B, 300C, and 300D, and content data can be downloaded from the plurality of data providing nodes. .

<実施例の動作>
次に、図16を参照し、本発明の第2実施例に係るストリーミング再生制御について説明する。ここに、図16は、ストリーミング再生制御のフローチャートである。尚、同図において、図10と重複する箇所には同一の符合を付してその説明を適宜省略することとする。
<Operation of Example>
Next, streaming playback control according to the second embodiment of the present invention will be described with reference to FIG. FIG. 16 is a flowchart of streaming playback control. In the figure, the same reference numerals are given to the same parts as those in FIG. 10, and the description thereof will be omitted as appropriate.

図16において、制御部110は、準備処理を実行し(ステップS120)、初期フラグメント処理を実行し(ステップS220)、並列フラグメント処理を実行する(ステップS320)。その後、第2実施例と同様に受信後処理を実行する(ステップS410)。   In FIG. 16, the control unit 110 executes a preparation process (step S120), executes an initial fragment process (step S220), and executes a parallel fragment process (step S320). Thereafter, post-reception processing is executed as in the second embodiment (step S410).

次に、図17を参照し、第3実施例に係る準備処理の詳細について説明する。ここに、図17は、準備処理のフローチャートである。尚、同図において、図4と重複する箇所には、同一の符合を付してその説明を適宜省略することとする。   Next, details of the preparation process according to the third embodiment will be described with reference to FIG. FIG. 17 is a flowchart of the preparation process. In the figure, the same reference numerals are given to the same portions as those in FIG. 4, and the description thereof will be omitted as appropriate.

図17において、ステップS101、S102及びS104は、各データ提供ノードについて実行される。   In FIG. 17, steps S101, S102 and S104 are executed for each data providing node.

ステップS105においてフラグメントサイズが決定されると、制御部110は、決定されたフラグメントN0、N1及びN2に対し、夫々データ提供ノードを割り当てる(ステップS121)。この際、制御部110は、下記(A)(B)(C)の規則に従って、各フラグメントに対し適切なデータ提供ノードを割り当てる。   When the fragment size is determined in step S105, the control unit 110 assigns data providing nodes to the determined fragments N0, N1, and N2, respectively (step S121). At this time, the control unit 110 assigns an appropriate data providing node to each fragment according to the following rules (A), (B), and (C).

(A)フラグメントN0を提供するノードの決定
フラグメントN0を提供するノードは、以下(ア)〜(エ)の要領で決定される。
(A) Determination of a node that provides a fragment N0 A node that provides a fragment N0 is determined in the following manners (a) to (d).

(ア)コンテンツを保持するデータ提供ノードの中で、送信帯域幅Cの大きい順に優先順位を付与する
(イ)(ア)で設定された優先順位の高いデータ提供ノードから、送信帯域幅Cの総和がコンテンツ再生装置100の受信帯域幅B以上となるまでのノードを選択する
(ウ)(イ)で選択された各コンテンツ提供ノードに対して、送信帯域幅C、RTT、ハードウェア性能の順に優先順位を付与する
(エ)(ウ)で付与された優先順位の高いノードから順に、送信帯域幅Cの比率でフラグメントN0の先頭から断片データを割り当てる
この規則に従った場合、送信帯域幅Cがコンテンツ再生装置100の受信帯域幅Bよりも大きいデータ提供ノードが存在すれば、第1実施例と同様、単一のデータ提供ノードからフラグメントN0が取得される。一方、送信帯域幅Cが受信帯域幅B未満である場合には、受信帯域幅Bの利用効率が最大(100%)となるように、複数のデータ提供ノードが選択される。第1実施例のようにデータ提供ノードが単一であれば、このような場合に受信帯域幅Bの利用効率は理論的最大値には達さない(但し、送信帯域幅全域を使用してフラグメントN0を転送するので、与えられた環境下では受信帯域幅の利用効率は最大である)が、本実施例では、複数のノードからフラグメントN0を取得することによって、再生開始データを含むフラグメントN0を可及的迅速に取得することが可能となり、コンテンツの再生開始に要する時間を短縮することが可能となる。
(A) Among the data providing nodes that hold the content, priorities are assigned in descending order of the transmission bandwidth C. (a) From the data providing node with the high priority set in (a), the transmission bandwidth C Select nodes until the sum total exceeds the reception bandwidth B of the content playback apparatus 100. (c) For each content providing node selected in (a), the transmission bandwidth C, RTT, and hardware performance Assign priorities Allocate fragment data from the head of fragment N0 in the order of the transmission bandwidth C in order from the node with the highest priority assigned in (d) and (c). When this rule is followed, the transmission bandwidth C If there is a data providing node whose size is larger than the reception bandwidth B of the content reproduction device 100, the fragment N0 is obtained from the single data providing node as in the first embodiment. Is done. On the other hand, when the transmission bandwidth C is less than the reception bandwidth B, a plurality of data providing nodes are selected so that the utilization efficiency of the reception bandwidth B is maximized (100%). If the data providing node is single as in the first embodiment, the utilization efficiency of the reception bandwidth B does not reach the theoretical maximum value in this case (however, the entire transmission bandwidth is used). In this embodiment, the fragment N0 including the reproduction start data is obtained by acquiring the fragment N0 from the plurality of nodes. Can be acquired as quickly as possible, and the time required to start playback of the content can be shortened.

(B)フラグメントN1を提供するノードの決定
フラグメントN1を提供するノードは、以下(ア)〜(エ)の要領で決定される。
(B) Determination of a node that provides a fragment N1 A node that provides a fragment N1 is determined in the following manners (a) to (d).

(ア)コンテンツを保持するデータ提供ノードの中で、コンテンツの再生速度P以上の送信帯域幅を有するノードを選択し、その中から更に、最もRTTの小さいノードを選択する
(イ)(ア)において、再生速度P以上の送信帯域を有するデータ提供ノードが存在しない場合、送信帯域幅C、RTTの順に優先順位を付与する
(ウ)(イ)において付与された優先順位が大きいものから、送信帯域幅Cの総和が再生速度P以上になるまでデータ提供ノードを選択する
(エ)(ウ)で選択されたデータ提供ノードに対し、送信帯域幅Cの比率でフラグメントN1の先頭から断片データを割り当てる
フラグメントN1は、高速メモリ170の揮発性記憶領域に対し、再生速度Pに同期した書き込み速度で書き込まれるフラグメントであるから、データ提供ノードは、再生速度P以上の送信帯域幅を有するノードであれば問題はない。但し、データ提供ノードが複数あれば、再生速度P以上の送信帯域幅を有するデータ提供ノードが存在しない場合であっても、このように再生速度P以上の送信帯域幅が確保されるまでデータ提供ノードを増やすことができるため、コンテンツの再生品質を低下させずに済む。例えば、データ提供ノードが、再生速度P未満の送信帯域幅を有する単一のノードである場合、コンテンツの再生と共に、高速メモリ170のメモリキャッシュは減少してしまうから、任意のタイミングで再生を中止してメモリキャッシュ量を増やす以外にないのである。
(A) A node having a transmission bandwidth equal to or higher than the content reproduction speed P is selected from the data providing nodes holding the content, and a node having the smallest RTT is further selected from the nodes. If there is no data providing node having a transmission band equal to or higher than the reproduction speed P, priority is given in the order of the transmission bandwidth C and RTT. Select the data providing node until the sum of the bandwidths C is equal to or higher than the reproduction speed P. (d) For the data providing node selected in (c), send fragment data from the beginning of the fragment N1 at the ratio of the transmission bandwidth C. The fragment N1 to be allocated is a fragment that is written to the volatile storage area of the high-speed memory 170 at a writing speed synchronized with the reproduction speed P. If the data providing node is a node having a transmission bandwidth equal to or higher than the reproduction speed P, there is no problem. However, if there are a plurality of data providing nodes, even if there is no data providing node having a transmission bandwidth equal to or higher than the reproduction speed P, data is provided until a transmission bandwidth equal to or higher than the reproduction speed P is ensured in this way. Since the number of nodes can be increased, it is not necessary to reduce the reproduction quality of the content. For example, if the data providing node is a single node having a transmission bandwidth less than the playback speed P, the memory cache of the high-speed memory 170 decreases with the playback of the content, so the playback is stopped at an arbitrary timing. And there is nothing but to increase the amount of memory cache.

(C)フラグメントN2を提供するノードの決定
フラグメントN2を提供するノードは、以下(ア)〜(ウ)の如くにして決定される。
(C) Determination of node providing fragment N2 The node providing fragment N2 is determined as follows (a) to (c).

(ア)複数のコンテンツ提供ノードに対して、送信帯域幅C、ハードウェア性能、RTTの順に優先順位を付与する
(イ)(ア)で付与された優先順位の高いデータ提供ノードから順に、送信帯域幅Cの総和が、受信帯域幅Bの残余の帯域幅を超えるまでデータ提供ノードを選択する
(ウ)(イ)で選択されたデータ提供ノードに対し、送信帯域幅の比率でフラグメントN2の先頭から断片データを割り当てる
ノードの割り当てが終了すると、制御部110は、HDD160及び高速メモリ170に然るべきバッファ領域を確保して(ステップS106)、準備処理を終了する。
(A) Giving priority to a plurality of content providing nodes in the order of transmission bandwidth C, hardware performance, and RTT (a) Sending in order from the data providing node with the highest priority given in (a) Select a data providing node until the sum of the bandwidth C exceeds the remaining bandwidth of the receiving bandwidth B. (c) For the data providing node selected in (a), the ratio of the fragment N2 in the ratio of the transmission bandwidth When allocating the fragment data from the beginning, when the node allocation is completed, the control unit 110 secures appropriate buffer areas in the HDD 160 and the high-speed memory 170 (step S106), and ends the preparation process.

続いて、図18を参照し、第3実施例に係る初期フラグメント処理について説明する。ここに、図18は、初期フラグメント処理のフローチャートである。尚、同図において、図11と重複する箇所については同一の符号を付してその説明を適宜省略することとする。   Subsequently, the initial fragment processing according to the third embodiment will be described with reference to FIG. FIG. 18 is a flowchart of the initial fragment processing. In the figure, the same parts as those in FIG. 11 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.

図18において、準備処理によって割り当てられた一又は複数のデータ提供ノードに対し、フラグメントN0の要求を行うと(ステップS201)、制御部110は、ネットワーク200に障害(通信回線の切断や安定性の低下や帯域幅の低下等)が発生したか否かを判別する(ステップS221)。ネットワーク障害が発生していない場合(ステップS221:NO)、処理はステップS202に移行される。   In FIG. 18, when a fragment N0 request is made to one or a plurality of data providing nodes allocated by the preparation process (step S201), the control unit 110 causes a failure (communication line disconnection or stability It is determined whether or not a decrease or a decrease in bandwidth occurs (step S221). If no network failure has occurred (step S221: NO), the process proceeds to step S202.

一方、ネットワーク障害が発生している場合(ステップS221:YES)、制御部110は、フラグメントN0を要求するデータ提供ノードを再度割り当てる(ステップS222)。データ提供ノードを再度割り当てた後、制御部110は、再度割り当てたデータ提供ノードに対してフラグメントN0を要求する(ステップS223)。それ以降の処理は、第2実施例と同様である。   On the other hand, when a network failure has occurred (step S221: YES), the control unit 110 reassigns a data providing node that requests the fragment N0 (step S222). After reassigning the data providing node, the control unit 110 requests the fragment N0 from the reassigned data providing node (step S223). The subsequent processing is the same as in the second embodiment.

ここで、ステップS222におけるデータ提供ノードの再割り当ては、上記(A)のプロセスを再度実行することによって行われる。即ち、ネットワーク障害が発生したデータ提供ノードを除外したデータ提供ノードの中から、適切なデータ提供ノードが選択され、既に高速メモリ170にキャッシュとして蓄積された断片データ以降の断片データから転送が要求される。この際、その時点で高速メモリ170に蓄積されたメモリキャッシュの再生を開始してもよい。   Here, the reassignment of the data providing node in step S222 is performed by executing the process (A) again. That is, an appropriate data providing node is selected from the data providing nodes excluding the data providing node in which the network failure has occurred, and transfer is requested from fragment data after the fragment data already stored as a cache in the high-speed memory 170. The At this time, the reproduction of the memory cache stored in the high-speed memory 170 at that time may be started.

次に、図19を参照し、第3実施例に係る並列フラグメント処理について説明する。ここに、図19は、並列フラグメント処理のフローチャートである。尚、同図において、図12と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, parallel fragment processing according to the third embodiment will be described with reference to FIG. FIG. 19 is a flowchart of parallel fragment processing. In the figure, the same reference numerals are given to the same portions as those in FIG. 12, and the description thereof is omitted as appropriate.

図19において、準備処理によって割り当てられた一又は複数のデータ提供ノードに対し、フラグメントN1及びN2の要求を行うと(ステップS301)、制御部110は、ネットワーク200に障害(通信回線の切断や安定性の低下や帯域幅の低下等)が発生したか否かを判別する(ステップS321)。ネットワーク障害が発生していない場合(ステップS321:NO)、処理はステップS302に移行される。   In FIG. 19, when a request for fragments N1 and N2 is made to one or a plurality of data providing nodes allocated by the preparation process (step S301), the control unit 110 causes a failure (communication line disconnection or stabilization) in the network 200. It is determined whether or not there has been a decrease in performance or a decrease in bandwidth (step S321). If no network failure has occurred (step S321: NO), the process proceeds to step S302.

一方、ネットワーク障害が発生している場合(ステップS321:YES)、制御部110は、フラグメントN1及びN2を要求するデータ提供ノードを再度割り当てる(ステップS322)。データ提供ノードを再度割り当てた後、制御部110は、再度割り当てたデータ提供ノードに対してフラグメントN1及びN2を要求する(ステップS323)。それ以降の処理は、第3実施例と同様である。   On the other hand, if a network failure has occurred (step S321: YES), the control unit 110 reassigns data providing nodes that request fragments N1 and N2 (step S322). After reassigning the data providing nodes, the control unit 110 requests fragments N1 and N2 from the reassigned data providing nodes (step S323). The subsequent processing is the same as in the third embodiment.

ここで、ステップS322におけるデータ提供ノードの再割り当ては、フラグメントN1の場合とフラグメントN2の場合とで異なる。   Here, the reassignment of the data providing node in step S322 differs between the fragment N1 and the fragment N2.

フラグメントN1を提供するノードにネットワーク障害が発生した場合、制御部110は、コンテンツの円滑な再生を維持するため、メモリキャッシュの再生を継続する。その一方で、データ提供ノードの中から最も送信帯域の大きいデータ提供ノードを選択し、フラグメントN1のうち、高速メモリ170に蓄積された最後の断片データ以降の断片データを要求する。この際、高速メモリ170のメモリキャッシュ量が蓄積容量Mに復活するまで、フラグメントN2の取得は中断される。即ち、受信帯域幅Bを全て使用して、最速で高速メモリ170のメモリキャッシュの復活が図られる。   When a network failure occurs in the node that provides the fragment N1, the control unit 110 continues the reproduction of the memory cache in order to maintain the smooth reproduction of the content. On the other hand, the data providing node having the largest transmission band is selected from the data providing nodes, and the fragment data after the last fragment data stored in the high-speed memory 170 is requested from the fragment N1. At this time, the acquisition of the fragment N2 is suspended until the memory cache amount of the high-speed memory 170 is restored to the storage capacity M. In other words, using all the reception bandwidth B, the memory cache of the high-speed memory 170 can be restored at the fastest speed.

高速メモリ170のメモリキャッシュ量が蓄積容量Mまで復活すると、制御部110は、上記(B)のプロセスに従って一又は複数のデータ提供ノードを選択して再生速度Pに同期したフラグメントN1の取得を再開する。それと同時に、フラグメントN2の取得が再開される。   When the memory cache amount of the high-speed memory 170 is restored to the storage capacity M, the control unit 110 selects one or a plurality of data providing nodes according to the process (B) and resumes acquisition of the fragment N1 synchronized with the playback speed P. To do. At the same time, the acquisition of the fragment N2 is resumed.

一方、フラグメントN2を提供するノードにネットワーク障害が発生した場合、制御部110は、上記(C)のプロセスに従って、優先順位が下位となる一又は複数のノードを選択し、ネットワーク障害が発生したノードに割り当てられた断片データのうち、既にHDD160にHDDキャッシュとして蓄積されたデータ以降のデータを要求する。   On the other hand, when a network failure occurs in the node that provides the fragment N2, the control unit 110 selects one or more nodes having a lower priority in accordance with the process (C), and the node in which the network failure has occurred. Among the pieces of fragment data assigned to, the data after the data already stored in the HDD 160 as the HDD cache is requested.

次に、図20を参照し、第3実施例に係るストリーミング再生制御の効果について説明する。ここに、図20は、第3実施例に係るストリーミング再生制御における各フラグメントの流れの概念図である。尚、図20において、図14と重複する箇所には同一の符合を付してその説明を適宜省略することとする。   Next, the effect of the streaming playback control according to the third embodiment will be described with reference to FIG. FIG. 20 is a conceptual diagram of the flow of each fragment in the streaming playback control according to the third embodiment. In FIG. 20, the same parts as those in FIG. 14 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.

図20から明らかなように、第3実施例に係るストリーミング再生制御によれば、複数のデータ提供ノード(図中では300A及び300B)から、フラグメントN0、N1及びN2が転送される。このため、既に述べたように、各データ転送ノードの送信帯域幅がコンテンツ再生装置100の受信帯域幅B未満である場合にも、受信帯域幅Bの利用効率を最大に維持することが可能となり、コンテンツデータ全体のダウンロード時間を短縮化することが可能となる。   As is apparent from FIG. 20, according to the streaming playback control according to the third embodiment, fragments N0, N1, and N2 are transferred from a plurality of data providing nodes (300A and 300B in the figure). Therefore, as described above, even when the transmission bandwidth of each data transfer node is less than the reception bandwidth B of the content reproduction device 100, it is possible to maintain the utilization efficiency of the reception bandwidth B to the maximum. The download time for the entire content data can be shortened.

また、一又は複数のコンテンツ提供ノードとの間の通信が切断された場合等においても、単一なデータ提供ノードとの間でデータ転送を行う場合と異なり、他のコンテンツ提供ノードを代替ノードとして使用することができる。従って、コンテンツの再生が途切れることが防止され、よりロバストなコンテンツ再生が担保される。また、例えば、高品質な映像コンテンツ等、ネットワーク200に収容された各データ提供ノードの送信帯域幅がいずれもコンテンツの再生速度未満となるような場合にも、コンテンツ再生装置100側では再生速度以上の速度でコンテンツデータを取得することが可能となり、コンテンツの再生に関する制約がより緩和される。   In addition, even when communication with one or a plurality of content providing nodes is disconnected, other data providing nodes are used as alternative nodes, unlike when data is transferred with a single data providing node. Can be used. Therefore, interruption of content reproduction is prevented, and more robust content reproduction is ensured. Further, for example, even when the transmission bandwidth of each data providing node accommodated in the network 200 is lower than the content playback speed, such as high-quality video content, the content playback apparatus 100 side exceeds the playback speed. The content data can be acquired at a speed of 5 to reduce the restrictions on the content reproduction.

尚、いずれにせよ、HDD160の不揮発性記憶領域に対する書き込み処理及び読み出し処理の重複は生じることがなく、本発明に特有の実践上利益が担保されることは言うまでもない。
<第4実施例>
次に、本発明の第4実施例について説明する。
In any case, there is no duplication of the writing process and the reading process with respect to the nonvolatile storage area of the HDD 160, and it is needless to say that a practical advantage peculiar to the present invention is guaranteed.
<Fourth embodiment>
Next, a fourth embodiment of the present invention will be described.

フラグメントの伝送態様を規定するプロトコルが、例えば、UDP(User Datagram Protocol)等、パケットロスの発生が回避され難いプロトコルである場合、予めこのようなパケットロスへの対策を講じておくのが望ましい。   When the protocol that defines the transmission mode of the fragment is a protocol such as UDP (User Datagram Protocol) that is unlikely to generate packet loss, it is desirable to take measures against such packet loss in advance.

そこで、第4実施例では、上記第3実施例において、フラグメントN0、N1及びN2を夫々複数のデータ提供ノードから取得する。この場合、フラグメントサイズが2倍になったことと等価であるから、コンテンツの再生開始に要する時間や、コンテンツデータのダウンロードに要する時間は第3実施例と較べて長くなるが、パケットロスが減少するため、パケットの再送要求が生じる頻度を減少させることができ、コンテンツの円滑な再生には効果的である。   Therefore, in the fourth embodiment, in the third embodiment, fragments N0, N1, and N2 are obtained from a plurality of data providing nodes, respectively. In this case, since it is equivalent to doubling the fragment size, the time required to start playing content and the time required to download content data are longer than in the third embodiment, but the packet loss is reduced. Therefore, the frequency of packet retransmission requests can be reduced, which is effective for smooth playback of content.

また、応用として、MPEG1ピクチャやGOPヘッダ等、パケットロスが大きなエラーに繋がる場合に限って、複数ノードからの取得を行ってもよい。
<第5実施例>
上記各種実施例では、フラグメントN1及びフラグメントN2は、予め準備処理の実行段階で、その時点のネットワークの状態等に基づいて、そのデータ量が決定されている。然るに、ネットワーク環境は、時間的に変化し得るため、フラグメントN1及びN2が、コンテンツデータのダウンロード期間中に最適値を維持する保証はない。そこで、第5実施例では、そのようなネットワーク環境の変化にロバストなストリーミング再生制御について説明する。
Further, as an application, acquisition from a plurality of nodes may be performed only when a packet loss leads to a large error such as an MPEG1 picture or a GOP header.
<Fifth embodiment>
In the various embodiments described above, the data amounts of the fragment N1 and the fragment N2 are determined in advance at the stage of execution of the preparation process based on the state of the network at that time. However, since the network environment can change over time, there is no guarantee that the fragments N1 and N2 will maintain optimal values during the content data download period. Therefore, in the fifth embodiment, a description will be given of streaming playback control that is robust to such changes in the network environment.

第5実施例では、フラグメントサイズの決定に際して、先ずフラグメントN0のみが決定される。   In the fifth embodiment, when determining the fragment size, only the fragment N0 is first determined.

フラグメントN0の取得が完了すると、制御部110は、一方で、フラグメントN0から連続する位置から再生速度Pに同期した速度でデータ断片を順次取得し、他方で、残余の受信帯域幅を使用してコンテンツデータの最後尾の位置から遡って断片データを取得する。このようにフラグメントN0を除く残余のコンテンツデータの両端部から断片データの取得を実行すると、残余のコンテンツデータの一断片データが重複して取得されることになる(重複する前にその旨を検出してもよい)。   When the acquisition of the fragment N0 is completed, the control unit 110 sequentially acquires data fragments sequentially from the position that continues from the fragment N0 at a speed synchronized with the playback speed P, and on the other hand, using the remaining reception bandwidth. Fragment data is acquired retroactively from the last position of the content data. As described above, when fragment data is acquired from both ends of the remaining content data excluding the fragment N0, one piece of fragment data of the remaining content data is acquired in duplicate (detection of this before duplication). You may).

この重複データ位置に相当する断片データから最後尾までの断片データがフラグメントN2であり、この重複位置に相当する断片データよりも先頭側のデータがフラグメントN1である。このようにフラグメントN1及びN2を成り行きに任せた可変値として設定すれば、ネットワークの状態の変化(例えば、帯域幅の変化)に応じてフラグメントN1及びN2のデータ量が自動的に変化するため、予めこれらのデータ量を規定しておくよりも、ネットワークの状態変化に対してロバストとなる。   The fragment data from the fragment data corresponding to this overlapping data position to the end is fragment N2, and the data on the head side of the fragment data corresponding to this overlapping position is fragment N1. In this way, if the fragments N1 and N2 are set as variable values, the data amounts of the fragments N1 and N2 automatically change according to changes in the network state (for example, changes in bandwidth). Rather than prescribing these data amounts in advance, it is more robust against changes in the network status.

また、この場合も、メモリキャッシュは再生速度Pで再生されており、上記重複データ位置の断片データが読み出されるタイミングは、取得する断片データが重複するタイミングよりも、メモリキャッシュのデータ量を再生速度Pで乗じた時間分後になる。即ち、この場合も、HDD160における書き込み処理と読み出し処理との重複が生じることはなく、円滑なコンテンツの再生が約束される。   Also in this case, the memory cache is played back at the playback speed P, and the timing at which the fragment data at the duplicate data position is read out is greater than the timing at which the fragment data to be acquired overlaps at the playback speed. After the time multiplied by P. That is, also in this case, there is no overlap between the writing process and the reading process in the HDD 160, and smooth content reproduction is promised.

本発明は、上述した実施例に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴うストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体もまた、本発明の技術的範囲に含まれるものである。   The present invention is not limited to the above-described embodiments, and can be appropriately changed without departing from the gist or concept of the invention that can be read from the claims and the entire specification. A streaming reproduction method, a computer program, and a recording medium are also included in the technical scope of the present invention.

本発明は、コンテンツのストリーミング再生を行う装置に適用可能である。   The present invention is applicable to an apparatus that performs streaming playback of content.

1…ストリーミングシステム、2…ストリーミングシステム、100…再生装置、200…ネットワーク、300、300A、300B、300C、300D…データ提供ノード、110…制御部、120…プロトコル生成部、130…送信部、140…受信部、150…受信データ解析部、160…HDD,170…高速メモリ。   DESCRIPTION OF SYMBOLS 1 ... Streaming system, 2 ... Streaming system, 100 ... Playback apparatus, 200 ... Network, 300, 300A, 300B, 300C, 300D ... Data provision node, 110 ... Control part, 120 ... Protocol generation part, 130 ... Transmission part, 140 ... Receiving unit 150 ... Received data analyzing unit 160 ... HDD 170 ... High speed memory.

Claims (16)

コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置であって、
前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求手段と、
前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得手段と、
前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御手段と、
前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御手段と、
前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生手段と、
前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定手段と、
前記第1及び第2記憶装置の状態を特定する第2特定手段と、
前記コンテンツの状態を特定する第3特定手段と、
前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように、前記フラグメントNa及びNb並びにその転送速度を決定する決定手段と
を具備し、
前記要求手段は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求する
ことを特徴とするストリーミング再生装置。
A first storage device having a volatile storage area, which is stored in a network together with at least one data providing node capable of transferring a fragment of the content data requested to be transferred, the content data relating to the content being transferred, and a nonvolatile storage A streaming playback device capable of streaming playback of the content, comprising a second storage device having a region, a writing speed slower than that of the first storage device, and a large storage capacity;
Request means for requesting the data providing node to transfer, as the fragment, a fragment Na including reproduction start data capable of starting streaming reproduction of the content and a fragment Nb including at least a data portion continuous with the fragment Na. When,
Obtaining means for respectively obtaining the fragments Na and Nb transferred from the data providing node via the network;
First storage control means for controlling the first storage device so that the acquired fragment Na is accumulated in the volatile storage area;
Second storage control means for controlling the second storage device so that the acquired fragment Nb is accumulated in the nonvolatile storage area;
At the time when the reproduction start data is accumulated, the accumulated fragment Na is sequentially read to start streaming reproduction of the content, and at the time when streaming reproduction of the content corresponding to the accumulated fragment Na is completed, Reproduction means for sequentially reading out the accumulated fragment Nb from a portion continuous with the accumulated fragment Na and continuing streaming reproduction of the content;
First specifying means for specifying a communication state with the data providing node via the network;
Second specifying means for specifying the states of the first and second storage devices;
Third specifying means for specifying the state of the content;
Based on the specified communication state, the state of the first and second storage devices, and the state of the content, the storage of the fragment Nb ends before or at the same time as the end of reading of the fragment Na. And determining means for determining the fragments Na and Nb and their transfer rates,
The streaming reproduction apparatus, wherein the request unit requests the data providing node to transfer the determined fragments Na and Nb at the determined transfer rate.
前記データ提供ノードは前記ネットワークに複数収容され、
前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記複数のデータ提供ノードの中から、前記決定されたフラグメントNaの転送を要求すべき複数のデータ提供ノードを選択すると共に、該選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき前記決定されたフラグメントNaの一部を夫々割り当てる第1割り当て手段と、
前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記複数のデータ提供ノードの中から、前記決定されたフラグメントNbの転送を要求すべき複数のデータ提供ノードを選択すると共に、該選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき前記決定されたフラグメントNbの一部を夫々割り当てる第2割り当て手段と
を更に具備し、
前記要求手段は、前記選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、夫々前記割り当てられたフラグメントNaの一部を要求すると共に、前記選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、夫々前記割り当てられたフラグメントNbの一部を要求する
ことを特徴とする請求項1に記載のストリーミング再生装置。
A plurality of the data providing nodes are accommodated in the network,
Providing a plurality of data to be requested to transfer the determined fragment Na from among the plurality of data providing nodes based on the specified communication state, the state of the first and second storage devices, and the state of the content First assigning means for selecting a node and allocating a part of the determined fragment Na to be transferred to each of a plurality of data providing nodes to be requested to transfer the selected fragment Na. When,
Providing a plurality of data to be requested to transfer the determined fragment Nb from among the plurality of data providing nodes based on the specified communication state, the state of the first and second storage devices, and the state of the content Second assigning means for selecting a node and allocating a part of the determined fragment Nb to be transferred to each of a plurality of data providing nodes to be requested to transfer the selected fragment Nb. And further comprising
The request means requests a part of the allocated fragment Na to each of a plurality of data providing nodes that should request the transfer of the selected fragment Na, and transfers the selected fragment Nb. The streaming playback device according to claim 1, wherein a part of the allocated fragment Nb is requested to each of a plurality of data providing nodes that are to request the data.
前記第1割り当て手段は、前記選択されたフラグメントNaの転送を要求すべき複数のデータ提供ノードのうち少なくとも一つのデータ提供ノードとの間でネットワーク障害が発生した場合に、前記複数のデータ提供ノードの中から、該発生したネットワーク障害に対応する少なくとも一つのデータ提供ノードに代替すべき少なくとも一つのデータ提供ノードを再選択すると共に、該再選択されたデータ提供ノードを含む、新たに前記フラグメントNaの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき、前記決定されたフラグメントNaのうち転送が完了していないフラグメントの一部を再度割り当て、
前記第2割り当て手段は、前記選択されたフラグメントNbの転送を要求すべき複数のデータ提供ノードのうち少なくとも一つのデータ提供ノードとの間でネットワーク障害が発生した場合に、前記複数のデータ提供ノードの中から、該発生したネットワーク障害に対応する少なくとも一つのデータ提供ノードに代替すべき少なくとも一つのデータ提供ノードを再選択すると共に、該再選択されたデータ提供ノードを含む、新たに前記フラグメントNbの転送を要求すべき複数のデータ提供ノードの各々に対し、該各々が転送すべき、前記決定されたフラグメントNbのうち転送が完了していないフラグメントの一部を再度割り当てる
ことを特徴とする請求項2に記載のストリーミング再生装置。
The first assigning means is configured to provide the plurality of data providing nodes when a network failure occurs with at least one data providing node among the plurality of data providing nodes that should request transfer of the selected fragment Na. And reselecting at least one data providing node to be replaced with at least one data providing node corresponding to the network failure that has occurred, and newly including the reselected data providing node. Reassigning, to each of a plurality of data providing nodes that should request the transfer of a part of the determined fragment Na, which is to be transferred, a part of the determined fragment Na that has not been transferred,
The second assigning unit is configured to provide the plurality of data providing nodes when a network failure occurs with at least one data providing node among the plurality of data providing nodes that should request transfer of the selected fragment Nb. And reselecting at least one data providing node to be replaced with at least one data providing node corresponding to the network failure that has occurred, and newly including the reselected data providing node. A part of the determined fragment Nb that has not yet been transferred is reassigned to each of a plurality of data providing nodes that should request the transfer of Item 3. The streaming playback device according to Item 2.
前記フラグメントは、前記フラグメントNa及び前記フラグメントNbのうち少なくとも一方に含まれる
ことを特徴とする請求項1から3のいずれか一項に記載のストリーミング再生装置。
The streaming reproduction apparatus according to any one of claims 1 to 3, wherein the fragment is included in at least one of the fragment Na and the fragment Nb.
前記フラグメントNaの転送速度は、前記コンテンツの再生速度であり、前記フラグメントNbの転送速度は、前記ストリーミング再生装置の受信帯域のうち前記再生速度に相当する帯域を除く残余の受信帯域に相当する転送速度である
ことを特徴とする請求項1から4のいずれか一項に記載のストリーミング再生装置。
The transfer speed of the fragment Na is the playback speed of the content, and the transfer speed of the fragment Nb is a transfer corresponding to the remaining reception band excluding the band corresponding to the playback speed among the reception bands of the streaming playback device. The streaming playback device according to claim 1, wherein the streaming playback device is a speed.
前記フラグメントNaは、前記再生開始データを含むフラグメントN0と、該フラグメントN0を除くフラグメントN1から構成され、
前記要求手段は、前記フラグメントN0の取得が完了するまで前記フラグメントNbの要求を待機する
ことを特徴とする請求項1から5のいずれか一項に記載のストリーミング再生装置。
The fragment Na is composed of a fragment N0 including the reproduction start data and a fragment N1 excluding the fragment N0.
The streaming playback device according to any one of claims 1 to 5, wherein the request unit waits for a request for the fragment Nb until the acquisition of the fragment N0 is completed.
前記フラグメントN0の転送速度は、前記データ提供ノードの間で規定される最大転送速度である
ことを特徴とする請求項6に記載のストリーミング再生装置。
The streaming playback device according to claim 6, wherein a transfer rate of the fragment N0 is a maximum transfer rate defined between the data providing nodes.
前記要求手段は、前記フラグメントNaが前記コンテンツデータの先頭から順次取得されるように前記フラグメントNaを要求すると共に、前記フラグメントNbが最後尾の前記フラグメントから順次取得されるように前記フラグメントNbを要求し、
前記取得手段は、前記フラグメントNaと前記フラグメントNbとが重複しないように前記フラグメントNaと前記フラグメントNbを取得する
ことを特徴とする請求項1から7のいずれか一項に記載のストリーミング再生装置。
The requesting unit requests the fragment Na so that the fragment Na is sequentially acquired from the beginning of the content data, and requests the fragment Nb so that the fragment Nb is sequentially acquired from the last fragment. And
The streaming playback device according to any one of claims 1 to 7, wherein the acquisition unit acquires the fragment Na and the fragment Nb so that the fragment Na and the fragment Nb do not overlap.
前記第1特定手段は、前記ストリーミング再生装置の受信帯域幅及び前記データ提供ノードの送信帯域幅を特定する
ことを特徴とする請求項1から8のいずれか一項に記載のストリーミング再生装置。
The streaming playback device according to any one of claims 1 to 8, wherein the first specifying unit specifies a reception bandwidth of the streaming playback device and a transmission bandwidth of the data providing node.
前記第2特定手段は、前記第1及び第2記憶装置の残容量及び負荷状態を特定する
ことを特徴とする請求項1から9のいずれか一項に記載のストリーミング再生装置。
The streaming playback device according to any one of claims 1 to 9, wherein the second specifying unit specifies a remaining capacity and a load state of the first and second storage devices.
前記第3特定手段は、前記コンテンツのデータサイズ及び再生速度を特定する
ことを特徴とする請求項1から10のいずれか一項に記載のストリーミング再生装置。
The streaming playback apparatus according to any one of claims 1 to 10, wherein the third specifying unit specifies a data size and a playback speed of the content.
前記第2記憶制御手段は、前記順次読み出されたフラグメントNaが前記第2記憶装置に蓄積されるように前記第2記憶装置を制御する
ことを特徴とする請求項1から11のいずれか一項に記載のストリーミング再生装置。
The said 2nd memory | storage control means controls the said 2nd memory | storage device so that the said sequentially read fragment | piece Na may be accumulate | stored in a said 2nd memory | storage device. The streaming playback device according to item.
前記第2制御手段は、所定の消去要求に応じて前記不揮発性記憶領域に蓄積されたフラグメントを消去する
ことを特徴とする請求項1から12のいずれか一項に記載のストリーミング再生装置。
The streaming playback device according to any one of claims 1 to 12, wherein the second control unit erases fragments stored in the nonvolatile storage area in response to a predetermined erasure request.
コンテンツに係るコンテンツデータを保持し、転送が要求された該コンテンツデータのフラグメントを転送可能な少なくとも一つのデータ提供ノードと共にネットワークに収容され、揮発性記憶領域を有する第1記憶装置と、不揮発性記憶領域を有し、前記第1記憶装置と較べて書き込み速度が遅く且つ蓄積容量が大きい第2記憶装置とを備えてなる、前記コンテンツのストリーミング再生が可能なストリーミング再生装置におけるストリーミング再生方法であって、
前記データ提供ノードに対し、前記フラグメントとして、前記コンテンツのストリーミング再生を開始可能な再生開始データを含むフラグメントNaと、少なくとも該フラグメントNaと連続するデータ部分を含むフラグメントNbとの転送を要求する要求工程と、
前記ネットワークを介し、前記データ提供ノードから転送される前記フラグメントNa及びNbを夫々取得する取得工程と、
前記取得されたフラグメントNaが前記揮発性記憶領域に蓄積されるように前記第1記憶装置を制御する第1記憶制御工程と、
前記取得されたフラグメントNbが前記不揮発性記憶領域に蓄積されるように前記第2記憶装置を制御する第2記憶制御工程と、
前記再生開始データが蓄積された時点で前記蓄積されたフラグメントNaを順次読み出して前記コンテンツのストリーミング再生を開始すると共に、前記蓄積されたフラグメントNaに対応する前記コンテンツのストリーミング再生が終了した時点で、前記蓄積されたフラグメントNbを前記蓄積されたフラグメントNaに連続する部分から順次読み出して前記コンテンツのストリーミング再生を継続する再生工程と、
前記ネットワークを介した前記データ提供ノードとの間の通信状態を特定する第1特定工程と、
前記第1及び第2記憶装置の状態を特定する第2特定工程と、
前記コンテンツの状態を特定する第3特定工程と、
前記特定された通信状態、第1及び第2記憶装置の状態並びにコンテンツの状態に基づいて、前記フラグメントNaの読み出しが終了する以前に又は終了するのと同時に前記フラグメントNbの蓄積が終了するように前記フラグメントNa及びNb並びにその転送速度を決定する決定工程と
を具備し、
前記要求工程は、前記データ提供ノードに対し、前記決定された転送速度による前記決定されたフラグメントNa及びNbの転送を要求する
ことを特徴とするストリーミング再生方法。
A first storage device having a volatile storage area, which is stored in a network together with at least one data providing node capable of transferring a fragment of the content data requested to be transferred, the content data relating to the content being transferred, and a nonvolatile storage A streaming playback method in a streaming playback device capable of streaming playback of the content, comprising: a second storage device having a region, a writing speed slower than the first storage device, and a large storage capacity ,
A requesting step for requesting the data providing node to transfer, as the fragment, a fragment Na including reproduction start data capable of starting streaming reproduction of the content and a fragment Nb including at least a data portion continuous with the fragment Na. When,
Obtaining each of the fragments Na and Nb transferred from the data providing node via the network;
A first storage control step of controlling the first storage device so that the acquired fragment Na is accumulated in the volatile storage area;
A second storage control step of controlling the second storage device so that the acquired fragment Nb is accumulated in the nonvolatile storage area;
At the time when the reproduction start data is accumulated, the accumulated fragment Na is sequentially read to start streaming reproduction of the content, and at the time when streaming reproduction of the content corresponding to the accumulated fragment Na is completed, A reproduction step of sequentially reading out the accumulated fragment Nb from a portion continuous with the accumulated fragment Na and continuing streaming reproduction of the content;
A first specifying step of specifying a communication state with the data providing node via the network;
A second specifying step of specifying states of the first and second storage devices;
A third identification step for identifying the state of the content;
Based on the specified communication state, the state of the first and second storage devices, and the state of the content, the storage of the fragment Nb ends before or at the same time as the end of reading of the fragment Na. Determining the fragments Na and Nb and their transfer rates; and
The requesting step requests the data providing node to transfer the determined fragments Na and Nb at the determined transfer rate.
コンピュータシステムを請求項1から13のいずれか一項に記載のストリーミング再生装置として機能させることを特徴とするコンピュータプログラム。   A computer program for causing a computer system to function as the streaming playback device according to any one of claims 1 to 13. 請求項15に記載のコンピュータプログラムを記録してなる記録媒体。   A recording medium recording the computer program according to claim 15.
JP2010225104A 2010-10-04 2010-10-04 Streaming reproduction device, streaming reproduction method, computer program and recording medium Pending JP2012080417A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010225104A JP2012080417A (en) 2010-10-04 2010-10-04 Streaming reproduction device, streaming reproduction method, computer program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010225104A JP2012080417A (en) 2010-10-04 2010-10-04 Streaming reproduction device, streaming reproduction method, computer program and recording medium

Publications (1)

Publication Number Publication Date
JP2012080417A true JP2012080417A (en) 2012-04-19

Family

ID=46240127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010225104A Pending JP2012080417A (en) 2010-10-04 2010-10-04 Streaming reproduction device, streaming reproduction method, computer program and recording medium

Country Status (1)

Country Link
JP (1) JP2012080417A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014078923A (en) * 2012-10-11 2014-05-01 Wistron Corp Streaming data downloading method and computer readable recording medium
JP2014131142A (en) * 2012-12-28 2014-07-10 Canon Inc Receiver, reception method and program, imaging apparatus, imaging method and program, transmitter, transmission method and program
JP2015041800A (en) * 2013-08-20 2015-03-02 キヤノン株式会社 Receiving device and receiving method
KR20160083941A (en) * 2013-11-11 2016-07-12 아마존 테크놀로지스, 인크. Managed service for acquisition, storage and consumption of large-scale data streams
JP2017069708A (en) * 2015-09-29 2017-04-06 富士通株式会社 Moving image reproduction device, moving image distribution server, moving image reproduction method, moving image distribution method, moving image reproduction program and moving image distribution program
US9858322B2 (en) 2013-11-11 2018-01-02 Amazon Technologies, Inc. Data stream ingestion and persistence techniques
US10467105B2 (en) 2013-12-20 2019-11-05 Amazon Technologies, Inc. Chained replication techniques for large-scale data streams
US10635644B2 (en) 2013-11-11 2020-04-28 Amazon Technologies, Inc. Partition-based data stream processing framework
US10768830B1 (en) 2018-07-16 2020-09-08 Amazon Technologies, Inc. Streaming data service with isolated read channels
US10798140B1 (en) 2018-07-16 2020-10-06 Amazon Technologies, Inc. Stream data record reads using push-mode persistent connections
US10855754B1 (en) 2018-07-16 2020-12-01 Amazon Technologies, Inc. Isolated read channel categories at streaming data service
US10956246B1 (en) 2018-07-16 2021-03-23 Amazon Technologies, Inc. Isolated read channel management interfaces at streaming data service
US11070600B1 (en) 2018-07-16 2021-07-20 Amazon Technologies, Inc. Optimization techniques to support lagging readers at streaming data service
US11075984B1 (en) 2018-07-16 2021-07-27 Amazon Technologies, Inc. Workload management at streaming data service supporting persistent connections for reads
JP2022075540A (en) * 2020-11-04 2022-05-18 ディズニー エンタープライゼス インコーポレイテッド Buffering data on high bandwidth networks

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014078923A (en) * 2012-10-11 2014-05-01 Wistron Corp Streaming data downloading method and computer readable recording medium
JP2015019384A (en) * 2012-10-11 2015-01-29 緯創資通股▲ふん▼有限公司 Streaming data downloading method and computer readable recording medium
US9258343B2 (en) 2012-10-11 2016-02-09 Wistron Corp. Streaming data downloading method and computer readable recording medium thereof
JP2014131142A (en) * 2012-12-28 2014-07-10 Canon Inc Receiver, reception method and program, imaging apparatus, imaging method and program, transmitter, transmission method and program
JP2015041800A (en) * 2013-08-20 2015-03-02 キヤノン株式会社 Receiving device and receiving method
JP2016540298A (en) * 2013-11-11 2016-12-22 アマゾン・テクノロジーズ・インコーポレーテッド Managed service for acquisition, storage and consumption of large data streams
US10635644B2 (en) 2013-11-11 2020-04-28 Amazon Technologies, Inc. Partition-based data stream processing framework
KR20160083941A (en) * 2013-11-11 2016-07-12 아마존 테크놀로지스, 인크. Managed service for acquisition, storage and consumption of large-scale data streams
US9794135B2 (en) 2013-11-11 2017-10-17 Amazon Technologies, Inc. Managed service for acquisition, storage and consumption of large-scale data streams
US9858322B2 (en) 2013-11-11 2018-01-02 Amazon Technologies, Inc. Data stream ingestion and persistence techniques
KR101925696B1 (en) * 2013-11-11 2018-12-05 아마존 테크놀로지스, 인크. Managed service for acquisition, storage and consumption of large-scale data streams
US10795905B2 (en) 2013-11-11 2020-10-06 Amazon Technologies, Inc. Data stream ingestion and persistence techniques
US10467105B2 (en) 2013-12-20 2019-11-05 Amazon Technologies, Inc. Chained replication techniques for large-scale data streams
JP2017069708A (en) * 2015-09-29 2017-04-06 富士通株式会社 Moving image reproduction device, moving image distribution server, moving image reproduction method, moving image distribution method, moving image reproduction program and moving image distribution program
US10631058B2 (en) 2015-09-29 2020-04-21 Run.Edge Limited Video image reproduction device, video image distribution server, method of reproducing video image and method of distributing video image
US10631060B2 (en) 2015-09-29 2020-04-21 Run.Edge Limited Video image reproduction device, video image distribution server, method of reproducing video image and method of distributing video image
US11070600B1 (en) 2018-07-16 2021-07-20 Amazon Technologies, Inc. Optimization techniques to support lagging readers at streaming data service
US10798140B1 (en) 2018-07-16 2020-10-06 Amazon Technologies, Inc. Stream data record reads using push-mode persistent connections
US10855754B1 (en) 2018-07-16 2020-12-01 Amazon Technologies, Inc. Isolated read channel categories at streaming data service
US10956246B1 (en) 2018-07-16 2021-03-23 Amazon Technologies, Inc. Isolated read channel management interfaces at streaming data service
US10768830B1 (en) 2018-07-16 2020-09-08 Amazon Technologies, Inc. Streaming data service with isolated read channels
US11075984B1 (en) 2018-07-16 2021-07-27 Amazon Technologies, Inc. Workload management at streaming data service supporting persistent connections for reads
US11509700B2 (en) 2018-07-16 2022-11-22 Amazon Technologies, Inc. Stream data record reads using push-mode persistent connections
US11621999B2 (en) 2018-07-16 2023-04-04 Amazon Technologies, Inc. Isolated read channel categories at streaming data service
US11675501B2 (en) 2018-07-16 2023-06-13 Amazon Technologies, Inc. Streaming data service with isolated read channels
JP2022075540A (en) * 2020-11-04 2022-05-18 ディズニー エンタープライゼス インコーポレイテッド Buffering data on high bandwidth networks
US11627174B2 (en) 2020-11-04 2023-04-11 Disney Enterprises, Inc. Buffering data on high bandwidth networks
US11979446B2 (en) 2020-11-04 2024-05-07 Disney Enterprises, Inc. Buffering data on high bandwidth networks

Similar Documents

Publication Publication Date Title
JP2012080417A (en) Streaming reproduction device, streaming reproduction method, computer program and recording medium
JP5684920B2 (en) Various bit video streams for adaptive streaming
JP5840702B2 (en) Various bit video streams for adaptive streaming
JP4989054B2 (en) Media conversion method and apparatus on network with limited bandwidth
JP4944484B2 (en) Playback apparatus, playback method, and program
JP5876480B2 (en) Multimedia stream file storage file format, storage method, and client device using the same
KR102274466B1 (en) Video streaming method using real time caching technique and system thereof
US20130339537A1 (en) System for dynamic stream management in audio video bridged networks
KR20070020727A (en) Apparatus and method of using pseudo streaming download with partially progressive download in terminal
JP2004355724A (en) Circulation recording device and picture accumulation/distribution system
JP6993399B2 (en) Methods and equipment for bandwidth distribution in networks
JP5150459B2 (en) Content distribution method and receiving apparatus
JP5842639B2 (en) Connection device, storage device, connection request transmission control method, and connection request transmission control program
JP2003536329A (en) Method and system for reading a block from a storage medium
JP5066278B1 (en) Video display device, buffer management method, and video display system
JP4089060B2 (en) Information recording device
JP3997640B2 (en) Information recording / reproducing device
JP4117608B2 (en) Recording control apparatus, recording control method, and program
JP2012222530A (en) Receiving device and method, and program
JP2000092471A (en) Video server device and its band managing method, and recording medium where band managing program is recorded
KR102589694B1 (en) Storage device, operating method of storage device, and streaming system including storage device
JP5721512B2 (en) Recording / playback device
JP5651591B2 (en) Video reproduction system and transmission device
JP2012222689A (en) Reproducer and reproduction method
KR20180047866A (en) A system for streaming relay engine of efficient wireless networks using media buffer control