WO2014068863A1 - 情報処理装置、情報処理方法及びプログラム - Google Patents

情報処理装置、情報処理方法及びプログラム Download PDF

Info

Publication number
WO2014068863A1
WO2014068863A1 PCT/JP2013/006077 JP2013006077W WO2014068863A1 WO 2014068863 A1 WO2014068863 A1 WO 2014068863A1 JP 2013006077 W JP2013006077 W JP 2013006077W WO 2014068863 A1 WO2014068863 A1 WO 2014068863A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
data
priority
buffer time
client devices
Prior art date
Application number
PCT/JP2013/006077
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
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US14/432,229 priority Critical patent/US9876835B2/en
Priority to CN201380055661.8A priority patent/CN104769960B/zh
Priority to EP13850319.8A priority patent/EP2916560B1/en
Priority to EP17204200.4A priority patent/EP3322196B1/en
Publication of WO2014068863A1 publication Critical patent/WO2014068863A1/ja
Priority to US15/805,276 priority patent/US10812556B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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/26208Content 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 the scheduling operation being performed under constraints
    • H04N21/26216Content 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 the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer

Definitions

  • the present technology relates to an information processing apparatus capable of transmitting and receiving data such as a moving image via a network, an information processing method and a program in the information processing apparatus.
  • the bandwidth is uniformly distributed to a plurality of terminals in the progressive download method. That is, as a result of the uniform distribution of the bandwidth to a plurality of terminals, the bandwidth is insufficient for moving image data encoded at a high rate, and the bandwidth is excessive for moving image data encoded at a low rate. Therefore, in a terminal that reproduces moving image data encoded at a high rate, the amount of data stored in the buffer is insufficient, and the reproduction may be interrupted.
  • a static bandwidth control between terminals as a conventional technique for solving such a problem.
  • a band corresponding to the encoding rate of moving image data scheduled to be downloaded by each terminal is set for each terminal. That is, within a single network, a terminal that reproduces moving image data encoded at a high rate is assigned a wide band sufficient for reproduction, and a terminal that reproduces moving image data encoded at a low rate is relatively A narrow band is allocated.
  • Patent Document 1 a document described in Patent Document 1 below can be cited.
  • resources bus bandwidth, CPU, etc.
  • this document it is described that a part that has not yet been downloaded is downloaded at high speed so that playback is not interrupted.
  • the above static bandwidth control has a problem in that the upper limit of the download bandwidth in the network is determined, so that it is not flexible and the bandwidth is not effectively used particularly in a wireless LAN environment. Specifically, if the reception status of radio waves deteriorates at terminals to which a large band is allocated and throughput decreases, the corresponding band will be freed, but other terminals will use the free band. The amount of storage in the buffer cannot be increased. Further, even when the radio wave reception state is recovered, the buffer storage amount reduced due to the throughput reduction is not recovered.
  • Patent Document 1 can control throughput according to a content distribution (reproduction) method in one receiving terminal, but dynamically distributes a band among a plurality of terminals. I can't.
  • an object of the present technology is to provide an information processing apparatus capable of smoothly reproducing data transmitted by a progressive download method by dynamically distributing a band among a plurality of terminals, To provide an information processing system, an information processing method, and a program.
  • an information processing apparatus includes a communication unit and a control unit.
  • the communication unit can communicate with a plurality of client devices on the same network capable of buffering and reproducing data transmitted from the server by the progressive download method.
  • the control unit can periodically acquire buffer time information indicating a buffer time in which the amount of data buffered by the plurality of client devices is expressed by a time required for reproducing the data.
  • the control unit can determine a client device having the shortest buffer time among the plurality of client devices as a priority device to which the data is to be transmitted with priority.
  • the information processing apparatus can determine the priority device based on the buffer time information. Therefore, the bandwidth is dynamically distributed among a plurality of client devices by preferentially transmitting data to the priority device. be able to. Thereby, the client device can smoothly reproduce the data transmitted by the progressive download method.
  • the information processing apparatus may be a relay node such as an access point.
  • the control unit receives the data addressed to the plurality of client devices transmitted from the server, and prioritizes the data addressed to the priority device over data destined for a client device other than the priority device.
  • the communication unit may be controllable to transmit to the priority device.
  • the information processing apparatus can relay the communication between the server and the plurality of client devices, and can efficiently distribute the bandwidth for data download reproduction in each client device.
  • the control unit may be capable of controlling the communication unit so as to receive the buffer time information from the plurality of client devices, respectively.
  • the control unit may be able to determine the priority device by comparing the received buffer time information.
  • the information processing apparatus can determine the priority device by receiving the buffer time information from each client apparatus.
  • the control unit may be capable of controlling the communication unit so as to receive encoding rate information indicating the encoding rate of the data transmitted to the plurality of client devices from the server. Further, in this case, the control unit determines whether the plurality of client devices are based on the encoding rate information, the amount of data transmitted to the plurality of client devices, and the elapsed time from the start of the transmission to the present.
  • the buffer time information may be calculable.
  • the information processing apparatus can calculate the buffer time information of each client apparatus only by receiving the data encoding rate information and without communicating with the client apparatus.
  • the control unit may be capable of controlling the communication unit so as to receive encoding rate information indicating the encoding rate of the data transmitted to the plurality of client devices from the server.
  • the control unit can set the bandwidth allocated to the client device other than the priority device to be narrowed and set the bandwidth allocated to the priority device to be wide according to the encoding rate information. It may be.
  • the control unit may be further capable of controlling the communication unit so as to transmit the data to the plurality of client devices at a speed corresponding to the set band.
  • the information processing apparatus can dynamically change the bandwidth allocated to each client device so that the buffer amount of the priority device increases according to the buffer time information.
  • the information processing apparatus may further include a reproduction unit capable of buffering and reproducing data transmitted from the server.
  • the control unit receives encoding rate information indicating the encoding rate of the data transmitted to the information processing apparatus and the plurality of client devices from the server, and receives the buffer time from the plurality of client devices.
  • the communication unit may be controllable so as to receive information.
  • the control unit may be able to determine the priority device by comparing the received buffer time information.
  • the control unit may further set the bandwidth allocated to the client device other than the priority device in accordance with the encoding rate information, and set the bandwidth allocated to the priority device to be wider. It may be possible.
  • the control unit may be capable of controlling the communication unit so as to transmit band information indicating the allocated band to the priority device and a client device other than the priority device.
  • the information processing apparatus collects the buffer time information of other client devices, determines the priority device based on it, and increases the buffer amount of the priority device, even though it is a part of the client device itself.
  • a bandwidth can be allocated to each client device, and this can be notified to each client device.
  • each client device receives data at a speed corresponding to the notified bandwidth, thereby increasing the buffer amount of the priority device.
  • An information processing method is a method of buffering data transmitted by a plurality of client devices on the same network capable of buffering and reproducing data transmitted from a server by a progressive download method. Periodically obtaining buffer time information indicating a buffer time expressed in time required for reproducing the data, and a client device having the shortest buffer time among the plurality of client devices, And determining the priority device to transmit data with priority.
  • a program causes the information processing apparatus to execute an acquisition step and a determination step.
  • the amount of data buffered by multiple client devices on the same network that can buffer and reproduce data transmitted from the server by the progressive download method is necessary for reproduction of the data.
  • the buffer time information indicating the buffer time expressed in various times is periodically acquired.
  • a client device having the shortest buffer time among the plurality of client devices is determined as a priority device to which the data is to be transmitted with priority.
  • data transmitted by the progressive download method can be smoothly reproduced by dynamically allocating the bandwidth among a plurality of terminals.
  • FIG. 1 is a diagram illustrating a network configuration of a system according to a first embodiment of the present technology. It is the block diagram which showed the hardware constitutions of the access point in the said system. It is the block diagram which showed the hardware constitutions of the terminal in the said system. It is the block diagram which showed the structure of the software module and database which a server, an access point, and a terminal in the said system have. It is the figure which showed the structure of the buffer time database which the said access point has. It is the flowchart which showed the flow of the packet transfer process to each terminal by the said access point. It is the flowchart which showed the flow of the determination process of the priority terminal based on the buffer time by the said access point.
  • 14 is a flowchart illustrating a flow of packet transfer processing to each terminal by an access point according to the third embodiment of the present technology.
  • 14 is a flowchart illustrating a flow of priority terminal determination processing based on buffer time by an access point according to a third embodiment of the present technology. It is the block diagram which showed the structure of the software module and database which a server, an access point, and a terminal in 4th Embodiment of this technique have.
  • 12 is a flowchart showing a flow of moving image data packet reception processing by a terminal according to a fourth embodiment of the present technology.
  • 14 is a flowchart illustrating a flow of moving image data reproduction processing by a terminal according to a fourth embodiment of the present technology.
  • FIG. 12 is a flowchart illustrating a flow of a band change process by a terminal according to the fourth embodiment of the present technology.
  • FIG. 1 is a diagram showing a network configuration of a system according to the present embodiment.
  • this system includes a distribution server 300, an access point 100, and a terminal 200.
  • two distribution servers 300A and 300B are shown, but three or more distribution servers 300 may exist.
  • a plurality of terminals 200 may exist for one access point 100.
  • two terminals 200 ⁇ / b> A and 200 ⁇ / b> B are shown in FIG. 3, three or more terminals 200 may be connected to one access point 100.
  • the distribution server 300 is provided on the Internet 50, for example, and distributes moving image data to the terminal 200.
  • the moving image data is transmitted by the progressive download method.
  • the encoding rate of moving image data may differ depending on the distribution server 300 or the type of moving image data.
  • the terminal 200 is connected to the wireless LAN 150 and the Internet 50 by the access point 100.
  • the terminal 200 receives the moving image data from the distribution server 300 via the access point 100 by the progressive download method, and buffers and reproduces it.
  • the terminal 200 includes, for example, a smartphone, a mobile phone, a tablet PC (Personal Computer), a desktop PC, a notebook PC, a TV, a PDA (Personal Digital Assistant), a portable AV player, an electronic book, a digital still camera, a camcorder, and a television device.
  • a smartphone a mobile phone
  • a tablet PC Personal Computer
  • a desktop PC a notebook PC
  • TV a PDA (Personal Digital Assistant)
  • portable AV player Portable AV player
  • an electronic book a digital still camera
  • camcorder a camcorder
  • Any information processing device such as a PVR (Personal Video Recorder), a game machine, a projector, or a car navigation system can be used.
  • the access point 100 receives moving image data addressed to a plurality of different terminals 200 from the distribution server 300 via the Internet 50, and transmits them to each terminal 200 under the wireless LAN 150 that is the destination.
  • the access point 100 is an information processing apparatus having a function as a router. Although details will be described later, the access point 100 according to the present embodiment assigns a priority to packets of moving image data transmitted to each subordinate terminal 200 in order to effectively use the bandwidth in the wireless LAN 150, so that each terminal 200 has a function of controlling the amount of moving image data buffer.
  • FIG. 2 is a diagram illustrating a hardware configuration of the access point 100.
  • an access point 100 includes a central processing unit (CPU) 11, a read only memory (ROM) 12, a random access memory (RAM) 13, an input / output interface 15, and a bus 14 that connects these components to each other. Is provided.
  • CPU central processing unit
  • ROM read only memory
  • RAM random access memory
  • the CPU 11 appropriately accesses the RAM 13 or the like as necessary, and comprehensively controls each block of the access point 100 while performing various arithmetic processes.
  • the CPU 11 executes, for example, moving image data reception processing from the distribution server 300, transmission processing to each terminal 200 (including the buffer amount control processing), and the like.
  • the ROM 12 is a non-volatile memory in which firmware such as an OS, a program, and various parameters to be executed by the CPU 11 is fixedly stored.
  • the RAM 13 is used as a work area for the CPU 11 and temporarily holds the OS, various programs being executed, and various data being processed.
  • the input / output interface 15 is connected with an operation receiving unit 17, a storage unit 18, a communication unit 19, and the like.
  • the operation receiving unit 17 is, for example, a push button, but may be another input device such as a touch panel.
  • the storage unit 18 is, for example, a nonvolatile memory such as an HDD (Hard Disk Drive), a flash memory (SSD; Solid State Drive), or other solid-state memory.
  • the storage unit 18 stores the OS, various applications, and various data.
  • the storage unit 18 stores a program for controlling the buffer amount of moving image data in each terminal 200, a database for the program, and the like.
  • the communication unit 19 includes a NIC for connecting to the Internet 50 and a wireless communication module for constructing the wireless LAN 150.
  • the access point 100 also has an antenna for communication by wireless LAN.
  • FIG. 3 is a diagram illustrating a hardware configuration of the terminal 200.
  • the terminal 200 includes a CPU 21, a ROM 22, a RAM 23, an input / output interface 25, and a bus 24 for connecting them together.
  • the CPU 21 appropriately accesses the RAM 23 or the like as necessary, and comprehensively controls each block of the terminal 200 while performing various arithmetic processes.
  • the CPU 21 executes, for example, moving image data download and playback processing, buffer time calculation processing described later, buffer time notification processing to the access point 100, and the like.
  • a display unit 26, an operation receiving unit 27, a storage unit 28, a communication unit 29, and the like are connected to the input / output interface 25.
  • the display unit 26 is a display device using, for example, an LCD (Liquid Crystal Display), an OELD (Organic ElectroLuminescence Display), a CRT (Cathode Ray Tube), or the like. Depending on the terminal 200, there is a device that does not incorporate the display unit 26 and is connected to an external display device.
  • the display unit 26 displays moving image data downloaded from the distribution server 300 via the access point 100 and played back.
  • the operation reception unit 27 is, for example, a pointing device such as a mouse, a keyboard, a button, a touch panel, and other input devices.
  • the operation reception unit 27 is a touch panel, the touch panel can be integrated with the display unit 26.
  • the storage unit 28 is a non-volatile memory such as an HDD (Hard Disk Drive), a flash memory (SSD; Solid State Drive), or other solid-state memory.
  • the storage unit 28 stores the OS, various applications, and various data. Particularly in the present embodiment, the storage unit 28 also functions as a cache of moving image data downloaded by the progressive download method.
  • the communication unit 19 is a wireless communication module for connecting to the wireless LAN 150 or the like, but may include a NIC or the like for wired connection to the Internet 50.
  • FIG. 4 is a diagram showing the configuration of software modules and databases that the access point 100, the terminal 200, and the distribution server 300 have.
  • the distribution server 300 includes a transmission unit 301 as a software module.
  • the transmission unit 301 transmits moving image data encoded at a predetermined encoding rate by a progressive download method.
  • the access point 100 includes a reception unit 101, a priority control flag setting module 102, a software module of the transmission unit 103, and a buffer time database 104.
  • the receiving unit 101 receives moving image data (packets) addressed to each terminal 200 from the distribution server 300.
  • the priority control flag setting module 102 receives a packet from the reception unit 101, determines a terminal to which the packet is to be transmitted preferentially as a priority terminal, sets a priority flag for the packet addressed to the priority terminal, and sends the packet to the transmission unit 103. .
  • the buffer time is the amount of moving image data stored in the buffer of each terminal 200 expressed not by the data size but by the time required to reproduce the data.
  • the priority control flag setting module 102 periodically receives buffer time information indicating the buffer time from each terminal 200 that has started receiving moving image data.
  • the priority control flag setting module 102 compares the buffer time information received from each terminal 200, and the terminal 200 having the shortest buffer time, that is, the buffer state is most tight (the possibility of underflow).
  • Terminal 200 is determined as a priority terminal, and a priority flag is set in a packet addressed to the priority terminal.
  • the priority control flag setting module 102 can compare the buffer amounts of moving image data having different encoding rates on the same scale.
  • the buffer time database 104 stores the buffer time information received from each terminal 200 together with data regarding each terminal 200.
  • the transmission unit 103 transmits a packet of moving image data to each terminal 200 based on the priority flag set by the priority control flag setting module 102.
  • the terminal 200 includes software modules including a reception unit 201, a buffer 202, a decoder 203, and a buffer time management unit 204.
  • the reception unit 201 receives a packet of moving image data transmitted from the transmission unit 103 of the access point 100 and sends it to the buffer 202.
  • the buffer 202 temporarily stores the received moving image data, and outputs the data to the decoder 203 when a predetermined amount of data is stored.
  • the decoder 203 decodes the data output from the buffer 202 and outputs it to the display unit 26 for reproduction.
  • the buffer time management unit 204 periodically calculates the buffer time from the size of the data stored in the buffer 202 and the encoding rate of the moving image data notified from the distribution server 300 in advance, and notifies the access point 100 of the buffer time. To do.
  • FIG. 5 is a diagram showing the configuration of the buffer time database 104 that the access point 100 has.
  • the buffer time database 104 includes a stream ID for identifying moving image data transmitted from the distribution server 300 to each terminal 200, an UP address and a port number of each terminal 200, and a buffer in each terminal 200. Buffer time.
  • the stream ID also has a function as the ID of the distribution server 300.
  • FIG. 6 is a flowchart showing the flow of packet transfer processing to each terminal 200 by the access point 100.
  • FIG. 7 is a flowchart showing the flow of priority terminal determination processing based on the buffer time by the access point 100. These two processes are executed in parallel.
  • the receiving unit 101 of the access point 100 receives a packet of moving image data addressed to any one of the subordinate terminals 200 from the distribution server 300 (step 61).
  • the priority control flag setting module 102 determines whether or not the received packet is destined for the priority terminal (step 62).
  • the priority control flag setting module 102 sets the priority flag to ON for the packet and sends the packet to the transmission unit 103 (step 63).
  • the priority control flag setting module 102 sets the priority flag for the packet to OFF and sends the packet to the transmission unit 103 (step 64).
  • the transmission unit 103 transmits the packet to the destination terminal 200 according to the setting of the priority flag (step 65).
  • IEEE802.11e is used to set the priority flag.
  • a packet in which the IEEE802.11e priority flag is set is preferentially transmitted without being discarded even when the transfer rate of the packet reaches the upper limit of the bandwidth in the wireless LAN 150.
  • a priority may be set in the IP Precedence of the ToS (Type of Service) field in the IP header of the packet.
  • DSCP DiffServ Code Point
  • DiffServ DS (DiffServ Code Point) in which the ToS field is redefined as a DS (DiffServ) field may be used. In these cases, the same preferential transmission processing as that in the case where IEEE802.11e is used is realized.
  • Priority setting methods are not limited to those described above, and various methods can be used.
  • the priority control flag setting module 102 of the access point 100 receives buffer time information from each terminal 200 (step 71).
  • the priority control flag setting module 102 updates the buffer time database 104 based on the received buffer time information (step 72).
  • the priority control flag setting module 102 searches the buffer time database 104 for the terminal 200 having the shortest buffer time by comparing each buffer time information (step 73).
  • the priority control flag setting module 102 determines whether or not the terminal 200 having the shortest buffer time is a terminal 200 different from the previous search (step 74). Terminal 200 is determined as a new priority terminal (step 75).
  • the terminal 200 having the shortest buffer time is directly used as the priority terminal in the processes of steps 74 to 75 described above. It is determined.
  • the priority control flag setting module 102 executes the above processing every time the buffer time information is periodically received from each terminal 200.
  • FIG. 8 is a flowchart showing the flow of a moving image data packet reception process performed by the terminal 200.
  • FIG. 9 is a flowchart showing a flow of moving image data reproduction processing by the terminal 200.
  • FIG. 10 is a flowchart showing the flow of buffer time registration processing by the terminal 200. These three processes are executed in parallel.
  • the decoder 203 writes the extracted data (step 92), decodes the data (step 93), and outputs it to the display unit 26 (step 94).
  • the buffer time management unit 204 of the terminal 200 detects that a timer set at a predetermined time interval has expired (step 101).
  • the buffer time management unit 204 checks the amount of data stored in the buffer 202 at that time (step 102).
  • the buffer time management unit 204 calculates the buffer time based on the data amount of the buffer 202 and the encoding rate of the currently received moving image data (step 103). Specifically, the buffer time management unit 204 calculates a value obtained by dividing the data amount by the encoding rate as the buffer time.
  • the buffer time management unit 204 registers (transmits) the buffer time information indicating the calculated buffer time to the access point 100 (step 104).
  • the buffer time management unit 204 sets a timer for the next buffer time registration process (step 105).
  • the buffer time management unit 204 repeats the above processing every time the timer expires.
  • FIG. 11, FIG. 12, and FIG. 13 are diagrams schematically showing moving image data reproduction processing in a conventional network environment.
  • Both of these network environments are constructed by the Internet and a wireless LAN as in the present embodiment.
  • Two terminals receive and reproduce moving image data transmitted from different distribution servers (distribution server A and distribution server B), respectively, by the progressive download method via an access point. .
  • the encoding rate of the moving image data M1 received and reproduced by the terminal A from the distribution server A is 2 Mbps
  • the encoding rate of the moving image data M2 received and reproduced by the terminal B from the distribution server B is 6 Mbps.
  • the effective throughput of moving image data is 10 Mbps.
  • each terminal uses 10 Mbps which is an effective throughput by 5 Mbps.
  • the throughput of the terminal A is larger than the encoding rate of the moving image data M1
  • the moving image data M1 is continuously stored in the buffer, and the data is reproduced without interruption.
  • terminal B since the throughput is smaller than the encoding rate of moving image data M2, the buffer underflows, and the reproduction of moving image data is interrupted.
  • FIG. 13 shows the situation.
  • the terminal B cannot recover the buffer storage amount that has been reduced when the throughput is reduced due to the deterioration of the reception status.
  • FIG. 14 is a diagram schematically showing moving image data reproduction processing realized in the present embodiment as compared with the conventional network environment.
  • the access point 100 and each terminal 200 use the data storage amount in the buffer 202 of each terminal 200 as the buffer time. Treat as.
  • the access point 100 can compare the moving image data M1 and M2 having different encoding rates on the same scale, and preferentially transfers the data to the terminal 200 in which the state of the buffer 202 is most tight.
  • the encoding rate of moving image data received by the terminal 200A is 2 Mbps
  • the encoding rate of moving image data received by the terminal 200B is 6 Mbps.
  • the data size of the data stored in the buffer 202B of the terminal 200B is larger.
  • the buffer time of the data stored in the buffer 202A of the terminal 200A is 2 seconds
  • the buffer time of the data stored in the buffer of the terminal 200B is 1 second. It can be said that is more tight.
  • the access point 100 determines the terminal 200B as a priority terminal, and sets a priority flag for the packet transmitted to the terminal 200B, thereby transmitting the packet preferentially to the terminal 200B.
  • the access point 100 can reproduce the moving image data on all the subordinate terminals 200 without interruption as much as possible while always utilizing the bandwidth of the wireless LAN 150 to the maximum.
  • the access point 100 regularly acquires buffer time information from each terminal 200.
  • the access point 100 calculates the buffer time of each terminal 200 by itself.
  • FIG. 15 is a block diagram illustrating the configuration of software modules and databases included in the distribution server 300, the access point 100, and the terminal 200 in the present embodiment.
  • the access point 100 instead of eliminating the buffer time management unit 204 of the terminal 200, the access point 100 A buffer time management unit 105 is provided.
  • the distribution server 300 has a bit rate notification unit 302 as compared with the first embodiment.
  • the buffer time management unit 105 of the access point 100 inquires the bit rate (encoding rate) of the moving image data packet transmitted to each terminal 200 from the distribution server 300, and acquires bit rate information indicating the bit rate. . Then, when a certain terminal 200 starts downloading moving image data, the buffer time management unit 105 determines that the terminal 200 based on the data size of the packet transmitted to the terminal 200 and the bit rate information of the moving image data. Calculate the buffer time.
  • the buffer time management unit 105 has a buffer time database similar to that shown in FIG. 5 of the first embodiment, and the calculated buffer time is stored in the database.
  • the bit rate notification unit 302 of the distribution server 300 In response to the request from the buffer time management unit 105, the bit rate notification unit 302 of the distribution server 300 notifies the access point 100 of the bit rate of the moving image data packet addressed to each terminal 200.
  • FIG. 16 is a flowchart showing a flow of packet transfer processing to each terminal 200 by the access point 100.
  • FIG. 17 is a flowchart showing the flow of priority terminal determination processing based on the buffer time by the access point 100. These two processes are executed in parallel.
  • the access point 100 inquires the bit rate of a packet of moving image data transmitted to each terminal 200 from the distribution server 300, and indicates the bit rate. Get information.
  • the buffer time management unit 105 of the access point 100 detects that the timer set at a predetermined time interval has expired (step 171).
  • the buffer time management unit 105 acquires the size of data received from the distribution server 300 and transmitted to each terminal 200 from the transmission unit 103 (step 172).
  • the buffer time management unit 105 starts from the previously acquired bit rate of the data addressed to each terminal 200, the acquired transmitted data size, and the time when the transmission is started (the time when the terminal 200 starts downloading). Based on the elapsed time up to the present time, the buffer time of each terminal 200 is calculated (step 173).
  • the buffer time is calculated by the following equation, where D is the acquired transmitted data size, T1 is the time when the terminal 200 starts downloading, T2 is the current time, and R is the bit rate.
  • the priority control flag setting module 102 searches the terminal 200 having the shortest buffer time by comparing each buffer time information from the buffer time database in cooperation with the buffer time management unit 105 (step 174). .
  • the priority control flag setting module 102 determines whether or not the terminal 200 having the shortest buffer time is a terminal 200 different from the previous search (step 175).
  • the priority control flag setting module determines the terminal 200 as a new priority terminal, sets a priority flag to a packet addressed to the priority terminal, and transmits the packet.
  • the data is sent to the unit 103 (step 176).
  • the terminal 200 having the shortest buffer time is directly used as the priority terminal in the processing of steps 175 to 176. It is determined.
  • the priority control flag setting module 102 sets a timer for the next priority terminal determination process (step 177).
  • the priority control flag setting module 102 repeats the above processing every time the timer expires.
  • the access point 100 receives the encoding rate of the moving image data addressed to the terminal 200 from the distribution server 300, thereby calculating the buffer time of each terminal 200 and determining the priority terminal. be able to.
  • the access point 100 uses a priority control method such as IEEE802.11e or a ToS field in an IP header in order to preferentially transmit a packet to a priority terminal.
  • a priority control method such as IEEE802.11e or a ToS field in an IP header
  • the access point 100 dynamically changes the bandwidth allocated for each terminal 200 in the wireless LAN 150 according to the encoding rate of the moving image data addressed to each terminal 200, thereby addressing the priority terminal. Priority is given to the packet.
  • FIG. 18 is a block diagram illustrating the configuration of software modules and databases included in the distribution server 300, the access point 100, and the terminal 20 in the present embodiment.
  • the access point 100 includes a bandwidth control module 106 instead of the priority control flag setting module 102 that was provided in the first and second embodiments described above. Yes.
  • the configuration of other modules included in the access point 100, the terminal 200, and the distribution server 300 is the same as the configuration of FIG. 4 in the first embodiment. However, instead of this configuration, a configuration in which the priority control flag setting module 102 in the configuration of FIG. 15 in the second embodiment is changed to the bandwidth control module 106 may be adopted.
  • the bandwidth control module 106 acquires buffer time information from each terminal 200 and determines a priority device by comparing them. Further, the bandwidth control module 106 acquires the encoding rate of the moving image data addressed to each terminal 200 from the distribution server 300, narrows the bandwidth allocated to the terminal 200 other than the priority terminal according to the encoding rate, The bandwidth is controlled so as to widen the bandwidth allocated to.
  • FIG. 19 is a diagram showing a configuration of the buffer time database 104 included in the access point 100 in the present embodiment.
  • the encoding rate of moving image data is added as compared with that described in FIG. 5 in the first embodiment. This is because an encoding rate is necessary to calculate the bandwidth allocated to each terminal 200.
  • FIG. 20 is a flowchart showing the flow of packet transfer processing to each terminal 200 by the access point 100.
  • FIG. 21 is a flowchart showing the flow of priority terminal determination processing based on the buffer time by the access point 100. These two processes are executed in parallel.
  • the receiving unit 101 of the access point 100 receives a packet of moving image data addressed to any one of the subordinate terminals 200 from the distribution server 300 (step 201).
  • the bandwidth control module 106 writes the received data in its own buffer (step 202).
  • the bandwidth control module 106 extracts data addressed to each terminal 200 from the buffer according to the bandwidth allocated to each terminal 200 in the priority terminal determination process described later (step 203).
  • the bandwidth control module 106 cooperates with the transmission unit 103 to transmit the extracted data to each terminal 200 at a speed corresponding to the bandwidth assigned to each terminal 200 (step 204).
  • the bandwidth control module 106 periodically receives buffer time information from each terminal 200 (step 211).
  • the bandwidth control module 106 updates the buffer time database 104 based on the received buffer time information (step 212).
  • the bandwidth control module 106 searches the buffer time database 104 for the terminal 200 having the shortest buffer time by comparing each buffer time information (step 213).
  • the bandwidth control module 106 determines whether or not the terminal 200 having the shortest buffer time is a terminal 200 different from the previous search time (step 214).
  • the bandwidth control module 106 determines the terminal 200 as a new priority terminal and allocates the bandwidth to the priority terminal and the other terminals 200. Is newly calculated.
  • the bandwidth control module 106 allocates a bandwidth that is 50% of the encoding rate of the moving image data received by each non-priority terminal to the non-priority terminals, Assign to the preferred terminal.
  • the encoding rate of the moving image data received by the priority terminal is 2 Mbps
  • the encoding rates of the moving image data received by the two non-priority terminals are 4 Mbps and 1 Mbps, respectively.
  • the bandwidth allocated to the priority terminal is 4.5 Mbps, which is obtained by adding 2 Mbps and 0.5 Mbps vacated by the allocation of the bandwidth to each non-priority terminal to the encoding rate 2 Mbps of the moving image data received by the priority terminal. It becomes.
  • the terminal 200 having the shortest buffer time is directly used as the priority terminal in the processes in steps 214 to 215. It is determined.
  • the bandwidth control module 106 executes the above processing every time the buffer time information is periodically received from each terminal 200.
  • the access point 100 narrows the bandwidth allocated to the non-priority terminals according to the buffer time of each terminal 200 and the encoding rate of the moving image data received by each terminal 200, It can be set to widen the bandwidth allocated to the priority device. Then, the access point 100 distributes the band according to the buffer tightness of each terminal 200 by transmitting moving image data to each terminal 200 at a speed corresponding to the set band, and Uninterrupted playback can be realized.
  • the bandwidth is dynamically allocated to each terminal 200 according to the buffer time and the encoding rate.
  • this dynamic bandwidth control is realized not by the access point 100 but by a plurality of terminals 200 communicating with each other.
  • FIG. 22 is a block diagram illustrating the configuration of software modules and databases that the distribution server 300, the access point 100, and the terminal 200 have in this embodiment.
  • the bandwidth control module 106 possessed by the access point 100 is eliminated, and it is merely a buffer. 107 is substituted.
  • each terminal 200 has a bandwidth control module 205 and a buffer time management unit 204 instead.
  • a terminal (priority determination terminal) 200 ⁇ / b> A responsible for priority determination processing has a buffer time database 206.
  • the buffer time management unit 204 of the priority determination terminal 200A receives the buffer time information from the buffer time management unit 204 of the other terminal 200B, and registers it in the buffer time database 206 together with its own buffer time information.
  • the bandwidth control module 205 of the priority determination terminal 200A determines a bandwidth to be allocated to each terminal 200 by the same method as the bandwidth control module 106 of the access point 100 in the third embodiment, and uses it as another terminal. 200B is notified.
  • the bandwidth control module 205 of the terminal 200B downloads moving image data at a speed corresponding to the allocated bandwidth. As a result, the same dynamic bandwidth control processing as that of the third embodiment is realized.
  • FIG. 23 is a flowchart showing a flow of packet reception processing in the terminal 200.
  • FIG. 24 is a flowchart showing the flow of playback processing in terminal 200.
  • FIG. 25 is a flowchart showing the flow of buffer time registration processing in terminal 200.
  • FIG. 26 is a flowchart showing the flow of band change processing in terminal 200. These processes are executed in parallel.
  • Packet reception processing As shown in FIG. 23, the packet reception process flow in the terminal 200 is the same as the process flow (steps 81 and 82) described with reference to FIG. 8 in the first embodiment (steps 231 and 232). ), The description is omitted here.
  • the flow of playback processing in the terminal 200 is the same as the processing flow (steps 91 to 94) described with reference to FIG. 9 in the first embodiment (steps 241 to 244). The description is omitted here.
  • the flow of the buffer time registration process in terminal 200 is the same as the process flow (steps 101 to 105) described in FIG. 10 in the first embodiment. Since this is the same (steps 251 to 255), the description is omitted here.
  • the priority determination terminal 200A receives the buffer time information from the other terminal 200B, calculates the buffer time of its own buffer 202A by the same calculation method, and collectively registers them in the buffer time database 206A.
  • the bandwidth control module 205A of the priority determination terminal 200A uses the same method as that shown in FIG. 21 of the third embodiment, based on the buffer time information received from each terminal 200B. And a bandwidth to be allocated to each terminal 200 is determined. Further, the bandwidth control module 205A notifies the information indicating the bandwidth allocated to each terminal 200B to each terminal 200B.
  • the bandwidth control module 205B of the terminal 200B receives a notification of the allocated bandwidth (change) from the priority determination terminal 200A (step 261).
  • the bandwidth control module 205B changes the bandwidth setting so as to download moving image data from the distribution server 300 via the access point 100 at a speed corresponding to the allocated bandwidth included in the notification (step 262). . This process is repeated every time a bandwidth change notification is received from the priority determination terminal 200A.
  • the priority determination terminal 200A allocates the bandwidth used by each terminal 200 in the wireless LAN 150 itself without depending on the processing of the access point 100, so that the terminal 200 with less buffer time.
  • the amount of buffer can be increased.
  • each terminal 200 receives and reproduces moving image data by the progressive download method.
  • data received and reproduced by the present technology is not limited to moving image data, and may be audio data, for example.
  • the distribution server 300 is provided on the Internet 50.
  • the distribution server 300 may be provided on another network such as a LAN.
  • the present technology can also be applied to a business system.
  • the present technology can also be applied to a system in which moving image content being produced at a broadcasting station or the like is transmitted from a certain site (server) to another site (terminal).
  • a communication unit capable of communicating with a plurality of client devices on the same network capable of buffering and reproducing data transmitted by a progressive download method from a server,
  • the buffer time information indicating the buffer time representing the amount of data buffered in the plurality of client devices is expressed by the time required for reproducing the data is periodically acquired, and the shortest of the plurality of client devices
  • An information processing apparatus comprising: a control unit capable of determining a client device having the buffer time as a priority device to which the data is to be transmitted with priority.
  • the control unit receives the data addressed to the plurality of client devices transmitted from the server, and prioritizes the data addressed to the priority device over data destined for a client device other than the priority device.
  • An information processing apparatus capable of controlling the communication unit to transmit to the priority device.
  • the controller is The communication unit can be controlled to receive the buffer time information from the plurality of client devices, respectively.
  • the information processing apparatus capable of determining the priority device by comparing the received buffer time information.
  • the controller is The communication unit can be controlled to receive encoding rate information indicating the encoding rate of the data transmitted to the plurality of client devices from the server,
  • the buffer time information of the plurality of client devices can be calculated based on the encoding rate information, the amount of data transmitted to the plurality of client devices, and the elapsed time from the start of the transmission to the present Information processing device.
  • the controller is The communication unit can be controlled to receive encoding rate information indicating the encoding rate of the data transmitted to the plurality of client devices from the server, According to the encoding rate information, it is possible to set so as to narrow the bandwidth allocated to the client device other than the priority device, and to set the bandwidth allocated to the priority device wide, The information processing apparatus capable of controlling the communication unit to transmit the data to the plurality of client devices at a speed corresponding to the set band.
  • a playback unit capable of buffering and playing back data transmitted from the server;
  • the controller is From the server, receive the encoding rate information indicating the encoding rate of the data transmitted to the information processing apparatus and the plurality of client devices, respectively, and receive the buffer time information from the plurality of client devices, respectively.
  • the communication unit can be controlled;
  • the priority device can be determined by comparing the received buffer time information; According to the encoding rate information, it is possible to set so as to narrow a band allocated to a client device other than the priority device, and to set a bandwidth allocated to the priority device,
  • the information processing apparatus capable of controlling the communication unit to transmit band information indicating the allocated band to the priority device and a client device other than the priority device.
  • ... Terminal 50 ... Internet 100 ... Access point 101 ... Reception part 102 ... Priority control flag setting module 103 ... Transmission part 104 ... Buffer time database 105 ... Buffer time management part 106 ... Bandwidth control module 107 ... Buffer 150 ... Wireless LAN 200 (200A, 200B) ... terminal 201 ... receiving unit 202 (202A, 202B) ... buffer 203 (203A, 203B) ... decoder 204 (204A, 204B) ... buffer time management unit 205 (205A, 205B) ... bandwidth control module 206 (206A, 206B) ... Buffer time database 300 (300A, 300B) ... Distribution server 301 ... Transmission unit 302 ... Bit rate notification unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

 情報処理装置は、通信部と制御部とを有する。上記通信部は、サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器と通信可能である。上記制御部は、上記複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得可能である。また制御部は、上記複数のクライアント機器のうち、最も短い上記バッファ時間を有するクライアント機器を、上記データを優先して送信すべき優先機器として決定することが可能である。

