(57)【要約】【課題】復号に必要な性能をより正確に把握することができるようにする。【解決手段】MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された部分画像をmdatに格納するファイルを生成し、生成されたファイルを記憶する。本開示は、例えば、画像符号化装置、または、画像復号装置等の情報処理装置に適用することができる。【選択図】図２３
2019050589.tif 000002
【特許請求の範囲】
【請求項１】
全体画像の中の部分画像に対応するNAL unitをグループ化する第１のグループ識別情報と、前記第１のグループ識別情報をグループ化する第２のグループ識別情報と、符号化された前記部分画像を格納するファイルを再生するファイル再生部
を備える情報処理装置。
【請求項２】
前記NAL unitは、前記部分画像毎にグループ化されている
請求項１に記載の情報処理装置。
【請求項３】
前記ファイルは、各部分画像の最初のNAL unitを特定する情報を含む
請求項２に記載の情報処理装置。
【請求項４】
前記ファイルは、各NAL unitと前記第１のグループ識別情報とを紐付ける情報を含む
請求項１に記載の情報処理装置。
【請求項５】
前記ファイルは、前記第１のグループ識別情報と前記第２のグループ識別情報とを紐付ける情報を含む
請求項１に記載の情報処理装置。
【請求項６】
前記第１のグループ識別情報は、ビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定される
請求項１に記載の情報処理装置。
【請求項７】
前記第１のグループ識別情報は、前記部分画像のプロファイル情報を格納するビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定される
請求項６に記載の情報処理装置。
【請求項８】
前記第２のグループ識別情報は、前記第１のグループ識別情報が設定されるビジュアルサンプルグループエントリ（VisualSampleGroupEntry）とは異なるビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定される
請求項６に記載の情報処理装置。
【請求項９】
前記部分画像は、HEVC（High Efficiency Video Coding）におけるタイル（Tile）である
請求項１に記載の情報処理装置。
【請求項１０】
前記ファイル再生部により再生されて得られた、符号化された前記部分画像を復号する復号部をさらに備える
請求項１に記載の情報処理装置。
【請求項１１】
前記部分画像は、前記ファイルにおける第１のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第１のトラック以外のトラックに格納される
請求項１に記載の情報処理装置
【請求項１２】
前記ファイルを受信する受信部をさらに備え、
前記ファイル再生部は、前記受信部により受信された前記ファイルを再生する
請求項１に記載の情報処理装置。
【請求項１３】
全体画像の中の部分画像に対応するNAL unitをグループ化する第１のグループ識別情報と、前記第１のグループ識別情報をグループ化する第２のグループ識別情報と、符号化された前記部分画像を格納するファイルを再生する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は情報処理装置および方法に関し、特に、復号に必要な性能をより正確に把握することができるようにした情報処理装置および方法に関する。
【背景技術】
【０００２】
近年、MPEG-4 Part10 （Advanced Video Coding、以下AVCと記す）より更なる符号化効率の向上を目的として、ITU-T（International Telecommunication Union Telecommunication Standardization Sector）と、ISO/IEC（International Organization for Standardization / International Electrotechnical Commission）の共同の標準化団体であるJCTVC（Joint Collaboration Team - Video Coding）により、HEVC（High Efficiency Video Coding）と呼ばれる符号化方式の標準化が進められている（例えば、非特許文献１参照）。
【０００３】
HEVCでは、タイル（Tile）構造を利用し、アプリケーションにより復号が必要となる領域のみを復号することが可能となっている。タイル領域が単独で復号可能であることを示すために、HEVC第2版以降（MV-HEVC, SHVC, Range Ext.等含む）で、Motion-constrained tile sets SEIによりサポートされる。
【０００４】
ところで、HTTP（HyperText Transfer Protocol）を利用したコンテンツ配信技術として、MPEG-DASH（Moving Picture Experts Group - Dynamic Adaptive Streaming over HTTP）がある（例えば、非特許文献２参照）。MPEG-DASHでは、上述したHEVCのような符号化方式で符号化された画像データのビットストリームが、例えばMP4ファイルフォーマット等のような所定のファイルフォーマットでファイル化されて配信される。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Ye-Kui Wang, Thomas Wiegand, " High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Last Call)", JCTVC-L1003_v34, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Geneva, CH, 14-23 Jan. 2013
【非特許文献２】MPEG-DASH(Dynamic Adaptive Streaming over HTTP)（URL:http://mpeg.chiariglione.org/standards/mpeg-dash/media-presentation-description-and-segment-formats/text-isoiec-23009-12012-dam-1）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ビットストリームにおいてもファイルフォーマットにおいても、デコーダが、ストリームを復号できるかの判別をするための基準となっているレベル（Level）やバッファ（Buffer）容量関連の情報は、ストリーム全体としての値若しくはレイヤ（Layer）単位の値が定義されているのみであった。
【０００７】
そのため、全体画像の一部のみを復号するアプリケーションにおいても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル（Level）のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
【０００８】
本開示は、このような状況に鑑みてなされたものであり、復号に必要な性能をより正確に把握することができるようにするものである。
【課題を解決するための手段】
【０００９】
本技術の一側面は、全体画像の中の部分画像に対応するNAL unitをグループ化する第１のグループ識別情報と、前記第１のグループ識別情報をグループ化する第２のグループ識別情報と、符号化された前記部分画像を格納するファイルを再生するファイル再生部を備える情報処理装置である。
【００１０】
前記NAL unitは、前記部分画像毎にグループ化されているようにすることができる。
【００１１】
前記ファイルは、各部分画像の最初のNAL unitを特定する情報を含むようにすることができる。
【００１２】
前記ファイルは、各NAL unitと前記第１のグループ識別情報とを紐付ける情報を含むようにすることができる。
【００１３】
前記ファイルは、前記第１のグループ識別情報と前記第２のグループ識別情報とを紐付ける情報を含むようにすることができる。
【００１４】
前記第１のグループ識別情報は、ビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定されるようにすることができる。
【００１５】
前記第１のグループ識別情報は、前記部分画像のプロファイル情報を格納するビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定されるようにすることができる。
【００１６】
前記第２のグループ識別情報は、前記第１のグループ識別情報が設定されるビジュアルサンプルグループエントリ（VisualSampleGroupEntry）とは異なるビジュアルサンプルグループエントリ（VisualSampleGroupEntry）において設定されるようにすることができる。
【００１７】
前記部分画像は、HEVC（High Efficiency Video Coding）におけるタイル（Tile）であるようにすることができる。
【００１８】
前記ファイル再生部により再生されて得られた、符号化された前記部分画像を復号する復号部をさらに備えることができる。
【００１９】
前記部分画像は、前記ファイルにおける第１のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第１のトラック以外のトラックに格納されるようにすることができる。
【００２０】
前記ファイルを受信する受信部をさらに備え、前記ファイル再生部は、前記受信部により受信された前記ファイルを再生することができる。
【００２１】
本技術の一側面は、また、全体画像の中の部分画像に対応するNAL unitをグループ化する第１のグループ識別情報と、前記第１のグループ識別情報をグループ化する第２のグループ識別情報と、符号化された前記部分画像を格納するファイルを再生する情報処理方法である。
【００２２】
本技術の一側面においては、全体画像の中の部分画像に対応するNAL unitをグループ化する第１のグループ識別情報と、その第１のグループ識別情報をグループ化する第２のグループ識別情報と、符号化された部分画像を格納するファイルが再生される。
【発明の効果】
【００２３】
本開示によれば、画像を符号化・復号することができる。特に、復号に必要な性能をより正確に把握することができる。
【図面の簡単な説明】
【００２４】
【図１】部分表示を行うアプリケーションの例を説明する図である。
【図２】部分表示を行うアプリケーションの他の例を説明する図である。
【図３】サブサンプルの定義の例を説明する図である。
【図４】MP4ファイルフォーマットの概要を説明する図である。
【図５】MP4ファイルフォーマットの概要を説明する図である。
【図６】MP4ファイルフォーマットの概要を説明する図である。
【図７】サンプルテーブルボックスの拡張例を示す図である。
【図８】サブサンプルヒントインフォメーションボックスの例を示す図である。
【図９】インディペンデントのセマンティスクの例を示す図である。
【図１０】サブサンプルのグループの例を示す図である。
【図１１】サブサンプルヒントインフォメーションボックスの他の例を示す図である。
【図１２】サブサンプルヒントインフォメーションボックスの他の例を示す図である。
【図１３】サブサンプルヒントインフォメーションボックスの、さらに他の例を示す図である。
【図１４】MP4ファイルフォーマットの概要を説明する図である。
【図１５】MP4ファイルフォーマットの概要を説明する図である。
【図１６】サンプルテーブルボックスの拡張例を示す図である。
【図１７】ビジュアルサンプルグループエントリの拡張例を示す図である。
【図１８】サブサンプルインデックスの例を示す図である。
【図１９】ビジュアルサンプルグループエントリの他の拡張例を示す図である。
【図２０】ビジュアルサンプルグループエントリの、さらに他の拡張例を示す図である。
【図２１】mctsの例を示すブロック図である。
【図２２】MCTS SEIのシンタクスの例を示す図である。
【図２３】MP4ファイルフォーマットの拡張例を示す図である。
【図２４】ビジュアルサンプルグループエントリの拡張例を示す図である。
【図２５】ビジュアルサンプルグループエントリの他の拡張例を示す図である。
【図２６】ビジュアルサンプルグループエントリのさらに他の拡張例を示す図である。
【図２７】タイル画像のMP4ファイルの構成例を説明する図である。
【図２８】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図２９】テンポラルMCTS SEIのシンタクスの例を示す図である。
【図３０】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３１】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３２】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３３】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３４】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３５】HEVCタイルデコーダコンフィグレーションレコードを説明する図である。
【図３６】タイル画像のMP4ファイルの構成例を説明する図である。
【図３７】HEVCタイルイクステンションボックスを説明する図である。
【図３８】タイル画像のMP4ファイルの構成例を説明する図である。
【図３９】画像符号化装置の主な構成例を示すブロック図である。
【図４０】画像復号装置の主な構成例を示すブロック図である。
【図４１】画像符号化処理の流れの例を説明するフローチャートである。
【図４２】画像復号処理の流れの例を説明するフローチャートである。
【図４３】再生可否判定処理の流れの例を説明するフローチャートである。
【図４４】再生処理の流れの例を説明するフローチャートである。
【図４５】再生処理の流れの例を説明するフローチャートである。
【図４６】再生処理の流れの例を説明するフローチャートである。
【図４７】再生処理の流れの例を説明するフローチャートである。
【図４８】再生処理の流れの例を説明するフローチャートである。
【図４９】コンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００２５】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（サブサンプルのヒント情報）
２．第２の実施の形態（MP4ファイル）
３．第３の実施の形態（画像符号化装置）
４．第４の実施の形態（画像復号装置）
５．第５の実施の形態（コンピュータ）
【００２６】
＜１．第１の実施の形態＞
＜画像符号化の標準化の流れ＞
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG（Moving Picture Experts Group）などがある。
【００２７】
特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720x480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量（ビットレート）を割り当てることができる。また、MPEG2圧縮方式を用いることにより、例えば1920x1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量（ビットレート）を割り当てることができる。これにより、高い圧縮率と良好な画質の実現が可能である。
【００２８】
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量（ビットレート）、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
【００２９】
更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L （ITU-T（International Telecommunication Union Telecommunication Standardization Sector） Q6/16 VCEG（Video Coding Expert Group））という標準の規格化が進められた。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われた。
【００３０】
標準化のスケジュールとしては、２００３年３月にはH.264及びMPEG-4 Part10 （Advanced Video Coding、以下AVCと記す）という名の元に国際標準となった。
【００３１】
さらに、このH．264/AVCの拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が２００５年２月に完了した。これにより、H．264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc（商標）等の幅広いアプリケーションに用いられる運びとなった。
【００３２】
しかしながら、昨今、ハイビジョン画像の4倍の、4000x2000画素程度の画像を圧縮したい、あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEGにおいて、符号化効率の改善に関する検討が継続され行なわれている。
【００３３】
そこで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IEC（International Organization for Standardization / International Electrotechnical Commission）の共同の標準化団体であるJCTVC（Joint Collaboration Team - Video Coding）により、HEVC（High Efficiency Video Coding）と呼ばれる符号化方式の標準化が進められている。HEVC規格については、2013年1月にドラフト版仕様であるCommittee draftが発行されている（例えば、非特許文献１参照）。
【００３４】
＜タイル構造とレイヤの定義＞
HEVCでは、タイル（Tile）構造を利用し、アプリケーションにより復号が必要となる領域のみを復号することが可能となっている。タイル領域が単独で復号可能であることを示すために、HEVC第2版以降（MV-HEVC, SHVC, Range Ext.等含む）で、Motion-constrained tile sets SEIによりサポートされる。
【００３５】
＜DASH＞
ところで、HTTP（HyperText Transfer Protocol）を利用したコンテンツ配信技術として、MPEG-DASH（Moving Picture Experts Group - Dynamic Adaptive Streaming over HTTP）がある（例えば、非特許文献２参照）。MPEG-DASHでは、上述したHEVCのような符号化方式で符号化された画像データのビットストリームが、例えばMP4等のような所定のファイルフォーマットでファイル化されて配信される。
【００３６】
しかしながら、このDASHのようなコンテンツ配信においては、全体画像を再生（復号）することしか想定されておらず、全体画像の代わりにその一部である部分画像を再生（復号）することは想定されていなかった。
【００３７】
より具体的には、デコーダが、ストリームを復号できるかの判別をするための基準となっているレベル（Level）やバッファ（Buffer）容量関連の情報は、HEVC等の符号化方式においても、MP4のようなファイルフォーマットにおいても、ストリーム全体としての値若しくはレイヤ（Layer）単位の値、すなわち、全体画像についての値が定義されているのみであり、部分画像のみを再生するための情報はなかった。
【００３８】
そのため、例えば、上述したHEVC等の符号化方式でサポートされるタイル構造を利用して、部分画像（一部のタイル）のみを復号する場合（すなわち、部分画像のみを再生する場合）であっても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル（Level）のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
【００３９】
＜アプリケーション例＞
部分画像を再生するアプリケーションとして例えば、以下のような例が挙げられる。
【００４０】
サーバから端末に画像を配信するシステムにおいて、例えば図１に示されるような、１枚の画面を複数に分割し、表示領域を切り替えながら配信するアプリケーションを想定する。また、例えば、図２に示されるような、画像のアスペクト比や解像度を選択するために、表示する（配信する）部分領域を選択するアプリケーションを想定する。
【００４１】
図１のアプリケーションの場合、全体画像がタイル（Tile）を単位として複数に分割可能であり、端末において、単数若しくは複数のタイルからなる部分画像が全体画像から切り出されて表示される。表示可能な部分画像の大きさ（タイルの数）は、例えば、端末の性能（処理能力やディスプレイの大きさ（表示解像度））等により決定される。また、表示する部分画像の全体画像における位置は、ユーザ等が指定することができる。したがって、端末には、全体画像の中の所望の位置の部分画像を表示させることができる。つまり、端末のユーザは、全体画像の中の所望の部分に注目することができる。
【００４２】
図２のアプリケーションの場合、図１のアプリケーションと基本的に同様であるが、タイルが表示画像のアスペクト比や解像度を選択することができるように設定されており、各タイルの大きさは一定ではない。図１の場合と同様に、端末において、ユーザ等の指示に従って、単数若しくは複数のタイルからなる部分画像が全体画像から切り出されて表示される。このように表示させるタイルを選択するだけで、表示画像の解像度をHDにしたり、シネマサイズにしたり、さらに拡張したサイズにしたりすることができる。
【００４３】
この表示可能な解像度は、例えば、端末の性能（処理能力やディスプレイの大きさ（表示解像度））等により決定される。
【００４４】
このような、端末の性能やユーザの指定等に応じた部分画像の適応的な提供（再生）は、従来、想定されていなかったため、独立に復号可能な部分画像を復号する場合であっても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル（Level）のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
【００４５】
＜サブサンプルのヒント情報の提供＞
そこで、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成し、画像データの符号化データを含むファイルを生成し、そのファイルにおける符号化データの管理情報に、生成したサブサンプル情報を配置するようにする。
【００４６】
このようにすることにより、端末は、そのサブサンプル情報（ヒント情報）にしたがって、部分領域を復号するのに必要な性能を把握し、自身のデコーダが、その部分領域（サブサンプル）の復号処理を行うことができるか否かの判断をより正確に行うことができる。つまり、復号に必要な性能を、より正確に把握することができる。したがって、この画像データにより適切な性能のデコーダを選択することができる。これにより、画像データの復号負荷に対して不要に高いレベル（Level）のデコーダを適用する事態の発生を抑制することができる。また、そのために配信できるアプリケーションが不要に制限されてしまうことも抑制することができる。
【００４７】
また、その部分領域（サブサンプル）の符号化データ（ビットストリーム）のヘッダ情報を、全体画像の情報からその部分領域（サブサンプル）についての情報に更新するようにする。その更新のための情報を、ファイルに含めて伝送するようにする。このようにすることにより、端末は、ビットストリームのヘッダ情報を部分領域（サブサンプル）についての情報に更新し、デコーダに渡すことができる。そのため、デコーダは、そのヘッダ情報に基づいて、自身がそのビットストリームを復号することができるか否かをより正確に判断することができる。
【００４８】
＜符号化方式およびファイルフォーマット＞
以下においては、本技術を、符号化・復号方式がHEVC、ファイルフォーマットがMP4の場合に適用する例を説明する。
【００４９】
＜アクセス単位＞
以下において、MP4のサンプルは、HEVCのアクセスユニット（AU）とする。また、AUは、複数のタイル（Tile）で構成されるものとする。サンプルテーブル（Sample Table）では、サンプル（Sample）単位で管理されるものとする。
【００５０】
また、サブサンプルは、サンプルの構成要素であって、コーデック（Codec）毎に例えば、図３のように定義がなされている。本技術は、サブサンプルがこれらのいずれであっても適用可能であるが、以下においては、タイル（Tile）がサブサンプル（Tile-based sub-samples）の場合を例に本技術を説明する。
【００５１】
＜MP4ファイルフォーマット＞
次に、MP4ファイルフォーマットの概要について説明する。図４の左に示されるように、MPEG-DASHに準拠したMP4ファイル（MP4 file）は、ftyp、moov、およびmdatを含む。moovには、サンプル（例えばピクチャ）毎に管理情報がサンプルテーブルボックス（Sample Table Box（stbl））に格納される。
【００５２】
また、図４に示されるように、サンプルテーブルボックス（Sample Table Box）には、サンプルディスクリプションボックス（Sample Description Box）、タイムトゥーサンプルボックス（Time To Sample Box）、サンプルサイズボックス（Sample Size Box）、サンプルトゥーチャンクボックス（Sample to Chunk Box）、チャンクオフセットボックス（Chunk Offset Box）、およびサブサンプルインフォメーションボックス（Subsample Information Box）が設置されている。
【００５３】
サンプルディスクリプションボックスには、コーデックや画サイズ等に関する情報が格納される。例えばHEVCのビットストリームのパラメータセット（ビデオパラメータセット（VPS（Video Parameter Set））、シーケンスパラメータセット（SPS（Sequence Parameter Set））、SEI（Supplemental Enhancement Information）、ピクチャパラメータセット（PPS（Picture Parameter Set））等）は、コーデック（Codec）情報としてこのサンプルディスクリプションボックス内のHEVCサンプルエントリ（HEVC sample entry）のHEVCデコーダコンフィギュレーションレコード（HEVC Decoder Configuration Record）に格納される。
【００５４】
また、タイムトゥーサンプルボックスには、サンプルの時刻に関する情報が格納される。サンプルサイズボックスには、サンプルのサイズに関する情報が格納される。サンプルトゥーチャンクボックスには、サンプルのデータの位置に関する情報が格納される。チャンクオフセットボックスには、データのオフセットに関する情報が格納される。サブサンプルインフォメーションボックスには、サブサンプルに関する情報が格納される。
【００５５】
また、図４に示されるように、HEVCの各サンプル（ピクチャ）のデータは、AVデータとして、mdatに格納される。
【００５６】
図５に示されるように、タイムトゥーサンプルボックス、サンプルサイズボックス、サンプルトゥーチャンクボックス、およびチャンクオフセットボックスには、サンプルへのアクセス情報が格納される。これに対して、サブサンプルインフォメーションボックスにはサブサンプルへのアクセス情報が格納される。このサブサンプルへのアクセス情報は、各サブサンプルのサイズ（Subsample Size）と付加情報（Subsample 付加情報）からなる。
【００５７】
例えば、図５のように、サンプル（ピクチャ）が４つのサブサンプル（タイル）からなる場合、サブサンプルインフォメーションボックスには、タイル１（Tile1）乃至タイル４（Tile4）のそれぞれへのアクセス情報が格納される。
【００５８】
サブサンプルインフォメーションボックスの記述例を図６に示す。図６に示されるように、各タイルのサイズ（subsample_size）が記述され、さらに、各タイルの位置情報が示されるリザーブドフィールド（reserved = 0）が記述されている。
【００５９】
＜タイルパターン＞
本技術では、全サンプル（ピクチャ等）でタイルパターンが固定の場合、全サンプルでタイルパターンが可変の場合、例えばIDR間隔等、所定期間、タイルパターンが固定の場合（所定期間ごとにタイルパターンが可変の場合）のいずれの場合も適用することができるように、上述したサンプルテーブルボックスを拡張する。
【００６０】
＜サブサンプルヒントインフォメーションボックス＞
例えば、サンプルテーブルボックスに、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を、サンプルテーブルボックスの、新たなボックスとして設置するようにする。
【００６１】
図７にその例を示す。図７に示されるように、サンプルテーブルボックスに、サブサンプルヒントインフォメーションボックス（Subsample Hint Information Box）１１が新たに設置される。
【００６２】
サブサンプルヒントインフォメーションボックス１１は、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報であり、サブサンプルインフォメーションボックス等とは別のボックスである。このように部分画像の再生のための情報であるサブサンプルヒントインフォメーションボックス１１を、全体画像の再生のための情報であるサブサンプルインフォメーションボックスと分けることにより、全体画像を表示する通常再生においては、ボックスごと無視する（参照しない）ようにすることができ、制御を容易にすることができる。
【００６３】
サブサンプルヒントインフォメーションボックス１１の記述例を図７の右に示す。この例に示されるように、サブサンプルヒントインフォメーションボックス１１には、ヒントデータタイプ（hint_data_type）、サンプルカウント（sample_count）、ヒントデータ（hint_data）等の情報が格納される。
【００６４】
ヒントデータタイプは、このボックスで格納するサブサンプルのヒント情報の種別を示す情報である。サンプルカウントは、この情報に関連付けられる連続するサンプル数を示す情報である。ヒントデータは、サブサンプルのヒント情報である。ヒントデータタイプ毎に異なる情報が格納される。
【００６５】
＜拡張方法＞
次に、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を配置する具体例について説明する。
【００６６】
＜例１＞
例１では、上述したように拡張定義した、サブサンプルインフォメーションボックスでアクセス可能なサブサンプル（タイル）毎に、復号（decode）に必要な情報を格納するサブサンプルヒントインフォメーションボックス１１を用いる。
【００６７】
サブサンプルとヒント情報は、サブサンプルインフォメーションボックスのテーブルインデックス（table-index）で紐づけされる。
【００６８】
図８にそのサブサンプルヒントインフォメーションボックス１１の記述例を示す。図８に示されるサブサンプルヒントインフォメーションボックス１１−１は、例１の記述例である。
【００６９】
図８に示されるように、サブサンプルヒントインフォメーションボックス１１−１では、ヒントデータタイプとして、例えば、サブサンプル毎のプロファイル情報であることを示す”sspf”が記述される（hint_data_type="sspf"）。
【００７０】
また、サブサンプルヒントインフォメーションボックス１１−１では、ヒント情報（hint_data）として、例えば、四角１２内に示されるような各例の内、いずれかの例の情報が記述される。例えば、例（Ａ−１）のように、そのサブサンプル（タイル）の復号に必要なプロファイルレベルを示す情報（すなわち、サブサンプルの復号処理の負荷の大きさを表すレベル）（general_lebel_idc）を記述するようにしてもよい。また、例えば、例（Ａ−２）のように、サブサンプル（タイル）が他のサブサンプル（タイル）に独立して復号できるかを示すフラグ情報（independent）をさらに記述するようにしてもよい。
【００７１】
このインディペンデント（independent）のセマンティクスの例を図９に示す。
【００７２】
また、例えば、例（Ｂ−１）のように、サブサンプル（タイル）のビットストリームのシーケンスパラメータセット（SPS）を更新する際に置き換える情報（すなわち、サブサンプルの符号化データのヘッダ情報）（nalUnitLength, nalUnit）を記述するようにしてもよい。また、例えば、例（Ｂ−２）のように、サブサンプル（タイル）が他のサブサンプル（タイル）に独立して復号できるかを示すフラグ情報（independent）をさらに記述するようにしてもよい。
【００７３】
＜例２＞
部分画像の再生（提供）としては、図１や図２に示した例のように、複数のサブサンプルを対象とする場合もある。そこで、例１では、サブサンプル（タイル）毎にヒント情報を格納したが、例２では、このように複数のサブサンプルをグループとし、そのグループの復号に必要な情報も提供する。
【００７４】
例えば、図１０のＡの場合、タイル１（Tile1）乃至タイル５（Tile5）からなる全体画像１３の内、タイル３（Tile3）のみがグループ１４−１として提供される。また、図１０のＢの場合、タイル２（Tile2）乃至タイル４（Tile4）がグループ１４−２として提供される。さらに、図１０のＣの場合、全体画像１３の全てのタイル（すなわち、タイル１（Tile1）乃至タイル５（Tile5））がグループ１４−３として提供される。
【００７５】
例２でも、上述したように拡張定義した、サブサンプルインフォメーションボックスでアクセス可能なサブサンプル（タイル）毎に、復号（decode）に必要な情報を格納するサブサンプルヒントインフォメーションボックス１１を用いる。
【００７６】
ただし、例２の場合、複数のサブサンプルをグループ化する情報と、各グループ化されたタイル群の復号に必要な情報（通常は必要のない情報）とをそれぞれ、サブサンプルヒントインフォメーションボックス１１として配置する。つまり、これらの情報を互いに別のボックスに格納する。このようすることにより、各グループ化されたタイル群の復号に必要な情報のボックスのみを用いて、タイル群の符号化データのシーケンスパラメータセット（SPS）を更新することができる。
【００７７】
図１１と図１２にそのサブサンプルヒントインフォメーションボックス１１の記述例を示す。図１１に示されるサブサンプルヒントインフォメーションボックス１１−２−１は、例２の複数のサブサンプルをグループ化する情報の記述例である。
【００７８】
図１１に示されるように、サブサンプルヒントインフォメーションボックス１１−２−１では、ヒントデータタイプとして、例えば、サブサンプルのグループ情報であることを示す”ssgp”が記述される（hint_data_type="ssgp"）。
【００７９】
また、サブサンプルヒントインフォメーションボックス１１−２−１では、サブサンプルが属するグループを示す識別情報であるグループインデックス（group_index）が記述される。例えば、図１０の例の場合、このグループインデックスとして、四角１５内に示されるような情報が記述される。
【００８０】
図１２に示されるサブサンプルヒントインフォメーションボックス１１−２−２は、例２の各グループ化されたタイル群の復号に必要な情報の記述例である。
【００８１】
図１２に示されるように、サブサンプルヒントインフォメーションボックス１１−２−２では、ヒントデータタイプとして、例えば、各グループ化されたタイル群の復号に必要な情報であることを示す”sgpf”が記述される（hint_data_type="sgpf"）。
【００８２】
また、サブサンプルヒントインフォメーションボックス１１−２−２では、ヒント情報（hint_data）として、例えば、四角１２内に示されるような各例の内、いずれかの例の情報が記述される。つまり、この場合、サブサンプル情報として、サブサンプルのグループの復号処理の負荷の大きさを表すレベルや、サブサンプルのグループの符号化データのヘッダ情報を記述することができる。
【００８３】
なお、インディペンデント（independent）の代わりに、モーションコンストレインドタイルセットID（motion constrained tile set ID）を格納することもできる。
【００８４】
＜例３＞
例２の場合、複数のサブサンプルヒントインフォメーションボックス１１が必要になるが、例３では、これらを１つのボックスにまとめる。例３では、サブサンプル（タイル）のグループ毎にサブサンプルヒントインフォメーションボックス１１を設置し、その中で、サブサンプルのインデックステーブルを作成する。
【００８５】
図１３にそのサブサンプルヒントインフォメーションボックス１１の記述例を示す。図１３に示されるサブサンプルヒントインフォメーションボックス１１−３は、例３の記述例である。
【００８６】
図１３に示されるように、サブサンプルヒントインフォメーションボックス１１−３では、ヒントデータタイプとして、例えば、サブサンプルのグループ毎のプロファイル情報であることを示す”sgpf”が記述される（hint_data_type="sgpf"）。
【００８７】
また、サブサンプルヒントインフォメーションボックス１１−３では、ヒント情報（hint_data）として、例えば、四角１２内に示されるような各例の内、いずれかの例の情報が記述される。
【００８８】
さらに、サブサンプルヒントインフォメーションボックス１１−３では、グループに属するサブサンプルを示す識別情報であるサブサンプルインデックス（subsample_index）が記述される。例えば、図１０の例の場合、このサブサンプルインデックスとして、四角１６内に示されるような情報が記述される。
【００８９】
なお、エントリカウント（entry_count）は、シーケンス内においてヒント情報が何回変化するかを示し、サンプルカウント（sample_count）は、同じヒント情報が、どれだけのサンプル（ピクチャ）数の間継続するかを示す。
【００９０】
つまり、サブサンプルヒントインフォメーションボックス１１−３では、サブサンプル情報として、グループに属するサブサンプルの識別情報、および、そのグループのヒント情報を含むようにすることができる。そしてその、グループのヒント情報として、グループの復号処理の負荷の大きさを表すレベルやグループの符号化データのヘッダ情報を含むようにすることができる。
【００９１】
＜サンプルグループディスクリプションボックスとサンプルトゥーグループボックスの拡張＞
以上においては、サンプルヒントインフォメーションボックス１１を設置する例を説明したが、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含める本技術は、この方法に限らない。例えば、MP4ファイルフォーマットのサンプルグループディスクリプションボックスとサンプルトゥーグループボックスを拡張することにより、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含めるようにしてもよい。
【００９２】
図１４に示されるように、MP4ファイルのサンプルテーブルボックスには、サンプルグループディスクリプションボックス（Sample Group Description Box）２１とサンプルトゥーグループボックス（Sample To Group Box）２２を設置することができる。
【００９３】
図１５に示されるように、サンプルグループディスクリプションボックス２１には、ビジュアルサンプルグループエントリ（VisualSampleGroupEntry）２３として、コーデック（codec）に関する情報やアクセス情報等のサンプルテーブルの基本的な情報以外の情報が格納される。
【００９４】
そして、サンプルトゥーグループボックス２２には、そのビジュアルサンプルグループエントリ２３と、各サンプルを紐づけする情報が格納される。
【００９５】
このようにすることにより、サンプル毎に記述すると冗長となる情報を１つにまとめることができ、情報量を低減させることができる。
【００９６】
＜例４＞
例４では、このサンプルグループディスクリプションボックス２１とサンプルトゥーグループボックス２２を用いて、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含めるようにする。
【００９７】
図１６にその例を示す。図１６に示されるサブサンプルヒントインフォメーションボックス１１−４は、例３の記述例である。例４では、この記述の内、ヒントデータタイプと、ヒントデータを含む下側の四角で囲まれる情報を、サンプルグループディスクリプションボックス２１に、ビジュアルサンプルグループエントリ２３として格納する。また、サブサンプルヒントインフォメーションボックス１１−４の内、エントリカウントを含む上側の四角で囲まれる情報を、ビジュアルサンプルグループエントリ２３とサンプルを紐づけする情報としてサンプルトゥーグループボックス２２に格納する。
【００９８】
つまり、この例の場合、利用されるパターンだけを格納して、サンプルトゥーグループボックス２２からインデックス参照することができる。そして、ヒントデータのテーブルを圧縮することができ、情報量を低減させることができる。
【００９９】
なお、以上においては、例４の方法を、例３のサブサンプルヒントインフォメーションボックスの情報に適用する場合について説明したが、例４の方法は、例１および例２のサブサンプルヒントインフォメーションボックスの情報にも適用することができる。つまり、例１や例２において説明したサブサンプルヒントインフォメーションボックスの情報も、上述した例３の場合と同様に、サンプルグループディスクリプションボックス２１とサンプルトゥーグループボックス２２に格納することができる。
【０１００】
＜エントリ例１＞
図１７のビジュアルサンプルグループエントリ２３−１は、図１０の例のグループと同様にエントリを構成する場合の、サブサンプルのプロファイル情報を格納するように拡張したビジュアルサンプルグループエントリ２３（SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi')）の例を示す。このビジュアルサンプルグループエントリには、各エントリについて、ヒント情報（hint_data）と、そのエントリが対応するグループの識別情報（GroupID）が設定される。この場合、図１７に示されるように、このヒント情報（hint_data）としては、例えば、四角１２内に示されるような各例の内、いずれかの例の情報が記述される。
【０１０１】
また、この場合、各エントリに属するサブサンプル（タイル）の識別情報であるサブサンプルインデックスが、四角３１内の例のようにリストアップされる。
【０１０２】
＜エントリ例２＞
エントリの図１０と異なる例を図１８に示す。図１８の例の場合、各サブサンプル（タイル）をそれぞれエントリ（グループ）としている。つまり、図１８のＡの場合、タイル１（Tile1）がエントリ１４−４として提供され、図１８のＢの場合、タイル２（Tile2）がエントリ１４−５として提供され、図１８のＣの場合、タイル３（Tile3）がエントリ１４−６として提供される。図示は省略するが、同様に、タイル４（Tile4）とタイル５（Tile5）も、それぞれ、異なるエントリとして提供される。
【０１０３】
この図１８の例のように、複数のサブサンプル（タイル）をグループ化しない場合、換言するに、各サブサンプル（タイル）をそれぞれエントリとする場合、サブサンプルのプロファイル情報を格納するように拡張したビジュアルサンプルグループエントリ２３（SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi')）は、図１９の例のようになる。
【０１０４】
この場合、図１９のビジュアルサンプルグループエントリ２３−２のように、各エントリについて、ヒント情報（hint_data）として、例えば、四角１２内に示されるような各例の内、いずれかの例の情報が記述される。また、各エントリに属するサブサンプル（タイル）の識別情報であるサブサンプルインデックスが、四角３２内の例のようにリストアップされる。つまり、この場合、各エントリに１つずつサブサンプルインデックスが割り当てられる。
【０１０５】
＜ビジュアルサンプルグループエントリの他の例＞
以上においては、図２０のビジュアルサンプルグループエントリ２３−２のように、ビジュアルサンプルグループエントリにおいてサブサンプルインデックス（subsample_index）を含むように説明したが、例えば、そのサブサンプルインデックスと一緒に各サブサンプルについて、以下のように、サブサンプル（タイル）が他のサブサンプル（タイル）に独立して復号できるかを示すフラグ情報（independent）や、リザーブドフィールド（reserved = 0）等の情報を格納するようにしてもよい。
【０１０６】
unsigned int(2) independent
bit(6) reserved=0;
【０１０７】
このようにすると、サブサンプル毎の依存性が分かるため、システムがパラレルデコード等をするための補助情報とすることができる。
【０１０８】
また、以上においては、図２０のビジュアルサンプルグループエントリ２３−２のように、ヒント情報（hint_data）として、四角１２内に示されるような各例の内、いずれかの例の情報が記述されるように説明したが、さらにその他のヒント情報を記述するようにしてもよい。例えば、横幅（Width）や高さ（height）等の、グループ化されたサブサンプル（タイル）の大きさに関する情報を格納するようにしてもよいし、水平方向のオフセット（H_offset）や垂直方向のオフセット（V_offset）等の、グループ化されたサブサンプル（タイル）の位置に関する情報を格納するようにしてもよい。
【０１０９】
このような情報を格納することにより、システムは、グループ化されたサブサンプルのサイズ情報を、サブサンプルインフォメーションボックス（subsample information box）から計算しなくても容易に取得することができる。
【０１１０】
さらに、ヒント情報（hint_data）として、HEVCのビットストリームにおいて、独立に復号することができる部分領域を識別する情報であるmcts_idを記述するようにしてもよい。
【０１１１】
HEVCのMCTS SEI（Motion constrained tile set Supplemental Enhancement Information）において、独立に復号することができる部分領域は、矩形のセット毎に設定されている。例えば、図２１のＡの左上の斜線部分が独立に復号することができる部分領域であるとすると、その部分領域は、MCTS SEIにおいて、図２１のＢに示されるようにセット毎に設定されている。なお、図２１のＣに示される例のように、セットに含まれるタイルが他のセットとオーバーラップしてもよい。部分領域のピクセル数は、各セットのピクセル数から、例えば、図２１のＤの例のように算出することができる。
【０１１２】
MCTS SEIのシンタクスの例を図２２に示す。図２２に示されるように、図２１に示されるような部分領域には、それぞれ識別情報（mcts_id）が割り当てられる。この識別情報（mcts_id）をヒント情報（hint_data）として記述することにより、HEVCの部分領域と、MP4ファイルフォーマットにおけるサブサンプルとを容易に対応付けることができ、システムにおいて、例えばシーケンスパラメータセット（SPS）のヘッダ情報の更新（例えば置き換え等）を容易にすることができる。
【０１１３】
＜例５＞
ところで、例４の場合、ビジュアルサンプルグループエントリを拡張して、各エントリに属するサブサンプルを、サブサンプルインデックスを用いて示すように説明した。この場合、サンプル内のタイルへのアクセス情報としてサブサンプルインフォメーションボックスの情報が利用されることになる。つまり、この場合、MP4ファイルをパースするレイヤにおいてサブサンプルの意味を解釈する必要がある。
【０１１４】
例５では、サンプル内のタイルへのアクセス方法としてこのような方法の代わりになる方法を提案する。つまり、サブサンプルインフォメーションボックスの代わりに、サンプルを構成するビットストリームのナルユニット（NAL unit）の構成をビジュアルサンプルグループエントリに記述するようにする（Map Group Entry）。例えば、ビジュアルサンプルグループエントリを拡張し、HEVCビットストリームのNAL unitをグループ化するようにする（HEVCNALUUMapGroupEntry）。
【０１１５】
このようにNAL unitをグループ化する場合、グループ化された意味に依らず、MP4ファイルをパースするレイヤにおいて、同じ処理フローにより対応することができる。
【０１１６】
図２３にその例を示す。図２３に示されるように、例えば、サンプル内のNAL unitsをマップ化する（例えばタイル毎にグループ化する）ビジュアルサンプルグループエントリを用意し、例えばヒント情報等のビデオ関連情報を格納するビジュアルサンプルグループエントリにおいては、そのサンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリを参照するようにする。
【０１１７】
ビジュアルサンプルグループエントリ間は、グループの識別情報（GroupID）により紐づけされる。なお、NAL unitsのマップパターンが全て同一の場合、サンプルトゥーグループボックスは不要である。
【０１１８】
サンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ（HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm')）のシンタクスの例を図２４の左上に示す。図２４に示されるように、このビジュアルサンプルグループエントリにおいては、各ナルユニット（NAL unit）が属するグループの識別情報（GroupID）が設定される。
【０１１９】
例えば、図２４の左下に示されるようにサンプル内に５つのサブサンプル（タイル（Tile））が存在し、各サブサンプルが、それぞれ２つのNAL unitにより構成されているとする。その場合、NAL unitとGroupIDの紐づけ（NAL unitのマップパターン）は、図２４の右側に示される例のようになる。よって、１０つのNAL unitにて構成されている。図２４の左上に示されるビジュアルサンプルグループエントリ（HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm')）のシンタクスのNALU_countは、NAL_unitの数を表す。さらに、図２４の左下に示されるように、各タイル（Tile）がどのNAL_unitから始まるのかを定義づけることができる。この例によると、Tile1はNAL1から始まり、Tile2はNAL3から始まり、Tile3はNAL5から始まり、Tile4はNAL7から始まり、Tile5はNAL9から始まる。このような各TileがどのNAL_unitから始まるのかを表す情報が、図２４の左上に示されるビジュアルサンプルグループエントリ（HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm')）のシンタクスとして定義されるようにしてもよい。
【０１２０】
そして、例４において説明したサブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ（SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi')）の例を図２５に示す。このビジュアルサンプルグループエントリには、各エントリについて、ヒント情報（hint_data）と、そのエントリが対応するグループの識別情報（GroupID）が設定される。
【０１２１】
図２５に示されるように、このヒント情報（hint_data）としては、例えば、例１乃至例４において説明した四角１２内に示されるような各例の内、いずれかの例の情報が設定される。
【０１２２】
ただし図２５においては、四角１２内に示されるように、ヒント情報として、例（Ａ−１），（Ａ−２），（Ｂ−１），（Ｂ−２）以外に、例（C）が追加されている。ここでは、水平方向のオフセット（H_offset）、垂直方向のオフセット（V_offset）等の、グループ化されたサブサンプル（タイル）の位置に関する情報が格納される。また、横幅（Width）や高さ（height）等の、グループ化されたサブサンプル（タイル）の大きさに関する情報が格納される。これらは図２０を参照して説明したヒント情報と同様である。
【０１２３】
また、グループの識別情報（GroupID）には、図２４の例を用いて説明したサンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ（HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm')）において、NAL unitのマップ化に用いられたグループの識別情報（GroupID）のいずれかが設定される。つまり、このグループの識別情報（GroupID）は、図１０の例のようなタイルのグループを示す。
【０１２４】
なお、図１８の例のように、複数のサブサンプル（タイル）をグループ化しない場合も、サブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ（SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi')）には、図２６に示される例のように、図２５の例と同様の情報が設定されるが、この場合、グループの識別情報（GroupID）は、各タイルを示すことになる。
【０１２５】
以上のようにビジュアルサンプルグループエントリを拡張して、NAL unitの構成を設定するようにすることにより、NAL unitをグループ化する場合、グループ化された意味に依らず、MP4ファイルをパースするレイヤにおいて、同じ処理フローにより対応することができる。
【０１２６】
なお、MAP GROUPによるGROUPをTILE GROUP化するBOXをSSPI（SubSample Profile Information）とは別BOXで定義するようにしてもよい。つまり、各エントリに対応するHEVCNALMapEntryによるグループの識別情報（GroupID）の定義は、エントリに対応するヒント情報（hint_data）を定義するサブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ（SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi')）とは異なるボックスである、タイルグループマップエントリを格納するように拡張されたビジュアルサンプルグループエントリ（TileGroupMapEntry extends VisualSampleGroupEntry('tgpm')）において行うようにしてもよい。
【０１２７】
図２５の例の場合、TGPMのシンタクスを、例えば、以下のようにしてもよい。
【０１２８】
Class TileGroupMapEntry extends VisualSampleGroupEntry (‘tgpm’) {
unsigned int(16) entry_count;
for (i=0; i < entry_count; i++) {
unsigned int(16) TileGroupID;
unsigned int(16) group_count;
for (j=0; j < group_count; j++) {
unsigned int(16) GroupID
}
}
}
【０１２９】
このようなシンタクスにより、図２５の例の場合、TileGroupIDに、GroupIDが以下のように割り当てられる。
【０１３０】
TileGroupID=1 => GroupID= 3
TileGroupID=2 => GroupID =2,3,4
TIleGroupID=3 => GroupID =1,2,3,4,5
【０１３１】
そして、それとは別のボックスとして、SSPIのシンタクスを、例えば、以下のようにしてもよい。
【０１３２】
class SubSampleProfileInformationEntry extends VisualSampleGroupEntry (‘sspi’) {
unsigned int(16) entry_count;
for (i=0; i < entry_count; i++) {
unsigned int(16) TileGroupID;
unsigned int(xx) hint_data;
}
}
【０１３３】
なお、この場合のヒント情報（hint_data）の内容は、上述した各例と同様である（四角１２内に示されるような各例の内、いずれかの例の情報が設定される）。
【０１３４】
このように、GroupIDのグループ化を、ヒント情報等を定義するsspiとは異なるboxにおいて行うことにより、そのグループ化の他の情報への依存度を低減させることができ、他の情報から独立して行うようにすることができる。したがって、より汎用的な（自由な）グループ化を実現することができ、そのGroupIDのグループ（TileGroupID）をより汎用的な用途に利用することができる。例えば、GroupIDの定義の階層化や非階層化等を、ヒント情報等の他の情報の構成を考慮する必要無く、容易に実現することができるようになる。
【０１３５】
また、サブサンプルのフラグ（flag）定義の例については、図３を参照して説明したが、以上に説明した例５の場合、さらに、HEVC NAL Map Group Entryでgroup化された連続したNAL unitsを追加定義するようにしてもよい。例えば、以下のように、flag=5において、HEVC NAL Map Group Entryでgroup化された連続したNAL unitsをsub-sampleとして追加定義するようにしてもよい。
【０１３６】
5:0:NAL-unit-based sub-samples. A sub-sample contains one or more contiguous NAL units. A sub-sample is mapped to GroupID, grouping in HEVC NAL Map Group Entry.
【０１３７】
このようにすることにより、NAL unitsベースで、任意のGroupへのバイトアクセスが実現できる。
【０１３８】
＜２．第２の実施の形態＞
＜MP4ファイル（１）＞
次にMP4ファイルの例について説明する。図２７は、タイル画像のMP4ファイルの構成例を説明する図である。このMP4ファイルは、タイル（Tile）構造を有するビットストリームを１つのファイルにファイル化したものである。図２７に示されるように、このMP4ファイルは、５つのトラックTrack1乃至Track5を有している。
【０１３９】
トラックtrack1は、サンプルディスクリプションボックス内のHEVCサンプルエントリ（HEVC sample entry）を有しており、そのcodec typeは、通常のHEVCビットストリームであることを示すhvc1とされている。このサンプルエントリ（Sample Entry）は、HEVCのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード（HEVC Decoder Configuration Record）（hvcCボックス）を有している。ビデオパラメータセット（VPS（Video Parameter Set））、シーケンスパラメータセット（SPS（Sequence Parameter Set））、SEI（Supplemental Enhancement Information）、ピクチャパラメータセット（PPS（Picture Parameter Set））等のヘッダ情報もこのhvcCボックスに格納される。このhvcCボックスにSEIを格納するか否かは任意とされる。
【０１４０】
トラックtrack1はまた、各トラックtrack2乃至track5のタイル（slice）への参照のためのエクストラクタ（extractor）Track2乃至Track5を有している。エクストラクタ（extractor）Track2はトラックTrack2のスライス（Tile1）を参照し、エクストラクタ（extractor）Track3はトラックTrack3のスライス（Tile2）を参照する。以下同様に、エクストラクタ（extractor）Track４はトラックTrack4のスライス（Tile3）を参照し、エクストラクタ（extractor）Track5はトラックTrack5のスライス（Tile4）を参照する。
【０１４１】
トラックtrack2乃至track5は、それぞれタイルTile1乃至Tile4の実データであるスライスsliceを格納している。またトラックtrack2乃至track5は、サンプルエントリ（Sample Entry）を有するが、これらはHEVC Tileだけを（単独で）格納するため、codec typeはhvt1とされている。このトラックtrack2乃至track5のサンプルエントリ（Sample Entry）は、HEVC Tileだけのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード（HEVC Decoder Configuration Record）（hvtCボックス）を有している。なお、１つのトラックに、グループ化されたタイル（Tile）を格納することができるようにしてもよい。
【０１４２】
トラックtrack2乃至track5はまた、タイルリージョングループエントリ（TileRegionGroupEntry）を有している。これらのトラックtrack2乃至track5のタイルリージョングループエントリ（TileRegionGroupEntry）には、それぞれのタイルを識別する識別情報であるGroupID、当該タイルの水平方向の位置（オフセット）を示すH_offset、当該タイルの垂直方向の位置（オフセット）を示すV_offset、当該タイルの水平方向の大きさ（幅）を示すH_width、当該タイルの垂直方向の大きさ（高さ）を示すV_heightの５つのパラメータの値が定義される。また、これらはグループ化されたタイル（Tile）に対して定義するようにしてもよい。
【０１４３】
例えば、トラックTrack2(タイル１（Tile1）)のタイルリージョングループエントリ（TileRegionGroupEntry）では、GroupID = 1, H_offset = 0, V_offset = 0, H_width = 960, V_height = 540が定義されている。また、例えば、トラックTrack3(タイル２（Tile2）)のタイルリージョングループエントリ（TileRegionGroupEntry）では、GroupID = 2, H_offset = 960, V_offset = 0, H_width = 960, V_height = 540が定義されている。さらに、例えば、トラックTrack4(タイル３（Tile3）)のタイルリージョングループエントリ（TileRegionGroupEntry）では、GroupID = 3, H_offset = 0, V_offset = 540, H_width = 960, V_height = 540が定義されている。また、例えば、トラックTrack5(タイル４（Tile4）)のタイルリージョングループエントリ（TileRegionGroupEntry）では、GroupID =4, H_offset = 960, V_offset = 540, H_width = 960, V_height = 540が定義されている。この場合、全体画像（1920x1080）は、縦2枚x横2枚の4枚のタイル（960x540）からなる。
【０１４４】
さらにトラックtrack2乃至track5には、トラックリファレンス（Track Reference）として、「prnt=1」が定義されている。これは、これらのトラックtrack2乃至track5が、トラックTrack1を参照することを示す。つまり、これらのトラックリファレンスによって、トラックTrack2乃至Track5のいずれか（いずれかのタイル）を再生する際に、トラックTrack1の情報（パラメータセット等）が参照されることになる。
【０１４５】
＜HEVC Tile Decoder Configuration Recordのシンタクス＞
【０１４６】
図２７のサンプルエントリ（Sample Entry）の、HEVC Tileだけのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード（HEVC Decoder Configuration Record）（hvtCボックス）の基本的なシンタクスは、次のようになる。
【０１４７】
Class HEVCConfigurationBox extends Box(‘hvtc’){
HEVCTileDecoderConfigurationRecord()HEVCTileConfig;
}
【０１４８】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例１＞
次にHEVCTileDecoderConfigurationRecordのシンタクスの具体例について説明する。図２８は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例１のHEVCタイルデコーダコンフィグレーションレコードは、図２８に示されるように構成される。configurationVersion、mcts_tier_flagおよびmcts_level_idcの３つが、拡張的に追加されている。
【０１４９】
そのconfigurationVersionは、HEVCタイルデコーダコンフィグレーションレコードのバージョンを表す。HEVCにおいては、同じ画像サイズに対して、tierという、Bitrateの異なる２種類のプロファイルが定義されている。すなわちその２種類とは、main tierとhigh tierである。mcts_tier_flagはそのいずれであるのかを表すフラグである。mcts_level_idcは、temporal MCTS SEI（Temporal Motion constrained tile set Supplemental Enhancement Information）において、独立に復号することができる部分領域の復号処理の負荷の大きさを定義する復号負荷定義情報として、その部分領域の復号処理の負荷の大きさを表すレベルである。
【０１５０】
ここでテンポラルモーションコンストレインドタイルセットSEI（temporal_motion_constrained_tile_sets SEI）について説明する。図２９はテンポラルMCTS SEIのシンタクスの例を示す図である。同図に示されるテンポラルMCTS SEIのシンタクスにおいては、mcts_tier_flag，mcts_level_idc，max_mcts_tier_flag，max_mcts_level_idを含むさまざまな情報が格納されている。
【０１５１】
なお、temporal MCTS SEIは、MCTS SEIと名称が異なるだけで、実質的に同じものである。また、図２８および図２９のmcts_level_idcは、図８、図１２、図１３、図１７、図１９、図２０、図２５および図２６等における四角１２内に示されるgenerals_level_idcと名称が異なるだけで、実質的に同じものである。
【０１５２】
図２８の例では、HEVC decodec configuration recordと同じデータ構造で、temporal_motion_constrained_tile_sets SEIに格納されているパラメータのうち、mcts_tier_flagとmcts_level_idcという、HEVC Tileのデコード判断に必要なパラメータだけが設定される。図２８のHEVCTileDecoderConfigurationRecordでは、それ以外の項には不必要なのでゼロが設定される。あるいはHEVC decoder configuration recordと同じ値が設定される。
【０１５３】
すなわちこの例１では、numOfArraysには、実質的に何も格納されない。
【０１５４】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例２＞
図３０は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例２のHEVCタイルデコーダコンフィグレーションレコードは、図３０に示されるように構成される。
【０１５５】
図３０の例２は、図２８の例１と基本的に同様の構成である。ただし、例１では実質的に何も格納されていないnumOfArraysに、例２では、HEVC Titleに対応したtemporal_motion_constrained_tile_sets SEIが格納されている点が、例１と異なっている。
【０１５６】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例３＞
図３１は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例３のHEVCタイルデコーダコンフィグレーションレコードは、図３１に示されるように構成される。
【０１５７】
図３１に示されるように、例３では、図２８および図３０の例と異なり、HEVCタイルデコーダコンフィグレーションレコードを拡張するというより、そのパターンが独自に規定される。すなわち例３では、configurationVersion の他、temporal_motion_constrained_tile_sets SEIに格納されているパラメータのうち、HEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag，mcts_level_idcだけが格納されている。
【０１５８】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例４＞
図３２は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例４のHEVCタイルデコーダコンフィグレーションレコードは、図３２に示されるように構成される。
【０１５９】
図３２に示されるように、例４では、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータとして、mcts_tier_flag，mcts_level_idc，max_mcts_tier_flag，max_mcts_level_idだけが格納されている。max_mcts_tier_flag，max_mcts_level_idは、それぞれmcts_tier_flag，mcts_level_idcの最大の値を表し、他のタイルを再生するのに必要なプロファイル情報である。つまり、これらはストリーム全体の、最大のTileのための情報である。後述する図３６の例では、これが他のボックス（hvte box）に格納される。
【０１６０】
複数のTileが同一のstream内に存在する場合において、Tileの大きさが異なるとき、それぞれのTileに必要なmcts_tier_flag，mcts_level_idcが異なることがある。その場合、最大の値であるmax_mcts_tier_flag，max_mcts_level_idcを、それぞれのTile毎のmcts_tier_flag，mcts_level_idcと共に格納することで、デコード処理のヒント情報とする。
【０１６１】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例５＞
図３３は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例５のHEVCタイルデコーダコンフィグレーションレコードは、図３３に示されるように構成される。
【０１６２】
図３３に示されるように、例５では、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIが、nalUnitに格納されている。従ってNAL_unit_typeには、SEIであることを表すNALunitタイプが格納される。
【０１６３】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例６＞
図３４は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例６のHEVCタイルデコーダコンフィグレーションレコードは、図３４に示されるように構成される。
【０１６４】
図３４に示されるように、例６は、図３１の例３と図３３の例５とが合成された構成とされている。すなわち、configurationVersionからmcts_level_idcの行までの例３と、lengthSizeMinusOne以降の行の例５とが合成されている。つまり、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag，mcts_level_idcと、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIとが格納された構成となっている。
【０１６５】
＜HEVCTileDecoderConfigurationRecordのシンタクスの例７＞
図３５は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例７のHEVCタイルデコーダコンフィグレーションレコードは、図３５に示されるように構成される。
【０１６６】
図３５に示されるように、例７は、図３２の例４と図３３の例５とが合成された構成とされている。すなわち、configurationVersionからmax_mcts_level_idcの行までの例４と、lengthSizeMinusOne以降の行の例５とが合成されている。つまり、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag，mcts_level_idc，max_mcts_tier_flag，max_mcts_level_idと、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIとが格納された構成となっている。
【０１６７】
＜MP4ファイル（２）＞
図３６は、図２７とは異なるタイル画像のMP4ファイルの構成例を説明する図である。図３６のMP4ファイルは、基本的に図２７のMP4ファイルと同様の構成であるが、図３６のMP4ファイルにおいては、トラックTrack1のサンプルエントリがhvcCbox以外に、hvte boxを有している点が図２７のMP4ファイルと異なっている。
【０１６８】
図３６のMP4ファイルにおいては、図３２で説明した、ストリーム全体の、最大のTileのための情報であるmax_mcts_tier_flag，max_mcts_level_idが、ベーストラックであるトラックTrack1のhvte boxに格納される。
【０１６９】
図３７は、HEVCタイルイクステンションボックスを説明する図である。図３７のAは、図３６のトラックTrack1のサンプルエントリが有するビジュアルサンプルグループエントリの拡張を表しており、HEVCConfigurationBox（hvcC box）の他、HEVCTileExtensionBox()（hvte box）が追加されている。そして図３７のBが、そのHEVCTileExtensionBox()のシンタクスを表している。図３７のBに示されるように、max_mcts_tier_flag，max_mcts_level_idが格納されている。
【０１７０】
max_mcts_tier_flag，max_mcts_level_idは、ストリーム全体の、最大のTileのための情報であるから、Tile Track（トラックTrack2乃至Track5）に格納せずに、ベーストラックであるトラックTrack1に格納する。これにより、任意のTileを単独でデコードするのに必要な最大値を簡単に取得することが可能になる。
【０１７１】
＜MP4ファイル（３）＞
図３８は、タイル画像のMP4ファイルの構成例を説明する図である。図３８のMP4ファイルは、基本的に図２７のMP4ファイルと同様の構成であるが、図２７のMP4ファイルにおいては、トラックTrack2乃至Track5のサンプルエントリのhvtC boxに、HEVC Tileだけのデコードに必要なconfiguration情報を格納するようにした。これに対して、図３８のMP4ファイルにおいては、hvtC boxに、図３０、図３３、図３４，および図３５の例に示した例のように、temporal_motion_constrained_tile_sets SEI が格納されるだけでなく、さらにHEVC Tileだけのデコードに必要なVPS,SPS,PPSが格納される。
【０１７２】
このようにすることで、Tile2乃至Tile5のいずれかを再生する場合、それらのパラメータセットを得るためにベーストラックであるトラックTrack1の情報にアクセスする必要が無くなる。
【０１７３】
＜３．第３の実施の形態＞
＜画像符号化装置＞
次に、以上のような本技術を実現する装置とその方法について説明する。図３９は、本技術を適用した画像処理装置の一態様である、画像符号化装置を示す図である。図３９に示される画像符号化装置１００は、入力された画像データをHEVC符号化方式で符号化してMP4ファイルフォーマットでファイル化する装置である。
【０１７４】
図３９に示されるように、画像符号化装置１００は、画像符号化部１０１、サブサンプル情報生成部１０２、およびMP4ファイル生成部１０３を有する。
【０１７５】
画像符号化部１０１は、入力された画像データの全体画像をタイル（Tile）と称する部分画像に分割し、各タイルをHEVC符号化方式がサポートするタイル（Tile）として、全体画像の画像データをそのタイル毎に符号化する。つまり、タイル毎に独立に復号することができるHEVC符号化方式のビットストリーム（HEVCビットストリーム）が生成される。
【０１７６】
画像符号化部１０１は、得られたHEVCビットストリームをMP4ファイル生成部１０３に供給する。また、画像符号化部１０１は、全体画像をどのように分割したかに関するタイル（Tile）情報や、各タイルのプロファイル情報をサブサンプル情報生成部１０２に供給する。
【０１７７】
サブサンプル情報生成部１０２は、画像符号化部１０１から供給されるタイル情報やタイルのプロファイル情報を用いて、MP4ファイルフォーマットに対応した、それらの情報を含む、すなわち、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報（拡張サブサンプル情報）を生成する。サブサンプル情報生成部１０２は、生成した拡張サブサンプル情報を、MP4ファイル生成部１０３に供給する。
【０１７８】
MP4ファイル生成部１０３は、画像符号化部１０１から供給されたHEVCビットストリームをMP4ファイルフォーマットでファイル化し、そのHEVCビットストリームを含むファイルの、HEVCビットストリームを管理する管理情報に、サブサンプル情報生成部１０２から供給される拡張サブサンプル情報を格納する。
【０１７９】
その際、MP4ファイル生成部１０３は、その拡張サブサンプル情報を、上述した管理情報のサンプルテーブルボックス（Sample Table Box）のサブサンプルインフォメーションボックス（Subsample Information Box）とは異なるサブサンプルヒントインフォメーションボックス（Subsample Hint Information Box）として配置する。
【０１８０】
または、MP4ファイル生成部１０３は、その拡張サブサンプル情報を、上述した管理情報のサンプルテーブルボックス（Sample Table Box）のサンプルグループディスクリプションボックス（Sample Group Description Box）にビジュアルサンプルグループエントリ（VisualSampleGroupEntry）として配置し、そのサブサンプル情報を適用するサンプルを指定する情報を、サンプルトゥーグループボックス（Sample To Group Box）に配置する。
【０１８１】
なお、サブサンプル情報の内容は、第１の実施の形態において説明した各例のいずれかと同様である。例えば、例５の場合、サブサンプル情報生成部１０２が生成する拡張サブサンプル情報には、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報だけでなく、NAL unitをグループ化するマップグループ情報（Map Group Entry）も含まれる。
【０１８２】
そして、MP4ファイル生成部１０３は、以上のように生成したMP4ファイルを出力し、ネットワーク、記録媒体等、若しくは情報処理装置等を介して、例えば復号側に伝送する。
【０１８３】
このようにすることにより、画像符号化装置１００は、復号に必要な性能をより正確に把握できるようにすることができる。
【０１８４】
＜画像符号化処理の流れ＞
次に、以上のような画像符号化装置１００により実行される各処理の流れについて説明する。図４０のフローチャートを参照して、画像符号化処理の流れの例を説明する。
【０１８５】
画像符号化処理が開始されると、画像符号化部１０１は、ステップＳ１０１において、画像データをサブサンプル（タイル）毎に復号できるように符号化する。
【０１８６】
ステップＳ１０２において、画像符号化部１０１は、例えばタイル情報や各タイルのプロファイル情報等、タイルに関する情報を抽出する。
【０１８７】
ステップＳ１０３において、サブサンプル情報生成部１０２は、ステップＳ１０２において抽出されたタイルに関する情報を用いて、タイルのヒント情報を含む拡張サブサンプル情報を生成する。
【０１８８】
ステップＳ１０４において、MP4ファイル生成部１０３は、拡張サブサンプル情報を用いて、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報をmoovのサンプルテーブルボックスに含むようにMP4ファイルを生成する。
【０１８９】
ステップＳ１０４の処理が終了すると画像符号化処理が終了する。
【０１９０】
以上のように画像符号化処理を実行することにより、画像符号化装置１００は、復号に必要な性能をより正確に把握できるようにすることができる。
【０１９１】
＜４．第４の実施の形態＞
＜画像復号装置＞
次に、以上のように符号化された符号化データの復号について説明する。図４１は、本技術を適用した画像処理装置の一態様である、画像符号化装置１００に対応する画像復号装置の主な構成例を示すブロック図である。図４１に示される画像復号装置２００は、画像符号化装置１００が生成した符号化データを、その符号化方法に対応する復号方法で復号する。つまり、画像復号装置２００は、MP4ファイルからHEVCビットストリームを抽出し、そのHEVCビットストリームを復号して画像データを出力する。その際、画像復号装置２００は、例えば、HEVCがサポートするタイル構造を利用して、単数または複数のタイル（Tile）からなる部分画像を他の部分とは独立して復号することができる。その際、画像復号装置２００は、その独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報に基づいて、復号可否判断を行うことができる。
【０１９２】
図４１に示されるように、画像復号装置２００は、MP4ファイル再生部２０１、サブサンプル情報処理部２０２、および画像復号部２０３を有する。
【０１９３】
MP4ファイル再生部２０１は、入力されるMP4ファイルの再生可否判定処理を行ったり、そのMP4ファイルの再生処理を行ったり、エラー処理を行ったりする。MP4ファイル再生部２０１は、サブサンプル情報処理部２０２を利用してそれらの処理を行い、単数または複数のタイルのからなる部分画像（もちろん全体画像であってもよい）のHEVCビットストリームを生成し、画像復号部２０３に供給する。
【０１９４】
サブサンプル情報処理部２０２は、その再生可否判定処理や再生処理において、サブサンプル情報についての処理を行う。なお、サブサンプル情報の内容は、第１の実施の形態において説明した各例のいずれかと同様である。例えば、例５の場合、サブサンプル情報生成部１０２が生成する拡張サブサンプル情報には、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報だけでなく、NAL unitをグループ化するマップグループ情報（Map Group Entry）も含まれる。
【０１９５】
画像復号部２０３は、MP4ファイル再生部２０１において生成されたHEVCビットストリームを復号し、その画像データを出力する。
【０１９６】
このようにすることにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０１９７】
＜画像復号処理の流れ＞
次に、以上のような画像復号装置２００により実行される各処理の流れについて説明する。最初に、図４２のフローチャートを参照して、画像復号処理の流れの例を説明する。
【０１９８】
画像復号処理が開始されると、画像復号装置２００のMP4ファイル再生部２０１およびサブサンプル情報処理部２０２は、ステップＳ２０１において、入力されたMP4ファイルに含まれるHEVCビットストリームについて、ユーザ等により指定された部分画像の再生可否判定を行う。
【０１９９】
ステップＳ２０２において、MP4ファイル再生部２０１は、ステップＳ２０１の処理結果に基づいて、再生するか否かを判定する。再生すると判定された場合、処理はステップＳ２０３に進む。
【０２００】
ステップＳ２０３において、MP4ファイル再生部２０１およびサブサンプル情報処理部２０２は、再生処理を行う。
【０２０１】
ステップＳ２０４において、画像復号部２０３は、ステップＳ２０３の処理により得られた、単数または複数のタイルからなる部分画像の符号化データ（HEVCビットストリーム）を復号し、単数または複数のタイルからなる部分画像の画像データを出力する。
【０２０２】
ステップＳ２０４の処理が終了すると画像復号処理が終了する。
【０２０３】
また、ステップＳ２０２において、再生しないと判定された場合、処理はステップＳ２０５に進む。
【０２０４】
ステップＳ２０５において、MP4ファイル再生部２０１は、復号を正常に出来ない場合の所定の処理であるエラー処理を行う。このエラー処理はどのような処理であっても良い。例えば、復号を強制終了（中断、一時停止等を含む）してもよいし、画像や音声などでユーザに対して警告するようにしてもよい。また、例えばレベルがより低い他の符号化ストリームを取得して復号をやり直すようにしてもよい。さらに、例えば、復号画像に乱れが生じることを許容し、その符号化ストリームを強制的に復号するようにしてもよい。
【０２０５】
ステップＳ２０５の処理が終了すると、画像復号処理が終了する。
【０２０６】
＜再生可否判定処理の流れ＞
次に、図４３のフローチャートを参照して、図４２のステップＳ２０１において実行される再生可否判定処理の流れの例を説明する。
【０２０７】
再生可否判定処理が開始されると、ステップＳ２２１において、MP4ファイル再生部２０１は、MP4ファイルのサンプルテーブルボックスのサンプルディスクリプションボックスのHEVCサンプルエントリから、MP4ファイルに含まれるHEVCビットストリームのシーケンスパラメータセット（SPS）を取得する。
【０２０８】
ステップＳ２２２において、MP4ファイル再生部２０１は、そのシーケンスパラメータセット（SPS）に含まれるプロファイル情報が、画像復号部２０３に対応するプロファイル情報であるか否かを判定する。つまり、MP4ファイル再生部２０１は、シーケンスパラメータセット（SPS）に含まれる情報に基づいて、画像復号部２０３が、そのMP4ファイルに含まれる全体画像のHEVCビットストリームを復号可能であるか否かを判定する。
【０２０９】
復号可能であると判定された場合、処理はステップＳ２２３に進む。ステップＳ２２３において、MP4ファイル再生部２０１は、再生を行うように制御する。つまり、図４２のステップＳ２０２において再生すると判定される。
【０２１０】
ステップＳ２２３の処理が終了すると、再生可否判定処理が終了し、処理は図４２に戻る。
【０２１１】
また、ステップＳ２２２において、プロファイル情報が画像復号部２０３に対応しないと判定された場合、つまり、画像復号部２０３がそのMP4ファイルに含まれる全体画像のHEVCビットストリームを復号不可能であると判定された場合、処理はステップＳ２２４に進む。ステップＳ２２４において、サブサンプル情報処理部２０２は、MP4ファイルのサンプルテーブルボックスから、タイル（サブサンプル）のヒント情報を取得する。
【０２１２】
ステップＳ２２５において、サブサンプル情報処理部２０２は、ステップＳ２２４において取得されたヒント情報に含まれるプロファイル情報が、画像復号部２０３に対応するプロファイル情報であるか否かを判定する。つまり、サブサンプル情報処理部２０２は、画像復号部２０３が、そのMP4ファイルに含まれる、単数若しくは複数のタイルからなる部分画像のHEVCビットストリームを復号可能であるか否かを判定する。
【０２１３】
復号可能であると判定された場合、処理はステップＳ２２３に戻る。すなわち、この場合もMP4ファイル再生部２０１は、再生を行うように制御する。
【０２１４】
また、ステップＳ２２５において、プロファイル情報が画像復号部２０３に対応しないと判定された場合、つまり、画像復号部２０３がそのMP4ファイルに含まれる部分画像のHEVCビットストリームを復号不可能であると判定された場合、処理はステップＳ２２６に進む。
【０２１５】
ステップＳ２２６において、MP4ファイル再生部２０１は、上述したようにエラー処理を行うように制御する。
【０２１６】
ステップＳ２２６の処理が終了すると、再生可否判定処理が終了し、処理は図４２に戻る。
【０２１７】
＜再生処理の流れ＞
次に、図４２のステップＳ２０３において実行される再生処理の流れの例を、図４４のフローチャートを参照して説明する。
【０２１８】
再生処理が開始されると、MP4ファイル再生部２０１は、ステップＳ２４１において、MP4ファイルからシーケンスパラメータセット（SPS）と、ピクチャパラメータセットとを取得する。
【０２１９】
ステップＳ２４２において、サブサンプル情報処理部２０２は、MP4ファイルから再生するタイルのヒント情報を取得する。
【０２２０】
ステップＳ２４３において、MP4ファイル再生部２０１は、ステップＳ２４２において得られたタイルのヒント情報を用いて、ステップＳ２４１において取得したシーケンスパラメータセット（SPS）を更新する。例えば、ヒント情報が、四角１２の例（Ａ−１）や（Ａ−２）の場合、MP4ファイル再生部２０１は、そのヒント情報に含まれる情報（プロファイルレベル等）を用いて、シーケンスパラメータセット（SPS）の情報を書き換える。また、例えば、ヒント情報が、四角１２の例（Ｂ−１）や（Ｂ−２）の場合、MP4ファイル再生部２０１は、そのヒント情報に含まれる情報を、シーケンスパラメータセット（SPS）に置き換える。
【０２２１】
ステップＳ２４４において、サブサンプル情報処理部２０２は、MP4ファイルから再生するタイルのデータを取得する。その際、例１乃至例４の場合、サブサンプル情報処理部２０２は、図６の例のように、サブサンプルインフォメーションボックスを参照して、サブサンプル（タイル）を構成するNAL unitのデータにアクセスし、取得する。また、例５の場合、サブサンプル情報処理部２０２は、図２４の例のように、サンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ（HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm')）において設定された、NAL unitとGroupIDの紐づけ（NAL unitのマップパターン）（Map Group Entry）を参照して、サブサンプル（タイル）を構成するNAL unitのデータにアクセスし、取得する。
【０２２２】
ステップＳ２４５において、MP4ファイル再生部２０１は、ステップＳ２４４において得られたタイルのデータやステップＳ２４３において更新されたシーケンスパラメータセット等を用いて、再生するタイル（部分画像）のビットストリームを生成する。
【０２２３】
ステップＳ２４５の処理が終了すると、処理は図４２に戻る。すなわち、生成された部分画像のビットストリームが復号される。
【０２２４】
以上のように各処理を実行することにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０２２５】
＜再生処理の流れ＞
次に、図４２のステップＳ２０３において実行される再生処理の流れの、他の例を、図４５のフローチャートを参照して説明する。
【０２２６】
再生処理が開始されると、MP4ファイル再生部２０１は、ステップＳ２６１において、ビジュアルサンプルグループエントリから、タイルの位置に関する情報（H_offset,V_offset）と、タイルの大きさに関する情報（Width,Height）を取得する。
【０２２７】
ステップＳ２６２において、MP4ファイル再生部２０１は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したいタイルを選択する。
【０２２８】
ステップＳ２６３において、サブサンプル情報処理部２０２は、ビジュアルサンプルグループエントリから、選択されたタイルに対応するNAL unitのマップパターンに関する情報（NALU_count,groupID）を取得する。
【０２２９】
ステップＳ２６４において、サブサンプル情報処理部２０２は、ステップＳ２６３において取得されたNAL unitのマップパターンに関する情報に基づいて、タイルのデータを取得する。
【０２３０】
ステップＳ２６５において、MP4ファイル再生部２０１は、ステップＳ２６４において取得されたタイルのビットストリームを再生する。
【０２３１】
ステップＳ２６５の処理が終了すると、処理は図４２に戻る。すなわち、再生された部分画像のビットストリームが復号される。
【０２３２】
以上のように各処理を実行することにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０２３３】
＜再生処理の流れ＞
次に、図４２のステップＳ２０３において実行される再生処理の流れの、他の例を、図４６のフローチャートを参照して説明する。
【０２３４】
再生処理が開始されると、MP4ファイル再生部２０１は、ステップＳ２８１において、ビジュアルサンプルグループエントリから、タイルの位置に関する情報（H_offset,V_offset）と、タイルの大きさに関する情報（Width,Height）を取得する。
【０２３５】
ステップＳ２８２において、MP4ファイル再生部２０１は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したい領域を選択する。
【０２３６】
ステップＳ２８３において、サブサンプル情報処理部２０２は、ビジュアルサンプルグループエントリから、再生したい領域に対応するTileGroupIDを基に、複数のGroupIDを取得する。
【０２３７】
ステップＳ２８４において、サブサンプル情報処理部２０２は、ビジュアルサンプルグループエントリから、選択された複数のGroupIDのタイルに対応するNAL unitのマップパターンに関する情報（NALU_count,groupID）をそれぞれ取得する。
【０２３８】
ステップＳ２８５において、サブサンプル情報処理部２０２は、ステップＳ２８４において取得されたNAL unitのマップパターンに関する情報に基づいて、それぞれのタイルのデータを取得する。
【０２３９】
ステップＳ２８６において、MP4ファイル再生部２０１は、ステップＳ２８５において取得された各タイルのビットストリームを再生する。
【０２４０】
ステップＳ２８６の処理が終了すると、処理は図４２に戻る。すなわち、再生された部分画像のビットストリームが復号される。
【０２４１】
以上のように各処理を実行することにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０２４２】
＜再生処理の流れ＞
次に、図４２のステップＳ２０３において実行される再生処理の流れの、他の例を、図４７のフローチャートを参照して説明する。
【０２４３】
再生処理が開始されると、MP4ファイル再生部２０１は、ステップＳ３０１において、タイルリージョングループエントリから、タイルの位置に関する情報（H_offset,V_offset）と、タイルの大きさに関する情報（Width,Height）を取得する。
【０２４４】
ステップＳ３０２において、MP4ファイル再生部２０１は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したいタイルを選択する。
【０２４５】
ステップＳ３０３において、サブサンプル情報処理部２０２は、ステップＳ３０２において選択されたタイルに対応するトラックを取得する。
【０２４６】
ステップＳ３０４において、MP4ファイル再生部２０１は、ステップＳ３０３において取得された複数のトラックに対応するタイルのビットストリームを再生する。
【０２４７】
ステップＳ３０４の処理が終了すると、処理は図４２に戻る。すなわち、再生された部分画像のビットストリームが復号される。
【０２４８】
以上のように各処理を実行することにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０２４９】
＜再生処理の流れ＞
次に、図４２のステップＳ２０３において実行される再生処理の流れの、他の例を、図４８のフローチャートを参照して説明する。
【０２５０】
再生処理が開始されると、MP4ファイル再生部２０１は、ステップＳ３２１において、タイルリージョングループエントリから、タイルの位置に関する情報（H_offset,V_offset）と、タイルの大きさに関する情報（Width,Height）を取得する。
【０２５１】
ステップＳ３２２において、MP4ファイル再生部２０１は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したい領域を選択する。
【０２５２】
ステップＳ３２３において、サブサンプル情報処理部２０２は、タイルリージョングループエントリから、再生したい領域に対応するTileGroupIDに基づいて、複数のGroupIDを取得する。
【０２５３】
ステップＳ３２４において、サブサンプル情報処理部２０２は、ステップＳ３２３において選択された複数のタイルに対応するトラックを取得する。
【０２５４】
ステップＳ３２５において、MP4ファイル再生部２０１は、ステップＳ３２４において取得された複数のトラックに対応する複数のタイルのビットストリームを再生する。
【０２５５】
ステップＳ３２４の処理が終了すると、処理は図４２に戻る。すなわち、再生された部分画像のビットストリームが復号される。
【０２５６】
以上のように各処理を実行することにより、画像復号装置２００は、復号に必要な性能をより正確に把握することができる。
【０２５７】
本技術の適用範囲は、部分画像を符号化・復号可能なあらゆる画像符号化装置及び画像復号装置に適用することができる。
【０２５８】
また、本技術は、例えば、MPEG、H．26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報（ビットストリーム）を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。
【０２５９】
＜５．第５の実施の形態＞
＜コンピュータ＞
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【０２６０】
図４９は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０２６１】
図４９に示されるコンピュータ９００において、CPU（Central Processing Unit）９０１、ROM（Read Only Memory）９０２、RAM（Random Access Memory）９０３は、バス９０４を介して相互に接続されている。
【０２６２】
バス９０４にはまた、入出力インタフェース９１０も接続されている。入出力インタフェース９１０には、入力部９１１、出力部９１２、記憶部９１３、通信部９１４、およびドライブ９１５が接続されている。
【０２６３】
入力部９１１は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部９１２は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部９１３は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部９１４は、例えば、ネットワークインタフェースよりなる。ドライブ９１５は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア９２１を駆動する。
【０２６４】
以上のように構成されるコンピュータでは、CPU９０１が、例えば、記憶部９１３に記憶されているプログラムを、入出力インタフェース９１０およびバス９０４を介して、RAM９０３にロードして実行することにより、上述した一連の処理が行われる。RAM９０３にはまた、CPU９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２６５】
コンピュータ（CPU９０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア９２１に記録して適用することができる。その場合、プログラムは、リムーバブルメディア９２１をドライブ９１５に装着することにより、入出力インタフェース９１０を介して、記憶部９１３にインストールすることができる。
【０２６６】
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部９１４で受信し、記憶部９１３にインストールすることができる。
【０２６７】
その他、このプログラムは、ROM９０２や記憶部９１３に、あらかじめインストールしておくこともできる。
【０２６８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２６９】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２７０】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０２７１】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。
【０２７２】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０２７３】
例えば、本技術は、１つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０２７４】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２７５】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２７６】
上述した実施形態に係る画像符号化装置及び画像復号装置は、例えば、衛星放送、ケーブルＴＶなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。
【０２７７】
また、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI（Large Scale Integration）等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等（すなわち、装置の一部の構成）として実施することもできる。
【０２７８】
また、本明細書では、各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像（スライス若しくはブロックなど、画像の一部であってもよい）と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像（又はビットストリーム）とは別の伝送路上で伝送されてもよい。また、情報は、画像（又はビットストリーム）とは別の記録媒体（又は同一の記録媒体の別の記録エリア）に記録されてもよい。さらに、情報と画像（又はビットストリーム）とは、例えば、複数フレーム、１フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
【０２７９】
なお、本技術は以下のような構成も取ることができる。
（１）  画像データを符号化する符号化部と、
前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成するサブサンプル情報生成部と、
前記符号化部により生成された前記画像データの符号化データと、前記符号化データの管理情報を含むファイルを生成し、前記サブサンプル情報生成部により生成された前記サブサンプル情報を、前記管理情報に配置するファイル生成部と
を備える画像符号化装置。
（２）  前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、前記ヒント情報を含むサブサンプル情報を生成する
（１）、（３）乃至（１５）のいずれかに記載の画像符号化装置。
（３）  前記ヒント情報は、前記サブサンプルの復号処理の負荷の大きさを表すレベルを含む
（１）、（２）、（４）乃至（１５）のいずれかに記載の画像符号化装置。
（４）  前記ヒント情報は、前記サブサンプルの符号化データのヘッダ情報を含む
（１）乃至（３）、（５）乃至（１５）のいずれかに記載の画像符号化装置。
（５）  前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、前記サブサンプルが属するグループの識別情報を含むサブサンプル情報を生成する
（１）乃至（４）、（６）乃至（１５）のいずれかに記載の画像符号化装置。
（６）  前記サブサンプル情報生成部は、さらに、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、サブサンプルのグループの復号処理の負荷の大きさを表すレベルを含むヒント情報を含むサブサンプル情報を生成する
（１）乃至（５）、（７）乃至（１５）のいずれかに記載の画像符号化装置。
（７）  前記サブサンプル情報生成部は、さらに、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、サブサンプルのグループの符号化データのヘッダ情報を含むヒント情報を含むサブサンプル情報を生成する
（１）乃至（６）、（８）乃至（１５）のいずれかに記載の画像符号化装置。
（８）  前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、グループに属するサブサンプルの識別情報、並びに、前記グループのヒント情報を含むサブサンプル情報を生成する
（１）乃至（７）、（９）乃至（１５）のいずれかに記載の画像符号化装置。
（９）  前記ヒント情報は、前記グループの復号処理の負荷の大きさを表すレベルを含む
（１）乃至（８）、（１０）乃至（１５）のいずれかに記載の画像符号化装置。
（１０）  前記ヒント情報は、前記グループの符号化データのヘッダ情報を含む
（１）乃至（９）、（１１）乃至（１５）のいずれかに記載の画像符号化装置。
（１１）  前記サブサンプル情報生成部は、サブサンプルの大きさと位置を示す情報を含むサブサンプル情報を生成する
（１）乃至（１０）、（１２）乃至（１５）のいずれかに記載の画像符号化装置。
（１２）  前記サブサンプル情報生成部は、サブサンプルが独立して復号することができることを示す情報を含むサブサンプル情報を生成する
（１）乃至（１１）、（１３）乃至（１５）のいずれかに記載の画像符号化装置。
（１３）  前記サブサンプル情報生成部は、サンプルを構成するナルユニットをグループ化する情報を含むサブサンプル情報を生成する
（１）乃至（１２）、（１４）、（１５）のいずれかに記載の画像符号化装置。
（１４）  前記ファイル生成部は、前記サブサンプル情報を、前記管理情報のサンプルテーブルボックス（Sample Table Box）のサブサンプルインフォメーションボックス（Subsample Information Box）とは異なるサブサンプルヒントインフォメーションボックス（Subsample Hint Information Box）として配置する
（１）乃至（１３）、（１５）のいずれかに記載の画像符号化装置。
（１５）  前記ファイル生成部は、前記サブサンプル情報を、前記管理情報のサンプルテーブルボックス（Sample Table Box）のサンプルグループディスクリプションボックス（Sample Group Description Box）にビジュアルサンプルグループエントリ（VisualSampleGroupEntry）として配置し、前記サブサンプル情報を適用するサンプルを指定する情報を、サンプルトゥーグループボックス（Sample To Group Box）に配置する
（１）乃至（１４）のいずれかに記載の画像符号化装置。
（１６）  前記ファイル生成部は、前記部分画像だけのデコードに必要な前記サブサンプル情報を、部分画像を有するトラックの、前記管理情報のサンプルテーブルボックス（Sample Table Box）のサンプルグループディスクリプションボックス（Sample Group Description Box）のサンプルエントリ（Sample Entry）に配置する
（１）乃至（１５）のいずれかに記載の画像符号化装置。
（１７）  前記サブサンプル情報は、HEVC decodec configuration recordと同じデータ構造で、テンポラルモーションコンストレインドタイルセットSEI （temporal_motion_constrained_tile_sets SEI）に格納されているHEVC Tileのデコード判断に必要なパラメータである
（１）乃至（１６）のいずれかに記載の画像符号化装置。
（１８）  前記パラメータは、mctsティアフラグ（mcts_tear_flag）およびmctsレベルidc（mcts_level_idc）を含む
（１）乃至（１７）のいずれかに記載の画像符号化装置。
（１９）  前記部分画像情報は、HEVC Tileに対応したテンポラルモーションコンストレインドタイルセットSEI （temporal_motion_constrained_tile_sets SEI）をさらに含む
（１）乃至（１８）のいずれかに記載の画像符号化装置。
（２０）前記サブサンプル情報は、マックスmctsティアフラグ（max_mcts_tear_flag）およびマックスmctsレベルidc（max_mcts_level_idc）をさらに含む
（１）乃至（１９）のいずれかに記載の画像符号化装置。
（２１）  HEVC Tileのデコードの判断に必要なHEVC Tileに対応したテンポラルモーションコンストレインドタイルセットSEI （temporal_motion_constrained_tile_sets SEI）をさらに含む
（１）乃至（２０）のいずれかに記載の画像符号化装置。
（２２）  前記マックスmctsティアフラグ（max_mcts_tear_flag）およびマックスmctsレベルidc（max_mcts_level_idc）は、ベーストラックに配置される
（１）乃至（２１）のいずれかに記載の画像符号化装置。
（２３）  画像データを符号化し、
前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成し、
生成された前記画像データの符号化データと、前記符号化データの管理情報を含むファイルを生成し、生成された前記サブサンプル情報を、前記管理情報に配置する
画像符号化方法。
（２４）  画像データの符号化データと、前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報が配置される前記符号化データの管理情報とを含むファイルを取得する取得部と、
前記取得部により取得された前記ファイルに含まれる前記サブサンプル情報を解析するサブサンプル情報解析部と、
前記サブサンプル情報解析部による前記サブサンプル情報の解析結果に基づいて、前記符号化データの復号を制御する制御部と、
前記制御部による制御に従って、前記取得部により取得された前記ファイルに含まれる前記符号化データから、前記サブサンプルの符号化データを生成する符号化データ生成部と、
前記制御部による制御に従って、前記符号化データ生成部により生成された前記サブサンプルの符号化データを復号する復号部と
を備える画像復号装置。
（２５）  前記制御部は、前記サブサンプル情報の前記ヒント情報に基づいて、前記復号部が前記サブサンプルの符号化データを復号可能であるかを判定し、復号可能である場合、前記サブサンプルの符号化データを復号するように制御する
（２４）に記載の画像復号装置。
（２６）  前記符号化データ生成部は、前記サブサンプル情報に基づいて、前記サブサンプルの符号化データのヘッダ情報を更新する
（２４）または（２５）に記載の画像復号装置。
（２７）  画像データの符号化データと、前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報が配置される前記符号化データの管理情報とを含むファイルを取得し、
取得された前記ファイルに含まれる前記サブサンプル情報を解析し、
前記サブサンプル情報の解析結果に基づいて、前記符号化データの復号を制御し、
前記制御に従って、取得された前記ファイルに含まれる前記符号化データから、前記サブサンプルの符号化データを生成し、
前記制御に従って、生成された前記サブサンプルの符号化データを復号する
画像復号方法。
（３１）  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成するファイル生成部と、
前記ファイル生成部により生成された前記ファイルを記憶する記憶部と
を備える情報処理装置。
（３２）  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
（３１）に記載の情報処理装置。
（３３）  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
（３１）または（３２）に記載の情報処理装置。
（３４）  前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
（３１）乃至（３３）のいずれかに記載の情報処理装置。
（３５）  前記ファイル生成部により生成された前記ファイルは、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
（３１）乃至（３４）のいずれかに記載の情報処理装置。
（３６）  前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
（３５）に記載の情報処理装置。
（３７）  前記関連情報は、前記複数のNAL unitの数を表す情報を含む
（３５）または（３６）に記載の情報処理装置。
（３８）  前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
（３５）乃至（３７）のいずれかに記載の情報処理装置。
（３９）  前記部分画像は、HEVC（High Efficiency Video Coding）におけるTileである
（３１）乃至（３８）のいずれかに記載の情報処理装置。
（４０）  前記部分画像は、複数のNAL unitで構成される
（３１）乃至（３９）のいずれかに記載の情報処理装置。
（４１）  前記部分画像は、前記ファイルにおける第１のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第１のトラック以外のトラックに格納される
（３１）乃至（４０）のいずれかに記載の情報処理装置
（４２）  前記記憶部により記憶された前記ファイルを他の装置に送信する送信部をさらに備える
（３１）乃至（４１）のいずれかに記載の情報処理装置。
（４３）  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成し、
生成された前記ファイルを記憶する
情報処理方法。
（４４）  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生するファイル再生部
を備える情報処理装置。
（４５）  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
（４４）に記載の情報処理装置。
（４６）  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
（４４）または（４５）に記載の情報処理装置。
（４７）  前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
（４４）乃至（４６）のいずれかに記載の情報処理装置。
（４８）  前記ファイルは、前記moovに、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
（４４）乃至（４７）のいずれかに記載の情報処理装置。
（４９）  前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
（４８）に記載の情報処理装置。
（５０）  前記関連情報は、前記複数のNAL unitの数を表す情報を含む
（４８）または（４９）に記載の情報処理装置。
（５１）  前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
（４８）乃至（５０）のいずれかに記載の情報処理装置。
（５２）  前記部分画像は、HEVC（High Efficiency Video Coding）におけるTileである
（４４）乃至（５１）のいずれかに記載の情報処理装置。
（５３）  前記部分画像は、複数のNAL unitで構成される
（４４）乃至（５２）のいずれかに記載の情報処理装置。
（５４）  前記部分画像は、前記ファイルにおける第１のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第１のトラック以外のトラックに格納される
（４４）乃至（５３）のいずれかに記載の情報処理装置
（５５）  前記ファイルを受信する受信部をさらに備え、
前記ファイル再生部は、前記受信部により受信された前記ファイルを再生する
（４４）乃至（５４）のいずれかに記載の情報処理装置。
（５６）  前記ファイルは、VisualSampleGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
前記ファイル再生部は、
前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
前記複数の部分画像をグループ化する情報に基づいて、前記再生したい領域に対応する部分画像のデータを取得し、ビットストリームを生成する
（４４）乃至（５５）のいずれかに記載の情報処理装置。
（５７）  前記ファイルは、TileRegionGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
前記ファイル再生部は、
前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
前記複数の部分画像をグループ化する情報に基づいて、選択した前記再生したい領域に対応する複数のトラックを取得し、
取得した複数の前記トラックに対応する部分画像のビットストリームを生成する
（４４）乃至（５６）のいずれかに記載の情報処理装置。
（５８）  前記ファイル再生部により再生されて生成された前記部分画像のビットストリームを復号する復号部をさらに備える
（４４）乃至（５７）のいずれかに記載の情報処理装置。
（５９）  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生する
情報処理方法。
【符号の説明】
【０２８０】
１００  画像符号化装置，  １０１  画像符号化部，  １０２  サブサンプル情報生成部，  １０３  MP4ファイル生成部，  ２００  画像復号装置，  ２０１  MP4ファイル再生部，  ２０２  サブサンプル情報処理部，  ２０３  画像復号部
【図１】
2019050589.tif 000003
【図２】
2019050589.tif 000004
【図３】
2019050589.tif 000005
【図４】
2019050589.tif 000006
【図５】
2019050589.tif 000007
【図６】
2019050589.tif 000008
【図７】
2019050589.tif 000009
【図８】
2019050589.tif 000010
【図９】
2019050589.tif 000011
【図１０】
2019050589.tif 000012
【図１１】
2019050589.tif 000013
【図１２】
2019050589.tif 000014
【図１３】
2019050589.tif 000015
【図１４】
2019050589.tif 000016
【図１５】
2019050589.tif 000017
【図１６】
2019050589.tif 000018
【図１７】
2019050589.tif 000019
【図１８】
2019050589.tif 000020
【図１９】
2019050589.tif 000021
【図２０】
2019050589.tif 000022
【図２１】
2019050589.tif 000023
【図２２】
2019050589.tif 000024
【図２３】
2019050589.tif 000025
【図２４】
2019050589.tif 000026
【図２５】
2019050589.tif 000027
【図２６】
2019050589.tif 000028
【図２７】
2019050589.tif 000029
【図２８】
2019050589.tif 000030
【図２９】
2019050589.tif 000031
【図３０】
2019050589.tif 000032
【図３１】
2019050589.tif 000033
【図３２】
2019050589.tif 000034
【図３３】
2019050589.tif 000035
【図３４】
2019050589.tif 000036
【図３５】
2019050589.tif 000037
【図３６】
2019050589.tif 000038
【図３７】
2019050589.tif 000039
【図３８】
2019050589.tif 000040
【図３９】
2019050589.tif 000041
【図４０】
2019050589.tif 000042
【図４１】
2019050589.tif 000043
【図４２】
2019050589.tif 000044
【図４３】
2019050589.tif 000045
【図４４】
2019050589.tif 000046
【図４５】
2019050589.tif 000047
【図４６】
2019050589.tif 000048
【図４７】
2019050589.tif 000049
【図４８】
2019050589.tif 000050
【図４９】
2019050589.tif 000051