JP6572222B2 - メディアファイルの生成方法、生成装置、及びプログラム - Google Patents

メディアファイルの生成方法、生成装置、及びプログラム Download PDF

Info

Publication number
JP6572222B2
JP6572222B2 JP2016544127A JP2016544127A JP6572222B2 JP 6572222 B2 JP6572222 B2 JP 6572222B2 JP 2016544127 A JP2016544127 A JP 2016544127A JP 2016544127 A JP2016544127 A JP 2016544127A JP 6572222 B2 JP6572222 B2 JP 6572222B2
Authority
JP
Japan
Prior art keywords
track
layer
tile
parameter
sample
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
JP2016544127A
Other languages
English (en)
Other versions
JP2017508334A5 (ja
JP2017508334A (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.)
Canon Inc
Original Assignee
Canon 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
Priority claimed from GB1400244.8A external-priority patent/GB2522014A/en
Priority claimed from GB201400303A external-priority patent/GB201400303D0/en
Application filed by Canon Inc filed Critical Canon Inc
Publication of JP2017508334A publication Critical patent/JP2017508334A/ja
Publication of JP2017508334A5 publication Critical patent/JP2017508334A5/ja
Application granted granted Critical
Publication of JP6572222B2 publication Critical patent/JP6572222B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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, manipulating MPEG-4 scene graphs

Description

本発明は、一般的には、メディアデータの交換、管理、編集、および提示を容易にする柔軟で拡張可能なフォーマットを提供し、特に圧縮ビデオストリームにおける対象のユーザ選択領域のHTTP(HyperText Transfer Protocol)およびRTP(Real−time Transport Protocol)ストリーミングに関してストリーム配信を改善するための、たとえば、MPEG標準化機構によって定義されているようなベースメディアファイルフォーマットによるタイムドメディアデータのカプセル化の分野に関する。より詳細には、本発明は、データ、特に1つ以上のタイルの効率的なストリーミングまたは抽出を可能にする空間タイルのような多層分割データを含むエレメンタリストリームのカプセル化において層間依存性を符号化するための方法、デバイス、およびコンピュータプログラムに関する。
ビデオコード化は、一連のビデオ画像を、ビデオ画像を送信または記憶することができるようにコンパクトなデジタル化ビットストリームに変換する方法である。符号化デバイスが使用されてビデオ画像がコード化され、関連する復号デバイスが、表示および閲覧のためにビットストリームを再構築するために利用可能である。一般的な目的は、元のビデオ情報よりもサイズが小さくなるように、ビットストリームを形成することである。これによって、ビットストリームコードを送信または記憶するために必要とされる、伝送ネットワークまたは記憶デバイスの容量が低減される利点がある。送信されるために、ビデオビットストリームは一般的には、ヘッダおよびチェックビットを一般的には追加する送信プロトコルに従ってカプセル化される。ビデオストリーミングメカニズムは、3GPPの適応HTTPストリーミング(AHS)、マイクロソフトのSmooth StreamingまたはアップルのHTTP live streamingのようなHTTP(HyperText Transfer Protocol)を介してオーディオ/ビデオメディアをストリーミングするために、インターネットネットワークおよびモバイルネットワーク上に広く配備および使用されている。
最近、ムービングピクチャエキスパートグループ(MPEG)は、HTTPを介した既存のストリーミングソリューションを統一し、それらの後継となるための新たな標準を発行した。「Dynamic adaptive streaming over HTTP(DASH)」と呼ばれるこの新たな基準は、インテリジェンス(すなわち、ストリーミングするためのメディアデータの選択、ならびに、ユーザ選択、ネットワーク状態、およびクライアント機能に対するビットストリームの動的適合)がまったくクライアント選択およびデバイスのみに依拠する、標準的なウェブサーバに基づくHTTPを介したメディアストリーミングモデルをサポートするように意図されている。
このモデルにおいて、メディアプレゼンテイションは、データセグメント、および、表現されるべきタイムドメディアデータの編成を表す「Media Presentation Description(MPD)」と呼ばれるマニフェストにおいて編成される。特に、マニフェストは、データセグメントをダウンロードするためのユーザに対するリソース識別子を含み、有効なメディアプレゼンテイションを得るためにそれらのデータセグメントを組み合わせるためのコンテキストを提供する。リソース識別子は一般的には、バイト範囲と組み合わされる可能性があるHTTP−URL(Uniform Resource Locator)である。マニフェストに基づいて、クライアントデバイスは、任意の時点において、その要求、その能力(たとえば、サポートされるコーデック、表示サイズ、フレームレート、品質レベルなど)に従って、ネットワーク状態(たとえば、利用可能な帯域幅)に応じて、いずれのメディアセグメントがメディアデータサーバからダウンロードされるべきであるかを決定する。
HTTPに対する代替的なプロトコル、たとえば、Real−time Transport Protocol(RTP)が存在することが留意されるべきである。
加えて、ビデオ解像度は、標準精細度(SD)から高精細度(HD)、および超高精細度(たとえば、4K2Kまたは8K4K、すなわち、4,096×2,400ピクセルまたは7,680×4,320ピクセルの画像を含むビデオ)へと向かって絶えず増大している。しかしながら、特にビデオが超高精細度であるとき、すべての受信およびビデオ復号デバイスが、フル解像度におけるビデオにアクセスするためのリソース(たとえば、ネットワークアクセス帯域幅またはCPU(中央処理装置))を有しているわけではなく、すべてのユーザがそのようなビデオにアクセスする必要があるわけではない。そのようなコンテキストにおいて、特に、いくつかの関心領域(ROI)のみにアクセスする、すなわち、ビデオシーケンス全体のうちのいくつかの空間下位区分のみにアクセスする能力を提供することは特に利点がある。
ビデオに属するフレームの空間サブパートにアクセスするための既知のメカニズムは、ビデオの各フレームを、一般的にはタイルと称される、独立して復号可能な空間領域の配列として編成することに存する。SVC(Scalable Video Coding)またはHEVC(High Efficiency Video Coding)のようないくつかのビデオフォーマットが、タイル定義に対するサポートを提供する。ユーザ定義のROIは、1つまたはいくつかの連続したタイルをカバーし得る。
したがって、HTTPプロトコルに従って、ユーザ選択のROIをストリーミングするためには、1つ以上のタイルへの空間アクセスを可能にするとともに、アクセスされるタイルの組み合わせを可能にするように、符号化ビデオビットストリームのタイムドメディアデータのカプセル化を可能にすることが重要である。
符号化ビデオビットストリームは一般的には完全なフレームに対応する連続した時間サンプルのセットとして構成され、時間サンプルは、復号順序に応じて編成されることを想起されたい。そのような符号化ビデオビットストリームをカプセル化および記述するためのファイルフォーマットが使用される。
実例として、国際標準化機構ベースメディアファイルフォーマット(ISO BMFF)が、ネットワークまたは別のビットストリーム配信メカニズムを介してローカル記憶または送信のいずれかのために符号化タイムドメディアデータビットストリームを記述する既知の柔軟で拡張可能なフォーマットである。このファイルフォーマットはオブジェクト指向型である。これは、連続的にまたは階層的に編成され、タイミングおよび構造パラメータのような符号化タイムドメディアデータビットストリームのパラメータを定義する、ボックスと呼ばれる構成ブロックから構成される。このファイルフォーマットによれば、タイムドメディアデータビットストリームは、トラックボックスと称される別のデータ構造において定義されるmdatボックスと称されるデータ構造内に含まれる。トラックは、サンプルが、単一のタイムスタンプと関連付けられたすべてのデータ、すなわち、単一のフレームと関連付けられたすべてのデータ、または、同じタイムスタンプを共有するいくつかのフレームと関連付けられたすべてのデータに対応するタイムドサンプルシーケンスを表す。
SVCフォーマットのビデオのようなスケーラブルビデオについて、各トラックが特定のスケーラビリティレベルにおいてビデオを表現する、複数の依存トラックを使用することによって層状メディアデータ編成が効率的に表現され得る。トラック間のデータ重複を回避するために、抽出器が使用され得る。標準的なファイルフォーマットによれば、抽出器は、他のビットストリームからのネットワーク抽象化層(NAL)ユニットの効率的な抽出を可能にする、ビットストリーム内に直に含まれるデータ構造である。たとえば、エンハンスメントレイヤトラックのビットストリームは、ベースレイヤトラックからのNALユニットを参照する抽出器を含みんでも良い。その後、そのようなエンハンスメントレイヤトラックがそのファイルフォーマットから抽出されると、抽出器は、それらが参照しているデータに置き換えられなければならない。
副情報を記述し、この副情報へのアクセスを容易にするか、または、ビットストリームを複数のセグメントに効率的に編成するために、これらのメカニズムを組み込んでいるISO BMFFを使用するときにいくつかの戦略を採用することができる。
たとえば、「Implications of the ISO Base Media File Format on Adaptive HTTP Streamingof H.264/SVC」と題する論文において、著者Kofler他は、ISO BMFFの可能性および制限を考慮してHTTPストリーミングのためのスケーラブルビデオビットストリーム(H264/SVC)を編成するための3つの異なる戦略を提示している。
a)すべてのISO BMFFメタデータ(トラック定義を含む)を含むファイルタイプボックス「ftyp」および動画ボックス「moov」を含む特定のファイルヘッダを含む単一のファイル、この単一のファイルは、符号化ビデオビットストリーム全体を含む単一のmdatボックスをも含む。この編成は、ローカル記憶には適しているが、クライアントがビデオビットストリーム全体のうちの一部分を必要とするであろう場合があるHTTPストリーミングには適合していない。
b)フラグメンテーションに適した複数のmoof/mdatボックスを含む単一のファイル。このフォーマットはプログレシブダウンロードを可能にする。moofボックスは、フラグメントレベルにおいてはmoovボックスと等価である。この方式によれば、フラグメント化メディアファイルを使用して、スケーラブルビデオビットストリームが、異なるスケーラビリティレベルにおいてビデオを表現する複数の依存トラックに分割される。他のトラックからのNALユニットを参照するために抽出器が使用される。タイルごとのトラックが使用される場合、すべてのアドレス指定可能なトラックが前もって準備される必要があり、トラックを独立して選択することはできない。いくつかのタイルを表示する必要がある場合、いくつかのビットストリームが復号されなければならず、ベースレイヤが数回復号される。
c)複数のセグメントファイル、各ファイルはそれ自体のURLによってアクセス可能であり、独立してダウンロード可能である。各セグメントは一般的には、一種のファイルヘッダとして作用するセグメントタイプボックス(styp)、任意選択のセグメントインデックスボックス(sidx)および1つ以上のフラグメントから構成される。ここでも、各フラグメントはmoofおよびmdatボックスから構成される。この方式によれば、フラグメント化メディアファイルを使用して、各トラックがそれ自体のセグメント内に記憶され、関連するビットストリームが1つのスケーラビリティレベルに関連している。必要ならば、依存トラックからの必要とされるビットストリームを参照するために抽出器が使用される。そのようなコード化方式は、トラックを独立してストリーミングするのに特に適している。それはDASH規格によく適合しているが、いくつかのビットストリームを復号する必要があり、したがって、トラックあたり1つの復号器が必要とされるため、タイルストリーミングには適合していない。その上、2つ以上のタイルを選択するとき、ベースレイヤのビットストリームが重複する可能性がある。
空間タイルに適用されるとき、これらの戦略はいずれも、HTTPストリーミングの文脈において特定のファイルに対する効率的なアクセスを可能にしない。実際、既存のファイルフォーマットの定義によれば、ある時間間隔に対応するいくつかのフレームの空間タイルを表示するためには、依然として符号化ビデオビットストリームにおける複数の非連続的なバイト範囲にアクセスする必要があるか、または、結果としてビットストリームが重複することになる。
これらの問題を解決するために、いずれのトラック組み合わせがクライアントアプリケーションによって選択されようとも、ISO BMFF構文解析の結果が常に、低記述オーバヘッドを必要とするビデオ復号器にとって有効なビデオエレメンタリビットストリームをもたらすことを保証する、多層ビデオストリーム内の空間タイルを処理するのに適切な、効率的なデータ編成およびトラック記述方式が提供される。
本出願に係るメディアファイルの生成方法は、例えば、以下のように表現されうる。すなわち、ビデオデータを取得し、前記取得されたビデオデータに基づいて1又は複数のビデオトラックを生成し、前記1又は複数のビデオトラックの少なくとも1つに対応する空間領域に関連付けられる記述パラメータであって、セットされたときは、当該記述パラメータに関連付けられている空間領域が完全なピクチャであることを示す記述パラメータを生成し、前記記述パラメータがセットされない空間領域のためのパラメータとして、前記空間領域により表される矩形領域の左上画素の水平及び垂直方向のオフセットパラメータを生成し、前記生成された1又は複数のビデオトラックと、前記生成された記述パラメータ及びオフセットパラメータのうち少なくとも何れかと、に基づいて、1又は複数のメディアファイルを生成する。
本発明のさらなる利点は、図面および詳細な説明を精査すれば、当業者には明らかになろう。任意の追加の利点が本明細書に組み込まれることが意図されている。
ここで、本発明の実施形態が、例としてのみ、添付の図面を参照して説明される。
(1a)、(1b)、および(1c)を含む図1は、HEVCビットストリーム内のタイルおよびスライスセグメントの例を示す。 (2a)および(2b)を含む図2は、複数のトラックにおけるタイルのカプセル化の例を示す。 (3a)、(3b)、および(3c)を含む図3は、HEVCスケーラブルビットストリームの構成の種々の例を示す。 図4は、表示されるべきユーザによって選択されたタイルの時間パイプを示す。 図5は、多層HEVC方式を使用しながらの、ビデオデータを符号化するための基準ピクチャセットの使用を示す。 (6a)、(6b)、(6c)、および(6d)を含む図6は、種々のタイプの層間タイル予測を示す。 図7は、層間依存性記述を可能にするタイル記述子の一例を示す。 (8a)および(8b)を含む図8は、それぞれ、他方のタイルに対する復号依存性の記述を可能にする、本発明の特定の実施形態に従って変更されている単一層タイル記述子、および、タイルセット記述子を示す。 図9は、多層タイル化のタイルセット記述子の一例を示す。 図10は、タイルトラックにおける層間依存性のシグナリングの一例を示す。 図11は、HEVCビットストリームをベーストラックおよび独立したタイルトラックを含むトラックセットとしてのカプセル化する一例を示す。 図12は、4つのタイルを含むHEVCビットストリームの事例におけるトラック間の依存性の簡略化された概略図を示しており、各タイルは別個のタイルトラック内に記憶されている。 図13は、ベースレイヤおよびエンハンスメントレイヤを含むスケーラブルHEVCビットストリームの事例におけるトラック間の依存性の簡略化された概略図を示しており、ベースレイヤおよびエンハンスメントレイヤはタイル化されている。 図14は、再帰抽出器が使用されるときの、ベースレイヤおよびエンハンスメントレイヤを含むスケーラブルHEVCビットストリームの事例におけるトラック間の依存性の簡略化された概略図を示しており、ベースレイヤおよびエンハンスメントレイヤはタイル化されている。 図15は、多層タイル化ビデオビットストリームを効率的にカプセル化するためにサーバデバイスにおいて実行することができるステップの一例を示す。 図16は、符号化多層タイル化ビデオビットストリームをカプセル開放するためにビットストリーム読み取り器において実行することができるステップの一例を示す。 図17は、再帰抽出器を含むトラックからビデオデータを抽出するためのアルゴリズムの一例を示す。 図18は、1つ以上の実施形態のステップを実施することができるサーバまたはクライアントデバイスのブロック図を示す。
ある特定の実施形態によれば、タイムドサンプル(たとえば、画像)を含む多層タイル化タイムドメディアデータ(たとえば、スケーラブルタイル化ビデオデータ)のような多層分割タイムドメディアデータが、いくつかのタイムドメディアデータトラック、一般的にはベーストラックおよびタイルトラック、よりなるセットとして送信される。またある特定の実施形態によれば、ベーストラックは、ベースレイヤベーストラックおよび少なくとも1つのエンハンスメントレイヤベーストラックを含み、前記タイルトラックは、ベースレイヤタイルトラックおよびエンハンスメントレイヤタイルトラックを含む。各タイムドメディアデータトラックは、いくつかのタイムドサンプルの1つの空間サブサンプル(たとえば、いくつかのNALユニット)を含む。トラック依存性(タイル化、層間および/または層内依存性)を記述するために、抽出器が使用される。そのようなタイムドメディアデータトラックセットが、多層空間ビデオタイルの選択、構成、および効率的なストリーミングを可能にする。各トラックは、メディアセグメントファイルのセットとしてサーバデバイスからクライアントデバイスへと送信することができる。初期化セグメントファイルを使用して、メディアセグメントファイルを復号するために必要とされるメタデータを送信することができる。
これらの記述は層依存性記述とは別個に考慮され、それによって、経時的な依存性の変化は、タイル化および依存性全体が再び記述されることを必要としないという利点がある。層間依存性は、抽出器、特に再帰抽出器を使用して符号化することができ、再帰は、依存性宣言によって制御される。
本発明のある実施形態は、たとえば、HEVCとして知られているビデオフォーマットに適用することができる。
HEVC規格によれば、画像を、タイル、スライス、およびスライスセグメントへと空間的に分割することができる。この規格において、タイルは、水平および垂直境界(すなわち、行および列)によって画定される画像の矩形領域に対応する。これは、整数個のコード化ツリーユニット(CTU)を含む。それゆえ、タイルは、たとえば、関心領域の位置およびサイズを定義することによって、関心領域を識別するのに効率よく使用することができる。しかしながら、HEVCビットストリームの構造およびネットワーク抽象化層(NAL)ユニットとしてのそのカプセル化は、タイルに関連して編成されず、スライスに基づく。
HEVC規格において、スライスはスライスセグメントのセットであり、スライスセグメントのセットのうちの第1のスライスセグメントは独立したスライスセグメント、すなわち、ヘッダ内に記憶されているその一般的な情報が別のスライスセグメントのものを参照しないスライスセグメントである。スライスセグメントセットの他のスライスセグメントは、存在する場合、依存スライスセグメント(すなわち、ヘッダ内に記憶されているその一般的な情報が別のスライスセグメントのうちの1つを参照するスライスセグメント)である。
スライスセグメントは、整数個の連続した(ラスタ走査順の)コード化ツリーユニットを含む。それゆえ、スライスセグメントは、矩形形状のものとすることができるか、またはそうでなくてもよく、そのため、関心領域を表現するのに適していない。これは、スライスセグメントデータが後続するスライスセグメントヘッダについてHEVCビットストリーム内に符号化される。独立スライスセグメントと依存スライスセグメントとは、それらのヘッダが異なっており、依存スライスセグメントは独立スライスセグメントに依存するため、そのヘッダの情報量が独立スライスセグメントのものよりも小さい。独立スライスセグメントおよび依存スライスセグメントは両方とも、タイルを定義するために、または、エントロピー復号同期点として使用される、対応するビットストリーム内のエントリポイントのリストを含む。
(1a)、(1b)、および(1c)含む図1は、タイルおよびスライスセグメントの例を示す。より正確には、(1a)は、垂直境界105−1および105−2ならびに水平境界110−1および110−2によって9つの部分に分割されている画像(100)を示す。115−1〜115−9として参照されている9つの部分の各々が、ある特定のタイルを表す。
(1b)は、垂直境界105’によって区切られている2つの垂直タイルを含む画像(100’)を示す。画像100’は、5つのスライスセグメント、すなわち、1つの独立スライスセグメント120−1(斜線によって表されている)および4つの依存スライスセグメント120−2〜120−5を含む単一のスライス(参照符号なし)を含む。
(1c)は、垂直境界105’’によって区切られている2つの垂直タイルを含む画像(100’’)を示す。左タイルは2つのスライス、すなわち、1つの独立スライスセグメント(120’−1)および1つの依存スライスセグメント(120’−2)を含む第1のスライス、ならびに、1つの独立スライスセグメント(120’−3)および1つの依存スライスセグメント(120’−4)を含む第2のスライスを含む。右タイルは、1つの独立スライスセグメント(120’−5)および1つの依存スライスセグメント(120’−6)を含む1つのスライスを含む。
HEVC規格によれば、スライスセグメントは、以下のように要約することができる規則に従ってタイルにリンクされる(一方または両方の条件が満たされなければならない):
スライスセグメント内のすべてのCTUが同じタイルに属する(すなわち、スライスセグメントはいくつかのタイルに属することはできない);および、
タイル内のすべてのCTUが同じスライスセグメントに属する(すなわち、いくつかのスライスセグメントの各々がそのタイルのみに属することを条件として、タイルはこれらのいくつかのスライスセグメントに分割しても良い)。
明瞭にするために、以下において、1つのタイルが1つの独立スライスセグメントのみを有する1つのスライスを含むとする。しかしながら、本発明の実施形態は、(1b)および(1c)に示すもののような他の構成によって実行されてもよい。
上述したように、タイルは関心領域のための適切なサポートと考えることができるが、スライスセグメントは、通信ネットワークにわたる搬送のためにNALユニット内に実際に置かれ、アクセスユニット(すなわち、ファイルフォーマットレベルにおけるコード化ピクチャまたはサンプル)を形成するために集約されるエンティティである。
HEVC規格によれば、このタイプのNALユニットは、以下のように定義することができる2バイトのNALユニットヘッダ内に符号化されることを想起されたい。
nal_unit_header () {
forbidden_zero_bit
nal_unit_type
nuh_layer_id
nuh_temporal_id_plus1

スライスセグメントをコード化するために使用されるNALユニットは、スライスセグメントアドレス構文要素によってスライスセグメント内の最初のCTUのアドレスを示すスライスセグメントヘッダを含む。そのようなスライスセグメントヘッダは以下のように定義することができる。
slice_segment_header () {
first_slice_segment_in_pic_flag
if(nal_unit_type >= BLA_W_LP && nal_unit_type <= RSV_IRAP_VCL23)
no_output_of_prior_pics_flag
slice_pic_parameter_set_id
if(!first_slice_segment_in_pic_flag){
if(dependent_slice_segments_enabled_flag)
dependent_slice_segment_flag
slice_segment_address

If(!dependent_slice_segment_flag){
[…]
タイル化情報は、PPS(ピクチャパラメータセット)NALユニットにおいて提供される。その後、スライスセグメントとタイルとの間の関係をこれらのパラメータから差し引くことができる。
空間予測は(定義により)タイル境界上でリセットされるが、タイルが基準フレーム内の異なるタイルからの時間予測器を使用することを妨げるものはない。したがって、独立タイルを構築するために、符号化中、予測ユニットの運動ベクトルは、基準フレーム内の共在するタイル内にあるままにするために、タイル内部に制約されるという利点がある。加えて、1つのみのタイルを複合しているときにエラードリフトが導入されないように、タイル境界上ではインループフィルタ(非ブロック化およびサンプル適応オフセット(SAO)フィルタ)は機能停止されていることが好ましい。そのようなインループフィルタの制御はHEVC規格において利用可能であることが留意されるべきである。これは、スライスセグメントヘッダ内でloop_filter_across_tiles_enabled_flagとして知られているフラグによって設定される。このフラグを明確にゼロに設定することによって、タイル境界にある画素が、隣接するタイルの境界にかかる画素に依存することはできない。運動ベクトルおよびインループフィルタに関係するこれら2つの条件が満たされるとき、タイルは「独立復号可能タイル」または「独立タイル」と考えることができる。
ビデオビットストリームが独立タイルのセットとして符号化されると、これはその後、基準データの喪失および再構築エラーの伝播の一切の危険性なしにフレームごとのタイルベースの復号を可能にする。したがって、この構成は、たとえば、図4に示す関心領域(タイル3および7を含む)に対応する可能性がある元のビデオの空間部分のみを再構築することを可能にする。そのような構成は、タイルベースの復号が信頼できることを示すように、ビデオビットストリーム内の補足情報として示すことができる。
MPEG−4 Part12規格の既存のサンプルグループ化メカニズムを使用して、タイルをカプセル化することができる。したがって、特定の種類の標準的なVisualSampleGroupEntry記述子であるタイル記述子を用いて、特定のサンプルグループ記述が作成される。サンプルグループ化メカニズムは、トラック内のサンプルの区切りを表現するのに使用される。それらは、2つのボックス、すなわち、サンプルのサンプルグループへの割り当てを記述するSampleToGroupボックス(「sbgp」)と、特定のサンプルグループ内のサンプルの共通の特性を記述するSampleGroupDescriptionボックス(「sgpd」)とを使用することに依拠する。特定のタイプのサンプルグループ化は、タイプフィールド(「grouping_type」)を介して1つのSampleToGroupボックスと1つのSampleGroupDescriptionボックスとを組み合わせることによって定義される。種々のグループ化基準に基づいて、複数のグループ化インスタンス(すなわち、SampleToGroupボックスとSampleGroupDescriptionボックスとの組み合わせ)が存在する可能性がある。
サンプルのタイル化に関係付けられる特定のグループ化基準が使用される。「trif」と呼ばれるこの特定のグループ化タイプは、タイルの特性を記述し、標準的なVisualSampleGroupEntryから導き出される。これは、TileRegionSampleGroupEntryとして参照することができ、以下のように定義される。
class TileRegionGroupEntry () extends VisualSampleGroupEntry (‘trif’) {
unsigned int(16) groupID;
unsigned int(2) independent;
unsigned int(6) reserved=0;
unsigned int(16) horizontal_offset;
unsigned int(16) vertical_offset;
unsigned int(16) region_width;
unsigned int(16) region_height;
この特定のタイプのグループエントリによれば、パラメータgroupIDは、グループによって記述されるタイルの固有の識別子である。パラメータhorizontal_offsetおよびvertical_offsetはそれぞれ、基本領域の輝度サンプルにおける、HEVCフレームの左上画素に対する、タイルによって表現される矩形領域の左上画素の水平および垂直オフセットを設定するのに使用される。パラメータregion_widthおよびregion_heightはそれぞれ、HEVCフレームの輝度サンプルにおける、タイルによって表現される矩形領域の幅および高さを設定するのに使用される。パラメータindependentは、タイルが、上述したように独立タイルの定義を参照することによって、サンプルタイルのみに属するサンプルに関係する復号依存性を含むことを指定する2ビット語である。実例として、またタイル編成を記述するためのSEIメッセージ(補足強化情報)の標準的な使用を参照して、tile_section_exact_match_flagとして知られるフラグを使用して、独立フラグの値を設定することができ、その意味は以下のように設定することができる。
−パラメータindependentが0に等しい場合、このタイルと同じフレームまたは先行するフレーム内の他のタイルとの間のコード化依存性は、タイルセットレベルにおいて記述されているかまたは分からないかのいずれかである;
−パラメータindependentが1に等しい場合、このタイルと任意の基準フレーム内の異なるgroupIDを有する他のタイルとの間の時間コード化依存性はないが、このタイルと、基準フレーム内の同じgroupIDを有するタイルとの間にはコード化依存性がある可能性がある、および、
−パラメータindependentが2に等しい場合、このタイルと同じフレーム内の他のタイルとの間にコード化依存性はなく、また、このタイルと基準フレーム内の任意の他のタイルとの間にコード化依存性はなく、
independentパラメータ値3は予約されている。
任意に、タイルあたりの平均ビットレートを記述するパラメータは、MPEG4BitRateBoxを用いて、タイル記述子において、または、タイルサンプルエントリ、たとえば、4文字コード「hvt1」によって表される、特定のVisualSampleEntryであるHEVCTileSampleEntry205を記述するmp4ボックスにおいて設定することができる。帯域幅に基づく適合のためにストリーミングクライアントに提供されるように、このボックス内にタイルごとのビットレート情報を記憶することが有用であり得る。ほとんどのmp4ボックスに関して、HEVCTileSampleEntryボックスは、用途特有の必要性に合致するために、任意の追加のボックスを用いて拡張することができる。
各タイルの特性は、各タイルトラックについて、「trif」grouping_typeおよびTileRegionGroupEntryを有する1つのSampleGroupDescriptionボックス(「sgpd」)を定義することによって動画ヘッダ(「moov」ボックス)内で一度与えられる。タイル特性はまた、トラックフラグメントごとに定義することもできる。そのようなmp4トラックは、ビデオタイルトラックまたはタイルトラックとして定義することができる。HEVC規格によれば、HEVCタイルトラックは、このトラック内のタイル(複数可)が属するHEVC層の他のNALU(一般的には、様々なパラメータセットのようなセットアップ情報)を搬送するHEVCトラックに対する基準がそれについて存在する、ビデオタイルトラックである。この基準は、タイルベーストラックを示すために、「sbas」4文字コード、または、「tbas」のようなより特定的なコードのような、MPEG−4 Part15規格においてすでに定義されている値を使用することができる。
1つのタイルトラックは一つのそして一つだけのTileRegionGroupEntry((8a)に示す)を有し、TileSetGroupEntryを有しないか、または、一つだけのTileSetGroupEntry、および、そこからこのタイルセットが作成される1つ以上の依存性TileRegionGroupEntryを有するかのいずれかであるべきであり、TileSetGroupEntryは、TileRegionGroupEntryの、記述されているタイルのセットへの拡張である。これらのグループの各々には、NALUをグループに関連付けるために使用することができる一意の識別子が割り当てられることが留意されるべきである。タイル領域およびタイルセットは、「tbas」トラック基準によって示されるように、基本HEVC層によってスコープされる、groupIDに対する同じ名前空間を共有する(すなわち、同じベースレイヤを有する任意のトラック内に、同じgroupIDを有する2つのタイル領域またはタイルセットがあるべきではない)。
(2a)および(2b)を含む図2は、複数のトラックにおけるタイルのカプセル化の例を示す。
(2a)は、タイル構成の例を示す。実例として、これは、4つのタイル(タイル1〜タイル4)を含み、各タイルのサイズは、310ピクセル幅および256ピクセル高さである。
(2b)は、(2a)において表現されている4つのタイルの、MPEG−4ファイルフォーマットによる独立トラックへのカプセル化の一例を示す。図示されているように、各タイルはそれ自体のトラック内にカプセル化され、効率的なデータアドレス指定が可能になり、結果として、5つのトラック、すなわち、各タイルをカプセル化するための、201、202、203、および204として参照される4つのタイルトラックならびにすべてのタイルトラックに共通の1つのパラメータセットトラック210(本明細書においてはベーストラックとも称する)としてビデオがカプセル化されることになる。
各タイルトラック(201、202、203、および204)の記述は、TileRegionGroupEntryボックス206のようなTileRegionGroupEntryボックス(「trif」参照によって識別される)に基づく。
ここで、「trif」ボックスは、タイルトラックのすべてのサンプルを、適切なTileRegionGroupEntryまたはTileSetGroupEntryに関連付けるために、デフォルトサンプルグループ化メカニズム(図面においてはdef_sample_descr_index=1と表記されている属性default_sample_description_index=1)を用いる)を使用する。たとえば、タイル1に対応するNALユニット221は、TileRegionGroupEntryボックス206内のトラック1(201として参照される)に記述されている。
ここで、所与のトラック内のすべてのサンプルがこのトラックによって記述されるタイルにマッピングするので、NALUMapEntry記述子は必要ない。参照符号221および222はそれぞれ、時間1から時間Sまで(メディアファイルまたはトラックフラグメントの場合のメディアセグメントの継続時間)のタイル1およびタイル4のデータを含むデータチャンクを示す。
実際には、トラックサンプルは、この実施形態によれはタイルサンプルであるので、従来のビデオサンプルではなく、タイルトラック内に記憶されているサンプルはISO/IEC 23008−2(HEVC)において定義されているような、1つ以上のタイルのスライスの完全なセットである。これは、パラメータセット、SEIメッセージ、および他の非VCL NALユニットを除外する。タイルトラック内に記憶されているHEVCサンプルは、サンプル内に含まれるコード化スライスが瞬時復号リフレッシュ(IDR)スライス、クリーンランダムアクセス(CRA)スライス、またはブロークンリンクアクセス(BLA)スライスであることをサンプル内のVCL NALユニットが示す場合、syncサンプルとして考えられる。そのため、それらは従来のサンプルと同じサイズを有せず、(2a)の例によれば、従来のHEVCサンプルは、640×512ピクセルのサイズを有し、一方、ここでは、各タイルトラック内に記憶されているHEVCサンプルは、320×256ピクセルのサイズを有する。構文解析時間における曖昧さを回避するために、タイルサンプルは新たなタイプのVisualSampleEntry記述子、すなわち、トラック1と関連付けられているHEVCTileSampleEntry記述子205(4文字コード「hvt1」を用いて示されている)のような、HEVCTileSampleEntry記述子を用いてシグナリングされる。
正式には、HEVCビデオトラックのサンプルエントリは、各トラックヘッダのサンプル記述ボックス内で宣言されているHEVCSampleEntryである。ここで、同じビデオストリームを表現する複数のトラックが使用されているので、各タイルトラックは、トラック内のサンプルが完全なビデオストリームの下位部分の実際のサンプルであるという指示を含み、これらのサンプルがHEVCTileSampleEntryタイプ(各トラックのサンプル記述ボックス「stsd」内の各「hvt1」ボックス)のサンプルであることが示される。このとき、タイルトラックの復号はいかなるレイアウト操作も含まず、タイルは、すべてのタイルが復号された場合のように、ビデオ復号器メモリ内の同じ場所に復号される。このとき、タイルトラックのトラックヘッダ内のレイアウト情報は、「tbas」トラック基準タイプによって示されるような関連するベーストラックのトラックヘッダ情報と同一に設定される。そうでなければ、タイルトラックは無視されるべきである。加えて、タイルトラック内の視覚情報は、その関連するベーストラック内の視覚情報と異ならない。特に、サンプル記述におけるクリーンアパーチャボックス「clap」またはピクセルサンプルアスペクト比「pasp」のような情報を再定義する必要はない。
サンプル記述タイプ「hvt1」について、タイルトラック内のサンプルまたはサンプル記述ボックスのいずれも、PS、SPSまたはPPS NALユニットを含み得ない。これらのNALユニットは、スケーラビリティの事例において、または、(2b)の専用トラック210のような専用トラックにおいてベースレイヤ(トラック基準によって識別されるような)を含むトラックのサンプルまたはサンプル記述ボックス内になければならない。
通常のHEVCサンプルにたいして定義されているサブサンプルおよびサンプルグループ化は、HEVCタイルサンプルにたいして同じ定義を有する。パラメータセット/ベーストラック210とタイルトラックとの間の依存性は、211によって参照されるタイプ「scal」(または抽出器ベースのタイル化依存性をシグナリングする任意の他の4バイトコード)のトラック基準ボックス「tref」を使用して記述されることが好ましい。
HEVCビデオコード化規格は、マルチビューまたはスケーラブル用途のための多層ビデオ符号化をサポートする。この事例において、所与の層を、1つ以上の他の層に対する基準データとして使用することができる。
(3a)、(3b)、および(3c)を含む図3は、HEVCスケーラブルビットストリームの構成の種々の例を示す。
(3a)は、ベースレイヤ300およびエンハンスメントレイヤ305を含む空間スケーラブルビデオビットストリームの例である。エンハンスメントレイヤ310はベースレイヤ300に応じて符号化される。そのようなビデオビットストリームフォーマットにおいては、ベースレイヤおよびエンハンスメントレイヤのいずれもタイルを含まないため、ピクチャからピクチャへの依存関係が存在する。
(3b)は、ベースレイヤ310およびエンハンスメントレイヤ315を含むスケーラブルビデオビットストリームの別の例を示す。この例によれば、エンハンスメントレイヤ315は、特にタイル320を含むタイル化エンハンスメントレイヤである。そのようなビデオビットストリームフォーマットにおいては、エンハンスメントレイヤのタイルがベースレイヤに依存するため、タイルからピクチャへの依存性が存在する。
(3c)はさらに、ベースレイヤ325およびエンハンスメントレイヤ330を含むスケーラブルビデオビットストリームの別の例を示す。この例によれば、ベースレイヤ325は、特にタイル335および340を含むタイル化ベースレイヤであり、エンハンスメントレイヤ330は、特にタイル345およびタイルセット350を含むタイル化エンハンスメントレイヤである。ベースレイヤ325は、エンハンスメントレイヤ330によって空間的に強化することができる。そのようなビデオビットストリームフォーマットにおいては、エンハンスメントレイヤのタイルがベースレイヤのタイルに依存するため、タイルからタイルへの依存性が存在する。エンハンスメントレイヤのタイルセットがベースレイヤのタイルに依存するため、タイルセットからタイルへの依存性も存在する。実例として、タイル345はタイル340に依存し、タイルセット350はタイル335に依存する。タイルからタイルセットへの依存性またはタイルセットからタイルセットへの依存性のような他の依存性が存在する場合がある。
タイル化されている場合があり、またはされていない場合があるベースレイヤの上に、タイル化されている場合があり、またはされていない場合があるSNRスケーラブル層に対する同様な構成が存在することが留意されるべきである。
図4は、提示されるべきユーザによって選択されるタイルの時間パイプを示す。より正確には、図4は、第1のビデオフレームnおよび第2のビデオフレームn+m(nおよびmは整数値)を表し、第1のビデオフレームおよび第2のビデオフレームの各々は、1〜12の番号を付された12個のタイルを含む。実例として、これらの12個のタイルの間で、第3のタイルおよび第7のタイルのみを表示するものとする(太い線で示す)。ビデオフレームnおよびn+mは、ある期間に対応する一連の連続したフレームに属する。それゆえ、フレームn〜フレームn+mからの各フレームの第3のタイルおよび第7のタイルが連続して表示される。
一方、標準mp4ファイルフォーマットに適合するビデオビットストリームのデータは、全フレームに対応する時間サンプルとして編成される。したがって、図4を参照して上述したように所与の期間の間にこれらのフレームの特定の空間領域がアクセスされるものとするとき、各フレームのいくつかの小さいバイト範囲にアクセスすることが必要とされる。これは、生成される要求の数に関して、および、データオーバヘッドに関して、HTTPストリーミングにおいては不十分である。また、これは、複数回の細かいファイル検索操作を必要とするため、RTPストリーミングのためのビットストリーム抽出にはあまり効率的ではない。
それゆえ、ROIストリーミングのために圧縮ビデオにより効率的なアクセスを提供するために、タイムドメディアデータビットストリームは、特定のタイルのデータがある期間(すなわち、連続フレームのセット)にわたる連続バイト範囲(パイプを形成する)として編成されるように、再編成されるべきである。
したがって、ビデオフレームの空間下位区分のみが表示されるべきであるとき、選択された空間領域に対応するタイルのパイプのみが、パイプあたり、および、期間あたり1つのHTTP要求を使用してダウンロードされなければならない(たとえば、図2のタイル3および7)。同様に、RTPストリーミングにおいて、サーバは、ハードディスクのようなソースから、タイルのパイプに対応するより大きいデータチャンクをより効率的に抽出することができる。
HEVC規格の多層拡張は、予測モード、特に、図5に示されているような、基準ピクチャの構築に影響を与える。
図5は、多層HEVC方式または同様の方式を使用しながらの、ビデオデータを符号化するための基準ピクチャセットの使用を示す。
ピクチャ500が符号化されるとき、複数の異なる予測器を使用することができる。これらの予測器は、様々な基準ピクチャセット、一般的には、符号化されるべき現在のピクチャに先行するショートタームピクチャに対応する基準ピクチャのセット501、符号化されるべき現在のピクチャに後続するショートタームピクチャに対応する基準ピクチャのセット502、符号化されるべき現在のピクチャに先行するロングタームピクチャに対応する基準ピクチャのセット503、および、層間基準ピクチャのセット504内に記憶されている基準ピクチャの中で選択される。
ショートターム基準ピクチャセットおよびロングターム基準ピクチャセットは単一層HEVCを処理するために一般的に使用されているが、多層拡張は、両方とも符号化されるべき現在のピクチャに関連付けられる、層間基準ピクチャセット内の少なくとも2つの追加の基準ピクチャリストを提供することが留意されるべきである。
層間基準ピクチャのセットのリスト内に存在する最大数のピクチャは、NumActiveRefLayerPicsパラメータ505によって与えられる。
実例として、基準ピクチャは、ピクチャ順カウント(POC)および/またはLayerId値に応じてインデックス付けすることができる。
現在のピクチャ500を予測するために使用することができる各層間基準ピクチャに対して、その層識別子、すなわち、NALユニットheaders_layer_identifierの値を提供するために、層間基準ピクチャのセットのリスト内に存在する最大数のピクチャが、スライスセグメントヘッダ内で使用される。このとき、スライス(または、1つのタイルが1つのスライスに対応するときは、タイル)にたいして、層間依存性のリストを推定することができる。これは、タイルの「独立して復号可能な」特性に影響を与える。そのため、この層間依存性情報は、再生時にまたはストリーミング用途において、依存層からのデータも、選択されたタイル(複数可)の正確な復号および表示のために存在することを保証するためのファイルフォーマットにおいてカプセル化されるときにタイルの記述と関連付けられるべきである。
HEVCの多層拡張(ISO/IEC 23008―2 Annex F)において、「層間制約タイルセットSEIメッセージ」として参照される特定のSEIメッセージが、層がタイルで符号化されるときの層間予測プロセスに対する制約を示すように定義される。このSEIメッセージは、ある層について、以下のように定義される、すなわち、「層間制約タイルセットSEIメッセージは、ある層について、その層に対してアクティブであるすべてのPPSが1に等しいtile_boundaries_aligned_flag[VPS VUI(ビデオパラメータセット、ビデオ可用性情報)において]を有しない限り、または、1に等しいtile_boundaries_aligned_flagによって示される条件を満たさない限り、存在すべきではない」。
そのようなSEIメッセージは、「各識別されたタイルセット外のいずれのサンプル値も、および、識別されたタイルセット外の1つ以上のサンプル値を使用して導出される部分サンプル位置にあるいずれもサンプル値も、識別されたタイルセット内の任意のサンプルの層間インター予測に使用されないように層間インター予測処理が規制されることを示す」。
より詳細には、各タイルセットiに対する予測制約は、その値が以下のように定義される特定のilc_idcフラグ(ilc_idc[i])によって与えられる:
0:不確定、
1:CVS内でi番目の識別されたタイルセット外のいずれのサンプルも、および、i番目の識別されたタイルセット外の1つ以上のサンプルを使用して導出される部分サンプル位置にあるいずれのサンプルも、ictsNuhLayerIdに等しいnuh_layer_idを有するi番目の識別されたタイルセット内の任意のサンプルの層間予測に使用されず、ここで、ictsNuhLayerIdは、このメッセージのnuh_layer_idの値である、
2:CVS内で、ictsNuhLayerIdに等しいnuh_layer_idを有するi番目の識別されたタイルセット内のいずれの予測ブロックも、層間基準ピクチャから予測されない、および、
3:予約されている。
たとえ層間基準ピクチャが基準ピクチャのセット内に存在するとしても、それらは必ずしも使用されるとは限らない。その上、計算費用節約のために、符号化器は、同じ現在の層からの情報のみを使用してタイルを符号化するよう決定することができ、時折、たとえば、ランダムアクセスフレーム上で、より下位の層(複数可)からの情報を使用するよう決定することができる。
(6a)、(6b)、(6c)、および(6d)を含む図6は、種々のタイプの層間タイル予測を示す。図示されている例によれば、ビデオストリームの各フレームは、少なくとも2つの層を含む(層iおよび層i+1、層i+1は層iのエンハンスメントレイヤである)。
(6a)に示されている例によれば、イントラ予測およびインター予測の両方が、各フレームのエンハンスメントレイヤの各タイルに使用される。
たとえば、フレーム600のエンハンスメントレイヤi+1のタイル601は、矢印603によって示されているように、同じフレーム600のより下位の層iの対応するタイル602、および、矢印605によって示されているように、先行するフレームのエンハンスメントレイヤi+1の対応するタイル604に依存する。
矢印603によって表現されている層間予測指示は、層i+1のタイルが、層iの対応するタイル、層iのタイルのセット、または、層iの全ピクチャに依存することを示す。層i+1のいくつかのタイルのみが、より下位の層の1つ以上のタイルに依存するであろう。
その上、それらの依存性は、(3b)〜(3d)に示されているように、ビデオシーケンス内で経時的に変化する場合があり、ここで、符号化器は、フレーム610、611、620、621、630、および631によって表現されているランダムアクセスポイント上のみの層間予測を使用する。
(6b)に示されている例によれば、層i+1の各タイルは、過去のフレームの同じエンハンスメントレイヤi+1の対応するタイル、または、より下位の層iの1つ以上のタイルに依存する。(6c)および(6d)に示されている例によれば、層i+1の各タイルは、過去のフレームの同じエンハンスメントレイヤi+1の対応するタイル、および/または、より下位の層iの1つ以上のタイルに依存する。
これらの異なる依存性方式を鑑みると、ファイルフォーマットにおけるタイル記述子の層間依存性シグナリングは、動的に設定されるべきである。したがって、タイル記述に柔軟性をもたせ、様々な符号化器選択肢をサポートするために、層間依存性シグナリングは、タイル記述自体から分離していることが好ましい。
図7は、層間依存性記述を可能にするタイル記述子の一例を示す。
図示されているように、TileRegionGroupEntry記述子700および701は、この所与の例において、スケーラビリティ情報およびタイルまたは画像依存性情報にアクセスするためのdependentGroupIDパラメータ703およびlayerGroupIDパラメータ704を含む。この所与の例によれば、スケーラビリティ情報はHEVCLayerDefinitionBox記述子702内に記憶されており、タイルまたは画像依存性情報は、TileRegionGroupEntry記述子701内に記憶されている。
HEVCLayerDefinitionBox記述子702は、識別子、依存関係シグナリングメカニズム、および、ビデオエレメンタリビットストリームに由来する追加の特性を含むHEVCLayerDefinitionBox記述子(またはHEVCLayerDefinitionBoxボックス)のパラメータの例を示す。実例として、追加の特性は、visualWidthおよびvisualHeightパラメータを含む。しかしながら、追加の特性はまた、フレームレート、ビットレートならびにプロファイルおよびレベル情報のような他のパラメータをも含んでもよい。それらの特性はまた、スケーラビリティ層を記述する高レベル構文情報をも含んでもよい。
修正TileRegionGroupEntry記述子701の追加および修正されたパラメータは、以下のように定義することができる:
(TileRegionGroupEntry記述子によって定義されるような)タイル、(TileSetGroupEntry記述子によって定義されているような)タイルセット、または、このタイルが依存する(HEVCLayerDefinitionBox記述子、たとえば、HEVCLayerDefinitionBox記述子702によって定義されているような)HEVC層の識別子を与えるdependentGroupID(参照符号703)。依存性がトラック参照ボックスから導出されるとき、このパラメータは、0に設定されることが好ましい;
−このタイルが属する(HEVCLayerDefinitionBox記述子によって定義されているような)HEVC層の識別子を与えるlayerGroupID(参照符号704)。依存性がトラック基準ボックスから導出されるとき、このパラメータは0に設定される;ならびに
−layerGroupIDの値がゼロとは異なる、または、当業者に周知である、「moov」ボックス内に含まれている「stsd」ボックスの視覚サンプルエントリにおいて指示されているものとしてのフレームのものである場合、パラメータlayerGroupIDによって識別される層の、輝度サンプルに関してタイルによって表現される矩形領域の幅および高さをそれぞれ定義するregion_widthおよびregion_height。
パラメータgroupIDを符号化するために使用されるビット数を修正しながら、同様の追加のおよび修正されたパラメータもTileSetGroupEntry記述子に適用される(タイル化およびスケーラビリティ構成は組み合わされ、単一の名前空間が使用されるため、groupIDパラメータの値の数は増加されることになる)。
必要な適合は、(TileRegionGroupEntry記述子によって定義されるような)タイル、(TileSetGroupEntry記述子によって定義されているような)タイルセット、または、このタイルセットが依存する(HEVCLayerDefinitionBox記述子によって定義されているような)HEVC層の識別子を定義することができるdependencyTileGroupID属性の解釈に関する。dependencyTileGroupID属性の値がゼロに等しい場合、依存性はトラック参照ボックスから導出される。
実例として、HEVCLayerDefinitionBox記述子(参照符号702)のパラメータは以下のように定義することができる:
−グループによって記述される層の固有の識別子であるgroupID。値0はNALUMapEntry(「nalm」)ボックスにおける特別な用途のために確保される;−その層が依存する(HEVCLayerDefinitionBox記述子によって定義されているような)HEVC層のgroupID識別子を指示するdependentGroupID。dependentGroupIDパラメータの値がゼロに等しい場合、依存性は上述したトラック参照ボックス「stsd」から導き出される。これはたとえば、スケーラブルHVC(SHEVC)ビットストリームがAVC|H264トラックを強化する場合である;
−輝度サンプルにおけるコード化画像またはビューの幅の値を与えるvisualWidth;および
輝度サンプルにおけるコード化画像またはビューの高さの値を与えるvisualHeight。
タイル化参照層記述子を有すること、および、タイルまたは層のいずれかの記述子を参照できる層記述子を有することの利点は、groupID識別子の使用を通じて、統一された柔軟な依存関係シグナリングを提供することである。タイル、タイルセットおよびHEVC層に対するgroupID識別子の識別子名前空間を統一することによって、また、2つの依存性識別子(パラメータdependentGroupIDおよびlayerGroupID)を導入することによって、以下の依存性、すなわち、
−タイル化層間の依存性、
−非タイル化層間の依存性、
−非タイル化エンハンスメントレイヤとタイル化ベースレイヤとの間の依存性、および、
タイル化エンハンスメントレイヤと非タイル化ベースレイヤとの間の依存性が単純に定義される。
しかしながら、2つのパラメータ703および704がそれぞれ、あるタイルについて、別のタイルに関する依存性情報およびこのタイルの層に関する情報を提供する場合、そのようなソリューションの制限は、そのようなソリューションが、HEVCにおいて記載されている基準ピクチャリストメカニズムによって必要とされるような複数の依存性をサポートしないことである。その上、層間依存性シグナリングはタイル記述子自体に埋め込まれているため、タイルシグナリングは、層間依存性が変化する度ごとに複製されなくてはならない。事実、同じタイルは経時的に(少なくとも1つのGOPから別のGOPへと)変動する依存性を有する場合があるため、タイル化構成が、各可能性のある依存性に対して複製されるべきであり、または、明示的な依存性グループ化が導入されるべきである。
(8b)に示されているような、TileSetGroupEntry(「tsif」)タイプのタイル記述子を、層間依存性を含むタイル依存性を記述するために使用することができる。
TileSetGroupEntryタイプのタイル記述子は、一般的に、(層内)コード化依存性に基づいてタイルのセットを定義するために使用される。しかしながら、TileSetGroupEntry記述子は、タイルセットが個々のタイル識別子(タイルID=TileRegionGroupEntry内のgroupID)を使用して記述されることを可能にするため、タイルセットが単一のタイルから作成されることを示すことが可能である。それゆえ、以下の依存性リストは、異なる層に由来し得る任意の数のタイルがリストされることを可能にする。したがって、「tsif」サンプル記述ボックス内に、タイルの、より下位の層にある他のタイルIDに対する依存性をリストすることが可能である。
mp4ファイルにおける図3を参照して説明したようなHEVCスケーラブルビットストリームをカプセル化するために、後者は以下を含まねばならない:
−ベースレイヤの各タイルについて、「独立」としてフラグ付けされている1つのタイル領域(ilc_idc値が1(またはIDRのみについては2)に等しい)、すなわち、この層にある別のタイルからの時間的依存性なしに復号することができるタイル領域;−エンハンスメントレイヤの各タイルについて、「独立」としてフラグ付けされている1つのタイル領域(ilc_idc値が1に等しい)、すなわち、この層にある他のタイルからの時間的依存性なしに復号することができるタイル領域;
−エンハンスメントレイヤの各タイルについて、単一のタイルおよびベースタイル(複数可)に対する依存性から作成される1つのタイルセット;ならびに
−以下の2つのエントリを有するNALUMapEntry(「nalm」)サンプルグループ記述ボックス:
−NALUを「tsif」グループにマッピングする1つのエントリ、タイル間依存性(層間依存性を含む)の使用が記述されている;および
−独立タイル(すなわち、他の共在していないタイルに対する依存性を有しないタイル)について、NALUを「trif」グループにマッピングする1つのエントリ。
タイル層と非タイル層との間の依存性((3a)および(3b)を参照して説明されているような)の記述を処理するために、タイル記述設計は、層間のすべての依存性を、タイル化されているか否かにかかわらず、単一の記述ツール(TileSetGroupEntry記述子)を通じて表現することができるように、非タイル層が記述子によって記述されることを可能にするように拡張することができる。
(8a)および(8b)を含む図8は、それぞれ、他方のタイルに対する復号依存性の記述を可能にする、本発明の特定の実施形態に従って変更されている単一層タイル記述子800、および、タイルセット記述子850を示す。
801と表示されている独立パラメータが、現在のフレームおよび同じ層の基準フレーム内の規定のタイルと他のタイルとの間のコード化依存性を指定する。タイル間依存性が存在する場合、これは、(8b)において示されているような記述子TileSetGroupEntryのdependency_listパラメータ851によって示される。
full_frameパラメータと呼ばれ、802と表示されている新規のパラメータは、設定されると、定義されたタイルが実際に完全なフレームであることを示し、この事例において、803と表示されているパラメータregion_widthおよびregion_heightが、輝度成分の層サイズに設定される。そのような事例において、パラメータindependentは1に設定される。これによって、full_frameパラメータが1に設定されている「trif」サンプルグループを参照する「tsif」サンプルグループを使用して、ある層のタイルと非タイル化層との間で、すなわち、層にわたるタイル化構成がどのようなものであっても(タイル化されていようともいなくとも)依存性が表現されることが可能になる。
(8b)に示されているように、依存性は、識別子(参照符号852)として、または、それ自体、長方形を表す左上頂点および右下頂点に対応する2つの点(参照符号853)を使用して画定することができる基準領域として定義することができる。
(8b)において851と表示されている、タイルセット記述子のdependency_listパラメータは、そのタイルセットが自己完結型であるか否かを示すが、層内依存性と層間依存性との間で区別することは可能にしない。そして、スケーラブルである事例において一切の曖昧さを回避するために(dependency_listパラメータは、現在の層内のタイルセットがベースレイヤに依存しないこと、または、複数層にわたるタイルのセットが自己完結型であることを示すことができる)、また、タイルトラックをカプセル化/解析するときに相互運用可能であるようにするために、図9に示されているように、dependency_listパラメータに特定の意味を与えることができる。
図9は、多層タイル化のタイルセット記述子900の一例を示す。
図示されている例によれば、タイルセット記述子900のdependency_listパラメータは、3ビット以上にわたってコード化され、各ビットが特定の意味を有する。
それぞれ参照符号901、902、および903を用いて表されているように、2つの第1の最下位ビットは、何らかの依存性が宣言されているか否かを、何らかの依存性が宣言されている場合はそれらのタイプとともに示す。2進値00は、依存性がシグナリングされていないことを意味し(テスト901)、値01は、層内依存性のみがシグナリングされていることを意味し(テスト902)、値10は、層間依存性のみがシグナリングされていることを意味し(テスト903)、最後に、値11は、層内依存性および層間依存性の両方がシグナリングされていることを意味する(902および903が存在する)。このとき、第3の最下位ビットは、依存性のリストが、タイルグループ識別子のリストとして提供されている(値0)か、または、領域として提供されているかを示す。
タイルセット記述子900は、層間タイル依存性が層情報を一切提供することなくシグナリングされる単純な例に対応し、したがって、dependency_listパラメータには3ビットしか必要としない。追加のビット(合計で最大5ビットであることが好ましい)を使用して、層間タイル依存性のより精密な記述を提供することができる。
特定の実施形態(図示せず)によれば、層間依存性が存在する(第2の最下位ビットが1に設定される)ときに、依存性が層(たとえば、値1)によって編成されるか否かを示すために、第4のビットが使用される。依存性がタイルグループ識別子のリストとして記述されるか、または、領域として記述されるかを示すシグナリングモード(dependency_listの第3の最下位ビット、参照符号904、によって与えられるリストまたは領域)に応じて、単一リスト(第3のビット値が1)または二重リスト(第3のビット値が0)が作成される。二重リストは、層の数と、各層ごとに、現在の層にあるこのタイルが依存するタイルグループ識別子のリストとを含む。単一リストは、層の数だけを含み、各層ごとに、現在の層の現在のタイルが依存する領域を提供する。このとき、パーサは、層が現在の層からベースレイヤへと降順に編成されていると仮定する。依存性のフラットなリストの代わりに、このとき、パーサは、現在のタイルトラックが依存するトラックの指示を有する。これによって、マッピングすべきトラックのセット内の探索空間が限定される。
先行する実施形態の改善と考えることができる別の実施形態(図示せず)によれば、第4のビットが1に設定されているときに、すなわち、層間タイル依存性が層によって記述されるときに、第5のビットが使用される。この事例において、第5のビットは、各層ごとに、層識別子情報の項目をシグナリングする。たとえば、(依存性をタイルグループ識別子のリストとして記述するために第3のビットが1に設定されていると仮定して)以下のパラメータが得られることになる。
if ((dependency_list&2 == 1) // inter−layer dependencies {
if (dependency_list&8 == 1) { // 4th bit to 1: layer−based organization unsigned int(16) layers_count;
for (l=1; l<= layers _count; l++){
if (dependency_list&16==1) { // 5th bit to 1: layer ID is presentunsigned int(16) layer_ID;

unsigned int(16) dependency_tile_count;
for (i=1; i<= dependency_tile_count; i++){
unsigned int(16) dependencyTileGroupID;


上記の例におけるlayer_IDは、NALユニットヘッダnuh_layer_idに含まれる値をとることができる。そのようなカプセル化されたファイルを処理するパーサは、図7のHEVCLayerDefinitionBox702において、この特定の層を記述する専用ボックス、たとえば、MPEG−4 Part15規格からのTierInfoBox、MPEG contributionにおいてNokiaによって提案されているものとしてのLayerInfoBoxを解析することによって、または、層情報を提供する任意のメタデータボックスから、層関連情報を見出さなければならない。このボックスは、そのIDを通じて識別することができる。これは、mp4パーサが、依存タイルを層情報ボックスに、または、たとえば、図7のHEVCLayerDefinitionBox702のような層記述に迅速に関連付けるのを助ける。
第5のビットが0に設定される場合、層識別子は提供されない。この事例において、層は降順に編成されると仮定され、したがって、各層ごとに、タイルグループ識別子のリストまたは領域を指定することができる。ある層において、依存性が存在しないとき、これは、dependency_tile_count=0、または、両方とも0に等しいtopLeftDependencyTileGroupIdおよびbottomRightDependencyTileGroupIdを用いて表現される。
また別の実施形態によれば、層間依存性が層ID情報を用いて層ごとに(第4のビットおよび第5のビットが1の値を有する)、また、タイルグループ識別子のリストとして(第3のビットが0に設定されている)編成されるとき、これは、識別された層内の同じフレーム内に共在するタイルセットに対する依存性として解釈されるべきである。(一般的な事例である)この事例において、先行する例の最後のループがないため、記述はより短い。これは、dependency_tile_countを値0xFFFFにすることによってシグナリングされる。層間タイル依存性が領域としてシグナリングされる事例において(第3のビットが1に設定されている)、層間依存共在タイルのシグナリングは、TileSetGroupEntryのtopLeftDependencyTileGroupIDおよびbottomRightDependencyTileGroupIDの両方を0xFFFFに設定することによって表現することができる。ビデオエレメンタリストリーム内のVPSのtile_boundaries_aligned_flagが1に設定されるとき、共在するタイルを見出すためにタイルインデックスに依拠することができ、または、依存層内の共在するタイルの位置を見出すために、TileRegionGroupEntryから得られる現在のタイルサイズもしくは参照されるタイルサイズと、現在のタイル位置803との比を適用することができる。
層間タイル依存性のために選択されるシグナリングが何であれ、情報は、存在するときは層間制約タイルセットSEIメッセージから読み出すことができる。このSEIメッセージは、定義によれば、ある層内の各タイルセットについて、このタイルセットが他の層に対する依存性を有するか否かを示す(ilc_idcパラメータ)。このとき、この情報を読み出すことによって、mp4ライタは、この所与のタイルセットを記述するTileSetGroupEntryの依存性リストの第2のビットを設定することができる。現在のタイルセットがいずれかの層に依存し得るかを判定するために、mp4ライタは、direct_dependency_flagパラメータにおけるビデオパラメータセット(VPS)の拡張に含まれる他の情報を読み出すことができる。このアレイは、1つの層から別の層への直接の依存性のリストを供給する。したがって、たとえば、direct_dependency_flagパラメータが値1を有する(現在の層からこの所与の第2の層への依存性を示す)各層ごとのタイル依存性の入力リストを作成することによって層ごとに(第4のビットが1に設定されている)タイル間層依存性のリストを構築することができるとき。ilc_idcパラメータの値が自己完結型タイルセットを示すとき、依存タイルが現在の層内の共在するタイルであることをシグナリングするために、dependency_tile_count tile_の特定の値から1を減算して、最後の実施形態を使用することができる。そうでない場合、そのタイルに対する動きの制約を示す別のSEIメッセージからタイル制約を得ることができる。
上述したソリューションは、所与のトラックまたはトラックフラグメントについてサンプルグループまたはNALUグループの層間タイル依存性シグナリングを提供する。これをより柔軟かつ動的にするために、たとえば、図6に示されている種々のタイプの層間タイル予測を処理するために、いくつかのソリューションを考えることができる。
図10に示されている第1のソリューションによれば、NALU MapEntryを使用して、サンプルの層間予測によるサンプルのマッピングを行うことができる。明瞭にするために、タイルトラックのセットを含むmp4ファイルのヘッダ1000のみが示されており、各タイルトラックは、1つのタイルおよびS個のサンプルを含み、各サンプルはN個のNALユニットを含む。
さらに明瞭にするために、そのサンプルボックステーブル1002が対応するサンプルの特性を記述している、1つのみのタイルトラック記述1001の例が示されている。トラック識別子、たとえば、トラックヘッダボックスのtrack_IDパラメータ(ここでは表現されていない)は、これがエンハンスメントレイヤ1のタイルトラックであることを示す。
サンプルエントリボックス1003は、サンプルを、HEVCタイルサンプルであるとして記述し(HEVCTileSampleEntry)、SampleGroupDescriptionボックス1004は、グループエントリにたいする「nalm」グループ化タイプを示し、サンプルグループを定義する。図示されているように、サンプルは、それぞれ層間依存性を有するタイルサンプル、および、層間または層内依存性を有しないタイルサンプルに対応する2つのセット1005および1006に分割される。これらのサンプルセットはそれぞれ、SampleGroupDescriptionボックス1007において定義されているNALUMapEntry1008および1009をマッピングする。
第1のNALUマップ1008は、参照符号1013(依存性パラメータdependency_list=2)および参照符号1012(現在のタイルが依存するタイルの参照groupID=T01)によって示されているような、層間タイル依存性を記述するTileSetGroupEntry1010に、関連するNALユニットをマッピングする。他のNALユニットは、いかなる層間または層内依存性も定義しないTileRegionGroupEntry1011にマッピングされる。ビデオデータは、各々がタイルデータを搬送するサンプルのリスト1021〜1023として、「mdat」ボックス1020内に配置される。
専用サーバおよびmp4ライタならびに専用クライアントデバイスおよびmp4パーサの使用に基づく特定の実施形態に対応する第2のソリューションによれば、符号化器は、規則的な層間予測パターンを生成するように制御され、mp4ライタは、(6b)および(6c)に示されているもののようなランダムアクセスポイントに一致するタイルトラックフラグメントを生成するように制御される。ISO/IEC JTC1/SC29/WG11 MPEG/N14727、2014年7月、日本国札幌、の最新バージョンにおいて、これらのポイントは、代わりに、ストリームアクセスポイントまたはSAPと呼ばれる。規則的な層間予測パターンを使用することによって、mp4ライタは、デフォルトのサンプルグループ化を使用するすべてのサンプルをTileSetGroupEntryにマッピングすることによってよりコンパクトな記述を生成することができ、このTileSetGroupEntryは、タイルを記述するTileRegionGroupEntryを参照し、TileSetGroupEntryは、(6b)および(6c)において610、611および620、621として参照されているランダムアクセスサンプルに関する、ベースレイヤに対する依存性を記述する。NALUマップ1008および1007を削除することができるため、この依存性記述は、図10を参照して説明されているソリューションと比較して、バイトサイズに関してよりコンパクトである。
その代わりに、トラック内のすべてのサンプルが、ISO BMFFのデフォルトのサンプルグループ化メカニズムを使用してTileSetGroupEntryにマッピングされる。ランダムアクセスサンプル610、611および620、621は、両方とも特定のVisualSampleEntriesを含むランダムアクセスポイントを提供する「sync」または「ras」タイプのサンプルグループ記述ボックス内に記述される。ランダムアクセスポイントとして記述されているエントリは、層間タイル依存性が適用されるサンプルである。dependency_listの特定の値は、これらのランダムアクセスサンプルの層間依存性を提供するために確保される。
if ((dependency_list==1)|| (dependency_list==3)) {
unsigned int(16) dependency_tile_count;
for (i=1; i<= dependency_tile_count; i++){
unsigned int(16) dependencyTileGroupID;

if (dependency_list==3) {
unsigned int(16) idr_dependency_tile_count;
for (i=1; i<= idr_dependency_tile_count; i++){
unsigned int(16) idr_dependencyTileGroupID;


あるいは、領域モード記述が選択される場合、値2および4を以下のように使用することができる。
if ((dependency_list==2)|| (dependency_list==4)) {
unsigned int(16) topLeftDependencyTileGroupId;
unsigned int(16) bottomRightDependencyTileGroupId;
if (dependency_list == 4) {
unsigned int(16) idr_TopLeftDependencyTileGroupId;
unsigned int(16) idr_BottomRightDependencyTileGroupId;

この実施形態において、dependency_listパラメータは、依存性の追加のリストが、サンプルがIDR(復号内リフレッシュ)、CRA(クリーンランダムアクセス)、またはBLA(ブロークンリンクアクセス)ピクチャ(すなわち、ランダムアクセスサンプル)である場合について与えられることを示すために、値3または4を使用する。パラメータidr_dependency_tile_countおよびidr_dependencyTileGroupIDは、タイル領域のリスト、および、このタイルが属するサンプルがIDR、CRAまたはBLAピクチャであるときはこのタイルセットが依存するタイルセットを指定する。パラメータidr_TopLeftDependencyTileGroupIdおよびidr_BottomRightDependencyTileGroupIdはそれぞれ、依存層内の左上タイルおよび右下タイルの識別子を指定する。
前述の実施形態におけるように、この実施形態は、層ごとのシグナリングによって拡張することができる。
ビデオコンテンツに対する効率的な時間的アクセスのために、ISO BMFFは、抽出器と呼ばれるツールを定義する。抽出器は、他のトラックからのNALユニットの効率的な抽出を可能にするファイルフォーマット内部構造である。ビットストリーム中に直に挿入されるこれらの構造は、各コード化フォーマットによってこの用途およびトランスポート層のために予約されている専用NALユニットタイプ(たとえば、ISO/IEC 14496−10ビデオのためのタイプ31)を使用する。それらは、データを重複することなくいくつかのトラックにおいてビデオデータを編成することを可能にする。
抽出器は、最初は、SVCまたはMVCフォーマットに適合するビデオデータのようなスケーラブルビデオデータ向けに設計されている。それらのフォーマットにおいて、各トラックが特定のスケーラビリティレベルにおいてビデオを表現する、複数の依存トラックを使用することによって層状メディアデータ編成が効率的に表現できる。たとえば、エンハンスメントレイヤトラックのビットストリームは、ベースレイヤトラックからのNALユニットを参照する抽出器を含んでも良い。そのようなエンハンスメントレイヤトラックがそのファイルフォーマットから抽出されると、抽出器は、それらが参照しているデータに置き換えられる。
より最近になって、抽出器はまた、多層HEVCおよびHEVCタイルの別個のトラックへの効率的なカプセル化のために、HEVCファイルフォーマットにおいても定義されている。したがって、インデックス付けされるべき独立タイルの各々は、図11を参照して記載されているように、「タイルトラック」と呼ばれる特定のトラックによって表現される(1120−1および1120−12)。
しかしながら、タイル化およびスケーラビリティを混合するとき、必要とされる抽出器の数は著しく増大するであろう。そのため、好ましい実施形態において、タイルトラックは抽出器を使用するべきではない。タイルトラックは、図11に示されているように完全なフレームにおけるHEVCビットストリームに対応するベーストラック(1115)によって(タイルトラックの各々の「scal」定義を含む動画ボックス「moov」のトラック基準ボックス「tref」を介して)参照される。関連する層を含むこのベーストラックのみが、元のビットストリームがどのように再構築されるかを示すために抽出器を使用することができる。ベーストラックは、「tbas」トラック基準(1150)を用いてタイルトラックによって識別される。
タイルトラック内に記憶されるHEVCサンプルは、ISO/IEC 23008−2において定義されているような、1つ以上のタイルの完全なスライスセットであり、すなわち、VCL NALユニットのみが、それらのスライスを形成する。これは、タイルサンプルが、いかなるパラメータセット、SEIメッセージまたは他の非VCL NALユニットをも含むべきではないことを暗示する。反対に、ベーストラックは、初期化データに対応する様々なパラメータセット(たとえば、ビデオパラメータセット、シーケンスパラメータセット、および/またはピクチャパラメータセット)を含む。ベーストラックはまた、タイルトラック内のサンプルを指し示す抽出器(すなわち、特定のタイプのNALユニット)をも含む。
上述したように、抽出器は、以下の構文を有するファイルフォーマット内部構造であり得る。
class aligned(8) Extractor () {
NALUnitHeader();
unsigned int(8) track_ref_index;
signed int(8) sample_offset;
unsigned int((lengthSizeMinusOne+1)*8) data_offset;
unsigned int((lengthSizeMinusOne+1)*8) data_length;

抽出器は、他のトラックからのデータに対するポインタまたは参照として作用し、両方のトラックにおいてデータを複製する代わりに、依存トラックに対する参照を用いてコンパクトなトラックが構築されることを可能にする。抽出器は、NALユニット構文を使用することが好ましい。したがって、これは、特に、NALユニットタイプに関連する情報を含む、NALユニットヘッダと同じ構造を有するヘッダを含む。このNALユニットタイプは、たとえば、現在、HEVCにおける予約されているNALユニットタイプに対応する値「49」に設定される。抽出器によって参照されるトラックに対応するトラックの識別子(track_id)を含むtrefボックスのタイプ「scal」のエントリを取り出すことを可能にする、トラック基準ボックス(tref)内のインデックス(track_ref_indexと表示されている)が、ヘッダに後続する。第3のパラメータは、現在のサンプルと比較した、抽出器によって参照されるサンプルの時間オフセット(sample_offset)である。第4のパラメータおよび第5のパラメータ(data_offsetおよびdata_lengthと表示されている)はそれぞれ、コピー元となるべき位置(バイト単位であることが好ましい)およびコピーすべきデータの量(値0は参照されるNALユニット全体のコピーを示すために確保される)を提供する。
図11は、HEVCビットストリームをベーストラック(1115)および独立したタイルトラック(1120)を含むトラックセットとしてカプセル化する一例を示す。
図示されているように、カプセル化ビットストリーム1100は、トラックの定義を与える動画ボックス(「moov」)を含む初期化セグメントファイル1105と、ベーストラック1115および12個のタイルトラック1120−1〜1120−12(タイルトラック1120−1〜1120−12の各々は、ビデオシーケンスの1つのタイルと関連付けられている)を表すメディアセグメントファイル1110とを含む。
ベーストラック1115は、セグメントタイプボックス「styp」(図示せず)と、トラックセグメントタイプおよび識別子のようなメタデータを含む少なくとも1つの動画フラグメントボックス「moof」1125と、各ビデオデータサンプルについて、PPSおよびビデオデータに対する参照を含む少なくとも1つのメディアデータボックス「mdat」1130とを含む。
同様に、タイルトラック1120−1〜1120−12の各々は、セグメントタイプボックス「styp」(図示せず)と、トラックセグメントタイプおよび識別子のようなメタデータを含む少なくとも1つの動画フラグメントボックス「moof」と、NALユニット(NALU)にパッケージされている圧縮ビデオデータを含む少なくとも1つのメディアデータボックス「mdat」とを含む。
識別子2〜13を有するタイルトラック1120−1〜1120−12は、初期化セグメントファイル1105の(より正確には、識別子id=1を有するベーストラックの定義においては初期化セグメントファイル1105の動画ボックス「moov」の)トラック基準ボックス「tref」1135において参照される。
図示されているように、ベーストラック1115は、他のトラックからデータに対するポインタまたは参照として作用する抽出器を含む。実例として、いくつかのパラメータ、中でも、ベーストラック1115の抽出器1135−1〜1135−pに対応するタイルトラックインデックス(track_ref_index)、データオフセット(data_offset)、およびデータ長(data_length)が表現されている。
また実例として、ベーストラック1115のNALユニット1135−1が処理されるとき、これが、抽出器タイプのNALユニットを表す(NALUnitHeaderが16進値6200に等しい)ことが判定される。したがって、これは、対応する圧縮ビデオデータを取り出すために処理される。そのためには、そのタイルトラックインデックス(すなわち、track_ref_index=1)が得られる。このインデックスより、初期化セグメントファイル1105内に記憶されているトラック定義からタイルトラック識別子を取り出すことが可能である。この例において、インデックスは1に等しいため、「tref」ボックスの第1のタイルトラック識別子が選択される(id=2)。次に、この識別子が、対応するタイルトラックにアクセスするために使用され、その後、抽出器1135−1のデータオフセット(すなわち、情報源として使用されるべきである識別されたトラック内のサンプルの相対インデックス)およびデータ長(すなわち、コピーすべきバイト数、たとえば、data_length=0であるときはNALU全体)パラメータを使用して、圧縮ビデオデータが、タイルトラック1120−1から抽出される(すなわち、この所与の例におけるコード化スライスセグメントNALU1140)。
処理された後、抽出器は、それが参照するデータに置き換えられる。図11に示されている例によれば、抽出器1135−1が解析および処理されることによって、当該抽出器が、コード化スライスセグメントNALU1140に置き換えられることになり、したがって、HEVC対応ビットストリームが形成される。
HEVC抽出器のパラメータを記憶するために使用される意味解釈は、SVC規格において定義されているものに近いものであり得ることが留意されるべきである。したがって、HEVC NALユニットを参照する抽出器について、以下を適用することができる:−forbidden_zero_bitとして既知であるパラメータが、ISO/IEC 23008−2において指定されているように設定される;
−nal_unit_typeとして既知であるパラメータが、49に設定される(現在のFDISにおいて予約されているコード);
−nuh_layer_idおよびnuh_temporal_id_plus1として既知であるパラメータが、抽出器によって参照される第1のNALUからコピーされる(HEVC NALユニットを参照するHEVCトラック内の抽出器は、異なるnuh_layer_idおよびnuh_temporal_id_plus1値を有するいくつかのNALユニットを参照しない);ならびに
−sample_offsetとして既知であるパラメータが0に設定される。
また、ある特定の実施形態によれば、HEVCシーケンスのタイルのサブセットのみを復号することができることも留意されるべきである。そのような事例において、TileRegionGroupEntryおよびTileSetGroupEntryサンプルグループ記述子内に記憶されている依存性情報を、HEVCタイルトラックを復号しながら、不要なタイルトラックを廃棄し、または、いくつかの抽出器を無視するために使用することができる。
図12は、4つのタイルを含むHEVCビットストリームの事例におけるトラック間の依存性の簡略化された概略図を示しており、各タイルは別個のタイルトラック内に記憶されている。
上述したように、BTと表示されているベースHEVCトラック1210は、すべてのタイルに共通のデータ、特に、様々なパラメータセット(たとえば、ビデオパラメータセット、シーケンスパラメータセット、および/またはピクチャパラメータセット)を含む。BTは、「tref」ボックス内の「scal」タイプを参照することによって、タイルトラックに対する依存性をシグナリングする。各サンプルに対して、BTはまた、それぞれTT1、TT2、TT3、およびTT4と表示されている、各タイルトラック1220−1〜1220−4を指し示す抽出器(矢印によって表現されている)をも含む。図示されているように、各タイルトラックは、「tbas」タイプを参照することによって、HEVCベーストラックを識別する。
スケーラブルHEVC(SHVC)フォーマットのようなタイル化および多層ビデオストリームの両方を考慮するとき、以下のような、いくつかのビットストリーム構成が可能である:
−ベースレイヤおよびエンハンスメントレイヤの両方がタイル化されない;
−ベースレイヤはタイル化され、エンハンスメントレイヤはタイル化されない;
−ベースレイヤはタイル化されず、エンハンスメントレイヤはタイル化される;ならびに
−ベースレイヤおよびエンハンスメントレイヤの両方がタイル化される。
抽出器を使用することによって、タイル化およびスケーラビリティ(多層)の両方を処理するためにビデオデータを効率的に編成することが可能になる。
図13は、ベースレイヤおよびエンハンスメントレイヤを含むスケーラブルHEVCビットストリームの事例におけるトラック間の依存性の簡略化された概略図を示しており、ベースレイヤおよびエンハンスメントレイヤはタイル化されている(この例においては4つのタイル)。
ベースレイヤは、図11および図12を参照して説明されているように編成されている。BLBTと表示されているベースレイヤベーストラックは、「scal」タイプを参照することによって、BLTT1〜BLTT4と表示されている4つの関連するベースレイヤタイルトラックに対する依存性をシグナリングする。同様に、各ベースレイヤタイルトラックは、「tbas」タイプを参照することによって、ベースレイヤベーストラックを識別する。
ベースレイヤベーストラック内の各サンプルは、サンプル内の各タイルによって共有されるべきデータ(たとえば、パラメータセット、様々なSEIメッセージ)を含む。ベースレイヤベーストラック内の各サンプルはまた、サンプルを構成する各ベースレイヤタイルトラックの関連するタイルサンプルを指し示す1つの抽出器をも含む。
同じ原理が、エンハンスメントレイヤに適用される。しかしながら、現行の規格における抽出器の定義によれば、抽出器は別の抽出器を直接的にまたは間接的に参照してはならないため、依存性の構造はより複雑である。
事実、ELBTと表示されているエンハンスメントレイヤベーストラックは、抽出器を使用して、ベースレイヤベーストラック、ベースレイヤタイルトラック、および、ELTT1〜ELTT4と表示されているエンハンスメントレイヤタイルトラックを参照しなければならない。したがって、エンハンスメントレイヤベーストラックのサンプルは、以下のものから構成される:
−ベースレイヤベーストラックの共通のデータを指し示す1つの抽出器(抽出器1);−各ベースレイヤタイルトラックを指し示す1つの抽出器(抽出器2〜5);
−任意選択的に、ベースレイヤベーストラックの任意のSEIサフィックスメッセージを指し示す抽出器(抽出器6*);
−エンハンスメントレイヤに共通のNALユニット;
−各エンハンスメントレイヤタイルトラックに対する1つの抽出器(抽出器7〜10);および
−任意選択的に、SEIサフィックスメッセージ。
現在の仕様に対応するこの構造は、エンハンスメントレイヤベーストラックの各サンプルにおいて多数の抽出器を必要とする。たとえば、25Hzにおける2×2タイル化を考慮すると、エンハンスメントレイヤベーストラックの抽出器を送信するために必要とされる帯域幅は24kbps(10個の抽出器×12バイト×25Hz×8ビット)である。
同じ抽出器パターンがすべてのより上位の層にあるある層のタイルについて繰り返されるため、抽出器に関係するオーバヘッドは、各上層によって増大する。
そのように抽出器が増加することを回避するために、図14に示されているように、再帰抽出器を使用することができる。
再帰抽出器は、1つ以上の抽出器を指し示すことができる抽出器である。そのようなエンハンスメントレイヤトラックがそのファイルフォーマットから抽出されると、それが含む全ての抽出器は、それらが参照しているデータに置き換えられる。参照されるデータも抽出器を含む場合、それらもまた論理的には、それらが参照しているデータに置き換えられ、以下同様である。抽出器の定義におけるパラメータdata_lengthの値は、可能性として再帰的に解決すべき何らかの抽出器が存在すべきか否かを判定するための手掛かりとして使用することができる。data_lengthパラメータは通常、コピーすべきバイト数を与える。それゆえ、data_lengthパラメータが「stsz」または「trun」テーブルによって示されるものとして参照されるサンプルのサイズに等しい場合、参照されるサンプル内に存在する抽出器は再帰的に解決されるべきである。抽出器経路にはいかなるサイクルもあり得ない。
加えて、ビデオシーケンスの完全なタイルのサブセットのみが復号されなければならない場合、これは、ベーストラックを複合している間に何らかの抽出器を無視するために、TileRegionGroupEntryおよびTileSetGroupEntryサンプルグループ記述内のタイル依存性情報を使用するであろう。
図14に示されているように、再帰抽出器を使用することによって、エンハンスメントレイヤベーストラックは、ベースレイヤベーストラックと関連付けられているベースレイヤタイルトラックを明示的に参照することなく、ベースレイヤベーストラックのみを参照すればよい。言い換えれば、ベースレイヤからの各タイルを明示的に参照する代わりに、エンハンスメントレイヤは、サンプルあたり1つのベースレイヤ抽出器のみを有する。それゆえ、エンハンスメントレイヤベーストラックのサンプルは、以下のものから構成される:
−ベースレイヤベーストラックの対応するサブサンプルを指し示す1つの抽出器(抽出器1)(ベースレイヤタイルトラックに対する抽出器を含む);
−エンハンスメントレイヤに共通のNALユニット;
−各エンハンスメントレイヤタイルトラックに対する1つの抽出器(抽出器2〜5);および
任意な、SEIサフィックスメッセージ。
非再帰抽出器の使用に基づくソリューションと比較して、再帰抽出器の使用は、必要とされる抽出器の数を低減することが可能である。たとえば、25Hzにおける2×2タイル化を考慮すると、エンハンスメントレイヤベーストラックの抽出器を送信するために必要とされる帯域幅は12kbps(5個の抽出器×12バイト×25Hz×8ビット)であり、これによって50%の節約がもたらされる。その上、下層には1つの抽出器しか必要ないため、新規の層を追加しても、カプセル化オーバヘッドはわずかしか増大しない。
図15は、多層タイル化ビデオビットストリームを効率的にカプセル化するためにサーバデバイスにおいて実行することができるステップの一例を示す。
図示されているように、第1のステップ(ステップ1501)は、タイル化およびスケーラビリティ特徴を提供する符号化器、たとえば、スケーラブルHEVC規格に対応する符号化器を使用してビデオビットストリームを符号化することに関する。符号化ビットストリームは、層および/またはタイルを表すNALユニットから構成される。
次のステップ(ステップ1502)において、サーバデバイスは、タイルと関連付けられたすべてのNALユニットを識別し、各層について、所与の層内のあるタイルに対応するすべてのNALユニットから構成されるサブサンプルを含むタイルトラックを作成する。たとえば、サーバデバイスは、NALユニットの種々のピクチャ領域との関連を識別するためにサブ画像レベルSEIメッセージに依拠し、HEVC標準化委員会(proposal JCTVC−K0128)に対して提案されているように各ROIの位置およびサイズを識別するためにシーケンスレベルSEIメッセージに依拠しても良い。したがって、ある層および期間についてタイルのチューブを作成することができる。(すでに説明したように)タイル情報および依存性を識別するために、TileRegionGroupEntryおよびTileSetGroupEntryサンプルグループ記述構造を使用することができる。
次に、サーバデバイスは、各層について、すべてのタイルに共通のNALユニット、より下位のスケーラビリティのベーストラックに対する再帰抽出器(もしあれば)、および、現在の層のタイルトラックの各々に対する抽出器を含むベーストラックを作成する(ステップ1503)。抽出器が、それらが参照しているデータに置き換えられるときに、結果としてもたらされるビットストリームが、復号順序に順序付けられている完全なビデオサンプルから構成される有効なビットストリームであるように、抽出器および共通のNALユニットが、順序付けられることが好ましい。
次に、サーバデバイスは、ISO BMF表現に従って時間的周期を含むセグメントファイルを生成し、好ましくは、記憶する(ステップ1504)。ビデオメディアトラック(ベーストラックおよびタイルトラック)の各々が別個のセグメントファイルに記憶される。別の実施形態においては、すべてのメディアトラックが単一のISO BMFファイルに記憶される。
ステップ1505において、サーバデバイスは、要求に応じて、要求しているクライアントデバイスにカプセル化データを供給する。
ある実施形態において、符号化データがいくつかのセグメントファイルにカプセル化されるとき、後者は、要求に応じてクライアントデバイスに供給される。そのような事例において、サーバデバイスは、HTTP要求に応答する従来のHTTPサーバであってもよい。
あるいは、たとえば、RTPストリーミングに対して、サーバデバイスは、クライアントデバイスによって要求される関心領域の層およびタイルに対応するビットストリームを抽出し、たとえば、RTPプロトコルを使用して、それらを送信する。
ビデオビットストリーム抽出は、サーバ側またはクライアント側のいずれにおいて行われてもよい。
ファイルフォーマットカプセル化なしに、ビデオビットストリームのみがクライアントデバイスに送信されるとき、ビデオビットストリーム抽出は、一般的に、サーバ側で行われる。これは特に、サーバデバイスが符号化ビットストリームをクライアントデバイスにプッシュするためにRTPプロトコルを使用する場合に当てはまる。そのような事例において、サーバデバイスは、1つまたはいくつかのカプセル化ISO BMFファイルからビデオビットストリームを抽出し、RTPプロトコルのようなプッシュプロトコルを使用して、このビデオビットストリームをクライアントデバイスにストリーミングする。
ビデオビットストリームがISO BMFファイルセグメントとして交換されるとき、これは、クライアント側で行われる。そのような事例において、クライアントデバイスは、たとえば、DASHのようなHTTPストリーミングプロトコルを使用して、必要とされるメディアセグメントをサーバデバイスからダウンロードする。これは、ユーザの関心領域を表示するのに必要とされるメディアセグメントのみを選択するために、マニフェストを介してサーバデバイスと以前に交換されている、メディアプレゼンテイションの記述を使用することができる。必要とされるメディアセグメントは、必要とされる空間または時間層、ユーザの関心領域をカバーするタイル、ならびに、それらが依存するすべてのベースレイヤおよびタイルに対応する。これは、受信されるメディアセグメントを連結して、そこから必要とされるビデオビットストリームを抽出することができる対応したISOBMFファイルを構築する。
図16は、符号化多層タイル化ビデオビットストリームをカプセル開放するためにビットストリーム読み取り器(クライアントデバイス、たとえば、ビデオプレーヤ内、または、サーバデバイス、たとえば、RTPサーバ内の)において実行することができるステップの一例を示す。
第1のステップ(ステップ1600)において、ビットストリーム読み取り器は、初期化データ、たとえば、一般的には「moov」ボックスの内容である、MPEG−4規格に対応するカプセル化ビットストリームの初期化データを読み出す。
次に、ステップ1601および1602において、利用可能である種々のトラック、サンプル、およびタイルが、トラックヘッダ、サンプルテーブル、ならびにTileRegionGroupEntryおよびTileSetGroupEntryサンプルグループ記述を分析することによって識別される。
関心領域に対応するタイルおよびユーザから受信される要求に一致する層が識別された後(ステップ1603)、データが抽出され(ステップ1604)、復号され、(一般的には)表示されるために、ビデオ復号器に提供される(ステップ1605)。
データは、図17に示されているアルゴリズムに従って抽出することができる。
図17は、再帰抽出器を含むトラックからビデオデータを抽出するためのアルゴリズムの一例を示す。
処理(一般的には表示)されるべき層がステップ1603(図16)において識別されると、ビットストリーム読み取り器は、現在の層の識別子を最上層の識別子として記録し(ステップ1701)、要求される層と関連付けられたベーストラックから次のNALユニットを得る(ステップ1702)。実例として、要求される層は、図14を参照して説明されているエンハンスメントレイヤベーストラックであってもよい。
その後、NALユニットが利用可能であるか否かを判定するためのテストが実施される(ステップ1703)。NALユニットが利用可能である場合、このNALユニットが抽出器であるか否かを判定するための別のテストが実施される(ステップ1704)。NALユニットが抽出器でない場合、データが復号器に提供され(ステップ1705)、アルゴリズムはステップ1702に分岐して、次のNALユニット(もしあれば)が得られる。
反対に、NALユニットが抽出器である場合、抽出器のパラメータdata_lengthが「stsz」または「trun」テーブルによって示されるような参照されるサンプルのサイズに等しいか否かを判定するために別のテストが実施される(ステップ1706)。
抽出器のパラメータdata_lengthが参照されるサンプルのサイズに等しい場合、参照されるサンプル内に存在する抽出器は再帰的に解決される。そのために、現在の層の識別子が、先行する層の識別子としてメモリ内に記憶され、現在の層の識別子は、抽出器によって指摘されるトラックの層の識別子として設定される(ステップ1707)。次に、図17に示されているアルゴリズムを抽出器によって指し示されるデータに適用するように、アルゴリズムはステップ1702に分岐する。
反対に、パラメータdata_lengthが参照されるサンプルのサイズに等しくない場合、抽出器によって指摘されるデータがユーザによって選択される関心領域に関連するか否か(たとえば、抽出器がタイルトラックを指し示す場合、これは、タイルの座標が選択された領域の内部に位置するか否かをチェックする)、または、抽出器によって指し示されるデータが、他のデータがそのデータに依存するので、必要とされるか否か(たとえば、抽出器は、TileSetGroupEntryサンプルグループ記述において記述されているように現在選択されている別のタイルトラックの依存性リスト内にリストされているタイルトラックを指し示す)を判定するために、別のテストが実施される(ステップ1708)。これらの条件の1つが満たされる場合、抽出器は解決され、指し示されるデータに置き換えられる(ステップ1709)。そうでない場合、抽出器は無視される(ステップ1710)。次に、アルゴリズムはステップ1702に分岐して、次のNALユニット(もしあれば)が得られる。
ステップ1703において利用可能なNALユニットがない場合、現在の層の識別子が、アルゴリズムの開始時に選択された層(最上層)の識別子であるか否かを判定するためのテストが実施される。現在の層がアルゴリズムの開始時に選択された層でない場合、実行は先行する層で継続する(ステップ1712)。反対に、現在の層がアルゴリズムの開始時に選択された層である場合、アルゴリズムは停止する。
図18は、1つ以上の実施形態のステップを実施することができるサーバまたはクライアントデバイス1800のブロック図を示す。
デバイス1800は、通信バス1802と、デバイスが電源投入されたときにプログラムROM1806からの命令を実行し、電源投入後にメインメモリ1808からのソフトウェアアプリケーションに関係する命令を実行することが可能な中央処理装置(CPU)1804とを備えることが好ましい。メインメモリ1808は、たとえば、通信バス1802を介してCPU1804の作業領域として機能するランダムアクセスメモリ(RAM)タイプのものであり、そのメモリ容量は、拡張ポート(図示せず)に接続される任意選択のRAMによって拡張することができる。ソフトウェアアプリケーションに関係する命令は、たとえば、ハードディスク(HD)1810またはプログラムROM1806からメインメモリ1808にロードされるであろう。そのようなソフトウェアアプリケーションは、CPU1804によって実行されると、図15を参照して説明されたステップをサーバにおいて実施させ、図16および図17を参照して説明されたステップをサーバまたはクライアントデバイスにおいて実施させる。
参照符号1812は、デバイス1800の通信ネットワーク1814への接続を可能にするネットワークインターフェースである。ソフトウェアアプリケーションは、CPU1804によって実行されると、ネットワークインターフェースを通じて受信される要求に反応し、ネットワークを介して他のデバイスにデータストリームおよび要求を提供するように構成されている。
参照符号1816は、ユーザに情報を提示し、かつ/またはユーザからの入力を受信するためのユーザインターフェースを示す。
ここで、変形形態として、マルチメディアビットストリームの受信または送信を管理するためのデバイス1800は、図15、図16、および図17を参照して説明された方法を実施することが可能である1つ以上の専用集積回路(ASIC)から構成することができることを指摘しておくべきである。これらの集積回路は、たとえば、非限定的に、ビデオシーケンスを生成もしくは表示し、および/またはオーディオシーケンスを聴くための装置に統合される。
本発明の実施形態は、たとえば、特定の関心領域にズームインするために、カメラ、スマートフォン、または、TVのリモートコントローラとして機能するタブレットのようなデバイスに組み込まれてもよい。それらはまた、特定の関心領域を選択することによって、TV番組のパーソナライズされた閲覧体験を有するために同じデバイスから使用することもできる。ユーザによるこれらのデバイスの別の使用法は、他の接続されたデバイスを用いて、ユーザが好むビデオの選択された下位区分を共有することである。それらはまた、監視カメラが本発明の生成部分をサポートしていることを条件として、監視下に置かれる建造物の特定領域で何が起こるかをモニタリングするために、スマートフォンまたはタブレット内で使用することもできる。
当然ながら、ローカルなおよび特定の要件を満たすために、当業者は、上述したソルーションに多くの修正および変更を適用することができるが、これらのすべてが添付の特許請求の範囲によって規定されているような本発明の保護範囲内に含まれる。
なお、上述の実施形態は、以下のように表現することもできる。
本発明の第1のグループの態様によれば、出願時の(以下同じ)請求項1によって定義されているような、サーバ内で多層分割タイムドメディアデータをカプセル化するための方法、請求項8によって定義されているような、クライアントデバイスにおいて多層分割タイムドメディアデータをカプセル開放(または解析)するための方法、請求項15によって定義されているような、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル化方法を実行させるプログラム、同じく請求項15によって定義されているような、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル開放(または解析)方法を実行させるプログラム、請求項16によって定義されているような、カプセル化プログラムおよび/またはカプセル開放(または解析)プログラムを記憶しているコンピュータ可読記憶媒体、請求項17によって定義されているような、多層分割タイムドメディアデータをカプセル化するためのデバイス、請求項24によって定義されているような、多層分割タイムドメディアデータをカプセル開放(または解析)するためのデバイス、請求項31によって定義されているような、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を含むメディアセグメントファイル、請求項32によって定義されているような、メディアセグメントファイルを記憶しているコンピュータ可読記憶媒体、ならびに、請求項33によって定義されているような、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を搬送している信号が提供される。
本発明の第2のグループの態様によれば、請求項34によって定義されているような、サーバ内で多層分割タイムドメディアデータをカプセル化するための方法、請求項47によって定義されているような、クライアントデバイスにおいて多層分割タイムドメディアデータをカプセル開放(または解析)するための方法、請求項60によって定義されているような、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル化方法を実行させるプログラム、同じく請求項60によって定義されているような、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル開放(または解析)方法を実行させるプログラム、請求項61によって定義されているような、カプセル化プログラムおよび/またはカプセル開放(または解析)プログラムを記憶しているコンピュータ可読記憶媒体、請求項62によって定義されているような、多層分割タイムドメディアデータをカプセル化するためのデバイス、請求項75によって定義されているような、多層分割タイムドメディアデータをカプセル開放(または解析)するためのデバイス、請求項88によって定義されているような、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を含むメディアセグメントファイル、請求項89によって定義されているような、メディアセグメントファイルを記憶しているコンピュータ可読記憶媒体、ならびに、請求項90によって定義されているような、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を搬送している信号が提供される。
第1のグループおよび/または第2のグループの態様のある実施形態において、多層とは2つ以上の層、たとえば、ベースレイヤおよびエンハンスメントレイヤを意味し、サンプルとは、単一のタイムスタンプ(たとえば、ベースレイヤ内のフレームおよびエンハンスメントレイヤ内のフレーム)と関連付けられたすべてのデータを意味し、サブサンプルは、タイルまたはタイルセットのような、空間サブサンプルである。タイルとは、たとえば、フレーム内の矩形領域を意味し、タイルセットとは、任意の数のタイルの組み合わせを意味する。
本発明の第3のグループの態様は、抽出器に関する。これらの態様は、たとえば、サーバにおいて多層分割タイムドメディアデータをカプセル化するための方法を含み、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、ベースレイヤおよび少なくとも1つのエンハンスメントレイヤに符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのタイルを含み、各タイルはベースレイヤまたは少なくとも1つのエンハンスメントレイヤに符号化され、前記方法は、
ベースレイヤタイルトラックを作成することと、
ベースレイヤタイルトラック内のデータを指し示す第1の抽出器を備えるベースレイヤベーストラックを作成することと、
ベースレイヤベーストラック内の第1の抽出器を指し示す第2の抽出器を備えるエンハンスメントレイヤトラックを作成することとを含み、
それによって、ベースレイヤタイルトラック内の前記データは、エンハンスメントレイヤトラック内の第2の抽出器から、当該データ自体に対するベースレイヤベーストラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。
エンハンスメントレイヤトラックは、エンハンスメントレイヤベーストラックであることが好ましい。
カプセル化方法は、エンハンスメントレイヤタイルトラックを作成するステップをさらに含んでも良く、エンハンスメントレイヤベーストラックは、エンハンスメントレイヤタイルトラック内のデータを指し示す第3の抽出器をさらに備える。
本発明の第3のグループの態様の変形形態もまた、抽出器に関する。これらの態様は、たとえば、サーバにおいて多層タイムドメディアデータをカプセル化するための方法を含み、多層タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、ベースレイヤおよび少なくとも2つのエンハンスメントレイヤに符号化され、前記方法は、ベースレイヤトラックを作成することと、
ベースレイヤトラック内のデータを指し示す第1の抽出器を備えるエンハンスメントレイヤトラックを作成することと、
エンハンスメントレイヤトラック内の第1の抽出器を指し示す第2の抽出器を備える別のエンハンスメントレイヤトラックを作成すること、とを含み、
それによって、ベースレイヤトラック内の前記データは、別のエンハンスメントレイヤトラック内の第2の抽出器から、ベースレイヤトラックのデータに対するエンハンスメントレイヤトラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。本発明の第3のグループの態様はまた、たとえば、クライアントデバイスにおいて多層分割タイムドメディアデータをカプセル開放(または解析)するための方法をも含み、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、ベースレイヤおよび少なくとも1つのエンハンスメントレイヤに符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのタイルを含み、各タイルはベースレイヤおよび少なくとも1つのエンハンスメントレイヤに符号化され、前記方法は、
ベースレイヤタイルトラックを得ることと、
ベースレイヤタイルトラック内のデータを指し示す第1の抽出器を備えるベースレイヤベーストラックを得ることと、
ベースレイヤベーストラック内の第1の抽出器を指し示す第2の抽出器を備えるエンハンスメントレイヤトラックを得ることと、
エンハンスメントレイヤトラック内の第2の抽出器から、当該データ自体に対するベースレイヤベーストラック内の第1の抽出器への抽出器経路に従うことによって、ベースレイヤタイルトラック内のデータを得ることと、を含む。
エンハンスメントレイヤトラックは、エンハンスメントレイヤベーストラックであることが好ましい。
カプセル開放(または解析)方法は、
エンハンスメントレイヤタイルトラックを受信することであって、エンハンスメントレイヤベーストラックが、エンハンスメントレイヤタイルトラック内のデータを指し示す第3の抽出器をさらに備える、エンハンスメントレイヤタイルトラックを受信することと、エンハンスメントレイヤベーストラック内の第3の抽出器からエンハンスメントレイヤタイルトラック内のデータ自体への抽出器経路に従うことによって、エンハンスメントレイヤタイルトラック内のデータを得ることと、をさらに含むことができる。
本発明の第3のグループの態様の変形形態はまた、たとえば、クライアントにおいて多層タイムドメディアデータをカプセル開放するための方法をも含み、多層タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルはベースレイヤおよび少なくとも2つのエンハンスメントレイヤに符号化され、前記方法は、
ベースレイヤトラックを得ることと、
ベースレイヤトラック内のデータを指し示す第1の抽出器を備えるエンハンスメントレイヤトラックを得ることと、
エンハンスメントレイヤトラック内の第1の抽出器を指し示す第2の抽出器を備える別のエンハンスメントレイヤトラックを得ることと、を含み、
それによって、ベースレイヤトラック内の前記データは、別のエンハンスメントレイヤトラック内の第2の抽出器から、ベースレイヤトラックのデータに対するエンハンスメントレイヤトラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。
本発明の第3のグループの態様はまた、多層分割タイムドメディアデータをカプセル化するためのデバイスをも含み、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、ベースレイヤおよび少なくとも1つのエンハンスメントレイヤに符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのタイルを含み、各タイルはベースレイヤまたは少なくとも1つのエンハンスメントレイヤに符号化され、前記デバイスは、
ベースレイヤタイルトラックを作成するための手段と、
ベースレイヤタイルトラック内のデータを指し示す第1の抽出器を備えるベースレイヤベーストラックを作成するための手段と、
ベースレイヤベーストラック内の第1の抽出器を指し示す第2の抽出器を備えるエンハンスメントレイヤトラックを作成するための手段と、を備え、
それによって、ベースレイヤタイルトラック内の前記データは、エンハンスメントレイヤトラック内の第2の抽出器から、当該データ自体に対するベースレイヤベーストラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。
エンハンスメントレイヤトラックは、エンハンスメントレイヤベーストラックであることが好ましい。
カプセル化デバイスは、エンハンスメントレイヤタイルトラックを作成するための手段をさらに備えても良く、エンハンスメントレイヤベーストラックは、エンハンスメントレイヤタイルトラック内のデータを指し示す第3の抽出器をさらに備える。
本発明の第3のグループの態様の変形形態はまた、たとえば、サーバ内に含まれる多層タイムドメディアデータをカプセル化するためのデバイスをも含み、多層タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルはベースレイヤおよび少なくとも2つのエンハンスメントレイヤに符号化され、前記デバイスは、
ベースレイヤトラックを作成するための手段と、
ベースレイヤトラック内のデータを指し示す第1の抽出器を備えるエンハンスメントレイヤトラックを作成するための手段と、
エンハンスメントレイヤトラック内の第1の抽出器を指し示す第2の抽出器を備える別のエンハンスメントレイヤトラックを作成するための手段と、を備え、
それによって、ベースレイヤトラック内の前記データは、別のエンハンスメントレイヤトラック内の第2の抽出器から、ベースレイヤトラックのデータに対するエンハンスメントレイヤトラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。
本発明の第3のグループの態様はまた、多層分割タイムドメディアデータをカプセル開放(または解析)するためのデバイスをも含み、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、ベースレイヤおよび少なくとも1つのエンハンスメントレイヤに符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのタイルを含み、各タイルはベースレイヤまたは少なくとも1つのエンハンスメントレイヤに符号化され、デバイスは、
ベースレイヤタイルトラックを得るための手段と、
ベースレイヤタイルトラック内のデータを指し示す第1の抽出器を備えるベースレイヤベーストラックを得るための手段と、
ベースレイヤベーストラック内の第1の抽出器を指し示す第2の抽出器を備えるエンハンスメントレイヤトラックを得るための手段と、
エンハンスメントレイヤトラック内の第2の抽出器から、当該データ自体に対するベースレイヤベーストラック内の第1の抽出器への抽出器経路に従うことによって、ベースレイヤタイルトラック内のデータを得るための手段と、を備える。
エンハンスメントレイヤトラックは、エンハンスメントレイヤベーストラックであることが好ましい。
前記カプセル開放(または解析)デバイスは、
エンハンスメントレイヤタイルトラックを受信するための手段であって、エンハンスメントレイヤベーストラックが、エンハンスメントレイヤタイルトラック内のデータを指し示す第3の抽出器をさらに備える、エンハンスメントレイヤタイルトラックを受信するための手段と、
エンハンスメントレイヤベーストラック内の第3の抽出器からエンハンスメントレイヤタイルトラック内のデータ自体への抽出器経路に従うことによって、エンハンスメントレイヤタイルトラック内のデータを得るための手段と、をさらに備えても良い。
本発明の前記第3のグループの態様の変形形態はまた、たとえば、クライアント内に含まれる多層タイムドメディアデータをカプセル開放するためのデバイスをも含み、多層タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルはベースレイヤおよび少なくとも2つのエンハンスメントレイヤに符号化され、前記デバイスは、
ベースレイヤトラックを得るための手段と、
ベースレイヤトラック内のデータを指し示す第1の抽出器を備えるエンハンスメントレイヤトラックを得るための手段と、
エンハンスメントレイヤトラック内の第1の抽出器を指し示す第2の抽出器を備える別のエンハンスメントレイヤトラックを得るための手段と、を備え、
それによって、ベースレイヤトラック内の前記データは、別のエンハンスメントレイヤトラック内の第2の抽出器から、ベースレイヤトラックのデータに対するエンハンスメントレイヤトラック内の第1の抽出器への抽出器経路に従うことによって取得可能である。第3の態様グループのさらなる態様およびその変形形態は、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル化方法を実行させるプログラム、コンピュータまたはプロセッサによって実行されると、コンピュータまたはプロセッサにカプセル開放(または解析)方法を実行させるプログラム、カプセル化プログラムおよび/またはカプセル開放(または解析)プログラムを記憶しているコンピュータ可読記憶媒体、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を含むメディアセグメントファイル、メディアセグメントファイルを記憶しているコンピュータ可読記憶媒体、ならびに、カプセル化方法によってカプセル化されている多層分割タイムドメディアデータの少なくとも一部分を搬送している信号を提供することができる。
本発明の別の態様によれば、サーバにおいて分割タイムドメディアデータをカプセル化するための方法が提供され、分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルはフレームを規定し、少なくとも1つのタイムドサンプルは少なくとも1つのサブサンプルを含み、前記方法は、
タイムドサンプルの少なくとも1つから少なくとも1つのサブサンプルを得ることと、少なくとも1つの得られたサブサンプルを含むトラックを作成することと、
作成されたトラックと関連付けられた記述メタデータを生成することであって、記述メタデータは、設定されると、少なくとも1つの得られたサブサンプルが完全なフレームであることを示すパラメータを含む、記述メタデータを生成することとを含む。
これらの制約に直面し、本発明者らは、サーバにおいて多層タイル化タイムドメディアデータをカプセル化し、複数のメディアセグメントファイル内にカプセル化されている多層タイル化タイムドメディアデータからタイムドメディアデータビットストリームを提供するための方法およびデバイスを提供する。
本発明の広範な目的は、上述したような従来技術の欠点を改善することである。
本発明の第1の態様によれば、サーバにおいて多層分割タイムドメディアデータをカプセル化するための方法が提供され、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、第1の層および少なくとも1つの第2の層に符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのサブサンプルを含み、各サブサンプルは第1の層または少なくとも1つの第2の層に符号化され、前記方法は、
タイムドサンプルの少なくとも1つから少なくとも1つのサブサンプルを得ることと、少なくとも1つの得られたサブサンプルを含むトラックを作成することと、
作成されたトラックと関連付けられた記述メタデータを生成することとを含み、記述メタデータは、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の依存関係をシグナリングするための記述子を含み、依存関係は、
少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが同じ層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層内依存性を記述し、
少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが異なる層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層間依存性を記述する。
したがって、本発明は、多層ビデオストリームの複数の異なる部分、特に、複数の異なるタイルの組み合わせ、および、解析時に、クライアントデバイスによってダウンロードされる部分またはタイルの選択されるセットが何であれ有効なファイルフォーマットおよびエレメンタリストリームを作成することを可能にする。
それゆえ、本発明の方法は、多層ビデオストリームの独立した部分またはタイルの効率的なストリーミングに適しており、標準規格、特にMPEG−4 Part15規格に容易に組み込むための既存のツールを使用し、タイル化から脱相関された、タイルレベルにおける動的な層間依存性をサポートし、2つ以上の部分またはタイル選択(すなわち、任意のROI)に適しており、抽出器を使用して層間依存性を処理することによって引き起こされるオーバヘッドを制限する。
層のサブサンプルは、別の層の1つ以上のサブサンプルまたは複数の異なる層のいくつかのサブサンプルにリンクされ得ることが留意されるべきである。
ある実施形態において、多層分割タイムドメディアデータは多層タイル化タイムドメディアデータであり、サブサンプルは空間サブサンプルである。
ある実施形態において、作成されたトラックと関連付けられた記述メタデータは、少なくとも1つの得られたサブサンプルが、タイムドサンプルの少なくとも1つのすべてのメディアデータを含む、同じ層に属する少なくとも1つのサブサンプルよりなるセットを含むか否かを示すパラメータを含む。
ある実施形態において、作成されたトラックと関連付けられた記述メタデータは、少なくとももう1つのサブサンプルが、作成されたトラックと関連付けられた記述メタデータ内でどのように記述されているかを示すパラメータを含む。
ある実施形態において、前記方法は、作成されたトラックのサブサンプルの少なくとも2つのサブサンプルグループを作成するステップをさらに含み、作成されたトラックと関連付けられた記述メタデータは、サブサンプルグループの各々の定義を含み、サブサンプルグループの各々の定義は、対応するサブサンプルグループの各サブサンプルの依存関係を含む。
ある実施形態において、前記方法は、作成されたトラックのサブサンプルの少なくとも1つのサブサンプルグループを作成するステップをさらに含み、作成されたトラックと関連付けられた記述メタデータは、作成されたサブサンプルグループに属しない、作成されたトラックの各サブサンプルの依存関係を含む第1の定義と、サブサンプルグループの各サブサンプルの依存関係を含む、第2の定義とよばれる、作成されたサブサンプルグループの定義とを含む。
ある実施形態において、依存関係はリストに編成され、リストの数は、サンプルを符号化するために使用される層の数に等しく、各リストは、層の降順もしくは昇順に編成されるか、または、層識別子と関連付けられる。
ある実施形態において、依存関係は、各サブサンプルおよび各層のすべての依存関係を含む1つのリストに編成される。
ある実施形態において、各層は、層識別子の関数として識別され、依存関係は、共在するサブサンプルの層識別子を含む1つのリストに編成される。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、第1のトラックを作成するステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを作成するステップであって、少なくとも1つの第2のサブサンプルは、上記少なくとも1つの第1のサンプルの少なくとも1つの項目のサブサンプルであり、第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、第2のトラックを作成するステップと、を含み、
第3のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器を備え、少なくとも1つの得られたサブサンプルは、少なくとも1つの第2の層に属する。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、第1のトラックを作成するステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを作成するステップであって、少なくとも1つの第2のサブサンプルは、上記少なくとも1つの第1のサンプルの少なくとも1つの項目のサブサンプルであり、第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、第2のトラックを作成するステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを作成するステップであって、当該第3のトラックのサンプルの項目は上記少なくとも1つの第2の層に属する、第3のトラックを作成するステップと、をさらに含み、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラック、第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、少なくとも1つの得られたサブサンプルは、上記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、第1のトラックを作成するステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを作成するステップであって、当該第3のトラックのサンプルの項目は上記少なくとも1つの第2の層に属する、第3のトラックを作成するステップと、をさらに含み、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラック、第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、少なくとも1つの得られたサブサンプルは、上記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態において、抽出器は、サンプルの項目のサイズ、または、作成された抽出器によって指摘される層のサブサンプルのサイズに基づく基準値の関数として作成される。
ある実施形態において、作成されたトラックの各々をカプセル化する結果としてもたらされるメディアセグメントファイルは、国際標準化機構によって定義されているものとしてのベースメディアファイルフォーマット(Base Media File Format)に適合する。
本発明の第2の態様によれば、サーバまたはクライアントデバイスにおいて、少なくとも1つのメディアセグメントファイル内にカプセル化されている多層分割タイムドメディアデータから多層タイムドメディアデータビットストリームを提供するための方法が提供され、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、第1の層および少なくとも1つの第2の層に符号化され、少なくとも1つのタイムドサンプルは、第1の層または少なくとも1つの第2の層に符号化されている少なくとも1つのサブサンプルを含み、前記少なくとも1つのメディアセグメントファイルは、タイムドサンプルの少なくとも1つから得られる少なくとも1つのサブサンプルを含む少なくとも1つのトラックを含み、
少なくとも1つのメディアセグメントファイルは、少なくとも1つのトラックと関連付けられた記述メタデータと関連付けられ、記述メタデータは、少なくとも1つのサブサンプルと少なくとももう1つのサブサンプルとの間の依存関係をシグナリングするための記述子を含み、依存関係は、少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが同じ層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層内依存性を記述し、少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが異なる層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層間依存性を記述し、前記方法は、
サブサンプルを表す情報項目を選択することと、
選択されたサブサンプルを含む少なくとも1つのトラックを要求することであって、選択されたサブサンプルは、選択された情報項目に対応する、
少なくとも1つのメディアセグメントファイルおよび記述メタデータを受信することと、
多層タイムドメディアデータビットストリームを生成するために少なくとももう1つのサブサンプルを識別することと、を含む。
したがって、本発明は、多層ビデオストリームの複数の異なる部分、特に、複数の異なるタイルの組み合わせ、および、解析時に、クライアントデバイスによってダウンロードされる部分またはタイルの選択されるセットが何であれ有効なファイルフォーマットおよびエレメンタリストリームを作成することを可能にする。
それゆえ、本発明の方法は、多層ビデオストリームの独立した部分またはタイルの効率的なストリーミングに適しており、標準規格、特にMPEG−4 Part15規格に容易に組み込むための既存のツールを使用し、タイル化から脱相関された、タイルレベルで動的な層間依存性をサポートし、2つ以上の部分またはタイル選択(すなわち、任意のROI)に適しており、抽出器を使用して層間依存性を処理することによって引き起こされるオーバヘッドを制限する。
層のサブサンプルは、別の層の1つ以上のサブサンプルまたは複数の異なる層のいくつかのサブサンプルにリンクされ得ることが留意されるべきである。
ある実施形態において、多層分割タイムドメディアデータは多層タイル化タイムドメディアデータであり、サブサンプルは空間サブサンプルである。
ある実施形態において、前記方法は、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つの得られたサブサンプルが、前記タイムドサンプルの少なくとも1つのすべてのメディアデータを含む、同じ層に属する少なくとも1つのサブサンプルよりなるセットを含むか否かを示すパラメータを得るステップをさらに含む。
ある実施形態において、前記方法は、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとももう1つのサブサンプルが、少なくとも1つのトラックと関連付けられた記述メタデータ内でどのように記述されているかを示すパラメータを得るステップをさらに含む。
ある実施形態において、前記方法は、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つのトラックの少なくとも2つのサブサンプルグループの定義を得るステップをさらに含み、得られる定義は、対応するサブサンプルグループの各サブサンプルの依存関係を含む。
ある実施形態において、前記方法は、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つのトラックのサブサンプルの少なくとも1つのサブサンプルグループの定義を得るステップをさらに含み、第1の定義とよばれる、少なくとも1つのサブサンプルグループの定義は、少なくとも1つのサブサンプルグループの各サブサンプルの依存関係を含み、第2の定義は、少なくとも1つのサブサンプルグループに属しない、少なくとも1つのトラックの各サブサンプルの依存関係を含む。
ある実施形態において、依存関係はリストに編成され、リストの数は、サンプルを符号化するために使用される層の数に等しく、各リストは、層の降順もしくは昇順に編成されるか、または、層識別子と関連付けられる。
ある実施形態において、依存関係は、各サブサンプルおよび各層のすべての依存関係を含む1つのリストに編成される。
ある実施形態において、各層は、層識別子の関数として識別され、依存関係は、共在するサブサンプルの層識別子を含む1つのリストに編成される。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを得るステップであって、少なくとも1つの第2のサブサンプルは、少なくとも1つの第1のサンプルのサブサンプルであり、第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、ステップと、をさらに含み、
第3のトラックとよばれる、少なくとも1つの得られたサブサンプルを含むトラックは、少なくとも1つの第1のサンプルを指し示す少なくとも1つの第3の抽出器を備え、少なくとも1つの得られたサブサンプルは、少なくとも1つの第2の層に属する。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを得るステップであって、少なくとも1つの第2のサブサンプルは、少なくとも1つの第1のサンプルのサブサンプルであり、第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、ステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを得るステップであって、第3のトラックのサンプルの項目は少なくとも1つの第2の層に属する、ステップと、をさらに含み、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含むトラック、第3のトラックは、少なくとも1つの第1のサンプルの前記少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、少なくとも1つの得られたサブサンプルは、少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態において、前記方法は、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、第1のトラックのサンプルの項目は第1の層に属する、ステップと、少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを得るステップであって、第3のトラックのサンプルの項目は少なくとも1つの第2の層に属する、ステップと、をさらに含み、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含むトラック、第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、少なくとも1つの得られたサブサンプルは、少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態において、抽出器は、サンプルの項目のサイズ、または、作成された抽出器によって指摘される層のサブサンプルのサイズに基づく基準値の関数として識別される。
ある実施形態において、識別された抽出器によって指摘されるデータの抽出は、依存関係のパラメータの関数として決定される。
ある実施形態において、作成されたトラックの各々をカプセル化する結果としてもたらされるメディアセグメントファイルは、国際標準化機構によって定義されているベースメディアファイルフォーマットに適合する。
本発明の第3の態様によれば、サーバにおいて多層分割タイムドメディアデータをカプセル化するためのデバイスが提供され、多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、第1の層および少なくとも1つの第2の層に符号化され、少なくとも1つのタイムドサンプルは少なくとも1つのサブサンプルを含み、各サブサンプルは第1の層または少なくとも1つの第2の層に符号化され、デバイスはプロセッサを備え、当該プロセッサは、以下のステップを実行するよう構成される。
前記タイムドサンプルの少なくとも1つから少なくとも1つのサブサンプルを得るステップと、
前記少なくとも1つの得られたサブサンプルを含むトラックを作成するステップと、
前記作成されたトラックと関連付けられた記述メタデータを生成するステップであって、記述メタデータは、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の依存関係をシグナリングするための記述子を含み、依存関係は、
少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが同じ層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層内依存性を記述し、
少なくとも1つの得られたサブサンプルおよび前記少なくとももう1つのサブサンプルが異なる層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層間依存性を記述する。
したがって、本発明は、多層ビデオストリームの複数の異なる部分、特に、複数の異なるタイルの組み合わせ、および、解析時に、クライアントデバイスによってダウンロードされる部分またはタイルの選択されるセットが何であれ有効なファイルフォーマットおよびエレメンタリストリームを作成することを可能にする。
それゆえ、本発明のデバイスは、多層ビデオストリームの独立した部分またはタイルの効率的なストリーミングに適しており、標準規格、特にMPEG−4 Part15規格に容易に組み込むための既存のツールを使用し、タイル化から脱相関された、タイルレベルにおける動的な層間依存性をサポートし、2つ以上の部分またはタイル選択(すなわち、任意のROI)に適しており、抽出器を使用して層間依存性を処理することによって引き起こされるオーバヘッドを制限する。
層のサブサンプルは、別の層の1つ以上のサブサンプルまたは複数の異なる層のいくつかのサブサンプルにリンクされ得ることが留意されるべきである。
ある実施形態によれば、前記プロセッサは、多層分割タイムドメディアデータが多層タイル化タイムドメディアデータであるようにさらに構成されており、サブサンプルは空間サブサンプルである。
ある実施形態によれば、前記プロセッサは、少なくとも1つの得られたサブサンプルが、タイムドサンプルの少なくとも1つのすべてのメディアデータを含む、同じ層に属する少なくとも1つのサブサンプルよりなるセットを含むか否かを示すパラメータを、作成されたトラックと関連付けられた記述メタデータが含むようにさらに構成されている。
ある実施形態によれば、前記プロセッサは、少なくとももう1つのサブサンプルが、作成されたトラックと関連付けられた記述メタデータ内でどのように記述されているかを示すパラメータを、作成されたトラックと関連付けられた記述メタデータが含むようにさらに構成されている。
ある実施形態によれば、前記プロセッサは、作成されたトラックのサブサンプルの少なくとも2つのサブサンプルグループを作成するステップを実行するようにさらに構成されており、作成されたトラックと関連付けられた記述メタデータは、サブサンプルグループの各々の定義を含み、サブサンプルグループの各々の定義は、対応するサブサンプルグループの各サブサンプルの依存関係を含む。
ある実施形態によれば、前記プロセッサは、作成されたトラックのサブサンプルの少なくとも1つのサブサンプルグループを作成するステップを実行するようにさらに構成されており、作成されたトラックと関連付けられた記述メタデータは、作成されたサブサンプルグループに属しない、作成されたトラックの各サブサンプルの依存関係を含む第1の定義と、サブサンプルグループの各サブサンプルの依存関係を含む、第2の定義とよばれる、作成されたサブサンプルグループの定義とを含む。
ある実施形態によれば、前記プロセッサは、依存関係がリストに編成されるようにさらに構成されており、リストの数は、サンプルを符号化するために使用される層の数に等しく、各リストは、層の降順もしくは昇順に編成されるか、または、層識別子に関連付けられる。
ある実施形態によれば、前記プロセッサは、依存関係が、各サブサンプルおよび各層のすべての依存関係を含む1つのリストに編成されるようにさらに構成されている。
ある実施形態によれば、前記プロセッサは、各層が、層識別子の関数として識別されるようにさらに構成されており、依存関係は、共在するサブサンプルの層識別子を含む1つのリストに編成される。
ある実施形態によれば、前記プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを作成するステップであって、前記少なくとも1つの第2のサブサンプルは、前記少なくとも1つの第1のサンプルの少なくとも1つの項目のサブサンプルであり、第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、第2のトラックを作成するステップと、を実行するようにさらに構成されている、ステップと、を実行するようにさらに構成されており、
第3のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、少なくとも1つの第2の層に属する。
ある実施形態によれば、プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、前記第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを作成するステップであって、前記少なくとも1つの第2のサブサンプルは、前記少なくとも1つの第1のサンプルの少なくとも1つの項目のサブサンプルであり、前記第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、ステップと、少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを作成するステップであって、前記第3のトラックのサンプルの項目は前記少なくとも1つの第2の層に属する、ステップと、を実行するようにさらに構成されており、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラック、前記第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、上記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態によれば、前記プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを作成するステップであって、前記第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを作成するステップであって、前記第3のトラックのサンプルの項目は上記少なくとも1つの第2の層に属する、ステップと、を実行するようにさらに構成されており、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含む作成されたトラック、前記第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、前記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある実施形態によれば、前記プロセッサは、抽出器が、サンプルの項目のサイズ、または、作成された抽出器によって指摘される層のサブサンプルのサイズに基づく基準値の関数として作成されるようにさらに構成されている。
ある実施形態によれば、前記プロセッサは、作成されたトラックの各々をカプセル化する結果としてもたらされるメディアセグメントファイルが、国際標準化機構によって定義されているものとしてのベースメディアファイルフォーマットに適合するようにさらに構成されている。
本発明の第4の態様によれば、サーバまたはクライアントデバイスにおいて、少なくとも1つのメディアセグメントファイル内にカプセル化されている多層分割タイムドメディアデータから多層タイムドメディアデータビットストリームを提供するためのデバイスが提供され、前記多層分割タイムドメディアデータはタイムドサンプルを含み、各タイムドサンプルは、第1の層および少なくとも1つの第2の層に符号化され、少なくとも1つのタイムドサンプルは、少なくとも第1の層または少なくとも1つの第2の層に符号化されている少なくとも1つのサブサンプルを含み、
前記少なくとも1つのメディアセグメントファイルは、タイムドサンプルの少なくとも1つから得られる少なくとも1つのサブサンプルを含む少なくとも1つのトラックを含み、前記少なくとも1つのメディアセグメントファイルは、少なくとも1つのトラックと関連付けられた記述メタデータと関連付けられ、前記記述メタデータは、少なくとも1つのサブサンプルと少なくとももう1つのサブサンプルとの間の依存関係をシグナリングするための記述子を含み、
前記依存関係は、少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが同じ層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層内依存性を記述し、少なくとも1つの得られたサブサンプルおよび少なくとももう1つのサブサンプルが異なる層に属する場合は、少なくとも1つの得られたサブサンプルと少なくとももう1つのサブサンプルとの間の層間依存性を記述し、デバイスはプロセッサを備え、前記プロセッサは、
サブサンプルを表す情報項目を選択するステップと、
選択されたサブサンプルを含む少なくとも1つのトラックを要求するステップであって、選択されたサブサンプルは、選択された情報項目に対応する、要求するステップと、
少なくとも1つのメディアセグメントファイルおよび記述メタデータを受信するステップと、
多層タイムドメディアデータビットストリームを生成するために少なくとももう1つのサブサンプルを識別するステップと、を実行するように構成されている。
したがって、本発明は、多層ビデオストリームの複数の異なる部分、特に、複数の異なるタイルの組み合わせ、および、解析時に、クライアントデバイスによってダウンロードされる部分またはタイルの選択されるセットが何であれ有効なファイルフォーマットおよびエレメンタリストリームを作成することを可能にする。
それゆえ、本発明のデバイスは、多層ビデオストリームの独立した部分またはタイルの効率的なストリーミングに適しており、標準規格、特にMPEG−4 Part15規格に容易に組み込むための既存のツールを使用し、タイル化から脱相関された、タイルレベルにおける動的な層間依存性をサポートし、2つ以上の部分またはタイル選択(すなわち、任意のROI)に適しており、抽出器を使用して層間依存性を処理することによって引き起こされるオーバヘッドを制限する。
層のサブサンプルは、別の層の1つ以上のサブサンプルまたは複数の異なる層のいくつかのサブサンプルにリンクされ得ることが留意されるべきである。
ある特定の実施形態によれば、前記プロセッサは、多層分割タイムドメディアデータが多層タイル化タイムドメディアデータであるようにさらに構成されており、サブサンプルは空間サブサンプルである。
ある特定の実施形態によれば、前記プロセッサは、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つの得られたサブサンプルが、タイムドサンプルの少なくとも1つのすべてのメディアデータを含む、同じ層に属する少なくとも1つのサブサンプルよりなるセットを含むか否かを示すパラメータを得るステップを実行するようにさらに構成されている。
ある特定の実施形態によれば、前記プロセッサは、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとももう1つのサブサンプルが、少なくとも1つのトラックと関連付けられた記述メタデータ内でどのように記述されているかを示すパラメータを得るステップを実行するようにさらに構成されている。
ある特定の実施形態によれば、前記プロセッサは、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つのトラックの少なくとも2つのサブサンプルグループの定義を得るステップを実行するようにさらに構成されており、得られる定義は、対応するサブサンプルグループの各サブサンプルの依存関係を含む。
ある特定の実施形態によれば、前記プロセッサは、少なくとも1つのトラックと関連付けられた記述メタデータから、少なくとも1つのトラックのサブサンプルの少なくとも1つのサブサンプルグループの定義を得るステップを実行するようにさらに構成されており、第1の定義とよばれる、前記少なくとも1つのサブサンプルグループの定義は、少なくとも1つのサブサンプルグループの各サブサンプルの依存関係を含み、第2の定義は、少なくとも1つのサブサンプルグループに属しない、少なくとも1つのトラックの各サブサンプルの依存関係を含む。
ある特定の実施形態によれば、前記プロセッサは、依存関係がリストに編成されるようにさらに構成されており、前記リストの数は、サンプルを符号化するために使用される層の数に等しく、各リストは、層の降順もしくは昇順に編成されるか、または、層識別子に関連付けられる。
ある特定の実施形態によれば、前記プロセッサは、依存関係が、各サブサンプルおよび各層のすべての依存関係を含む1つのリストに編成されるようにさらに構成されている。
ある特定の実施形態によれば、前記プロセッサは、各層が、層識別子に応じて識別されるようにさらに構成されており、依存関係は、共在するサブサンプルの層識別子を含む1つのリストに編成される。
ある特定の実施形態によれば、前記プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、前記第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを得るステップであって、前記少なくとも1つの第2のサブサンプルは、前記少なくとも1つの第1のサンプルのサブサンプルであり、前記第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、ステップと、を実行するようにさらに構成されており、
第3のトラックとよばれる、前記少なくとも1つの得られたサブサンプルを含むトラックは、少なくとも1つの第1のサンプルを指し示す少なくとも1つの第3の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、少なくとも1つの第2の層に属する。
ある特定の実施形態によれば、前記プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、前記第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第2のサブサンプルを含む第2のトラックを得るステップであって、前記少なくとも1つの第2のサブサンプルは、前記少なくとも1つの第1のサンプルのサブサンプルであり、前記第1のトラックは、少なくとも1つの第2のサブサンプルを指し示す少なくとも1つの第1の抽出器を備える、ステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを得るステップであって、前記第3のトラックのサンプルの項目は上記少なくとも1つの第2の層に属する、ステップと、を実行するようにさらに構成されており、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含むトラック、前記第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、上記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある特定の実施形態によれば、前記プロセッサは、
少なくとも1つの第1のサンプルの少なくとも1つの項目を含む第1のトラックを得るステップであって、当該第1のトラックのサンプルの項目は第1の層に属する、ステップと、
少なくとも1つの第3のサンプルの少なくとも1つの項目を含む第3のトラックを得るステップであって、前記第3のトラックのサンプルの項目は前記少なくとも1つの第2の層に属する、ステップと、を実行するようにさらに構成されており、
第4のトラックとよばれる、少なくとも1つの得られたサブサンプルを含むトラック、第3のトラックは、少なくとも1つの第1のサンプルの少なくとも1つの項目を指し示す少なくとも1つの第3の抽出器、および、第4のトラックの少なくとも1つの得られたサブサンプルを指し示す少なくとも1つの第3の追加の抽出器を備え、前記少なくとも1つの得られたサブサンプルは、上記少なくとも1つの第3のサンプルの少なくとも1つの項目のサブサンプルである。
ある特定の実施形態によれば、前記プロセッサは、抽出器が、サンプルの項目のサイズ、または、作成された抽出器によって指摘される層のサブサンプルのサイズに基づく基準値の関数として識別されるようにさらに構成されている。
ある特定の実施形態によれば、前記プロセッサは、識別された抽出器によって指ししめされるデータの抽出が、依存関係のパラメータに応じて決定されるようにさらに構成されている。
ある特定の実施形態によれば、前記プロセッサは、作成されたトラックの各々をカプセル化する結果としてもたらされるメディアセグメントファイルが、国際標準化機構によって定義されているものとしてのベースメディアファイルフォーマットに適合するようにさらに構成されている。
本明細書において上述したカプセル化の方法およびデバイスは、特定の実施形態において、ネットワークにわたって(任意の生成されたメタデータを含む)カプセル化データを送信すること、または、そのようなカプセル化データを記憶することをさらに含んでも良い。カプセル開放(または解析)の方法およびデバイスは、特定の実施形態において、復号および/または表示されるべき解析されたビットストリームを出力することをさらに含んでも良い。
本発明の第5の態様および第6の態様によれば、上述したデバイスを備えるビデオ符号化器およびビデオ復号器が提供される。
したがって、本発明は、多層ビデオストリームの複数の異なる部分、特に、複数の異なるタイルの組み合わせ、および、解析時に、クライアントデバイスによってダウンロードされる部分またはタイルの選択されるセットが何であれ有効なファイルフォーマットおよびエレメンタリストリームを作成することを可能にする。
それゆえ、本発明のビデオ符号化器およびビデオ復号器は、多層ビデオストリームの独立した部分またはタイルの効率的なストリーミングに適しており、標準規格、特にMPEG−4 Part15規格に容易に組み込むための既存のツールを使用し、タイル化から脱相関された、タイルレベルにおける動的な層間依存性をサポートし、2つ以上の部分またはタイル選択(すなわち、任意のROI)に適しており、抽出器を使用して層間依存性を処理することによって引き起こされるオーバヘッドを制限する。
層のサブサンプルは、別の層の1つ以上のサブサンプルまたは複数の異なる層のいくつかのサブサンプルにリンクされ得ることが留意されるべきである。
本発明はソフトウェアにおいて実装することができるため、本発明は、任意の適切なキャリア媒体上でプログラム可能装置に提供するためのコンピュータ可読コードとして具現化することができる。有形キャリア媒体は、フロッピーディスク、CD−ROM、ハードディスクドライブ、磁気テープデバイスまたはソリッドステートメモリデバイスなどのような記憶媒体を含むであろう。一時的キャリア媒体は、電気信号、電子信号、光信号、音響信号、磁気信号または電磁信号、たとえば、マイクロ波もしくはRF信号のような信号が含まれるであろう。

Claims (13)

  1. メディアファイルの生成方法であって、
    ビデオデータを取得し、
    前記取得されたビデオデータに基づいて1又は複数のビデオトラックを生成し、
    前記1又は複数のビデオトラックの少なくとも1つに対応する空間領域に関連付けられる記述パラメータであって、セットされたときは、当該記述パラメータに関連付けられている空間領域が完全なピクチャであることを示す記述パラメータを生成し、
    前記記述パラメータがセットされない空間領域のためのパラメータとして、前記空間領域により表される矩形領域の左上画素の水平及び垂直方向のオフセットパラメータを生成し、
    前記生成された1又は複数のビデオトラックと、前記生成された記述パラメータ及びオフセットパラメータのうち少なくとも何れかと、に基づいて、1又は複数のメディアファイルを生成することを特徴とする生成方法。
  2. メディアファイルの生成方法であって、
    ビデオデータを取得し、
    前記取得されたビデオデータに基づいて1又は複数のビデオトラックを生成し、
    前記1又は複数のビデオトラックの少なくとも1つに対応する空間領域に関連付けられる記述パラメータであって、セットされたときは、当該記述パラメータに関連付けられている空間領域が完全なピクチャであることを示す記述パラメータと、前記記述パラメータがセットされない空間領域のためのパラメータとして、当該空間領域が表す矩形領域の左上画素の水平及び垂直方向のオフセットパラメータと、のうち少なくとも何れか一方を含むTileRegionGroupEntry記述子を生成し、
    前記生成された1又は複数のビデオトラックと、前記生成されたTileRegionGroupEntry記述子と、に基づいて、1又は複数のメディアファイルを生成することを特徴とする生成方法。
  3. 前記記述パラメータがセットされるとはその値として1が与えられることであり、前記記述パラメータがセットされないとはその値として0が与えられることであることを特徴とする請求項1又は2に記載の生成方法。
  4. 前記記述パラメータの値として0が与えられるときは、当該記述パラメータに関連付けられている空間領域がパーシャルピクチャであることが表されることを特徴とする請求項3に記載の生成方法。
  5. 前記水平及び垂直方向のオフセットパラメータの値は、TileRegionGroupEntry記述子により関連付けられる複数の空間領域が属するベース領域を基準として定まることを特徴とする請求項1乃至3のうち、何れか1項に記載の生成方法。
  6. 前記空間領域は、独立してデコード可能に符号化されたタイル領域に対応することを特徴とする請求項1乃至5のうち、何れか1項に記載の生成方法。
  7. 前記ビデオデータは、HEVC(High Efficiency Video Coding)に基づいて符号化されていることを特徴とする請求項1乃至6のうち、何れか1項に記載の生成方法。
  8. メディアファイルの生成装置であって、
    ビデオデータを取得する取得手段と、
    前記取得手段により取得されたビデオデータに基づいて1又は複数のビデオトラックを生成するトラック生成手段と、
    前記トラック生成手段により生成される1又は複数のビデオトラックの少なくとも1つに対応する空間領域に関連付けられる記述パラメータであって、セットされたときは、当該記述パラメータに関連付けられている空間領域が完全なピクチャであることを示す記述パラメータを生成する記述パラメータ生成手段と、
    前記記述パラメータ生成手段により生成される記述パラメータがセットされない空間領域のためのパラメータとして、前記空間領域により表される矩形領域の左上画素の水平及び垂直方向のオフセットパラメータを生成するオフセットパラメータ生成手段と、
    前記トラック生成手段により生成された1又は複数のビデオトラックと、前記記述パラメータ生成手段により生成された記述パラメータ及び前記オフセットパラメータ生成手段により生成されたオフセットパラメータのうち少なくとも何れかと、に基づいて、1又は複数のメディアファイルを生成するファイル生成手段と、を有することを特徴とする生成装置。
  9. メディアファイルの生成装置であって、
    ビデオデータを取得する取得手段と、
    前記取得手段により取得されたビデオデータに基づいて1又は複数のビデオトラックを生成するトラック生成手段と、
    前記トラック生成手段により生成される1又は複数のビデオトラックの少なくとも1つに対応する空間領域に関連付けられる記述パラメータであって、セットされたときは、当該記述パラメータに関連付けられている空間領域が完全なピクチャであることを示す記述パラメータと、前記記述パラメータがセットされない空間領域のためのパラメータとして、当該空間領域が表す矩形領域の左上画素の水平及び垂直方向のオフセットパラメータと、のうち少なくとも何れか一方を含むTileRegionGroupEntry記述子を生成するメタデータ生成手段と、
    前記トラック生成手段により生成された1又は複数のビデオトラックと、前記メタデータ生成手段により生成されたTileRegionGroupEntry記述子と、に基づいて、1又は複数のメディアファイルを生成するファイル生成手段と、を有することを特徴とする生成装置。
  10. 前記記述パラメータがセットされるとはその値として1が与えられることであり、前記記述パラメータがセットされないとはその値として0が与えられることであることを特徴とする請求項8又は9に記載の生成装置。
  11. 前記記述パラメータの値として0が与えられる場合は、当該記述パラメータに関連付けられている空間領域がパーシャルピクチャであることが表されることを特徴とする請求項10に記載の生成装置。
  12. 前記水平及び垂直方向のオフセットパラメータの値は、TileRegionGroupEntry記述子に応じた複数の空間領域が属するベース領域を基準として定まることを特徴とする請求項8乃至11のうち、何れか1項に記載の生成装置。
  13. コンピュータに、請求項1乃至7のうち、何れか1項に記載の生成方法を実行させるためのプログラム。
JP2016544127A 2014-01-07 2015-01-07 メディアファイルの生成方法、生成装置、及びプログラム Active JP6572222B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB1400244.8A GB2522014A (en) 2014-01-07 2014-01-07 Method, device, and computer program for encoding inter-layer dependencies in encapsulating multi-layer partitioned timed media data
GB1400244.8 2014-01-07
GB201400303A GB201400303D0 (en) 2014-01-08 2014-01-08 Method, device, and computer program for encoding inter-layer dependencies in encapsulating multi-layer partitoned timed media data
GB1400303.2 2014-01-08
PCT/EP2015/050183 WO2015104303A2 (en) 2014-01-07 2015-01-07 Method, device, and computer program for encoding inter-layer dependencies in encapsulating multi-layer partitioned timed media data

Publications (3)

Publication Number Publication Date
JP2017508334A JP2017508334A (ja) 2017-03-23
JP2017508334A5 JP2017508334A5 (ja) 2018-02-15
JP6572222B2 true JP6572222B2 (ja) 2019-09-04

Family

ID=52395040

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016544127A Active JP6572222B2 (ja) 2014-01-07 2015-01-07 メディアファイルの生成方法、生成装置、及びプログラム

Country Status (6)

Country Link
US (2) US10320867B2 (ja)
EP (2) EP3092796B1 (ja)
JP (1) JP6572222B2 (ja)
KR (2) KR102521495B1 (ja)
CN (1) CN105900401B (ja)
WO (1) WO2015104303A2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170180758A1 (en) * 2015-12-22 2017-06-22 Vallabhajosyula S. Somayazulu Tiled Wireless Display
FI20165114A (fi) 2016-02-17 2017-08-18 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodausta ja videokoodauksen purkua varten
US10419768B2 (en) * 2016-03-30 2019-09-17 Qualcomm Incorporated Tile grouping in HEVC and L-HEVC file formats
US10652630B2 (en) * 2016-05-24 2020-05-12 Qualcomm Incorporated Sample entries and random access
GB2550604A (en) * 2016-05-24 2017-11-29 Canon Kk Method, device, and computer program for encapsulating and parsing timed media data
US10360234B2 (en) * 2016-10-26 2019-07-23 Sap Se Recursive extractor framework for forensics and electronic discovery
EP3806463A1 (en) * 2016-12-23 2021-04-14 Huawei Technologies Co., Ltd. An intra-prediction apparatus for extending a set of predetermined directional intra-prediction modes
EP3349459A1 (en) * 2017-01-11 2018-07-18 Thomson Licensing A method and a device for image encoding and decoding
GB2560921B (en) 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
WO2019073113A1 (en) * 2017-10-09 2019-04-18 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR VIDEO ENCODING AND DECODING
GB2575074B (en) 2018-06-27 2022-09-28 Canon Kk Encapsulating video content with an indication of whether a group of tracks collectively represents a full frame or a part of a frame
CN116055732A (zh) * 2018-09-14 2023-05-02 华为技术有限公司 视频译码方法,设备以及非瞬时性计算机可读介质
CN113302930A (zh) * 2019-01-09 2021-08-24 华为技术有限公司 视频译码中的时间运动约束子图像指示
GB2593222A (en) * 2020-03-20 2021-09-22 Canon Kk High level syntax for video coding and decoding
WO2021202174A1 (en) * 2020-03-31 2021-10-07 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatuses for signaling of syntax elements in video coding
CN115702566A (zh) * 2020-06-10 2023-02-14 Lg电子株式会社 基于子层级别信息的图像编码/解码方法和设备及存储比特流的记录介质
GB2597642B (en) * 2020-06-16 2023-08-02 Canon Kk Method, device, and computer program for encapsulating media data into a media file
US20220086387A1 (en) * 2020-09-17 2022-03-17 Lemon Inc. Subpicture entity groups in video coding
US11750815B2 (en) 2020-09-17 2023-09-05 Lemon, Inc. Versatile video coding track coding
EP3972279A1 (en) 2020-09-17 2022-03-23 Lemon Inc. Subpicture track referencing and processing
US11611752B2 (en) * 2020-10-07 2023-03-21 Lemon Inc. Adaptation parameter set storage in video coding

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050002337A1 (en) * 2003-07-01 2005-01-06 Nokia Corporation Reducing effects caused by transmission channel errors during a streaming session
KR20080006609A (ko) * 2005-04-13 2008-01-16 노키아 코포레이션 스케일링가능성 정보의 코딩, 저장, 및 시그널링
EP2332337A4 (en) * 2008-10-07 2014-01-01 Ericsson Telefon Ab L M MEDIA CONTAINER FILE
GB0818463D0 (en) * 2008-10-08 2008-11-12 Mitsubishi Elec R&D Ct Europe Encoding and decoding method and apparatus for multimedia signatures
CN102292979B (zh) * 2009-01-23 2015-02-04 日本电气株式会社 视频描述符生成装置
CN102754096A (zh) * 2009-08-05 2012-10-24 艾法罗媒体有限责任公司 补充媒体递送
AU2012225513B2 (en) * 2011-03-10 2016-06-23 Vidyo, Inc. Dependency parameter set for scalable video coding
MX364810B (es) * 2013-07-19 2019-05-07 Sony Corp Dispositivo y método de procesamiento de información.
KR102304687B1 (ko) * 2013-07-22 2021-09-27 소니그룹주식회사 정보 처리 장치 및 방법
GB2516826B (en) * 2013-07-23 2016-06-22 Canon Kk Method, device and computer program for encapsulating partitioned timed media data by creating tracks to be independently encapsulated in at least one media f
CN104575547B (zh) * 2013-10-17 2017-12-22 深圳市云帆世纪科技有限公司 多媒体文件制作方法、播放方法及系统
US9648348B2 (en) * 2013-10-23 2017-05-09 Qualcomm Incorporated Multi-layer video file format designs
US10587934B2 (en) * 2016-05-24 2020-03-10 Qualcomm Incorporated Virtual reality video signaling in dynamic adaptive streaming over HTTP

Also Published As

Publication number Publication date
JP2017508334A (ja) 2017-03-23
WO2015104303A2 (en) 2015-07-16
KR20220034931A (ko) 2022-03-18
CN105900401A (zh) 2016-08-24
EP3092796B1 (en) 2020-06-17
US20160330255A1 (en) 2016-11-10
US20190014162A1 (en) 2019-01-10
CN105900401B (zh) 2020-03-06
EP3713234A1 (en) 2020-09-23
KR102521495B1 (ko) 2023-04-14
US10320867B2 (en) 2019-06-11
KR20160105793A (ko) 2016-09-07
EP3092796A2 (en) 2016-11-16
WO2015104303A3 (en) 2015-10-01
US11412017B2 (en) 2022-08-09

Similar Documents

Publication Publication Date Title
JP6572222B2 (ja) メディアファイルの生成方法、生成装置、及びプログラム
US11128898B2 (en) Method, device, and computer program for encapsulating scalable partitioned timed media data
JP7177902B2 (ja) タイムドメディアデータをカプセル化及びパージングするための方法、デバイス及びコンピュータプログラム
JP6743059B2 (ja) カプセル化されたビットストリームからメディアデータ及びメタデータを取得するための、動作基点ディスクリプタを動的に設置可能な方法、デバイス及びコンピュータプログラム
GB2550912B (en) Method, device and computer program for encapsulating and parsing timed media data
US11638066B2 (en) Method, device and computer program for encapsulating media data into a media file
GB2522014A (en) Method, device, and computer program for encoding inter-layer dependencies in encapsulating multi-layer partitioned timed media data
CN113574903B (zh) 针对媒体内容中的后期绑定的方法和装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181218

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190809

R151 Written notification of patent or utility model registration

Ref document number: 6572222

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151