JP6214235B2 - ファイル生成方法、ファイル生成装置、及びプログラム - Google Patents

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

Info

Publication number
JP6214235B2
JP6214235B2 JP2013133529A JP2013133529A JP6214235B2 JP 6214235 B2 JP6214235 B2 JP 6214235B2 JP 2013133529 A JP2013133529 A JP 2013133529A JP 2013133529 A JP2013133529 A JP 2013133529A JP 6214235 B2 JP6214235 B2 JP 6214235B2
Authority
JP
Japan
Prior art keywords
tile
slice
box
picture
data
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
JP2013133529A
Other languages
English (en)
Other versions
JP2014030187A (ja
JP2014030187A5 (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
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013133529A priority Critical patent/JP6214235B2/ja
Publication of JP2014030187A publication Critical patent/JP2014030187A/ja
Publication of JP2014030187A5 publication Critical patent/JP2014030187A5/ja
Application granted granted Critical
Publication of JP6214235B2 publication Critical patent/JP6214235B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/188Methods 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 video data packet, e.g. a network abstraction layer [NAL] unit
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/174Methods 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 an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Description

本願発明はメディアファイル生成方法、メディアファイル生成プログラムに関し、特に各ピクチャが矩形状のタイルに分割されて符号化された符号化データを格納するメディアファイルのフォーマットに関する。
現在デジタル技術の進展によりデジタルカメラ・デジタルビデオカメラにおける高解像度でのデジタル動画撮影が広く普及している。デジタル動画はフラッシュメモリに代表される記録媒体に効率良く記録するため一般に圧縮(符号化)されており、動画の符号化方式として、H.264/MPEG−4 AVC(以下H.264)が広く使用されている。
近年、H.264の後継としてさらに高効率な符号化方式の国際標準化を行う活動が開始されて、JCT−VC(Joint Collaborative Team on Video Coding)がISO/IECとITU−Tの間で設立された。JCT−VCでは、High Efficiency Video Coding符号化方式(以下、HEVC)の標準化が進められている。
HEVCの標準化にあたっては、種々の符号化ツールが、符号化効率向上のみならず実装の容易性や処理時間の短縮といった観点も含めて幅広く検討されている。その中には、符号化・復号の並列処理、エラー耐性を高める等の目的のため1枚のピクチャを符号化順に水平方向に分割するスライス分割と呼ばれる手法、1枚のピクチャを矩形領域に分割するタイル分割と呼ばれる手法等がある(非特許文献1を参照)。スライスやタイルを用いることによって、符号化・復号の並列処理による高速化を実現すると共に、符号化プログラム・復号プログラムが必要とするメモリ容量を削減することが可能となっている。HEVCにおいては、このスライス分割及びタイル分割を併用することも可能である。
また、このタイル分割を利用して、符号化ストリームの連続するピクチャから一部のタイルのみを独立して復号可能にするMCTS(Motion Constrained Tile Sets)と呼ばれる手法がある(非特許文献4)。MCTS SEIメッセージが符号化ストリームに含まれていると、当該ビデオ・シーケンスにおいては以下の制約により符号化されていなければならない。
・ビデオ・シーケンス内の全てのピクチャが同じタイル分割を使用して符号化する。
・MCTSの符号化においては当該タイルセット外の参照画素を必要とする動きベクトルを使用して符号化しない。
符号化ストリームの復号において、このMCTS SEIメッセージが符号化ストリームに含まれている場合、連続するピクチャからMCTSとして指定されたタイルセットのみを抽出して部分動画として高速に復号・再生することができる。MCTSを用いることで、例えばユーザの注目領域のみを高速に復号するROI(Region of interest)を実現することができる。
一方、H.264の動画データを格納するメディアファイルフォーマットとして、AVCファイルフォーマット(非特許文献2を参照)が広く使用されている。HEVCについてもAVCファイルフォーマットと同等のメディアファイルフォーマットが使用されることが見込まれている。
JCT−VC 寄書 JCTVC−I1003_d4.doc インターネット< http://phenix.int−evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/ > ISO/IEC 14496−15 Advanced Video Coding (AVC) file format ISO/IEC 14496−12 ISO base media file format JCT−VC 寄書 JCTVC−M0235−v3.doc インターネット< http://phenix.int−evry.fr/jct/doc_end_user/documents/13_Incheon/wg11/ >
水平4096画素×垂直2048画素(以下、4096×2048画素と表記する)のように解像度が大きい1枚以上のピクチャ群から構成される動画を、小さい解像度の端末で再生する際には、一部の領域のみを抽出し、再生できることが望ましい。例えば、ピクチャ中に何人もいるシーンにおいて、ある特定の人物の顔を拡大して表示するユースケースである。このようなユースケースにおいて、動画中のピクチャ全体を復号してから一部の領域を抽出して表示する際には、復号時間(表示までの遅延時間)が長く消費電力も大きい。よって、一部の領域を抽出して再生する場合には、各ピクチャをタイル分割して符号化し、再生時には特定のタイルのみ復号して再生できることが、表示までの遅延時間及び消費電力の観点から望ましい。
非特許文献2記載のAVCファイルフォーマットにおいては、各ピクチャ符号化データ(非特許文献2ではサンプルデータ)はスライスの符号化データを単位として格納するファイルフォーマットである。各スライスの符号化データにNALヘッダと呼ばれる1バイトのデータを付加することでNALユニットデータとする。NALとはネットワーク抽象化レイヤの略であり、非特許文献1中7.4.1節に詳細が記載されているため説明は省略する。各NALユニットデータの前には各NALユニットデータが何バイトのデータであるかのNALユニットデータ長が付加される。よって、AVCファイルフォーマットに則って生成されたメディアファイルを再生するプログラムは、各スライスを復号することなく、ピクチャ内の任意のスライスの符号化データに、符号化データを復号することなくアクセスすることが可能である。
HEVCにおいて、1スライス内に複数タイルが含まれるスライス分割及びタイル分割で符号化されている場合、タイルの復号に必要な符号化パラメータは、各タイルが属するスライスのスライスヘッダに含まれている。よって、スライス内の一部のタイルのみ復号する場合にも、当該スライスのスライスヘッダを復号する必要がある。
HEVCにおいて、タイルの水平・垂直画素数は非特許文献1中7.4.2.3節記載のピクチャ・パラメータ・セット(以下、PPSと表記する)内の符号化パラメータから算出することが可能である。例えば、垂直タイル数から1を引いた数を示すパラメータ(num_tile_columns_minus1)、水平タイル数から1を引いた数を示すパラメータ(num_tile_rows_minus1)及び非特許文献1に記載のシーケンス・パラメータ・セット(以下、SPSと表記する)内のピクチャの水平・垂直画素数から、各タイルの水平・垂直画素数を算出することが可能である。
しかしながら、各スライスの水平・垂直画素数は前記SPSやPPSには含まれておらず、当該スライスを復号することでのみ、各スライスの水平・垂直画素数を得ることが可能である。
すなわち、ピクチャ内の特定のタイルを抽出して復号する際に、スライスを復号せずに対象とするタイルが何番目のスライスに含まれているかを知ることはできない。よってピクチャ全体を復号する必要があり、復号時間の長時間化及び消費電力の増大を招くという課題があった。
また、HEVCにおいては1タイル内に複数スライスが含まれるスライス分割及びタイル分割でも各ピクチャを符号化することも可能である。しかしながら、前記同様にスライスを復号せずに各タイルを復号するために何番目のスライスを復号すればよいかは知ることができない。よって同様にピクチャ全体を復号する必要があり、復号時間の長時間化及び消費電力の増大を招くという課題があった。
本願発明は上記課題を鑑みて提案されたものであり、ピクチャ内の特定のタイルを抽出して復号し、表示する際の処理の高速化及び省電力化、さらにはメモリ使用量を削減することを目的とする。
上述の問題点を解決するため、本願発明のファイル生成方法は以下の構成を有する。すなわち、ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、前記スライスが複数のタイルを含んでいる場合、前記生成工程において、前記複数のタイルが属するスライスがピクチャ内の何番目のスライスかを示す情報を含む前記ファイルを生成する。
また、上述の問題点を解決するため、本願発明のファイル生成方法は以下の構成を有する。すなわち、ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、前記スライスが複数のタイルを含んでいる場合、前記生成工程において、前記スライス内の先頭のタイルがピクチャ内の何番目のタイルかを示す情報を含む前記ファイルを生成する
た、上述の問題点を解決するため、本願発明のファイル生成方法は以下の構成を有する。すなわち、ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、前記タイルが複数のスライスを含んでいる場合、前記生成工程において、前記タイルに含まれるスライスの数を示す情報を含む前記ファイルを生成する。
本願発明に係るメディアファイルフォーマットによれば、復号対象タイルを含まないスライスの符号化データを復号することなく、タイルの符号化データにアクセスすることが可能である。よって、特定のタイルのみ復号して表示・再生する場合に、復号時間短縮及び省電力化を実現することができる。またピクチャ全体の復号に必要なメモリを使用する必要が無いため、メモリ使用量を削減することが可能になる。
実施形態1のメディアファイルフォーマットを示す図 実施形態1のタイル分割及びスライス分割の例を示す図 実施形態1のスライスインデックスBoxを示す図 実施形態1の各スライスを符号化処理のフローチャートを示す図 実施形態1のメディアファイルの生成処理のフローチャートを示す図 実施形態1のメディアファイルから特定のタイルのみを抽出して再生するユースケースを示す図 実施形態1のメディアファイルから特定のタイルのみを抽出して再生する処理のフローチャートを示す図 実施形態2のメディアファイルフォーマットを示す図 実施形態2のタイルインデックスBoxを示す図 実施形態3のメディアファイルフォーマットを示す図 実施形態3のタイルオフセットBoxを示す図 実施形態4のメディアファイルフォーマットを示す図 実施形態4のタイル分割及びスライス分割の例を示す図 実施形態4のタイル内スライス数Boxを示す図 実施形態4の各スライスを符号化するフローチャートを示す図 実施形態4のメディアファイルの生成処理のフローチャートを示す図 実施形態4のメディアファイルから特定のタイルのみを抽出して再生する処理のフローチャートを示す図 実施形態5のメディアファイルフォーマットを示す図 実施形態5のタイルオフセットBoxを示す図 本発明のメディアファイル生成方法に適用可能なコンピュータのハードウェアの構成例を示すブロック図 実施形態6のMCTSとして符号化するタイルセットを示す図 実施形態6のメディアファイルフォーマットを示す図 実施形態6のMCTSスライスインデックスBoxを示す図 実施形態6のメディアファイルから特定のタイルのみを抽出して再生する処理のフローチャートを示す図 実施形態7のMCTSスライスインデックスBoxを示す図 実施形態8のメディアファイルフォーマットを示す図 実施形態8のROIタイルセットBoxを示す図 実施形態9のメディアファイルフォーマットを示す図 実施形態9のROIタイルインデックスBoxを示す図 実施形態10の各タイルセットの有効サンプルを示す図 実施形態10のメディアファイルフォーマットを示す図 実施形態10のROI有効サンプルBoxを示す図
以下、添付の図面を参照して、本願発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本願発明は図示された構成に限定されるものではない。
<実施形態1>
本願発明の実施形態1における符号化データを格納するメディアファイルのフォーマットを図1に示す。本実施形態は1スライスに複数の矩形状のタイルが含まれるスライス分割及びタイル分割で符号化が行われる場合に適用することが可能な実施形態である。
図1に示されるように、本実施形態におけるメディアファイルフォーマットはAVCファイルフォーマットと同様にファイルタイプBox100、ムービーBox101、メディアデータBox110から構成される。このBoxとは各種データの種類を示す識別子及びデータサイズを付加して、データを格納するデータタイプである。詳細は非特許文献3中の6.2節に記載されているので、さらなる説明は省略する。
ファイルタイプBox100(図1においてはftypと表記)は、メディアファイルが準拠しているフォーマットを示す情報である。HEVC符号化データ向けのファイルフォーマットに準拠していれば識別子として、例えばhvc1、hev1もしくはhvcC等の文字列がファイルタイプBox100に格納される。
メディアデータBox110はピクチャや音声の符号化データそのものを格納しており、非特許文献2中の5.3.4.2節に示すように、ピクチャ群の符号化データは、1ピクチャに相当するサンプルデータ111という単位で分割されて格納されている。サンプルデータ111内部には前述のように各スライスに相当する符号化データがNALユニットデータ113として、NALユニットのデータ長112とセットで格納される。
ムービーBox101(図1においてはmoovと表記)は、メディアデータBox110を復号や表示等を行うための情報を格納するBoxであり、サンプルテーブルBox102(図1においてはstblと表記)等を格納することが可能である。通常ムービーBox101とサンプルテーブルBox102の間には複数のBoxが階層的に位置しているが、本願発明との関連が少なく、かつ詳細が非特許文献3中の6.2.3節に記載されているため、中間階層のBoxについての説明は省略する。
サンプルテーブルBox102の中にはサンプルサイズBox103、HEVCコンフィグレーションBox104、スライスインデックスBox105が格納される。通常他に多くのBoxデータが格納されるが、本願発明との関連が少ないため図1に図示しておらず、記述も省略する。サンプルサイズBox103(図1においてはstszと表記)にはメディアデータBox110内の各サンプルデータ111のデータ長が動画中の全サンプル分含まれている。HEVCコンフィグレーションBox104(図1においてはhvcCと表記)にはメディアデータBox110内の各サンプルデータ111を復号するための、前記SPS、PPSに相当するヘッダ情報が含まれている。スライスインデックスBox105(図1においてはsidxと表記)については後述する。
本ファイルフォーマットによれば、前記サンプルサイズBox103等を使用して各サンプルデータ111へ高速にアクセスすることができ、早送り等や逆再生等の特殊再生を容易に実現することが可能となっている。
なお、ファイルタイプBox100、ムービーBox101、メディアデータBox110の格納順序は図1の構成に限定されない。例えばファイルタイプBox100、メディアデータBox110、ムービーBox101の順に、メディアファイルに格納することも可能である。
図2に、本実施形態において動画中の各ピクチャの符号化に使用するスライス分割及びタイル分割を示す。図示されるように、4096×2048画素の各ピクチャは、4つの4096×512画素分のスライスに分割されている。符号化時には各スライス内の全画素の符号化が完了後、スライス終端フラグを1として符号化することにより、スライスの終了であること示す。このスライス終端フラグとは非特許文献1中の7.4.4節に記載されている、HEVCにおけるend_of_slice_flagである。
復号時には復号したスライス終端フラグが1になっていることにより、メディア再生処理中の復号処理はスライス境界を検出することが可能である。
図2において、各スライスは内部で4つのタイルに分割されており、各タイルは1024×512画素に相当する。HEVCにおいて、符号化処理は前記PPS中の符号化パラメータを、例えば下記の通り設定することにより各タイルの大きさを図2のように設定することが可能である。なお、下記はHEVCにおいてコーディングツリーブロックと呼ばれる符号化単位が、64×64画素であることを仮定している。
・tiles_or_entropy_coding_sync_idc=1
(ピクチャがタイル分割されているか否か、及び複数のコーディングツリーブロック行を並列処理するか否かを示す符号化パラメータである。1を設定することによりタイル分割を用いることを示す。)
・num_tile_columns_minus1=3
(ピクチャ内の(水平方向タイル分割数−1)を示す符号化パラメータである。3を設定することにより、ピクチャが水平方向に4タイルに分割されていることを示す。)
・num_tile_rows_minus1=3
(ピクチャ内の(垂直方向タイル分割数−1)を示す符号化パラメータである。3を設定することにより、ピクチャが垂直方向に4タイルに分割されていることを示す。)
・uniform_spacing_idc=0
(ピクチャ内で各タイルの水平・垂直画素数を明示的に与えるか否かを示す。本符号化パラメータとして0が設定された場合には、前記num_tile_columns_minus1、num_tile_rows_minus1で与えられた水平・垂直タイル分割数に応じてピクチャ内で各タイルを均一に分割する。一方、本符号化パラメータとして1が設定された場合には各タイルの水平・垂直画素数が下記column_width[i]、row_height[i]により明示的に与えられることを示す。なお、本符号化パラメータとして1が設定された場合にもピクチャ内で各タイルを均一に分割することも可能である。)
・column_width[i]=16(i=0,1,2,3)
(各タイルの水平画素数をコーディングツリーブロックの水平画素数に基づいて示す符号化パラメータである。)
・row_height[i]=8(i=0,1,2,3)
(各タイルの垂直画素数をコーディングツリーブロックの垂直画素数に基づいて示す符号化パラメータである。)
また上記パラメータ設定以外にも、uniform_spacing_idc=1としてピクチャ内で各タイルを均一に分割することにより、図2のタイル分割を指定することが可能である。復号処理はPPSに含まれる上記符号化パラメータを解析することによって、各タイルの大きさを得ることが可能である。
本実施形態においては、上記タイルとスライスの対応関係を示すために、各タイルの符号化データがピクチャ中の何番目のスライスの符号化データ(NALユニットデータ)に属しているかを示すために、図1のスライスインデックスBox105を使用する。
図3(a)に本実施形態におけるスライスインデックスBox105の内部フォーマットを示す。スライスインデックスBox105先頭にはBox全体のデータ長をバイト単位で示すBoxサイズが4バイトで挿入される。本実施形態のスライスインデックスBox105において、Box全体のデータ長は、(4バイト+4バイト+2バイト+エントリ数×2バイト)により与えられる。
Boxサイズに続いて、Box種類を示す識別子が4バイトで挿入される。本実施形態のスライスインデックスBox105においては、識別子として“sidx”(Slice Index)の文字列を使用する。
Box種類に続いて、データ本体がいくつ格納されているかを示す、エントリ数が2バイトで挿入される。本実施形態のスライスインデックスBox105において、エントリ数は(ピクチャ内のタイル数−1)に等しい。エントリ数に続いてスライスインデックスBox105のデータ本体である各タイルのスライスインデックスが各2バイトで、エントリ数分だけ挿入される。
このスライスインデックスは、ピクチャ中の各タイルが何番目のスライスに属しているか示す情報であり、このスライスインデックスを用いることにより特定のタイルの符号化データに高速にアクセスすることが可能である。スライスインデックスは、タイルの符号化順番(左上→右上→左下→右下)と同じ順番で格納される。
符号化順で1番目のタイル(タイル1)は、ピクチャ内の符号化順で1番目のスライス(スライス1)に含まれることが自明であるため、スライスインデックスは挿入されない。2番目以降のタイルについて、各タイルがスライス2に含まれるならばスライスインデックスとして1が、スライス3に含まれるならば2がスライスインデックスとして格納される。ピクチャ内のスライス数がN個の場合には、スライスインデックスの内容として0〜(N−1)のいずれかが使用される。
図3(b)に、図2のスライス分割及びタイル分割タイルに対応するスライスインデックスBox105の内容を示す。図2においてタイル数は16であるため、エントリ数は15、データサイズは 4+4+2+2×15=40バイトである。
エントリ数に続いて、タイル2からタイル16の各タイルのスライスインデックスが挿入される。図2に図示されるように、タイル2からタイル4はスライス1に含まれるため、タイル2からタイル4までのスライスインデックスとして0が格納される。また、タイル13からタイル16はスライス4に含まれるため、対応するスライスインデックスとして3が格納される。
上記スライスインデックスBox105は、前記サンプルテーブルBox102中に格納されることを基本とするが、本願発明はこれに限定されない。ムービーBox101中のいずれのBoxに格納されることも可能である。
図2の例のように、1スライスの中に複数タイルが含まれるスライス分割及びタイル分割を用いて符号化を行い、図1に示した本実施形態のメディアファイルを生成する手順を、図4及び図5のフローチャートを用いて示す。
図4は、ピクチャ中の各スライスを符号化する手順を示したフローチャートである。ステップS401において、スライスの符号化で使用する符号化パラメータを外部(ユーザー)から設定する。なお、スライス分割及びタイル分割を決定するパラメータは後述する図5のステップS502で与えられ、本ステップで与えられる符号化パラメータはスライス分割及びタイル分割に影響を与えない。
ステップS402において、スライス内の前記コーディングツリーブロックの符号化処理を行う。このコーディングツリーブロックとは、HEVCでは64×64画素〜16×16画素の間で大きさが可変の画素ブロックである。各コーディングツリーブロックの符号化処理順序はスライス分割及びタイル分割に依存するが、非特許文献1中の6.5.1節に記載されているので説明は省略する。
また、本願発明において各コーディングツリーブロックの符号化は特定の符号化アルゴリズムに依存せず、既存のいかなる符号化アルゴリズムも使用することが可能であるため説明を省略する。ステップS403において、各コーディングツリーブロックの符号化完了時に、1タイルの符号化処理が完了したか否かを判断する。1タイルの符号化が完了していればステップS404に進み、完了していなければステップS407に進む。
ステップS404において、1タイルの符号化の完了を受け、スライスインデックスBox105生成に必要なスライスインデックスを生成する。本実施形態においては、符号化したタイルが何番目のスライスに属しているかの情報から、このスライスインデックスを算出する。ステップS404においてはまた、各タイルを符号化した結果、何バイトの符号化データになったかの符号化データ長を算出する。
ステップS405において、1スライスの符号化処理が完了したか否かを判断する。1スライスの符号化が完了していればステップS406に進み、完了していなければステップS407に進む。ステップS406において、1スライスの符号化が完了したことを示すスライス終端フラグとして1を符号化し、ステップS408に進む。ステップS407において、スライスの符号化が完了していないことからスライス終端フラグとして0を符号化し、後続のコーディングツリーブロックを符号化すべくステップS402に戻る。
ステップS408において、ステップS404で算出した各タイルの符号化データ長から、HEVCのスライスヘッダに含まれる符号化パラメータであるエントリポイントオフセット(entry_point_offset)を算出する。非特許文献1記載のように、1番目のエントリポイントオフセットはスライスヘッダ直後から、2番目のタイルの符号化データ先頭までのオフセットを示す。2番目のエントリポイントオフセットは2番目のタイルの符号化データ先頭から3番目のタイルの符号化データ先頭までのオフセットのようにエントリポイントオフセットを使用して各タイルの符号化データへアクセスできる。このエントリポイントオフセットと、ステップS401で設定されたスライスの符号化で使用した符号化パラメータとから、ステップS408においてスライスヘッダを生成及び符号化し、1スライスの符号化データ生成を完了する。
図5は本実施形態のメディアファイルを生成するメディアファイル生成の手順を示したフローチャートである。
ステップS501において、画像サイズや色差フォーマット等の基本的なパラメータが外部(ユーザー)より設定され、対応する符号化パラメータセットであるSPSが生成される。生成されたSPSはNALヘッダが付加され、NALユニットデータ化される。
ステップS502において、各ピクチャをどのようにスライス分割及びタイル分割するかが外部(ユーザー)から設定され、量子化パラメータ等と共に、対応する符号化パラメータセットであるPPSを生成する。生成されたPPSはNALヘッダが付加され、NALユニットデータ化される。なお、2ピクチャ目以降において、スライス分割及びタイル分割が前のピクチャと同じ場合には、本ステップにおけるスライス分割及びタイル分割の設定はスキップされる。
ステップS503において、図4のフローチャートで示した各スライスの符号化を行う。ステップS504において、ステップS503で生成されたスライスの符号化データにNALヘッダを付加してNALユニットデータ化される。また、図4のステップS404で算出した各タイル符号化データのデータ長及びスライスヘッダのデータ長を加算し、さらにNALヘッダ分の1バイトを加算することで、NALユニットデータの符号データ長(バイト数)を算出する。
ステップS505において、1ピクチャの符号化が完了したか否かを判断する。1ピクチャの符号化が完了していればステップS506に進み、完了していなければ後続のスライスを符号化すべくステップS503に戻る。ステップS506において、スライス符号化データを格納するNALユニットデータおよびそのデータ長を、1ピクチャ分多重化して1サンプルデータ111として生成する。ステップS507において、図4のステップS404で生成したスライスインデックスを集め、図3に示したスライスインデックスBox105を生成する。
動画1シーケンス中の全ピクチャにおいて、図2のスライス分割及びタイル分割が使用される場合にはスライスインデックスBox105は1シーケンスに1つのみ存在するため、2ピクチャ目以降の処理においては、本ステップはスキップされる。一方、1シーケンスの途中のピクチャにおいて図2と異なるスライス分割及びタイル分割に変更することも可能である。その場合には、スライス分割及びタイル分割が変更されるピクチャのステップS507において、スライスインデックスBox105を追加で挿入してもよいし、既存のスライスインデックスBox105にエントリを追加してもよい。
ステップS508において、符号化対象となる全てのピクチャの符号化が完了したか否かを判断する。全ピクチャの符号化が完了していればステップS509に進み、完了していなければ後続のピクチャを符号化すべくステップS502に戻る。
ステップS509において、ステップS501及びステップS502で生成された符号化パラメータセットであるSPS、PPSのNALユニットデータをHEVCコンフィギュレーションBox104に格納する。HEVCコンフィグレーションBox104へのSPS、PPS格納については、非特許文献2中の5.2.4.1節に記載されている、AVCコンフィグレーションBoxへのSPS、PPS格納と同じ内容で実現可能であるため、説明は省略する。
ステップS510において、ステップS506で生成されたサンプルデータ111のデータ長からサンプルサイズBox103を生成する。生成されたサンプルサイズBox103、ステップS507で生成されたスライスインデックスBox105及びステップS509で生成したHEVCコンフィグレーションBox104を多重化してサンプルテーブルBox102を生成する。ステップS511において、ファイルタイプBox100、サンプルテーブルBox102を含むムービーBox101、及びサンプルデータ111を格納したメディアデータBox110をメディアファイルに多重化し、メディアファイル生成を完了する。
本実施形態におけるメディアファイルの再生ユースケースのイメージを図6に示す。図6は、図2のスライス分割及びタイル分割を用いて符号化された符号化データから、タイル10、11、14、15のみを抽出して表示・再生するユースケースを示している。本実施形態のメディアファイルフォーマットに則って生成されたメディアファイルから、図6のように特定のタイルのみを抽出して復号し、部分再生するメディアファイル再生の手順を、図7のフローチャートを用いて示す。
ステップS701において、読み込んだメディアファイル中、サンプルテーブルBox102に格納されているHEVCコンフィグレーションBox104を解析し、SPS及びPPSを抽出する。
ステップS702において、外部(ユーザー)から復号対象タイル(表示すべきタイル)を復号タイル情報として設定する。この復号対象タイルは、動画に付属するサムネイル等に従ってユーザが任意のタイルを選択することが可能である。
ステップS703において、サンプルテーブルBox102に格納されている、スライスインデックスBox105を解析する。スライスインデックスBox105中のスライスインデックスと、ステップS702で設定された復号タイル情報とを照らし合わせることにより、復号するスライスを算出する。例えば、図6のようにタイル10、11、14,15が復号タイル情報として設定されると、図3(b)に示すスライスインデックスにより、復号するスライスはスライス3及びスライス4である。
ステップS704において、復号対象ピクチャの符号化データが含まれているサンプルデータ111から、ステップS703において算出された復号するスライスが含まれているNALユニットデータを読み込む。なお、動画シーケンスの先頭から通常再生をする場合にはサンプルサイズBOX103の解析は不要であるが、動画シーケンスの途中から再生する場合はサンプルサイズBOX103を解析し、復号対象ピクチャのサンプルデータ111を読み込む。
復号するスライスには、サンプルデータ111中の各NALユニットデータの前に付加されているNALユニットのデータ長を用いることにより、高速にアクセスすることが可能である。例えば、スライス3が含まれるNALユニットデータにアクセスする場合、まずスライス1のNALユニットデータの前に付加されている符号データ長に基づいてスライス1をスキップする。同様にスライス2が含まれるNALユニットデータをスキップすることにより、スライス3の符号データが含まれるNALユニットデータの先頭に高速にアクセスすることが可能である。
ステップS705において、復号対象のタイルが含まれているスライスのスライスヘッダを解析して、タイルの復号で使用する符号化パラメータを復号する。スライスヘッダには各スライスのピクチャ内における位置を示す非特許文献1に記載のslice_segment_addressが格納されている。各スライスのピクチャ内における位置と、ステップS701で解析されたPPS中のタイル分割の情報を照らし合わせ、当該スライス符号化データとタイルの対応関係を算出し、スライス中の何番目のタイルが復号の対象であるかを算出することができる。例えば図2においては、スライス3の開始位置がタイル9に対応していることが算出可能であり、図6のケースにおいてはスライス3の2番目のタイル(タイル10)が復号対象であることがわかる。また、スライスヘッダに含まれている、各タイルの符号化データにアクセスするためのオフセットである前記エントリポイントオフセットを復号する。
ステップS706において、ステップS705で復号されたエントリポイントオフセットに基づいて、復号タイル情報中のタイルの符号化データを読み込み、復号を行う。タイル内の復号は一般的なコーディングツリーブロック単位の復号であるため説明は省略する。
ステップS707において、スライス中の復号対象のタイルが全て復号されたか否かを判断する。例えば図6のケースにおいては、スライス3,4はそれぞれ2個のタイルを復号する必要がある。復号対象のタイルが全て復号された場合にはステップS708に進み、復号対象の全てのタイルが復号されていない場合にはステップS706に戻り後続のタイルを復号する。
ステップS708において、復号対象タイルが含まれる全てのスライスの処理が完了したか否かを判断する。例えば図6のケースにおいては、スライス3とスライス4の両スライスの処理を行う必要がある。復号対象タイルを含む全スライスの処理が完了した(図6のケースではスライス4まで処理が終わった)場合にはステップS709に進み、完了していない場合にはステップS704に戻り後続のスライスを復号する。
ステップS709において、ステップS706で復号された全てのタイルを出力する。ステップS710において、メディアファイル中の全再生対象ピクチャの復号が完了したか否かを判断する。全再生対象ピクチャの処理が完了した場合には復号処理を完了し、再生すべきピクチャが残っている場合にはステップS701に戻り、後続のピクチャに対するPPSの解析及び復号を行う。なお、後続のピクチャの処理において復号タイル情報、スライス分割及びタイル分割に変更が無い場合には、ステップS702及びステップS703はスキップする。ここで、スライス分割及びタイル分割に変更が無い場合とは、スライスインデックスBOXが一つのみ含まれており、かつ1ピクチャ目の処理時に全スライスインデックスBOX中の全スライスインデックスが使用された場合を示す。
なお、ステップS701にはPPSが含まれているため、各ピクチャで解析を行うことが望ましい。
図7は、通常再生についてのフローチャートを示したものであるが、ステップS701からステップS704までのピクチャ単位での制御を適切に変更することにより、早送り再生等の特殊再生に対応することも容易に可能である。
上記のようにスライスインデックスBox105を使用することによって、特定のタイルのみを抽出して復号・表示する際に、スライスヘッダと復号対象タイルのみを復号すれば良い。動画の復号においては処理の大半がコーディングツリーブロックの復号に費やされるため、ピクチャもしくはスライス全体を復号する場合に比べ、大幅な復号の高速化及び省電力化を実現することが可能になる。例えば図6のユースケースにおいて、ピクチャ全体を復号する場合に比べ、ピクチャの大きさの1/4に過ぎない復号対象タイルのみを復号することにより、復号にかかる復号時間を1/3程度に短縮できることが見込まれる。また、本実施形態の方法をプログラムとして実行する場合には、CPUで処理される消費電力を1/3程度まで低減できることが見込まれる。
本実施形態のさらなる効果として、本実施形態のスライスインデックスBox105(sidx)が存在することにより、メディアファイルの再生は、タイルサイズがスライスサイズよりも小さいことを認識することができる。各タイルは独立に復号可能であるため、特定のタイルのみを表示・再生するユースケースに限らず、ピクチャ全体を復号するユースケースにおいても使用するメモリ使用量を削減することができる。タイルとスライスの大小関係が把握できているため、1スライス全体に対応するメモリを使用する代わりに、1タイルに対応するメモリだけを使用する。各タイルで同じメモリ領域を共有して順次各タイルを復号することにより、復号時のメモリ使用量を削減することが可能である。
なお、スライスインデックスBox105内の各データのデータ長、スライス分割やタイル分割、スライスインデックスBox105の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。
本実施形態の説明において、動画において特定のタイルを抽出し再生する例について説明したが、本願発明はこれに限定されない。例えば、HEVCで1枚の静止画を符号化し、メディアファイルに格納する場合にも有効であるし、複数ピクチャから静止画を合成するようなユースケースにおいて、特定のタイルのみを抽出する場合に対しても有効である。
<実施形態2>
本願発明の実施形態2は、実施形態1と同様に、1スライスに複数タイルが含まれるスライス分割及びタイル分割で符号化が行われる場合の実施形態である。
図8に、本実施形態におけるメディアファイルフォーマットを示す。なお図8において、図1と同じ内容を示すBox及びデータについては、図1と同じ符号を付加し説明は省略する。図示されるように、図1のスライスインデックスBox105の代わりにタイルインデックスBox801が、サンプルテーブルBox102に格納される。
タイルインデックスBox801のフォーマット及び例を図9に示す。なお、スライス分割及びタイル分割の例として図2を参照する。図9(a)に示すように、本実施形態のタイルインデックスBox801においては、各スライス内の先頭タイルのタイルインデックス(各ピクチャで何番目のタイルか)をスライスの符号化順番で格納する。符号化順で1番目のスライス(スライス1)の先頭は、符号化順で1番目のタイル(タイル1)を含むことは自明であるため、スライス1に対するタイルインデックスは挿入されない。スライス2の先頭は図2に示されるように5番目のタイルであるため、タイルインデックスとして4が格納される。後続のスライスについても同様に、先頭タイルのタイルインデックスを格納する。ピクチャ内のタイル数がM個の場合には、タイルインデックスとして1〜(M−1)のいずれかが使用される。
なお、本タイルインデックスBox801においては、識別子としてtidx(Tile Index)の文字列を使用する。Boxサイズは実施形態1同様タイルインデックスBox全体のデータ長を格納し、エントリ数は(ピクチャ内のスライス数−1)に等しく、また各エントリのデータ長は2バイトとしている。
メディアファイルの生成についても、実施形態1のスライスインデックスBox105の代わりにタイルインデックスBox801を使用することで、図4及び図5で示した実施形態1と同じ手順を使用することが可能である。但し、図5のステップS507において、各スライスにつき1回、先頭タイルのタイルインデックスを生成し、タイルインデックスBox801に格納することが異なる。
特定のタイルのみ抽出して、部分再生するメディアファイル再生処理においても、実施形態1のスライスインデックスBox105の代わりにタイルインデックスBox801を使用することで、図7で示した実施形態1と同じ手順を使用することが可能である。但し、図7のステップS703において、(図7のステップS702で設定された)復号タイル情報とタイルインデックスBox801中に含まれているタイルインデックスを比較することが異なる。復号対象タイルのタイルインデックスがXである場合には、X以下で最大のタイルインデックスが格納されるエントリを検索する。当該エントリが何番目のエントリであるかより、復号対象タイルが含まれているスライスを特定可能である。
例えば、図9(b)のようなタイルインデックスBox801の内容で、タイル10(タイルインデックス=9)が含まれるスライスを探索するとする。図9(b)において、9以下で最大のタイルインデックスを有しているのは3番目のエントリの8である。よって、タイル10はスライス3に含まれることを、メディアファイルを再生する処理は特定することが可能である。実施形態1と同様にスライス3のスライスヘッダを解析後、タイル10の符号化データのみを復号することによって、タイル10のみの復号を高速に行うことができる。
このように、タイルインデックスBox801を使用しても、実施形態1と同じ効果を得ることが可能である。本実施形態も、実施形態1同様にタイルインデックスBox801内の各データのデータ長や内容、及びスライス分割やタイル分割は上記に限定されず、また静止画を格納するメディアファイルにも、同様に適用することが可能である。
<実施形態3>
本願発明の実施形態3は、実施形態1と同様に、1スライスに複数タイルが含まれるスライス分割及びタイル分割で符号化が行われる場合の実施形態である。
図10に、本実施形態におけるメディアファイルフォーマットを示す。なお図10において、図1と同じ内容を示すBox及びデータについては、図1と同じ符号を付加し説明は省略する。図示されるように、図1のスライスインデックスBox105の代わりにタイルオフセットBox1001が、サンプルテーブルBox102に格納される。
本実施形態におけるタイルオフセットBox1001のフォーマットを図11(a)に、例を図11(b)に示す。図11(a)に示すように、本実施形態のタイルオフセットBox1001は、各サンプルデータ111の先頭から、各タイルの符号化データ先頭までのオフセットをバイト単位で示した、タイルオフセットバイト数を格納する。ただしピクチャ先頭のタイルについては符号化データの位置が自明であるため、タイル1のタイルオフセットバイト数は格納しない。なお、本タイルオフセットBox1001においては、識別子としてtsob(Tile in Slice Offset Byte)の文字列を使用する。Boxサイズは上述の実施形態と同様にタイルオフセットBox1001全体のデータ長を格納し、エントリ数は(ピクチャ内のタイル数−1)に等しく、また各エントリのデータ長は4バイトとしている。
メディアファイル生成についても、実施形態1のスライスインデックスBox105の代わりにタイルオフセットBox1001を使用することで、図4及び図5で示した実施形態1と同じ手順を使用することが可能である。但し、図5のステップS507において、図5のステップS503のスライス符号化で発生した符号化データ長をタイル内及びピクチャ内で積算し、サンプルデータ111先頭から各タイルの符号化データ先頭までのオフセットをバイト単位で算出することが異なる。このタイルオフセットバイト数を、(ピクチャ内のタイル数―1)個集めて格納することにより、タイルオフセットBox1001を生成する。
なお、タイルオフセットBox1001にタイルオフセットバイト数を格納する場合には、タイル分割及びスライス分割が直前のピクチャと同じ場合でも、タイルオフセットバイト数は変化する。よって、図5のステップS507はスキップされず、タイルオフセットBox1001はピクチャ枚数分だけ挿入される(もしくはエントリ数がタイル数×ピクチャ枚数となる)。
特定のタイルのみ抽出して、部分再生するメディアファイル再生処理においても、実施形態1のスライスインデックスBox105の代わりにタイルオフセットBox1001を使用することで、図7で示した実施形態1と同じ手順を使用することが可能である。図7のステップS703においては、スライスインデックスBox105の代わりにタイルオフセットBox1001を解析すること。
ステップS704において、ステップS702で設定された復号タイル情報、ステップS703で解析したタイルオフセットバイト数及びサンプル中の各NALユニットデータのデータ長を照らし合わせることにより、復号対象タイルを特定することが可能である。ステップS705でスライスヘッダを解析後、ステップS706で前記タイルオフセットバイト数を使用してタイルの符号化データを読み込む。
このようにタイルオフセットBox1001に格納するデータとしてタイルオフセットバイト数を格納することにより、実施形態1と同じ効果を得つつ、より高速に復号対象タイルの符号化データへとアクセスし、復号時間を短縮することが可能になる。
本実施形態も、実施形態1同様にタイルオフセットBox1001内の各データのデータ長や内容、及びスライス分割やタイル分割は上記に限定されず、また静止画を格納するメディアファイルにも、同様に適用することが可能である。また、本実施形態においてはタイルオフセットバイト数として、サンプルデータ111先頭から各タイルの符号化データ先頭までのオフセットを使用したが、本実施形態はこれに限定されない。各タイルの符号化データ先頭から次のタイルの符号化データ先頭へのオフセット、もしくは各タイルが含まれるスライスの符号化データ先頭へのオフセットを使用することも可能である。
<実施形態4>
本願発明の実施形態4におけるメディアファイルフォーマットは、1タイルに複数スライスが含まれるスライス分割及びタイル分割で符号化が行われる場合に適用することが可能な実施形態である。
図12に、本実施形態におけるメディアファイルフォーマットを示す。なお図12において、図1と同じ内容を示すBox及びデータについては、図1と同じ符号を付加し説明は省略する。図示されるように、図1のスライスインデックスBox105の代わりにタイル内スライス数Box1201が、サンプルテーブルBox102に格納される。
また本実施形態図13に、本実施形態におけるスライス分割及びタイル分割の例を示す。本実施形態におけるタイル内スライス数Box1201のフォーマットを図14(a)に、例を図14(b)に示す。図14(a)に示すように、本実施形態のタイル内スライス数Box1201は、各タイルにスライスがいくつ含まれているかの、タイル内スライス数をデータ本体として格納する。なお、本タイル内スライス数Box1201においては、Box識別子としてnmsl(The Number of SLice In Tile)の文字列を使用する。Boxサイズは上述の実施形態と同様にタイル内スライス数Box1201全体のデータ長を格納し、エントリ数はピクチャ内のタイル数に等しく、また各エントリのデータ長は2バイトとしている。
図14(b)に、図13に示したスライス分割及びタイル分割に対応する、タイル内スライス数Box1201の例を示す。図13においてピクチャは4タイルに分割されているため、タイル内スライス数Box1201内のエントリ数は4である。タイル1及びタイル2は4スライスに分割されているため、図14(b)のタイル内スライス数として4が格納されている。一方、タイル3は2スライスに、タイル4は2スライスに分割されているため、タイル内スライス数はそれぞれ2が格納されている。
図13のように、1タイルの中に複数スライスが含まれるスライス分割及びタイル分割で符号化を行い、本実施形態のメディアファイルの生成手順を図15及び図16のフローチャートを用いて示す。図15は、各スライスを符号化する手順を示したフローチャートである。なお図15において、図4と同一の動作を行うステップは図4と同じ符号を付加し、説明は省略する。
ステップS1501においてはスライス内の全コーディングツリーブロックの符号化が完了したか否かを判断する。全コーディングツリーブロックの符号化が完了していれば図15のステップS406に進み、完了していなければ、スライス終端フラグを0として符号化し、後続のコーディングツリーブロックを符号化するために図15のステップS402に戻る。
図16は本実施形態のメディアファイルの生成手順を示したフローチャートである。なお、図16において図5と同一の動作を行うステップは図5と同じ符号を付加し、説明は省略する。
ステップS1601において、図15のフローチャートで示した各スライスの符号化を行う。ステップS1602において、タイル内の全スライスの符号化が完了したか否かを判断する。完了していればステップS1603に進み、完了していなければ後続のスライスを符号化するためにステップS1601に戻る。ステップS1603において、各タイルにおいて、いくつのスライスを符号化したかの情報から、タイル内スライス数を生成する。
ステップS1604において、ピクチャ内の全タイルの符号化が完了したか否かを判断する。完了していれば図16のステップS506に進み、完了していなければ後続のタイルを符号化するためにステップS1601に戻る。ステップS1605において、ステップS1603で生成した各タイルのタイル内スライス数を集約してタイル内スライス数Box1201を生成する。
ステップS1606において、図16のステップS506で生成されたサンプルデータ111のデータ長から図12のサンプルサイズBox103を生成する。生成されたサンプルサイズBox103、ステップS1605で生成されたタイル内スライス数Box1201及びHEVCコンフィグレーションBox104を多重化して、サンプルテーブルBox102を生成する。
本実施形態のメディアファイルフォーマットに則って生成されたメディアファイルから、特定のタイルのみを抽出して復号し、部分再生するメディアファイル再生手順を、図17のフローチャートを用いて示す。図17においては図13のタイル2のみが復号対象のタイルとして設定されたと仮定する。なお、図17において図7と同一の動作を行うステップは図7と同じ符号を付加し、説明は省略する。
ステップS1701において、図12のサンプルテーブルBox102中のタイル内スライス数Box1201を解析し、各タイルのタイル内スライス数を得る。ステップS1702において、ステップS1701で得られたタイル内スライス数から、復号対象タイルに含まれるNALユニットデータ(スライスの符号化データ)の読み込みを以下の手順により行う。
まず、復号対象タイルより符号化順で前のタイルに含まれるNALユニットデータを読み飛ばす。図14(b)によると、(タイル2より前の符号化順である)タイル1のタイル内スライス数は4であるため、4スライス分のNALユニットデータを読み飛ばす。このNALユニットデータの読み飛ばしは、各NALユニットデータに付加されているNALユニットデータ長を用いることにより容易に可能である。
次に復号対象タイルに含まれているNALユニットデータを読み込む。図14(b)によると、復号対象タイルであるタイル2のタイル内スライス数は4であるため、5番目から9番目までのNALユニットデータ(4スライス分の符号化データ)を読み込む。ステップS1703において、ステップS1702で読み込まれた、復号対象タイル内のスライスのスライスヘッダを解析して、スライスの復号で使用する符号化パラメータを復号する。ステップS1704において、ステップS1702で読み込まれたスライスの符号化データの復号を行う。スライスの復号は一般的なコーディングツリーブロック単位の復号であるため、説明は省略する。
ステップS1705において、復号対象タイル中のスライスが全て復号されたか否かを判断する。例えば図13においては、タイル2の復号のためにはスライス5からスライス8を復号する必要がある。復号対象のスライスが全て復号された場合には図17のステップS710に進み、復号されていない場合には図17のステップS1703に戻り後続のスライスを復号する。
上記のようにタイル内スライス数Box1201に格納するデータとして、タイル内スライス数を格納することにより、複数スライスが1タイルに含まれる場合にも高速に復号対象タイルの符号化データへとアクセスすることができる。前述のように、動画の復号においては処理の大半がコーディングツリーブロックの復号に費やされる。例えば図13のタイル2のみを表示するユースケースにおいて、ピクチャ全体を復号する場合に比べ、大きさでピクチャの1/4に過ぎないタイル2のみを復号することにより、復号にかかる復号時間を1/3程度に短縮できることが見込まれる。また、本実施形態の方法をプログラムとして実行する場合には、CPUで処理される消費電力を1/3程度まで低減できることが見込まれる。
本実施形態のさらなる効果として、本実施形態のタイル内スライス数Box1201(nmsl)が存在することにより、メディアファイルの再生は、タイルサイズがスライスサイズよりも大きいことを認識することができる。例えばHEVCの符号化データをマルチコアCPUで並列に復号する時に、複数スライスを並列に復号するか、もしくは複数タイルを並列に復号するかを、このタイルとスライスの大小関係により決定することが可能である。
なお、実施形態1のスライスインデックスBox105(sidx)が、本実施形態のタイル内スライス数Box1202(nmsl)と共存することも可能である。複数タイルが1スライスに含まれる場合には、タイル内スライス数Box1201の当該タイルについてのタイル内スライス数Boxが1か否かによって、複数タイルが1スライスに含まれることを検出することが可能である。一方、複数スライスが1タイルに含まれる場合にはスライスインデックスBox105内の各スライスインデックスが1か否かによって、複数スライスが1タイルに含まれることを検出することが可能である。
なお、タイル内スライス数Box1201内の各データのデータ長、スライス分割やタイル分割、タイル内スライス数Box1201の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。また静止画を格納するメディアファイルにも適用が可能である。またタイル内スライス数Box1201の格納位置として、前記PPSもしくはSPSのパラメータであるVUI(ビデオ表示情報)パラメータやSEIパラメータ(エンハンスメント補足情報)に格納することも可能である。
<実施形態5>
本願発明の実施形態5は、実施形態4と同様に、1タイルに複数スライスが含まれるスライス分割及びタイル分割で符号化が行われる場合の実施形態である。
図18に、本実施形態におけるメディアファイルフォーマットを示す。なお図18において、図1と同じ内容を示すBox及びデータについては、図1と同じ符号を付加し説明は省略する。図示されるように、図1のスライスインデックスBox105の代わりにタイルオフセットBox1801が、サンプルテーブルBox102に格納される。
本実施形態におけるタイルオフセットBox1801のフォーマットを図19(a)に、例を図19(b)に示す。図示されるように、本実施形態のタイルオフセットBox1801は各サンプルデータ111の先頭から、各タイルの先頭スライスを格納するNALユニットデータまでのオフセットをタイルオフセットバイト数として格納するフォーマットである。なお、本タイルオフセットBox1801においては、識別子としてstob(Slice in Tile Offset Byte)の文字列を使用する。Boxサイズは上述の実施形態と同様にタイルオフセットBox1801全体のデータ長を格納し、エントリ数はピクチャ内のタイル数に等しく、また各エントリのデータ長は4バイトとしている。
メディアファイルの生成については、実施形態4のタイル内スライス数Box1201の代わりにタイルオフセットBox1801を使用することで、図15及び図16で示した、実施形態4と同じ手順を使用することが可能である。但し、図16のステップS504の各スライスの符号化データに対応するNALユニットデータのデータ長を、タイル内で積算することによりタイルの符号化データ長が得られることが異なる。この各タイルの符号化データ長をピクチャ内で積算することにより、図16のステップS1603において、各タイルのタイルオフセットバイト数を算出することが可能である。このタイルオフセットバイト数を(自明である1番目のタイルを除く)ピクチャ内のタイル分だけ格納することによりタイルオフセットBox1801を生成することが可能である。
特定のタイルのみ抽出して、部分再生するメディアファイル再生処理においても、実施形態4のタイル内スライス数Box1201の代わりにタイルオフセットBox1801を使用することで、図17で示した実施形態4と同じ手順を使用することが可能である。ただし、ステップS1701で得られたタイルオフセットBox1801中のタイルオフセットバイト数を、ステップS1702で使用することで、復号対象タイルの先頭スライスに対応するNALユニットデータに直接アクセスすることができることが異なる。
実施形態4の構成では復号対象タイルより前のタイルについては、NALユニットデータのデータ長を用いて読み飛ばす必要があった。本実施形態のタイルオフセットバイト数を使用することにより、より高速に復号対象タイル先頭スライスのNALユニットデータに到達することが可能である。一方、タイル分割及びスライス分割が直前のピクチャと同じ場合でもタイルオフセットバイト数はピクチャ毎に変化する。よって、図17のステップS1701はスキップされず、タイルオフセットBox1801はピクチャ枚数に相当する個数だけ必ず挿入される(もしくはエントリ数が(タイル数−1)×ピクチャ枚数となる)。
このようにタイルオフセットBox1801に格納するデータとしてタイルオフセットバイト数を格納することにより、実施形態4と同じ効果を得つつ、より高速に復号対象タイルの符号化データへとアクセスし、復号時間を短縮することが可能になる。
本実施形態も、実施形態4同様にタイルオフセットBox1801内の各データのデータ長や内容、及びスライス分割やタイル分割は上記に限定されず、また静止画を格納するメディアファイルにも、同様に適用することが可能である。
また、本実施形態においてはタイルオフセットバイト数として、図18のサンプルデータ111先頭から、各タイルの先頭スライスに相当するNALユニットデータ先頭までのオフセットを使用したが、本実施形態はこれに限定されない。各タイルの先頭スライスに相当するNALユニットデータ先頭から、次のタイルの先頭スライスに相当するNALユニットデータまでのオフセットを使用することも可能である。またタイルオフセットBox1801の格納位置として、前記PPSもしくはSPSのパラメータであるVUI(ビデオ表示情報)パラメータやSEIパラメータ(エンハンスメント補足情報)に格納することも可能である。
<実施形態6>
本願発明の実施形態6は、MCTS SEIメッセージを使用し、ピクチャ群がMCTSのタイルセットを含んで符号化されている場合の実施形態である。非特許文献4に記載されているように、MCTSのタイルセットを用いて符号化されていると、復号においては連続するピクチャ内の特定のタイルセットのみを独立して復号し、部分動画として高速に表示することが可能である。ピクチャ内において、MCTSのタイルセットは複数使用することが可能であり、各タイルセットの識別子であるタイルセットID(非特許文献4におけるmcts_id)を用いて、部分動画として復号するタイルセットを特定することが可能である。
図2と同じスライス分割及びタイル分割に基づき、MCTSを使用して符号化した様子を図21に示す。本実施形態における各ピクチャは、タイル3、4、7、8の矩形タイル領域から構成される、タイルセットIDが0であるMCTSのタイルセットと、タイル10、11、14、15の矩形タイル領域から構成される、タイルセットIDが8であるMCTSのタイルセットを含む。
図22に、本実施形態におけるメディアファイルフォーマットを示す。なお図22において、図1と同じ内容を示すBox及びデータについては、図1と同じ符号を付加し説明は省略する。
また図22におけるメディアファイルは図21のMCTSに対応しており、タイルセット数と同じ2個のMCTSスライスインデックスBox2201がサンプルテーブルBox102に格納される。また、先頭のサンプルデータ111にはスライスの符号化データのNALユニットデータ113に加え、SEIメッセージに相当するNALユニットデータ2203及び当該NALユニットのデータ長2202がセットで格納される。
例えば、HEVC符号化処理は非特許文献4記載のMCTS SEIメッセージ中の符号化パラメータを下記の通り設定することにより、図21のようなMCTSのタイルセットを用いて符号化することが可能である。なおexact_sample_value_match_flagについては非特許文献4に記載され、本実施形態には影響しないため記述を省略する。
・num_sets_in_message_minus1=1
(SEIメッセージに格納される、MCTSとして符号化されるタイルセット数から1を減じた数である。1を設定することにより、図21においてタイルセット数が2であることを示す。)
1番目のタイルセットである図21の右上のタイルセットについて、以下のようにMCTS SEIメッセージ中のパラメータを設定する。
・mcts_id=0
(ピクチャ内で複数定義することが可能なタイルセットを識別する、タイルセットIDである。0〜255の任意の値を設定することが可能である。例えば0を設定することにより、図21における1番目のタイルセットIDが0であることを示す。)
・num_tile_rects_in_set_minus1=0
(各タイルセットは複数のタイルから構成される矩形領域である矩形タイル群を複数包含することが可能であり、本シンタックスは各タイルセットに含まれる矩形タイル群数から1を減じた数である。0を設定することによって図21における1番目のタイルセットを構成する、矩形タイル群数が1であることを示す。)
・top_left_tile_index[0][0]=2
(矩形タイル群内の左上に位置するタイルのインデックスである。2を設定することによって図21のタイル3が、1番目のタイルセットを構成する矩形タイル領域の左上に位置することを示す。)
・bottom_right_tile_index[0][0]=7
(矩形タイル群内の右下に位置するタイルのインデックスである。7を設定することによって図21のタイル8が、1番目のタイルセットを構成する矩形タイル群の右下に位置することを示す。)
同様に、2番目のタイルセットとして、図21の下部のタイルセットを以下のように設定する。
・mcts_id=8
・num_tile_rects_in_set_minus1=0
・top_left_tile_index[1][0]=9
・bottom_right_tile_index[1][0]=14
上記MCTSとして指定されたタイルセットの符号化データが、ピクチャ内のどのスライスの符号化データに含まれるかを示す情報が、本実施形態における図22のMCTSスライスインデックスBox2201である。MCTSスライスインデックスBox2201のフォーマット及び例を図23に示す。
図23(a)に本実施形態におけるMCTSスライスインデックスBox2201の内部フォーマットを示す。MCTSスライスインデックスBox2201先頭にはBox全体のデータ長をバイト単位で示すBoxサイズが4バイトで挿入される。本実施形態のMCTSスライスインデックスBox2201において、Box全体のデータ長は、(4バイト+4バイト+4バイト+2バイト+エントリ数×2バイト)により与えられる。Boxサイズに続いて、Box種類を示す識別子が4バイトで挿入される。本実施形態のMCTSスライスインデックスBox2201においては、識別子として“mtsi”(Motion constrained Tile set Slice Index)の文字列を使用する。
Box種類に続いて、当該MCTSスライスインデックスBox2201が対象とするタイルセットIDが4バイトで挿入される。前述のように、HEVC符号化ストリームに格納されるSEIメッセージにおいては、各ピクチャ内に複数存在が可能なタイルセットそれぞれにタイルセットIDを設定することが可能である。MCTSスライスインデックスBox2201内のタイルセットIDを使用し、スライスインデックスを示す対象となるタイルセットを特定することが可能である。
タイルセットIDに続いて、データ本体がいくつ格納されているかを示す、エントリ数が2バイトで挿入される。本実施形態のMCTSスライスインデックスBox2201において、エントリ数は対象タイルセットの復号に必要なスライス数に等しい。
エントリ数に続いて、MCTSスライスインデックスBox2201のデータ本体である、対象タイルセットの復号に必要な各スライスのスライスインデックスが各2バイトで、エントリ数分だけ挿入される。
図23(b)に、図21においてタイルセットIDが8であるタイルセットに対応するMCTSスライスインデックスBox2201の内容を示す。図21においてタイルセットを構成するスライス数は2であるため、エントリ数は2、データサイズは4+4+4+2+2×2=18バイトである。
エントリ数に続いて、タイルセットの復号に必要なスライスのスライスインデックスが挿入される。図21に図示されるように、タイルセットIDが8であるタイルセットの復号にはスライス3、スライス4の2スライスが必要であるため、スライスインデックスとして2、3が格納される。
上記MCTSスライスインデックスBox2201は、前記サンプルテーブルBox102中に格納されることを基本とするが、本願発明はこれに限定されない。ムービーBox101中のいずれのBoxに格納されることも可能である。
メディアファイルの生成についても、実施形態1のスライスインデックスBox105の代わりにMCTSスライスインデックスBox2201を使用することで、図4及び図5で示した実施形態1と同様の手順を使用することが可能である。
但し、図4のステップS402において、MCTSに属するコーディングツリーの符号化においては、参照フレーム上におけるMCTS外のタイルを参照しない動きベクトルを使用する必要がある。
また、各スライスのスライスヘッダを生成するステップS408において、当該スライスがMCTSとなるタイルを含む場合には、スライスインデックスを生成する。また、図5のステップS501においても、当該シーケンスにおいて、どのタイルをMCTSとするかを設定する必要がある。またステップS502におけるタイル分割の設定では、非特許文献4記載のMCTSについての制約を満足する必要がある。すなわち、シーケンス内の全ピクチャで同じタイル分割を使用すると共に、MCTS SEIメッセージを生成し、生成したSEIメッセージをNALユニットデータとして、先頭ピクチャのサンプルデータの一部として格納する必要がある。
1番目のピクチャにおけるステップS507においては、スライスインデックスBox105の代わりにステップS408で生成したスライスインデックスに基づいてMCTSスライスインデックスBox2201を生成する。ステップS510において生成したMCTSスライスインデックスBox2201を格納し、サンプルテーブルBox102を生成する。
上記実施形態は各ピクチャにおいてMCTSとなるタイルセット数が2であり、かつ各タイルセット内の矩形タイル群数が1である場合の例であるが、本発明はこれに限定されない。すなわちMCTSとなるタイルセット数や、各タイルセット内の矩形タイル群数として、ピクチャ内のタイル数と矛盾しない、任意の値を使用することが可能である。
また、格納されるMCTSスライスインデックスBoxの数も上記のようにタイルセット数と同数には限定されず、ピクチャ内においてMCTSのタイルセットがY個存在する場合には、Y個以下の任意のMCTSスライスインデックスBox2201をサンプルテーブルBox102に格納することが可能である。但し、各MCTSスライスインデックスBox2201中のタイルセットIDは互いに異なる値を持つ必要がある。
また上記実施形態は各ピクチャにおけるスライス分割が同じである符号化フォーマットであるが、本発明はこれに限定されない。各ピクチャにおけるスライス分割が異なる場合にはスライス分割が変化する毎に、新たなMCTSスライスインデックスBox2201を生成し、前記サンプルテーブルBox102中に格納することで実現が可能である。
本実施形態のメディアファイルフォーマットに則って生成されたメディアファイルから、MCTSである特定のタイルセットを抽出して復号し、部分再生するメディアファイル再生手順を、図24のフローチャートを用いて示す。図24においては、図21におけるタイルセットID=8であるタイルセットが復号対象のタイルセットとして設定されたとする。なお、図24において図7と同一の動作を行うステップは図7と同じ符号を付加し、説明は省略する。
ステップS2401においては、先頭サンプルに含まれる図22のSEIデータ2203に含まれるMCTS SEIメッセージを解析し、MCTSとして指定された各タイルセットのタイルセットIDを解析すると共に復号対象となる矩形タイル群を算出する。
ステップS2402においてはステップS2401で解析された、MCTS SEIメッセージに含まれるタイルセットの中から、復号対象とするタイルセットのタイルセットIDを選択する。
ステップS2403において、ステップS2402において指定されたタイルセットIDと同じタイルセットIDを持つMCTSスライスインデックBox2201を選択すると共に、当該MCTSスライスインデックスBox2201を解析し、復号するスライス符号化データを特定する。特定されたスライス符号化データと、MCTS SEIメッセージから得られた復号対象タイル群の情報から、実施形態1と同様にステップS704以降を処理することで、部分復号対象として指定したタイルの復号を行うことが可能である。
このように、MCTSスライスインデックスBox2201を使用しても、実施形態1と同じ効果を得ることが可能である。特にMCTSにおける制約条件に基づいてシーケンスから復号対象のタイルセットのみを、当該タイルセット以外のタイルを参照せずに高速に復号することができ、さらなる復号処理の高速化を実現することが可能である。
本実施形態も、MCTSスライスインデックスBox2201内の各データのデータ長や内容、及びスライス分割やタイル分割、MCTSスライスインデックスBox2201の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。また静止画を格納するメディアファイルにも、同様に適用することが可能である。
<実施形態7>
本願発明の実施形態7は、実施形態6と同様にピクチャ群が前記MCTS SEIメッセージを使用して符号化されており、かつ1タイルに複数スライスが含まれるスライス分割及びタイル分割で符号化が行われる場合の実施形態である。なお本実施形態におけるメディアファイルフォーマットは実施形態6と同じく、図22で示したフォーマットを使用することが可能である。
本実施形態においては、図13におけるタイル1及びタイル3の2タイルから成る矩形タイル群を、タイルセットIDが0であるMCTSのタイルセットとして符号化する。このタイルセットの復号に必要なスライス符号化データを示すMCTSスライスインデックスBoxを図25に示す。
図13に示されるように、タイル1は4つのスライス符号化データ、タイル3は2つのスライス符号化データから構成され、復号対象のタイルセットは6個のスライス符号化データから構成される。よって図25のMCTSスライスインデックスBoxにおけるエントリ数は6であり、タイル1、2、3、4、9、10を示すスライスインデックスである0,1,2,3、8、9がデータ本体として格納される。またMCTSスライスインデックスBox2201先頭に格納されるデータサイズは4+4+4+2+2×6=26バイトである。
MCTSである特定のタイルセットを抽出して復号し、部分再生するメディアファイル再生においても実施形態6と同じ処理を行うことにより、指定されたタイルセットのみを高速に復号することが可能である。本実施形態のようにシーケンス中の各ピクチャが、1タイルに複数スライスが含まれているタイル分割及びスライス分割で符号化されている場合にも、実施形態6と同じ効果を得ることが可能である。
本実施形態も、実施形態6同様にMCTSスライスインデックスBox2201内の各データのデータ長や内容、及びスライス分割やタイル分割、MCTSスライスインデックスBox2201の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。また静止画を格納するメディアファイルにも、同様に適用することが可能である。
<実施形態8>
本願発明の実施形態8は、実施形態6及び7において使用されたMCTSと指定されたタイルセットを、優先度を備えた注目領域(ROI)として明示的に指定する場合の実施形態である。
図26に、本実施形態におけるメディアファイルフォーマットを示す。なお図26において、図22と同じ内容を示すBox及びデータについては、図22と同じ符号を付加し説明は省略する。
図示されるように、図26においてはMCTSスライスインデックスBox2201に続いて、ROIタイルセットBox2601がサンプルテーブルBox102に格納される。なお図26のメディアファイルは、実施形態6と同じくMCTSのタイルセットが2個である図21の構成で各ピクチャが符号化される場合の例である。
MCTSの各タイルセットを、優先度を備えるROIとして示す情報が、本実施形態における図26のROIタイルセットBox2601である。ROIタイルセットBox2601のフォーマット及び例を図27に示す。
図27(a)に本実施形態におけるROIタイルセットBox2601の内部フォーマットを示す。ROIタイルセットBox2601先頭にはBox全体のデータ長をバイト単位で示すBoxサイズが4バイトで挿入される。本実施形態のROIタイルセットBox2601において、Box全体のデータ長は、(4バイト+4バイト+2バイト+エントリ数×5バイト)により与えられる。
Boxサイズに続いて、Box種類を示す識別子が4バイトで挿入される。本実施形態のROIタイルセットBox2601においては、識別子として“rits”(Region of Interest Tile Set)の文字列を使用する。
Box種類に続いて、データ本体がいくつ格納されているかを示す、エントリ数が2バイトで挿入される。本実施形態のROIタイルセットBox2601において、エントリ数はROIとして指定するタイルセット数に等しい。エントリ数に続いてROIタイルセットBox2601のデータ本体である、ROIとして指定するタイルセットのタイルセットIDが4バイトと、当該タイルセットのROI優先度が1バイト(計5バイト)となる。この値がそれぞれのエントリ数分だけ挿入される。ROI優先度は0〜255の値から、ROIとしての表示の優先度が高いタイルセットほど大きい値を格納する。
図21におけるタイルセットID=0である右上のタイルセットを低優先ROI、タイルセットID=8である下部のタイルセットを高優先ROIとして指定する際の、ROIタイルセットBox2501の内容を図27(b)に示す。ROIとして指定するタイルセット数は2であるため、エントリ数は2、データサイズは4+4+2+2×5=20バイトである。
エントリ数に続いて、タイルセットIDが0であることを示す0と、当該タイルセットが低優先の注目領域であることを示すROI優先度として0が格納される。続いてタイルセットIDが8であることを示す8と、当該タイルセットが高優先の注目領域であることを示すROI優先度として255が格納される。
上記ROIタイルセットBox2601は、前記サンプルテーブルBox102中に格納されることを基本とするが、本願発明はこれに限定されない。ムービーBox101中のいずれのBoxに格納されることも可能である。
メディアファイルの生成についても、図4及び図5で示した実施形態6と同様の手順を使用することが可能である。但し、図5のステップS501において、当該シーケンスにおいて、どのタイルをMCTSとするかの設定に加えて、MCTS中のどのタイルセットをROIにするか及び各ROIの優先度を設定する必要がある。このROIの設定及びROI優先度の設定は、カメラでの撮影時に一般的に取得可能である、顔や人体・物体等を認識した結果や特定の人物認証情報に基づいて決定することが可能である。
同様に図5のステップS507においては、MCTSスライスインデックスBox2201に加えてROIタイルセットBox2601を生成し、ステップS510におけるサンプルテーブルBox生成において、MCTSスライスインデックスBox2201と共にROIタイルセットBox2601を格納する。
MCTSである特定のタイルセットを抽出して復号し、部分再生するメディアファイル再生においても、図24で示した実施形態6と同じ処理を行うことにより、指定されたタイルセットのみを部分動画として高速に復号することが可能である。
但し、ステップS2402においてユーザから再生すべきROI優先度を指定する。指定されたROI優先度に基づいてROIタイルセットBox2601を参照することで再生すべきMCTSであるタイルセットのタイルセットIDを算出する。算出されたタイルセットIDを持つMCTSスライスインデックスBox2201を探索し、探索されたMCTSスライスインデックスBox2201を参照することで復号対象であるタイルセットの復号に必要なスライス符号化データが特定できる。
本実施形態においてはMCTSを構成するタイルセットをROIとして優先度付きで指定することにより、実施形態6と同じ効果に加え、ユーザが指定するROI優先度に応じて復号対象となるタイルセットを決定できるという効果を備える。
本実施形態も、ROIタイルセットBox2601内の各データのデータ長や内容、及びスライス分割やタイル分割、ROIタイルセットBox2601の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。また静止画を格納するメディアファイルにも、同様に適用することが可能である。
<実施形態9>
本願発明の実施形態9は、実施形態8において使用された注目領域(ROI)の指定及びROI優先度の指定を、MCTSではない通常のタイル分割のみで各ピクチャが符号化されている場合に適用する実施形態である。
図28に、本実施形態におけるメディアファイルフォーマットを示す。なお図28において、図22と同じ内容を示すBox及びデータについては、図22と同じ符号を付加し説明は省略する。
図示されるように、図28においてはROIタイルインデックスBox2801がスライスインデックス105と共にサンプルテーブルBox102に格納される。図28は指定するROIの領域数が1の場合の例であり、ROIの領域数がN個の場合にはN個のROIタイルインデックスBox2801がサンプルテーブルBox102に格納される。
図29(a)に本実施形態におけるROIタイルインデックスBox2801の内部フォーマットを示す。ROIタイルインデックスBox2801先頭にはBox全体のデータ長をバイト単位で示すBoxサイズが4バイトで挿入される。本実施形態のROIタイルインデックスBox2801において、Box全体のデータ長は、(4バイト+4バイト+4バイト+1バイト+2バイト+エントリ数×2バイト)により与えられる。
Boxサイズに続いて、Box種類を示す識別子が4バイトで挿入される。本実施形態のROIタイルインデックスBox2801においては、識別子として“riti”(Region of Interest Tile Index)の文字列を使用する。
Box種類に続いて、指定する注目領域を識別するためのROIID(注目領域ID)が4バイトで挿入される。実施形態6におけるタイルセットIDと同じく、ROIIDとしては0〜255の値の中から、任意の値を格納する必要がある。ただし前記のようにピクチャ内に複数のROIを定義し、サンプルテーブルBox102内に複数のROIタイルインデックスBox2801が格納される場合には、各ROIタイルインデックスBox2801におけるROIIDは互いに異なる値を持つ必要がある。
ROIIDに続いて、指定する領域の優先度を示すROI優先度が1バイトで挿入される。実施形態8と同じく、ROI優先度としては0〜255の値の中から、表示の優先度が高いROIほど大きい値を格納する。
ROI優先度に続いて、データ本体がいくつ格納されているかを示す、エントリ数が2バイトで挿入される。本実施形態のROIタイルインデックスBox2801において、エントリ数はROIを構成するタイル数に等しい。エントリ数に続いてROIタイルインデックスBox2801のデータ本体である、ROIを構成するタイルのインデックスを各2バイトで、エントリ数分だけ挿入される。タイルインデックスの定義は本発明の実施形態2と同一であるため、記述を省略する。
図2に示したスライス分割及びタイル分割で符号化されているピクチャのうち、タイル6、7、10,11の4タイルで、ROIIDが1となる高優先度ROIを構成する際の、ROIタイルセットBox2801の内容を図29(b)に示す。
ROIを構成するタイル数は4であるため、エントリ数は4、データサイズは4+4+4+1+2+2×4=23バイトである。Box識別子に続いてROIID=1であることを示す1と、当該ROIが高優先度であることを示すROI優先度として255が挿入される。
エントリ数として4が挿入された後、ROIタイルインデックスBox2801のデータ本体としてROIを構成するタイル6、7、10、11に対応するタイルインデックスとして5、6、9、10が挿入される。
上記ROIタイルインデックスBox2801は、前記サンプルテーブルBox102中に格納されることを基本とするが、本願発明はこれに限定されない。ムービーBox101中のいずれのBoxに格納されることも可能である。
メディアファイルの生成についても、図4及び図5で示した実施形態1と同様の手順を使用することが可能である。但し、図5のステップS502において、ピクチャ中のどのタイルセットをROIにするか、及び各ROIの優先度を設定する必要がある。このROIの設定及びROI優先度の設定はカメラでの撮影時に一般的に取得可能である顔や人体・物体等を認識した結果や特定の人物認証情報に基づいて決定することが可能である。
同様に図5のステップS507においてはスライスインデックスBox105に加えてROIタイルインデックスBox2801を生成する。ステップS510におけるサンプルテーブルBox生成において、スライスインデックスBox105と共にROIタイルインデックスBox2801を格納する。
ROIタイルのみを抽出して復号し、部分再生するメディアファイル再生においても図7で示した実施形態1と同じ処理を行うことにより、ROIのみを高速に復号することが可能である。但し、ステップS702において例えばユーザから再生すべきROI優先度を指定する。指定されたROI優先度に基づいて、ステップS702において当該優先度を備えるROIタイルインデックスBox2801を参照することで、再生すべきROIのタイルインデックスを算出する。
ステップS703において、ステップS702で算出されたROIを構成するタイルの復号に必要なスライス符号化データをスライスインデックスBox105に基づいて特定し、ステップS704以降で必要なスライスデータの復号を行い、ROIを復号する。
本実施形態においてはMCTSが使用されていない場合にも、ROIを構成するタイルをID及び優先度付きでタイルインデックスとして指定することにより、実施形態8と同じ効果を得ることができる。ただしMCTSが使用されていないため、ROIタイル以外のタイルを参照しての復号が必要となる可能性があるため、復号の処理速度についてはMCTSを使用する実施形態8に比べ低下する可能性がある。
本実施形態も、ROIタイルインデックスBox2801内の各データのデータ長や内容、及びスライス分割やタイル分割、ROIタイルインデックスBox2801の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。また静止画を格納するメディアファイルにも、同様に適用することが可能である。さらには、ROIIDやROI優先度のどちらか、もしくは両方が存在しない場合にも適用することが可能である。
また注目領域となるタイル群の指定方法も上記のようなタイルインデックスで直接指定する方法に限定されず、左上に位置するタイルのインデックスと右下に位置するタイルのインデックスにより、注目領域となる矩形領域を指定することが可能である。
ROIIDとROI優先度のどちらかが存在しない場合に、ユーザはメディアファイルの再生時にどちらか利用可能な情報に基づいて再生するROIを決定する。
なお本実施形態は、メディアファイル中に含まれるデータとして、スライスインデックスBox105の代わりに実施形態2で示されたタイルインデックスBox801を使用することも可能である。その際にはタイルインデックスBox801と復号対象ROIのタイルインデックスを比較することにより、ROIの復号に必要なスライスを特定することが可能である。
さらに本実施形態は、メディアファイル中に含まれるデータとして、スライスインデックスBox105が存在しない場合にも適用することが可能である。但し、ピクチャ内の全スライス符号化データのスライスヘッダを解析し、各スライスのピクチャ内における位置及びタイル分割情報から、当該スライスがROIの復号に必要か否かを判断する必要がある。
全スライス符号化データのスライスヘッダを解析すると、スライスインデックスBox105が存在するケースに比べると復号時間は長くなる。その場合においても、ピクチャ全体を復号しROI部分のみを切り出す場合に比べると、復号にかかる時間を大幅に短縮することが可能である。
なお、本実施形態は各ピクチャが複数のスライスに分割されず、単一スライスとして符号化されている場合にも適用することが可能である。その際にはROIタイルインデックスBox2801と、実施形態1で記述したスライスヘッダに含まれる各タイルへのエントリポイントオフセットを参照することにより、ROIの復号に必要なタイルの符号化データへと高速にアクセスし、高速復号を実現することが可能である。
<実施形態10>
本願発明の実施形態10は、実施形態6から実施形態9において示されたMCTSもしくはROIタイルが、時系列で有効であるか否かを指定する方法に関する実施形態である。
図30に被写体の動きもしくは動画撮影装置の動きにより、ピクチャ内の注目領域から人物等の注目対象が一時的に外れるケースを示す。図30はタイルセットIDが0及び8である、2個のMCTSタイルセットを注目領域として使用する符号化するケースである。
図示されるようにタイルセットIDが0のタイルセットにおいては、シーケンスの先頭であるサンプル0からサンプル21までは、注目対象が当該タイルセットに含まれない。またタイルセットIDが8のタイルセットにおいては、先頭のサンプル0からサンプル14まで、及びサンプル30からサンプル38までの期間においてのみ、当該タイルセットに注目対象が含まれる。
図31に、本実施形態におけるメディアファイルフォーマットを示す。なお図31において、図22と同じ内容を示すBox及びデータについては、図22と同じ符号を付加し説明は省略する。図示されるように、図31においてはROI有効サンプルBox3101がMCTSスライスインデックスBox2201と共にサンプルテーブルBox102に格納される。
なお図31は有効サンプルを示す対象となるタイルセット数が2の場合の例である。有効サンプルを示す対象となるタイルセット数もしくはROIタイルがM個存在する場合には、M個のROI有効サンプルBox3101をサンプルテーブルBox102に格納する。
MCTSであるタイルセットもしくはROIタイルについて、時系列においてどのサンプルで当該タイルセットに注目対象が含まれている、有効サンプルであるかを示す情報が、本実施形態における図31のROI有効サンプルBox3101である。ROI有効サンプルBox3101のフォーマット及び例を図32に示す。
図32(a)に本実施形態におけるROI有効サンプルBox3101の内部フォーマットを示す。ROI有効サンプルBox3101先頭にはBox全体のデータ長をバイト単位で示すBoxサイズが4バイトで挿入される。本実施形態のROI有効サンプルBox3101において、Box全体のデータ長は、(4バイト+4バイト+4バイト+2バイト+エントリ数×8バイト)により与えられる。
Boxサイズに続いて、Box種類を示す識別子が4バイトで挿入される。本実施形態のROI有効サンプルBox3101においては、識別子として“rivs”(Region of Interest Valid Samples)の文字列を使用する。
Box種類に続いて、有効サンプルを示す対象となるタイルセットを示すタイルセットIDが4バイトで挿入される。ROI有効サンプルBox3101においては、このタイルセットIDが一致するタイルセットについてのみ、注目対象が当該タイルセットに含まれるか否かを示す。
タイルセットIDに続いて、データ本体がいくつ格納されているかを示す、エントリ数が2バイトで挿入される。本実施形態のROI有効サンプルBox3101において、エントリ数は各タイルセットにおいて、有効サンプルが継続する期間が何回発生するかの発生回数に等しい。
エントリ数に続いてROI有効サンプルBox3101のデータ本体である、有効サンプルとなる開始サンプルと有効サンプルが継続する期間のサンプル数が、各4バイトの計8バイトで、エントリ数分だけ挿入される。
図30のタイルセットIDが0であるタイルセットの有効サンプルに対応するROI有効サンプルBox3101の内容を図32(b)に、同じくタイルセットIDが8であるタイルセットに対応する内容を図32(c)に示す。
図32(b)に示すように、図30においてタイルセットIDが0であるタイルセットは、有効サンプルが継続する期間が発生する回数は1であるため、データサイズとして4+4+4+2+1×8=22バイト、タイルセットIDとして0、エントリ数として1が挿入される。エントリ数に続いて、有効期間の開始サンプルであるサンプル22を示す22と、有効サンプルが継続するサンプル数である16がROI有効サンプルBox3101のデータ本体として挿入される。
同様に図32(c)に示すように、タイルセットIDが8であるタイルセットは、エントリ数である有効サンプルが継続する期間が発生する回数は2であり、データサイズは4+4+4+2+2×8=30バイトとなる。1番目の有効サンプル期間の開始サンプルであるサンプル0を示す0と、有効サンプルが継続するサンプル数である14が、続いて2番目の有効サンプル期間の開始サンプルであるサンプル30を示す30と、有効サンプルが継続するサンプル数である8が挿入される。
メディアファイルの生成についても、図4及び図5で示した実施形態6と同様の手順を使用することが可能である。但し、図5のステップS507におけるMCTSスライスインデックスBox2201の生成において各タイルセットに有効情報が含まれているか否かを前述した認識結果や認証結果により判定し、MCTSスライスインデックスBox2201を生成する。ステップS510において、有効情報に基づいてMCTSスライスインデックスBox2201と共にROI有効サンプルBox3101を生成し、サンプルテーブルBox102に格納する。
MCTSである特定のタイルセットを抽出して復号し、部分再生するメディアファイル再生においても、図24で示した実施形態6と同じ処理を行うことにより、指定されたタイルセットのみを高速に復号することが可能である。但し、ステップS2402において復号対象であるタイルセットにタイルセットIDが対応するROI有効サンプルBox3101を解析し、復号対象のタイルセットにおいて、各ピクチャに相当するサンプルが有効であるか否かを判断する。有効でない場合には当該ピクチャの復号及び表示をスキップし、再度有効サンプルとなるピクチャのサンプルデータから復号処理を開始ことが可能である。結果として注目領域であるタイルセットについて、注目対象が含まれるピクチャのみを復号することで、復号処理を効率的に実施することが可能である。
例えば、図30においてタイルセットIDが8のタイルセットを復号対象のタイルセットとユーザが指定すると、ROI有効サンプルBox3101を使用しない場合には全39ピクチャに含まれる当該タイルセットを復号する必要がある。ROI有効サンプルBox3101に含まれるROI有効サンプル情報を参照することで、当該タイルセットに注目対象が含まれるピクチャに含まれるタイルセットのみを復号すればよく、15+9=24ピクチャに含まれるタイルセットを復号すれば良い。
本実施形態も、ROI有効サンプルBox3101内の各データのデータ長や内容、及びスライス分割やタイル分割、ROI有効サンプルBox3101の名称や識別子に使用される文字列、及びメディアファイル中の挿入位置等は上記に限定されない。
なお、本実施形態はROI有効サンプルBox3101が指定する対象として、実施形態8で示したROIとして指定されたMCTSのタイルセットや、実施形態9で示したMCTSを使用しないROIタイルについて、注目領域に注目対象が含まれるか否かを示すことも可能である。実施形態9で示したROIタイルの有効サンプル期間を示す場合には、図32におけるタイルセットIDの代わりに、図29で示したROIIDを指定することで、どのROIについて、各サンプルが有効サンプルであるかを示すことが可能である。
なお、本実施形態ではタイルセットが有効である期間を指定する単位として、ピクチャに相当するサンプルを使用したが本発明はこれに限定されない。例えば有効期間としてタイルセットが有効になるピクチャの表示時刻(有効期間開始時刻)及び有効時間を指定することも容易に可能である。また、タイルセットが有効になる期間を開始のサンプルと終了のサンプル、または開始の表示時刻と終了の表示時刻で表してももちろん構わない。
また本実施形態はメディアファイル中のビデオ・シーケンス数が1であることを前提としたが、本発明はこれに限定されない。メディアファイルは通常複数のビデオ・シーケンスを格納することが可能である。各注目領域に注目対象が含まれるか否かの情報をビデオ・シーケンス単位で指定することも可能である。その場合には、図32で使用したROI有効サンプルBox3101の有効開始サンプルと有効サンプル継続数のセットの代わりに、ビデオ・シーケンスの識別子であるシーケンスIDを有効シーケンスIDとして格納する。
例えばメディアファイル中にシーケンスIDが0〜3である4つのビデオ・シーケンスが含まれ、シーケンスIDが1及び3のビデオ・シーケンスにのみ注目対象が含まれる場合には、ROI有効サンプルBox3101のデータ本体である有効シーケンスIDとして1と3が格納される。
このように各注目領域に注目対象が含まれるか否かを有効サンプルではなく有効シーケンスIDに応じて示す場合にも、有効サンプルを使う場合と同じ効果を得ることができる。
<その他の実施形態>
図20は、上記各実施形態に係る処理をプログラムとして実行するコンピュータのハードウェアの構成例を示すブロック図である。
CPU2001は、RAM2002やROM2003に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る処理を実行する。
RAM2002は、外部記憶装置2006からロードされたコンピュータプログラムやデータ、I/F(インターフェース)2007を介して外部から取得したデータなどを一時的に記憶するためのエリアを有する。更に、RAM2002は、CPU2001が各種の処理を実行する際に用いるワークエリアを有する。即ち、RAM2002は、例えば、フレームメモリとして割当てたり、その他の各種のエリアを適宜提供することができる。
ROM2003には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部2004は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をCPU2001に対して入力することができる。出力部2005は、CPU2001による処理結果を出力する。また出力部2005は例えば液晶ディスプレイのような表示装置で構成して処理結果を表示することができる。
外部記憶装置2006は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置2006には、OS(オペレーティングシステム)や、上記各実施形態に係る処理をCPU2001に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置2006には、処理対象としての各画像が保存されていても良い。
外部記憶装置2006に保存されているコンピュータプログラムやデータは、CPU2001による制御に従って適宜RAM2002にロードされ、CPU2001による処理対象となる。I/F2007には、LANやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのI/F2007を介して様々な情報を取得したり、送出したりすることができる。2008は上述の各部を繋ぐバスである。
また、本願発明の目的は、上記各実施形態に係る処理を実現するコンピュータプログラムのコードを記録した記憶媒体を、システムに供給し、そのシステムがコンピュータプログラムのコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたコンピュータプログラムのコード自体が前述した実施形態の機能を実現し、そのコンピュータプログラムのコードを記憶した記憶媒体は本願発明を構成する。また、そのプログラムのコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたコンピュータプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。そして、そのコンピュータプログラムのコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。
本願発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するコンピュータプログラムのコードが格納されることになる。

Claims (11)

  1. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、
    前記スライスが複数のタイルを含んでいる場合、前記生成工程において、前記複数のタイルが属するスライスがピクチャ内の何番目のスライスかを示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成方法。
  2. 前記複数のタイルが属するスライスがピクチャ内の何番目のスライスかを示す情報は、スライスインデックスBoxである
    ことを特徴とする請求項1記載のファイル生成方法。
  3. 前記2つ以上のタイルから構成されるタイルセットは当該タイルセット外のタイルの復号画素を参照することなく復号が可能な独立復号タイルセットであり、
    前記生成工程において、各独立復号タイルセットがピクチャ内の何番目のスライスから構成されるかを示す情報を含む前記ファイルを生成する
    ことを特徴とする請求項1又は2に記載のファイル生成方法。
  4. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、
    前記スライスが複数のタイルを含んでいる場合、前記生成工程において、前記スライス内の先頭のタイルがピクチャ内の何番目のタイルかを示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成方法。
  5. 各スライス内の先頭のタイルがピクチャ内の何番目のタイルかを示す情報は、タイルデックスBoxである
    ことを特徴とする請求項4記載のファイル生成方法。
  6. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成工程を有し、
    前記タイルが複数のスライスを含んでいる場合、前記生成工程において、前記タイルに含まれるスライスの数を示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成方法。
  7. 前記所定のユニットはNALユニットである
    ことを特徴とする請求項1〜6のいずれか1項に記載のファイル生成方法。
  8. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成手段を有し、
    前記スライスが複数のタイルを含んでいる場合、前記生成手段は、前記複数のタイルが属するスライスがピクチャ内の何番目のスライスかを示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成装置。
  9. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成手段を有し、
    前記スライスが複数のタイルを含んでいる場合、前記生成手段は、前記スライス内の先頭のタイルがピクチャ内の何番目のタイルかを示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成装置。
  10. ピクチャがスライスを含んでいる場合に、前記スライスにおける符号化データを格納する所定のユニットを単位として、前記ピクチャの符号化データを含むファイルを生成する生成手段を有し、
    前記タイルが複数のスライスを含んでいる場合、前記生成手段は、前記タイルに含まれるスライスの数を示す情報を含む前記ファイルを生成する
    ことを特徴とするファイル生成装置。
  11. 請求項1〜7のいずれか1項に記載のファイル生成方法における生成工程を、コンピュータに実行させることを特徴とするプログラム。
JP2013133529A 2012-07-02 2013-06-26 ファイル生成方法、ファイル生成装置、及びプログラム Active JP6214235B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013133529A JP6214235B2 (ja) 2012-07-02 2013-06-26 ファイル生成方法、ファイル生成装置、及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012148511 2012-07-02
JP2012148511 2012-07-02
JP2013133529A JP6214235B2 (ja) 2012-07-02 2013-06-26 ファイル生成方法、ファイル生成装置、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017150549A Division JP6410899B2 (ja) 2012-07-02 2017-08-03 メディアファイルの生成装置、生成方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2014030187A JP2014030187A (ja) 2014-02-13
JP2014030187A5 JP2014030187A5 (ja) 2016-08-04
JP6214235B2 true JP6214235B2 (ja) 2017-10-18

Family

ID=48874460

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2013133529A Active JP6214235B2 (ja) 2012-07-02 2013-06-26 ファイル生成方法、ファイル生成装置、及びプログラム
JP2017150549A Active JP6410899B2 (ja) 2012-07-02 2017-08-03 メディアファイルの生成装置、生成方法、及びプログラム
JP2018180354A Active JP6622879B2 (ja) 2012-07-02 2018-09-26 メディアファイルの再生装置、再生方法、及びプログラム
JP2019210872A Pending JP2020053977A (ja) 2012-07-02 2019-11-21 再生装置、再生方法、プログラム、及び記憶媒体

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2017150549A Active JP6410899B2 (ja) 2012-07-02 2017-08-03 メディアファイルの生成装置、生成方法、及びプログラム
JP2018180354A Active JP6622879B2 (ja) 2012-07-02 2018-09-26 メディアファイルの再生装置、再生方法、及びプログラム
JP2019210872A Pending JP2020053977A (ja) 2012-07-02 2019-11-21 再生装置、再生方法、プログラム、及び記憶媒体

Country Status (3)

Country Link
US (4) US9723317B2 (ja)
JP (4) JP6214235B2 (ja)
WO (1) WO2014006863A1 (ja)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2512880B (en) * 2013-04-09 2017-12-20 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data
JP6968516B2 (ja) 2013-01-18 2021-11-17 キヤノン株式会社 生成装置、生成方法、提供装置、提供方法、及び、プログラム
JP6269813B2 (ja) * 2013-04-08 2018-01-31 ソニー株式会社 Shvcでの注目領域スケーラビリティ
RU2671946C2 (ru) * 2013-07-19 2018-11-08 Сони Корпорейшн Устройство и способ обработки информации
CN105409235B (zh) 2013-07-19 2019-07-09 索尼公司 文件生成装置和方法以及内容重放装置和方法
AU2014294215B2 (en) * 2013-07-22 2018-10-04 Sony Corporation Image processing device and method
GB2516825B (en) * 2013-07-23 2015-11-25 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data using a generic signaling for coding dependencies
JP6692087B2 (ja) * 2013-12-27 2020-05-13 サン パテント トラスト 配信方法、およびシステム
JP2015136057A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
GB2524726B (en) 2014-03-25 2018-05-23 Canon Kk Image data encapsulation with tile support
GB2560649B (en) * 2014-03-25 2019-02-13 Canon Kk Rendering method and device
JP6477699B2 (ja) * 2014-06-20 2019-03-06 ソニー株式会社 情報処理装置および情報処理方法
JP6493403B2 (ja) * 2014-06-30 2019-04-03 ソニー株式会社 ファイル生成装置および方法、並びにコンテンツ再生装置および方法
GB2561491B (en) * 2014-07-01 2019-05-22 Canon Kk Image data encapsulation with tile support
US9800898B2 (en) 2014-10-06 2017-10-24 Microsoft Technology Licensing, Llc Syntax structures indicating completion of coded regions
CN104683884B (zh) * 2015-02-09 2018-08-07 网宿科技股份有限公司 一种流媒体直播方法及系统
US9794574B2 (en) * 2016-01-11 2017-10-17 Google Inc. Adaptive tile data size coding for video and image compression
CN105847787A (zh) * 2016-03-28 2016-08-10 乐视控股(北京)有限公司 媒体播放列表的切片时长的检测方法及装置
US10419768B2 (en) * 2016-03-30 2019-09-17 Qualcomm Incorporated Tile grouping in HEVC and L-HEVC file formats
US10334277B2 (en) * 2016-09-02 2019-06-25 Qualcomm Incorporated Signaling target display parameters of color remapping information supplemental enhancement information messages
EP3293981A1 (en) * 2016-09-08 2018-03-14 Koninklijke KPN N.V. Partial video decoding method, device and system
CN106658225B (zh) * 2016-10-31 2019-11-26 日立楼宇技术(广州)有限公司 视频扩展码设置及视频播放方法和系统
WO2018083378A1 (en) 2016-11-01 2018-05-11 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN110169074B (zh) * 2017-01-05 2021-09-28 夏普株式会社 用于对虚拟现实应用的mcts进行信令通知的系统和方法
WO2018128071A1 (en) * 2017-01-08 2018-07-12 Sharp Kabushiki Kaisha Systems and methods for signaling of tiles in most-interested regions for virtual reality applications
JPWO2018135321A1 (ja) * 2017-01-19 2019-11-07 ソニー株式会社 画像処理装置および方法
US10687055B2 (en) * 2017-03-03 2020-06-16 Qualcomm Incorporated Coding MCTS-EIS SEI messages of an access unit
JP6606530B2 (ja) 2017-06-20 2019-11-13 キヤノン株式会社 画像処理装置およびその制御方法、撮像装置、監視システム
JP6415652B1 (ja) * 2017-07-18 2018-10-31 三菱電機株式会社 映像再生装置、映像記録装置および映像記録方法
JP6771158B2 (ja) * 2017-07-20 2020-10-21 パナソニックIpマネジメント株式会社 データ記録制御装置、及び、データ記録制御方法
US11868804B1 (en) 2019-11-18 2024-01-09 Groq, Inc. Processor instruction dispatch configuration
US11114138B2 (en) 2017-09-15 2021-09-07 Groq, Inc. Data structures with multiple read ports
US11360934B1 (en) 2017-09-15 2022-06-14 Groq, Inc. Tensor streaming processor architecture
US11243880B1 (en) 2017-09-15 2022-02-08 Groq, Inc. Processor architecture
US11170307B1 (en) 2017-09-21 2021-11-09 Groq, Inc. Predictive model compiler for generating a statically scheduled binary with known resource constraints
CN110022481B (zh) * 2018-01-10 2023-05-02 中兴通讯股份有限公司 视频码流的解码、生成方法及装置、存储介质、电子装置
US11252429B2 (en) * 2018-04-27 2022-02-15 Ati Technologies Ulc Low-latency consumption of an encoded video bitstream
CN116684625A (zh) * 2018-09-14 2023-09-01 华为技术有限公司 一种视频编码中的基于分块的寻址方法,编码器以及视频译码设备
US11537687B2 (en) 2018-11-19 2022-12-27 Groq, Inc. Spatial locality transform of matrices
TW202029764A (zh) 2018-12-07 2020-08-01 美商松下電器(美國)知識產權公司 編碼裝置、解碼裝置、編碼方法及解碼方法
BR112021011413A2 (pt) * 2018-12-17 2021-08-31 Huawei Technologies Co., Ltd. Método e aparelho de codificação de vídeo
US11272178B2 (en) * 2018-12-20 2022-03-08 Telefonaktiebolaget Lm Ericsson (Publ) Video encoding and decoding
US11477445B2 (en) * 2018-12-28 2022-10-18 Hfi Innovation Inc. Methods and apparatuses of video data coding with tile grouping
EP3868103A4 (en) 2018-12-28 2022-03-23 Huawei Technologies Co., Ltd. APPARATUS AND METHODS FOR ENCODING AN IMAGE BY DIVIDING THE SAME INTO SLICES WITH TILES
EP3939278A4 (en) * 2019-03-11 2023-03-22 Tencent America LLC TILE AND SUB-DIVISION
US11310560B2 (en) 2019-05-17 2022-04-19 Samsung Electronics Co., Ltd. Bitstream merger and extractor
CN112930683A (zh) * 2019-06-20 2021-06-08 株式会社 Xris 用于对图像信号进行编码/解码的方法及其设备
CN114902664A (zh) * 2019-11-28 2022-08-12 Lg 电子株式会社 图像/视频编码/解码方法和装置
WO2021107622A1 (ko) * 2019-11-28 2021-06-03 엘지전자 주식회사 영상/비디오 코딩 방법 및 장치
KR20220087512A (ko) * 2019-11-28 2022-06-24 엘지전자 주식회사 픽처의 분할 구조에 기반한 영상/비디오 코딩 방법 및 장치
WO2021107621A1 (ko) * 2019-11-28 2021-06-03 엘지전자 주식회사 영상/비디오 코딩을 위한 슬라이스 및 타일 구성
KR20210100853A (ko) * 2020-02-07 2021-08-18 삼성전자주식회사 이미지를 저장하는 전자 장치 및 방법
KR20220083385A (ko) 2020-12-11 2022-06-20 삼성전자주식회사 부호 및 복호를 수행하는 디스플레이 구동 회로 및 이의 방법

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4412688B2 (ja) * 1999-11-24 2010-02-10 キヤノン株式会社 画像処理装置及びその方法
JP2003333489A (ja) * 2002-05-09 2003-11-21 Matsushita Electric Ind Co Ltd データ再生装置およびデータ再生方法
JP4027196B2 (ja) * 2002-09-24 2007-12-26 キヤノン株式会社 画像表示装置及びその制御方法
JP3952459B2 (ja) * 2002-11-15 2007-08-01 株式会社リコー 画像処理装置、プログラム、記憶媒体及び画像処理方法
US7149370B2 (en) * 2003-03-07 2006-12-12 Nokia Corporation Method and device for image surfing
JP4280701B2 (ja) * 2004-10-28 2009-06-17 キヤノン株式会社 データファイルの編集方法及び装置及び制御プログラム及び記憶媒体
JP4656912B2 (ja) * 2004-10-29 2011-03-23 三洋電機株式会社 画像符号化装置
KR101255226B1 (ko) * 2005-09-26 2013-04-16 한국과학기술원 스케일러블 비디오 코딩에서 다중 roi 설정, 복원을위한 장치 및 방법
US8452801B2 (en) * 2006-10-19 2013-05-28 Lg Electronics Inc. Encoding method and apparatus and decoding method and apparatus
US8515194B2 (en) * 2007-02-21 2013-08-20 Microsoft Corporation Signaling and uses of windowing information for images
US9426244B2 (en) * 2008-04-09 2016-08-23 Level 3 Communications, Llc Content delivery in a network
US8775566B2 (en) * 2008-06-21 2014-07-08 Microsoft Corporation File format for media distribution and presentation
US20100232504A1 (en) * 2009-03-13 2010-09-16 The State of Oregon acting by and through the State Board of Higher Education on behalf of the Supporting region-of-interest cropping through constrained compression
EP2285112A1 (en) * 2009-08-07 2011-02-16 Canon Kabushiki Kaisha Method for sending compressed data representing a digital image and corresponding device
US20130097334A1 (en) * 2010-06-14 2013-04-18 Thomson Licensing Method and apparatus for encapsulating coded multi-component video
JP5811097B2 (ja) * 2010-11-01 2015-11-11 日本電気株式会社 動画像配信システム、動画像配信方法および動画像配信用プログラム
JP2012148511A (ja) 2011-01-20 2012-08-09 Seiko Epson Corp 液体噴射装置
US20120230399A1 (en) * 2011-03-10 2012-09-13 Christopher Andrew Segall Video decoder parallelization including a bitstream signal
US8767824B2 (en) * 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
BR112014000368A2 (pt) * 2011-08-25 2017-02-14 Panasonic Corp métodos e aparelhos para codificação, extração e de-codificação de vídeo com o uso de esquemas de codificação de recorte
WO2013111593A1 (ja) * 2012-01-27 2013-08-01 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置及び画像符号化復号装置
JP6295951B2 (ja) * 2012-06-25 2018-03-20 ソニー株式会社 画像復号装置及び画像復号方法
US9621905B2 (en) * 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
RU2635251C2 (ru) * 2012-06-29 2017-11-09 ДжиИ Видео Компрешн, ЭлЭлСи Концепция потока видеоданных
WO2014025319A1 (en) * 2012-08-08 2014-02-13 National University Of Singapore System and method for enabling user control of live video stream(s)
US20140192899A1 (en) * 2013-01-09 2014-07-10 Mediatek Inc. Method and apparatus for referring to bitstream address related information derived from segment of multi-tile picture to determine bitstream start address of tile of multi-tile picture
GB2519745B (en) * 2013-10-22 2018-04-18 Canon Kk Method of processing disordered frame portion data units

Also Published As

Publication number Publication date
JP2014030187A (ja) 2014-02-13
US20170289557A1 (en) 2017-10-05
JP6622879B2 (ja) 2019-12-18
WO2014006863A1 (en) 2014-01-09
JP2020053977A (ja) 2020-04-02
US20190075307A1 (en) 2019-03-07
US20150201202A1 (en) 2015-07-16
US9723317B2 (en) 2017-08-01
US10448031B2 (en) 2019-10-15
JP2019033501A (ja) 2019-02-28
JP2017225152A (ja) 2017-12-21
JP6410899B2 (ja) 2018-10-24
US20190364289A1 (en) 2019-11-28

Similar Documents

Publication Publication Date Title
JP6622879B2 (ja) メディアファイルの再生装置、再生方法、及びプログラム
US20200275143A1 (en) Method, device, and computer program for encapsulating scalable partitioned timed media data
US11962809B2 (en) Image data encapsulation with referenced description information
US11876994B2 (en) Description of image composition with HEVC still image file format
KR102406887B1 (ko) 시간 설정형 미디어 데이터를 발생시키는 방법, 디바이스, 및 컴퓨터 프로그램
JP6708649B2 (ja) 画像データのカプセル化
US20160029091A1 (en) Method of displaying a region of interest in a video stream
KR20200019881A (ko) 미디어 콘텐트를 전송하는 방법, 디바이스, 및 컴퓨터 프로그램
WO2019128668A1 (zh) 视频码流处理方法、装置、网络设备和可读存储介质
WO2015074273A1 (zh) 处理视频的设备和方法
US9560365B2 (en) Image coding device, image decoding device, image coding method, and image decoding method
JP2016103808A (ja) 画像処理装置、画像処理方法及びプログラム
GB2561491A (en) Image data encapsulation with tile support
GB2560649A (en) Image data encapsulation with tile support

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160617

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160617

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170803

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170919

R151 Written notification of patent or utility model registration

Ref document number: 6214235

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151