WO2014073202A1 - 情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体 - Google Patents

情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体 Download PDF

Info

Publication number
WO2014073202A1
WO2014073202A1 PCT/JP2013/006526 JP2013006526W WO2014073202A1 WO 2014073202 A1 WO2014073202 A1 WO 2014073202A1 JP 2013006526 W JP2013006526 W JP 2013006526W WO 2014073202 A1 WO2014073202 A1 WO 2014073202A1
Authority
WO
WIPO (PCT)
Prior art keywords
multimedia data
multimedia
bit rate
information
data
Prior art date
Application number
PCT/JP2013/006526
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 日本電気株式会社
Publication of WO2014073202A1 publication Critical patent/WO2014073202A1/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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays

Definitions

  • the present invention relates to technology for controlling the amount of communication data in content distribution.
  • HTTP Hyper Text Transport Protocol
  • TCP Transmission Control Protocol
  • a progressive download method is often used for streaming of multimedia data using HTTP.
  • a multimedia file representing content is downloaded from a server by using HTTP.
  • playback of multimedia data is started when downloading of the amount of multimedia data necessary for playback is completed, instead of waiting until all multimedia data constituting the multimedia file is downloaded. Do.
  • downloading of multimedia data continues even during playback.
  • downloaded data is stored in a playback buffer provided in the terminal, and playback is performed while sequentially reading data stored in the playback buffer.
  • the progressive download method if the download is not in time and there is no multimedia data stored in the reproduction buffer at the time of reproduction, the reproduction is stopped because the data to be reproduced can not be prepared. As a result, the quality of experience of the user is greatly impaired.
  • multimedia data is downloaded in a burst manner so that the buffer amount of the terminal does not become zero.
  • the progressive download method using HTTP as much downloaded multimedia data as possible is stored in the playback buffer provided in the terminal.
  • accumulating a lot of multimedia data has become a major problem.
  • streaming services using the Internet there are few users who view content from the beginning to the end, and many users stop viewing on the way.
  • the multimedia data stored in the reproduction buffer of the terminal is discarded without being viewed (used) by the user.
  • transmitting data that is likely to be discarded after downloading, despite the fact that the multimedia data traffic is half reduces the utilization efficiency of limited radio resources.
  • Patent Document 1 discloses a content distribution system.
  • the content distribution system manages, as meta-information, a bit rate which is an amount of data per unit time at the time of reproducing a multimedia file. Then, when distributing multimedia content from the distribution server, this content distribution system determines the download rate based on the bit rate of the content, and transmits multimedia data based on the determined download rate.
  • Patent Document 2 discloses a retransmission apparatus that calculates a bit rate of content by extracting a time stamp from a TS (Transport Stream) constituting multimedia data, and retransmits the content at an appropriate bit rate.
  • TS Transport Stream
  • an information processing apparatus temporarily stores multimedia data received from a distribution server for distributing multimedia files in response to a distribution request from a terminal, and A header detection means for detecting whether the multimedia data stored in the temporary storage means includes information used to calculate a bit rate of the multimedia data; and the header detection means detects the header data.
  • an information processing method temporarily stores multimedia data received from a distribution server for distributing multimedia files in a temporary storage means in response to a distribution request from a terminal. Detecting whether or not the stored multimedia data contains information used in calculating the bit rate of the multimedia data, and calculating the bit rate of the multimedia data based on the detected information. And reading out the multimedia data from the temporary storage means based on the calculated bit rate and transmitting it to the terminal.
  • a computer program recording medium temporarily stores multimedia data received from a distribution server for distributing multimedia files in response to a distribution request from a terminal.
  • a header detection process for detecting whether or not the stored multimedia data contains information used in calculating the bit rate of the multimedia data, and based on the detected information,
  • a computer readable program is stored that causes a computer to execute rate calculation processing for calculating a bit rate and data transmission processing for reading out the multimedia data based on the calculated bit rate and transmitting the multimedia data to the terminal.
  • multimedia data to be discarded after downloading can be reduced.
  • FIG. 5 It is a block diagram which shows the structural example of the terminal shown in FIG. It is a figure which shows the example of the request
  • FIG. 1 is a diagram showing a configuration example of a content distribution system 10 including an information processing device 1 according to a first embodiment of the present invention.
  • the content distribution system 10 includes an information processing device 1, a distribution server 100, a terminal 102, a network 104, and a network 106.
  • the distribution server 100 is an information processing apparatus that transmits multimedia content to the information processing apparatus 1 via a communication network (hereinafter, abbreviated as “network”) 104.
  • the distribution server 100 includes storage devices such as a CPU (central processing unit), a memory, and an HDD (hard disk drive) not shown.
  • the distribution server 100 is realized by the CPU executing a program stored in the storage device.
  • the distribution server 100 is realized as an HTTP server (Web server). Further, the distribution server 100 may be a distribution server that uses a protocol other than HTTP.
  • the information processing apparatus 1 is disposed between the distribution server 100 and the terminal 102, and is communicably connected via the network 104 and the network 106, respectively.
  • communication between the distribution server 100 and the information processing apparatus 1 and between the information processing apparatus 1 and the terminal 102 is assumed to be performed using the HTTP protocol. Further, protocols other than HTTP may be used between the distribution server 100 and the information processing apparatus 1 and between the information processing apparatus 1 and the terminal 102. The details of the information processing apparatus 1 will be described later with reference to FIG.
  • the terminal 102 receives multimedia content from the information processing device 1 via the network 106.
  • the terminal 102 reproduces (displays etc.) the multimedia content received from the information processing apparatus 1.
  • the terminal 102 may play back (display etc.) the multimedia content while receiving the multimedia content from the information processing apparatus 1.
  • a plurality of terminals 102 may exist. When there are a plurality of terminals 102, each terminal 102 is connected to the information processing apparatus 1 via the network 106, and receives multimedia content according to the request of each terminal 102. At this time, the multimedia content received from the information processing apparatus 1 may be received by the terminal 102 which made the request, or may be distributed to another terminal 102.
  • the terminal 102 includes a storage device such as a CPU (central processing unit), a memory, and an HDD (hard disk drive) not shown.
  • the terminal 102 is realized by the CPU executing a program stored in the storage device.
  • the terminal 102 is realized as an HTTP client (web browser).
  • the terminal 102 may use a protocol other than HTTP.
  • the distribution server 100 obtains multimedia content from an external device in accordance with a request from the terminal 102.
  • the multimedia content may be stored in the distribution server 100.
  • the multimedia content is a multimedia file.
  • Multimedia files include various multimedia data such as video data and audio data. Multimedia content may be stored in the distribution server 100. Also, multimedia content may be stored on another device.
  • the network 104 and the network 106 are any communication network that enables communication conforming to IP (Internet Protocol).
  • the network 104 and the network 106 include relay devices such as routers (not shown).
  • a part or all of the network 104 and the network 106 may be realized by wired communication or wireless communication.
  • mobile networks such as third generation mobile network (3G), HSPA network (High Speed Packet Access) and LTE network (Long Term Evolution), or wireless LAN (WiFi) may be used.
  • wireless communication may be connected by any wireless communication that enables IP-based communication.
  • a multimedia service is transmitted in the form of VoD (Video on Demand) in which multimedia content is transmitted in response to a request from the terminal 102. Further, in the present embodiment, it may be a service for transmitting multimedia content.
  • VoD Video on Demand
  • FIG. 2 is a diagram showing an example of a hardware configuration of the information processing apparatus 1 according to the first embodiment of the present invention.
  • the information processing apparatus 1 includes a CPU 11, a memory 12, an HDD 14, a communication IF (interface) 16 that enables communication via a network (not shown), and a computer readable storage such as a CD (compact disc). It has a reader / writer 18 capable of reading data stored in the medium 20. These components are connected to one another through a bus 22 to input and output data.
  • the information processing apparatus 1 is realized by the CPU 11 executing a computer program (hereinafter, referred to as “program”) stored in the memory 12 or the HDD 14.
  • program a computer program
  • the information processing apparatus 1 may be realized by the CPU 11 executing a program stored in the storage medium 20.
  • the program executed by the CPU 11 may be obtained from the outside via the communication IF 16 or the reader / writer 18.
  • the hardware configuration example of the information processing apparatus 1 shown in FIG. 2 is also applicable to each embodiment described later.
  • FIG. 3 is a block diagram showing an exemplary configuration of the information processing apparatus 1 according to the first embodiment of the present invention.
  • FIG. 3 is a block diagram representing functions implemented using the hardware resources illustrated in FIG. 2 in functional units.
  • the information processing apparatus 1 according to the first embodiment includes a data reception unit 202, a temporary storage unit 204, a header detection unit 206, a rate calculation unit 208, and a data transmission unit 210.
  • the data receiving unit 202 receives multimedia data transmitted from the distribution server 100. Specifically, the data receiving unit 202 receives multimedia data constituting a multimedia file from the distribution server 100.
  • the temporary storage unit 204 temporarily stores the multimedia data received by the data reception unit 202.
  • the header detection unit 206 detects whether the multimedia data stored in the temporary storage unit 204 includes information for calculating the bit rate of the multimedia data.
  • the information for calculating the bit rate is information used when calculating the transfer rate (bit rate) of multimedia data, for example, the file size of the multimedia file, and all the multi files included in the multimedia file. It is information such as reproduction time required when reproducing media data at a constant speed.
  • the rate calculation unit 208 calculates the bit rate of the multimedia data based on the information detected by the header detection unit 206.
  • the rate calculation unit 208 is based on, for example, the file size of the multimedia file detected by the header detection unit 206 and the reproduction time required to reproduce all the multimedia data included in the multimedia file at the same speed. Calculate the bit rate of the multimedia data.
  • the data transmission unit 210 reads the multimedia data from the temporary storage unit 204 based on the bit rate calculated by the rate calculation unit 208, and transmits the multimedia data to the terminal 102.
  • multimedia data transmitted from the distribution server 100 is described as being received by the information processing apparatus 1, but may be configured to be received by an external apparatus.
  • FIG. 4 is a flowchart showing the operation of the information processing apparatus 1 according to the first embodiment of the present invention.
  • the flowchart shows the processing procedure of the CPU 11 that executes the program when each block shown in FIG. 3 is represented by the program.
  • the data receiving unit 202 receives multimedia data transmitted from the distribution server 100 (step S102).
  • the data receiving unit 202 stores the multimedia data received from the distribution server 100 in the temporary storage unit 204 (step S104).
  • the header detection unit 206 detects, from the multimedia data stored in the temporary storage unit 204, information used when calculating the bit rate (step S106).
  • the rate calculation unit 208 calculates the bit rate of the multimedia data stored in the temporary storage unit 204 based on the information for calculating the bit rate detected by the header detection unit 206 (step S108).
  • the data transmission unit 210 reads multimedia data from the temporary storage unit 204 (step S110).
  • the data transmission unit 210 transmits the multimedia data read from the temporary storage unit 204 to the terminal 102 based on the bit rate calculated by the rate calculation unit 208 (step S112).
  • the information processing apparatus 1 can reduce multimedia data discarded after downloading even if the bit rate of content is not known in advance. The reason is that even if the bit rate of the content is not known, the bit rate of multimedia data is calculated, and multimedia data is transferred based on the calculated bit rate of multimedia data.
  • FIG. 5 is a block diagram showing a configuration example of the information processing device 2 according to the second embodiment of the present invention.
  • the information processing apparatus 2 according to the second embodiment of the present invention includes a distribution request reception unit 212, a request transfer destination determination unit 214, a distribution request transfer unit 216, a data request unit 218, and a content storage unit.
  • the difference from the configuration of the information processing apparatus 1 according to the first embodiment is that the information processing apparatus further includes 220 and a metadata storage unit 222.
  • the other configuration is the same as that of the information processing apparatus 1 according to the first embodiment, and therefore, the same drawing reference number is given and the redundant description is omitted.
  • the distribution request receiving unit 212 receives a distribution request of multimedia files from the terminal 102 to the distribution server 100.
  • the request transfer destination determination unit 214 determines whether to transfer the request to the distribution server 100 based on the distribution request received from the terminal 102. For example, in the case where another user has requested the same multimedia file in advance and the requested multimedia file is stored in the content storage unit 220, the request transfer destination determination unit 214 determines whether the distribution server 100 Do not forward delivery requests to
  • the distribution request transfer unit 216 transfers the distribution request of the multimedia file to the distribution server 100. Specifically, when the request transfer destination determining unit 214 determines to transfer the request to the distribution server 100, the distribution request transfer unit 216 transfers the distribution request of the multimedia file to the distribution server 100. .
  • the data request unit 218 requests the distribution server 100 to receive the information for calculating the bit rate when the information for calculating the bit rate is not included.
  • the content storage unit 220 stores the multimedia file for which transmission has been completed when transmission of all the multimedia data constituting the multimedia file read from the temporary storage unit 204 to the terminal 102 is completed. .
  • the metadata storage unit 222 stores metadata of the multimedia file. Specifically, the metadata storage unit 222 stores metadata such as a bit rate and a URL (Universal Resource Locator) indicating the original location of the multimedia file.
  • metadata such as a bit rate and a URL (Universal Resource Locator) indicating the original location of the multimedia file.
  • URL Universal Resource Locator
  • FIG. 6 is a flowchart showing the operation of the information processing apparatus 2 according to the second embodiment of the present invention.
  • the flowchart shows the processing procedure of the CPU 11 that executes the program when each block shown in FIG. 5 is represented by the program.
  • the distribution request receiving unit 212 receives a distribution request from the terminal 102 (step S202).
  • the request transfer destination determining unit 214 determines whether to transfer the distribution request accepted by the distribution request accepting unit 212 to the distribution server 100 (step S204). When the request transfer destination determination unit 214 determines not to transfer the distribution request to the distribution server 100 (NO in step S204), the data transmission unit 210 reads the multimedia file from the content storage unit 220 (step S206).
  • the data transmission unit 210 reads the bit rate of the multimedia file read from the content storage unit 220 from the metadata storage unit 222 (step S208).
  • the distribution request transfer unit 216 transfers the distribution request to the distribution server 100.
  • the data receiving unit 202 receives the multimedia data transmitted from the distribution server 100 (step S102).
  • the data receiving unit 202 stores the multimedia data received from the distribution server 100 in the temporary storage unit 204 (step S104).
  • the header detection unit 206 detects information used to calculate a bit rate from the multimedia data stored in the temporary storage unit 204 (step S106).
  • the header detection unit 206 If the header detection unit 206 can not detect the information used to calculate the bit rate from the stored multimedia data (NO in step S210), the header detection unit 206 advances the process to step S212.
  • the data request unit 218 requests the distribution server 100 for data capable of detecting information used when calculating the bit rate (step S212). Then, the process returns to step S102.
  • the rate calculation unit 208 stores the information stored in the temporary storage unit 204.
  • the bit rate of multimedia data is calculated based on the information detected by the header detection unit 206.
  • the data transmission unit 210 reads multimedia data from the temporary storage unit 204 based on the bit rate calculated by the rate calculation unit 208 (step S110).
  • the data transmission unit 210 transmits the read multimedia data to the terminal 102 at the transmission rate based on the bit rate (step S212).
  • the information processing apparatus 2 when the information processing apparatus 2 according to the second embodiment of the present invention receives a distribution request in advance and the content storage unit 220 stores the multimedia file, the information processing apparatus 2 receives from the distribution server 100 Content can be delivered without waiting for The reason is that the information processing apparatus 2 includes the content storage unit 220 and the metadata storage unit 222, so that it is possible to acquire the multimedia file and its bit rate.
  • bit rate calculation method A bit rate calculation method common to the first embodiment and the second embodiment described above will be described.
  • FIG. 7 is a block diagram showing a configuration example of the terminal 102.
  • the terminal 102 includes a data receiving unit 302, a reproduction buffer 304, and a reproduction unit 306.
  • the reproduction unit 306 accumulates the multimedia data received by the data reception unit 302 in the reproduction buffer 304. Will play.
  • the content is stored in the playback buffer 304 Multimedia data does not empty.
  • the multimedia data stored in the playback buffer 304 Will eventually be 0. At this time, since there is no multimedia data that can be reproduced by the reproduction unit 306 in the reproduction buffer 304, the reproduction unit 306 stops the reproduction of the multimedia file.
  • the data transmission unit 210 shown in FIG. 5 transmits multimedia data at a rate that does not fall below the amount of multimedia data per unit time used by the playback unit 306 during playback, that is, the bit rate of multimedia data. do it.
  • the rate calculation unit 208 shown in FIG. 5 calculates the bit rate of multimedia data required for transmission in the data transmission unit 210.
  • the bit rate of multimedia data is the file size of the multimedia file (content_size [byte]) and the playback time (duration [seconds]) required when playing back all multimedia data at the same speed, ie, multimedia
  • the file playback time is calculated by the following equation (1).
  • (Bitrate) (content_size) ⁇ (duration) (1)
  • the header detection unit 206 shown in FIG. 5 detects whether the multimedia data received by the data reception unit 202 and stored in the temporary storage unit 204 includes the file size and the reproduction time.
  • FIG. 8 is a diagram illustrating an example of a request from the distribution request transfer unit 216 to the distribution server 100.
  • FIG. 9 is a diagram showing an example of the response from the distribution server 100 to the request. Only necessary information is described in FIG. 8 and FIG. 9, and the request or response additionally includes header information.
  • the distribution request transfer unit 216 requests the distribution server 100 for the content of “/vod/video.mp4”.
  • “Content-Type:” included in the response from the distribution server 100 indicates the type of file
  • “Content-Length:” indicates the size of the file. That is, the file size of the multimedia file is described in "Content-Length:”. That is, content_size is acquired by detecting "Content-Length:”.
  • the file size of "/vod/video.mp4" is 5000000 bytes.
  • information in accordance with the file size and the file size may be described in the header portion.
  • information contained in the file may be used as content_size.
  • the method of acquiring the playback time of the multimedia file differs depending on the file format.
  • MP4 file format based on the file specified in ISO / IEC (International Organization for Standardization / International Electrotechnical Commission) 14496-12, 3GP (3rd Generation Partnership) file format, etc.
  • the playback time is described in the "moov" box described.
  • the playback time of the multimedia file can be calculated if the number of samples (the number of frames) of the multimedia data and the sampling frequency (frame rate) are described.
  • the reproduction time is calculated by the following equation (2).
  • (Duration) (frame_num) ⁇ (frame_rate) (2)
  • b calculated by the equation (3) does not usually include the amount of data other than the media, such as header information of the multimedia file. Therefore, in consideration of the margin for the header, the value obtained by the following equation (4) may be used as the bit rate of the multimedia data.
  • b ' ⁇ ⁇ b ( ⁇ ⁇ 1) (4)
  • playback time and bit rate are not described in the header.
  • the temporary storage unit 204 may decode or reproduce part of the stored data, and the reproduction rate may be set as the bit rate.
  • distribution server 100 when there are a plurality of distribution servers 100 (for example, when there are three servers: distribution server 100A, distribution server 100B, and distribution server 100C), if the statistical information of the content for each distribution server 100 is known, statistics The bit rate may be calculated based on the information.
  • the statistical information is, for example, a large number of contents transmitted at ba [bits / second] in the distribution server 100A, and a large number of contents transmitted at bb [bits / second] in the distribution server 100B. If the character string “c” is included in the URL (Uniform Resource Locator) of the contents of the content of b, the content to be transmitted by bc [bits / second] is large.
  • the header may not be detected immediately, regardless of the file format in which the information capable of calculating the bit rate is described in the header.
  • multimedia meta information of the file is described in a data block called "moov" box, It is not necessarily included at the beginning of the file. If the file's multimedia meta information is included at the end of the file, the bit rate can not be calculated unless the file is received until the end. In this case, the data request unit 218 makes the bit rate calculation faster by requesting the distribution server 100 for a header including multimedia meta information of the multimedia file.
  • FIG. 10 is a view showing a configuration example of a multimedia file of the MP4 file format.
  • FIG. 10 shows the whole MP4 file, and the MP4 file is called an "ftyp" box indicating that it is an MP4 file, an "mdat” box for storing multimedia data itself, and a "moov” box for describing metadata. Contains each data block.
  • the small box in each box shown in FIG. 10 indicates one byte of data.
  • the two-digit alphanumeric characters described in the one-byte box indicate hexadecimal numbers, and the single alphabetic character surrounded by single quotes indicates one-byte ASCII characters.
  • the appearance order of boxes such as “ftyp", “mdat” and “moov” is always “ftyp” at the top, but the order of the other boxes is arbitrary.
  • the distribution server 100 transmits multimedia data from the beginning of the multimedia file, as an example in this embodiment. Therefore, the data receiving unit 202 receives multimedia data from the head portion of the multimedia file, and stores the received multimedia data in the temporary storage unit 204.
  • the header detection unit 206 detects that the file is in the MP4 file format by referring to the beginning of the file read from the temporary storage unit 204. However, the header detection unit 206 detects that the "mdat” box is included next to the "ftyp” box, not the “moov” box. Therefore, the header detection unit 206 calculates the position of the "moov” box in order to detect the "moov” box.
  • FIG. 11 is a table in which the location of the box next to the "mdat” box is calculated. As shown in FIGS. 10 and 11, the top of the file is the “ftyp” box followed by the "mdat” box. Therefore, the box next to the “mdat” box is the 64274th byte from the beginning of the file, as shown in FIG.
  • the data request unit 218 requests the distribution server 100 for data from the 648274th byte based on the above calculation result.
  • the data request unit 218 uses an HTTP partial request.
  • FIG. 12 is a diagram illustrating an example of a request from the data request unit 218 to the distribution server 100. In this protocol, only necessary information is described, and other header information is included. As shown in FIG. 12, the data request unit 218 requests the distribution server 100 for the content of “/vod/video.mp4”. Further, the data request unit 218 requests the distribution server 100 for the designated part of the file by “Range:”. That is, in this case, the data request unit 218 requests data from the 648274th byte of the multimedia file.
  • the data reception unit 202 receives data transmission from the distribution server 100.
  • the received multimedia data is stored in the temporary storage unit 204, and the header detection unit 206 detects whether a header is included in the multimedia data. If no header is found, the header detection unit 206 further searches the next box.
  • the communication session used to receive multimedia data from the beginning may be discarded or may be continued.
  • the bit rate can be calculated promptly by requesting the header information to the distribution server 100.
  • the present invention can be applied to, for example, an information processing apparatus that receives multimedia data from a distribution server and transmits it to a reproduction terminal.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

