JP5619908B2 - 符号化ビデオ・データのストリーミング - Google Patents

符号化ビデオ・データのストリーミング Download PDF

Info

Publication number
JP5619908B2
JP5619908B2 JP2012537011A JP2012537011A JP5619908B2 JP 5619908 B2 JP5619908 B2 JP 5619908B2 JP 2012537011 A JP2012537011 A JP 2012537011A JP 2012537011 A JP2012537011 A JP 2012537011A JP 5619908 B2 JP5619908 B2 JP 5619908B2
Authority
JP
Japan
Prior art keywords
presentation
video
file
request
files
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.)
Active
Application number
JP2012537011A
Other languages
English (en)
Other versions
JP2013509818A (ja
Inventor
チェン、イン
カークゼウィックズ、マルタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2013509818A publication Critical patent/JP2013509818A/ja
Application granted granted Critical
Publication of JP5619908B2 publication Critical patent/JP5619908B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本出願は、その内容全体が参照により本明細書に明確に組み込まれる、2009年10月28日に出願された米国仮出願第61/255,767号の利益を主張する。
本開示は、符号化ビデオ・データのトランスポートに関する。
デジタルビデオ機能は、デジタル・テレビジョン、デジタル・ダイレクト・ブロードキャスト・システム、ワイヤレス・ブロードキャスト・システム、携帯情報端末(PDA)、ラップトップまたはデスクトップ・コンピュータ、デジタル・カメラ、デジタル記録デバイス、デジタル・メディアプレーヤ、ビデオゲーム機、ビデオゲーム・コンソール、セルラー電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタル・ビデオ・デバイスは、MPEG−2、MPEG−4、ITU−T H.263またはITU−T H.264/MPEG−4、Part10、Advanced Video Coding(AVC)によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法などのビデオ圧縮技法を実装して、デジタルビデオ情報をより効率的に送信および受信する。
ビデオ圧縮技法では、ビデオ・シーケンスに固有の冗長性を低減または除去するために空間的予測および/または時間的予測を実行する。ブロック・ベースのビデオ・コーディングの場合、ビデオ・フレームまたはスライスがマクロブロックに区分され得る。各マクロブロックはさらに区分され得る。イントラコード化(I)フレームまたはスライス中のマクロブロックは、近傍マクロブロックに関する空間的予測を使用して符号化される。インターコード化(PまたはB)フレームまたはスライス中のマクロブロックは、同じフレームまたはスライス中の近傍マクロブロックに関する空間的予測、あるいは他の参照フレームに関する時間的予測を使用し得る。
ビデオ・データが符号化された後、ビデオ・データは送信または記憶のためにマルチプレクサによってパケット化され得る。たとえば、MPEG−2規格は、多くのビデオ符号化規格のためのトランスポート・レベルを定義する「システム」セクションを含む。MPEG−2トランスポート・レベル・システムは、MPEG−2ビデオ・エンコーダ、または異なるビデオ符号化規格に準拠する他のビデオ・エンコーダによって使用され得る。たとえば、MPEG−4規格は、MPEG−2の符号化および復号方法とは異なる符号化および復号方法を規定しているが、MPEG−4規格の技法を実装するビデオ・エンコーダは、依然としてMPEG−2トランスポート・レベル方法を利用し得る。また、Third Generation Partnership Project(3GPP)が、符号化ビデオ・データのための特定のマルチメディア・コンテナフォーマットを使用して符号化ビデオ・データをトランスポートするための技法を提供している。
概して、本開示は、たとえば、ハイパーテキスト転送プロトコル(HTTP)などのネットワーク・プロトコルを介した符号化ビデオ・データのストリーミング・トランスポートをサポートするための技法について説明する。ソース・デバイスが、符号化メディアデータの複数のプレゼンテーションを記載するメディア・プレゼンテーション記述(MPD:media presentation description)ファイルを形成し得る。各プレゼンテーションは、共通のビデオについての異なる符号化に対応する。たとえば、各プレゼンテーションは、符号化および/またはレンダリング能力、ならびに様々な平均ビットレートに関して、宛先デバイスについての異なる予想を有し得る。
ソース・デバイスは各プレゼンテーションの特性をシグナリングし、それにより、宛先デバイスが、宛先デバイスの復号およびレンダリング能力に基づいて、プレゼンテーションのうちの1つを選択することと、ネットワーク環境の変動およびプレゼンテーションの帯域幅に基づいて、異なるプレゼンテーション間で切り替えることとが可能になり得る。プレゼンテーションは、事前に符号化されるかまたはリアルタイムで符号化され、たとえば、ISOベース・メディア・ファイル・フォーマットおよびそれの拡張に準拠する(1つまたは複数の)ファイルまたはファイル・フラグメントとしてサーバに記憶され得る。宛先デバイスは、たとえば、HTTPを介して、様々な時間にプレゼンテーションのうちの1つまたは複数からデータを取り出し得る。ソース・デバイスは、宛先デバイスが、たとえば、HTTP要求に基づいて、様々なプレゼンテーションから個々のビデオ・フラグメントを取り出し得るように、各プレゼンテーション内のビデオ・フラグメントのバイト範囲および対応する時間ロケーションなどの、各プレゼンテーションのフラグメントをさらにシグナリングし得る。
一例では、符号化ビデオ・データをトランスポートするための方法が、ソース・ビデオ・デバイスが、いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、形成することと、ビデオ・データの時間セクションを指定する要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つを出力することとを含む。
別の例では、符号化ビデオ・データをトランスポートするための装置が、いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、形成することとを行うように構成された管理ユニットと、ビデオ・データの時間セクションを指定する要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つを出力するように構成されたネットワーク・インターフェースと、を含む。
別の例では、符号化ビデオ・データをトランスポートするための装置が、いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信するための手段と、いくつかのビデオ・ファイルを備えるプレゼンテーションを形成するための手段であって、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、形成するための手段と、ビデオ・データの時間セクションを指定する要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つを出力するための手段とを含む。
別の例では、コンピュータ可読記憶媒体が、実行されると、いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、形成することと、ビデオ・データの時間セクションを指定する要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つを出力することとを、符号化ビデオ・データをトランスポートするためのソース・デバイスのプロセッサに行わせる命令を備える。
さらに別の例では、符号化ビデオ・データを取り出すための方法が、クライアント・デバイスが、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、ビデオ・データがいくつかのビデオ・セグメントを備え、プレゼンテーションがいくつかのビデオ・ファイルを備え、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、取り出すことと、ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、上記要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つをソース・デバイスから受信することと、ビデオ・ファイルのうちの少なくとも1つを復号し、表示することとを含む。
別の例では、符号化ビデオ・データを取り出すための装置が、ネットワーク・インターフェースと、ネットワーク・インターフェースを介して、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、ビデオ・データがいくつかのビデオ・セグメントを備え、プレゼンテーションがいくつかのビデオ・ファイルを備え、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、取り出すことと、ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、上記要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つをソース・デバイスから受信することと、を行うように構成された制御ユニットと、ビデオ・ファイルのうちの少なくとも1つを復号するように構成されたビデオ・デコーダと、ビデオ・ファイルのうちの復号された少なくとも1つを表示するように構成されたディスプレイを備えるユーザ・インターフェースとを含む。
別の例では、符号化ビデオ・データを取り出すための装置が、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すための手段であって、ビデオ・データがいくつかのビデオ・セグメントを備え、プレゼンテーションがいくつかのビデオ・ファイルを備え、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、取り出すための手段と、ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットするための手段と、上記要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つをソース・デバイスから受信するための手段と、ビデオ・ファイルのうちの少なくとも1つを復号し、表示するための手段とを含む。
別の例では、コンピュータ可読記憶媒体が、実行されると、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、ビデオ・データがいくつかのビデオ・セグメントを備え、プレゼンテーションがいくつかのビデオ・ファイルを備え、ビデオ・ファイルの各々がビデオ・セグメントの各々に対応する、取り出すことと、ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、上記要求に応答して、要求された時間セクションのいくつかのビデオ・セグメントに対応するビデオ・ファイルのうちの少なくとも1つをソース・デバイスから受信することと、ビデオ・ファイルのうちの少なくとも1つをクライアント・デバイスのビデオ・デコーダに復号させることと、復号されたビデオ・ファイルのうちの少なくとも1つをクライアント・デバイスのユーザ・インターフェースに表示させることとを、符号化ビデオ・データを取り出すためのデバイスのプロセッサに行わせる命令を備える。
1つまたは複数の例の詳細を添付の図面および以下の説明に記載する。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
オーディオ/ビデオ(A/V)ソース・デバイスがオーディオおよびビデオ・データをA/V宛先デバイスにトランスポートする例示的なシステムを示すブロック図。 マルチプレクサの構成要素の例示的な構成を示すブロック図。 プログラム固有情報テーブルの例示的なセットを示すブロック図。 様々なプレゼンテーションのThird Generation Partnership Project(3GPP)ファイルと、対応するビデオ・セグメントとの間の整合を示す概念図。 符号化ビデオ・データをソース・デバイスから宛先デバイスにトランスポートするための例示的な方法を示すフローチャート。 例示的な3GPPファイルの要素を示すブロック図。 3GPPファイル内の時間ロケーションについてのシーク要求に応答して3GPPファイルのフラグメントを要求するための例示的な方法を示すフローチャート。
本開示の技法は、概して、たとえば、ハイパーテキスト転送プロトコル(HTTP)などのプロトコルと、HTTPのHTTPストリーミング・アプリケーションとを使用したビデオ・データのストリーミング・トランスポートをサポートすることを対象とする。概して、本開示では、HTTPへの言及は、HTTPストリーミングへの言及を含み得る。本開示は、たとえば、ビデオ・データのフラグメントがプレゼンテーション内に記憶されている場合などに、ビデオ・データのいくつかのプレゼンテーションの特性要素をシグナリングするメディア・プレゼンテーション記述(MPD)ファイルを提供する。各プレゼンテーションは、いくつかの個々のファイル、たとえば、third Generation Partnership Project(3GPP)ファイルを含み得る。概して、各プレゼンテーションは、たとえば、ビットレート、フレームレート、解像度、インターレースまたはプログレッシブ走査タイプ、符号化タイプ(たとえば、MPEG−1、MPEG−2、H.263、MPEG−4/H.264、H.265など)などの個々の特性、あるいは他の特性のセットを含み得る。
3GPPファイルの各々は、たとえば、HTTP GETおよび部分GET要求を使用して、サーバによって個別に記憶され、クライアントによって個別に取り出され得る。HTTP GETおよび部分GET要求は、http://tools.ietf.org/html/rfc2616において入手可能な、R.Fieldingら、「Hypertext Transfer Protocol - HTTP/1.1」、Network Working Group、RFC2616、1999年6月、に記載されている。本開示の技法によれば、各プレゼンテーションの3GPPファイルは、ビデオの同じセクション、すなわち、1つまたは複数のシーンの同じセットに対応するように整合され得る。その上、サーバが、同様の命名方式を使用して、各プレゼンテーションの対応する3GPPファイルを命名し得る。このようにして、HTTPクライアントは、ネットワーク状態が変化するにつれてプレゼンテーションを容易に変更し得る。たとえば、大量の帯域幅が利用可能なときは、クライアントは比較的高い品質のプレゼンテーションの3GPPファイルを取り出し得、より少ない量の帯域幅が利用可能なときは、クライアントは比較的低い品質のプレゼンテーションの3GPPファイルを取り出し得る。
本開示は、MPDファイルにおいて要約されたプレゼンテーションと、対応する3GPPファイルとの特性をシグナリングするための技法をも提供する。一例として、本開示は、たとえば、各プレゼンテーションについてのクライアント・デバイスの予想されるレンダリング能力および復号能力などの特性をサーバがそれによってシグナリングし得る、技法を提供する。このようにして、クライアント・デバイスは、クライアント・デバイスの復号およびレンダリング能力に基づいて様々なプレゼンテーション間で選択することができる。別の例として、本開示は、各プレゼンテーションについての平均ビットレートおよび最大ビットレートをシグナリングするための技法を提供する。このようにして、クライアント・デバイスは、帯域幅利用可能性を判断し、判断された帯域幅に基づいて様々なプレゼンテーション間で選択することができる。
本開示の技法によれば、サーバが、同じシーンに対応する各プレゼンテーションの3GPPファイルを示す命名規則を使用し得る。本開示は、各シーンが各プレゼンテーション中の3GPPファイルのうちの1つに対応するように、各プレゼンテーションの3GPPファイルを整合させるための技法を提供する。たとえば、サーバは、「[program]_preX_T_T+N」と同様の命名規則を使用して、時間Tから時間T+Nまで続くシーンに対応する各プレゼンテーションの3GPPファイルを命名し得、ただし、その命名規則におけるTおよびT+Nは、時間Tおよび時間T+Nの値に対応し、「[program]」はビデオの名前に対応し、「_preX」はプレゼンテーションの識別子に対応する(たとえば、プレゼンテーション2の場合は「pre2」)。したがって、各プレゼンテーションの3GPPファイルは、各プレゼンテーションについての瞬時ビットレートを導出するために同じ時間期間における3GPPファイルのファイル・サイズが使用され得るように整合され得る。
さらに、サーバは、各プレゼンテーションについての3GPPファイルの各々についての開始時間ならびに終了時間ならびに/または持続時間をシグナリングし得る。このようにして、クライアントは、サーバによってシグナリングされた3GPPファイルの開始時間および終了時間を取り出すことと、開始時間および終了時間に基づいてファイル名を自動的に生成することとによって、ファイルの名前に基づいてHTTP GETを使用して特定の3GPPファイルを取り出すことができる。さらに、サーバは、各プレゼンテーションの3GPPファイルの各々についてのバイト範囲をもシグナリングし得る。したがって、クライアントは、自動的に生成された名前と、取り出されるべき3GPPファイルのバイト範囲とに基づいて、部分GETを使用して3GPPファイルの全部または一部分を取り出し得る。クライアントは、特定の3GPPファイルのファイル・サイズを取り出すためのHTTPのHEADメソッドを使用し得る。概して、HEAD要求は、HEAD要求が向けられたURNまたはURLについての対応する本体データなしにヘッダデータを取り出す。
図1は、オーディオ/ビデオ(A/V)ソース・デバイス20がオーディオおよびビデオ・データをA/V宛先デバイス40にトランスポートする例示的なシステム10を示すブロック図である。図1のシステム10は、ビデオ通信会議システム、サーバ/クライアントシステム、放送事業者/受信機システム、ゲームシステム、またはA/Vソース・デバイス20などのソース・デバイスからA/V宛先デバイス40などの宛先デバイスにビデオ・データが送られる任意の他のシステムに対応し得る。いくつかの例では、オーディオ・エンコーダ26は、ボコーダとも呼ばれるボイスエンコーダを備え得る。
A/Vソース・デバイス20は、図1の例では、オーディオ・ソース22と、ビデオ・ソース24と、オーディオ・エンコーダ26と、ビデオ・エンコーダ28と、メディア・プレゼンテーション記述(MPD)管理ユニット30と、ネットワーク・インターフェース32とを含む。オーディオ・ソース22は、たとえば、オーディオ・エンコーダ26によって符号化されるべき、キャプチャされたオーディオ・データを表す電気信号を生成するマイクロフォンを備え得る。代替的に、オーディオ・ソース22は、前に記録されたオーディオ・データを記憶する記憶媒体、コンピュータ・シンセサイザなどのオーディオ・データ生成器、またはオーディオ・データの任意の他のソースを備え得る。ビデオ・ソース24は、ビデオ・エンコーダ28によって符号化されるべきビデオ・データを生成するビデオカメラ、前に記録されたビデオ・データで符号化された記憶媒体、コンピュータグラフィックスのためのビデオ・データ生成ユニット、またはビデオ・データの任意の他のソースを備え得る。未加工オーディオおよびビデオ・データは、アナログまたはデジタルデータを備え得る。アナログデータは、オーディオ・エンコーダ26および/またはビデオ・エンコーダ28によって符号化される前にデジタル化され得る。
オーディオ・ソース22は、通話参加者が話している間、通話参加者からオーディオ・データを取得し得、同時に、ビデオ・ソース24は、通話参加者のビデオ・データを取得し得る。他の例では、オーディオ・ソース22は、記憶されたオーディオ・データを備えるコンピュータ可読記憶媒体を備え得、ビデオ・ソース24は、記憶されたビデオ・データを備えるコンピュータ可読記憶媒体を備え得る。このようにして、本開示で説明する技法は、ライブ、ストリーミング、リアルタイムオーディオおよびビデオ・データ、ならびに/またはアーカイブされた、あらかじめ記録されたオーディオおよびビデオ・データに適用され得る。
ビデオ・フレームに対応するオーディオ・フレームは、概して、ビデオ・フレーム内に含まれている、ビデオ・ソース24によってキャプチャされたビデオ・データと同時にオーディオ・ソース22によってキャプチャされたオーディオ・データを含んでいるオーディオ・フレームである。たとえば、通話参加者が概して話すことによってオーディオ・データを生成する間、オーディオ・ソース22はオーディオ・データをキャプチャし、同時に、すなわちオーディオ・ソース22がオーディオ・データをキャプチャしている間、ビデオ・ソース24は通話参加者のビデオ・データをキャプチャする。したがって、オーディオ・フレームは、1つまたは複数の特定のビデオ・フレームに時間的に対応し得る。したがって、ビデオ・フレームに対応するオーディオ・フレームは、概して、オーディオ・データとビデオ・データとが同時にキャプチャされる状況、およびオーディオ・フレームとビデオ・フレームとが、それぞれ、同時にキャプチャされたオーディオ・データとビデオ・データとを備える状況に対応する。また、たとえば、サウンド・トラック情報、追加音響、音楽、音響効果など、オーディオ・データが別個に追加され得る。
オーディオ・エンコーダ26は、符号化オーディオ・フレームのオーディオ・データが記録された時間を表す、各符号化オーディオ・フレームにおけるタイム・スタンプを符号化し得、同様に、ビデオ・エンコーダ28は、符号化ビデオ・フレームのビデオ・データが記録された時間を表す、各符号化ビデオ・フレームにおけるタイム・スタンプを符号化し得る。そのような例では、ビデオ・フレームに対応するオーディオ・フレームは、タイム・スタンプを備えるオーディオ・フレームと同じタイム・スタンプを備えるビデオ・フレームとを備え得る。A/Vソース・デバイス20は、オーディオ・エンコーダ26および/またはビデオ・エンコーダ28がそこからタイム・スタンプを生成し得るか、あるいはオーディオ・ソース22およびビデオ・ソース24がオーディオおよびビデオ・データをそれぞれタイム・スタンプに関連付けるために使用し得る、内部クロックを含み得る。
オーディオ・ソース22は、オーディオ・データが記録された時間に対応するデータをオーディオ・エンコーダ26に送り得、ビデオ・ソース24は、ビデオ・データが記録された時間に対応するデータをビデオ・エンコーダ28に送り得る。いくつかの例では、オーディオ・エンコーダ26は、必ずしも、オーディオ・データが記録された絶対時刻を示すことなしに、符号化オーディオ・データの相対的時間順序を示すために、符号化オーディオ・データ中のシーケンス識別子を符号化し得、同様に、ビデオ・エンコーダ28も、符号化ビデオ・データの相対的時間順序を示すためにシーケンス識別子を使用し得る。同様に、いくつかの例では、シーケンス識別子は、タイム・スタンプにマッピングされるか、または場合によってはタイム・スタンプと相関し得る。
オーディオ・エンコーダ26およびビデオ・エンコーダ28は符号化データをMPD管理ユニット30に与える。概して、MPD管理ユニット30は、本開示の技法に従って、符号化オーディオ・データおよび符号化ビデオ・データに対応するMPDファイルの形態で、符号化オーディオ・データおよび符号化ビデオ・データに関する要約を記憶する。以下でより詳細に説明するように、MPDファイルはいくつかのプレゼンテーションを記述し、各プレゼンテーションは、たとえば、Third Generation Partnership Project(3GPP)ファイルとして形成された、いくつかのビデオ・ファイルを有する。MPD管理ユニット30は、各プレゼンテーションにおいて同数の3GPPファイルを作成し得、同様に位置する3GPPファイルが同じビデオ・セグメントに対応するように、各プレゼンテーションの3GPPファイルを整合させ得る。すなわち、同様に位置する3GPPファイルは同じ時間ビデオ・フラグメントに対応し得る。MPD管理ユニット30は、たとえば、3GPPファイルの持続時間など、各プレゼンテーションの3GPPファイルの特性を記述するデータをも記憶し得る。
MPD管理ユニット30は、A/V宛先デバイス40などのクライアントにビデオ・データを与えるためにネットワーク・インターフェース32と対話し得る。ネットワーク・インターフェース32は、MPD管理ユニット30によって記憶されているMPDファイルに記載されている個々の3GPPファイルを宛先デバイス40が要求することを可能にするために、HTTP(または他のネットワーク・プロトコル)を実装し得る。したがって、ネットワーク・インターフェース32は、3GPPファイルについてのHTTP GET要求、3GPPファイルの個々のバイト範囲についての部分GET要求、MPDおよび/または3GPPファイルについてのヘッダ情報を与えるためのHEAD要求、ならびに他のそのような要求に応答し得る。したがって、ネットワーク・インターフェース32は、たとえば、MPDファイルのベース名など、MPDファイルの特性、MPDファイルのプレゼンテーションの特性、および/または各プレゼンテーションに記憶された3GPPファイルの特性を示すデータを宛先デバイス40に配信し得る。MPDファイルのプレゼンテーション、MPDファイル自体、および/またはMPDファイルに対応する3GPPファイルの特性を記述するデータは、「プレゼンテーション記述データ」と呼ばれることがある。いくつかの例では、ネットワーク・インターフェース32は、代わりに、受信したパケットからアプリケーション・レイヤ・データを抽出し、次いでアプリケーション・レイヤ・パケットをMPD管理ユニット30に受け渡す、ネットワーク・インターフェース・カード(NIC)を備え得る。いくつかの例では、MPD管理ユニット30およびネットワーク・インターフェース32は機能的に統合され得る。
このようにして、ユーザは、図1の例では、ビデオ・データを取り出すために、宛先デバイス40上で実行されるウェブ・ブラウザ38アプリケーションを介して宛先デバイス40と対話し得る。ウェブ・ブラウザ38は、初めに、MPD管理ユニット30によって記憶されたプレゼンテーションのうちの1つから第1のビデオ・ファイルまたはそれのフラグメントを取り出し、次いで、第1のビデオ・ファイルが、ビデオ・デコーダ48およびビデオ出力44によってそれぞれ復号され、表示されているときに、後続のビデオ・ファイルまたはフラグメントを取り出し得る。宛先デバイス40は、たとえば、ディスプレイの形態の、ビデオ出力44、ならびにオーディオ出力42、ならびに、たとえば、キーボード、マウス、ジョイスティック、マイクロフォン、タッチ・スクリーン・ディスプレイ、スタイラス、ライトペンなどの、他の入力および/または出力デバイスを含むユーザ・インターフェース、あるいは他の入力および/または出力デバイスを含み得る。ビデオ・ファイルがオーディオ・データを含むとき、オーディオ・デコーダ46およびオーディオ出力42は、オーディオ・データをそれぞれ復号し、提示し得る。その上、ユーザは、ビデオプレゼンテーションの特定の時間ロケーションを「シーク」し得る。たとえば、ユーザが、最初から最後までビデオ・ファイル全部を見るのではなく、ビデオ・データ内の特定の時間ロケーションを要求するという意味で、ユーザはシークし得る。ウェブブラウザは、シークの時間ロケーションを含むビデオ・ファイルのうちの1つを判断することと、次いでそのビデオ・ファイルをソース・デバイス20に要求するとこととを宛先デバイス40のプロセッサまたは他の処理ユニットに行わせ得る。
いくつかの例では、宛先デバイス40内の制御ユニットがウェブ・ブラウザ38の機能を実行し得る。すなわち、制御ユニットは、ネットワーク・インターフェース36を介して要求をソース・デバイス20にサブミットすることと、MPDファイルのプレゼンテーション間で選択することと、ネットワーク接続34の利用可能な帯域幅を判断することとを行うための、ウェブ・ブラウザ38のための命令を実行し得る。ウェブ・ブラウザ38のための命令はコンピュータ可読記憶媒体に記憶され得る。制御ユニットは、さらに、本開示で説明するように、ソース・デバイス20からの個々の3GPPファイルについての要求、たとえば、HTTP GETおよび部分GET要求を形成し得る。制御ユニットは、汎用プロセッサ、および/あるいは、たとえば、ASIC、FPGAなどの1つまたは複数の専用ハードウェアユニット、あるいは他のハードウェアまたは処理ユニットまたは回路を備え得る。制御ユニットは、さらに、いくつかの例では、オーディオ・デコーダ46、ビデオ・デコーダ48のいずれかの機能、および/または宛先デバイス40に関して説明する他の機能を実行し得る。
概して、MPDファイルのプレゼンテーションは、たとえば、宛先デバイスの予想されるレンダリング能力、宛先デバイスの予想される復号能力、プレゼンテーションのビデオ・ファイルについての平均ビットレートなどの特性によって異なる。MPD管理ユニット30は、MPDファイルのプレゼンテーション・ヘッダにおいて、プレゼンテーションについての予想されるレンダリング能力、予想される復号能力、および平均ビットレートをシグナリングし得る。このようにして、宛先デバイス40は、たとえば、ビデオ出力44のレンダリング能力および/またはビデオ・デコーダ48の復号能力に基づいて、上記プレゼンテーションのうち、どのプレゼンテーションからビデオ・ファイルを取り出すべきかを判断し得る。
宛先デバイス40は、さらに、たとえば、ネットワーク接続34の、現在の帯域幅利用可能性を判断し、プレゼンテーションについての平均ビットレートに基づいてプレゼンテーションを選択し得る。すなわち、ビデオ出力44およびビデオ・デコーダ48が、MPDファイルのプレゼンテーションのうちの2つ以上についてのビデオ・ファイルをそれぞれレンダリングし、復号するための能力を有するとき、宛先デバイス40は、現在の帯域幅利用可能性に基づいてプレゼンテーションのうちの1つを選択し得る。同様に、帯域幅利用可能性が変化したとき、宛先デバイス40は、サポートされるプレゼンテーション間で動的に切り替え得る。たとえば、帯域幅が制限されるときは、宛先デバイス40は、比較的低いビットレートのビデオ・ファイルを有するプレゼンテーションから次のビデオ・ファイルを取り出し得、帯域幅が拡大するときは、宛先デバイス40は、比較的高いビットレートのビデオ・ファイルを有するプレゼンテーションから次のビデオ・ファイルを取り出し得る。
各プレゼンテーションのビデオ・ファイルを時間的に整合させることによって、プレゼンテーション間の動的切替えは、宛先デバイス40などの宛先デバイスのために簡略化され得る。すなわち、宛先デバイス40は、帯域幅状態が変化したと判断すると、ビデオ・データがすでにその間に取り出された時間期間を判断し、次いで、帯域幅状態に基づいてプレゼンテーションのうちの1つから次のビデオ・ファイルを取り出し得る。たとえば、宛先デバイス40によって取り出された最後のビデオ・ファイルが時間Tに終了し、次のファイルが持続時間Nのファイルである場合、宛先デバイス40は、プレゼンテーションの各々についてのビデオ・ファイルが時間的に整合されるので、帯域幅状態に基づいて、プレゼンテーションのいずれかから、時間Tから時間T+Nまでのビデオ・ファイルを取り出し得る。
その上、MPD管理ユニット30およびウェブ・ブラウザ38は、ビデオ・ファイルのための共通の命名規則で構成され得る。概して、各ビデオ・ファイル(たとえば、各3GPPファイル)は、MPDファイルが記憶されているユニフォーム・リソース・ロケータ(URL)と、そのURLにおけるMPDファイルのユニフォーム・リソース・ネーム(URN)と、プレゼンテーションの名前と、開始時間と、終了時間とに基づく名前を備え得る。したがって、MPD管理ユニット30とウェブ・ブラウザ38の両方は、たとえば、「[URL]/[URN]_pre[X]_[start time]_[end time]」などの命名方式を使用するように構成され得、ただし、[URL]はMPDファイルのURLに置き換えられ、[URN]はMPDファイルのURNに置き換えられ、Xはプレゼンテーションの数に置き換えられ、[start time]は、要求されている3GPPファイルの開始時間に置き換えられ、[end time]は、要求されている3GPPファイルの終了時間に置き換えられる。他の例では、その名前はプレゼンテーション内の3GPPファイルの位置に基づき得る。たとえば、3GPPファイルMの場合、3GPPファイルの名前は、「[URL]/[URN]_pre[X]_[M]」として自動的に生成され得る。ウェブ・ブラウザ38は、いくつかの例では、たとえば、上記の命名方式、ならびにファイルのバイト範囲を使用してファイルを指定することによって、ファイルについてのHTTP部分GET要求をサブミットし得る。ウェブ・ブラウザ38は、たとえば、上記の命名方式を使用して、指定されたファイルのサイズを取り出すためのHTTP HEADメソッドを利用し得る。
したがって、たとえば、URL「www.qualcomm.com」と、「program1」のURNとを有するMPDファイルの場合、10:02に開始し、10:05に終了するプレゼンテーション3の3GPPファイルを取り出すために、ウェブ・ブラウザ38は、「www.qualcomm.com/program1_pre3_10:02_10:05」についてのHTTP GET要求をサブミットし得る。さらなる例として、プレゼンテーション2がプレゼンテーション3よりも比較的高いビットレートを有し、宛先デバイス40が、利用可能な帯域幅が増加したと判断した場合、前の例の3GPPファイルを取り出した後に、ウェブ・ブラウザ38は、次に「www.qualcomm.com/program1_pre2_10:05_10:08」についてのHTTP GET要求をサブミットし得る。
概して、各3GPPファイルは単独で復号可能であり得る。各3GPPファイルは、たとえば、少なくとも1つのイントラ符号化ピクチャを含み得る。たとえば、各3GPPファイルは、1つまたは複数のピクチャ・グループ(GOP)またはスーパー・フレームを備え得、ただし、GOPまたはスーパー・フレームのための少なくとも1つのキー・フレームは、イントラモード符号化を使用して符号化される。このようにして、ウェブ・ブラウザ38は、MPDファイルのプレゼンテーションのいずれかから3GPPファイルを取り出し、同じプレゼンテーションの他の3GPPファイルに関係なく、取り出された3GPPファイルを復号し得る。たとえば、ウェブブラウザ38が、利用可能な帯域幅が増加したと判断したとき、ウェブブラウザ38は、より高い平均ビットレートを有するプレゼンテーションの時間的に前の3GPPファイルを取り出すことなしに、現在のプレゼンテーションよりも比較的高い平均ビットレートを有するプレゼンテーションからの次の3GPPファイルを要求し得る。
このようにして、ソース・デバイス20は、MPDファイルの形態のビデオ・データを宛先デバイス40などの宛先デバイスに与え得る。いくつかの例では、ソース・デバイス20はウェブサーバを備え得る。宛先デバイス40は、たとえば、HTTPを介して、データを取り出すことが可能な、たとえば、コンピュータ、またはインターネットアクセスをもつセルラー電話などのモバイルデバイスなどの、任意のデバイスを備え得る。ソース・デバイス20は、符号化ビデオ・データを宛先デバイス40にトランスポートし、符号化ビデオ・データの特性をシグナリングするために、本開示の技法を実装し得る。符号化ビデオ・データは、たとえば、MPEG−1、MPEG−2、H.263、H.264/MPEG−4、H.265、または他の符号化規格など、多種多様な規格のいずれかを使用して符号化され得る。
ITU−T H.264規格は、一例として、ルーマ成分については16×16、8×8、または4×4、およびクロマ成分については8×8など、様々なブロックサイズのイントラ予測をサポートし、ならびにルーマ成分については16×16、16×8、8×16、8×8、8×4、4×8および4×4、およびクロマ成分については対応するスケーリングされたサイズなど、様々なブロックサイズのインター予測をサポートする。本開示では、「N×(x)N」と「N×(by)N」は、垂直寸法および水平寸法に関するブロックのピクセル寸法、たとえば、16×(x)16ピクセルまたは16×(by)16ピクセルを指すために互換的に使用され得る。一般に、16×16ブロックは、垂直方向に16ピクセルを有し(y=16)、水平方向に16ピクセルを有する(x=16)。同様に、N×Nブロックは、一般に、垂直方向にNピクセルを有し、水平方向にNピクセルを有し、Nは、非負整数値を表す。ブロック中のピクセルは行と列に配置され得る。その上、ビデオ・データのブロックは、正方形である必要がなく、たとえば、N×Mピクセルを備え得、ただし、NはMに等しくない。
16×16よりも小さいブロックサイズは16×16マクロブロックのパーティションと呼ばれることがある。ビデオ・ブロックは、ピクセル領域中のピクセルデータのブロックを備え得、あるいは、たとえば、コード化ビデオ・ブロックと予測ビデオ・ブロックとのピクセル差分を表す残差ビデオ・ブロック・データへの離散コサイン変換(DCT)、整数変換、ウェーブレット変換、または概念的に同様の変換などの変換の適用後の、変換領域中の変換係数のブロックを備え得る。場合によっては、ビデオ・ブロックは、変換領域中の量子化変換係数のブロックを備え得る。
より小さいビデオ・ブロックは、より良好な解像度を与えることができ、高い詳細レベルを含むビデオ・フレームのロケーションのために使用され得る。一般に、マクロブロックおよび様々なパーティションはサブブロックと呼ばれることがあり、ビデオ・ブロックと見なされ得る。さらに、スライスは、マクロブロックおよび/またはサブブロックなどの複数のビデオ・ブロックであると見なされ得る。各スライスはビデオ・フレームの単独で復号可能なユニットであり得る。代替的に、フレーム自体が復号可能なユニットであり得るか、またはフレームの他の部分が復号可能なユニットとして定義され得る。「コード化ユニット」または「コーディング・ユニット」という用語は、フレーム全体、フレームのスライス、シーケンスとも呼ばれるピクチャグループ(GOP)など、ビデオ・フレームの単独で復号可能な任意のユニット、または適用可能なコーディング技法に従って定義される別の単独で復号可能なユニットを指し得る。
マクロブロックという用語は、16×16ピクセルを備える2次元ピクセルアレイに従ってピクチャおよび/またはビデオ・データを符号化するためのデータ構造を指す。各ピクセルはクロミナンス成分と輝度成分とを備える。したがって、マクロブロックは、各々が8×8ピクセルの2次元アレイを備える4つの輝度ブロックと、各々が16×16ピクセルの2次元アレイを備える2つのクロミナンス・ブロックと、コード化ブロック・パターン(CBP)、符号化モード(たとえば、イントラ(I)またはインター(PまたはB)符号化モード)、イントラ符号化ブロックのパーティションのパーティション・サイズ(たとえば、16×16、16×8、8×16、8×8、8×4、4×8、または4×4)、あるいはインター符号化マクロブロックのための1つまたは複数の動きベクトルなど、シンタックス情報を備えるヘッダと、を定義し得る。
ビデオ・エンコーダ28、ビデオ・デコーダ48、オーディオ・エンコーダ26、オーディオ・デコーダ46、およびMPD管理ユニット30は、それぞれ、適用可能なとき、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなどの様々な好適なエンコーダまたはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。ビデオ・エンコーダ28およびビデオ・デコーダ48の各々は1つまたは複数のエンコーダまたはデコーダ中に含められ得、そのいずれかは複合ビデオ・エンコーダ/デコーダ(CODEC)の一部として統合され得る。同様に、オーディオ・エンコーダ26およびオーディオ・デコーダ46の各々は1つまたは複数のエンコーダまたはデコーダ中に含められ得、そのいずれかは複合オーディオ・エンコーダ/デコーダ(CODEC)の一部として統合され得る。ビデオ・エンコーダ28、ビデオ・デコーダ48、オーディオ・エンコーダ26、オーディオ・デコーダ46、MPD管理ユニット30、および/またはウェブ・ブラウザ38のアプリケーションを実行するハードウェアを含む装置は、集積回路、マイクロプロセッサ、および/またはセルラー電話などのワイヤレス通信デバイスを備え得る。
図2は、MPD管理ユニット30(図1)の構成要素の例示的な構成を示すブロック図である。図2の例では、MPD管理ユニット30は、MPD作成ユニット60と、ビデオ入力インターフェース80と、オーディオ入力インターフェース82と、MPDファイル・ストレージ84と、MPD出力ユニット70とを含む。図2の例では、MPD作成ユニット60は、パラメータ・シグナリング・ユニット62と3GPPファイル管理ユニット64とを含み、MPD出力ユニット70は、3GPPファイル取出しユニット72とHTTPサーバユニット74とを含む。
ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、それぞれ符号化ビデオ・データおよび符号化オーディオ・データを受信する。ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、データが符号化されると、符号化ビデオ・データおよび符号化オーディオ・データを受信するか、または符号化ビデオ・データおよび符号化オーディオ・データをコンピュータ可読媒体から取り出し得る。符号化ビデオ・データおよび符号化オーディオ・データを受信すると、ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、MPDファイルに集約するために符号化ビデオ・データおよび符号化オーディオ・データをMPD作成ユニット60に受け渡す。
MPD作成ユニット60は、MPDファイルを作成するために符号化オーディオ・データおよび符号化ビデオ・データを受信する。MPD作成ユニット60は、多種多様な方法で、たとえば、ビデオ・データの異なるサイズ(解像度)で符号化されたビデオ・データ、様々な符号化規格に従って符号化されたビデオ・データ、様々なフレームレートおよび/またはビットレートで符号化されたビデオ・データ、あるいは他の変形体を受信し得る。MPD作成ユニット60は、MPDファイル内に記憶されるべき、様々なプレゼンテーションの各々についての符号化ビデオ・データを受信し得る。
3GPPファイル管理ユニット64は、各プレゼンテーションの3GPPファイルが時間的に整合されるように、MPDファイルの各プレゼンテーションについての個々の3GPPファイルを作成し得る。すなわち、各プレゼンテーション中の第1の3GPPファイルは、同じ持続時間と、開始時間と、終了時間とをもつ同じビデオ・フラグメントに対応する。同じ開始時間と終了時間とを有する同じビデオ・フラグメントに対応する3GPPファイルは、対応する3GPPファイルと呼ばれる。プレゼンテーションは様々なフレームレートを有し得るので、プレゼンテーションの対応する3GPPファイルは様々な数の符号化ピクチャを含み得る。同様に、符号化方法およびビットレートはプレゼンテーション間で異なり得るので、対応する3GPPファイルは異なるファイル・サイズを有し得る。
いくつかの例では、3GPPファイル管理ユニット64は、各3GPPファイルが同じ時間持続時間を有するように、各プレゼンテーションについての3GPPファイルを構築し得る。これらの例では、パラメータ・シグナリング・ユニット62は、共通の持続時間を表す1つの値を使用してMPDファイルについてのすべての3GPPファイルの持続時間をシグナリングし得る。他の例では、3GPPファイル管理ユニット64は、プレゼンテーション間の対応する3GPPファイルは同じ持続時間を有するが、あるプレゼンテーション内の3GPPファイルは個々の持続時間を有し得るように、3GPPファイルを構築し得る。そのような例では、パラメータ・シグナリング・ユニット62は、各3GPPファイルの持続時間をシグナリングし得る。パラメータ・シグナリング・ユニット62は、プレゼンテーションについての各3GPPファイルの開始時間、終了時間、および/または持続時間をもシグナリングし得る。
パラメータ・シグナリング・ユニット62は、MPDファイルと、MPDファイル内に含まれる3GPPファイルと、MPDファイルのプレゼンテーションとの他の特性をもシグナリングし得る。たとえば、パラメータ・シグナリング・ユニット62は、各プレゼンテーションについての宛先デバイスのデコーダの予想される復号能力をシグナリングし得る。復号能力は、たとえば、プレゼンテーションのビデオ・データを符号化するために使用される符号化規格などの復号方法、最小マクロブロック復号レート、最小フレーム復号レート、フレームまたはブロックバッファサイズ、および/あるいは他の予想される復号能力を含み得る。いくつかの例では、パラメータ・シグナリング・ユニット62は、プロファイルインジケータ(プロファイルIDC)値とレベルインジケータ(レベルIDC)値とを使用して、予想される復号能力をシグナリングし得る。
ビデオコーディング規格のコンテキストにおいて、「プロファイルIDC」値は、アルゴリズム、機能、またはツール、およびそれらに適用される制約のサブセットに対応し得る。たとえば、H.264規格によって定義される「プロファイルIDC」値は、H.264規格によって指定されたビットストリームシンタックス全体のサブセットを記述する。「レベルIDC」値は、たとえば、ピクチャの解像度、ビットレート、およびマクロブロック(MB)処理レートに関係するデコーダメモリおよび計算など、デコーダリソース消費の制限を記述する。
パラメータ・シグナリング・ユニット62は、各プレゼンテーションについての予想されるレンダリング能力をもシグナリングし得る。たとえば、パラメータ・シグナリング・ユニット62は、各プレゼンテーションについてのピクチャ幅、ピクチャ高さ、および/またはフレームレートをシグナリングし得る。
MPD作成ユニット30は、各プレゼンテーションについての3GPPファイル、およびMPDファイルと、プレゼンテーションと、各3GPPファイルとについてのシグナリングされた特性とともに、作成されたMPDファイルをMPDファイル・ストレージ84に記憶し得る。MPDファイル・ストレージ84は、たとえば、ハードディスク、ソリッドステートドライブ、磁気テープ、光記憶媒体などの、コンピュータ可読記憶媒体、または他の記憶媒体、あるいはそれらの組合せを備え得る。
MPD出力ユニット70は、たとえば、宛先デバイス40などの宛先デバイスからのHTTP要求を受信し、そのHTTP要求に応答し得る。図2の例では、ネットワーク・インターフェース32(図1)が、受信したネットワーク・パケットから、HTTP要求を含み得るアプリケーション・レイヤ・データを抽出し、抽出されたアプリケーション・レイヤ・データをMPD管理ユニット30に受け渡すと仮定される。MPD出力ユニット70は、概して、受信した要求が何を要求しているかを判断し、要求されたデータをMPDファイル・ストレージ84から取り出し、要求されたデータを要求元デバイス、たとえば、宛先デバイス40に与える。
HTTPサーバユニット74は、この例では、GET、部分GET、およびHEAD要求などの、HTTP要求を受信し、解釈するために、HTTPを実装する。本開示では、例示のためにHTTPの例について説明するが、本開示で説明する技法とともに他のネットワークプロトコルも使用され得る。
HTTPサーバユニット74は、受信したHTTP要求によって要求されたデータを判断するためにHTTP要求を解釈し得る。その要求は、たとえば、特定の3GPPファイルまたは特定の3GPPファイルの一部分を指定するか、MPDファイル、MPDファイルのプレゼンテーション、および/またはプレゼンテーションの3GPPファイルの特性を記述するヘッダデータを指定するか、あるいはMPDの他のデータを指定し得る。次いで、HTTPサーバユニット74は、要求されたデータの指示を3GPPファイル取出しユニット72に受け渡し得る。3GPPファイル取出しユニット72は、要求されたデータをMPDファイル・ストレージ84から取り出し、取り出されたデータをHTTPサーバユニット74に返信し得、HTTPサーバユニット74は、そのデータを1つまたは複数のHTTPパケットにパッケージングし、それらのパケットをネットワーク・インターフェース32に送り得る。次いで、ネットワーク・インターフェース32は、HTTPパケットをカプセル化し、それらのパケットを、たとえば、宛先デバイス40に出力し得る。
パラメータ・シグナリング・ユニット62が、MPDファイルについての3GPPファイルの開始時間および持続時間をシグナリングすると、宛先デバイス40などの宛先デバイスは、MPDファイルの様々なプレゼンテーションの互いに対応する3GPPファイルを判断し得る。たとえば、HTTPサーバユニット74は、MPDファイル、MPDファイルの1つまたは複数のプレゼンテーション、および/またはMPDファイルのプレゼンテーションの1つまたは複数の3GPPファイルの特性を記述するデータで、HTTP HEAD要求に応答し得る。また、宛先デバイス40は、たとえば、3GPPファイルがそれに対応するビデオ・セグメントの時間持続時間でファイル・サイズを除算することによって、各プレゼンテーションについての瞬時ビットレートを導出するために、対応する3GPPファイルのファイル・サイズを取り出し得る。
HTTPを介したストリーミングにおける帯域幅適応は次のように実装され得る。特定の時間Tに、宛先デバイス40は、所望のビットレートに最も近いが所望のビットレートよりも小さいビットレートをもつストリーム(たとえば、プレゼンテーション)に切り替え得る。時間Tを現在のプレゼンテーションの現在の3GPPファイルにマッピングすることによって、プレゼンテーションの瞬時ビットレートが計算され得る。そうするために、各3GPPファイルが同じ時間長さdeltaTを有すると仮定すると、宛先デバイスは、3GPPファイルの識別子MをM=T/deltaTとして計算し得る。次いで、宛先デバイス40は、3GPPファイルのファイル名を生成し、3GPPファイルの長さをuiFileLengthとして取り出し得る。
宛先デバイス40は、MPDファイルから3GPPファイルの時間持続時間をも取り出し得る。この時間持続時間は、この例では秒で記述されると仮定される、指定されたuiDurationであり得る。次いで、宛先デバイス40は、瞬時ビットレートをビットレート=8.0*uiFileLength/uiDuration/100として計算し得、その結果、kbpsの単位を有するビットレートの値が生じる。同じシーンの各プレゼンテーションについてのあらゆるビットレート値を検査することによって、所望のビットレートに最も近いが所望のビットレートよりも小さい値。その場合、対応するプレゼンテーションは、宛先デバイス40がそれに切り替わるべきであるターゲットプレゼンテーションであることがある。すなわち、宛先デバイス40は、ターゲット・プレゼンテーションから3GPPファイルを取り出し始め得る。
さらに、HTTPサーバユニット74は、「[URN]_pre[X]_[start time]_[end time]」などの特定の命名方式に基づいて3GPPファイルを認識するように構成され得、ただし、[URN]はMPDファイルのURNに置き換えられ、Xはプレゼンテーションの数に置き換えられ、[start time]は、要求されている3GPPファイルの開始時間に置き換えられ、[end time]は、要求されている3GPPファイルの終了時間に置き換えられる。したがって、HTTPサーバユニット74は、この命名方式を使用して3GPPファイルを識別する要求に応答して、[start time]の開始時間および[end time]の終了時間を有するプレゼンテーション_pre[X]から[URN]によって識別されたMPDファイルに対応する3GPPファイルを取り出すための指示を3GPPファイル取出しユニット72に送り得る。同様に、3GPPファイル取出しユニット72は、この要求された3GPPファイルを取り出し得る。宛先デバイス40は、3GPPファイルの開始時間および終了時間、ならびに3GPPファイルをそこから取り出すべきプレゼンテーションに基づいて、上記要求中に含めるための3GPPファイルの名前を自動的に生成し得る。
いくつかの例では、HTTPサーバユニット74は、上記の命名方式に従って識別されたファイルのバイト範囲を指定するHTTP部分GET要求を受信し得る。HTTPサーバユニット74は、そのファイルのバイト範囲の指示を3GPPファイル取出しユニット72に与え得、3GPPファイル取出しユニット72は、要求されたバイト範囲に対応するファイルのデータのみを取り出し、取り出されたデータをHTTPサーバユニット74に与え得る。HTTPサーバユニット74は、同様に、このデータをカプセル化し、そのデータをネットワーク・インターフェース32に送り得、ネットワーク・インターフェース32は、さらにそのデータをカプセル化し、そのデータを接続34を介して送信し得る。
図2の例では、MPD管理ユニットが、MPD作成ユニット60とMPD出力ユニット70の両方を含むものとして示されているが、他の例では、別個のデバイスが、MPD作成ユニット60とMPD出力ユニット70とによる機能を実行するように構成され得る。たとえば、第1のデバイスは、符号化ビデオ・データをMPDファイルの形態でカプセル化することと、MPDファイルのパラメータをシグナリングすることとを行うように構成され得、第2のデバイスは、ウェブサーバとして、第1のデバイスによって作成されたMPDファイルへのアクセスを与えるように構成され得る。同様に、ソース・デバイス20とは別個の符号化デバイスが、未加工ビデオ・データを符号化し、符号化されたビデオ・データをソース・デバイス20のMPD管理ユニット30に送り得る。概して、ソース・デバイス20による機能のいずれも、共通のまたは別個のデバイスおよび/またはデバイスのユニット中に含まれ得る。MPDファイル・ストレージ84は、いくつかの例では、たとえば、外部ハードドライブまたは外部ファイルサーバなどの、外部記憶デバイスに対応し得る。
図3は、例示的なMPDファイル90内に記憶されたデータを示すブロック図である。パラメータ・シグナリング・ユニット62は、たとえば、MPDが記憶されたユニフォーム・リソース・ロケータ(URL)を表すURL値92(たとえば、「www.qualcomm.com/media」)、MPDファイル90についてのビデオ・データの時間持続時間を表す持続時間値94、およびMPDファイル90の名前に対応するベース・ユニフォーム・リソースネーム(URN)値96、たとえば、「program1」など、MPDファイル90についての情報をシグナリングし得る。MPDファイル90は、プレゼンテーション100Aの例と同様のいくつかのプレゼンテーションを含む。MPDファイル90のプレゼンテーション100Aの例では、パラメータ・シグナリング・ユニット62は、プレゼンテーション識別子102Aと、宛先デバイスがプレゼンテーション100Aを参照するために使用し得る増分URN104A(たとえば、「_preX」)と、たとえば、プロファイルIDC値106AおよびレベルIDC値108Aを含む、予想される復号能力値と、たとえば、フレームレート値110A、ピクチャ幅値112A、および/またはピクチャ高さ値114Aを含む、予想されるレンダリング能力値とをシグナリングし得る。
パラメータ・シグナリング・ユニット62は、プレゼンテーション100Aなどのプレゼンテーションについてのタイミング情報をもシグナリングし得る。タイミング情報属性116Aは、たとえば、(各プレゼンテーションについて等しいはずである)プレゼンテーション中のエントリの数、3GPPファイル識別子118Aに対応する3GPPファイルの持続時間、および同じ持続時間を有する3GPPファイルの数を含み得る。いくつかの例では、パラメータ・シグナリング・ユニット62は、ただ1つのプレゼンテーション(たとえば、プレゼンテーション100A)についてこのデータをシグナリングし得るが、そのデータは、他のプレゼンテーションの各々について同じであると推定され得る。以下の擬似コードは、プレゼンテーションのタイミング特性をシグナリングするために使用され得るデータ構造の一部分を表し得る。
Figure 0005619908
例示的な擬似コードでは、「number_entry」は、同じプレゼンテーションについての3GPPファイルの連続グループの数を表す。パラメータ・シグナリング・ユニット62は、ムービー・フラグメントのすべての持続時間が同じであるとき、number_entry値を1に設定し得る。値「deltaT」は、3GPPファイルの連続グループのi番目のエントリにおける3GPPファイルの持続時間を表す。値「numFileWithSameDuration」は、i番目のエントリにおける連続3gpファイルの数を表す。パラメータ・シグナリング・ユニット62は、プレゼンテーション中のすべての3GPPファイルが同じ持続時間deltaTを有することを示すために、「numFileWithSameDuration」の値を0に等しく設定し得る。ライブストリーミングに対応する例では、パラメータ・シグナリング・ユニット62は、あらゆる3GPPファイルが同じ持続時間を有することを示すために、「number_entry」値を1に設定し得る。
プレゼンテーション100Aは、3GPPファイル管理ユニット64によって構築された3GPPファイルに対応する、いくつかの3GPPファイル識別子118Aをも含む。MPDファイル90のプレゼンテーション100の各々は、時間的に整合され得る同数の3GPPファイルを含み得る。
このシグナリングされたデータを使用して、宛先デバイス40は、HTTP GETおよび部分GET要求をサブミットするために3GPPファイルの名前を自動的に生成し得る。すなわち、宛先デバイス40は、3GPPファイルのURNを自動的に生成し得る。たとえば、MPDファイル90のベースURN96が「program1」であり、プレゼンテーション100Aのプレゼンテーション識別子102Aが「_pre2」であると仮定すると、3GPPファイル識別子118Aに対応する3GPPファイルのURNの共通部分は「program1_pre2」である。この例では、プレゼンテーション100A中の3GPPファイル識別子118AのM番目の3GPPファイル識別子の場合、宛先デバイス40は「program1_pre2_M」についてのHTTP GET要求をサブミットし得る。たとえば、45番目の3GPPファイルを取り出すために、宛先デバイス40は、「program1_pre2_45.3gp」についてのHTTP GET要求をサブミットし得る。代替的に、宛先デバイス40は、「program1_pre2_Mstart_Mend」についてのHTTP GET要求をサブミットし得、ただし、Mstartは、3GPPファイル識別子118Aに対応する3GPPファイルのM番目の3GPPファイルの開始時間に対応し、Mendは、3GPPファイル識別子118Aに対応する3GPPファイルのM番目の3GPPファイルの終了時間に対応する。
また、宛先デバイス40などのHTTPクライアントが、プレゼンテーション100Aなどのプレゼンテーションの時間Tをシークし得る。シーク時間Tに対応する3GPPファイル識別子118Aに対応する3GPPファイルのM番目の3GPPファイルを取り出すために、宛先デバイス40は、MをM=T/deltaTとして計算し得、ただし、deltaTは、上記で説明したように、3GPPファイルの各々が同じ持続時間を有すると仮定すると、タイミング情報属性116A内でシグナリングされ得る。一方、3GPPファイルが同じ持続時間を有しない場合、宛先デバイス40は、3GPPファイル識別子118Aに対応する3GPPファイルのうち、どの3GPPファイルを取り出すべきかを判断するために、3GPPファイルの各々についての持続時間を取り出し得る。Mを計算した後に、宛先デバイス40は、3GPPファイル識別子118Aに対応する3GPPファイルのM番目の3GPPファイルを取り出し得る。
プレゼンテーション100の各々についての3GPPファイルが時間的に整合されたとき、宛先デバイス40は、上記の例では、プレゼンテーションのいずれかから3GPPファイルを取り出すために「_pre2」の代わりにプレゼンテーション100のいずれか1つについての識別子を使用し得る。一例として、MPDファイル90が5つのプレゼンテーションを有し、宛先デバイス40がプレゼンテーション2、3、または4のいずれかを復号し、レンダリングすることが可能であると考える。さらに、プレゼンテーション2が比較的低い品質(および、したがって低い平均ビットレート)を有し、プレゼンテーション3が、より高い品質およびより高い平均ビットレートを有し、プレゼンテーション4が、さらにより高い品質およびさらにより高い平均ビットレートを有すると仮定する。初めに、宛先デバイス40は、利用可能な帯域幅が比較的低いと判断し、したがって、たとえば、「program1_pre2_1.3gp」についてのHTTP GET要求を使用して、プレゼンテーション2から3GPPファイル「1」を取り出し得る。次いで、宛先デバイス40は、利用可能な帯域幅が増加したと判断し、したがって、「program1_pre3_2.3gp」についてのHTTP GET要求を使用して、次の3GPPファイルを取り出し得る。次いで、宛先デバイス40は、利用可能な帯域幅がなお一層増加したと判断し、したがって、「program1_pre4_3.3gp」についてのHTTP GET要求を使用して、次の3GPPファイルを取り出し得る。
図4は、様々なプレゼンテーション134、140の3GPPファイル138、144と、ビデオ146のビデオ・セグメント130との間の整合を示す概念図である。ビデオ146はビデオ・セグメント130A〜130N(ビデオ・セグメント130)を含む。図4の例は、この例ではプレゼンテーション134とプレゼンテーション140とを示しており、プレゼンテーション134とプレゼンテーション140との間の省略符号によって示されるように、追加のプレゼンテーションを含み得る。プレゼンテーション134は、ヘッダデータ136と3GPPファイル138A〜138N(3GPPファイル138)とを含む。プレゼンテーション140は、ヘッダデータ142と3GPPファイル144A〜144N(3GPPファイル144)とを含む。
3GPPファイル138は、3GPPファイル144とはサイズが異なるが、3GPPファイル138および3GPPファイル144は、ビデオ146のビデオ・セグメント130と時間的に整合される。図4の例では、3GPPファイル138Aおよび3GPPファイル144Aはビデオ・セグメント130Aに対応し、3GPPファイル138Bおよび3GPPファイル144Bはビデオ・セグメント130Bに対応し、3GPPファイル138Cおよび3GPPファイル144Cはビデオ・セグメント130Cに対応し、3GPPファイル138Nおよび3GPPファイル144Nはビデオ・セグメント130Nに対応する。すなわち、3GPPファイル138Aおよび3GPPファイル144Aは、たとえば、潜在的に別様に符号化および/またはレンダリングされるが、概して、ビデオ・セグメント130Aと同じシーンに対応する、ビデオ・データを含む。
ヘッダデータ136、142は、概して、それぞれプレゼンテーション134、140を記述するデータを含み得る。ヘッダデータ136、142は、図3のプレゼンテーション識別子102A、増分URN104A、プロファイルIDC値106A、レベルIDC値108A、フレームレート値110A、ピクチャ幅値112A、ピクチャ高さ値114A、およびタイミング情報属性116Aと同様のデータを含み得る。プレゼンテーション134〜140の3GPPファイル138、144を記述するMPDファイルは、MPDファイルと、プレゼンテーション134、140と、3GPPファイル138、144との特性を記述するヘッダデータ(図示せず)をも含み得る。
このようにして、宛先デバイス40(図1)は、宛先デバイス40が3GPPファイル138および/または3GPPファイル144のビデオ・データを復号し、表示することが可能であるかどうかを判断するために、ヘッダデータ136、142を取り出し得る。宛先デバイス40が、3GPPファイル138と3GPPファイル144の両方からのデータを復号し、レンダリングすることが可能であると仮定すると、宛先デバイス40は、帯域幅利用可能性に基づいてプレゼンテーション134とプレゼンテーション140のいずれかを選択し得る。たとえば、プレゼンテーション134がプレゼンテーション140よりも低い平均ビットレートを有すると仮定すると、宛先デバイス40は、帯域幅利用可能性が比較的低いとき、初めにプレゼンテーション134から3GPPファイル138Aを取り出し得る。次いで、宛先デバイス40が、帯域幅利用可能性が増加したと判断すると仮定すると、宛先デバイス40は、次に3GPPファイル144Bを取り出し得る。3GPPファイル138Aと3GPPファイル144Aとが時間的に整合されるので、宛先デバイス40は、3GPPファイル144Bの符号化ビデオ・データをシームレスに復号し、レンダリングし得、その結果、宛先デバイス40のユーザは、潜在的に品質が変動するとしても、ビデオ・セグメント130Aと、その直後にくるビデオ・セグメント130Bとを参照することが可能となる。
図5は、符号化ビデオ・データをソース・デバイスから宛先デバイスにトランスポートするための例示的な方法を示すフローチャートである。例として、図5の方法についてソース・デバイス20および宛先デバイス40に関して説明するが、他のデバイスが図5の方法を実行するように構成され得ることを理解されたい。
図5の例では、ソース・デバイス20は、ビデオの様々なビデオ・セグメントに対応する符号化ビデオ・データを受信する。ソース・デバイス20は、符号化ビデオ・データをMPDファイルにカプセル化する(180)。たとえば、ソース・デバイス20は、図4に示すように、共通のビデオ・セグメントに対応する多種多様なプレゼンテーションの符号化ビデオ・フレームを判断し、そのビデオ・フレームを様々なプレゼンテーションの1つまたは複数のそれぞれの3GPPファイルにカプセル化し得る。ソース・デバイス20はまた、MPDファイル、プレゼンテーション、および/または3GPPファイルのヘッダ部分において、MPDファイル、プレゼンテーション、および3GPPファイルの特性をシグナリングする(182)。それらの特性は、図3に示す例示的な特性に対応し得る。
宛先デバイス40のユーザは、初めに、たとえば、ウェブブラウザ38(図1)を使用して、ウェブページ上のリンクから、またはウェブページの埋込みビデオから、MPDファイルを取り出し得る。ユーザがビデオを閲覧することを要求した後、宛先デバイス40はMPDファイルの特性を要求する(184)。たとえば、宛先デバイス40は、特定のMPDファイルについてHTTP HEAD要求をソース・デバイス20に発行し得る。それに応答して、ソース・デバイス20は、MPDファイルの特性を示すデータを与える(186)。このデータは、たとえば、MPDファイルについてのプレゼンテーションの数、宛先デバイス40がそれぞれのプレゼンテーションの3GPPファイルを復号し、レンダリングすることが可能であると予想される、各プレゼンテーションについての復号能力およびレンダリング能力、各プレゼンテーションについての平均ビットレート、プレゼンテーションについての3GPPファイルの持続時間(3GPPファイルの各々が同じ持続時間を有する場合)、プレゼンテーションのうちの1つまたは複数についての3GPPファイルの各々についての持続時間(3GPPファイルが、プレゼンテーション内で異なる持続時間を有することができるが、異なるプレゼンテーション間で時間的に整合される場合)、各プレゼンテーションの増分ユニフォーム・リソースネーム、またはMPDファイルの他の特性を示し得る。
宛先デバイス40は、予想される復号およびレンダリング能力を分析して、上記プレゼンテーションのうち、どのプレゼンテーションが宛先デバイス40によって復号され、レンダリングされ得るかを判断する(188)。たとえば、宛先デバイス40は、受信したMPDファイル特性において予想される復号能力によって示されるプロファイルIDC値およびレベルIDC値をビデオ・デコーダ48が満たすかどうかを判断し得る。宛先デバイス40はまた、予想されるレンダリング能力値によって示されるフレームレートでビデオ出力44がビデオ・データを表示することが可能であるかどうかを判断し、予想されるレンダリング能力値のピクチャ高さおよび/またはピクチャ幅値にビデオ出力44のサイズが一致するかどうかを判断し得る。いくつかの例では、ビデオ・デコーダ48および/またはビデオ出力44は、ビデオ出力44のサイズ内に適切に収まるように、復号されたピクチャをアップサンプリングまたはダウンサンプリングし得る。同様に、ビデオ・デコーダ48および/またはビデオ出力44は、ビデオ出力44のリフレッシュ速度に一致するように、復号されたビデオ・データのフレームを補間またはデシメート(またはスキップ)し得る。宛先デバイス40は、MPDファイルのどのプレゼンテーションがローカルコンピュータ可読記憶媒体、たとえば、宛先デバイス40のランダムアクセスメモリ(RAM)において復号され、レンダリングされ得るかについての指示を記録し得る。
次いで、宛先デバイス40は、それ自体とソース・デバイス20との間のネットワークの帯域幅の相対量を判断する(190)。宛先デバイス40は、概して、利用可能である帯域幅の量を判断するために、利用可能な帯域幅を推定するための任意の知られている技法を使用し得る。たとえば、宛先デバイス40は、追加または代替として、(たとえば、インターネット制御メッセージ・プロトコル(ICMP)ピング要求をソース・デバイス20に発行することによって)往復遅延を推定するか、(たとえば、伝送制御プロトコル(TCP)統計に従って、損失または破損したパケットを分析することによって)平均パケット破損またはパケット損失を推定するか、あるいは他のネットワーク・パフォーマンス・メトリックを推定し得る。
次いで、宛先デバイス40は、上記プレゼンテーションのうち、3GPPファイルをそこから取り出し始めるべきプレゼンテーションを選択する(192)。宛先デバイス40は、上記プレゼンテーションのうち、予想される復号能力をビデオ・デコーダ48が満たし、予想されるレンダリング能力をビデオ出力44が満たす、プレゼンテーションを選択し得る。宛先デバイス40が2つ以上のプレゼンテーションの符号化ビデオ・データを復号し、レンダリングすることが可能であるとき、宛先デバイス40は、プレゼンテーションの平均ビットレートを互いに比較することによって、帯域幅の判断された量に基づいて、これらの潜在的なプレゼンテーションの中から選択し得る。宛先デバイス40は、宛先デバイス40が、利用可能な帯域幅が低いときは比較的低い平均ビットレートを有するプレゼンテーションを選択するが、利用可能な帯域幅が高いときは比較的高い平均ビットレートを有するプレゼンテーションを選択するように、平均ビットレートを利用可能な帯域幅に確実に関係づける機能で構成され得る。
プレゼンテーションを選択した後に、宛先デバイス40はプレゼンテーションからの3GPPファイルを要求する(194)。宛先デバイス40は、第1の3GPPファイル、またはシークされた時間(すなわち、ユーザがビデオ・データ内でシークすることを要求した位置に対応する時間ロケーション)を含む3GPPファイルを選択し得る。3GPPファイルを要求するために、宛先デバイスは、ソース・デバイス20のURLと、MPDファイルのURNと、プレゼンテーション識別子と、3GPPファイル識別子とを指定するHTTP GET要求を構築し得る。3GPPファイル識別子は、3GPPファイルの数字識別子に対応するか、あるいは開始時間および/または終了時間のうちの少なくとも1つを含み得る。いくつかの例では、宛先デバイス40は、たとえば、ユーザがシークする時間を含む3GPPファイルが比較的長い(たとえば、60秒近く)とき、部分GET要求を構築し得る。
HTTP GETまたは部分GET要求を受信した後に、ソース・デバイス20は、要求された3GPPファイル(または要求された3GPPファイルの部分)を取り出し、送る(196)。ソース・デバイス20は、1つまたは複数のHTTPパケットにおいて3GPPファイルを宛先デバイス40に送り得る。HTTPパケットの各々は、たとえば、TCP/IPに従って、さらにカプセル化され得る。要求された3GPPファイルを受信し、再び集約した後に、宛先デバイス40は、3GPPファイルを復号し、表示する(198)。すなわち、宛先デバイス40のウェブ・ブラウザ38は、3GPPファイルを復号のためにビデオ・デコーダ48に送り得、ビデオ・デコーダ48は、復号されたビデオ・データを表示のためにビデオ出力44に送り得る。
次いで、宛先デバイス40は、復号され表示されたビデオ・ファイルがビデオの最後の3GPPファイルであったかどうかを判断する(200)。宛先デバイス40は、ビデオの終了に達したとき、またはユーザがビデオを見るのを止めることを選択したとき、その3GPPファイルが最後であったと判断し得る。復号され表示されたビデオ・ファイルが最後のビデオ・ファイルでなかった場合(200の「NO」分岐)、宛先デバイス40は、利用可能な帯域幅を再評価し(190)、帯域幅の新たに判断された量に基づいてプレゼンテーションを選択し(192)、選択されたプレゼンテーションからの次の3GPPファイルを要求する(194)。一方、復号され表示されたビデオ・ファイルが最後のビデオ・ファイルであった場合(200の「YES」分岐)、本方法は終了し得る。
図6は、例示的な3GPPファイル220の要素を示すブロック図である。宛先デバイス40は、3GPPファイル220内の要求された時間をシークするために3GPPファイル220からのデータを使用し得る。概して、3GPPファイルは、たとえば、2秒から60秒の間の、さらにはより長いまたはより短い、任意の時間の長さに対応するビデオ・データを含み得る。3GPPファイルの時間の長さが比較的短い(たとえば、2秒に近い)とき、宛先デバイス40は、シーク時間、すなわち、たとえば、ユーザによって要求されるように、ビデオ・データを表示し始めるべきビデオ・データの時間を含む3GPPファイル全体を取り出すように構成され得る。一方、3GPPファイルの時間の長さがより長い(たとえば、60秒により近い)とき、宛先デバイス40は、たとえば、HTTP部分GET要求を使用することによって、復号および表示のためにシーク時間に近い3GPPファイルの一部分を取り出すように構成され得る。
3GPPファイル220は、ムービー(MOOV)ボックス222とムービー・フラグメント・ランダムアクセス(MFRA)ボックス230とを含む。MOOVボックス222は、概して符号化ビデオ・データを含み、MFRAボックス230は、MOOVボックス222内のデータのランダムアクセスを支援するための記述データを含む。図6の例では、MOOVボックス222は、ファイル全体についてのメタデータ224と、場合によってはビデオ・フラグメント226A〜226C(ビデオ・フラグメント226)とを含み、MFRAボックスは、フラグメント・シグナリングデータ234を含むトラック・フラグメント・ランダムアクセス(TFRA)ボックス232と、MFRAサイズ値238を含むムービー・フラグメント・ランダムアクセス・オフセット(MFRO)ボックス236とを含む。
MFRAサイズ値238は、MFRAボックス230の長さをバイトで記述する。図6の例では、3GPPファイル220はNバイトを有する。宛先デバイス40は、3GPPファイル220の長さ、たとえば、この例ではNの値を判断するために、3GPPファイル220についてのHTTP HEAD要求をサブミットし得る。概して、MFROボックス236は、3GPPファイル220の最後の4バイトを占有する。したがって、MFRAボックス230の長さを判断するために、宛先デバイス40などのクライアント・デバイスは、たとえば、[N−4]からNまでのバイト範囲を指定するHTTP部分GET要求を使用して、3GPPファイル220の最後の4バイトを取り出し得る。MFROボックス236がMFRAサイズ値238を含むので、宛先デバイス40は、MFROボックス236を取り出した後にMFRAボックス230の長さを判断し得る。
MFRAサイズ値238を使用してMFRAボックス230の長さを判断した後に、宛先デバイス40は、MFRAボックス230の残りの部分を取り出し得る。たとえば、宛先デバイス40は、[N−MFRAサイズ]から[N−4]までのバイト範囲を指定する、3GPPファイル220についてのHTTP部分getを発行し得る。図6に示すように、この部分は、フラグメント・シグナリング234を含むTFRAボックス232を含む。フラグメント・シグナリング234は、たとえば、ビデオ・フラグメント226の時間ロケーションを指定し得る。ヘッダデータ224。
宛先デバイス40は、シーク要求を満たすために、ビデオ・フラグメント226のうち、どのビデオ・フラグメントを取り出すべきかを判断するために、フラグメント・シグナリング234を使用し得る。すなわち、宛先デバイス40は、ビデオ・フラグメント226のうち、どのビデオ・フラグメントが、シーク要求において指定された時間を含むかを判断し得る。宛先デバイス40は、ビデオ・フラグメント226の各々についてのバイト範囲を判断するためにヘッダデータ224を取り出し得る。フラグメント・シグナリング234に基づいて、ビデオ・フラグメント226のうち、どのビデオ・フラグメントが、シーク要求において指定された時間を含むかを判断した後に、宛先デバイス40は、ビデオ・フラグメント226のうち、シーク要求において指定された時間を含むビデオ・フラグメント、ならびに後続のビデオ・フラグメント226の各々を取り出し得る。
いくつかの例では、宛先デバイス40は、ビデオ・フラグメント226のうち、シーク要求において指定された時間を含むビデオ・フラグメントについての第1の部分GET要求をサブミットし、受信時にこのビデオ・フラグメントを復号および表示し始め、次いで、ビデオ・フラグメント226のうちの後続のビデオ・フラグメントを取り出すための1つまたは複数の追加の部分GET要求をサブミットし得る。他の例では、宛先デバイス40は、たとえば、ビデオ・フラグメント226のうち、シーク要求において指定された時間を含むビデオ・フラグメントの開始から[N−MFRAサイズ]までに対応するバイト範囲を指定することによって、ビデオ・フラグメント226のうちの上記ビデオ・フラグメントと、ビデオ・フラグメント226のうちの後続のビデオ・フラグメントの各々とを取り出すための、1つの部分GET要求をサブミットし得る。
図7は、3GPPファイル内の時間についてのシーク要求に応答して3GPPファイルのフラグメントを要求するための例示的な方法を示すフローチャートである。初めに、宛先デバイス40は、たとえば、ウェブ・ブラウザ38を介してユーザから、ビデオ内の特定の時間をシークするための要求を受信する(250)。たとえば、ユーザは、特定の時間ロケーションのシークを要求するために、ビデオ・データの時間ロケーションを示すスクロールバーの一部分を選択し得る。
それに応答して、宛先デバイス40は、シーク時間を含むMPDファイルのプレゼンテーションの3GPPファイルを判断する(252)。すなわち、宛先デバイス40は、シーク時間よりも小さい開始時間とシーク時間よりも大きい終了時間とを有するプレゼンテーションの3GPPファイルのうちの1つを判断し得る。例示のために、図7の方法について図6の3GPPファイル220に関して説明し、3GPPファイル220は、3GPPファイル識別子118に対応する3GPPファイル、3GPPファイル138、または3GPPファイル144のいずれかに対応し得る。3GPPファイル220が、シーク時間よりも小さい開始時間とシーク時間よりも大きい終了時間とを有すると仮定する。宛先デバイス40は、3GPPファイル220を含むプレゼンテーションのヘッダ部分内に記憶された3GPPファイル220についてのタイミング情報属性に基づいて3GPPファイル220を識別し得る。シーク時間と3GPPファイル220の開始時間との間の差は、時間オフセットと呼ばれることがある。
次いで、宛先デバイス40は、たとえば、3GPPファイル220を指定するHTTP HEAD要求をソース・デバイス20に発行することによって、3GPPファイル220の長さを判断し得る。バイトでの3GPPファイル220の長さ(たとえば、Nバイト)を判断すると、宛先デバイス40は、3GPPファイル220からMFROボックス236を取り出す(254)ために、3GPPファイル220と、3GPPファイル220の[N−4]〜Nのバイト範囲とを指定するHTTP部分GET要求を発行し得る。
図6の例に示すように、MFROボックス236はMFRAサイズ値238を含む。したがって、宛先デバイス40は、MFROボックス236を受信した後にMFRAサイズ値238を使用して、MFRAボックス230の残部を取り出す(256)。すなわち、宛先デバイス40は、3GPPファイル220のバイト範囲[N−MFRAサイズ]〜[N−4]についてのHTTP部分GETを発行し得る。このようにして、宛先デバイス40は、MFROデータに基づいて残りのMFRAデータを取り出し得る。宛先デバイス40は、MOOVボックス222のMOOVヘッダデータ、たとえば、ヘッダ224をも取り出す(258)。
宛先デバイス40は、ヘッダ224とMFRAボックス230のフラグメント・シグナリング232とのデータを使用して、ビデオ・フラグメント226のうち、どのビデオ・フラグメントが、シーク時間を超えることなしにシーク時間に最も近い開始時間を有するかを判断する(260)。次いで、宛先デバイス40は、ビデオ・フラグメント226のうちの上記ビデオ・フラグメントと後続のビデオ・フラグメント226の各々とを3GPPファイル220から取り出すための1つまたは複数のHTTP部分GET要求を発行する(262)。すなわち、ヘッダ224とフラグメント・シグナリング232とからの指示を使用して、宛先デバイス40は、ビデオ・フラグメント226のうちの上記ビデオ・フラグメントが、シーク時間を超えることなしにシーク時間に最も近い開始時間を有する、開始バイトを判断し得る。様々な例では、次いで、宛先デバイス40は、この開始バイトと、ビデオ・フラグメント226のうちのこのビデオ・フラグメントの最終バイトまたはMOOVボックス222の終了のいずれかとを指定するHTTP部分GET要求を構築し得る。
図7の方法について、MFRAボックス230からのデータの使用に関して説明するが、宛先デバイス40は、3GPPファイル222からビデオ・フラグメント226を抽出するための同様の技法を実行するために他のデータを使用し得る。たとえば、宛先デバイス40は、3GPPファイルのアイテム・ロケーション(ILOC)ボックスに基づいて、ビデオ・フラグメント226のうち、どのビデオ・フラグメントを抽出すべきかを判断し得る。最初の4バイトが、たとえば、アイテム・ロケーション・オフセット(ILOO)ボックスを含み、その直後にILOCがくるように、3GPPファイルが構築され得る。ILOOボックスはILOCボックスの長さを指定し得る。ILOOボックスは、以下の例示的な擬似コードに従って構築され得る。
Figure 0005619908
例示的な擬似コードでは、ItemLocationBoxOffsetは、ILOOボックスについての新しいクラスの名前を記述する。本例では、ILOCボックスのサイズを示す32ビット整数値「size」を指定する。ILOOボックスによって指定されたILOCボックスのサイズ値は、ILOOボックスの4バイトを含み得る。
ILOCボックスは、3GPPファイル内に含まれるビデオ・フラグメントのタイミング情報、たとえば、各フラグメントの開始時間および終了時間を示す、タイミング情報ボックスを指定し得る。タイミング情報は、たとえば、ビットを節約するために、自動的にシグナリングされ得る。ILOCボックスは、さらに、3GPPファイルのMOOVボックスの他の記述データ、たとえば、図6のヘッダ224によって記憶されたデータと同様のデータを含み得る。ILOCおよびILOOボックスは、ムービー・フラグメントのタイミング情報を示すために使用され得る。したがって、宛先デバイス40は、ILOCおよびILOOボックスのデータに基づいて1つまたは複数のHTTP部分GET要求を構築することによってシーク要求を満たすためにビデオ・フラグメントを取り出し得る。
特に、宛先デバイス40は、最初に、ILOCボックスのサイズ値に対応する、3GPPファイルの最初の4バイトを取り出し得る。すなわち、宛先デバイス40は、最初に、ILOOボックスを取り出すための、3GPPファイルのバイト0〜4についてのHTTP部分GET要求を発行し得る。ILOOボックスによって指定されたILOCボックスのサイズを使用することによって、宛先デバイス40は、たとえば、バイト4〜[ILOCサイズ]を指定するHTTP部分GET要求を発行することによって、ILOCボックスを取り出し得る。
ILOCボックスは、各ビデオ・フラグメントについてのバイト範囲および時間ロケーション、たとえば、開始時間、終了時間、開始バイト、および終了バイトを示す(後続のILOCボックスとも呼ばれる)タイミング情報ボックスの位置および長さを指定し得る。したがって、宛先デバイス40は、次いで、ILOCボックスのデータに基づいてタイミング情報ボックスを取り出し得る。次いで、宛先デバイス40は、上記ビデオ・フラグメントのうち、どのビデオ・フラグメントが、シーク時間よりも小さい開始時間とシーク時間よりも大きい終了時間とを含むかを判断し、3GPPファイルのこのビデオ・フラグメントと後続のビデオ・フラグメントとを取り出すための1つまたは複数のHTTP部分GET要求を発行し得る。
タイミング情報ボックスは、以下の例次的な擬似コードに従って実装され得る。
Figure 0005619908
例示的な擬似コードでは、「number_entry」値は、3GPPファイルの連続ムービー・フラグメントの数を記述する。number_entryは、ムービー・フラグメントのすべての持続時間が同じであることを示すために1の値に設定され得る。「deltaTFragment」値は、概して、3GPPファイル中のムービー・フラグメントの連続グループのi番目のエントリのフラグメントの持続時間を記述し得る。「numContinueFragWithSameDuration」値は、i番目のエントリにおける連続ムービー・フラグメントの数を記述する。「numContinueFragWithSameDuration」値が0に等しいとき、その値は、プレゼンテーション中のすべての3GPPファイルが同じ持続時間deltaTを有することを示す。
1つまたは複数の例では、説明した機能はハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータ・プログラムの転送を可能にする任意の媒体を含む、コンピュータデータ記憶媒体または通信媒体を含み得る。データ記憶媒体は、本開示で説明する技法の実装のための命令、コードおよび/またはデータ構造を取り出すために1つまたは複数のコンピュータまたは1つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。「コンピュータ可読記憶媒体」という句は、製造品に対応し得る非一時的な有形のコンピュータ可読記憶媒体を指すものとする。限定ではなく、例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびブルーレイ(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
コードは、1つまたは複数のデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェア・モジュール内に提供され得、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置において実施され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェア・ユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明したように1つまたは複数のプロセッサを含んで、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[1] 符号化ビデオ・データをトランスポートするための方法であって、前記方法は、
ソース・ビデオ・デバイスが、いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、
いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、形成することと、
前記ビデオ・データの時間セクションを指定する要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを出力することと、
を備える、方法。
[2] 前記ビデオ・ファイルの各々についての開始時間および終了時間をシグナリングすることをさらに備える、[1]に記載の方法。
[3] 前記時間セクションが、前記ビデオ・ファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオ・ファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力することが、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオ・ファイルのうちの前記1つを出力することを備える、[2]に記載の方法。
[4] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記方法は、
いくつかのビデオ・ファイルを備える第2のプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合される、形成することと、
前記要求に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションから前記いくつかのビデオ・ファイルのうちの少なくとも1つを選択的に出力することであって、前記要求が前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つを指定する、出力することと、
をさらに備える、[1]に記載の方法。
[5] 前記第1のプレゼンテーションについての第1のレンダリング能力、第1の復号能力、および第1の平均ビットレートをシグナリングすることと、
前記第2のプレゼンテーションについての第2のレンダリング能力、第2の復号能力、および第2の平均ビットレートをシグナリングすることと、
をさらに備える、[4]に記載の方法。
[6] 前記要求が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つについての指示と、開始時間と、終了時間とを備えるファイル名を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力することが、前記要求の前記指示に対応する前記プレゼンテーションから前記ビデオ・ファイルのうちの1つを出力することを備え、前記ビデオ・ファイルのうちの前記1つが前記要求の前記開始時間および前記終了時間を有する、[4]に記載の方法。
[7] 前記要求が、前記指定されたプレゼンテーションの前記ビデオ・ファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備える、[1]に記載の方法。
[8] 符号化ビデオ・データをトランスポートするための装置であって、前記装置は、
いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、形成することとを行うように構成された管理ユニットと、
前記ビデオ・データの時間セクションを指定する要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを出力するように構成されたネットワーク・インターフェースと、
を備える、装置。
[9] 前記管理ユニットが、前記ビデオ・ファイルの各々についての開始時間および終了時間をシグナリングするように構成された、[8]に記載の装置。
[10] 前記時間セクションが、前記ビデオ・ファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオ・ファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するために、前記ネットワーク・インターフェースが、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオ・ファイルのうちの前記1つを出力する、[9]に記載の装置。
[11] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記管理ユニットは、いくつかのビデオ・ファイルを備える第2のプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合される、形成することと、前記要求に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションから前記いくつかのビデオ・ファイルのうちの少なくとも1つを選択的に出力することであって、前記要求が前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つをさらに指定する、出力することと、を行うように構成された、[8]に記載の装置。
[12] 前記管理ユニットが、前記第1のプレゼンテーションについての第1のレンダリング能力、第1の復号能力、および第1の平均ビットレートをシグナリングすることと、前記第2のプレゼンテーションについての第2のレンダリング能力、第2の復号能力、および第2の平均ビットレートをシグナリングすることとを行うように構成された、[11]に記載の装置。
[13] 前記要求が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つについての指示と、開始時間と、終了時間とを備えるファイル名を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するために、前記ネットワーク・インターフェースが、前記要求の前記指示に対応する前記プレゼンテーションから前記ビデオ・ファイルのうちの1つを出力するように構成され、前記ビデオ・ファイルのうちの前記1つが前記要求の前記開始時間および前記終了時間を有する、 [11]に記載の装置。
[14] 前記要求が、前記指定されたプレゼンテーションの前記ビデオ・ファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備える、[8]に記載の装置。
[15] 符号化ビデオ・データをトランスポートするための装置であって、前記装置は、
いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信するための手段と、
いくつかのビデオ・ファイルを備えるプレゼンテーションを形成するための手段であって、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、形成するための手段と、
前記ビデオ・データの時間セクションを指定する要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを出力するための手段と、
を備える、装置。
[16] 前記ビデオ・ファイルの各々についての開始時間および終了時間をシグナリングするための手段をさらに備える、[15]に記載の装置。
[17] 前記時間セクションが、前記ビデオ・ファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオ・ファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するための前記手段が、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオ・ファイルのうちの前記1つを出力するための手段を備える、[16]に記載の装置。
[18] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記装置は、
いくつかのビデオ・ファイルを備える第2のプレゼンテーションを形成するための手段であって、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合される、形成するための手段と、
前記要求に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションから前記いくつかのビデオ・ファイルのうちの少なくとも1つを選択的に出力するための手段であって、前記要求が前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つをさらに指定する、出力するための手段と、
をさらに備える、[15]に記載の装置。
[19] 前記第1のプレゼンテーションについての第1のレンダリング能力、第1の復号能力、および第1の平均ビットレートをシグナリングするための手段と、
前記第2のプレゼンテーションについての第2のレンダリング能力、第2の復号能力、および第2の平均ビットレートをシグナリングするための手段と、
をさらに備える、[18]に記載の装置。
[20] 前記要求が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つについての指示と、開始時間と、終了時間とを備えるファイル名を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するための前記手段が、前記要求の前記指示に対応する前記プレゼンテーションから前記ビデオ・ファイルのうちの1つを出力するための手段を備え、前記ビデオ・ファイルのうちの前記1つが前記要求の前記開始時間および前記終了時間を有する、[18]に記載の装置。
[21] 前記要求が、前記指定されたプレゼンテーションの前記ビデオ・ファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備える、[15]に記載の装置。
[22] 実行されると、
いくつかのビデオ・セグメントを備える符号化ビデオ・データを受信することと、
いくつかのビデオ・ファイルを備えるプレゼンテーションを形成することであって、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、形成することと、
前記ビデオ・データの時間セクションを指定する要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを出力することと、
を、符号化ビデオ・データをトランスポートするためのソース・デバイスのプロセッサに行わせる命令を備える非一時的コンピュータ可読記憶媒体。
[23] 前記ビデオ・ファイルの各々についての開始時間および終了時間をシグナリングするための命令をさらに備える、[22]に記載の非一時的コンピュータ可読記憶媒体。
[24] 前記時間セクションが、前記ビデオ・ファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオ・ファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するための前記命令が、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオ・ファイルのうちの前記1つを出力するための命令を備える、[23]に記載の非一時的コンピュータ可読記憶媒体。
[25] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記非一時的コンピュータ可読記憶媒体は、
いくつかのビデオ・ファイルを備える第2のプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合される、形成することと、
前記要求に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションから前記いくつかのビデオ・ファイルのうちの少なくとも1つを選択的に出力することであって、前記要求が前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つをさらに指定する、出力することと、
を行うための命令をさらに備える、[22]に記載の非一時的コンピュータ可読記憶媒体。
[26] 前記第1のプレゼンテーションについての第1のレンダリング能力、第1の復号能力、および第1の平均ビットレートをシグナリングすることと、
前記第2のプレゼンテーションについての第2のレンダリング能力、第2の復号能力、および第2の平均ビットレートをシグナリングすることと、
を行うための命令をさらに備える、[25]に記載の非一時的コンピュータ可読記憶媒体。
[27] 前記要求が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つについての指示と、開始時間と、終了時間とを備えるファイル名を備え、
前記ビデオ・ファイルのうちの前記少なくとも1つを出力するための前記命令が、前記要求の前記指示に対応する前記プレゼンテーションから前記ビデオ・ファイルのうちの1つを出力するための命令を備え、前記ビデオ・ファイルのうちの前記1つが前記要求の前記開始時間および前記終了時間を有する、
[25]に記載の非一時的コンピュータ可読記憶媒体。
[28] 前記要求が、前記指定されたプレゼンテーションの前記ビデオ・ファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備える、[22]に記載の非一時的コンピュータ可読記憶媒体。
[29] 符号化ビデオ・データを取り出すための方法であって、前記方法は、
クライアント・デバイスが、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオ・データがいくつかのビデオ・セグメントを備え、前記プレゼンテーションがいくつかのビデオ・ファイルを備え、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、取り出すことと、
前記ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、
前記要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを前記ソース・デバイスから受信することと、
前記ビデオ・ファイルのうちの前記少なくとも1つを復号し、表示することと、
を備える、方法。
30] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記プレゼンテーション記述データが、前記ビデオ・データの第2のプレゼンテーションの特性をさらに記述し、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションがいくつかのビデオ・ファイルを備え、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合され、前記方法が、
前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記特性と、前記クライアント・デバイスの復号能力および前記クライアント・デバイスのレンダリング能力のうちの少なくとも1つとに基づいて、前記第1のプレゼンテーションと前記第2のプレゼンテーションのいずれかを選択すること、
をさらに備え、
前記要求をサブミットすることが、前記選択に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを指定することを備える、
[29]に記載の方法。
[31] 前記ビデオ・ファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオ・ファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記方法は、
利用可能なネットワーク帯域幅の量を判断することと、
利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、
前記ビデオ・データの第2の時間セクションを指定する第2の要求を前記ソース・デバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオ・データにおいて前記第1の時間セクションよりも後で起こる、サブミットすることと、
をさらに備える、[30]に記載の方法。
[32] 前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つと、前記ビデオ・ファイルのうちの前記少なくとも1つについての開始時間と、前記ビデオ・ファイルのうちの前記少なくとも1つについての終了時間とを指定するファイル名を含むように前記要求を形成することをさらに備える、[30]に記載の方法。
[33] 前記要求をサブミットする前に、前記ビデオ・ファイルの前記時間セクションの開始の指示を受信することと、
前記ビデオ・ファイルのうちの前記少なくとも1つについてのバイト範囲を取り出すためのHTTP部分GET要求として前記要求を形成することであって、前記バイト範囲が、前記時間セクションの前記開始に対応する開始バイトを有する、形成することと、
をさらに備える、[29]に記載の方法。
[34] 符号化ビデオ・データを取り出すための装置であって、前記装置は、
ネットワーク・インターフェースと、
前記ネットワーク・インターフェースを介して、ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオ・データがいくつかのビデオ・セグメントを備え、前記プレゼンテーションがいくつかのビデオ・ファイルを備え、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、取り出すことと、前記ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、前記要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを前記ソース・デバイスから受信することと、を行うように構成された制御ユニットと、
前記ビデオ・ファイルのうちの前記少なくとも1つを復号するように構成されたビデオ・デコーダと、
前記ビデオ・ファイルのうちの前記復号された少なくとも1つを表示するように構成されたディスプレイを備えるユーザ・インターフェースと、
を備える、装置。
[35] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記プレゼンテーション記述データが、前記ビデオ・データの第2のプレゼンテーションの特性をさらに記述し、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションがいくつかのビデオ・ファイルを備え、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合され、前記制御ユニットが、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記特性と、前記装置についての復号能力および前記装置についてのレンダリング能力のうちの少なくとも1つとに基づいて、前記第1のプレゼンテーションと前記第2のプレゼンテーションのいずれかを選択するようにさらに構成され、前記要求をサブミットするために、前記制御ユニットが、前記選択に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを指定するように構成された、[34]に記載の装置。
[36] 前記ビデオ・ファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオ・ファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記制御ユニットは、利用可能なネットワーク帯域幅の量を判断することと、利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、前記ビデオ・データの第2の時間セクションを指定する第2の要求を前記ソース・デバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオ・データにおいて前記第1の時間セクションよりも後で起こる、サブミットすることと、を行うように構成された、[35]に記載の装置。
[37] 前記制御ユニットが、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つと、前記ビデオ・ファイルのうちの前記少なくとも1つについての開始時間と、前記ビデオ・ファイルのうちの前記少なくとも1つについての終了時間とを指定するファイル名を含むように前記要求を形成するようにさらに構成された、[35]に記載の装置。
[38] 前記制御ユニットは、前記要求をサブミットする前に、前記ビデオ・ファイルの前記時間セクションの開始の指示を受信することと、前記ビデオ・ファイルのうちの前記少なくとも1つについてのバイト範囲を取り出すためのHTTP部分GET要求として前記要求を形成することであって、前記バイト範囲が、前記時間セクションの前記開始に対応する開始バイトを有する、形成することとを行うように構成された、[34]に記載の装置。
[39] 符号化ビデオ・データを取り出すための装置であって、前記装置は、
ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すための手段であって、前記ビデオ・データがいくつかのビデオ・セグメントを備え、前記プレゼンテーションがいくつかのビデオ・ファイルを備え、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、取り出すための手段と、
前記ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットするための手段と、
前記要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを前記ソース・デバイスから受信するための手段と、
前記ビデオ・ファイルのうちの前記少なくとも1つを復号し、表示するための手段と、
を備える、装置。
[40] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記プレゼンテーション記述データが、前記ビデオ・データの第2のプレゼンテーションの特性をさらに記述し、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションがいくつかのビデオ・ファイルを備え、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合され、前記装置が、
前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記特性と、前記装置についての復号能力および前記装置についてのレンダリング能力のうちの少なくとも1つとに基づいて、前記第1のプレゼンテーションと前記第2のプレゼンテーションのいずれかを選択するための手段、
をさらに備え、
前記要求をサブミットするための前記手段が、前記選択に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを指定するための手段を備える、[39]に記載の装置。
[41] 前記ビデオ・ファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオ・ファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記装置は、
利用可能なネットワーク帯域幅の量を判断するための手段と、
利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択するための手段と、
前記ビデオ・データの第2の時間セクションを指定する第2の要求を前記ソース・デバイスにサブミットするための手段であって、前記第2の時間セクションが、前記ビデオ・データにおいて前記第1の時間セクションよりも後で起こる、サブミットするための手段と、
をさらに備える、[40]に記載の装置。
[42] 前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つと、前記ビデオ・ファイルのうちの前記少なくとも1つについての開始時間と、前記ビデオ・ファイルのうちの前記少なくとも1つについての終了時間とを指定するファイル名を含むように前記要求を形成するための手段をさらに備える、[40]に記載の装置。
[43] 前記要求をサブミットする前に、前記ビデオ・ファイルの前記時間セクションの開始の指示を受信するための手段と、
前記ビデオ・ファイルのうちの前記少なくとも1つについてのバイト範囲を取り出すためのHTTP部分GET要求として前記要求を形成するための手段であって、前記バイト範囲が、前記時間セクションの前記開始に対応する開始バイトを有する、形成するための手段と、
をさらに備える、[39]に記載の装置。
[44] 実行されると、
ビデオ・データのプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオ・データがいくつかのビデオ・セグメントを備え、前記プレゼンテーションがいくつかのビデオ・ファイルを備え、前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応する、取り出すことと、
前記ビデオ・データの時間セクションを指定する要求をソース・デバイスにサブミットすることと、
前記要求に応答して、前記要求された時間セクションの前記いくつかのビデオ・セグメントに対応する前記ビデオ・ファイルのうちの少なくとも1つを前記ソース・デバイスから受信することと、
前記ビデオ・ファイルのうちの前記少なくとも1つを、符号化ビデオ・データを取り出すためのクライアント・デバイスのビデオ・デコーダに復号させることと、
前記復号されたビデオ・ファイルのうちの前記少なくとも1つを前記クライアント・デバイスのディスプレイに表示させることと、
を前記クライアント・デバイスのプロセッサに行わせる命令を備える非一時的コンピュータ可読記憶媒体。
[45] 前記プレゼンテーションが第1のプレゼンテーションを備え、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記プレゼンテーション記述データが、前記ビデオ・データの第2のプレゼンテーションの特性をさらに記述し、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションがいくつかのビデオ・ファイルを備え、前記第2のプレゼンテーションの前記ビデオ・ファイルの各々が前記ビデオ・セグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオ・ファイルが前記第1のプレゼンテーションの前記ビデオ・ファイルと時間的に整合され、前記非一時的コンピュータ可読記憶媒体が、
前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記特性と、前記ビデオ・デコーダの復号能力および前記ディスプレイのレンダリング能力のうちの少なくとも1つとに基づいて、前記第1のプレゼンテーションと前記第2のプレゼンテーションのいずれかを選択すること、
を行うための命令をさらに備え、
前記要求をサブミットするための前記命令が、前記選択に基づいて前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを指定するための命令を備える、[44]に記載の非一時的コンピュータ可読記憶媒体。
[46] 前記ビデオ・ファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオ・ファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記非一時的コンピュータ可読記憶媒体は、
利用可能なネットワーク帯域幅の量を判断することと、
利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、
前記ビデオ・データの第2の時間セクションを指定する第2の要求を前記ソース・デバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオ・データにおいて前記第1の時間セクションよりも後で起こる、サブミットすることと
を行うための命令をさらに備える、[45]に記載の非一時的コンピュータ可読記憶媒体。
[47] 前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つと、前記ビデオ・ファイルのうちの前記少なくとも1つについての開始時間と、前記ビデオ・ファイルのうちの前記少なくとも1つについての終了時間とを指定するファイル名を含むように前記要求を形成するための命令をさらに備える、[45]に記載の非一時的コンピュータ可読記憶媒体。
[48] 前記要求をサブミットする前に、前記ビデオ・ファイルの前記時間セクションの開始の指示を受信することと、
前記ビデオ・ファイルのうちの前記少なくとも1つについてのバイト範囲を取り出すためのHTTP部分GET要求として前記要求を形成することであって、前記バイト範囲が、前記時間セクションの前記開始に対応する開始バイトを有する、形成することと、
を行うための命令をさらに備える、[44]に記載の非一時的コンピュータ可読記憶媒体。

Claims (24)

  1. 符号化ビデオデータをトランスポートするための方法であって、前記方法は、
    ソースビデオデバイスが、いくつかのビデオセグメントを備える符号化ビデオデータを受信することと、
    いくつかのビデオファイルを備える第1のプレゼンテーションを形成することであって、前記ビデオファイルの各々が前記ビデオセグメントの各々に対応する、形成することと、
    前記いくつかのビデオファイルを備える第2の異なるプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合される、形成することと、
    前記第1及び第2のプレゼンテーションの特性を記述するプレゼンテーション記述データを形成することであって、前記特性は、前記第1のプレゼンテーションについての第1のレンダリング能力、前記第1のプレゼンテーションについての第1の復号能力、前記第1のプレゼンテーションについての第1の平均ビットレート、前記第2のプレゼンテーションについての第2のレンダリング能力、前記第2のプレゼンテーションについての第2の復号能力、前記第2のプレゼンテーションについての第2の平均ビットレート、前記第1のプレゼンテーション中の前記ファイルのファイルサイズ、前記第2のプレゼンテーション中の前記ファイルのファイルサイズ、および、前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報を含むことと、
    前記第1のプレゼンテーションまたは前記第2のプレゼンテーションを指定する、前記ビデオデータの時間セクションについての要求に応答して、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求された時間セクションの前記ビデオセグメントの前記各々に対応する前記ビデオファイルのうちの少なくとも1つを出力することであって、前記時間セクションを指定するために、前記要求が、開始時間および終了時間を含むファイル名を指定し、前記要求が、前記指定されたプレゼンテーションの前記ビデオファイルのうちの前記1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備え、前記ビデオファイルのうちの前記少なくとも1つを出力することが、前記要求に対応する前記プレゼンテーションから前記ビデオファイルのうちの1つの少なくとも一部分を出力することを備え、前記ビデオファイルのうちの前記1つが、前記要求において指定された前記開始時間および前記終了時間を有すること
    を備える、方法。
  2. 前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報をシグナリングすることが、前記第1のプレゼンテーションおよび前記第2のプレゼンテーション中の前記ビデオファイルの各々についての開始時間および終了時間を示す情報を与えることを備える、請求項1に記載の方法。
  3. 前記時間セクションが、前記ビデオファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
    前記ビデオファイルのうちの前記少なくとも1つを出力することが、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオファイルのうちの前記1つを出力することを備える、請求項2に記載の方法。
  4. 符号化ビデオデータをトランスポートするための装置であって、前記装置は、
    いくつかのビデオセグメントを備える符号化ビデオデータを受信することと、いくつかのビデオファイルを備える第1のプレゼンテーションを形成することであって、前記ビデオファイルの各々が前記ビデオセグメントの各々に対応する、形成することと、前記いくつかのビデオファイルを備える第2の異なるプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合される、形成することと、前記第1及び第2のプレゼンテーションの特性を記述するプレゼンテーション記述データを形成することであって、前記特性は、前記第1のプレゼンテーションについての第1のレンダリング能力、前記第1のプレゼンテーションについての第1の復号能力、前記第1のプレゼンテーションについての第1の平均ビットレート、前記第2のプレゼンテーションについての第2のレンダリング能力、前記第2のプレゼンテーションについての第2の復号能力、前記第2のプレゼンテーションについての第2の平均ビットレート、前記第1のプレゼンテーション中の前記ファイルについてのファイルサイズ、前記第2のプレゼンテーション中の前記ファイルについてのファイルサイズ、および前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報を含むように構成されたプロセッサと、
    前記第1のプレゼンテーションまたは前記第2のプレゼンテーションを指定する、前記ビデオデータの時間セクションについての要求に応答して、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求された時間セクションの前記ビデオセグメントの前記各々に対応する前記ビデオファイルのうちの少なくとも1つを出力ことであって、前記時間セクションを指定するために、前記要求が、開始時間および終了時間を含むファイル名を指定し、前記要求が、前記指定されたプレゼンテーションの前記ビデオファイルのうちの前記1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備え、前記ビデオファイルのうちの前記少なくとも1つを出力するために、前記ネットワークインターフェースが、前記要求に対応する前記プレゼンテーションから前記ビデオファイルのうちの1つの少なくとも一部分を出力するように構成され、前記ビデオファイルのうちの前記1つが、前記要求において指定された前記開始時間および前記終了時間を有するように構成されたネットワークインターフェースと
    を備える、装置。
  5. 前記プロセッサが、前記第1のプレゼンテーションおよび前記第2のプレゼンテーション中の前記ビデオファイルの各々についての開始時間および終了時間を示す情報を与えるように構成された、請求項に記載の装置。
  6. 前記時間セクションが、前記ビデオファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
    前記ビデオファイルのうちの前記少なくとも1つを出力するために、前記ネットワークインターフェースが、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオファイルのうちの前記1つを出力する、請求項に記載の装置。
  7. 符号化ビデオデータをトランスポートするための装置であって、前記装置は、
    いくつかのビデオセグメントを備える符号化ビデオデータを受信するための手段と、
    いくつかのビデオファイルを備えるプレゼンテーションを形成するための手段であって、前記ビデオファイルの各々が前記ビデオセグメントの各々に対応する、形成するための手段と、
    前記いくつかのビデオファイルを備える第2の異なるプレゼンテーションを形成するための手段であって、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが第1のプレゼンテーションの前記ビデオファイルと時間的に整合される、形成するための手段と、
    前記第1及び第2のプレゼンテーションの特性を記述するプレゼンテーション記述データを形成するための手段であって、前記特性は、前記第1のプレゼンテーションについての第1のレンダリング能力、前記第1のプレゼンテーションについての第1の復号能力、前記第1のプレゼンテーションについての第1の平均ビットレート、前記第2のプレゼンテーションについての第2のレンダリング能力、前記第2のプレゼンテーションについての第2の復号能力、前記第2のプレゼンテーションについての第2の平均ビットレート、前記第1のプレゼンテーション中の前記ファイルのファイルサイズ、前記第2のプレゼンテーション中の前記ファイルのファイルサイズ、および前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報を含む手段と、
    前記第1のプレゼンテーションまたは前記第2のプレゼンテーションを指定する、前記ビデオデータの時間セクションについての要求に応答して、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求された時間セクションの前記ビデオセグメントの前記各々に対応する前記ビデオファイルのうちの少なくとも1つを出力するための手段であって、前記時間セクションを指定するために、前記要求が、開始時間および終了時間を含むファイル名を指定し、前記要求が、前記指定されたプレゼンテーションの前記ビデオファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備え、前記ビデオファイルのうちの前記少なくとも1つを出力するための前記手段が、前記要求に対応する前記プレゼンテーションから前記ビデオファイルのうちの1つの少なくとも一部分を出力するための手段を備え、前記ビデオファイルのうちの前記1つが、前記要求において指定された前記開始時間および前記終了時間を有する手段
    を備える、装置。
  8. 前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報をシグナリングするための前記手段が、前記第1のプレゼンテーションおよび前記第2のプレゼンテーション中の前記ビデオファイルの各々についての開始時間および終了時間を示す情報をMPD中で与えるための手段を備える、請求項に記載の装置。
  9. 前記時間セクションが、前記ビデオファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
    前記ビデオファイルのうちの前記少なくとも1つを出力するための前記手段が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオファイルのうちの前記1つを出力するための手段を備える、請求項に記載の装置。
  10. 実行されると、
    いくつかのビデオセグメントを備える符号化ビデオデータを受信することと、
    いくつかのビデオファイルを備えるプレゼンテーションを形成することであって、前記ビデオファイルの各々が前記ビデオセグメントの各々に対応する、形成することと、
    前記いくつかのビデオファイルを備える第2の異なるプレゼンテーションを形成することであって、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが第1のプレゼンテーションの前記ビデオファイルと時間的に整合される、形成することと、
    前記第1及び第2のプレゼンテーションの特性を記述するプレゼンテーション記述データを形成することであって、前記特性は、前記第1のプレゼンテーションについての第1のレンダリング能力、前記第1のプレゼンテーションについての第1の復号能力、前記第1のプレゼンテーションについての第1の平均ビットレート、前記第2のプレゼンテーションについての第2のレンダリング能力、前記第2のプレゼンテーションについての第2の復号能力、前記第2のプレゼンテーションについての第2の平均ビットレート、前記第1のプレゼンテーション中の前記ファイルのファイルサイズ、前記第2のプレゼンテーション中の前記ファイルのファイルサイズ、および前記第1のプレゼンテーションの前記ファイルが前記第2のプレゼンテーションの前記ファイルと時間的に整合されたことを示す情報を含むことと、
    前記第1のプレゼンテーションまたは前記第2のプレゼンテーションを指定する、前記ビデオデータの時間セクションについての要求に応答して、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求された時間セクションの前記ビデオセグメントの前記各々に対応する前記ビデオファイルのうちの少なくとも1つを出力することであって、前記時間セクションを指定するために、前記要求が、開始時間および終了時間を含み、前記要求が、前記指定されたプレゼンテーションの前記ビデオファイルのうちの1つについてのバイト範囲を指定するハイパーテキスト転送プロトコル(HTTP)部分GET要求を備えること
    を、符号化ビデオデータをトランスポートするためのソースデバイスのプロセッサに行わせる命令を備え
    前記ビデオファイルのうちの前記少なくとも1つを前記プロセッサに出力させる前記命令が、前記要求に対応する前記プレゼンテーションから前記ビデオファイルのうちの1つの少なくとも一部分を前記プロセッサに出力させる命令を備え、前記ビデオファイルのうちの前記1つが、前記要求において指定された前記開始時間および前記終了時間を有する非一時的コンピュータ可読記憶媒体。
  11. 前記第1のプレゼンテーションおよび前記第2のプレゼンテーション中の前記ビデオファイルの各々についての開始時間および終了時間をシグナリングするための命令をさらに備える、請求項1に記載の非一時的コンピュータ可読記憶媒体。
  12. 前記時間セクションが、前記ビデオファイルのうちの1つについての前記開始時間と等価な開始時間を備え、前記時間セクションが、前記ビデオファイルのうちの前記1つについての前記終了時間と等価な終了時間を備え、
    前記ビデオファイルのうちの前記少なくとも1つを出力するための前記命令が、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記指定された1つから、前記要求によって指定された前記時間セクションの前記それぞれの開始時間および終了時間と等価な前記開始時間および前記終了時間を有する前記ビデオファイルのうちの前記1つを出力するための命令を備える、請求項11に記載の非一時的コンピュータ可読記憶媒体。
  13. 符号化ビデオデータを取り出すための方法であって、前記方法は、
    クライアントデバイスが、第1のプレゼンテーションと第2のプレゼンテーションとを含むビデオデータの2つ以上のプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオデータがいくつかのビデオセグメントを備え、前記第1のプレゼンテーションがいくつかのビデオファイルを備え、前記第1のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、前記第2のプレゼンテーションがいくつかのビデオファイルを備え、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合され、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備えることと、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルが互いに時間的に整合されたことを示す情報と、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルのファイルサイズを示す情報とを受信することと、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ファイルの前記ファイルサイズを示す前記情報を使用して、前記ビデオデータの時間セクションに対応する前記第1のプレゼンテーションおよび前記第2のプレゼンテーションのファイルについての瞬時ビットレートを判断することと、
    前記判断された瞬時ビットレート、前記第1のプレゼンテーションの前記特性、前記第2のプレゼンテーションの前記特性、並びに、前記クライアントデバイスの復号能力および前記クライアントデバイスのレンダリング能力のうちの少なくとも1つに基づいて前記時間セクションに対して前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを選択することと、
    前記ビデオファイルのうち1つを取り出すためのHTTP部分GET要求を形成することであって、前記要求を形成することは、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つ、前記ビデオファイルのうちの前記1つについての開始時間、前記ビデオファイルのうちの前記1つについての終了時間、および前記ビデオファイルのうちの前記1つのバイト範囲を指定するファイル名を含むように前記要求を形成することを備え、前記要求は、前記ビデオデータの前記時間セクションと、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記選択された1つとを指定することと、
    前記要求をソースデバイスにサブミットすることと、
    前記要求に応答して、前記要求により指定される前記開始時間および前記終了時間を有する、前記ビデオファイルのうちの前記1つを前記ソースデバイスから受信することと、
    前記ビデオファイルのうちの前記1つを復号し、表示することと
    を備える、方法。
  14. 前記ビデオファイルのうちの前記1つが、前記第1のプレゼンテーションからの第1のビデオファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記方法は、
    利用可能なネットワーク帯域幅の量を判断することと、
    利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、
    前記ビデオデータの第2の時間セクションを指定する第2の要求を前記ソースデバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオデータにおいて前記第1の時間セクションよりも後で起こる、サブミットすることと
    をさらに備える、請求項13に記載の方法。
  15. 前記要求をサブミットする前に、前記ビデオファイルの前記時間セクションの開始の指示を受信することをさらに備える、請求項13に記載の方法。
  16. 符号化ビデオデータを取り出すための装置であって、前記装置は、
    ネットワークインターフェースと、
    前記ネットワークインターフェースを介して、第1のプレゼンテーションと第2のプレゼンテーションとを含むビデオデータの2つ以上のプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオデータがいくつかのビデオセグメントを備え、前記第1のプレゼンテーションがいくつかのビデオファイルを備え、前記第1のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、前記第2のプレゼンテーションがいくつかのビデオファイルを備え、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合され、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備えることと、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルが互いに時間的に整合されたことを示す情報と、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルのファイルサイズを示す情報とを受信することと、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ファイルの前記ファイルサイズを示す前記情報を使用して、前記ビデオデータの時間セクションに対応する前記第1のプレゼンテーションおよび前記第2のプレゼンテーションのファイルについての瞬時ビットレートを判断することと、前記判断された瞬時ビットレート、前記第1のプレゼンテーションの前記特性、前記第2のプレゼンテーションの前記特性、並びに、前記クライアントデバイスの復号能力および前記クライアントデバイスのレンダリング能力のうちの少なくとも1つに基づいて前記時間セクションに対して前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを選択することと、前記ビデオファイルのうち1つを取り出すためのHTTP部分GET要求を形成することであって、前記要求は、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つ、前記ビデオファイルのうちの前記1つについての開始時間、前記ビデオファイルのうちの前記1つについての終了時間、および前記ビデオファイルのうちの前記1つのバイト範囲を指定するファイル名を含み、前記要求は、前記ビデオデータの前記時間セクションと、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記選択された1つとを指定することと、前記要求をソースデバイスにサブミットすることと、前記要求に応答して、前記要求により指定される前記開始時間および前記終了時間を有する、前記ビデオファイルのうちの前記1つを前記ソースデバイスから受信することとを行うように構成された制御ユニットと、
    前記ビデオファイルのうちの前記1つを復号するように構成されたビデオデコーダと、
    前記ビデオファイルのうちの前記復号された少なくとも1つを表示するように構成されたディスプレイを備えるユーザインターフェースと
    を備える、装置。
  17. 前記ビデオファイルのうちの前記1つが、前記第1のプレゼンテーションからの第1のビデオファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記制御ユニットは、利用可能なネットワーク帯域幅の量を判断することと、利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、前記ビデオデータの第2の時間セクションを指定する第2の要求を前記ソースデバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオデータにおいて前記第1の時間セクションよりも後で起こる、サブミットすることとを行うように構成された、請求項16に記載の装置。
  18. 前記制御ユニットは、前記要求をサブミットする前に、前記ビデオファイルの前記時間セクションの開始の指示を受信することを行うように構成された、請求項16に記載の装置。
  19. 符号化ビデオデータを取り出すための装置であって、前記装置は、
    第1のプレゼンテーションと第2のプレゼンテーションとを含むビデオデータの2つ以上のプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すための手段であって、前記ビデオデータがいくつかのビデオセグメントを備え、前記第1のプレゼンテーションがいくつかのビデオファイルを備え、前記第1のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、前記第2のプレゼンテーションがいくつかのビデオファイルを備え、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合され、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備える手段と、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルが互いに時間的に整合されたことを示す情報と、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルのファイルサイズを示す情報とを受信するための手段と、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ファイルの前記ファイルサイズを示す前記情報を使用して、前記ビデオデータの時間セクションに対応する前記第1のプレゼンテーションおよび前記第2のプレゼンテーションのファイルについての瞬時ビットレートを判断するための手段と、
    前記判断された瞬時ビットレート、前記第1のプレゼンテーションの前記特性、前記第2のプレゼンテーションの前記特性、並びに、前記クライアントデバイスの復号能力および前記クライアントデバイスのレンダリング能力のうちの少なくとも1つに基づいて前記時間セクションに対して前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを選択するための手段と、
    前記ビデオファイルのうち1つを取り出すためのHTTP部分GET要求を形成するための手段であって、前記要求は、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つ、前記ビデオファイルのうちの前記1つについての開始時間、前記ビデオファイルのうちの前記1つについての終了時間、および前記ビデオファイルのうちの前記1つのバイト範囲を指定するファイル名を含み、前記要求は、前記ビデオデータの前記時間セクションと、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記選択された1つとを指定する手段と、
    前記要求をソースデバイスにサブミットするための手段と、
    前記要求に応答して、前記要求により指定される前記開始時間および前記終了時間を有する、前記ビデオファイルのうちの前記1つを前記ソースデバイスから受信するための手段と、
    前記ビデオファイルのうちの前記1つを復号し、表示するための手段と
    を備える、装置。
  20. 前記ビデオファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記装置は、
    利用可能なネットワーク帯域幅の量を判断するための手段と、
    利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択するための手段と、
    前記ビデオデータの第2の時間セクションを指定する第2の要求を前記ソースデバイスにサブミットするための手段であって、前記第2の時間セクションが、前記ビデオデータにおいて前記第1の時間セクションよりも後で起こる、サブミットするための手段と
    をさらに備える、請求項19に記載の装置。
  21. 前記要求をサブミットする前に、前記ビデオファイルの前記時間セクションの開始の指示を受信するための手段
    さらに備える、請求項19に記載の装置。
  22. 実行されると、
    第1のプレゼンテーションと第2のプレゼンテーションとを含むビデオデータの2つ以上のプレゼンテーションの特性を記述するプレゼンテーション記述データを取り出すことであって、前記ビデオデータがいくつかのビデオセグメントを備え、前記第1のプレゼンテーションがいくつかのビデオファイルを備え、前記第1のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、前記第2のプレゼンテーションがいくつかのビデオファイルを備え、前記第2のプレゼンテーションの前記ビデオファイルの各々が前記ビデオセグメントの各々に対応し、その結果、前記第2のプレゼンテーションの前記ビデオファイルが前記第1のプレゼンテーションの前記ビデオファイルと時間的に整合され、前記第1のプレゼンテーションについての前記特性が、前記第1のプレゼンテーションについての予想される復号能力と、前記第1のプレゼンテーションについての予想されるレンダリング能力と、前記第1のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備え、前記第2のプレゼンテーションについての前記特性が、前記第2のプレゼンテーションについての予想される復号能力と、前記第2のプレゼンテーションについての予想されるレンダリング能力と、前記第2のプレゼンテーションについての平均ビットレートとのうちの少なくとも1つを備えることと、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルが互いに時間的に整合されたことを示す情報と、前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ビデオファイルのファイルサイズを示す情報とを受信することと、
    前記第1のプレゼンテーションおよび前記第2のプレゼンテーションの前記ファイルの前記ファイルサイズを示す前記情報を使用して、前記ビデオデータの時間セクションに対応する前記第1のプレゼンテーションおよび前記第2のプレゼンテーションのファイルについての瞬時ビットレートを判断することと、
    前記判断された瞬時ビットレート、前記第1のプレゼンテーションの前記特性、前記第2のプレゼンテーションの前記特性、並びに、前記クライアントデバイスの復号能力および前記クライアントデバイスのレンダリング能力のうちの少なくとも1つに基づいて前記時間セクションに対して前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのいずれかを選択することと、
    前記ビデオファイルのうち1つを取り出すためのHTTP部分GET要求を形成することであって、前記要求を形成することは、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの少なくとも1つ、前記ビデオファイルのうちの前記1つについての開始時間、前記ビデオファイルのうちの前記1つについての終了時間、および前記ビデオファイルのうちの前記1つのバイト範囲を指定するファイル名を含むように前記要求を形成することを備え、前記要求は、前記ビデオデータの前記時間セクションと、前記第1のプレゼンテーションまたは前記第2のプレゼンテーションのうちの前記選択された1つとを指定することと、
    前記要求をソースデバイスにサブミットすることと、
    前記要求に応答して、前記要求により指定される前記開始時間および前記終了時間を有する、前記ビデオファイルのうちの1つを前記ソースデバイスから受信することと、
    前記ビデオファイルのうちの前記少なくとも1つを、符号化ビデオデータを取り出すためのクライアントデバイスのビデオデコーダに復号させることと、
    前記復号されたビデオファイルのうちの前記少なくとも1つを前記クライアントデバイスのディスプレイに表示させることと
    を前記クライアントデバイスのプロセッサに行わせる命令を備える非一時的コンピュータ可読記憶媒体。
  23. 前記ビデオファイルのうちの前記少なくとも1つが、前記第1のプレゼンテーションからの第1のビデオファイルを備え、前記要求が第1の要求を備え、前記時間セクションが第1の時間セクションを備え、前記非一時的コンピュータ可読記憶媒体は、
    利用可能なネットワーク帯域幅の量を判断することと、
    利用可能なネットワーク帯域幅の前記判断された量に基づいて前記第2のプレゼンテーションを選択することと、
    前記ビデオデータの第2の時間セクションを指定する第2の要求を前記ソースデバイスにサブミットすることであって、前記第2の時間セクションが、前記ビデオデータにおいて前記第1の時間セクションよりも後で起こる、サブミットすることと
    を行うための命令をさらに備える、請求項22に記載の非一時的コンピュータ可読記憶媒体。
  24. 前記要求をサブミットする前に、前記ビデオファイルの前記時間セクションの開始の指示を受信することと、
    前記ビデオファイルのうちの前記少なくとも1つについてのバイト範囲を取り出すためのHTTP部分GET要求として前記要求を形成することであって、前記バイト範囲が、前記時間セクションの前記開始に対応する開始バイトを有する、形成することとを行うための命令をさらに備える、請求項22に記載の非一時的コンピュータ可読記憶媒体。
JP2012537011A 2009-10-28 2010-10-27 符号化ビデオ・データのストリーミング Active JP5619908B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US25576709P 2009-10-28 2009-10-28
US61/255,767 2009-10-28
US12/785,770 US8914835B2 (en) 2009-10-28 2010-05-24 Streaming encoded video data
US12/785,770 2010-05-24
PCT/US2010/054334 WO2011053658A1 (en) 2009-10-28 2010-10-27 Streaming encoded video data

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014123358A Division JP6054337B2 (ja) 2009-10-28 2014-06-16 符号化ビデオ・データのストリーミング

Publications (2)

Publication Number Publication Date
JP2013509818A JP2013509818A (ja) 2013-03-14
JP5619908B2 true JP5619908B2 (ja) 2014-11-05

Family

ID=43899514

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2012537011A Active JP5619908B2 (ja) 2009-10-28 2010-10-27 符号化ビデオ・データのストリーミング
JP2014123358A Active JP6054337B2 (ja) 2009-10-28 2014-06-16 符号化ビデオ・データのストリーミング

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2014123358A Active JP6054337B2 (ja) 2009-10-28 2014-06-16 符号化ビデオ・データのストリーミング

Country Status (10)

Country Link
US (2) US8914835B2 (ja)
EP (3) EP3038367B1 (ja)
JP (2) JP5619908B2 (ja)
KR (2) KR101396628B1 (ja)
CN (2) CN102598688B (ja)
BR (1) BR112012009832B1 (ja)
ES (1) ES2746051T3 (ja)
HU (1) HUE045239T2 (ja)
TW (1) TW201138471A (ja)
WO (1) WO2011053658A1 (ja)

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060159432A1 (en) 2005-01-14 2006-07-20 Citrix Systems, Inc. System and methods for automatic time-warped playback in rendering a recorded computer session
US8935316B2 (en) * 2005-01-14 2015-01-13 Citrix Systems, Inc. Methods and systems for in-session playback on a local machine of remotely-stored and real time presentation layer protocol data
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US8914835B2 (en) * 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
RU2622621C2 (ru) 2009-11-04 2017-06-16 Амотек Ко., Лтд. Система и способ для потоковой передачи воспроизводимого контента
CN102055718B (zh) * 2009-11-09 2014-12-31 华为技术有限公司 一种在http streaming系统中实现分层请求内容的方法,装置和系统
KR101750048B1 (ko) * 2009-11-13 2017-07-03 삼성전자주식회사 변속 재생 서비스 제공 방법 및 장치
AU2011205819B2 (en) * 2010-01-18 2015-03-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for supporting playout of content
KR101636108B1 (ko) * 2010-01-18 2016-07-04 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 미디어 스트림 분배를 위한 방법과 배열
US20110179185A1 (en) * 2010-01-20 2011-07-21 Futurewei Technologies, Inc. System and Method for Adaptive Differentiated Streaming
JP5824465B2 (ja) * 2010-02-19 2015-11-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Httpストリーミングにおける適応のための方法と装置
WO2011136402A1 (ko) * 2010-04-27 2011-11-03 엘지전자 주식회사 영상표시기기 및 그 동작방법
US9497290B2 (en) * 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
CN102291373B (zh) 2010-06-15 2016-08-31 华为技术有限公司 元数据文件的更新方法、装置和系统
GB201010456D0 (en) * 2010-06-22 2010-08-04 Vodafone Ip Licensing Ltd Congestion control for streaming data
KR101705813B1 (ko) * 2010-06-23 2017-02-10 삼성전자주식회사 무선 통신 시스템에서 멀티미디어 컨텐츠의 랜덤 액세스 방법 및 장치
EP2613464A4 (en) * 2010-08-31 2015-04-29 Humax Holdings Co Ltd METHOD FOR SENDING AND RECEIVING A MEDIA INFORMATION FILE FOR HTTP STREAMING
CN106330905B (zh) * 2010-09-01 2020-12-01 艾迪尔哈布股份有限公司 内容提供方法和接收提供的内容的方法
CN102137137B (zh) * 2010-09-17 2013-11-06 华为技术有限公司 基于http流的媒体内容动态插播方法、装置及系统
US20120089781A1 (en) * 2010-10-11 2012-04-12 Sandeep Ranade Mechanism for retrieving compressed data from a storage cloud
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
KR20120079880A (ko) * 2011-01-06 2012-07-16 삼성전자주식회사 스트리밍 서비스 시스템에서 북마크 생성 장치 및 방법
KR20120083747A (ko) * 2011-01-18 2012-07-26 삼성전자주식회사 방송통신 융합형 서비스를 위한 전송 방법 및 장치
US9661104B2 (en) * 2011-02-07 2017-05-23 Blackberry Limited Method and apparatus for receiving presentation metadata
EP2924990A1 (en) * 2011-03-16 2015-09-30 Electronics and Telecommunications Research Institute Apparatus and method for providing streaming content using representations
GB2489932B (en) 2011-04-07 2020-04-08 Quantel Ltd Improvements relating to file systems
CA2773924C (en) * 2011-04-11 2020-10-27 Evertz Microsystems Ltd. Methods and systems for network based video clip generation and management
US8751807B2 (en) * 2011-06-23 2014-06-10 Azuki Systems Inc. Method and system for secure over-the-top live video delivery
EP2547062B1 (en) * 2011-07-14 2016-03-16 Nxp B.V. Media streaming with adaptation
WO2013021167A1 (en) * 2011-08-05 2013-02-14 Quantel Limited Methods and systems for providing file data for video files
GB2495268B (en) 2011-08-05 2019-09-04 Quantel Ltd Methods and systems for providing file data for media files
US9955195B2 (en) 2011-08-30 2018-04-24 Divx, Llc Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels
US9467708B2 (en) * 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8818171B2 (en) 2011-08-30 2014-08-26 Kourosh Soroushian Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8615159B2 (en) 2011-09-20 2013-12-24 Citrix Systems, Inc. Methods and systems for cataloging text in a recorded session
CN110062422A (zh) * 2011-10-21 2019-07-26 弗劳恩霍夫应用研究促进协会 无线资源管理设备及方法
EP2595399A1 (en) * 2011-11-16 2013-05-22 Thomson Licensing Method of digital content version switching and corresponding device
KR101922552B1 (ko) * 2011-12-06 2018-11-29 삼성전자주식회사 멀티미디어 컨텐트 전송 시스템에서 적응적 스트리밍을 이용한 트래픽 제어 방법 및 장치
WO2013106390A1 (en) * 2012-01-09 2013-07-18 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9253481B2 (en) 2012-01-13 2016-02-02 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
KR101904053B1 (ko) 2012-03-13 2018-11-30 삼성전자 주식회사 단말장치의 멀티미디어 처리장치 및 방법
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US8813117B1 (en) * 2012-04-27 2014-08-19 Google Inc. Content subset conditional access framework
JP6064249B2 (ja) * 2012-07-09 2017-01-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応ストリーミングオーバーハイパーテキスト転送プロトコルクライアント挙動フレームワークおよびセッション管理の実装
JP6180524B2 (ja) 2012-07-09 2017-08-16 ヴィド スケール インコーポレイテッド 電力認識型ビデオ復号およびストリーミング
CA2881376A1 (en) * 2012-08-07 2014-02-13 Visible World Inc. Systems, methods and computer-readable media for resource-based allocation of content transmitted in a media network
US9432664B2 (en) 2012-09-28 2016-08-30 Qualcomm Incorporated Signaling layer identifiers for operation points in video coding
US8949206B2 (en) 2012-10-04 2015-02-03 Ericsson Television Inc. System and method for creating multiple versions of a descriptor file
US10033777B2 (en) * 2012-10-19 2018-07-24 Interdigital Patent Holdings, Inc. Multi-hypothesis rate adaptation for HTTP streaming
US20140156865A1 (en) * 2012-11-30 2014-06-05 Futurewei Technologies, Inc. Generic Substitution Parameters in DASH
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
CN103929404B (zh) * 2013-01-11 2017-02-15 中国科学院声学研究所 一种解析HTTP chunked编码数据的方法
WO2014113183A1 (en) * 2013-01-17 2014-07-24 Intel IP Corporation Content url authentication for dash
US9432426B2 (en) * 2013-02-04 2016-08-30 Qualcomm Incorporated Determining available media data for network streaming
KR101991214B1 (ko) 2013-03-06 2019-06-19 인터디지탈 패튼 홀딩스, 인크 비디오 스트리밍을 위한 전력 인식 적응
US10275128B2 (en) 2013-03-15 2019-04-30 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
MX353122B (es) * 2013-04-19 2017-12-20 Sony Corp Dispositivo servidor, dispositivo del cliente, método de distribución de contenidos, y programa de computadora.
EP3005712A1 (en) 2013-06-06 2016-04-13 ActiveVideo Networks, Inc. Overlay rendering of user interface onto source video
JP6465541B2 (ja) * 2013-08-06 2019-02-06 キヤノン株式会社 通信装置、再生装置、及びその方法、並びにプログラム
US20150095450A1 (en) * 2013-09-30 2015-04-02 Qualcomm Incorporated Utilizing multiple switchable adaptation sets for streaming media data
US9807452B2 (en) * 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
KR102064792B1 (ko) * 2013-12-17 2020-01-10 한국전자통신연구원 Http 기반의 멀티미디어 스트리밍 서비스를 위한 네트워크 대역폭 적응적 콘텐츠 생성 방법 및 시스템
KR20150083429A (ko) * 2014-01-08 2015-07-17 한국전자통신연구원 Dash를 사용하는 비디오 재생을 위한 비트 깊이 표현 방법
EP3117626A4 (en) 2014-03-13 2017-10-25 Verance Corporation Interactive content acquisition using embedded codes
US20150261753A1 (en) * 2014-03-13 2015-09-17 Verance Corporation Metadata acquisition using embedded codes
US10504200B2 (en) 2014-03-13 2019-12-10 Verance Corporation Metadata acquisition using embedded watermarks
CA2932164C (en) * 2014-04-09 2019-10-08 Lg Electronics Inc. Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
US9860612B2 (en) * 2014-04-10 2018-01-02 Wowza Media Systems, LLC Manifest generation and segment packetization
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
CN106134112B (zh) 2014-04-27 2019-03-08 Lg电子株式会社 发送广播信号的设备、接收广播信号的设备、发送广播信号的方法以及接收广播信号的方法
CN103957471B (zh) * 2014-05-05 2017-07-14 华为技术有限公司 网络视频播放的方法和装置
WO2016028936A1 (en) 2014-08-20 2016-02-25 Verance Corporation Watermark detection using a multiplicity of predicted patterns
US10135748B2 (en) * 2014-09-29 2018-11-20 Apple Inc. Switching between media streams
JP2016076758A (ja) 2014-10-03 2016-05-12 株式会社東芝 再生装置、符号化装置、および再生方法
US10129839B2 (en) * 2014-12-05 2018-11-13 Qualcomm Incorporated Techniques for synchronizing timing of wireless streaming transmissions to multiple sink devices
WO2016100916A1 (en) 2014-12-18 2016-06-23 Verance Corporation Service signaling recovery for multimedia content using embedded watermarks
US20160182594A1 (en) * 2014-12-19 2016-06-23 Cable Television Laboratories, Inc. Adaptive streaming
CN107111477B (zh) 2015-01-06 2021-05-14 帝威视有限公司 用于编码内容和在设备之间共享内容的系统和方法
US11622137B2 (en) 2015-02-11 2023-04-04 Vid Scale, Inc. Systems and methods for generalized HTTP headers in dynamic adaptive streaming over HTTP (DASH)
US10749930B2 (en) 2015-03-02 2020-08-18 Qualcomm Incorporated Indication for partial segment
US10659507B2 (en) * 2015-03-02 2020-05-19 Qualcomm Incorporated Indication for partial segment
CN107534798A (zh) * 2015-04-22 2018-01-02 Lg 电子株式会社 广播信号发送设备、广播信号接收设备、广播信号发送方法和广播信号接收方法
WO2017004196A1 (en) * 2015-06-29 2017-01-05 Vid Scale, Inc. Dash caching proxy application
US9940169B2 (en) 2015-07-23 2018-04-10 Pearson Education, Inc. Real-time partitioned processing streaming
US10621041B2 (en) * 2016-03-25 2020-04-14 Intel Corporation Methods and apparatus to assign indices and relocate object fragments in distributed storage systems
US10735794B2 (en) 2016-03-28 2020-08-04 Sony Corporation Information processing device, information processing method, and information processing system
US10623755B2 (en) 2016-05-23 2020-04-14 Qualcomm Incorporated End of sequence and end of bitstream NAL units in separate file tracks
EP3471065A4 (en) * 2016-06-14 2019-06-05 Panasonic Intellectual Property Corporation of America THREE-DIMENSIONAL DATA ENCODING AND DECODING METHOD AND THREE-DIMENSIONAL DATA ENCODING AND DECODING DEVICE
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
JP6739383B2 (ja) * 2017-03-27 2020-08-12 シャープ株式会社 表示装置、コンテンツの表示方法及びプログラム
US10587904B2 (en) * 2017-07-10 2020-03-10 Qualcomm Incorporated Processing media data using an omnidirectional media format
FR3074591A1 (fr) * 2017-12-05 2019-06-07 Orange Procede de gestion des connexions d'un dispositif electronique.
JP7229696B2 (ja) 2018-08-02 2023-02-28 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
CN108924667B (zh) * 2018-08-03 2021-01-15 阳雨哲 一种支持QoE最大化的可用带宽自适应视频分片请求方法
US11303935B2 (en) * 2019-07-10 2022-04-12 Qualcomm Incorporated Deriving coding system operational configuration
US11310303B2 (en) * 2019-10-01 2022-04-19 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP
US11477522B2 (en) * 2019-12-11 2022-10-18 Arris Enterprises Llc Trick play and trick rate support for HLS
CN113141524B (zh) * 2020-01-17 2023-09-29 北京达佳互联信息技术有限公司 资源传输方法、装置、终端及存储介质
US10958947B1 (en) * 2020-03-12 2021-03-23 Amazon Technologies, Inc. Content delivery of live streams with playback-conditions-adaptive encoding
US11392347B2 (en) * 2020-06-17 2022-07-19 Twitter, Inc. Audio messaging interface on messaging platform
US11722741B2 (en) 2021-02-08 2023-08-08 Verance Corporation System and method for tracking content timeline in the presence of playback rate changes
US20220321930A1 (en) * 2021-03-31 2022-10-06 Arris Enterprises Llc Content insertion into a content stream
CN115190304A (zh) * 2021-04-01 2022-10-14 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质及电子设备

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5886732A (en) 1995-11-22 1999-03-23 Samsung Information Systems America Set-top electronics and network interface unit arrangement
JP2000201343A (ja) * 1999-01-05 2000-07-18 Toshiba Corp 動画像デ―タ再生装置及び動画像デ―タ分割装置並びにプログラムを記録したコンピュ―タ読み取り可能な記録媒体
US7945688B1 (en) 2001-06-12 2011-05-17 Netapp, Inc. Methods and apparatus for reducing streaming media data traffic bursts
FI115418B (fi) 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
FI20011871A (fi) * 2001-09-24 2003-03-25 Nokia Corp Multimediadatan prosessointi
WO2003058961A1 (en) * 2002-01-11 2003-07-17 Koninklijke Philips Electronics N.V. Transmission system
DE60212383T2 (de) * 2002-08-27 2006-10-19 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren zur Übertragung von Datenströmen mit Datensegmenten variabler Länge
DE10339535A1 (de) 2003-08-26 2005-03-24 Deutsche Thomson-Brandt Gmbh Verfahren zum Abfragen von Informationen bezüglich einer Netzwerkteilnehmerstation in einem Netzwerk verteilter Stationen sowie Netzwerkteilnehmerstation für die Durchführung des Verfahrens
US20050102371A1 (en) * 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
DE10353564A1 (de) * 2003-11-14 2005-06-16 Deutsche Thomson-Brandt Gmbh Verfahren zur abschnittsweisen, diskontinuierlichen Übertragung von Daten in einem Netzwerk verteilter Stationen sowie Netzwerkteilnehmerstation als Anforderungsgerät bei der Durchführung eines solchen Verfahrens als auch Netzwerkteilnehmerstation als Quellgerät bei der Durchführung eines solchen Verfahrens
US20080281803A1 (en) 2003-12-22 2008-11-13 Koninklijke Philips Electronic, N.V. Method of Transmitting Content With Adaptation of Encoding Characteristics
US7836389B2 (en) 2004-04-16 2010-11-16 Avid Technology, Inc. Editing system for audiovisual works and corresponding text for television news
US20050254575A1 (en) * 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US20070016549A1 (en) 2005-07-18 2007-01-18 Eastman Kodak Company Method system, and digital media for controlling how digital assets are to be presented in a playback device
US8788933B2 (en) * 2005-12-01 2014-07-22 Nokia Corporation Time-shifted presentation of media streams
US7783773B2 (en) 2006-07-24 2010-08-24 Microsoft Corporation Glitch-free media streaming
US8467457B2 (en) * 2007-01-16 2013-06-18 Mobixell Networks (Israel) Ltd System and a method for controlling one or more signal sequences characteristics
KR101366803B1 (ko) * 2007-04-16 2014-02-24 삼성전자주식회사 Http를 이용한 통신 방법 및 장치
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
US20100312828A1 (en) 2009-06-03 2010-12-09 Mobixell Networks Ltd. Server-controlled download of streaming media files
US8631455B2 (en) 2009-07-24 2014-01-14 Netflix, Inc. Adaptive streaming for digital content distribution
US9203816B2 (en) 2009-09-04 2015-12-01 Echostar Technologies L.L.C. Controlling access to copies of media content by a client device
US8484368B2 (en) 2009-10-02 2013-07-09 Disney Enterprises, Inc. Method and system for optimizing download and instantaneous viewing of media files
US8914835B2 (en) 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
US9226045B2 (en) * 2010-08-05 2015-12-29 Qualcomm Incorporated Signaling attributes for network-streamed video data

Also Published As

Publication number Publication date
ES2746051T3 (es) 2020-03-04
CN102598688B (zh) 2016-08-31
HUE045239T2 (hu) 2019-12-30
KR20130129481A (ko) 2013-11-28
US20110099594A1 (en) 2011-04-28
JP6054337B2 (ja) 2016-12-27
KR101396628B1 (ko) 2014-05-16
US20110196982A1 (en) 2011-08-11
EP3038367B1 (en) 2019-06-19
US8914835B2 (en) 2014-12-16
CN105187850B (zh) 2019-03-29
CN105187850A (zh) 2015-12-23
KR101453239B1 (ko) 2014-10-23
BR112012009832B1 (pt) 2021-08-31
EP3598762A1 (en) 2020-01-22
EP2494779A1 (en) 2012-09-05
BR112012009832A2 (pt) 2016-11-22
JP2013509818A (ja) 2013-03-14
US8938767B2 (en) 2015-01-20
CN102598688A (zh) 2012-07-18
EP3038367A1 (en) 2016-06-29
WO2011053658A1 (en) 2011-05-05
KR20120085870A (ko) 2012-08-01
JP2014212538A (ja) 2014-11-13
TW201138471A (en) 2011-11-01

Similar Documents

Publication Publication Date Title
JP5619908B2 (ja) 符号化ビデオ・データのストリーミング
US10582201B2 (en) Most-interested region in an image
US10565463B2 (en) Advanced signaling of a most-interested region in an image
JP6392115B2 (ja) ビデオ構成要素を多重化するためのデータを信号伝達すること
US9900363B2 (en) Network streaming of coded video data
WO2017205504A1 (en) Virtual reality video signaling in dynamic adaptive streaming over http
US20150095450A1 (en) Utilizing multiple switchable adaptation sets for streaming media data
US20150312303A1 (en) Determining whether to use sidx information when streaming media data
US20170347165A1 (en) Sample entries and random access
KR101436267B1 (ko) 비디오 구성요소들을 멀티플렉싱하기 위한 데이터의 시그널링

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130611

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130807

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130814

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131111

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140114

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140320

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140616

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140917

R150 Certificate of patent or registration of utility model

Ref document number: 5619908

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250