JP2016059037A - 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体 - Google Patents

少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体 Download PDF

Info

Publication number
JP2016059037A
JP2016059037A JP2015162066A JP2015162066A JP2016059037A JP 2016059037 A JP2016059037 A JP 2016059037A JP 2015162066 A JP2015162066 A JP 2015162066A JP 2015162066 A JP2015162066 A JP 2015162066A JP 2016059037 A JP2016059037 A JP 2016059037A
Authority
JP
Japan
Prior art keywords
representation
segment
fragment
receiving
client terminal
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.)
Withdrawn
Application number
JP2015162066A
Other languages
English (en)
Other versions
JP2016059037A5 (ja
Inventor
ホウダイユ レミ
Houdaille Remi
ホウダイユ レミ
グワッシュ ステファン
Gouache Stephane
グワッシュ ステファン
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2016059037A publication Critical patent/JP2016059037A/ja
Publication of JP2016059037A5 publication Critical patent/JP2016059037A5/ja
Withdrawn legal-status Critical Current

Links

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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • 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/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)

Abstract

【課題】少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法を提供する。【解決手段】セグメントの第1の表現の少なくとも1つのフラグメントを受信するステップ21と、利用可能な帯域幅を考慮することによって、セグメントの第1の表現のすべての後続フラグメントの予想配送時間およびセグメントの少なくとも1つの代わりの表現のすべてのフラグメントの予想配送時間を決定するステップ22と、予想配送時間を考慮することによって、セグメントの第1の表現の少なくとも1つの後続フラグメントを受信すること、またはセグメントの第2の表現の少なくとも第1のフラグメントの受信を選択するステップ23とを含む。【選択図】図2

Description

