JP6096931B2 - ハイパーテキスト転送プロトコル(http)要求に対する柔軟な応答時間 - Google Patents

ハイパーテキスト転送プロトコル(http)要求に対する柔軟な応答時間 Download PDF

Info

Publication number
JP6096931B2
JP6096931B2 JP2015550463A JP2015550463A JP6096931B2 JP 6096931 B2 JP6096931 B2 JP 6096931B2 JP 2015550463 A JP2015550463 A JP 2015550463A JP 2015550463 A JP2015550463 A JP 2015550463A JP 6096931 B2 JP6096931 B2 JP 6096931B2
Authority
JP
Japan
Prior art keywords
segment
available
request
http
server
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
Application number
JP2015550463A
Other languages
English (en)
Other versions
JP2016510523A (ja
JP2016510523A5 (ja
Inventor
ラルフ・エー・ゴルミエ
ナガラジュ・ナイク
ナーミーン・エー・バショウニー
タディ・エム・ナガラジ
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2016510523A publication Critical patent/JP2016510523A/ja
Publication of JP2016510523A5 publication Critical patent/JP2016510523A5/ja
Application granted granted Critical
Publication of JP6096931B2 publication Critical patent/JP6096931B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2408Monitoring of the upstream path of the transmission network, e.g. client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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
    • 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/44204Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control 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 using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • 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
    • 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

Landscapes

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

Description

関連出願
本出願は、2012年12月28日に出願された「Device Timing Adjustments and Method for Supporting DASH Over Broadcast」という表題の米国仮特許出願第61/747,188号の優先権の利益を主張し、この仮特許出願の内容全体が参照によって本明細書に組み込まれる。
ハイパーテキスト転送プロトコル(HTTP)ストリーミングは現在、インターネットを通じてコンテンツを配信する最も一般的な方法である。生放送のイベントでは、コンテンツは、不変の期間のセグメントを通じて徐々に利用可能にされる。セグメントの利用可能性(segment availability)は、各々の連続するセグメントがHTTPサーバにおいていつ利用可能になるかを示す、タイムラインに従う。
Dynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)は、HTTPストリーミングを実装する規格である。DASHは、Media Presentation Description(MPD)においてセグメントの利用可能性を告知する。MPDは、セグメント、セグメントが利用可能である時間、およびセグメントのサイズを告知する、セグメント利用可能性タイムラインである。
現在のシステムでは、MPDは、Over-the-Air(OTA)配信を介して受信機デバイスに提供される。提供されたMPDにおいて、セグメント利用可能時間は、セグメントを生成するネットワーク側エンコーダのエンコーダ出力時間に対応し得る。セグメント利用可能時間はエンコーダ出力時間に対応し得るので、利用可能時間は、配信経路の遅延、受信機デバイスの処理遅延、または受信機デバイスの時計のずれのような、受信機デバイス上で実行されるDASHクライアントに対する、実際のセグメントの利用可能性の差を考慮しない可能性がある。したがって、現在のMPDにおいて告知される利用可能時間は、セグメントがDASHクライアントに対して利用可能となる実際の時間に対応しないことがある。
同様の問題が、DASHコンテンツがコンテンツ配信ネットワーク(CDN)を通じて配信されるときに起きる。DASHコンテンツはソースエンコーダにおいて作成されるが、遠隔のCDNサーバにおけるセグメントの利用可能時間は、異なるCDNサービング点では異なり得る。
様々な実施形態のシステム、方法、およびデバイスは、サーバによるファイル要求に対する柔軟な応答時間を可能にする。こうして、サーバは、オブジェクト/セグメントの利用可能性の予測不可能な遅延を考慮し、ファイルが利用不可能であることが一時的でありネットワーク遅延が原因であるときにエラーメッセージ(たとえば、404エラーメッセージ)がファイル要求に応答して返される頻度を下げることができる。
本明細書に組み込まれ本明細書の一部を構成する添付の図面は、上で与えられた全般的な説明および以下で与えられる詳細な説明とともに、本発明の例示的な実施形態を示し、本発明の特徴を説明する役割を果たす。
様々な実施形態とともに使用するのに適したネットワークの通信システムブロック図である。 ある実施形態による、受信機デバイスのアーキテクチャを示すブロック図である。 別の実施形態による、セグメント利用可能時間を示す図である。 HTTP要求に対する応答を遅らせるためのある実施形態の方法を示すプロセスフロー図である。 ある実施形態による、セグメントバッファの経時的な状態を示す図である。 様々な実施形態とともに使用するのに適した例示的なモバイルデバイスのコンポーネント図である。 様々な実施形態とともに使用するのに適した例示的なサーバのコンポーネント図である。
様々な実施形態が、添付の図面を参照して詳細に説明される。可能な場合には常に、同じ参照番号が、同じ部分または同様の部分を指すために、図面全体を通じて使用される。特定の例および実装形態への言及は例示を目的とするものであり、本発明または特許請求の範囲を限定することは意図されない。
「例示的」という用語は、「例、事例、または例示として機能する」ことを意味するように本明細書において使用される。本明細書で「例示的」として説明されるいずれの実装形態も、他の実装形態より好ましい、または有利であると、必ずしも解釈されるべきではない。
本明細書で使用される場合、「モバイルデバイス」および「受信機デバイス」という用語は、携帯電話、スマートフォン、個人用またはモバイルマルチメディアプレーヤ、携帯情報端末(PDA)、ラップトップコンピュータ、タブレットコンピュータ、スマートブック、パームトップコンピュータ、ワイヤレス電子メール受信機、マルチメディアインターネット対応携帯電話、ワイヤレスゲームコントローラ、ならびに、ファイルを受信し、要求側のDASHクライアントのような要求側のアプリケーション/クライアントにファイルを提供するためのプログラム可能プロセッサとメモリと回路とを含む同様の個人用電子デバイスのうちの、任意の1つまたはすべてを指すように、本明細書では交換可能に使用される。
本明細書で使用される場合、「セグメント」、「オブジェクト」、および「ファイル」という用語は、サーバから要求され得る、任意の1つまたはすべてのデータ構造またはデータユニットの指すために、本明細書では交換可能に使用される。
Dynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)は、HTTPストリーミングを実装する規格である。DASHは、Media Presentation Description(MPD)においてセグメントの利用可能性(segment availability)を告知する。MPDは、セグメント、セグメントが利用可能である時間、およびセグメントのサイズを告知する、セグメント利用可能性タイムラインである。現在のシステムでは、MPDは、Over-the-Air(OTA)配信を介して受信機デバイスに提供される。第3世代パートナーシッププロジェクト(3GPP)は、Long Term Evolution(LTE)(すなわち、evolved Multimedia Broadcast Multicast Services(eMBMS))を通じたブロードキャスト使用してHTTPストリーミングを提供するために使用されるべき方法として、ダウンロード配信を通じたDASHを標準化した。
異なるアプリケーション/クライアント、ミドルウェア、セグメント利用可能性タイムライン、無線技術、および転送プロトコルの様々な例、特に、DASHクライアント、マルチキャストサービスデバイスクライアント、MPD、eMBMS、およびHTTPが本明細書で論じられる。DASHクライアント、マルチキャストサービスデバイスクライアント、MPD、eMBMS、およびHTTPの議論は、様々な実施形態の態様をより良好に示すための例としてのみ与えられ、いかなる方法でも様々な実施形態を限定することは意図されない。他のアプリケーション/クライアント、ミドルウェア、セグメント利用可能性タイムライン、無線技術、および転送プロトコルが、様々な実施形態とともに使用されてよく、他のアプリケーション/クライアント、ミドルウェア、セグメント利用可能性タイムライン、無線技術、および転送プロトコルが、本発明の趣旨または範囲から逸脱することなく、様々な例において置換されてよい。
様々な実施形態は、受信機デバイスが、受信機デバイス上で使用するための、データストリーム中のデータセグメントの利用可能性(「セグメント利用可能性」)の遅延を考慮することを可能にする。ある実施形態では、サーバ(たとえば、要求側のDASHクライアントのような要求側のアプリケーション/クライアントにセグメントを提供する受信機デバイス上のローカルHTTPサーバ)は、セグメントの要求に応答してセグメントを提供するために、柔軟な応答時間とともに動作し得る。こうして、サーバは、セグメントの利用可能性の予測不可能な遅延を考慮することができる。
ある実施形態では、ネットワークジッタの推定が、受信機デバイスに送信される、セグメント利用可能性タイムラインを記述するメディア記述フラグメント(たとえば、MPD)において提供され得る。別の実施形態では、ネットワークジッタは、受信機デバイス上で事前に準備され得る(たとえば、製造の時点で受信機デバイスの非揮発性メモリに記憶され得る)。他の実施形態では、ネットワークジッタの推定は、任意のメッセージ中で、たとえばサービス告知の中で、受信機デバイスに配信され得る。本明細書で使用される場合、「ジッタ」は、セグメントの利用可能性タイムラインからの差として、セグメントの最早の可能な到達時間と最遅の可能な到達時間との差を指す。
本明細書で使用される場合、「ネットワークジッタ」は、受信機デバイスにおけるセグメントの最早の相対到達時間と最遅の相対到達時間との最大の差を指す。相対到達時間は、配信タイムラインに従った、絶対到達時間と予想される到達時間との差を指す。ある実施形態では、配信タイムラインは、サービスのメディアを搬送するセグメントのリスト中の、すべてのセグメントの予想される到達時間を提供することができ、配信タイムラインは、次のセグメントの利用可能性が、先行するセグメントの利用可能性に、第1のセグメントの提供された絶対利用可能時間に基づく先行するセグメントの期間を足したものとなり得るように、定義され得る。別の実施形態では、利用可能時間は、連続するセグメントに対する絶対値として提供され得る。さらに別の実施形態では、利用可能時間は、周期内での周期的な利用可能性として提供され得る。さらなる実施形態では、利用可能時間は、絶対値と周期利用可能性の組合せのような、仕組みの組合せとして提供され得る。ネットワークジッタは、セグメントサイズの変動性、スケジューリング期間の粒度の変動性(たとえば、セグメントの到達の1秒の周期性を中心とする、320msというマルチキャストチャネル(MCH)スケジューリング周期の変動性)、ネットワーク装置の遅延(たとえば、帯域幅、送信遅延、処理遅延、バッファ遅延など)の変動性に関連し得る。ネットワークジッタは、状況に依存し得る。たとえば、ビデオセグメントサイズの変動性は、ビデオセグメントの平均サイズの70%から130%の間で、ネットワークジッタの推定を変動させ得る。
本明細書で使用される場合、「受信機デバイスのジッタ」は、受信機デバイス上で実行される要求側のアプリケーション/クライアントに対する、セグメントの到達時間とセグメントの利用可能性との最大の差を指す。受信機デバイスのジッタは、セグメントサイズの変動性、スケジューリング期間の粒度の変動性(たとえば、セグメントの到達の1秒の周期性を中心とする、320msというMCHスケジューリング周期の変動性)、受信機デバイス上での処理遅延(たとえば、前方誤り訂正(FEC)処理、復号時間など)の変動性、および受信機デバイスの時計のずれの変動性に関連し得る。
セグメント利用可能性タイムライン(たとえば、MPD)でのネットワークジッタの推定の配信は、受信機デバイスのサーバ(たとえば、受信機デバイス上のローカルHTTPサーバ)におけるバッファリング要件のより良好な推定、受信機デバイスの時計がサーバの時計に同期されていないときのタイムライン調整に対する改善、および/または、タイムラインの計算の必要なく動作する柔軟なサーバ応答時間のアルゴリズム(たとえば、柔軟なHTTPサーバ応答時間のアルゴリズム)を可能にし得る。
現在のシステムでは、デバイスに提供されるMPD中の利用可能時間は、セグメントがデバイス上のローカルHTTPサーバ上で利用可能になった後でセグメントに対するすべて要求が行われるように、設定され得る。しかしながら、提供されるMPDにおけるこの組み込まれた調整は、セグメントがローカルHTTPサーバ上で利用可能であることを保証されるまで、サービスを利用するユーザに対するセグメントの提供を遅らせる。例として、現在のシステムでは、ジッタが大きく、統計的な異常値を除いて遅延が小さく、またはデバイスにおいて時計のずれがある場合、提供されるMPD中の利用可能時間は、最悪の場合の時計のずれ(たとえば、1秒、2秒、複数秒など)に対して事前に調整される。結果として、セグメントに対する要求は、セグメントが受信機デバイスにおいて実際に利用可能となるときよりもはるかに遅く行われ、それは、各セグメントの利用可能時間が、最悪の場合の遅延が発生しているかどうかにかかわらず、最悪の場合の時計のずれに対して調整されるからである。遅れた要求は、配信経路上のレイテンシとともに、チャネルの切替えおよび初期取得の遅延を直接増やす。
様々な実施形態のシステム、方法、およびデバイスは、サーバによるファイル要求に対する柔軟な応答時間を可能にする。こうして、サーバは、セグメントの利用可能性の予測不可能な遅延を考慮し、ファイルが利用不可能であることが一時的でありネットワーク遅延が原因であるときファイル要求に応答して返されるエラーメッセージ(たとえば、404エラーメッセージ)の頻度を下げることができる。様々な実施形態では、サーバによるファイル要求に対する柔軟な応答時間は、レイテンシおよび遅延が減らされることと、セグメントが実際に受信されるときに利用可能にされることとを可能にし得る。ある実施形態では、MPD中の利用可能時間は、時計のずれを考慮することなく、通常の遅延(たとえば、90パーセンタイルの遅延)を考慮するように設定され得る。ある実施形態では、DASHクライアントは、受信されるMPDに記載される時間よりも早くセグメントに対する要求を行うことが可能にされてよく、サーバによるファイル要求に対する柔軟な応答時間に基づいて、直ちに、または、セグメントが利用可能になるとすぐに、セグメントを提供され得る。
図1は、様々な実施形態とともに使用するのに適したセルラーネットワークシステム100を示す。セルラーネットワークシステム100は、受信機デバイス102、1つまたは複数のセルラータワーまたは基地局104、ならびに、インターネット110に接続されたサーバ108および112のような、複数のデバイスを含み得る。受信機デバイス102は、CDMA、TDMA、GSM(登録商標)、PCS、3G、4G、LTE、または任意の他のタイプの接続を含む、1つまたは複数のセルラー接続106を介して、セルラータワーまたは基地局104とデータを交換することができる。セルラータワーまたは基地局104は、インターネット110に接続し得るルータと通信していてよい。このようにして、セルラータワーまたは基地局104への接続、および/またはインターネット110を介して、受信機デバイス102とサーバ108および112との間でデータが交換され得る。ある実施形態では、サーバ108は、DASHクライアントを介した出力のためにMPDおよびセグメントを提供する、コンテンツプロバイダサーバまたはエンコーダであり得る。ある実施形態では、サーバ112は、エンコーダからMPDおよびセグメントの出力を受信し、受信機デバイス102へのMPDおよびセグメントのOTA送信を制御できる、ブロードキャストマルチメディアサービスセンター(BMSC)サーバであり得る。当然、本明細書で説明される受信機デバイスの特徴は、OTA送信を参照して説明され得るが、これらの特徴は、有線送信、ワイヤレス送信、または有線送信とワイヤレス送信の組合せとの接続において使用され得る。したがって、OTA送信は必須ではない。
図2は、ある実施形態による、簡略化された受信機デバイス202のアーキテクチャを示す。受信機デバイス202は、取得、ハンドオフ、リンク維持などのような、受信機デバイス202のすべての無線の態様を管理する、モデムレイヤ208を含み得る。モデムレイヤ208は、受信されたeMBMSベアラ信号を復号し、インターネットプロトコル(IP)パケットをマルチキャストサービスデバイスクライアント(MSDC)206に配信することができる。マルチキャストサービスデバイスクライアント206は、配信されたIPパケットからセグメントを復元し、アプリケーション/DASHクライアント204のようなアプリケーション/クライアントに対してセグメントを利用可能にする、受信機デバイス202のサービスレイヤであり得る。マルチキャストサービスデバイスクライアント206はまた、配信されたIPパケットからMPDを復元することができる。マルチキャストサービスデバイスクライアント206は、受信機デバイスのメモリに受信されたセグメントを記憶することができる。ある実施形態では、マルチキャストサービスデバイスクライアント206は、アプリケーション/DASHクライアント204のようなアプリケーション/クライアントにセグメントを提供する、受信機デバイス202に対するローカルのハイパーテキスト転送プロトコル(HTTP)サーバとして動作することができる。別の実施形態では、マルチキャストサービスデバイスクライアント206は、アプリケーション/DASHクライアント204のようなアプリケーション/クライアントにセグメントを提供するために、受信機デバイス202上の別個のローカルのハイパーテキスト転送プロトコル(HTTP)サーバとともに動作することができる。アプリケーション/DASHクライアント204は、DASH対応アプリケーション、および/または、(直接、かつ/または、メディアプレーヤのような別のアプリケーションを介して)メディアを表示するためにDASHクライアントを起動するアプリケーションであり得る。アプリケーション/DASHクライアント204は、マルチキャストサービスデバイスクライアント206からMPDの位置(たとえば、Uniform Resource Locator(URL))を取得し、マルチキャストサービスデバイスクライアント206からMPDを要求し受信することができ、MPD中の利用可能性タイムラインごとに、マルチキャストサービスデバイスクライアント206からのセグメントを要求することができる。アプリケーション/DASHクライアント204は、マルチキャストサービスデバイスクライアント206から要求されたセグメントを受信することができ、セグメントのコンテンツを(直接、かつ/または、メディアプレーヤのような別のアプリケーションを介して)レンダリングすることができる。
図3は、ストリーミング経路上の様々な遅延と、eMBMS受信機デバイスのような受信機デバイスが受け得る、セグメントの利用可能性に対するそれらの遅延の経時的な影響とを示す。セグメントは、エンコーダにおいて作成され、LTEブロードキャストネットワークのようなブロードキャストネットワークを通じてブロードキャストされ得る。ブロードキャストされるセグメントは、受信機デバイスで受信され、ローカルHTTPサーバに記憶され、受信機デバイス上で実行されるDASHクライアントによる利用のために利用可能にされ得る。DASHクライアントは、セグメントと関連付けられるサービスのMPDに記載されるセグメント利用可能時間に従って、セグメントを要求することができる。セグメントは、MPDに記載された利用可能時間より遅く受信機デバイスにおいて受信されると、利用不可能であり得る。図3に示される実施形態では、受信機デバイス上のローカルのホストHTTPサーバは、利用不可能なセグメントに対する要求を保留することが可能にされ得る。このようにして、セグメントが遅れて到達したとしても、セグメントが利用可能になるまでそのセグメントに対する要求は保留され得るので、この遅れた到達に対応することができる。
ある実施形態では、生で記録された生のメディアソースは、エンコーダによってセグメント(たとえば、図3に示される0、1、2、3、4、5、6)へと分割され得る。エンコーダは、ネットワーク時間プロトコル(NTP)時間に従ってセグメントの境界を同期することができ、セグメント0、1、2、3、4、5、6は、符号化遅延に従ってエンコーダから出力され得る。ある実施形態では、エンコーダは、セグメント0、1、2、3、4、5、6の利用時間をエンコーダ出力時間としてリストする、利用可能性タイムライン(たとえば、エンコーダにより生成されるMPD)を生成することができる。エンコーダは、セグメント0、1、2、3、4、5、6およびMPDをBMSCに送信することができ、セグメント0、1、2、3、4、5、6のBMSCへの転送はさらに、セグメント0、1、2、3、4、5、6を遅らせ得る。BMSCは、セグメントを処理して、セグメントをメディアセグメントパケット(MSP)へと分割し、MSPを同期し、OTA送信のためにMSPをスケジューリングすることができる。各MSPは、ある設定されたMSP期間、たとえば1秒を割り当てられ得る。MSPは、受信機デバイスにOTAでブロードキャストされてよく、受信機デバイスにおいてセグメントに対するMSPが受信されると、セグメントはデバイスにおいて受信され得る。ある実施形態では、生のメディアソースセグメントの記録と、受信機デバイスにおけるそのセグメントに対応するMSPの受信との間の時間が、ネットワークジッタであり得る。ある実施形態では、BMSCはまた、MPDを受信機デバイスに送信することができる。セグメントに対応するMSPは受信機デバイスにおいて受信され得るが、セグメントが受信機デバイスにおいて利用可能になる前に追加の処理が必要とされ得る。追加の処理は、セグメント0、1、2、3、4、5、6をそれらのそれぞれのMSPから取り出し再構成すること、FECを適用すること、セグメントを復号することなどを含み得る。受信機デバイスにおける最悪の場合の処理遅延はさらに、セグメント0、1、2、3、4、5、6の利用可能性を遅らせ得る。最悪の場合の処理遅延に加えて、受信機の時計のずれがさらに、受信機デバイスにおけるセグメント0、1、2、3、4、5、6の利用可能時間に影響を与え得る。
ある実施形態では、セグメント(たとえば、0、1、2、3、4、5、6)が受信機に到達するとき、処理がセグメントの利用可能性を遅らせることがあり、時計のずれがアプリケーション/DASHクライアントによるセグメントに対する早い要求をもたらすことがある。図3に示される実施形態では、MPD中の告知される時間は、デバイス上で最早の利用可能な時間に設定され得る。デバイスの時計のずれ、処理遅延、および/または転送ジッタがセグメントに対する早い要求(すなわち、セグメントが利用可能になる前のセグメントに対する要求)をもたらすとき、ローカルHTTPサーバは、デバイスの時計のずれ、処理遅延、および/または転送ジッタを考慮するために、そのような要求をメモリに保持し(すなわち、要求を直ちに処理しない)、セグメントが利用可能になったときに要求されたセグメントによって応答することができる。このようにして、時計のずれおよびセグメントの処理の変動性が、考慮され得る。
ある実施形態では、利用可能性タイムラインを積極的に早くすることで、アプリケーション/DASHクライアントが開始時間においてすべての必要なセグメントを要求しないようになることがあり、それは、セグメント利用可能性タイムラインに記載されたセグメントが、アプリケーション/DASHクライアントの開始時間よりも前であった対応する利用可能時間を有し得るからである。ある実施形態では、アプリケーション/DASHクライアントは、利用可能性タイムラインごとに現在利用可能であるものとして記載されるセグメントと、より早く利用可能になったセグメント(たとえば、利用可能時間が、MPD中のタイムラインごとに現在利用可能であるセグメントの利用可能時間よりも前である、1つ、2つ、またはより多くのセグメント)の両方に対するセグメント要求を行うことが可能にされ得る。ある実施形態では、アプリケーション/DASHクライアントは、アプリケーションの始動時間において、すべての受信されたセグメントを要求することができる。ある実施形態では、要求され得る過去のセグメントの数は、遅延ジッタをセグメント期間で除算したものとして決定され得る。例として、ジッタが3秒であり、セグメント期間が1秒であり、サービスが8:00:00に開始され、インデックス100のセグメントがMPDごとに8:00:00において利用可能である場合、結果として、アプリケーション/DASHクライアントは、3つのセグメントが要求されるべきである(すなわち、1秒のセグメント期間によって除算された3秒のジッタ)と決定し、始動のときにセグメント98、99、および100に対する要求を出すことができる。
ある実施形態では、HTTPサーバが要求を保留することと、そうすることによって、HTTP要求に対する柔軟な応答時間を有することとを可能にすることは、始動の遅延、エンドツーエンドの遅延、および切替えの遅延を減らすことができるとともに、最初のセグメントが受信されるとすぐにメディアプレーヤが開始することを可能にする。最初のセグメントが受信されるとすぐにメディアプレーヤを開始することの欠点は、次のセグメントの利用可能性が遅れた場合に再バッファリング事象が起こり得ることである。加えて、遅れている時計が存在する状況で、最初のセグメントが受信されるとすぐにメディアプレーヤを開始することは、周期的な長い間隔で発生する再バッファリングをもたらし得る。
図4は、HTTP要求に対する応答を遅らせるためのある実施形態の方法400を示す。セグメントをDASHクライアントに提供するローカルホストサーバによる遅れた応答に関連して論じられるが、方法400の動作は、ファイル要求に応答する遅延に対して、任意のHTTPサーバによって実行され得る。ブロック402において、HTTPサーバがHTTP Get()要求を受信することができる。ある実施形態では、HTTP Get()要求は、DASHクライアントからのセグメントに対する要求であり得る。ブロック404において、HTTPサーバが要求に対する保留時計を始動することができる。ブロック406において、HTTPサーバが、要求されたセグメントが利用可能であるかどうかを判定することができる。セグメントが利用可能である場合(すなわち、判定ブロック406=「Yes」)、ブロック418において、HTTPサーバは、セグメントを要求者(たとえば、DASHクライアント)に送信することができ、ブロック420において保留時計をリセットすることができる。ブロック402において、HTTPサーバはブロック402に戻り、次のHTTP Get()要求を待機することができる。
セグメントが利用可能ではない場合(すなわち、判定ブロック406=「No」)、ブロック408において、HTTPサーバは、HTTP Get()要求を保留することができる。ブロック410において、HTTPサーバが、連続する次のセグメントが利用可能であるかどうかを判定することができる。ある実施形態では、MPDに記載された次のセグメントがすでに利用可能である場合、欠けたセグメントは要求されなくてよい。次のセグメントが利用可能である場合(すなわち、判定ブロック410=「Yes」)、ブロック414において、HTTPサーバは、HTTP 400シリーズの応答(たとえば、404または410)のようなエラー指示を、要求者(たとえば、DASHクライアント)に送信することができる。ブロック416において、HTTPサーバが保留時計をリセットすることができる。ブロック402において、HTTPサーバはブロック402に戻り、次のHTTP Get()要求を待機することができる。
次のセグメントが利用可能ではない場合(すなわち、判定ブロック410=「No」)、判定ブロック412において、HTTPサーバは、保留時間の閾値を超えたかどうかを判定することができる。ある実施形態では、保留時間の閾値は、遅延ジッタとセグメント期間と現在時刻とを足したものであり得る。ある実施形態では、保留時間の閾値は、HTTPサーバに対する要求されたセグメントの予想される配信時間に少なくとも一部基づき得る。さらなる実施形態では、保留時間の閾値はまた、配信遅延または処理遅延を考慮した安全マージンを含み得る。別の実施形態では、保留時間の閾値は、セグメント利用可能性タイムラインにおけるセグメントの利用可能時間であり得る。例として、保留時間の閾値は、要求されたDASHセグメントを記述する、MPDに記載された配信時間に少なくとも一部基づき得る。
保留時計上の時間が保留時間の閾値より大きいとき、保留時間の閾値を超え得る。保留時間の閾値を超える場合(すなわち、判定ブロック412=「Yes」)、ブロック414において、HTTPサーバは、HTTP 400シリーズの応答(たとえば、404または410)のようなエラー指示を、要求者(たとえば、DASHクライアント)に送信することができる。ブロック416において、HTTPサーバが保留時計をリセットすることができる。ブロック402において、HTTPサーバはブロック402に戻り、次のHTTP Get()要求を待機することができる。保留時間の閾値を超えない場合(すなわち、判定ブロック412=「No」)、ブロック406において、HTTPサーバが、セグメントが利用可能になったかどうかを判定することができる。このようにして、HTTP Get()要求は、セグメントが利用可能になるまで、次のセグメントが利用可能になるまで、または保留時間の閾値を超えるまで、保留され得る。
図5は、柔軟なサーバのための保留時間の閾値を決定するために使用され得る、ある実施形態によるセグメントバッファの経時的な状態を示す。ある実施形態では、セグメントNが受信された後で、受信機デバイスのジッタ遅延により、セグメントNがローカルHTTPサーバにおいて直ちに利用可能とならなくなり得る。セグメントNが利用可能になると、セグメント期間とMPD@TimeShiftBufferDepthを足したものが、セグメントに対して有効なバッファ時間を定義することができ、このバッファ時間の後で、セグメントはバッファから削除され得る。ある実施形態では、受信機デバイスのジッタ遅延と、セグメントに対して有効な時間とを考慮するために、利用不可能なセグメントに対するHTTP Get()要求を保留するための保留時間の閾値は、受信機デバイスのジッタ遅延とセグメント期間とMPD@TimeShiftBufferDepthとを足したものに設定され得る。
別の実施形態では、保留時間の閾値は可変であり得る。図3を参照して上で説明されたように、セグメントは、受信機デバイス上で利用可能になる前に、アプリケーション/DASHクライアントによって要求され得る。ある実施形態では、HTTPサーバは、セグメントが実際に受信される時間まで、HTTP Get()要求を保持することが可能にされ得る。このようにして、Get()要求が保留されるセグメントは、セグメントがHTTPサーバに対して利用可能になるとすぐに、要求側のアプリケーション/DASHクライアントに提供され得る。
様々な実施形態は、種々のモバイルデバイス(すなわち、受信機デバイス)のいずれでも実装されてよく、その一例が図6に示される。たとえば、モバイルデバイス600は、内部メモリ604および610に結合されたプロセッサ602を含み得る。内部メモリ604および610は、揮発性メモリまたは不揮発性メモリであってよく、また、セキュアメモリおよび/もしくは暗号化メモリ、または非セキュアメモリおよび/もしくは非暗号化メモリ、またはそれらの任意の組合せであってよい。また、プロセッサ602は、抵抗感知タッチスクリーン、静電容量感知タッチスクリーン、赤外線感知タッチスクリーンなどのタッチスクリーンディスプレイ606に結合され得る。加えて、モバイルデバイス600のディスプレイは、タッチスクリーン機能を有する必要はない。加えて、モバイルデバイス600は、プロセッサ602に結合されたワイヤレスデータリンクおよび/またはセルラー(たとえば、CDMA、TDMA、GSM(登録商標)、PCS、3G、4G、LTE、または任意の他のタイプの)送受信機のような、1つまたは複数のネットワーク送受信機616に接続され得る電磁放射を送信し受信するための1つまたは複数のアンテナ608を有し得る。モバイルデバイス600はまた、ユーザ入力を受け取るための物理ボタン612aおよび612bを含み得る。モバイルデバイス600はまた、モバイルデバイス600をオンオフするための電源ボタン618を含み得る。
様々な実施形態はまた、図7に示されるサーバ700などの、種々の市販のサーバデバイスのいずれでも実装され得る。そのようなサーバ700は通常、揮発性メモリ702と、ディスクドライブ704のような大容量の不揮発性メモリとに結合された、プロセッサ701を含む。サーバ700はまた、プロセッサ701に結合されたフロッピー(登録商標)ディスクドライブ、コンパクトディスク(CD)またはDVDディスクドライブ706を含み得る。サーバ700はまた、他の告知システムコンピュータおよびサーバに結合されたローカルエリアネットワーク、インターネット、公衆交換電話網、ならびに/またはセルラーネットワーク(たとえば、CDMA、TDMA、GSM(登録商標)、PCS、3G、4G、LTE、または任意の他のタイプのセルラーデータネットワーク)のような、通信ネットワーク707とのネットワークインターフェース接続を確立するための、プロセッサ701に結合されたネットワークアクセスポートのような1つまたは複数の送受信機703を含み得る。
プロセッサ602および701は、上で説明された様々な実施形態の機能を含む、種々の機能を実行するようにソフトウェア命令(アプリケーション)によって構成され得る、任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または1つもしくは複数の多重プロセッサチップであり得る。いくつかのデバイスでは、1つのプロセッサをワイヤレス通信機能専用とし、1つのプロセッサを他のアプリケーションの実行専用とするなど、複数のプロセッサが設けられてもよい。通常、ソフトウェアアプリケーションは、アクセスされてプロセッサ602および701にロードされる前に、内部メモリ604、610、702、または704に記憶され得る。プロセッサ602および701は、アプリケーションソフトウェア命令を記憶するのに十分な内部メモリを含み得る。多くのデバイスでは、内部メモリは、揮発性メモリ、もしくはフラッシュメモリなどの不揮発性メモリ、または両方の混合であり得る。本明細書では、メモリへの一般的な言及は、デバイスに差し込まれる内部メモリまたはリムーバブルメモリと、プロセッサ602および701自体の中のメモリとを含む、プロセッサ602および701によってアクセス可能なメモリを指す。
上述の方法の説明およびプロセスフロー図は、単に説明のための例として提供されており、様々な実施形態のステップが提示された順序で実行されなければならないことを要求または暗示することは意図されない。当業者によって諒解されるように、上記の実施形態におけるステップの順序は、任意の順序で実行され得る。「その後」、「次いで」、「次に」などの言葉は、ステップの順序を限定するものではなく、これらの言葉は単に、本方法の説明全体で読者を案内するために使用される。さらに、たとえば、冠詞「a」、「an」または「the」を使用する単数形での請求要素への任意の言及は、その要素を単数に限定するものとして解釈されるべきではない。
本明細書で開示される実施形態に関して説明される様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得る。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、およびステップが、上では全般にそれらの機能に関して説明された。そのような機能がハードウェアとして実装されるか、またはソフトウェアとして実装されるかは、具体的な適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明された機能を具体的な適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を引き起こすものと解釈されるべきではない。
本明細書で開示された態様に関して説明された様々な例示的な論理、論理ブロック、モジュール、および回路を実装するために使用されるハードウェアは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別のハードウェアコンポーネント、または、本明細書で説明された機能を実行するように設計されたそれらの任意の組合せで、実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPおよびマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。代替として、いくつかのステップまたは方法は、所与の機能に固有の回路によって実行され得る。
1つまたは複数の例示的な態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとして、非一時的コンピュータ可読媒体または非一時的プロセッサ可読媒体に記憶され得る。本明細書で開示された方法またはアルゴリズムのステップは、非一時的コンピュータ可読記憶媒体またはプロセッサ可読記憶媒体上に存在し得るプロセッサ実行可能ソフトウェアモジュールで具現化され得る。非一時的なサーバ可読のコンピュータ可読記憶媒体またはプロセッサ可読記憶媒体は、コンピュータまたはプロセッサによってアクセスされ得る任意の記憶媒体であってよい。限定ではなく例として、そのような非一時的なサーバ可読のコンピュータ可読媒体またはプロセッサ可読媒体は、RAM、ROM、EEPROM、FLASHメモリ、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形式で所望のプログラムコードを記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を含み得る。本明細書で使用される場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピーディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生するが、ディスク(disc)は、レーザーで光学的にデータを再生する。上記の組合せも、非一時的なサーバ可読のコンピュータ可読媒体およびプロセッサ可読媒体の範囲内に含まれる。加えて、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、非一時的なサーバ可読のプロセッサ可読媒体および/またはコンピュータ可読媒体上のコードおよび/または命令の、1つまたは任意の組合せ、またはそのセットとして存在し得る。
開示された実施形態の上記の説明は、任意の当業者が本発明を作成または使用することを可能にするために提供される。これらの実施形態への様々な修正が当業者には容易に明らかになり、本明細書で定義された一般原理は、本発明の趣旨および範囲を逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書で示される実施形態に限定されることは意図されず、以下の特許請求の範囲ならびに本明細書で開示される原理および新規の特徴に一致する最大の範囲を与えられるべきである。
100 セルラーネットワークシステム
102 受信機デバイス
104 基地局
106 セルラー接続
108 コンテンツプロバイダ
110 インターネット
112 BMSC
202 受信機デバイス
204 アプリケーション/DASHクライアント
206 マルチキャストサービスデバイスクライアント(MSDC)
208 モデム
400 方法
600 モバイルデバイス
602 プロセッサ
604 内部メモリ
606 タッチスクリーンディスプレイ
608 アンテナ
610 内部メモリ
612a 物理ボタン
612b 物理ボタン
616 ネットワーク送受信機
618 電源ボタン
700 サーバ
701 プロセッサ
702 揮発性メモリ
703 ネットワーク送受信機
704 ディスクドライブ
706 CDまたはDVDディスクドライブ
707 通信ネットワーク