コンテンツのビットレートが予めわからない状態であっても、ダウンロード後に廃棄されるマルチメディアデータを削減することができる情報処理装置などが開示される。係る情報処理装置は、端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に保存する一時保存手段と、前記一時保存手段に保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出するヘッダ検出手段と、前記ヘッダ検出手段が検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出するレート算出手段と、前記レート算出手段によって算出されたビットレートに基づいて前記一時保存手段から前記マルチメディアデータを読み出して前記端末に送信するデータ送信手段と、を備える。

Description

情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体
 本発明は、コンテンツ配信における通信データ量を制御する技術に関する。
 近年、インターネットの高速化に伴い、映像や音声等のマルチメディアデータからなるコンテンツを、インターネットに通信可能に接続されたサーバからストリーミングしながら視聴するユーザが増加している。特に、モバイル網の高速化及びスマートフォン等のモバイル端末の高性能化、高機能化に伴い、モバイル網を利用したマルチメディアコンテンツのストリーミング視聴が急激に増加している。マルチメディアデータは、Webで利用されるテキストデータや画像データと比較してデータ量が大きく、現在ではモバイル網における全トラフィックのうち、半分以上をマルチメディアデータのストリーミングトラフィックが占めるといわれている。
 マルチメディアデータのストリーミングでは、通信プロトコルとして、UDP(User Datagram Protocol)におけるRTP(Realtime Transport Protocol)を利用して、映像や音声データを配信していた。しかし、現在、インターネットを用いたほとんどのストリーミングサービスは、マルチメディアデータの通信プロトコルとして、TCP(Transmission Control Protocol)におけるHTTP(Hyper Text Transport Protocol)を利用している。HTTPを利用することにより、マルチメディアデータのロスがなく映像や音声の乱れがない、NAT(Network Address Translation)やファイアウォールの通過が容易、既存のWebインフラ(Webサーバ、プロキシサーバ等)を利用できる、等メリットがある。
 HTTPを利用したマルチメディアデータのストリーミングには、プログレッシブダウンロード方式が多く用いられる。プログレッシブダウンロード方式では、HTTPを利用することにより、サーバから、コンテンツを表すマルチメディアファイルをダウンロードする。プログレッシブダウンロード方式では、マルチメディアファイルを構成する全てのマルチメディアデータがダウンロードされるまで待つのではなく、再生に必要な量のマルチメディアデータのダウンロードが完了した時点で、マルチメディアデータの再生を開始する。プログレッシブダウンロード方式では、再生中もマルチメディアデータのダウンロードは継続する。プログレッシブダウンロード方式では、ダウンロード済みのデータを、端末が備える再生バッファに蓄積すると共に、再生バッファに蓄積済みのデータを逐次読み出しながら再生を行う。プログレッシブダウンロード方式では、ダウンロードが間に合わず、再生時に再生バッファに蓄積されたマルチメディアデータがない場合は、再生するデータが用意できないため、再生が停止してしまう。これにより、ユーザの体感品質を大きく損ねてしまう。
 このため、HTTPを利用するプログレッシブダウンロード方式では、端末のバッファ量が0にならないように、マルチメディアデータをバースト的にダウンロードする。これにより、HTTPを利用するプログレッシブダウンロード方式では、端末が備える再生バッファにできるだけ多くのダウンロード済みマルチメディアデータを蓄積する。しかしながら、多くのマルチメディアデータを蓄積することが、大きな問題となってきている。インターネットを利用するストリーミングサービスでは、コンテンツを最初から最後まで視聴するユーザは少なく、途中で視聴をやめるユーザが多い。ユーザが途中で視聴をやめると、端末が備える再生バッファに蓄積されたマルチメディアデータは、ユーザに視聴(利用)されることなく捨てられる。特に、モバイル網においては、マルチメディアデータのトラフィックが半分を占めるにも関わらず、ダウンロード後に廃棄される可能性の高いデータを送信することは、限りある無線リソースの利用効率を低下させる。
 このため、端末が備える再生バッファにマルチメディアデータを蓄積し過ぎず、コンテンツ視聴を取りやめた場合においても、利用されずに捨てられるマルチメディアデータを少なくするビデオページング技術が注目されている。
 例えば、特許文献1は、コンテンツ配信システムを開示する。このコンテンツ配信システムは、マルチメディアファイル再生時の単位時間当たりのデータ量であるビットレートをメタ情報として管理する。そして、このコンテンツ配信システムは、配信サーバからマルチメディアコンテンツを配信する場合、コンテンツのビットレートを元にダウンロードレートを決定し、決定したダウンロードレートに基づいて、マルチメディアデータを送信する。
 特許文献2は、マルチメディアデータを構成するTS(Transport Stream)からタイムスタンプを抽出することにより、コンテンツのビットレートを計算し、適切なビットレートによってコンテンツを再送信する再送信装置を開示する。