本開示は、一般に、例えば、限定されないが、HTTP(ハイパーテキスト転送プロトコル)上の、適応ストリーミング技術の分野に関し、詳細には、セグメントに分離されたマルチメディアコンテンツの、クライアント端末による、受信に関する。
本開示は、特に、ライブイベントのストリーミングでの受信に適合される。
本セクションは、以下で説明および/または特許請求される本開示の様々な特徴に関連し得る、本技術分野の様々な特徴について読者に知ってもらうことを意図している。この説明は、本開示の様々な特徴のより良い理解を容易にする背景情報を読者に提供するうえで役立つものと思われる。加えて、これらの声明は、この観点から読まれるべきであり、先行技術の承認として読まれるべきではないことを理解されたい。
(マルチビットレートスイッチングまたはHASとも呼ばれる)HTTP上の適応ストリーミングは、マルチメディアコンテンツ配信用の主要技術に急速になりつつある。すでに使用されているHTTP適応ストリーミングプロトコルの中で、最も有名なものに、アップルのHTTPライブストリーミング(HLS)、マイクロソフトのシルバライトスムーズストリーミング(SSS)、アドビのHTTPダイナミックストリーミング(HDS)、3GPPおよびMPEGによって開発された(ISO/IEC23009−1:2012として規格化された)ダイナミックアダプティブストリーミングオーバHTTP(DASH)がある。
クライアント端末は、オーディオビジュアルコンテンツ(またはA/Vコンテンツ)を適応ストリーミングで再生することを望む場合、最初に、このA/Vコンテンツがどのように獲得され得るかを記述するファイルを取得しなければならない。これは、一般に、HTTPプロトコルを通して、URL(ユニフォームリソースロケータ)から記述ファイル、いわゆるマニフェストを所得することによって行われるが、他の手段(例えば、ブロードキャスト、電子メールおよびSMSなど)によっても達成され得る。事前に生成され、リモートサーバーによってクライアント端末に配送されるマニフェストは、基本的に、そのようなA/Vコンテンツの(ビットレート、解像度、および他の属性の観点から見た)利用可能な(インスタンスまたはバージョンとも呼ばれる)表現を列挙している。表現は、所定の品質レベル(ビットレート)に関連付けられる。
各表現の全データストリームは、クライアント端末が2つのセグメント間で1つの品質レベルから別のレベルにスムーズに切り換わることができるように作成された、(別個のURLによってアクセス可能な)持続時間が等しい(データチャンク(chunk)とも呼ばれる)セグメントに分割される。結果として、ビデオ品質は、再生中に変化し得るが、(フリーズとも呼ばれる)中断を被ることはめったにない。
クライアント側では、送信経路の利用可能な帯域幅の測定値に基づいて、セグメントが選択される。特に、クライアント端末は、通常、ビットレート符号化に対応するセグメントの表現、したがって、測定された帯域幅に適合する品質を要求する。この説明全体でネットワーク帯域幅または帯域幅とも呼ばれる利用可能な帯域幅は、bit/s単位のネットワークスループットのことを指す。
したがって、コンテンツをレンダリングするクライアント端末は、達成可能なスループットについて自ら推定を行わなくてはならず、同時に品質を最大化するよう試みる一方で、セグメントが提示時間にレンダリングされるのに十分な速さでダウンロードされ得るように表現を選択する。
HTTP適応ストリーミング技術によると、クライアント端末は、コンテンツ受信のために利用可能な帯域幅を継続的に評価しなければならず、連続的な表示にとってセグメントの受信が遅くなりすぎるリスクが最小化される一方で、ビデオ品質が最大化されるように、セグメントの表現を要求する前に適切なスループットを決定しなければならない。
しかしながら、リモートサーバーとクライアント端末との間の送信経路が変化した場合、利用可能な帯域幅は変化し得る(インターネットのスループットは一定ではない)ので、これは容易なトレードオフではない。
より具体的には、帯域幅が低下した場合、特定のビットレート符号化に対応するセグメントの表現をダウンロードするのに要する時間は、増加し得、A/Vコンテンツのレンダリングプロセスにおいて中断を生じさせ得る。
例として、セグメント持続時間が10秒であり、セグメントの表現が200、400、600、1200、1800、2500、4500、6500、および8500kbit/s(HLSの場合にアップルによって推奨される数値)で得られ、一定の帯域幅が送信の開始時に8.5Mbit/sである場合について考慮する。クライアント端末は、10秒ごとに8500kbit/sでセグメントの1つの表現を要求することができる。帯域幅が、突然、2分の1(4250kbit/s)にされたと仮定する。帯域幅のこの低下が8500kbit/sでセグメントの表現を求める要求の直後に発生した場合、この表現は、20秒を要してダウンロードされ、そのため、我々は、セグメント1つ分の遅れを経験する。
コンテンツのレンダリングのフリーズを克服するために、したがって、いくつかのセグメントがその中に事前にダウンロードされるバッファを使用して、帯域幅が低下したときに新しいセグメントをロードするためのより大きい余裕が得られるようにすることが可能である。
しかしながら、長いバッファは、エンドユーザに対して遅延を導入する。ライブイベントの場合、これらの遅延は望ましくなく、そのため、短いバッファの使用が好ましい。
さらに、セグメントの受信を求める要求がひとたびHTTPプロトコルを通してサーバーに送信されると、受信を中断するための唯一の方法は、下層のTCP接続をクローズすることだけである。
しかしながら、接続のそのようなクローズは、非効率的で時間を浪費する新しいTCPセッションの再開を必要とする。
インターネットのスループットは一定ではなく、短い時間期間のうちに変化し得るので、局所的な変化に強く反応し過ぎないようにするために、認識される帯域幅に何らかの平均化を行うことが提案された。その場合、帯域幅低下がセグメントの終わり近くで生じた場合、計算される平均に対するその影響は小さい。
しかしながら、この平均に基づいて、クライアント端末は、新しい帯域幅よりも高い表現を依然として選択する。帯域幅がより高いレベルに戻らない場合、この決定は、セグメントにわたってダウンロード遅延を累積させ、これが抵抗するための大きいバッファを再び要求する。
本開示は、上述された短所のうちの少なくとも1つを克服する。
本開示は、少なくとも1つのサーバーから、クライアント端末によってマルチメディアコンテンツを受信するための方法に関し、上記マルチメディアコンテンツは、第1の持続時間の少なくとも2つの連続するセグメントに分離され、セグメントは、少なくとも2つの表現に関連付けられる。
本開示の実施形態によると、上記方法は、
− セグメントの第1の表現の少なくとも1つのフラグメントを受信するステップであって、上記セグメントの各表現は、第2の持続時間(上記第2の持続時間は上記第1の持続時間よりも短い)の少なくとも2つの連続するフラグメントに分離される、ステップと、
− 上記クライアント端末と上記少なくとも1つのサーバーの1つとの間の送信経路上において利用可能な帯域幅を考慮することによって、
・上記セグメントの上記第1の表現のすべての後続フラグメントの予想配送時間、および
・上記セグメントの少なくとも1つの代わりの表現のすべての上記フラグメントの予想配送時間
を決定するステップと、
− 上記予想配送時間を考慮することによって、
・上記セグメントの上記第1の表現の少なくとも1つの後続フラグメントを受信すること、または
・上記セグメントの第2の表現の少なくとも第1のフラグメントを受信することであって、上記第2の表現は、上記少なくとも1つの代わりの表現に属する、受信すること
の間で選択するステップと
を含む。
したがって、本開示は、マルチメディアコンテンツを受信するための新しい技法を提案し、マルチメディアコンテンツは、セグメントに分離され、クライアント端末は、このセグメント全体の代わりに、例えば、バイト単位で、セグメントの部分(またはセグメントの表現の部分)を要求することができる。
結果として、本開示による方法は、利用可能な帯域幅の増加または減少の際に、セグメントの同じ表現の他のフラグメントをロードするほうが良いか、またはセグメントの別の表現を最高もしくは最低のビットレートでロードするほうが良いかを決定するために、セグメントの全ての表現の代わりに、セグメントの表現のフラグメントをロードすることを提案する。
実際に、上述された難点のいくつかは、表現の受信についての決定は全セグメント持続時間を要して行われるのに、送信経路上における帯域幅は非常に短い時間期間のうちに変化し得るという事実に起因している。結果として、帯域幅が狭すぎる場合、クライアント端末は、セグメントの受信のために長い遅延という代償を払い、帯域幅が広すぎる場合、クライアント端末は、セグメントの受信のためのそのビットレートを最適化しない。
したがって、本開示の実施形態による方法は、クライアント端末が、先行技術の方法と比較して、より短い時間ベースで動作することを可能にし得る。結果として、帯域幅の減少(または増加)が検出された場合、セグメントの現在の表現のそのダウンロードを「アボート(abort)」し、変更を行わない場合よりも速やかに(またはより高い品質で)セグメントを準備できるようにする、より低い(またはより高い)ビットレートを有する上記セグメントの新しい表現をロードし始めることが決定され得る。
特に、本開示による方法は、上記少なくとも1つのフラグメントを受信するために、少なくとも1つのバイト範囲要求を上記少なくとも1つのサーバーに送信するステップを含むことができる。
これは、全セグメントを要求する代わりに(例えば、フラグメントのその予想ロード時間を500msに短縮する)バイト範囲を要求することによって、現在のHTTP実装、特に、HTTP/1.1オプションを用いて行われ得る。
上記バイト範囲要求の少なくとも1つはパイプライン化され得ることに留意されたい。セグメントを求める1つの要求と比較して、セグメントのフラグメントを求める複数の要求は、RTTの1倍の代わりに、RTTのN倍の累積遅延を暗示するので、そのようなパイプライン化は有益であり得る。ここで、Nは、セグメント当たりのフラグメントの数である。
本開示の実施形態によると、上記方法は、上記第2の持続時間に対応するタイムスケールで、上記利用可能な帯域幅の推定値を決定するステップを含むことができる。
言い換えると、上記利用可能な帯域幅は、そのフラグメントレベルで推定され得る。
本開示の別の実施形態によると、上記方法は、上記第1の持続時間に対応するタイムスケールで、上記利用可能な帯域幅の推定値を決定するステップを含むことができる。
言い換えると、上記利用可能な帯域幅は、そのセグメントレベルで推定され得る。
特に、1つが上記フラグメントレベルで、1つが上記セグメントレベルで、2つの帯域幅推定値が決定され得る。次に、セグメントの開始時には、上記表現は、より大きい平均化された推定によって選択され得るが、上記セグメントの上記フラグメントをロードしたとき、上記クライアント端末は、その短い期間の変動を考慮することができる。
特に、1つまたは複数の上記推定値は、各々、周期的に、または少なくとも1つのフラグメントを受信した後、または少なくとも1つのセグメントを受信した後、または上記送信経路の変化を検出した後に決定され得る。
第1の例によると、上記利用可能な帯域幅の減少が生じた場合、上記第2の表現は、上記第1の表現に関連付けられた第1のビットレートよりも低い第2のビットレートに関連付けられる。
したがって、本開示は、その帯域幅が激しく低下した場合にロバストネスを改善することを可能にし得る。
第2の例によると、上記利用可能な帯域幅の増加が生じた場合、上記第2の表現は、上記第1の表現に関連付けられた第1のビットレートよりも高い第2のビットレートに関連付けられる。
したがって、本開示は、その帯域幅が素早く上昇した場合により迅速な品質改善を得ることを可能にし得る。その場合、クライアント端末は、セグメントの第1の表現についての初期決定を変更し、任意のフラグメント境界において、より高い品質の表現(したがって、より高いビットレート)を選択することができる。
これは、そのストリーミングセッションの開始時に、特に有益であり得る。実際に、まさに第1のセグメントをロードしたとき、上記クライアント端末は、自由に使える、その帯域幅の正確な推定値を有し得ない。
先行技術によると、上記クライアント端末は、上記セッションが正しく開始し得ることを保証するために、低いビットレートを選択しなければならない。しかし、その場合、はるかに高い品質が達成され得ることが分かっても、第2の表現に変化するには、セグメントの持続時間が経過するのを待たなければならないことがある。
本開示の少なくとも1つの実施形態を用いると、上記クライアントは、上記利用可能な帯域幅を第1のフラグメントにおいて発見し、最適な品質を用いてそのビデオが開始するように、より良いビットレートに速やかに切り換わることを決定することができる。
本開示の実施形態によると、上記第1の表現の少なくとも1つの後続フラグメントを受信すること、または上記第2の表現の少なくとも第1のフラグメントを受信することの間で選択する上記ステップは、上記クライアント端末のバッファの現在のコンテンツの再生持続時間も考慮することができる。
言い換えると、上記クライアント端末は、セグメントの上記第1の表現を受信し続けること、または上記セグメントの第2の表現に変化することを決定する前に、上記バッファが消費されるかどうかをチェックすることができる。
本開示の実施形態によると、上記予想配送時間の上記決定と、上記第1の表現の少なくとも1つの後続フラグメントを受信すること、または上記第2の表現の少なくとも第1のフラグメントを受信することの間での上記選択とは、フラグメントごとに実装され得る。
したがって、上記帯域幅の増加または減少が生じた場合、別の表現に切り換わるほうが良いかどうかを各フラグメントにおいて決定することが可能である。
本開示は、少なくとも1つのサーバーからマルチメディアコンテンツを受信するためのクライアント端末にも関し、上記マルチメディアコンテンツは、第1の持続時間の少なくとも2つの連続するセグメントに分離され、セグメントは、少なくとも2つの表現に関連付けられる。
本開示の実施形態によると、上記クライアント端末は、
− セグメントの第1の表現の少なくとも1つのフラグメントを受信するように構成されたモジュールであって、上記セグメントの各表現は、第2の持続時間の少なくとも2つの連続するフラグメントに分離される、モジュールと、
− 上記クライアント端末と上記少なくとも1つのサーバーの1つとの間の送信経路上において利用可能な帯域幅を考慮することによって、
・上記セグメントの上記第1の表現のすべての後続フラグメントの予想配送時間、および
・上記セグメントの少なくとも1つの代わりの表現のすべての上記フラグメントの予想配送時間
を決定するように構成されたモジュールと、
− 上記予想配送時間を考慮することによって、
・上記セグメントの上記第1の表現の少なくとも1つの後続フラグメントを受信すること、または
・上記セグメントの第2の表現の少なくとも第1のフラグメントを受信することであって、上記第2の表現は、上記少なくとも1つの代わりの表現に属する、受信すること
の間で選択するように構成されたモジュールと
を備える。
そのようなクライアント端末は、本明細書の上で説明された上記受信方法を実装するように特に適合され得る。それは、もちろん、組み合わされ得る、または別々に利用され得る、本開示の実施形態による上記受信方法に関する異なる特徴を含むことができる。したがって、上記端末の上記特徴および利点は、上記受信方法のそれらと同じであり、より十分な詳細さで説明されない。
本開示の別の特徴は、マルチメディアコンテンツを受信するための方法を実行するように適合されたソフトウェアコードを含む、通信ネットワークからダウンロード可能であり、および/またはコンピュータによって可読な媒体上に記録され、および/またはプロセッサーによって実行可能な、コンピュータプログラム製品に関し、上記ソフトウェアコードは、上で説明された上記受信方法のステップを実行するように適合される。
加えて、本開示は、先に説明された上記受信方法の上記ステップを実施するためのプログラムコード命令を含む、プロセッサーによって実行されることが可能であり、その上に記録されるコンピュータプログラム製品を含む、非一時的なコンピュータ可読媒体に関する。
上記開示される実施形態と範囲が等しいいくつかの特徴が、以下で説明される。これらの特徴は、本開示が取り得るいくつかの形態の簡潔な要約をその読者に提供するために提示されるにすぎないこと、またこれらの特徴が本開示の範囲を限定することを意図していないことを理解されたい。実際に、本開示は、以下で説明されないであろう様々な特徴を包含することができる。
本開示は、添付の図面を参照する、決して限定的ではない、以下の実施形態および実行例によって、より良く理解され、説明される。
本開示が実装され得るクライアント−サーバーネットワークアーキテクチャの概略図である。 本開示によるマルチメディアコンテンツを受信するための方法の主要ステップを示すフローチャートである。 本開示の全般的なプロセスの例を示すフローチャートである。 図3の例によるマルチメディアコンテンツを受信するための方法を実装するクライアント端末の例のブロック図である。
図1および図4において、表されるブロックは、必ずしも物理的に別個のエンティティに対応しない、純粋に機能的なエンティティである。すなわち、それらは、ソフトウェア、ハードウェアの形態で開発され、または1もしくは複数のプロセッサーを備える1もしくは複数の集積回路内で実装され得る。
可能な場合はどこでも、同じ参照番号は、どの図面においても同一または同様の部分を指すために使用される。
本開示の図面および説明は、本開示の明確な理解に関連する要素を説明するために簡略化されており、一方で、明瞭にするために、典型的なディジタルマルチメディアコンテンツ配送方法およびシステムにおいて見出される他の多くの要素を排除してあることを理解されたい。
好ましい実施形態によると、本開示は、HTTP適応ストリーミングプロトコル(またはHAS)に関して、特に、MPEG−DASHに関して示される。当然に、本開示はそのような特定の環境に制約されず、他の適応ストリーミングプロトコルももちろん考慮および実装され得る。
図1に示されるように、本開示が実装され得る、1つまたは複数のネットワークN(図1にはただ1つが表されている)によってサポートされるクライアント−サーバーネットワークアーキテクチャは、1つまたは複数のクライアント端末CT(図1にはただ1つが表されている)と、1つまたは複数のHTTPサーバーSEとを備える。DASHによると、そのようなサーバーSEは、メディアオリジン(Media Origin)とも呼ばれる。それらは、例えば、メディアプレゼンテーション記述(またはMPD)、いわゆるマニフェストを生成する。これは、コンテンツ配信の配信元であり、マルチメディアコンテンツは、何らかの外部エンティティから来て、メディアオリジンにおいてHASフォーマットに変換され得る。
クライアント端末CTは、HTTPサーバーSEの1つからマルチメディアコンテンツを獲得することを望む。マルチメディアコンテンツは、第1の持続時間(例えば、セグメント当たり10秒)の複数の連続したセグメントに分割される。マルチメディアコンテンツは、サーバーSEにおいて異なる表現で利用可能であることが仮定される。クライアント端末は、フラグメントごとにコンテンツを取り出すように、完全なセグメントを要求することができ、またはフラグメントとも呼ばれるセグメントの部分を要求することができる。セグメントのフラグメントに関する要求は、例えば、HTTPプロトコルの周知のバイト範囲要求機能を使用することができる。したがって、クライアントは、第2の持続時間(例えば、500msのフラグメント当たりのダウンロード持続時間)を目標にして、セグメントの部分をダウンロードすることができる。したがって、HTTPサーバーSEは、1つまたは複数のTCP/IP接続上でHTTP適応ストリーミングプロトコルを使用して、セグメント、またはクライアント要求に従って分離されたセグメントのフラグメントを、クライアント端末CTに配送することができる。フラグメントのサイズは、クライアント端末CTによってまたはサーバーSEによって決定することができる。クライアント端末CTは、各フラグメントの受信時に、セグメントの表現を別のものに切り換えることを決定することができる。
クライアント端末CTは、ポータブルメディアデバイス、モバイルフォン、タブレットもしくはラップトップ、TVセット、セットトップボックス、ゲームデバイス、または集積回路とすることができる。もちろん、クライアント端末CTは、メディアコンテンツを逆多重化および復号するためのものなど、いくつかのサブ要素を備えるのみで、完全なビデオプレーヤを備えず、外部手段に頼って、復号されたコンテンツをエンドユーザに表示することもある。この場合、クライアント端末CTは、セットトップボックスなどのHASアウェアなビデオ復号器である。
以下では、所定のクライアント端末CTが、マルチメディアコンテンツのセグメントの第1の表現の少なくとも1つのフラグメントを獲得するために、ネットワークN上で要求を送信することが仮定される。
本開示の実施形態によるマルチメディアコンテンツを受信するためのクライアント端末CTによって実装される主要なステップが、図2に示されており、
− セグメントの第1の表現の少なくとも1つのフラグメントを、クライアント端末CTによって、受信するステップ(21)と、
− クライアント端末CTとサーバーSEの1つとの間の送信経路上において利用可能な帯域幅を考慮することによって、
・セグメントの第1の表現のすべての後続フラグメントの予想配送時間DT1、および
・セグメントの少なくとも1つの代わりの表現のすべてのフラグメントの予想配送時間DTk
を決定するステップ(22)と、
− 予想配送時間を考慮することによって、
・セグメントの第1の表現の少なくとも1つの後続フラグメントを受信すること、または
・セグメントの第2の表現の少なくとも第1のフラグメントを受信することであって、第2の表現は、少なくとも1つの代わりの表現に属する、受信すること
の間で選択するステップ(23)と
を含む。
すでに述べられたように、したがって、本開示は、セグメントの全表現の受信の代わりに、セグメントの表現の少なくとも1つのフラグメントの受信に依存する。
例として、セグメント持続時間が10秒であり、セグメントの表現が200、400、600、1200、1800、2500、4500、6500、および8500kbit/sで得られ、一定の帯域幅がHTTP適応ストリーミングマルチメディアコンテンツの送信の開始時に8.5Mbit/sである場合について再び考慮する。セグメント(またはその表現)が20個の部分に分割されるときについて考慮し、要求の開始直後に帯域幅が低下した(4250kbit/s)場合、クライアント端末は、時刻0.5秒において、ビットレート2500kbit/sに対応するセグメントの表現をロードすることを決定することができる。その場合、クライアント端末は、初期要求後7.38秒で、そのため、コンテンツのレンダリング時刻と比較して2.62秒前に、全セグメントを取得する。目標の2500kbit/sは、帯域幅低下が3.5秒よりも前である限り、クライアント端末にいくらかの先行を与える。
図3は、マルチメディアコンテンツを受信するためのクライアント端末CTによって実装される全体的なプロセスの例を示している。
ステップS1の間、クライアント端末CTは、R1iとも呼ばれるセグメントiの第1(又は初期)の表現を選択し、セグメントiの第1の表現の少なくとも1つのフラグメントを求める要求を、少なくとも1つのサーバーSEに送信する。そのような要求は、バイト範囲を要求するHTTP/1.1オプションを使用することができる。
セグメントの開始時には(すなわち、セグメントの第1のフラグメントについては)、セグメントの表現は、通常通りに選択され得る。
フラグメントの持続時間に関して、セグメント内のフラグメントの数は、クライアントが抵抗することを望む予想されるより悪い帯域幅分割よりも大きくなるように選択され得る。実際に、本開示に従ってロバストネスを改善する1つの重要なポイントは、決定のタイムスケールの短縮である。フラグメントの数が多くなるほど、方法はよりロバストになる。帯域幅がN分の1にされた場合、クライアントは、現在要求されているフラグメントの受信において、フラグメントの持続時間のN倍に等しい遅延を被る。各フラグメントを求める要求内のHTTPヘッダのオーバヘッドが制限されるように、および/または各フラグメントのサイズがMTU(「最大送信単位」)の数倍になるように、および/またはフラグメントのサイズがRTT(「ラウンドトリップタイム」)よりも長いダウンロード時間を必要とするように、フラグメントの数も制限され得る。
この例によると、要求されるバイト範囲は、セグメントサイズをフラグメントの数Nによって除算することによっても決定される。セグメントサイズは、全セグメントサイズを返す、セグメントの全コンテンツに関する初期HTTP HEAD要求を用いて獲得され得る。
j、R1iと呼ばれるセグメントの第1の表現の少なくとも1つのフラグメントが、ステップS2においてクライアント端末CTによって受信され、ステップS3においてクライアント端末CTのバッファ内にダウンロードされる。
フラグメントFj、R1iが、セグメントiの最後のフラグメントである場合(チェックS4)、クライアント端末CTは、次のセグメントi+1を対象と見なし(ステップS5)、ステップS1に戻る。
第1のフラグメントFj、R1iが、セグメントiの最後のフラグメントでない場合(チェックS4)、クライアント端末CTは、第2の持続時間に対応するタイムスケールで、および場合によっては、第1の持続時間に対応するタイムスケールで、クライアント端末CTとサーバーSEとの間の送信経路上において利用可能な帯域幅の推定値を決定する(ステップS6)。
本開示による帯域幅推定値は、帯域幅の変化が速やかに(セグメント持続時間よりも速く)分かるように、好ましくは新しいタイムスケールに適合することができる。フラグメントレベルにおける利用可能な帯域幅の推定値は、周知のアルゴリズムを使用して、例えば、タイムスケールを短縮することにより、セグメントレベルにおいて利用可能な帯域幅を決定するために現在使用されているものを使用して、決定され得る。帯域幅推定パラメータは、推定値が、実際の変化にすぐに追随することを可能にすることができる。1つはフラグメントレベルにおいて、1つはセグメントレベルにおいて、2つの並列した帯域幅推定が行われ得る。
特に、帯域幅推定値は、周期的に、または少なくとも1つのフラグメントもしくは少なくとも1つのセグメントを受信した後、または送信経路の変化を検出した後に決定され得る。
その後、クライアント端末CTは、ステップS7において、利用可能な帯域幅を考慮することによって、セグメントiの第1の表現のすべての後続フラグメントFm、R1i、(ここで、m∈[j+1,N])の予想配送時間DT1(すなわち、クライアント端末が同じ表現R1iをロードし続けた場合のセグメントiの予想配送時間)、およびサーバーSEにおいて利用可能なセグメントiの少なくとも1つの代わりの表現のすべてのフラグメントの予想配送時間DTk(すなわち、クライアント端末が現在の表現R1iのロードをアボートし、別の表現に切り換わる場合のセグメントiの予想配送時間)を決定する。低減された帯域幅の場合に推定されたものよりも低いビットレートを有し、または増加された帯域幅の場合に推定されたものよりも高いビットレートを有する、セグメントiのサーバーSEにおいて利用可能な各表現について計算すべき予想配送時間の値が1つ存在する。
第1のケースでは(すなわち、クライアント端末が同じ表現R1iをロードし続ける場合)、クライアント端末は、すでにセグメントの一部をダウンロードしているため、ダウンロードを続行するが、第2のケースでは(すなわち、クライアント端末が現在の表現R1iのロードをアボートし、別の表現に切り換わる場合)、クライアント端末は、先にダウンロードされたセグメントの一部を削除し、セグメントの新しい表現を最初からロードし始めるので、これらの計算は異なる。
チェックS8において、クライアント端末CTは、予想配送時間DT1、DTkを考慮することによって、セグメントiの第1の表現R1iの少なくとも1つの後続フラグメントFj+1を受信するほうが(すなわち、セグメントiの同じ表現R1iを継続するほうが)良いか、それともセグメントiの第2の表現R2iの少なくとも第1のフラグメントを受信するほうが(すなわち、セグメントiの別の表現に切り換わるほうが)良いかを決定する。
クライアント端末CTが、セグメントiの第1の表現R1iの少なくとも1つの後続フラグメントFj+1を受信するほうが良いと決定した場合、アルゴリズムは、次のフラグメントFj+1をダウンロードするために、ステップS3に戻る。
クライアント端末CTが、セグメントiの第2の表現R2iの少なくとも第1のフラグメントを受信するほうが良いと決定した場合、クライアント端末は、セグメントiの新しい表現を選択し(ステップS9)、アルゴリズムは、Fj、R2iと呼ばれるセグメントiの第2の表現の第1のフラグメントを受信するために、ステップS2に戻る。
この例によると、決定は、クライアント端末のバッファのサイズと、エンドユーザが被るビデオ品質の変化との間の、アプリケーションによって選択されるトレードオフに依存する。例えば、レンダリングのフリーズを回避するために、クライアント端末のバッファは、好ましくは決してエンプティになるべきではない。さらに、使用の状況に応じて、アプリケーションは、より長いバッファを選択することによって、バッファ維持においてより大きな余裕を保つことを決定することができる。
例えば、そのような決定は、簡略化されたアルゴリズムに従って行われ得る。
− クライアント端末が同じ第1の表現R1iをロードし続ける場合、セグメントiの予想配送時間DT1を決定する。言い換えると、クライアント端末は、帯域幅が今のままであることを仮定して、変わらずセグメントiをロードするための時間を決定する。
○ DT1が、最大で、バッファ内に存在するセグメントの再生時間の持続時間に等しい場合(クライアント端末は、バッファが消費されるかどうかをチェックする)、クライアント端末は、その決定を変更せず、同じ表現をダウンロードし続ける。
○ DT1が、バッファ内に存在するセグメントの再生時間の持続時間よりも長い場合、サーバーSEにおいて利用可能なセグメントiの少なくとも1つの代わりの表現kのすべてのフラグメントの予想配送時間DTkを決定する。予想配送時間は、全セグメントにおいて決定される。
・ DTkが、最大で、バッファ内に存在するセグメントの再生時間の持続時間に等しい場合、セグメントiのこの表現kに切り換わることを決定する。言い換えると、クライアント端末は、表現kの対応するビットレートが、バッファ全体を消費することなく機能するかどうかをチェックする。低減された帯域幅の場合、クライアント端末は、推定されたものよりも低い最高のビットレートを有する表現を選択することができ、それに対しては、DTkが正しい。これは、最良の品質のための選択である。より低いビットレートもバッファ保護を保証するが、コンテンツ品質はより低い。
切り換わる決定が行われた場合、クライアント端末は、セグメントの新しい表現の受信を、すなわち、新しいビットレートを有するセグメントの受信を開始する。
増加された帯域幅の場合、異なる選択を評価するための計算は、現在のダウンロードが時間内に終了するという事実に関係なく、より高いレートについて、異なる選択肢をチェックすることを除いて、上のものと同様である。その後、クライアント端末のバッファ制約を満たすことが可能な最高のレートを選択する。
先行技術の技法は、セグメントのための表現を選択し、その後、後続セグメントのための別の表現を要求できるようになる前に、全セグメントをロードすることを提案するが、したがって、本開示のこの例によると、セグメントロードをそれの小さい部分に分割し、フラグメント持続時間に対応するタイムスケールにおいて利用可能な帯域幅の推定を行い、セグメントの別の表現に切り換わることを、帯域幅の減少または増加の後、これが有利である場合、各フラグメントにおいて決定することが可能である。
結果として、本開示によると、表現の変更がひとたび決定されると、新しいセグメントのダウンロードが開始する。決定の全プロセスが、新しいセグメント表現を用いて再開され得、帯域幅が増加または減少した場合、表現変更の新しい決定が行われ得る。
したがって、本開示の少なくとも1つの実施形態は、HTTPストリーミング適応において、帯域幅の変化に対するより強いロバストネスを可能にする。これは、ビデオのフリーズを回避するのに役立つのと同時に、短いバッファの使用が視聴遅延を最小化することを可能にする。
本開示の一実施形態によると、フラグメントのサイズは相対的に小さくすることができるので、パイプライン化は、フラグメントの要求のために使用され得る。これを行わないと、要求されたフラグメントごとに、各フラグメントの開始時に、ネットワークRTTに等しいアイドル時間が発生する。
しかしながら、要求がひとたびサーバーに送信されると、それはアボートさせることができない。そのため、毎回、パイプライン化された要求の数は制限されるべきである。その理由は、表現を変更する決定は、先行する要求が回答されるときに一度だけHTTPサーバーによって処理される新しい要求をパイプラインに入れるためである。
この実施形態の好ましい実装は、前もってただ1つの要求をパイプライン化することであろう。さらに、次のフラグメントを求める要求を送信する時刻は、現在のフラグメントの受信が完了される時刻の推定に基づく。推定されたRTTは、この時刻から減算され、次の要求は、その時刻に送信される。
フラグメントがRTTよりもはるかに長い場合、帯域幅推定は、各フラグメントロードの間の、次の要求を送信する時刻の直前に更新され得、次のフラグメントの前に表現を変更する決定を行う機会を増加させる。
図4は、本開示の実施形態によるマルチメディアコンテンツを受信するためのクライアント端末の例を示している。
図4に示されるように、クライアント端末CTは、少なくとも、
− 1つまたは複数の接続のインターフェース41(例えば、Wi−Fi、イーサネット(登録商標)、ADSL、ケーブル、モバイル、および/もしくはブロードキャスト(例えば、DVB、ATSC)インターフェースなどの有線ならびに/または無線)と;
− HTTPサーバーSEと通信するためのプロトコルスタックを含む通信モジュール42(特に、通信モジュール42は、当技術分野においてよく知られたTCP/IPスタックを備える。もちろん、クライアント端末CTがHTTPサーバーSEと通信することを可能にする他の任意のタイプのネットワークおよび/または通信手段とすることもできる)と;
− セグメントの少なくとも1つのフラグメントを受信するための適応ストリーミングモジュール43(HTTPストリーミングマルチメディアコンテンツをHTTPサーバーSEから受信する)と;
− 送信経路上において利用可能な帯域幅を考慮することによって、
・セグメントの初期表現のすべての後続フラグメントの予想配送時間、および
・セグメントの代わりの表現のすべてのフラグメントの予想配送時間
を決定するための予想配送時間モジュール44と;
− 予想配送時間を考慮することによって、
・セグメントの初期表現の少なくとも1つの後続フラグメントを受信すること、または
・セグメントの代わりの表現の少なくとも第1のフラグメントを受信すること
の間で選択するための選択モジュール45(ネットワーク制約および自らの制約により良く一致するビットレートのフラグメントを継続的に選択する)と;
− マルチメディアコンテンツを復号およびレンダリングするように適合されたビデオプレーヤ46と;
− クライアント端末CTの不揮発性メモリ内に記憶されたアプリケーションおよびプログラムを実行するための1つまたは複数のプロセッサー47と;
− HTTPサーバーSEから受信したフラグメントをビデオプレーヤ46に送る前にバッファリングするための、揮発性メモリなどの、記憶手段48と;
− 送信経路の帯域幅を推定するように構成された帯域幅推定器49と;
− 汎用的なクライアント端末機能を実行するために、当業者に周知の様々なモジュールおよびすべての手段を接続する内部バスB1と;
を備える。
本開示は、HTTP2.0など、進行中の要求をアボートすることを許可するプロトコルバージョンの使用にも供給される。これは、HTTP1.1の場合、(下層の接続の停止による以外は)提供されなかったが、HTTP2.0は、要求/応答のストリームを多重化することを可能にし、これらのストリームを駆動するための制御メッセージも提供する(特に、RSTコマンドは、既存のストリームを停止する)。
現在の最新デバイスは、1つのセグメントの表現を決定することによって動作し、その場合、別の表現に切り換わるには、後続のセグメント要求まで待たなければならないが、本開示の代わりの実施形態は、
− セグメント持続時間の細分に対応するタイムスケールで利用可能な帯域幅を推定するステップと;
− 新しい各推定において、推定された帯域幅を与えられるほうが(すなわち、帯域幅の変更後のほうが)有利である場合、表現の変更に進むことを決定するステップと;
− (特定の実施形態に関して説明されたものなど)変更の決定が行われた場合、現在受信中のセグメントの第1の表現の受信をアボートするステップと;
− セグメントの第2の表現を送信するようにサーバーに要求するステップと;
を含む方法に依存する。
特定の実施形態を参照して先に説明されたステップのいくつかは、代わりの実施形態の方法にも供給され得る。
代わりの実施形態の可能な実装として、Dが、セグメント持続時間であり、Nが、1つのセグメントの間の目標とされるチェックの選択された数であり(Nは、例えば、10と20の間に含まれる)、Sが、(ビット単位の)セグメントサイズであるとする。方法を実装するクライアント端末は、以下の2つのイベント、すなわち、
− 直前の推定以降、S/Nビットが受信された、
− 直前の推定以降、D/N秒の時間が経過した、
のどちらかが最初に生じたときに、帯域幅を再計算することができる。
さらに、代わりの実施形態の精緻化において、一連の「瞬時」測定を平均することによって、推定される帯域幅をならすことが可能であり得る。最近の測定により大きい重みを与える重み付け平均は、帯域幅の動向をより良く反映するので、好ましい。
図面のフローチャートおよび/またはブロック図は、本開示の様々な実施形態による、システム、方法、およびコンピュータプログラム製品の可能な実装の構成、動作、および機能を示している。この点で、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実装するための1つまたは複数の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表すことができる。いくつかの代わりの実装では、ブロック内で述べられる機能は、図面内で述べられる順序とは異なる順序で生じ得ることにも留意されたい。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行され得、またはブロックは、時には逆順で実行され得、またはブロックは、含まれる機能に応じて、代わりの順序で実行され得る。ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図のブロックの組合せは、指定された機能もしくは行為を実行する専用ハードウェアベースシステム、または専用ハードウェアおよびコンピュータ命令の組合せによって実装され得ることにも留意されたい。明示的に説明されていないが、本実施形態は、任意のコンビネーションまたはサブコンビネーションで利用され得る。
当業者によって理解されるように、本発明の原理の特徴は、システム、方法、コンピュータプログラム、またはコンピュータ可読媒体として具体化され得る。したがって、本原理の特徴は、本明細書ではどれもが全体として「回路」、「モジュール」、または「システム」と呼ばれ得る、完全にハードウェアの実施形態、(ファームウェア、常駐ソフトウェア、およびマイクロコードなどを含む)完全にソフトウェアの実施形態、またはソフトウェア特徴とハードウェア特徴を組み合わせた実施形態の形態を取ることができる。さらに、本原理の特徴は、コンピュータ可読記憶媒体の形態を取ることができる。1つまたは複数のコンピュータ可読記憶媒体の任意の組合せが利用され得る。
コンピュータ可読記憶媒体は、1つまたは複数のコンピュータ可読媒体内で具体化され、コンピュータによって実行可能なその上で具体化されるコンピュータ可読プログラムコードを有する、コンピュータ可読プログラム製品の形態を取ることができる。本明細書で使用される場合、コンピュータ可読記憶媒体は、その中に情報を記憶する固有の能力、およびそこからの情報の取り出しを提供する固有の能力を与えられた、非一時的な記憶媒体と見なされる。コンピュータ可読記憶媒体は、例えば、限定されることなく、電子、磁気、光、電磁気、赤外線、もしくは半導体システム、装置、もしくはデバイス、または上記の任意の適切な組合せとすることができる。以下のもの、すなわち、ポータブルコンピュータディスク、ハードウェアディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラム可能リードオンリーメモリ(EPROMもしくはフラッシュメモリ)、ポータブルコンパクトディスクリードオンリーメモリ(CD−ROM)、光記憶デバイス、磁気記憶デバイス、または上記の任意の適切な組合せは、本原理が供給され得るコンピュータ可読記憶媒体のより特定の例を提供するが、当業者によって容易に理解されるように、例示的な網羅的ではないリストであるにすぎない。