Claims (4)

  1. ハイパーテキスト転送プロトコル(HTTP)サーバからファイルを提供するための方法であって、
    前記HTTPサーバ中のオブジェクトに対するアプリケーションからの要求を受信するステップであって、前記オブジェクトがDynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)セグメントであり、前記要求がDASHクライアントからのものである、ステップと、
    前記要求されたオブジェクトが前記HTTPサーバにおいて利用可能であるかどうかを判定するステップと、
    前記要求されたオブジェクトが利用不可能であると判定したことに応答して、前記要求を保留するステップと、
    次のオブジェクトが前記HTTPサーバにおいて利用可能であるかどうかを判定するステップと、
    前記オブジェクトが前記HTTPサーバにおいて利用可能になることなく保留時間の閾値が満たされるかどうかを判定するステップと
    前記オブジェクトが前記HTTPサーバにおいて利用可能になることなく、かつ前記次のオブジェクトが前記HTTPサーバにおいて利用可能になることなく前記保留時間の閾値が満たされると判定したことに応答して、前記要求に応答してエラー指示を送信するステップとを含む、方法。
  2. ハイパーテキスト転送プロトコル(HTTP)サーバであって、
    オブジェクトに対するアプリケーションからの要求を受信するための手段であって、前記オブジェクトがDynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)セグメントであり、前記要求がDASHクライアントからのものである、手段と、
    前記要求されたオブジェクトが利用可能であるかどうかを判定するための手段と、
    前記要求されたオブジェクトが利用不可能であると判定したことに応答して、前記要求を保留するための手段と、
    次のオブジェクトが利用可能であるかどうかを判定するための手段と、
    前記オブジェクトが利用可能になることなく保留時間の閾値が満たされるかどうかを判定するための手段と
    前記オブジェクトが利用可能になることなく、かつ前記次のオブジェクトが利用可能になることなく前記保留時間の閾値が満たされると判定したことに応答して、前記要求に応答してエラー指示を送信するための手段とを含む、HTTPサーバ。
  3. ハイパーテキスト転送プロトコル(HTTP)サーバであって、
    動作を実行するようにプロセッサ実行可能命令によって構成されたプロセッサを含み、前記動作が、
    オブジェクトに対するアプリケーションからの要求を受信するステップと、
    前記要求されたオブジェクトが利用可能であるかどうかを判定するステップと、
    前記要求されたオブジェクトが利用不可能であると判定したことに応答して、前記要求を保留するステップと、
    次のオブジェクトが利用可能であるかどうかを判定するステップと、
    前記オブジェクトが利用可能になることなく保留時間の閾値が満たされるかどうかを判定するステップと
    前記オブジェクトが利用可能になることなく、かつ前記次のオブジェクトが利用可能になることなく前記保留時間の閾値が満たされると判定したことに応答して、前記要求に応答してエラー指示を送信するステップとを含み、
    前記オブジェクトがDynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)セグメントであり、前記要求がDASHクライアントからのものであるように動作を実行するように、前記プロセッサがプロセッサ実行可能命令によって構成される、HTTPサーバ。
  4. プロセッサ実行可能命令を記憶した非一時的プロセッサ可読記憶媒体であって、前記プロセッサ実行可能命令が、ハイパーテキスト転送プロトコル(HTTP)サーバに、
    オブジェクトに対するアプリケーションからの要求を受信するステップと、
    前記要求されたオブジェクトが利用可能であるかどうかを判定するステップと、
    前記要求されたオブジェクトが利用不可能であると判定したことに応答して、前記要求を保留するステップと、
    次のオブジェクトが利用可能であるかどうかを判定するステップと、
    前記オブジェクトが利用可能になることなく保留時間の閾値が満たされるかどうかを判定するステップと
    前記オブジェクトが利用可能になることなく、かつ前記次のオブジェクトが利用可能になることなく前記保留時間の閾値が満たされると判定したことに応答して、前記要求に応答してエラー指示を送信するステップと
    を含む動作を実行させるように構成され、
    前記オブジェクトがDynamic Adaptive Streaming Over Hypertext Transfer Protocol(DASH)セグメントであり、前記要求がDASHクライアントからのものであるように、前記記憶されたプロセッサ実行可能命令が、HTTPサーバに動作を実行させるように構成される、非一時的プロセッサ可読記憶媒体。