特開2006-279843号公報 特開2010-118836号公報
 しかしながら、特許文献1に記載された手法では、ビットレートが既知のコンテンツでないと、適切なレートでマルチメディアデータを送信することができない。特許文献2に記載された手法では、パケットを受信しながらパケットの中に記述されたタイムスタンプの抽出及び複数フレーム間の相関を取る処理が必要となる。そのため、特許文献2に記載された手法では、装置の負荷が大きくなってしまい、多くの配信セッションを処理することができない。
 本発明は、上記課題を鑑み、コンテンツのビットレートが予めわからない状態であっても、ダウンロード後に廃棄されるマルチメディアデータを削減することができる情報処理装置などを提供することを1つの目的とする。
 上記目的を達成するために、本発明に係る情報処理装置は、端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に保存する一時保存手段と、前記一時保存手段に保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出するヘッダ検出手段と、前記ヘッダ検出手段が検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出するレート算出手段と、前記レート算出手段によって算出されたビットレートに基づいて前記一時保存手段から前記マルチメディアデータを読み出して前記端末に送信するデータ送信手段と、を備える。
 上記目的を達成するために、本発明に係る情報処理方法は、端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に一時保存手段に保存し、保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出し、検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出し、算出されたビットレートに基づいて前記一時保存手段から前記マルチメディアデータを読み出して前記端末に送信する。
 上記目的を達成するために、本発明に係るコンピュータプログラム記録媒体は、端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に保存する一時保存処理と、保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出するヘッダ検出処理と、検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出するレート算出処理と、算出されたビットレートに基づいて前記マルチメディアデータを読み出して前記端末に送信するデータ送信処理と、をコンピュータに実行させる、コンピュータ読み取り可能なプログラムを格納する。
 本発明の情報処理装置によれば、コンテンツのビットレートが予めわからない状態であっても、ダウンロード後に廃棄されるマルチメディアデータを削減することができる。
本発明の第1の実施形態に係る情報処理装置を含むコンテンツ配信システムの構成例を示す図である。 本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示す図である。 本発明の第1の実施形態に係る情報処理装置の構成例を示すブロック図である。 本発明の第1の実施形態に係る情報処理装置の動作を示すフローチャートである。 本発明の第2の実施形態に係る情報処理装置の構成例を示すブロック図である。 本発明の第2の実施形態に係る情報処理装置の動作を示すフローチャートである。 図1に示した端末の構成例を示すブロック図である。 図5に示した配信要求転送部から配信サーバへのリクエストの例を示す図である。 リクエストに対する配信サーバからのレスポンスの例を示す図である。 MP4ファイル形式のマルチメディアファイルの構成例を示す図である。 ”mdat”ボックスの次のボックスの場所を計算した表である。 図5に示したデータ要求部から配信サーバへのリクエストの例を示す図である。
 本発明の実施形態について、図面を参照して詳細に説明する。
 第1の実施形態
 はじめに、本発明の第1の実施形態に係る情報処理装置1を含むコンテンツ配信システム10について説明する。
 図1は、本発明の第1の実施形態に係る情報処理装置1を含むコンテンツ配信システム10の構成例を示す図である。図1に示すように、コンテンツ配信システム10は、情報処理装置1、配信サーバ100、端末102、ネットワーク104及びネットワーク106を有する。
 配信サーバ100は、通信ネットワーク(以下、「ネットワーク」と略称する)104を介して、情報処理装置1へマルチメディアコンテンツを送信する情報処理装置である。配信サーバ100は、図示しないCPU(中央処理装置)、メモリ、及びHDD(ハードディスクドライブ)等の記憶装置を備える。配信サーバ100は、CPUが記憶装置に記憶されているプログラムを実行することにより実現される。本実施形態では、配信サーバ100は、HTTPサーバ(Webサーバ)として実現されることを想定している。また、配信サーバ100は、HTTP以外のプロトコルを利用する配信サーバでもよい。
 情報処理装置1は、配信サーバ100と端末102との間に配置され、それぞれネットワーク104及びネットワーク106を介して通信可能に接続される。本実施形態では、配信サーバ100と情報処理装置1間及び情報処理装置1と端末102間は、HTTPプロトコルを利用して通信することを想定している。また、配信サーバ100と情報処理装置1間及び情報処理装置1と端末102間は、HTTP以外のプロトコルを利用してもよい。情報処理装置1の詳細については、図2を参照して後述する。
 端末102は、ネットワーク106を介して、情報処理装置1からマルチメディアコンテンツを受信する。端末102は、情報処理装置1から受信したマルチメディアコンテンツを再生(表示など)する。端末102は、情報処理装置1からマルチメディアコンテンツを受信しながら、マルチメディアコンテンツを再生(表示など)してもよい。また、端末102は、複数存在してもよい。端末102が複数存在する場合、各端末102は、情報処理装置1とネットワーク106を介して接続され、各端末102の要求に応じたマルチメディアコンテンツを受信する。このとき、情報処理装置1から受信するマルチメディアコンテンツは、要求をした端末102が受信してもよいし、他の端末102に配信してもよい。端末102は、図示しないCPU(中央処理装置)、メモリ、及びHDD(ハードディスクドライブ)等の記憶装置を備える。端末102は、CPUが記憶装置に記憶されているプログラムを実行することにより実現される。本実施形態では、端末102は、HTTPクライアント(Webブラウザ)として実現されることを想定している。また、端末102は、HTTP以外のプロトコルを利用してもよい。
 本実施形態では、配信サーバ100は、端末102からの要求に従って、マルチメディアコンテンツを外部装置から入手する。また、マルチメディアコンテンツは、配信サーバ100に格納されていてもよい。ここで、マルチメディアコンテンツとは、マルチメディアファイルである。マルチメディアファイルは、映像データや音声データなど各種のマルチメディアデータを含む。マルチメディアコンテンツは、配信サーバ100に記憶されていてもよい。また、マルチメディアコンテンツは、別の装置に記憶されていてもよい。
 ネットワーク104及びネットワーク106は、IP(Internet Protocol)に準拠した通信を可能とする任意の通信ネットワークである。ネットワーク104及びネットワーク106は、図示しないルータ等の中継装置を含む。また、ネットワーク104及びネットワーク106は、その一部または全部が有線通信または無線通信により実現されてもよい。例えば、無線通信としては、第三世代のモバイルネットワーク(3G)、HSPA網(High Speed Packet Access)及びLTE網(Long Term Evolution)等のモバイルネットワーク、または無線LAN(WiFi)を利用してもよい。また、無線通信は、IPに準拠した通信を可能とする任意の無線通信により接続されてもよい。
 本実施形態では、端末102からの要求により、マルチメディアコンテンツが送信されるVoD(Video on Demand)形態のマルチメディアサービスを想定している。また、本実施形態では、マルチメディアコンテンツを送信するサービスであってもよい。
 次に、前述した本発明の第1の実施形態に係る情報処理装置1について説明する。
 図2は、本発明の第1の実施形態に係る情報処理装置1のハードウェア構成例を示す図である。図2に示すように、情報処理装置1は、CPU11、メモリ12、HDD14、図示しないネットワークを介して通信を可能とする通信IF(インタフェース)16及びCD(コンパクトディスク)等のコンピュータ読み取り可能な記憶媒体20に格納されたデータを読み取り可能なリーダーライター18を有する。これらの構成要素は、バス22を通して互いに接続されており、互いにデータの入出力を行う。
 本実施形態に係る情報処理装置1は、CPU11が、メモリ12またはHDD14に記憶されているコンピュータプログラム(以下、「プログラム」と称する)を実行することにより実現される。または、情報処理装置1は、CPU11が、記憶媒体20に記憶されているプログラムを実行することにより実現されてもよい。CPU11において実行するプログラムは、通信IF16あるいはリーダーライター18を介して外部から取得してもよい。図2に示す情報処理装置1のハードウェア構成例は、後述する各実施形態にも適用可能である。
 図3は、本発明の第1の実施形態に係る情報処理装置1の構成例を示すブロック図である。図3は、図2において例示したハードウェア資源を用いて実現される機能を、機能単位に表現したブロック図である。図2に示すように、第1の実施形態に係る情報処理装置1は、データ受信部202、一時保存部204、ヘッダ検出部206、レート算出部208及びデータ送信部210を備える。
 データ受信部202は、配信サーバ100から送信されるマルチメディアデータを受信する。具体的には、データ受信部202は、マルチメディアファイルを構成するマルチメディアデータを、配信サーバ100から受信する。
 一時保存部204は、データ受信部202が受信したマルチメディアデータを、一時的に保存する。
 ヘッダ検出部206は、一時保存部204に保存されたマルチメディアデータに、マルチメディアデータのビットレートを算出する情報が含まれているか否かを検出する。ビットレートを算出する情報とは、マルチメディアデータの転送レート(ビットレート)を算出する際に用いる情報であって、例えば、マルチメディアファイルのファイルサイズ、及び、マルチメディアファイルに含まれる全てのマルチメディアデータを等速で再生したときに要する再生時間等の情報である。
 レート算出部208は、ヘッダ検出部206が検出した情報に基づいて、マルチメディアデータのビットレートを算出する。レート算出部208は、例えば、ヘッダ検出部206によって検出されたマルチメディアファイルのファイルサイズ、及び当該マルチメディアファイルに含まれる全てのマルチメディアデータを等速で再生したときに要する再生時間等に基づいて、マルチメディアデータのビットレートを算出する。
 データ送信部210は、レート算出部208によって算出されたビットレートに基づいて、一時保存部204からマルチメディアデータを読み出すと共に、当該マルチメディアデータを端末102に対して送信する。
 ここで、本実施形態において、配信サーバ100から送信されるマルチメディアデータは、情報処理装置1が受信するように記載しているが、外部装置が受信する構成でもよい。
 次に、情報処理装置1の動作を説明する。
 図4は、本発明の第1の実施形態に係る情報処理装置1の動作を示すフローチャートである。係るフローチャートは、図3に示す各ブロックがプログラムによって表される場合、そのプログラムを実行するCPU11の処理手順を表す。図4に示すように、データ受信部202は、配信サーバ100から送信されるマルチメディアデータを受信する(ステップS102)。
 データ受信部202は、配信サーバ100から受信したマルチメディアデータを一時保存部204に保存する(ステップS104)。
 ヘッダ検出部206は、一時保存部204に保存されたマルチメディアデータから、ビットレートを算出する際に用いる情報を検出する(ステップS106)。
 レート算出部208は、一時保存部204に保存されたマルチメディアデータのビットレートを、ヘッダ検出部206が検出したビットレートを算出する情報に基づいて算出する(ステップS108)。
 データ送信部210は、一時保存部204からマルチメディアデータを読み出す(ステップS110)。
 データ送信部210は、一時保存部204から読み出したマルチメディアデータを端末102に対して、レート算出部208において算出されたビットレートに基づいて送信する(ステップS112)。
 従って、本発明の第1の実施形態に係る情報処理装置1は、コンテンツのビットレートが予めわからない状態であっても、ダウンロード後に廃棄されるマルチメディアデータを削減することができる。その理由は、コンテンツのビットレートが既知でない場合であっても、マルチメディアデータのビットレートを算出し、算出したマルチメディアデータのビットレートに基づいてマルチメディアデータを転送するからである。
 第2の実施形態
 次に、上述した第1の実施形態に係る情報処理装置1を基本とする本発明の第2の実施形態に係る情報処理装置2について説明する。
 図5は、本発明の第2の実施形態に係る情報処理装置2の構成例を示すブロック図である。図5に示すように、本発明の第2の実施形態に係る情報処理装置2は、配信要求受付部212、要求転送先決定部214、配信要求転送部216、データ要求部218、コンテンツ保存部220及びメタデータ保存部222を更に備える点が、第1の実施形態に係る情報処理装置1の構成とは異なる。それ以外の構成については、第1の実施形態に係る情報処理装置1と同様なため、同一の図面参照番号を付与すると共に、重複する説明は省略する。
 配信要求受付部212は、端末102から配信サーバ100へのマルチメディアファイルの配信要求を受け付ける。
 要求転送先決定部214は、端末102から受け付けた配信要求に基づいて配信サーバ100へ要求を転送するか否かを決定する。例えば、要求転送先決定部214は、事前に別のユーザが同じマルチメディアファイルの要求を行っており、且つ、コンテンツ保存部220に要求されたマルチメディアファイルが保存されている場合、配信サーバ100に配信要求を転送しない。
 配信要求転送部216は、配信サーバ100に対して、マルチメディアファイルの配信要求を転送する。具体的には、配信要求転送部216は、要求転送先決定部214が配信サーバ100に要求を転送することを決定した場合に、配信サーバ100に対して、マルチメディアファイルの配信要求を転送する。
 データ要求部218は、ヘッダ検出部206によって検出した結果、ビットレートを算出する情報が含まれていない場合、ビットレートを算出する情報が受信できるよう配信サーバ100に対して要求する。
 コンテンツ保存部220は、一時保存部204から読み出されたマルチメディアファイルを構成する全てのマルチメディアデータを、端末102に対して送信し終わった場合に、送信が完了したマルチメディアファイルを保存する。
 メタデータ保存部222は、マルチメディアファイルのメタデータを保存する。具体的には、メタデータ保存部222は、ビットレートやマルチメディアファイルの元の場所を示すURL(Universal Resource Locator)などのメタデータを保存する。
 次に、情報処理装置2の動作を説明する。
 図6は、本発明の第2の実施形態に係る情報処理装置2の動作を示すフローチャートである。係るフローチャートは、図5に示す各ブロックがプログラムによって表される場合、そのプログラムを実行するCPU11の処理手順を表す。
 配信要求受付部212は、端末102からの配信要求を受け付ける(ステップS202)。
 要求転送先決定部214は、配信要求受付部212が受け付けた配信要求を配信サーバ100に転送するか否か決定する(ステップS204)。要求転送先決定部214が配信サーバ100に配信要求を転送しないと決定した場合(ステップS204においてNO)、データ送信部210は、コンテンツ保存部220からマルチメディアファイルを読み出す(ステップS206)。
 データ送信部210は、コンテンツ保存部220から読み出したマルチメディアファイルのビットレートを、メタデータ保存部222から読み出す(ステップS208)。
 一方、要求転送先決定部214が配信サーバ100に配信要求を転送すると決定した場合(ステップS204においてYES)、配信要求転送部216は、配信要求を配信サーバ100に転送する。
 配信要求転送部216が配信サーバ100に配信要求を転送するのに応じて、データ受信部202は、配信サーバ100から送信されるマルチメディアデータを受信する(ステップS102)。
 データ受信部202は、配信サーバ100から受信したマルチメディアデータを一時保存部204に保存する(ステップS104)。
 ヘッダ検出部206は、一時保存部204に保存されたマルチメディアデータからビットレートを算出する際に用いる情報を検出する(ステップS106)。
 保存されたマルチメディアデータからビットレートを算出する際に用いる情報を、ヘッダ検出部206が検出できなかった場合(ステップS210においてNO)、ヘッダ検出部206は、処理をステップS212に進める。
 データ要求部218は、ビットレートを算出する際に用いる情報を検出可能なデータを配信サーバ100に要求する(ステップS212)。そして、処理は、ステップS102に戻る。
 一方、保存されたマルチメディアデータからビットレートを算出する際に用いる情報を、ヘッダ検出部206が検出できた場合(ステップS108においてYES)、レート算出部208は、一時保存部204に保存されたマルチメディアデータのビットレートを、ヘッダ検出部206が検出した情報に基づいて算出する。
 データ送信部210は、レート算出部208において算出されたビットレートに基づいて、一時保存部204からマルチメディアデータを読み出す(ステップS110)。
 データ送信部210は、ビットレートに基づいた送信レートによって、読み出したマルチメディアデータを端末102に対して送信する(ステップS212)。
 従って、本発明の第2の実施形態に係る情報処理装置2は、事前に配信要求を受け、且つ、コンテンツ保存部220に、そのマルチメディアファイルが保存されている場合、配信サーバ100からの受信を待つことなくコンテンツを配信することができる。その理由は、情報処理装置2は、コンテンツ保存部220及びメタデータ保存部222を備えるので、マルチメディアファイルとそのビットレートを取得することが可能なためである。
 [ビットレート算出方法の説明]
 上述した第1の実施形態及び第2の実施形態に共通したビットレート算出方法について説明する。
 まず、端末102におけるマルチメディアデータの利用形態について説明する。図7は、端末102の構成例を示すブロック図である。端末102は、データ受信部302、再生バッファ304及び再生部306を有する。端末102は、情報処理装置2を介して、配信サーバ100から送信されたマルチメディアファイルを再生する場合、データ受信部302が受信したマルチメディアデータを、再生バッファ304に蓄積しながら、再生部306が再生する。
 データ受信部302が受信する単位時間あたりのマルチメディアデータ量が、再生部306が再生の際に用いる単位時間あたりのマルチメディアデータ量と、同じまたはそれ以上の場合、再生バッファ304に蓄積されるマルチメディアデータは、空にならない。一方、データ受信部302が受信する単位時間あたりのマルチメディアデータ量が、再生部306が再生の際に用いる単位時間あたりのマルチメディアデータ量を下回る場合、再生バッファ304に蓄積されるマルチメディアデータは、いずれ0になる。このとき、再生バッファ304には再生部306において再生可能なマルチメディアデータがなくなるので、再生部306は、マルチメディアファイルの再生を停止する。
 ここで、図5に示すデータ送信部210は、再生部306が再生の際に用いる単位時間あたりのマルチメディアデータ量、すなわちマルチメディアデータのビットレートを下回らないレートにて、マルチメディアデータを送信すればよい。
 図5に示すレート算出部208は、データ送信部210における送信に必要なマルチメディアデータのビットレートを算出する。
 マルチメディアデータのビットレート(bitrate)は、マルチメディアファイルのファイルサイズ(content_size[バイト])とすべてのマルチメディアデータを等速で再生したときに要する再生時間(duration[秒])、すなわちマルチメディアファイルの再生時間とにより、以下の(1)式によって計算される。