Description

情報処理装置、情報処理方法及びプログラム
 本技術は、ネットワークを介して動画像等のデータを送受信することが可能な情報処理装置、当該情報処理装置における情報処理方法及びプログラムに関する。
 従来から、ネットワークを介した動画像等のデータの再生方式として、HTTPプロトコルを用いてデータをダウンロードしながら再生するプログレッシブダウンロード方式が知られている。
 このプログレッシブダウンロード方式により、あるネットワークにおいて複数の端末が同時に動画像データをダウンロードして再生する場合、それぞれについてある程度の帯域が確保されているにも関わらず、端末によっては動画像データを円滑に再生できない場合がある。
 これは、プログレッシブダウンロード方式では、複数の端末に対して均一に帯域が配分されてしまうためである。すなわち、複数の端末に帯域が均一に配分された結果、高レートでエンコードされた動画像データについては帯域が不足し、低レートでエンコードされた動画像データについては帯域が過多になる。したがって高レートでエンコードされた動画像データを再生する端末では、バッファにおけるデータの蓄積量が足りなくなり、その再生が中断してしまう場合がある。
 このような問題を解決する従来技術として、端末間における静的な帯域制御がある。この技術では、端末毎に、各端末がダウンロードする予定の動画像データのエンコードレートに対応した帯域が設定される。すなわち、1つのネットワーク内で、高レートでエンコードされた動画像データを再生する端末にはその再生に十分な広い帯域が割り当てられ、低レートでエンコードされた動画像を再生する端末には比較的狭い帯域が割り当てられる。
 また、プログレッシブダウンロード方式に関連した文献としては、下記特許文献1に記載のものが挙げられる。この特許文献1には、受信端末が、プログレッシブダウンロードを指示された場合に、受信端末内の他のストリーム処理で利用しているリソース(バス帯域、CPU等)をプログレッシブダウンロード処理に動的に割当て、ダウンロードが済んでいない部分を高速ダウンロードし、再生が途切れないようにすることが記載されている。
特開2009-188981号公報
 しかしながら、上記静的な帯域制御では、ネットワーク内におけるダウンロード帯域の上限が決まっているため、柔軟性に欠け、特に無線LAN環境において帯域が有効活用されないという問題がある。具体的には、大きな帯域が割り当てられた端末において電波の受信状況が悪化し、スループットが低下した場合、その分の帯域が空くことになるが、他の端末は、その空いた帯域を利用してそのバッファの蓄積量を増やすことはできない。また、電波の受信状況が回復した場合でも、スループット低下によって減ったバッファの蓄積量は回復されない。
 また、上記特許文献1に記載の技術は、1つの受信端末において、コンテンツの配信(再生)方式に応じてスループットを制御することはできるが、複数の端末間で動的に帯域を分配することはできない。
 以上のような事情に鑑み、本技術の目的は、複数の端末間で動的に帯域を分配することで、プログレッシブダウンロード方式で送信されたデータを円滑に再生させることが可能な情報処理装置、情報処理システム、情報処理方法及びプログラムを提供することにある。
 上述の課題を解決するため、本技術の一形態に係る情報処理装置は、通信部と制御部とを有する。上記通信部は、サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器と通信可能である。上記制御部は、上記複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得可能である。また制御部は、上記複数のクライアント機器のうち、最も短い上記バッファ時間を有するクライアント機器を、上記データを優先して送信すべき優先機器として決定することが可能である。
 これにより情報処理装置は、バッファ時間情報を基に優先機器を決定することができるため、その優先機器へデータを優先して送信することで、複数のクライアント機器間で動的に帯域を分配することができる。これによりクライアント機器は、プログレッシブダウンロード方式で送信されたデータを円滑に再生することができる。この場合、情報処理装置は、アクセスポイント等の中継ノードであっても構わない。
 上記制御部は、上記サーバから送信された、上記複数のクライアント機器宛の上記データをそれぞれ受信し、上記優先機器宛の上記データを、上記優先機器以外のクライアント機器宛のデータよりも優先して上記優先機器へ送信するように上記通信部を制御可能であってもよい。
 これにより情報処理装置は、サーバと複数のクライアント機器との通信を中継して、各クライアント機器におけるデータダウンロード再生用の帯域を効率よく分配することができる。
 上記制御部は、上記複数のクライアント装置から、上記バッファ時間情報をそれぞれ受信するように上記通信部を制御可能であってもよい。またこの場合制御部は、上記受信されたバッファ時間情報を比較することで上記優先機器を決定可能であってもよい。
 これにより情報処理装置は、各クライアント装置からバッファ時間情報を受信することで、優先機器を決定することができる。
 上記制御部は、上記サーバから、上記複数のクライアント機器宛に送信された上記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように上記通信部を制御可能であってもよい。またこの場合制御部は、上記エンコードレート情報と、上記複数のクライアント機器へ送信したデータのデータ量と、当該送信を開始してから現在までの経過時間とを基に、上記複数のクライアント機器の上記バッファ時間情報を算出可能であってもよい。
 これにより情報処理装置は、データのエンコードレート情報を受信するだけで、クライアント機器と通信することなく、各クライアント装置のバッファ時間情報を算出することができる。
 上記制御部は、上記サーバから、上記複数のクライアント機器宛に送信された上記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように上記通信部を制御可能であってもよい。この場合制御部は、上記エンコードレート情報に応じて、上記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、上記優先機器に割り当てられる帯域を広くするように設定することが可能であってもよい。この場合さらに制御部は、上記設定された帯域に対応する速度で上記データを上記複数のクライアント機器へ送信するように上記通信部を制御可能であってもよい。
 これにより情報処理装置は、バッファ時間情報に応じて、優先機器のバッファ量が増加するように各クライアント機器に割り当てられる帯域を動的に変更することができる。
 上記情報処理装置は、上記サーバから送信されたデータをバッファリングして再生することが可能な再生部をさらに有してもよい。この場合上記制御部は、上記サーバから、当該情報処理装置宛及び上記複数のクライアント機器宛に送信された上記データのエンコードレートをそれぞれ示すエンコードレート情報を受信し、複数のクライアント機器から上記バッファ時間情報をそれぞれ受信するように上記通信部を制御可能であってもよい。またこの場合制御部は、上記受信されたバッファ時間情報を比較することで上記優先機器を決定可能であってもよい。この場合さらに制御部は、上記エンコードレート情報に応じて、上記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、上記優先機器に割り当てられる帯域を広くするように設定することが可能であってもよい。またこの場合さらに制御部は、上記優先機器及び当該優先機器以外のクライアント機器へ、上記割り当てられた帯域を示す帯域情報を送信するように上記通信部を制御可能であってもよい。
 これにより情報処理装置は、自らもクライアント機器の一部でありながら、他のクライアント機器のバッファ時間情報を収集し、それを基に優先機器を決定して、優先機器のバッファ量が増加するように各クライアント機器に帯域を割り当て、それを各クライアント機器へ通知することができる。これにより各クライアント機器が、通知を受けた帯域に対応した速度でデータを受信することで、優先機器のバッファ量が増加する。
 本技術の他の形態に係る情報処理方法は、サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得すること、及び、上記複数のクライアント機器のうち、最も短い上記バッファ時間を有するクライアント機器を、上記データを優先して送信すべき優先機器として決定することを含む。
 本技術のまた別の形態に係るプログラムは、情報処理装置に、取得ステップと決定ステップとを実行させる。上記取得ステップでは、サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報が定期的に取得される。上記決定ステップでは、上記複数のクライアント機器のうち、最も短い上記バッファ時間を有するクライアント機器が、上記データを優先して送信すべき優先機器として決定される。
 以上のように、本技術によれば、複数の端末間で動的に帯域を分配することで、プログレッシブダウンロード方式で送信されたデータを円滑に再生させることができる。
