JPWO2011018868A1 - 配信システム - Google Patents

配信システム Download PDF

Info

Publication number
JPWO2011018868A1
JPWO2011018868A1 JP2011526677A JP2011526677A JPWO2011018868A1 JP WO2011018868 A1 JPWO2011018868 A1 JP WO2011018868A1 JP 2011526677 A JP2011526677 A JP 2011526677A JP 2011526677 A JP2011526677 A JP 2011526677A JP WO2011018868 A1 JPWO2011018868 A1 JP WO2011018868A1
Authority
JP
Japan
Prior art keywords
rate
media
client device
transmission rate
media data
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2011526677A
Other languages
English (en)
Other versions
JP5673538B2 (ja
Inventor
裕志 吉田
裕志 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2011526677A priority Critical patent/JP5673538B2/ja
Publication of JPWO2011018868A1 publication Critical patent/JPWO2011018868A1/ja
Application granted granted Critical
Publication of JP5673538B2 publication Critical patent/JP5673538B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control

Landscapes

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

Abstract

配信システム1Cはサーバ装置801及びクライアント装置802を含む。サーバ装置801は、1つのコンテンツが複数の異なるメディアレートの1つのメディアレートにて符号化されたメディアデータをクライアント装置802へ送信する。クライアント装置802は、メディアデータを受信しながら、受信されたデータを記憶装置に記憶させ、記憶されているデータに基づいてコンテンツを再生する。配信システム1Cは、サーバ装置801が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力する。サーバ装置801は、上記選択されたメディアレートにて符号化したメディアデータを上記選択された送信レートにて送信する。

Description

本発明は、コンテンツを表すメディアデータを配信するサーバ装置と、メディアデータをサーバ装置から受信するクライアント装置と、を含む配信システムに関する。
コンテンツを表すメディアデータを配信するサーバ装置と、メディアデータをサーバ装置から受信するクライアント装置と、を含む配信システムが知られている。サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータをクライアント装置へ送信可能に構成される。
また、クライアント装置は、サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいてコンテンツを再生する。
この種の配信システムの一つとして特許文献1に記載の配信システムは、クライアント装置の記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいてコンテンツを再生可能な時間である残余再生時間に基づいて送信レートを制御する。送信レートは、サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す。
更に、この配信システムは、パケットロス(パケットの消失)率(パケットロスが発生する割合)に基づいてメディアレートを制御する。メディアレートは、コンテンツを単位時間だけ再生するためのメディアデータのデータ量を表す。
これにより、パケットロスの発生を抑制しながら残余再生時間を予め設定された目標値に近づけることができる。
特開2003−174489号公報
ところで、サーバ装置が送信可能なメディアデータのメディアレートは、互いに比較的大きく異なる(例えば、1Mbps、4Mbps、及び、8Mbps等)ことが多い。従って、メディアデータをサーバ装置からクライアント装置へ送信するために利用可能な通信帯域幅である可用帯域幅(即ち、パケットロス率)が比較的小さく変動する場合であっても、上記配信システムは、メディアレートを比較的大きく変動させてしまう虞がある。
ところで、メディアレートが比較的大きく変動すると、ユーザ体感品質(QoE:Quality of Experience)は比較的大きく低下する。なお、ユーザ体感品質は、クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質である。このような場合には、例えば、送信レートを変更することにより、メディアレートを略一定に維持しながら、残余再生時間を目標値に近づけることができる可能性がある。
しかしながら、上記配信システムは、送信レートを残余再生時間に基づいて制御するため、可用帯域幅が変動する場合において残余再生時間が変化する前の時点にて送信レートを制御することができない。その結果、上記配信システムは、送信レート及びメディアレートの適切な組を出力することができない。即ち、上記配信システムにおいては、メディアレートが比較的大きく変動することにより、ユーザ体感品質が過度に低下する虞があった。
また、例えば、残余再生時間が目標値よりも小さくなった場合、上記配信システムは、送信レートを増加させる。その結果、パケットロスが発生しやすくなる。そして、パケットロス率の増加を検出すると、上記配信システムは、メディアレートを減少させる。ところで、送信レートの増加に加えて、メディアレートの減少によっても、残余再生時間は増加する。その結果、残余再生時間が目標値より大きくなると、上記配信システムは、送信レートを減少させる。
このように、上記配信システムにおいては、送信レートと、メディアレートと、が互いに影響を及ぼし合うため、送信レート及びメディアレートの組が適切な値(最終的な制御値)に到達するまでに比較的長い遅延時間を要する。即ち、ユーザ体感品質が比較的低い状態が過度に長い期間に亘って維持される虞があった。
このため、本発明の目的は、上述した課題である「ユーザ体感品質が低下すること」を解決することが可能な配信システムを提供することにある。
かかる目的を達成するため本発明の一形態である配信システムは、互いに通信可能に構成されたサーバ装置及びクライアント装置を含むシステムである。
更に、上記サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成される。
加えて、上記クライアント装置は、上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成される。
更に、上記配信システムは、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記サーバ装置が上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信するメディアデータ送信手段と、
を備える。
また、本発明の他の形態である配信方法は、互いに通信可能に構成されたサーバ装置及びクライアント装置を含む配信システムに適用される方法である。
更に、上記サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成される。
加えて、上記クライアント装置は、上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成される。
更に、上記配信方法は、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力し、
上記サーバ装置が上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信する方法である。
また、本発明の他の形態であるサーバ装置は、クライアント装置と通信可能に構成された装置である。
更に、このサーバ装置は、
1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成され、
単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信するメディアデータ送信手段と、
を備える。
また、本発明の他の形態であるプログラムは、
クライアント装置と通信可能に構成されるとともに、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成されたサーバ装置に、
単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信するメディアデータ送信手段と、
を実現させるためのプログラムである。
また、本発明の他の形態であるクライアント装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成された装置である。
更に、このクライアント装置は、
上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成され、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて送信する旨を要求する送信要求を上記サーバ装置へ送信する要求送信手段と、
を備える。
また、本発明の他の形態であるプログラムは、
1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成されるとともに、上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させ且つ当該記憶されているデータに基づいて上記コンテンツを再生するように構成されたクライアント装置に、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて送信する旨を要求する送信要求を上記サーバ装置へ送信する要求送信手段と、
を実現させるためのプログラムである。
また、本発明の他の形態である配信制御方法は、コンテンツが符号化されたメディアデータの、サーバ装置からクライアント装置への送信を制御する方法である。
更に、この配信制御方法は、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート、及び、上記コンテンツを単位時間だけ再生するための上記メディアデータのデータ量を表すメディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力する方法である。
また、本発明の他の形態である中継装置は、サーバ装置及びクライアント装置のそれぞれと通信可能に構成された装置である。
更に、この中継装置は、
上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成され、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、
を備える。
また、本発明の他の形態である中継方法は、サーバ装置及びクライアント装置のそれぞれと通信可能に構成された中継装置に適用される方法である。
更に、この中継方法は、
上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送し、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得し、
上記取得された送信レートを上記サーバ装置へ送信する方法である。
また、本発明の他の形態であるプログラムは、
サーバ装置及びクライアント装置のそれぞれと通信可能に構成されるとともに、上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成された中継装置に、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、
を実現させるためのプログラムである。
本発明は、以上のように構成されることにより、ユーザ体感品質を高めることができる。
本発明の第1実施形態に係る配信システムの概略構成を表す図である。 本発明の第1実施形態に係る配信システムの機能の概略を表すブロック図である。 本発明の第1実施形態に係るサーバ装置のCPUが実行するレート制御プログラムを示したフローチャートである。 本発明の第2実施形態に係る配信システムの機能の概略を表すブロック図である。 本発明の第3実施形態に係る配信システムの概略構成を表す図である。 本発明の第3実施形態に係る配信システムの機能の概略を表すブロック図である。 本発明の第4実施形態に係る配信システムの機能の概略を表すブロック図である。
以下、本発明に係る、配信システム、配信方法、サーバ装置、プログラム、クライアント装置、配信制御方法、中継装置、及び、中継方法、の各実施形態について図1〜図7を参照しながら説明する。
<第1実施形態>
図1に示したように、第1実施形態に係る配信システム1は、サーバ装置100と、クライアント装置200と、を含む。サーバ装置100及びクライアント装置200は、通信回線NW(例えばインターネット)を介して互いに通信可能に接続されている。
サーバ装置100は、図示しない中央処理装置(CPU:Central Processing Unit)及び記憶装置(メモリ及びハードディスク駆動装置(HDD:Hard Disk Drive))を備える。サーバ装置100は、記憶装置に記憶されているプログラムをCPUが実行することにより、後述する機能を実現するように構成されている。
クライアント装置200は、パーソナル・コンピュータである。なお、クライアント装置200は、携帯電話機、PHS(Personal Handyphone System)、PDA(Personal Data Assistance、Personal Digital Assistant)、テレビ受像機、セット・トップ・ボックス、ゲーム機、又は、カーナビゲーション装置等であってもよい。
クライアント装置200は、図示しない中央処理装置(CPU)、記憶装置(メモリ)、入力装置(例えば、キーボード及びマウス等)及び出力装置(例えば、ディスプレイ及びスピーカ等)を備える。クライアント装置200は、記憶装置に記憶されているプログラムをCPUが実行することにより、後述する機能を実現するように構成されている。
図2は、上記のように構成された配信システム1の機能を表すブロック図である。この機能は、サーバ装置100のCPUが後述する図3に示したフローチャートにより表されるプログラム等を実行するとともに、クライアント装置200のCPUが所定のプログラムを実行することにより、実現される。
サーバ装置100の機能は、メディアデータ記憶部(メディアデータ記憶手段)101と、レート出力部(レート出力手段)102と、メディアパケタイズ部103と、メディアデータ送信部(メディアデータ送信手段)104と、可用帯域幅取得部(可用帯域幅取得手段)105と、を含む。
また、クライアント装置200の機能は、メディアデータ受信部201と、メディアバッファ部202と、コンテンツ再生部203と、受信情報取得部(送信レート取得手段、送信レート送信手段)204と、再生速度取得部(再生速度取得手段)205と、残余再生時間取得部(残余再生時間取得手段)206と、を含む。
サーバ装置100のメディアデータ記憶部101は、複数のメディアデータを予め記憶(蓄積)している。メディアデータは、1つのコンテンツ(例えば、映像及び/又は音声等を表す情報)を複数の異なるメディアレートのそれぞれにて符号化したデータである。メディアレートは、コンテンツを単位時間(例えば、1秒)だけ等速再生(1倍速にて再生)するためのメディアデータのデータ量(データサイズ、例えば、バイト数)を表す。
サーバ装置100のレート出力部102は、送信レート及びメディアレートの組を選択し、選択した送信レート及びメディアレートの組を出力する。送信レートは、サーバ装置100が単位時間(例えば、1秒)あたりに送信するメディアデータのデータ量(例えば、バイト数)を表す。なお、レート出力部102の詳細については、後述する。
サーバ装置100のメディアパケタイズ部103は、メディアデータ記憶部101に記憶されているメディアデータの中から、レート出力部102により出力されたメディアレートrにて符号化されたメディアデータを取得する。そして、メディアパケタイズ部103は、取得したメディアデータに基づいてパケットを生成する(即ち、取得したメディアデータをパケタイズする)。
本例では、メディアパケタイズ部103は、RTP(Real−Time Transport Protocol)に従ってパケットを生成する。なお、メディアパケタイズ部103は、他の方法を用いて(他の通信プロトコルに従って)パケットを生成するように構成されていてもよい。
サーバ装置100のメディアデータ送信部104は、単位時間あたりに送信するデータ量がレート出力部102により出力された送信レートvに一致するように、メディアパケタイズ部103により生成されたパケット(即ち、メディアデータ)をクライアント装置200へ送信する。
なお、本例では、サーバ装置100は、クライアント装置200からコンテンツ送信要求を受信し、受信したコンテンツ送信要求により特定されるメディアデータをクライアント装置200へ送信する。
クライアント装置200のメディアデータ受信部201は、サーバ装置100のメディアデータ送信部104により送信されたパケット(即ち、メディアデータ)を受信する。
クライアント装置200のメディアバッファ部202は、メディアデータ受信部201によりメディアデータが受信されている間に、そのメディアデータのうちの受信されたデータを記憶する。
クライアント装置200のコンテンツ再生部203は、メディアバッファ部202に記憶されているデータに基づいてコンテンツを再生する(出力装置を介して出力する)。また、コンテンツ再生部203は、ユーザからの指示に応じてコンテンツを再生する速度である再生速度を変更する機能を含む。
即ち、クライアント装置200は、サーバ装置100により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいてコンテンツを再生する(即ち、ストリーミング再生を行う)ように構成されている。
また、クライアント装置200の受信情報取得部204は、メディアデータ受信部201によって、単位時間あたりに受信されるメディアデータのデータ量である受信レートを上記送信レートとして取得する。
本例では、受信情報取得部204は、所定の計測時間内に受信されたメディアデータのデータ量を当該計測時間により除した値である瞬時受信レートを取得し、複数の異なる時点にて取得された瞬時受信レートを平均した値を受信レートとして取得する。なお、受信情報取得部204は、ある時点にて取得された瞬時受信レートを受信レートとして取得するように構成されていてもよい。また、受信情報取得部204は、複数の異なる時点にて取得された瞬時受信レートと、フィルタ(例えば、カルマンフィルタ等)と、に基づいて受信レートを取得するように構成されていてもよい。
更に、受信情報取得部204は、メディアデータ受信部201によって受信されたパケットに基づいて、パケットロス率を取得する。パケットロス率は、サーバ装置100から送信されたパケットの数に対する、クライアント装置200により受信されなかったパケットの数の割合である。即ち、パケットロス率は、パケットロス(パケットの消失)が発生する割合を表す。本例では、受信情報取得部204は、パケットに含まれるシーケンス番号に基づいてパケットロス率を取得する。
本例では、受信情報取得部204は、所定の計測時間内の瞬時パケットロス率を取得し、複数の異なる時点にて取得された瞬時パケットロス率を平均した値をパケットロス率として取得する。なお、受信情報取得部204は、ある時点にて取得された瞬時パケットロス率をパケットロス率として取得するように構成されていてもよい。また、受信情報取得部204は、複数の異なる時点にて取得された瞬時パケットロス率と、フィルタ(例えば、カルマンフィルタ等)と、に基づいてパケットロス率を取得するように構成されていてもよい。
加えて、受信情報取得部204は、メディアデータ受信部201により受信されたメディアデータのメディアレートを取得する。そして、受信情報取得部204は、取得した受信レート、メディアレート及びパケットロス率を含む受信情報をサーバ装置100へ送信する。
加えて、クライアント装置200の再生速度取得部205は、コンテンツ再生部203がコンテンツを再生する速度である再生速度を取得する。更に、再生速度取得部205は、取得した再生速度を等速再生に対応する再生速度にて除した値である再生速度倍率をサーバ装置100へ送信する。
ここで、再生速度倍率は、コンテンツが等速再生されている場合、「1」となり、等速再生の2倍の再生速度(2倍速)にてコンテンツが再生されている場合、「2」となり、等速再生の半分の再生速度にてコンテンツが再生(スロー再生)されている場合、「0.5」となる。
また、クライアント装置200の残余再生時間取得部206は、メディアバッファ部202に記憶されているデータのうちの未だ再生していない部分(未再生データ)に基づいてコンテンツ再生部203によりコンテンツを等速再生可能な時間である残余再生時間を取得する。
本例では、残余再生時間取得部206は、当該未再生データのデータ量を当該未再生データのメディアレートにより除した値を残余再生時間として取得する。例えば、未再生データのデータ量が6[Mega Byte(メガバイト、Mbyte)](以下、物理量の単位を[]により囲んで表記する)であり、且つ、その未再生データのメディアレートが3[Mbyte/s(秒)]である場合には、残余再生時間は2[s]となる。
なお、残余再生時間取得部206は、当該未再生データが互いに異なるメディアレートを有する複数の部分から構成されている場合、各部分のデータ量をその部分のメディアレートにより除した値の和を残余再生時間として取得する。例えば、3[Mbyte/s]のメディアレートを有し且つデータ量が6[Mbyte]であるデータと、2[Mbyte/s]のメディアレートを有し且つデータ量が6[Mbyte]であるデータと、からなるコンテンツデータが、未再生データである場合、残余再生時間取得部206は、2[s]+3[s]=5[s]を残余再生時間として取得する。
更に、残余再生時間取得部206は、取得した残余再生時間をサーバ装置100へ送信する。
なお、本例では、受信情報取得部204、再生速度取得部205、及び、残余再生時間取得部206は、RTCP(RTP Control Protocol)に従って、受信情報、残余再生時間、及び、再生速度倍率を送信する。また、受信情報取得部204、再生速度取得部205、及び、残余再生時間取得部206は、RTCP以外の通信プロトコルに従って、受信情報、残余再生時間、及び、再生速度倍率を送信するように構成されていてもよい。
更に、受信情報取得部204、再生速度取得部205、及び、残余再生時間取得部206は、任意に拡張可能なAPP(Application)パケットを用いて、受信情報、残余再生時間、及び、再生速度倍率を送信するように構成されることが好適である。
サーバ装置100の可用帯域幅取得部105は、可用帯域幅を取得する。可用帯域幅は、メディアデータをサーバ装置100からクライアント装置200へ送信するために利用可能な通信帯域幅である。
本例では、可用帯域幅取得部105は、受信情報取得部204から受信した受信情報と、メディアデータ送信部104における送信レートと、に基づいて可用帯域幅を取得する。即ち、可用帯域幅取得部105は、パッシブ計測(例えば、インライン計測)を行うことにより可用帯域幅を取得する。
なお、可用帯域幅取得部105は、メディアデータと異なるプローブデータをクライアント装置200へ送信することにより可用帯域幅を取得するように構成されていてもよい。即ち、可用帯域幅取得部105は、アクティブ計測を行うことにより可用帯域幅を取得するように構成されていてもよい。例えば、可用帯域幅取得部105は、アクティブ計測を行う方法として、パケットトレイン推定法(PathLoad、pathChirp、IGI(Initial Gap Increasing)等)を用いてもよい。
ここで、サーバ装置100のレート出力部102について詳細に説明する。レート出力部102は、現時点(時刻t)の、可用帯域幅、再生速度倍率、残余再生時間、送信レート、及び、メディアレートに基づいて、現時点よりも先の時点(時刻t、t>t)の送信レート及びメディアレートの組の最適な値を出力する。
レート出力部102は、現時点tの可用帯域幅として、可用帯域幅取得部105により取得された値を用いる。同様に、レート出力部102は、現時点tの再生速度倍率として、再生速度取得部205から受信された値を用いる。同様に、レート出力部102は、現時点tの残余再生時間として、残余再生時間取得部206から受信された値を用いる。同様に、レート出力部102は、現時点tの送信レート及びメディアレートとして、受信情報取得部204から受信された値を用いる。
具体的には、レート出力部102は、レート候補抽出部102aと、最適レート出力部102bと、を含む。
レート候補抽出部102aは、所定の制約条件を満足する送信レート及びメディアレートの組のすべてを抽出する。レート候補抽出部102aは、後述するように、制約条件の1つとして、現時点よりも先の時点tの残余再生時間T(t)が0よりも大きいという条件を用いる。
そこで、レート候補抽出部102aは、現時点よりも先の時点tの送信レートv(t)、及び、現時点よりも先の時点tのメディアレートr(t)を変数とする関数により表した残余再生時間T(t)の解析解(数式)を用いる。
ここで、先ず、残余再生時間T(t)の解析解の導出について説明する。
時刻t[s]にて、メディアデータ受信部201が受信するメディアデータのメディアレートをr(t)[byte/s](通常、メディアレート及び送信レートの単位として[bps]を用いるが、本明細書においては、[byte/s]を用いる)とおく。同様に、時刻t[s]にて、メディアデータ受信部201が単位時間あたりに受信するメディアデータのデータ量である受信レート(即ち、送信レート)をv(t)[byte/s]とおく。
更に、時刻t[s]にて、メディアバッファ部202に記憶されているメディアデータのうち未だ再生していない部分に基づいてコンテンツを再生可能な時間である残余再生時間をT(t)[s]とおく。また、時刻t[s]の、コンテンツ再生部203におけるコンテンツの再生速度を等速再生に対応する再生速度にて除した値である再生速度倍率をp(t)[無次元]とおく。
ここで、下記式(1)に示したように、メディアレートr(t)の逆数をメディア密度ρ(t)[s/byte]として定義する。メディア密度は、単位データ量のメディアデータに基づいてコンテンツを等速再生可能な時間を表す。
Figure 2011018868
さて、時刻t[s]から微小時間Δt[s]だけ経過した時刻t+Δt[s]までの期間にて、メディアデータ受信部201が受信したメディアデータに基づいてコンテンツを等速再生可能な時間は、下記式(2)により表される。
Figure 2011018868
一方、時刻t[s]から微小時間Δt[s]だけ経過した時刻t+Δt[s]までの期間にて、コンテンツ再生部203が再生したコンテンツの基となったメディアデータに基づいてコンテンツを等速再生可能な時間は、下記式(3)により表される。
Figure 2011018868
時刻t[s]から微小時間Δt[s]だけ経過した時刻t+Δt[s]までの期間における残余再生時間の増分ΔT[s]は、上記式(2)から上記式(3)を減じた値に等しいから、下記式(4)により表される。
Figure 2011018868
上記式(4)において、Δt→0とする(Δtを0に近づけた極限をとる)ことによって、残余再生時間Tに関する微分方程式(5)が得られる。
Figure 2011018868
上記式(5)の右辺における第1項ρ(t)v(t)を下記式(6)に示したようにx(t)とおき、x(t)をメディア流速と呼ぶ。メディア流速x(t)[無次元]は、単位時間あたりにメディアデータ受信部201が受信したメディアデータに基づいてコンテンツを等速再生可能な時間を表す。上記式(5)及び下記式(6)に基づいて、メディア流速x(t)を用いた残余再生時間Tに関する微分方程式(7)が得られる。
Figure 2011018868
Figure 2011018868
時刻t[s]における残余再生時間T(t)をTとおくとともに、上記微分方程式(7)を時刻t[s]から時刻t[s]の範囲で積分することにより、時刻t[s]における残余再生時間T(t)を、下記式(8)のように求めることができる。
Figure 2011018868
即ち、時刻t[s]における残余再生時間T(t)は、現時点tにおける残余再生時間Tに基づいて値が定まる関数により表されている、と言うことができる。また、時刻t[s]における残余再生時間T(t)は、現時点tにおける再生速度倍率p(t)に基づいて値が定まる関数により表されている、と言うこともできる。
なお、本例では、レート候補抽出部102aは、残余再生時間Tとして、残余再生時間取得部206から受信された値を用いる。また、レート候補抽出部102aは、時刻t[s]における再生速度倍率p(t)として、再生速度取得部205から受信された値を用いる。
また、本例では、レート候補抽出部102aは、時刻t[s]から時刻t[s]までの間の再生速度倍率pが、時刻t[s]における再生速度倍率p(t)にて一定であることを仮定する。なお、レート候補抽出部102aは、時刻t[s]から時刻t[s]までの間の再生速度倍率pを、時刻t[s]以前の再生速度倍率pに基づいて推定し、推定した再生速度倍率pを用いるように構成されていてもよい。
上述したように、レート候補抽出部102aは、所定の制約条件を満足する送信レート及びメディアレートの組のすべてを抽出する。本例では、制約条件は、下記の第1の制約条件〜第3の制約条件のすべてが満足される(成立する)場合に満足される条件である。
第1の制約条件は、現時点tよりも先の時点tにおいて、サーバ装置100のメディアデータ送信部104における送信レートv(t)[byte/s]を可用帯域幅a(t)[byte/s]以下とするという条件である。第1の制約条件は、下記式(9)により表される。
Figure 2011018868
第1の制約条件を満足することにより、可用帯域幅a(t)以下の送信レートv(t)を確実に選択することができる。従って、メディアデータを構成するパケットがネットワーク内で破棄される(パケットが消失する)ことを回避することができる。即ち、パケットロスの発生を抑制することができる。
なお、本例では、レート候補抽出部102aは、時刻t[s]よりも先の時刻t[s]における可用帯域幅a(t)が、時刻t[s]における可用帯域幅a(t)に一致していることを仮定する。即ち、レート候補抽出部102aは、時刻t[s]における可用帯域幅a(t)として、時刻t[s]にて可用帯域幅取得部105により取得された可用帯域幅a(t)を用いる。
なお、レート候補抽出部102aは、時刻t[s]よりも先の時刻t[s]における可用帯域幅a(t)を、時刻t[s]以前の可用帯域幅aに基づいて推定し、推定した可用帯域幅aを用いるように構成されていてもよい。
第2の制約条件は、現時点tよりも先の時点tにおいて、メディアデータ送信部104が送信するメディアデータのメディアレートr(t)[byte/s]を、メディアデータ記憶部101に記憶されているメディアデータのメディアレートのうちの1つとするという条件である。
本例では、メディアデータ記憶部101は、1つのコンテンツが、m(mは正の整数)種類のメディアレート(r、r、…、r)のそれぞれにて符号化されたメディアデータを予め記憶している。従って、第2の制約条件は、下記式(10)により表される。ここで、集合Rは、R={r、r、…、r}により定義される。
Figure 2011018868
第3の制約条件は、現時点tよりも先の時点tにおいて、残余再生時間T(t)を0よりも大きくする(残余再生時間T(t)を常に0よりも大きな値に維持する)という条件である。第3の制約条件は、下記式(11)により表される。また、残余再生時間T(t)は、上記式(8)により表される。
Figure 2011018868
第3の制約条件を満足することにより、残余再生時間T(t)を0よりも大きくする送信レートv(t)及びメディアレートr(t)の組を確実に選択することができる。この結果、メディアバッファ部202に記憶されているメディアデータが不足することにより、クライアント装置200においてユーザの指示によらずにコンテンツの再生が中断することを防止することができる。
上述したように、レート候補抽出部102aは、上記制約条件を満足する送信レートv(t)及びメディアレートr(t)の組のすべてを抽出する。即ち、レート候補抽出部102aは、上述した式(9)、式(10)及び式(11)のすべてを満足する、送信レートv(t)及びメディアレートr(t)の組のすべてを抽出する。
上記制約条件を満足する送信レートv(t)及びメディアレートr(t)の組の集合をSとおくと、集合Sは、下記式(12)により表される。
Figure 2011018868
最適レート出力部102bは、レート候補抽出部102aにより抽出された送信レートv(t)及びメディアレートr(t)の組の中から、ユーザ体感品質を最も高くする組を選択する。ユーザ体感品質は、クライアント装置200のユーザがクライアント装置200により再生されるコンテンツを視聴する際に感じるサービス品質である。
具体的には、最適レート出力部102bは、目的関数J(r,v)に基づいて、最も高いユーザ体感品質を表すユーザ体感品質値に対応する送信レートv(t)及びメディアレートr(t)の組を選択する。目的関数J(r,v)は、送信レートv(t)及びメディアレートr(t)のそれぞれを変数とする関数であって、ユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である。
本例では、目的関数J(r,v)は、第1のパラメータ〜第4のパラメータからなる4つのパラメータに基づいて構築される関数である。
第1のパラメータzは、予め設定された残余再生時間の目標値Tから、現時点tよりも先の時点tにおける残余再生時間T(t)を減じた値である。第1のパラメータzは、下記式(13)により表される。後述するように、本例では、目的関数J(r,v)の値(即ち、ユーザ体感品質値)が小さくなるほど、ユーザ体感品質は高くなる。また、残余再生時間T(t)が目標値Tに近づくほど、目的関数J(r,v)の値は小さくなる(即ち、ユーザ体感品質は高くなる)。
これによれば、残余再生時間T(t)を目標値Tにより近づける送信レートv(t)及びメディアレートr(t)の組が優先して選択される。これにより、クライアント装置200においてユーザの指示によらずにコンテンツの再生が中断することを防止することができるとともに、メディアバッファ部202に記憶されるデータ量がメディアバッファ部202の容量に到達する(即ち、受信したメディアデータが消失する)ことを回避することができる。
Figure 2011018868
本例では、最適レート出力部102bは、目標値Tとして予め設定された値(例えば、10[s]又は20[s]等)を用いる。なお、最適レート出力部102bは、目標値Tを可用帯域幅、及び/又は、メディアバッファ部202の記憶容量等に基づいて設定するように構成されていてもよい。
第2のパラメータzは、現時点tよりも先の時点tにおける送信レートv(t)である。第2のパラメータzは、下記式(14)により表される。後述するように、本例では、送信レートv(t)が低くなるほど、目的関数J(r,v)の値は小さくなる(即ち、ユーザ体感品質は高くなる)。
Figure 2011018868
これによれば、より低い送信レートv(t)が優先して選択される。ところで、送信レートが低くなるほど、サーバ装置100とクライアント装置200との間の通信経路にて輻輳が発生する確率が低くなる。従って、上記構成によれば、パケットロスの発生を抑制することができる。
この結果、サーバ装置100から送信されたメディアデータを構成するパケットのうちの、クライアント装置200により受信されないパケットを低減することができる。従って、メディアデータが欠落することによるユーザ体感品質の低下を防止することができる。
第3のパラメータzは、メディアデータ記憶部101に記憶されているメディアデータのメディアレートの最大値rmaxから、現時点tよりも先の時点tにおけるメディアレートr(t)を減じた値である。第3のパラメータzは、下記式(15)により表される。なお、rmaxは、rmax=max{r|r∈R}である。後述するように、本例では、メディアレートr(t)が高くなるほど、目的関数J(r,v)の値は小さくなる(即ち、ユーザ体感品質は高くなる)。
Figure 2011018868
これによれば、より高いメディアレートr(t)が優先して選択される。これにより、コンテンツの質(画質、及び/又は、音質等)を高めることができる。
第4のパラメータzは、現時点tよりも先の時点tにおけるメディアレートr(t)の時間変化率(時間微分値)dr/dtである。第4のパラメータzは、下記式(16)により表される。後述するように、本例では、メディアレートr(t)の時間変化率dr/dtが小さくなるほど、目的関数J(r,v)の値は小さくなる(即ち、ユーザ体感品質は高くなる)。
Figure 2011018868
ところで、メディアレートが頻繁に変化すると、クライアント装置200により出力されるコンテンツの鮮明さが頻繁に変化する。その結果、ディスプレイにおいて、ちらつき(フリッカー)現象が発生するので、ユーザ体感品質が低下する。
これに対し、上記構成によれば、メディアレートr(t)の時間変化率dr/dtをより小さくする送信レートv(t)及びメディアレートr(t)の組が優先して選択される。これにより、メディアレートの変動を抑制することができる。この結果、ユーザ体感品質の低下を防止することができる。
次に、上述した4つのパラメータからなるパラメータベクトルzを、下記式(17)のように定義する。本例では、パラメータベクトルzは、4次元ベクトルである。
Figure 2011018868
目的関数J(r,v)は、パラメータベクトルzと、正定な関数L(z)と、を用いて下記式(18)により表される。ここで、正定な関数L(z)は、パラメータベクトルzを変数とする関数である。更に、正定な関数L(z)は、z=0である場合にL(z)=0となるとともに、z≠0である場合にL(z)>0となる関数である。
Figure 2011018868
即ち、目的関数J(r,v)は、現時点tにおける、送信レートv(t)及びメディアレートr(t)に基づいて値(ユーザ体感品質値)が定まる関数である、と言うことができる。
例えば、目的関数J(r,v)は、下記式(19)により表される関数であってもよい。ここで、Aは、正定値行列である。
Figure 2011018868
この場合、正定値行列Aとして対角行列を用いることができる。対角行列は、正方行列であって、対角要素以外の要素が0である行列である。即ち、この場合、行列Aのi行j列の要素をaijとおくと、i=jである要素aijは0よりも大きく、且つ、i≠jである要素aijは0である。この場合、目的関数J(r,v)は、下記式(20)により表される。ここで、i=jである要素aijを、aとおいている。
Figure 2011018868
最適レート出力部102bは、レート候補抽出部102aにより抽出された送信レートv(t)及びメディアレートr(t)の組の中から、目的関数J(r,v)の値(即ち、ユーザ体感品質値)を最も小さくする(即ち、ユーザ体感品質を最も高くする)組を選択する。
本例では、最適レート出力部102bは、動的計画法を用いることにより、送信レートv(t)及びメディアレートr(t)の組を選択する。なお、最適レート出力部102bは、動的計画法以外の方法を用いて送信レートv(t)及びメディアレートr(t)の組を選択するように構成されていてもよい。
最適レート出力部102bにより選択される送信レートv及びメディアレートrを、それぞれ、送信レートv及びメディアレートrとおくと、下記式(21)が成立する。
Figure 2011018868
そして、最適レート出力部102bは、選択したメディアレートrをメディアパケタイズ部103へ出力するとともに、選択した送信レートvをメディアデータ送信部104へ出力する。
次に、上述した配信システム1の作動について具体的に述べる。
先ず、クライアント装置200のユーザが、コンテンツを特定するための情報を含む再生要求をクライアント装置200に入力する。これにより、クライアント装置200は、コンテンツを特定するための情報を含む送信要求をサーバ装置100へ送信する。
サーバ装置100は、送信要求を受信すると、その送信要求により特定されるコンテンツが符号化されたメディアデータをクライアント装置200へ送信する。クライアント装置200は、サーバ装置100により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいてコンテンツを再生する(即ち、ストリーミング再生を行う)。
更に、サーバ装置100のCPUは、図3にフローチャートにより示したレート制御プログラムを、予め設定された制御周期が経過する毎に実行するようになっている。
具体的に述べると、CPUは、レート制御プログラムの処理を開始すると、ステップ305にて、現時点tにおける可用帯域幅a(t)、再生速度倍率p(t)、残余再生時間T(t)、送信レートv(t)、及び、メディアレートr(t)を取得する。
次いで、CPUは、取得した可用帯域幅a(t)、再生速度倍率p(t)、残余再生時間T(t)、送信レートv(t)、及び、メディアレートr(t)に基づいて、制約条件を満足する送信レートv(t)及びメディアレートr(t)の組のすべてを抽出する(ステップ310)。本例では、サーバ装置100は、現時点tよりも先の時点tとして、現時点tよりも予め設定された時間(例えば、10秒)だけ先の時点tを用いる。
そして、CPUは、上記ステップ310にて抽出した送信レートv(t)及びメディアレートr(t)の組の中から、目的関数J(r,v)の値(即ち、ユーザ体感品質値)を最も小さくする(即ち、ユーザ体感品質を最も高くする)組を選択し、選択した送信レートv及びメディアレートrの組を出力する(ステップ315)。
次いで、CPUは、クライアント装置200へ送信しているメディアデータのメディアレートを上記ステップ315にて出力されたメディアレートに変更する。加えて、CPUは、クライアント装置200へ単位時間あたりに送信するデータ量である送信レートを上記ステップ315にて出力された送信レートに変更する(ステップ320)。
そして、CPUは、このレート制御プログラムの処理を終了する。
以上、説明したように、本発明による配信システムの第1実施形態によれば、配信システム1は、送信レートv及びメディアレートrの組として、ユーザ体感品質(QoE)を十分に高くする組(即ち、適切な組)を出力することができる。従って、例えば、可用帯域幅が変動する場合であっても、メディアレートrが比較的大きく変動することを回避することができる。即ち、ユーザ体感品質が低下することを防止することができる。
また、配信システム1によれば、残余再生時間に基づいて送信レートvを制御し、且つ、パケットロス率に基づいてメディアレートrを制御する配信システムと比較して、迅速に送信レートv及びメディアレートrの組を適切な組に設定することができる。この結果、ユーザ体感品質が比較的低い状態が過度に長い期間に亘って維持されることを防止することができる。
このように、上記配信システムによれば、ユーザ体感品質を高めることができる。
更に、上記第1実施形態によれば、配信システム1は、上記制約条件を満足する前記送信レート及び前記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する送信レートv及びメディアレートrの組を出力する。
これによれば、配信システム1は、送信レートv及びメディアレートrの組として、ユーザ体感品質を可能な限り高くする組(制約条件を満足する送信レート及びメディアレートの組のうちのユーザ体感品質を最も高くする組、即ち、最適な組)を出力することができる。この結果、ユーザ体感品質をより一層高めることができる。
なお、上記第1実施形態において、配信システム1は、制約条件を満足する送信レートv(t)及びメディアレートr(t)の組のすべてを抽出し、その後、抽出した送信レートv(t)及びメディアレートr(t)の組の中から、目的関数J(r,v)の値を最も小さくする組を出力していた。
ところで、上記第1実施形態の第1変形例に係る配信システム1は、上記第1実施形態に係る配信システム1と異なる方法を用いて、送信レートv(t)及びメディアレートr(t)の最適な組を出力するように構成されている。
即ち、この配信システム1は、先ず、すべてのメディアレート及び送信レートの組のそれぞれに対して目的関数の値を算出する。次いで、配信システム1は、算出した目的関数の値が小さい方から順にメディアレート及び送信レートの組を取得し、取得したメディアレート及び送信レートの組に対して制約条件を満足するか否かを判定する。配信システム1は、最初に制約条件を満足するメディアレート及び送信レートの組を最適な組として出力する。
なお、目的関数の逆関数を求めることができる場合、すべてのメディアレート及び送信レートの組に対する目的関数の値を算出することなく、目的関数の値が相対的に小さいメディアレート及び送信レートの組を特定することができる。この場合、配信システム1は、特定された組に対して上記判定を行うことにより、送信レートv(t)及びメディアレートr(t)の最適な組を出力することができる。従って、この場合、処理負荷を低減することができる。
更に、上記第1実施形態の第2変形例に係る配信システム1も、上記第1実施形態に係る配信システム1と異なる方法を用いて、送信レートv(t)及びメディアレートr(t)の最適な組を出力するように構成されている。
この配信システム1は、目的関数として、制約条件を満足しない場合に値が十分に大きくなる(例えば、無限大になる)関数を用いる。これによれば、配信システム1は、制約条件を満足するか否かを判定する処理を行うことなく、制約条件を満足する、送信レートv(t)及びメディアレートr(t)の最適な組を出力することができる。
また、上記第1実施形態において、配信システム1は、上記制約条件を満足する送信レート及びメディアレートの組のすべてを抽出するように構成されていた。ところで、上記第1実施形態の第3変形例に係る配信システム1は、上記制約条件を満足する送信レート及びメディアレートの組の一部を抽出するように構成されていてもよい。これによれば、送信レート及びメディアレートの最適な組を選択するための処理負荷を低減することができる。
また、上記第1実施形態の他の変形例において、制約条件は、上記第1の制約条件〜第3の制約条件の一部が満足される場合に満足される条件であってもよい。
また、上記第1実施形態の他の変形例において、目的関数J(r,v)は、第1のパラメータ〜第4のパラメータの一部のパラメータに基づいて構築される関数であってもよい。
<第2実施形態>
次に、本発明の第2実施形態に係る配信システムについて説明する。第2実施形態に係る配信システムは、上記第1実施形態に係る配信システムに対して、クライアント装置200が送信レートv(t)及びメディアレートr(t)の最適な組を選択する点において相違している。従って、以下、係る相違点を中心として説明する。
この第2実施形態に係る配信システム1Aは、図4に示したように、サーバ装置300と、クライアント装置400と、を含む。サーバ装置300及びクライアント装置400は、通信回線NW(例えばインターネット)を介して互いに通信可能に接続されている。
サーバ装置300の機能は、メディアデータ記憶部(メディアデータ記憶手段)301と、メディアパケタイズ部302と、メディアデータ送信部(メディアデータ送信手段)303と、を含む。メディアデータ記憶部301、メディアパケタイズ部302、及び、メディアデータ送信部303は、上記第1実施形態に係る、メディアデータ記憶部101、メディアパケタイズ部103、及び、メディアデータ送信部104とそれぞれ同様の機能を有する。
また、クライアント装置400の機能は、メディアデータ受信部401と、メディアバッファ部402と、コンテンツ再生部403と、受信情報取得部(送信レート取得手段、送信レート送信手段)404と、再生速度取得部(再生速度取得手段)405と、残余再生時間取得部(残余再生時間取得手段)406と、レート出力部(レート出力手段)407と、可用帯域幅取得部(可用帯域幅取得手段)408と、要求送信部(要求送信手段)409と、を含む。レート出力部407は、レート候補抽出部407aと、最適レート出力部407bと、を含む。
メディアデータ受信部401、メディアバッファ部402、コンテンツ再生部403、受信情報取得部404、再生速度取得部405、残余再生時間取得部406、レート出力部407、及び、可用帯域幅取得部408は、上記第1実施形態に係る、メディアデータ受信部201、メディアバッファ部202、コンテンツ再生部203、受信情報取得部204、再生速度取得部205、残余再生時間取得部206、レート出力部102、及び、可用帯域幅取得部105とそれぞれ同様の機能を有する。
要求送信部409は、最適レート出力部407bにより出力されたメディアレートrにて符号化されたメディアデータを、最適レート出力部407bにより出力された送信レートvにて送信する旨を要求する送信要求をサーバ装置300へ送信する。即ち、送信要求は、最適レート出力部407bにより出力されたメディアレートrを表す情報と、最適レート出力部407bにより出力された送信レートvを表す情報と、を含む。
サーバ装置300のメディアパケタイズ部302は、メディアデータ記憶部301に記憶されているメディアデータの中から、クライアント装置400から受信した送信要求に含まれる情報が表すメディアレートrにて符号化されたメディアデータを取得する。そして、メディアパケタイズ部302は、取得したメディアデータに基づいてパケットを生成する(即ち、取得したメディアデータをパケタイズする)。
サーバ装置300のメディアデータ送信部303は、単位時間あたりに送信するデータ量が、クライアント装置400から受信した送信要求に含まれる情報が表す送信レートvに一致するように、メディアパケタイズ部302により生成されたパケット(即ち、メディアデータ)をクライアント装置400へ送信する。
この第2実施形態に係る配信システム1Aによっても、上記第1実施形態と同様の作用及び効果を奏することができる。
<第3実施形態>
次に、本発明の第3実施形態に係る配信システムについて説明する。第3実施形態に係る配信システムは、上記第1実施形態に係る配信システムに対して、サーバ装置からクライアント装置へメディアデータを転送する中継装置が受信情報を取得し、取得した受信情報をサーバ装置へ送信する点において相違している。従って、以下、係る相違点を中心として説明する。
図5に示したように、第3実施形態に係る配信システム1Bは、サーバ装置500と、クライアント装置600と、中継装置700と、を含む。サーバ装置500及び中継装置700は、第1の通信回線NW1を介して互いに通信可能に接続されている。また、クライアント装置600及び中継装置700は、第2の通信回線NW2を介して互いに通信可能に接続されている。即ち、サーバ装置500とクライアント装置600とは、中継装置700を介して互いに通信可能に接続されている。
本例では、クライアント装置600は、携帯電話機であり、中継装置700は、基地局装置である。また、第1の通信回線NW1は、インターネットであり、第2の通信回線NW2は、携帯電話網である。
なお、クライアント装置600は、家屋内に配置された電気機器(例えば、テレビ受像機、又は、セット・トップ・ボックス等)であってもよい。この場合、中継装置700は、ホームゲートウェイであり、第2の通信回線NW2は、ホームネットワークである。
中継装置700は、図示しない中央処理装置(CPU)、記憶装置(メモリ)、入力装置(例えば、キーボード及びマウス等)及び出力装置(例えば、ディスプレイ及びスピーカ等)を備える。中継装置700は、記憶装置に記憶されているプログラムをCPUが実行することにより、後述する機能を実現するように構成されている。
図6は、上記のように構成された配信システム1Bの機能を表すブロック図である。この第3実施形態に係るサーバ装置500の機能は、第1実施形態に係るサーバ装置100と同様に、メディアデータ記憶部(メディアデータ記憶手段)501と、レート出力部(レート出力手段)502と、メディアパケタイズ部503と、メディアデータ送信部(メディアデータ送信手段)504と、可用帯域幅取得部(可用帯域幅取得手段)505と、を含む。
メディアデータ記憶部501、レート出力部502、メディアパケタイズ部503、メディアデータ送信部504、及び、可用帯域幅取得部505は、上記第1実施形態に係る、メディアデータ記憶部101、レート出力部102、メディアパケタイズ部103、メディアデータ送信部104、及び、可用帯域幅取得部105とそれぞれ同様の機能を有する。
また、第3実施形態に係るクライアント装置600の機能は、メディアデータ受信部601と、メディアバッファ部602と、コンテンツ再生部603と、再生速度取得部(再生速度取得手段)604と、残余再生時間取得部(残余再生時間取得手段)605と、を含む。
メディアデータ受信部601、メディアバッファ部602、コンテンツ再生部603、再生速度取得部604、及び、残余再生時間取得部605は、上記第1実施形態に係る、メディアデータ受信部201、メディアバッファ部202、コンテンツ再生部203、再生速度取得部205、及び、残余再生時間取得部206とそれぞれ同様の機能を有する。
また、第3実施形態に係る中継装置700の機能は、データ転送部701と、受信情報取得部(送信レート取得手段、送信レート送信手段)702と、を含む。
中継装置700のデータ転送部701は、サーバ装置500とクライアント装置600との間の通信を中継する。具体的には、データ転送部701は、クライアント装置600を送信先とする情報をサーバ装置500から受信し、受信した情報をクライアント装置600へ送信(転送)する。
また、メディアデータ送信部504は、メディアデータを中継装置700へ送信する。
従って、データ転送部701は、サーバ装置500からクライアント装置600へ、コンテンツが符号化されたメディアデータを転送する。
メディアデータ受信部601は、中継装置700により転送されたメディアデータを受信する。
また、データ転送部701は、サーバ装置500を送信先とする情報をクライアント装置600から受信し、受信した情報をサーバ装置500へ送信(転送)する。
再生速度取得部604は、再生速度倍率を中継装置700へ送信する。また、残余再生時間取得部605は、残余再生時間を中継装置700へ送信する。
従って、データ転送部701は、クライアント装置600からサーバ装置500へ、再生速度倍率及び残余再生時間を転送する。
レート出力部502は、中継装置700から受信した再生速度倍率及び残余再生時間に基づいて送信レート及びメディアレートの組を出力する。
中継装置700の受信情報取得部702は、サーバ装置500からクライアント装置600へ単位時間あたりに転送したメディアデータのデータ量である転送レートを送信レートとして取得する。
更に、受信情報取得部702は、サーバ装置500から受信されたパケットに基づいて、パケットロス率を取得する。パケットロス率は、サーバ装置500から送信されたパケットの数に対する、中継装置700により受信されなかったパケットの数の割合である。即ち、パケットロス率は、パケットロス(パケットの消失)が発生する割合を表す。本例では、受信情報取得部702は、パケットに含まれるシーケンス番号に基づいてパケットロス率を取得する。
そして、受信情報取得部702は、取得した受信レート及びパケットロス率を含む受信情報をサーバ装置500へ送信する。
この第3実施形態に係る配信システム1Bによっても、上記第1実施形態と同様の作用及び効果を奏することができる。
<第4実施形態>
次に、本発明の第4実施形態に係る通信システムについて図7を参照しながら説明する。
第4実施形態に係る配信システム1Cは、互いに通信可能に構成されたサーバ装置801及びクライアント装置802を含むシステムである。
更に、サーバ装置801は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータをクライアント装置802へ送信可能に構成される。
加えて、クライアント装置802は、サーバ装置801により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成される。
更に、配信システム1Cは、
サーバ装置801が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、クライアント装置802のユーザがクライアント装置802により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力部(レート出力手段)803と、
サーバ装置801が上記選択されたメディアレートにて符号化されたメディアデータを、上記選択された送信レートにてクライアント装置802へ送信するメディアデータ送信部(メディアデータ送信手段)804と、
を備える。
これによれば、配信システム1Cは、送信レート及びメディアレートの組として、ユーザ体感品質(QoE)を十分に高くする組(即ち、適切な組)を出力することができる。従って、例えば、可用帯域幅が変動する場合であっても、メディアレートが比較的大きく変動することを回避することができる。即ち、ユーザ体感品質が低下することを防止することができる。
また、配信システム1Cによれば、残余再生時間に基づいて送信レートを制御し、且つ、パケットロス率に基づいてメディアレートを制御する配信システムと比較して、迅速に送信レート及びメディアレートの組を適切な組に設定することができる。この結果、ユーザ体感品質が比較的低い状態が過度に長い期間に亘って維持されることを防止することができる。
このように、配信システム1Cによれば、ユーザ体感品質を高めることができる。
この場合、上記レート出力手段は、
所定の制約条件を満足する上記送信レート及び上記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する上記送信レート及び上記メディアレートの組を出力するように構成されることが好適である。
これによれば、配信システムは、送信レート及びメディアレートの組として、ユーザ体感品質を可能な限り高くする組(制約条件を満足する送信レート及びメディアレートの組のうちのユーザ体感品質を最も高くする組、即ち、最適な組)を出力することができる。この結果、ユーザ体感品質をより一層高めることができる。
この場合、上記目的関数は、上記送信レートが低くなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
これによれば、より低い送信レートが優先して出力される。これにより、パケットロスの発生を抑制することができる。この結果、サーバ装置から送信されたメディアデータを構成するパケットのうちの、クライアント装置により受信されないパケットを低減することができる。従って、メディアデータが欠落することによるユーザ体感品質の低下を防止することができる。即ち、ユーザ体感品質を確実に高めることができる。
この場合、上記目的関数は、上記メディアレートが高くなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
これによれば、より高いメディアレートが優先して出力される。これにより、コンテンツの質(画質、及び/又は、音質等)を高めることができる。この結果、ユーザ体感品質を確実に高めることができる。
この場合、上記目的関数は、上記メディアレートの時間変化率が小さくなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
これによれば、メディアレートの時間変化率をより小さくする送信レート及びメディアレートの組が優先して出力される。これにより、メディアレートの変動を抑制することができる。この結果、ユーザ体感品質を確実に高めることができる。
この場合、上記目的関数は、上記クライアント装置の上記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて上記コンテンツを再生可能な時間である残余再生時間が予め設定された目標値に近づくほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
これによれば、残余再生時間を目標値により近づける送信レート及びメディアレートの組が優先して出力される。これにより、クライアント装置においてユーザの指示によらずにコンテンツの再生が中断することを防止することができるとともに、クライアント装置の記憶装置に記憶されるデータ量が記憶装置の容量に到達する(即ち、受信したメディアデータが消失する)ことを回避することができる。この結果、ユーザ体感品質を確実に高めることができる。
この場合、上記残余再生時間は、現時点以前の時点における残余再生時間に基づいて値が定まる関数により表され、
更に、上記配信システムは、
現時点以前の時点における上記残余再生時間を取得する残余再生時間取得手段を備えることが好適である。
この場合、上記残余再生時間は、現時点以前の時点における、上記クライアント装置が上記コンテンツを再生する速度である再生速度に基づいて値が定まる関数により表され、
更に、上記配信システムは、
現時点以前の時点における上記再生速度を取得する再生速度取得手段を備えることが好適である。
これによれば、コンテンツが等速再生(1倍速にて再生)されている場合と異なる再生速度にて再生(例えば、倍速再生、又は、スロー再生等)されている場合であっても、残余再生時間を高い精度にて算出することができる。
この場合、上記配信システムは、
上記メディアデータを上記サーバ装置から上記クライアント装置へ送信するために利用可能な通信帯域幅である可用帯域幅を取得する可用帯域幅取得手段を備え、
上記制約条件は、上記送信レートを上記取得された可用帯域幅以下とするという条件を含むことが好適である。
これによれば、可用帯域幅以下の送信レートを確実に出力することができる。この結果、パケットロスの発生を抑制することができる。この結果、ユーザ体感品質を確実に高めることができる。
この場合、上記制約条件は、上記クライアント装置の上記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて上記コンテンツを再生可能な時間である残余再生時間を0よりも大きくするという条件を含むことが好適である。
これによれば、残余再生時間を0よりも大きくする送信レート及びメディアレートの組を確実に出力することができる。この結果、クライアント装置においてユーザの指示によらずにコンテンツの再生が中断することを防止することができる。この結果、ユーザ体感品質を確実に高めることができる。
この場合、上記配信システムは、
上記コンテンツが上記複数のメディアレートのそれぞれにて符号化されたメディアデータを記憶するメディアデータ記憶手段を備え、
上記メディアデータ送信手段は、上記メディアデータ記憶手段に記憶されているメディアデータを上記サーバ装置が上記クライアント装置へ送信するように構成され、
上記制約条件は、上記メディアレートを、上記複数のメディアレートのうちの1つとするという条件を含むことが好適である。
この場合、上記目的関数は、現時点以前の時点における上記送信レートに基づいて上記ユーザ体感品質値が定まる関数であり、
更に、上記配信システムは、
現時点以前の時点における上記送信レートを取得する送信レート取得手段を備えることが好適である。
この場合、上記クライアント装置は、
上記サーバ装置から単位時間あたりに受信した上記メディアデータのデータ量である受信レートを上記送信レートとして取得する上記送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、を備えることが好適である。
また、本発明の他の態様に係る配信システムは、
上記サーバ装置から上記クライアント装置へ上記メディアデータを転送する中継装置を含み、
上記中継装置は、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを上記送信レートとして取得する上記送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、を備えることが好適である。
また、本発明の他の形態である配信方法は、互いに通信可能に構成されたサーバ装置及びクライアント装置を含む配信システムに適用される方法である。
更に、上記サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成される。
加えて、上記クライアント装置は、上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成される。
更に、上記配信方法は、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力し、
上記サーバ装置が上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信する方法である。
この場合、上記配信方法は、
所定の制約条件を満足する上記送信レート及び上記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する上記送信レート及び上記メディアレートの組を出力することが好適である。
この場合、上記目的関数は、上記送信レートが低くなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
この場合、上記目的関数は、上記メディアレートが高くなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
この場合、上記目的関数は、上記メディアレートの時間変化率が小さくなるほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
この場合、上記目的関数は、上記クライアント装置の上記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて上記コンテンツを再生可能な時間である残余再生時間が予め設定された目標値に近づくほど、上記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定されることが好適である。
この場合、上記残余再生時間は、現時点以前の時点における残余再生時間に基づいて値が定まる関数により表され、
更に、上記配信方法は、
現時点以前の時点における上記残余再生時間を取得することが好適である。
この場合、上記残余再生時間は、現時点以前の時点における、上記クライアント装置が上記コンテンツを再生する速度である再生速度に基づいて値が定まる関数により表され、
更に、上記配信方法は、
現時点以前の時点における上記再生速度を取得することが好適である。
この場合、上記配信方法は、
上記メディアデータを上記サーバ装置から上記クライアント装置へ送信するために利用可能な通信帯域幅である可用帯域幅を取得し、
上記制約条件は、上記送信レートを上記取得された可用帯域幅以下とするという条件を含むことが好適である。
この場合、上記制約条件は、上記クライアント装置の上記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて上記コンテンツを再生可能な時間である残余再生時間を0よりも大きくするという条件を含むことが好適である。
この場合、上記配信方法は、
上記コンテンツが上記複数のメディアレートのそれぞれにて符号化されたメディアデータを記憶する記憶装置に記憶されているメディアデータを上記サーバ装置が上記クライアント装置へ送信し、
上記制約条件は、上記メディアレートを、上記複数のメディアレートのうちの1つとするという条件を含むことが好適である。
この場合、上記目的関数は、現時点以前の時点における上記送信レートに基づいて上記ユーザ体感品質値が定まる関数であり、
更に、上記配信方法は、
現時点以前の時点における上記送信レートを取得することが好適である。
この場合、上記配信方法は、
上記クライアント装置が、上記サーバ装置から単位時間あたりに受信した上記メディアデータのデータ量である受信レートを上記送信レートとして取得し、
上記クライアント装置が、上記取得された送信レートを上記サーバ装置へ送信することが好適である。
また、上記配信方法の他の態様において、
上記配信システムは、上記サーバ装置から上記クライアント装置へ上記メディアデータを転送する中継装置を含み、
更に、上記配信方法は、
上記中継装置が、上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを上記送信レートとして取得し、
前期中継装置が、上記取得された送信レートを上記サーバ装置へ送信することが好適である。
また、本発明の他の形態であるサーバ装置は、クライアント装置と通信可能に構成された装置である。
更に、このサーバ装置は、
1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成され、
単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信するメディアデータ送信手段と、
を備える。
この場合、上記レート出力手段は、
所定の制約条件を満足する上記送信レート及び上記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する上記送信レート及び上記メディアレートの組を出力するように構成されることが好適である。
また、本発明の他の形態であるプログラムは、
クライアント装置と通信可能に構成されるとともに、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを上記クライアント装置へ送信可能に構成されたサーバ装置に、
単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて上記クライアント装置へ送信するメディアデータ送信手段と、
を実現させるためのプログラムである。
また、本発明の他の形態であるクライアント装置は、
1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成された装置である。
更に、このクライアント装置は、
上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて上記コンテンツを再生するように構成され、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて送信する旨を要求する送信要求を上記サーバ装置へ送信する要求送信手段と、
を備える。
この場合、上記レート出力手段は、
所定の制約条件を満足する上記送信レート及び上記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する上記送信レート及び上記メディアレートの組を出力するように構成されることが好適である。
また、本発明の他の形態であるプログラムは、
1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成されるとともに、上記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させ且つ当該記憶されているデータに基づいて上記コンテンツを再生するように構成されたクライアント装置に、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート及び上記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
上記出力されたメディアレートにて符号化されたメディアデータを、上記出力された送信レートにて送信する旨を要求する送信要求を上記サーバ装置へ送信する要求送信手段と、
を実現させるためのプログラムである。
また、本発明の他の形態である配信制御方法は、コンテンツが符号化されたメディアデータの、サーバ装置からクライアント装置への送信を制御する方法である。
更に、この配信制御方法は、
上記サーバ装置が単位時間あたりに送信する上記メディアデータのデータ量を表す送信レート、及び、上記コンテンツを単位時間だけ再生するための上記メディアデータのデータ量を表すメディアレートのそれぞれを変数とする関数であって、上記クライアント装置のユーザが当該クライアント装置により再生される上記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力する方法である。
また、本発明の他の形態である中継装置は、サーバ装置及びクライアント装置のそれぞれと通信可能に構成された装置である。
更に、この中継装置は、
上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成され、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、
を備える。
また、本発明の他の形態である中継方法は、サーバ装置及びクライアント装置のそれぞれと通信可能に構成された中継装置に適用される方法である。
更に、この中継方法は、
上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送し、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得し、
上記取得された送信レートを上記サーバ装置へ送信する方法である。
また、本発明の他の形態であるプログラムは、
サーバ装置及びクライアント装置のそれぞれと通信可能に構成されるとともに、上記サーバ装置から上記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成された中継装置に、
上記サーバ装置から上記クライアント装置へ単位時間あたりに転送した上記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
上記取得された送信レートを上記サーバ装置へ送信する送信レート送信手段と、
を実現させるためのプログラムである。
上述した構成を有する、配信方法、サーバ装置、プログラム、クライアント装置、配信制御方法、中継装置、又は、中継方法、の発明であっても、上記配信システムと同様の作用を有するために、上述した本発明の目的を達成することができる。
以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
例えば、上記各実施形態においては、目的関数は、目的関数の値(即ち、ユーザ体感品質値)が小さくなるほど、ユーザ体感品質が高くなるように設定されていたが、目的関数の値が大きくなるほど、ユーザ体感品質が高くなるように設定されていてもよい。この場合、例えば、配信システムは、上記式(18)〜式(20)の右辺に「−1」を乗じた関数を目的関数として用いてもよい。
また、上記各実施形態において、配信システム1〜1Cは、現時点(時刻t)の、可用帯域幅、再生速度倍率、残余再生時間、送信レート、及び、メディアレートに基づいて、現時点よりも先の時点(時刻t)の送信レート及びメディアレートの組の最適な値を出力するように構成されていた。ところで、上記各実施形態の変形例において、配信システムは、現時点(時刻t)よりも前の時点(時刻t、t<t)の、可用帯域幅、再生速度倍率、残余再生時間、送信レート、及び、メディアレートに基づいて、現時点よりも先の時点(時刻t)の送信レート及びメディアレートの組の最適な値を出力するように構成されていてもよい。
なお、上記各実施形態において配信システム1〜1Cの各機能は、CPUがプログラム(ソフトウェア)を実行することにより実現されていたが、回路等のハードウェアにより実現されていてもよい。
また、上記各実施形態においてプログラムは、記憶装置に記憶されていたが、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
なお、本発明は、日本国にて2009年8月10日に出願された特願2009−186118の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願にて開示された内容のすべてが本明細書に含まれるものとする。
本発明は、コンテンツを表すメディアデータを配信するサーバ装置と、メディアデータをサーバ装置から受信するクライアント装置と、を含む配信システム等に適用可能である。
1 配信システム
100 サーバ装置
101 メディアデータ記憶部
102 レート出力部
102a レート候補抽出部
102b 最適レート出力部
103 メディアパケタイズ部
104 メディアデータ送信部
105 可用帯域幅取得部
200 クライアント装置
201 メディアデータ受信部
202 メディアバッファ部
203 コンテンツ再生部
204 受信情報取得部
205 再生速度取得部
206 残余再生時間取得部
1A 配信システム
300 サーバ装置
301 メディアデータ記憶部
302 メディアパケタイズ部
303 メディアデータ送信部
400 クライアント装置
401 メディアデータ受信部
402 メディアバッファ部
403 コンテンツ再生部
404 受信情報取得部
405 再生速度取得部
406 残余再生時間取得部
407 レート出力部
407a レート候補抽出部
407b 最適レート出力部
408 可用帯域幅取得部
409 要求送信部
1B 配信システム
500 サーバ装置
501 メディアデータ記憶部
502 レート出力部
503 メディアパケタイズ部
504 メディアデータ送信部
505 可用帯域幅取得部
600 クライアント装置
601 メディアデータ受信部
602 メディアバッファ部
603 コンテンツ再生部
604 再生速度取得部
605 残余再生時間取得部
700 中継装置
701 データ転送部
702 受信情報取得部
1C 配信システム
801 サーバ装置
802 クライアント装置
803 レート出力部
804 メディアデータ送信部
NW 通信回線
NW1 第1の通信回線
NW2 第2の通信回線

Claims (38)

  1. 互いに通信可能に構成されたサーバ装置及びクライアント装置を含む配信システムであって、
    前記サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを前記クライアント装置へ送信可能に構成され、
    前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するように構成され、
    前記サーバ装置が単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、前記クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
    前記サーバ装置が前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて前記クライアント装置へ送信するメディアデータ送信手段と、
    を備える配信システム。
  2. 請求項1に記載の配信システムであって、
    前記レート出力手段は、
    所定の制約条件を満足する前記送信レート及び前記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する前記送信レート及び前記メディアレートの組を出力するように構成された配信システム。
  3. 請求項1又は請求項2に記載の配信システムであって、
    前記目的関数は、前記送信レートが低くなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信システム。
  4. 請求項1乃至請求項3のいずれか一項に記載の配信システムであって、
    前記目的関数は、前記メディアレートが高くなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信システム。
  5. 請求項1乃至請求項4のいずれか一項に記載の配信システムであって、
    前記目的関数は、前記メディアレートの時間変化率が小さくなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信システム。
  6. 請求項1乃至請求項5のいずれか一項に記載の配信システムであって、
    前記目的関数は、前記クライアント装置の前記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて前記コンテンツを再生可能な時間である残余再生時間が予め設定された目標値に近づくほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信システム。
  7. 請求項6に記載の配信システムであって、
    前記残余再生時間は、現時点以前の時点における残余再生時間に基づいて値が定まる関数により表され、
    現時点以前の時点における前記残余再生時間を取得する残余再生時間取得手段を備える配信システム。
  8. 請求項6又は請求項7に記載の配信システムであって、
    前記残余再生時間は、現時点以前の時点における、前記クライアント装置が前記コンテンツを再生する速度である再生速度に基づいて値が定まる関数により表され、
    現時点以前の時点における前記再生速度を取得する再生速度取得手段を備える配信システム。
  9. 請求項2乃至請求項8のいずれか一項に記載の配信システムであって、
    前記メディアデータを前記サーバ装置から前記クライアント装置へ送信するために利用可能な通信帯域幅である可用帯域幅を取得する可用帯域幅取得手段を備え、
    前記制約条件は、前記送信レートを前記取得された可用帯域幅以下とするという条件を含む配信システム。
  10. 請求項2乃至請求項9のいずれか一項に記載の配信システムであって、
    前記制約条件は、前記クライアント装置の前記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて前記コンテンツを再生可能な時間である残余再生時間を0よりも大きくするという条件を含む配信システム。
  11. 請求項2乃至請求項10のいずれか一項に記載の配信システムであって、
    前記コンテンツが前記複数のメディアレートのそれぞれにて符号化されたメディアデータを記憶するメディアデータ記憶手段を備え、
    前記メディアデータ送信手段は、前記メディアデータ記憶手段に記憶されているメディアデータを前記サーバ装置が前記クライアント装置へ送信するように構成され、
    前記制約条件は、前記メディアレートを、前記複数のメディアレートのうちの1つとするという条件を含む配信システム。
  12. 請求項1乃至請求項11のいずれか一項に記載の配信システムであって、
    前記目的関数は、現時点以前の時点における前記送信レートに基づいて前記ユーザ体感品質値が定まる関数であり、
    現時点以前の時点における前記送信レートを取得する送信レート取得手段を備える配信システム。
  13. 請求項12に記載の配信システムであって、
    前記クライアント装置は、
    前記サーバ装置から単位時間あたりに受信した前記メディアデータのデータ量である受信レートを前記送信レートとして取得する前記送信レート取得手段と、
    前記取得された送信レートを前記サーバ装置へ送信する送信レート送信手段と、を備える配信システム。
  14. 請求項12に記載の配信システムであって、
    前記サーバ装置から前記クライアント装置へ前記メディアデータを転送する中継装置を含み、
    前記中継装置は、
    前記サーバ装置から前記クライアント装置へ単位時間あたりに転送した前記メディアデータのデータ量である転送レートを前記送信レートとして取得する前記送信レート取得手段と、
    前記取得された送信レートを前記サーバ装置へ送信する送信レート送信手段と、を備える配信システム。
  15. 互いに通信可能に構成されたサーバ装置及びクライアント装置を含む配信システムに適用される配信方法であって、
    前記サーバ装置は、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを前記クライアント装置へ送信可能に構成され、
    前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するように構成され、
    前記サーバ装置が単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、前記クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力し、
    前記サーバ装置が前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて前記クライアント装置へ送信する、配信方法。
  16. 請求項15に記載の配信方法であって、
    所定の制約条件を満足する前記送信レート及び前記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する前記送信レート及び前記メディアレートの組を出力する、配信方法。
  17. 請求項15又は請求項16に記載の配信方法であって、
    前記目的関数は、前記送信レートが低くなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信方法。
  18. 請求項15乃至請求項17のいずれか一項に記載の配信方法であって、
    前記目的関数は、前記メディアレートが高くなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信方法。
  19. 請求項15乃至請求項18のいずれか一項に記載の配信方法であって、
    前記目的関数は、前記メディアレートの時間変化率が小さくなるほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信方法。
  20. 請求項15乃至請求項19のいずれか一項に記載の配信方法であって、
    前記目的関数は、前記クライアント装置の前記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて前記コンテンツを再生可能な時間である残余再生時間が予め設定された目標値に近づくほど、前記ユーザ体感品質値が表すユーザ体感品質が高くなるように設定された配信方法。
  21. 請求項20に記載の配信方法であって、
    前記残余再生時間は、現時点以前の時点における残余再生時間に基づいて値が定まる関数により表され、
    現時点以前の時点における前記残余再生時間を取得する、配信方法。
  22. 請求項20又は請求項21に記載の配信方法であって、
    前記残余再生時間は、現時点以前の時点における、前記クライアント装置が前記コンテンツを再生する速度である再生速度に基づいて値が定まる関数により表され、
    現時点以前の時点における前記再生速度を取得する、配信方法。
  23. 請求項16乃至請求項22のいずれか一項に記載の配信方法であって、
    前記メディアデータを前記サーバ装置から前記クライアント装置へ送信するために利用可能な通信帯域幅である可用帯域幅を取得し、
    前記制約条件は、前記送信レートを前記取得された可用帯域幅以下とするという条件を含む配信方法。
  24. 請求項16乃至請求項23のいずれか一項に記載の配信方法であって、
    前記制約条件は、前記クライアント装置の前記記憶装置に記憶されているデータのうちの未だ再生していない部分に基づいて前記コンテンツを再生可能な時間である残余再生時間を0よりも大きくするという条件を含む配信方法。
  25. 請求項16乃至請求項24のいずれか一項に記載の配信方法であって、
    前記コンテンツが前記複数のメディアレートのそれぞれにて符号化されたメディアデータを記憶する記憶装置に記憶されているメディアデータを前記サーバ装置が前記クライアント装置へ送信し、
    前記制約条件は、前記メディアレートを、前記複数のメディアレートのうちの1つとするという条件を含む配信方法。
  26. 請求項15乃至請求項25のいずれか一項に記載の配信方法であって、
    前記目的関数は、現時点以前の時点における前記送信レートに基づいて前記ユーザ体感品質値が定まる関数であり、
    現時点以前の時点における前記送信レートを取得する、配信方法。
  27. 請求項26に記載の配信方法であって、
    前記クライアント装置が、前記サーバ装置から単位時間あたりに受信した前記メディアデータのデータ量である受信レートを前記送信レートとして取得し、
    前記クライアント装置が、前記取得された送信レートを前記サーバ装置へ送信する、配信方法。
  28. 請求項26に記載の配信方法であって、
    前記配信システムは、前記サーバ装置から前記クライアント装置へ前記メディアデータを転送する中継装置を含み、
    前記中継装置が、前記サーバ装置から前記クライアント装置へ単位時間あたりに転送した前記メディアデータのデータ量である転送レートを前記送信レートとして取得し、
    前期中継装置が、前記取得された送信レートを前記サーバ装置へ送信する、配信方法。
  29. クライアント装置と通信可能に構成されたサーバ装置であって、
    1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを前記クライアント装置へ送信可能に構成され、
    単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、前記クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
    前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて前記クライアント装置へ送信するメディアデータ送信手段と、
    を備えるサーバ装置。
  30. 請求項29に記載のサーバ装置であって、
    前記レート出力手段は、
    所定の制約条件を満足する前記送信レート及び前記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する前記送信レート及び前記メディアレートの組を出力するように構成されたサーバ装置。
  31. クライアント装置と通信可能に構成されるとともに、1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを前記クライアント装置へ送信可能に構成されたサーバ装置に、
    単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、前記クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
    前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて前記クライアント装置へ送信するメディアデータ送信手段と、
    を実現させるためのプログラム。
  32. 1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成されたクライアント装置であって、
    前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させるとともに当該記憶されているデータに基づいて前記コンテンツを再生するように構成され、
    前記サーバ装置が単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
    前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて送信する旨を要求する送信要求を前記サーバ装置へ送信する要求送信手段と、
    を備えるクライアント装置。
  33. 請求項32に記載のクライアント装置であって、
    前記レート出力手段は、
    所定の制約条件を満足する前記送信レート及び前記メディアレートの組のうちの、最も高いユーザ体感品質を表すユーザ体感品質値に対応する前記送信レート及び前記メディアレートの組を出力するように構成されたクライアント装置。
  34. 1つのコンテンツが複数の異なるメディアレートのうちの任意の1つのメディアレートにて符号化されたメディアデータを送信可能に構成されたサーバ装置と通信可能に構成されるとともに、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータを記憶装置に記憶させ且つ当該記憶されているデータに基づいて前記コンテンツを再生するように構成されたクライアント装置に、
    前記サーバ装置が単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート及び前記メディアレートのそれぞれを変数とする関数であって、当該クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力するレート出力手段と、
    前記出力されたメディアレートにて符号化されたメディアデータを、前記出力された送信レートにて送信する旨を要求する送信要求を前記サーバ装置へ送信する要求送信手段と、
    を実現させるためのプログラム。
  35. コンテンツが符号化されたメディアデータの、サーバ装置からクライアント装置への送信を制御する配信制御方法であって、
    前記サーバ装置が単位時間あたりに送信する前記メディアデータのデータ量を表す送信レート、及び、前記コンテンツを単位時間だけ再生するための前記メディアデータのデータ量を表すメディアレートのそれぞれを変数とする関数であって、前記クライアント装置のユーザが当該クライアント装置により再生される前記コンテンツを視聴する際に感じるサービス品質であるユーザ体感品質を表す値であるユーザ体感品質値を当該変数と対応するように定める関数である目的関数に基づいて、当該送信レート及び当該メディアレートの組を出力する、配信制御方法。
  36. サーバ装置及びクライアント装置のそれぞれと通信可能に構成された中継装置であって、
    前記サーバ装置から前記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成され、
    前記サーバ装置から前記クライアント装置へ単位時間あたりに転送した前記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
    前記取得された送信レートを前記サーバ装置へ送信する送信レート送信手段と、
    を備える中継装置。
  37. サーバ装置及びクライアント装置のそれぞれと通信可能に構成された中継装置に適用される中継方法であって、
    前記サーバ装置から前記クライアント装置へ、コンテンツが符号化されたメディアデータを転送し、
    前記サーバ装置から前記クライアント装置へ単位時間あたりに転送した前記メディアデータのデータ量である転送レートを送信レートとして取得し、
    前記取得された送信レートを前記サーバ装置へ送信する、中継方法。
  38. サーバ装置及びクライアント装置のそれぞれと通信可能に構成されるとともに、前記サーバ装置から前記クライアント装置へ、コンテンツが符号化されたメディアデータを転送するように構成された中継装置に、
    前記サーバ装置から前記クライアント装置へ単位時間あたりに転送した前記メディアデータのデータ量である転送レートを送信レートとして取得する送信レート取得手段と、
    前記取得された送信レートを前記サーバ装置へ送信する送信レート送信手段と、
    を実現させるためのプログラム。
JP2011526677A 2009-08-10 2010-06-02 配信システム Active JP5673538B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011526677A JP5673538B2 (ja) 2009-08-10 2010-06-02 配信システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009186118 2009-08-10
JP2009186118 2009-08-10
PCT/JP2010/003673 WO2011018868A1 (ja) 2009-08-10 2010-06-02 配信システム
JP2011526677A JP5673538B2 (ja) 2009-08-10 2010-06-02 配信システム

Publications (2)

Publication Number Publication Date
JPWO2011018868A1 true JPWO2011018868A1 (ja) 2013-01-17
JP5673538B2 JP5673538B2 (ja) 2015-02-18

Family

ID=43586053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011526677A Active JP5673538B2 (ja) 2009-08-10 2010-06-02 配信システム

Country Status (3)

Country Link
US (1) US20120150936A1 (ja)
JP (1) JP5673538B2 (ja)
WO (1) WO2011018868A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5494495B2 (ja) * 2009-01-27 2014-05-14 日本電気株式会社 配信システム、配信方法、サーバ装置、プログラム及びクライアント装置
US20130304934A1 (en) * 2011-09-29 2013-11-14 Avvasi Inc. Methods and systems for controlling quality of a media session
JP5820238B2 (ja) * 2011-11-01 2015-11-24 日本放送協会 データ送信装置およびデータ受信装置
US9282134B2 (en) 2011-12-21 2016-03-08 Nec Corporation Content delivery system
US9503490B2 (en) * 2012-02-27 2016-11-22 Qualcomm Incorporated Dash client and receiver with buffer water-level decision-making
US9374406B2 (en) * 2012-02-27 2016-06-21 Qualcomm Incorporated Dash client and receiver with a download rate estimator
TWI543569B (zh) * 2014-11-24 2016-07-21 晶睿通訊股份有限公司 資料傳輸系統、資料傳輸監測方法、伺服端裝置及電腦可讀取媒體
CN108781309B (zh) * 2016-04-29 2021-01-26 大众汽车(中国)投资有限公司 控制方法和控制装置
US10693928B2 (en) * 2017-01-30 2020-06-23 Wipro Limited Method and device for adaptive streaming of multimedia data
TWI758680B (zh) * 2019-01-31 2022-03-21 日商日本電氣股份有限公司 資料中繼裝置、方法、發送系統及程式
WO2023275969A1 (ja) * 2021-06-29 2023-01-05 日本電気株式会社 データ中継装置、配信システム、データ中継方法、及びコンピュータ可読媒体

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862622B2 (en) * 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
US6594268B1 (en) * 1999-03-11 2003-07-15 Lucent Technologies Inc. Adaptive routing system and method for QOS packet networks
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
US20030046396A1 (en) * 2000-03-03 2003-03-06 Richter Roger K. Systems and methods for managing resource utilization in information management environments
EP1146702A3 (de) * 2000-04-10 2006-03-01 Siemens Aktiengesellschaft Kommunikationsvorrichtung und Kommunikationssystem zum integrierten Übertragen von ersten Daten mit Echtzeitanforderung und zweiten Daten ohne Echtzeitanforderung
FR2830711B1 (fr) * 2001-10-09 2005-09-23 Thales Sa Procede et dispositif de selection automatique du debit dans des transmissions haute frequence
JP2003153229A (ja) * 2001-11-15 2003-05-23 Mitsubishi Electric Corp データ通信装置及びデータ通信方法
JP4126928B2 (ja) * 2002-02-28 2008-07-30 日本電気株式会社 プロキシサーバ及びプロキシ制御プログラム
US20030236904A1 (en) * 2002-06-19 2003-12-25 Jonathan Walpole Priority progress multicast streaming for quality-adaptive transmission of data
EP1595368B1 (en) * 2003-02-19 2007-01-03 Fujitsu Limited Packet scheduling
US8458753B2 (en) * 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US8280994B2 (en) * 2006-10-27 2012-10-02 Rockstar Bidco Lp Method and apparatus for designing, updating and operating a network based on quality of experience
US7532134B2 (en) * 2007-03-12 2009-05-12 Citrix Systems, Inc. Systems and methods for sharing compression histories between multiple devices
US7584294B2 (en) * 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
JP5064564B2 (ja) * 2008-08-28 2012-10-31 京セラ株式会社 無線端末及び通信端末
WO2010024351A1 (ja) * 2008-08-28 2010-03-04 京セラ株式会社 無線端末及び通信端末
US8122140B2 (en) * 2009-03-27 2012-02-21 Wyse Technology Inc. Apparatus and method for accelerating streams through use of transparent proxy architecture
US8180385B2 (en) * 2009-03-31 2012-05-15 At&T Intellectual Property I, L.P. Intelligent adaptive re-coding for improved communications resource utilization
WO2012174631A1 (en) * 2010-07-12 2012-12-27 Bce Inc. Methods and systems for monitoring a service provided over a packet-switched network
CN103621145B (zh) * 2011-04-20 2017-03-29 英派尔科技开发有限公司 移动内容体验质量的实时全参考计算方法、装置

Also Published As

Publication number Publication date
WO2011018868A1 (ja) 2011-02-17
US20120150936A1 (en) 2012-06-14
JP5673538B2 (ja) 2015-02-18

Similar Documents

Publication Publication Date Title
JP5673538B2 (ja) 配信システム
US20240048178A1 (en) Multi-Bitrate Video With Dynamic Blocks
CN110636339B (zh) 基于码率的调度方法、装置及电子设备
JP5339007B1 (ja) コンテンツ配信システム
JP2015133701A (ja) クライアント端末においてマルチメディアコンテンツのセグメントの来るシーケンスをダウンロードする方法、及び対応する端末
JP2006515975A (ja) 確率的適応コンテンツ・ストリーミング
JP2017069849A (ja) 映像制御装置、映像配信システムおよび映像制御方法
US10735815B1 (en) Per-viewer engagement-based video optimization
JP5804060B2 (ja) パラメータ推定装置、パラメータ推定方法、及び、パラメータ推定プログラム
CN111617466A (zh) 编码格式的确定方法、装置及云游戏的实现方法
JP2011061533A (ja) コンテンツ配信システム、体感品質推定装置、方法、及び、プログラム
Baik et al. VSync: Cloud based video streaming service for mobile devices
JP5494495B2 (ja) 配信システム、配信方法、サーバ装置、プログラム及びクライアント装置
JP2022091710A (ja) ビデオストリーミングにおける複数のプロトコル予測およびセッション内適応
JP6305738B2 (ja) メディア再生制御装置、メディア再生制御方法、及びプログラム
Han et al. Qoe oriented adaptive streaming method for 360 virtual reality videos
JP2014090419A (ja) 通信パラメータに従ってコンテンツをダウンロードするための方法、および、関連するコンテンツ受信機
JP2023515003A (ja) ネットワークでストリーミングされたコンテンツをクライアントデバイスのプレーヤで再生する方法
JP5987798B2 (ja) 情報処理システム、情報処理装置及びプログラム
WO2020170869A1 (ja) エンゲージメント推定装置、エンゲージメント推定方法及びプログラム
JP2006331199A (ja) サービス決定装置及びサービス決定方法
Kwon et al. Scalable video streaming relay for smart mobile devices in wireless networks
JP2011180810A (ja) コンテンツ配信システム、コンテンツ配信方法、コンテンツ配信装置、コンテンツ計測装置、及びプログラム
JP4809256B2 (ja) データストリーミング方法
JP2006041819A (ja) ストリーム配信サーバ、移動端末、ストリーム配信システム、およびストリーム配信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140520

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141215

R150 Certificate of patent or registration of utility model

Ref document number: 5673538

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150