(bitrate)=(content_size)÷(duration)・・・(1)
 図5に示すヘッダ検出部206は、データ受信部202が受信すると共に一時保存部204に保存したマルチメディアデータに、ファイルサイズおよび再生時間が含まれるか否かを検出する。
 (ファイルサイズの取得方法)
 次に、ファイルサイズの取得方法について説明する。HTTPを用いてマルチメディアデータを送信する場合、配信要求転送部216からのコンテンツ要求および配信サーバ100からのレスポンスは、一般的なプロトコル内容である。図8は、配信要求転送部216から配信サーバ100へのリクエストの例を示す図である。図9は、リクエストに対する配信サーバ100からのレスポンスの例を示す図である。なお、図8および図9には必要な情報のみを記述しており、リクエストまたはレスポンスは、他にもヘッダ情報を含む。
 図8に示すように、配信要求転送部216は、配信サーバ100に対して、”/vod/video.mp4”のコンテンツを要求していることがわかる。図9に示すように、配信サーバ100からのレスポンス中に含まれる、”Content-Type:”は、ファイルのタイプを示し、”Content-Length:”はファイルのサイズを示している。すなわち、マルチメディアファイルのファイルサイズは、”Content-Length:”中に書かれている。つまり、”Content-Length:”を検出することによりcontent_sizeを取得する。この例では、”/vod/video.mp4”のファイルサイズは5000000バイトであることがわかる。
 また、ファイル形式によっては、ヘッダ部分にファイルサイズやファイルサイズに準じる情報(ファイルサイズにヘッダ情報を減じたサイズなど)が記述されている場合がある。この場合、HTTPヘッダの”Content-Length:”を用いるのではなく、ファイルに含まれる情報をcontent_sizeとして用いてもよい。
 (再生時間の取得方法)
 次に、再生時間の取得方法について説明する。マルチメディアファイルの再生時間取得方法は、ファイル形式によって異なる。例えば、ISO/IEC(International Organization for Standardization/International Electrotechnical Commission) 14496-12で規定されたファイルを基にしているMP4ファイル形式及び3GP(3rd Generation Partnership)ファイル形式などは、ファイルのマルチメディアメタ情報を記述している”moov”ボックスに再生時間が記述されている。その他のファイル形式でも、Microsoft(登録商標)社が開発したwmv形式、Adobe(登録商標)社が開発したflv形式、オープンなファイル形式であるmkv形式、Apple(登録商標)社が開発したmov形式及びReal Networks社が開発したrm形式など、多くのファイル形式は、ヘッダ中に再生時間を記述している。
 また、マルチメディアファイルの再生時間が記述されていない場合、マルチメディアデータのサンプル数(フレーム数)とサンプリング周波数(フレームレート)が記述されていれば、再生時間の計算は可能である。
 例えば、Microsoft社により開発されたAVI(Audio Video Interleave)ファイル形式は、ファイル先頭部にマルチメディアデータのサンプル数(フレーム数)とサンプリング周波数(フレームレート)とが記述されている。サンプル数(frame_num[サンプル])とサンプリング周波数(frame_rate[サンプル/秒])とが取得できた場合、再生時間は、以下の(2)式によって計算する。