Claims (15)

  1. 少なくとも1つのサーバーから、クライアント端末によってマルチメディアコンテンツを受信するための方法であって、前記マルチメディアコンテンツは、第1の持続時間の少なくとも2つの連続するセグメントに分離され、セグメントは、少なくとも2つの表現に関連付けられ、前記方法は、
    − セグメントの第1の表現の少なくとも1つのフラグメントを受信するステップ(21)であって、前記セグメントの各表現は、第2の持続時間の少なくとも2つの連続するフラグメントに分離される、ステップと、
    − 前記クライアント端末と前記少なくとも1つのサーバーのうちの1つとの間の送信経路上において利用可能な帯域幅を考慮することによって、
    ・前記セグメントの前記第1の表現のすべての後続フラグメントの予想配送時間、および
    ・前記セグメントの少なくとも1つの代わりの表現のすべての前記フラグメントの予想配送時間
    を決定するステップ(22)と、
    − 前記予想配送時間を考慮することによって、
    ・前記セグメントの前記第1の表現の少なくとも1つの後続フラグメントを受信すること、または
    ・前記セグメントの第2の表現の少なくとも第1のフラグメントを受信することであって、前記第2の表現は、前記少なくとも1つの代わりの表現に属する、受信すること、
    の間で選択するステップ(23)と、
    を含む、前記方法。
  2. 前記第2の持続時間に対応するタイムスケールで、前記利用可能な帯域幅の推定値を決定するステップを含む、請求項1に記載の方法。
  3. 前記第1の持続時間に対応するタイムスケールで、前記利用可能な帯域幅の推定値を決定するステップを含む、請求項2に記載の方法。
  4. 1つまたは複数の前記推定値は、各々、周期的に、または少なくとも1つのフラグメントを受信した後に、または少なくとも1つのセグメントを受信した後に、または前記送信経路の変化を検出した後に、決定される、請求項2又は3に記載の方法。
  5. 前記利用可能な帯域幅の増加が生じた場合、前記第2の表現は、前記第1の表現に関連付けられた第1のビットレートよりも高い第2のビットレートに関連付けられる、請求項1乃至4のいずれかに記載の方法。
  6. 前記利用可能な帯域幅の減少が生じた場合、前記第2の表現は、前記第1の表現に関連付けられた第1のビットレートよりも低い第2のビットレートに関連付けられる、請求項1乃至4のいずれかに記載の方法。
  7. 前記第1の表現の少なくとも1つの後続フラグメントを受信すること、または前記第2の表現の少なくとも第1のフラグメントを受信すること、の間で前記選択するステップは、前記クライアント端末のバッファの現在のコンテンツの再生持続時間も考慮する、請求項1乃至6のいずれかに記載の方法。
  8. 前記予想配送時間の前記決定と、前記第1の表現の少なくとも1つの後続フラグメントを受信することまたは前記第2の表現の少なくとも第1のフラグメントを受信することの間での前記選択とは、フラグメントごとに実装される、請求項1乃至7のいずれかに記載の方法。
  9. 前記少なくとも1つのフラグメントを受信するために、少なくとも1つのバイト範囲要求を前記少なくとも1つのサーバーに送信するステップを含む、請求項1乃至8のいずれかに記載の方法。
  10. 前記バイト範囲要求の少なくとも1つは、パイプライン化される、請求項9に記載の方法。
  11. 前記マルチメディアコンテンツは、HTTP適応ストリームである、請求項1乃至10のいずれかに記載の方法。
  12. 少なくとも1つのサーバーからマルチメディアコンテンツを受信するためのクライアント端末(CT)であって、前記マルチメディアコンテンツは、第1の持続時間の少なくとも2つの連続するセグメントに分離され、セグメントは、少なくとも2つの表現に関連付けられ、前記クライアント端末は、
    − セグメントの第1の表現の少なくとも1つのフラグメントを受信するように構成されたモジュール(43)であって、前記セグメントの各表現は、第2の持続時間の少なくとも2つの連続するフラグメントに分離される、モジュールと、
    − 前記クライアント端末と前記少なくとも1つのサーバーの1つとの間の送信経路上において利用可能な帯域幅を考慮することによって、
    ・前記セグメントの前記第1の表現のすべての後続フラグメントの予想配送時間、および
    ・前記セグメントの少なくとも1つの代わりの表現のすべての前記フラグメントの予想配送時間
    を決定するように構成されたモジュール(44)と、
    − 前記予想配送時間を考慮することによって、
    ・前記セグメントの前記第1の表現の少なくとも1つの後続フラグメントを受信すること、または
    ・前記セグメントの第2の表現の少なくとも第1のフラグメントを受信することであって、前記第2の表現は、前記少なくとも1つの代わりの表現に属する、受信すること
    の間で選択するように構成されたモジュール(45)と、
    を備えた、前記クライアント端末。
  13. 前記決定するモジュールは、前記第2の持続時間に対応するタイムスケールで、前記利用可能な帯域幅の推定値を決定するようにさらに構成された、請求項12に記載のクライアント端末。
  14. 前記決定するモジュールは、前記第1の持続時間に対応するタイムスケールで、前記利用可能な帯域幅の推定値を決定するようにさらに構成された、請求項13に記載のクライアント端末。
  15. 1つまたは複数の前記推定値は、各々、周期的に、または少なくとも1つのフラグメントを受信した後に、または少なくとも1つのセグメントを受信した後に、または前記送信経路の変化を検出した後に、決定される、請求項13に記載のクライアント端末。
JP2015162066A 2014-09-04 2015-08-19 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体 Withdrawn JP2016059037A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14306362.6 2014-09-04
EP14306362.6A EP2993910A1 (en) 2014-09-04 2014-09-04 Method and client terminal for receiving a multimedia content split into at least two successive segments, and corresponding computer program product and computer-readable medium.

Publications (2)

Publication Number Publication Date
JP2016059037A true JP2016059037A (ja) 2016-04-21
JP2016059037A5 JP2016059037A5 (ja) 2018-09-06

Family

ID=51589228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015162066A Withdrawn JP2016059037A (ja) 2014-09-04 2015-08-19 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体

Country Status (5)

Country Link
US (1) US20160072864A1 (ja)
EP (2) EP2993910A1 (ja)
JP (1) JP2016059037A (ja)
KR (1) KR20160028985A (ja)
CN (1) CN105407414A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018150594A1 (ja) * 2017-02-15 2018-08-23 パナソニック株式会社 端末装置、映像配信装置、映像配信システムおよび映像配信方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9660926B2 (en) * 2014-05-30 2017-05-23 Apple Inc. Multi-stream scheduling and requests
US10271112B2 (en) * 2015-03-26 2019-04-23 Carnegie Mellon University System and method for dynamic adaptive video streaming using model predictive control
US10652166B2 (en) * 2017-06-27 2020-05-12 Cisco Technology, Inc. Non-real time adaptive bitrate recording scheduler
CN107547940B (zh) * 2017-09-13 2019-11-12 广州酷狗计算机科技有限公司 视频播放处理方法、设备及计算机可读存储介质
KR102622252B1 (ko) * 2019-05-27 2024-01-08 삼성에스디에스 주식회사 콘텐츠 전송 장치 및 방법
US11070607B2 (en) 2019-07-22 2021-07-20 DAZN Limited Dynamic behavior modification for content download and playback

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2362651A1 (en) * 2010-02-19 2011-08-31 Thomson Licensing Multipath delivery for adaptive streaming
EP2410743A1 (en) * 2010-07-23 2012-01-25 Alcatel Lucent Method for transferring video chunks, server entity, client entity and intermediate network entity realizing such a method
US20120117261A1 (en) * 2010-11-05 2012-05-10 Nokia Corporation Method and Apparatus for Rate Adaptation for Adaptive HTTP Streaming
JP5905957B2 (ja) * 2011-06-08 2016-04-20 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 空間的にセグメント化されたコンテンツの配信
CN103650451B (zh) * 2011-07-07 2016-10-19 瑞典爱立信有限公司 网络容量优化的自适应http流播
EP2547062B1 (en) * 2011-07-14 2016-03-16 Nxp B.V. Media streaming with adaptation
WO2013072080A1 (en) * 2011-11-14 2013-05-23 Telefonaktiebolaget L M Ericsson (Publ) Media streaming in mobile networks with improved efficiency
US9712874B2 (en) * 2011-12-12 2017-07-18 Lg Electronics Inc. Device and method for receiving media content
WO2014057896A1 (ja) * 2012-10-09 2014-04-17 シャープ株式会社 コンテンツ送信装置、コンテンツ再生装置、コンテンツ配信システム、コンテンツ送信装置の制御方法、コンテンツ再生装置の制御方法、制御プログラムおよび記録媒体
WO2014134177A2 (en) * 2013-02-27 2014-09-04 Apple Inc. Adaptive streaming techniques
US20140282792A1 (en) * 2013-03-15 2014-09-18 Cygnus Broadband, Inc. Video streaming with buffer occupancy prediction based quality adaptation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018150594A1 (ja) * 2017-02-15 2018-08-23 パナソニック株式会社 端末装置、映像配信装置、映像配信システムおよび映像配信方法

Also Published As

Publication number Publication date
EP2993910A1 (en) 2016-03-09
US20160072864A1 (en) 2016-03-10
CN105407414A (zh) 2016-03-16
KR20160028985A (ko) 2016-03-14
EP2993911A1 (en) 2016-03-09

Similar Documents

Publication Publication Date Title
JP2016059037A (ja) 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体
JP6054427B2 (ja) プレイバックレート選択を伴う改良されたdashクライアントおよび受信機
JP2015513840A5 (ja)
US11057445B2 (en) Method for adapting the downloading behavior of a client terminal configured, to receive multimedia content, and corresponding terminal
JP2015511782A (ja) ダウンロードレートエスティメータを備えた改良されたdashクライアントおよび受信機
JP2015515173A (ja) マルチプルなtcp接続を介したソースと受信機との間のhttpストリーミングの制御
KR20150042191A (ko) 적응적 비트레이트 스트리밍에서 대역폭 할당을 위한 방법들 및 디바이스들
TWI573450B (zh) 伺服器內所儲存視聽節目表之接收方法和裝置
US10116763B2 (en) Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache
US10856015B2 (en) Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache
TW201521394A (zh) 在網路裝置所執行之進行流量對話中分配該網路可用頻寬之方法及其裝置
CN111886875B (zh) 一种通过网络传送媒体内容的方法及服务器
WO2016185998A1 (ja) Abr配信方式のコンテンツ配信の配信制御装置および配信制御方法
CN106464738B (zh) 用于操作网络设备的方法及相应的网络设备
KR102237900B1 (ko) 클라이언트 단말에 의해 멀티미디어 콘텐츠의 콘텐츠 부분을 검색하기 위한 방법
EP4195626A1 (en) Streaming media content as media stream to a client system
EP2958301A1 (en) Method for operating a cache arranged along a transmission path between a client terminal and at least one server, and corresponding cache
WO2018021950A1 (en) Device and method for controlling media streaming from a server to a client
WO2022253561A1 (en) Buffer management for live video streaming

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20161202

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20161202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180726

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190111

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20190122