JP6271445B2 - 要求取消し機能を備えた改良されたdashクライアントおよび受信機 - Google Patents
要求取消し機能を備えた改良されたdashクライアントおよび受信機 Download PDFInfo
- Publication number
- JP6271445B2 JP6271445B2 JP2014558950A JP2014558950A JP6271445B2 JP 6271445 B2 JP6271445 B2 JP 6271445B2 JP 2014558950 A JP2014558950 A JP 2014558950A JP 2014558950 A JP2014558950 A JP 2014558950A JP 6271445 B2 JP6271445 B2 JP 6271445B2
- Authority
- JP
- Japan
- Prior art keywords
- media data
- rate
- time
- presentation
- request
- 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.)
- Expired - Fee Related
Links
- 239000000872 buffer Substances 0.000 claims description 321
- 238000000034 method Methods 0.000 claims description 220
- 230000004044 response Effects 0.000 claims description 38
- 230000008859 change Effects 0.000 claims description 33
- 230000000694 effects Effects 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 9
- 239000012634 fragment Substances 0.000 description 209
- 230000008569 process Effects 0.000 description 160
- 230000008439 repair process Effects 0.000 description 96
- 230000006870 function Effects 0.000 description 62
- 230000006399 behavior Effects 0.000 description 16
- 238000005259 measurement Methods 0.000 description 12
- 230000003044 adaptive effect Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 11
- 230000015654 memory Effects 0.000 description 11
- 238000012935 Averaging Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 230000003139 buffering effect Effects 0.000 description 6
- 230000007423 decrease Effects 0.000 description 6
- 230000001413 cellular effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000012886 linear function Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000035484 reaction time Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000001174 ascending effect Effects 0.000 description 4
- 239000012464 large buffer Substances 0.000 description 4
- 230000001427 coherent effect Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 239000006185 dispersion Substances 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000012092 media component Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000002459 sustained effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000037406 food intake Effects 0.000 description 1
- 230000009474 immediate action Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009257 reactivity Effects 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0864—Round trip delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/23439—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/44004—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/266—Stopping or restarting the source, e.g. X-on or X-off
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/647—Control 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/64746—Control signals issued by the network directed to the server or the client
- H04N21/64761—Control signals issued by the network directed to the server or the client directed to the server
- H04N21/64769—Control signals issued by the network directed to the server or the client directed to the server for rate control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/782—Television signal recording using magnetic recording on tape
- H04N5/783—Adaptations for reproducing at a rate different from the recording rate
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Environmental & Geological Engineering (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Description
[0001]本出願は、参照によってその内容全体がすべての目的のために本明細書に組み込まれている、2012年2月27日に出願された、「Improved DASH Client and Receiver with Rate Adaptation and Downloading for Adaptive Video」と題する米国仮出願第61/603,569号の利益を主張する。
[0065]図1〜図2を再度参照すると、例示的クライアントの様々なコンポーネントが示されている。
[0083]SMは、ユーザのアクションと、ネットワーク条件と、他の要因との組合せに応じて、フラグメントをいつ要求すべきか、およびどのフラグメントを要求すべきかを決定する。ユーザがコンテンツを見始めると決定すると、SMは、ユーザによって、または提供されるサービスによって指定された、p時間から始まるそのコンテンツについて要求するべき第1のフラグメントを決定するのを担う。たとえば、いくつかのライブストリーミングサービスは、すべてのユーザが、メディアコンテンツの同じp時間部分を同じr時間に閲覧していることを要求し得るが、他のライブストリーミングおよびオンデマンドサービスは、どのp時間をどのr時間にプレイバックするかについて、柔軟性をエンドユーザまたはアプリケーションに認め得る。メディアバッファが満杯になると、SMは、さらなるフラグメント要求を与えるのを一時的にサスペンドする。SMは、ネットワーク条件およびたとえばディスプレイのサイズ、残存バッテリ寿命など、他の要因に依存して、p時間中の各時点においてコンテンツをどの品質でプレイバックするべきか決定するのを担う。
1.1.1. SMフラグメント決定プロセス
[0092]このセクションは、どのフラグメントを要求するようSCに伝えるべきか決定するためのSMフラグメント決定プロセスについて記載する。これらの例では、単一リプレゼンテーショングループが仮定されるが、これらの例は、複数のリプレゼンテーショングループを使用するプロセスに対処するように拡張することができ、たとえば、ビデオリプレゼンテーショングループからビデオリプレゼンテーションを、およびオーディオリプレゼンテーショングループからオーディオリプレゼンテーションを選ぶ。
[0096]適応ビットレートストリーミングクライアントは概して、正しいビットレートメディアを選ぶためのレート決定モジュールによって後で使用されるダウンロードレートエスティメータモジュールを使用する。この手法を用いると、ダウンロードレートが大きいとき、より高品質のメディアがストリーミングされ得る。ダウンロードレートの変化は、リプレゼンテーション切替えをトリガすることができる。レート推定値の品質は、ストリーミングクライアントの品質に対して大きな影響をもつ。
[0102]このセクションは、本明細書においてpker、pkerタイプのプロセスまたは単に「pkerプロセス」と呼ばれるレート推定プロセスについて記載する。基本レートエスティメータは、その推定値を、そこからより長い移動平均を計算するためにある方法または別の方法を使用した、短期レート測定値にのみ基づかせる。上述した基本移動ウィンドウ平均(「MWA」)は、そのようなプロセスの一例である。
[0145]ストリーミングビデオプレーヤは概して、制限付きメディアバッファを有する。したがって、通常動作において、最終的にはバッファ満杯状態に達し得ると予想される。バッファが満杯状態に達すると、ストリーミングモジュールは、バッファのオーバーフィリング(overfilling)を避けるために、メディア入力を抑える(throttle)べきである。これを行うための容易な方法は、バッファが満杯になったときは常に、バッファが次のフラグメントを保持することができるのに十分にドレインされるまで待ち、次いで、フェッチングを再開することである。
[0154]メディアデータを要求し始めるとき、ストリーミングモジュール(SM)は、何らかの方法を使用して、第1のプレイアウトレート選択を行う。SMは、最も低い利用可能レートをとる場合もあり、あるいは、たとえば、ネットワーク条件の履歴を維持し、次いで、この履歴に基づいて、失速なしで持続される可能性が高い、選ぶべきプレイアウトレートの推定値を決定する場合もある。SMが、すでにデータを受信中であり、したがって自由にレート推定値R(たとえば、セクション2にある方法で計算されたレート推定値のうちの1つなど)を有するとき、SMは、そのレートのまま続けるか、それともリプレゼンテーションを変えるかの決定を行う。
[0197]いくつかのケースでは、優れたレート選択プロセスでさえも、単独ではビデオプレイバックの失速を防止することができない。たとえば、要求が行われた後であるが完了される前に、ダウンロードレートが急激に下落した場合、選択されたビットレートは大きすぎた可能性があり、遅いダウンロードレートは、プレイバックレートを変えるための次の切替え機会に達する前であってもプレイバック失速につながり得る。
[0226]ストリーミングメディアクライアント向けの直接的なやり方は、単一HTTP接続を用いてメディアをフェッチすることである。そのようなクライアントは、フラグメント要求を連続して処理することになる。そのような手法には、ビデオストリーミングにおいていくつかの欠点がある。第1に、一般的ネットワーキングソフトウェアはしばしば、長いダウンロードにわたる最大スループットについてのみ合わせられる。これは、大きいファイルを受信するには良いが、安定受信レートなど、他の重要なストリーミング目標とは相反する。第2に、TCPの性質により、リンクの満杯容量は、必ずしもそのようなHTTP接続とともに使用することができるわけではない。チャネルが、ある程度の遅延とパケット損失とを受ける場合、TCPは、達成され得る実際のスループットを制限し、こうすることにより、ストリーミングクライアントが、良好な品質のメディアをストリーミングするのが妨げられる場合がある。
[0244]ここで、上述した要素を組み込む要求アクセラレータの実施形態について説明する。
[0263]要求アクセラレータは、履歴順に記憶される、(Tr,Z)ペアの増大アレイを保つことによって、レートの何らかの履歴を追跡する。このアレイを、mapTrZと呼ぶ。mapTrZの更新は、頻繁に、少なくとも一定時間間隔で(たとえば、100msおきに)、場合によっては新規データが受信されたときにも、起こる。
[0267]RAは、帯域幅推定値を収集する。アプリオリなRTTサンプルを受け取るための簡単なやり方は、HTTP GET要求がアイドル接続上で送出され、応答が着信し始めるときの時間の差を測定することである。
[0272]TCPフロー制御の調節により、RAは、様々な接続における帯域幅を、おおよそ同じに保つことができる。いくつかの構成可能な調節定数は、kR(RTT中で測定されたレート測定値ウィンドウであって、奨励値は30)と、kN(比例因子であって、奨励値は8192バイト)と、Nmin(Ntarget下限であって、奨励値は1)と、Nmax(Ntarget上限であって、奨励値は8)とを含み得る。
[0276]RAは、各接続のTCP受信ウィンドウサイズを、
[0277]RAに渡された各ソース要求は、おそらく2つ以上のRA要求に分割され、これらのRA要求は各々、要求された範囲の異なる部分に対応する。所与のソース要求に対応するRA要求がすべて完了されると、受信データは、RAによって完了フラグメントに再アセンブルされ、完了フラグメントは次いで、SCに戻される。
[0281]要求アクセラレータは、RA要求のセットを維持する。接続が、次の要求を発行する準備ができたときには常に、キューが空いていない場合は要求がRAキューからデキューされ、アイドル接続上で発行される。キューが空の場合、新規フラグメント要求がSCから取得される。その要求は次いで、RA要求に分割され、RAキュー上でキューイングされる。キューイングは好ましくは、サブ要求の数を見つけて所与のフラグメント要求を行うためのプロセスによってスライスが戻される順序で行われる。
[0284]TCP接続は、そのフロー制御によって制限される。すなわち、広告される受信ウィンドウは、どの時点でも受信確認されないことが許容されるデータの量に上限を定める。したがって、Wが、受信ウィンドウのサイズを示し、bdpがその接続の帯域幅遅延積を示す場合、bdp≦W(条件1)を得る。セクション6.1.4の方法は、cw>1であるとすると、この条件(1)が満たされるような受信ウィンドウサイズを選ぶことを記述している。この方法により、個々の接続が、利用可能帯域幅のその公平比率を実質的に超える比率をとる可能性は確実になくなる。レート増大を可能にし、レート下方スパイラルを避けるために、1よりもある程度大きいcw、たとえば、cw=2またはcw=4を選ぶことが好ましい。この値が大きい程、レートはより速くなることができるが、相互に対して接続が公平でなくなる。
[0296]データがいくつかのTCP接続を介して受信されるとき、これらの接続は、時間的に異なるダウンロードレートを有することがある。フラグメントの要求がいくつかのサブ要求に分割されたとき、フラグメント全体は、最後のサブ要求応答(チャンク)が受信されたときに受信されるだけである。フラグメントが緊急に受信される必要があるとき、サブ要求のうち1つが遅い接続上で扱われる場合があり、フラグメントが素早く受信されるのを妨げるので、これは問題となる場合がある。
[0303]DASH規格がどのようにFECを使用するか、特に、FEC用のRaptorQを使用するかに関する、以下の算出はすべて、好ましくは、固定小数点/整数演算を使用して実施される。この算出は、リプレゼンテーションのフラグメント内のソースシンボルの数および位置を算出することを含み、修復セグメント内のフラグメント用の修復シンボルの数および位置を算出することは、固定小数点演算を使用して行われるべきである。というのは、受信FEC修復フラグメントとソースフラグメントの組合せを使用してソースフラグメントを復号するRAプロセスとまったく同じ結果が、ソースセグメントからFEC修復フラグメントを生じる取込み(ingestion)プロセスによって達成される必要があり、したがってこれらの算出はまさに同じ出力結果をもたなければならないからである。固定小数点演算ではなく浮動小数点算出を使用すると、異なるプラットフォーム上の異なる浮動小数点実装形態の異なるコーナーケース挙動により、追跡するのが難しく、両方のエンドポイントがまさに同じ算出結果を生じなければならない規格において許容可能でない、わずかなバグのある挙動が時として生じ得る。
[0315]修復セグメントについての修復インデクシング情報およびFEC情報は、対応するソースセグメントについてのインデクシング情報によって、RおよびSの値から暗黙的に定義され、ここでRは、パーミルを示す0と1000との間の整数として表され、Sは、バイトで表される。時間オフセットおよび修復セグメントを備えるフラグメント構造は、対応するソースセグメントの時間オフセットおよび構造によって決定される。フラグメントiに対応する修復セグメント中の修復シンボルの冒頭および末尾へのバイトオフセットは、それぞれ、RB(i−1)=S*divceil(R*B(i−1),S*1000)およびRB(i)=S*divceil(R*B(i),S*1000)として算出され得る。フラグメントiに対応する修復セグメント中のバイト数はすると、RB(i)−RB(i−1)であり、したがってフラグメントiに対応する修復シンボルの数は、NRS(i)=(RB(i)−RB(i−1))/Sとして算出される。(分子がSの倍数であることが保証されるので、ここではdivceil演算は必要ないが、divceilはここで使用することができ、結果は依然として正しくなることに留意されたい)。フラグメントiに対応するソースシンボルの数は、NSS(i)=divceil(B(i)−B(i−1),S)として算出することができ、ここで最後のソースシンボルは、必要な場合、符号化について記述したのと同じく、復号目的のためにゼロでパディングされる。したがって、修復セグメント内の修復ブロックについての修復インデクシング情報、および対応するFEC情報は、対応するソースセグメントの対応するフラグメントについてのR、Sおよびインデクシング情報から暗黙的に導出することができる。
[0318]図25は、レート選択プロセスを示す。λおよびμについての設定が高い程、設定はアグレッシブになる。図23は、パラメータλについての様々な値を示す。図24は、パラメータμについての様々な値を示す。ハイブリッド設定が、2つのメインメカニズムによって、レートゆらぎを削減しようとする。第1のメカニズムは、Bが比較的大きいとき、レートを増大させることにより慎重であることによるものであり、第2のメカニズムは、Bが比較的小さいとき、より懸命に、現在のレートに留まろうとするものである。
[0322]このセクションでは、レート選択パラメータを設定する例が挙げられる。
[0324] EFF<0の場合、おそらく2つ以上のレートだけ下がる
[0325] 0≦EFF<0.1の場合、1レート下がる
[0326] 0.1≦EFF<0.6の場合、現在のレートに留まる
[0327] 0.6≦EFF<0.8の場合、1レート上がる
[0328] 0.8≦EFF≦1の場合、おそらく2つ以上のレートだけ上がる
[0329] アルファ=Rv/Rdlとする。するとこれは、おおよそ次のようになる。
[0330] アルファ≦0.4の場合、少なくとも1つのレートだけ上がる
[0331] 0.4<アルファ≦0.9の場合、同じレートに留まる
[0332] 0.9<アルファの場合、少なくとも1レートだけ下がる
[0333] これを、DASHクライアントレート選択プロセスのコンテキストに当てはめる。
[0339]以下のテーブルは、いくつかの可能なレート選択パラメータセットを指定する。以下のテーブルに示されていないtの中間値についてのラムダおよびミューの値は、周辺値の間を線形補間することによって算出されるべきである。以下のテーブルに示すものを超えるtの値についてのラムダおよびミューの値は、示されているtの最大値についてのラムダおよびミュー値に設定されるべきである。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信する受信機であって、前記プレイアウトの結果としてメディアがプレゼンテーションバッファからあるプレイバックレートで消費され、前記受信機が複数のプレイバックレートから選択するように構成された受信機において、要求アクションを決定するための方法であって、前記方法は、
前記プレゼンテーションバッファを監視することであって、前記プレゼンテーションバッファが、少なくとも、前記メディアデータが受信される時間と、前記受信機に関連付けられたプレゼンテーション要素によって前記メディアデータが消費される時間との間、メディアデータを記憶する、監視することと、
バッファレベルのインジケーションを記憶することであって、前記バッファレベルが、前記プレゼンテーションバッファのうちどの程度が、受信されたが前記プレゼンテーション要素によってまだ消費されていないメディアデータによって占有されるかに対応する、記憶することと、
選択された第1のメディアデータチャンクをダウンロードするための、発行された要求の状態を維持することと、
発行された要求が未処理のときに、ネットワーク条件および前記発行された要求の前記状態に基づいて、前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定することとを備える方法。
[C2]
前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定することが、
前記第1のメディアデータがプレイアウトされる前に、前記発行された要求についてのダウンロードを完了するのに十分な時間があるかどうか決定することと、
十分な時間がない場合、前記発行された要求を取り消すこととをさらに含む、上記C1に記載の方法。
[C3]
前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定することが、
前記選択された第1のメディアデータチャンク、または前記選択された第2のメディアデータチャンクのいずれかがプレイアウトされることになる前に、より高いレートの第2のチャンクをダウンロードするための十分な時間があるかどうか決定することと、
十分な時間がある場合、前記発行された要求を取り消し、前記第2のチャンクについての後続要求を発行することとをさらに含む、上記C1に記載の方法。
[C4]
前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定することが、
ダウンロードレートおよびメディア消費レートに基づいて、失速が起こることを検出することと、
前記プレゼンテーション要素が、消費されている前記メディアによって指示されたレートでメディアデータを消費することができない時間と、前記プレゼンテーション要素が、消費されている前記メディアによって指示された前記レートでメディアデータを消費するのを再開することができる時間の間の失速期間を推定することと、
継続または取消しが前記失速期間に対して有する効果を決定することと、
前記発行された要求の取消しが、前記失速期間を短縮する場合、前記発行された要求を取り消すこととをさらに含む、上記C1に記載の方法。
[C5]
第2のメディアデータチャンクを選択することであって、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクと同じ開始プレゼンテーション時間である、選択することと、
前記第2のメディアデータチャンクのダウンロードを要求することとをさらに備える、上記C1に記載の方法。
[C6]
第2のメディアデータチャンクを選択することであって、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクの開始プレゼンテーション時間よりも後である、選択することと、
前記第2のメディアデータチャンクのダウンロードを要求することとをさらに備える、上記C1に記載の方法。
[C7]
前記第2のメディアデータチャンクが、前記第1のメディアデータチャンクの前記開始プレゼンテーション時間のものと比較した、その開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、上記C6に記載の方法。
[C8]
前記第2のメディアデータチャンクが、そのプレイバックが、その開始プレゼンテーション時間と前記第1のメディアデータチャンクの前記開始プレゼンテーション時間との間の所定の最大ギャップをもつ最大プレイバックレートとなるように選ばれる、上記C6に記載の方法。
[C9]
前記第1のメディアデータチャンクのうち残っている部分のダウンロードが、プレイバックのための時間内に完了できないかどうか決定することと、
前記第2のメディアデータチャンクのダウンロードが、プレイバックのための時間内に完了できるかどうか決定することと、
前記発行された要求を続けるか、それとも前記第1のメディアデータチャンクについての前記発行された要求を取り消し、代わりに前記第2のメディアデータチャンクを要求するかの前記決定を、前記第1のメディアデータチャンクのうち前記残っている部分の前記ダウンロードが、プレイバックのための時間内に完了できないかどうか、および前記第2のメディアデータチャンクの前記ダウンロードがプレイバックのための時間内に完了できるかどうかに基づかせることとをさらに備える、上記C6に記載の方法。
[C10]
前記第2のメディアデータチャンク中の前記メディアデータの前記プレイバックレートが、前記受信機においてサポートされる最も高いプレイバックレートとなるように選ばれる、上記C9に記載の方法。
[C11]
すでに前記プレゼンテーションバッファ中にある少なくともいくらかのメディアデータのプレゼンテーション時間をカバーするメディアデータを要求することと、
前記要求されたメディアデータをダウンロードすることと、
前記要求されたメディアデータをプレイアウトすることと、
すでに前記プレゼンテーションバッファ中にある少なくともいくらかの対応するメディアデータを破棄することとをさらに備える、上記C1に記載の方法。
[C12]
前記要求されたメディアデータの前記プレイバックレートが、前記プレゼンテーションバッファから破棄される、対応するメディアデータの最大プレゼンテーション持続時間に対する制約を受ける最大プレイバックレートである、上記C11に記載の方法。
[C13]
前記要求されたメディアデータが、その開始プレゼンテーション時間が、前記受信機にとって利用可能な最も早い開始プレゼンテーション時間になるように選ばれる、上記C11に記載の方法。
[C14]
受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信する受信機であって、
メディアがあるプレイバックレートでそこから消費されるプレゼンテーションバッファであって、前記プレゼンテーションバッファが、少なくとも、前記メディアデータが受信される時間と、前記受信機に関連付けられたプレゼンテーション要素によって前記メディアデータが消費される時間の間、メディアデータを記憶し、前記受信機が、複数のプレイバックレートから選択するように構成されるプレゼンテーションバッファと、
前記プレゼンテーションバッファの状態を決定するためのプレゼンテーションバッファモニタと、
バッファレベルのインジケーションのためのストレージであって、前記バッファレベルが、前記プレゼンテーションバッファのうちどの程度が、受信されたが前記プレゼンテーション要素によってまだ消費されていないメディアデータによって占有されるかに対応する、ストレージと、
選択された第1のメディアデータチャンクをダウンロードするための、発行された要求の状態のためのストレージと、
発行された要求が未処理のとき、ネットワーク条件および前記発行された要求の前記状態に基づいて、前記受信機が前記要求を取り消すことができるように、要求および要求取消しを送るためのインターフェースとを備える受信機。
[C15]
クロック回路をさらに備え、それによって、前記受信機が、前記第1のメディアデータがプレイアウトされる前に、前記要求についてのダウンロードを完了するための十分な時間がある場合、前記要求を続けるか、それとも前記要求を取り消すか決定することができるが、十分な時間がない場合、前記要求を取り消す、上記C14に記載の受信機。
[C16]
第2のメディアデータチャンクのためのストレージをさらに備え、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクと同じ開始プレゼンテーション時間である、上記C14に記載の受信機。
[C17]
第2のメディアデータチャンクのためのストレージをさらに備え、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクの開始プレゼンテーション時間よりも後である、上記C14に記載の受信機。
[C18]
前記第2のメディアデータチャンクが、前記第1のメディアデータチャンクの前記開始プレゼンテーション時間のものと比較した、その開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、上記C17に記載の受信機。
[C19]
受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信する受信機のプロセッサによる実行のための非一時的コンピュータ可読媒体であって、
複数のプレイバックレートのうち選択された1つにおけるプレイバックレートでプレゼンテーションバッファから消費されているメディアをプレイアウトするためのプログラムコードと、
前記プレゼンテーションバッファを監視するためのプログラムコードであって、前記プレゼンテーションバッファが、少なくとも、メディアデータが受信される時間と、前記受信機に関連付けられたプレゼンテーション要素によって前記メディアデータが消費される時間の間に前記メディアデータを記憶する、プログラムコードと、
バッファレベルのインジケーションを記憶するためのプログラムコードであって、前記バッファレベルが、前記プレゼンテーションバッファのうちどの程度が、受信されたが前記プレゼンテーション要素によってまだ消費されていないメディアデータによって占有されるかに対応する、プログラムコードと、
選択された第1のメディアデータチャンクをダウンロードするための、発行された要求の状態を維持するためのプログラムコードと、
発行された要求が未処理のとき、ネットワーク条件および前記発行された要求の前記状態に基づいて、前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定するためのプログラムコードと、を備えるプログラムコードを有する、非一時的コンピュータ可読媒体。
[C20]
前記第1のメディアデータがプレイアウトされる前に、前記発行された要求についてのダウンロードを完了するのに十分な時間があるかどうか決定するためのプログラムコードと、
十分な時間がない場合、前記発行された要求を取り消すためのプログラムコードとをさらに備える、上記C19に記載の非一時的コンピュータ可読媒体。
[C21]
前記選択された第1のメディアデータチャンク、または前記選択された第2のメディアデータチャンクのいずれかがプレイアウトされることになる前に、より高いレートの第2のチャンクをダウンロードするための十分な時間があるかどうか決定するためのプログラムコードと、
十分な時間がある場合、前記発行された要求を取り消し、前記第2のチャンクについての後続要求を発行するためのプログラムコードとをさらに備える、上記C19に記載の非一時的コンピュータ可読媒体。
[C22]
ダウンロードレートおよびメディア消費レートに基づいて、失速が起こることを検出するためのプログラムコードと、
前記プレゼンテーション要素が、消費されている前記メディアによって指示されたレートでメディアデータを消費することができない時間と、前記プレゼンテーション要素が、消費されている前記メディアによって指示された前記レートでメディアデータを消費するのを再開することができる時間との間の失速期間を推定するためのプログラムコードと、
継続または取消しが前記失速期間に対して有する効果を決定するためのプログラムコードと、
要求を取り消すことが前記失速期間を短縮することになるときに、前記発行された要求を取り消すためのプログラムコードとをさらに備える、上記C19に記載の非一時的コンピュータ可読媒体。
[C23]
第2のメディアデータチャンクを選択するためのプログラムコードであって、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクと同じ開始プレゼンテーション時間であるプログラムコードと、
前記第2のメディアデータチャンクのダウンロードを要求するためのプログラムコードとをさらに備える、上記C19に記載の非一時的コンピュータ可読媒体。
[C24]
第2のメディアデータチャンクを選択するためのプログラムコードであって、前記第2のメディアデータチャンクが開始プレゼンテーション時間を有し、その開始プレゼンテーション時間が、前記第1のメディアデータチャンクの開始プレゼンテーション時間よりも後であるプログラムコードと、
前記第2のメディアデータチャンクのダウンロードを要求するためのプログラムコードとをさらに備える、上記C19に記載の非一時的コンピュータ可読媒体。
[C25]
前記第2のメディアデータチャンクが、前記第1のメディアデータチャンクの前記開始プレゼンテーション時間のものと比較した、その開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、上記C24に記載の非一時的コンピュータ可読媒体。
[C26]
前記第2のメディアデータチャンクが、そのプレイバックが、その開始プレゼンテーション時間と前記第1のメディアデータチャンクの前記開始プレゼンテーション時間との間の所定の最大ギャップをもつ最大プレイバックレートとなるように選ばれる、上記C24に記載の非一時的コンピュータ可読媒体。
[C27]
前記第1のメディアデータチャンクのうち残っている部分のダウンロードが、プレイバックのための時間内に完了できないかどうか決定するためのプログラムコードと、
前記第2のメディアデータチャンクのダウンロードが、プレイバックのための時間内に完了できるかどうか決定するためのプログラムコードと、
前記第1のメディアデータチャンクのうち前記残っている部分の前記ダウンロードが、プレイバックのための時間内に完了できないかどうか、および前記第2のメディアデータチャンクの前記ダウンロードがプレイバックのための時間内に完了できるかどうかに基づいて、前記発行された要求を続けるか、それとも前記第1のメディアデータチャンクについての前記発行された要求を取り消し、代わりに前記第2のメディアデータチャンクを要求するか決定するためのプログラムコードとをさらに備える、上記C24に記載の非一時的コンピュータ可読媒体。
[C28]
前記第2のメディアデータチャンク中の前記メディアデータの前記プレイバックレートが、前記受信機においてサポートされる最も高いプレイバックレートとなるように選ばれる、上記C27に記載の非一時的コンピュータ可読媒体。
[C29]
すでに前記プレゼンテーションバッファ中にある少なくともいくらかのメディアデータのプレゼンテーション時間をカバーするメディアデータを要求するためのプログラムコードと、
前記要求されたメディアデータをダウンロードするためのプログラムコードと、
前記要求されたメディアデータをプレイアウトするためのプログラムコードと、
すでに前記プレゼンテーションバッファ中にある少なくともいくらかの対応するメディアデータを破棄するためのプログラムコードとをさらに備える、上記C28に記載の非一時的コンピュータ可読媒体。
[C30]
前記要求されたメディアデータの前記プレイバックレートが、前記プレゼンテーションバッファから破棄される、対応するメディアデータの最大プレゼンテーション持続時間に対する制約を受ける最大プレイバックレートである、上記C29に記載の非一時的コンピュータ可読媒体。
[C31]
前記要求されたメディアデータが、その開始プレゼンテーション時間が、前記受信機にとって利用可能な最も早い開始プレゼンテーション時間になるように選ばれる、上記C29に記載の非一時的コンピュータ可読媒体。
Claims (23)
- 受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信する受信機によって実施される、要求アクションを決定する方法であって、前記プレイアウトの結果としてメディアがプレゼンテーションバッファからあるプレイバックレートで消費され、前記方法は、
前記プレゼンテーションバッファを監視することであって、前記プレゼンテーションバッファが、少なくとも、メディアデータが受信される時間と、前記受信機に関連付けられた前記プレゼンテーション要素によって前記メディアデータが消費される時間との間、前記メディアデータを記憶する、監視することと、
バッファレベルのインジケーションを記憶することであって、前記バッファレベルが、受信されたが前記プレゼンテーション要素によってまだ消費されていない前記メディアデータによって占有される前記プレゼンテーションバッファの量に対応する、記憶することと、
メディアデータの選択された第1のチャンクをダウンロードするための、発行された要求が、未処理であることを決定することと、
前記発行された要求が未処理のときに、前記発行された要求を取り消すと決定することと、これは、下記に基づく、
ダウンロードレートの変化を検出することと、
メディアデータの前記選択された第1のチャンクをプレイアウトする際の推定された失速が、前記発行された要求を取り消し、新しい要求を発行するために必要とされる時間量よりも大きいことを決定すること、ここで、これは、さらに、
メディアデータの前記選択された第1のチャンクの残っている部分のダウンロードが、プレイバック用の時間内に完了できないことを決定することと、
前記メディアデータの第2のチャンクのダウンロードが、プレイバック用の時間内に完了できることを決定することであって、前記第2のチャンクが、前記選択された第1のチャンクの開始プレゼンテーション時間よりも後の開始プレゼンテーション時間を有する、決定することと
に基づく、
前記メディアデータの前記第2のチャンクについての前記新しい要求を発行することとを備える方法。 - 前記発行された要求を取り消すと決定することが、
メディアデータの前記選択された第1のチャンクがプレイアウトされることになる前に、前記発行された要求についてのダウンロードを完了するのに十分な時間がないことを決定することと、
前記発行された要求を取り消すこととをさらに含む、請求項1に記載の方法。 - 前記発行された要求を取り消すと決定することが、
メディアデータの前記選択された第1のチャンク、またはメディアデータの前記第2のチャンクのいずれかがプレイアウトされることになる前に、メディアデータの前記第2のチャンクをダウンロードするための十分な時間があるかどうか決定することであって、メディアデータの前記第2のチャンクは、メディアデータの前記選択された第1のチャンクよりも高いレートを有する、決定することと、
十分な時間がある場合、前記発行された要求を取り消し、メディアデータの前記第2のチャンクについての前記新しい要求を発行することとをさらに含む、請求項1に記載の方法。 - 前記発行された要求を取り消すと決定することが、
ダウンロードレートおよびメディア消費レートに基づいて、失速が起こることを検出することと、
前記プレゼンテーション要素が、消費されている前記メディアによって指示されたレートでメディアデータを消費することができない時間と、前記プレゼンテーション要素が、消費されている前記メディアによって指示された前記レートでメディアデータを消費するのを再開することができる時間との間の失速期間を推定することと、
継続または取消しが前記失速期間に対して有する効果を決定することと、
前記発行された要求を取り消すことが前記失速期間を短縮する場合、前記発行された要求を取り消すこととをさらに含む、請求項1に記載の方法。 - メディアデータの前記第2のチャンクが、メディアデータの前記選択された第1のチャンクの前記開始プレゼンテーション時間と比較した、メディアデータの前記第2のチャンクの前記開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、請求項1に記載の方法。
- メディアデータの前記第2のチャンクが、メディアデータの前記第2のチャンクのプレイバックレートが、メディアデータの前記第2のチャンクの前記開始プレゼンテーション時間とメディアデータの前記選択された第1のチャンクの前記開始プレゼンテーション時間との間の所定の最大ギャップをもつ最大プレイバックレートとなるように選ばれる、請求項1に記載の方法。
- メディアデータの前記第2のチャンクのプレイバックレートが、前記受信機においてサポートされる最も高いプレイバックレートとなるように選ばれる、請求項1に記載の方法。
- すでに前記プレゼンテーションバッファ中にある少なくともいくらかのメディアデータのプレゼンテーション時間をカバーするメディアデータを要求することと、
前記要求されたメディアデータをダウンロードすることと、
前記要求されたメディアデータをプレイアウトすることと、
すでに前記プレゼンテーションバッファ中にある少なくともいくらかの対応するメディアデータを破棄することとをさらに備える、請求項1に記載の方法。 - 前記要求されたメディアデータのプレイバックレートが、前記プレゼンテーションバッファから破棄される、対応するメディアデータの最大プレゼンテーション持続時間に対する制約を受ける最大プレイバックレートである、請求項8に記載の方法。
- 前記要求されたメディアデータが、前記要求されたメディアデータの開始プレゼンテーション時間が、前記受信機にとって利用可能な最も早い開始プレゼンテーション時間になるように選ばれる、請求項8に記載の方法。
- 受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信するための受信機であって、
あるプレイバックレートでの消費のためのメディアを含むプレゼンテーションバッファであって、前記プレゼンテーションバッファが、少なくとも、メディアデータが受信される時間と、前記受信機に関連付けられたプレゼンテーション要素によって前記メディアデータが消費される時間との間、前記メディアデータを記憶し、前記受信機が、複数のプレイバックレートから選択するように構成される、プレゼンテーションバッファと、
前記プレゼンテーションバッファの状態を決定するためのプレゼンテーションバッファモニタと、
バッファレベルのインジケーションのためのストレージであって、前記バッファレベルが、受信されたが前記プレゼンテーション要素によってまだ消費されていない前記メディアデータによって占有される前記プレゼンテーションバッファの量に対応する、ストレージと、
メディアデータの選択された第1のチャンクをダウンロードするための、発行された要求が、未処理かどうか決定し、ダウンロードレートの変化を検出するためのプロセッサと、
要求および要求取消しを送るためのインターフェースであって、前記発行された要求が未処理のとき、前記プロセッサは、前記ダウンロードレートの前記検出された変化に応答して、前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定し、前記発行された要求を続けるか、それとも取り消すか決定することは、メディアデータの前記選択された第1のチャンクをプレイアウトする際の失速が、
メディアデータの前記選択された第1のチャンクの残っている部分のダウンロードが、プレイバック用の時間内に完了できないことを決定することと、
前記メディアデータの第2のチャンクのダウンロードが、プレイバック用の時間内に完了できることを決定することであって、前記第2のチャンクが、前記選択された第1のチャンクの開始プレゼンテーション時間よりも後の開始プレゼンテーション時間を有する、決定することと
に基づいて、前記発行された要求を取り消し、メディアデータの前記第2のチャンクについての新しい要求を発行するために必要とされる時間量よりも大きいかどうか決定することを含み、
前記発行された要求を続けるか、それとも取り消すか決定することは、メディアデータの前記選択された第1のチャンクの全部を受信する前に起こる、インターフェースとを備える受信機。 - クロック回路をさらに備え、メディアデータの前記選択された第1のチャンクがプレイアウトされることになる前に、前記発行された要求についてのダウンロードを完了するための十分な時間があるとき、前記受信機が、前記発行された要求を続けるように構成され、メディアデータの前記選択された第1のチャンクがプレイアウトされることになる前に、前記発行された要求についての前記ダウンロードを完了するための十分な時間がないとき、前記受信機が、前記発行された要求を取り消すように構成される、請求項11に記載の受信機。
- メディアデータの前記第2のチャンクが、メディアデータの前記選択された第1のチャンクの前記開始プレゼンテーション時間と比較した、メディアデータの前記第2のチャンクの前記開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、請求項11に記載の受信機。
- 受信機のプレゼンテーション要素を使用してプレイアウトするためのメディアを受信するための受信機のプロセッサによる実行のための非一時的コンピュータ可読媒体であって、
複数のプレイバックレートのうち選択された1つにおけるプレイバックレートでプレゼンテーションバッファから消費されているメディアをプレイアウトするためのプログラムコードと、
前記プレゼンテーションバッファを監視するためのプログラムコードであって、前記プレゼンテーションバッファが、少なくとも、メディアデータが受信される時間と、前記受信機に関連付けられたプレゼンテーション要素によって前記メディアデータが消費される時間との間に前記メディアデータを記憶する、プログラムコードと、
バッファレベルのインジケーションを記憶するためのプログラムコードであって、前記バッファレベルが、受信されたが前記プレゼンテーション要素によってまだ消費されていない前記メディアデータによって占有される前記プレゼンテーションバッファの量に対応する、プログラムコードと、
メディアデータの選択された第1のチャンクをダウンロードするための、発行された要求が、未処理かどうか決定するためのプログラムコードと、
ダウンロードレートの変化を検出するためのプログラムコードと、
前記発行された要求が未処理のとき、前記ダウンロードレートの前記検出された変化に応答して、前記発行された要求を続けるか、それとも前記発行された要求を取り消すか決定するためのプログラムコードであって、前記発行された要求を続けるか、それとも取り消すか決定することは、メディアデータの前記選択された第1のチャンクをプレイアウトする際の失速が、
メディアデータの前記選択された第1のチャンクの残っている部分のダウンロードが、プレイバック用の時間内に完了できないことを決定することと、
前記メディアデータの第2のチャンクのダウンロードが、プレイバック用の時間内に完了できることを決定することであって、前記第2のチャンクは、前記選択された第1のチャンクの開始プレゼンテーション時間よりも後の開始プレゼンテーション時間を有する、決定することと
に基づいて、前記発行された要求を取り消し、メディアデータの前記第2のチャンクについての新しい要求を発行するために必要とされる時間量よりも大きいかどうか決定することを含み、
前記発行された要求を続けるか、それとも取り消すか決定することは、メディアデータの前記選択された第1のチャンクの全部を受信する前に起こる、プログラムコードと、を備えるプログラムコードを有する、非一時的コンピュータ可読媒体。 - メディアデータの前記選択された第1のチャンクがプレイアウトされることになる前に、前記発行された要求についてのダウンロードを完了するのに十分な時間があるかどうか決定するためのプログラムコードと、
十分な時間がない場合、前記発行された要求を取り消すためのプログラムコードとをさらに備える、請求項14に記載の非一時的コンピュータ可読媒体。 - メディアデータの前記選択された第1のチャンク、またはメディアデータの前記第2のチャンクのいずれかがプレイアウトされることになる前に、メディアデータの前記第2のチャンクをダウンロードするための十分な時間があるかどうか決定するためのプログラムコードであって、メディアデータの前記第2のチャンクは、メディアデータの前記選択された第1のチャンクよりも高いレートを有する、プログラムコードと、
十分な時間がある場合、前記発行された要求を取り消し、メディアデータの前記第2のチャンクについての前記新しい要求を発行するためのプログラムコードとをさらに備える、請求項14に記載の非一時的コンピュータ可読媒体。 - ダウンロードレートおよびメディア消費レートに基づいて、失速が起こることを検出するためのプログラムコードと、
前記プレゼンテーション要素が、消費されている前記メディアによって指示されたレートでメディアデータを消費することができない時間と、前記プレゼンテーション要素が、消費されている前記メディアによって指示された前記レートでメディアデータを消費するのを再開することができる時間との間の失速期間を推定するためのプログラムコードと、
継続または取消しが前記失速期間に対して有する効果を決定するためのプログラムコードと、
前記発行された要求を取り消すことが前記失速期間を短縮するときに、前記発行された要求を取り消すためのプログラムコードとをさらに備える、請求項14に記載の非一時的コンピュータ可読媒体。 - メディアデータの前記第2のチャンクが、メディアデータの前記選択された第1のチャンクの前記開始プレゼンテーション時間と比較した、メディアデータの前記第2のチャンクの前記開始プレゼンテーション時間が、前記受信機にとって利用可能な最も低い差となるように選ばれる、請求項14に記載の非一時的コンピュータ可読媒体。
- メディアデータの前記第2のチャンクが、メディアデータの前記第2のチャンクのプレイバックレートが、メディアデータの前記第2のチャンクの前記開始プレゼンテーション時間とメディアデータの前記選択された第1のチャンクの前記開始プレゼンテーション時間との間の所定の最大ギャップをもつ最大プレイバックレートとなるように選ばれる、請求項14に記載の非一時的コンピュータ可読媒体。
- メディアデータの前記第2のチャンクのプレイバックレートが、前記受信機においてサポートされる最も高いプレイバックレートとなるように選ばれる、請求項14に記載の非一時的コンピュータ可読媒体。
- すでに前記プレゼンテーションバッファ中にある少なくともいくらかのメディアデータのプレゼンテーション時間をカバーするメディアデータを要求するためのプログラムコードと、
前記要求されたメディアデータをダウンロードするためのプログラムコードと、
前記要求されたメディアデータをプレイアウトするためのプログラムコードと、
すでに前記プレゼンテーションバッファ中にある少なくともいくらかの対応するメディアデータを破棄するためのプログラムコードとをさらに備える、請求項20に記載の非一時的コンピュータ可読媒体。 - 前記要求されたメディアデータのプレイバックレートが、前記プレゼンテーションバッファから破棄される、対応するメディアデータの最大プレゼンテーション持続時間に対する制約を受ける最大プレイバックレートである、請求項21に記載の非一時的コンピュータ可読媒体。
- 前記要求されたメディアデータが、前記要求されたメディアデータの開始プレゼンテーション時間が、前記受信機にとって利用可能な最も早い開始プレゼンテーション時間になるように選ばれる、請求項21に記載の非一時的コンピュータ可読媒体。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261603569P | 2012-02-27 | 2012-02-27 | |
US61/603,569 | 2012-02-27 | ||
US13/745,810 US9450997B2 (en) | 2012-02-27 | 2013-01-20 | Dash client and receiver with request cancellation capabilities |
US13/745,810 | 2013-01-20 | ||
PCT/US2013/027810 WO2013130475A1 (en) | 2012-02-27 | 2013-02-26 | Improved dash client and receiver with request cancellation capabilities |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015511784A JP2015511784A (ja) | 2015-04-20 |
JP2015511784A5 JP2015511784A5 (ja) | 2016-03-24 |
JP6271445B2 true JP6271445B2 (ja) | 2018-01-31 |
Family
ID=49004504
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014558951A Pending JP2015513840A (ja) | 2012-02-27 | 2013-02-26 | バッファ水位決定を伴う改良されたdashクライアントおよび受信機 |
JP2014558950A Expired - Fee Related JP6271445B2 (ja) | 2012-02-27 | 2013-02-26 | 要求取消し機能を備えた改良されたdashクライアントおよび受信機 |
JP2014558949A Expired - Fee Related JP6054427B2 (ja) | 2012-02-27 | 2013-02-26 | プレイバックレート選択を伴う改良されたdashクライアントおよび受信機 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014558951A Pending JP2015513840A (ja) | 2012-02-27 | 2013-02-26 | バッファ水位決定を伴う改良されたdashクライアントおよび受信機 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014558949A Expired - Fee Related JP6054427B2 (ja) | 2012-02-27 | 2013-02-26 | プレイバックレート選択を伴う改良されたdashクライアントおよび受信機 |
Country Status (6)
Country | Link |
---|---|
US (3) | US9450997B2 (ja) |
EP (3) | EP2820823B1 (ja) |
JP (3) | JP2015513840A (ja) |
KR (3) | KR20140130211A (ja) |
CN (3) | CN104205772B (ja) |
WO (3) | WO2013130477A1 (ja) |
Families Citing this family (109)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7515710B2 (en) | 2006-03-14 | 2009-04-07 | Divx, Inc. | Federated digital rights management scheme including trusted systems |
EP2384475A4 (en) | 2009-01-07 | 2014-01-22 | Sonic Ip Inc | AUTOMATED SINGLE AND GROUP PRODUCTION OF A MEDIA LEADER FOR ONLINE CONTENT |
WO2011068668A1 (en) | 2009-12-04 | 2011-06-09 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
US9247312B2 (en) | 2011-01-05 | 2016-01-26 | Sonic Ip, Inc. | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US8964977B2 (en) | 2011-09-01 | 2015-02-24 | Sonic Ip, Inc. | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US20140337871A1 (en) * | 2011-09-28 | 2014-11-13 | Telefonica, S.A. | Method to measure quality of experience of a video service |
US8897753B2 (en) | 2011-10-12 | 2014-11-25 | Motorola Mobility Llc | Method for retrieving content by a wireless communication device having first and second radio access interfaces, wireless communication device and communication system |
US20130227158A1 (en) * | 2012-02-24 | 2013-08-29 | Stmicroelectronics S.R.L. | Media-quality adaptation mechanisms for dynamic adaptive streaming |
US9374406B2 (en) | 2012-02-27 | 2016-06-21 | Qualcomm Incorporated | Dash client and receiver with a download rate estimator |
US9450997B2 (en) | 2012-02-27 | 2016-09-20 | Qualcomm Incorporated | Dash client and receiver with request cancellation capabilities |
US20130227102A1 (en) * | 2012-02-29 | 2013-08-29 | Alcatel-Lucent Usa Inc | Chunk Request Scheduler for HTTP Adaptive Streaming |
US9526091B2 (en) | 2012-03-16 | 2016-12-20 | Intel Corporation | Method and apparatus for coordination of self-optimization functions in a wireless network |
US9276989B2 (en) * | 2012-03-30 | 2016-03-01 | Adobe Systems Incorporated | Buffering in HTTP streaming client |
US9438883B2 (en) * | 2012-04-09 | 2016-09-06 | Intel Corporation | Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content |
US20130311614A1 (en) * | 2012-05-21 | 2013-11-21 | Motorola Mobility, Inc. | Method for retrieving content and wireless communication device for performing same |
US9083649B2 (en) * | 2012-07-02 | 2015-07-14 | Cox Communications, Inc. | Systems and methods for managing network bandwidth via content buffering |
EP2870770A2 (en) | 2012-07-09 | 2015-05-13 | VID SCALE, Inc. | Power aware video decoding and streaming |
US9462021B2 (en) | 2012-09-24 | 2016-10-04 | Google Technology Holdings LLC | Methods and devices for efficient adaptive bitrate streaming |
CN103702237A (zh) * | 2012-09-28 | 2014-04-02 | 北京大学 | Http流媒体的速率自适方法及装置 |
US9191457B2 (en) * | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
EP2945339B1 (en) * | 2013-02-17 | 2018-02-07 | Huawei Technologies Co., Ltd. | Method and device for regulating streaming media data transmission |
US9503491B2 (en) * | 2013-03-15 | 2016-11-22 | Echostar Technologies L.L.C. | Playback stall avoidance in adaptive media streaming |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US9906785B2 (en) | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9967305B2 (en) | 2013-06-28 | 2018-05-08 | Divx, Llc | Systems, methods, and media for streaming media content |
BR112016000427B1 (pt) * | 2013-07-17 | 2023-05-09 | Sony Corporation | Dispositivo, método e sistema de suprimento de conteúdo, e, dispositivo terminal |
US8718445B1 (en) | 2013-09-03 | 2014-05-06 | Penthera Partners, Inc. | Commercials on mobile devices |
US9244916B2 (en) * | 2013-10-01 | 2016-01-26 | Penthera Partners, Inc. | Downloading media objects |
US9756102B2 (en) * | 2013-10-07 | 2017-09-05 | Qualcomm Incorporated | Request cancellation method for media streaming |
DE102013220901A1 (de) * | 2013-10-15 | 2015-04-16 | Continental Automotive Gmbh | Verfahren zur Übertragung von digitalen Audio- und/oder Videodaten |
WO2015074623A1 (zh) * | 2013-11-25 | 2015-05-28 | 乐视致新电子科技(天津)有限公司 | 视频播放方法和装置、智能终端 |
US9197717B2 (en) | 2013-11-27 | 2015-11-24 | At&T Intellectual Property I, Lp | Server-side scheduling for media transmissions according to client device states |
JP6053176B2 (ja) * | 2013-12-03 | 2016-12-27 | 日本電信電話株式会社 | 映像再生状態推定装置、映像再生状態推定方法、及びプログラム |
JP6053180B2 (ja) * | 2014-02-18 | 2016-12-27 | 日本電信電話株式会社 | 映像再生状態推定装置、映像再生状態推定方法、及びプログラム |
US11271862B2 (en) * | 2014-02-21 | 2022-03-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Service delivery in a communication network |
US9596323B2 (en) | 2014-03-18 | 2017-03-14 | Qualcomm Incorporated | Transport accelerator implementing client side transmission functionality |
US20150271225A1 (en) * | 2014-03-18 | 2015-09-24 | Qualcomm Incorporated | Transport accelerator implementing extended transmission control functionality |
US9350484B2 (en) | 2014-03-18 | 2016-05-24 | Qualcomm Incorporated | Transport accelerator implementing selective utilization of redundant encoded content data functionality |
US20150271231A1 (en) * | 2014-03-18 | 2015-09-24 | Qualcomm Incorporated | Transport accelerator implementing enhanced signaling |
US9596281B2 (en) | 2014-03-18 | 2017-03-14 | Qualcomm Incorporated | Transport accelerator implementing request manager and connection manager functionality |
US20150271226A1 (en) * | 2014-03-18 | 2015-09-24 | Qualcomm Incorporated | Transport accelerator implementing a multiple interface architecture |
IL231685A (en) * | 2014-03-24 | 2015-09-24 | Giraffic Technologies Ltd | A system and method for predicting memory reduction and network design |
CN105940714B (zh) * | 2014-03-26 | 2019-11-01 | 瑞典爱立信有限公司 | 用于回放缓存的管理的方法和设备 |
US20150281303A1 (en) * | 2014-03-26 | 2015-10-01 | Mohamed Yousef | Adaptive media streaming |
GB2539335B (en) * | 2014-04-03 | 2018-03-14 | Orbital Multi Media Holdings Corp | Data flow control method and system |
GB2524958A (en) | 2014-04-03 | 2015-10-14 | Orbital Multi Media Holdings Corp | Data flow control method |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9813470B2 (en) * | 2014-04-07 | 2017-11-07 | Ericsson Ab | Unicast ABR streaming |
US20150350369A1 (en) * | 2014-05-30 | 2015-12-03 | Qualcomm Incorporated | Method For Reducing Pre-Fetching Of Multimedia Streaming Data With Minimal Impact On Playback User Experience |
US10149009B2 (en) * | 2014-07-09 | 2018-12-04 | Platypus Ip Llc | Indexing and compiling recordings in dwindling memory |
US20160036883A1 (en) * | 2014-07-30 | 2016-02-04 | Qualcomm Incorporated | Systems and methods for selective transport accelerator operation |
US9769043B2 (en) * | 2014-09-22 | 2017-09-19 | Avaya Inc. | Adaptive management of a media buffer |
EP3001633B1 (en) * | 2014-09-26 | 2017-08-16 | Alcatel Lucent | Server, client, method and computer program product for adaptive streaming of media content to a client |
EP3001693A1 (en) * | 2014-09-26 | 2016-03-30 | Alcatel Lucent | Server, client, method and computer program product for adaptive streaming of scalable video and/or audio to a client |
US20160094608A1 (en) * | 2014-09-30 | 2016-03-31 | Qualcomm Incorporated | Proactive TCP Connection Stall Recovery for HTTP Streaming Content Requests |
US10749918B2 (en) * | 2014-11-10 | 2020-08-18 | Avago Technologies International Sales Pte. Limited | Adaptive streaming with early client indication |
US20160134672A1 (en) * | 2014-11-11 | 2016-05-12 | Qualcomm Incorporated | Delivering partially received segments of streamed media data |
US9270563B1 (en) * | 2014-11-24 | 2016-02-23 | Roku, Inc. | Apparatus and method for content playback utilizing crowd sourced statistics |
CN105744308A (zh) * | 2014-12-08 | 2016-07-06 | 深圳Tcl数字技术有限公司 | 流媒体数据的下载方法及装置 |
US20160212069A1 (en) * | 2015-01-21 | 2016-07-21 | Qualcomm Incorporated | Cooperative management of client device cache memory in an http session |
US9467387B2 (en) * | 2015-02-10 | 2016-10-11 | Ericsson Ab | System and method for managing bandwidth responsive to the duty cycle of an ABR client |
US20160277522A1 (en) * | 2015-03-20 | 2016-09-22 | Qualcomm Incorporated | Detecting playback buffer underrun at sink device to improve streaming media quality over bluetooth |
CN104967884B (zh) * | 2015-04-17 | 2018-01-26 | 北京奇艺世纪科技有限公司 | 一种码流切换方法和装置 |
US20160308927A1 (en) * | 2015-04-20 | 2016-10-20 | Qualcomm Incorporated | Further Device Timing Adjustments and Methods for Supporting DASH Over Broadcast |
US10212551B2 (en) * | 2015-07-10 | 2019-02-19 | Verizon Patent And Licensing Inc. | Location-based buffer management systems and methods |
JP6178370B2 (ja) | 2015-09-09 | 2017-08-09 | 株式会社メディアリンクス | 映像伝送システム及び映像受信装置 |
US9826262B2 (en) * | 2015-09-09 | 2017-11-21 | Ericsson Ab | Fast channel change in a multicast adaptive bitrate (MABR) streaming network using multicast repeat segment bursts in a shared progressive ABR download pipe |
US9826261B2 (en) | 2015-09-09 | 2017-11-21 | Ericsson Ab | Fast channel change in a multicast adaptive bitrate (MABR) streaming network using multicast repeat segment bursts in a dedicated bandwidth pipe |
US10178143B2 (en) | 2015-09-29 | 2019-01-08 | International Business Machines Corporation | Selecting bitrate to stream encoded media based on tagging of important media segments |
WO2017063189A1 (en) * | 2015-10-16 | 2017-04-20 | Qualcomm Incorporated | Deadline signaling for streaming of media data |
US10433023B1 (en) * | 2015-10-27 | 2019-10-01 | Amazon Technologies, Inc. | Heuristics for streaming live content |
US10498368B2 (en) * | 2015-11-02 | 2019-12-03 | Mk Systems Usa Inc. | Dynamic client-side selection of FEC information |
KR102209292B1 (ko) | 2015-11-04 | 2021-01-29 | 삼성전자 주식회사 | 멀티미디어 시스템에서 데이터 제공 방법 및 장치 |
US10791162B2 (en) * | 2015-12-31 | 2020-09-29 | Hughes Network Systems, Llc | Maximizing quality of service for QoS adaptive video streaming via dynamic application-layer throughput rate shaping |
KR102547320B1 (ko) * | 2016-02-01 | 2023-06-23 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 제어 방법 |
EP3200429B1 (de) * | 2016-02-01 | 2019-04-17 | Volkswagen Aktiengesellschaft | Verfahren zum abrufen eines datenstroms von einem server sowie fahrzeug mit einem netzwerkzugriffspunkt |
JP6466870B2 (ja) * | 2016-02-29 | 2019-02-06 | Kddi株式会社 | クライアント装置および方法 |
JP2017157903A (ja) * | 2016-02-29 | 2017-09-07 | 富士ゼロックス株式会社 | 情報処理装置 |
US10129574B2 (en) | 2016-05-24 | 2018-11-13 | Divx, Llc | Systems and methods for providing variable speeds in a trick-play mode |
US10771833B2 (en) | 2016-05-31 | 2020-09-08 | The Trustees Of Princeton University | System and method for improving streaming video via better buffer management |
CN106899863B (zh) * | 2016-06-28 | 2019-10-25 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
US10425458B2 (en) * | 2016-10-14 | 2019-09-24 | Cisco Technology, Inc. | Adaptive bit rate streaming with multi-interface reception |
US10348796B2 (en) | 2016-12-09 | 2019-07-09 | At&T Intellectual Property I, L.P. | Adaptive video streaming over preference-aware multipath |
US20180181186A1 (en) * | 2016-12-27 | 2018-06-28 | Paul S. Diefenbaugh | Buffering data from high-speed i/o to enable longer reduced power consumption state residency |
CN106658049B (zh) * | 2016-12-31 | 2019-08-30 | 深圳市优必选科技有限公司 | 一种视频播放缓冲方法及系统 |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
CN108810522B (zh) * | 2017-04-26 | 2021-07-09 | 腾讯科技(深圳)有限公司 | 一种流媒体数据的评估方法及装置 |
US10397286B2 (en) | 2017-05-05 | 2019-08-27 | At&T Intellectual Property I, L.P. | Estimating network data streaming rate |
US10382517B2 (en) | 2017-06-09 | 2019-08-13 | At&T Intellectual Property I, L.P. | Estimating network data encoding rate |
US10873781B2 (en) * | 2017-06-13 | 2020-12-22 | Comcast Cable Communications, Llc | Video fragment file processing |
US10425456B2 (en) * | 2017-11-29 | 2019-09-24 | Bank Of America Corporation | Request processing system using a splitting engine |
TW201939961A (zh) * | 2018-03-14 | 2019-10-01 | 晨星半導體股份有限公司 | 應用於顯示裝置的電路及相關的控制方法 |
CN115567742A (zh) * | 2018-04-24 | 2023-01-03 | 谷歌有限责任公司 | 同步媒体回放期间调整质量级别的方法、系统和介质 |
EP3664456A1 (en) * | 2018-12-03 | 2020-06-10 | Nokia Solutions and Networks Oy | Apparatus and method for playing streamed media |
TWI690202B (zh) * | 2018-12-28 | 2020-04-01 | 瑞昱半導體股份有限公司 | 用於控制媒體播放器中之串流緩衝器的方法與相關的緩衝裝置 |
CN111510790B (zh) * | 2019-01-30 | 2021-10-15 | 上海哔哩哔哩科技有限公司 | 视频请求方法、系统、计算机设备及计算机可读存储介质 |
CN111866549B (zh) | 2019-04-29 | 2023-03-24 | 腾讯科技(深圳)有限公司 | 一种视频处理方法及装置、终端、存储介质 |
GB201909348D0 (en) * | 2019-06-28 | 2019-08-14 | Nordic Semiconductor Asa | Reception of digital radio signals |
CN111107386A (zh) * | 2019-12-27 | 2020-05-05 | 北京达佳互联信息技术有限公司 | 直播视频的回看方法、装置、电子设备、系统及存储介质 |
CN111405319B (zh) * | 2020-03-31 | 2021-07-23 | 北京达佳互联信息技术有限公司 | 带宽确定方法、装置、电子设备和存储介质 |
US11588876B2 (en) * | 2020-06-16 | 2023-02-21 | T-Mobile Usa, Inc. | Device-side playback restrictions on high throughput networks |
GB202015327D0 (en) * | 2020-09-28 | 2020-11-11 | British Telecomm | Adaptive bit rate streaming |
US11381855B2 (en) * | 2020-11-18 | 2022-07-05 | Roku, Inc. | Content-modification system with multiple video buffers feature |
CN112631958A (zh) * | 2020-12-29 | 2021-04-09 | 浙江工商大学 | 基于过滤表的dram行缓冲器混合管理方法 |
JP2022130167A (ja) | 2021-02-25 | 2022-09-06 | 富士通株式会社 | データ処理プログラム、データ処理方法、およびデータ処理システム |
Family Cites Families (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6058109A (en) | 1997-02-04 | 2000-05-02 | The Kohl Group, Inc. | Combined uniform rate and burst rate transmission system |
US9098297B2 (en) | 1997-05-08 | 2015-08-04 | Nvidia Corporation | Hardware accelerator for an object-oriented programming language |
JPH10336626A (ja) * | 1997-05-30 | 1998-12-18 | Nec Software Ltd | 映像データの転送方法および転送装置 |
US6247072B1 (en) | 1998-01-27 | 2001-06-12 | Cisco Technology, Inc. | Real-time data rate matching across a medium |
US6674717B1 (en) | 2000-03-30 | 2004-01-06 | Network Physics, Inc. | Method for reducing packet loss and increasing internet flow by feedback control |
US6978306B2 (en) | 2000-08-10 | 2005-12-20 | Pts Corporation | Multi-tier video delivery network |
US7061856B2 (en) | 2001-02-05 | 2006-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Data throughput over lossy communication links |
US7136353B2 (en) | 2001-05-18 | 2006-11-14 | Bytemobile, Inc. | Quality of service management for multiple connections within a network communication system |
AU2002315178A1 (en) | 2001-06-15 | 2003-01-02 | Iquest Networks, Inc. | System for communication of streaming digital data |
US6910079B2 (en) | 2002-01-25 | 2005-06-21 | University Of Southern California | Multi-threshold smoothing |
US7542471B2 (en) | 2002-10-30 | 2009-06-02 | Citrix Systems, Inc. | Method of determining path maximum transmission unit |
WO2005006664A1 (ja) | 2003-07-11 | 2005-01-20 | Nec Corporation | トランスポート層中継方法及びトランスポート層中継装置並びにプログラム |
US7516238B2 (en) | 2003-09-30 | 2009-04-07 | Microsoft Corporation | Background transport service |
TWI229528B (en) | 2003-10-31 | 2005-03-11 | Benq Corp | Method of controlling dataflow for a media player system |
US20050223141A1 (en) * | 2004-03-31 | 2005-10-06 | Pak-Lung Seto | Data flow control in a data storage system |
US7889697B2 (en) | 2004-05-04 | 2011-02-15 | Qualcomm Incorporated | Method and apparatus for content delivery to a mobile device |
GB0412342D0 (en) | 2004-06-03 | 2004-07-07 | Ibm | Convergent playback of buffered content to real-time content play |
US7721315B2 (en) | 2004-12-17 | 2010-05-18 | Vibe Solutions Group, Inc. | Method and system for on-demand delivery of personalized internet-based content to television viewers |
US7675856B2 (en) | 2005-03-24 | 2010-03-09 | Microsoft Corporation | Bandwidth estimation in broadband access networks |
WO2006108435A1 (en) * | 2005-04-11 | 2006-10-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for controlling data packet transmissions of variable bit rate data |
US7743183B2 (en) | 2005-05-23 | 2010-06-22 | Microsoft Corporation | Flow control for media streaming |
EP1915866A2 (en) * | 2005-08-12 | 2008-04-30 | Nokia Siemens Networks Gmbh & Co. Kg | A multi-source and resilient video on demand streaming system for a peer-to-peer subscriber community |
US20070067480A1 (en) * | 2005-09-19 | 2007-03-22 | Sharp Laboratories Of America, Inc. | Adaptive media playout by server media processing for robust streaming |
US7701853B2 (en) | 2005-09-30 | 2010-04-20 | Alcatel-Lucent Usa Inc. | Method for policing-based adjustments to transmission window size |
US8150995B2 (en) | 2005-09-30 | 2012-04-03 | Microsoft Corporation | Receive window auto-tuning |
US7577980B2 (en) * | 2006-01-19 | 2009-08-18 | International Business Machines Corporation | Bit-rate constrained trick play through stream switching and adaptive streaming |
US7711841B2 (en) | 2006-02-28 | 2010-05-04 | Sharp Laboratories Of America, Inc. | Systems and methods for reducing the effects of variations on the playback of streaming media |
US9432433B2 (en) * | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US7783773B2 (en) | 2006-07-24 | 2010-08-24 | Microsoft Corporation | Glitch-free media streaming |
JP2008177900A (ja) | 2007-01-19 | 2008-07-31 | Fujitsu Ltd | データ通信装置、設定情報更新方法および設定情報更新プログラム |
US8462684B1 (en) | 2008-05-19 | 2013-06-11 | Marvell International Ltd. | Power saving technique for a wireless device |
US7821937B1 (en) | 2007-06-29 | 2010-10-26 | Symantec Corporation | Network protocol with damage loss resilient congestion control algorithm |
US8346959B2 (en) | 2007-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Client-controlled adaptive streaming |
US7895629B1 (en) | 2007-11-07 | 2011-02-22 | At&T Mobility Ii Llc | Video service buffer management in a mobile rate control enabled network |
WO2009113924A1 (en) | 2008-03-12 | 2009-09-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Device and method for adaptation of target rate of video signals |
KR20100009903A (ko) * | 2008-07-21 | 2010-01-29 | 엘지전자 주식회사 | 콘텐츠 재생방법 및 장치, 그리고 그의 휴대 단말장치 |
US7886073B2 (en) | 2008-08-08 | 2011-02-08 | Cisco Technology, Inc. | Systems and methods of reducing media stream delay |
US20100054123A1 (en) * | 2008-08-30 | 2010-03-04 | Liu Yong | Method and device for hign utilization and efficient flow control over networks with long transmission latency |
JP4735697B2 (ja) * | 2008-09-29 | 2011-07-27 | ソニー株式会社 | 電子機器、コンテンツ再生方法及びプログラム |
US8375140B2 (en) | 2008-12-04 | 2013-02-12 | Google Inc. | Adaptive playback rate with look-ahead |
WO2010111261A1 (en) | 2009-03-23 | 2010-09-30 | Azuki Systems, Inc. | Method and system for efficient streaming video dynamic rate adaptation |
US20120150936A1 (en) * | 2009-08-10 | 2012-06-14 | Nec Corporation | Distribution system |
US20110090795A1 (en) | 2009-09-11 | 2011-04-21 | Victor On Kwok Li | Differentiation among occurrences of packet reordering, congestive packet loss, or random packet loss in communication networks |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
JP2011091709A (ja) * | 2009-10-23 | 2011-05-06 | Funai Electric Co Ltd | ネットワーク機器 |
KR20110065100A (ko) | 2009-12-09 | 2011-06-15 | 삼성전자주식회사 | 멀티미디어 스트리밍 서비스를 지원하는 방법 및 장치 |
EP2360924A1 (en) | 2010-01-18 | 2011-08-24 | Alcatel-Lucent España, S.A. | A digital multimedia data transmission device and method |
US9510029B2 (en) | 2010-02-11 | 2016-11-29 | Echostar Advanced Technologies L.L.C. | Systems and methods to provide trick play during streaming playback |
WO2011129363A1 (ja) | 2010-04-15 | 2011-10-20 | 日本電気株式会社 | 伝送装置、伝送方法及びコンピュータプログラム |
US9924412B2 (en) | 2010-06-18 | 2018-03-20 | Acer Incorporated | Method of handling buffer status report and communication device thereof |
KR20120010089A (ko) | 2010-07-20 | 2012-02-02 | 삼성전자주식회사 | Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치 |
US8589583B2 (en) | 2010-09-08 | 2013-11-19 | Hulu, Inc. | Method and apparatus for adaptive bit rate switching |
CN101964902A (zh) * | 2010-09-26 | 2011-02-02 | 中兴通讯股份有限公司 | 网络视频流的播放方法及连接设备 |
US8639835B2 (en) | 2010-11-29 | 2014-01-28 | Verizon Patent And Licensing Inc. | TCP window size performance optimization in wireless networks |
US8873385B2 (en) | 2010-12-07 | 2014-10-28 | Microsoft Corporation | Incast congestion control in a network |
US9020039B2 (en) * | 2011-01-06 | 2015-04-28 | Sonic Ip, Inc. | Systems and methods for encoding alternative streams of video for use in adaptive bitrate streaming |
US20120263058A1 (en) | 2011-04-15 | 2012-10-18 | Jds Uniphase Corporation | Testing shaped tcp traffic |
JP2014522594A (ja) | 2011-05-31 | 2014-09-04 | トムソン ライセンシング | マルチメディア・コンテンツをストリーミングする方法および装置 |
US8903952B2 (en) | 2011-08-16 | 2014-12-02 | Arris Enterprises, Inc. | Video streaming using adaptive TCP window size |
WO2013072080A1 (en) | 2011-11-14 | 2013-05-23 | Telefonaktiebolaget L M Ericsson (Publ) | Media streaming in mobile networks with improved efficiency |
US20130227158A1 (en) | 2012-02-24 | 2013-08-29 | Stmicroelectronics S.R.L. | Media-quality adaptation mechanisms for dynamic adaptive streaming |
US9450997B2 (en) | 2012-02-27 | 2016-09-20 | Qualcomm Incorporated | Dash client and receiver with request cancellation capabilities |
US9374406B2 (en) | 2012-02-27 | 2016-06-21 | Qualcomm Incorporated | Dash client and receiver with a download rate estimator |
US20140136653A1 (en) | 2012-02-27 | 2014-05-15 | Qualcomm Incorporated | Dash client and receiver with download rate acceleration |
-
2013
- 2013-01-20 US US13/745,810 patent/US9450997B2/en active Active
- 2013-01-20 US US13/745,811 patent/US9503490B2/en active Active
- 2013-01-20 US US13/745,809 patent/US9386058B2/en active Active
- 2013-02-26 JP JP2014558951A patent/JP2015513840A/ja active Pending
- 2013-02-26 KR KR1020147027019A patent/KR20140130211A/ko not_active Application Discontinuation
- 2013-02-26 EP EP13710662.1A patent/EP2820823B1/en active Active
- 2013-02-26 KR KR1020147027003A patent/KR101699870B1/ko active IP Right Grant
- 2013-02-26 EP EP13710176.2A patent/EP2820820A1/en not_active Withdrawn
- 2013-02-26 CN CN201380016181.0A patent/CN104205772B/zh not_active Expired - Fee Related
- 2013-02-26 JP JP2014558950A patent/JP6271445B2/ja not_active Expired - Fee Related
- 2013-02-26 EP EP13710175.4A patent/EP2820819B1/en active Active
- 2013-02-26 CN CN201380016035.8A patent/CN104205770B/zh not_active Expired - Fee Related
- 2013-02-26 WO PCT/US2013/027813 patent/WO2013130477A1/en active Application Filing
- 2013-02-26 KR KR1020147027017A patent/KR20140130210A/ko active IP Right Grant
- 2013-02-26 JP JP2014558949A patent/JP6054427B2/ja not_active Expired - Fee Related
- 2013-02-26 CN CN201380016000.4A patent/CN104205769B/zh not_active Expired - Fee Related
- 2013-02-26 WO PCT/US2013/027810 patent/WO2013130475A1/en active Application Filing
- 2013-02-26 WO PCT/US2013/027809 patent/WO2013130474A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US9450997B2 (en) | 2016-09-20 |
CN104205769A (zh) | 2014-12-10 |
EP2820819B1 (en) | 2019-11-20 |
CN104205769B (zh) | 2017-07-04 |
CN104205772B (zh) | 2018-04-20 |
WO2013130477A1 (en) | 2013-09-06 |
JP2015511784A (ja) | 2015-04-20 |
US9386058B2 (en) | 2016-07-05 |
US9503490B2 (en) | 2016-11-22 |
KR20140130211A (ko) | 2014-11-07 |
CN104205770A (zh) | 2014-12-10 |
EP2820823B1 (en) | 2018-07-25 |
KR101699870B1 (ko) | 2017-01-25 |
EP2820819A1 (en) | 2015-01-07 |
US20130227122A1 (en) | 2013-08-29 |
EP2820820A1 (en) | 2015-01-07 |
CN104205772A (zh) | 2014-12-10 |
WO2013130474A1 (en) | 2013-09-06 |
EP2820823A1 (en) | 2015-01-07 |
WO2013130475A1 (en) | 2013-09-06 |
JP2015513840A (ja) | 2015-05-14 |
KR20140130210A (ko) | 2014-11-07 |
US20130227080A1 (en) | 2013-08-29 |
JP2015511783A (ja) | 2015-04-20 |
US20130227081A1 (en) | 2013-08-29 |
CN104205770B (zh) | 2017-05-03 |
KR20140138784A (ko) | 2014-12-04 |
JP6054427B2 (ja) | 2016-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6271445B2 (ja) | 要求取消し機能を備えた改良されたdashクライアントおよび受信機 | |
JP2015511782A (ja) | ダウンロードレートエスティメータを備えた改良されたdashクライアントおよび受信機 | |
JP2015515173A (ja) | マルチプルなtcp接続を介したソースと受信機との間のhttpストリーミングの制御 | |
JP2015513840A5 (ja) | ||
US7657672B2 (en) | Packet scheduling for data stream transmission | |
US20150271231A1 (en) | Transport accelerator implementing enhanced signaling | |
WO2014143631A1 (en) | Playback stall avoidance in adaptive media streaming | |
CA2847081A1 (en) | Systems and methods for controlling the encoding of a segmented media stream using segment transmit times | |
EP2993911A1 (en) | 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 | |
JP2013502781A (ja) | メディアデータの転送時間をスケジューリングするための装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160202 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160202 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170404 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170620 |
|
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: 20171205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6271445 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |