JP2022050361A - 映像動作点レコード構文及びセマンティクス - Google Patents

映像動作点レコード構文及びセマンティクス Download PDF

Info

Publication number
JP2022050361A
JP2022050361A JP2021151188A JP2021151188A JP2022050361A JP 2022050361 A JP2022050361 A JP 2022050361A JP 2021151188 A JP2021151188 A JP 2021151188A JP 2021151188 A JP2021151188 A JP 2021151188A JP 2022050361 A JP2022050361 A JP 2022050361A
Authority
JP
Japan
Prior art keywords
format
operating point
video
bitstream
visual media
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.)
Granted
Application number
JP2021151188A
Other languages
English (en)
Other versions
JP7270012B2 (ja
Inventor
ワン イェ-クイ
Ye-Kui Wang
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.)
LEMON Inc
Original Assignee
LEMON 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 LEMON Inc filed Critical LEMON Inc
Publication of JP2022050361A publication Critical patent/JP2022050361A/ja
Application granted granted Critical
Publication of JP7270012B2 publication Critical patent/JP7270012B2/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/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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/172Methods 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 picture, frame or field
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440227Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Abstract

Figure 2022050361000001
【課題】 ビジュアルメディアデータを処理するシステム、方法及び装置を記述する。
【解決手段】 一方法例は、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップを含み、ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、フォーマットルールは、ビジュアルメディアファイルにおいて指し示される各動作点について、動作点レコード及び動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する。
【選択図】 図10

Description

パリ条約に基づく適用可能な特許法及び/又はルールの下で、この出願は、2020年9月17日に出願された米国仮特許出願第63/079,910号の優先権及び利益を適時に主張して行われる。法律の下での全ての目的のために、上記出願の開示全体を、この出願の開示の一部として援用する。
この特許文書は、ファイルフォーマットにおけるデジタルオーディオビデオメディア情報の生成、記憶、及び消費に関する。
デジタル映像は、インターネット及び他のデジタル通信ネットワークにおいて最大の帯域幅使用を占めている。映像を受信して表示することが可能な接続ユーザ装置の数が増えるにつれて、デジタル映像使用に対する帯域幅需要が増加し続けることが予期される。
本文書は、ファイルフォーマットに従って映像又は画像の符号化表現を処理するためにビデオエンコーダ及びデコーダによって使用されることができる技術を開示する。
一態様例において、ビジュアルメディアデータを処理する方法が開示される。当該方法は、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行することを含み、フォーマットルールは、トラックが特定の出力レイヤセットに対応するビットストリームを含むかを指し示す第1要素が、該トラックのクロマフォーマットを指し示す第2要素及び/又は該トラックのビット深度情報を指し示す第3要素が該トラックのコンフィギュレーションレコードに含められるかを、制御するかを規定する。
他の一態様例において、ビジュアルメディアデータを処理する他の方法が開示される。当該方法は、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行することを含み、フォーマットルールは、トラックのコンフィギュレーションレコードに、該トラックのピクチャ幅を指し示す第1要素及び/又は該トラックのピクチャ高さを指し示す第2要素を含めるかを、(1)該トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むかを指し示す第3要素及び/又は(2)コンフィギュレーションレコードがシングルレイヤビットストリーム向けであるか、に基づいて規定し、フォーマットルールは更に、第1要素及び/又は第2要素が、該トラックのコンフィギュレーションレコードに含められるときに、16ビットを含むフィールド内で表されることを規定する。
他の一態様例において、ビジュアルメディアデータを処理する他の方法が開示される。当該方法は、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行することを含み、ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、フォーマットルールは、ビジュアルメディアファイルにおいて指し示される各動作点について、動作点レコード及び動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する。
更なる他の一態様例において、映像処理装置が開示される。当該映像処理装置は、上述の方法を実施するように構成されたプロセッサを有する。
更なる他の一態様例において、1つ以上のビットストリームを含むファイルにビジュアルメディアデータを格納する方法が開示される。当該方法は、上述の方法に対応し、さらに、上記1つ以上のビットストリームを非一時的なコンピュータ読み取り可能記録媒体に格納することを含む。
更なる他の一態様例において、ビットストリームを格納したコンピュータ読み取り可能媒体が開示される。ビットストリームは、上述の方法に従って生成される。
更なる他の一態様例において、ビットストリームを格納する映像処理装置が開示され、当該映像処理装置は、上述の方法を実施するように構成される。
更なる他の一態様例において、上述の方法に従って生成されるファイルフォーマットにビットストリームが準拠するコンピュータ読み取り可能媒体が開示される。
これらの及び他の特徴が本文書を通して説明される。
映像処理システムの一例のブロック図である。 映像処理システムのブロック図である。 映像処理の方法の一例に関するフローチャートである。 本開示の一部の実施形態に従った映像符号化システムを示すブロック図である。 本開示の一部の実施形態に従ったエンコーダを示すブロック図である。 本開示の一部の実施形態に従ったデコーダを示すブロック図である。 エンコーダブロック図の一例を示している。 開示される技術の一部の実装に基づいてビジュアルメディアデータを処理する方法例を示している。 開示される技術の一部の実装に基づいてビジュアルメディアデータを処理する方法例を示している。 開示される技術の一部の実装に基づいてビジュアルメディアデータを処理する方法例を示している。
セクション見出しは、本文書において理解の容易さのために使用されており、各セクションにて開示される技術及び実施形態の適用可能性をそのセクションのみに限定するものではない。また、H.266用語は、一部の記述において単に理解の容易さのために使用されており、開示される技術の範囲を限定するためのものではない。従って、ここに記載される技術は、他のビデオコーデックプロトコル及び設計にも適用可能である。本文書では、VVC仕様又はISOBMFFファイルフォーマット仕様の現行ドラフトに対して、消去されるテキストを[[]]が指し示し、そして、追加されるテキストをハイライト(太字イタリック体を含む)が指し示すことによって、テキストに編集変更を示す。
1. 冒頭説明
この文書はビデオファイルフォーマットに関する。具体的には、この文書は、ISOベースメディアファイルフォーマット(ISO base media file format;ISOBMFF)に基づくバーサタイルビデオコーディング(Versatile Video Coding;VVC)映像ビットストリームを搬送するメディアファイルにおける、クロマフォーマット、ビット深度、ピクチャ幅、及びピクチャ高さを含むピクチャフォーマット情報のシグナリングに関する。当該アイディアは、個別に又は様々な組み合わせで、例えばVVC標準といった任意のコーデックによって符号化される映像ビットストリームに、及び例えば開発中のVVCビデオファイルフォーマットといった任意のビデオファイルフォーマットに適用され得る。
2. 略語
ACT adaptive colour transform(適応色変換)
ALF adaptive loop filter(適応ループフィルタ)
AMVR adaptive motion vector resolution(適応動きベクトルレゾリューション)
APS adaptation parameter set(適応パラメータセット)
AU access unit(アクセスユニット)
AUD access unit delimiter(アクセスユニットデリミタ)
AVC advanced video coding(アドバンストビデオコーディング)(勧告ITU-T H.264|ISO/IEC 14496-10)
B bi-predictive(双予測)
BCW bi-prediction with CU-level weights(CUレベル重みを用いた双予測)
BDOF bi-directional optical flow(双方向オプティカルフロー)
BDPCM block-based delta pulse code modulation(ブロックベースデルタプラスコード変調)
BP buffering period(バッファリング期間)
CABAC context-based adaptive binary arithmetic coding(コンテキストベース適応バイナリ算術コーディング)
CB coding block(符号化ブロック)
CBR constant bit rate(定ビットレート)
CCALF cross-component adaptive loop filter(クロスコンポーネント適応ループフィルタ)
CPB coded picture buffer(符号化ピクチャバッファ)
CRA clean random access(クリーンランダムアクセス)
CRC cyclic redundancy check(サイクリック冗長性検査)
CTB coding tree block(符号化ツリーブロック)
CTU coding tree unit(符号化ツリーユニット)
CU coding unit(符号化ユニット)
CVS coded video sequence(符号化映像シーケンス)
DPB decoded picture buffer(復号ピクチャバッファ)
DCI decoding capability information(復号能力情報)
DRAP dependent random access point(従属ランダムアクセスポイント)
DU decoding unit(復号ユニット)
DUI decoding unit information(復号ユニット情報)
EG exponential-Golomb(指数ゴロム)
EGk k-th order exponential-Golomb(K次指数ゴロム)
EOB end of bitstream(ビットストリーム終端)
EOS end of sequence(シーケンス終端)
FD filler data(フィラー(ダミー)データ)
FIFO first-in, first-out(先入先出)
FL fixed-length(固定長)
GBR green,blue,and red(緑、青、及び赤)
GCI general constraints information(一般的制約情報)
GDR gradual decoding refresh(段階的復号リフレッシュ)
GPM geometric partitioning mode(幾何学的分割モード)
HEVC high efficiency video coding(ハイエフィシェンシビデオコーディング) (勧告ITU-T H.265|ISO/IEC 23008-2)
HRD hypothetical reference decoder(仮説的リファレンスデコーダ)
HSS hypothetical stream scheduler(仮説的ストリームスケジューラ)
I intra(イントラ)
IBC intra block copy(イントラブロックコピー)
IDR instantaneous decoding refresh(即時復号リフレッシュ)
ILRP inter-layer reference picture(インターレイヤ参照ピクチャ)
IRAP intra random access point(イントラランダムアクセスポイント)
LFNST low frequency non-separable transform(低周波数非分離可能変換)
LPS least probable symbol(リーストプロバブルシンボル)
LSB least significant bit(最下位ビット)
LTRP long-term reference picture(長期参照ピクチャ)
LMCS luma mapping with chroma scaling(クロマスケーリングを用いたルママッピング)
MIP matrix-based intra prediction(行列ベースイントラ予測)
MPS most probable symbol(最確シンボル)
MSB most significant bit(最上位ビット)
MTS multiple transform selection(マルチ変換選択)
MVP motion vector prediction(動きベクトル予測)
NAL network abstraction layer(ネットワーク抽象化層)
OLS output layer set(出力レイヤセット)
OP operation point(動作点)
OPI operating point information(動作点情報)
P predictive(予測)
PH picture header(ピクチャヘッダ)
POC picture order count(ピクチャオーダーカウント)
PPS picture parameter set(ピクチャパラメータセット)
PROF prediction refinement with optical flow(オプティカルフローを用いた予測精緻化)
PT picture timing(ピクチャタイミング)
PU picture unit(ピクチャユニット)
QP quantization parameter(量子化パラメータ)
RADL random access decodable leading(ランダムアクセス復号可能リーディング(ピクチャ)
RASL random access skipped leading(ランダムアクセススキップリーディング(ピクチャ)
RBSP raw byte sequence payload(ローバイトシーケンスペイロード)
RGB red,green,and blue(赤、緑、及び青)
RPL reference picture list(参照ピクチャリスト)
SAO sample adaptive offset(サンプル適応オフセット)
SAR sample aspect ratio(サンプルアスペクト比)
SEI supplemental enhancement information(補助拡張情報)
SH slice header(スライスヘッダ)
SLI subpicture level information(サブピクチャレベル情報)
SODB string of data bits(データビット列)
SPS sequence parameter set(シーケンスパラメータセット)
STRP short-term reference picture(短期参照ピクチャ)
STSA step-wise temporal sublayer access(段階的時間サブレイヤアクセス)
TR truncated rice(トランケーテッドライス)
VBR variable bit rate(可変ビットレート)
VCL video coding layer(映像符号化レイヤ)
VPS video parameter set(ビデオパラメータセット)
VSEI versatile supplemental enhancement information(多用途補助拡張情報)(勧告ITU-T H.274|ISO/IEC 23002-7)
VUI video usability information(映像ユーザビリティ情報)
VVC versatile video coding(バーサタイルビデオコーディング)(勧告ITU-T H.266|ISO/IEC 23090-3)
3. 映像符号化序論
3.1. 映像符号化標準
映像符号化標準は、主に、周知のITU-T及びISO/IEC標準の開発を通じて発展してきた。ITU-TがH.261及びH.263を作成し、ISO/IECがMPEG-1及びMPEG-4 Visualを作成し、そして、これら2つの組織が共同で、H.262/MPEG-2 Video及びH.264/MPEG-4 AVC(Advanced Video Coding)及びH.265/HEVC標準を作成した。H.262以来、映像符号化標準は、時間予測に加えて変換符号化が利用されるハイブリッド映像符号化構造に基づいている。HEVCの先の将来の映像符号化技術を探求するため、2015年にVCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、数多くの新しい方法が、JVETによって採用され、共同探索モデルJEM(Joint Exploration Model)と名付けられたリファレンスソフトウェアに入れられてきた。JVETは後に、VVC(Versatile Video Coding)プロジェクトが正式に開始された時に、JVET(Joint Video Experts Team)と改称された。VVC[3]は、2020年7月1日に終了した第19回会議でJVETによって最終策定されたHEVCと比較して50%のビットレート低減を目指す新しい符号化標準である。
VVC(Versatile Video Coding)標準(ITU-T H.266|ISO/IEC 23090-3)及び関連するVSEI(Versatile Supplemental Enhancement Information)標準(ITU-T H.274|ISO/IEC 23002-7)は、例えばテレビジョン放送、ビデオ会議、又はストレージ媒体からの再生などの伝統的な用途と、例えば適応ビットレートストリーミング、映像領域抽出、複数の符号化映像ビットストリームからのコンテンツの合成及び融合、マルチビュー映像、スケーラブル階層化コーディング、及びビューポート適応360°没入メディアなどのいっそう新しくて先進的な用途との両方を含む、最大限に広範囲のアプリケーションで使用に向けて設計されている。
3.2. ファイルフォーマット標準
メディアストリーミングアプリケーションは、典型的に、IP、TCP、及びHTTPトランスポート方法に基づいており、典型的に、例えばISOベースメディアファイルフォーマット(ISOBMFF)などのファイルフォーマットを当てにしている。1つのそのようなストリーミングシステムは、DASH(dynamic adaptive streaming over HTTP)である。ある映像フォーマットをISOBMFF及びDASHとともに使用するためには、例えばISO/IEC 14496-15(“Information technology ― Coding of audio-visual objects ― Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format”)におけるHEVCファイルフォーマット及びAVCファイルフォーマットなどのように、その映像フォーマットに特有のファイルフォーマット仕様が、ISOBMFFトラックにおける並びにDASH表現及びセグメントにおける映像コンテンツのカプセル化のために必要となる。映像ビットストリームについての重要な情報、例えば、プロファイル、ティア、及びレベル、並びにその他の多くが、例えば、ストリーミングセッションの開始時の初期化のため及びストリーミングセッション中のストリーム適応のための両方での適切なメディアセグメントの選択のためといった、コンテンツ選択目的で、ファイルフォーマットレベルのメタデータ及び/又はDASHメディアプレゼンテーション記述(MPD)として露わにされる必要がある。
同様に、ある画像フォーマットをISOBMFFとともに使用するためには、例えばMPEGアウトプット文書N19454(“Information technology ― Coding of audio-visual objects ― Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format ― Amendment 2: Carriage of VVC and EVC in ISOBMFF”,2020年7月)におけるHEVC画像ファイルフォーマット及びAVC画像ファイルフォーマットなどのように、その画像フォーマットに特有のファイルフォーマット仕様が必要となる。
ISOBMFFに基づいたVVC映像コンテンツのストレージ用のファイルフォーマットであるVVC映像ファイルフォーマットは、現在、MPEGによって開発中である。VVC映像ファイルフォーマットの最新のドラフト仕様は、MPEGアウトプット文書N19460(“Information technology ― High efficiency coding and media delivery in heterogeneous environments ― Part 12: Image File Format ― Amendment 3: Support for VVC, EVC, slideshows and other improvements”,2020年7月)に含まれている。
ISOBMFFに基づいた、VVCを用いて符号化された画像コンテンツのストレージ用のファイルフォーマットである、VVC画像ファイルフォーマットは、現在、MPEGによって開発中である。VVC画像ファイルフォーマットの最新のドラフト仕様は、[12]に含まれている。
3.3. VVC映像ファイルフォーマットの一部詳細
3.3.1. デコーダコンフィギュレーション情報
3.3.1.1. VVCデコーダコンフィギュレーションレコード
3.3.1.1.1. 定義
この従属節は、ISO/IEC 23090-3映像コンテンツ向けのデコーダコンフィギュレーション情報を規定する。このレコードは、各サンプルに含まれるNALユニットの長さを指し示すために各サンプル内で使用される長さフィールドのサイズと、サンプルエントリに格納される場合のパラメータセットとを含む。このレコードは外部フレームとされる(そのサイズが、それを含む構造によって供給される);
このレコードはバージョンフィールドを含む。仕様のこのバージョンは、このレコードのバージョン1を定義する。レコードへの適合しない変更は、バージョン番号の変更によって指し示されることになる。リーダ(reader)は、バージョン番号が認識されない場合、このレコード又はそれが適用されるストリームを復号することを試みないとする;
このレコードへの適合する拡張は、それを拡張するのであって、コンフィグレーションバージョンコードを変更しない。リーダは、理解できるデータの定義を超えた、認識されないデータを無視するように整えられるべきである;
トラックが、ネイティブに、又は‘subp’トラック参照を分解してではあるが、VVCビットストリームを含むとき、VvcPtlRecordがデコーダコンフィギュレーションレコードに存在するものとする。トラックのデコーダコンフィギュレーションレコード内でptl_present_flagがゼロに等しい場合、そのトラックは‘oref’トラック参照を持つものとする;
VvcPTLRecord、chroma_format_idc、及びbit_depth_minus8の構文要素の値は、このレコードによって記述されるストリームが復号されるときにアクティブにされている全てのパラメータセット(この段落中の以下の文において“全てのパラメータセット”として参照する)に対して有効であるとする。具体的には、以下の制約が適用される:
プロファイルインジケーションgeneral_profile_idcは、このコンフィギュレーションレコードに関連するストリームが適合するプロファイルを指し示すものとする;
注記1:SPSが異なるプロファイルでマークされている場合、ストリームは、もしあれば、ストリーム全体がどのプロファイルに準拠するかを決定するための検査を必要とし得る。ストリーム全体が検査されない場合、又はストリーム全体が準拠するプロファイルが存在しないことを検査が明らかにした場合、ストリーム全体が、これらのルールを満たすことができる別々のコンフィギュレーションレコードを持つ2つ以上のサブストリームに分割されるものとする;
ティアインジケーションgeneral_tier_flagは、ティアが、全てのパラメータセットにおいて指し示される最も高いティア以上であることを指し示すとする;
general_constraint_infoの各ビットは、全てのパラメータセットがそのビットをセットする場合にのみセットされ得る;
レベルインジケーションgeneral_level_idcは、能力のレベルが、全てのパラメータセットにおける最も高いティアに対して指し示される最高レベル以上であることを指し示すものとする;
次の制約がchroma_format_idcに適用される:
- ISO/IEC 23090-3で定義されるsps_chroma_format_idcの値が、トラックのNALユニットによって参照される全てのSPSにおいて同じである場合、chroma_format_idcはsps_chroma_format_idcに等しいとする;
- そうでない場合で、ptl_present_flagが1に等しい場合、chroma_format_idcは、ISO/IEC 23090-3で定義されるvps_ols_dpb_chroma_format[output_layer_set_idx]に等しいとする;
- それ以外の場合、chroma_format_idcは存在しないとする;
次の制約がbit_depth_minus8に適用される:
- ISO/IEC 23090-3で定義されるsps_bitdepth_minus8の値が、トラックのNALユニットによって参照される全てのSPSにおいて同じである場合、bit_depth_minus8はsps_bitdepth_minus8に等しいとする;
- そうでない場合で、ptl_present_flagが1に等しい場合、bit_depth_minus8は、ISO/IEC 23090-3で定義されるvps_ols_dpb_bitdepth_minus8[output_layer_set_idx]に等しいとする;
- それ以外の場合、bit_depth_minus8は存在しないとする;
クロマフォーマット及びビット深度、並びにVVC映像エレメンタリストリームによって使用されるその他の重要なフォーマット情報について、VVCデコーダコンフィギュレーションレコード内で明示的なインジケーションが提供される。2つのシーケンスがそれらのVUI情報内の色空間インジケーションにおいて異なる場合、2つの異なるVVCサンプルエントリも必要とされる;
初期化NALユニットを搬送するための配列のセットが存在する。NALユニットタイプは、DCI、VPS、SPS、PPS、プレフィックスAPS、プレフィックスSEI NALユニットのみを指し示すように制約される。ISO/IEC 23090-3において及びこの仕様において留保されるNALユニットタイプが将来において定義を得ることができ、リーダはNALユニットタイプの留保された又は許可されていない値を持つ配列を無視するものとする;
注記2:この‘耐性ある’挙動は、エラーが発生しないように設計され、将来仕様における、これらの配列への、後方互換性のある拡張の可能性を許す;
注記3:サンプルエントリにて搬送されるNALユニットは、そのサンプルエントリを参照する最初のサンプルから再構築されたアクセスユニット内の、又はさもなければ該アクセスユニットの始まりにある、AUD及びOPI NALユニット(もしあれば)のすぐ後に続くように含められる;
配列がDCI、VPS、SPS、PPS、プレフィックスAPS、プレフィックスSEIの順であることが推奨される。
3.3.1.1.2. 構文
aligned(8) class VvcPTLRecord(num_sublayers) {
unsigned int(8) num_bytes_constraint_info;
unsigned int(7) general_profile_idc;
unsigned int(1) general_tier_flag;
unsigned int(8) general_level_idc;
unsigned int(1) ptl_frame_only_constraint_flag;
unsigned int(1) ptl_multilayer_enabled_flag;
if (num_bytes_constraint_info > 0)
unsigned int(8*num_bytes_constraint_info - 2) general_constraint_info;
for (i=num_sublayers - 2; i >= 0; i--)
unsigned int(1) ptl_sublayer_level_present_flag[i];
for (j=num_sublayers; j<=8 && num_sublayers > 1; j++)
bit(1) ptl_reserved_zero_bit = 0;
for (i=num_sublayers-2; i >= 0; i--)
if (ptl_sublayer_level_present[i])
unsigned int(8) sublayer_level_idc[i];
unsigned int(8) num_sub_profiles;
for (j=0; j < num_sub_profiles; j++)
unsigned int(32) general_sub_profile_idc;
}
aligned(8) class VvcDecoderConfigurationRecord {
unsigned int(8) configurationVersion = 1;
unsigned int(16) avgFrameRate;
unsigned int(2) constantFrameRate;
unsigned int(3) numTemporalLayers;
unsigned int(2) lengthSizeMinusOne;
unsigned int(1) ptl_present_flag;
if (ptl_present_flag) {
VvcPTLRecord(numTemporalLayers) track_ptl;
unsigned int(16) output_layer_set_idx;
}
unsigned int(1) chroma_format_present_flag;
if (chroma_format_present_flag)
unsigned int(2) chroma_format_idc;
else
bit(2) reserved = '11'b;
unsigned int(1) bit_depth_present_flag;
if (bit_depth_present_flag)
unsigned int(3) bit_depth_minus8;
else
bit(3) reserved = '111'b;
unsigned int(1) reserved= '1'b;
unsigned int(8) numOfArrays;
for (j=0; j < numOfArrays; j++) {
unsigned int(1) array_completeness;
bit(1) reserved = 0;
unsigned int(6) NAL_unit_type;
unsigned int(16) numNalus;
for (i=0; i< numNalus; i++) {
unsigned int(16) nalUnitLength;
bit(8*nalUnitLength) nalUnit;
}
}
}
3.3.1.1.3. セマンティクス
general_profile_idc、general_tier_flag、general_sub_profile_idc、general_constraint_info、general_level_idc、ptl_frame_only_constraint_flag、ptl_multilayer_enabled_flag、sublayer_level_present、及びsublayer_level_idc[i]は、このコンフィギュレーションレコードが適用されるストリームについての、ISO/IEC 23090-3で定義される、フィールドgeneral_profile_idc、general_tier_flag、general_sub_profile_idcのマッチング値、general_constraint_info()、general_level_idc、ptl_multilayer_enabled_flag、ptl_frame_only_constraint_flag、sublayer_level_present、及びsublayer_level_idc[i]内のビットを含む;
avgFrameRateは、このコンフィギュレーションレコードが適用されるストリームについての、フレーム/(256秒)の単位での平均フレームレートを与える。値0は、規定されていない平均フレームレートを指し示す;
1に等しいconstantFrameRateは、このコンフィギュレーションレコードが適用されるストリームが一定のフレームレートのものであることを指し示す。値2は、ストリーム内の各時間レイヤの表現が一定フレームレートのものであることを指し示す。値0は、ストリームが一定のフレームレートのものであるかもしれないし、そうでないかもしれないことを指し示す;
1より大きいnumTemporalLayersは、このコンフィギュレーションレコードが適用されるトラックが時間スケーラブルであり、含まれる時間レイヤ(ISO/IEC 23090-3では時間サブレイヤ又はサブレイヤとしても参照される)の数がnumTemporalLayersに等しいことを指し示す。値1は、このコンフィギュレーションレコードが適用されるトラックが時間スケーラブルでないことを指し示す。値0は、このコンフィギュレーションレコードが適用されるトラックが時間スケーラブルであるかが不明であることを指し示す;
lengthSizeMinusOne+1は、このコンフィギュレーションレコードが適用されるストリーム内のVVC映像ストリームサンプルにおけるNALUnitLengthフィールドの、バイト単位での長さを指し示す。例えば、1バイトのサイズが0という値で指し示される。このフィールドの値は、1、2、又は4バイトで符号化される長さにそれぞれ対応する0、1、又は3のうちの1つであるとする;
1に等しいptl_present_flagは、トラックが特定の出力レイヤセットに対応するVVCビットストリームを含むことを規定する。0に等しいptl_present_flagは、トラックが特定の出力レイヤセットに対応するVVCビットストリームを含まずに、むしろ、出力レイヤセットを形成しない1つ以上の個別のレイヤ、又は0に等しいTemporalIdを持つサブレイヤを除く個別のサブレイヤを含み得ることを規定する;
num_sub_profilesは、デコーダコンフィギュレーションレコードにおいて指し示されるサブプロファイルの数を定める;
track_ptlは、トラックに含まれるVVCビットストリームによって表される出力レイヤセットのプロファイル、ティア、及びレベルを規定する;
output_layer_set_idxは、トラックに含まれるVVCビットストリームによって表される出力レイヤセットの出力レイヤセットインデックスを規定する。output_layer_set_idxの値は、トラックに含まれるビットストリームを復号するために、ISO/IEC 23090-3に規定されるように、VVCデコーダに外部手段によって提供されるTargetOlsIdx変数の値として使用されることができる;
0に等しいchroma_format_present_flagは、chroma_format_idcが存在しないことを規定する。1に等しいchroma_format_present_flagは、chroma_format_idcが存在することを規定する;
chroma_format_idcは、そのトラックに適用されるクロマフォーマットを指し示す。次の制約がchroma_format_idcに適用される:
- ISO/IEC 23090-3で定義されるsps_chroma_format_idcの値が、トラックのNALユニットによって参照される全てのSPSにおいて同じである場合、chroma_format_idcはsps_chroma_format_idcに等しいとする;
- そうでない場合で、ptl_present_flagが1に等しい場合、chroma_format_idcは、ISO/IEC 23090-3で定義されるvps_ols_dpb_chroma_format[output_layer_set_idx]に等しいとする;
- それ以外の場合、chroma_format_idcは存在しないとする;
0に等しいbit_depth_present_flagは、bit_depth_minus8が存在しないことを規定する。1に等しいbit_depth_present_flagは、bit_depth_minus8が存在することを規定する;
bit_depth_minus8は、そのトラックに適用されるビット深度を指し示す。次の制約がbit_depth_minus8に適用される:
- ISO/IEC 23090-3で定義されるsps_bitdepth_minus8の値が、トラックのNALユニットによって参照される全てのSPSにおいて同じである場合、bit_depth_minus8はsps_bitdepth_minus8に等しいとする;
- そうでない場合で、ptl_present_flagが1に等しい場合、bit_depth_minus8は、ISO/IEC 23090-3で定義されるvps_ols_dpb_bitdepth_minus8[output_layer_set_idx]に等しいとする;
- それ以外の場合、bit_depth_minus8は存在しないとする;
numArraysは、指し示される(1つ以上の)タイプのNALユニットの配列の数を指し示す;
array_completenessは、1に等しいとき、所与のタイプの全てのNALユニットが続く配列内にあり、ストリーム内にないことを指し示し、0に等しいとき、指し示されるタイプの追加のNALユニットがストリーム内にあり得ることを指し示し、デフォルト値及び許容値がサンプルエントリ名によって制約される;
NAL_unit_typeは、次の配列内のNALユニットのタイプを指し示す(そのタイプの全てとする):それは、ISO/IEC 23090-2で定義された値をとる;それは、DCI、VPS、SPS、PPS、APS、プレフィックスSEI、又はサフィックスSEI NALユニットを指し示す値のうち1つをとるように制約される;
numNalusは、このコンフィギュレーションレコードが適用されるストリームについてのコンフィギュレーションレコードに含まれる、指し示されたタイプのNALユニットの数を指し示す。SEIアレイは、‘宣言的’性質のSEIメッセージ、すなわち、全体としてのストリームについての情報を提供するものとする。そのようなSEIの一例は、ユーザデータSEIとし得る;
nalUnitLengthは、NALユニットのバイト単位での長さを指し示す;
nalUnitは、ISO/IEC 23090-3に規定されるように、DCI、VPS、SPS、PPS、APS又は宣言的SEI NALユニットを含む;
3.3.2. 動作点情報サンプルグループ
3.3.2.1. 定義
アプリケーションは、所与のVVCビットストリームによって提供される異なる動作点及びそれらの構成について、動作点情報(Operating Points Information)サンプルグループ(‘vopi’)を用いて通知される。各動作点は、出力レイヤセット、最大TemporarId値、並びにプロファイル、レベル、及びティアシグナリングに関係する。これらの情報は全て、‘vopi’サンプルグループによってキャプチャされる。この情報とは別に、このサンプルグループはまた、レイヤ間の従属関係情報を提供する;
VVCビットストリームに関して2つ以上のVVCトラックが存在し、且つそのVVCビットストリームに関して動作点エンティティグループが存在しないとき、次の両方が適用される:
- そのVVCビットストリームに関するVVCトラックの中に、‘vopi’サンプルグループを搬送するトラックが1つのみ存在するとする;
- そのVVCビットストリームの他の全てのVVCトラックは、‘vopi’サンプルグループを搬送するトラックへの‘oref’タイプのトラック参照を持つものとする;
所与のトラック内の任意の特定のサンプルに対して、別のトラック内の時間コロケートサンプルが、この特定のサンプルのものと同じ復号時間を有するサンプルとして定められる。‘vopi’サンプルグループを搬送するトラックTへの‘oref’トラック参照を持つトラックT内の各サンプルSに対し、以下が適用される:
- トラックT内に時間コロケートサンプルSが存在する場合、サンプルSは、サンプルSと同じ‘vopi’サンプルグループエントリに関連付けられる;
- さうでない場合、サンプルSは、復号時間においてサンプルSに先行するトラックT内のサンプルのうち最後のものと同じ‘vopi’サンプルグループエントリに関連付けられる;
複数のVPSがVVCビットストリームによって参照されるとき、グルーピングタイプ‘vopi’を有するサンプルグループ記述ボックスに複数のエントリを含む必要があるとし得る。より一般的な、単一のVPSが存在するケースでは、ISO/IEC 14496-12で定義されるデフォルトサンプルグループメカニズムを使用して、動作点情報サンプルグループを、各トラックフラグメントに含めるのではなく、サンプルテーブルボックスに含めることが推奨される;
grouping_type_parameterは、グルーピングタイプ‘vopi’を有するSampleToGroupBoxに対しては定められない;
3.3.2.2. 構文
class VvcOperatingPointsRecord {
unsigned int(8) num_profile_tier_level_minus1;
for (i=0; i<=num_profile_tier_level_minus1; i++) {
unsigned int(8) ptl_max_temporal_id[i];
VvcPTLRecord(ptl_max_temporal_id[i]+1) ptl[i];
}
unsigned int(1) all_independent_layers_flag;
bit(7) reserved = 0;
if (all_independent_layers_flag){
unsigned int(1) each_layer_is_an_ols_flag;
bit(7) reserved = 0;
} else
unsigned int(8) ols_mode_idc;
unsigned int(16) num_operating_points;
for (i=0; i<num_operating_points) {
unsigned int(16) output_layer_set_idx;
unsigned int(8) ptl_idx;
unsigned int(8) max_temporal_id;
unsigned int(8) layer_count;
for (j=0; j<layer_count; j++) {
unsigned int(6) layer_id;
unsigned int(1) is_outputlayer;
bit(1) reserved = 0;
}
bit(6) reserved = 0;
unsigned int(1) frame_rate_info_flag
unsigned int(1) bit_rate_info_flag
if (frame_rate_info_flag) {
unsigned int(16) avgFrameRate;
bit(6) reserved = 0;
unsigned int(2) constantFrameRate;
}
if (bit_rate_info_flag) {
unsigned int(32) maxBitRate;
unsigned int(32) avgBitRate;
}
}
unsigned int(8) max_layer_count;
for (i=0; i<max_layer_count; i++) {
unsigned int(8) layerID;
unsigned int(8) num_direct_ref_layers;
for (j=0; j<num_direct_ref_layers; j++)
unsigned int(8) direct_ref_layerID;
unsigned int(8) max_tid_il_ref_pics_plus1;
}
}
class VvcOperatingPointsInformation extends VisualSampleGroupEntry ('vopi') {
VvcOperatingPointsRecord oinf;
}
3.3.2.3. セマンティクス
num_profile_tier_level_minus1+1は、続くプロファイル、ティア、及びレベルの組み合わせ並びに関連するフィールドの数を与える;
ptl_max_temporal_id[i]は、規定されるi番目のプロファイル、ティア、及びレベル構造に関連するビットストリームのNALユニットの最大TemporalIDを与える;
注記:ptl_max_temporal_id[i]及び後述の動作点のmax_temporal_idのセマンティクスは、それらが同じ数値を搬送し得るとはいえ異なる;
ptl[i]は、i番目のプロファイル、ティア、及びレベル構造を規定する;
all_independent_layers_flag、each_layer_is_an_ols_flag、ols_mode_idc、及びmax_tid_il_ref_pics_plus1は、ISO/IEC 23090-3で定義されている;
num_operating_pointsは、それについて情報が続く動作点の数を与える;
output_layer_set_idxは、動作点を定める出力レイヤセットのインデックスである。output_layer_set_idxとlayer_id値との間のマッピングは、インデックスoutput_layer_set_idxを有する出力レイヤセットに対してVPSによって規定されるものと同じとする;
ptl_idxは、インデックスoutput_layer_set_idxを有する出力レイヤセットについて列挙されるプロファイル、レベル、及びティア構造のゼロベースのインデックスをシグナリングする;
max_temporal_idは、その動作点のNALユニットの最大TemporalIdを与える;
注記:レイヤ情報サンプルグループにおいて指し示される最大TemporalId値は、ここで指し示される最大TemporalIdとは異なるセマンティクスを持つ。しかしながら、それらは文字通り同じ数値を搬送し得る;
layer_countは、その動作点の、ISO/IEC 23090-3で定義される、必要なレイヤの数を指し示すフィールドである;
layer_idは、動作点のレイヤについてのnuh_layer_id値を提供する;
is_outputlayerは、レイヤが出力レイヤであるか否かを指し示すフラグである。1が出力レイヤを指し示す;
0に等しいframe_rate_info_flagは、動作点についてフレームレート情報が存在しないことを指し示す。値1は、動作点についてフレームレート情報が存在することを指し示す;
0に等しいbit_rate_info_flagは、動作点についてビットレート情報が存在しないことを指し示す。値1は、動作点についてビットレート情報が存在することを指し示す;
avgFrameRateは、動作点についての、フレーム/(256秒)の単位での平均フレームレートを与える。値0は、規定されていない平均フレームレートを指し示す;
1に等しいconstantFrameRateは、動作点のストリームが一定のフレームレートのものであることを指し示す。値2は、動作点のストリーム内の各時間レイヤの表現が一定フレームレートのものであることを指し示す。値0は、動作点のストリームが一定のフレームレートのものであるかもしれないし、そうでないかもしれないことを指し示す;
maxBitRateは、1秒の任意のウィンドウ上での、動作点のストリームのビット/秒単位での最大ビットレートを与える;
avgBitRateは、動作点のストリームのビット/秒単位での平均ビットレートを与える;
max_layer_countは、その関連付けられたベーストラックに関係する全ての動作点における全ての無二のレイヤのカウントである;
layerIDは、:それについて全ての直接参照レイヤが続くdirect_ref_layerIDのループ内で与えられるレイヤのnuh_layer_idである;
num_direct_ref_layersは、layerIDに等しいnuh_layer_idを有するレイヤについての直接参照レイヤの数である;
direct_ref_layerIDは、直接参照レイヤのnuh_layer_idである;
3.3.3. 動作点エンティティグループ
3.3.3.1. 全般
動作点エンティティグループは、動作点へのトラックのマッピング及び動作点のプロファイルレベル情報を提供するために定義される;
このエンティティグループに記述された動作点にマッピングされるトラックのサンプルを集約するときの暗黙の再構成プロセスは、準拠するVVCビットストリームを生じさせるために更なるNALユニットを除去することを必要としない。動作点エンティティグループに属するトラックは、動作点エンティティグループにおいて指し示されるgroup_idに対するタイプ‘oref’のトラック参照を持つとする;
動作点エンティティグループに含まれる全てのentity_id値は、同じVVCビットストリームに属するものとする。存在するとき、OperatingPointGroupBoxは、ムービーレベルのMetaBox内のGroupsListBoxに含まれるものとし、ファイルレベル又はトラックレベルのMetaBoxに含まれるのではないとする;
3.3.3.2. 構文
aligned(8) class OperatingPointGroupBox extends EntityToGroupBox('opeg',0,0)
{
unsigned int(8) num_profile_tier_level_minus1;
for (i=0; i<=num_profile_tier_level_minus1; i++)
VvcPTLRecord(0) opeg_ptl[i];
unsigned int(16) num_operating_points;
for (i=0; i<num_operating_points) {
unsigned int(16) output_layer_set_idx;
unsigned int(8) ptl_idx;
unsigned int(8) max_temporal_id;
unsigned int(8) layer_count;
for (j=0; j<layer_count; j++) {
unsigned int(6) layer_id;
unsigned int(1) is_outputlayer;
bit(1) reserved = 0;
}
bit(6) reserved = 0;
unsigned int(1) frame_rate_info_flag
unsigned int(1) bit_rate_info_flag
if (frame_rate_info_flag) {
unsigned int(16) avgFrameRate;
bit(6) reserved = 0;
unsigned int(2) constantFrameRate;
}
if (bit_rate_info_flag) {
unsigned int(32) maxBitRate;
unsigned int(32) avgBitRate;
}
unsigned int(8) entity_count;
for (j=0; j<entity_count; j++) {
unsigned int(8) entity_idx;
}
}
}
3.3.3.3. セマンティクス
num_profile_tier_level_minus1+1は、続くプロファイル、ティア、及びレベルの組み合わせ並びに関連するフィールドの数を与える;
opeg_ptl[i]は、i番目のプロファイル、ティア、及びレベル構造を規定する;
num_operating_pointsは、それについて情報が続く動作点の数を与える;
output_layer_set_idxは、動作点を定める出力レイヤセットのインデックスである。output_layer_set_idxとlayer_id値との間のマッピングは、インデックスoutput_layer_set_idxを有する出力レイヤセットに対してVPSによって規定されるものと同じとする;
ptl_idxは、インデックスoutput_layer_set_idxを有する出力レイヤセットについて列挙されるプロファイル、レベル、及びティア構造のゼロベースのインデックスをシグナリングする;
max_temporal_idは、その動作点のNALユニットの最大TemporalIdを与える;
注記:レイヤ情報サンプルグループにおいて指し示される最大TemporalId値は、ここで指し示される最大TemporalIdとは異なるセマンティクスを持つ。しかしながら、それらは文字通り同じ数値を搬送し得る;
layer_countは、その動作点の、ISO/IEC 23090-3で定義される、必要なレイヤの数を指し示すフィールドである;
layer_idは、動作点のレイヤについてのnuh_layer_id値を提供する;
is_outputlayerは、レイヤが出力レイヤであるか否かを指し示すフラグである。1が出力レイヤを指し示す;
0に等しいframe_rate_info_flagは、動作点についてフレームレート情報が存在しないことを指し示す。値1は、動作点についてフレームレート情報が存在することを指し示す;
0に等しいbit_rate_info_flagは、動作点についてビットレート情報が存在しないことを指し示す。値1は、動作点についてビットレート情報が存在することを指し示す;
avgFrameRateは、動作点についての、フレーム/(256秒)の単位での平均フレームレートを与える。値0は、規定されていない平均フレームレートを指し示す;
1に等しいconstantFrameRateは、動作点のストリームが一定のフレームレートのものであることを指し示す。値2は、動作点のストリーム内の各時間レイヤの表現が一定フレームレートのものであることを指し示す。値0は、動作点のストリームが一定のフレームレートのものであるかもしれないし、そうでないかもしれないことを指し示す;
maxBitRateは、1秒の任意のウィンドウ上での、動作点のストリームのビット/秒単位での最大ビットレートを与える;
avgBitRateは、動作点のストリームのビット/秒単位での平均ビットレートを与える;
entity_countは、動作点に存在するトラックの数を規定する;
entity_idxは、動作点に属するエンティティグループ内のentity_idリストへのインデックスを規定する。
4. 開示される技術的ソリューションによって解決される技術的問題の例
ピクチャフォーマット情報のシグナリングに関するVVC映像ファイルフォーマットの最新設計は、以下の問題を有する:
1)VvcDecoderConfigurationRecordは、クロマフォーマット及びビット深度のオプションでのシグナリングを含むが、ピクチャ幅及びピクチャ高さのシグナリングを含まず、また、動作点情報‘vopi’サンプルグループエントリ及び動作点エンティティグループ‘opeg’ボックスは、これらのパラメータのいずれも含んでいない;
しかしながら、PTLがある場所でシグナリングされるとき、クロマフォーマット、ビット深度、並びにピクチャ幅及びピクチャ高さも、追加の能力表示としてシグナリングされるべきである;
なお、ビジュアルサンプルエントリの幅及び高さフィールドは、クロッピングされたフレーム幅及び高さである。従って、クロッピングウィンドウオフセットが全てゼロであり且つピクチャがフレームであるのでない限り、幅及び高さの値は、復号ピクチャのピクチャ幅及び高さと同じにならない;
現行では、次のようなケースが発生し得る:
a. ‘oref’トラック参照なしで、1つのVVCトラックに含まれたシングルレイヤビットストリームのみである。従って、VvcPtlRecordはデコーダコンフィグレーションレコード内に存在する。しかしながら、この場合、クロマフォーマット、ビット深度、ピクチャ幅、及びピクチャ高さのうちの一部又は全てが、サンプルエントリ、‘vopi’サンプルグループエントリ、又は‘opeg’エンティティグループボックスのいずれでもシグナリングされないことが可能である;
b. 各動作点についてのPTL情報を含む動作点情報が‘vopi’サンプルグループエントリ又は‘opeg’エンティティグループボックスのいずれかに格納されて、マルチレイヤビットストリームが複数のトラックに格納される一方で、クロマフォーマット、ビット深度、ピクチャ幅、及びピクチャ高さのいずれもが、サンプルエントリ、‘vopi’サンプルグループエントリ、又は‘opeg’エンティティグループボックスのいずれでもシグナリングされない;
2)VvcDecoderConfigurationRecord内のパラメータchroma_format_idcは、パラメータセット自体で復号に十分であるため、復号のためではなく、むしろ能力インジケーションである。復号のためであっても、SPS内のchroma_format_idcが必要とされるだけでなく、マルチレイヤOLS用のvps_ols_dpb_chroma_format[]も必要とされる。従って、ここでは実際には最大のdpb_chroma_formatがシグナリングされるべきであるが、現行設計ではそうではない。対応するビット深度、ピクチャ幅、及びピクチャ高さのパラメータについても同様である;
3)ptl_present_flagが1に等しいとき、chroma_format_idcがvps_ols_dpb_chroma_format[output_layer_set_idx]に等しいものとされることが既定されている。次の2つの問題が存在する(対応するビット深度パラメータについても同様):
a. vps_ols_dpb_chroma_format[]の値は、異なるCVSに対して異なることができる。従って、これが全てのVPSに対して同じであることを要求するか、それが最大以上であることを規定するか、のいずれかを必要とする;
b. vps_ols_dpb_chroma_format[idx]のインデックス値idxは、マルチレイヤOLSのリストへのインデックスであり、それ故に、全てのOLSのリストへのインデックスであるoutput_layer_set_idxを直接使用することは正しくない。
5. 技術的ソリューションのリスト
上の問題を解決するため、以下に要約した方法を開示する。これらの項目は、全体的な概念を説明するための例と見なされるべきであり、狭く解釈されるべきでない。また、これらの項目は、個別に又は任意のやり方で組み合わせて適用されることができる:
1)ptl_present_flagが1に等しいとき、VvcDecoderConfigurationRecord内でchroma_format_idc及びbit_depth_minus8をシグナリングし、ptl_present_flagが0に等しいときには、VvcDecoderConfigurationRecord内でそれらをシグナリングしない;
2)コンフィギュレーションレコードが適用されるVVCストリームがシングルレイヤビットストリームであるとき、sps_chroma_format_idcの値は、現在サンプルエントリ記述が適用されるサンプル内のVCL NALユニットによって参照される全てのSPSに対して同じであるとするとともに、chroma_format_idcの値は、sps_chroma_format_idcに等しいとする;
3)コンフィギュレーションレコードが適用されるVVCストリームがマルチレイヤビットストリームであるとき、chroma_format_idcの値は、現在サンプルエントリ記述が適用される全てのCVSに対して、output_layer_set_idxによって特定されるOLSに適用されるvps_ols_dpb_chroma_format[output_layer_set_idx]のうちの最大値に等しいとする;
a. あるいは、上の“に等しい”が“以上である”に変更される;
4)コンフィギュレーションレコードが適用されるVVCストリームがシングルレイヤビットストリームであるとき、sps_bitdepth_minus8の値は、現在サンプルエントリ記述が適用されるサンプル内のVCL NALユニットによって参照される全てのSPSに対して同じであるとするとともに、bit_depth_minus8の値は、sps_bitdepth_minus8に等しいとする;
5)コンフィギュレーションレコードが適用されるVVCストリームがマルチレイヤビットストリームであるとき、bit_depth_minus8の値は、現在サンプルエントリ記述が適用される全てのCVSに対して、output_layer_set_idxによって特定されるOLSに適用されるvps_ols_dpb_bitdepth_minus8[output_layer_set_idx]のうちの最大値に等しいとする;
a. あるいは、上の“に等しい”が“以上である”に変更される;
6)chroma_format_idc及びbit_depth_minus8のシグナリングと同様に、VvcDecoderConfigurationRecord内でのpicture_width及びpicture_heightのシグナリングを追加する。そして、picture_widthフィールド及びpicture_heightフィールドはどちらも16ビットを使ってシグナリングされる;
a. あるいは、picture_widthフィールド及びpicture_heightフィールドはどちらも24ビットを使ってシグナリングされる;
b. あるいは、picture_widthフィールド及びpicture_heightフィールドはどちらも32ビットを使ってシグナリングされる;
c. あるいは、さらに、コンフィギュレーションレコードが適用されるVVCストリームがシングルレイヤビットストリームであるとき、picture_widthフィールド及びpicture_heightフィールドをシグナリングすることは、クロッピングウィンドウオフセットが全てゼロであり且つピクチャがフレームである場合にスキップされてもよい;
7)上のVvcDecoderConfigurationRecord内に存在する場合と同様のセマンティクス及び制約を用いて、例えばptl_idxの直後で、各動作点について、VvcOperatingPointsRecord及びOperatingPointGroupBox内でのchroma_format_idc、bit_depth_minus8、picture_width及びpicture_heightのシグナリングを追加する。
6. 実施形態
以下は、VVC映像ファイルフォーマットに関する標準仕様に適用されることができる、第5節に要約した発明態様の一部の幾つかの実施形態例である。変更対象テキストは、2020年7月のMPEGアウトプット文書N19454“Information technology ― Coding of audio-visual objects ― Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format ― Amendment 2: Carriage of VVC and EVC in ISOBMFF”における最新ドラフト仕様に基づいている。追加又は変更された大きく関連する部分は太字イタリック体で強調表示されており、削除された部分の一部は二重括弧で強調表示されている(例えば、[[a]]は文字‘a’の削除を表す)。本質的に編集上の変更であるために強調表示していない変更も一部あり得る。
6.1. 第1実施形態
この実施形態は、項目1乃至7についてのものである。
6.1.1. デコーダコンフィギュレーション情報
6.1.1.1. VVCデコーダコンフィギュレーションレコード
6.1.1.1.1. 定義
この従属節は、ISO/IEC 23090-3映像コンテンツ向けのデコーダコンフィギュレーション情報を規定する。
...
(外1)
Figure 2022050361000002
(外2)
Figure 2022050361000003
(外3)
Figure 2022050361000004
(外4)
Figure 2022050361000005
...
(外5)
Figure 2022050361000006
Figure 2022050361000007
(外6)
Figure 2022050361000008
Figure 2022050361000009
6.1.2. 動作点情報サンプルグループ
6.1.2.1. 定義
...
6.1.2.2. 構文
(外7)
Figure 2022050361000010
6.1.2.3. セマンティクス
(外8)
Figure 2022050361000011
Figure 2022050361000012
6.1.3. 動作点エンティティグループ
6.1.3.1. 全般
動作点エンティティグループは、動作点へのトラックのマッピング及び動作点のプロファイルレベル情報を提供するために定義される;
このエンティティグループに記述された動作点にマッピングされるトラックのサンプルを集約するときの暗黙の再構成プロセスは、準拠するVVCビットストリームを生じさせるために更なるNALユニットを除去することを必要としない。動作点エンティティグループに属するトラックは、動作点エンティティグループにおいて指し示されるgroup_idに対するタイプ‘oref’のトラック参照を持つとする;
動作点エンティティグループに含まれる全てのentity_id値は、同じVVCビットストリームに属するものとする。存在するとき、OperatingPointGroupBoxは、ムービーレベルのMetaBox内のGroupsListBoxに含まれるものとし、ファイルレベル又はトラックレベルのMetaBoxに含まれるのではないとする;
6.1.3.2. 構文
(外9)
Figure 2022050361000013
6.1.3.3. セマンティクス
(外10)
Figure 2022050361000014
Figure 2022050361000015
図1は、ここに開示される様々な技術が実装され得る映像処理システム1900の一例を示すブロック図である。様々な実装は、システム1900のコンポーネントの一部又は全てを含み得る。システム1900は、映像コンテンツを受信する入力1902を含み得る。映像コンテンツは、例えば8ビット又は10ビットのマルチコンポーネント(多成分)ピクセル値といった、ロー(未加工)又は未圧縮のフォーマットで受信されてもよいし、あるいは圧縮又は符号化されたフォーマットで受信されてもよい。入力1902は、ネットワークインタフェース、周辺バスインタフェース、又はストレージインタフェースを表し得る。ネットワークインタフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)などの有線インタフェース、及びWi-Fi(登録商標)若しくはセルラーインタフェースなどの無線インタフェースを含む。
システム1900は、本文書に記載される様々なコーディング又は符号化方法を実装し得る符号化コンポーネント1904を含み得る。符号化コンポーネント1904は、入力1902から符号化コンポーネント1904の出力まで映像の平均ビットレートを低減させて、映像の符号化表現を生成し得る。符号化技術は、それ故に、映像圧縮技術又は映像トランスコーディング技術と呼ばれることがある。符号化コンポーネント1904の出力は、格納されるか、コンポーネント1906によって表されるように接続されて通信を介して伝送されるかし得る。入力1902で受信された映像の格納又は通信されるビットストリーム(又は符号化)表現は、ディスプレイインタフェース1910に送られるピクセル値又は表示可能映像を生成するためにコンポーネント1908によって使用され得る。ビットストリーム表現からユーザが見ることができる映像を生成するプロセスは、映像解凍と呼ばれることがある。また、特定の映像処理操作が“符号化”の操作又はツールとして参照されることがあるが、理解されることには、符号化のツール又は操作はエンコーダで使用され、符号化の結果を裏返す対応する復号のツール又は操作がデコーダで実行されることになる。
周辺バスインタフェース又はディスプレイインタフェースの例は、ユニバーサルシリアルバス(USB)又は高精細マルチメディアインタフェース(HDMI(登録商標))又はディスプレイポート(Displayport)などを含み得る。ストレージインタフェースの例は、SATA(serial advanced technology attachment)、PCI、IDEインタフェースなどを含む。本文書に記載される技術は、例えば携帯電話、ラップトップ、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実行することが可能な他の装置などの、種々のエレクトロニクス装置にて具現化され得る。
図2は、映像処理装置3600のブロック図である。装置3600は、ここに記載される方法のうちの1つ以上を実装するために使用され得る。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信器にて具現化され得る。装置3600は、1つ以上のプロセッサ3602、1つ以上のメモリ3604、及び映像処理ハードウェア3606を含み得る。(1つ以上の)プロセッサ3602は、本文書に記載される1つ以上の方法を実行するように構成され得る。(1つ以上の)メモリ3604は、ここに記載される方法及び技術を実行するのに使用されるデータ及びコードを格納するために使用され得る。映像処理ハードウェア3606は、本文書に記載される一部の技術をハードウェア回路にて実装するために使用され得る。一部の実施形態において、映像処理ハードウェア3606は、少なくとも部分的に、例えばグラフィックス・コプロセッサといったプロセッサ3602に含まれ得る。
図4は、この開示の技術を利用し得る映像符号化システム100の一例を示すブロック図である。
図4に示すように、映像符号化システム100は、ソース装置110及びデスティネーション装置120を含み得る。ソース装置110は、符号化映像データを生成し、映像符号化装置として参照され得る。デスティネーション装置120は、ソース装置110によって生成された符号化映像データを復号することができ、映像復号装置として参照され得る。
ソース装置110は、映像ソース112、ビデオエンコーダ114、及び入力/出力(I/O)インタフェース116を含み得る。
映像ソース112は、例えば、映像キャプチャ装置、映像コンテンツプロバイダから映像データを受信するインタフェース、及び/又は映像データを生成するコンピュータグラフィックスシステム、又はそのようなソースの組み合わせなどの、ソースを含み得る。映像データは、1つ以上のピクチャを有し得る。ビデオエンコーダ114は、映像ソース112からの映像データを符号化してビットストリームを生成する。ビットストリームは、映像データの符号化表現を形成する一連のビットを含み得る。ビットストリームは、符号化ピクチャ及び関連データを含み得る。符号化ピクチャはピクチャの符号化表現である。関連データは、シーケンスパラメータセット、ピクチャパラメータセット、及び他の構文構造を含み得る。I/Oインタフェース116は、変調器/復調器(モデム)及び/又は送信器を含み得る。符号化映像データは、I/Oインタフェース116を介し、ネットワーク130aを通じて直接、デスティネーション装置120に伝送され得る。符号化映像データはまた、デスティネーション装置120によるアクセスのためにストレージ媒体/サーバ130b上に格納されてもよい。
デスティネーション装置120は、I/Oインタフェース126、ビデオデコーダ124、及び表示装置122を含み得る。
I/Oインタフェース126は、受信器及び/又はモデムを含み得る。I/Oインタフェース126は、ソース装置110又はストレージ媒体/サーバ130bから符号化映像データを取得し得る。ビデオデコーダ124は符号化映像データを復号し得る。表示装置122は、復号映像データをユーザに表示し得る。表示装置122は、デスティネーション装置120と一体化されてもよいし、あるいは、外部表示装置とインタフェースするように構成されたデスティネーション装置120の外部にあってもよい。
ビデオエンコーダ114及びビデオデコーダ124は、例えばハイエフィシェンシビデオコーディング(HEVC)標準、バーサタイルビデオコーディング(VVC)標準、及び他の現行の及び/又は将来の標準などの、映像圧縮標準に従って動作し得る。
図5は、図4に示したシステム100内のビデオエンコーダ114とし得るものであるビデオエンコーダ200の一例を示すブロック図である。
ビデオエンコーダ200は、この開示の技術のうちのいずれか又は全てを実行するように構成され得る。図5の例において、ビデオエンコーダ200は、複数の機能コンポーネントを含んでいる。この開示に記載される技術は、ビデオエンコーダ200の様々なコンポーネントの間で共有され得る。一部の例において、プロセッサが、この開示に記載される技術のうちのいずれか又は全てを実行するように構成され得る。
ビデオエンコーダ200の機能コンポーネントは、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、及びイントラ予測ユニット206を含み得る予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214とを含み得る。
他の例において、ビデオエンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでいてもよい。IBCユニットは、少なくとも1つの参照ピクチャが、現在映像ブロックが位置するところのピクチャである、というIBCモードで予測を実行し得る。
また、例えば動き推定ユニット204及び動き補償ユニット205などの一部のコンポーネントは、図5の例では説明の目的で別々に表されているが、高度に集積されることができる。
分割ユニット201は、ピクチャを1つ以上の映像ブロックに分割し得る。ビデオエンコーダ200及びビデオデコーダ300は、様々な映像ブロックサイズをサポートし得る。
モード選択ユニット203は、例えば誤差結果に基づいて、イントラ又はインターである複数の符号化モードのうちの1つを選択し、得られたイントラ又はインター符号化ブロックを、残差ブロックデータを生成する残差生成ユニット207と、参照ピクチャとしての使用のために符号化ブロックを再構成する再構成ユニット212とに提供し得る。一部の例において、モード選択ユニット203は、予測がインター予測信号及びイントラ予測信号に基づくものである組み合わせイントラ・インター予測(combination of intra and inter predication;CIIP)モードを選択してもよい。モード選択ユニット203はまた、インター予測の場合に、ブロックに対する動きベクトルの分解能(例えば、サブピクセル又は整数ピクセルの精度)を選択し得る。
現在映像ブロックに対してインター予測を実行するために、動き推定ユニット204が、バッファ213からの1つ以上の参照フレームを現在映像ブロックと比較することによって、現在映像ブロックについての動き情報を生成し得る。動き補償ユニット205が、現在映像ブロックに関連付けられたピクチャ以外の、バッファ213からのピクチャの動き情報及び復号サンプルに基づいて、現在映像ブロックについての予測映像ブロックを決定し得る。
動き推定ユニット204及び動き補償ユニット205は、例えば、現在映像ブロックがIスライス内にあるか、Pスライス内にあるか、それともBスライス内にあるかに応じて、現在映像ブロックに対して異なる演算を実行し得る。
一部の例において、動き推定ユニット204は、現在映像ブロックに対して片方向予測を実行することができ、動き推定ユニット204は、現在映像ブロックに対する参照映像ブロックについてリスト0又はリスト1の参照ピクチャを探索し得る。そして、動き推定ユニット204は、参照映像ブロックを含んだリスト0又はリスト1内の参照ピクチャを指し示す参照インデックスと、現在映像ブロックと参照映像ブロックとの間の空間変位を指し示す動きベクトルとを生成し得る。動き推定ユニット204は、現在映像ブロックの動き情報として、上記参照インデックスと、予測方向インジケータと、上記動きベクトルとを出力し得る。現在映像ブロックの動き情報によって示される参照映像ブロックに基づいて、動き補償ユニット205が現在ブロックの予測映像ブロックを生成し得る。
他の例において、動き推定ユニット204は、現在映像ブロックに対して双方向予測を実行することができ、動き推定ユニット204は、現在映像ブロックに対する参照映像ブロックについてリスト0内の参照ピクチャを探索し得るとともに、現在映像ブロックに対するもう1つの参照映像ブロックについてリスト1内の参照ピクチャも探索し得る。そして、動き推定ユニット204は、参照映像ブロックを含んだリスト0内の及びリスト1内の参照ピクチャを指し示す参照インデックスと、それら参照映像ブロックと現在映像ブロックとの間の空間変位を指し示す動きベクトルとを生成し得る。動き推定ユニット204は、現在映像ブロックの動き情報として、それら参照インデックスと、現在映像ブロックの上記動きベクトルとを出力し得る。現在映像ブロックの動き情報によって示される参照映像ブロックに基づいて、動き補償ユニット205が現在ブロックの予測映像ブロックを生成し得る。
一部の例において、動き推定ユニット204は、デコーダの復号処理のために、動き情報の完全なセットを出力し得る。
一部の例において、動き推定ユニット204は、現在映像についての動き情報の完全なセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して現在映像ブロックの動き情報をシグナリングしてもよい。例えば、動き推定ユニット204は、現在映像ブロックの動き情報が隣接映像ブロックの動き情報と十分に似ていると判定し得る。
一例において、動き推定ユニット204は、現在映像ブロックに関連付けられる構文構造内で、現在映像ブロックが別の映像ブロックと同じ動き情報を持つことをビデオデコーダ300に示す値を指し示し得る。
他の一例において、動き推定ユニット204は、現在映像ブロックに関連付けられる構文構造内で、別の映像ブロックと動きベクトル差(MVD)とを特定してもよい。動きベクトル差は、現在映像ブロックの動きベクトルと、指し示される映像ブロックの動きベクトルとの間の差を示す。ビデオデコーダ300は、指し示された映像ブロックの動きベクトルと動きベクトル差とを用いて、現在映像ブロックの動きベクトルを決定し得る。
上述のように、ビデオエンコーダ200は、動きベクトルを予測的にシグナリングし得る。ビデオエンコーダ200によって実装され得る予測的シグナリング技術の2つの例は、アドバンスト動きベクトル予測(AMVP)及びマージモードシグナリングを含む。
イントラ予測ユニット206は、現在映像ブロックに対してイントラ予測を実行し得る。イントラ予測ユニット206が現在映像ブロックに対してイントラ予測を実行するとき、イントラ予測ユニット206は、同じピクチャ内の他の映像ブロックの復号サンプルに基づいて、現在映像ブロックについての予測データを生成し得る。現在映像ブロックについての予測データは、予測映像ブロックと様々な構文要素とを含み得る。
残差生成ユニット207は、現在映像ブロックの(1つ以上の)予測映像ブロックを現在映像ブロックから差し引くことによって(例えば、マイナス符号によって示される)、現在映像ブロックについての残差データを生成し得る。現在映像ブロックの残差データは、現在映像ブロック内のサンプルの異なるサンプル成分に対応する残差映像ブロックを含み得る。
他の例では、例えばスキップモードにおいて、現在映像ブロックのために現在映像ブロックについての残差データが存在しないことがあり、残差生成ユニット207は減算演算を実行しないことがある。
変換処理ユニット208は、現在映像ブロックに関連する残差映像ブロックに1つ以上の変換を適用することによって、現在映像ブロックについての1つ以上の変換係数映像ブロックを生成し得る。
変換処理ユニット208が現在映像ブロックに関する変換係数映像ブロックを生成した後、量子化ユニット209が、現在映像ブロックに関する変換係数映像ブロックを、現在映像ブロックに関する1つ以上の量子化パラメータ(QP)値に基づいて量子化し得る。
逆量子化ユニット210及び逆変換ユニット211が、変換係数映像ブロックに、それぞれ、逆量子化及び逆変換を適用して、変換係数映像ブロックから残差映像ブロックを再構成し得る。再構成ユニット212が、再構成された残差映像ブロックを、予測ユニット202によって生成された1つ以上の予測映像ブロックからの対応するサンプルに足し合わせて、バッファ213に記憶される現在ブロックに関する再構成映像ブロックを生成し得る。
再構成ユニット212が映像ブロックを再構成した後、映像ブロック内の映像ブロッキングアーチファクトを低減させるために、ループフィルタリング演算が実行され得る。
エントロピー符号化ユニット214が、ビデオエンコーダ200の他の機能コンポーネントからデータを受信し得る。エントロピー符号化ユニット214がデータを受信すると、エントロピー符号化ユニット214は、1つ以上のエントロピー符号化演算を実行してエントロピー符号化データを生成し、そして、エントロピー符号化データを含むビットストリームを出力し得る。
図6は、図4に示したシステム100内のビデオデコーダ124とし得るものであるビデオデコーダ300の一例を示すブロック図である。
ビデオデコーダ300は、この開示の技術のうちのいずれか又は全てを実行するように構成され得る。図6の例において、ビデオデコーダ300は、複数の機能コンポーネントを含んでいる。この開示に記載される技術は、ビデオデコーダ300の様々なコンポーネントの間で共有され得る。一部の例において、プロセッサが、この開示に記載される技術のうちのいずれか又は全てを実行するように構成され得る。
図6の例において、ビデオデコーダ300は、エントロピー復号ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、再構成ユニット306、及びバッファ307を含んでいる。ビデオデコーダ300は、一部の例において、ビデオエンコーダ200(図5)に関して説明した符号化パスに対して概ね逆の復号パスを実行し得る。
エントロピー復号ユニット301が符号化ビットストリームを取り出し得る。符号化ビットストリームは、エントロピー符号化された映像データ(例えば、映像データの符号化ブロック)を含み得る。エントロピー復号ユニット301はエントロピー符号化映像データを復号することができ、エントロピー復号された映像データから、動き補償ユニット302が、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、及び他のモーション情報を含む動き情報を決定し得る。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することによって、そのような情報を決定し得る。
動き補償ユニット302は、場合により補間フィルタに基づく補間を実行して、動き補償ブロックを生成し得る。サブピクセル精度で使用される補間フィルタに関する識別子が構文要素に含められ得る。
動き補償ユニット302は、映像ブロックの符号化中にビデオエンコーダ200によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルに対する補間値を計算し得る。動き補償ユニット302は、ビデオエンコーダ200によって使用された補間フィルタを、受信した構文情報に従って決定し、その補間フィルタを用いて予測ブロックを生成し得る。
動き補償ユニット302は、構文情報の一部を用いて、符号化映像シーケンスのフレーム及び/又はスライスを符号化するのに使用されるブロックのサイズ、符号化映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述するパーティション情報、各パーティションがどのように符号化されるかを指し示すモード、各インター符号化ブロックに関する1つ又は複数の参照フレーム(及び参照フレームリスト)、及び符号化映像シーケンスを復号するための他の情報を決定し得る。
イントラ予測ユニット303は、例えばビットストリーム内で受信した、イントラ予測モードを用いて、空間的に隣接するブロックから予測ブロックを形成し得る。逆量子化ユニット303が、ビットストリーム内で提供されてエントロピー復号ユニット301によって復号された量子化された映像ブロック係数を逆量子化する、すなわち、量子化解除する。逆変換ユニット303が逆変換を適用する。
再構成ユニット306が、残差ブロックを、動き補償ユニット302又はイントラ予測ユニット303によって生成された対応する予測ブロックと足し合わせて、復号ブロックを形成し得る。望まれる場合、ブロックアーチファクトを除去するために復号ブロックをフィルタリングするよう、デブロッキングフィルタも適用され得る。そして、復号映像ブロックがバッファ307に格納され、それが、後の動き補償/イントラ予測のための参照ブロックを提供し、また、表示装置上での提示のための復号映像を生成する。
次に、一部の実施形態によって好適とされるソリューションのリストを提供する。
第1セットのソリューションを以下に提供する。以下のソリューションは、前セクション(例えば、項目1)で議論された技術の実施形態例を示す。
1. ビジュアルメディア処理方法(例えば、図3に示す方法700)であって、ビジュアルメディアデータと、該ビジュアルメディアデータのビットストリーム表現を格納するファイルと、の間での変換を、フォーマットルールに従って実行するステップ(702)、を有し、前記フォーマットルールは、プロファイル-ティア-レベルが前記ファイル内で指し示されるかを指し示す第1レコードが、前記ビジュアルメディアデータのクロマフォーマットを指し示す第2レコード及び/又は前記ビジュアルメディアデータを表現するのに使用されるビット深度を指し示す第3レコードが前記ファイルに含められるかを制御することを規定する、方法。
以下のソリューションは、前セクション(例えば、項目2、4)で議論された技術の実施形態例を示す。
1. ビジュアルメディア処理方法であって、ビジュアルメディアデータと、該ビジュアルメディアデータのビットストリーム表現を格納するファイルと、の間での変換を、フォーマットルールに従って実行するステップ、を有し、前記ビットストリーム表現はシングルレイヤビットストリームであり、前記フォーマットルールは、前記ファイルに格納される前記シングルレイヤビットストリームに対する制約を規定する、方法。
2. 前記制約は、前記ファイルのサンプルに含まれる映像符号化層ネットワーク抽象化層ユニットによって参照される1つ以上のシーケンスパラメータにおいて指し示される1つ以上のクロマフォーマット値が相等しいというものである、ソリューション1の方法。
3. 前記制約は、前記ファイルのサンプルに含まれる映像符号化層ネットワーク抽象化層ユニットによって参照される1つ以上のシーケンスパラメータにおいて指し示される1つ以上のビット深度値が相等しいというものである、ソリューション1の方法。
以下のソリューションは、前セクション(例えば、項目3、5)で議論された技術の実施形態例を示す。
1. ビジュアルメディア処理方法であって、ビジュアルメディアデータと、該ビジュアルメディアデータのビットストリーム表現を格納するファイルと、の間での変換を、フォーマットルールに従って実行するステップ、を有し、前記ビットストリーム表現はマルチレイヤビットストリームであり、前記フォーマットルールは、前記ファイルに格納される前記マルチレイヤビットストリームに対する制約を規定する、方法。
2. 前記制約は、クロマフォーマットの値が、当該サンプルエントリ記述が適用される全ての符号化映像シーケンスについての出力レイヤセットのサンプルエントリ記述にて特定されるクロマフォーマットの最大値に等しく設定されるというものである、ソリューション1の方法。
3. 前記制約は、ビット深度の値が、当該サンプルエントリ記述が適用される全ての符号化映像シーケンスについての出力レイヤセットのサンプルエントリ記述にて特定されるビット深度の最大値に等しく設定されるというものである、ソリューション1の方法。
8. 前記変換は、前記ビジュアルメディアデータのビットストリーム表現を生成し、前記ファイルに前記フォーマットルールに従って前記ビットストリーム表現を格納することを有する、ソリューション1乃至7のいずれかの方法。
9. 前記変換は、前記フォーマットルールに従って前記ファイルを構文解析して、前記ビジュアルメディアデータを復元することを有する、ソリューション1乃至7のいずれかの方法。
10. ソリューション1乃至9のいずれかに記載の方法を実施するように構成されたプロセッサを有する映像復号装置。
11. ソリューション1乃至9のいずれかに記載の方法を実施するように構成されたプロセッサを有する映像符号化装置。
12. コンピュータコードを格納したコンピュータプログラムプロダクトであって、前記コードは、プロセッサによって実行されるときに、該プロセッサに、ソリューション1乃至9のいずれかに記載の方法を実施させる、コンピュータプログラムプロダクト。
13. ソリューション1乃至9のいずれかに従って生成されるファイルフォーマットにビットストリームが準拠するコンピュータ読み取り可能媒体。
14. 本文書に記載された方法、装置又はシステム。ここに記載されたソリューションにおいて、エンコーダは、フォーマットルールに従って符号化表現を生成することによってフォーマットルールに適合することができる。ここに記載されたソリューションにおいて、デコーダは、フォーマットルールを使用することで、フォーマットルールに従った構文要素の存在及び不存在の知識を用いて符号化表現内の構文要素を構文解析して、復号映像を生成することができる。
第2セットのソリューションは、前セクション(例えば、項目1乃至5)で議論された技術の実施形態例を提供する。
1. ビジュアルメディアデータを処理する方法(例えば、図8に示す方法800)であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ802、を有し、前記フォーマットルールは、トラックが特定の出力レイヤセットに対応するビットストリームを含むかを指し示す第1要素が、該トラックのクロマフォーマットを指し示す第2要素及び/又は該トラックのビット深度情報を指し示す第3要素が該トラックのコンフィギュレーションレコードに含められるかを、制御するかを規定する、方法。
2. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記ビットストリームを含むことを前記第1要素が指し示すことに応答して、前記第2要素及び/又は前記第3要素を含めるように規定する、ソリューション1の方法。
3. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記ビットストリームを含まないことが許されることを前記第1要素が指し示すことに応答して、前記第2要素及び/又は前記第3要素を省略するように規定する、ソリューション1の方法。
4. 前記フォーマットルールは更に、コンフィギュレーションレコードが適用されるビットストリームがマルチレイヤビットストリームであるかに依存する構文制約を規定する、ソリューション1の方法。
5. 前記フォーマットルールは更に、前記ビットストリームが前記マルチレイヤビットストリームでないことに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のクロマフォーマット値が相等しいというものである、ことを規定する、ソリューション4の方法。
6. 前記フォーマットルールは更に、前記コンフィギュレーションレコードにおいて指し示されるクロマフォーマット値が前記1つ以上のクロマフォーマット値に等しいことを規定する、ソリューション5の方法。
7. 前記フォーマットルールは更に、前記ビットストリームが前記マルチレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードにおいて指し示されるクロマフォーマットの値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのクロマフォーマット値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるクロマフォーマットの最大値、に等しく設定されるというものである、ことを規定する、ソリューション4の方法。
8. 前記フォーマットルールは更に、前記ビットストリームが前記マルチレイヤビットストリームでないことに応答して、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のビット深度情報値が相等しいことを規定する、ソリューション4の方法。
9. 前記フォーマットルールは更に、前記コンフィギュレーションレコードにおいて指し示されるビット深度情報値が前記1つ以上のビット深度情報値に等しいことを規定する、ソリューション8の方法。
10. 前記フォーマットルールは更に、前記ビットストリームが前記マルチレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードにおいて指し示されるビット深度情報値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのビット深度情報値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるビット深度情報の最大値、に等しく設定されるというものである、ことを規定する、ソリューション4の方法。
11. 前記変換は、前記ビジュアルメディアファイルを生成し、前記ビジュアルメディアファイルに前記フォーマットルールに従って前記1つ以上のビットストリームを格納することを有する、ソリューション1乃至10のいずれか一の方法。
12. 前記変換は、前記フォーマットルールに従って前記ビジュアルメディアファイルを構文解析して、前記1つ以上のビットストリームを再構成することを有する、ソリューション1乃至10のいずれか一の方法。
13. ビジュアルメディアデータを処理する装置であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ、を有する方法を実行するように構成されたプロセッサを有し、前記フォーマットルールは、(1)トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むか、及び/又は(2)コンフィギュレーションレコードが適用されるビットストリームがマルチレイヤビットストリームであるかに応じて、クロマフォーマット構文要素及び/又はビット深度構文要素の存在、又は前記クロマフォーマット構文要素及び/又は前記ビット深度構文要素に対する構文制約を規定する、装置。
14. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記特定のビットストリームを含む場合に、前記トラックの前記コンフィギュレーションレコードに前記クロマフォーマット構文要素及び/又は前記ビット深度構文要素を含めるように規定する、ソリューション13の装置。
15. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記ビットストリームを含まないことが許される場合に、前記トラックの前記コンフィギュレーションレコードから前記クロマフォーマット構文要素及び/又は前記ビット深度構文要素を省くように規定する、ソリューション13の装置。
16. 前記フォーマットルールは、前記ビットストリームが前記マルチレイヤビットストリームでないことに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のクロマフォーマット構文要素の値が相等しいというものである、ことを規定する、ソリューション13の装置。
17. 前記フォーマットルールは、前記ビットストリームが前記マルチレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードにおいて指し示される前記クロマフォーマットの値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのクロマフォーマット値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるクロマフォーマットの最大値、に等しく設定されるというものである、ことを規定する、ソリューション13の装置。
18. 前記フォーマットルールは、前記ビットストリームが前記マルチレイヤビットストリームでないことに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のビット深度構文要素の値が相等しいというものである、ことを規定する、ソリューション13の装置。
19. 前記フォーマットルールは、前記ビットストリームが前記マルチレイヤビットストリームであることに応答して、前記構文制約が、前記ビット深度構文要素の値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのビット深度情報値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるビット深度情報の最大値、に等しく又はそれより大きく設定されるというものである、ことを規定する、ソリューション13の装置。
20. 命令を格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記命令は、プロセッサに、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行させ、前記フォーマットルールは、(1)トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むか、及び/又は(2)コンフィギュレーションレコードが適用されるビットストリームがマルチレイヤビットストリームであるかに応じて、クロマフォーマット構文要素及び/又はビット深度構文要素の存在、又は前記クロマフォーマット構文要素及び/又は前記ビット深度構文要素に対する構文制約を規定する、非一時的なコンピュータ読み取り可能記録媒体。
21. 映像処理装置によって実行される方法により生成されたビットストリームを格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記方法は、ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルを、フォーマットルールに従って生成するステップを有し、前記フォーマットルールは、(1)トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むか、及び/又は(2)コンフィギュレーションレコードが適用されるビットストリームがマルチレイヤビットストリームであるかに応じて、クロマフォーマット構文要素及び/又はビット深度構文要素の存在、又は前記クロマフォーマット構文要素及び/又は前記ビット深度構文要素に対する構文制約を規定する、非一時的なコンピュータ読み取り可能記録媒体。
22. ソリューション1乃至12のいずれか一の方法を実施するように構成されたプロセッサを有する映像処理装置。
23. 1つ以上のビットストリームを含むファイルにビジュアルメディアデータを格納する方法であって、当該方法は、ソリューション1乃至12のいずれか一の方法を有し、さらに、前記1つ以上のビットストリームを非一時的なコンピュータ読み取り可能記録媒体に格納することを含む、方法。
24. 実行されるときにプロセッサにソリューション1乃至12のいずれか一の方法を実施させるプログラムコードを格納したコンピュータ読み取り可能媒体。
25. 上述の方法のいずれかに従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
26. ビットストリームを格納する映像処理装置であって、ソリューション1乃至12のいずれか一以上に記載の方法を実施するように構成された映像処理装置。
27. ソリューション1乃至12のいずれかに従って生成されるファイルフォーマットにビットストリームが準拠するコンピュータ読み取り可能媒体。
28. 本文書に記載された方法、装置又はシステム。
第3セットのソリューションは、前セクション(例えば、項目6)で議論された技術の実施形態例を提供する。
1. ビジュアルメディアデータを処理する方法(例えば、図9に示す方法900)であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ902、を有し、前記フォーマットルールは、トラックのコンフィギュレーションレコードに、該トラックのピクチャ幅を指し示す第1要素及び/又は該トラックのピクチャ高さを指し示す第2要素を含めるかを、(1)該トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むかを指し示す第3要素及び/又は(2)前記コンフィギュレーションレコードがシングルレイヤビットストリーム向けであるか、に基づいて規定し、前記フォーマットルールは更に、前記第1要素及び/又は前記第2要素が、該トラックの前記コンフィギュレーションレコードに含められるときに、16ビットを含むフィールド内で表されることを規定する、方法。
2. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記特定のビットストリームを含むことを前記第3要素が指し示すことに応答して、前記第1要素及び/又は前記第2要素を含めるように規定する、ソリューション1の方法。
3. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記特定のビットストリームを含まないことが許されることを前記第3要素が指し示すことに応答して、前記第1要素及び/又は前記第2要素を省略するように規定する、ソリューション1の方法。
4. 前記フィールドは24ビットを含む、ソリューション1の方法。
5. 前記フィールドは32ビットを含む、ソリューション1の方法。
6. 前記フォーマットルールは、前記ビットストリームがシングルレイヤビットストリームであり、クロッピングウィンドウオフセットが全てゼロであり、且つピクチャがフレームであることに応答して、第1要素及び/又は第2要素を省略するように規定する、ソリューション1の方法。
7. 前記フォーマットルールは更に、前記コンフィギュレーションレコードが適用されるビットストリームがシングルレイヤビットストリームであるかに基づいて、前記第1要素及び/又は前記第2要素の値に対する構文制約を規定する、ソリューション1の方法。
8. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ幅値が相等しいというものである、ことを規定する、ソリューション7の方法。
9. 前記フォーマットルールは更に、前記ビットストリームを格納する前記トラックの前記第1要素の前記値が前記1つ以上のピクチャ幅値に等しいことを規定する、ソリューション8の方法。
10. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ高さ値が相等しいことを規定する、ソリューション7の方法。
11. 前記フォーマットルールは更に、前記ビットストリームを格納する前記トラックの前記第2要素の前記値が前記1つ以上のピクチャ高さ値に等しいことを規定する、ソリューション10の方法。
12. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームでないことに応答して、前記構文制約が、前記第1要素の前記値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのピクチャ幅値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ幅の最大値、に等しく設定されるというものである、ことを規定する、ソリューション7の方法。
13. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームでないことに応答して、前記構文制約が、前記第2要素の前記値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのピクチャ高さ値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ高さの最大値、に等しく設定されるというものである、ことを規定する、ソリューション7の方法。
14. 前記変換は、前記ビジュアルメディアファイルを生成し、前記ビジュアルメディアファイルに前記フォーマットルールに従って前記1つ以上のビットストリームを格納することを有する、ソリューション1乃至13のいずれかの方法。
15. 前記変換は、前記フォーマットルールに従って前記ビジュアルメディアファイルを構文解析して、前記1つ以上のビットストリームを再構成することを有する、ソリューション1乃至13のいずれかの方法。
16. ビジュアルメディアデータを処理する装置であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ、を有する方法を実行するように構成されたプロセッサを有し、前記フォーマットルールは、トラックのコンフィギュレーションレコードに、該トラックのピクチャ幅を指し示す第1要素及び/又は該トラックのピクチャ高さを指し示す第2要素を含めるかを、(1)該トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むかを指し示す第3要素及び/又は(2)前記コンフィギュレーションレコードがシングルレイヤビットストリーム向けであるか、に基づいて規定し、前記フォーマットルールは更に、前記第1要素及び/又は前記第2要素が、該トラックの前記コンフィギュレーションレコードに含められるときに、16ビットを含むフィールド内で表されることを規定する、装置。
17. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記特定のビットストリームを含むことを前記第3要素が指し示すことに応答して、前記第1要素及び/又は前記第2要素を含めるように規定する、ソリューション16の装置。
18. 前記フォーマットルールは、前記トラックが前記特定の出力レイヤセットに対応する前記特定のビットストリームを含まないことが許されることを前記第3要素が指し示すことに応答して、前記第1要素及び/又は前記第2要素を省略するように規定する、ソリューション16の装置。
19. 前記フォーマットルールは更に、前記コンフィギュレーションレコードが適用されるビットストリームがシングルレイヤビットストリームであるかに基づいて、前記第1要素及び/又は前記第2要素の値に対する構文制約を規定する、ソリューション1の方法。
20. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ幅値が相等しいというものである、ことを規定する、ソリューション19の装置。
21. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームであることに応答して、前記構文制約が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される前記ビジュアルメディアファイルのサンプルに含まれるNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ高さ値が相等しいことを規定する、ソリューション19の装置。
22. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームでないことに応答して、前記構文制約が、前記第1要素の前記値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのピクチャ幅値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ幅の最大値、に等しく設定されるというものである、ことを規定する、ソリューション19の装置。
23. 前記フォーマットルールは更に、前記ビットストリームが前記シングルレイヤビットストリームでないことに応答して、前記構文制約が、前記第2要素の前記値が、前記コンフィギュレーションレコードのサンプルエントリ記述が適用される全ての符号化映像シーケンスについての全てのビデオパラメータセットにおいて指し示される全てのピクチャ高さ値のうち、あるビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ高さの最大値、に等しく設定されるというものである、ことを規定する、ソリューション19の装置。
24. 命令を格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記命令は、プロセッサに、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行させ、前記フォーマットルールは、トラックのコンフィギュレーションレコードに、該トラックのピクチャ幅を指し示す第1要素及び/又は該トラックのピクチャ高さを指し示す第2要素を含めるかを、(1)該トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むかを指し示す第3要素及び/又は(2)前記コンフィギュレーションレコードがシングルレイヤビットストリーム向けであるか、に基づいて規定し、前記フォーマットルールは更に、前記第1要素及び/又は前記第2要素が、該トラックの前記コンフィギュレーションレコードに含められるときに、16ビットを含むフィールド内で表されることを規定する、非一時的なコンピュータ読み取り可能記録媒体。
25. 映像処理装置によって実行される方法により生成されたビットストリームを格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記方法は、ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルを、フォーマットルールに従って生成するステップを有し、前記フォーマットルールは、トラックのコンフィギュレーションレコードに、該トラックのピクチャ幅を指し示す第1要素及び/又は該トラックのピクチャ高さを指し示す第2要素を含めるかを、(1)該トラックが特定の出力レイヤセットに対応する特定のビットストリームを含むかを指し示す第3要素及び/又は(2)前記コンフィギュレーションレコードがシングルレイヤビットストリーム向けであるか、に基づいて規定し、前記フォーマットルールは更に、前記第1要素及び/又は前記第2要素が、該トラックの前記コンフィギュレーションレコードに含められるときに、16ビットを含むフィールド内で表されることを規定する、非一時的なコンピュータ読み取り可能記録媒体。
26. ソリューション1乃至15のいずれか一の方法を実施するように構成されたプロセッサを有する映像処理装置。
27. 1つ以上のビットストリームを含むファイルにビジュアルメディアデータを格納する方法であって、当該方法は、ソリューション1乃至15のいずれか一の方法を有し、さらに、前記1つ以上のビットストリームを非一時的なコンピュータ読み取り可能記録媒体に格納することを含む、方法。
28. 実行されるときにプロセッサにソリューション1乃至15のいずれか一の方法を実施させるプログラムコードを格納したコンピュータ読み取り可能媒体。
29. 上述の方法のいずれかに従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
30. ビットストリームを格納する映像処理装置であって、ソリューション1乃至15のいずれか一以上に記載の方法を実施するように構成された映像処理装置。
31. ソリューション1乃至15のいずれかに従って生成されるファイルフォーマットにビットストリームが準拠するコンピュータ読み取り可能媒体。
第4セットのソリューションは、前セクション(例えば、項目7)で議論された技術の実施形態例を提供する。
1. ビジュアルメディアデータを処理する方法(例えば、図10に示す方法1000)であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ1002、を有し、前記ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、前記フォーマットルールは、前記ビジュアルメディアファイルにおいて指し示される各動作点について、前記動作点レコード及び前記動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する、方法。
2. 前記フォーマットルールは更に、前記第1要素、前記第2要素、前記第3要素、及び/又は前記第4要素が、出力レイヤセットインデックスによって特定される出力レイヤセットに関するプロファイル、レベル、及びティア構造のゼロベースインデックスを差し示す第5要素の直後にあることを規定する、ソリューション1の方法。
3. 前記フォーマットルールは更に、ビットストリームに関連する動作点に適用される前記第1要素の値、前記第2要素の値、前記第3要素の値、及び/又は前記第4要素の値に対する構文制約を、前記動作点が単一のレイヤのみを含むかに基づいて規定する、ソリューション1の方法。
4. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のクロマフォーマット値が相等しいというものである、ことを規定する、ソリューション3の方法。
5. 前記フォーマットルールは更に、前記第1要素の前記値が前記1つ以上のクロマフォーマット値に等しいことを規定する、ソリューション4の方法。
6. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第1要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるクロマフォーマット値、に等しく設定されるというものである、ことを規定する、ソリューション3の方法。
7. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のビット深度情報値が相等しいというものである、ことを規定する、ソリューション3の方法。
8. 前記フォーマットルールは更に、前記第2要素の前記値が前記1つ以上のビット深度情報値に等しいことを規定する、ソリューション7の方法。
9. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第2要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるビット深度情報値、に等しく設定されるというものである、ことを規定する、ソリューション3の方法。
10. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ幅値が相等しいというものである、ことを規定する、ソリューション3の方法。
11. 前記フォーマットルールは更に、前記第3要素の前記値が前記1つ以上のピクチャ幅値に等しいことを規定する、ソリューション10の方法。
12. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第3要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ幅値、に等しく設定されるというものである、ことを規定する、ソリューション3の方法。
13. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ高さ値が相等しいというものである、ことを規定する、ソリューション3の方法。
14. 前記フォーマットルールは更に、前記第4要素の前記値が前記1つ以上のピクチャ高さ値に等しいことを規定する、ソリューション13の方法。
15. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第4要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ高さ値、に等しく設定されるというものである、ことを規定する、ソリューション3の方法。
16. 前記変換は、ビジュアルメディアファイルを生成し、該ビジュアルメディアファイルに前記フォーマットルールに従って前記1つ以上のビットストリームを格納することを有する、ソリューション1乃至15のいずれか一の方法。
17. 前記変換は、前記フォーマットルールに従って前記ビジュアルメディアファイルを構文解析して、前記1つ以上のビットストリームを再構成することを有する、ソリューション1乃至15のいずれか一の方法。
18. ビジュアルメディアデータを処理する装置であって、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ、を有する方法を実行するように構成されたプロセッサを有し、前記ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、前記フォーマットルールは、前記ビジュアルメディアファイルにおいて指し示される各動作点について、前記動作点レコード及び前記動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する、装置。
19. 前記フォーマットルールは更に、前記第1要素、前記第2要素、前記第3要素、及び/又は前記第4要素が、出力レイヤセットインデックスによって特定される出力レイヤセットに関するプロファイル、レベル、及びティア構造のゼロベースインデックスを差し示す第5要素の直後にあることを規定する、ソリューション18の装置。
20. 前記フォーマットルールは更に、ビットストリームに関連する動作点に適用される前記第1要素の値、前記第2要素の値、前記第3要素の値、及び/又は前記第4要素の値に対する構文制約を、前記動作点が単一のレイヤのみを含むかに基づいて規定する、ソリューション18の装置。
21. 命令を格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記命令は、プロセッサに、ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行させ、前記ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、前記フォーマットルールは、前記ビジュアルメディアファイルにおいて指し示される各動作点について、前記動作点レコード及び前記動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する、非一時的なコンピュータ読み取り可能記録媒体。
22. 映像処理装置によって実行される方法により生成されたビットストリームを格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記方法は、ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルを、フォーマットルールに従って生成するステップを有し、前記ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、前記フォーマットルールは、前記ビジュアルメディアファイルにおいて指し示される各動作点について、前記動作点レコード及び前記動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する、非一時的なコンピュータ読み取り可能記録媒体。
26. ソリューション1乃至17のいずれか一の方法を実施するように構成されたプロセッサを有する映像処理装置。
27. 1つ以上のビットストリームを含むファイルにビジュアルメディアデータを格納する方法であって、当該方法は、ソリューション1乃至17のいずれか一の方法を有し、さらに、前記1つ以上のビットストリームを非一時的なコンピュータ読み取り可能記録媒体に格納することを含む、方法。
28. 実行されるときにプロセッサにソリューション1乃至17のいずれか一の方法を実施させるプログラムコードを格納したコンピュータ読み取り可能媒体。
29. 上述の方法のいずれかに従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
30. ビットストリームを格納する映像処理装置であって、ソリューション1乃至17のいずれか一以上に記載の方法を実施するように構成された映像処理装置。
31. ソリューション1乃至17のいずれかに従って生成されるファイルフォーマットにビットストリームが準拠するコンピュータ読み取り可能媒体。
ソリューション例において、ビジュアルメディアデータは映像又はピクチャに対応する。本文書において、用語“映像処理”は、映像符号化、映像復号、映像圧縮又は映像解凍を指し得る。例えば、映像圧縮アルゴリズムは、映像のピクチャ表現から対応するビットストリーム表現への変換の間に適用されることができ、その逆もまた然りである。現在映像ブロックのビットストリーム表現は、例えば、構文によって定められるように、ビットストリーム内で同位置にあるビット又は異なる場所に広がったビットのいずれかに対応し得る。例えば、マクロブロックは、変換されて符号化される誤差残差値に関して、また、ビットストリーム内のヘッダ及び他のフィールド内のビットも用いて、符号化され得る。また、変換において、デコーダは、上のソリューションに記載されるように、決定に基づいて、あるフィールドが存在し得るか、それとも存在しないかという知識を用いてビットストリームを構文解析し得る。同様に、エンコーダは、特定の構文フィールドが含められるべきか否かを決定し、それら構文フィールドを含めること又はそれら構文フィールドを符号化表現から除外することによって然るべく符号化表現を生成し得る。
この文書に記述される、開示される及び他のソリューション、例、実施形態、モジュール及び機能動作は、この文書に開示されている構造及びそれらに構造的に均等なものを含め、デジタル電子回路、又はコンピュータソフトウェア、ファームウェア、若しくはハードウェアにて、あるいはこれらのうちの1つ以上の組み合わせにて実施されることができる。開示される及び他の実施形態は、1つ以上のコンピュータプログラムプロダクトとして実装されることができ、すなわち、データ処理装置による実行のための、又はデータ処理装置の動作を制御するための、コンピュータ読み取り可能媒体にエンコードされたコンピュータプログラム命令の1つ以上のモジュールとして実装されることができる。コンピュータ読み取り可能媒体は、機械読み取り可能記憶装置、機械読み取り可能記憶基板、メモリ装置、機械読み取り可能な伝搬信号を生じさせる物質の組成、又はそれらのうちの1つ以上の組み合わせとすることができる。用語“データ処理装置”は、例として、プログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ若しくはコンピュータを含め、データを処理するあらゆる装置、デバイス、及び機械を包含する。装置は、ハードウェアに加えて、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はそれらのうちの1つ以上の組み合わせを構成するコードといった、問題としているコンピュータプログラムのための実行環境を作り出すコードを含むことができる。伝搬される信号は、好適な受信器装置への伝送のために情報をエンコードするように生成された、例えばマシン生成された電気信号、光信号、又は電磁信号といった、人工的に生成された信号である。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる)は、コンパイル型又はインタープリタ型の言語を含め、如何なる形態のプログラミング言語で記述されてもよく、また、スタンドアロンプログラムとして、又はコンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、若しくは他のユニットとして、を含め、如何なる形態で展開されてもよい。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するわけではない。プログラムは、他のプログラム若しくはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に格納されてもよいし、問題としているプログラムに専用の単一ファイルに格納されてもよいし、あるいは、複数の連携ファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの部分を格納するファイル)に格納されてもよい。コンピュータプログラムは、1つのコンピュータ上で実行されるように展開されてもよいし、あるいは、一箇所に配置された、又は複数箇所に分散されて通信ネットワークによって相互接続された、複数のコンピュータ上で実行されるように展開されてもよい。
この文書に記載されるプロセス及び論理フローは、入力データについて演算して出力を生成することによって機能を実行するよう、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行されることができる。これらのプロセス及び論理フローはまた、例えばFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)といった専用の論理回路によって実行されることもでき、また、装置も、そのような専用の論理回路として実装されることができる。
コンピュータプログラムの実行に適したプロセッサは、例として、汎用及び専用の双方のマイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般に、プロセッサは、読み出し専用メモリ若しくはランダムアクセスメモリ又はこれらの両方から命令及びデータを受信する。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令及びデータを格納する1つ以上のメモリデバイスである。一般に、コンピュータはまた、例えば磁気ディスク、磁気光ディスク、又は光ディスクといった、データを格納するための1つ以上の大容量ストレージ装置を含み、あるいは、大容量ストレージ装置からデータを受信したり、それにデータを転送したりするように動作的に結合される。しかしながら、コンピュータは、そのような装置を有する必要はない。コンピュータプログラム命令及びデータを格納するのに適したコンピュータ読み取り可能媒体は、例として、例えばEPROM、EEPROM、及びフラッシュメモリデバイスといった半導体メモリデバイス、例えば内部ハードディスク又はリムーバブルディスクといった磁気ディスク、磁気光ディスク、並びにCD ROM及びDVD-ROMディスクを含め、あらゆる形態の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、専用の論理回路によって補われたり、それに組み込まれたりしてもよい。
この特許文書は数多くの詳細が含んでいるが、それらは、いずれかの主題又は特許請求され得るものの範囲についての限定として解釈されるべきでなく、むしろ、特定の技術の特定の実施形態に特有とし得る機構の説明として解釈されるべきである。別々の実施形態の文脈でこの特許文書に記載されている特定の複数の機構が、単一の実施形態にて組み合わせて実装されることもできる。逆に、単一の実施形態の文脈で説明されている種々の機構が、複数の実施形態にて別々に、又は何らかの好適なサブコンビネーションで実装されることもできる。さらには、複数の機構が、特定の組み合わせにて作用するものとして上述され、さらには当初はそのように特許請求されていることがあり得るが、場合によって、特許請求されている組み合わせからの1以上の機構を組み合わせから除くこともでき、また、特許請求されている組み合わせをサブコンビネーション又はサブコンビネーションのバリエーションへと導いてもよい。
同様に、図面には処理が特定の順序で示されるが、このことは、所望の結果を達成するために、それらの動作が図示される特定の順序で若しくは順番に実行されること、又は図示される全ての処理が実行されることを要求するものとして理解されるべきでない。また、この特許文書に記載されている実施形態における種々のシステムコンポーネントの分離は、全ての実施形態においてそのような分離を必要とするものとして理解されるべきでない。
ほんの少しの実装及び例を記載したのみであり、この特許文書に記載及び図示されているものに基づいて、他の実装、拡張及び変形が行われ得る。

Claims (19)

  1. ビジュアルメディアデータを処理する方法であって、
    ビジュアルメディアデータと、該ビジュアルメディアデータの1つ以上のビットストリームを格納する1つ以上のトラックを含むビジュアルメディアファイルと、の間での変換を、フォーマットルールに従って実行するステップ、
    を有し、
    前記ビジュアルメディアファイルは、動作点レコード及び動作点グループボックスを含み、
    前記フォーマットルールは、前記ビジュアルメディアファイルにおいて指し示される各動作点について、前記動作点レコード及び前記動作点グループボックスに、クロマフォーマットを指し示す第1要素、ビット深度情報を指し示す第2要素、最大ピクチャ幅を指し示す第3要素、及び/又は最大ピクチャ高さを指し示す第4要素を含めるかを規定する、
    方法。
  2. 前記フォーマットルールは更に、前記第1要素、前記第2要素、前記第3要素、及び/又は前記第4要素が、出力レイヤセットインデックスによって特定される出力レイヤセットに関するプロファイル、レベル、及びティア構造のゼロベースインデックスを差し示す第5要素の直後にあることを規定する、請求項1に記載の方法。
  3. 前記フォーマットルールは更に、ビットストリームに関連する動作点に適用される前記第1要素の値、前記第2要素の値、前記第3要素の値、及び/又は前記第4要素の値に対する構文制約を、前記動作点が単一のレイヤのみを含むかに基づいて規定する、請求項1に記載の方法。
  4. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のクロマフォーマット値が相等しいというものである、ことを規定する、請求項3に記載の方法。
  5. 前記フォーマットルールは更に、前記第1要素の前記値が前記1つ以上のクロマフォーマット値に等しいことを規定する、請求項4に記載の方法。
  6. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第1要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるクロマフォーマット値、に等しく設定されるというものである、ことを規定する、請求項3に記載の方法。
  7. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のビット深度情報値が相等しいというものである、ことを規定する、請求項3に記載の方法。
  8. 前記フォーマットルールは更に、前記第2要素の前記値が前記1つ以上のビット深度情報値に等しいことを規定する、請求項7に記載の方法。
  9. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第2要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるビット深度情報値、に等しく設定されるというものである、ことを規定する、請求項3に記載の方法。
  10. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ幅値が相等しいというものである、ことを規定する、請求項3に記載の方法。
  11. 前記フォーマットルールは更に、前記第3要素の前記値が前記1つ以上のピクチャ幅値に等しいことを規定する、請求項10に記載の方法。
  12. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第3要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ幅値、に等しく設定されるというものである、ことを規定する、請求項3に記載の方法。
  13. 前記フォーマットルールは更に、前記動作点が前記単一のレイヤを含むことに応答して、前記構文制約が、前記動作点の前記ビットストリーム内のNAL(ネットワーク抽象化層)ユニットによって参照される1つ以上のシーケンスパラメータセットにおいて指し示される1つ以上のピクチャ高さ値が相等しいというものである、ことを規定する、請求項3に記載の方法。
  14. 前記フォーマットルールは更に、前記第4要素の前記値が前記1つ以上のピクチャ高さ値に等しいことを規定する、請求項13に記載の方法。
  15. 前記フォーマットルールは更に、前記動作点が2つ以上のレイヤを含むことに応答して、前記構文制約が、前記第4要素の前記値が、ビデオパラメータセットにおいて指し示されて、出力レイヤセットインデックスによって特定される出力レイヤセットに適用されるピクチャ高さ値、に等しく設定されるというものである、ことを規定する、請求項3に記載の方法。
  16. 前記変換は、ビジュアルメディアファイルを生成し、前記ビジュアルメディアファイルに前記フォーマットルールに従って前記1つ以上のビットストリームを格納することを有する、請求項1乃至15のいずれか一項に記載の方法。
  17. 前記変換は、前記フォーマットルールに従って前記ビジュアルメディアファイルを構文解析して、前記1つ以上のビットストリームを再構成することを有する、請求項1乃至15のいずれか一項に記載の方法。
  18. 請求項1乃至17のいずれか一項に記載の方法を実施するように構成されたプロセッサを有する映像処理装置。
  19. 実行されるときにプロセッサに請求項1乃至17のいずれか一項に記載の方法を実施させるプログラムコードを格納したコンピュータ読み取り可能媒体。
JP2021151188A 2020-09-17 2021-09-16 映像動作点レコード構文及びセマンティクス Active JP7270012B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063079910P 2020-09-17 2020-09-17
US63/079910 2020-09-17

Publications (2)

Publication Number Publication Date
JP2022050361A true JP2022050361A (ja) 2022-03-30
JP7270012B2 JP7270012B2 (ja) 2023-05-09

Family

ID=77801578

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2021151184A Active JP7202429B2 (ja) 2020-09-17 2021-09-16 符号化映像におけるクロマフォーマット及びビット深度のインジケーション
JP2021151188A Active JP7270012B2 (ja) 2020-09-17 2021-09-16 映像動作点レコード構文及びセマンティクス
JP2021151187A Active JP7203172B2 (ja) 2020-09-17 2021-09-16 デコーダコンフィギュレーションレコードにおけるピクチャ寸法インジケーション

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021151184A Active JP7202429B2 (ja) 2020-09-17 2021-09-16 符号化映像におけるクロマフォーマット及びビット深度のインジケーション

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021151187A Active JP7203172B2 (ja) 2020-09-17 2021-09-16 デコーダコンフィギュレーションレコードにおけるピクチャ寸法インジケーション

Country Status (5)

Country Link
US (3) US11729427B2 (ja)
EP (3) EP3972272A1 (ja)
JP (3) JP7202429B2 (ja)
KR (3) KR20220037380A (ja)
CN (3) CN114205603A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220113395A (ko) * 2019-12-26 2022-08-12 바이트댄스 아이엔씨 비디오 코딩에서의 프로필 티어 레벨 파라미터 세트
US11729427B2 (en) * 2020-09-17 2023-08-15 Lemon Inc. Chroma format and bit depth indication in coded video

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015506650A (ja) * 2012-01-30 2015-03-02 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオを符号化しビデオコンテンツを記憶する方法
JP2018511208A (ja) * 2015-02-11 2018-04-19 クゥアルコム・インコーポレイテッドQualcomm Incorporated 階層化されたビデオファイルフォーマットにおけるサンプルエントリー及び動作点信号伝達の設計
JP2018524891A (ja) * 2015-06-18 2018-08-30 クゥアルコム・インコーポレイテッドQualcomm Incorporated 階層化hevcファイルフォーマットでのトラックおよびオペレーティングポイントシグナリングの設計

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9532046B2 (en) * 2012-04-16 2016-12-27 Qualcomm Incorporated Reference picture set prediction for video coding
US9479776B2 (en) * 2012-07-02 2016-10-25 Qualcomm Incorporated Signaling of long-term reference pictures for video coding
US9351005B2 (en) * 2012-09-24 2016-05-24 Qualcomm Incorporated Bitstream conformance test in video coding
US9161039B2 (en) 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
US9584792B2 (en) 2013-01-04 2017-02-28 Qualcomm Incorporated Indication of current view dependency on reference view in multiview coding file format
JP6290924B2 (ja) 2013-01-07 2018-03-07 ノキア テクノロジーズ オサケユイチア ビデオ・コーディングおよびデコーディングのための方法と装置
US9467700B2 (en) 2013-04-08 2016-10-11 Qualcomm Incorporated Non-entropy encoded representation format
US10075729B2 (en) 2013-07-15 2018-09-11 Qualcomm Incorporated Signaling of view ID bit depth in parameter sets
US9794579B2 (en) * 2013-07-15 2017-10-17 Qualcomm Incorporated Decoded picture buffer operations for video coding
WO2015009108A1 (ko) * 2013-07-18 2015-01-22 삼성전자 주식회사 비디오 포멧 파라미터 전달을 사용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
US10356459B2 (en) 2013-07-22 2019-07-16 Sony Corporation Information processing apparatus and method
KR101757307B1 (ko) 2013-08-20 2017-07-26 엘지전자 주식회사 스트리밍 서비스를 통한 미디어 데이터 전송 장치, 스트리밍 서비스를 통한 미디어 데이터 수신 장치, 스트리밍 서비스를 통한 미디어 데이터 전송 방법, 및 스트리밍 서비스를 통한 미디어 데이터 수신 방법
WO2015054307A2 (en) 2013-10-07 2015-04-16 Vid Scale, Inc. Combined scalability processing for multi-layer video coding
US9648348B2 (en) 2013-10-23 2017-05-09 Qualcomm Incorporated Multi-layer video file format designs
US9860540B2 (en) 2014-01-03 2018-01-02 Qualcomm Incorporated Inference of nooutputofpriorpicsflag in video coding
BR122022001646B1 (pt) 2014-03-04 2023-03-07 Microsoft Technology Licensing, Llc Dispositivo de memória ou armazenamento legível por computador, método e sistema de computador
WO2015131330A1 (en) 2014-03-04 2015-09-11 Microsoft Technology Licensing, Llc Encoding strategies for adaptive switching of color spaces, color sampling rates and/or bit depths
US9948933B2 (en) 2014-03-14 2018-04-17 Qualcomm Incorporated Block adaptive color-space conversion coding
WO2015139203A1 (en) 2014-03-18 2015-09-24 Mediatek Singapore Pte. Ltd. Dlt signaling in 3d video coding
WO2015184605A1 (en) 2014-06-04 2015-12-10 Mediatek Singapore Pte. Ltd. Depth coding compatible with arbitrary bit-depth
US9769492B2 (en) * 2014-06-06 2017-09-19 Qualcomm Incorporated Conformance parameters for bitstream partitions
US10063867B2 (en) 2014-06-18 2018-08-28 Qualcomm Incorporated Signaling HRD parameters for bitstream partitions
US20150373343A1 (en) 2014-06-20 2015-12-24 Qualcomm Incorporated Representation format update in multi-layer codecs
CN106464943B (zh) 2014-06-30 2020-09-11 索尼公司 信息处理装置和方法
CN107079157B (zh) 2014-09-12 2020-12-22 Vid拓展公司 用于视频编码的分量间去相关
EP3723378A1 (en) 2014-10-06 2020-10-14 VID SCALE, Inc. Improved palette coding for screen content coding
US9838662B2 (en) 2014-10-10 2017-12-05 Qualcomm Incorporated Harmonization of cross-component prediction and adaptive color transform in video coding
US10271064B2 (en) * 2015-06-11 2019-04-23 Qualcomm Incorporated Sub-prediction unit motion vector prediction using spatial and/or temporal motion information
GB2539462B (en) 2015-06-16 2019-04-03 Canon Kk Obtaining media data and metadata from encapsulated bit-streams wherein operating point descriptors can be dynamically set
US10034010B2 (en) 2015-10-14 2018-07-24 Qualcomm Incorporated Alignment of operation point sample group in multi-layer bitstreams file format
US11223852B2 (en) * 2016-03-21 2022-01-11 Qualcomm Incorporated Coding video data using a two-level multi-type-tree framework
US10616582B2 (en) 2016-09-30 2020-04-07 Qualcomm Incorporated Memory and bandwidth reduction of stored data in image/video coding
JP2020515169A (ja) 2017-03-20 2020-05-21 シャープ株式会社 メディアアプリケーションフォーマットでスケーラブル動画像をシグナリングするためのシステム及び方法
US20190320172A1 (en) * 2018-04-12 2019-10-17 Qualcomm Incorporated Hardware-friendly sample adaptive offset (sao) and adaptive loop filter (alf) for video coding
CN112771885B (zh) 2018-09-18 2023-04-25 诺基亚技术有限公司 用于针对视频编码的非二进制简档约束信令的方法和装置
GB2590435B (en) * 2019-12-17 2023-12-20 Canon Kk Method, device, and computer program for improving encapsulation of media content
WO2021188527A1 (en) * 2020-03-17 2021-09-23 Bytedance Inc. Using video parameter set in video coding
KR20220164549A (ko) * 2020-04-02 2022-12-13 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 효율적인 관심영역, 스트림 액세스 및 파라미터 세트 처리를 허용하는 파일 포맷 체계
US11729427B2 (en) * 2020-09-17 2023-08-15 Lemon Inc. Chroma format and bit depth indication in coded video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015506650A (ja) * 2012-01-30 2015-03-02 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオを符号化しビデオコンテンツを記憶する方法
JP2018511208A (ja) * 2015-02-11 2018-04-19 クゥアルコム・インコーポレイテッドQualcomm Incorporated 階層化されたビデオファイルフォーマットにおけるサンプルエントリー及び動作点信号伝達の設計
JP2018524891A (ja) * 2015-06-18 2018-08-30 クゥアルコム・インコーポレイテッドQualcomm Incorporated 階層化hevcファイルフォーマットでのトラックおよびオペレーティングポイントシグナリングの設計

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Information technology - Coding of audio-visual objects - Part 15: Carriage of network abstraction l", ISO/IEC 14496-15:2019 DAM 2, JPN7022005817, 28 December 2020 (2020-12-28), pages 14 - 19, ISSN: 0004943226 *
ITU-T: "SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS: Versatile video coding", ITU-T H.266 (08/2020), vol. pp.35-40,99-104,456-460, JPN6022053021, 31 August 2020 (2020-08-31), ISSN: 0004943225 *

Also Published As

Publication number Publication date
JP7270012B2 (ja) 2023-05-09
KR20220037380A (ko) 2022-03-24
US20220086498A1 (en) 2022-03-17
EP3972271A1 (en) 2022-03-23
US11877011B2 (en) 2024-01-16
CN114205626A (zh) 2022-03-18
JP2022050360A (ja) 2022-03-30
JP2022050359A (ja) 2022-03-30
US11831921B2 (en) 2023-11-28
JP7202429B2 (ja) 2023-01-11
EP3972270A1 (en) 2022-03-23
CN114205626B (zh) 2023-12-01
JP7203172B2 (ja) 2023-01-12
US11729427B2 (en) 2023-08-15
US20220086499A1 (en) 2022-03-17
CN114205603A (zh) 2022-03-18
US20220103865A1 (en) 2022-03-31
EP3972272A1 (en) 2022-03-23
KR20220037382A (ko) 2022-03-24
KR20220037379A (ko) 2022-03-24
CN114205602A (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
EP3972274A1 (en) Subpicture entity group signaling in coded video
EP3972276A1 (en) Decoding capability information storage in video coding
JP7270012B2 (ja) 映像動作点レコード構文及びセマンティクス
US11611752B2 (en) Adaptation parameter set storage in video coding
WO2022089397A1 (en) Roll sample group in vvc video coding

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230308

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230424

R150 Certificate of patent or registration of utility model

Ref document number: 7270012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150