(duration)=(frame_num)÷(frame_rate)・・・(2)
 図5に示すヘッダ検出部206が一時保存部204に蓄積されているマルチメディアデータ中に、上記ファイル形式のヘッダがあることを検出した場合、レート算出部208は、再生時間を取得すると共に、その再生時間とファイルサイズとに基づいて、ビットレートを算出する。
 (再生時間が取得できない場合のビットレート算出方法)
 次に、再生時間が取得できない場合のビットレートの算出方法について説明する。図5に示すレート算出部208は、ヘッダ検出部206が再生時間を取得できない場合でも、マルチメディアデータのビットレートを算出できることがある。このような場合、ビットレートは、マルチメディアデータのヘッダ部に記述されている。ヘッダ中にビットレートが記述される場合、マルチメディアデータのメディアごとのビットレートが算出できることがある。この場合は、すべてのメディアごとのビットレートを算出すると共に、算出したすべてのビットレートの和を算出することによって、マルチメディアデータのビットレートを算出することができる。各メディアのビットレートをb(i=1,2,…,M)、Mをメディアの数と仮定すると、マルチメディアデータのビットレートは、以下の(3)式によって計算する。
Figure JPOXMLDOC01-appb-I000001
            ・・・(3)
 また、(3)式により算出されたbは、通常、マルチメディアファイルのヘッダ情報など、メディア以外のデータ量を含んでいない。そのため、ヘッダ分の余裕を考慮して、以下の(4)式によって求められる値を、マルチメディアデータのビットレートとしてもよい。
b´=α×b(α≧1)・・・(4)
 また、TS(Transport Stream)ファイルや、MPEG(Moving Picture Experts Group)-1、MPEG-2ファイルなどのファイル形式は、再生時間、ビットレートがヘッダに記述されていない。この場合、例えば、一時保存部204において、保存されるデータの一部を復号または再生し、再生時のレートをビットレートとしてもよい。
 また、配信サーバ100が複数存在する場合(例えば、配信サーバ100A、配信サーバ100B及び配信サーバ100Cという3つのサーバが存在する場合)、配信サーバ100ごとのコンテンツの統計情報がわかっていれば、統計情報に基づいてビットレートを算出してもよい。統計情報とは、例えば、配信サーバ100Aでは、ba[ビット/秒]にて送信されるコンテンツが多い、配信サーバ100Bでは、bb[ビット/秒]にて送信されるコンテンツが多い、配信サーバ100CのコンテンツのうちURL(Uniform Resource Locator)に”c”という文字列が含まれていればbc[ビット/秒]にて送信されるコンテンツが多いといった、情報である。
 (ヘッダが検出できない場合)
 次に、ヘッダを検出することができない場合について説明する。上記の方法によってヘッダを検出する場合に、ヘッダ中にビットレートを算出できる情報が記述されているファイル形式にも関わらず、すぐにヘッダが検出できないことがある。
 例えば、ISO/IEC 14496-12で規定されたファイルを基にしているMP4形式、3GP形式のファイルなどでは、ファイルのマルチメディアメタ情報は”moov”ボックスと呼ばれるデータブロックに記述されているが、必ずしもファイル先頭に含まれるとは限らない。ファイルのマルチメディアメタ情報がファイルの最後に含まれる場合、最後までファイルを受信しないとビットレートを算出できない。この場合、データ要求部218は、配信サーバ100に対して、マルチメディアファイルのマルチメディアメタ情報が含まれるヘッダを要求することによって、ビットレートの算出を速くする。
 図10は、MP4ファイル形式のマルチメディアファイルの構成例を示す図である。図10は、MP4ファイル全体を示し、MP4ファイルは、MP4ファイルであることを示す”ftyp”ボックス、マルチメディアデータ本体を保存する”mdat”ボックス、メタデータが記述される”moov”ボックスと呼ばれる各データブロックを含む。ここでは、”moov”ボックスがファイルの最後に含まれると仮定する。図10に示す各ボックスの中の小さな箱は、1バイト分のデータを示す。1バイト分の箱に記述された二桁の英数字は、16進数を示し、シングルクオートで囲まれた一文字の英文字は、1バイト分のアスキー文字を示す。”ftyp”、”mdat”、”moov”などのボックスの出現順番は、”ftyp”が必ず先頭に来るが、それ以外のボックスの順番は任意である。
 各ボックスは、ボックスの名前を示す”ftyp”、”moov”、”mdat”と、ボックスの名前の前にそのボックスのサイズが記述されている。図10に示す例では、”ftyp”ボックスは16進数で0X18バイト、”mdat”ボックスは0X9E42Aバイトである。
 配信サーバ100は、本実施形態では一例として、マルチメディアファイルの先頭からマルチメディアデータを送信する。そのため、データ受信部202は、マルチメディアファイルの先頭部分からマルチメディアデータを受信し、受信したマルチメディアデータを一時保存部204に保存する。
 ヘッダ検出部206は、一時保存部204から読み出したファイル先頭を参照することによって、当該ファイルがMP4ファイル形式であることを検知する。しかしながら、ヘッダ検出部206は、”ftyp”ボックスの次に”moov”ボックスではなく、”mdat”ボックスが含まれることを検知する。そこで、ヘッダ検出部206は、”moov”ボックスを検出するために、”moov”ボックスの位置を計算する。
 図11は、”mdat”ボックスの次のボックスの場所を計算した表である。図10及び図11に示すように、ファイルの先頭は、”ftyp”ボックス、続いて”mdat”ボックスである。、よって、”mdat”ボックスの次のボックスは、図11に示すように、ファイル先頭から648274バイト目になる。
 データ要求部218は、上記の計算結果に基づいて、648274バイト目からのデータを配信サーバ100に要求する。HTTPプロトコルを利用している場合、データ要求部218は、HTTPの部分リクエストを利用する。図12は、データ要求部218から配信サーバ100へのリクエストの例を示す図である。なお、本プロトコルは、必要な情報のみを記述しており、他にもヘッダ情報が含まれる。図12に示すように、データ要求部218は、配信サーバ100に対して、”/vod/video.mp4”のコンテンツを要求している。また、データ要求部218は、配信サーバ100に対して、”Range:”により、ファイルの指定した一部を要求している。すなわち、この場合、データ要求部218は、マルチメディアファイルの648274バイト目からのデータを要求している。
 データ要求部218が次のボックスの場所を要求すると、データ受信部202は、配信サーバ100からのデータ送信を受信する。受信したマルチメディアデータは、一時保存部204に保存され、ヘッダ検出部206は、当該マルチメディアデータにヘッダが含まれるか検出する。ヘッダ検出部206は、もしヘッダが見つからない場合、さらに次のボックスを検索する。
 データ要求部218が次のボックスの送信を配信サーバ100に要求した場合、最初からマルチメディアデータの受信に利用している通信セッションは、破棄されてもよいし、継続されてもよい。
 従って、ファイル先頭にヘッダ情報がない場合でも、ヘッダ情報を配信サーバ100に要求することにより、早急にビットレートを算出することができる。
 上述した各実施形態では、図3および図5に示す情報処理装置を、図2に示すCPU11が実行する一例として、ソフトウエア・プログラムによって実現する場合について説明した。しかしながら図3および図5に示す各ブロックに示す機能は、一部または全部を、ハードウエアとして実現してもよい。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
 本発明は、例えば、マルチメディアデータを配信サーバから受信すると共に、再生端末に送信する情報処理装置に適用できる。
 この出願は、2012年11月8日に出願された日本出願特願2012-246299を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 1、2  情報処理装置
 11  CPU
 12  メモリ
 14  HDD
 16  通信IF
 18  リーダーライター
 20  記憶媒体
 22  バス
 100  配信サーバ
 102  端末
 104、106  ネットワーク
 202  データ受信部
 204  一時保存部
 206  ヘッダ検出部
 208  レート算出部
 210  データ送信部
 212  配信要求受付部
 214  要求転送先決定部
 216  配信要求転送部
 218  データ要求部
 302  データ受信部
 304  再生バッファ
 306  再生部

Claims (9)

  1.  端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に保存する一時保存手段と、
     前記一時保存手段に保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出するヘッダ検出手段と、
     前記ヘッダ検出手段が検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出するレート算出手段と、
     前記レート算出手段によって算出されたビットレートに基づいて前記一時保存手段から前記マルチメディアデータを読み出して前記端末に送信するデータ送信手段と
     を備える情報処理装置。
  2.  前記ヘッダ検出手段によって、前記ビットレートを算出する情報が含まれていないと判断した場合、ビットレートを算出する情報が受信できるよう前記配信サーバに要求するデータ要求手段と
     をさらに備える請求項1に記載の情報処理装置。
  3.  前記端末からのマルチメディアファイルの配信要求を受け付ける配信要求受付手段と、
     前記配信サーバに対して、前記配信要求を転送する配信要求転送手段と
     をさらに備える、請求項1または請求項2に記載の情報処理装置。
  4.  前記端末から受け付けた配信要求に基づいて前記配信サーバへ要求を転送するか否かを決定する要求転送先決定手段と、
     前記要求転送先決定手段による決定に基づいて、前記一時保存手段から読み出されたマルチメディアファイルを構成するマルチメディアデータを、前記端末に対して送信し終わった場合に、送信が完了した前記マルチメディアファイルを保存するコンテンツ保存手段から、マルチメディアファイルを送信する場合、前記コンテンツ保存手段からマルチメディアファイルを読み出し、前記マルチメディアファイルのメタデータを保存するメタデータ保存手段から読み出したマルチメディアファイルのビットレートに基づいて、前記端末に対して当該マルチメディアデータを送信するコンテンツ送信手段と
     をさらに備える請求項1乃至3の何れかに記載の情報処理装置。
  5.  前記要求転送先決定手段は、前記コンテンツ保存手段に、前記配信要求を受けたマルチメディアファイルが保存されており、且つ、前記メタデータ保存手段に該マルチメディアファイルのビットレートが保存されている場合、前記配信サーバに前記配信要求を転送しないよう決定する
     請求項4に記載の情報処理装置。
  6.  前記レート算出手段は、マルチメディアファイルのファイルサイズと、当該マルチメディアファイルに含まれるマルチメディアデータを等速で再生したときに要する再生時間とに基づいて、マルチメディアデータのビットレートを算出する
     請求項1乃至5の何れかに記載の情報処理装置。
  7.  前記マルチメディアファイルを配信する前記配信サーバと、
     前記マルチメディアファイルの配信を要求する前記端末と、
     請求項1乃至6の何れかに記載の情報処理装置と
     を有するコンテンツ配信システム。
  8.  端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に一時保存手段に保存し、
     保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出し、
     検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出し、
     算出されたビットレートに基づいて前記一時保存手段から前記マルチメディアデータを読み出して前記端末に送信する
     情報処理方法。
  9.  端末からの配信要求に応じて、マルチメディアファイルを配信する配信サーバから受信したマルチメディアデータを一時的に保存する一時保存処理と、
     保存されたマルチメディアデータに該マルチメディアデータのビットレートを算出する際に用いる情報が含まれているか否かを検出するヘッダ検出処理と、
     検出した前記情報に基づいて前記マルチメディアデータのビットレートを算出するレート算出処理と、
     算出されたビットレートに基づいて前記マルチメディアデータを読み出して前記端末に送信するデータ送信処理と
     をコンピュータに実行させるコンピュータ読み取り可能なコンピュータプログラムを格納するコンピュータプログラム記録媒体。
PCT/JP2013/006526 2012-11-08 2013-11-06 情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体 WO2014073202A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012246299 2012-11-08
JP2012-246299 2012-11-08

Publications (1)

Publication Number Publication Date
WO2014073202A1 true WO2014073202A1 (ja) 2014-05-15

Family

ID=50684327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/006526 WO2014073202A1 (ja) 2012-11-08 2013-11-06 情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体

Country Status (1)

Country Link
WO (1) WO2014073202A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021139300A1 (zh) * 2020-01-09 2021-07-15 鹏城实验室 一种视频码率的匹配方法、存储介质及终端设备
JP2022058789A (ja) * 2021-06-21 2022-04-12 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Mp4オンライン再生方法、装置、電子機器、記憶媒体およびコンピュータプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006279843A (ja) * 2005-03-30 2006-10-12 Nippon Telegraph & Telephone West Corp コンテンツ配信システムおよびコンテンツ再生装置
JP2010206446A (ja) * 2009-03-03 2010-09-16 Shibasoku:Kk ビットレート計算方法及び信号発生装置
JP2012142891A (ja) * 2011-01-06 2012-07-26 Sharp Corp 再生装置
JP2012161102A (ja) * 2012-05-16 2012-08-23 Toshiba Corp 録画装置およびファイル分割方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006279843A (ja) * 2005-03-30 2006-10-12 Nippon Telegraph & Telephone West Corp コンテンツ配信システムおよびコンテンツ再生装置
JP2010206446A (ja) * 2009-03-03 2010-09-16 Shibasoku:Kk ビットレート計算方法及び信号発生装置
JP2012142891A (ja) * 2011-01-06 2012-07-26 Sharp Corp 再生装置
JP2012161102A (ja) * 2012-05-16 2012-08-23 Toshiba Corp 録画装置およびファイル分割方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021139300A1 (zh) * 2020-01-09 2021-07-15 鹏城实验室 一种视频码率的匹配方法、存储介质及终端设备
JP2022058789A (ja) * 2021-06-21 2022-04-12 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Mp4オンライン再生方法、装置、電子機器、記憶媒体およびコンピュータプログラム
JP7269392B2 (ja) 2021-06-21 2023-05-08 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Mp4オンライン再生方法、装置、電子機器、記憶媒体およびコンピュータプログラム
US11683557B2 (en) 2021-06-21 2023-06-20 Beijing Baidu Netcom Science Technology Co., Ltd. Method for playing MP4 online, device, and storage medium

Similar Documents

Publication Publication Date Title
KR101398319B1 (ko) 실시간 비디오 검출기
US7853981B2 (en) Multimedia streaming service system and method
JP4516082B2 (ja) サーバからクライアントへのストリーミング
EP2383941B1 (en) Client terminal, method and system for downloading streaming media
EP2837196B1 (en) Methods and systems for real-time transmuxing of streaming media content
US8935424B2 (en) Method and apparatus for signaling presentation description updates in HTTP streaming
US20140032777A1 (en) Method, apparatus, and system for transmitting and processing media content
US20060195884A1 (en) Interactive multichannel data distribution system
US20110066703A1 (en) Methods and systems for delivering media to client device
EP2453617A1 (en) Delivering system, method, gateway apparatus and program
CN107819809B (zh) 对内容进行同步操作的方法及装置
KR101764317B1 (ko) 스트리밍 서버, 스트리밍 시스템 및 스트리밍 방법
US8817983B2 (en) Streaming video to cellular phones
Lei et al. Design and implementation of streaming media processing software based on RTMP
EP2891323B1 (en) Rendering time control
CN102439935A (zh) 媒体适配的方法和装置
US10277957B2 (en) Method for delivering an audio-video live content in multicast form
Kesavan et al. Rate adaptation performance and quality analysis of adaptive HTTP streaming methods
WO2014073202A1 (ja) 情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体
KR101819193B1 (ko) 실시간 파일 포맷 변환 스트리밍 서비스 방법
JP4196004B2 (ja) マルチメディア情報の受信方法及びこれを実現するプログラム、マルチメディア情報の受信装置
WO2016090912A1 (zh) 一种直播视频的生成及播放方法、装置、终端及系统
Chung Multimedia Streaming with MPEG-DASH
CN116170612A (zh) 一种直播的实现方法、边缘节点、电子设备及存储介质
JP2019053350A (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: 13853099

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13853099

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP