WO2020158094A1 - 情報処理装置、サーバ装置及び情報処理システム - Google Patents

情報処理装置、サーバ装置及び情報処理システム Download PDF

Info

Publication number
WO2020158094A1
WO2020158094A1 PCT/JP2019/043654 JP2019043654W WO2020158094A1 WO 2020158094 A1 WO2020158094 A1 WO 2020158094A1 JP 2019043654 W JP2019043654 W JP 2019043654W WO 2020158094 A1 WO2020158094 A1 WO 2020158094A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
prediction
value
unit
processing device
Prior art date
Application number
PCT/JP2019/043654
Other languages
English (en)
French (fr)
Inventor
一輝 浅井
潤相 呉
銀平 岡田
Original Assignee
株式会社Nttドコモ
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 株式会社Nttドコモ filed Critical 株式会社Nttドコモ
Priority to JP2020569383A priority Critical patent/JP7253574B2/ja
Priority to US17/422,526 priority patent/US11716508B2/en
Publication of WO2020158094A1 publication Critical patent/WO2020158094A1/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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/2408Monitoring of the upstream path of the transmission network, e.g. client requests
    • 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/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/633Control signals issued by server directed to the network components or client
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Definitions

  • the present invention relates to an information processing device, a server device, and an information processing system.
  • the accuracy of throughput prediction by the server device improves as the amount of data used for prediction increases.
  • the throughput prediction accuracy of the server device may be lower than the throughput prediction accuracy of the client device when the amount of data used for the prediction is small. Therefore, in the method that uses only one of the prediction of the throughput by the client apparatus and the prediction of the throughput by the server apparatus, the quality of the moving image may not be appropriately selected according to the communication status of the network.
  • An information processing apparatus is an information processing apparatus that receives a moving image transmitted by a distribution apparatus via a network, and predicts the throughput of the network, and a first prediction value indicating the predicted throughput. And a second prediction value indicating the throughput of the network predicted by the server device connected to the network, the acquisition unit acquiring the second prediction value from the server device, the first prediction value, and the second prediction value.
  • a selection unit that selects a prediction value having a higher prediction accuracy among the prediction values, and a request unit that requests the distribution device to transmit a moving image of quality based on the selected prediction value.
  • a server device is a server device connected to a network to which a distribution device that distributes a moving image and a plurality of information processing devices that respectively receive the moving image are connected.
  • a collection unit that collects a plurality of logs, each of which includes information related to reproduction of the moving image, from one information processing device of the processing devices, and predicts the throughput of the network based on the plurality of logs, and performs the prediction.
  • a transmission control unit that causes the communication device to transmit the predicted value to the one information processing device.
  • An information processing system includes an information processing device that receives a moving image transmitted by a distribution device via a network, and a server device connected to the information processing device via the network.
  • the information processing device predicts the throughput of the network, and generates a first prediction value indicating the predicted throughput, and a throughput of the network predicted by the server device.
  • An acquisition unit that acquires the second predicted value from the server device; a selection unit that selects a predicted value having a higher prediction accuracy from the first predicted value and the second predicted value;
  • a second prediction unit that predicts the second predicted value based on the plurality of logs, and a transmission control that causes a communication device to transmit the second predicted value to the information processing device. And a section.
  • the information processing apparatus can select a prediction value having higher prediction accuracy from the first prediction value predicted by the information processing apparatus and the second prediction value predicted by the server apparatus.
  • the prediction accuracy of the network throughput is improved as compared with the case where there is no option.
  • the information processing apparatus can appropriately select the quality of the moving image according to the communication status of the network.
  • Embodiment 1-1 Outline of Information Processing System
  • FIG. 1 is a block diagram showing an overall configuration of an information processing system according to an embodiment of the present invention.
  • the information processing system 1 illustrated in FIG. 1 provides a moving image distribution service.
  • the moving image distribution service transmits, for example, movie or broadcast content to the user.
  • the information processing system 1 includes information processing devices 10_1 to 10_m (m is an integer of 1 or more), a network NW, a server device 20, and a distribution device 30 that distributes a moving image.
  • m is an integer of 1 or more
  • NW is an integer of 1 or more
  • server device 20 is an integer of 2 or more
  • distribution device 30 that distributes a moving image.
  • the server device 20 is a so-called QoE (Quality of Experience) server.
  • the server device 20 predicts the throughput of the network NW and generates the second predicted value X2 indicating the prediction result.
  • the distribution device 30 transmits the moving image data to the information processing device 10 via the network NW.
  • Video data is compressed by the encoder.
  • the moving image data is divided into a plurality of segment data and transmitted.
  • One moving image data is transmitted in a plurality of periods according to the number of divided segment data.
  • the distribution device 30 can transmit the segment data having different qualities for each period to the information processing device 10 in response to a request from the information processing device 10.
  • the quality of a moving image is determined by the image quality of the moving image such as resolution, frame rate, and bit rate, the amount of data required for buffering, and the like.
  • the number of distribution devices 30 is not limited to one. Further, the number of server devices 20 is not limited to one.
  • the information processing system 1 may include a plurality of information processing devices 10, a plurality of server devices 20, and a plurality of distribution devices 30. ..
  • FIG. 3 is a block diagram showing the configuration of the information processing device 10.
  • the information processing device 10 is realized by a computer system including a processing device 120, a storage device 130, a communication device 140, an input device 150, and an output device 160.
  • the processing device 120, the storage device 130, the communication device 140, the input device 150, and the output device 160 are connected by a bus for exchanging information.
  • the bus may be composed of a single bus or may be composed of different buses between devices.
  • each element of the information processing device 10 may be configured by a single device or a plurality of devices, and some elements of the information processing device 10 may be omitted.
  • the term “apparatus” may be replaced with another term such as a circuit, a device, or a unit.
  • the processing device 120 is a processor that controls the entire information processing device 10, and is composed of, for example, a single chip or a plurality of chips.
  • the processing device 120 is composed of, for example, a central processing unit (CPU) including an interface with peripheral devices, an arithmetic unit, a register, and the like. Note that some or all of the functions of the processing device 120 are realized by hardware such as DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), and FPGA (Field Programmable Gate Array). May be.
  • the processing device 120 executes various kinds of processing in parallel or sequentially.
  • the storage device 130 is a recording medium that can be read by the processing device 120.
  • the storage device 130 stores a plurality of programs including the control program P1 executed by the processing device 120 and various data used by the processing device 120.
  • the storage device 130 includes, for example, a non-volatile memory and a volatile memory. Examples of the non-volatile memory include ROM (Read Only Memory), EPROM (Erasable Programmable ROM), and EEPROM (Electrically Erasable Programmable ROM). Examples of the volatile memory include RAM (Random Access Memory).
  • the volatile memory included in the storage device 130 is used as a working memory of the processing device 120.
  • the input device 150 is a device for inputting information for using the information processing device 10.
  • the input device 150 receives a user operation.
  • the input device 150 includes a microphone and a touch panel.
  • the touch panel detects contact with the display surface of the display device.
  • the touch panel accepts an operation for inputting codes such as numbers and letters and an operation for selecting an icon displayed on the display device based on the contact position.
  • the microphone converts a user's voice into an electric signal and outputs an analog voice signal corresponding to the electric signal.
  • the audio signal is converted into a digital audio signal and supplied to the processing device 120 via the bus.
  • the input device 150 is not limited to a touch panel and a microphone.
  • the input device 150 may be a keyboard, a mouse, a switch, a button, or the like.
  • the output device 160 informs the user of various information under the control of the processing device 120.
  • the output device 160 includes, for example, a display device and a speaker.
  • the display device displays an image.
  • various display panels such as a liquid crystal display panel or an organic EL (Electro Luminescence) display panel are preferably used as a display device.
  • Sound data is supplied from the processing device 120 to the speaker.
  • the speaker includes a DA converter. The DA converter converts the sound data into an analog signal, and the analog signal drives the speaker.
  • the prediction unit 122 predicts the throughput of the network NW and generates a first predicted value X1 indicating the predicted throughput.
  • the throughput is the amount of data transmission per unit time and can be expressed in bps.
  • the prediction unit 122 predicts the throughput of the network NW based on, for example, the actually measured actual throughput value Y. For example, when the measured value Y of the throughput changes as shown in FIG. 4, the throughput at the time t2 predicted at the time t1 becomes the first predicted value X1 shown in FIG.
  • the dotted line from time t1 to time t2 shown in FIG. 4 can be obtained by, for example, the method of least squares.
  • the prediction unit 122 corresponds to the first prediction unit.
  • the selecting unit 125 selects a prediction value having higher prediction accuracy from the first prediction value X1 and the second prediction value X2. More specifically, the selection unit 125 compares the prediction error of the first predicted value X1 with respect to the measured value of the throughput of the network NW with the prediction error of the second predicted value X2 with respect to the measured value of the throughput of the network NW. , A prediction value with a smaller prediction error is selected.
  • the first difference value Z1j is a prediction error of the information processing device 10 in the period Tj.
  • the second difference value Z2j is a prediction error of the server device 20 in the period Tj.
  • the selection unit 125 Based on the comparison result between the first difference value Z1j and the second difference value Z2j, the selection unit 125 performs the first prediction in the period T(j+1) (an example of the second period) next (immediately after) the period Tj. Either the value X1(j+1) or the second predicted value X2(j+1) is selected. Specifically, if the first difference value Z1j is smaller than the second difference value Z2j, the first predicted value X1(j+1) is selected in the next period T(j+1).
  • the selection unit 125 selects one of the first prediction value X1(j+1) and the second prediction value X2(j+1) that has the higher prediction accuracy.
  • the request unit 127 requests the distribution device 30 to transmit a moving image of quality based on the selection result of the selection unit 125.
  • the request unit 127 requests the distribution device 30 to transmit a moving image of low quality compared to the quality requested when the prediction value is high.
  • the request unit 127 requests the distribution device 30 to transmit a high-quality moving image as compared with the quality requested when the prediction value is low.
  • the decoding unit 128 uses the communication device 140 to decode the moving image data received from the distribution device 30.
  • the decoded moving image data is supplied to the output device 160.
  • the display device of the output device 160 displays an image based on the moving image data, and the speaker of the output device 160 emits a sound based on the moving image data.
  • the decoding unit 128 generates a log L related to moving image reproduction for each of the plurality of periods T1 to Tn.
  • the transmission control unit 129 causes the communication device 140 to transmit the plurality of logs L generated by the decoding unit 128 to the server device 20.
  • FIG. 6 is a block diagram showing the configuration of the server device 20.
  • the server device 20 is configured by a computer system including a processing device 220, a storage device 230, a communication device 240, an input device 250, and an output device 260.
  • Each element of the server device 20 is mutually connected by a single bus or a plurality of buses.
  • each element of the server device 20 is configured by a single device or a plurality of devices.
  • the processing device 220 is a processor that controls the entire server device 20, and is composed of, for example, a single chip or a plurality of chips. Like the processing device 120, the processing device 220 is composed of, for example, a central processing unit (CPU: Central Processing Unit) including an interface with peripheral devices, an arithmetic device, a register, and the like. Note that part or all of the functions of the processing device 220 may be realized by hardware such as DSP, ASIC, PLD, and FPGA. The processing device 220 executes various types of processing in parallel or sequentially.
  • CPU Central Processing Unit
  • the storage device 230 is a recording medium that can be read by the processing device 220.
  • the storage device 230 stores a plurality of programs including the control program P2 executed by the processing device 220, the log L collected from the information processing device 10, and various data used by the processing device 220.
  • the storage device 230 includes, for example, a non-volatile memory and a volatile memory, similarly to the storage device 130.
  • the volatile memory included in the storage device 230 is used as a working memory of the processing device 220.
  • the communication device 240 is a device that communicates with other devices via a network NW such as a mobile communication network or the Internet.
  • the communication device 240 is also described as a network device, a network controller, a network card, or a communication module, like the communication device 140.
  • the communication device 240 can communicate with the information processing device 10 via the network NW.
  • the input device 250 is a device for inputting information for using the server device 20.
  • the input device 250 receives a user operation.
  • the input device 250 may be a keyboard, a mouse, or the like.
  • the output device 260 informs the user of various information under the control of the processing device 220.
  • the output device 160 includes, for example, a display device and a speaker.
  • the processing device 220 functions as the collection unit 222, the prediction unit 224, and the transmission control unit 226 by reading and executing the control program P2 from the storage device 230.
  • the collection unit 222 collects a plurality of logs L from each of the plurality of information processing devices 10.
  • One log L is information in which information regarding the operation of one information processing device 10 is associated with time.
  • the information on the operation of the information processing apparatus 10 includes the type of application executed by the information processing apparatus 10, the URL of the screen displayed using the Web browser, the information about the file upload, the file download, and the music reproduction, and the moving image. Contains information about the playback of the.
  • the information regarding the reproduction of the moving image includes at least one of resolution, frame rate, buffering, and bit rate, for example.
  • the plurality of logs L collected from one information processing device 10 are stored in the storage device 230 in association with the identification information for identifying the one information processing device 10.
  • the prediction unit 224 predicts the throughput of the network NW based on the plurality of logs L collected by the collection unit 222, and generates the second predicted value X2 indicating the prediction result for each of the plurality of information processing devices 10. As the number of logs L used for throughput prediction increases, the throughput prediction accuracy of the prediction unit 224 improves.
  • the prediction unit 224 corresponds to the second prediction unit.
  • the transmission control unit 226 causes the communication device 240 to transmit each generated second predicted value X2 to the corresponding information processing device 10. As a result, each second predicted value X2 generated by the server device 20 is notified to each information processing device 10. As described above, the information processing device 10 selects the quality of a moving image based on the predicted value having higher prediction accuracy among the throughput predicted by the information processing device 10 and the throughput predicted by the server device 20. As a result, the quality of the moving image is appropriately selected according to the communication status of the network NW.
  • FIG. 7 is a block diagram showing the configuration of the distribution device 30.
  • the distribution device 30 is configured by a computer system including a processing device 320, a storage device 330, and a communication device 340.
  • the respective elements of the distribution device 30 are connected to each other by a single bus or a plurality of buses. Further, each element of the distribution device 30 is configured by a single device or a plurality of devices.
  • the processing device 320 is a processor that controls the entire distribution device 30, and is configured by, for example, a single chip or a plurality of chips. Like the processing device 120, the processing device 320 is composed of, for example, a central processing unit including an interface with peripheral devices, an arithmetic unit, a register, and the like. Note that some or all of the functions of the processing device 320 may be realized by hardware such as DSP, ASIC, PLD, and FPGA. The processing device 320 executes various processes in parallel or sequentially.
  • the storage device 330 is a recording medium that can be read by the processing device 320.
  • the storage device 330 stores a plurality of programs including the control program P3 executed by the processing device 320, moving image data D, and various data used by the processing device 320.
  • the storage device 330 is composed of, for example, a non-volatile memory and a volatile memory, similarly to the storage device 130.
  • the volatile memory included in the storage device 330 is used as a working memory of the processing device 320.
  • the communication device 340 is a device that communicates with other devices via a network NW such as a mobile communication network or the Internet. Like the communication device 140, the communication device 340 is also described as a network device, a network controller, a network card, or a communication module, for example. The communication device 340 can communicate with the information processing device 10 via the network NW.
  • a network NW such as a mobile communication network or the Internet.
  • the communication device 340 is also described as a network device, a network controller, a network card, or a communication module, for example.
  • the communication device 340 can communicate with the information processing device 10 via the network NW.
  • the processing device 320 functions as the reception unit 322 and the quality control unit 324 by reading and executing the control program P3 from the storage device 330.
  • the reception unit 322 receives a request transmitted from the information processing device 10 and including information specifying the quality of a moving image.
  • the quality control unit 324 reads the moving image data D corresponding to the request received by the receiving unit 322 from the storage device 330.
  • the transmission control unit 326 transmits the moving image data D read using the communication device 340 to the requesting information processing device 10.
  • FIG. 8 is a sequence chart for explaining the operation of the information processing system 1.
  • the processing device 120 of the information processing device 10 generates a moving image data request that requests the distribution device 30 to transmit the moving image data of the moving image specified according to the user's operation on the input device 150.
  • the transmission control unit 129 causes the communication device 140 to transmit the moving image data request to the distribution device 30.
  • the distribution device 30 when the distribution device 30 receives the moving image data request, it generates moving image data of the title specified by the moving image data request, and starts transmitting the moving image data (step S100).
  • the processing device 120 functions as the decoding unit 128. The processing device 120 decompresses the received moving image data, supplies the decompressed moving image data to the input device 150, and starts reproduction of the moving image (step S101).
  • the decoding unit 128 generates a log L regarding reproduction of a moving image for each of the plurality of periods T1 to Tn.
  • the generated log L is transmitted by the communication device 140 to the server device 20 for each of the plurality of periods T1 to Tn.
  • the processing device 120 also functions as the prediction unit 122. Specifically, the processing device 120 predicts the throughput of the network NW and generates the first predicted value X1 indicating the predicted throughput (step S102).
  • step S200 the processing device 220 of the server device 20 functions as the collection unit 222 and collects the plurality of logs L (that is, the time series of the logs L) for the plurality of periods T1 to Tn.
  • the collection unit 222 collects the time series of the log L for each of the plurality of information processing devices 10.
  • step S201 the processing device 220 functions as the prediction unit 224. Specifically, the processing device 220 predicts the throughput of the network NW based on the collected multiple logs L and generates the second predicted value X2 indicating the prediction result. The generated second predicted value X2 is transmitted to the information processing device 10 under the control of the transmission control unit 129.
  • the processing device 120 of the information processing device 10 functions as the acquisition unit 123. Specifically, the processing device 120 acquires the second predicted value X2 (step S103). Next, the processing device 120 functions as the selection unit 125. Specifically, the processing device 120 compares the prediction error of the first prediction value X1 and the prediction error of the second prediction value X2 (step S104). Next, the processing device 120 selects a prediction value having a smaller prediction error from the first prediction value X1 and the second prediction value X2 (step S105).
  • the processing device 120 functions as the request unit 127. Specifically, the processing device 120 generates a moving image data request that specifies transmission of a moving image of quality based on the selected predicted value (step S106). The moving image data request is transmitted to the distribution device 30 by the communication device 140.
  • the processing device 320 of the distribution device 30 functions as the reception unit 322. Specifically, the processing device 320 receives a request including information specifying the quality of a moving image (step S107). Next, the processing device 320 functions as the quality control unit 324, reads the moving image data D corresponding to the received request from the storage device 330, and generates the moving image data D (step S108). After that, the read moving image data D is transmitted to the information processing device 10.
  • the request unit 127 requests the distribution device 30 to transmit a moving image of quality based on the selection result of the selection unit 125 to the information processing device 10. Therefore, since the information processing device 10 can select the first predicted value X1 predicted by itself and the second predicted value X2 predicted by the server device 20, the throughput of the network NW is higher than that when there is no option. The prediction accuracy of is improved. As a result, the information processing device 10 can appropriately select the quality of the moving image according to the communication status of the network.
  • the selection unit 125 compares the prediction error of the first prediction value X1 and the prediction error of the second prediction value X2, and selects the prediction value having the smaller prediction error. Therefore, it is possible to specify the quality of the moving image by using the prediction value having the higher prediction accuracy of the first prediction value X1 and the second prediction value X2.
  • the information processing device 10 includes a calculation unit 124 that calculates the throughput of the network NW when a moving image is received in each of the plurality of periods T1 to Tn and generates the actual measurement value Y indicating the calculation result. .. Then, the prediction unit 122 predicts the first predicted value X1 in each of the plurality of periods T1 to Tn, and the server device 20 predicts the second predicted value X2 in each of the plurality of periods T1 to Tn.
  • the selection unit 125 includes a first difference value Z1j indicating a difference between the first predicted value X1j and the actual measured value Yj in one period Tj of the plurality of periods T1 to Tn, and a second predicted value X2j in one period Tj.
  • the server device 20 collects a plurality of logs L each of which includes information regarding reproduction of a moving image from the information processing device 10, and a network based on the plurality of logs L collected by the collection unit 222.
  • a prediction unit 224 that predicts NW throughput and generates a prediction value that indicates a prediction result, and a transmission control unit 226 that causes the communication device 240 to transmit the generated prediction value to the information processing device 10.
  • the predicted value generated by the server device 20 is the second predicted value X2.
  • the second predicted value X2 generated by the server device 20 is generated based on a plurality of logs L each of which includes information regarding reproduction of a moving image.
  • the prediction is performed from a different viewpoint from the throughput of the network NW calculated by the calculation unit 124 of the information processing device 10. Since the information processing apparatus 10 can select a prediction value having higher prediction accuracy from the first prediction value X1 and the second prediction value X2 generated from different viewpoints, the moving image is selected according to the communication status of the network NW. The quality of can be selected appropriately.
  • the selection unit 125 predicts the prediction error of the first prediction value X1 and the prediction of the second prediction value X2. Since it is not necessary to compare with the error, the processing load of the processing device 120 can be reduced.
  • the selection unit 125 selects the second prediction value X2 for a predetermined number of consecutive periods, in the subsequent period, comparison of prediction errors is omitted and the second prediction value X2 is selected. That is, the prediction accuracy of the second predicted value X2 is sufficiently high when the selection unit 125 selects the second predicted value X2 for a predetermined number of consecutive periods. Therefore, in the subsequent period, the selection unit 125 determines that the prediction accuracy of the second predicted value X2 is high among the first predicted value X1 and the second predicted value X2, and selects the second predicted value X2.
  • the selection unit 125 of the information processing device 10 may change the method of selecting either the first prediction value X1 or the second prediction value X2 according to the reliability of the second prediction value X2. ..
  • the acquisition unit 123 of the information processing device 10 acquires the reliability of the second predicted value X2 from the server device 20.
  • the selection unit 125 compares the prediction error of the first prediction value X1 and the prediction error of the second prediction value X2, and selects the prediction value with the small prediction error.
  • the selection unit 125 selects the second predicted value X2 when the reliability is equal to or higher than the predetermined value.
  • the processing load of the processing device 120 can be reduced.
  • the selection unit 125 of the information processing device 10 may select either the first predicted value X1 or the second predicted value X2 according to the reliability of the second predicted value X2. For example, the selection unit 125 selects the second predicted value X2 when the reliability of the second predicted value X2 is greater than or equal to a predetermined value, and selects the first predicted value when the reliability of the second predicted value X2 is less than the predetermined value. X1 may be selected. According to the third modification, it is not necessary to compare the prediction error of the first prediction value X1 and the prediction error of the second prediction value X2, so the processing load of the processing device 120 can be reduced.
  • the prediction unit 224 of the server device 20 is based on one or a plurality of logs L collected from one information processing device 10 and one or a plurality of logs L collected from another information processing device 10. Then, the predicted value (second predicted value X2) of one information processing device 10 may be generated. In addition, the prediction unit 224 of the server device 20 may calculate the reliability of the second predicted value X2 according to the number of logs L used to generate the predicted value (second predicted value X2). In this case, the number of logs L may be the number of logs L collected from one information processing device 10 or the number of logs L collected from a plurality of information processing devices 10.
  • the prediction unit 224 predicts the throughput of the network NW based on the plurality of logs L collected by the collection unit 222, and calculates the reliability of the throughput based on the number of logs L used for the throughput prediction. Then, the predicted value (second predicted value X2) may be generated by correcting the predicted throughput using the calculated reliability. For example, when the reliability is low, the prediction unit 224 corrects the prediction value (second prediction value X2) to be smaller than when the reliability is high. By this correction, even if the selection unit 125 of the information processing device 10 selects the second predicted value X2 when the reliability of the second predicted value X2 is low, the request unit 127 causes the distribution device 30 to output a high-quality moving image. Don't ask for. Therefore, it is possible to avoid a situation in which the reproduction of the moving image in the information processing device 10 largely fails.
  • the prediction unit 224 of the server device 20 may calculate the reliability of the predicted value (second predicted value X2) based on the statistic.
  • the collection unit 222 of the fifth modified example collects a plurality of logs L from each of the plurality of information processing devices 10.
  • the prediction unit 224 predicts the throughput of the network NW for each information processing device 10 based on the plurality of logs L collected from each of the plurality of information processing devices 10.
  • the prediction unit 224 sets each throughput corresponding to each information processing device 10 as a predicted value (second predicted value X2) corresponding to each information processing device 10.
  • the prediction unit 224 also calculates a statistic based on a plurality of throughputs of the plurality of information processing devices 10. For example, variance is suitable for the statistic.
  • the information processing apparatus 10 executes the process of selecting either the first predicted value X1 or the second predicted value X2, but the server device 20 may execute this process. ..
  • the storage devices 130, 230 and 330 are flexible disks, magneto-optical disks (for example, compact disks, digital versatile disks, Blu-ray disks). (Registered trademark) disk), smart card, flash memory device (eg, card, stick, key drive), CD-ROM (Compact Disc-ROM), register, removable disk, hard disk, floppy (registered trademark) disk, magnetic strip. , Databases, servers, and other suitable storage media. Further, the program may be transmitted from the network via an electric communication line.
  • the input/output information and the like may be stored in a specific location (for example, a memory) or may be managed by a management table. Good. Information that is input/output may be overwritten, updated, or added. The output information and the like may be deleted. The input information and the like may be transmitted to another device.
  • the determination may be performed by a value (0 or 1) represented by 1 bit, or a true/false value (Boolean: true). Or false), or may be performed by comparison of numerical values (for example, comparison with a predetermined value).
  • each of the first modification to the seventh modification is called software, firmware, middleware, microcode, hardware description language, or another name, Widely interpreted to mean instructions, instruction sets, codes, code segments, program codes, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, execution threads, procedures or functions, etc. It should be. Moreover, software, instructions, etc. may be transmitted and received via a transmission medium.
  • Mobile stations are defined by those skilled in the art as subscriber stations, mobile units, subscriber units, wireless units, remote units, mobile devices, wireless devices, wireless communication devices, remote devices, mobile subscriber stations, access terminals, mobile terminals, wireless. It may also be referred to as a terminal, remote terminal, handset, user agent, mobile client, client, or some other suitable term.
  • 1... Information processing system 10... Information processing device, 20... Server device, 30... Distribution device, 120, 220, 320... Processing device, 122... Prediction unit, 123... Acquisition unit, 124... Calculation unit, 125... Selection unit 127... Requesting unit, 129, 226, 326... Transmission control unit, 222... Collecting unit, 224... Predicting unit, X1... First predicted value, X2... Second predicted value, Y... Actual measured value, Z1j... First difference Value, Z2j... second difference value.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

情報処理装置は、ネットワークのスループットを予測し、予測したスループットを示す第1予測値を生成する予測部と、ネットワークに接続されるサーバ装置により予測されたネットワークのスループットを示す第2予測値を、サーバ装置から取得する取得部と、第1予測値及び第2予測値X2のうち、より高い予測精度を有する予測値を選択する選択部と、選択部125が選択した予測値に基づく品質の動画を送信するように配信装置に要求する要求部とを備える。

Description

情報処理装置、サーバ装置及び情報処理システム
 本発明は、情報処理装置、サーバ装置及び情報処理システムに関する。
 近年、ネットワークを介して動画を配信する動画配信サービスが普及している。この種の動画配信サービスでは、配信する動画のビットレートをネットワークの通信状況に応じて動的に変更する方式が採用される場合がある。特許文献1に記載のシステムにおいては、動画を再生するクライアント装置がネットワークの通信状況を予測する。また、特許文献2に記載のシステムにおいては、ネットワークに接続されたサーバ装置が、動画配信サービスにおけるネットワークのスループットを予測する。
特開2017-157958号
特開2018-088598号
 サーバ装置によるスループットの予測精度は、予測に使用するデータ量が多いほど、向上する。換言すれば、サーバ装置によるスループットの予測精度は、予測に使用するデータ量が少ないと、クライアント装置によるスループットの予測精度より低下する場合がある。したがって、クライアント装置によるスループットの予測とサーバ装置によるスループットの予測との一方のみを使用する方法では、動画の品質がネットワークの通信状況に応じて適切に選択されない場合がある。
 本発明の一態様に係る情報処理装置は、ネットワークを介して配信装置の送信する動画を受信する情報処理装置であって、前記ネットワークのスループットを予測し、当該予測したスループットを示す第1予測値を生成する予測部と、前記ネットワークに接続されるサーバ装置により予測された前記ネットワークのスループットを示す第2予測値を、前記サーバ装置から取得する取得部と、前記第1予測値及び前記第2予測値のうち、より高い予測精度を有する予測値を選択する選択部と、前記選択された予測値に基づく品質の動画を送信するように前記配信装置に要求する要求部と、を備える。
 本発明の一態様に係るサーバ装置は、動画を配信する配信装置、及び前記動画を各々が受信する複数の情報処理装置が接続されるネットワークに接続されるサーバ装置であって、前記複数の情報処理装置のうち、一の情報処理装置から、前記動画の再生に関する情報を各々が含む複数のログを収集する収集部と、前記複数のログに基づいて、前記ネットワークのスループットを予測し、当該予測したスループットを示す予測値を生成する予測部と、通信装置に、前記予測値を前記一の情報処理装置に対して送信させる送信制御部と、を備える。
 本発明の一態様に係る情報処理システムは、ネットワークを介して配信装置の送信する動画を受信する情報処理装置と、前記情報処理装置に前記ネットワークを介して接続されるサーバ装置とを有する情報処理システムであって、前記情報処理装置は、前記ネットワークのスループットを予測し、当該予測したスループットを示す第1予測値を生成する第1予測部と、前記サーバ装置により予測された前記ネットワークのスループットを示す第2予測値を、前記サーバ装置から取得する取得部と、前記第1予測値及び前記第2予測値のうち、より高い予測精度を有する予測値を選択する選択部と、前記選択された前記予測値に基づく品質の動画を送信するように前記配信装置に要求する要求部と、を備え、前記サーバ装置は、前記情報処理装置から、前記動画の再生に関する情報を各々が含む複数のログを収集する収集部と、前記複数のログに基づいて、前記第2予測値を予測する第2予測部と、通信装置に、前記第2予測値を前記情報処理装置に対して送信させる送信制御部とを備える。
 本発明の一態様によれば、情報処理装置は、情報処理装置で予測した第1予測値とサーバ装置で予測した第2予測値のうち、より高い予測精度を有する予測値を選択できるので、選択肢を有さない場合と比較して、ネットワークのスループットの予測精度が向上する。この結果、情報処理装置は、動画の品質をネットワークの通信状況に応じて適切に選択できる。
実施形態に係る情報処理システムの全体構成を示すブロック図である。 動画データの一例を説明するための説明図である。 情報処理装置の構成例を示すブロック図である。 第1予測値を説明するためのグラフである。 選択部の動作を説明するための説明図である。 サーバ装置の構成例を示すブロック図である。 配信装置の構成例を示すブロック図である。 情報処理システムの動作を示すシーケンスチャートである。
1.実施形態
1-1:情報処理システムの概要
 図1は、本発明の実施形態に係る情報処理システムの全体構成を示すブロック図である。図1に示される情報処理システム1は、動画の配信サービスを提供する。動画の配信サービスは、例えば、映画又は放送のコンテンツなどを利用者に対して送信する。
 図1に例示するように、情報処理システム1は、情報処理装置10_1~10_m(mは1以上の整数)と、ネットワークNWと、サーバ装置20と、動画を配信する配信装置30とを備える。以下の説明では、同種の要素を区別しない場合には、情報処理装置10のように、参照符号のうちの共通番号だけを使用する。
 情報処理装置10は、各種の情報を処理する装置である。情報処理装置10は、例えば、スマートフォン又はタブレット端末等の可搬型の情報機器である。但し、情報処理装置10は、例えば、パーソナルコンピュータ等の端末型の情報機器であってもよい。情報処理装置10は、ネットワークNWを介して配信装置30が送信する動画を受信する。また、情報処理装置10は、ネットワークNWのスループットを予測し、予測結果を示す第1予測値X1を生成する。
 サーバ装置20は、いわゆるQoE(Quality of Experience)サーバである。サーバ装置20は、ネットワークNWのスループットを予測し、予測結果を示す第2予測値X2を生成する。
 配信装置30は、ネットワークNWを介して動画データを情報処理装置10に送信する。動画データはエンコーダーによって圧縮されている。1つのタイトルに係る動画データの送信において、動画データは複数のセグメントデータに分割されて送信される。分割されたセグメントデータの数に応じた複数の期間において、1個の動画データは送信される。配信装置30は、情報処理装置10からの要求に応じて、期間ごとに異なる品質のセグメントデータを情報処理装置10に送信することができる。動画の品質は、解像度、フレームレート、及びビットレートなどの動画の画質、バッファリングに必要なデータ量などで定まる。
 図2に動画データを例示する。図示の例は、動画の品質としてビットレートを採用する。そして、情報処理装置10は、10Mbps、5Mbps、3Mbps、及び1Mbpsの複数のビットレートのいずれかを選択することが可能である。また、動画データとして、ビットレートごとに、n(nは2以上の整数)個のセグメントデータが用意される。例えば、3Mbpsのビットレートに対応して、n個のセグメントデータDc1、Dc2、…Dcnが用意される。情報処理装置10からの要求に応じて、配信装置30は、複数の期間T1~Tnの各々について上記複数のビットレートのいずれかを選択することができる。例えば、図2に網掛けで示すように、配信装置30は、期間T1ではセグメントデータDc1、期間T2及びT3ではセグメントデータDb2、期間TnではセグメントデータDbnを情報処理装置10に送信する。
 なお、配信装置30の数は1に限定されない。また、サーバ装置20の数は1に限定されない。例えば、情報処理システム1は、複数の情報処理装置10、複数のサーバ装置20、及び複数の配信装置30を含んでもよい。 
1-2:情報処理装置
 図3は情報処理装置10の構成を示すブロック図である。情報処理装置10は、処理装置120、記憶装置130、通信装置140、入力装置150、及び出力装置160を具備するコンピュータシステムにより実現される。処理装置120、記憶装置130、通信装置140、入力装置150、及び出力装置160は、情報を授受するためのバスで接続される。バスは、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。なお、情報処理装置10の各要素は、単数又は複数の機器で構成され、情報処理装置10の一部の要素が省略されてもよい。また、本明細書において、「装置」という用語は、回路、デバイス又はユニット等の他の用語に読み替えられてもよい。
 処理装置120は、情報処理装置10の全体を制御するプロセッサであり、例えば単数又は複数のチップで構成される。処理装置120は、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU:Central Processing Unit)で構成される。なお、処理装置120の機能の一部又は全部は、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)等のハードウェアで実現されてもよい。処理装置120は、各種の処理を並列的又は逐次的に実行する。
 記憶装置130は、処理装置120が読取可能な記録媒体である。記憶装置130は、処理装置120が実行する制御プログラムP1を含む複数のプログラム、及び処理装置120が使用する各種のデータを記憶する。記憶装置130は、例えば、不揮発性メモリと揮発性メモリとによって構成される。不揮発性メモリとしては、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、及びEEPROM(Electrically Erasable Programmable ROM)が挙げられる。揮発性メモリとしては、例えば、RAM(Random Access Memory)が挙げられる。記憶装置130に含まれる揮発性メモリは、処理装置120の作業メモリとして用いられる。
 通信装置140は、移動体通信網又はインターネット等のネットワークNWを介して他の装置と通信する機器である。通信装置140は、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード又は通信モジュールとも表記される。通信装置140は、ネットワークNWを介して、配信装置30と通信可能である。
 入力装置150は、情報処理装置10を使用するための情報を入力するための機器である。入力装置150は、利用者による操作を受け付ける。例えば、入力装置150は、マイクロフォン及びタッチパネルを備える。タッチパネルは、表示装置の表示面に対する接触を検出する。タッチパネルは、接触位置に基づいて、数字及び文字等の符号を入力するための操作と、表示装置が表示するアイコンを選択するための操作とを受け付ける。マイクロフォンは、利用者の音声を電気信号に変換して、当該電気信号に応じたアナログの音声信号を出力する。音声信号はデジタルの音声信号に変換され、バスを介して処理装置120に供給される。入力装置150は、タッチパネル及びマイクロフォンに限定されない。例えば、入力装置150は、キーボード、マウス、スイッチ又はボタン等でもよい。
 出力装置160は、処理装置120による制御のもとで各種の情報を利用者に知らせる。出力装置160は、例えば、表示装置とスピーカとを備える。表示装置は、画像を表示する。例えば液晶表示パネル、又は有機EL(Electro Luminescence)表示パネル等の各種の表示パネルが表示装置として好適に利用される。
 スピーカには、処理装置120から音データが供給される。スピーカはDA変換器を備える。DA変換器によって音データはアナログ信号に変換され、アナログ信号によってスピーカは駆動される。
 次に、処理装置120は、記憶装置130から制御プログラムP1を読み取り実行することによって、予測部122、取得部123、算出部124、選択部125、要求部127、デコード部128及び送信制御部129として機能する。
 予測部122は、ネットワークNWのスループットを予測し、予測したスループットを示す第1予測値X1を生成する。スループットとは、単位時間あたりのデータ伝送量であり、bpsで表すことができる。予測部122は、例えば、実測された過去のスループットの実測値Yに基づいて、ネットワークNWのスループットを予測する。例えば、スループットの実測値Yが図4に示すように変化する場合、時刻t1において予測した時刻t2のスループットは、図4に示す第1予測値X1となる。図4に示す時刻t1から時刻t2までの点線は、例えば、最小二乗法によって求めることができる。予測部122は、第1予測部に相当する。
 図3に示す取得部123は、ネットワークNWに接続されるサーバ装置20により予測されたネットワークNWのスループットを示す第2予測値X2を、サーバ装置20から取得する。より具体的には、取得部123は通信装置140を用いて、サーバ装置20から送信される第2予測値X2を取得する。サーバ装置20による第2予測値X2の生成方法については、後述する。
 算出部124は、情報処理装置10が配信装置30から動画データを受信した際のネットワークNWのスループットを算出し、算出結果を示す実測値Yを生成する。具体的には、算出部124は、配信装置30と情報処理装置10との間のデータ転送における転送時間及び転送データ量等に基づいて、スループットを算出する。上述したように動画データは、複数のセグメントデータに分割され、セグメント単位で動画の品質が制御される。1個の動画データは、複数の期間T1~Tnの各々において、情報処理装置10が要求する品質で送信される。算出部124は、複数の期間T1~Tnの各々において、動画データを受信した際のネットワークNWのスループットを算出し、算出結果を示す実測値Yを生成する。
 選択部125は、第1予測値X1及び第2予測値X2のうち、より高い予測精度を有する予測値を選択する。より具体的には、選択部125は、ネットワークNWのスループットの実測値に対する第1予測値X1の予測誤差とネットワークNWのスループットの実測値に対する第2予測値X2との予測誤差とを比較して、より小さい予測誤差を有する予測値を選択する。
 図5は選択部125の動作を説明するための説明図である。例えば、1個の動画データが複数の期間T1~Tnにおいて送信されるとする。選択部125は、動画データが送信される複数の期間T1~Tnのうち一の期間(第1の期間の一例)Tj(jは1≦j≦n-1を満たす整数)において、第1予測値X1jと実測値Yjとの差分を算出し、算出結果である第1差分値Z1jを生成する。また、選択部125は、期間Tjにおいて、第2予測値X2jと実測値Yjとの差分を算出し、算出結果である第2差分値Z2jを生成する。
 第1差分値Z1jは、期間Tjにおける情報処理装置10の予測誤差である。第2差分値Z2jは、期間Tjにおけるサーバ装置20の予測誤差である。選択部125は、第1差分値Z1jと第2差分値Z2jとの比較結果に基づいて、期間Tjの次(直後)の期間T(j+1)(第2の期間の一例)において、第1予測値X1(j+1)又は第2予測値X2(j+1)の一方を選択する。具体的には、第1差分値Z1jが第2差分値Z2jより小さければ、次の期間T(j+1)において第1予測値X1(j+1)が選択される。一方、第2差分値Z2jが第1差分値Z1jより小さければ、次の期間T(j+1)において第2予測値X2(j+1)が選択される。即ち、選択部125は、第1予測値X1(j+1)及び第2予測値X2(j+1)のうち予測精度の高い方を選択する。
 要求部127は、選択部125の選択結果に基づく品質の動画を送信するように配信装置30に要求する。要求部127は、選択された予測値が低い場合には、予測値が高い場合に要求する品質と比較して、品質の低い動画の送信を配信装置30に要求する。要求部127は、選択された予測値が高い場合には、予測値が低い場合に要求する品質と比較して、品質の高い動画の送信を配信装置30に要求する。
 デコード部128は、通信装置140を用いて配信装置30から受信した動画データをデコードする。デコードされた動画データは、出力装置160に供給される。出力装置160の表示装置は動画データに基づく画像を表示するとともに、出力装置160のスピーカは動画データに基づく音を放音する。加えて、デコード部128は、動画の再生に関するログLを複数の期間T1~Tnの各々について生成する。
 送信制御部129は、通信装置140を用いてデコード部128で生成された複数のログLをサーバ装置20へ送信させる。
1-3:サーバ装置
 図6はサーバ装置20の構成を示すブロック図である。サーバ装置20は、処理装置220、記憶装置230、通信装置240、入力装置250、及び出力装置260を具備するコンピュータシステムにより構成される。サーバ装置20の各要素は、単体又は複数のバスによって相互に接続される。また、サーバ装置20の各要素は、単数又は複数の機器によって構成される。
 処理装置220は、サーバ装置20の全体を制御するプロセッサであり、例えば単数又は複数のチップで構成される。処理装置220は、処理装置120と同様に、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU:Central Processing Unit)で構成される。なお、処理装置220の機能の一部又は全部は、DSP、ASIC、PLD、及びFPGA等のハードウェアで実現されてもよい。処理装置220は、各種の処理を並列的又は逐次的に実行する。
 記憶装置230は、処理装置220が読取可能な記録媒体である。記憶装置230は、処理装置220が実行する制御プログラムP2を含む複数のプログラム、情報処理装置10から収集したログL及び処理装置220が使用する各種のデータを記憶する。記憶装置230は、記憶装置130と同様に、例えば、不揮発性メモリと揮発性メモリとによって構成される。記憶装置230に含まれる揮発性メモリは、処理装置220の作業メモリとして用いられる。
 通信装置240は、移動体通信網又はインターネット等のネットワークNWを介して他の装置と通信する機器である。通信装置240は、通信装置140と同様に、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード又は通信モジュールとも表記される。通信装置240は、ネットワークNWを介して、情報処理装置10と通信可能である。
 入力装置250は、サーバ装置20を使用するための情報を入力するための機器である。入力装置250は、利用者による操作を受け付ける。例えば、入力装置250は、キーボード及びマウス等でもよい。
 出力装置260は、処理装置220による制御のもとで各種の情報を利用者に知らせる。出力装置160は、例えば、表示装置とスピーカとを備える。
 次に、処理装置220は、記憶装置230から制御プログラムP2を読み取り実行することによって、収集部222、予測部224、及び送信制御部226として機能する。
 収集部222は、複数の情報処理装置10の各々から、複数のログLを収集する。1つのログLは、一の情報処理装置10の動作に関する情報と時間とを対応付けた情報である。情報処理装置10の動作に関する情報は、情報処理装置10が実行するアプリケーションの種別、Webブラウザーを用いて表示した画面のURL、ファイルのアップロード、ファイルのダウンロード、及び音楽の再生に関する情報の他、動画の再生に関する情報を含む。動画の再生に関する情報は、例えば、解像度、フレームレート、バッファリング及びビットレートのうち少なくとも一つを含む。一の情報処理装置10から収集された複数のログLは、当該一の情報処理装置10を識別する識別情報と対応付けられて記憶装置230に記憶される。
 予測部224は、収集部222で収集された複数のログLに基づいて、ネットワークNWのスループットを予測し、予測結果を示す第2予測値X2を複数の情報処理装置10の各々について生成する。スループットの予測に使用されるログLの数が多くなるほど、予測部224によるスループットの予測精度は向上する。予測部224は、第2予測部に相当する。
 送信制御部226は、通信装置240に、生成した各第2予測値X2を、対応する情報処理装置10に対して送信させる。これにより、サーバ装置20が生成した各第2予測値X2が各情報処理装置10に通知される。上述したように、情報処理装置10は、情報処理装置10で予測したスループットとサーバ装置20で予測したスループットとのうち、より高い予測精度を有する予測値に基づいて、動画の品質を選択する。この結果、動画の品質はネットワークNWの通信状況に応じて適切に選択される。
1-4:配信装置
 図7は配信装置30の構成を示すブロック図である。配信装置30は、処理装置320、記憶装置330、及び通信装置340を具備するコンピュータシステムにより構成される。配信装置30の各要素は、単体又は複数のバスによって相互に接続される。また、配信装置30の各要素は、単数又は複数の機器によって構成される。
 処理装置320は、配信装置30の全体を制御するプロセッサであり、例えば単数又は複数のチップで構成される。処理装置320は、処理装置120と同様に、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置で構成される。なお、処理装置320の機能の一部又は全部は、DSP、ASIC、PLD、及びFPGA等のハードウェアで実現されてもよい。処理装置320は、各種の処理を並列的又は逐次的に実行する。
 記憶装置330は、処理装置320が読取可能な記録媒体である。記憶装置330は、処理装置320が実行する制御プログラムP3を含む複数のプログラム、動画データD及び処理装置320が使用する各種のデータを記憶する。記憶装置330は、記憶装置130と同様に、例えば、不揮発性メモリと揮発性メモリとによって構成される。記憶装置330に含まれる揮発性メモリは、処理装置320の作業メモリとして用いられる。
 通信装置340は、移動体通信網又はインターネット等のネットワークNWを介して他の装置と通信する機器である。通信装置340は、通信装置140と同様に、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード又は通信モジュールとも表記される。通信装置340は、ネットワークNWを介して、情報処理装置10と通信可能である。
 次に、処理装置320は、記憶装置330から制御プログラムP3を読み取り実行することによって、受付部322及び品質制御部324として機能する。
 受付部322は、情報処理装置10から送信される、動画の品質を指定する情報を含む要求を受け付ける。品質制御部324は受付部322で受け付けた要求に対応する動画データDを記憶装置330から読み出す。送信制御部326は通信装置340を用いて読み出した動画データDを、要求元の情報処理装置10に送信する。
1-5:情報処理システムの動作
 次に、情報処理システム1の動作を説明する。図8は情報処理システム1の動作を説明するためのシーケンスチャートである。
 まず、情報処理装置10の処理装置120は、利用者の入力装置150に対する操作に応じて特定された動画の動画データを送信するように配信装置30に対して要求する動画データ要求を生成する。送信制御部129は、通信装置140に、動画データ要求を配信装置30に対して送信させる。
 次に、配信装置30は動画データ要求を受信すると、動画データ要求で指定されるタイトルの動画データを生成し、動画データの送信を開始する(ステップS100)。生成された動画データを情報処理装置10が受信すると、処理装置120はデコード部128として機能する。処理装置120は、受信した動画データを伸張し、伸張した動画データを入力装置150に供給して、動画の再生を開始する(ステップS101)。
 また、デコード部128は、複数の期間T1~Tnの各々について動画の再生に関するログLを生成する。生成されたログLは通信装置140によって、複数の期間T1~Tnの各々についてサーバ装置20に送信される。また、処理装置120は予測部122として機能する。具体的には、処理装置120は、ネットワークNWのスループットを予測し、予測したスループットを示す第1予測値X1を生成する(ステップS102)。
 ステップS200において、サーバ装置20の処理装置220は、収集部222として機能し、複数の期間T1~Tnについての複数のログL(すなわち、ログLの時系列)を収集する。収集部222は、ログLの時系列を、複数の情報処理装置10の各々について収集する。
 ステップS201において、処理装置220は予測部224として機能する。具体的には、処理装置220は、収集された複数のログLに基づいて、ネットワークNWのスループットを予測し、予測結果を示す第2予測値X2を生成する。生成された第2予測値X2は、送信制御部129の制御の下、情報処理装置10に送信される。
 次に、情報処理装置10の処理装置120は、取得部123として機能する。具体的には、処理装置120は、第2予測値X2を取得する(ステップS103)。次に、処理装置120は選択部125として機能する。具体的には、処理装置120は、第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較する(ステップS104)。次に、処理装置120は、第1予測値X1及び第2予測値X2のうち、より小さい予測誤差を有する予測値を選択する(ステップS105)。
 この後、処理装置120は要求部127として機能する。具体的には、処理装置120は、選択した予測値に基づく品質の動画の送信を指定する動画データ要求を生成する(ステップS106)。当該動画データ要求は通信装置140によって、配信装置30に送信される。
 次に、配信装置30の処理装置320は受付部322として機能する。具体的には、処理装置320は、動画の品質を指定する情報を含む要求を受け付ける(ステップS107)。次に、処理装置320は品質制御部324として機能し、受け付けた要求に対応する動画データDを記憶装置330から読み出して、動画データDを生成する(ステップS108)。この後、読み出した動画データDは情報処理装置10に送信される。
 以上説明したように、本実施形態によれば、情報処理装置10は、ネットワークNWのスループットを予測し、予測結果を示す第1予測値X1を生成する予測部122を備えるので、情報処理装置10が自ら、スループットを予測できる。また、情報処理装置10の取得部123はネットワークNWに接続されるサーバ装置20で予測されたネットワークNWのスループットを示す第2予測値X2を、サーバ装置20から取得する。選択部125は、第1予測値X1又は第2予測値X2の一方を選択する。より具体的には、選択部125は、第1予測値X1及び第2予測値X2のうち、より高い予測精度を有する予測値を選択する。さらに、要求部127は、選択部125の選択結果に基づく品質の動画を情報処理装置10に対して送信するように配信装置30に要求する。したがって、情報処理装置10は、自らが予測した第1予測値X1とサーバ装置20が予測した第2予測値X2とを選択できるので、選択肢を有さない場合と比較して、ネットワークNWのスループットの予測精度が向上する。この結果、情報処理装置10は、動画の品質をネットワークの通信状況に応じて適切に選択できる。
 また、選択部125は、第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較して、より小さい予測誤差を有する予測値を選択する。したがって、第1予測値X1と第2予測値X2とのうち、より高い予測精度を有する予測値を用いて、動画の品質を指定することができる。
 具体的には、情報処理装置10は、複数の期間T1~Tnの各々において、動画を受信した際のネットワークNWのスループットを算出し、算出結果を示す実測値Yを生成する算出部124を備える。そして、予測部122は、複数の期間T1~Tnの各々において、第1予測値X1を予測し、サーバ装置20は、複数の期間T1~Tnの各々において、第2予測値X2を予測する。選択部125は、複数の期間T1~Tnのうち一の期間Tjにおける、第1予測値X1jと実測値Yjとの差分を示す第1差分値Z1jと、一の期間Tjにおける第2予測値X2jと実測値Yjとの差分を示す第2差分値Z2jとの比較結果に基づいて、一の期間Tj(第1の期間)の次(直後)の期間T(j+1)(第2の期間)において、第1予測値X1(j+1)又は第2予測値X2(j+1)の一方を選択する。
 また、サーバ装置20は、情報処理装置10から、動画の再生に関する情報を各々が含む複数のログLを収集する収集部222と、収集部222で収集された複数のログLに基づいて、ネットワークNWのスループットを予測し、予測結果を示す予測値を生成する予測部224と、通信装置240に、生成した予測値を情報処理装置10に対して送信させる送信制御部226と、を備える。サーバ装置20で生成された予測値は、第2予測値X2である。サーバ装置20で生成される第2予測値X2は、動画の再生に関する情報を各々が含む複数のログLに基づいて生成される。したがって、情報処理装置10の算出部124で算出されるネットワークNWのスループットとは、異なる観点で予測がなされる。情報処理装置10は、異なる観点で生成された第1予測値X1と第2予測値X2とのうち、より高い予測精度を有する予測値を選択できるので、ネットワークNWの通信状況に応じて、動画の品質を適切に選択することができる。
2.変形例
 以上に例示した態様に関する具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2個以上の態様を、相互に矛盾しない範囲において適宜に併合してもよい。
2-1.第1変形例
 情報処理装置10の選択部125は、複数の期間T1~Tnのうち、所定数の連続する期間にわたり第2予測値X2を選択した場合、当該連続する期間のうち最終期間の直後の期間において、第2予測値X2を選択してもよい。ここで、所定数は2以上の整数である。第2予測値X2は、動画の再生に関する情報を各々が含む複数のログLに基づいてサーバ装置20で生成される。したがって、ログLの数が増加すると第2予測値X2の予測精度が向上する。このため、ある期間において第2予測値X2が選択されると、その後の期間においても第2予測値X2が選択される可能性が高い。第1変形例によれば、選択部125が所定数の連続する期間にわたり第2予測値X2を選択した後は、選択部125は第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較する必要が無くなるので、処理装置120の処理負荷を軽減することができる。
 選択部125は、所定数の連続する期間にわたり第2予測値X2を選択した場合、その後の期間では、予測誤差の比較を省略して第2予測値X2を選択する。即ち、選択部125が所定数の連続する期間にわたり第2予測値X2を選択した時点で、第2予測値X2の予測精度が十分高くなっている。よって、その後の期間では、選択部125は第1予測値X1及び第2予測値X2のうち第2予測値X2の予測精度が高いと判断し、第2予測値X2を選択する。
2-2.第2変形例
 情報処理装置10の選択部125は、第2予測値X2の信頼度に応じて、第1予測値X1又は第2予測値X2のいずれかを選択する方法を異ならせてもよい。第2変形例において情報処理装置10の取得部123は、第2予測値X2の信頼度をサーバ装置20から取得する。選択部125は、信頼度が所定値未満である場合、第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較し、予測誤差の小さい予測値を選択する。また、選択部125は、信頼度が所定値以上である場合、第2予測値X2を選択する。第2変形例によれば、第2予測値X2の信頼度が所定値以上である場合、第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較する必要が無くなるので、処理装置120の処理負荷を軽減することができる。
2-3.第3変形例
 情報処理装置10の選択部125は、第2予測値X2の信頼度に応じて、第1予測値X1又は第2予測値X2のいずれかを選択してもよい。例えば、選択部125は、第2予測値X2の信頼度が所定値以上の場合、第2予測値X2を選択し、第2予測値X2の信頼度が所定値未満の場合、第1予測値X1を選択してもよい。第3変形例によれば、第1予測値X1の予測誤差と第2予測値X2の予測誤差とを比較する必要が無くなるので、処理装置120の処理負荷を軽減することができる。
2-4.第4変形例
 サーバ装置20の予測部224は、一の情報処理装置10から収集された一又は複数のログLと、他の情報処理装置10から収集された一又は複数のログLとに基づいて、一の情報処理装置10の予測値(第2予測値X2)を生成してもよい。また、サーバ装置20の予測部224は、予測値(第2予測値X2)の生成に用いたログLの数に応じて、第2予測値X2の信頼度を算出してもよい。この場合、ログLの数は、1つの情報処理装置10から収集したログLの数であってもよいし、複数の情報処理装置10から収集したログLの数であってもよい。送信制御部226は、通信装置240に、予測値(第2予測値X2)及び信頼度を情報処理装置10に対して送信させる。第2予測値X2及び信頼度を受信した情報処理装置10の選択部125は、例えば、上述の第2変形例又は第3変形例に記載した方法で、第1予測値X1又は第2予測値X2のいずれかを選択する。
 加えて、予測部224は、収集部222で収集された複数のログLに基づいてネットワークNWのスループットを予測し、スループットの予測に使用したログLの数に基づいて、スループットの信頼度を算出し、算出した信頼度を用いて予測したスループットを補正することにより予測値(第2予測値X2)を生成してもよい。例えば、予測部224は、信頼度が低い場合は、信頼度が高い場合と比較して、予測値(第2予測値X2)を小さくするように補正する。この補正によって、情報処理装置10の選択部125において、第2予測値X2の信頼度が低い場合に第2予測値X2が選択されたとしても、要求部127は品質の高い動画を配信装置30に対して要求しない。よって、情報処理装置10における動画の再生が大きく破綻する事態を回避することができる。
2-5.第5変形例
 サーバ装置20の予測部224は、統計量に基づいて予測値(第2予測値X2)の信頼度を算出してもよい。具体的には、第5変形例の収集部222は、複数の情報処理装置10の各々から複数のログLを収集する。予測部224は、複数の情報処理装置10の各々から収集された複数のログLに基づいて、各情報処理装置10についてネットワークNWのスループットを予測する。予測部224は、各情報処理装置10に対応する各スループットを各情報処理装置10に対応する予測値(第2予測値X2)とする。また、予測部224は、複数の情報処理装置10についての複数のスループットに基づいて統計量を算出する。統計量は、例えば、分散が好適である。あるいは、統計量は、標準偏差、又は、最大値と最小値との差であってもよい。さらに、予測部224は、算出された統計量に基づいて複数の予測値(第2予測値X2)に対応する1つの信頼度を算出する。例えば、統計量が分散である場合、分散の値が大きいほど信頼度は低く、分散の値が小さいほど信頼度は高い。送信制御部226は、通信装置240に、各予測値(第2予測値X2)及び信頼度を、対応する情報処理装置10に対して送信させる。第2予測値X2及び信頼度を受信した情報処理装置10の選択部125は、例えば、上述の第2変形例又は第3変形例に記載した方法で、第1予測値X1又は第2予測値X2のいずれかを選択する。
 また、予測部224は、複数の情報処理装置10について予測された複数のスループットを、算出した信頼度に基づいて補正することにより、補正した各予測値を各情報処理装置10の予測値(第2予測値X2)として生成してもよい。すなわち、予測部224は、複数の情報処理装置10についてそれぞれ補正した複数の第2予測値X2を生成する。送信制御部226は、通信装置240に、補正した各予測値(第2予測値X2)を、対応する情報処理装置10に対して送信させる。この補正によって、情報処理装置10の選択部125において、第2予測値X2の信頼度が低い場合に第2予測値X2が選択されたとしても、要求部127は品質の高い動画を配信装置30に対して要求しない。したがって、情報処理装置10における動画の再生が大きく破綻する事態を回避することができる。
2-6.第6変形例
 サーバ装置20の予測部224は、一の情報処理装置10を収容する基地局の通信品質を示す品質情報を取得し、取得した品質情報と複数のログLとを用いて予測値(第2予測値X2)を算出してもよい。第6変形例の収集部222は、ネットワークNWに含まれる複数の基地局(図示略)の各々について、当該基地局の通信品質を示す品質情報を収集する。予測部224は、複数の品質情報のうち、一の情報処理装置10を収容する基地局に対応する品質情報と、当該一の情報処理装置10に対応する複数のログLとに基づいて、第2予測値X2を算出する。ネットワークNWのスループットの予測に、基地局の通信品質(スループット等)も使用されるため、予測値(第2予測値X2)の予測精度を向上させることができる。
2-7.第7変形例
 上述した実施形態では第1予測値X1と第2予測値X2のいずれかを選択する処理は、情報処理装置10が実行したが、この処理をサーバ装置20が実行してもよい。
3.その他
 (1)実施形態及び第1変形例~第7変形例の各々においては、記憶装置130、230及び330は、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、CD-ROM(Compact Disc-ROM)、レジスタ、リムーバブルディスク、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ、データベース、サーバその他の適切な記憶媒体を含んでもよい。また、プログラムは、電気通信回線を介してネットワークから送信されてもよい。
 (2)実施形態及び第1変形例~第7変形例の各々は、LTE(Long Term Evolution)、LTE-A(LTE-Advanced)、SUPER 3G、IMT-Advanced、4G、5G、FRA(Future Radio Access)、W-CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi-Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
 (3)実施形態及び第1変形例~第7変形例の各々において説明した情報などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、情報、ビット、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。なお、本明細書において説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
 (4)第1実施形態及び第1変形例~第7変形例の各々において、入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルによって管理されてもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
 (5)実施形態及び第1変形例~第7変形例の各々において、判定は、1ビットによって表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
 (6)実施形態及び第1変形例~第7変形例の各々において例示した処理手順、シーケンス、フローチャート等は、矛盾のない限り、順序を入れ替えてもよい。例えば、本明細書において説明した方法については、例示的な順序によって様々なステップの要素を提示しており、提示した特定の順序に限定されない。
 (7)図3、図6及び図7に例示された各機能は、ハードウェア及びソフトウェアの任意の組み合わせによって実現される。また、各機能は、単体の装置によって実現されてもよいし、相互に別体にて構成された2個以上の装置によって実現されてもよい。
 (8)実施形態及び第1変形例~第7変形例の各々において例示したプログラムは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード又はハードウェア記述言語と呼ばれるか、他の名称によって呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順又は機能等を意味するよう広く解釈されるべきである。
 また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
 (9)実施形態及び第1変形例~第7変形例の各々において、「システム」及び「ネットワーク」という用語は、互換的に使用される。
 (10)実施形態及び第1変形例~第7変形例の各々において、情報処理装置10は、移動局である場合が含まれる。移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語で呼ばれる場合もある。
 (11)本明細書において使用する「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up)(例えば、テーブル、データベース又は別のデータ構造における探索)、確認(ascertaining)した事を「決定」したとみなす事などを含み得る。また、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「決定」したとみなす事などを含み得る。また、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「決定」したとみなす事を含み得る。つまり、「決定」は、何らかの動作を「決定」したとみなす事を含み得る。
 (12)実施形態及び第1変形例~第7変形例の各々において、「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
 (13)本明細書において使用する「第1」及び「第2」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定しない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書において使用され得る。したがって、第1及び第2の要素への参照は、2つの要素のみが採用され得ること又は何らかの形において第1要素が第2要素に先行しなければならないことを意味しない。
 (14)実施形態及び第1変形例~第7変形例の各々において「含む(including)」、「含んでいる(comprising)」、及びそれらの変形が、本明細書あるいは特許請求の範囲において使用されている限り、これら用語は、用語「備える」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
 (15)本願の全体において、例えば、英語におけるa、an及びtheのように、翻訳によって冠詞が追加された場合、これらの冠詞は、文脈から明らかにそうではないことが示されていなければ、複数を含む。
 (16)本発明が本明細書中に説明した実施形態に限定されないことは当業者にとって明白である。本発明は、特許請求の範囲の記載に基づいて定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施できる。したがって、本明細書の記載は、例示的な説明を目的とし、本発明に対して何ら制限的な意味を有さない。また、本明細書に例示した態様から選択された複数の態様を組み合わせてもよい。
 1…情報処理システム、10…情報処理装置、20…サーバ装置、30…配信装置、120,220,320…処理装置、122…予測部、123…取得部、124…算出部、125…選択部、127…要求部、129,226,326…送信制御部、222…収集部、224…予測部、X1…第1予測値、X2…第2予測値、Y…実測値、Z1j…第1差分値、Z2j…第2差分値。

Claims (10)

  1.  ネットワークを介して配信装置の送信する動画を受信する情報処理装置であって、
     前記ネットワークのスループットを予測し、当該予測したスループットを示す第1予測値を生成する予測部と、
     前記ネットワークに接続されるサーバ装置により予測された前記ネットワークのスループットを示す第2予測値を、前記サーバ装置から取得する取得部と、
     前記第1予測値及び前記第2予測値のうち、より高い予測精度を有する予測値を選択する選択部と、
     前記選択された予測値に基づく品質の動画を送信するように前記配信装置に要求する要求部と、
     を備える情報処理装置。
  2.  前記選択部は、前記ネットワークのスループットの実測値に対する前記第1予測値の予測誤差と前記実測値に対する前記第2予測値の予測誤差とを比較し、予測誤差の小さい予測値を選択する請求項1に記載の情報処理装置。
  3.  前記動画は、前記要求部が要求する品質で複数の期間の各々において送信され、
     当該情報処理装置は、さらに、
     前記複数の期間の各々において、当該情報処理装置が前記動画を受信した際の前記ネットワークのスループットを算出し、当該算出したスループットを示す実測値を生成する算出部を備え、
     前記予測部は、前記複数の期間の各々において、前記第1予測値を予測し、
     前記サーバ装置は、前記複数の期間の各々において、前記第2予測値を予測し、
     前記選択部は、前記複数の期間のうち第1の期間における前記第1予測値と前記第1の期間における前記実測値との差分を示す第1差分値と、前記1の期間における前記第2予測値と前記第1の期間における前記実測値との差分を示す第2差分値との比較結果に基づいて、前記第1の期間の直後の第2の期間において、前記第1予測値又は前記第2予測値の一方を選択する、
     請求項2に記載の情報処理装置。
  4.  前記選択部は、前記複数の期間のうち、所定数の連続する期間にわたり前記第2予測値を選択した場合、前記連続する期間のうち最終期間の直後の期間において、前記第2予測値を選択する、請求項3に記載の情報処理装置。
  5.  前記取得部は、前記第2予測値の信頼度を前記サーバ装置から取得し、
     前記選択部は、
     前記信頼度が所定値未満である場合、前記第1予測値の前記予測誤差と前記第2予測値の前記予測誤差とを比較し、予測誤差の小さい予測値を選択し、
     前記信頼度が前記所定値以上である場合、前記第2予測値を選択する、
     請求項2に記載の情報処理装置。
  6.  動画を配信する配信装置及び、前記動画を各々が受信する複数の情報処理装置が接続されるネットワークに接続されるサーバ装置であって、
     前記複数の情報処理装置のうち、一の情報処理装置から、前記動画の再生に関する情報を各々が含む複数のログを収集する収集部と、
     前記複数のログに基づいて、前記ネットワークのスループットを予測し、当該予測したスループットを示す予測値を生成する予測部と、
     通信装置に、前記予測値を前記一の情報処理装置に対して送信させる送信制御部と、
     を備えるサーバ装置。
  7.  前記予測部は、前記スループットの予測に使用した前記複数のログの数に基づいて算出した信頼度に基づいて前記予測されたスループットを補正することにより、前記予測値を生成する、請求項6に記載のサーバ装置。
  8.  前記収集部は、前記複数の情報処理装置の各々から前記複数のログを収集し、
     前記予測部は、各情報処理装置について前記予測値を生成し、
     前記各情報処理装置に対応する前記予測値の生成において、
     前記予測部は、
     各情報処理装置から収集された前記複数のログに基づいて前記ネットワークのスループットを各情報処理装置について予測し、
     前記複数の情報処理装置に1対1で対応する複数のスループットに基づいて統計量を算出し、
     当該算出された統計量に基づいて信頼度を算出し、
     前記複数のスループットの各々を前記信頼度に基づいて補正する、
     請求項6に記載のサーバ装置。
  9.  前記ネットワークは前記一の情報処理装置を収容する基地局を含み、
     前記収集部は、前記基地局の通信品質を示す品質情報を取得し、
     前記予測部は、前記品質情報と、前記複数のログとに基づいて、前記予測値を算出する、
     請求項6に記載のサーバ装置。
  10.  ネットワークを介して配信装置の送信する動画を受信する情報処理装置と、前記情報処理装置に前記ネットワークを介して接続されるサーバ装置とを有する情報処理システムであって、
     前記情報処理装置は、
     前記ネットワークのスループットを予測し、当該予測したスループットを示す第1予測値を生成する第1予測部と、
     前記サーバ装置により予測された前記ネットワークのスループットを示す第2予測値を、前記サーバ装置から取得する取得部と、
     前記第1予測値及び前記第2予測値のうち、より高い予測精度を有する予測値を選択する選択部と、
     前記選択された前記予測値に基づく品質の動画を送信するように前記配信装置に要求する要求部とを備え、
     前記サーバ装置は、
     前記情報処理装置から、前記動画の再生に関する情報を各々が含む複数のログを収集する収集部と、
     前記複数のログに基づいて、前記第2予測値を予測する第2予測部と、
     通信装置に、前記第2予測値を前記情報処理装置に対して送信させる送信制御部とを備える、
     情報処理システム。
PCT/JP2019/043654 2019-02-01 2019-11-07 情報処理装置、サーバ装置及び情報処理システム WO2020158094A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020569383A JP7253574B2 (ja) 2019-02-01 2019-11-07 情報処理装置、サーバ装置及び情報処理システム
US17/422,526 US11716508B2 (en) 2019-02-01 2019-11-07 Information processing apparatus, server apparatus, and information processing system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-016761 2019-02-01
JP2019016761 2019-02-01

Publications (1)

Publication Number Publication Date
WO2020158094A1 true WO2020158094A1 (ja) 2020-08-06

Family

ID=71841041

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/043654 WO2020158094A1 (ja) 2019-02-01 2019-11-07 情報処理装置、サーバ装置及び情報処理システム

Country Status (3)

Country Link
US (1) US11716508B2 (ja)
JP (1) JP7253574B2 (ja)
WO (1) WO2020158094A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023233631A1 (ja) * 2022-06-02 2023-12-07 日本電信電話株式会社 映像品質推定装置、映像品質推定方法及びプログラム
WO2023233612A1 (ja) * 2022-06-02 2023-12-07 日本電信電話株式会社 通信品質予測装置及び通信品質予測方法並びに通信品質予測プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013008387A1 (ja) * 2011-07-08 2013-01-17 日本電気株式会社 パラメータ推定装置、パラメータ推定方法、及び、パラメータ推定プログラム
JP2018088598A (ja) * 2016-11-28 2018-06-07 日本電信電話株式会社 配信制御装置、配信制御方法及びプログラム
WO2018180394A1 (ja) * 2017-03-28 2018-10-04 日本電気株式会社 通信装置、メディア配信システム、メディア配信方法および非一時的なコンピュータ可読媒体

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8356327B2 (en) * 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8812662B2 (en) * 2011-06-29 2014-08-19 Sonic Ip, Inc. Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
US20150006621A1 (en) * 2013-07-01 2015-01-01 Futurewei Technologies, Inc. Adaptive Video Streaming for Information Centric Networks
FI20155792A (fi) * 2015-11-02 2017-05-03 Db Pro Oy Kapasiteettisuunnittelumenetelmä
JP6466870B2 (ja) 2016-02-29 2019-02-06 Kddi株式会社 クライアント装置および方法
US10362080B2 (en) * 2017-04-25 2019-07-23 At&T Intellectual Property I, L.P. Methods, systems, and devices for video streaming adaptation using control theoretic approach
CN109218781A (zh) * 2017-07-07 2019-01-15 华为软件技术有限公司 视频码率控制方法和装置
US10834003B2 (en) * 2018-01-17 2020-11-10 Druva Inc. Systems and methods for adaptive bandwidth throttling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013008387A1 (ja) * 2011-07-08 2013-01-17 日本電気株式会社 パラメータ推定装置、パラメータ推定方法、及び、パラメータ推定プログラム
JP2018088598A (ja) * 2016-11-28 2018-06-07 日本電信電話株式会社 配信制御装置、配信制御方法及びプログラム
WO2018180394A1 (ja) * 2017-03-28 2018-10-04 日本電気株式会社 通信装置、メディア配信システム、メディア配信方法および非一時的なコンピュータ可読媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Successful demonstration experiment of video distribution technology based on experience quality model", NIPPON TELEGRAPH AND TELEPHONE CORPORATION, 19 April 2018 (2018-04-19), Retrieved from the Internet <URL:https://www.ntt.co.jp/news2018/1804/1804196b.html> [retrieved on 20191125] *
ANONYOUS: "The transactions of the institute of electronics, information and communication engineers", INSTITUTE OF ELECTRONICS, vol. J101-B, no. 5, 30 January 2018 (2018-01-30), pages 320 - 337, Retrieved from the Internet <URL:https://search.ieice.org/bin/pdf_advpub.php?category=B&lang=J&fname=2017M0P0001&abst=> [retrieved on 20191125] *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023233631A1 (ja) * 2022-06-02 2023-12-07 日本電信電話株式会社 映像品質推定装置、映像品質推定方法及びプログラム
WO2023233612A1 (ja) * 2022-06-02 2023-12-07 日本電信電話株式会社 通信品質予測装置及び通信品質予測方法並びに通信品質予測プログラム

Also Published As

Publication number Publication date
US11716508B2 (en) 2023-08-01
JP7253574B2 (ja) 2023-04-06
US20220103898A1 (en) 2022-03-31
JPWO2020158094A1 (ja) 2021-11-18

Similar Documents

Publication Publication Date Title
US8862733B2 (en) User-based prioritization for content transcoding
US20130128947A1 (en) System and method for automatically selecting encoding/decoding for streaming media
US20150156557A1 (en) Display apparatus, method of displaying image thereof, and computer-readable recording medium
CN105052107A (zh) 使用质量信息进行媒体内容自适应传输
WO2019187358A1 (ja) 評価装置
WO2020158094A1 (ja) 情報処理装置、サーバ装置及び情報処理システム
JP6033298B2 (ja) 最適な表示のための、トランスコーディング検出およびコンテンツの調整
CN111782968A (zh) 内容推荐方法、装置、可读介质及电子设备
US20140215071A1 (en) Method and device for receiving content
JP2022006158A (ja) ビデオ符号化方法、ビデオ符号化装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
US20230169691A1 (en) Method of providing image storage service, recording medium and computing device
CN115660589A (zh) 业务审核方法、装置、设备、计算机可读介质和程序产品
WO2021039797A1 (ja) クリック率予測モデル構築装置
KR101043623B1 (ko) 컨텐츠 푸쉬 장치 및 방법
CN110418134B (zh) 基于视频质量的视频编码方法、装置及电子设备
CN104662836A (zh) 用于在媒体流传输服务中发送/接收缓冲数据的装置和方法
JP6517342B2 (ja) 配信レート選択装置、配信レート選択方法、及びプログラム
JP6466870B2 (ja) クライアント装置および方法
JPWO2016194478A1 (ja) 動画パラメータ選択装置、動画パラメータ選択方法、及びプログラム
JP7158564B2 (ja) 情報処理装置、サーバ装置、ユーザ装置及び情報処理システム
WO2020250781A1 (ja) 推論装置
US11665402B2 (en) Recommendation device
WO2022044811A1 (ja) レコメンド装置
JP2019020979A (ja) 情報処理装置および信用度算出方法
CN105634914A (zh) 消息发送系统、消息发送服务器、用户终端设备、用于发送消息的方法以及用于接收消息的方法

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020569383

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19914152

Country of ref document: EP

Kind code of ref document: A1