JP2015550463A 2012-12-28 2013-12-16 ハイパーテキスト転送プロトコル(http)要求に対する柔軟な応答時間 Expired - Fee Related JP6096931B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261747188P 2012-12-28 2012-12-28
US61/747,188 2012-12-28
US13/802,718 2013-03-14
US13/802,718 US9386062B2 (en) 2012-12-28 2013-03-14 Elastic response time to hypertext transfer protocol (HTTP) requests
PCT/US2013/075441 WO2014105491A1 (en) 2012-12-28 2013-12-16 Elastic response time to hypertext transfer protocol (http) requests

Publications (3)

Publication Number Publication Date
JP2016510523A JP2016510523A (ja) 2016-04-07
JP2016510523A5 JP2016510523A5 (ja) 2016-10-06
JP6096931B2 true JP6096931B2 (ja) 2017-03-15

Family

ID=51018532

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015550463A Expired - Fee Related JP6096931B2 (ja) 2012-12-28 2013-12-16 ハイパーテキスト転送プロトコル(http)要求に対する柔軟な応答時間
JP2015550461A Pending JP2016506682A (ja) 2012-12-28 2013-12-16 デバイスのタイミング調整およびブロードキャストを通じてdashをサポートするための方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2015550461A Pending JP2016506682A (ja) 2012-12-28 2013-12-16 デバイスのタイミング調整およびブロードキャストを通じてdashをサポートするための方法

Country Status (8)

Country Link
US (3) US10735486B2 (ja)
EP (2) EP2939389B1 (ja)
JP (2) JP6096931B2 (ja)
KR (1) KR101675055B1 (ja)
CN (2) CN104904180B (ja)
ES (1) ES2709033T3 (ja)
HU (1) HUE041668T2 (ja)
WO (2) WO2014105491A1 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10735486B2 (en) 2012-12-28 2020-08-04 Qualcomm Incorporated Device timing adjustments and methods for supporting dash over broadcast
WO2014108207A1 (en) * 2013-01-11 2014-07-17 Telefonaktiebolaget L M Ericsson (Publ) Technique for operating client and server devices in a broadcast communication network
EP2954653B1 (en) * 2013-02-06 2018-11-28 Telefonaktiebolaget LM Ericsson (publ) Technique for detecting an encoder functionality issue
US9646162B2 (en) * 2013-04-10 2017-05-09 Futurewei Technologies, Inc. Dynamic adaptive streaming over hypertext transfer protocol service protection
US20150172066A1 (en) * 2013-12-13 2015-06-18 Qualcomm Incorporated Practical implementation aspects of unicast fetch for http streaming over embms
US20150199498A1 (en) * 2014-01-10 2015-07-16 Furturewei Technologies, Inc. Flexible and efficient signaling and carriage of authorization acquisition information for dynamic adaptive streaming
US11553018B2 (en) * 2014-04-08 2023-01-10 Comcast Cable Communications, Llc Dynamically switched multicast delivery
US9973345B2 (en) * 2014-09-10 2018-05-15 Qualcomm Incorporated Calculating and signaling segment availability times for segments of media data
US9756098B2 (en) * 2014-09-15 2017-09-05 Verizon Digital Media Services Inc. Multi-tenant over-the-top multicast
WO2016099354A1 (en) * 2014-12-18 2016-06-23 Telefonaktiebolaget Lm Ericsson (Publ) Request scheduling for streamed media
JP2016123097A (ja) * 2014-12-24 2016-07-07 沖電気工業株式会社 配信サーバ、配信方法、配信プログラム、及び配信システム
US20160248829A1 (en) * 2015-02-23 2016-08-25 Qualcomm Incorporated Availability Start Time Adjustment By Device For DASH Over Broadcast
EP3062474B1 (en) * 2015-02-24 2018-09-26 Alcatel-Lucent España, S.A. Method, device, computer program product and storage medium for distributing file requests in adaptive streaming systems
US10298647B2 (en) * 2015-02-26 2019-05-21 Qualcomm Incorporated Delay compensation for broadcast adaptive bitrate streaming
US20160308927A1 (en) * 2015-04-20 2016-10-20 Qualcomm Incorporated Further Device Timing Adjustments and Methods for Supporting DASH Over Broadcast
EP3089461A1 (en) * 2015-04-30 2016-11-02 Advanced Digital Broadcast S.A. A system and a method for distributing content via dynamic channel assignment in a mobile content gateway
EP3089460A1 (en) 2015-04-30 2016-11-02 Advanced Digital Broadcast S.A. A system and a method for distributing content via static channel assignment in a mobile content gateway
EP3089463A1 (en) * 2015-04-30 2016-11-02 Advanced Digital Broadcast S.A. A system and a method for a time shift function in a mobile content gateway
EP3160149A3 (en) * 2015-04-30 2017-08-02 Advanced Digital Broadcast S.A. A system and a method for distributed processing and selection of video content in a mobile content gateway
WO2016182481A1 (en) * 2015-05-08 2016-11-17 Telefonaktiebolaget Lm Ericsson (Publ) Scheduling in media stream sessions
US10291681B2 (en) * 2015-06-18 2019-05-14 Ericsson Ab Directory limit based system and method for storing media segments
CN107810625B (zh) * 2015-06-30 2020-12-08 英国电讯有限公司 通过客户端从服务器流传输媒体序列的方法和装置
US9843825B1 (en) * 2016-06-10 2017-12-12 Apple Inc. Distributed and synchronized media switching
KR101853441B1 (ko) * 2016-09-23 2018-05-02 재단법인 실감교류인체감응솔루션연구단 클라이언트 장치 및 그 로컬 클럭 스큐 보정 방법
US10601946B2 (en) 2017-02-23 2020-03-24 The Directv Group, Inc. Edge cache segment prefetching
JP7229696B2 (ja) 2018-08-02 2023-02-28 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US11405662B2 (en) 2019-03-22 2022-08-02 Comcast Cable Communications, Llc Content delivery
US11647242B2 (en) * 2019-07-30 2023-05-09 Comcast Cable Communications, Llc Methods and systems for low latency streaming
CN113365099B (zh) * 2021-05-31 2022-12-27 北京达佳互联信息技术有限公司 弹幕下发方法、接收方法、装置、电子设备及存储介质

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000052863A1 (fr) 1999-03-01 2000-09-08 Fujitsu Limited Recepteur amrc
CN1771695B (zh) 2003-05-30 2010-09-29 Lg电子株式会社 家庭网络***
US20050227657A1 (en) 2004-04-07 2005-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for increasing perceived interactivity in communications systems
US20060095573A1 (en) * 2004-11-01 2006-05-04 Microsoft Corporation Delayed HTTP response
US20060250977A1 (en) * 2005-05-04 2006-11-09 International Business Machines Corporation Method and apparatus for determining data center resource availablilty using multiple time domain segments
US7940687B2 (en) * 2005-11-16 2011-05-10 Qualcomm Incorporated Efficient partitioning of control and data fields
KR100850577B1 (ko) * 2006-01-27 2008-08-06 삼성전자주식회사 휴대단말기의 멀티데이터 처리장치 및 방법
US9178535B2 (en) * 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8090813B2 (en) * 2006-09-19 2012-01-03 Solid State Networks, Inc. Methods and apparatus for data transfer
US7706384B2 (en) * 2007-04-20 2010-04-27 Sharp Laboratories Of America, Inc. Packet scheduling with quality-aware frame dropping for video streaming
WO2009019671A1 (en) 2007-08-09 2009-02-12 Markport Limited Network resource management
CN101119385A (zh) 2007-08-10 2008-02-06 深圳市深信服电子科技有限公司 利用WebPush技术提高HTTP网络速度的方法
WO2010116241A1 (en) 2009-04-09 2010-10-14 Nokia Corporation Systems, methods and apparatuses for media file streaming
CN102124451A (zh) * 2009-05-27 2011-07-13 松下电器产业株式会社 延迟调整装置以及延迟调整方法
US20120281536A1 (en) * 2009-06-12 2012-11-08 Cygnus Broadband, Inc. Systems and methods for detection for prioritizing and scheduling packets in a communication network
US20120327779A1 (en) * 2009-06-12 2012-12-27 Cygnus Broadband, Inc. Systems and methods for congestion detection for use in prioritizing and scheduling packets in a communication network
US8146125B2 (en) 2009-07-01 2012-03-27 Spirent Communications, Inc Computerized device and method for analyzing signals in a multimedia over coax alliance (MOCA) network and similar TDM / encrypted networks
US8477950B2 (en) * 2009-08-24 2013-07-02 Novara Technology, LLC Home theater component for a virtualized home theater system
US20110096828A1 (en) 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
JP2011234341A (ja) * 2010-04-09 2011-11-17 Sony Corp 受信装置およびカメラシステム
KR101652255B1 (ko) 2010-04-26 2016-09-09 삼성전자주식회사 라이브 컨텐츠의 효과적인 재생방법
JP2011232893A (ja) 2010-04-26 2011-11-17 Canon Inc 印刷データ作成サーバ及び印刷装置及び印刷システム
US20120102184A1 (en) * 2010-10-20 2012-04-26 Sony Corporation Apparatus and method for adaptive streaming of content with user-initiated quality adjustments
CN102571686B (zh) 2010-12-09 2014-09-03 中国科学院沈阳计算技术研究所有限公司 云会议***的实现方法
US8489760B2 (en) 2011-03-31 2013-07-16 Juniper Networks, Inc. Media file storage format and adaptive delivery system
US9026671B2 (en) 2011-04-05 2015-05-05 Qualcomm Incorporated IP broadcast streaming services distribution using file delivery methods
US8819264B2 (en) * 2011-07-18 2014-08-26 Verizon Patent And Licensing Inc. Systems and methods for dynamically switching between unicast and multicast delivery of media content in a wireless network
US20130042100A1 (en) * 2011-08-09 2013-02-14 Nokia Corporation Method and apparatus for forced playback in http streaming
US9088583B2 (en) * 2011-10-31 2015-07-21 Interdigital Patent Holdings, Inc. Method and apparatus for enabling multimedia synchronization
US9042247B2 (en) 2011-12-06 2015-05-26 Wi-Lan Labs, Inc. Systems and methods for preserving application identification information on handover in a communication network
US20130182643A1 (en) * 2012-01-16 2013-07-18 Qualcomm Incorporated Method and system for transitions of broadcast dash service receptions between unicast and broadcast
KR20190097306A (ko) * 2012-01-19 2019-08-20 브이아이디 스케일, 인크. 시청 조건에 대한 적응을 지원하는 비디오 전송 방법 및 시스템
US8640174B2 (en) * 2012-03-01 2014-01-28 Motorola Mobility Llc Method for retrieving content, wireless communication device and communication system
US9445138B2 (en) * 2012-04-12 2016-09-13 Qualcomm Incorporated Broadcast content via over the top delivery
KR20160063405A (ko) 2012-04-24 2016-06-03 브이아이디 스케일, 인크. Mpeg/3gpp-dash에서의 원활한 스트림 스위칭을 위한 방법 및 장치
US8949451B2 (en) * 2012-04-27 2015-02-03 Mobitv, Inc. Combined broadcast and unicast delivery
US9246842B2 (en) * 2012-04-27 2016-01-26 Intel Corporation QoE-aware radio access network architecture for http-based video streaming
US8725799B2 (en) * 2012-06-21 2014-05-13 Google Inc. Server-side timing estimation of client-side actions
TWI610554B (zh) * 2012-07-10 2018-01-01 Vid衡器股份有限公司 無線傳輸/接收單元中內容切換/品質驅動切換的方法
US9954717B2 (en) * 2012-07-11 2018-04-24 Futurewei Technologies, Inc. Dynamic adaptive streaming over hypertext transfer protocol as hybrid multirate media description, delivery, and storage format
US20140019635A1 (en) 2012-07-13 2014-01-16 Vid Scale, Inc. Operation and architecture for dash streaming clients
US8949440B2 (en) 2012-07-19 2015-02-03 Alcatel Lucent System and method for adaptive rate determination in mobile video streaming
US9003443B2 (en) * 2012-07-31 2015-04-07 Wideorbit Inc. Systems, methods and articles to provide content in networked environment
US9125073B2 (en) 2012-08-03 2015-09-01 Intel Corporation Quality-aware adaptive streaming over hypertext transfer protocol using quality attributes in manifest file
US9712585B2 (en) * 2012-11-13 2017-07-18 Telefonaktiebolaget Lm Ericsson (Publ) Processing of multimedia data
US9843845B2 (en) * 2012-11-28 2017-12-12 Sinclair Broadcast Group, Inc. Terrestrial broadcast market exchange network platform and broadcast augmentation channels for hybrid broadcasting in the internet age
US9143543B2 (en) * 2012-11-30 2015-09-22 Google Technology Holdings LLC Method and system for multi-streaming multimedia data
US10735486B2 (en) 2012-12-28 2020-08-04 Qualcomm Incorporated Device timing adjustments and methods for supporting dash over broadcast
US9801054B2 (en) * 2013-01-17 2017-10-24 Intel IP Corporation Presence service using IMS based dash service
EP2954653B1 (en) * 2013-02-06 2018-11-28 Telefonaktiebolaget LM Ericsson (publ) Technique for detecting an encoder functionality issue
US9900166B2 (en) * 2013-04-12 2018-02-20 Qualcomm Incorporated Methods for delivery of flows of objects over broadcast/multicast enabled networks

Also Published As

Publication number Publication date
US20140189066A1 (en) 2014-07-03
EP2939397A1 (en) 2015-11-04
US20140189052A1 (en) 2014-07-03
JP2016510523A (ja) 2016-04-07
US9386062B2 (en) 2016-07-05
US20200128058A1 (en) 2020-04-23
EP2939389B1 (en) 2018-10-31
ES2709033T3 (es) 2019-04-12
CN104904180A (zh) 2015-09-09
EP2939389A1 (en) 2015-11-04
HUE041668T2 (hu) 2019-05-28
JP2016506682A (ja) 2016-03-03
US10735486B2 (en) 2020-08-04
EP2939397B1 (en) 2017-12-06
WO2014105487A1 (en) 2014-07-03
KR101675055B1 (ko) 2016-11-10
KR20150103074A (ko) 2015-09-09
CN104919780A (zh) 2015-09-16
CN104919780B (zh) 2018-04-24
WO2014105491A1 (en) 2014-07-03
CN104904180B (zh) 2017-12-12

Similar Documents

Publication Publication Date Title
JP6096931B2 (ja) ハイパーテキスト転送プロトコル(http)要求に対する柔軟な応答時間
JP2018519694A (ja) Dashオーバーブロードキャストをサポートするためのさらなるデバイスタイミング調整および方法
EP2826267B1 (en) Multicast broadcast multimedia service-assisted content distribution
US20150249845A1 (en) Live video broadcasting from a mobile device
JP2018507581A (ja) メディアコンテンツストリーミング
JP2016511557A (ja) Imsベースのdashサービスを用いるプレゼンスサービス
JP2018514098A (ja) ブロードキャストを介したdashのためのデバイスによる利用可能開始時間調整
JP6731937B2 (ja) ブロードキャスト適応ビットレートストリーミングのための遅延補正
JP2018057027A (ja) Imsベースのdashサービスにおいて、プレゼンスサーバによりプレゼンス情報を供給する方法、および、プレゼンスサーバを介してプレゼンス情報を受信するユーザ機器(ue)
US10182089B2 (en) Method and broadcast multicast service center, BM-SC, node for providing an on-request service
JP2018518851A (ja) 適応メディアストリーミングのためのマルチサービス初期化

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160816

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160816

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20160816

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170216

R150 Certificate of patent or registration of utility model

Ref document number: 6096931

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