本技術の第1の実施形態におけるシステムのネットワーク構成を示した図である。 上記システムにおけるアクセスポイントのハードウェア構成を示したブロック図である。 上記システムにおける端末のハードウェア構成を示したブロック図である。 上記システムにおけるサーバ、アクセスポイント及び端末が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。 上記アクセスポイントが有するバッファ時間データベースの構成を示した図である。 上記アクセスポイントによる、各端末へのパケット転送処理の流れを示したフローチャートである。 上記アクセスポイントによる、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。 上記端末による動画像データのパケットの受信処理の流れを示したフローチャートである。 上記端末による動画像データの再生処理の流れを示したフローチャートである。 上記端末によるバッファ時間登録処理の流れを示したフローチャートである。 従来のネットワーク環境における動画像データの再生処理の概要を示した図である。 従来のネットワーク環境における動画像データの再生処理の概要を示した図である。 従来のネットワーク環境における動画像データの再生処理の概要を示した図である。 本技術の第1の実施形態における動画像データの再生処理の概要を示した図である。 本技術の第2の実施形態におけるサーバ、アクセスポイント及び端末が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。 本技術の第2の実施形態に係るアクセスポイントによる、各端末へのパケット転送処理の流れを示したフローチャートである。 本技術の第2の実施形態に係るアクセスポイントによる、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。 本技術の第3の実施形態におけるサーバ、アクセスポイント及び端末が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。 本技術の第3の実施形態においてアクセスポイントが有するバッファ時間データベースの構成を示した図である。 本技術の第3の実施形態に係るアクセスポイントによる、各端末へのパケット転送処理の流れを示したフローチャートである。 本技術の第3の実施形態に係るアクセスポイントによる、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。 本技術の第4の実施形態におけるサーバ、アクセスポイント及び端末が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。 本技術の第4の実施形態に係る端末による動画像データのパケットの受信処理の流れを示したフローチャートである。 本技術の第4の実施形態に係る端末による動画像データの再生処理の流れを示したフローチャートである。 本技術の第4の実施形態に係る端末によるバッファ時間登録処理の流れを示したフローチャートである。 本技術の第4の実施形態に係る端末による帯域変更処理の流れを示したフローチャートである。
 以下、本技術に係る実施形態を、図面を参照しながら説明する。
<第1の実施形態>
 まず、本技術の第1の実施形態を説明する。
[システムのネットワーク構成]
 図1は、本実施形態に係るシステムのネットワーク構成を示した図である。
 同図に示すように、このシステムは、配信サーバ300、アクセスポイント100及び端末200を有する。配信サーバ300は複数存在しうる。同図では2台の配信サーバ300A及び300Bが示されているが、3台以上の配信サーバ300が存在していてもよい。また端末200も、1つのアクセスポイント100に対して複数存在しうる。同図では2台の端末200A及び200Bが示されているが、1つのアクセスポイント100に3台以上の端末200が接続されていてもよい。
 配信サーバ300は、例えばインターネット50上に設けられ、端末200へ動画像データを配信する。動画像データはプログレッシブダウンロード方式により送信される。配信サーバ300または動画像データの種類等によって、動画像データのエンコードレートは異なる場合がある。
 端末200は、アクセスポイント100によって無線LAN150及びインターネット50に接続される。端末200は、アクセスポイント100を介して、上記配信サーバ300から動画像データをプログレッシブダウンロード方式により受信し、バッファリングして再生する。
 端末200は、例えばスマートフォン、携帯電話機、タブレットPC(Personal Computer)、デスクトップPC、ノートブックPC、TV、PDA(Personal Digital Assistant)、携帯型AVプレイヤー、電子ブック、デジタルスチルカメラ、カムコーダ、テレビジョン装置、PVR(Personal Video Recorder)、ゲーム機器、プロジェクター、カーナビゲーションシステム等、あらゆる情報処理装置であり得る。
 アクセスポイント100は、インターネット50を介して配信サーバ300から異なる複数の端末200宛の動画像データを受信し、それらを、その宛先である無線LAN150の配下の各端末200へ送信する。
 アクセスポイント100は、ルータとしての機能を有する情報処理装置である。詳細は後述するが、本実施形態におけるアクセスポイント100は、無線LAN150における帯域を有効活用すべく、配下の各端末200に送信される動画像データのパケットに優先順位を付与することで、各端末200における動画像データのバッファ量を制御する機能を有する。
[アクセスポイントのハードウェア構成]
 図2は、上記アクセスポイント100のハードウェア構成を示した図である。同図に示すように、アクセスポイント100は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、入出力インタフェース15、及び、これらを互いに接続するバス14を備える。
 CPU11は、必要に応じてRAM13等に適宜アクセスし、各種演算処理を行いながらアクセスポイント100の各ブロック全体を統括的に制御する。本実施形態では、CPU11は、例えば配信サーバ300からの動画像データの受信処理や各端末200への送信処理(上記バッファ量の制御処理を含む)等を実行する。
 ROM12は、CPU11に実行させるOS、プログラムや各種パラメータなどのファームウェアが固定的に記憶されている不揮発性のメモリである。RAM13は、CPU11の作業用領域等として用いられ、OS、実行中の各種プログラム、処理中の各種データを一時的に保持する。
 入出力インタフェース15には、操作受付部17、記憶部18、通信部19等が接続される。
 操作受付部17は、例えばプッシュボタンであるが、タッチパネル等の他の入力装置であってもよい。
 記憶部18は、例えばHDD(Hard Disk Drive)や、フラッシュメモリ(SSD;Solid State Drive)、その他の固体メモリ等の不揮発性メモリである。当該記憶部18には、上記OSや各種アプリケーション、各種データが記憶される。特に本実施形態において、記憶部18には、上記各端末200における動画像データのバッファ量を制御するためのプログラム及びそのためのデータベース等が記憶される。
 通信部19は、インターネット50に接続するためのNIC、及び、無線LAN150を構築するための無線通信モジュールを有する。図示しないが、アクセスポイント100は、無線LANによる通信用のアンテナも有する。
[端末のハードウェア構成]
 図3は、上記端末200のハードウェア構成を示した図である。同図に示すように、端末200は、CPU21、ROM22、RAM23、入出力インタフェース25、及び、これらを互いに接続するバス24を備える。
 CPU21は、必要に応じてRAM23等に適宜アクセスし、各種演算処理を行いながら端末200の各ブロック全体を統括的に制御する。本実施形態では、CPU21は、例えば、動画像データのダウンロード及び再生処理、後述するバッファ時間の算出処理及びアクセスポイント100へのバッファ時間の通知処理等を実行する。
 ROM22及びRAM23の機能は上記アクセスポイント100のROM12及びRAM13の機能と同様であるため説明を省略する。
 入出力インタフェース25には、表示部26、操作受付部27、記憶部28、通信部29等が接続される。
 表示部26は、例えばLCD(Liquid Crystal Display)、OELD(Organic ElectroLuminescence Display)、CRT(Cathode Ray Tube)等を用いた表示デバイスである。端末200によっては、自身では表示部26を内蔵しておらず、外部の表示装置に接続されている機器もある。当該表示部26は、配信サーバ300からアクセスポイント100を介してダウンロードされ再生された動画像データを表示する。
 操作受付部27は、例えばマウス等のポインティングデバイス、キーボード、ボタン、タッチパネル、その他の入力装置である。操作受付部27がタッチパネルである場合、そのタッチパネルは表示部26と一体となり得る。
 記憶部28は、例えばHDD(Hard Disk Drive)や、フラッシュメモリ(SSD;Solid State Drive)、その他の固体メモリ等の不揮発性メモリである。当該記憶部28には、上記OSや各種アプリケーション、各種データが記憶される。特に本実施形態において、記憶部28は、プログレッシブダウンロード方式によりダウンロードされた動画像データのキャッシュとしても機能する。
 通信部19は、無線LAN150等に接続するための無線通信モジュールであるが、インターネット50有線接続するためのNIC等を有していても構わない。
[サーバ、アクセスポイント及び端末のモジュール構成]
 図4は、上記アクセスポイント100、端末200及び配信サーバ300が有するソフトウェアモジュール及びデータベースの構成を示した図である。
 同図に示すように、配信サーバ300は、ソフトウェアモジュールとしての送信部301を有する。
 送信部301は、端末200からの要求に応じて、所定のエンコードレートでエンコードされた動画像データを、プログレッシブダウンロード方式により送信する。
 アクセスポイント100は、受信部101、優先制御フラグ設定モジュール102及び送信部103の各ソフトウェアモジュール及びバッファ時間データベース104を有する。
 受信部101は、配信サーバ300から、各端末200宛の動画像データ(パケット)を受信する。
 優先制御フラグ設定モジュール102は、受信部101からパケットを受け取り、優先的にパケットを送信すべき端末を優先端末として決定し、当該優先端末宛のパケットに優先フラグを設定して送信部103へ送る。
 本実施形態において上記優先端末の決定処理には、「バッファ時間」という概念が用いられる。バッファ時間とは、各端末200のバッファに蓄積されている動画像データの量が、データサイズではなく、当該データの再生に必要な時間で表現されたものである。
 優先制御フラグ設定モジュール102は、動画像データの受信を開始した各端末200から、上記バッファ時間を示すバッファ時間情報を定期的に受信する。そして優先制御フラグ設定モジュール102は、各端末200から受信したバッファ時間情報を比較し、最も少ないバッファ時間を有する端末200、すなわちバッファの状態が最も逼迫している(アンダーフローの可能性がある)端末200を優先端末と決定し、優先端末宛のパケットに優先フラグを設定する。
 各端末200におけるバッファ量がバッファ時間として表現されることで、優先制御フラグ設定モジュール102は、エンコードレートの異なる動画像データのバッファ量を同じ尺度で比較することができる。
 バッファ時間データベース104は、上記各端末200から受信したバッファ時間情報を、各端末200に関するデータと共に記憶する。
 送信部103は、上記優先制御フラグ設定モジュール102が設定した優先フラグに基づいて、各端末200へ動画像データのパケットを送信する。
 端末200は、受信部201、バッファ202、デコーダ203及びバッファ時間管理部204の各ソフトウェアモジュールを有する。
 受信部201は、上記アクセスポイント100の送信部103から送信された動画像データのパケットを受信し、バッファ202へ送る。
 バッファ202は、上記受信された動画像データを一時的に蓄積し、所定のデータ量が蓄積された場合に、当該データをデコーダ203へ出力する。
 デコーダ203は、上記バッファ202から出力されたデータをデコードし、上記表示部26へ出力して再生させる。
 バッファ時間管理部204は、上記バッファ202に蓄積されたデータのサイズと、予め配信サーバ300から通知された動画像データのエンコードレートとから、バッファ時間を定期的に算出し、アクセスポイント100へ通知する。
[バッファ時間データベースの構成]
 図5は、上記アクセスポイント100が有するバッファ時間データベース104の構成を示した図である。
 同図に示すように、バッファ時間データベース104は、配信サーバ300から各端末200へ送信された動画像データを識別するストリームIDと、各端末200のUPアドレス及びポート番号と、各端末200におけるバッファのバッファ時間とで構成される。動画像データのエンコードレートの違いは、その配信元である配信サーバ300の違いによるものである場合、上記ストリームIDは、配信サーバ300のIDとしての機能も有している。
[システムの動作]
 次に、以上のように構成されたシステムにおけるアクセスポイント100及び端末200の動作について説明する。本実施形態及び他の実施形態において、アクセスポイント100及び端末200における動作は、それらの各CPU11及び21と、その制御下においてそれぞれ実行される上記各ソフトウェアモジュールとで協働して行われる。
[アクセスポイントの動作]
 まず、アクセスポイント100の動作について説明する。図6は、アクセスポイント100による各端末200へのパケット転送処理の流れを示したフローチャートである。また図7は、アクセスポイント100による、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。これら2つの処理は、並行して実行される。
(パケット転送処理)
 図6に示すように、まず、アクセスポイント100の受信部101は、配信サーバ300から、配下のいずれかの端末200宛の動画像データのパケットを受信する(ステップ61)。
 続いて優先制御フラグ設定モジュール102は、上記受信したパケットが、優先端末宛か否かを判断する(ステップ62)。
 上記パケットが優先端末宛であると判断した場合(Yes)、優先制御フラグ設定モジュール102は、上記パケットに対して優先フラグをONに設定し、当該パケットを送信部103へ送る(ステップ63)。
 一方、上記パケットが優先端末宛でないと判断した場合(No)、優先制御フラグ設定モジュール102は、上記パケットに対する優先フラグをOFFに設定して、当該パケットを送信部103へ送る(ステップ64)。
 そして送信部103は、上記優先フラグの設定にしたがって、上記パケットをその宛先である端末200へ送信する(ステップ65)。
 ここで、優先フラグの設定には、例えばIEEE802.11eが用いられる。IEEE802.11eの優先フラグが設定されたパケットは、当該パケットの転送レートが無線LAN150における帯域の上限に達した場合でも、廃棄されることなく優先的に送信される。
 IEEE802.11eに代えて、上記パケットのIPヘッダ内のToS(Type of Service)フィールドのIP Precedenceに優先度が設定されてもよい。また上記ToSフィールドがDS(DiffServ)フィールドとして再定義されたDSCP(DiffServ Code Point)が利用されても構わない。これらの場合も、上記IEEE802.11eが利用される場合と同様の優先的な送信処理が実現される。
 優先度の設定手法は、以上説明したものに限られるものではなく、様々な手法が用いられ得る。
(優先端末決定処理)
 図7に示すように、まず、アクセスポイント100の優先制御フラグ設定モジュール102は、各端末200から、バッファ時間情報を受信する(ステップ71)。
 続いて優先制御フラグ設定モジュール102は、上記受信したバッファ時間情報を基に、上記バッファ時間データベース104を更新する(ステップ72)。
 続いて優先制御フラグ設定モジュール102は、上記バッファ時間データベース104から、各バッファ時間情報の比較により、最短のバッファ時間を有する端末200を検索する(ステップ73)。
 そして優先制御フラグ設定モジュール102は、上記最短のバッファ時間を有する端末200が、前回の検索時と異なる端末200であるか否かを判断し(ステップ74)、異なる端末200である場合には当該端末200を新たな優先端末として決定する(ステップ75)。
 いずれかの端末200が動画像データのダウンロードを開始してから最初に優先端末が決定される場合には、上記ステップ74から75の処理では、最短のバッファ時間を有する端末200がそのまま優先端末として決定される。
 優先制御フラグ設定モジュール102は、以上の処理を、各端末200からバッファ時間情報を定期的に受信する度に実行する。
[端末の動作]
 次に、端末200の動作について説明する。図8は、端末200による動画像データのパケットの受信処理の流れを示したフローチャートである。また図9は、端末200による動画像データの再生処理の流れを示したフローチャートである。また図10は、端末200によるバッファ時間登録処理の流れを示したフローチャートである。これら3つの処理は、並行して実行される。
(パケット受信処理)
 図8に示すように、端末200の受信部201は、アクセスポイント100から動画像データのパケットを受信すると(ステップ81)、当該データをバッファ202へ書き込む(ステップ82)。
(再生処理)
 図9に示すように、端末200のデコーダ203は、バッファ202へのデータの蓄積量が所定量に達した場合、バッファ202から当該データを取り出す(ステップ91)。
 続いてデコーダ203は、上記取り出したデータを書き込み(ステップ92)、当該データをデコードして(ステップ93)、表示部26へ出力する(ステップ94)。
(バッファ時間登録処理)
 図10に示すように、まず、端末200のバッファ時間管理部204は、所定の時間間隔に設定されたタイマーが満了したことを検出する(ステップ101)。
 続いてバッファ時間管理部204は、その時点におけるバッファ202のデータ蓄積量を確認する(ステップ102)。
 続いてバッファ時間管理部204は、上記バッファ202のデータ量と、現在受信している動画像データのエンコードレートとを基に、上記バッファ時間を算出する(ステップ103)。具体的には、バッファ時間管理部204は、上記データ量をエンコードレートで除した値をバッファ時間として算出する。
 続いてバッファ時間管理部204は、上記算出したバッファ時間を示すバッファ時間情報を、アクセスポイント100へ登録(送信)する(ステップ104)。
 そしてバッファ時間管理部204は、次回のバッファ時間登録処理のためのタイマーを設定する(ステップ105)。
 バッファ時間管理部204は、以上の処理を、タイマーが満了する度に繰り返す。
[本実施形態において実現される再生処理及びその効果]
 以下では、本実施形態において実現される再生処理の効果について、従来技術と比較して説明する。
 図11、図12、図13は、従来のネットワーク環境における動画像データの再生処理を概略的に示した図である。
 これらいずれのネットワーク環境も、本実施形態と同様、インターネット及び無線LANによって構築されている。2台の端末(端末A、端末B)は、異なる配信サーバ(配信サーバA、配信サーバB)から、それぞれプログレッシブダウンロード方式で送信された動画像データを、アクセスポイントを介して受信して再生する。
 端末Aが配信サーバAから受信して再生する動画像データM1のエンコードレートは2Mbps、端末Bが配信サーバBから受信して再生する動画像データM2のエンコードレートは6Mbpsとする。またいずれのネットワーク環境においても、動画像データの実効スループットは10Mbpsとする。
 図11に示すネットワーク環境では、動画像データがプログレッシブダウンロード方式で送信されるため、各端末は、実効スループットである10Mbpsを5Mbpsずつ利用することになる。
 端末Aにおいては、動画像データM1のエンコードレートよりもそのスループットが大きいため、動画像データM1は継続してバッファに蓄積され、データは途切れることなく再生される。一方、端末Bでにおいては、動画像データM2のエンコードレートよりもそのスループットが小さいため、バッファがアンダーフローし、動画像データの再生が途中で途切れてしまう。
 2つの動画像データM1、M2のエンコードレートの合計は2+6=8Mbpsであるため、適切に帯域が配分されれば、いずれの端末でも途切れることのない動画像データの再生が可能なはずである。そこで、従来技術では、図12に示すように、静的な帯域制御が利用される。この静的な帯域制御が利用された場合、例えば端末Aに3Mbps、端末Bに7Mbpsの帯域が割り当てられることで、いずれの端末でも途切れることなく動画像データが再生される。
 しかし、図12に示した静的な帯域制御では、各端末が利用できる帯域の上限が決まってしまうため、柔軟性に欠けており、無線LAN環境で帯域を有効に活用できない状況が発生してしまう。その状況を示したのが図13である。
 例えば、端末Bの電波の受信状況が悪化し、スループットが3Mpbsに低下したとする。そうすると、7-3=4Mbpsの帯域が空くことになる。しかし、上述のような静的な帯域制御が設定されている場合、端末Aはその空き帯域を利用してバッファの蓄積量を増やすことができない。
 また、端末Bの電波の受信状況が回復した場合でも、端末Bは、受信状況悪化によるスループット低下時に減ってしまったバッファの蓄積量を回復することができない。
 図14は、上記従来のネットワーク環境と比較して、本実施形態において実現される動画像データの再生処理を概略的に示した図である。
 同図に示すように、本実施形態では、より柔軟な帯域の配分を行うため、上述のように、アクセスポイント100及び各端末200は、各端末200のバッファ202におけるデータ蓄積量を、バッファ時間として扱う。これによりアクセスポイント100は、エンコードレートの異なる動画像データM1及びM2を、同じ尺度で比較でき、バッファ202の状態が最も逼迫している端末200に優先的にデータを転送する。
 例えば、端末200Aのバッファに4Mビット、端末200Bのバッファに6Mビットのデータがそれぞれ蓄積されているとする。また図11~図13と同様に、端末200Aが受信する動画像データのエンコードレートは2Mbps、端末200Bが受信する動画像データのエンコードレートは6Mbpsであるとする。この場合、データサイズは端末200Bのバッファ202Bに蓄積されたデータの方が大きい。しかし、バッファ時間で比較すると、端末200Aのバッファ202Aに蓄積されたデータのバッファ時間は2秒であり、端末200Bのバッファに蓄積されたデータのバッファ時間は1秒であるため、端末200Bのバッファの方がより逼迫した状態であると言える。
 したがってアクセスポイント100は、端末200Bを優先端末として決定し、端末200Bへ送信されるパケットに優先フラグを設定することで、端末200Bへパケットを優先的に送信する。これによりアクセスポイント100は、常に無線LAN150の帯域を最大限に利用しつつ、全ての配下の端末200において、動画像データを極力途切れさせずに再生させることができる。
<第2の実施形態>
 次に、本技術の第2の実施形態を説明する。本実施形態及びこれ以降の実施形態において、上記第1の実施形態と同様の機能を有する箇所には同一の符号を付してその説明を省略または簡略化し、第1の実施形態と異なる点を中心に説明する。
 上記第1の実施形態では、アクセスポイント100は各端末200から定期的にバッファ時間情報を取得していた。一方、本実施形態では、アクセスポイント100は、自ら各端末200のバッファ時間を算出する。
[サーバ、アクセスポイント及び端末のモジュール構成]
 図15は、本実施形態における配信サーバ300、アクセスポイント100及び端末200が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。
 同図に示すように、本実施形態では、上記第1の実施形態の図4で示したシステムと比較して、端末200のバッファ時間管理部204が廃される代わりに、アクセスポイント100が、バッファ時間管理部105を有している。
 また、配信サーバ300は、上記第1の実施形態と比較して、新たにビットレート通知部302を有している。
 アクセスポイント100のバッファ時間管理部105は、配信サーバ300から、各端末200宛に送信される動画像データのパケットのビットレート(エンコードレート)を問い合わせ、当該ビットレートを示すビットレート情報を取得する。そしてバッファ時間管理部105は、ある端末200が動画像データのダウンロードを開始すると、その端末200宛に送信したパケットのデータサイズと、当該動画像データのビットレート情報とを基に、その端末200のバッファ時間を算出する。図示しないが、バッファ時間管理部105は、上記第1の実施形態の図5で示したのと同様のバッファ時間データベースを有しており、算出されたバッファ時間は当該データベースに記憶される。
 配信サーバ300のビットレート通知部302は、上記バッファ時間管理部105からの要求を受けて、各端末200宛の動画像データのパケットのビットレートをアクセスポイント100へ通知する。
[システムの動作]
 次に、本実施形態におけるアクセスポイント100の動作について説明する。図16は、アクセスポイント100による各端末200へのパケット転送処理の流れを示したフローチャートである。また図17は、アクセスポイント100による、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。これら2つの処理は、並行して実行される。
(パケット転送処理)
 図16に示すように、本実施形態におけるアクセスポイント100のパケット転送処理の流れ(ステップ161~165)は、上記第1の実施形態において図6で説明したアクセスポイント100のパケット転送処理の流れ(ステップ61~65)と同様である。したがってここではその説明は省略する。
(優先端末決定処理)
 図17に示す処理の前提として、上述したように、アクセスポイント100は、配信サーバ300から、各端末200宛に送信される動画像データのパケットのビットレートを問い合わせ、当該ビットレートを示すビットレート情報を取得しておく。
 図17に示すように、まず、アクセスポイント100のバッファ時間管理部105は、所定の時間間隔に設定されたタイマーが満了したことを検出する(ステップ171)。
 続いてバッファ時間管理部105は、配信サーバ300から受信し各端末200へ送信したデータのサイズを送信部103からそれぞれ取得する(ステップ172)。
 続いてバッファ時間管理部105は、上記予め取得した各端末200宛のデータのビットレートと、上記取得した送信済みデータサイズと、当該送信を開始した時刻(端末200がダウンロードを開始した時刻)から現在までの経過時間とを基に、各端末200のバッファ時間を算出する(ステップ173)。
 バッファ時間は、上記取得した送信済みデータサイズをD、端末200がダウンロードを開始した時刻をT1、現在時刻をT2、上記ビットレートをRとすると、以下の式で算出される。
Figure JPOXMLDOC01-appb-M000001
※図17の下に記載しております。
 算出されたバッファ時間に関する情報は、上記バッファ時間データベースに登録される。
 続いて優先制御フラグ設定モジュール102は、バッファ時間管理部105と協働して、上記バッファ時間データベースから、各バッファ時間情報の比較により、最短のバッファ時間を有する端末200を検索する(ステップ174)。
 続いて優先制御フラグ設定モジュール102は、上記最短のバッファ時間を有する端末200が、前回の検索時と異なる端末200であるか否かを判断する(ステップ175)。
 最短のバッファ時間を有する端末が異なる端末200である場合には、優先制御フラグ設定モジュールは、当該端末200を新たな優先端末として決定し、当該優先端末宛のパケットに優先フラグを設定して送信部103へ送る(ステップ176)。
 いずれかの端末200が動画像データのダウンロードを開始してから最初に優先端末が決定される場合には、上記ステップ175から176の処理では、最短のバッファ時間を有する端末200がそのまま優先端末として決定される。
 そして優先制御フラグ設定モジュール102は、次回の優先端末決定処理のためのタイマーを設定する(ステップ177)。
 優先制御フラグ設定モジュール102は、以上の処理を、タイマーが満了する度に繰り返す。
 このように本実施形態では、アクセスポイント100は、配信サーバ300から、端末200宛の動画像データのエンコードレートを受信することで、自ら各端末200のバッファ時間を算出し、優先端末を決定することができる。
<第3の実施形態>
 次に、本技術の第3の実施形態を説明する。
 上記第1及び第2の実施形態では、アクセスポイント100は、優先端末へパケットを優先して送信するために、例えばIEEE802.11eやIPヘッダ内のToSフィールド等の優先制御方法を利用した。しかし、本実施形態では、アクセスポイント100は、各端末200宛の動画像データのエンコードレートに応じて、無線LAN150において各端末200用に割り当てられる帯域を動的に変更することで、優先端末宛のパケットを優先して送信する。
[サーバ、アクセスポイント及び端末のモジュール構成]
 図18は、本実施形態における配信サーバ300、アクセスポイント100及び端末20が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。
 同図に示すように、本実施形態では、アクセスポイント100は、上述の第1及び第2の実施形態において有していた優先制御フラグ設定モジュール102に代えて、帯域制御モジュール106を有している。
 アクセスポイント100、端末200及び配信サーバ300が有するその他のモジュールの構成は上記第1の実施形態における図4の構成と同様である。しかし、この構成に代えて、上記第2の実施形態における図15の構成における優先制御フラグ設定モジュール102が帯域制御モジュール106に変更された構成が採用されても構わない。
 帯域制御モジュール106は、各端末200からバッファ時間情報を取得し、それらの比較により、優先機器を決定する。また帯域制御モジュール106は、配信サーバ300から、各端末200宛の動画像データのエンコードレートを取得し、当該エンコードレートに応じて、優先端末以外の端末200に割り当てられる帯域を狭くし、優先機器に割り当てられる帯域を広くするように帯域を制御する。
[バッファ時間データベースの構成]
 図19は、本実施形態においてアクセスポイント100が有するバッファ時間データベース104の構成を示した図である。
 同図に示すように、本実施形態におけるバッファ時間データベース104では、上記第1の実施形態において図5で説明したものと比較すると、動画像データのエンコードレートが追加されている。これは、各端末200に割り当てる帯域を計算するためにエンコードレートが必要であるためである。
[システムの動作]
 次に、本実施形態におけるアクセスポイント100の動作について説明する。図20は、アクセスポイント100による各端末200へのパケット転送処理の流れを示したフローチャートである。また図21は、アクセスポイント100による、バッファ時間に基づく優先端末の決定処理の流れを示したフローチャートである。これら2つの処理は、並行して実行される。
(パケット転送処理)
 図20に示すように、まず、アクセスポイント100の受信部101は、配信サーバ300から、配下のいずれかの端末200宛の動画像データのパケットを受信する(ステップ201)。
 続いて、帯域制御モジュール106は、上記受信したデータを、自身が有するバッファに書き込む(ステップ202)。
 続いて帯域制御モジュール106は、後述する優先端末決定処理において各端末200に割り当てられた帯域に応じて、上記バッファから各端末200宛のデータを取り出す(ステップ203)。
 そして帯域制御モジュール106は、送信部103と協働して、上記取り出されたデータを、各端末200に割り当てられた帯域に応じた速度で各端末200へ送信する(ステップ204)。
(優先端末決定処理)
 図21に示すように、帯域制御モジュール106は、各端末200が動画像データのダウンロードを開始すると、各端末200から定期的にバッファ時間情報を受信する(ステップ211)。
 続いて帯域制御モジュール106は、上記受信したバッファ時間情報を基に、上記バッファ時間データベース104を更新する(ステップ212)。
 続いて帯域制御モジュール106は、上記バッファ時間データベース104から、各バッファ時間情報の比較により、最短のバッファ時間を有する端末200を検索する(ステップ213)。
 そして帯域制御モジュール106は、上記最短のバッファ時間を有する端末200が、前回の検索時と異なる端末200であるか否かを判断する(ステップ214)。
 上記最短のバッファ時間を有する端末200が異なる端末200である場合(Yes)、帯域制御モジュール106は、当該端末200を新たな優先端末として決定し、当該優先端末及びその他の端末200に割り当てられる帯域を新たに計算する。
 具体的には、帯域制御モジュール106は、非優先端末に対しては、それぞれの非優先端末が受信している動画像データのエンコードレートの50%の帯域を割り当て、それによって空いた帯域を、優先端末に割り当てる。
 例えば、優先端末が受信している動画像データのエンコードレートが2Mbpsで、2台の非優先端末が受信している動画像データのエンコードレートがそれぞれ4Mbpsと1Mbpsである場合を想定する。この場合、非優先端末に割り当てられる帯域は、それぞれ、4×1/2=2Mbpsと、1×1/2=0.5Mpbsとなる。したがって優先端末に割り当てられる帯域は、それが受信している動画像データのエンコードレート2Mbpsに、上記各非優先端末への帯域の割り当てによって空いた2Mbpsと0.5Mpbsとを足して、4.5Mbpsとなる。
 いずれかの端末200が動画像データのダウンロードを開始してから最初に優先端末が決定される場合には、上記ステップ214から215の処理では、最短のバッファ時間を有する端末200がそのまま優先端末として決定される。
 帯域制御モジュール106は、以上の処理を、各端末200からバッファ時間情報を定期的に受信する度に実行する。
 以上の処理により、本実施形態では、アクセスポイント100は、各端末200のバッファ時間と各端末200が受信している動画像データのエンコードレートに応じて、非優先端末へ割り当てられる帯域を狭く、優先機器へ割り当てられる帯域を広くするように設定可能である。そしてアクセスポイント100は、当該設定された帯域に応じた速度で各端末200へ動画像データを送信することで、各端末200のバッファの逼迫度に応じて帯域を配分して、各端末200において途切れない再生を実現させることができる。
<第4の実施形態>
 次に、本技術の第4の実施形態を説明する。
 上記第3の実施形態では、アクセスポイント100が帯域制御モジュール106を有することで、バッファ時間及びエンコードレートに応じて各端末200に帯域を動的に割り当てていた。本実施形態では、この動的な帯域制御を、アクセスポイント100ではなく、複数の端末200が相互に通信し合うことで実現している。
[サーバ、アクセスポイント及び端末のモジュール構成]
 図22は、本実施形態における配信サーバ300、アクセスポイント100及び端末200が有するソフトウェアモジュール及びデータベースの構成を示したブロック図である。
 同図に示すように、本実施形態では、上記第3の実施形態において図18で示した図と比較して、アクセスポイント100が有していた帯域制御モジュール106が廃され、それが単なるバッファ107に置換されている。
 一方その代わりに、それぞれの端末200が、帯域制御モジュール205及びバッファ時間管理部204を有している。また、複数の端末200のうち、優先度決定処理を担う端末(優先度決定端末)200Aは、バッファ時間データベース206を有している。
 優先度決定端末200Aのバッファ時間管理部204は、その他の端末200Bのバッファ時間管理部204からバッファ時間情報を受信し、それを自身のバッファ時間情報と共にバッファ時間データベース206に登録する。
 また優先度決定端末200Aの帯域制御モジュール205は、上記第3の実施形態におけるアクセスポイント100の帯域制御モジュール106と同様の手法により、各端末200への割り当て帯域を決定し、それを他の端末200Bへ通知する。
 上記通知を受けた端末200Bの帯域制御モジュール205は、割り当てられた帯域に応じた速度で動画像データをダウンロードする。これにより結果的に上記第3の実施形態と同様の動的な帯域制御処理が実現される。
[システムの動作]
 次に、以上のように構成されたシステムにおける各端末200A及び200Bの動作について説明する。
 図23は、端末200におけるパケット受信処理の流れを示したフローチャートである。また図24は、端末200における再生処理の流れを示したフローチャートである。また図25は、端末200におけるバッファ時間登録処理の流れを示したフローチャートである。また図26は、端末200における帯域変更処理の流れを示したフローチャートである。これらの処理は並行して実行される。
(パケット受信処理)
 図23に示すように、端末200におけるパケット受信処理の流れは、上記第1の実施形態において図8を用いて説明した処理の流れ(ステップ81、82)と同様であるため(ステップ231、232)、ここでは説明を省略する。
(再生処理)
 図24に示すように、端末200における再生処理の流れも、上記第1の実施形態において図9を用いて説明した処理の流れ(ステップ91~94)と同様であるため(ステップ241~244)、ここでは説明を省略する。
(バッファ時間登録処理)
 図25に示すように、端末200(非優先度決定端末200B)におけるバッファ時間登録処理の流れも、上記第1の実施形態において図10を用いて説明した処理の流れ(ステップ101~105)と同様であるため(ステップ251~255)、ここでは説明を省略する。優先度決定端末200Aは、他の端末200Bからバッファ時間情報を受信すると共に、同様の計算手法で自らのバッファ202Aのバッファ時間を算出し、それらをまとめてバッファ時間データベース206Aに登録する。
(優先端末決定処理)
 図示しないが、優先度決定端末200Aの帯域制御モジュール205Aは、上記第3の実施形態の図21で示したのと同様の手法により、各端末200Bから受信したバッファ時間情報を基に、優先端末を決定し、各端末200へ割り当てる帯域を決定する。また帯域制御モジュール205Aは、各端末200Bに割り当てられた帯域を示す情報を各端末200Bへ通知する。
(帯域変更処理)
 図26に示すように、端末200Bの帯域制御モジュール205Bは、優先度決定端末200Aから割り当て帯域(変更)の通知を受信する(ステップ261)。
 そして帯域制御モジュール205Bは、当該通知に含まれる、割り当てられた帯域に応じた速度で、配信サーバ300からアクセスポイント100を介して動画像データをダウンロードするべく、帯域設定を変更する(ステップ262)。この処理は、優先度決定端末200Aから帯域変更通知を受信するたびに繰り返される。
 以上の処理により、本実施形態では、優先度決定端末200Aは、アクセスポイント100の処理によらずに、自ら無線LAN150内の各端末200が利用する帯域を割り当てることで、バッファ時間が少ない端末200におけるバッファ量を増加させることができる。
[変形例]
 本技術は上述の実施形態にのみ限定されるものではなく、本技術の要旨を逸脱しない範囲内において種々変更され得る。
 上述の第1乃至第4の実施形態においては、各端末200が動画像データをプログレッシブダウンロード方式で受信及び再生する例が示された。しかし、本技術で受信及び再生されるデータは動画像データに限られず、例えば音声データであっても構わない。
 上述の第1乃至第4の実施形態においては、配信サーバ300はインターネット50上に設けられたが、配信サーバ300は、例えばLAN等の他のネットワーク上に設けられていても構わない。
 上述の第1乃至第4の実施形態においては、一般ユーザの家庭において端末200が動画像データを受信及び再生する場合を想定して説明がなされた。しかし、本技術は、業務用のシステムにも適用され得る。例えば、放送局等で製作中の動画像コンテンツが、ある現場(サーバ)から他の現場(端末)へ送信されるようなシステムにも本技術は適用され得る。
[その他]
 本技術は以下のような構成も採ることができる。
(1)
 サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器と通信可能な通信部と、
 前記複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得し、前記複数のクライアント機器のうち、最も短い前記バッファ時間を有するクライアント機器を、前記データを優先して送信すべき優先機器として決定することが可能な制御部と
 を具備する情報処理装置。
(2)
 上記(1)に記載の情報処理装置であって、
 前記制御部は、前記サーバから送信された、前記複数のクライアント機器宛の前記データをそれぞれ受信し、前記優先機器宛の前記データを、前記優先機器以外のクライアント機器宛のデータよりも優先して前記優先機器へ送信するように前記通信部を制御可能である
 情報処理装置。
(3)
 上記(1)または(2)に記載の情報処理装置であって、
 前記制御部は、
 前記複数のクライアント装置から、前記バッファ時間情報をそれぞれ受信するように前記通信部を制御可能であり、
 前記受信されたバッファ時間情報を比較することで前記優先機器を決定可能である
 情報処理装置。
(4)
 上記(1)または(2)に記載の情報処理装置であって、
 前記制御部は、
 前記サーバから、前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように前記通信部を制御可能であり、
 前記エンコードレート情報と、前記複数のクライアント機器へ送信したデータのデータ量と、当該送信を開始してから現在までの経過時間とを基に、前記複数のクライアント機器の前記バッファ時間情報を算出可能である
 情報処理装置。
(5)
 上記(3)に記載の情報処理装置であって、
 前記制御部は、
 前記サーバから、前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように前記通信部を制御可能であり、
 前記エンコードレート情報に応じて、前記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、前記優先機器に割り当てられる帯域を広くするように設定することが可能であり、
 前記設定された帯域に対応する速度で前記データを前記複数のクライアント機器へ送信するように前記通信部を制御可能である
 情報処理装置。
(6)
 上記(1)に記載の情報処理装置であって、
 前記サーバから送信されたデータをバッファリングして再生することが可能な再生部をさらに具備し、
 前記制御部は、
 前記サーバから、当該情報処理装置宛及び前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信し、複数のクライアント機器から前記バッファ時間情報をそれぞれ受信するように前記通信部を制御可能であり、
 前記受信されたバッファ時間情報を比較することで前記優先機器を決定可能であり、
 前記エンコードレート情報に応じて、前記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、前記優先機器に割り当てられる帯域を広くするように設定することが可能であり、
 前記優先機器及び当該優先機器以外のクライアント機器へ、前記割り当てられた帯域を示す帯域情報を送信するように前記通信部を制御可能である
 情報処理装置。
 11、21…CPU
 19、29…通信部
 20…端末
 50…インターネット
 100…アクセスポイント
 101…受信部
 102…優先制御フラグ設定モジュール
 103…送信部
 104…バッファ時間データベース
 105…バッファ時間管理部
 106…帯域制御モジュール
 107…バッファ
 150…無線LAN
 200(200A,200B)…端末
 201…受信部
 202(202A,202B)…バッファ
 203(203A,203B)…デコーダ
 204(204A,204B)…バッファ時間管理部
 205(205A,205B)…帯域制御モジュール
 206(206A,206B)…バッファ時間データベース
 300(300A,300B)…配信サーバ
 301…送信部
 302…ビットレート通知部

Claims (8)

  1.  サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器と通信可能な通信部と、
     前記複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得し、前記複数のクライアント機器のうち、最も短い前記バッファ時間を有するクライアント機器を、前記データを優先して送信すべき優先機器として決定することが可能な制御部と
     を具備する情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記制御部は、前記サーバから送信された、前記複数のクライアント機器宛の前記データをそれぞれ受信し、前記優先機器宛の前記データを、前記優先機器以外のクライアント機器宛のデータよりも優先して前記優先機器へ送信するように前記通信部を制御可能である
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記制御部は、
     前記複数のクライアント装置から、前記バッファ時間情報をそれぞれ受信するように前記通信部を制御可能であり、
     前記受信されたバッファ時間情報を比較することで前記優先機器を決定可能である
     情報処理装置。
  4.  請求項2に記載の情報処理装置であって、
     前記制御部は、
     前記サーバから、前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように前記通信部を制御可能であり、
     前記エンコードレート情報と、前記複数のクライアント機器へ送信したデータのデータ量と、当該送信を開始してから現在までの経過時間とを基に、前記複数のクライアント機器の前記バッファ時間情報を算出可能である
     情報処理装置。
  5.  請求項3に記載の情報処理装置であって、
     前記制御部は、
     前記サーバから、前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信するように前記通信部を制御可能であり、
     前記エンコードレート情報に応じて、前記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、前記優先機器に割り当てられる帯域を広くするように設定することが可能であり、
     前記設定された帯域に対応する速度で前記データを前記複数のクライアント機器へ送信するように前記通信部を制御可能である
     情報処理装置。
  6.  請求項1に記載の情報処理装置であって、
     前記サーバから送信されたデータをバッファリングして再生することが可能な再生部をさらに具備し、
     前記制御部は、
     前記サーバから、当該情報処理装置宛及び前記複数のクライアント機器宛に送信された前記データのエンコードレートをそれぞれ示すエンコードレート情報を受信し、複数のクライアント機器から前記バッファ時間情報をそれぞれ受信するように前記通信部を制御可能であり、
     前記受信されたバッファ時間情報を比較することで前記優先機器を決定可能であり、
     前記エンコードレート情報に応じて、前記優先機器以外のクライアント機器に割り当てられる帯域を狭くするように設定し、前記優先機器に割り当てられる帯域を広くするように設定することが可能であり、
     前記優先機器及び当該優先機器以外のクライアント機器へ、前記割り当てられた帯域を示す帯域情報を送信するように前記通信部を制御可能である
     情報処理装置。
  7.  サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得し、
     前記複数のクライアント機器のうち、最も短い前記バッファ時間を有するクライアント機器を、前記データを優先して送信すべき優先機器として決定する
     情報処理方法。
  8.  情報処理装置に、
     サーバからプログレッシブダウンロード方式で送信されたデータをバッファリングして再生することが可能な同一ネットワーク上の複数のクライアント機器でバッファリングされているデータの量を当該データの再生に必要な時間で表現したバッファ時間を示すバッファ時間情報を定期的に取得するステップと、
     前記複数のクライアント機器のうち、最も短い前記バッファ時間を有するクライアント機器を、前記データを優先して送信すべき優先機器として決定するステップと
     を実行させるプログラム。
PCT/JP2013/006077 2012-11-02 2013-10-11 情報処理装置、情報処理方法及びプログラム WO2014068863A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US14/432,229 US9876835B2 (en) 2012-11-02 2013-10-11 Information processing apparatus, information processing method, and program
CN201380055661.8A CN104769960B (zh) 2012-11-02 2013-10-11 信息处理设备及信息处理方法
EP13850319.8A EP2916560B1 (en) 2012-11-02 2013-10-11 Information processing device, information processing method and program
EP17204200.4A EP3322196B1 (en) 2012-11-02 2013-10-11 Information processing apparatus, information processing method, and program
US15/805,276 US10812556B2 (en) 2012-11-02 2017-11-07 Information processing apparatus, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-243011 2012-11-02
JP2012243011A JP2014093655A (ja) 2012-11-02 2012-11-02 情報処理装置、情報処理方法及びプログラム

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/432,229 A-371-Of-International US9876835B2 (en) 2012-11-02 2013-10-11 Information processing apparatus, information processing method, and program
US15/805,276 Continuation US10812556B2 (en) 2012-11-02 2017-11-07 Information processing apparatus, information processing method, and program

Publications (1)

Publication Number Publication Date
WO2014068863A1 true WO2014068863A1 (ja) 2014-05-08

Family

ID=50626816

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/006077 WO2014068863A1 (ja) 2012-11-02 2013-10-11 情報処理装置、情報処理方法及びプログラム

Country Status (5)

Country Link
US (2) US9876835B2 (ja)
EP (2) EP2916560B1 (ja)
JP (1) JP2014093655A (ja)
CN (1) CN104769960B (ja)
WO (1) WO2014068863A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140307624A1 (en) * 2013-04-15 2014-10-16 Samsung Electronics Co., Ltd. Method and apparatus for scheduling video traffic in wireless communication system

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9246852B2 (en) * 2013-11-05 2016-01-26 National Instruments Corporation Lossless time based data acquisition and control in a distributed system
CN105657523B (zh) * 2016-01-28 2019-11-08 腾讯科技(深圳)有限公司 视频预加载的方法和装置
CN110169078A (zh) * 2017-01-18 2019-08-23 华为技术有限公司 视频数据处理方法及设备
WO2018142947A1 (ja) * 2017-01-31 2018-08-09 ソニー株式会社 情報処理装置および方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002262262A (ja) * 2001-03-01 2002-09-13 Nippon Telegr & Teleph Corp <Ntt> マルチキャスト・ビデオ・オンデマンドによる動画コンテンツの配送方法
JP2009188981A (ja) 2008-01-08 2009-08-20 Hitachi Ltd コンテンツ配信方法及び受信装置
JP2011009904A (ja) * 2009-06-24 2011-01-13 Hitachi Ltd 無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体
JP2011077597A (ja) * 2009-09-29 2011-04-14 Sony Corp 情報処理装置、及び情報処理方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951300A (en) * 1997-03-10 1999-09-14 Health Hero Network Online system and method for providing composite entertainment and health information
EP1467300A1 (en) * 1997-08-13 2004-10-13 Matsushita Electric Industrial Co., Ltd Mobile electronic commerce system
JP3823929B2 (ja) * 2002-05-17 2006-09-20 ソニー株式会社 情報処理装置、情報処理方法、およびコンテンツ配信装置、コンテンツ配信方法、並びにコンピュータ・プログラム
JPWO2004019521A1 (ja) * 2002-07-31 2005-12-15 シャープ株式会社 データ通信装置、その間欠通信方法、その方法を記載するプログラム、及びそのプログラムを記録する記録媒体
JP3733943B2 (ja) * 2002-10-16 2006-01-11 日本電気株式会社 データ転送速度調停システム及びそれに用いるデータ転送速度調停方法
ES2373100T3 (es) * 2003-05-20 2012-01-31 Panasonic Corporation Método y sistema de control de acceso.
US7542435B2 (en) * 2004-05-12 2009-06-02 Nokia Corporation Buffer level signaling for rate adaptation in multimedia streaming
RO121497B1 (ro) * 2005-02-09 2007-06-29 Softwin S.R.L. Sistem informatic şi metodă pentru achiziţia, analiza şi autentificarea semnăturii olografe
CN1838770A (zh) * 2005-03-25 2006-09-27 松下电器产业株式会社 传输装置
CN100576822C (zh) * 2006-08-23 2009-12-30 上海贝尔阿尔卡特股份有限公司 无线通信网络中的数据传输及解析方法及其装置
CN101494863B (zh) * 2008-01-24 2014-03-26 株式会社Ntt都科摩 上行链路的无线资源分配方法、装置及基站
JP2010147865A (ja) * 2008-12-19 2010-07-01 Ntt Docomo Inc 無線通信装置及び無線通信方法
EP2269132B1 (en) * 2009-04-14 2015-07-08 Hitachi, Ltd. Storage system and control method thereof as well as program
JP5622404B2 (ja) * 2010-02-22 2014-11-12 シャープ株式会社 無線通信システム、および通信装置
JP5796201B2 (ja) * 2010-06-21 2015-10-21 パナソニックIpマネジメント株式会社 アクセスポイント端末、無線通信端末、無線通信システム、無線通信方法、プログラム、及び集積回路
JP5672840B2 (ja) * 2010-08-12 2015-02-18 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP5833880B2 (ja) * 2011-10-07 2015-12-16 キヤノンイメージングシステムズ株式会社 情報処理装置、デバイス制御装置、デバイス制御システム、およびその制御方法
GB2495929B (en) * 2011-10-25 2014-09-03 Skype Jitter buffer
US9268430B2 (en) * 2011-12-14 2016-02-23 Sony Corporation Information processing apparatus, information processing method, program, and information storage medium
CN102799392B (zh) * 2012-06-16 2015-12-16 北京忆恒创源科技有限公司 存储设备及其中断控制方法
CN102789439B (zh) * 2012-06-16 2016-02-10 北京忆恒创源科技有限公司 控制数据传输过程中的中断的方法与存储设备
CN104583919B (zh) * 2012-08-27 2017-12-29 索尼电脑娱乐公司 信息处理设备、信息处理方法、程序以及信息存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002262262A (ja) * 2001-03-01 2002-09-13 Nippon Telegr & Teleph Corp <Ntt> マルチキャスト・ビデオ・オンデマンドによる動画コンテンツの配送方法
JP2009188981A (ja) 2008-01-08 2009-08-20 Hitachi Ltd コンテンツ配信方法及び受信装置
JP2011009904A (ja) * 2009-06-24 2011-01-13 Hitachi Ltd 無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体
JP2011077597A (ja) * 2009-09-29 2011-04-14 Sony Corp 情報処理装置、及び情報処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2916560A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140307624A1 (en) * 2013-04-15 2014-10-16 Samsung Electronics Co., Ltd. Method and apparatus for scheduling video traffic in wireless communication system

Also Published As

Publication number Publication date
JP2014093655A (ja) 2014-05-19
CN104769960A (zh) 2015-07-08
EP2916560A1 (en) 2015-09-09
US9876835B2 (en) 2018-01-23
EP2916560B1 (en) 2017-12-06
EP3322196A1 (en) 2018-05-16
EP2916560A4 (en) 2016-06-29
EP3322196B1 (en) 2020-09-30
US10812556B2 (en) 2020-10-20
US20180084025A1 (en) 2018-03-22
CN104769960B (zh) 2018-11-13
US20150244759A1 (en) 2015-08-27

Similar Documents

Publication Publication Date Title
US10812556B2 (en) Information processing apparatus, information processing method, and program
CN110636339B (zh) 基于码率的调度方法、装置及电子设备
TW201602800A (zh) 用於網路共享連接的網路共享參數
CN103368935A (zh) 在Wi-Fi显示网络中提供增强Wi-Fi显示会话的方法和装置
US20130339537A1 (en) System for dynamic stream management in audio video bridged networks
US10284678B2 (en) Bandwidth management based on profiles
US11924255B2 (en) Data transmission method and apparatus, server, storage medium, and program product
JP2017504995A (ja) ネットワークのデバイスにより実行される進行中のトラフィックセッションの中でネットワークの利用可能な帯域幅を割り当てる方法、対応するデバイス
CN107251487B (zh) 网络中的带宽分发方法、设备及计算机可读存储介质
US11160097B2 (en) Enforcing station fairness with MU-MIMO deployments
CN104471904B (zh) 用于内容优化的方法和设备
US20160029050A1 (en) Hybrid Stream Delivery
US20160112483A1 (en) Adaptive bit rates during broadcast transmission in distributed content delivery networks
CN113316263A (zh) 数据传输方法、装置、设备和存储介质
WO2015110047A1 (zh) 一种用于终端应用的数据处理方法和装置
JP2011082808A (ja) 情報配信システム、情報配信装置、及び情報配信方法
US20150180930A1 (en) Stream sharing method, apparatus, and system
US20170272487A1 (en) User input based adaptive streaming
JP2021527351A (ja) ネットワーク容量に制約のあるシナリオにおける共同メディア制作のためのネットワーク制御上りリンクメディア伝送
WO2019164873A1 (en) Network assistance functions for virtual reality dynamic streaming
KR20210077841A (ko) 고품질 저지연 실시간 미디어 스트리밍 서비스를 제공하는 방법 및 그 장치
JP2008293436A (ja) コンテンツ受信制御装置及びコンテンツ受信制御プログラム
RU2804870C2 (ru) Способ и устройство для распределения полосы в сети
TWI471001B (zh) 伺服器、用戶設備、選取起始區塊位址的方法與決定區塊請求數目的方法
JP2010011277A (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: 13850319

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14432229

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2013850319

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE