WO2012053047A1 - Streaming playback device, streaming playback method, computer program and recording medium - Google Patents

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

Info

Publication number
WO2012053047A1
WO2012053047A1 PCT/JP2010/068288 JP2010068288W WO2012053047A1 WO 2012053047 A1 WO2012053047 A1 WO 2012053047A1 JP 2010068288 W JP2010068288 W JP 2010068288W WO 2012053047 A1 WO2012053047 A1 WO 2012053047A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
streaming
streaming playback
network
protocol
Prior art date
Application number
PCT/JP2010/068288
Other languages
French (fr)
Japanese (ja)
Inventor
秀人 遠藤
裕貴 玉田
恭一 寺尾
Original Assignee
パイオニア株式会社
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 パイオニア株式会社 filed Critical パイオニア株式会社
Priority to PCT/JP2010/068288 priority Critical patent/WO2012053047A1/en
Publication of WO2012053047A1 publication Critical patent/WO2012053047A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols

Definitions

  • 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.
  • a file transmission rate is obtained by allocating an amount of fragments according to the transmission rate to each of a plurality of servers selected in order of increasing transmission rate, and transmitting them from these servers. It is said that it is possible to improve.
  • Patent Document 1 the technical idea disclosed in Patent Document 1 is applicable not only to file download but also to streaming playback.
  • the streaming reproduction means that the contents are sequentially reproduced based on the acquired data while acquiring data regarding various contents.
  • acquisition of data related to content is continued at the start of playback of the content.
  • Patent Document 1 can reduce the time required for downloading a file compared to downloading a file from a single server, the method has been tried to be applied to streaming playback of various contents. In some cases, the following problems may arise.
  • the time required to start streaming playback of content from the time when a transfer request for data necessary for streaming is issued (hereinafter referred to as “playback start time” as appropriate) Proportional to the time it takes to get the minimum data needed to start.
  • a predetermined amount is determined according to the transmission speed from the beginning of the file.
  • the reproduction startable data is allocated to only one node. In this case, after all, the playback start time is no different from when a file is acquired from one node.
  • Patent Document 1 there is a case where a special gain does not occur in using a plurality of nodes regarding the playback start time, and the time until the streaming playback is started is surely shortened. There is a technical problem that this is difficult.
  • the present invention has been made in view of the above-described problems, and provides a streaming playback apparatus and method capable of quickly starting streaming playback of content, and a computer program and a recording medium for realizing such a method.
  • the purpose is to do.
  • a streaming playback device capable of streaming playback of content, which is accommodated in a network together with a plurality of data providing nodes, and is connected via the network.
  • Communication status specifying means for specifying a communication status with each of the plurality of data providing nodes, and for starting the streaming reproduction of the content data constituting the content based on the specified communication status
  • Protocol generation means for generating a request protocol for requesting transfer of a plurality of pieces of fragmented data obtained by subdividing the reproduction start data as necessary data, and for each of the generation via the network Means for transmitting the requested request protocol, and the network
  • An acquisition means for acquiring the fragmented data transferred from each of them according to the transmitted request protocol, and a reproduction means for sequentially reproducing the content according to the acquired fragmented data It is characterized by.
  • the streaming playback method is a streaming playback method in a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes.
  • a communication state specifying step for specifying a communication state with each of the plurality of data providing nodes via the network, and content data constituting the content based on the specified communication state
  • a protocol generation step of generating a request protocol for requesting transfer of a plurality of segmented data obtained by segmenting the reproduction start data as data necessary for starting the streaming reproduction; The generated request protocol via the network
  • a reproducing step for reproducing for reproducing.
  • a computer program according to claim 8 causes a computer system to function as the streaming playback device according to any one of claims 1 to 6.
  • a recording medium described in claim 9 records the computer program described in claim 8. ⁇ Embodiment of Streaming Playback Device>
  • An embodiment of the streaming playback device is a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes, wherein the plurality of data providing nodes are connected via the network.
  • Communication status specifying means for specifying the communication status with each other, and data necessary for starting the streaming reproduction among the content data for viewing the content based on the specified communication status
  • Transmitting means for transmitting the data via the network
  • the “network” is, for example, a WAN (Wide Area Network) network, a LAN (Local Area Network) network, a WAN line or a LAN network, a telephone line, an ADSL (Asymmetric Digital Subscriber Line), or an optical fiber. 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” 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.
  • the communication status with each of the plurality of data providing nodes is specified by the communication status specifying means.
  • the “communication state” specified by the communication state specifying means means that, when requesting some data to the data providing node via the network, appropriate data transferred from the data providing node in response to the request. It means a qualitative or quantitative state that defines the amount of delay on the time axis when arriving at the streaming playback device. Therefore, a practical aspect related to the “communication state” may include a network dependent one and a data providing node dependent one, and is not uniquely limited.
  • the “communication state” may appropriately include a transmission band of the network, a data processing speed of the data providing node, a data transfer speed of the data providing node, an RTT (Round Trip Time), and the like.
  • the specifying step related to the communication state specifying means may be executed periodically, for example, at a constant or indefinite period, or may be executed irregularly or limitedly when an appropriate condition is satisfied. There may be.
  • “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 aspects such as acquisition are not limited in any way.
  • a request protocol is generated by the protocol generation unit, and transmitted to each of the data providing nodes via the network by the transmission unit.
  • the transmission / reception mode of various data with the data providing node may be, for example, via an appropriate server device, or may be, for example, not via a server device such as P2P (Peer To Peer). Good.
  • the “request protocol” is a concept that encompasses various protocols for requesting each data providing node to transfer fragmented data.
  • subdivision data refers to the data size of reproduction start data (hereinafter referred to as “reproduction start data”), which is obtained by subdividing reproduction start data necessary for starting reproduction of content among content data corresponding to the entire content. This is fragment data having a data size less than the “reproduction start data amount” as appropriate.
  • the reproduction start data is continuous data extending from the start position of the content data to an appropriate position, but the reproduction start data amount is determined based on the streaming reproduction such as the data processing speed of the streaming reproduction apparatus and the reproduction method related to the streaming reproduction. Depending on the situation on the apparatus side, it may be appropriately changed.
  • the segmented data transferred according to the request protocol is sequentially acquired by the acquisition unit from the plurality of data providing nodes via the network.
  • the segmented data may be temporarily buffered in a volatile storage area, or may be permanently stored in a nonvolatile storage area.
  • the playback start data is transferred from one data providing node without being subdivided. For example, it has been found as a technical problem that the time until the start of streaming reproduction cannot be shortened. In response to such technical problems, at least the playback start data is subdivided, and the technical idea of collecting the subdivision data as fragments of the playback start data from a plurality of data providing nodes reduces the time required to acquire the playback start data. Thus, streaming playback can be started quickly.
  • the times when the request protocols generated by the protocol generation means do not necessarily match each other.
  • the time required for analyzing the request protocol and preparing the appropriate data transfer in each data providing node is not uniform. Further, assuming that data transfer is started in each data providing node, the time until each packet (that is, transfer unit) constituting the requested fragmented data arrives at the streaming playback device is also determined by each node. Is not uniform.
  • the time required to acquire the reproduction start data may be shorter if the reproduction start data is not subdivided.
  • the streaming playback device is configured such that the protocol generation unit generates the request protocol based on the communication state specified by the communication state specifying unit.
  • the request protocol is determined by the data size of the fragmented data in the content data for each data providing node. May be a protocol that prescribes information related to information, information related to the transfer start position of segmented data, and the like.
  • the “communication state” is a qualitative or quantitative state that defines the amount of delay on the time axis when the segmented data arrives at the streaming playback device.
  • the mere size of the transmission band of the network as seen in the technology is a state defined by a more practical operational aspect in which the tendency does not necessarily coincide.
  • the position on the time axis where the transferred fragmented data actually arrives at the streaming playback device loses its controllability. Whether or not the time required for acquisition can be shortened can be left to the end.
  • At least the segmented data related to the reproduction start data does not necessarily need to be acquired in the data reproduction order.
  • the communication state specifying unit, the protocol generation unit, and the playback unit according to the embodiment of the streaming playback device are each or as a whole, for example, various arithmetic processing devices such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit), It may be configured as various processors, controllers or various functional modules.
  • various arithmetic processing devices such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit)
  • CPU Central Processing Unit
  • MPU Micro Processing Unit
  • the communication state specifying unit specifies at least a communication speed and a response delay amount as the communication state.
  • the communication speed via the network means a transmission bandwidth (usable bandwidth) of the network, a data transfer speed depending on the specifications or performance of the streaming playback device or the data providing node, etc. Changes for each data providing node. In addition, it is not uncommon for the transmission band of a network to irregularly decrease from the maximum value in specifications or standards. Therefore, it is appropriate as a practical aspect that the “communication state” according to the present invention can take.
  • the response delay amount is a time delay amount (for example, RTT) when exchanging a request or a command between the streaming playback device and the data providing node, or a processing delay amount (hardware-like) in the data providing node. It is influenced by the processing speed, the load state, etc.), and can be appropriately changed according to the network environment, the performance of the data providing node, and the like. Therefore, it is appropriate as a practical aspect that the “communication state” according to the present invention can take.
  • RTT time delay amount
  • the apparatus further comprises storage means for storing the specified communication state.
  • the specifying unit may newly execute a process related to specifying the communication state only when it can be determined that the communication state is clearly different or different from the previous time.
  • this type of specifying process may be performed when a designated time has elapsed.
  • the protocol generation means is configured to equalize the transfer time from the transmission time of the request protocol to the time when the transfer of the fragmented data ends in each of the above.
  • the request protocol is generated as follows.
  • the request protocol is generated so that the transfer time, which means the length of the data transfer period from the request protocol transmission time to the time when the fragmented data transfer is completed, is equal among the data providing nodes.
  • the transfer time which means the length of the data transfer period from the request protocol transmission time to the time when the fragmented data transfer is completed.
  • “so as to be equal” means the control target as described above, and the actual data transfer end time does not necessarily have to be exactly the same in each data providing node. Furthermore, in this aspect, if the communication state specified with various aspects and the reproduction start data amount are known, the data amount or allocation amount of the subdivided data that can equalize the transfer period is mathematically determined. It means that it can lead to.
  • the protocol generation means generates fragmentation in the process in which the fragmented data is transferred from each of them via the network when generating the request protocol.
  • the data size of the subdivided data is set so as not to occur.
  • the data size of the fragmented data is set so that fragmentation (that is, division) of the fragmented data in the process of transferring the fragmented data is avoided. Therefore, efficient data transfer is realized while ensuring controllability, and the time required to acquire the reproduction start data can be suitably shortened.
  • the data size of the fragmented data is set within a range that does not cause a significant decrease in transmission efficiency while avoiding fragmentation.
  • such a data size may be the smallest MTU among the MTU (Maximum Transfer Unit) of each data providing node.
  • the data size may be different for each node as the MTU for each node without intentionally making such a common.
  • the protocol generation unit subdivides the continuation data necessary for continuing the streaming playback after obtaining the playback start data of the content data. And generating a request protocol for requesting transfer in accordance with the reproduction order of the continuation data that has been segmented and subdivided, and the transmission means, for each of the above, generates the generated protocol via the network.
  • the request data related to the continuation data is transmitted, and the acquisition unit transfers the fragmented continuation data transferred from the respective according to the request protocol related to the transmitted continuation data via the network.
  • the reproduction means obtains the content according to the obtained fragmented continuation data. In order to play.
  • the continuation data necessary for continuing the streaming playback of the content after the completion of the acquisition of the playback start data by the request protocol generation means (that is, the data after the playback start data in the content data). ) Is further generated for requesting its subdivision and transfer.
  • the request protocol related to the continuation data is transmitted to each node in the same manner as the request protocol related to the reproduction start data by the transmission unit, and each node transfers according to the request protocol related to the continuation data concerned.
  • the data is acquired by the acquisition unit in the same manner as the segmented data regarding the reproduction start data.
  • continuation data may be subdivided similarly to the subdivision data related to the reproduction start data, or may be subdivided differently. In any case, by acquiring fragment data of continuation data from a plurality of data providing nodes, the acquisition time of the entire content data can be shortened.
  • the request protocol for the continuation data is generated as a request for subdivision of the continuation data and a transfer in accordance with the reproduction order. That is, the segmented data for continuation is sequentially acquired along the reproduction order.
  • An embodiment according to the streaming playback method of the present invention is a streaming playback method in a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes, wherein A communication state specifying step of specifying a communication state with each of the data providing nodes, and starting streaming playback of content data for viewing the content based on the specified communication state A protocol generation step for generating a request protocol for requesting transfer of a plurality of fragmented data obtained by subdividing the reproduction start data as necessary data; and Sending process to send the request protocol An acquisition step of acquiring the fragmented data transferred from each of them according to the transmitted request protocol via a network; and a reproduction step of sequentially reproducing the content according to the acquired fragmented data To do.
  • 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.
  • the embodiment according to the computer program of the present invention causes a computer system to function as the embodiment according to the streaming playback device of the present invention.
  • the computer program is read 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.
  • the embodiments of the computer program of the present invention can also adopt various aspects.
  • the embodiment according to the recording medium of the present invention records the embodiment according to the computer program 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.
  • the content streaming playback is started quickly. be able to.
  • the communication state specifying step, the protocol generation step, the transmission step, the acquisition step, and the playback step are provided, so that the content streaming playback is started quickly. be able to.
  • the computer system can function as the embodiment of the streaming playback device of the present invention, so that the content streaming playback can be started quickly. Can do.
  • the embodiment of the computer program of the present invention is recorded, so that streaming playback of content can be started quickly.
  • FIG. 1 is a schematic configuration diagram conceptually showing a configuration of a streaming system according to a first example of the present invention.
  • FIG. 2 is a block diagram conceptually showing the structure of a playback device in the streaming system of FIG. 1.
  • 3 is a flowchart of streaming playback control executed in the playback device of FIG. 2.
  • FIG. 3 is a conceptual diagram of response delay and transmission speed referred to in the streaming playback control of FIG. 2.
  • 3 is a timing chart conceptually illustrating a fastest transfer pattern in the execution process of the streaming reproduction control of FIG. It is a conceptual diagram of the data request protocol produced
  • FIG. 1 is a schematic configuration diagram conceptually showing the configuration of the streaming system 1.
  • the streaming system 1 includes a playback device 10 and data providing nodes 30A, 30B, 30C, and 30D (each of which is accommodated in a wide area network 20 (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 playback device 10. More specifically, the playback device 10 distributes and requests content data to each data providing node, and performs streaming playback based on fragmented data of the content data appropriately transferred from each data providing node. It has a configuration.
  • the configuration of the streaming system 1 illustrated in FIG. 1 is merely an example for performing streaming playback on the playback device 10.
  • the playback device 10 and each data providing node are configured to perform P2P communication individually without going through a specific server device, but the playback device 10 and each data providing node are Communication may be performed via an appropriate server device accommodated in the network 20.
  • FIG. 1 four data providing nodes are shown, but there is basically no limit on the number of data providing nodes except for a practical limitation.
  • an unspecified number of nodes for example, personal computers owned by individuals
  • accommodated in the network 20 can appropriately be data providing nodes. Can be one of the data providing nodes.
  • FIG. 2 is a block diagram conceptually showing the configuration of the playback apparatus 10.
  • the same parts as those in FIG. 1 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.
  • the playback device 10 is an example of a “streaming playback device” according to the present invention, which includes a control unit 100, a storage device 200, a transmission unit 300, a reception unit 400, and a buffer 500.
  • the control unit 100 is an electronic control device that 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), according to a computer program stored in the ROM. It is configured to be able to execute streaming playback control 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.
  • This computer program can be recorded on various recording media such as HD, 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. .
  • the control unit 100 is configured to function as an example of each of the “communication state specifying unit”, the “protocol generating unit”, and the “reproducing unit” according to the present invention in the execution process of the streaming reproduction control.
  • the storage device 200 is a nonvolatile storage device such as an HDD or a flash memory, and is an example of the “storage means” according to the present invention.
  • Delay data DLY is stored in the storage area of the storage device 200.
  • the delay data DLY is control data describing a response delay td and a transmission speed x (that is, an example of a “communication state” according to the present invention) described later for each data providing node.
  • the transmission unit 300 is a transmission interface that is an example of a “transmission unit” according to the present invention, in which an output terminal (symbol omitted) is connected to the network 20, and various data specified by the control unit 100 via the network 20. Can be transmitted to each data providing node.
  • a data request protocol which will be described later, generated in the process in which the control unit 100 executes the streaming playback control, is also transmitted from the transmission unit 300 as one of the data.
  • the receiving unit 400 is a receiving interface as an example of the “acquisition means” according to the present invention, in which an output terminal (not shown) is connected to the network 20.
  • Various receiving units 400 are transferred from the data providing nodes via the network 20. It is configured to receive data.
  • a data fragment that is, an example of “subdivided data” according to the present invention, which will be described later, transferred from each data providing node via the network 20 is also received by the receiving unit 400 as one of the data. It has become.
  • the buffer 500 is a volatile storage device that temporarily accumulates data fragments transferred from each data providing node by a data amount corresponding to a predetermined buffer capacity. ⁇ Operation of Example> Hereinafter, streaming playback control will be described as the operation of this embodiment.
  • Streaming playback control is control for realizing streaming playback of content in the playback device 10.
  • Content data necessary for content reproduction is not stored in the reproduction apparatus 10 and is acquired from each data providing node via the network 20.
  • the data acquired from each data providing node is acquired with a data fragment as an example of “subdivided data” according to the present invention, which is obtained by subdividing the content data according to a predetermined standard.
  • selection of a data providing node that requests a data fragment and allocation of data fragments (data amount and fragment position) in each selected data providing node are defined by a data request protocol generated in the playback device 10.
  • the playback device 10 can start streaming playback when playback start data, which is data corresponding to N (bit), is acquired from the top data of the content data.
  • the streaming reproduction control is a control aimed at shortening the reproduction start time Tply as the length of the period from the transmission point of the data request protocol to the start point of streaming reproduction.
  • shortening is, of course, a concept that can be defined only when a comparison target exists.
  • the shortening standard according to this embodiment is based on a comparative example described later that belongs to the category of the conventional technical idea. It is assumed that this is the playback start time.
  • FIG. 3 is a flowchart of the streaming playback control.
  • the control unit 100 refers to the delay data DLY stored in the storage device 200, and the response delay td and the transmission rate x in the data transmission path established via the network 20 with each data providing node.
  • the response delay td and the transmission rate x are examples of the “communication state” according to the present invention, and are measured by the control unit 100 prior to or in synchronization with the execution of step S101.
  • the delay data DLY is data generated based on the measured response delay td and transmission rate x and stored in the storage device 200.
  • the operation according to step S101 and the response delay td and transmission rate x measurement process preceding or synchronized with it are examples of the operation of the “communication state specifying means” according to the present invention.
  • FIG. 4 is a conceptual diagram of the response delay td and the transmission rate x.
  • the vertical axis is the time axis, and along the time axis, the playback device 10 and the data providing node as the operation subject are represented.
  • the data request protocol is transmitted from the playback device 10 side at the illustrated operation point P1 (which corresponds to the time one-on-one) (see arrow S1).
  • the data request protocol arrives at the data providing node, appropriate internal processing is started at each data providing node from the illustrated operation point P2 corresponding to the arrival time (see arrow S2).
  • Internal processing includes analysis of received data request protocol, retrieval of data fragment specified by data request protocol and preparation for transfer thereof (for example, read processing in HDD, various optical disk devices, etc.), creation of response message, etc.
  • the data providing node sequentially transmits a plurality of data fragments ready for transfer to the playback device 10 via the network 20 (see the broken line frame S3 in the drawing).
  • time at which the data request protocol is transmitted from the playback device 10 time corresponding to the operating point P1
  • time at which the data request protocol is received at the data providing node time corresponding to the operating point P2
  • a delay time corresponding to the deviation on the time axis is set as a required time td1.
  • the time between the start of transmission of the first data fragment and the acquisition time of the data on the playback device 10 side is also the same as the previous request time td1.
  • a delay time corresponding to the deviation on the time axis is defined as a response time td3.
  • the sum of the request time td1 and the response time td3 corresponds to the RTT of the network 20.
  • the control unit 100 separately measures the processing time td2 of each data providing node in synchronization with the measurement of the RTT.
  • a specific method for measuring the processing time td2 is not particularly limited. For example, a request is made for data set in advance for measuring the processing time, and the time until the data is transferred in response to the request. The processing time td2 may be estimated based on the difference from the RTT. Alternatively, it is possible to request each data providing node for information regarding the processing speed and hardware configuration of each data providing node, and to estimate the processing time td2 based on the obtained information. Good.
  • the number of data fragments corresponding to the amount of data allocated to the data providing node is continuously acquired on the time axis after the completion of the acquisition of the first data fragment. Will be acquired.
  • this state is shown in the time passage from the illustrated operating point P4 to the operating point P5 (see the illustrated arrow line S4).
  • the time required to acquire data corresponding to the data amount allocated to the data providing node is the illustrated transmission time tx.
  • the time value obtained by adding the transmission time tx and the response delay td is from the time when the data request protocol is transmitted to one data providing node until the time when acquisition of the data fragment corresponding to the requested data amount is completed. And is an example of the “transfer time” according to the present invention.
  • the transmission rate x is between the data providing node uniquely defined by the transmission bandwidth of the network 20 allowed between the playback apparatus 10 and each data providing node, the hardware configuration of the data providing node, and the like. This value is unique to the transmission path. Therefore, when the control unit 100 manages the state of the network 20, it can be determined for each data providing node.
  • the control unit 100 repeatedly measures the response delay td and the transmission rate tx at a constant or indefinite period during the streaming playback control execution period, and updates the delay data DLY as appropriate. Therefore, even if the delay data DLY is referred to or the response delay td and the transmission rate tx are measured in real time in step S101, highly accurate values can be referred to.
  • the control unit 100 acquires the reproduction start data amount N (bit), which is the data amount of the reproduction start data described above (step S102).
  • the reproduction start data amount N is a value determined by the processing capability on the hardware of the reproduction apparatus 10, and is a value held by the control unit 100 as its own control data.
  • the control unit 100 calculates the above-described reproduction start time Tply based on the response delay td and transmission rate x for each data providing node and the acquired reproduction start data amount N (step S1). S103).
  • the reproduction start time Tply varies depending on a data providing node that is a data fragment request destination, a data allocation amount for each data providing node, a data size of the data fragment, and the like. Therefore, the control unit 100 assumes a plurality of patterns for the data providing node as an option, calculates and compares the reproduction start time Tply for the plurality of assumed patterns, and based on the comparison result, A pattern is determined (step S104).
  • step S103 and step S104 may not always be executed.
  • the description will be continued on the assumption that one pattern (hereinafter, referred to as “the fastest transfer pattern” as appropriate) in which the reproduction start time Tply can be the shortest in theory is selected.
  • FIG. 5 is a timing chart conceptually illustrating the fastest transfer pattern. In the figure, parts that are the same as those in FIG.
  • FIG. 5 shows a state in which transfer of data fragments is completed at time T5 in all data providing nodes as a result of adopting such an allocation amount.
  • A”, “B”, “C”, and “D” shown in the figure represent the data allocation amount in each data providing node, respectively, and the sum (ie, A + B + C + D) is the reproduction start data amount N. .
  • the reproduction start time Tply becomes equal to each transfer time and is minimized. That is, it becomes possible to start streaming playback of content at the fastest speed.
  • the playback start data amount is N (bits)
  • the data fragment size is less than N
  • the transmission rates and response delays for nodes A, B, and C are a and ta, b and tb, and c and tc, respectively.
  • the data allocation amounts for the nodes A, B, and C are Na, Nb, and Nc, respectively.
  • the above relational expressions may not hold. For example, when only the response delay exceeds the transfer time in another node, the data allocation amount of that node is set to zero. That is, such a node is excluded from the requested nodes.
  • the data amounts Na, Nb,..., Nx allocated to each can be expressed as the following equation (8).
  • z is an identifier
  • z a, b,.
  • step S104 the control unit 100 generates a data request protocol based on the determined pattern (step S104), and transmits the data request protocol to each data providing node via the transmission unit 300 (step S106).
  • the operation according to step S104 is an example of the operation of the “protocol generation unit” according to the present invention, and the transmission operation of the transmission unit 300 under the control of the control unit 100 is performed by the “transmission unit” according to the present invention. It is an example of operation
  • the data request protocol is a protocol for requesting a data fragment to each data providing node, and its configuration is various, but in this embodiment, it is described with at least the following three elements. That is, the three elements are (a) transfer start position (data fragment position or byte position), (b) bitmap size, and (c) bitmap.
  • FIG. 6 is a conceptual diagram of the data request protocol.
  • the same reference numerals are assigned to the same parts as those in FIG. 5, and the description thereof is omitted as appropriate.
  • FIG. 6 (a) is a diagram showing a timing chart when a data fragment is transferred from each data providing node according to the data request protocol.
  • FIG. 6B shows the reproduction start data represented by data fragments.
  • FIG. 6C is a schematic diagram of a bitmap.
  • the data size of the data fragment is common to all nodes.
  • the size of the data fragment is smaller than the reproduction start data amount N as described above.
  • the size of the data fragment does not cause fragmentation of the data fragment (division processing due to excessive size).
  • the MTU is set as a reference.
  • FIG. 7 is a conceptual diagram of an IP packet when TCP is used as a transmission protocol.
  • FIG. 8 is a conceptual diagram of an IP packet when UDP is used as a transmission protocol.
  • the same reference numerals are given to the overlapping portions, and the description thereof will be omitted as appropriate.
  • the data size of the entire IP packet is an MTU defined for each data providing node.
  • Part of the IP packet is used to describe the fragment location of the IP header, TCP header and data fragment.
  • the remaining data area is a data fragment area. Therefore, from the viewpoint of preventing data fragmentation, at least the data size of the data fragment is less than the MTU.
  • the data size of the data fragment transferred from each data providing node is equalized, since the MTU size does not always match between the nodes, the data size conforms to the minimum MTU. It is desirable to do.
  • the entire data size of the IP packet is MTU, and the data fragment is stored in the remaining data area after the fragment position of the IP header, UDP header, and data fragment is described.
  • the data providing node 30 ⁇ / b> A receives a total of seven data fragments A 1 , A 2 , A 3 , A 4 , A 5 , A 6 and A 7.
  • Data fragments are transferred at a transfer interval defined by the transmission rate x_a. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments A 1 , A 2 , A 3 , A 4 , A 5 , A 6 and A 7 is the data allocation amount Na to the data providing node 30A.
  • a total of five data fragments of data fragments B 1 , B 2 , B 3 , B 4 and B 5 are transferred from the data providing node 30B at a transfer interval defined by the transmission rate x_b. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments B 1 , B 2 , B 3 , B 4 and B 5 is the data allocation amount Nb to the data providing node 30B.
  • a total of four data fragments of data fragments C 1 , C 2 , C 3 and C 4 are transferred from the data providing node 30C at a transfer interval defined by the transmission rate x_c. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments C 1 , C 2 , C 3 and C 4 is the data allocation amount Nc to the data providing node 30C.
  • a total of three data fragments, data fragments D 1 , D 2 and D 3 are transferred from the data providing node 30D at a transfer interval defined by the transmission rate x_d. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments D 1 , D 2 and D 3 is the data allocation amount Nd to the data providing node 30D.
  • the data fragments transferred at the timing shown in FIG. 6A are accumulated in the order of acquisition via the receiver 400, the data fragments transferred from each node are randomly arranged as shown in FIG. 6B. It becomes composition.
  • the data request protocol is generated so that the data illustrated in FIG. 6B becomes the reproduction start data as it is. That is, when the acquisition of the reproduction start data is completed, streaming reproduction is realized by reproducing the data fragments in the order of acquisition.
  • a to D mean each data providing node
  • the reproduction start data is defined for each data fragment divided from left to right. That is, the data fragment adjacent to the right of the symbols A to D is the top data of the reproduction start data, and the rightmost data fragment means the last data of the reproduction start data.
  • “1” hatched in the bitmap means that the corresponding node is in charge of transferring the data fragment, and “0” means that the data fragment is not transferred.
  • the control unit 100 displays the bitmap as shown in FIG. Create and send to each node as data request protocol.
  • Each node refers to the bitmap, selects continuous or discontinuous data fragments to be transferred from the content data based on the fragment positions, and sequentially transfers them as the IP packets described above. is there.
  • the order of the data fragments acquired by the playback device 10 is not considered at all, and the data fragments specified by the protocol are sequentially transmitted at the timing specified by the response delay td and the transmission speed x. Will be transferred. Therefore, the control unit 100 calculates the arrival order of the data fragments based on the data allocation amount, the response delay td, and the transmission rate x, so that the reproduction start data is sequentially acquired from the head side. A request protocol is generated.
  • the control unit 100 sequentially acquires the data fragments transferred from each data providing node (step S107), and in the process of sequentially acquiring the data fragments, the reproduction start data It is determined whether or not the acquisition has been completed (step S108). If acquisition of the reproduction start data has not been completed (step S108: NO), the process returns to step S107, and acquisition of the data fragment is continued.
  • Step S109 is an example of the operation of the “reproducing means” according to the present invention.
  • streaming playback is started, an elapsed time from the start of playback is referred to, and it is determined whether or not a certain time has passed (step S110). If the predetermined time has not elapsed (step S110: NO), step S110 is repeated and the process is temporarily put into a standby state.
  • step S110: YES the control unit 100 determines whether or not the acquisition of content data has been completed (step S111), and if it has been completed (step S111: YES), streaming playback is performed. End control. However, the reproduction process related to the acquired content data is continued until the reproduction ends.
  • step S111 when the acquisition of the reproduction start data has been completed but the acquisition of the content data has not yet been completed (step S111: NO), the control unit 100 executes a streaming continuation process (step S112).
  • the streaming continuation process proceeds basically in the same manner as the processes after step S101. That is, the control unit 100 sets the reproduction start data amount N to an appropriate data size (for example, the data size of the remaining content data excluding the reproduction start data (that is, an example of “continuation data” according to the present invention)).
  • the data request protocol is generated and transmitted so that the data fragment is transferred to the playback apparatus 10 at the fastest speed in the playback order.
  • the reproduction start data when collecting the reproduction start data, streaming reproduction is not started unless the reproduction start data is acquired. Therefore, the data fragment does not necessarily have to arrive at the reproduction apparatus 10 in the reproduction order.
  • the completion of the acquisition of the reproduction start data it is desirable that acquisition of data fragments in accordance with the reproduction order is requested in order to prevent a reproduction error. That is, the generation of the data request protocol according to the present embodiment is also effective in the streaming continuation process.
  • FIG. 9 is a timing chart when data transfer is performed without taking the response delay td into consideration.
  • the same reference numerals are assigned to the same parts as those in FIG. 5, and the description thereof is omitted as appropriate.
  • the amount of data allocated to each node is determined so that the data transfer end times are equal without considering the response delay td. That is, the length of the allocated data in the time axis direction is the same for each node.
  • the transfer start times at the nodes are different. Therefore, especially in the data providing node 30C having a large response delay td, the data transfer does not end even at time T5, and the reproduction start time Tply becomes longer than that in the above embodiment. That is, in the comparative example, the transfer time, which is the sum of the response delay td and the transmission time tx, varies between nodes, and the maximum value among them is the reproduction start time. Therefore, it is difficult to start content streaming playback quickly.
  • FIG. 10 is a table showing the difference in the reproduction start time Tply between the example and the comparative example.
  • FIG. 10 shows FIG. 10 (a), FIG. 10 (b), and FIG. 10 (c) with different conditions.
  • the transmission rate x is common.
  • the transmission time tx defined by the allocated amount and the transmission rate becomes equal, and the transfer time obtained by adding the response delay td to each node varies. End up. As a result, the reproduction start time Tply is limited to these maximum values.
  • the configuration example of the bitmap defined in the data request protocol is not limited to that of the first embodiment.
  • FIG. 11 is a conceptual diagram of a bitmap according to the second embodiment. In the figure, the same reference numerals are given to the same parts as those in FIG. 6, and the description thereof will be omitted as appropriate.
  • the bitmap according to the second embodiment has regularity as represented as the illustrated unit UT.
  • the bit map has regularity in this way, the number of times of issuing the data request protocol can be reduced, and the transfer time can be shortened by reducing the response delay td.
  • the least common multiple of the transmission rate x between the nodes is calculated and the unit UT is formed, so that the data fragment acquisition end time can be made equal at each node.
  • the data request protocol can be configured to include the following elements, for example. That is, (a) transfer start position, (b) requested data size, requested unit number or requested packet number, (c) unit size, and (d) bitmap pattern.
  • bitmap pattern can be further coded.
  • the encoded bitmap pattern will be described with reference to FIG. FIG. 12 is a conceptual diagram of a coded bitmap pattern.
  • bitmap pattern When the bitmap pattern is coded as shown in FIG. 12, the code contents are as follows for each node.
  • the data request protocol can be configured to include, for example, the following elements: That is, (a) transfer start position, (b) requested data size, requested unit number or requested packet number, (c) unit size, and (d) bitmap pattern code.
  • the bitmap pattern is encoded in this way, the data amount of the entire data request protocol is reduced, and the processing time td2 required for analyzing the data request protocol can be shortened. As a result, the transfer time can be shortened.
  • 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 can be applied to an apparatus that performs streaming playback of content.

Abstract

The present invention quickly initiates the streaming playback of content. A streaming playback device (10) is provided with an identification means (100) for identifying a communication state via said network with each of a plurality of data providing nodes; a protocol generating means (100) for, on the basis of the identified communication state, generating a request protocol for requesting the transfer of a plurality of subdivision data which is prepared by subdividing playback initiation data as data required for initiating the streaming playback; a transmitting means (300) for transmitting the generated request protocol to each of the plurality of data providing nodes via said network; an acquiring means (400) for acquiring via said network, the subdivision data transferred from each of the plurality of data providing nodes in response to the transmitted request protocol; and a playback means (100) for sequentially reproducing the contents in accordance with the acquired subdivision data.

Description

ストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体Streaming playback apparatus, streaming playback method, computer program, and recording medium
 本発明は、例えば、映像や音声等に係る各種コンテンツのストリーミング再生を行うためのストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体の技術分野に関する。 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参照)。 When downloading a single file, a method has been proposed in which a plurality of data (called “fragments” in the literature) obtained by dividing the single file are transmitted from a plurality of servers via a network. (For example, refer to Patent Document 1).
 特許文献1に開示された方法によれば、伝送速度が速い順に選択された複数のサーバの各々に対し伝送速度に応じた量のフラグメントを割り当て、これらサーバから伝送させることによって、ファイルの伝送速度を向上させることが可能であるとされている。 According to the method disclosed in Patent Document 1, a file transmission rate is obtained by allocating an amount of fragments according to the transmission rate to each of a plurality of servers selected in order of increasing transmission rate, and transmitting them from these servers. It is said that it is possible to improve.
 尚、特許文献1によれば、特許文献1に開示された技術思想が、ファイルのダウンロードのみならずストリーミング再生にも適用可能であるとされる。ストリーミング再生とは、この場合、各種コンテンツに関するデータを取得しながら、その取得したデータに基づいて当該コンテンツを順次再生することを意味する。尚、一般的なストリーミング再生では、コンテンツの再生開始時点においてコンテンツに関するデータの取得は継続している。 According to Patent Document 1, the technical idea disclosed in Patent Document 1 is applicable not only to file download but also to streaming playback. In this case, the streaming reproduction means that the contents are sequentially reproduced based on the acquired data while acquiring data regarding various contents. In general streaming playback, acquisition of data related to content is continued at the start of playback of the content.
特表2004-531824号公報JP-T-2004-531824
 特許文献1に開示される方法は、一のサーバからファイルをダウンロードする場合と較べて、ファイルのダウンロードに要する時間を短縮化することが可能であるものの、各種コンテンツのストリーミング再生に適用しようとした場合には、次のような問題が生じ得る。 Although the method disclosed in Patent Document 1 can reduce the time required for downloading a file compared to downloading a file from a single server, the method has been tried to be applied to streaming playback of various contents. In some cases, the following problems may arise.
 一のストリーミング再生装置において、ストリーミングに必要なデータの転送要求を発した時点から、コンテンツのストリーミング再生を開始するまでに要する時間(以下、適宜「再生開始時間」と表現する)は、ストリーミング再生を開始するのに最低限必要なデータを取得する時間に比例する。 In one streaming playback device, the time required to start streaming playback of content from the time when a transfer request for data necessary for streaming is issued (hereinafter referred to as “playback start time” as appropriate) Proportional to the time it takes to get the minimum data needed to start.
 ここで特に、サーバ装置やパーソナルコンピュータ等の各種形態を採り得る複数のノードから、一のコンテンツの分割データを取得する場合において、上述のように、ファイルの先頭側から伝送速度に応じて所定量のデータを分割データとして割り当てた場合、再生開始可能データは、一のノードのみに割り当てられる可能性が高い。この場合、結局の所、再生開始時間は、一のノードからファイルを取得する場合と何ら変わりがないことになる。 Here, in particular, when acquiring divided data of a single content from a plurality of nodes that can take various forms such as a server device and a personal computer, as described above, a predetermined amount is determined according to the transmission speed from the beginning of the file. When the above data is allocated as divided data, it is highly possible that the reproduction startable data is allocated to only one node. In this case, after all, the playback start time is no different from when a file is acquired from one node.
 即ち、特許文献1に開示される方法には、再生開始時間に関して、複数のノードを利用することに特別の利得が生じない場合があり、ストリーミング再生を開始するまでの時間を確実に短縮化することが困難であるという技術的問題点がある。 That is, in the method disclosed in Patent Document 1, there is a case where a special gain does not occur in using a plurality of nodes regarding the playback start time, and the time until the streaming playback is started is surely shortened. There is a technical problem that this is difficult.
 本発明は、上述した問題点に鑑みてなされたものであり、コンテンツのストリーミング再生を迅速に開始し得るストリーミング再生装置及び方法、並びにこのような方法を実現するためのコンピュータプログラム及び記録媒体を提供することを目的とする。 The present invention has been made in view of the above-described problems, and provides a streaming playback apparatus and method capable of quickly starting streaming playback of content, and a computer program and a recording medium for realizing such a method. The purpose is to do.
 上述した課題を解決するため、請求の範囲第1項のストリーミング再生装置は、複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置であって、前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定手段と、前記特定された通信状態に基づいて、前記コンテンツを構成するコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成手段と、前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信手段と、前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得手段と、前記取得された細分化データに従って前記コンテンツを順次再生する再生手段とを具備することを特徴とする。 In order to solve the above-described problem, a streaming playback device according to claim 1 is a streaming playback device capable of streaming playback of content, which is accommodated in a network together with a plurality of data providing nodes, and is connected via the network. Communication status specifying means for specifying a communication status with each of the plurality of data providing nodes, and for starting the streaming reproduction of the content data constituting the content based on the specified communication status Protocol generation means for generating a request protocol for requesting transfer of a plurality of pieces of fragmented data obtained by subdividing the reproduction start data as necessary data, and for each of the generation via the network Means for transmitting the requested request protocol, and the network An acquisition means for acquiring the fragmented data transferred from each of them according to the transmitted request protocol, and a reproduction means for sequentially reproducing the content according to the acquired fragmented data It is characterized by.
 上述した課題を解決するため、請求の範囲第7項に記載のストリーミング再生方法は、複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置における、ストリーミング再生方法であって、前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定工程と、前記特定された通信状態に基づいて、前記コンテンツを構成するコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成工程と、前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信工程と、前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得工程と、前記取得された細分化データに従って前記コンテンツを順次再生する再生工程とを具備することを特徴とする。 In order to solve the above-described problem, the streaming playback method according to claim 7 is a streaming playback method in a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes. A communication state specifying step for specifying a communication state with each of the plurality of data providing nodes via the network, and content data constituting the content based on the specified communication state A protocol generation step of generating a request protocol for requesting transfer of a plurality of segmented data obtained by segmenting the reproduction start data as data necessary for starting the streaming reproduction; The generated request protocol via the network A transmission step of transmitting, an acquisition step of acquiring the fragmented data transferred from each according to the transmitted request protocol via the network, and the contents sequentially according to the acquired fragmented data And a reproducing step for reproducing.
 上述した課題を解決するため、請求の範囲第8項に記載のコンピュータプログラムは、コンピュータシステムを請求の範囲第1項から第6項のいずれか一項に記載のストリーミング再生装置として機能させることを特徴とする。 In order to solve the above-described problem, a computer program according to claim 8 causes a computer system to function as the streaming playback device according to any one of claims 1 to 6. Features.
 上述した課題を解決するため、請求の範囲第9項に記載の記録媒体は、請求の範囲第8項に記載のコンピュータプログラムを記録することを特徴とする。
<ストリーミング再生装置の実施形態>
In order to solve the above-described problem, a recording medium described in claim 9 records the computer program described in claim 8.
<Embodiment of Streaming Playback Device>
 本発明のストリーミング再生装置に係る実施形態は、複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置であって、前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定手段と、前記特定された通信状態に基づいて、前記コンテンツを視聴するためのコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成手段と、前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信手段と、前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得手段と、前記取得された細分化データに従って前記コンテンツを順次再生する再生手段とを具備する。 An embodiment of the streaming playback device according to the present invention is a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes, wherein the plurality of data providing nodes are connected via the network. Communication status specifying means for specifying the communication status with each other, and data necessary for starting the streaming reproduction among the content data for viewing the content based on the specified communication status Generating a request protocol for requesting transfer of a plurality of subdivided data obtained by subdividing the reproduction start data, and transmitting the generated request protocol to each of the above via the network Transmitting means for transmitting the data via the network Comprising an acquisition means for acquiring the subdivided data transferred from said each of the reproducing means for sequentially reproducing the contents according to the acquired subdivided data in response to the request protocol.
 実施形態に係る「ネットワーク」とは、例えば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, a WAN line or a LAN network, a telephone line, an ADSL (Asymmetric Digital Subscriber Line), or an optical fiber. 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.
 実施形態に係るストリーミング再生装置によれば、その動作時には、通信状態特定手段により、複数のデータ提供ノードの各々との間の通信状態が特定される。 According to the streaming playback apparatus according to the embodiment, during the operation, the communication status with each of the plurality of data providing nodes is specified by the communication status specifying means.
 ここで、通信状態特定手段により特定される「通信状態」とは、ネットワークを介し、データ提供ノードに対して何らかのデータを要求する場合において、要求に応じてデータ提供ノードから転送される然るべきデータがストリーミング再生装置に到着する際の時間軸上の遅延量を規定する定性的又は定量的状態を意味する。従って、「通信状態」に係る実践的な態様は、ネットワークに依存するものも、データ提供ノードに依存するものも含み得るものであって、一意に限定されない。例えば、「通信状態」とは、ネットワークの伝送帯域、データ提供ノードのデータの処理速度、データ提供ノードのデータ転送速度及びRTT(Round Trip Time)等を適宜に含み得る。 Here, the “communication state” specified by the communication state specifying means means that, when requesting some data to the data providing node via the network, appropriate data transferred from the data providing node in response to the request. It means a qualitative or quantitative state that defines the amount of delay on the time axis when arriving at the streaming playback device. Therefore, a practical aspect related to the “communication state” may include a network dependent one and a data providing node dependent one, and is not uniquely limited. For example, the “communication state” may appropriately include a transmission band of the network, a data processing speed of the data providing node, a data transfer speed of the data providing node, an RTT (Round Trip Time), and the like.
 尚、通信状態特定手段に係る特定工程は、例えば一定又は不定の周期で周期的に実行されてもよいし、然るべき条件が満たされた場合等、不定期に或いは限定的に実行されるものであってもよい。 Note that the specifying step related to the communication state specifying means may be executed periodically, for example, at a constant or indefinite period, or may be executed irregularly or limitedly when an appropriate condition is satisfied. There may be.
 また、実施形態に係る「特定」とは、特定対象を、直接的に又は間接的に制御上の参照値として確定させることを意味しており、検出、算出、導出、推定、同定、選択或いは取得等、その実践上の態様は何ら限定されない趣旨である。 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 aspects such as acquisition are not limited in any way.
 一方、通信状態が特定されると、プロトコル生成手段により要求プロトコルが生成され、送信手段により、ネットワークを介してデータ提供ノードの各々に送信される。尚、データ提供ノードとの間の、各種データの送受信形態は、例えば然るべきサーバ装置を介したものであってもよいし、例えばP2P(Peer To Peer)等サーバ装置を介さないものであってもよい。 On the other hand, when the communication state is specified, a request protocol is generated by the protocol generation unit, and transmitted to each of the data providing nodes via the network by the transmission unit. The transmission / reception mode of various data with the data providing node may be, for example, via an appropriate server device, or may be, for example, not via a server device such as P2P (Peer To Peer). Good.
 実施形態に係る「要求プロトコル」とは、データ提供ノードの各々に対し細分化データの転送を要求するための各種のプロトコルを包括する概念である。 The “request protocol” according to the embodiment is a concept that encompasses various protocols for requesting each data providing node to transfer fragmented data.
 ここで、「細分化データ」とは、コンテンツ全体に相当するコンテンツデータのうち、コンテンツの再生を開始するために必要となる再生開始データを細分化してなる、再生開始データのデータサイズ(以下、適宜「再生開始データ量」と称する)未満のデータサイズを有する断片データである。 Here, “subdivision data” refers to the data size of reproduction start data (hereinafter referred to as “reproduction start data”), which is obtained by subdividing reproduction start data necessary for starting reproduction of content among content data corresponding to the entire content. This is fragment data having a data size less than the “reproduction start data amount” as appropriate.
 尚、再生開始データとは、コンテンツデータの先頭位置から然るべき位置にわたる連続的なデータであるが、再生開始データ量は、例えばストリーミング再生装置のデータ処理速度やストリーミング再生に係る再生方式等、ストリーミング再生装置側の事情に応じて適宜異なり得る。 Note that the reproduction start data is continuous data extending from the start position of the content data to an appropriate position, but the reproduction start data amount is determined based on the streaming reproduction such as the data processing speed of the streaming reproduction apparatus and the reproduction method related to the streaming reproduction. Depending on the situation on the apparatus side, it may be appropriately changed.
 ストリーミング再生装置の実施形態では、ネットワークを介して、複数のデータ提供ノードから、この要求プロトコルに応じて転送される細分化データが、取得手段により順次取得される。その結果、この再生開始データのデータサイズ以上のデータが蓄積された段階で、再生手段によりコンテンツのストリーミング再生が開始される。尚、細分化データは、例えば、揮発性の記憶領域に一時的にバッファリングされてもよいし、不揮発性の記憶領域に恒久的に記憶されてもよい。 In the embodiment of the streaming playback apparatus, the segmented data transferred according to the request protocol is sequentially acquired by the acquisition unit from the plurality of data providing nodes via the network. As a result, when the data larger than the data size of the reproduction start data is accumulated, streaming reproduction of the content is started by the reproduction means. For example, the segmented data may be temporarily buffered in a volatile storage area, or may be permanently stored in a nonvolatile storage area.
 このように、本発明のストリーミング再生装置に係る実施形態は、複数のデータ提供ノードからデータを転送させるにしても、再生開始データが細分化されることなく一のデータ提供ノードから転送されてしまえば、ストリーミング再生開始までの時間を短縮化することができないことを技術的問題点として見出している。係る技術的問題点に対し、少なくとも再生開始データを細分化し、再生開始データの断片としての細分化データを複数のデータ提供ノードから集める旨の技術思想によって、再生開始データの取得に要する時間を短縮化し、もってストリーミング再生を迅速に開始させることを可能としているのである。 As described above, in the embodiment of the streaming playback device of the present invention, even when data is transferred from a plurality of data providing nodes, the playback start data is transferred from one data providing node without being subdivided. For example, it has been found as a technical problem that the time until the start of streaming reproduction cannot be shortened. In response to such technical problems, at least the playback start data is subdivided, and the technical idea of collecting the subdivision data as fragments of the playback start data from a plurality of data providing nodes reduces the time required to acquire the playback start data. Thus, streaming playback can be started quickly.
 ところで、ネットワークを介したデータ伝送においては、このような再生開始データの細分化が、再生開始データの取得に要する時間の短縮化に必ずしも直結しない。即ち、ストリーミング再生装置と複数のデータ提供ノードの各々との間の各種データの伝送には、先に述べた通信状態が大きく影響する。とりわけ、細分化データのような比較的小さなサイズのデータは、この通信状態から受ける影響が相対的に大きくなる。 By the way, in data transmission via a network, such fragmentation of reproduction start data does not necessarily lead to a reduction in the time required to acquire the reproduction start data. That is, the communication state described above greatly affects the transmission of various data between the streaming playback device and each of the plurality of data providing nodes. In particular, data having a relatively small size such as fragmented data has a relatively large influence from the communication state.
 より具体的には、プロトコル生成手段により生成された要求プロトコルが、複数のデータ提供ノードに一斉に送信されたとしても、要求プロトコルが各データ提供ノードに到着する時刻は必ずしも相互に一致しない。同様に、個々のデータ提供ノードにおいて、係る要求プロトコルを解析し、然るべきデータの転送準備を整えるまでの時間も一律でない。更に、個々のデータ提供ノードにおいてデータの転送が開始されたとして、要求された細分化データを構成する個々のパケット(即ち、転送単位)がストリーミング再生装置に到着するまでの時間もまた、各ノードにおいて一律でない。 More specifically, even when the request protocols generated by the protocol generation means are transmitted to a plurality of data providing nodes all at once, the times when the request protocols arrive at each data providing node do not necessarily match each other. Similarly, the time required for analyzing the request protocol and preparing the appropriate data transfer in each data providing node is not uniform. Further, assuming that data transfer is started in each data providing node, the time until each packet (that is, transfer unit) constituting the requested fragmented data arrives at the streaming playback device is also determined by each node. Is not uniform.
 このため、単に再生開始データを細分化するだけでは、一部の細分化データの転送が大きく遅延する等といった事態が生じ得る。場合によっては、再生開始データを細分化しない方が、再生開始データの取得に要する時間が短いといった事態も生じ得るのである。 For this reason, simply subdividing the reproduction start data may cause a situation such as the transfer of some of the subdivided data being greatly delayed. In some cases, the time required to acquire the reproduction start data may be shorter if the reproduction start data is not subdivided.
 そこで、実施形態に係るストリーミング再生装置は、プロトコル生成手段が、通信状態特定手段により特定された通信状態に基づいて要求プロトコルを生成する構成となっている。このような、通信状態に基づいて生成される要求プロトコルの実践的態様は、如何様にも規定され得るが、例えば、要求プロトコルは、データ提供ノード毎に、コンテンツデータにおける細分化データのデータサイズに関する情報や細分化データの転送開始位置に関する情報等を規定したプロトコルであってもよい。 Therefore, the streaming playback device according to the embodiment is configured such that the protocol generation unit generates the request protocol based on the communication state specified by the communication state specifying unit. Such a practical aspect of the request protocol generated based on the communication state can be defined in any way. For example, the request protocol is determined by the data size of the fragmented data in the content data for each data providing node. May be a protocol that prescribes information related to information, information related to the transfer start position of segmented data, and the like.
 ここで特に、「通信状態に基づいて」とは、概念的表現とも解釈され得るが、従来このような技術思想が存在しない点に鑑みれば、不明確性を理由にその効果が否定されるものでもない。実施形態に係る「通信状態」とは、先に述べたように、細分化データがストリーミング再生装置に到着するにあたっての時間軸上の遅延量を規定する定性的又は定量的状態であるから、従来技術に見られるような、単なるネットワークの伝送帯域の大小とは、必ずしもその傾向が一致しない、より実践的運用面から規定される状態である。逆に言えば、この種の通信状態を考慮しない限りは、転送された細分化データが実際にストリーミング再生装置に到着する時間軸上の位置は、その可制御性を失うから、再生開始データの取得に要する時間が短縮化されるか否かは、結局のところ成り行き任せとなりかねないのである。 Here, in particular, “based on the communication state” can be interpreted as a conceptual expression, but in view of the fact that such a technical idea does not exist in the past, its effect is denied due to unclearness. not. As described above, the “communication state” according to the embodiment is a qualitative or quantitative state that defines the amount of delay on the time axis when the segmented data arrives at the streaming playback device. The mere size of the transmission band of the network as seen in the technology is a state defined by a more practical operational aspect in which the tendency does not necessarily coincide. In other words, unless the communication state of this kind is taken into consideration, the position on the time axis where the transferred fragmented data actually arrives at the streaming playback device loses its controllability. Whether or not the time required for acquisition can be shortened can be left to the end.
 尚、ストリーミング再生が、再生開始データの取得完了まで待機される点に鑑みれば、少なくとも再生開始データに係る細分化データに関しては、必ずしもデータの再生順に取得される必要はない。 In view of the point that the streaming reproduction waits until the completion of the acquisition of the reproduction start data, at least the segmented data related to the reproduction start data does not necessarily need to be acquired in the data reproduction order.
 尚、ストリーミング再生装置の実施形態に係る通信状態特定手段、プロトコル生成手段及び再生手段は、夫々が或いは全体として、例えばCPU(Central Processing Unit)又はMPU(Micro Processing Unit)等の各種演算処理装置、各種プロセッサ、コントローラ又は各種機能モジュール等として構成されていてもよい。 Note that the communication state specifying unit, the protocol generation unit, and the playback unit according to the embodiment of the streaming playback device are each or as a whole, for example, various arithmetic processing devices such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit), It may be configured as various processors, controllers or various functional modules.
 本発明のストリーミング再生装置に係る実施形態の一の態様では、前記通信状態特定手段は、前記通信状態として、少なくとも通信速度と応答遅延量とを特定する。 In one aspect of the embodiment of the streaming playback device of the present invention, the communication state specifying unit specifies at least a communication speed and a response delay amount as the communication state.
 ネットワークを介した通信速度とは、ネットワークの伝送帯域(使用可能な帯域)や、ストリーミング再生装置又はデータ提供ノードの仕様或いは性能に依存するデータ転送速度等を意味し、ストリーミング再生装置毎に、或いはデータ提供ノード毎に変化する。また、ネットワークの伝送帯域は、仕様上の或いは規格上の最大値から不規則に減少することも珍しくない。従って、本発明に係る「通信状態」が採り得る実践的態様として妥当である。 The communication speed via the network means a transmission bandwidth (usable bandwidth) of the network, a data transfer speed depending on the specifications or performance of the streaming playback device or the data providing node, etc. Changes for each data providing node. In addition, it is not uncommon for the transmission band of a network to irregularly decrease from the maximum value in specifications or standards. Therefore, it is appropriate as a practical aspect that the “communication state” according to the present invention can take.
 また、応答遅延量とは、ストリーミング再生装置とデータ提供ノードとの間で要求やコマンドをやり取りするにあたっての時間遅延量(例えば、RTT等)や、データ提供ノードにおける処理遅延量(ハードウェア的な処理速度や負荷状態等に影響される)を意味し、ネットワーク環境やデータ提供ノードの性能等に応じて適宜変化し得る。従って、本発明に係る「通信状態」が採り得る実践的態様として妥当である。 The response delay amount is a time delay amount (for example, RTT) when exchanging a request or a command between the streaming playback device and the data providing node, or a processing delay amount (hardware-like) in the data providing node. It is influenced by the processing speed, the load state, etc.), and can be appropriately changed according to the network environment, the performance of the data providing node, and the like. Therefore, it is appropriate as a practical aspect that the “communication state” according to the present invention can take.
 本発明のストリーミング再生装置に係る実施形態の他の態様では、前記特定された通信状態を記憶する記憶手段を更に具備する。 In another aspect of the embodiment of the streaming playback apparatus of the present invention, the apparatus further comprises storage means for storing the specified communication state.
 この態様によれば、特定された通信状態が、然るべきデータの形態で然るべき記憶手段に記憶されるため、一度通信状態の特定に係る工程がなされれば、次回以降の当該工程を簡略化することが可能となる。この際、特定手段は、通信状態が前回と明らかに異なる或いは異なると判断され得る場合に限って、新たに通信状態の特定に係る工程を実行してもよい。或いは、より簡略的な一例として、指定された時間が経過した場合等において、この種の特定に係る工程を行なってもよい。 According to this aspect, since the specified communication state is stored in the appropriate storage means in the form of the appropriate data, once the process related to specifying the communication state is performed, the process after the next time is simplified. Is possible. At this time, the specifying unit may newly execute a process related to specifying the communication state only when it can be determined that the communication state is clearly different or different from the previous time. Alternatively, as a simpler example, this type of specifying process may be performed when a designated time has elapsed.
 本発明のストリーミング再生装置に係る実施形態の他の態様では、前記プロトコル生成手段は、前記各々における、前記要求プロトコルの送信時点から前記細分化データの転送が終了する時点に至る転送時間が均等になるように、前記要求プロトコルを生成する。 In another aspect of the embodiment of the streaming playback apparatus of the present invention, the protocol generation means is configured to equalize the transfer time from the transmission time of the request protocol to the time when the transfer of the fragmented data ends in each of the above. The request protocol is generated as follows.
 この態様によれば、要求プロトコル送信時点から細分化データの転送終了時点までのデータ転送期間の長さを意味する転送時間が、各データ提供ノード間で均等となるように、要求プロトコルが生成される。このため、再生開始データの取得に要する時間が理想的には最も短縮化され得る。 According to this aspect, the request protocol is generated so that the transfer time, which means the length of the data transfer period from the request protocol transmission time to the time when the fragmented data transfer is completed, is equal among the data providing nodes. The For this reason, the time required to acquire the reproduction start data can be ideally shortened most.
 尚、「均等となるように」とは、上述したようにあくまで制御目標を意味しており、実際のデータの転送終了時刻が、各データ提供ノードにおいて厳密に一致している必要は必ずしもない。更に言えば、本態様は、各種の態様を伴って特定される通信状態と、再生開始データ量とが既知あれば、当該転送期間を均等とし得る細分化データのデータ量或いは割り当て量を数学的に導き得ることを意味するものである。 Note that “so as to be equal” means the control target as described above, and the actual data transfer end time does not necessarily have to be exactly the same in each data providing node. Furthermore, in this aspect, if the communication state specified with various aspects and the reproduction start data amount are known, the data amount or allocation amount of the subdivided data that can equalize the transfer period is mathematically determined. It means that it can lead to.
 本発明のストリーミング再生装置に係る実施形態の他の態様では、前記プロトコル生成手段は、前記要求プロトコルを生成するにあたって、前記ネットワークを介して前記各々から前記細分化データが転送される過程においてフラグメンテーションが生じないように前記細分化データのデータサイズを設定する。 In another aspect of the embodiment of the streaming playback apparatus of the present invention, the protocol generation means generates fragmentation in the process in which the fragmented data is transferred from each of them via the network when generating the request protocol. The data size of the subdivided data is set so as not to occur.
 この態様によれば、要求プロトコルにおいて、細分化データが転送される過程における細分化データのフラグメンテーション(即ち、分割)が回避されるように、細分化データのデータサイズが設定される。従って、制御性を確保しつつ効率的なデータ転送が実現され、再生開始データの取得に要する時間を好適に短縮することができる。 According to this aspect, in the request protocol, the data size of the fragmented data is set so that fragmentation (that is, division) of the fragmented data in the process of transferring the fragmented data is avoided. Therefore, efficient data transfer is realized while ensuring controllability, and the time required to acquire the reproduction start data can be suitably shortened.
 尚、細分化データのデータサイズが小さ過ぎる場合、データ転送工程における処理負荷が無駄に増えることとなり、ネットワークにおけるデータの伝送効率が低下する。従って、細分化データのデータサイズは、フラグメンテーションを回避しつつ、伝送効率の顕著な低下を招かない範囲で設定されるのが望ましい。 If the data size of the fragmented data is too small, the processing load in the data transfer process increases unnecessarily, and the data transmission efficiency in the network decreases. Therefore, it is desirable that the data size of the fragmented data is set within a range that does not cause a significant decrease in transmission efficiency while avoiding fragmentation.
 例えば、このようなデータサイズとは、各データ提供ノードのMTU(Maximum Transfer Unit)のうち最小のMTUであってもよい。また、敢えてこのような共通化を図らずに、例えばノード毎のMTUとしてノード毎に異なるデータサイズとしてもよい。 For example, such a data size may be the smallest MTU among the MTU (Maximum Transfer Unit) of each data providing node. In addition, for example, the data size may be different for each node as the MTU for each node without intentionally making such a common.
 本発明のストリーミング再生装置に係る実施形態の他の態様では、前記プロトコル生成手段は、前記コンテンツデータのうち前記再生開始データの取得後に前記ストリーミング再生を継続するために必要となる継続用データの細分化及び該細分化がなされた継続用データの再生順序に沿った転送を要求するための要求プロトコルを更に生成し、前記送信手段は、前記各々に対し、前記ネットワークを介して、前記生成された前記継続用データに関する要求プロトコルを送信し、前記取得手段は、前記ネットワークを介して、前記送信された継続用データに関する要求プロトコルに応じて前記各々から転送される、細分化された前記継続用データを取得し、前記再生手段は、前記取得された細分化された継続用データに従って前記コンテンツを順次再生する。 In another aspect of the embodiment of the streaming playback apparatus according to the present invention, the protocol generation unit subdivides the continuation data necessary for continuing the streaming playback after obtaining the playback start data of the content data. And generating a request protocol for requesting transfer in accordance with the reproduction order of the continuation data that has been segmented and subdivided, and the transmission means, for each of the above, generates the generated protocol via the network The request data related to the continuation data is transmitted, and the acquisition unit transfers the fragmented continuation data transferred from the respective according to the request protocol related to the transmitted continuation data via the network. And the reproduction means obtains the content according to the obtained fragmented continuation data. In order to play.
 この態様によれば、要求プロトコル生成手段により、再生開始データの取得完了後にコンテンツのストリーミング再生を継続するために必要となる継続用データ(即ち、コンテンツデータのうち、再生開始データ以降のデータである)について、その細分化及び転送を要求するための要求プロトコルが更に生成される。 According to this aspect, the continuation data necessary for continuing the streaming playback of the content after the completion of the acquisition of the playback start data by the request protocol generation means (that is, the data after the playback start data in the content data). ) Is further generated for requesting its subdivision and transfer.
 この継続用データに関する要求プロトコルは、送信手段により再生開始データに関する要求プロトコルと同様各ノードに送信され、また各ノードが係る継続用データに関する要求プロトコルに応じて転送してくる細分化された継続用データは、取得手段により再生開始データに関する細分化データと同様に取得される。 The request protocol related to the continuation data is transmitted to each node in the same manner as the request protocol related to the reproduction start data by the transmission unit, and each node transfers according to the request protocol related to the continuation data concerned. The data is acquired by the acquisition unit in the same manner as the segmented data regarding the reproduction start data.
 尚、継続用データは、再生開始データに係る細分化データと同様の細分化がなされてもよいし、異なる細分化がなされてもよい。いずれにせよ複数のデータ提供ノードから継続用データの断片データを取得することにより、コンテンツデータ全体の取得時間は短縮化され得る。 Note that the continuation data may be subdivided similarly to the subdivision data related to the reproduction start data, or may be subdivided differently. In any case, by acquiring fragment data of continuation data from a plurality of data providing nodes, the acquisition time of the entire content data can be shortened.
 ここで、この態様によれば、この継続用データに関する要求プロトコルは、継続用データの細分化を要求すると共に、再生順序に沿った転送を要求するものとして生成される。即ち、細分化された継続用データは、再生順序に沿って順次取得されることになる。 Here, according to this aspect, the request protocol for the continuation data is generated as a request for subdivision of the continuation data and a transfer in accordance with the reproduction order. That is, the segmented data for continuation is sequentially acquired along the reproduction order.
 再生順序に沿ったデータの取得は、そのままストリーミング再生の安定性或いは信頼性に繋がる。即ち、この態様によれば、途切れることのないストリーミングを実現し得る点において、実践上極めて有益となるのである。 * Acquisition of data according to the playback order directly leads to stability or reliability of streaming playback. That is, according to this aspect, it is extremely useful in practice in that it is possible to realize uninterrupted streaming.
 また、このように再生順序に沿ったデータ転送が行われる場合、ストリーミング再生用のコンテンツデータの断片(即ち、細分化された継続用データ)は、極めて効率的に蓄積されるため、ストリーミング再生装置側としては、断片データの蓄積量に余裕が出来ることとなり、時間的猶予を利用した他の処理の遂行を図り得る。例えば、この場合、転送エラーや断片データの消失等、各種不測の事態に対しても、例えば再度転送を要求する等の措置を講じることができる。従って、総体的にみてストリーミング再生の信頼性を確保することができるのである。 In addition, when data transfer is performed in accordance with the reproduction order in this way, content data fragments for streaming reproduction (that is, fragmented continuation data) are accumulated extremely efficiently. On the side, there is a margin in the amount of fragment data that can be stored, and it is possible to perform other processes using time delay. For example, in this case, it is possible to take measures such as requesting the transfer again in response to various unexpected situations such as a transfer error or fragment data loss. Therefore, it is possible to ensure the reliability of streaming playback as a whole.
 <ストリーミング再生方法の実施形態> <Embodiment of streaming playback method>
 本発明のストリーミング再生方法に係る実施形態は、複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置における、ストリーミング再生方法であって、前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定工程と、前記特定された通信状態に基づいて、前記コンテンツを視聴するためのコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成工程と、前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信工程と、前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得工程と、前記取得された細分化データに従って前記コンテンツを順次再生する再生工程とを具備する。 An embodiment according to the streaming playback method of the present invention is a streaming playback method in a streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes, wherein A communication state specifying step of specifying a communication state with each of the data providing nodes, and starting streaming playback of content data for viewing the content based on the specified communication state A protocol generation step for generating a request protocol for requesting transfer of a plurality of fragmented data obtained by subdividing the reproduction start data as necessary data; and Sending process to send the request protocol An acquisition step of acquiring the fragmented data transferred from each of them according to the transmitted request protocol via a network; and a reproduction step of sequentially reproducing the content according to the acquired fragmented data To do.
 本発明のストリーミング再生方法に係る実施形態は、本発明のストリーミング再生装置に係る実施形態における各手段の動作に対応する各工程によって、本発明のストリーミング再生装置に係る実施形態と同等の効果を奏し得る。 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 the embodiment according to the streaming playback device of the present invention.
 当該コンピュータプログラムを格納するROM、CD-ROM、DVD-ROM、ハードディスク等の記録媒体或いはUSB(Universal Serial Bus)メモリ等コンピュータシステムに着脱可能な固体型記憶装置から、当該コンピュータプログラムをコンピュータシステムに読み込んで実行させれば、或いは、当該コンピュータプログラムを、例えば、通信手段等を介してコンピュータシステムにダウンロードさせた後に実行させれば、上述した本発明のストリーミング再生装置に係る実施形態を比較的簡単に実現できる。 The computer program is read 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 in 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.
 以上説明したように、本発明のストリーミング再生装置に係る実施形態によれば、通信状態特定手段、プロトコル生成手段、送信手段、取得手段及び再生手段を備えるので、コンテンツのストリーミング再生を迅速に開始させることができる。 As described above, according to the embodiment of the streaming playback apparatus of the present invention, since the communication state specifying unit, the protocol generation unit, the transmission unit, the acquisition unit, and the playback unit are provided, the content streaming playback is started quickly. be able to.
 以上説明したように、本発明のストリーミング再生方法に係る実施形態によれば、通信状態特定工程、プロトコル生成工程、送信工程、取得工程及び再生工程を備えるので、コンテンツのストリーミング再生を迅速に開始させることができる。 As described above, according to the embodiment of the streaming playback method of the present invention, the communication state specifying step, the protocol generation step, the transmission step, the acquisition step, and the playback step are provided, so that the content streaming playback is started quickly. be able to.
 以上説明したように、本発明のコンピュータプログラムに係る実施形態によれば、コンピュータシステムを本発明のストリーミング再生装置に係る実施形態として機能させることができるので、コンテンツのストリーミング再生を迅速に開始させることができる。 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 device of the present invention, so that the content streaming playback can be started quickly. Can do.
 以上説明したように、本発明の記録媒体に係る実施形態によれば、本発明のコンピュータプログラムに係る実施形態を記録するので、コンテンツのストリーミング再生を迅速に開始させることができる。 As described above, according to the embodiment of the recording medium of the present invention, the embodiment of the computer program of the present invention is recorded, so that streaming playback of content can be started quickly.
 本発明のこのような作用及び他の利得は次に説明する実施例から明らかにされる。 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 the structure of a playback device in the streaming system of FIG. 1. 図2の再生装置において実行されるストリーミング再生制御のフローチャートである。3 is a flowchart of streaming playback control executed in the playback device of FIG. 2. 図2のストリーミング再生制御において参照される応答遅延及び伝送速度の概念図である。FIG. 3 is a conceptual diagram of response delay and transmission speed referred to in the streaming playback control of FIG. 2. 図2のストリーミング再生制御の実行過程における最速転送パターンを概念的に説明してなるタイミングチャートである。3 is a timing chart conceptually illustrating a fastest transfer pattern in the execution process of the streaming reproduction control of FIG. 図2のストリーミング再生制御において生成されるデータ要求プロトコルの概念図である。It is a conceptual diagram of the data request protocol produced | generated in the streaming reproduction | regeneration control of FIG. 伝送プロトコルとしてTCPを採用する場合のIPパケットの概念図である。It is a conceptual diagram of an IP packet when TCP is adopted as a transmission protocol. 伝送プロトコルとしてUDPを採用する場合のIPパケットの概念図である。It is a conceptual diagram of an IP packet when UDP is adopted as a transmission protocol. 実施例の効果に係り、応答遅延を考慮しない比較例におけるデータ転送のタイミングチャートである。It is a timing chart of the data transfer in the comparative example which concerns on the effect of an Example and does not consider response delay. 実施例の効果に係り、実施例と比較例との再生開始時間の差の表である。It is a table | surface of the difference of the reproduction start time of an Example and a comparative example regarding the effect of an Example. 第2実施例に係るビットマップの概念図である。It is a conceptual diagram of the bitmap which concerns on 2nd Example. 第2実施例に係り、コード化されたビットマップパターンの概念図である。It is a conceptual diagram of the encoded bitmap pattern according to the second embodiment.
 以下、適宜図面を参照して、本発明の好適な各種実施例について説明する。
<第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は、夫々が広域ネットワーク20(本実施例ではIP(Internet Protocol)網である)に収容された、再生装置10並びにデータ提供ノード30A、30B、30C及び30D(各々、本発明に係る「データ提供ノード」の一例である)を備え、再生装置10で映像或いは音声に係る各種コンテンツのストリーミング再生を実現するためのシステムである。より具体的には、再生装置10は、各データ提供ノードに対してコンテンツデータを分散して要求し、各データ提供ノードから適宜転送されるコンテンツデータの断片的データに基づいて、ストリーミング再生を行う構成となっている。 In FIG. 1, the streaming system 1 includes a playback device 10 and data providing nodes 30A, 30B, 30C, and 30D (each of which is accommodated in a wide area network 20 (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 playback device 10. More specifically, the playback device 10 distributes and requests content data to each data providing node, and performs streaming playback based on fragmented data of the content data appropriately transferred from each data providing node. It has a configuration.
 尚、図1に例示されるストリーミングシステム1の構成は、再生装置10でストリーミング再生を行うための一例に過ぎない。例えば、ストリーミングシステム1では、再生装置10と各データ提供ノードとが、特定のサーバ装置を介することなく個別にP2P通信を行う構成となっているが、再生装置10と各データ提供ノードとは、ネットワーク20に収容された、然るべきサーバ装置を介して通信を行ってもよい。また、図1においては、4つのデータ提供ノードが示されるが、現実的な制約を除けば、基本的にデータ提供ノードの数に制限はない。P2P通信によりストリーミングシステムを構築する場合、ネットワーク20に収容された不特定多数のノード(例えば、個人所有のパーソナルコンピュータ等)が適宜データ提供ノードとなり得る同時に、再生装置10も、他のノードに対してデータ提供ノードの一つとなり得る。 Note that the configuration of the streaming system 1 illustrated in FIG. 1 is merely an example for performing streaming playback on the playback device 10. For example, in the streaming system 1, the playback device 10 and each data providing node are configured to perform P2P communication individually without going through a specific server device, but the playback device 10 and each data providing node are Communication may be performed via an appropriate server device accommodated in the network 20. In FIG. 1, four data providing nodes are shown, but there is basically no limit on the number of data providing nodes except for a practical limitation. 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 20 can appropriately be data providing nodes. Can be one of the data providing nodes.
 次に、図2を参照し、再生装置10の構成について、その動作を交えて説明する。ここに、図2は、再生装置10の構成を概念的に表してなるブロック図である。尚、同図において、図1と重複する箇所には、同一の符合を付してその説明を適宜省略することとする。 Next, the configuration of the playback device 10 will be described with reference to FIG. FIG. 2 is a block diagram conceptually showing the configuration of the playback apparatus 10. 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において、再生装置10は、制御部100、記憶装置200、送信部300、受信部400及びバッファ500を備えた、本発明に係る「ストリーミング再生装置」の一例である。 2, the playback device 10 is an example of a “streaming playback device” according to the present invention, which includes a control unit 100, a storage device 200, a transmission unit 300, a reception unit 400, and a buffer 500.
 制御部100は、CPU又はMPU等の演算処理装置と、ROM(Read Only Memory)及びRAM(Random Access Memory)等の記憶装置を備えた電子制御装置であり、ROMに格納されたコンピュータプログラムに従って、後述するストリーミング再生制御を実行可能に構成される。当該コンピュータプログラムは、本発明に係る「ストリーミング再生方法」を実現するための、本発明に係る「コンピュータプログラム」の一例である。 The control unit 100 is an electronic control device that 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), according to a computer program stored in the ROM. It is configured to be able to execute streaming playback control 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.
 このコンピュータプログラムは、HD、CD-ROM及びDVD-ROM等の各種記録媒体(本発明に係る「記録媒体」の一例である)に記録することが可能であり、この種の記録媒体が、例えば各種のコンピュータシステムに内蔵又は付設される然るべき記録再生装置に設置、格納又は挿入された状態において、当該コンピュータシステムを、本発明に係る「ストリーミング再生装置」の一例として機能させることもまた可能である。 This computer program can be recorded on various recording media such as HD, 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. .
 尚、制御部100は、このストリーミング再生制御の実行過程において、本発明に係る「通信状態特定手段」、「プロトコル生成手段」及び「再生手段」の夫々一例として機能する構成となっている。 The control unit 100 is configured to function as an example of each of the “communication state specifying unit”, the “protocol generating unit”, and the “reproducing unit” according to the present invention in the execution process of the streaming reproduction control.
 記憶装置200は、例えばHDDやフラッシュメモリ等の不揮発性記憶装置であり、本発明に係る「記憶手段」の一例である。記憶装置200の記憶領域には、遅延データDLYが記憶されている。尚、遅延データDLYは、データ提供ノード毎に、後述する応答遅延td及び伝送速度x(即ち、本発明に係る「通信状態」の一例である)を記述してなる制御データである。 The storage device 200 is a nonvolatile storage device such as an HDD or a flash memory, and is an example of the “storage means” according to the present invention. Delay data DLY is stored in the storage area of the storage device 200. The delay data DLY is control data describing a response delay td and a transmission speed x (that is, an example of a “communication state” according to the present invention) described later for each data providing node.
 送信部300は、出力端子(符合省略)がネットワーク20に接続された、本発明に係る「送信手段」の一例たる送信インターフェイスであり、ネットワーク20を介し、制御部100から指定される各種のデータを各データ提供ノードへ送信可能に構成されている。尚、制御部100がストリーミング再生制御を実行する過程において生成される、後述するデータ要求プロトコルも、このデータの一つとして送信部300から送信される構成となっている。 The transmission unit 300 is a transmission interface that is an example of a “transmission unit” according to the present invention, in which an output terminal (symbol omitted) is connected to the network 20, and various data specified by the control unit 100 via the network 20. Can be transmitted to each data providing node. Note that a data request protocol, which will be described later, generated in the process in which the control unit 100 executes the streaming playback control, is also transmitted from the transmission unit 300 as one of the data.
 受信部400は、出力端子(符合省略)がネットワーク20に接続された、本発明に係る「取得手段」の一例たる受信インターフェイスであり、ネットワーク20を介し、各データ提供ノードから転送される各種のデータを受信可能に構成されている。尚、各データ提供ノードからネットワーク20を介して転送される後述するデータフラグメント(即ち、本発明に係る「細分化データ」の一例)も、このデータの一つとして受信部400で受信される構成となっている。 The receiving unit 400 is a receiving interface as an example of the “acquisition means” according to the present invention, in which an output terminal (not shown) is connected to the network 20. Various receiving units 400 are transferred from the data providing nodes via the network 20. It is configured to receive data. Note that a data fragment (that is, an example of “subdivided data” according to the present invention), which will be described later, transferred from each data providing node via the network 20 is also received by the receiving unit 400 as one of the data. It has become.
 バッファ500は、各データ提供ノードから転送されるデータフラグメントを、所定のバッファ容量に相当するデータ量だけ一時的に蓄積する揮発性記憶装置である。
<実施例の動作>
 以下、本実施例の動作として、ストリーミング再生制御について説明する。
The buffer 500 is a volatile storage device that temporarily accumulates data fragments transferred from each data providing node by a data amount corresponding to a predetermined buffer capacity.
<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.
 ストリーミング再生制御は、再生装置10においてコンテンツのストリーミング再生を実現するための制御である。コンテンツの再生に必要なコンテンツデータは、再生装置10に蓄積されておらず、ネットワーク20を介して各データ提供ノードから取得される。この際、各データ提供ノードから取得されるデータは、コンテンツデータを所定の基準に従って細分化してなる、本発明に係る「細分化データ」の一例としてのデータフラグメントを一単位として取得される。また、データフラグメントを要求するデータ提供ノードの選択並びに選択された各データ提供ノードにおけるデータフラグメントの割り当て(データ量及びフラグメント位置)は、再生装置10において生成されるデータ要求プロトコルによって規定される。 Streaming playback control is control for realizing streaming playback of content in the playback device 10. Content data necessary for content reproduction is not stored in the reproduction apparatus 10 and is acquired from each data providing node via the network 20. At this time, the data acquired from each data providing node is acquired with a data fragment as an example of “subdivided data” according to the present invention, which is obtained by subdividing the content data according to a predetermined standard. In addition, selection of a data providing node that requests a data fragment and allocation of data fragments (data amount and fragment position) in each selected data providing node are defined by a data request protocol generated in the playback device 10.
 ここで、再生装置10は、コンテンツデータのうち、先頭のデータからN(bit)に相当するデータである再生開始データが取得された時点で、ストリーミング再生を開始することができる。ストリーミング再生制御は、データ要求プロトコルの送信時点からストリーミング再生の開始時点に至る期間の長さとしての再生開始時間Tplyを短縮化することを目的とした制御である。尚、「短縮化」とは、無論、比較対象が存在して初めて規定され得る概念であるが、本実施例に係る短縮化の基準は、旧来の技術思想の範疇に属する後述する比較例に係る再生開始時間であるとする。 Here, the playback device 10 can start streaming playback when playback start data, which is data corresponding to N (bit), is acquired from the top data of the content data. The streaming reproduction control is a control aimed at shortening the reproduction start time Tply as the length of the period from the transmission point of the data request protocol to the start point of streaming reproduction. Note that “shortening” is, of course, a concept that can be defined only when a comparison target exists. However, the shortening standard according to this embodiment is based on a comparative example described later that belongs to the category of the conventional technical idea. It is assumed that this is the playback start time.
 <ストリーミング再生制御の詳細>
 次に、図3を参照し、ストリーミング再生制御の詳細について説明する。ここに、図3は、ストリーミング再生制御のフローチャートである。
<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.
 図3において、制御部100は、記憶装置200に記憶された遅延データDLYを参照し、各データ提供ノードとの間でネットワーク20を介して構築されるデータ伝送経路における応答遅延tdと伝送速度xとを取得する(ステップS101)。尚、応答遅延td及び伝送速度xは、本発明に係る「通信状態」の一例であり、ステップS101の実行に先立って或いは同期して、制御部100が測定する。遅延データDLYは、この測定された応答遅延td及び伝送速度xに基づいて生成され、記憶装置200に格納されたデータである。ステップS101に係る動作及びそれに先立った或いは同期した応答遅延td及び伝送速度xの測定処理は、本発明に係る「通信状態特定手段」の動作の一例である
 ここで、図4を参照し、応答遅延td及び伝送速度xについて説明する。ここに、図4は、応答遅延td及び伝送速度xの概念図である。
In FIG. 3, the control unit 100 refers to the delay data DLY stored in the storage device 200, and the response delay td and the transmission rate x in the data transmission path established via the network 20 with each data providing node. Are acquired (step S101). The response delay td and the transmission rate x are examples of the “communication state” according to the present invention, and are measured by the control unit 100 prior to or in synchronization with the execution of step S101. The delay data DLY is data generated based on the measured response delay td and transmission rate x and stored in the storage device 200. The operation according to step S101 and the response delay td and transmission rate x measurement process preceding or synchronized with it are examples of the operation of the “communication state specifying means” according to the present invention. Here, referring to FIG. The delay td and transmission rate x will be described. FIG. 4 is a conceptual diagram of the response delay td and the transmission rate x.
 図4において、縦軸は時間軸であり、当該時間軸に沿って、動作主体としての再生装置10及びデータ提供ノードが表されている。 In FIG. 4, the vertical axis is the time axis, and along the time axis, the playback device 10 and the data providing node as the operation subject are represented.
 図示動作点P1(尚、時刻と一対一に対応する点である)において、再生装置10側からデータ要求プロトコルが送信されたとする(矢線S1参照)。データ要求プロトコルがデータ提供ノードに到着すると、到着時刻に相当する図示動作点P2から、各データ提供ノードにおいて然るべき内部処理が開始される(矢線S2参照)。 Suppose that the data request protocol is transmitted from the playback device 10 side at the illustrated operation point P1 (which corresponds to the time one-on-one) (see arrow S1). When the data request protocol arrives at the data providing node, appropriate internal processing is started at each data providing node from the illustrated operation point P2 corresponding to the arrival time (see arrow S2).
 内部処理とは、受信されたデータ要求プロトコルの解析、データ要求プロトコルにより指定されたデータフラグメントの検索及びその転送準備(例えば、HDDや各種光ディスク装置等における読み出し処理等)、並びに返答メッセージの作成等に係る各種の処理を指す。内部処理が終了すると、データ提供ノードは、ネットワーク20を介し、転送準備が整った複数のデータフラグメントを順次再生装置10に対して送信する(図示破線枠S3参照)。 Internal processing includes analysis of received data request protocol, retrieval of data fragment specified by data request protocol and preparation for transfer thereof (for example, read processing in HDD, various optical disk devices, etc.), creation of response message, etc. Refers to various processes related to When the internal processing is completed, the data providing node sequentially transmits a plurality of data fragments ready for transfer to the playback device 10 via the network 20 (see the broken line frame S3 in the drawing).
 ここで、再生装置10からデータ要求プロトコルが送信された時刻(動作点P1に相当する時刻)と、データ提供ノードにおいてこのデータ要求プロトコルが受信された時刻(動作点P2に相当する時刻)とは、ネットワーク20の伝送遅延に起因する時間軸上のずれがある。この時間軸上のずれに相当する遅延時間を、要求時間td1とする。 Here, the time at which the data request protocol is transmitted from the playback device 10 (time corresponding to the operating point P1) and the time at which the data request protocol is received at the data providing node (time corresponding to the operating point P2) There is a shift on the time axis due to the transmission delay of the network 20. A delay time corresponding to the deviation on the time axis is set as a required time td1.
 また、各データ提供ノードにおける上記内部処理の実行にも然るべき時間が必要となる。この時間を処理時間td2とする。 Also, it takes time to execute the internal processing in each data providing node. This time is set as a processing time td2.
 更に、内部処理が終了して、データフラグメントを転送するにあたって、最初のデータフラグメントの送信開始時点と、再生装置10側における当該データの取得時点との間にも、先の要求時間td1と同様に、ネットワーク20の伝送遅延に起因する時間軸上のずれがある。この時間軸上のずれに相当する遅延時間を応答時間td3とする。応答遅延tdは、これら要求時間td1、処理時間td2及び応答時間td3の総和(即ち、td=td1+td2+td3)である。要求時間td1と応答時間td3との和は、ネットワーク20のRTTに相当する。 Further, when the data fragment is transferred after the internal processing is completed, the time between the start of transmission of the first data fragment and the acquisition time of the data on the playback device 10 side is also the same as the previous request time td1. There is a shift on the time axis due to the transmission delay of the network 20. A delay time corresponding to the deviation on the time axis is defined as a response time td3. The response delay td is the sum of these request time td1, processing time td2, and response time td3 (ie, td = td1 + td2 + td3). The sum of the request time td1 and the response time td3 corresponds to the RTT of the network 20.
 一方、処理時間td2は、データ提供ノード側のハードウェア性能や負荷状態に顕著に影響される。そこで、制御部100は、RTTの測定と同期して、各データ提供ノードの処理時間td2を別途測定する。処理時間td2を測定するにあたっての具体的な手法には、特に制限はなく、例えば予め処理時間測定用に定められたデータを要求し、要求に応じて当該データが転送されてくるまでの時間と、上記RTTとの差に基づいて処理時間td2を推定してもよい。或いは、各データ提供ノードに対し、各データ提供ノードが保有する、各データ提供ノードの処理速度やハードウェア構成等に関する情報を要求し、得られた情報に基づいて処理時間td2を推定してもよい。 On the other hand, the processing time td2 is significantly affected by the hardware performance and load state on the data providing node side. Therefore, the control unit 100 separately measures the processing time td2 of each data providing node in synchronization with the measurement of the RTT. A specific method for measuring the processing time td2 is not particularly limited. For example, a request is made for data set in advance for measuring the processing time, and the time until the data is transferred in response to the request. The processing time td2 may be estimated based on the difference from the RTT. Alternatively, it is possible to request each data providing node for information regarding the processing speed and hardware configuration of each data providing node, and to estimate the processing time td2 based on the obtained information. Good.
 尚、処理時間td2を測定(或いは推定)するにあたっては、対象となるデータ提供ノードの全てについて、同一の測定手法を採用するのが望ましい。同一の測定手法が採用される限りにおいて、実際の処理時間と測定或いは推定された処理時間とが異なっていても、その差は一律にキャンセルされ、ストリーミング再生制御の進捗及び効果に実践上影響は生じない。 In measuring (or estimating) the processing time td2, it is desirable to adopt the same measurement method for all the data providing nodes to be processed. As long as the same measurement method is used, even if the actual processing time differs from the measured or estimated processing time, the difference is uniformly canceled, and there is no practical impact on the progress and effect of streaming playback control. Does not occur.
 ところで、実際にデータ提供ノードからデータフラグメントを取得するにあたっては、最初のデータフラグメントの取得完了時点以降、データ提供ノードに割り当てられたデータ量に応じた数量のデータフラグメントを時間軸上で連続的に取得することとなる。図4においては、この様子が、図示動作点P4から動作点P5に至る時間経過(図示矢線S4参照)に示される。データ提供ノードに割り当てられたデータ量に相当するデータの取得に要する時間は、図示伝送時間txとなる。伝送時間txは、データ提供ノード毎に規定される伝送速度xと、データ提供ノードに割り当てられるデータ量とが決まれば一義に規定され、当該データ量をNfとすれば、tx=Nf/xである。また、伝送時間txと応答遅延tdとを加算してなる時間値は、一のデータ提供ノードに対しデータ要求プロトコルを送信した時点から要求したデータ量に相当するデータフラグメントの取得が完了した時点までの時間値となり、本発明に係る「転送時間」の一例となる。 By the way, when actually acquiring data fragments from the data providing node, the number of data fragments corresponding to the amount of data allocated to the data providing node is continuously acquired on the time axis after the completion of the acquisition of the first data fragment. Will be acquired. In FIG. 4, this state is shown in the time passage from the illustrated operating point P4 to the operating point P5 (see the illustrated arrow line S4). The time required to acquire data corresponding to the data amount allocated to the data providing node is the illustrated transmission time tx. The transmission time tx is uniquely defined if the transmission rate x defined for each data providing node and the amount of data allocated to the data providing node are determined. If the amount of data is Nf, tx = Nf / x. is there. The time value obtained by adding the transmission time tx and the response delay td is from the time when the data request protocol is transmitted to one data providing node until the time when acquisition of the data fragment corresponding to the requested data amount is completed. And is an example of the “transfer time” according to the present invention.
 伝送速度xは、再生装置10と各データ提供ノードとの間で許容されるネットワーク20の伝送帯域幅や、データ提供ノードのハードウェア構成等により一義的に規定されるデータ提供ノードとの間の伝送経路に固有の値である。従って、制御部100が、ネットワーク20の状態を管理する上で、データ提供ノード毎に確定させることができる。 The transmission rate x is between the data providing node uniquely defined by the transmission bandwidth of the network 20 allowed between the playback apparatus 10 and each data providing node, the hardware configuration of the data providing node, and the like. This value is unique to the transmission path. Therefore, when the control unit 100 manages the state of the network 20, it can be determined for each data providing node.
 制御部100は、ストリーミング再生制御の実行期間においては、一定又は不定の周期で繰り返し応答遅延tdと伝送速度txとを測定し、遅延データDLYを適宜更新している。従って、遅延データDLYを参照するにしても、ステップS101においてリアルタイムに応答遅延td及び伝送速度txを測定するにしても、精度の高い値を参照することができる。 The control unit 100 repeatedly measures the response delay td and the transmission rate tx at a constant or indefinite period during the streaming playback control execution period, and updates the delay data DLY as appropriate. Therefore, even if the delay data DLY is referred to or the response delay td and the transmission rate tx are measured in real time in step S101, highly accurate values can be referred to.
 図3に戻り、制御部100は、先述した再生開始データのデータ量たる再生開始データ量N(bit)を取得する(ステップS102)。再生開始データ量Nは、再生装置10のハードウェア上の処理能力によって決まる値であり、制御部100が自身の制御データとして保持する値である。 3, the control unit 100 acquires the reproduction start data amount N (bit), which is the data amount of the reproduction start data described above (step S102). The reproduction start data amount N is a value determined by the processing capability on the hardware of the reproduction apparatus 10, and is a value held by the control unit 100 as its own control data.
 再生開始データ量Nを取得すると、制御部100は、データ提供ノード毎の応答遅延td及び伝送速度x並びに取得された再生開始データ量Nに基づいて、先述した再生開始時間Tplyを計算する(ステップS103)。ここで、再生開始時間Tplyは、データフラグメントの要求先となるデータ提供ノード、各データ提供ノードに対するデータ割り当て量、及びデータフラグメントのデータサイズ等によって変化する。従って、制御部100は、選択肢となるデータ提供ノードについて、複数のパターンを想定し、想定される複数のパターンについて、再生開始時間Tplyを計算して比較すると共に、比較結果に基づいて、一のパターンを決定する(ステップS104)。 When the reproduction start data amount N is acquired, the control unit 100 calculates the above-described reproduction start time Tply based on the response delay td and transmission rate x for each data providing node and the acquired reproduction start data amount N (step S1). S103). Here, the reproduction start time Tply varies depending on a data providing node that is a data fragment request destination, a data allocation amount for each data providing node, a data size of the data fragment, and the like. Therefore, the control unit 100 assumes a plurality of patterns for the data providing node as an option, calculates and compares the reproduction start time Tply for the plurality of assumed patterns, and based on the comparison result, A pattern is determined (step S104).
 尚、実践的には、ネットワーク20に収容された、データ提供ノードとなり得る不特定多数のノードの全てについてこのような計算を行うことは、それ自体が時間遅延を招き、ストリーミング再生の迅速な開始を妨げる。従って、ステップS103及びステップS104は、必ずしも常時実行されずともよい。本実施例では、理論的に見て再生開始時間Tplyが最短となり得る一のパターン(以下、適宜「最速転送パターン」と称する)が選択されたものとして説明を続ける。 In practice, such a calculation for all of an unspecified number of nodes that can be data providing nodes accommodated in the network 20 causes a time delay in itself, and quick start of streaming playback Disturb. Therefore, step S103 and step S104 may not always be executed. In the present embodiment, the description will be continued on the assumption that one pattern (hereinafter, referred to as “the fastest transfer pattern” as appropriate) in which the reproduction start time Tply can be the shortest in theory is selected.
 最速転送パターンに準じたストリーミング再生を説明するにあたり、先ず図5を参照し、最速転送パターンについて説明する。ここに、図5は、最速転送パターンを概念的に説明してなるタイミングチャートである。尚、同図において、図1と重複する箇所には、同一の符号を付してその説明を適宜省略することとする。 In describing streaming playback according to the fastest transfer pattern, the fastest transfer pattern will be described first with reference to FIG. FIG. 5 is a timing chart conceptually illustrating the fastest transfer pattern. In the figure, parts that are the same as those in FIG.
 図5において、縦軸方向には、上段から順にデータ提供ノード30D、30C、30B及び30Aが表され、縦軸には先述した伝送速度xが、横軸には共通して時刻が夫々表されている。 In FIG. 5, in the vertical axis direction, data providing nodes 30D, 30C, 30B and 30A are represented in order from the top, the vertical axis represents the transmission rate x described above, and the horizontal axis represents time in common. ing.
 また、図5において、データ要求プロトコルの送信時刻を原点として共通に採った場合において、データ提供ノード30D、30C、30B及び30Aに夫々対応する上記応答遅延td_d、td_c、td_b及びtd_aの間に、td_b<td_d<td_a<td_cなる関係が成立している。更に、データ提供ノード30D、30C、30B及び30Aに夫々対応する伝送速度x_d、x_c、x_b、x_aの間に、x_a>x_c>x_b>x_dなる関係が成立している。 Further, in FIG. 5, when the transmission time of the data request protocol is used as the origin, the response delays td_d, td_c, td_b, and td_a corresponding to the data providing nodes 30D, 30C, 30B, and 30A, respectively, The relationship td_b <td_d <td_a <td_c is established. Furthermore, the relationship x_a> x_c> x_b> x_d is established between the transmission rates x_d, x_c, x_b, and x_a corresponding to the data providing nodes 30D, 30C, 30B, and 30A, respectively.
 ここで、数学的にこれらを解析すると、特別な場合を除いて、各データ提供ノードにおける上記転送時間を均一化し得るデータフラグメントの割り当て量を導出することができる。図5には、このような割り当て量を採用した結果、全てのデータ提供ノードにおいて、データフラグメントの転送が時刻T5に完了した様子が示される。 Here, when these are analyzed mathematically, it is possible to derive an allocation amount of data fragments that can equalize the transfer time in each data providing node except in special cases. FIG. 5 shows a state in which transfer of data fragments is completed at time T5 in all data providing nodes as a result of adopting such an allocation amount.
 尚、図示「A」、「B」、「C」及び「D」は、夫々各データ提供ノードにおけるデータ割り当て量を表しており、その総和(即ち、A+B+C+D)は、再生開始データ量Nである。このような割り当て量を採用すると、再生開始時間Tplyは、各転送時間と等しくなり、最小となる。即ち、最速でコンテンツのストリーミング再生を開始することが可能となる。 Note that “A”, “B”, “C”, and “D” shown in the figure represent the data allocation amount in each data providing node, respectively, and the sum (ie, A + B + C + D) is the reproduction start data amount N. . When such an allocation amount is employed, the reproduction start time Tply becomes equal to each transfer time and is minimized. That is, it becomes possible to start streaming playback of content at the fastest speed.
 以下に、データ提供ノードが、ノードA、ノードB及びノードCの三つである場合について、このような数学的解析について説明する。尚、初期条件として、再生開始データ量をN(bit)、データフラグメントのサイズはN未満、ノードA、B並びにCについて、伝送速度及び応答遅延を夫々a及びta、b及びtb並びにc及びtcとする。また、ノードA、B及びCに対するデータの割り当て量を夫々Na、Nb及びNcとする。 Hereinafter, such mathematical analysis will be described in the case where there are three data providing nodes, that is, node A, node B, and node C. As initial conditions, the playback start data amount is N (bits), the data fragment size is less than N, and the transmission rates and response delays for nodes A, B, and C are a and ta, b and tb, and c and tc, respectively. And Further, it is assumed that the data allocation amounts for the nodes A, B, and C are Na, Nb, and Nc, respectively.
 先ず、下記(1)式が成立する。 First, the following equation (1) is established.
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000001
 また、ノードAにおける転送時間Ttf_aについて、下記(2)式が成立する。 Further, the following equation (2) is established for the transfer time Ttf_a in the node A.
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000002
 同様に、ノードBにおける転送時間Ttf_b及びノードCにおける転送時間Ttf_cについて、下記(3)式及び(4)式が成立する。 Similarly, the following equations (3) and (4) are established for the transfer time Ttf_b at the node B and the transfer time Ttf_c at the node C.
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000004
 ここで、Na、Nb及びNcは、(1)式と、(2)式=(3)式なる関係式と、(2)式=(4)式なる関係式とからなる連立方程式により、夫々下記(5)式、(6)式及び(7)式のように求められる。 Here, Na, Nb, and Nc are respectively expressed by simultaneous equations consisting of a relational expression (1), a relational expression (2) = (3), and a relational expression (2) = (4). It is calculated | required like the following (5) Formula, (6) Formula, and (7) Formula.
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000007
 尚、上記各関係式が成立しない場合もある。例えば、応答遅延のみで、他のノードにおける転送時間を越える場合、そのノードのデータ割り当て量はゼロに設定される。即ち、このようなノードについては、要求先のノードから除外される。 Note that the above relational expressions may not hold. For example, when only the response delay exceeds the transfer time in another node, the data allocation amount of that node is set to zero. That is, such a node is excluded from the requested nodes.
 また、より一般化してノードA、B、・・・、Xを考え、夫々に対応する伝送速度及び応答遅延を、夫々Sa、Sb、・・・、Sx及びta、tb、・・・、txとすると、夫々に割り当てるデータ量Na、Nb、・・・、Nxは、下記(8)式のように表すことができる。尚、(8)式において、zは、識別子であり、z=a、b、・・・、xである。 Further, considering the nodes A, B,..., X in a more generalized manner, the transmission rates and response delays corresponding to the nodes A, B,..., X, respectively, Sa, Sb,. Then, the data amounts Na, Nb,..., Nx allocated to each can be expressed as the following equation (8). In the equation (8), z is an identifier, and z = a, b,.
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000008
 図3に戻り、制御部100は、決定されたパターンに基づいてデータ要求プロトコルを生成し(ステップS104)、各データ提供ノードに対し、送信部300を介して送信する(ステップS106)。尚、ステップS104に係る動作は、本発明に係る「プロトコル生成手段」の動作の一例であり、制御部100の制御を受けた送信部300の送信動作は、本発明に係る「送信手段」の動作の一例である。 3, the control unit 100 generates a data request protocol based on the determined pattern (step S104), and transmits the data request protocol to each data providing node via the transmission unit 300 (step S106). The operation according to step S104 is an example of the operation of the “protocol generation unit” according to the present invention, and the transmission operation of the transmission unit 300 under the control of the control unit 100 is performed by the “transmission unit” according to the present invention. It is an example of operation | movement.
 データ要求プロトコルは、各データ提供ノードに対しデータフラグメントを要求するプロトコルであり、その構成は多様であるが、本実施例では、少なくとも以下の三つの要素を備えて記述される。即ち、(ア)転送開始位置(データフラグメントの位置或いはバイト位置)、(イ)ビットマップサイズ及び(ウ)ビットマップの三要素である。 The data request protocol is a protocol for requesting a data fragment to each data providing node, and its configuration is various, but in this embodiment, it is described with at least the following three elements. That is, the three elements are (a) transfer start position (data fragment position or byte position), (b) bitmap size, and (c) bitmap.
 ここで、図6を参照し、データ要求プロトコルについて説明する。ここに、図6は、データ要求プロトコルの概念図である。尚、同図において、図5と重複する箇所には同一の符号を付してその説明を適宜省略することとする。 Here, the data request protocol will be described with reference to FIG. FIG. 6 is a conceptual diagram of the data request protocol. In the figure, the same reference numerals are assigned to the same parts as those in FIG. 5, and the description thereof is omitted as appropriate.
 図6において、図6(a)は、データ要求プロトコルに従って各データ提供ノードからデータフラグメントが転送される場合のタイミングチャートを表す図である。また、図6(b)は、再生開始データをデータフラグメントによって表した図である。また、図6(c)は、ビットマップの模式図である。 6, FIG. 6 (a) is a diagram showing a timing chart when a data fragment is transferred from each data providing node according to the data request protocol. FIG. 6B shows the reproduction start data represented by data fragments. FIG. 6C is a schematic diagram of a bitmap.
 図6(a)において、データフラグメントのデータサイズは、全ノードで共通である。尚、データフラグメントのサイズは、既に述べたように再生開始データ量N未満であるが、本実施例では特に、データフラグメントのサイズは、データフラグメントのフラグメンテーション(サイズ過多による分割処理)が生じないように、MTUを基準に設定されている。 In FIG. 6A, the data size of the data fragment is common to all nodes. The size of the data fragment is smaller than the reproduction start data amount N as described above. In particular, in this embodiment, the size of the data fragment does not cause fragmentation of the data fragment (division processing due to excessive size). In addition, the MTU is set as a reference.
 ここで、図7及び図8を参照し、一データフラグメントに対応するIPパケットの構成について説明する。ここに、図7は、伝送プロトコルとしてTCPを採用する場合のIPパケットの概念図であり、図8は、伝送プロトコルとしてUDPを採用する場合のIPパケットの概念である。尚、これら各図において、相互に重複する箇所には同一の符号を付して適宜その説明を省略することとする。 Here, the configuration of an IP packet corresponding to one data fragment will be described with reference to FIG. 7 and FIG. FIG. 7 is a conceptual diagram of an IP packet when TCP is used as a transmission protocol. FIG. 8 is a conceptual diagram of an IP packet when UDP is used as a transmission protocol. In these drawings, the same reference numerals are given to the overlapping portions, and the description thereof will be omitted as appropriate.
 図7において、IPパケット全体のデータサイズが、データ提供ノード毎に規定されるMTUである。IPパケットの一部は、IPヘッダ、TCPヘッダ及びデータフラグメントの断片位置を記述するために使用される。残余のデータ領域が、データフラグメントの領域である。従って、データフラグメンテーションを防止する観点からは、少なくともデータフラグメントのデータサイズは、MTU未満である。また、実践的運用面において、各データ提供ノードから転送されるデータフラグメントのデータサイズを均一化する場合、MTUのサイズが必ずしもノード間で一致しないため、これらの最小のMTUに準じたデータサイズにするのが望ましい。 In FIG. 7, the data size of the entire IP packet is an MTU defined for each data providing node. Part of the IP packet is used to describe the fragment location of the IP header, TCP header and data fragment. The remaining data area is a data fragment area. Therefore, from the viewpoint of preventing data fragmentation, at least the data size of the data fragment is less than the MTU. In practical operation, when the data size of the data fragment transferred from each data providing node is equalized, since the MTU size does not always match between the nodes, the data size conforms to the minimum MTU. It is desirable to do.
 図8においても図7と同様に、IPパケットの全体のデータサイズがMTUとなり、IPヘッダ、UDPヘッダ及びデータフラグメントの断片位置が記述された後の残余のデータ領域にデータフラグメントが格納される。 In FIG. 8, as in FIG. 7, the entire data size of the IP packet is MTU, and the data fragment is stored in the remaining data area after the fragment position of the IP header, UDP header, and data fragment is described.
 図6に戻り、図6(a)に示されるように、データ提供ノード30Aからは、データフラグメントA、A、A、A、A、A及びAの計7個のデータフラグメントが、伝送速度x_aによって規定される転送間隔で転送されてくる。尚、実際は、一のデータフラグメントの転送完了後、間を置かずして次順のデータフラグメントの転送が開始される。また、データフラグメントA、A、A、A、A、A及びAのデータ量の合計が、即ち、データ提供ノード30Aへのデータ割り当て量Naとなる。 Returning to FIG. 6, as shown in FIG. 6A, the data providing node 30 </ b> A receives a total of seven data fragments A 1 , A 2 , A 3 , A 4 , A 5 , A 6 and A 7. Data fragments are transferred at a transfer interval defined by the transmission rate x_a. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments A 1 , A 2 , A 3 , A 4 , A 5 , A 6 and A 7 is the data allocation amount Na to the data providing node 30A.
 同様に、データ提供ノード30Bからは、データフラグメントB、B、B、B及びBの計5個のデータフラグメントが、伝送速度x_bによって規定される転送間隔で転送されてくる。尚、実際は、一のデータフラグメントの転送完了後、間を置かずして次順のデータフラグメントの転送が開始される。また、データフラグメントB、B、B、B及びBのデータ量の合計が、即ち、データ提供ノード30Bへのデータ割り当て量Nbとなる。 Similarly, a total of five data fragments of data fragments B 1 , B 2 , B 3 , B 4 and B 5 are transferred from the data providing node 30B at a transfer interval defined by the transmission rate x_b. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments B 1 , B 2 , B 3 , B 4 and B 5 is the data allocation amount Nb to the data providing node 30B.
 同様に、データ提供ノード30Cからは、データフラグメントC、C、C及びCの計4個のデータフラグメントが、伝送速度x_cによって規定される転送間隔で転送されてくる。尚、実際は、一のデータフラグメントの転送完了後、間を置かずして次順のデータフラグメントの転送が開始される。また、データフラグメントC、C、C及びCのデータ量の合計が、即ち、データ提供ノード30Cへのデータ割り当て量Ncとなる。 Similarly, a total of four data fragments of data fragments C 1 , C 2 , C 3 and C 4 are transferred from the data providing node 30C at a transfer interval defined by the transmission rate x_c. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments C 1 , C 2 , C 3 and C 4 is the data allocation amount Nc to the data providing node 30C.
 同様に、データ提供ノード30Dからは、データフラグメントD、D及びD3の計3個のデータフラグメントが、伝送速度x_dによって規定される転送間隔で転送されてくる。尚、実際は、一のデータフラグメントの転送完了後、間を置かずして次順のデータフラグメントの転送が開始される。また、データフラグメントD、D及びD3のデータ量の合計が、即ち、データ提供ノード30Dへのデータ割り当て量Ndとなる。 Similarly, a total of three data fragments, data fragments D 1 , D 2 and D 3 , are transferred from the data providing node 30D at a transfer interval defined by the transmission rate x_d. Actually, after the transfer of one data fragment is completed, the transfer of the next data fragment is started without any interval. Further, the sum of the data amounts of the data fragments D 1 , D 2 and D 3 is the data allocation amount Nd to the data providing node 30D.
 図6(a)に示されるタイミングで転送されるデータフラグメントを、受信部400を介した取得順に蓄積すると、図6(b)のように、各ノードから転送されるデータフラグメントがランダムに配列した構成となる。ここで、データ要求プロトコルは、この図6(b)に例示されるデータが、そのまま再生開始データとなるように生成される。即ち、再生開始データの取得が完了した時点で、取得された順にデータフラグメントを再生することによりストリーミング再生が実現される。 When the data fragments transferred at the timing shown in FIG. 6A are accumulated in the order of acquisition via the receiver 400, the data fragments transferred from each node are randomly arranged as shown in FIG. 6B. It becomes composition. Here, the data request protocol is generated so that the data illustrated in FIG. 6B becomes the reproduction start data as it is. That is, when the acquisition of the reproduction start data is completed, streaming reproduction is realized by reproducing the data fragments in the order of acquisition.
 このようなデータフラグメントの断片位置の指定は、図6(c)に例示されるようなビットマップによって規定される。図6(c)において、A~Dは各データ提供ノードを意味しており、左から右に向かって、再生開始データがデータフラグメント毎に分割して規定される。即ち、A~Dなる記号の右隣のデータフラグメントは、再生開始データの先頭データであり、右端のデータフラグメントは、再生開始データの最後のデータを意味する。また、当該ビットマップにおいてハッチング表示される「1」は、該当するノードがそのデータフラグメントの転送を担当すること意味し、「0」は、データフラグメントの転送を行わないことを意味している。 The designation of the fragment position of such a data fragment is defined by a bitmap as illustrated in FIG. In FIG. 6 (c), A to D mean each data providing node, and the reproduction start data is defined for each data fragment divided from left to right. That is, the data fragment adjacent to the right of the symbols A to D is the top data of the reproduction start data, and the rightmost data fragment means the last data of the reproduction start data. In addition, “1” hatched in the bitmap means that the corresponding node is in charge of transferring the data fragment, and “0” means that the data fragment is not transferred.
 ここで、図6(a)及び図6(b)に示されるタイミングでデータフラグメントが転送されてくることが予見される場合、制御部100は、図6(c)に示すようにビットマップを作成し、データ要求プロトコルとして各ノードへ送信する。各ノードでは、当該ビットマップを参照し、コンテンツデータのうち、自身が転送すべき連続的な或いは不連続なデータフラグメントを、その断片位置に基づいて選択し、上述したIPパケットとして順次転送するのである。 Here, when it is predicted that the data fragment is transferred at the timing shown in FIGS. 6A and 6B, the control unit 100 displays the bitmap as shown in FIG. Create and send to each node as data request protocol. Each node refers to the bitmap, selects continuous or discontinuous data fragments to be transferred from the content data based on the fragment positions, and sequentially transfers them as the IP packets described above. is there.
 尚、各データ提供ノードにおいては、再生装置10で取得されるデータフラグメントの順序は一切考慮されず、応答遅延tdと伝送速度xとによって規定されるタイミングで、プロトコルにより指定されたデータフラグメントが順次転送されてくる。従って、制御部100は、データ割り当て量と、応答遅延tdと、伝送速度xとに基づいて、データフラグメントの到着順序を計算し、再生開始データが、先頭側から順次取得されるように、データ要求プロトコルを生成するのである。 In each data providing node, the order of the data fragments acquired by the playback device 10 is not considered at all, and the data fragments specified by the protocol are sequentially transmitted at the timing specified by the response delay td and the transmission speed x. Will be transferred. Therefore, the control unit 100 calculates the arrival order of the data fragments based on the data allocation amount, the response delay td, and the transmission rate x, so that the reproduction start data is sequentially acquired from the head side. A request protocol is generated.
 図3に戻り、データ要求プロトコルを送信すると、制御部100は、各データ提供ノードから転送されてくるデータフラグメントを順次取得する(ステップS107)と共に、データフラグメントを順次取得する過程において、再生開始データの取得が完了したか否かを判別する(ステップS108)。再生開始データの取得が完了していない場合は(ステップS108:NO)、処理がステップS107に戻され、データフラグメントの取得が継続される。 Returning to FIG. 3, when the data request protocol is transmitted, the control unit 100 sequentially acquires the data fragments transferred from each data providing node (step S107), and in the process of sequentially acquiring the data fragments, the reproduction start data It is determined whether or not the acquisition has been completed (step S108). If acquisition of the reproduction start data has not been completed (step S108: NO), the process returns to step S107, and acquisition of the data fragment is continued.
 一方、データフラグメントの取得が完了すると(ステップS108:YES)、制御部100は、ストリーミング再生を開始する(ステップS109)。尚、ステップS109は、本発明に係る「再生手段」の動作の一例である。ストリーミング再生が開始されると、再生開始からの経過時間が参照され、一定時間が経過したか否かが判別される(ステップS110)。一定時間が経過していない場合には(ステップS110:NO)、ステップS110が繰り返され処理は一時的に待機状態とされる。 On the other hand, when the acquisition of the data fragment is completed (step S108: YES), the control unit 100 starts streaming playback (step S109). Step S109 is an example of the operation of the “reproducing means” according to the present invention. When streaming playback is started, an elapsed time from the start of playback is referred to, and it is determined whether or not a certain time has passed (step S110). If the predetermined time has not elapsed (step S110: NO), step S110 is repeated and the process is temporarily put into a standby state.
 一定時間が経過した場合(ステップS110:YES)、制御部100は、コンテンツデータの取得が完了したか否かを判別し(ステップS111)、完了していれば(ステップS111:YES)、ストリーミング再生制御を終了する。但し、取得されたコンテンツデータに関する再生処理は、再生終了まで継続される。 When the predetermined time has elapsed (step S110: YES), the control unit 100 determines whether or not the acquisition of content data has been completed (step S111), and if it has been completed (step S111: YES), streaming playback is performed. End control. However, the reproduction process related to the acquired content data is continued until the reproduction ends.
 ここで、再生開始データの取得は完了したもののコンテンツデータの取得が未だ完了していない場合(ステップS111:NO)、制御部100は、ストリーミング継続処理を実行する(ステップS112)。 Here, when the acquisition of the reproduction start data has been completed but the acquisition of the content data has not yet been completed (step S111: NO), the control unit 100 executes a streaming continuation process (step S112).
 ストリーミング継続処理は、基本的にステップS101以降の処理と同様に進行する。即ち、制御部100は、再生開始データ量Nを適当なデータサイズ(例えば、再生開始データを除く残余のコンテンツデータ(即ち、本発明に係る「継続用データ」の一例)のデータサイズ等)に設定して、データフラグメントが、その再生順序に沿って、最速で再生装置10に転送されるようにデータ要求プロトコルを生成し送信する。 The streaming continuation process proceeds basically in the same manner as the processes after step S101. That is, the control unit 100 sets the reproduction start data amount N to an appropriate data size (for example, the data size of the remaining content data excluding the reproduction start data (that is, an example of “continuation data” according to the present invention)). When set, the data request protocol is generated and transmitted so that the data fragment is transferred to the playback apparatus 10 at the fastest speed in the playback order.
 ここで特に、再生開始データを集める場合には、再生開始データが取得されない限り、ストリーミング再生は開始されないから、データフラグメントは、必ずしもその再生順序に沿って再生装置10に到着する必要はない。一方で、再生開始データの取得完了以降においては、再生エラーを防ぐ目的から、再生順序に沿ったデータフラグメントの取得が要求されるのが望ましい。即ち、本実施例に係るデータ要求プロトコルの生成は、ストリーミング継続処理においても効果的である。 Here, in particular, when collecting the reproduction start data, streaming reproduction is not started unless the reproduction start data is acquired. Therefore, the data fragment does not necessarily have to arrive at the reproduction apparatus 10 in the reproduction order. On the other hand, after the completion of the acquisition of the reproduction start data, it is desirable that acquisition of data fragments in accordance with the reproduction order is requested in order to prevent a reproduction error. That is, the generation of the data request protocol according to the present embodiment is also effective in the streaming continuation process.
 また、このようにデータフラグメントがその再生順序に沿って取得される点に鑑みれば、例えば、ネットワーク20の状態変化により、データフラグメントの転送が予定通りに進まない場合や、パケットエラー等によりデータフラグメントが消失した場合等においても、それに対処するだけの時間的猶予を獲得することができる。即ち、コンテンツのストリーミング再生を安定的に運用する観点からも、ストリーミング継続処理は効果的である。
<実施例の効果>
 ここで、本実施例の効果を説明するために、先に述べた比較例について説明する。始めに、図9を参照し、比較例に係るデータ転送の概念について説明する。ここに、図9は、応答遅延tdを考慮しないデータ転送を行った場合のタイミングチャートである。尚、同図において、図5と重複する箇所には同一の符号を付してその説明を適宜省略することとする。
In view of the fact that the data fragments are acquired in the reproduction order in this way, for example, when the transfer of the data fragments does not proceed as scheduled due to a change in the state of the network 20, the data fragment is caused by a packet error or the like. Even in the case of disappearance, etc., it is possible to acquire a grace period enough to deal with it. That is, the streaming continuation process is also effective from the viewpoint of stably operating streaming playback of content.
<Effect of Example>
Here, in order to explain the effect of the present embodiment, the above-described comparative example will be described. First, the concept of data transfer according to the comparative example will be described with reference to FIG. FIG. 9 is a timing chart when data transfer is performed without taking the response delay td into consideration. In the figure, the same reference numerals are assigned to the same parts as those in FIG. 5, and the description thereof is omitted as appropriate.
 図9において、比較例に係るデータフラグメントの伝送態様は、応答遅延tdを考慮することなく、データの転送終了時刻が等しくなるように各ノードに対するデータの割り当て量が決定される。即ち、各ノード共に、割り当てられるデータの時間軸方向の長さは等しい。 9, in the data fragment transmission mode according to the comparative example, the amount of data allocated to each node is determined so that the data transfer end times are equal without considering the response delay td. That is, the length of the allocated data in the time axis direction is the same for each node.
 ところが、実際には、応答遅延tdが存在するために、各ノードにおける転送開始時刻はばらばらである。そのため、とりわけ応答遅延tdの大きいデータ提供ノード30Cにおいては、時刻T5においてもデータの転送が終了せずに、再生開始時間Tplyが、上記実施例と較べて長くなる。即ち、比較例では、応答遅延tdと伝送時間txとの和である転送時間は、ノード間でばらばらであり、その中の最大値が再生開始時間となる。従って、コンテンツのストリーミング再生を迅速に開始することが難しい。 However, in reality, since there is a response delay td, the transfer start times at the nodes are different. Therefore, especially in the data providing node 30C having a large response delay td, the data transfer does not end even at time T5, and the reproduction start time Tply becomes longer than that in the above embodiment. That is, in the comparative example, the transfer time, which is the sum of the response delay td and the transmission time tx, varies between nodes, and the maximum value among them is the reproduction start time. Therefore, it is difficult to start content streaming playback quickly.
 次に、このような上記実施例に係る効果を明確とするため、図10を参照し、実際の数値を用いた比較を行う。ここに、図10は、実施例と比較例との再生開始時間Tplyの差を表す表である。 Next, in order to clarify the effect according to the above-described embodiment, a comparison using actual numerical values is performed with reference to FIG. FIG. 10 is a table showing the difference in the reproduction start time Tply between the example and the comparative example.
 図10において、夫々条件が相異なる図10(a)、図10(b)及び図10(c)が示される。但し、伝送速度xは共通である。 FIG. 10 shows FIG. 10 (a), FIG. 10 (b), and FIG. 10 (c) with different conditions. However, the transmission rate x is common.
 ここで、説明の煩雑化を防ぐ目的から、逐一条件の説明は行わないが、再生開始時間Tplyは、図10(a)の条件で32ms、図10(b)の条件で28ms、図10(c)の条件で277ms、夫々実施例の方が短い。これは、即ち、応答遅延tdまで考慮してデータの割り当て量を計算している効果である。即ち、実施例では、全ノードについて転送時間が等しくなるため、転送時間=再生開始時間Tplyとなる。これに対して、比較例では、応答遅延tdを考慮しないため、割り当て量と伝送速度とによって規定される伝送時間txが等しくなり、これに応答遅延tdを加えた転送時間は、各ノードにおいてばらばらとなってしまう。その結果、再生開始時間Tplyは、これらの最大値に律束されてしまうのである。 Here, for the purpose of preventing the explanation from becoming complicated, the conditions are not explained one by one. However, the reproduction start time Tply is 32 ms under the condition of FIG. 10A, 28 ms under the condition of FIG. 10B, and FIG. Under the condition of c), 277 ms, each of the examples is shorter. This is an effect of calculating the data allocation amount in consideration of the response delay td. That is, in the embodiment, since the transfer times are the same for all nodes, transfer time = reproduction start time Tply. On the other hand, in the comparative example, since the response delay td is not taken into consideration, the transmission time tx defined by the allocated amount and the transmission rate becomes equal, and the transfer time obtained by adding the response delay td to each node varies. End up. As a result, the reproduction start time Tply is limited to these maximum values.
 このように、本実施例によれば、要求時間td1、処理時間td2及び応答時間td3等により規定される応答遅延tdと、伝送速度xとを考慮してデータ提供ノードの選択及びデータの割り当て量を考慮することによって、再生装置10においてデータ要求プロトコルの送信時点から再生開始データの取得が完了する時点までの時間としての再生開始時間Tplyを好適に短縮することができる。従って、コンテンツのストリーミング再生を迅速に開始することが可能となる。
<第2実施例>
 データ要求プロトコルにおいて規定されるビットマップの構成例は、第1実施例のものに限定されない。ここで、図11を参照し、そのような趣旨に基づいた第2実施例について説明する。ここに、図11は、第2実施例に係るビットマップの概念図である。尚、同図において、図6と重複する箇所には同一の符号を付してその説明を適宜省略することとする。
As described above, according to the present embodiment, the selection of the data providing node and the data allocation amount in consideration of the response delay td defined by the request time td1, the processing time td2, the response time td3, and the like, and the transmission rate x. By considering the above, it is possible to suitably shorten the reproduction start time Tply as the time from the transmission time point of the data request protocol to the time point when the reproduction start data acquisition is completed. Accordingly, it is possible to quickly start streaming playback of content.
<Second embodiment>
The configuration example of the bitmap defined in the data request protocol is not limited to that of the first embodiment. Here, a second embodiment based on such a purpose will be described with reference to FIG. FIG. 11 is a conceptual diagram of a bitmap according to the second embodiment. In the figure, the same reference numerals are given to the same parts as those in FIG. 6, and the description thereof will be omitted as appropriate.
 図11において、図示ハッチング表示から明らかなように、第2実施例に係るビットマップには、図示ユニットUTとして表されるように、規則性が存在する。このようにビットマップに規則性を持たせる場合、データ要求プロトコルの発令回数を少なくすることができ、応答遅延tdを減少させることによって、転送時間を短縮化することが可能である。また、この際、ノード間における伝送速度xの最小公倍数を計算し、上記ユニットUTを形成することにより、データフラグメントの取得終了時刻を各ノードで等しくすることも可能である。 In FIG. 11, as is apparent from the hatched display in the figure, the bitmap according to the second embodiment has regularity as represented as the illustrated unit UT. When the bit map has regularity in this way, the number of times of issuing the data request protocol can be reduced, and the transfer time can be shortened by reducing the response delay td. At this time, the least common multiple of the transmission rate x between the nodes is calculated and the unit UT is formed, so that the data fragment acquisition end time can be made equal at each node.
 また、このようなユニットUTを採用する場合、データ要求プロトコルは、例えば、以下の要素を含むように構成することができる。即ち、(ア)転送開始位置、(イ)要求データサイズ、要求ユニット数又は要求パケット数、(ウ)ユニットサイズ及び(エ)ビットマップパターンである。 Further, when such a unit UT is adopted, the data request protocol can be configured to include the following elements, for example. That is, (a) transfer start position, (b) requested data size, requested unit number or requested packet number, (c) unit size, and (d) bitmap pattern.
 尚、このような場合においては、ビットマップパターンを更にコード化することもできる。ここで、図12を参照し、コード化されたビットマップパターンについて説明する。ここに、図12は、コード化されたビットマップパターンの概念図である。 In such a case, the bitmap pattern can be further coded. Here, the encoded bitmap pattern will be described with reference to FIG. FIG. 12 is a conceptual diagram of a coded bitmap pattern.
 図12に示すようにビットマップパターンがコード化された場合、コード内容は、各ノードについて、下記のようになる。 When the bitmap pattern is coded as shown in FIG. 12, the code contents are as follows for each node.
 ノードA:1番目、3断片、1断片スキップ、2ブロック
 ノードB:4番目、1断片、3断片スキップ、2ブロック
 ノードC:9番目、1断片、x断片スキップ、1ブロック
 また、このようなコード化されたビットマップパターンを採用する場合、データ要求プロトコルは、例えば、以下の要素を含むように構成することができる。即ち、(ア)転送開始位置、(イ)要求データサイズ、要求ユニット数又は要求パケット数、(ウ)ユニットサイズ及び(エ)ビットマップパターンコードである。
Node A: 1st, 3 fragment, 1 fragment skip, 2 blocks Node B: 4th, 1 fragment, 3 fragment skip, 2 blocks Node C: 9th, 1 fragment, x fragment skip, 1 block When employing a coded bitmap pattern, the data request protocol can be configured to include, for example, the following elements: That is, (a) transfer start position, (b) requested data size, requested unit number or requested packet number, (c) unit size, and (d) bitmap pattern code.
 このようにビットマップパターンがコード化された場合、データ要求プロトコル全体のデータ量が少なくなり、データ要求プロトコルの解析に要する上記処理時間td2を短縮することができる。その結果、転送時間を短縮化することが可能である。 When the bitmap pattern is encoded in this way, the data amount of the entire data request protocol is reduced, and the processing time td2 required for analyzing the data request protocol can be shortened. As a result, the transfer time can be shortened.
 本発明は、上述した実施例に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴うストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体もまた、本発明の技術的範囲に含まれるものである。 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 can be applied to an apparatus that performs streaming playback of content.
 1…ストリーミングシステム、10…再生装置、20…ネットワーク、30A、30B、30C、30D…データ提供ノード、100…制御部、200…再生部、300…遅延測定部、400…送信部、500…受信部、600…バッファ、700…記憶装置。 DESCRIPTION OF SYMBOLS 1 ... Streaming system, 10 ... Playback apparatus, 20 ... Network, 30A, 30B, 30C, 30D ... Data provision node, 100 ... Control part, 200 ... Playback part, 300 ... Delay measurement part, 400 ... Transmission part, 500 ... Reception Part, 600 ... buffer, 700 ... storage device.

Claims (9)

  1.  複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置であって、
     前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定手段と、
     前記特定された通信状態に基づいて、前記コンテンツを構成するコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成手段と、
     前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信手段と、
     前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得手段と、
     前記取得された細分化データに従って前記コンテンツを順次再生する再生手段と
     を具備することを特徴とするストリーミング再生装置。
    A streaming playback device capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes,
    A communication state specifying means for specifying a communication state with each of the plurality of data providing nodes via the network;
    Based on the specified communication state, a request is made to transfer a plurality of pieces of fragmented data obtained by subdividing the reproduction start data as data necessary for starting the streaming reproduction among the content data constituting the content Protocol generation means for generating a request protocol for
    Transmitting means for transmitting the generated request protocol to the respective devices via the network;
    Obtaining means for obtaining the fragmented data transferred from each of the requests according to the transmitted request protocol via the network;
    A streaming playback apparatus comprising: playback means for sequentially playing back the content according to the acquired segmented data.
  2.  前記通信状態特定手段は、前記通信状態として、少なくとも通信速度と応答遅延量とを特定する
     ことを特徴とする請求の範囲第1項に記載のストリーミング再生装置。
    The streaming playback device according to claim 1, wherein the communication state specifying unit specifies at least a communication speed and a response delay amount as the communication state.
  3.  前記特定された通信状態を記憶する記憶手段を更に具備する
     ことを特徴とする請求の範囲第1項又は第2項に記載のストリーミング再生装置。
    The streaming playback apparatus according to claim 1, further comprising storage means for storing the specified communication state.
  4.  前記プロトコル生成手段は、前記各々における、前記要求プロトコルの送信時点から前記細分化データの転送が終了する時点に至る転送時間が均等になるように、前記要求プロトコルを生成する
     ことを特徴とする請求の範囲第1項から第3項のいずれか一項に記載のストリーミング再生装置。
    The protocol generation means generates the request protocol so that transfer times from the transmission time point of the request protocol to the time point at which the transfer of the fragmented data is completed are equal in each of the protocol generation means. The streaming playback device according to any one of claims 1 to 3,
  5.  前記プロトコル生成手段は、前記要求プロトコルを生成するにあたって、前記ネットワークを介して前記各々から前記細分化データが転送される過程においてフラグメンテーションが生じないように前記細分化データのデータサイズを設定する
     ことを特徴とする請求の範囲第1項から第4項のいずれか一項に記載のストリーミング再生装置。
    The protocol generation means sets the data size of the fragmented data so that fragmentation does not occur in the process in which the fragmented data is transferred from each of them via the network when generating the request protocol. The streaming playback device according to any one of claims 1 to 4, wherein the streaming playback device is characterized in that:
  6.  前記プロトコル生成手段は、前記コンテンツデータのうち前記再生開始データの取得後に前記ストリーミング再生を継続するために必要となる継続用データの細分化及び該細分化がなされた継続用データの再生順序に沿った転送を要求するための要求プロトコルを更に生成し、
     前記送信手段は、前記各々に対し、前記ネットワークを介して、前記生成された前記継続用データに関する要求プロトコルを送信し、
     前記取得手段は、前記ネットワークを介して、前記送信された継続用データに関する要求プロトコルに応じて前記各々から転送される、細分化された前記継続用データを取得し、
     前記再生手段は、前記取得された細分化された継続用データに従って前記コンテンツを順次再生する
     ことを特徴とする請求の範囲第1項から第5項のいずれか一項に記載のストリーミング再生装置。
    The protocol generating means subdivides the continuation data necessary for continuing the streaming reproduction after obtaining the reproduction start data of the content data and follows the reproduction order of the continuation data subjected to the subdivision. Further generate a request protocol to request
    The transmission means transmits a request protocol for the generated continuation data to the respective units via the network,
    The acquisition means acquires the fragmented continuation data transferred from each according to a request protocol related to the transmitted continuation data via the network,
    The streaming reproduction device according to any one of claims 1 to 5, wherein the reproduction unit sequentially reproduces the content in accordance with the acquired fragmented continuation data.
  7.  複数のデータ提供ノードと共にネットワークに収容される、コンテンツのストリーミング再生が可能なストリーミング再生装置における、ストリーミング再生方法であって、
     前記ネットワークを介した前記複数のデータ提供ノードの各々との間の通信状態を特定する通信状態特定工程と、
     前記特定された通信状態に基づいて、前記コンテンツを構成するコンテンツデータのうち前記ストリーミング再生を開始するために必要となるデータとしての再生開始データを細分化してなる複数の細分化データの転送を要求するための要求プロトコルを生成するプロトコル生成工程と、
     前記各々に対し、前記ネットワークを介して、前記生成された要求プロトコルを送信する送信工程と、
     前記ネットワークを介して、前記送信された要求プロトコルに応じて前記各々から転送される前記細分化データを取得する取得工程と、
     前記取得された細分化データに従って前記コンテンツを順次再生する再生工程と
     を具備することを特徴とするストリーミング再生方法。
    A streaming playback method in a streaming playback apparatus capable of streaming playback of content accommodated in a network together with a plurality of data providing nodes,
    A communication state specifying step for specifying a communication state with each of the plurality of data providing nodes via the network;
    Based on the specified communication state, a request is made to transfer a plurality of pieces of fragmented data obtained by subdividing the reproduction start data as data necessary for starting the streaming reproduction among the content data constituting the content A protocol generation step for generating a request protocol for
    A transmitting step of transmitting the generated request protocol to the respective devices via the network;
    Obtaining the fragmented data transferred from each according to the transmitted request protocol via the network;
    And a playback step of sequentially playing back the content according to the acquired segmented data.
  8.  コンピュータシステムを請求の範囲第1項から第6項のいずれか一項に記載のストリーミング再生装置として機能させることを特徴とするコンピュータプログラム。 A computer program for causing a computer system to function as the streaming playback device according to any one of claims 1 to 6.
  9.  請求の範囲第8項に記載のコンピュータプログラムを記録する記録媒体。 A recording medium for recording the computer program according to claim 8.
PCT/JP2010/068288 2010-10-18 2010-10-18 Streaming playback device, streaming playback method, computer program and recording medium WO2012053047A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/068288 WO2012053047A1 (en) 2010-10-18 2010-10-18 Streaming playback device, streaming playback method, computer program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/068288 WO2012053047A1 (en) 2010-10-18 2010-10-18 Streaming playback device, streaming playback method, computer program and recording medium

Publications (1)

Publication Number Publication Date
WO2012053047A1 true WO2012053047A1 (en) 2012-04-26

Family

ID=45974785

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/068288 WO2012053047A1 (en) 2010-10-18 2010-10-18 Streaming playback device, streaming playback method, computer program and recording medium

Country Status (1)

Country Link
WO (1) WO2012053047A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014162981A1 (en) * 2013-04-05 2014-10-09 ソニー株式会社 Controller, control method, computer program, and video transmission system
WO2015107785A1 (en) * 2014-01-17 2015-07-23 ソニー株式会社 Communication apparatus, communication data generation method, and communication data processing method
JP2017050688A (en) * 2015-09-01 2017-03-09 富士通株式会社 Communication method, communication device, and communication program
JP2017050681A (en) * 2015-09-01 2017-03-09 富士通株式会社 Communication method, communication device, and communication program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09149402A (en) * 1995-11-27 1997-06-06 Sony Corp Video data distribution system and video data receiver
JPH09185570A (en) * 1995-12-27 1997-07-15 Nippon Telegr & Teleph Corp <Ntt> Method and system for acquiring and reproducing multimedia data
JP2004531824A (en) * 2001-03-28 2004-10-14 チャン パーク,ヤン File transmission method in network environment
WO2005057865A1 (en) * 2003-12-11 2005-06-23 Matsushita Electric Industrial Co., Ltd. Packet transmitter apparatus
JP2008283571A (en) * 2007-05-11 2008-11-20 Ntt Docomo Inc Content distribution device, system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09149402A (en) * 1995-11-27 1997-06-06 Sony Corp Video data distribution system and video data receiver
JPH09185570A (en) * 1995-12-27 1997-07-15 Nippon Telegr & Teleph Corp <Ntt> Method and system for acquiring and reproducing multimedia data
JP2004531824A (en) * 2001-03-28 2004-10-14 チャン パーク,ヤン File transmission method in network environment
WO2005057865A1 (en) * 2003-12-11 2005-06-23 Matsushita Electric Industrial Co., Ltd. Packet transmitter apparatus
JP2008283571A (en) * 2007-05-11 2008-11-20 Ntt Docomo Inc Content distribution device, system and method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014162981A1 (en) * 2013-04-05 2014-10-09 ソニー株式会社 Controller, control method, computer program, and video transmission system
JPWO2014162981A1 (en) * 2013-04-05 2017-02-16 ソニー株式会社 Control device, control method, computer program, and video transmission system
US9813741B2 (en) 2013-04-05 2017-11-07 Sony Corporation Controller, control method, computer program, and video transmission system
US10116975B2 (en) 2013-04-05 2018-10-30 Sony Corporation Controller, control method, computer program, and video transmission system
WO2015107785A1 (en) * 2014-01-17 2015-07-23 ソニー株式会社 Communication apparatus, communication data generation method, and communication data processing method
CN105900437A (en) * 2014-01-17 2016-08-24 索尼公司 Communication apparatus, communication data generation method, and communication data processing method
EP3096525A4 (en) * 2014-01-17 2017-08-23 Sony Corporation Communication apparatus, communication data generation method, and communication data processing method
US10298975B2 (en) 2014-01-17 2019-05-21 Saturn Licensing Llc Communication apparatus, communication data generation method, and communication data processing method
JP2017050688A (en) * 2015-09-01 2017-03-09 富士通株式会社 Communication method, communication device, and communication program
JP2017050681A (en) * 2015-09-01 2017-03-09 富士通株式会社 Communication method, communication device, and communication program

Similar Documents

Publication Publication Date Title
JP5780684B2 (en) Content reproduction information estimation apparatus, method, and program
JP5223480B2 (en) Content distribution method and communication terminal device
JP2008048182A (en) Communication processing apparatus, communication control method, and computer program
US8806048B2 (en) Method and apparatus for transmitting and receiving streaming data based on real-time streaming protocol (RTSP) session
KR20040111669A (en) Protocol, information processing system and method, information processing device and method, recording medium, and program
JP7307211B2 (en) Client, Server, Receiving Method and Sending Method
US8873590B2 (en) Apparatus and method for correcting jitter
WO2012053047A1 (en) Streaming playback device, streaming playback method, computer program and recording medium
EP3207686B1 (en) Adaptive bit rates during broadcast transmission in distributed content delivery networks
JP2010140124A (en) Data distribution communication apparatus and data distribution system
JP5938015B2 (en) Chunk download completion determination device, chunk download completion determination method, and program
WO2012046487A1 (en) Content reproduction device, content delivery system, synchronization method for content reproduction device, control program, and recording medium
CN104247377B (en) Communication device, communication means, program
JP2010109976A (en) Internet live broadcast service system and method of p2p system to form p2p tree structure on number of sessions
KR100683893B1 (en) Data distribution device capable of distributing a content
CN110602515B (en) Data processing method based on block chain, server and storage medium
KR100737678B1 (en) Delay analysis method for multimedia streaming services
JP6939890B2 (en) Data communication equipment, communication systems, data communication methods and programs
CN109450815B (en) Peer-to-peer network streaming media system data scheduling method based on utility value
US8924579B2 (en) Data streaming method
JP6555853B2 (en) Transmission device, transmission control method, and program
Ahsan et al. DASHing towards hollywood
JP6194890B2 (en) Multimedia data communication apparatus, method, program, and effective data increase rate calculation apparatus
KR20150138774A (en) Method for providing adaptive streaming
JP6060723B2 (en) COMMUNICATION SYSTEM, TRANSMITTER, AND COMMUNICATION CONTROL METHOD

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10858603

Country of ref document: EP

Kind code of ref document: A1

DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10858603

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP