WO2011055490A1 - 配信システム - Google Patents

配信システム Download PDF

Info

Publication number
WO2011055490A1
WO2011055490A1 PCT/JP2010/006067 JP2010006067W WO2011055490A1 WO 2011055490 A1 WO2011055490 A1 WO 2011055490A1 JP 2010006067 W JP2010006067 W JP 2010006067W WO 2011055490 A1 WO2011055490 A1 WO 2011055490A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
content
reproduction
encoding rate
content data
Prior art date
Application number
PCT/JP2010/006067
Other languages
English (en)
French (fr)
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=43969734&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2011055490(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2011539261A priority Critical patent/JP5477388B2/ja
Priority to EP10828052.0A priority patent/EP2498492B1/en
Priority to US13/508,025 priority patent/US8752101B2/en
Publication of WO2011055490A1 publication Critical patent/WO2011055490A1/ja

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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26283Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for associating distribution time parameters to content, e.g. to generate electronic program guide data
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/6379Control signals issued by the client directed to the server or network components directed to server directed to encoder, e.g. for requesting a lower encoding rate

Definitions

  • the present invention relates to a distribution system for transmitting content data representing content from a transmission device to a reception device.
  • a distribution system includes a transmission device and a plurality of reception devices configured to be able to communicate with each other, and allows a plurality of reception devices to reproduce content in synchronization.
  • a distribution system described in Patent Document 1 matches the time of a clock provided in a plurality of receiving devices with the time of a reference clock.
  • the transmission device transmits a reproduction start time, which is a time at which the reception device starts reproducing the content, to each reception terminal.
  • the transmission device transmits content data representing content (for example, video or audio) to each reception device.
  • Each receiving device stores the received data of the content data in a storage device (buffer) while receiving the content data. Further, each receiving device starts the reproduction of the content based on the stored data at the reproduction start time. As a result, the reproduction position of the content can be matched among the plurality of receiving apparatuses.
  • the distribution system described in Patent Document 2 is a system in which a plurality of receiving apparatuses can reproduce contents synchronously even when the time to start reproducing the contents differs among the plurality of receiving apparatuses. It is.
  • the second receiving device estimates the time required to start the reproduction of the content, and sets the reproduction start time based on the estimated time. decide. Then, the second reception device transmits the determined reproduction start time to the transmission device.
  • the transmission device transmits the content data scheduled to be transmitted to the first reception device after the reproduction start time to the second reception device. Then, at the playback start time, the second receiving device starts playback of the content based on the stored data. As a result, the reproduction position of the content can be matched between the first receiving device and the second receiving device.
  • the receiving device even during a period in which the receiving device is receiving content data, the amount of data (communication speed) that the receiving device receives from the transmitting device per unit time varies depending on the usage status of the communication line and the like. Therefore, when the communication speed decreases excessively, the amount of content data stored in the storage device of the receiving device may not reach a sufficient amount by the reproduction start time. In such a case, the receiving device may not be able to start playing the content at the playback start time.
  • the encoding rate of the content data to be transmitted is changed based on the reproducible time that is the time in which the content can be reproduced based on the content data stored in the storage device of the receiving device. It is possible to construct a distribution system.
  • the reproducible time gradually increases from 0 in the period from the start of reception of the content data to the playback start time. Therefore, when the encoding rate is determined based only on the reproducible time, immediately after the reception apparatus starts receiving the content data, the encoding rate is set to be excessively small, whereas immediately before the reproduction start time, There is a possibility that the encoding rate is set too large.
  • such a problem is not limited to a distribution system in which a plurality of receiving devices reproduce content in synchronization, but also in a distribution system in which one receiving device starts reproducing content at a set reproduction start time. To occur.
  • the object of the present invention is the above-mentioned problem “when the encoding rate is set to be excessively large, and there are cases where the receiving apparatus cannot start playback of the content at the set playback start time. It is to provide a distribution system capable of solving the problem.
  • a distribution system is a system including a transmission device and a reception device configured to be able to communicate with each other.
  • the transmission device includes content transmission means for transmitting content data in which one content is encoded at an arbitrary one of a plurality of different encoding rates to the receiving device,
  • the receiving device stores the received data of the content data in a storage device while receiving the content data transmitted by the transmitting device, and reproduces the content based on the stored data.
  • Content playback means The above distribution system The content is reproduced based on the remaining time from the current time until the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device A coding rate determining means for determining the coding rate based on a reproducible time that is a possible time;
  • the content transmitting means is configured to change the encoding rate of content data to be transmitted to the receiving device to the determined encoding rate,
  • the content playback means is configured to start playback of the content at the set playback start time.
  • the delivery method which is the other form of this invention is the following.
  • a distribution system including a transmission device and a reception device configured to communicate with each other;
  • the transmission device transmits content data in which one content is encoded at an arbitrary one of a plurality of different encoding rates to the receiving device, While receiving the content data transmitted by the transmitting device, the receiving device stores the received data of the content data in a storage device and reproduces the content based on the stored data.
  • the content is reproduced based on the remaining time from the current time until the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device
  • the encoding rate is determined based on the reproducible time that is a possible time, Changing the coding rate of the content data transmitted from the transmitting device to the receiving device to the determined coding rate;
  • the receiving device is a method of starting the reproduction of the content at the set reproduction start time.
  • a transmitting apparatus is an apparatus configured to be able to communicate with a receiving apparatus. Furthermore, this transmission device Content transmitting means for transmitting content data, in which one content is encoded at any one of a plurality of different encoding rates, to the receiving device, The content transmission means is based on the remaining time from the present time to the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device. Thus, the coding rate of the content data to be transmitted to the receiving device is changed to a coding rate determined based on a playable time that is a time during which the content can be played.
  • the program which is the other form of this invention is: To the transmitting device configured to be able to communicate with the receiving device, Realizing content transmitting means for transmitting content data, which is encoded at any one of a plurality of different encoding rates, to the receiving device,
  • the content transmission means is based on the remaining time from the present time to the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device.
  • the coding rate of the content data to be transmitted to the receiving device is changed to a coding rate determined based on a playable time that is a time during which the content can be played.
  • a receiving apparatus is an apparatus configured to be able to communicate with a transmitting apparatus. Furthermore, this receiving device One content is encoded at an arbitrary one of a plurality of different encoding rates, and the received data of the content data is received while receiving the content data transmitted by the transmitting device.
  • Content reproducing means for storing the content in a storage device and reproducing the content based on the stored data; The remaining time from the current time to the playback start time set as the time to start playback of the content, and the playable time that is the time during which the content can be played based on the content data stored in the storage device; And coding rate determining means for determining the coding rate based on The content playback means is configured to receive content data encoded at the determined encoding rate, and starts playback of the content at the set playback start time. Composed.
  • the program which is the other form of this invention is: To the receiving device configured to be able to communicate with the transmitting device, One content is encoded at an arbitrary one of a plurality of different encoding rates, and the received data of the content data is received while receiving the content data transmitted by the transmitting device.
  • Content reproducing means for storing the content in a storage device and reproducing the content based on the stored data; The remaining time from the current time to the playback start time set as the time to start playback of the content, and the playable time that is the time during which the content can be played based on the content data stored in the storage device And an encoding rate determining means for determining the encoding rate based on The content playback means is configured to receive content data encoded at the determined encoding rate, and starts playback of the content at the set playback start time. Composed.
  • the present invention can reliably start the reproduction of content at the reproduction start time set by the receiving device while preventing the encoding rate from being reduced unnecessarily. it can.
  • FIG. 1 is a diagram illustrating a schematic configuration of a distribution system according to a first embodiment of the present invention. It is a block diagram showing the outline of the function of the delivery system which concerns on 1st Embodiment of this invention. It is the sequence diagram which showed the action
  • the distribution system 1 includes a server device (transmitting device) 10 and a plurality (three in this example) of terminal devices (receiving devices) 20a, 20b, and 20c. ,including.
  • the server device 10 and the terminal devices 20a to 20c are communicably connected to each other via a communication line (in this example, the Internet) NW.
  • the server device 10 is an information processing device.
  • the server device 10 includes a central processing unit (CPU; Central Processing Unit) and a storage device (memory and hard disk drive (HDD)) (not shown).
  • the server device 10 is configured to realize functions to be described later when the CPU executes a program stored in the storage device.
  • each of the terminal devices 20a to 20c is a personal computer.
  • Each of the terminal devices 20a to 20c may be a mobile phone terminal, a PHS (Personal Handyphone System), a PDA (Personal Data Assistance, Personal Digital Assistant), a car navigation terminal, or a game terminal.
  • PHS Personal Handyphone System
  • PDA Personal Digital Assistant
  • car navigation terminal or a game terminal.
  • Each terminal device 20a to 20c includes a CPU, a storage device, an input device, and an output device.
  • the output device has a display.
  • the output device displays an image made up of characters, graphics, and the like on the display based on the image information output from the CPU.
  • the input device has a keyboard and a mouse.
  • Each of the terminal devices 20a to 20c is configured such that information based on a user operation is input via a keyboard and a mouse.
  • Each of the terminal devices 20a to 20c is configured to realize a function to be described later when the CPU executes a program stored in the storage device.
  • FIG. 2 is a block diagram showing functions of the distribution system 1 configured as described above.
  • the function of the terminal device 20a among the terminal devices 20a to 20c will be described.
  • the terminal device 20b and the terminal device 20c also have the same functions as the terminal device 20a.
  • FIG. 4 and FIG. 10 The functions of the distribution system 1 are shown in FIG. 4 and FIG. 10 in which the CPU of the terminal device 20a executes a program and the like represented by the flowchart shown in FIG. This is realized by executing a program or the like represented by a flowchart.
  • the functions of the terminal device 20a include a request transmission unit 31, a synchronous reproduction control unit (synchronous reproduction control unit) 32, a content reproduction unit (content reproduction unit) 33, and a reproducible time transmission unit 34.
  • the function of the server device 10 includes a request receiving unit 41, a session information storage unit 42, a reproduction start time setting unit (reproduction start time setting unit) 43, a content data storage unit 44, and a content transmission unit (content transmission unit). Means) 45, a reproducible time receiving unit 46, and an encoding rate determining unit (encoding rate determining unit) 47.
  • the request transmission unit 31 of the terminal device 20a accepts a session start instruction input by the user via the input device.
  • the session start instruction is information for instructing to start a session.
  • the session start instruction includes content identification information (content ID) for identifying content, other terminal ID that is terminal identification information (terminal ID) for identifying another terminal device that reproduces the content in synchronization, including.
  • the request transmission unit 31 When receiving the session start instruction, the request transmission unit 31 includes the content ID included in the session start instruction, and the terminal ID and session that are terminal identification information (terminal ID) for identifying the own apparatus (terminal apparatus 20a).
  • a session start request including a terminal ID including another terminal ID included in the start instruction is transmitted to the server device 10.
  • the session start request is information requesting to start a session.
  • the request receiving unit 41 of the server device 10 receives a session start request from the terminal device 20a.
  • the request receiving unit 41 When receiving a session start request, the request receiving unit 41 generates session identification information (session ID) for identifying a session. Further, the request reception unit 41 causes the session information storage unit 42 to store session information including the generated session ID and the content ID and terminal ID included in the session start request.
  • session ID session identification information
  • the request reception unit 41 transmits the generated session ID to each of the terminal devices 20a to 20c identified by the terminal ID included in the session start request.
  • the request transmission unit 31 of the terminal device 20 a receives the session ID from the server device 10. Further, the request transmission unit 31 accepts a session participation instruction input by the user via the input device.
  • the session participation instruction is information for instructing participation in a session.
  • the request transmission unit 31 When receiving a session participation instruction, the request transmission unit 31 receives the received session ID, the own terminal ID that is terminal identification information (terminal ID) for identifying the own device (terminal device 20a), the activation time, A session participation request including the communication speed is transmitted to the server device 10.
  • the session participation request is information for requesting participation in a session.
  • the activation time is the time required for the application program executed by the terminal device 20a to reproduce the content to be activated.
  • the communication speed is the data amount of data transmitted from the server device 10 to the terminal device 20a per unit time.
  • the activation time and the communication speed are values input by the user.
  • the terminal device 20a may be configured to measure the activation time and the communication speed and transmit a session participation request including the measured activation time and the communication speed.
  • the request receiving unit 41 of the server device 10 receives a session participation request from each of the terminal devices 20a to 20c.
  • the request reception unit 41 receives a session participation request
  • the session reception request is added to the session information including the session ID and the terminal ID included in the session participation request among the session information stored in the session information storage unit 42. Add start-up time and communication speed included in.
  • the content data storage unit 44 of the server device 10 stores (accumulates) a plurality of content data in advance.
  • Each content data is data representing one of a plurality of contents (for example, information representing video and / or audio).
  • the content data storage unit 44 stores, as content data representing each content, a plurality of content data obtained by encoding the content at a plurality of different encoding rates.
  • the encoding rate represents the data amount (data size, for example, the number of bytes) of content data for reproducing content at a constant speed (reproduction at 1 ⁇ speed) for a unit time (for example, 1 second).
  • the reproduction start time setting unit 43 of the server device 10 includes a reproduction start time determination unit 43a and a reproduction start time transmission unit 43b.
  • the playback start time determination unit 43a determines the playback start time based on the session participation request received from when the session start request is received until a preset standby time elapses.
  • the reproduction start time is a time when the terminal device that has transmitted the session participation request starts reproduction of the content.
  • the playback start time determination unit 43a includes the session start of the session information stored in the session information storage unit 42 when the standby time has elapsed since the session start request was received. Session information including the session ID generated for the request is acquired.
  • the playback start time determination unit 43a each acquired session information (i.e., each of the terminal devices) relative to calculate the device every reproduction preparation time T p.
  • Device each playback preparation time T p is the time required for the terminal apparatus starts the reproduction of the content.
  • the reproduction start time determination unit 43a extracts content data representing content identified by the content ID included in the acquired session information from the content data stored in the content data storage unit 44. . Then, the reproduction start time determination unit 43a has a coding rate that is equal to or lower than the communication speed included in the acquired session information and has a value closest to the communication speed, among the coding rates of the extracted content data. Specify r.
  • the reproduction start time determination unit 43a includes the identified coding rate r, the communication speed B included in the acquired session information, a preset target reproduction possible time Td , the following equation (1), Based on the above, the reproduction preparation communication time Tc is calculated.
  • T c r ⁇ T d / B (1)
  • the target reproducible time Td is a target value of the reproducible time.
  • the target reproducible time may be set for each terminal device.
  • the target reproducible time may be a value received from the terminal device.
  • the reproducible time is a time during which the terminal device can reproduce the content based on content data stored in a storage device (a buffer unit 33b described later) of the terminal device.
  • the playback preparation communication time Tc is the time required from when the terminal device starts to receive content data until the playable time matches the target playable time Td .
  • the playback start time determination unit 43a is started and time T a to be included in the obtained session information, and reproduction preparation communication time T c calculated above, by adding, as the following equation (2), device to calculate the every reproduction preparation time T p.
  • T p T a + T c (2)
  • the playback start time determination unit 43a transmits the session join request in the same manner as described above.
  • a playback start time T s for the device is determined.
  • the playback start time determination unit 43a adds the determined playback start time to the session information including the session ID and the terminal ID included in the session participation request that is the basis for determining the playback start time. To do.
  • the reproduction start time transmission unit 43b transmits the reproduction start time determined by the reproduction start time determination unit 43a to each terminal device that has transmitted the session participation request. As described above, the reproduction start time setting unit 43 sets the reproduction start time based on the target reproducible time, the activation time, and the communication speed.
  • the synchronized playback control unit 32 of the terminal device 20a includes a playback start time receiving unit 32a.
  • the reproduction start time receiving unit 32 a receives the reproduction start time transmitted from the server device 10.
  • the synchronized playback control unit 32 stores the playback start time received by the playback start time receiving unit 32a in the storage device.
  • the synchronized playback control unit 32 determines whether or not the current time has reached the stored playback start time (the current time has become the playback start time) every time a preset control cycle elapses.
  • the synchronized playback control unit 32 outputs a playback start instruction to the content playback unit 33 when the current time reaches the stored playback start time.
  • the reproduction start instruction is information for instructing to start reproduction of content. In this way, the synchronized playback control unit 32 matches the playback positions of the content played by each of the plurality of terminal devices 20a to 20c among the plurality of terminal devices 20a to 20c.
  • the content transmission unit 45 of the server device 10 transmits the content data stored in the content data storage unit 44 to the terminal devices 20a to 20c. That is, the content transmission unit 45 transmits content data obtained by encoding one content at an arbitrary one of a plurality of different encoding rates to the terminal devices 20a to 20c.
  • the content transmission unit 45 transmits the content data to the terminal device that has transmitted the session participation request that is the basis for determining the reproduction start time.
  • the content data stored in the storage unit 44 is transmitted.
  • the content transmission unit 45 is content data identified by the content ID included in the session information including the session ID included in the session participation request, and is reproduced for the terminal device that has transmitted the session participation request.
  • the content data encoded at the encoding rate specified by the start time determination unit 43a is transmitted.
  • the content transmission unit 45 transmits content data based on the session participation request received from when the session start request is received until the standby time elapses, the content transmission unit 45 starts transmission of the content data from the head position. To do.
  • the content transmission unit 45 determines whether the determination condition is satisfied. judge.
  • the determination condition is that the reproduction start time (second reproduction start time) determined by the reproduction start time setting unit 43 based on the session participation request includes the same session ID as the session participation request. This is a condition that the time is later than the playback start time (first playback start time) determined by the playback start time setting unit 43 based on the session participation request.
  • the content transmission unit 45 starts transmitting content data from the top position.
  • the content transmission unit 45 determines the difference between the first reproduction start time and the second reproduction start time from the head position. Only the later position is determined as the transmission start position.
  • the transmission start position is a position in the content data, and is a position where transmission of the content data is started. Then, the content transmission unit 45 starts transmitting content data from the determined transmission start position.
  • the content transmission unit 45 has a playback start time (second playback time) set for the second terminal device rather than a playback start time (first playback start time) set for the first terminal device. Is the later time, the playback position of the content being played back by the first terminal device at the second playback start time (that is, the transmission start position) is estimated. Then, the content transmission unit 45 transmits a portion of the content data after the estimated reproduction position to the second terminal device.
  • the content reproduction unit 33 of the terminal device 20a includes a content reception unit 33a, a buffer unit 33b, and a content reproduction execution unit 33c.
  • the content receiving unit 33a receives content data transmitted by the server device 10.
  • the buffer unit 33b stores the data received by the content receiving unit 33a.
  • the content reproduction execution unit 33c reproduces the content based on the data stored in the buffer unit 33b.
  • the content reproduction unit 33 stores the received data of the content data in the storage device while receiving the content data transmitted by the server device 10 and also stores the content based on the stored data. Play (play by streaming method).
  • the content playback execution unit 33c starts playback of the content when receiving the playback start instruction output from the synchronous playback control unit 32 (that is, at the set playback start time).
  • the reproducible time transmission unit 34 of the terminal device 20a sets a reproducible time, which is a time during which the content reproduction executing unit 33c can reproduce the content, based on the content data stored in the buffer unit 33b. Acquired every time (change period) elapses. When the reproducible time is acquired, the reproducible time transmission unit 34 transmits reproducible time information including the acquired reproducible time, the own terminal ID (terminal ID), and the session ID to the server device 10. To do.
  • the reproducible time receiving unit 46 of the server device 10 receives reproducible time information from each of the terminal devices 20a to 20c.
  • the reproducible time receiving unit 46 receives the reproducible time information
  • the encoding rate determining unit 47 of the server device 10 starts reproduction included in the session information including the terminal ID and the session ID included in the reproducible time information. Get the time.
  • the encoding rate determination unit 47 calculates the reproducible time information based on the remaining time from the current time to the acquired (that is, set) reproduction start time and the reproducible time included in the reproducible time information.
  • the encoding rate is determined for the terminal device that has transmitted.
  • the encoding rate determination unit 47 determines a value that becomes smaller as the reproducible time becomes shorter than the target reproducible time and becomes smaller as the remaining time becomes shorter as the encoding rate.
  • the encoding rate determination unit 47 calculates (acquires) the communication speed B n in the period from the present time to the previous (previous) time point by the change period based on the following equation (4).
  • n is an integer and represents the number of times that the reproducible time information is received from the terminal device.
  • B n (T n ⁇ T n ⁇ 1 ) ⁇ r n / (t n ⁇ t n ⁇ 1 ) (4)
  • t n is the time when the reproducible time information is received this time (ie, the current time)
  • t n-1 is the time when the reproducible time information was received last time (ie, the time point just before the change period) Time).
  • T n is a reproducible time received this time (that is, the current time)
  • T n ⁇ 1 is a reproducible time that was received last time (that is, a time point before the change period).
  • R n is an encoding rate of content data transmitted from time t n ⁇ 1 to time t n .
  • the encoding rate determining unit 47 multiplies the acquired communication speed B n by the remaining time t s -t n to obtain a value T d ⁇ obtained by subtracting the reproducible time T n from the target reproducible time T d.
  • the value divided by T n is determined as the coding rate r n + 1 .
  • the content transmission unit 45 transmits the reproducible time information that is the basis for determining the encoding rate r n + 1 to the terminal device that has transmitted it.
  • the content data is changed to content data encoded at the encoding rate r n + 1 . That is, the content transmission unit 45 changes the encoding rate of the content data to be transmitted to the terminal device that has transmitted the reproducible time information to the encoding rate determined based on the reproducible time information.
  • the content transmission unit 45 stores the content data having the encoding rate r n + 1 determined by the encoding rate determination unit 47 in the content data storage unit 44 when the content data storage unit 44 does not store the content data. of the content data, and transmits the content data having the closest code rate to the encoding rate r n + 1 less and and the coding rate r n + 1.
  • the server device 10 stores content data encoded at 2 Mbps, 4 Mbps, 16 Mbps, and 50 Mbps in advance in the storage device for each content. Further, the target reproducible time Td is set to 30 seconds.
  • the terminal device 20a accepts a session start instruction including “C01” as the content ID and “R02” and “R03” as the other terminal IDs.
  • “R01” is a terminal ID for identifying the terminal device 20a
  • “R02” is a terminal ID for identifying the terminal device 20b
  • “R03” identifies the terminal device 20c. This is a terminal ID for
  • the terminal device 20a Upon receiving the session start instruction, the terminal device 20a transmits a session start request including “C01” as the content ID and “R01”, “R02”, and “R03” as the terminal IDs to the server device 10. (Step S101).
  • the server device 10 executes the transmission control program shown by the flowchart in FIG.
  • the server apparatus 10 generates “S01” as a session ID for identifying a session. Furthermore, the server device 10 includes the generated session ID “S01” and each of the content ID “C01” and the terminal IDs (“R01”, “R02”, and “R03”) included in the session start request.
  • the session information is stored in the storage device as shown in FIG.
  • the server device 10 transmits the generated session ID to each of the terminal devices 20a to 20c identified by the terminal ID included in the session start request (step S201 in FIG. 4 and step S102 in FIG. 3). Thereafter, the server device 10 waits for the waiting time (3 seconds in this example) (step S202 in FIG. 4).
  • the terminal device 20a executes the reproduction start control program shown by the flowchart in FIG.
  • the terminal device 20a sends a session participation request including the received session ID “S01”, terminal ID “R01”, activation time “1200” (ms), and communication speed “3” (Mbps) to the server device 10. (Step S301 in FIG. 6 and Step S103 in FIG. 3).
  • the terminal device 20b similarly to the terminal device 20a, the terminal device 20b also has a session ID “S01”, a terminal ID “R02”, an activation time “1000” (ms), a communication speed “50” (Mbps), Is sent to the server device 10 (step S104 in FIG. 3).
  • the server device 10 When the server device 10 receives the session participation request from each of the terminal devices 20a and 20b, the session ID and the terminal included in the session participation request among the session information stored in the storage device as illustrated in FIG. The activation time and communication speed included in the session participation request are added to the session information including the ID.
  • the server device 10 communicates with each of the terminal devices 20a and 20b that have transmitted the session participation request, among the coding rates of the content data stored in the storage device.
  • An encoding rate r that is equal to or lower than the speed and closest to the communication speed is specified.
  • the server device 10 specifies “2 Mbps” as the encoding rate r for the terminal device 20a and specifies “50 Mbps” as the encoding rate r for the terminal device 20b.
  • the server apparatus 10 the terminal device 20a that has transmitted the session participation request, for each 20b, transmission speed B and starting time and T a is included in the session information stored, target reproduction which is set in advance available time and T d, device each time to calculate a reproduction preparation time T p based on (step 203 of FIG. 4).
  • the server device 10 calculates “21.2” as the reproduction preparation time T p for each device for the terminal device 20a based on the above formulas (1) to (3), and reproduces each device for the terminal device 20b. “31” is calculated as the preparation time T p .
  • the server device 10 determines a reproduction start time T s (“13:01:34”) based on the calculated maximum value T pmax (here, “31”) of the reproduction preparation time T p for each device ( Step S204 in FIG. 4). Then, as shown in FIG. 8, the server device 10 stores the session information including the session ID “S01” and the terminal ID “R01”, and the session information including the session ID “S01” and the terminal ID “R02”. The determined playback start time is added to each.
  • the server device 10 transmits the determined reproduction start time T s to each of the terminal devices 20a and 20b that transmitted the session participation request (step S205 in FIG. 4 and step S105 in FIG. 3).
  • the terminal device 20a receives the reproduction start time T s from the server device 10 (step S302 in FIG. 6).
  • the terminal device 20b also operates in the same manner as the terminal device 20a.
  • reproduction start time T s is the time after the reproduction start time determined based on other session participation request including the same session ID and session participation request received It is determined whether or not (step S206 in FIG. 4).
  • the server device 10 has not received another session participation request including the same session ID as the received session participation request. Accordingly, the server device 10 determines “No” and proceeds to step S208 to start transmission of content data to each of the terminal devices 20a and 20b that transmitted the session participation request from the head position of the content data. (Step S208 in FIG. 4 and Step S106 in FIG. 3).
  • the content data transmitted from the server device 10 to the terminal device 20a is content data representing content identified by the content ID “C01” included in the session information including the session ID “S01”. Further, the content data is data encoded at an encoding rate specified based on the communication speed included in the session participation request received from the terminal device 20a.
  • the content data transmitted from the server device 10 to the terminal device 20b is content data representing content identified by the content ID “C01” included in the session information including the session ID “S01”. Furthermore, the content data is data encoded at an encoding rate specified based on the communication speed included in the session participation request received from the terminal device 20b.
  • the server device 10 includes the session ID and terminal ID included in the session participation request, “0” as the initial value of the reproducible time, the reproduction start time, and the current time. History information in which the difference “31” is associated is stored in the storage device.
  • the terminal device 20a starts receiving content data transmitted by the server device 10 (step S303 in FIG. 6).
  • the terminal device 20a determines whether or not the current time has reached the reproduction start time T s (step S304 in FIG. 6). At this point, the time of the moment, does not reach the reproduction start time T s.
  • the terminal device 20a determines “No” and proceeds to step S305 to determine whether or not the transmission cycle (in this example, 5 seconds) has elapsed since the reception of the content data has started (FIG. 6). Step S305). At this time, the transmission cycle has not elapsed since the reception of the content data started.
  • the terminal device 20a determines “No”, returns to step S304, and repeatedly executes the above processing until the transmission cycle elapses after the reception of the content data is started.
  • the terminal device 20a determines “Yes” in step S305, proceeds to step S306, and acquires the reproducible time. Assume that the acquired reproducible time is “7” seconds.
  • the terminal device 20a transmits the reproducible time information including the acquired reproducible time “7”, the terminal ID “R01”, and the session ID “S01” to the server device 10 (step S107 in FIG. 3). ).
  • the terminal device 20b transmits reproducible time information including the reproducible time “2”, the terminal ID “R02”, and the session ID “S01” to the server device 10 (step S108 in FIG. 3). .
  • the server device 10 proceeds to step S209 in FIG. 4 and transmits the content data to the coding rate change control program shown by the flowchart in FIG. 10 in order to perform the coding rate change control for each terminal device. It executes independently for each terminal device 20a, 20b.
  • the server apparatus 10 determines whether the time the current reaches the reproduction start time T s (step S401 in FIG. 10). At this point, the time of the moment, does not reach the reproduction start time T s.
  • the server device 10 determines “No”, proceeds to step S402, and determines whether or not the reproducible time information is received from the terminal device 20a. If the server device 10 has not received the reproducible time information from the terminal device 20a, the server device 10 returns to step S401 and repeats the above processing.
  • the server device 10 has received the reproducible time information from the terminal device 20a. Accordingly, the server device 10 determines “Yes” and proceeds to step S403, and as illustrated in FIG. 11, the session ID “S01”, the terminal ID “R01”, and the reproducible time “ 7 ”and the history information that associates the difference“ 26 ”between the reproduction start time and the current time are stored in the storage device.
  • the server device 10 determines the encoding rate based on the history information stored in the storage device. In this example, the server device 10 calculates “2.8 Mbps” as the communication speed B n based on the above equation (4). Furthermore, the server device 10 calculates (determines) “3.165 Mbps” as the encoding rate r n + 1 based on the above equation (5) (step S403 in FIG. 10).
  • the server apparatus 10 sets “2 Mbps” as an encoding rate that is equal to or less than the encoding rate r n + 1 among the encoding rates of the content data stored in the storage device and is closest to the encoding rate r n + 1. Is identified.
  • the server device 10 changes the encoding rate of the content data transmitted to the terminal device 20a to the specified encoding rate “2 Mbps” (step S404 in FIG. 10). Thereafter, the server device 10 returns to step S401 and repeatedly executes the above-described processing.
  • the server apparatus 10 Upon receiving the reproducible time information from the terminal device 20b, the server apparatus 10 proceeds to step S403 in FIG. 10, and as shown in FIG. 11, the session ID “S01” and the terminal ID “R02” included in the reproducible time information. ”And the reproducible time“ 2 ”and the difference information“ 26 ”between the reproduction start time and the current time are stored in the storage device.
  • the server device 10 determines the encoding rate based on the history information stored in the storage device. In this example, the server device 10 calculates “20 Mbps” as the communication speed B n based on the above equation (4). Furthermore, the server device 10 calculates (determines) “18.57 Mbps” as the encoding rate r n + 1 based on the above equation (5) (step S403 in FIG. 10).
  • the server device 10 sets “16 Mbps” as the encoding rate that is equal to or less than the encoding rate r n + 1 among the encoding rates of the content data stored in the storage device and is closest to the encoding rate r n + 1. Is identified.
  • the server device 10 changes the encoding rate of the content data transmitted to the terminal device 20b to the specified encoding rate “16 Mbps” (step S404 in FIG. 10). Thereafter, the server device 10 returns to step S401 and repeatedly executes the above-described processing.
  • each of the terminal device 20a and the terminal device 20b again becomes “Yes” in step S305 in FIG.
  • the process proceeds to step S306, and the reproducible time information is transmitted to the server device 10.
  • the terminal device 20a transmits the reproducible time information including the reproducible time “18”, the terminal ID “R01”, and the session ID “S01” to the server device 10, and the terminal device 20b.
  • the reproducible time information including the reproducible time “14”, the terminal ID “R02”, and the session ID “S01” is transmitted to the server device 10.
  • the server apparatus 10 determines “Yes” in step S402 in FIG. 10 and proceeds to step S403. As illustrated in FIG. 12, the session ID “S01” and the terminal ID “R01” included in the reproducible time information are displayed. Also, history information in which the reproducible time “18” and the difference “21” between the reproduction start time and the current time are associated with each other is stored in the storage device.
  • the server device 10 determines the encoding rate based on the history information stored in the storage device. In this example, the server apparatus 10 calculates “4.4 Mbps” as the communication speed B n based on the above equation (4). Further, the server device 10 calculates (determines) “7.7 Mbps” as the encoding rate r n + 1 based on the above equation (5) (step S403 in FIG. 10).
  • the server device 10 sets “4 Mbps” as an encoding rate that is equal to or less than the encoding rate r n + 1 among the encoding rates of the content data stored in the storage device and is closest to the encoding rate r n + 1. Is identified.
  • the server device 10 changes the encoding rate of the content data transmitted to the terminal device 20a to the specified encoding rate “4 Mbps” (step S404 in FIG. 10). Thereafter, the server device 10 returns to step S401 and repeatedly executes the above-described processing.
  • the server apparatus 10 determines “Yes” in step S402 in FIG. 10 and proceeds to step S403, and as illustrated in FIG. 12, the session ID “S01” and the terminal ID “R02” included in the reproducible time information. Also, history information in which the reproducible time “14” is associated with the difference “21” between the reproduction start time and the current time is stored in the storage device.
  • the server device 10 determines the encoding rate based on the history information stored in the storage device. In this example, the server device 10 calculates “38.4 Mbps” as the communication speed B n based on the above equation (4). Furthermore, the server device 10 calculates (determines) “50.4 Mbps” as the encoding rate r n + 1 based on the above equation (5) (step S403 in FIG. 10).
  • the server device 10 of the encoding rate of the content data stored in the storage device "50Mbps" as the coding rate r n + 1 less and and the nearest coding rate to the encoding rate r n + 1 Is identified.
  • the server device 10 changes the encoding rate of the content data transmitted to the terminal device 20b to the specified encoding rate “50 Mbps” (step S404 in FIG. 10). Thereafter, the server device 10 returns to step S401 and repeatedly executes the above-described processing.
  • the server device 10 determines the encoding rate for each of the terminal devices 20a and 20b that are transmitting the content data, and the content data that is being transmitted The encoding rate is changed to the determined encoding rate.
  • each of the terminal device 20a and the terminal device 20b determines “Yes” in step S304 in FIG. 6, proceeds to step S307, and is stored in the storage device.
  • the content reproduction (output to the output device) is started based on the content data (steps S110a and S110b in FIG. 3).
  • the reproduction position of the content can be surely matched between the plurality of terminal devices 20a and 20b. That is, the same content can be reproduced in synchronization between the plurality of terminal devices 20a and 20b.
  • the server device 10 determines “Yes” in step S401 in FIG. 10 and ends the execution of the coding rate change control program.
  • the distribution system 1 changes the encoding rate of the content data transmitted from the server device 10 to the terminal devices 20a and 20b based on both the remaining time and the reproducible time.
  • the distribution system 1 can set the coding rate to a relatively large value when the remaining time is considerably long even when the reproducible time is relatively short. As a result, it is possible to prevent the encoding rate from being reduced unnecessarily.
  • the distribution system 1 can set the coding rate to a relatively small value if the remaining time is considerably short. As a result, the reproducible time at the reproduction start time can be sufficiently increased. Accordingly, it is possible to reliably start the content reproduction at the reproduction start time set by the terminal devices 20a and 20b.
  • the distribution system 1 it is possible to reliably start the reproduction of content at the reproduction start time set by the terminal devices 20a and 20b while preventing the encoding rate from being reduced unnecessarily. Can do.
  • the distribution system 1 is configured to determine a value that becomes smaller as the reproducible time becomes shorter than the target reproducible time and becomes smaller as the remaining time becomes shorter as the encoding rate. According to this, the reproducible time at the reproduction start time can be made sufficiently close to the target reproducible time. As a result, it is possible to reliably start the reproduction of the content at the reproduction start time set by the terminal devices 20a and 20b while preventing the encoding rate from being reduced unnecessarily.
  • the distribution system 1 acquires a communication speed that is the amount of content data transmitted per unit time from the server device 10 to the terminal devices 20a and 20b, and multiplies the acquired communication speed by the remaining time.
  • the value obtained by dividing the obtained value by the value obtained by subtracting the reproducible time from the target reproducible time is determined as the encoding rate.
  • the distribution system 1 is configured to set the reproduction start time based on the target reproducible time that is the target value of the reproducible time. Thereby, the reproducible time at the reproduction start time can be reliably brought close to the target reproducible time.
  • the distribution system 1 calculates, for each of the plurality of terminal devices 20a and 20b, a device-by-device playback preparation time that is a time required for the terminal device to start playback of the content.
  • the reproduction start time is set based on the maximum reproduction preparation time for each device.
  • all of the plurality of terminal devices 20a and 20b can reliably bring the reproducible time close to the target reproducible time by the reproduction start time. As a result, it is possible to reliably match the content reproduction position between the plurality of terminal devices 20a and 20b.
  • the distribution system 1 sets the playback start time based on the start time that is required for starting the application program executed by the terminal devices 20a and 20b to play the content and the target playable time. Configured to set. Thereby, the terminal devices 20a and 20b can reliably start the reproduction of the content at the reproduction start time.
  • the distribution system 1 sets the reproduction start time based on the communication speed, which is the data amount of content data transmitted per unit time from the server device 10 to the terminal devices 20a and 20b, and the target reproducible time. Configured to set. Thereby, the reproduction start time can be set appropriately.
  • the terminal device 20c reproduces the content in synchronization with the terminal device 20a and the terminal device 20b.
  • the description will be continued assuming that the user 20c desires.
  • the user of the terminal device 20c inputs a session participation instruction.
  • the terminal device 20c issues a session participation request including the received session ID “S01”, the terminal ID “R03”, the activation time “1500” (ms), and the communication speed “8” (Mbps).
  • the data is transmitted to the server device 10 (step S301 in FIG. 6 and step S501 in FIG. 13).
  • the server device 10 When receiving the session participation request from the terminal device 20c, the server device 10 includes the session ID and the terminal ID included in the session participation request among the session information stored in the storage device as illustrated in FIG. The activation time and communication speed included in the session participation request are added to the session information.
  • the server apparatus 10 is below communication speed among the encoding rates which the content data memorize
  • An encoding rate r is specified.
  • the server device 10 specifies “4 Mbps” as the encoding rate r for the terminal device 20c.
  • the server device 10 determines a reproduction start time T s (“13:05:25”) based on the calculated device-specific reproduction preparation time T p (step S204 in FIG. 4). Then, as illustrated in FIG. 15, the server device 10 adds the determined reproduction start time to the session information including the session ID “S01” and the terminal ID “R03”.
  • the server device 10 transmits the determined reproduction start time T s to the terminal device 20c that has transmitted the session participation request (step S205 in FIG. 4 and step S502 in FIG. 13). Thereby, the terminal device 20c receives the reproduction start time T s from the server device 10 (step S302 in FIG. 6).
  • reproduction start time T s is the time after the reproduction start time determined based on other session participation request including the same session ID and session participation request received It is determined whether or not (step S206 in FIG. 4).
  • the reproduction start time (second reproduction start time) determined based on the session participation request received from the terminal device 20c (second reception device) is the terminal device 20a (first reception device) and the terminal.
  • the time is later than the playback start time (first playback start time) determined based on the session participation request received from the device 20b.
  • the session participation request received from the terminal device 20a and the terminal device 20b includes the same session ID as the session ID included in the session participation request received from the terminal device 20c. That is, the reproduction start time T s where the determined is a time after the reproduction start time determined based on other session participation request including the same session ID and session participation request received.
  • the server device 10 determines “Yes”, proceeds to step S207, and determines a position after the difference between the first reproduction start time and the second reproduction start time as the transmission start position from the head position. . Then, the server apparatus 10 proceeds to step S208, and starts transmitting content data to the terminal apparatus 20c from the determined transmission start position (step S503 in FIG. 13).
  • the content data transmitted from the server device 10 to the terminal device 20c is content data representing content identified by the content ID “C01” included in the session information including the session ID “S01”. Further, the content data is data encoded at an encoding rate specified based on the communication speed included in the session participation request received from the terminal device 20c.
  • the terminal device 20c transmits reproducible time information including the reproducible time to the server device 10 (step S504 in FIG. 13). Then, every time the server device 10 receives the reproducible time information from the terminal device 20c, the server device 10 performs coding rate change control on the terminal device 20c (step S505 in FIG. 13).
  • the terminal device 20c starts playing the content based on the content data stored in the storage device (step S506 in FIG. 13). .
  • the content playback can be started reliably.
  • the distribution system 1 is configured such that the server device 10 determines the coding rate based on the remaining time and the reproducible time, but each of the terminal devices 20a to 20c The coding rate may be determined based on the remaining time and the reproducible time. In this case, each of the terminal devices 20a to 20c is configured to transmit the determined coding rate to the server device 10.
  • the distribution system 1 is configured such that the reproduction positions of the content reproduced by each of the plurality of terminal devices 20a to 20c are matched between the plurality of terminal devices 20a to 20c.
  • the reproduction positions of the content reproduced by each of the plurality of terminal devices 20a to 20c may be different from each other.
  • the distribution system 1 may be configured to exchange content data between terminal devices. Moreover, although the number of the terminal devices which the delivery system 1 which concerns on the said 1st Embodiment contains was three, two may be sufficient and four or more may be sufficient.
  • each function of the distribution system 1 is realized by the CPU executing a program (software), but may be realized by hardware such as a circuit.
  • the distribution system 100 is a system including a transmission device 110 and a reception device 120 configured to be able to communicate with each other.
  • the transmission device 110 includes a content transmission unit (content transmission unit) 111 that transmits content data in which one content is encoded at any one of a plurality of different encoding rates to the reception device 120. Prepare. While receiving the content data transmitted by the transmission device 110, the reception device 120 stores the received data of the content data in the storage device and reproduces the content based on the stored data. A content reproduction unit (content reproduction unit) 121 is provided.
  • the distribution system 100 The content is reproduced based on the remaining time from the present time to the reproduction start time set as the time when the reception device 120 starts reproduction of the content, and the content data stored in the storage device of the reception device 120
  • An encoding rate determining unit (encoding rate determining means) 131 that determines the encoding rate based on a reproducible time that is a possible time is provided.
  • the content transmission unit 111 is configured to change the encoding rate of the content data to be transmitted to the reception device 120 to the determined encoding rate.
  • the content playback unit 121 is configured to start playback of the content at the set playback start time.
  • the distribution system 100 changes the encoding rate of the content data transmitted from the transmission device 110 to the reception device 120 based on both the remaining time and the reproducible time.
  • the distribution system 100 can set the coding rate to a relatively large value when the remaining time is considerably long even when the reproducible time is relatively short. As a result, it is possible to prevent the encoding rate from being reduced unnecessarily.
  • the distribution system 100 can set the coding rate to a relatively small value if the remaining time is considerably short. As a result, the reproducible time at the reproduction start time can be sufficiently increased. Therefore, the content reproduction can be surely started at the reproduction start time set by the receiving device 120.
  • the distribution system 100 it is possible to reliably start the reproduction of the content at the reproduction start time set by the reception device 120 while preventing the encoding rate from being reduced unnecessarily.
  • the encoding rate determination means sets a value that decreases as the reproducible time becomes shorter than the target reproducible time, which is a target value of the reproducible time, and decreases as the remaining time becomes shorter. It is preferable to be configured to determine the conversion rate.
  • the reproducible time at the reproduction start time can be made sufficiently close to the target reproducible time.
  • the encoding rate determining unit acquires a communication speed that is a data amount of content data transmitted from the transmitting apparatus to the receiving apparatus per unit time, and adds the remaining time to the acquired communication speed. It is preferable that a value obtained by dividing the multiplied value by a value obtained by subtracting the reproducible time from the target reproducible time is determined as the encoding rate.
  • the extent to which the playable time increases varies depending on the communication speed. Therefore, by configuring the distribution system as described above, the reproducible time at the reproduction start time can be made closer to the target reproducible time more reliably.
  • the encoding rate determining means is configured to determine the encoding rate every time a preset change period elapses.
  • the delivery system Including a plurality of the receiving devices, It is preferable to provide a synchronized playback control means for matching the playback position of the content played by each of the plurality of receiving devices between the plurality of receiving devices.
  • the delivery system It is preferable to provide a reproduction start time setting means for setting the reproduction start time based on a target reproduction possible time that is a target value of the reproduction possible time.
  • the reproduction possible time at the reproduction start time can be reliably brought close to the target reproduction possible time.
  • the content transmission means is configured so that the plurality of reception devices are more effective than a first reproduction start time that is a reproduction start time set for the first reception device that is one of the plurality of reception devices.
  • the second playback start time which is the playback start time set for the other second receiving device, is a later time
  • the first reception is performed at the second playback start time. It is preferable that the playback position of the content being played back by the device is estimated, and a portion of the content data after the estimated playback position is transmitted to the second receiving device. .
  • the playback start time setting means calculates, for each of the plurality of receiving devices, a playback preparation time for each device, which is a time required for the receiving device to start playing the content, It is preferable that the reproduction start time is set based on the maximum reproduction preparation time for each device.
  • reception speeds are often different among a plurality of receiving apparatuses. Therefore, by configuring the distribution system as described above, all of the plurality of receiving apparatuses can reliably bring the reproducible time close to the target reproducible time by the reproduction start time. As a result, it is possible to reliably match the content reproduction position among the plurality of receiving apparatuses.
  • the reproduction start time setting means is based on the activation time that is a time required for the application program executed by the reception device to reproduce the content and the target reproduction possible time based on the target reproduction possible time. It is preferable to be configured to set the playback start time.
  • the time required for the receiving apparatus to start the reproduction of the content includes the startup time and the time required for the reproducible time to reach the target reproducible time. Therefore, by configuring the distribution system as described above, the receiving device can reliably start playing the content at the playback start time.
  • the reproduction start time setting means starts the reproduction based on a communication speed that is a data amount of content data transmitted per unit time from the transmission device to the reception device and the target reproduction possible time. It is preferred to be configured to set the time.
  • the reproduction start time can be set appropriately.
  • the delivery method which is the other form of this invention is the following.
  • a distribution system including a transmission device and a reception device configured to communicate with each other;
  • the transmission device transmits content data in which one content is encoded at an arbitrary one of a plurality of different encoding rates to the receiving device, While receiving the content data transmitted by the transmitting device, the receiving device stores the received data of the content data in a storage device and reproduces the content based on the stored data.
  • the content is reproduced based on the remaining time from the current time until the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device
  • the encoding rate is determined based on the reproducible time that is a possible time, Changing the coding rate of the content data transmitted from the transmitting device to the receiving device to the determined coding rate;
  • the receiving device is a method of starting the reproduction of the content at the set reproduction start time.
  • the delivery method is The encoding rate is determined so that the reproducible time becomes smaller as the reproducible time becomes shorter than the target reproducible time, which is the target value of the reproducible time, and becomes smaller as the remaining time becomes shorter. Is preferred.
  • the delivery method is A communication speed that is a data amount of content data transmitted per unit time from the transmission apparatus to the reception apparatus is acquired, and a value obtained by multiplying the acquired communication speed by the remaining time is calculated from the target reproducible time. It is preferable that a value obtained by dividing the reproducible time by a value obtained by subtracting the reproducible time is determined as the encoding rate.
  • the delivery method is It is preferable that the coding rate is determined each time a preset change period elapses.
  • the delivery method is The distribution system includes a plurality of the receiving devices, It is preferable that the reproduction positions of the content reproduced by each of the plurality of receiving apparatuses are matched between the plurality of receiving apparatuses.
  • a transmitting apparatus is an apparatus configured to be able to communicate with a receiving apparatus. Furthermore, this transmission device Content transmitting means for transmitting content data, in which one content is encoded at any one of a plurality of different encoding rates, to the receiving device, The content transmission means is based on the remaining time from the present time to the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device. Thus, the coding rate of the content data to be transmitted to the receiving device is changed to a coding rate determined based on a playable time that is a time during which the content can be played.
  • the transmission device It is preferable to include an encoding rate determining unit that determines the encoding rate based on the remaining time and the reproducible time.
  • the encoding rate determination means sets a value that decreases as the reproducible time becomes shorter than the target reproducible time, which is a target value of the reproducible time, and decreases as the remaining time becomes shorter. It is preferable to be configured to determine the conversion rate.
  • the encoding rate determining unit acquires a communication speed that is a data amount of content data transmitted from the transmitting apparatus to the receiving apparatus per unit time, and adds the remaining time to the acquired communication speed. It is preferable that a value obtained by dividing the multiplied value by a value obtained by subtracting the reproducible time from the target reproducible time is determined as the encoding rate.
  • the encoding rate determining means is configured to determine the encoding rate every time a preset change period elapses.
  • the program which is the other form of this invention is: To the transmitting device configured to be able to communicate with the receiving device, Realizing content transmitting means for transmitting content data, which is encoded at any one of a plurality of different encoding rates, to the receiving device,
  • the content transmission means is based on the remaining time from the present time to the reproduction start time set as the time when the reception device starts reproduction of the content, and the content data stored in the storage device of the reception device.
  • the coding rate of the content data to be transmitted to the receiving device is changed to a coding rate determined based on a playable time that is a time during which the content can be played.
  • a receiving apparatus is an apparatus configured to be able to communicate with a transmitting apparatus. Furthermore, this receiving device One content is encoded at an arbitrary one of a plurality of different encoding rates, and the received data of the content data is received while receiving the content data transmitted by the transmitting device.
  • Content reproducing means for storing the content in a storage device and reproducing the content based on the stored data; The remaining time from the current time to the playback start time set as the time to start playback of the content, and the playable time that is the time during which the content can be played based on the content data stored in the storage device; And coding rate determining means for determining the coding rate based on The content playback means is configured to receive content data encoded at the determined encoding rate, and starts playback of the content at the set playback start time. Composed.
  • the encoding rate determination means sets a value that decreases as the reproducible time becomes shorter than the target reproducible time, which is a target value of the reproducible time, and decreases as the remaining time becomes shorter. It is preferable to be configured to determine the conversion rate.
  • the encoding rate determination means acquires a communication speed that is the amount of content data transmitted per unit time from the transmission device, and multiplies the acquired communication speed by the remaining time. It is preferable that a value obtained by dividing the target reproducible time by a value obtained by subtracting the reproducible time is determined as the encoding rate.
  • the encoding rate determining means is configured to determine the encoding rate every time a preset change period elapses.
  • the program which is the other form of this invention is: To the receiving device configured to be able to communicate with the transmitting device, One content is encoded at an arbitrary one of a plurality of different encoding rates, and the received data of the content data is received while receiving the content data transmitted by the transmitting device.
  • Content reproducing means for storing the content in a storage device and reproducing the content based on the stored data; The remaining time from the current time to the playback start time set as the time to start playback of the content, and the playable time that is the time during which the content can be played based on the content data stored in the storage device And an encoding rate determining means for determining the encoding rate based on The content playback means is configured to receive content data encoded at the determined encoding rate, and starts playback of the content at the set playback start time. Composed.
  • the invention of the distribution method, the transmission device, the program, or the reception device having the above-described configuration can achieve the above-described object of the present invention because it has the same operation as the above-described distribution system. .
  • the program is stored in the storage device, but may be stored in a computer-readable recording medium.
  • the recording medium is a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, and a semiconductor memory.
  • the present invention is applicable to a distribution system or the like that transmits content data representing content from a transmission device to a reception device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

 配信システム100は、送信装置110及び受信装置120を含む。送信装置は、ある符号化レートにて符号化されたコンテンツデータを受信装置へ送信する。受信装置は、送信装置により送信されたコンテンツデータを受信しながら、受信されたデータを記憶装置に記憶させるとともに記憶されているデータに基づいてコンテンツを再生する。配信システムは、現時点から再生開始時刻までの残余時間と、記憶されているデータに基づいてコンテンツを再生可能な時間である再生可能時間と、に基づいて符号化レートを決定する。送信装置は、送信するコンテンツデータの符号化レートを、決定された符号化レートに変更する。受信装置は、再生開始時刻にてコンテンツの再生を開始する。

Description

配信システム
 本発明は、コンテンツを表すコンテンツデータを送信装置から受信装置へ送信する配信システムに関する。
 互いに通信可能に構成された送信装置及び複数の受信装置を含み、複数の受信装置がコンテンツを同期して再生することが可能な配信システムが知られている。この種の配信システムの1つとして特許文献1に記載の配信システムは、複数の受信装置が備える時計の時刻を基準となる時計の時刻に一致させる。更に、送信装置は、受信装置がコンテンツの再生を開始する時刻である再生開始時刻を各受信端末へ送信する。
 そして、送信装置は、コンテンツ(例えば、映像又は音声等)を表すコンテンツデータを各受信装置へ送信する。各受信装置は、コンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置(バッファ)に記憶させる。更に、各受信装置は、再生開始時刻になると、記憶されているデータに基づくコンテンツの再生を開始する。この結果、複数の受信装置間で、コンテンツの再生位置を一致させることができる。
 また、特許文献2に記載の配信システムは、コンテンツの再生を開始する時刻が複数の受信装置間で異なる場合であっても、複数の受信装置がコンテンツを同期して再生することが可能なシステムである。この配信システムにおいて、第1の受信装置がコンテンツを再生している場合、第2の受信装置は、コンテンツの再生を開始するまでに要する時間を推定し、推定した時間に基づいて再生開始時刻を決定する。そして、第2の受信装置は、決定した再生開始時刻を送信装置へ送信する。
 これにより、送信装置は、再生開始時刻以降において第1の受信装置へ送信する予定のコンテンツデータを第2の受信装置へ送信する。そして、第2の受信装置は、再生開始時刻になると、記憶されているデータに基づくコンテンツの再生を開始する。この結果、第1の受信装置及び第2の受信装置の間で、コンテンツの再生位置を一致させることができる。
特開2005-191786号公報 特開2007-13705号公報
 ところで、受信装置がコンテンツデータを受信している期間においても、受信装置が送信装置から単位時間あたりに受信するデータ量(通信速度)は、通信回線の利用状況等に応じて変動する。従って、通信速度が過度に低下した場合には、受信装置の記憶装置に記憶されているコンテンツデータのデータ量が、再生開始時刻までに十分な量に到達しない場合が生じる。このような場合、受信装置は、再生開始時刻にてコンテンツの再生を開始できない虞がある。
 これに対処するため、受信装置の記憶装置に記憶されているコンテンツデータに基づいてコンテンツを再生可能な時間である再生可能時間に基づいて、送信されるコンテンツデータの符号化レートを変更するように配信システムを構成することが考えられる。
 しかしながら、受信装置がコンテンツデータの受信を開始してから再生開始時刻までの期間において、再生可能時間は、0から徐々に増加していく。従って、再生可能時間のみに基づいて符号化レートを決定すると、受信装置がコンテンツデータの受信を開始した直後においては、符号化レートが過度に小さく設定され、一方、再生開始時刻の直前においては、符号化レートが過度に大きく設定される虞がある。
 また、このような問題は、複数の受信装置がコンテンツを同期して再生する配信システムだけでなく、1つの受信装置が設定された再生開始時刻にてコンテンツの再生を開始する配信システムにも同様に生じる。
 このため、本発明の目的は、上述した課題である「符号化レートが過度に大きく設定される場合、及び、受信装置が、設定された再生開始時刻にてコンテンツの再生を開始できない場合が生じること」を解決することが可能な配信システムを提供することにある。
 かかる目的を達成するため本発明の一形態である配信システムは、互いに通信可能に構成された送信装置及び受信装置を含むシステムである。
 更に、上記送信装置は、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信するコンテンツ送信手段を備え、
 上記受信装置は、上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生手段を備え、
 上記配信システムは、
 現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定手段を備え、
 上記コンテンツ送信手段は、上記受信装置へ送信するコンテンツデータの上記符号化レートを、上記決定された符号化レートに変更するように構成され、
 上記コンテンツ再生手段は、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 また、本発明の他の形態である配信方法は、
 互いに通信可能に構成された送信装置及び受信装置を含む配信システムに適用され、
 上記送信装置が、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信し、
 上記受信装置が、上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生し、
 現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定し、
 上記送信装置が上記受信装置へ送信するコンテンツデータの上記符号化レートを、上記決定された符号化レートに変更し、
 上記受信装置は、上記設定された再生開始時刻にて、上記コンテンツの再生を開始する方法である。
 また、本発明の他の形態である送信装置は、受信装置と通信可能に構成された装置である。
 更に、この送信装置は、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信するコンテンツ送信手段を備え、
 上記コンテンツ送信手段は、現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、上記受信装置へ送信する上記コンテンツデータの符号化レートを変更するように構成される。
 また、本発明の他の形態であるプログラムは、
 受信装置と通信可能に構成された送信装置に、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信するコンテンツ送信手段を実現させるとともに、
 上記コンテンツ送信手段は、現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、上記受信装置へ送信する上記コンテンツデータの符号化レートを変更するように構成される。
 また、本発明の他の形態である受信装置は、送信装置と通信可能に構成された装置である。
 更に、この受信装置は、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生手段と、
 現時点から、上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定手段と、を備え、
 上記コンテンツ再生手段は、上記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 また、本発明の他の形態であるプログラムは、
 送信装置と通信可能に構成された受信装置に、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生手段と、
 現時点から、上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定手段と、を実現させるとともに、
 上記コンテンツ再生手段は、上記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 本発明は、以上のように構成されることにより、符号化レートが無駄に小さくされることを防止しながら、受信装置が設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
本発明の第1実施形態に係る配信システムの概略構成を表す図である。 本発明の第1実施形態に係る配信システムの機能の概略を表すブロック図である。 本発明の第1実施形態に係る配信システムの作動を示したシーケンス図である。 本発明の第1実施形態に係るサーバ装置が実行する送信制御プログラムを示したフローチャートである。 本発明の第1実施形態に係るサーバ装置が記憶するセッション情報を示したテーブルである。 本発明の第1実施形態に係る端末装置が実行する再生開始制御プログラムを示したフローチャートである。 本発明の第1実施形態に係るサーバ装置が記憶するセッション情報を示したテーブルである。 本発明の第1実施形態に係るサーバ装置が記憶するセッション情報を示したテーブルである。 本発明の第1実施形態に係るサーバ装置が記憶する履歴情報を示したテーブルである。 本発明の第1実施形態に係るサーバ装置が実行する符号化レート変更制御プログラムを示したフローチャートである。 本発明の第1実施形態に係るサーバ装置が記憶する履歴情報を示したテーブルである。 本発明の第1実施形態に係るサーバ装置が記憶する履歴情報を示したテーブルである。 本発明の第1実施形態に係る配信システムの作動を示したシーケンス図である。 本発明の第1実施形態に係るサーバ装置が記憶するセッション情報を示したテーブルである。 本発明の第1実施形態に係るサーバ装置が記憶するセッション情報を示したテーブルである。 本発明の第2実施形態に係る配信システムの機能の概略を表すブロック図である。
 以下、本発明に係る、配信システム、配信方法、送信装置、プログラム、及び、受信装置、の各実施形態について図1~図16を参照しながら説明する。
<第1実施形態>
 図1に示したように、第1実施形態に係る配信システム1は、サーバ装置(送信装置)10と、複数(本例では、3つ)の端末装置(受信装置)20a,20b,20cと、を含む。サーバ装置10、及び、端末装置20a~20cは、通信回線(本例では、インターネット)NWを介して、互いに通信可能に接続されている。
 サーバ装置10は、情報処理装置である。サーバ装置10は、図示しない中央処理装置(CPU;Central Processing Unit)、及び、記憶装置(メモリ及びハードディスク駆動装置(HDD;Hard Disk Drive))を備える。サーバ装置10は、記憶装置に記憶されているプログラムをCPUが実行することにより、後述する機能を実現するように構成されている。
 本例では、各端末装置20a~20cは、パーソナル・コンピュータである。なお、各端末装置20a~20cは、携帯電話端末、PHS(Personal Handyphone System)、PDA(Personal Data Assistance、Personal Digital Assistant)、カーナビゲーション端末、又は、ゲーム端末等であってもよい。
 各端末装置20a~20cは、CPU、記憶装置、入力装置及び出力装置を備える。出力装置は、ディスプレイを有する。出力装置は、CPUから出力された画像情報に基づいて、文字及び図形等からなる画像をディスプレイに表示させる。入力装置は、キーボード及びマウスを有する。各端末装置20a~20cは、キーボード及びマウスを介して、ユーザの操作に基づく情報が入力されるように構成されている。
 各端末装置20a~20cは、記憶装置に記憶されているプログラムをCPUが実行することにより、後述する機能を実現するように構成されている。
 図2は、上記のように構成された配信システム1の機能を表すブロック図である。ここでは、端末装置20a~20cのうちの端末装置20aの機能について説明する。なお、端末装置20b及び端末装置20cも、端末装置20aと同様の機能を有する。
 また、配信システム1の機能は、端末装置20aのCPUが後述する図6に示したフローチャートにより表されるプログラム等を実行するとともに、サーバ装置10のCPUが後述する図4及び図10に示したフローチャートにより表されるプログラム等を実行することにより、実現される。
 端末装置20aの機能は、要求送信部31と、同期再生制御部(同期再生制御手段)32と、コンテンツ再生部(コンテンツ再生手段)33と、再生可能時間送信部34と、を含む。
 また、サーバ装置10の機能は、要求受信部41と、セッション情報記憶部42と、再生開始時刻設定部(再生開始時刻設定手段)43と、コンテンツデータ記憶部44と、コンテンツ送信部(コンテンツ送信手段)45と、再生可能時間受信部46と、符号化レート決定部(符号化レート決定手段)47と、を含む。
 端末装置20aの要求送信部31は、ユーザにより入力装置を介して入力されたセッション開始指示を受け付ける。セッション開始指示は、セッションを開始する旨を指示する情報である。セッション開始指示は、コンテンツを識別するためのコンテンツ識別情報(コンテンツID)と、コンテンツを同期させて再生する他の端末装置を識別するための端末識別情報(端末ID)である他端末IDと、を含む。
 要求送信部31は、セッション開始指示を受け付けた場合、セッション開始指示に含まれるコンテンツIDと、自装置(端末装置20a)を識別するための端末識別情報(端末ID)である自端末ID及びセッション開始指示に含まれる他端末IDからなる端末IDと、を含むセッション開始要求をサーバ装置10へ送信する。セッション開始要求は、セッションを開始する旨を要求する情報である。
 サーバ装置10の要求受信部41は、端末装置20aからセッション開始要求を受信する。要求受信部41は、セッション開始要求を受信した場合、セッションを識別するためのセッション識別情報(セッションID)を生成する。更に、要求受信部41は、生成したセッションIDと、セッション開始要求に含まれる、コンテンツID及び端末IDと、を含むセッション情報をセッション情報記憶部42に記憶させる。
 加えて、要求受信部41は、生成したセッションIDを、セッション開始要求に含まれる端末IDにより識別される端末装置20a~20cのそれぞれへ送信する。
 端末装置20aの要求送信部31は、サーバ装置10からセッションIDを受信する。更に、要求送信部31は、ユーザにより入力装置を介して入力されたセッション参加指示を受け付ける。セッション参加指示は、セッションへ参加する旨を指示する情報である。
 要求送信部31は、セッション参加指示を受け付けた場合、受信したセッションIDと、自装置(端末装置20a)を識別するための端末識別情報(端末ID)である自端末IDと、起動時間と、通信速度と、を含むセッション参加要求をサーバ装置10へ送信する。セッション参加要求は、セッションへ参加する旨を要求する情報である。
 起動時間は、端末装置20aがコンテンツを再生するために実行するアプリケーションプログラムが起動するために要する時間である。また、通信速度は、サーバ装置10から端末装置20aへ単位時間あたりに送信されるデータのデータ量である。本例では、起動時間及び通信速度は、ユーザにより入力された値である。なお、端末装置20aは、起動時間及び通信速度を計測し、計測された起動時間及び通信速度を含むセッション参加要求を送信するように構成されていてもよい。
 サーバ装置10の要求受信部41は、各端末装置20a~20cからセッション参加要求を受信する。要求受信部41は、セッション参加要求を受信した場合、セッション情報記憶部42に記憶されているセッション情報のうちの、セッション参加要求に含まれるセッションID及び端末IDを含むセッション情報に、セッション参加要求に含まれる起動時間及び通信速度を追加する。
 サーバ装置10のコンテンツデータ記憶部44は、複数のコンテンツデータを予め記憶(蓄積)している。各コンテンツデータは、複数のコンテンツ(例えば、映像及び/又は音声等を表す情報)の1つを表すデータである。コンテンツデータ記憶部44は、各コンテンツを表すコンテンツデータとして、複数の異なる符号化レートのそれぞれにて当該コンテンツが符号化された複数のコンテンツデータを記憶している。符号化レートは、コンテンツを単位時間(例えば、1秒)だけ等速再生(1倍速にて再生)するためのコンテンツデータのデータ量(データサイズ、例えば、バイト数)を表す。
 サーバ装置10の再生開始時刻設定部43は、再生開始時刻決定部43aと、再生開始時刻送信部43bと、を含む。
 再生開始時刻決定部43aは、セッション開始要求が受信されてから、予め設定された待機時間が経過するまでの間に受信されたセッション参加要求に基づいて、再生開始時刻を決定する。再生開始時刻は、セッション参加要求を送信してきた端末装置がコンテンツの再生を開始する時刻である。
 具体的には、再生開始時刻決定部43aは、セッション開始要求が受信されてから上記待機時間が経過した時点にて、セッション情報記憶部42に記憶されているセッション情報のうちの、当該セッション開始要求に対して生成したセッションIDを含むセッション情報を取得する。
 再生開始時刻決定部43aは、取得されたセッション情報のそれぞれ(即ち、端末装置のそれぞれ)に対して、装置毎再生準備時間Tを算出する。装置毎再生準備時間Tは、端末装置がコンテンツの再生を開始するために要する時間である。
 本例では、再生開始時刻決定部43aは、コンテンツデータ記憶部44に記憶されているコンテンツデータのうちの、取得されたセッション情報に含まれるコンテンツIDにより識別されるコンテンツを表すコンテンツデータを抽出する。そして、再生開始時刻決定部43aは、抽出されたコンテンツデータが有する符号化レートのうちの、取得されたセッション情報に含まれる通信速度以下であり且つ当該通信速度に最も近い値を有する符号化レートrを特定する。
 そして、再生開始時刻決定部43aは、特定した符号化レートrと、取得されたセッション情報に含まれる通信速度Bと、予め設定された目標再生可能時間Tと、下記式(1)と、に基づいて、再生準備通信時間Tを算出する。
  T=r・T/B   …(1)
 目標再生可能時間Tは、再生可能時間の目標値である。なお、目標再生可能時間は、端末装置毎に設定されていてもよい。また、目標再生可能時間は、端末装置から受信された値であってもよい。再生可能時間は、端末装置の記憶装置(後述するバッファ部33b)に記憶されているコンテンツデータに基づいて端末装置がコンテンツを再生可能な時間である。再生準備通信時間Tは、端末装置がコンテンツデータの受信を開始してから、再生可能時間が目標再生可能時間Tに一致するまでに要する時間である。
 更に、再生開始時刻決定部43aは、取得されたセッション情報に含まれる起動時間Tと、上記算出した再生準備通信時間Tと、を加えることにより、下記式(2)のように、装置毎再生準備時間Tを算出する。
  T=T+T   …(2)
 加えて、再生開始時刻決定部43aは、算出された装置毎再生準備時間Tの最大値Tpmaxを現時点の時刻tに加えることにより、下記式(3)のように、再生開始時刻Tを決定する。
  T=t+Tpmax   …(3)
 また、再生開始時刻決定部43aは、セッション開始要求が受信されてから、上記待機時間が経過した後にセッション参加要求を受信した場合、上述した場合と同様に、そのセッション参加要求を送信してきた端末装置に対する再生開始時刻Tを決定する。
 再生開始時刻決定部43aは、再生開始時刻を決定した場合、再生開始時刻を決定する基となったセッション参加要求に含まれるセッションID及び端末IDを含むセッション情報に、決定した再生開始時刻を追加する。
 再生開始時刻送信部43bは、再生開始時刻決定部43aにより決定された再生開始時刻を、セッション参加要求を送信してきた端末装置のそれぞれへ送信する。
 このように、再生開始時刻設定部43は、目標再生可能時間と、起動時間と、通信速度と、に基づいて再生開始時刻を設定する。
 端末装置20aの同期再生制御部32は、再生開始時刻受信部32aを含む。再生開始時刻受信部32aは、サーバ装置10から送信された再生開始時刻を受信する。同期再生制御部32は、再生開始時刻受信部32aにより受信された再生開始時刻を記憶装置に記憶させる。同期再生制御部32は、予め設定された制御周期が経過する毎に、現時点の時刻が記憶されている再生開始時刻に到達した(現時点が再生開始時刻となった)か否かを判定する。
 同期再生制御部32は、現時点の時刻が記憶されている再生開始時刻に到達した場合、再生開始指示をコンテンツ再生部33へ出力する。再生開始指示は、コンテンツの再生を開始する旨を指示する情報である。このようにして、同期再生制御部32は、複数の端末装置20a~20cのそれぞれが再生するコンテンツの再生位置を複数の端末装置20a~20c間で一致させる。
 サーバ装置10のコンテンツ送信部45は、コンテンツデータ記憶部44に記憶されているコンテンツデータを端末装置20a~20cへ送信する。即ち、コンテンツ送信部45は、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを端末装置20a~20cへ送信する。
 具体的には、コンテンツ送信部45は、再生開始時刻設定部43により再生開始時刻が決定された場合、再生開始時刻を決定する基となったセッション参加要求を送信してきた端末装置へ、コンテンツデータ記憶部44に記憶されているコンテンツデータを送信する。
 このとき、コンテンツ送信部45は、セッション参加要求に含まれるセッションIDを含むセッション情報に含まれるコンテンツIDにより識別されるコンテンツデータであって、当該セッション参加要求を送信してきた端末装置に対して再生開始時刻決定部43aにより特定された符号化レートにて符号化されたコンテンツデータを送信する。
 コンテンツ送信部45は、セッション開始要求が受信されてから、上記待機時間が経過するまでの間に受信されたセッション参加要求に基づいてコンテンツデータを送信する場合、先頭位置からコンテンツデータの送信を開始する。
 一方、コンテンツ送信部45は、セッション開始要求が受信されてから、上記待機時間が経過した後に受信されたセッション参加要求に基づいてコンテンツデータを送信する場合、判定条件が成立しているか否かを判定する。ここで、判定条件は、上記セッション参加要求に基づいて再生開始時刻設定部43により決定された再生開始時刻(第2の再生開始時刻)が、当該セッション参加要求と同一のセッションIDを含む他のセッション参加要求に基づいて再生開始時刻設定部43により決定された再生開始時刻(第1の再生開始時刻)よりも後の時刻であるという条件である。
 コンテンツ送信部45は、第2の再生開始時刻が第1の再生開始時刻以前の時刻である場合、先頭位置からコンテンツデータの送信を開始する。
 一方、コンテンツ送信部45は、第2の再生開始時刻が第1の再生開始時刻よりも後の時刻である場合、先頭位置から、第1の再生開始時刻と第2の再生開始時刻との差だけ後の位置を送信開始位置として決定する。送信開始位置は、コンテンツデータ内の位置であって、当該コンテンツデータの送信を開始する位置である。そして、コンテンツ送信部45は、決定した送信開始位置からコンテンツデータの送信を開始する。
 即ち、コンテンツ送信部45は、第1の端末装置に対して設定された再生開始時刻(第1の再生開始時刻)よりも、第2の端末装置に対して設定された再生開始時刻(第2の再生開始時刻)が後の時刻である場合、当該第2の再生開始時刻にて当該第1の端末装置が再生しているコンテンツの再生位置(即ち、送信開始位置)を推定する。そして、コンテンツ送信部45は、コンテンツデータのうちの、当該推定された再生位置以降の部分を当該第2の端末装置へ送信する。
 端末装置20aのコンテンツ再生部33は、コンテンツ受信部33aと、バッファ部33bと、コンテンツ再生実行部33cと、を含む。
 コンテンツ受信部33aは、サーバ装置10により送信されたコンテンツデータを受信する。バッファ部33bは、コンテンツ受信部33aにより受信されたデータを記憶する。コンテンツ再生実行部33cは、バッファ部33bに記憶されているデータに基づいてコンテンツを再生する。
 即ち、コンテンツ再生部33は、サーバ装置10により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいてコンテンツを再生する(ストリーミング方式により再生を行う)。
 なお、コンテンツ再生実行部33cは、同期再生制御部32により出力された再生開始指示を受け付けた場合に(即ち、設定された再生開始時刻にて)、コンテンツの再生を開始する。
 端末装置20aの再生可能時間送信部34は、バッファ部33bに記憶されているコンテンツデータに基づいてコンテンツ再生実行部33cがコンテンツを再生可能な時間である再生可能時間を、予め設定された取得周期(変更周期)が経過する毎に、取得する。再生可能時間送信部34は、再生可能時間が取得された場合、取得された再生可能時間と、自端末ID(端末ID)と、セッションIDと、を含む再生可能時間情報をサーバ装置10へ送信する。
 サーバ装置10の再生可能時間受信部46は、各端末装置20a~20cから再生可能時間情報を受信する。
 サーバ装置10の符号化レート決定部47は、再生可能時間受信部46により再生可能時間情報が受信された場合、再生可能時間情報に含まれる端末ID及びセッションIDを含むセッション情報に含まれる再生開始時刻を取得する。
 符号化レート決定部47は、現時点から、取得(即ち、設定)された再生開始時刻までの残余時間と、再生可能時間情報に含まれる再生可能時間と、に基づいて、当該再生可能時間情報を送信してきた端末装置に対して符号化レートを決定する。
 具体的には、符号化レート決定部47は、再生可能時間が目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を符号化レートとして決定する。
 本例では、符号化レート決定部47は、下記式(4)に基づいて、現時点から上記変更周期だけ前(過去)の時点までの期間における通信速度Bを算出(取得)する。ここで、nは整数であり、当該端末装置から再生可能時間情報を受信した回数を表す。
  B=(T-Tn-1)・r/(t-tn-1)   …(4)
 ここで、tは、今回、再生可能時間情報を受信した(即ち、現時点の)時刻であり、tn-1は、前回、再生可能時間情報を受信した(即ち、変更周期だけ前の時点の)時刻である。また、Tは、今回受信した(即ち、現時点の)再生可能時間であり、Tn-1は、前回受信した(即ち、変更周期だけ前の時点の)再生可能時間である。また、rは、時刻tn-1から時刻tまでの間に送信されたコンテンツデータが有する符号化レートである。
 本例では、現時点から再生開始時刻までの間、通信速度が上記通信速度Bに維持されることを仮定して、次回、再生可能時間情報を受信する(即ち、変更周期だけ後の時点の)時刻までの間に送信されるコンテンツデータが有する符号化レートrn+1を決定する。即ち、符号化レート決定部47は、下記式(5)に基づいて、符号化レートrn+1を決定する。
  rn+1=B・(t-t)/(T-T)   …(5)
 即ち、符号化レート決定部47は、取得された通信速度Bに残余時間t-tを乗じた値を、目標再生可能時間Tから再生可能時間Tを減じた値T-Tにより除した値を符号化レートrn+1として決定する。
 コンテンツ送信部45は、符号化レート決定部47により符号化レートrn+1が決定された場合、その符号化レートrn+1を決定する基となった再生可能時間情報を送信してきた端末装置へ送信するコンテンツデータを、当該符号化レートrn+1により符号化されたコンテンツデータに変更する。即ち、コンテンツ送信部45は、再生可能時間情報を送信してきた端末装置へ送信するコンテンツデータの符号化レートを、再生可能時間情報に基づいて決定された符号化レートに変更する。
 なお、コンテンツ送信部45は、符号化レート決定部47により決定された符号化レートrn+1を有するコンテンツデータがコンテンツデータ記憶部44に記憶されていない場合、コンテンツデータ記憶部44に記憶されているコンテンツデータのうちの、当該符号化レートrn+1以下であり且つ当該符号化レートrn+1に最も近い符号化レートを有するコンテンツデータを送信する。
 次に、上述した配信システム1の作動について説明する。なお、本例では、サーバ装置10は、各コンテンツに対して、2Mbps、4Mbps、16Mbps、及び、50Mbpsのそれぞれにて符号化されたコンテンツデータを記憶装置に予め記憶させている。また、目標再生可能時間Tは、30秒に設定されている。
 図3に示したように、端末装置20aは、コンテンツIDとしての「C01」と、他端末IDとしての「R02」及び「R03」と、を含むセッション開始指示を受け付ける。本例では、「R01」は、端末装置20aを識別するための端末IDであり、「R02」は、端末装置20bを識別するための端末IDであり、「R03」は、端末装置20cを識別するための端末IDである。
 端末装置20aは、セッション開始指示を受け付けると、コンテンツIDとしての「C01」と、端末IDとしての「R01」、「R02」及び「R03」と、を含むセッション開始要求をサーバ装置10へ送信する(ステップS101)。
 サーバ装置10は、端末装置20aからセッション開始要求を受信すると、図4にフローチャートにより示した送信制御プログラムを実行する。サーバ装置10は、セッションを識別するためのセッションIDとして「S01」を生成する。更に、サーバ装置10は、生成したセッションID「S01」と、セッション開始要求に含まれる、コンテンツID「C01」及び端末ID(「R01」、「R02」及び「R03」)のそれぞれと、を含むセッション情報を、図5に示したように、記憶装置に記憶させる。
 加えて、サーバ装置10は、生成したセッションIDを、セッション開始要求に含まれる端末IDにより識別される端末装置20a~20cのそれぞれへ送信する(図4のステップS201、図3のステップS102)。その後、サーバ装置10は、上記待機時間(本例では、3秒)だけ待機する(図4のステップS202)。
 次いで、端末装置20aのユーザがセッション参加指示を入力すると、端末装置20aは、図6にフローチャートにより示した再生開始制御プログラムを実行する。端末装置20aは、受信したセッションID「S01」と、端末ID「R01」と、起動時間「1200」(ms)と、通信速度「3」(Mbps)と、を含むセッション参加要求をサーバ装置10へ送信する(図6のステップS301、図3のステップS103)。
 本例では、端末装置20bも、端末装置20aと同様に、セッションID「S01」と、端末ID「R02」と、起動時間「1000」(ms)と、通信速度「50」(Mbps)と、を含むセッション参加要求をサーバ装置10へ送信する(図3のステップS104)。
 サーバ装置10は、各端末装置20a,20bからセッション参加要求を受信すると、図7に示したように、記憶装置に記憶されているセッション情報のうちの、セッション参加要求に含まれるセッションID及び端末IDを含むセッション情報に、セッション参加要求に含まれる起動時間及び通信速度を追加する。
 そして、待機時間が経過すると、サーバ装置10は、セッション参加要求を送信してきた端末装置20a,20bのそれぞれに対して、記憶装置に記憶されているコンテンツデータが有する符号化レートのうちの、通信速度以下であり且つ通信速度に最も近い符号化レートrを特定する。本例では、サーバ装置10は、端末装置20aに対する符号化レートrとして「2Mbps」を特定し、端末装置20bに対する符号化レートrとして「50Mbps」を特定する。
 次いで、サーバ装置10は、セッション参加要求を送信してきた端末装置20a,20bのそれぞれに対して、記憶されているセッション情報に含まれる通信速度B及び起動時間Tと、予め設定された目標再生可能時間Tと、に基づいて装置毎再生準備時間Tを算出する(図4のステップ203)。
 本例では、サーバ装置10は、上記式(1)~(3)に基づいて、端末装置20aに対する装置毎再生準備時間Tとして「21.2」を算出し、端末装置20bに対する装置毎再生準備時間Tとして「31」を算出する。
 次いで、サーバ装置10は、算出した装置毎再生準備時間Tの最大値Tpmax(ここでは、「31」)に基づいて再生開始時刻T(「13:01:34」)を決定する(図4のステップS204)。そして、サーバ装置10は、図8に示したように、セッションID「S01」及び端末ID「R01」を含むセッション情報、並びに、セッションID「S01」及び端末ID「R02」を含むセッション情報、のそれぞれに、決定した再生開始時刻を追加する。
 次いで、サーバ装置10は、セッション参加要求を送信してきた端末装置20a,20bのそれぞれへ、決定した再生開始時刻Tを送信する(図4のステップS205、図3のステップS105)。
 これにより、端末装置20aは、サーバ装置10から再生開始時刻Tを受信する(図6のステップS302)。なお、端末装置20bも、以降において、端末装置20aと同様に作動する。
 そして、サーバ装置10は、決定した再生開始時刻Tが、受信したセッション参加要求と同一のセッションIDを含む他のセッション参加要求に基づいて決定された再生開始時刻よりも後の時刻であるか否かを判定する(図4のステップS206)。
 この時点では、サーバ装置10は、受信したセッション参加要求と同一のセッションIDを含む他のセッション参加要求を受信していない。従って、サーバ装置10は、「No」と判定してステップS208へ進み、セッション参加要求を送信してきた端末装置20a,20bのそれぞれへのコンテンツデータの送信を、当該コンテンツデータの先頭位置から開始する(図4のステップS208、図3のステップS106)。
 このとき、サーバ装置10が端末装置20aへ送信するコンテンツデータは、セッションID「S01」を含むセッション情報に含まれるコンテンツID「C01」により識別されるコンテンツを表すコンテンツデータである。更に、このコンテンツデータは、端末装置20aから受信したセッション参加要求に含まれる通信速度に基づいて特定された符号化レートにて符号化されたデータである。
 同様に、サーバ装置10が端末装置20bへ送信するコンテンツデータは、セッションID「S01」を含むセッション情報に含まれるコンテンツID「C01」により識別されるコンテンツを表すコンテンツデータである。更に、このコンテンツデータは、端末装置20bから受信したセッション参加要求に含まれる通信速度に基づいて特定された符号化レートにて符号化されたデータである。
 また、サーバ装置10は、図9に示したように、セッション参加要求に含まれるセッションID及び端末IDと、再生可能時間の初期値としての「0」と、再生開始時刻と現時点の時刻との差「31」と、を対応付けた履歴情報を記憶装置に記憶させる。
 一方、端末装置20aは、サーバ装置10により送信されたコンテンツデータの受信を開始する(図6のステップS303)。次いで、端末装置20aは、現時点の時刻が再生開始時刻Tに到達したか否かを判定する(図6のステップS304)。この時点では、現時点の時刻は、再生開始時刻Tに到達していない。
 従って、端末装置20aは、「No」と判定してステップS305へ進み、コンテンツデータの受信が開始してから送信周期(本例では、5秒)が経過したか否かを判定する(図6のステップS305)。この時点では、コンテンツデータの受信が開始してから送信周期は経過していない。
 従って、端末装置20aは、「No」と判定してステップS304へ戻り、コンテンツデータの受信が開始してから送信周期が経過するまで、上記処理を繰り返し実行する。
 そして、コンテンツデータの受信が開始してから送信周期が経過すると、端末装置20aは、ステップS305にて「Yes」と判定してステップS306へ進み、再生可能時間を取得する。いま、取得された再生可能時間が「7」秒である場合を想定する。
 そして、端末装置20aは、取得した再生可能時間「7」と、端末ID「R01」と、セッションID「S01」と、を含む再生可能時間情報をサーバ装置10へ送信する(図3のステップS107)。同様に、端末装置20bは、再生可能時間「2」と、端末ID「R02」と、セッションID「S01」と、を含む再生可能時間情報をサーバ装置10へ送信する(図3のステップS108)。
 一方、サーバ装置10は、図4のステップS209へ進み、各端末装置に対する符号化レート変更制御を行うため、図10にフローチャートにより示した符号化レート変更制御プログラムを、コンテンツデータを送信している各端末装置20a,20bに対して独立に実行する。
 先ず、サーバ装置10が端末装置20aに対して実行する符号化レート変更制御について説明する。
 サーバ装置10は、現時点の時刻が再生開始時刻Tに到達したか否かを判定する(図10のステップS401)。この時点では、現時点の時刻は、再生開始時刻Tに到達していない。
 従って、サーバ装置10は、「No」と判定してステップS402へ進み、端末装置20aから再生可能時間情報を受信したか否かを判定する。サーバ装置10は、端末装置20aから再生可能時間情報を受信していない場合、ステップS401へ戻り、上記処理を繰り返し実行する。
 いま、サーバ装置10は、端末装置20aから再生可能時間情報を受信している。従って、サーバ装置10は、「Yes」と判定してステップS403へ進み、図11に示したように、再生可能時間情報に含まれるセッションID「S01」、端末ID「R01」及び再生可能時間「7」と、再生開始時刻と現時点の時刻との差「26」と、を対応付けた履歴情報を記憶装置に記憶させる。
 サーバ装置10は、記憶装置に記憶されている履歴情報に基づいて符号化レートを決定する。本例では、サーバ装置10は、上記式(4)に基づいて、通信速度Bとして「2.8Mbps」を算出する。更に、サーバ装置10は、上記式(5)に基づいて、符号化レートrn+1として「3.165Mbps」を算出(決定)する(図10のステップS403)。
 そして、サーバ装置10は、記憶装置に記憶されているコンテンツデータの符号化レートのうちの、当該符号化レートrn+1以下であり且つ当該符号化レートrn+1に最も近い符号化レートとして「2Mbps」を特定する。次いで、サーバ装置10は、端末装置20aへ送信しているコンテンツデータの符号化レートを、上記特定された符号化レート「2Mbps」に変更する(図10のステップS404)。その後、サーバ装置10は、ステップS401へ戻り、上述した処理を繰り返し実行する。
 次に、サーバ装置10が端末装置20bに対して実行する符号化レート変更制御について説明する。
 サーバ装置10は、端末装置20bから再生可能時間情報を受信すると、図10のステップS403へ進み、図11に示したように、再生可能時間情報に含まれるセッションID「S01」、端末ID「R02」及び再生可能時間「2」と、再生開始時刻と現時点の時刻との差「26」と、を対応付けた履歴情報を記憶装置に記憶させる。
 サーバ装置10は、記憶装置に記憶されている履歴情報に基づいて符号化レートを決定する。本例では、サーバ装置10は、上記式(4)に基づいて、通信速度Bとして「20Mbps」を算出する。更に、サーバ装置10は、上記式(5)に基づいて、符号化レートrn+1として「18.57Mbps」を算出(決定)する(図10のステップS403)。
 そして、サーバ装置10は、記憶装置に記憶されているコンテンツデータの符号化レートのうちの、当該符号化レートrn+1以下であり且つ当該符号化レートrn+1に最も近い符号化レートとして「16Mbps」を特定する。次いで、サーバ装置10は、端末装置20bへ送信しているコンテンツデータの符号化レートを、上記特定された符号化レート「16Mbps」に変更する(図10のステップS404)。その後、サーバ装置10は、ステップS401へ戻り、上述した処理を繰り返し実行する。
 そして、端末装置20a及び端末装置20bが再生可能時間情報を送信してから再び送信周期が経過すると、端末装置20a及び端末装置20bのそれぞれは、再び、図6のステップS305にて「Yes」と判定してステップS306へ進み、再生可能時間情報をサーバ装置10へ送信する。
 いま、端末装置20aが、再生可能時間「18」と、端末ID「R01」と、セッションID「S01」と、を含む再生可能時間情報をサーバ装置10へ送信する場合であって、端末装置20bが、再生可能時間「14」と、端末ID「R02」と、セッションID「S01」と、を含む再生可能時間情報をサーバ装置10へ送信する場合を想定する。
 先ず、サーバ装置10が端末装置20aに対して実行する符号化レート変更制御について説明する。
 サーバ装置10は、図10のステップS402にて「Yes」と判定してステップS403へ進み、図12に示したように、再生可能時間情報に含まれるセッションID「S01」、端末ID「R01」及び再生可能時間「18」と、再生開始時刻と現時点の時刻との差「21」と、を対応付けた履歴情報を記憶装置に記憶させる。
 サーバ装置10は、記憶装置に記憶されている履歴情報に基づいて符号化レートを決定する。本例では、サーバ装置10は、上記式(4)に基づいて、通信速度Bとして「4.4Mbps」を算出する。更に、サーバ装置10は、上記式(5)に基づいて、符号化レートrn+1として「7.7Mbps」を算出(決定)する(図10のステップS403)。
 そして、サーバ装置10は、記憶装置に記憶されているコンテンツデータの符号化レートのうちの、当該符号化レートrn+1以下であり且つ当該符号化レートrn+1に最も近い符号化レートとして「4Mbps」を特定する。次いで、サーバ装置10は、端末装置20aへ送信しているコンテンツデータの符号化レートを、上記特定された符号化レート「4Mbps」に変更する(図10のステップS404)。その後、サーバ装置10は、ステップS401へ戻り、上述した処理を繰り返し実行する。
 次に、サーバ装置10が端末装置20bに対して実行する符号化レート変更制御について説明する。
 サーバ装置10は、図10のステップS402にて「Yes」と判定してステップS403へ進み、図12に示したように、再生可能時間情報に含まれるセッションID「S01」、端末ID「R02」及び再生可能時間「14」と、再生開始時刻と現時点の時刻との差「21」と、を対応付けた履歴情報を記憶装置に記憶させる。
 サーバ装置10は、記憶装置に記憶されている履歴情報に基づいて符号化レートを決定する。本例では、サーバ装置10は、上記式(4)に基づいて、通信速度Bとして「38.4Mbps」を算出する。更に、サーバ装置10は、上記式(5)に基づいて、符号化レートrn+1として「50.4Mbps」を算出(決定)する(図10のステップS403)。
 そして、サーバ装置10は、記憶装置に記憶されているコンテンツデータの符号化レートのうちの、当該符号化レートrn+1以下であり且つ当該符号化レートrn+1に最も近い符号化レートとして「50Mbps」を特定する。次いで、サーバ装置10は、端末装置20bへ送信しているコンテンツデータの符号化レートを、上記特定された符号化レート「50Mbps」に変更する(図10のステップS404)。その後、サーバ装置10は、ステップS401へ戻り、上述した処理を繰り返し実行する。
 その後、送信周期(変更周期)が経過する毎に、サーバ装置10は、コンテンツデータを送信している端末装置20a,20bのそれぞれに対して符号化レートを決定し、送信しているコンテンツデータの符号化レートを、決定した符号化レートに変更する。
 その後、現時点の時刻が再生開始時刻Tに到達すると、端末装置20a及び端末装置20bのそれぞれは、図6のステップS304にて「Yes」と判定してステップS307へ進み、記憶装置に記憶されているコンテンツデータに基づいてコンテンツの再生(出力装置への出力)を開始する(図3のステップS110a,S110b)。
 これにより、複数の端末装置20a,20b間で、コンテンツの再生位置を確実に一致させることができる。即ち、複数の端末装置20a,20b間で、同一のコンテンツを同期して再生することができる。
 また、この時点にて、サーバ装置10は、図10のステップS401にて「Yes」と判定して、符号化レート変更制御プログラムの実行を終了する。
 これによれば、配信システム1は、残余時間及び再生可能時間の両方に基づいて、サーバ装置10から端末装置20a,20bへ送信されるコンテンツデータの符号化レートを変更する。これにより、配信システム1は、再生可能時間が比較的短い場合であっても、残余時間が相当長い場合には、符号化レートを比較的大きな値に設定することができる。この結果、符号化レートが無駄に小さくされることを防止することができる。
 また、配信システム1は、再生可能時間が比較的長い場合であっても、残余時間が相当短い場合には、符号化レートを比較的小さな値に設定することができる。この結果、再生開始時刻における再生可能時間を十分に大きくすることができる。従って、端末装置20a,20bが設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 このように、上記配信システム1によれば、符号化レートが無駄に小さくされることを防止しながら、端末装置20a,20bが設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 更に、上記配信システム1は、再生可能時間が目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を符号化レートとして決定するように構成される。
 これによれば、再生開始時刻における再生可能時間を目標再生可能時間に十分に近づけることができる。この結果、符号化レートが無駄に小さくされることを防止しながら、端末装置20a,20bが設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 加えて、上記配信システム1は、サーバ装置10から端末装置20a,20bへ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に残余時間を乗じた値を、目標再生可能時間から再生可能時間を減じた値により除した値を符号化レートとして決定するように構成される。
 これにより、再生開始時刻における再生可能時間を目標再生可能時間により一層確実に近づけることができる。
 更に、上記配信システム1は、再生可能時間の目標値である目標再生可能時間に基づいて再生開始時刻を設定するように構成される。
 これにより、再生開始時刻における再生可能時間を目標再生可能時間に確実に近づけることができる。
 加えて、上記配信システム1は、複数の端末装置20a,20bのそれぞれに対して、当該端末装置がコンテンツの再生を開始するまでに要する時間である装置毎再生準備時間を算出し、当該算出された装置毎再生準備時間の最大値に基づいて、再生開始時刻を設定するように構成される。
 これにより、複数の端末装置20a,20bのすべてが、再生開始時刻までに再生可能時間を目標再生可能時間に確実に近づけることができる。この結果、複数の端末装置20a,20b間で、コンテンツの再生位置を確実に一致させることができる。
 更に、上記配信システム1は、端末装置20a,20bがコンテンツを再生するために実行するアプリケーションプログラムが起動するために要する時間である起動時間と、目標再生可能時間と、に基づいて再生開始時刻を設定するように構成される。
 これにより、端末装置20a,20bは、再生開始時刻にてコンテンツの再生を確実に開始することができる。
 加えて、上記配信システム1は、サーバ装置10から端末装置20a,20bへ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度と、目標再生可能時間と、に基づいて再生開始時刻を設定するように構成される。
 これにより、再生開始時刻を適切に設定することができる。
 次に、端末装置20a及び端末装置20bが、同一のコンテンツを同期して再生している状態において、端末装置20cが端末装置20a及び端末装置20bと同期してコンテンツを再生することを、端末装置20cのユーザが希望する場合を想定して説明を続ける。
 この場合、端末装置20cのユーザは、セッション参加指示を入力する。これにより、端末装置20cは、受信したセッションID「S01」と、端末ID「R03」と、起動時間「1500」(ms)と、通信速度「8」(Mbps)と、を含むセッション参加要求をサーバ装置10へ送信する(図6のステップS301、図13のステップS501)。
 サーバ装置10は、端末装置20cからセッション参加要求を受信すると、図14に示したように、記憶装置に記憶されているセッション情報のうちの、セッション参加要求に含まれるセッションID及び端末IDを含むセッション情報に、セッション参加要求に含まれる起動時間及び通信速度を追加する。
 そして、サーバ装置10は、セッション参加要求を送信してきた端末装置20cに対して、記憶装置に記憶されているコンテンツデータが有する符号化レートのうちの、通信速度以下であり且つ通信速度に最も近い符号化レートrを特定する。本例では、サーバ装置10は、端末装置20cに対する符号化レートrとして「4Mbps」を特定する。
 次いで、サーバ装置10は、セッション参加要求を送信してきた端末装置20cに対して、記憶されているセッション情報に含まれる通信速度B及び起動時間Tと、予め設定された目標再生可能時間Tと、に基づいて装置毎再生準備時間Tを算出する(図4のステップ203)。
 次いで、サーバ装置10は、算出した装置毎再生準備時間Tに基づいて再生開始時刻T(「13:05:25」)を決定する(図4のステップS204)。そして、サーバ装置10は、図15に示したように、セッションID「S01」及び端末ID「R03」を含むセッション情報に、決定した再生開始時刻を追加する。
 次いで、サーバ装置10は、セッション参加要求を送信してきた端末装置20cへ、決定した再生開始時刻Tを送信する(図4のステップS205、図13のステップS502)。これにより、端末装置20cは、サーバ装置10から再生開始時刻Tを受信する(図6のステップS302)。
 そして、サーバ装置10は、決定した再生開始時刻Tが、受信したセッション参加要求と同一のセッションIDを含む他のセッション参加要求に基づいて決定された再生開始時刻よりも後の時刻であるか否かを判定する(図4のステップS206)。
 この時点では、端末装置20c(第2の受信装置)から受信したセッション参加要求に基づいて決定した再生開始時刻(第2の再生開始時刻)は、端末装置20a(第1の受信装置)及び端末装置20bから受信したセッション参加要求に基づいて決定した再生開始時刻(第1の再生開始時刻)よりも後の時刻である。また、端末装置20a及び端末装置20bから受信したセッション参加要求は、端末装置20cから受信したセッション参加要求に含まれるセッションIDと同一のセッションIDを含む。即ち、上記決定した再生開始時刻Tは、受信したセッション参加要求と同一のセッションIDを含む他のセッション参加要求に基づいて決定された再生開始時刻よりも後の時刻である。
 従って、サーバ装置10は、「Yes」と判定してステップS207へ進み、先頭位置から、第1の再生開始時刻と第2の再生開始時刻との差だけ後の位置を送信開始位置として決定する。そして、サーバ装置10は、ステップS208へ進み、上記決定した送信開始位置から、端末装置20cへのコンテンツデータの送信を開始する(図13のステップS503)。
 このとき、サーバ装置10が端末装置20cへ送信するコンテンツデータは、セッションID「S01」を含むセッション情報に含まれるコンテンツID「C01」により識別されるコンテンツを表すコンテンツデータである。更に、このコンテンツデータは、端末装置20cから受信したセッション参加要求に含まれる通信速度に基づいて特定された符号化レートにて符号化されたデータである。
 上述した場合と同様に、端末装置20cは、送信周期が経過する毎に、再生可能時間を含む再生可能時間情報をサーバ装置10へ送信する(図13のステップS504)。
 そして、サーバ装置10は、端末装置20cから再生可能時間情報を受信する毎に、端末装置20cに対して符号化レート変更制御を行う(図13のステップS505)。
 その後、端末装置20cは、現時点の時刻が、サーバ装置10から受信した再生開始時刻に到達すると、記憶装置に記憶されているコンテンツデータに基づいてコンテンツの再生を開始する(図13のステップS506)。
 これにより、複数の端末装置20a~20c間で、コンテンツの再生位置を確実に一致させることができる。即ち、複数の端末装置20a~20c間で、同一のコンテンツを同期して再生することができる。
 以上、説明したように、本発明の第1実施形態に係る配信システム1によれば、符号化レートが無駄に小さくされることを防止しながら、端末装置20a~20cが設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 なお、上記第1実施形態に係る配信システム1は、サーバ装置10が、残余時間と再生可能時間とに基づいて符号化レートを決定するように構成されていたが、各端末装置20a~20cが、残余時間と再生可能時間とに基づいて符号化レートを決定するように構成されていてもよい。この場合、各端末装置20a~20cは、決定した符号化レートをサーバ装置10へ送信するように構成される。
 また、上記第1実施形態に係る配信システム1は、複数の端末装置20a~20cのそれぞれが再生するコンテンツの再生位置を当該複数の端末装置20a~20c間で一致させるように構成されていたが、複数の端末装置20a~20cのそれぞれが再生するコンテンツの再生位置が互いに異なっていてもよい。
 また、上記第1実施形態に係る配信システム1は、端末装置間でコンテンツデータを授受するように構成されていてもよい。
 また、上記第1実施形態に係る配信システム1が含む端末装置の数は、3つであったが、2つであってもよく、4つ以上であってもよい。
 なお、上記第1実施形態において配信システム1の各機能は、CPUがプログラム(ソフトウェア)を実行することにより実現されていたが、回路等のハードウェアにより実現されていてもよい。
<第2実施形態>
 次に、本発明の第2実施形態に係る通信システムについて図16を参照しながら説明する。
 第2実施形態に係る配信システム100は、互いに通信可能に構成された送信装置110及び受信装置120を含むシステムである。
 送信装置110は、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを受信装置120へ送信するコンテンツ送信部(コンテンツ送信手段)111を備える。
 受信装置120は、送信装置110により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生部(コンテンツ再生手段)121を備える。
 配信システム100は、
 現時点から、受信装置120が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、受信装置120の上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定部(符号化レート決定手段)131を備える。
 コンテンツ送信部111は、受信装置120へ送信するコンテンツデータの上記符号化レートを、上記決定された符号化レートに変更するように構成される。
 コンテンツ再生部121は、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 これによれば、配信システム100は、残余時間及び再生可能時間の両方に基づいて、送信装置110から受信装置120へ送信されるコンテンツデータの符号化レートを変更する。これにより、配信システム100は、再生可能時間が比較的短い場合であっても、残余時間が相当長い場合には、符号化レートを比較的大きな値に設定することができる。この結果、符号化レートが無駄に小さくされることを防止することができる。
 また、配信システム100は、再生可能時間が比較的長い場合であっても、残余時間が相当短い場合には、符号化レートを比較的小さな値に設定することができる。この結果、再生開始時刻における再生可能時間を十分に大きくすることができる。従って、受信装置120が設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 このように、配信システム100によれば、符号化レートが無駄に小さくされることを防止しながら、受信装置120が設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 この場合、上記符号化レート決定手段は、上記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を上記符号化レートとして決定するように構成されることが好適である。
 これによれば、再生開始時刻における再生可能時間を目標再生可能時間に十分に近づけることができる。この結果、符号化レートが無駄に小さくされることを防止しながら、受信装置が設定された再生開始時刻にてコンテンツの再生を確実に開始することができる。
 この場合、上記符号化レート決定手段は、上記送信装置から上記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に上記残余時間を乗じた値を、上記目標再生可能時間から上記再生可能時間を減じた値により除した値を上記符号化レートとして決定するように構成されることが好適である。
 再生可能時間が増加する程度は、通信速度に応じて変化する。従って、上記のように配信システムを構成することにより、再生開始時刻における再生可能時間を目標再生可能時間により一層確実に近づけることができる。
 この場合、上記符号化レート決定手段は、予め設定された変更周期が経過する毎に、上記符号化レートを決定するように構成されることが好適である。
 この場合、上記配信システムは、
 上記受信装置を複数含み、
 上記複数の受信装置のそれぞれが再生するコンテンツの再生位置を当該複数の受信装置間で一致させる同期再生制御手段を備えることが好適である。
 これによれば、複数の受信装置間で、コンテンツの再生位置を確実に一致させることができる。
 この場合、上記配信システムは、
 上記再生可能時間の目標値である目標再生可能時間に基づいて上記再生開始時刻を設定する再生開始時刻設定手段を備えることが好適である。
 目標再生可能時間が長くなるほど、再生可能時間が目標再生可能時間に一致するまでに要する時間が長くなる。従って、上記構成のように、目標再生可能時間に基づいて再生開始時刻を設定することにより、再生開始時刻における再生可能時間を目標再生可能時間に確実に近づけることができる。
 この場合、上記コンテンツ送信手段は、上記複数の受信装置の1つである第1の受信装置に対して設定された再生開始時刻である第1の再生開始時刻よりも、当該複数の受信装置の他の1つである第2の受信装置に対して設定された再生開始時刻である第2の再生開始時刻が後の時刻である場合、当該第2の再生開始時刻にて当該第1の受信装置が再生しているコンテンツの再生位置を推定し、上記コンテンツデータのうちの、当該推定された再生位置以降の部分を当該第2の受信装置へ送信するように構成されることが好適である。
 この場合、上記再生開始時刻設定手段は、上記複数の受信装置のそれぞれに対して、当該受信装置が上記コンテンツの再生を開始するまでに要する時間である装置毎再生準備時間を算出し、当該算出された装置毎再生準備時間の最大値に基づいて、上記再生開始時刻を設定するように構成されることが好適である。
 ところで、複数の受信装置間で受信速度が相違することが多い。従って、上記のように配信システムを構成することにより、複数の受信装置のすべてが、再生開始時刻までに再生可能時間を目標再生可能時間に確実に近づけることができる。この結果、複数の受信装置間で、コンテンツの再生位置を確実に一致させることができる。
 この場合、上記再生開始時刻設定手段は、上記受信装置が上記コンテンツを再生するために実行するアプリケーションプログラムが起動するために要する時間である起動時間と、上記目標再生可能時間と、に基づいて上記再生開始時刻を設定するように構成されることが好適である。
 ところで、受信装置がコンテンツの再生を開始するまでに要する時間は、起動時間と、再生可能時間が目標再生可能時間に到達するまでに要する時間と、を含む。従って、上記のように配信システムを構成することにより、受信装置は、再生開始時刻にてコンテンツの再生を確実に開始することができる。
 この場合、上記再生開始時刻設定手段は、上記送信装置から上記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度と、上記目標再生可能時間と、に基づいて上記再生開始時刻を設定するように構成されることが好適である。
 ところで、再生可能時間が目標再生可能時間に到達するまでに要する時間は、通信速度に応じて変動する。従って、上記のように配信システムを構成することにより、再生開始時刻を適切に設定することができる。
 また、本発明の他の形態である配信方法は、
 互いに通信可能に構成された送信装置及び受信装置を含む配信システムに適用され、
 上記送信装置が、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信し、
 上記受信装置が、上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生し、
 現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定し、
 上記送信装置が上記受信装置へ送信するコンテンツデータの上記符号化レートを、上記決定された符号化レートに変更し、
 上記受信装置は、上記設定された再生開始時刻にて、上記コンテンツの再生を開始する方法である。
 この場合、上記配信方法は、
 上記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記配信方法は、
 上記送信装置から上記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に上記残余時間を乗じた値を、上記目標再生可能時間から上記再生可能時間を減じた値により除した値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記配信方法は、
 予め設定された変更周期が経過する毎に、上記符号化レートを決定するように構成されることが好適である。
 この場合、上記配信方法は、
 上記配信システムが、上記受信装置を複数含み、
 上記複数の受信装置のそれぞれが再生するコンテンツの再生位置を当該複数の受信装置間で一致させることが好適である。
 また、本発明の他の形態である送信装置は、受信装置と通信可能に構成された装置である。
 更に、この送信装置は、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信するコンテンツ送信手段を備え、
 上記コンテンツ送信手段は、現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、上記受信装置へ送信する上記コンテンツデータの符号化レートを変更するように構成される。
 この場合、上記送信装置は、
 上記残余時間と上記再生可能時間とに基づいて上記符号化レートを決定する符号化レート決定手段を備えることが好適である。
 この場合、上記符号化レート決定手段は、上記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記符号化レート決定手段は、上記送信装置から上記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に上記残余時間を乗じた値を、上記目標再生可能時間から上記再生可能時間を減じた値により除した値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記符号化レート決定手段は、予め設定された変更周期が経過する毎に、上記符号化レートを決定するように構成されることが好適である。
 また、本発明の他の形態であるプログラムは、
 受信装置と通信可能に構成された送信装置に、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを上記受信装置へ送信するコンテンツ送信手段を実現させるとともに、
 上記コンテンツ送信手段は、現時点から、上記受信装置が上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記受信装置の記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、上記受信装置へ送信する上記コンテンツデータの符号化レートを変更するように構成される。
 また、本発明の他の形態である受信装置は、送信装置と通信可能に構成された装置である。
 更に、この受信装置は、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生手段と、
 現時点から、上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定手段と、を備え、
 上記コンテンツ再生手段は、上記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 この場合、上記符号化レート決定手段は、上記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記符号化レート決定手段は、上記送信装置から単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に上記残余時間を乗じた値を、上記目標再生可能時間から上記再生可能時間を減じた値により除した値を上記符号化レートとして決定するように構成されることが好適である。
 この場合、上記符号化レート決定手段は、予め設定された変更周期が経過する毎に、上記符号化レートを決定するように構成されることが好適である。
 また、本発明の他の形態であるプログラムは、
 送信装置と通信可能に構成された受信装置に、
 1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ上記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するコンテンツ再生手段と、
 現時点から、上記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、上記記憶装置に記憶されている上記コンテンツデータに基づいて上記コンテンツを再生可能な時間である再生可能時間と、に基づいて、上記符号化レートを決定する符号化レート決定手段と、を実現させるとともに、
 上記コンテンツ再生手段は、上記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、上記設定された再生開始時刻にて、上記コンテンツの再生を開始するように構成される。
 上述した構成を有する、配信方法、送信装置、プログラム、又は、受信装置、の発明であっても、上記配信システムと同様の作用を有するために、上述した本発明の目的を達成することができる。
 以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
 また、上記各実施形態においてプログラムは、記憶装置に記憶されていたが、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
 また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
 なお、本発明は、日本国にて2009年11月5日に出願された特願2009-253581の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願にて開示された内容のすべてが本明細書に含まれるものとする。
 本発明は、コンテンツを表すコンテンツデータを送信装置から受信装置へ送信する配信システム等に適用可能である。
1   配信システム
10  サーバ装置
20a,20b,20c 端末装置
31  要求送信部
32  同期再生制御部
32a 再生開始時刻受信部
33  コンテンツ再生部
33a コンテンツ受信部
33b バッファ部
33c コンテンツ再生実行部
34  再生可能時間送信部
41  要求受信部
42  セッション情報記憶部
43  再生開始時刻設定部
43a 再生開始時刻決定部
43b 再生開始時刻送信部
44  コンテンツデータ記憶部
45  コンテンツ送信部
46  再生可能時間受信部
47  符号化レート決定部
100 配信システム
110 送信装置
111 コンテンツ送信部
120 受信装置
121 コンテンツ再生部
131 符号化レート決定部
NW  通信回線

Claims (26)

  1.  互いに通信可能に構成された送信装置及び受信装置を含む配信システムであって、
     前記送信装置は、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを前記受信装置へ送信するコンテンツ送信手段を備え、
     前記受信装置は、前記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するコンテンツ再生手段を備え、
     前記配信システムは、
     現時点から、前記受信装置が前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記受信装置の前記記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて、前記符号化レートを決定する符号化レート決定手段を備え、
     前記コンテンツ送信手段は、前記受信装置へ送信するコンテンツデータの前記符号化レートを、前記決定された符号化レートに変更するように構成され、
     前記コンテンツ再生手段は、前記設定された再生開始時刻にて、前記コンテンツの再生を開始するように構成された配信システム。
  2.  請求項1に記載の配信システムであって、
     前記符号化レート決定手段は、前記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を前記符号化レートとして決定するように構成された配信システム。
  3.  請求項2に記載の配信システムであって、
     前記符号化レート決定手段は、前記送信装置から前記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に前記残余時間を乗じた値を、前記目標再生可能時間から前記再生可能時間を減じた値により除した値を前記符号化レートとして決定するように構成された配信システム。
  4.  請求項1乃至請求項3のいずれか一項に記載の配信システムであって、
     前記符号化レート決定手段は、予め設定された変更周期が経過する毎に、前記符号化レートを決定するように構成された配信システム。
  5.  請求項1乃至請求項4のいずれか一項に記載の配信システムであって、
     前記受信装置を複数含み、
     前記複数の受信装置のそれぞれが再生するコンテンツの再生位置を当該複数の受信装置間で一致させる同期再生制御手段を備える配信システム。
  6.  請求項5に記載の配信システムであって、
     前記再生可能時間の目標値である目標再生可能時間に基づいて前記再生開始時刻を設定する再生開始時刻設定手段を備える配信システム。
  7.  請求項5又は請求項6に記載の配信システムであって、
     前記コンテンツ送信手段は、前記複数の受信装置の1つである第1の受信装置に対して設定された再生開始時刻である第1の再生開始時刻よりも、当該複数の受信装置の他の1つである第2の受信装置に対して設定された再生開始時刻である第2の再生開始時刻が後の時刻である場合、当該第2の再生開始時刻にて当該第1の受信装置が再生しているコンテンツの再生位置を推定し、前記コンテンツデータのうちの、当該推定された再生位置以降の部分を当該第2の受信装置へ送信するように構成された配信システム。
  8.  請求項6又は請求項7に記載の配信システムであって、
     前記再生開始時刻設定手段は、前記複数の受信装置のそれぞれに対して、当該受信装置が前記コンテンツの再生を開始するまでに要する時間である装置毎再生準備時間を算出し、当該算出された装置毎再生準備時間の最大値に基づいて、前記再生開始時刻を設定するように構成された配信システム。
  9.  請求項6乃至請求項8のいずれか一項に記載の配信システムであって、
     前記再生開始時刻設定手段は、前記受信装置が前記コンテンツを再生するために実行するアプリケーションプログラムが起動するために要する時間である起動時間と、前記目標再生可能時間と、に基づいて前記再生開始時刻を設定するように構成された配信システム。
  10.  請求項6乃至請求項9のいずれか一項に記載の配信システムであって、
     前記再生開始時刻設定手段は、前記送信装置から前記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度と、前記目標再生可能時間と、に基づいて前記再生開始時刻を設定するように構成された配信システム。
  11.  互いに通信可能に構成された送信装置及び受信装置を含む配信システムに適用され、
     前記送信装置が、1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを前記受信装置へ送信し、
     前記受信装置が、前記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生し、
     現時点から、前記受信装置が前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記受信装置の前記記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて、前記符号化レートを決定し、
     前記送信装置が前記受信装置へ送信するコンテンツデータの前記符号化レートを、前記決定された符号化レートに変更し、
     前記受信装置は、前記設定された再生開始時刻にて、前記コンテンツの再生を開始する、配信方法。
  12.  請求項11に記載の配信方法であって、
     前記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を前記符号化レートとして決定するように構成された配信方法。
  13.  請求項12に記載の配信方法であって、
     前記送信装置から前記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に前記残余時間を乗じた値を、前記目標再生可能時間から前記再生可能時間を減じた値により除した値を前記符号化レートとして決定するように構成された配信方法。
  14.  請求項11乃至請求項13のいずれか一項に記載の配信方法であって、
     予め設定された変更周期が経過する毎に、前記符号化レートを決定するように構成された配信方法。
  15.  請求項11乃至請求項14のいずれか一項に記載の配信方法であって、
     前記配信システムは、前記受信装置を複数含み、
     前記複数の受信装置のそれぞれが再生するコンテンツの再生位置を当該複数の受信装置間で一致させる、配信方法。
  16.  受信装置と通信可能に構成された送信装置であって、
     1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを前記受信装置へ送信するコンテンツ送信手段を備え、
     前記コンテンツ送信手段は、現時点から、前記受信装置が前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記受信装置の記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、前記受信装置へ送信する前記コンテンツデータの符号化レートを変更するように構成された送信装置。
  17.  請求項16に記載の送信装置であって、
     前記残余時間と前記再生可能時間とに基づいて前記符号化レートを決定する符号化レート決定手段を備える送信装置。
  18.  請求項16又は請求項17に記載の送信装置であって、
     前記符号化レート決定手段は、前記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を前記符号化レートとして決定するように構成された送信装置。
  19.  請求項18に記載の送信装置であって、
     前記符号化レート決定手段は、前記送信装置から前記受信装置へ単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に前記残余時間を乗じた値を、前記目標再生可能時間から前記再生可能時間を減じた値により除した値を前記符号化レートとして決定するように構成された送信装置。
  20.  請求項16乃至請求項19のいずれか一項に記載の送信装置であって、
     前記符号化レート決定手段は、予め設定された変更周期が経過する毎に、前記符号化レートを決定するように構成された送信装置。
  21.  受信装置と通信可能に構成された送信装置に、
     1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化されたコンテンツデータを前記受信装置へ送信するコンテンツ送信手段を実現させるとともに、
     前記コンテンツ送信手段は、現時点から、前記受信装置が前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記受信装置の記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて決定された符号化レートに、前記受信装置へ送信する前記コンテンツデータの符号化レートを変更するように構成されたプログラム。
  22.  送信装置と通信可能に構成された受信装置であって、
     1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ前記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するコンテンツ再生手段と、
     現時点から、前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて、前記符号化レートを決定する符号化レート決定手段と、を備え、
     前記コンテンツ再生手段は、前記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、前記設定された再生開始時刻にて、前記コンテンツの再生を開始するように構成された受信装置。
  23.  請求項22に記載の受信装置であって、
     前記符号化レート決定手段は、前記再生可能時間が、当該再生可能時間の目標値である目標再生可能時間よりも短くなるほど小さくなり、且つ、残余時間が短くなるほど小さくなる値を前記符号化レートとして決定するように構成された受信装置。
  24.  請求項23に記載の受信装置であって、
     前記符号化レート決定手段は、前記送信装置から単位時間あたりに送信されたコンテンツデータのデータ量である通信速度を取得し、当該取得された通信速度に前記残余時間を乗じた値を、前記目標再生可能時間から前記再生可能時間を減じた値により除した値を前記符号化レートとして決定するように構成された受信装置。
  25.  請求項22乃至請求項24のいずれか一項に記載の受信装置であって、
     前記符号化レート決定手段は、予め設定された変更周期が経過する毎に、前記符号化レートを決定するように構成された受信装置。
  26.  送信装置と通信可能に構成された受信装置に、
     1つのコンテンツが複数の異なる符号化レートのうちの任意の1つの符号化レートにて符号化され且つ前記送信装置により送信されたコンテンツデータを受信しながら、当該コンテンツデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するコンテンツ再生手段と、
     現時点から、前記コンテンツの再生を開始する時刻として設定された再生開始時刻までの残余時間と、前記記憶装置に記憶されている前記コンテンツデータに基づいて前記コンテンツを再生可能な時間である再生可能時間と、に基づいて、前記符号化レートを決定する符号化レート決定手段と、を実現させるとともに、
     前記コンテンツ再生手段は、前記決定された符号化レートにて符号化されたコンテンツデータを受信するように構成され、且つ、前記設定された再生開始時刻にて、前記コンテンツの再生を開始するように構成されたプログラム。
PCT/JP2010/006067 2009-11-05 2010-10-13 配信システム WO2011055490A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011539261A JP5477388B2 (ja) 2009-11-05 2010-10-13 配信システム
EP10828052.0A EP2498492B1 (en) 2009-11-05 2010-10-13 Distribution system
US13/508,025 US8752101B2 (en) 2009-11-05 2010-10-13 Distribution system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009253581 2009-11-05
JP2009-253581 2009-11-05

Publications (1)

Publication Number Publication Date
WO2011055490A1 true WO2011055490A1 (ja) 2011-05-12

Family

ID=43969734

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/006067 WO2011055490A1 (ja) 2009-11-05 2010-10-13 配信システム

Country Status (4)

Country Link
US (1) US8752101B2 (ja)
EP (1) EP2498492B1 (ja)
JP (1) JP5477388B2 (ja)
WO (1) WO2011055490A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015098395A1 (ja) 2013-12-26 2015-07-02 出光興産株式会社 屋外設置用成形体

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2556262B (en) * 2012-12-21 2018-11-21 Displaylink Uk Ltd Management of memory for storing display data
JP6943838B2 (ja) 2015-04-09 2021-10-06 デジェロ ラブス インコーポレイテッド マルチティアドエンコーディングを有するデータを配信するためのシステム、デバイス、及び方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005191786A (ja) 2003-12-25 2005-07-14 Mega Chips Corp 端末間における同期制御方法
JP2007013705A (ja) 2005-06-30 2007-01-18 Sony Corp 同時再生システム、情報処理装置、途中参加方法及び途中参加プログラム
JP2009253581A (ja) 2008-04-04 2009-10-29 Fujifilm Corp 画像処理装置、画像処理方法、およびプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3435295B2 (ja) * 1996-09-30 2003-08-11 株式会社東芝 情報送信装置およびトラヒック制御装置、並びこれらを利用した帯域運用方法および呼受け付け方法
US6370688B1 (en) * 1999-05-26 2002-04-09 Enounce, Inc. Method and apparatus for server broadcast of time-converging multi-media streams
US7543326B2 (en) * 2002-06-10 2009-06-02 Microsoft Corporation Dynamic rate control
US7606928B2 (en) * 2003-03-21 2009-10-20 Nokia Corporation Method and device for controlling receiver buffer fullness level in multimedia streaming
US20060168632A1 (en) * 2004-02-20 2006-07-27 Yoshimasa Honda Video reception device, video transmission device, and video transmission system
US8098603B2 (en) * 2005-09-30 2012-01-17 Intel Corporation Bandwidth adaptation in a wireless network
US20070133405A1 (en) * 2005-12-08 2007-06-14 Microsoft Corporation Congestion controller for network transmissions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005191786A (ja) 2003-12-25 2005-07-14 Mega Chips Corp 端末間における同期制御方法
JP2007013705A (ja) 2005-06-30 2007-01-18 Sony Corp 同時再生システム、情報処理装置、途中参加方法及び途中参加プログラム
JP2009253581A (ja) 2008-04-04 2009-10-29 Fujifilm Corp 画像処理装置、画像処理方法、およびプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SHIGEYUKI SAKAZAWA ET AL.: "A Study on Dynamic Control of Coding Rate for TCP Video Streaming", IEICE TECHNICAL REPORT, vol. 102, no. 15, 15 November 2002 (2002-11-15), pages 19 - 24, XP008157534 *
TAKAO KOYAMA ET AL.: "A Transmission Method Using Multicast Groups for Observing the Simultaneous Arrival Time Specified by SLA", THE TRANSACTIONS OF THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, vol. J87-B, no. 7, 1 July 2004 (2004-07-01), pages 929 - 939, XP008157523 *
YUKO ONOE ET AL.: "Network Information Based Rate.C, ntrols on Multimedia Streaming Servers", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 44, no. 3, 15 March 2003 (2003-03-15), pages 625 - 636, XP008156742 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015098395A1 (ja) 2013-12-26 2015-07-02 出光興産株式会社 屋外設置用成形体

Also Published As

Publication number Publication date
US20120227079A1 (en) 2012-09-06
US8752101B2 (en) 2014-06-10
EP2498492A1 (en) 2012-09-12
JP5477388B2 (ja) 2014-04-23
EP2498492A4 (en) 2015-07-08
JPWO2011055490A1 (ja) 2013-03-21
EP2498492B1 (en) 2018-08-22

Similar Documents

Publication Publication Date Title
US11463490B2 (en) Synchronous delivery of media content in a collaborative environment
US9843825B1 (en) Distributed and synchronized media switching
JP4706908B2 (ja) 同時再生システム、情報処理装置、途中参加方法及び途中参加プログラム
JP5211569B2 (ja) コンテンツ再生装置、コンテンツ再生方法、およびプログラム
JP2002218277A (ja) 情報再生方法及び情報再生システム。
WO2016127687A1 (zh) 一种同步媒体文件播放进度的方法、装置及系统
JP5095455B2 (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、および記録媒体
JP5477388B2 (ja) 配信システム
JP2009065451A (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、およびコンテンツ再生システム
JP5394307B2 (ja) 同期再生システム、同期再生方法及び同期再生プログラム
JP2011229112A (ja) コンテンツ再生装置およびそのプログラム
US9352223B2 (en) Game system, game apparatus, storage medium and game controlling method
US20110113338A1 (en) Information output apparatus and method and program
JP4496926B2 (ja) コンテンツ配信システム
US9108112B2 (en) Game system, game apparatus, storage medium, and game controlling method for game play using a plurality of game apparatuses
JP2010109620A (ja) 通信端末
JP4872984B2 (ja) 負荷制御装置
JP2006179990A (ja) 接続先通知サーバ、配信サーバ、管理サーバ、コンテンツ配信システム及びコンテンツ配信方法並びにコンピュータプログラム
JP5499494B2 (ja) コンテンツ再生システム
JP2009284052A (ja) 送受信システム
JP2008182319A (ja) ストリームデータ再生システム、携帯端末機およびストリームデータ再生方法
JP5402710B2 (ja) コンテンツ配信装置、コンテンツ配信方法、コンテンツ配信システム、及び、プログラム
JP2005318190A (ja) 映像配信方法およびシステム
JP5659503B2 (ja) 情報処理システム、情報処理方法、画像配信装置、プログラム、及び、画像出力システム
JP2009239326A (ja) 移動無線端末装置

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: 10828052

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011539261

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13508025

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2010828052

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE