IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイトダンス ネットワーク テクノロジー カンパニー リミテッドの特許一覧 ▶ バイトダンス インコーポレイテッドの特許一覧

特表2023-542213映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ
<>
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図1
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図2
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図3
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図4
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図5
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図6
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図7
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図8
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図9
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図10
  • 特表-映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-10-05
(54)【発明の名称】映像ビットストリームにおけるネスト化及び非ネスト化SEIメッセージ
(51)【国際特許分類】
   H04N 19/70 20140101AFI20230928BHJP
   H04N 19/30 20140101ALI20230928BHJP
【FI】
H04N19/70
H04N19/30
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023518400
(86)(22)【出願日】2021-09-26
(85)【翻訳文提出日】2023-05-17
(86)【国際出願番号】 CN2021120530
(87)【国際公開番号】W WO2022063256
(87)【国際公開日】2022-03-31
(31)【優先権主張番号】PCT/CN2020/117596
(32)【優先日】2020-09-25
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】520476341
【氏名又は名称】北京字節跳動網絡技術有限公司
【氏名又は名称原語表記】Beijing Bytedance Network Technology Co., Ltd.
【住所又は居所原語表記】Room B-0035, 2/F, No.3 Building, No.30, Shixing Road, Shijingshan District Beijing 100041 China
(71)【出願人】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ワン,イェ-クイ
(72)【発明者】
【氏名】デン,ジピン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159KK13
5C159MA04
5C159MA05
5C159MA21
5C159MA31
5C159MC11
5C159ME01
5C159NN11
5C159RB09
5C159RC12
5C159UA02
5C159UA05
5C159UA16
(57)【要約】
デジタルビデオを符号化、復号、又はトランスコーディングするためのシステム、方法、及び装置が説明される。映像処理の一方法例は、映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行することを含み、前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤのアクセスユニット(AU)又は復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、スケーラブルネスティングタイプとは異なるメッセージタイプを有する前記複数のSEIメッセージはフォーマットルールに基づき、該フォーマットルールは、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤのAU又はDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する。
【特許請求の範囲】
【請求項1】
映像データを処理する方法であって、
映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行するステップ、
を有し、
前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤのアクセスユニット(AU)又は復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、
スケーラブルネスティングタイプとは異なるメッセージタイプを有する前記複数のSEIメッセージは、フォーマットルールに基づき、
前記フォーマットルールは、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記AU又は前記DUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、
方法。
【請求項2】
前記スケーラブルネスティングSEIメッセージの前記ペイロードタイプの前記値は133に等しい、請求項1に記載の方法。
【請求項3】
前記複数のSEIメッセージは、スケーラブルネスティングSEIメッセージに含まれる少なくとも1つのSEIメッセージと、スケーラブルネスティングSEIメッセージに含まれない少なくとも1つのSEIメッセージとを有する、請求項1に記載の方法。
【請求項4】
映像データを処理する方法であって、
現在ブロックを有する映像と該映像のビットストリームとの間の変換を実行するステップ、
を有し、
前記ビットストリームはフォーマットルールに準拠し、
前記フォーマットルールは、シンタックスフィールドが前記ビットストリームから除外されることに起因して前記ビットストリームに対する制約を規定し、前記シンタックスフィールドは、前記現在ブロックを有する現在ピクチャ又は前記現在ブロックを有する現在アクセスユニット(AU)に関連付けられたピクチャオーダカウント(POC)を示す、
方法。
【請求項5】
前記現在ピクチャ及び前記現在AUに関連付けられた前記POCを示す前記シンタックスフィールドが除外され、前記制約は、前記現在AU内の現在レイヤの参照レイヤに属するピクチャが存在しないことを規定する、請求項4に記載の方法。
【請求項6】
前記制約は、復号順での先行ピクチャがランダムアクセススキップトリーディング(RASL)ピクチャでもランダムアクセスデコーダブルリーディング(RADL)ピクチャでもないことを規定する、請求項4又は5に記載の方法。
【請求項7】
前記制約は、前記現在AU内の現在レイヤの参照レイヤに属するピクチャを前記現在AUが除外することに起因して、復号順での先行ピクチャがランダムアクセススキップトリーディング(RASL)ピクチャでもランダムアクセスデコーダブルリーディング(RADL)ピクチャでもないことを規定する、請求項4に記載の方法。
【請求項8】
前記先行ピクチャの時間識別子がゼロに等しく、前記時間識別子はTemporalIdである、請求項6又は7に記載の方法。
【請求項9】
前記シンタックスフィールドはph_poc_msb_cycle_valである、請求項4乃至8のいずれかに記載の方法。
【請求項10】
前記変換は、前記ビットストリームから前記映像を復号することを有する、請求項1乃至9のいずれかに記載の方法。
【請求項11】
前記変換は、前記映像を前記ビットストリームへと符号化することを有する、請求項1乃至9のいずれかに記載の方法。
【請求項12】
映像を表すビットストリームをコンピュータ読み取り可能記録媒体に格納する方法であって、
請求項1乃至9のいずれかに記載の方法に従って前記映像から前記ビットストリームを生成するステップと、
前記ビットストリームを前記コンピュータ読み取り可能記録媒体に格納するステップと、
を有する方法。
【請求項13】
請求項1乃至12のいずれかに記載の方法を実行するように構成されたプロセッサを有する映像処理装置。
【請求項14】
命令を格納したコンピュータ読み取り可能媒体であって、前記命令は、実行されるときに、プロセッサに請求項1乃至12のいずれかに記載の方法を実行させる、コンピュータ読み取り可能媒体。
【請求項15】
請求項1乃至12のいずれかに記載の方法に従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
【請求項16】
ビットストリームを格納するための映像処理装置であって、請求項1乃至12のいずれかに記載の方法を実行するように構成された映像処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
パリ条約に基づく適用可能な特許法及び/又は規則の下で、この出願は、2020年9月25日に出願された国際特許出願第PCT/CN2020/117596号の優先権及び利益を適時に主張して行われる。法律の下での全ての目的のために、上記出願の開示全体を、この出願の開示の一部として援用する。
【0002】
この特許文書は、ファイルフォーマットでのデジタルオーディオビデオメディア情報の生成、記憶及び消費に関する。
【背景技術】
【0003】
デジタル映像は、インターネット及びその他のデジタル通信ネットワーク上で最大の帯域幅使用を占めている。映像を受信して表示することが可能な接続ユーザ装置の数が増加するにつれて、デジタル映像の使用に対する帯域幅需要が増加し続けることが予期される。
【発明の概要】
【0004】
本文書は、ファイルフォーマットに従って映像又は画像の符号化表現を処理するためにビデオエンコーダ及びデコーダによって使用されることができる技術を開示する。
【0005】
一態様例において、映像処理方法が開示される。当該方法は、映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行するステップ、を含み、前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤのアクセスユニット(AU)又は復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、スケーラブルネスティングタイプとは異なるメッセージタイプを有する前記複数のSEIメッセージは、フォーマットルールに基づき、前記フォーマットルールは、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記AU又は前記DUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する。
【0006】
他の一態様例において、他の映像処理方法が開示される。当該方法は、現在ブロックを有する映像と該映像のビットストリームとの間の変換を実行するステップ、を含み、前記ビットストリームはフォーマットルールに準拠し、前記フォーマットルールは、シンタックスフィールドが前記ビットストリームから除外されることに起因して前記ビットストリームに対する制約を規定し、前記シンタックスフィールドは、前記現在ブロックを有する現在ピクチャ又は前記現在ブロックを有する現在アクセスユニットに関連付けられたピクチャオーダカウントを示す。
【0007】
更なる他の一態様例において、他の映像処理方法が開示される。当該方法は、映像と該映像のビットストリームとの間の変換を実行するステップ、を含み、前記ビットストリームは、ルールによって定められたサブビットストリーム抽出プロセスの順序に準拠し、前記ルールは、(a)条件を満たす全ての付加拡張情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットを出力ビットストリームから除去する動作を前記サブビットストリーム抽出プロセスが除外すること、又は(b)前記サブビットストリーム抽出プロセスの前記順序が、出力ビットストリームから前記SEI NALユニットを除去することに先立ってパラメータセットを置換パラメータセットで置換することを有すること、を規定する。
【0008】
更なる他の一態様例において、ビデオエンコーダ装置が開示される。当該ビデオエンコーダは、上述の方法を実装するように構成されたプロセッサを有する。
【0009】
更なる他の一態様例において、ビデオデコーダ装置が開示される。当該ビデオデコーダは、上述の方法を実装するように構成されたプロセッサを有する。
【0010】
更なる他の一態様例において、コードを格納したコンピュータ読み取り可能媒体が開示される。該コードは、プロセッサ実行可能コードの形態で、ここに記載される方法の1つを具現化する。
【0011】
更なる他の一態様例において、ビットストリームを格納したコンピュータ読み取り可能媒体が開示される。該ビットストリームは、ここに記載される方法を用いて生成又は処理される。
【0012】
これらの及び他の特徴が、本文書の全体を通じて記述される。
【図面の簡単な説明】
【0013】
図1】18個のタイル、24個のスライス、及び24個のサブピクチャに分割されたピクチャを示している。
図2】典型的なサブピクチャベースのビューポート依存360°映像配信スキームを示している。
図3】2つのサブピクチャと4つのスライスとを含むビットストリームからの1つのサブピクチャの抽出の一例を示している。
図4】映像処理システムの一例のブロック図である。
図5】映像処理装置のブロック図である。
図6】本開示の一部の実施形態に従った映像コーディングシステムを示すブロック図である。
図7】開示技術の一部の実施形態に従ったエンコーダを示すブロック図である。
図8】開示技術の一部の実施形態に従ったデコーダを示すブロック図である。
図9】開示技術の一部の実施形態に従った映像処理の方法例のフローチャートである。
図10】開示技術の一部の実施形態に従った映像処理の方法例のフローチャートである。
図11】開示技術の一部の実施形態に従った映像処理の方法例のフローチャートである。
【発明を実施するための形態】
【0014】
セクション見出しは、本文書において理解の容易さのために使用されており、各セクションにて開示される技術及び実施形態の適用可能性をそのセクションのみに限定するものではない。また、H.266用語は、一部の記述において単に理解の容易さのために使用されており、開示される技術の範囲を限定するためのものではない。従って、ここに記載される技術は、他のビデオコーデックプロトコル及び設計にも適用可能である。
【0015】
1. 冒頭説明
この文書はビデオファイルフォーマットに関する。具体的には、この文書は、ピクチャオーダカウント(POC)、付加拡張情報(SEI)、及びサブピクチャサブビットストリーム抽出に関する。この着想は、個別に又は様々な組合せで、例えば最近成立したバーサタイルビデオコーディング(VVC)といった任意のビデオコーディング標準又は非標準ビデオコーデックに適用され得る。
【0016】
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(クロスコンポーネント適応ループフィルタ)
CLVS coded layer video sequence(コーディドレイヤビデオシーケンス)
CLVSS coded layer video sequence start(コーディドレイヤビデオシーケンススタート)
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(コーディドビデオシーケンス)
CVSS coded video sequence start(コーディドビデオシーケンススタート)
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(トランケーテッドライス)
TU transform unit(変換ユニット)
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)
【0017】
3. 映像コーディングのレビュー
ビデオコーディング標準は、主に、周知の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及びH.265/HEVC標準を作成した。H.262以来、ビデオコーディング標準は、時間予測に加えて変換コーディングが利用されるハイブリッドビデオコーディング構造に基づいている。HEVCの先の将来のビデオコーディング技術を探求するため、2015年にVCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、数多くの新しい方法が、JVETによって採用され、共同探索モデルJEM(Joint Exploration Model)と名付けられたリファレンスソフトウェアに入れられてきた。JVETは後に、VVCプロジェクトが正式に開始された時に、JVET(Joint Video Experts Team)と改称された。VVCは、2020年7月1日に終了した第19回会議でJVETによって成立されたHEVCと比較して50%のビットレート低減を目指す新しいコーディング標準である。
【0018】
VVC標準(ITU-T H.266|ISO/IEC 23090-3)及び関連するVSEI標準(ITU-T H.274|ISO/IEC 23002-7)は、例えばテレビジョン放送、ビデオ会議、又はストレージ媒体からの再生などの伝統的な用途と、例えば適応ビットレートストリーミング、映像領域抽出、複数のコーディングされた映像ビットストリームからのコンテンツの合成及び融合、マルチビュー映像、スケーラブル階層化コーディング、及びビューポート適応360°没入メディアなどのいっそう新しくて先進的な用途との両方を含む、最大限に広範囲のアプリケーションでの使用に向けて設計されている。
【0019】
3.1. HEVC及びVVCにおけるピクチャオーダカウント(POC)
HEVC及びVVCにおいて、POCは基本的に、その一部が参照ピクチャ管理であるDPB管理を含む復号プロセスの多くの部分で、ピクチャを識別するためのピクチャIDとして使用される。
【0020】
新たに導入されたPHを用いて、VVCでは、POC値を導出するために使用され且つピクチャの全てのスライスについて同じ値を持つものであるPOC最下位ビット(LSB)の情報が、SH内でシグナリングされるHEVCとは対照的に、PH内でシグナリングされる。VVCはまた、PH内でのPOC最上位ビット(MSB)サイクル値のシグナリングを可能にすることで、先行して復号されたピクチャのPOC情報を当てにするものであるPOC MSBの追跡なしに、POC値の導出を可能にしている。これは、例えば、マルチレイヤビットストリームのAU内にIRAPピクチャと非IRAPピクチャとを混ぜ合わせることを可能にする。HEVCとVVCとの間でのPOCシグナリングの更なる違いは、HEVCではIDRピクチャについてPOC LSBがシグナリングされないことであり、これは、AU内でのIDRピクチャと非IDRピクチャとの混ぜ合わせを可能にするための、後のHEVCのマルチレイヤ拡張の開発中に幾つかの欠点を示すことが判明した。従って、VVCでは、IDRピクチャを含む各ピクチャについてPOC LSB情報がシグナリングされる。IDRピクチャについてのPOC LSB情報のシグナリングはまた、異なるビットストリームからのIDRピクチャと非IDRピクチャとを1つのピクチャにマージすることをサポートすることをより容易にする。何故なら、さもなければ、マージされたピクチャにおけるPOC LSBの取り扱いが複雑な設計を必要とすることになるからである。
【0021】
VVCにおけるPOCの復号プロセスは、以下のように規定されている:
8.3.1 ピクチャオーダカウントについての復号プロセス
このプロセスの出力は、現在ピクチャのピクチャオーダカウントであるPicOrderCntValである。
コーディングされるピクチャ各々が、PicOrderCntValと表記されるピクチャオーダカウント変数に関連付けられる。
変数currLayerIdxがGeneralLayerIdx[nuh_layer_id]に等しく設定されるものとする。
PicOrderCntValは以下のように導出される。
- vps_independent_layer_flag[currLayerIdx]が0に等しく、且つlayerIdAに等しいnuh_layer_idを持つ現在AU内のピクチャpicAが存在していてGeneralLayerIdx[layerIdA]がリストReferenceLayerIdx[currLayerIdx]内にある場合、PicOrderCntValはpicAのPicOrderCntValに等しくなるように導出され、ph_pic_order_cnt_lsbの値は現在AUの全てのVCL NALユニットにおいて同じであるとする。
- そうでない場合、現在ピクチャのPicOrderCntValは、この従属節の残りの部分で規定されるように導出される。
ph_poc_msb_cycle_valが存在せず、且つ現在ピクチャがCLVSSピクチャでないとき、変数prevPicOrderCntLsb及びprevPicOrderCntMsbが次のように導出される:
- prevTid0Picを、現在ピクチャのnuh_layer_idに等しいnuh_layer_idを持ち、どちらも0に等しTemporalId及びph_non_ref_pic_flagを持ち、且つRASL又はRADLピクチャではない、復号順での先行ピクチャとする:
注1-シングルレイヤビットストリームから抽出され且つイントラピクチャオンリーのトリックプレイで使用されるイントラピクチャのみからなるサブビットストリームでは、prevTid0Picは、復号順での先行イントラピクチャである。正しいPOC導出を保証するために、エンコーダは、イントラピクチャについてph_poc_msb_cycle_valを含めるか、それとも、sps_log2_max_pic_order_cnt_lsb_minus4の値を、現在ピクチャとprevTid0Picとの間のPOC差がMaxPicOrderCntLsb/2未満となるのに十分な大きさに設定するかのいずれかを選択し得る;
注2-vps_max_tid_il_ref_pics_plus1[i][j]が、レイヤインデックス中のiの任意の値及び現在レイヤのレイヤインデックスに等しいjについて0に等しいとき、OLSのうちの一部について抽出されたサブビットストリーム内のprevTid0Picは、復号順での、現在レイヤ内の0に等しいph_recovery_poc_cntを持つ先行IRAP又はGDRピクチャである。そのようなサブビットストリームが適合ビットストリームであることを保証するために、エンコーダは、0に等しいph_recovery_poc_cntを持つ各IRAP又はGDRピクチャについてph_poc_msb_cycle_valを含めるか、それとも、sps_log2_max_pic_order_cnt_lsb_minus4の値を、現在ピクチャとprevTid0Picとの間のPOC差がMaxPicOrderCntLsb/2未満となるのに十分な大きさに設定するかのいずれかを選択し得る。
- 変数prevPicOrderCntLsbが、prevTid0Picのph_pic_order_cnt_lsbに等しく設定される。
- 変数prevPicOrderCntMsbが、prevTid0PicのPicOrderCntMsbに等しく設定される。
現在ピクチャの変数PicOrderCntMsbが、以下のように導出される:
if((ph_pic_order_cnt_lsb<prevPicOrderCntLsb)&&
((prevPicOrderCntLsb-ph_pic_order_cnt_lsb)>=(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb+MaxPicOrderCntLsb (196)
elseif((ph_pic_order_cnt_lsb>prevPicOrderCntLsb)&&
((ph_pic_order_cnt_lsb-prevPicOrderCntLsb)>(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb-MaxPicOrderCntLsb
else
PicOrderCntMsb=prevPicOrderCntMsb
PicOrderCntValは次のように導出される:
PicOrderCntVal=PicOrderCntMsb+ph_pic_order_cnt_lsb (197)
注3-ph_poc_msb_cycle_valが存在しない全てのCLVSSピクチャは、それらのピクチャについてPicOrderCntMsbが0に等しく設定されるので、ph_pic_order_cnt_lsbに等しいPicOrderCntValを持つ。
PicOrderCntValの値は、両端を含めて-231から231-1の範囲内にあるものとする。
1つのCVS内で、同じ値のnuh_layer_idを持つ任意の2つのコーディングされるピクチャについてのPicOrderCntVal値は同じでないものとする。
任意の特定のAU内の全てのピクチャは同じ値のPicOrderCntValを持つものとする。
関数PicOrderCnt(picX)が次のように規定される:
PicOrderCnt(picX)=ピクチャpicXのPicOrderCntVal (198)
関数DiffPicOrderCnt(picA,picB)が次のように規定される:
DiffPicOrderCnt(picA,picB)=PicOrderCnt(picA)-PicOrderCnt(picB) (199)
ビットストリームは、復号プロセスにおいて使用されるDiffPicOrderCnt(picA,picB)の値について、両端を含めて-215から215-1の範囲内にはない値をもたらすデータを含まないものとする:
注4-Xを現在ピクチャとし、Y及びZを同じCVS内の2つの他のピクチャとすると、DiffPicOrderCnt(X,Y)及びDiffPicOrderCnt(X,Z)の両方が正である又は両方が負であるとき、Y及びZは、Xから同じ出力順方向にあると見なされる。
【0022】
3.2. VUI及びSEIメッセージ
VUIは、SPSの一部として(場合によりHEVCにおけるVPSにおいても)送信されるシンタックス構造である。VUIは、標準の復号プロセスには影響しないが、コーディングされた映像の適切なレンダリングにとって重要であり得る情報を運ぶ。
【0023】
SEIは、復号、表示、又は他の目的に関連するプロセスを支援する。VUIと同じで、SEIも標準の復号プロセスには影響を及ぼさない。SEIはSEIメッセージ内で運ばれる。SEIメッセージのデコーダサポートはオプションである。しかしながら、SEIメッセージはビットストリーム適合に影響を与え(例えば、ビットストリーム内のSEIメッセージのシンタックスが仕様に従わない場合、ビットストリームは適合しない)、一部のSEIメッセージがHRD仕様において必要とされる。
【0024】
VVCとともに使用されるVUIシンタックス構造及び殆どのSEIメッセージは、VVC仕様では規定されておらず、むしろVSEI仕様で規定されている。HRD適合性テストに必要なSEIメッセージはVVC仕様において規定されている。VVC v1は、HRD適合性テストに関連する5つのSEIメッセージを定義し、VSEI v1は、20個の追加のSEIメッセージを規定している。VSEI仕様で運ばれるSEIメッセージは、準拠するデコーダ挙動に直接影響せず、コーディングフォーマットに依存しないようにして使用されることができるように定義されており、VSEIが将来、VVCに加えて他のビデオコーディング標準とも使用されることを可能にする。VVCシンタックス要素名を具体的に参照するのではなく、VSEI仕様は、その値がVVC仕様内で設定される変数を参照している。
【0025】
HEVCと比較して、VVCのVUIシンタックス構造は、ピクチャの適切なレンダリングに関連する情報のみに焦点を当てていて、タイミング情報又はビットストリーム制約インジケーションを含んでいない。VVCにおいて、VUIはSPS内でシグナリングされ、それは、バイト単位でVUIペイロードの長さをシグナリングするためにVUIシンタックス構造の前に長さフィールドを含む。これは、デコーダが情報を容易にジャンプすることを可能にし、より重要なことには、SEIメッセージシンタックス拡張と同様の方式で、新しいシンタックス要素をVUIシンタックス構造の最後に直接追加することによって、簡便な将来のVUIシンタックス拡張を可能にする。
【0026】
VUIシンタックス構造は、以下の情報を含む:
・ コンテンツがインターレース又はプログレッシブであること;
・ フレームパックされた立体映像又は投影された全方位映像をコンテンツが含むかどうか;
・ サンプルアスペクト比;
・ コンテンツがオーバースキャン表示に適しているかどうか;
・ 超高精細(UHD)対高精細(HD)色空間並びにハイダイナミックレンジ(HDR)をシグナリングすることができるために特に重要なものである、原色、マトリクス、及び伝達特性を含む色記述;
・ (HEVCと比較してシグナリングがプログレッシブコンテンツについて明確にされた)ルマと比較してのクロマ位置。
【0027】
SPSが如何なるVUIも含まないとき、情報は規定されていないと見なされ、そして、ビットストリームのコンテンツがディスプレイ上でのレンダリングを意図している場合に、外部手段を介して伝達されるかアプリケーションによって規定されるかしなければならない。
【0028】
表1は、VVC v1で規定されている全てのSEIメッセージと、それらのシンタックス及びセマンティクスを含む仕様とを列挙している。VSEI仕様で規定されている20個のSEIメッセージのうち多く(例えば、フィラーペイロード及び両方のユーザデータSEIメッセージ)はHEVCから継承されたものである。一部のSEIメッセージは、コーディングされたビデオコンテンツの正しい処理又はレンダリングのために不可欠である。これは、例えば、マスタリングディスプレイカラーボリューム、コンテンツ光レベル情報、又はHDRコンテンツに特に関連する代替伝達特性SEIメッセージについて言える。他の例は、360°映像コンテンツのシグナリング及び処理に関連するものである、正距円筒射影、球回転、リージョンワイズパッキング、又は全方位ビューポートSEIメッセージを含む。
【表1】
【0029】
VVC v1のために規定された新しいSEIメッセージは、フレーム-フィールド情報SEIメッセージ、サンプルアスペクト比情報SEIメッセージ、及びサブピクチャレベル情報SEIメッセージを含む。
【0030】
フレーム-フィールド情報SEIメッセージは、関連するピクチャがどのように表示されるべきか(例えばフィールドパリティ又はフレーム繰り返し周期など)と、関連するピクチャのソーススキャンタイプと、関連するピクチャが先行ピクチャの複製であるかを示す情報を含む。この情報は、関連するピクチャのタイミング情報と共に、以前のビデオコーディング標準ではピクチャタイミングSEIメッセージ内でシグナリングされるように使用される。しかしながら、気付いたことには、フレーム-フィールド情報とタイミング情報は、必ずしも一緒にシグナリングされない2つの異なる種類の情報である。一典型例は、タイミング情報をシステムレベルでシグナリングするが、フレーム-フィールド情報はビットストリーム内でシグナリングすることにある。従って、ピクチャタイミングSEIメッセージからフレーム-フィールド情報を除去し、それを代わりに専用のSEIメッセージ内でシグナリングすることが決められた。この変更はまた、フレーム-フィールド情報のシンタックスを変更して、例えば、フィールド同士のペアリング、又はフレーム反復についてのもっと多くの値など、より明確な追加の指示をディスプレイに伝達することを可能にする。
【0031】
サンプルアスペクト比SEIメッセージは、同じシーケンス内の異なるピクチャについて異なるサンプルアスペクト比をシグナリングすることを可能にするが、VUIに含まれる対応する情報はシーケンス全体に適用される。それは、同じシーケンスの異なるピクチャに異なるサンプルアスペクト比を持たせるスケーリング係数とともに参照ピクチャリサンプリング機能を使用するときに関連し得る。
【0032】
サブピクチャレベル情報SEIメッセージは、サブピクチャシーケンスのレベルの情報を提供する。
【0033】
3.3. VVCにおけるピクチャパーティショニング及びサブピクチャ
VVCでは、ピクチャが、1つ以上のタイル行及び1つ以上のタイル列に分割される。タイルは、ピクチャの矩形領域をカバーするCTUのシーケンスである。タイル内のCTUは、そのタイル内でラスタスキャン順に走査される。
【0034】
スライスは、ピクチャのタイル内の整数個の完全なタイル又は整数個の連続した完全なCTU行からなる。
【0035】
つまりはラスタスキャンスライスモードと矩形スライスモードである、スライスの2つのモードがサポートされる。ラスタスキャンスライスモードにおいて、スライスは、ピクチャのタイルラスタスキャンにおける完全なタイルのシーケンスを含む。矩形スライスモードにおいて、スライスは、集合的にピクチャの矩形領域を形成する幾つかの完全なタイル、又は1つのタイルのうちの集合的にピクチャの矩形領域を形成する幾つかの連続した完全なCTU行のいずれかを含む。矩形のスライス内のタイルは、そのスライスに対応する矩形領域内でタイルラスタスキャン順に走査される。
【0036】
サブピクチャは、集合的にピクチャの矩形領域をカバーする1つ以上のスライスを含む。
【0037】
3.3.1. サブピクチャの概念及び機能
VVCでは、各サブピクチャが、例えば図1に示すように、集合的にピクチャの矩形領域をカバーする1つ以上の完全な矩形スライスからなる。サブピクチャは、抽出可能である(すなわち、同じピクチャの他のサブピクチャ及び復号順で先行するピクチャとは独立にコーディングされる)ように規定されるか、抽出不可能であるように規定されるかのいずれかである。サブピクチャが抽出可能であるか否かにかかわらず、エンコーダは、サブピクチャごとに個別に、サブピクチャ境界にまたがってインループフィルタリング(デブロッキング、SAO、及びALFを含む)が適用されるかを制御することができる。
【0038】
機能的には、サブピクチャは、HEVCにおける動き制約タイルセット(MCTS)と同様である。それらはどちらも、ビューポート依存360°ビデオストリーミング最適化及び関心領域(ROI)アプリケーションのような使用事例のために、コーディングされるピクチャのシーケンスのうちの矩形のサブセットの独立したコーディング及び抽出を可能にする。
【0039】
全方位映像としても知られる360°映像のストリーミングでは、任意の特定の瞬間に、全方位映像球面全体のうちのサブセット(すなわち、現在ビューポート)のみがユーザに対してレンダリングされ、ユーザはいつでも自分の頭を回して、見る向き、ひいては、現在ビューポートを変えることができる。現在ビューポートによってカバーされていないエリアの、少なくとも、より低い品質の表現をクライアントにおいて利用可能にし、ユーザが見ている向きを球上のどこかに突然変更した場合に備えて、ユーザにレンダリングされる準備をしておくことが望ましいが、全方位映像の高品質表現は、任意の所与の瞬間においてユーザにレンダリングされている現在ビューポートに対してのみ必要とされる。全方位映像全体の高品質表現を適切な粒度のサブピクチャに分割することは、12個の高解像度サブピクチャを左側に有し、それより低い解像度で全方位映像の残りの12個のサブピクチャを右側に有する図1に示すような最適化を可能にする。
【0040】
他の典型的なサブピクチャベースのビューポート依存360°映像配信スキームが図2に示されており、高めの解像度のフル映像の表現のみがサブピクチャで構成され、低めの解像度のフル映像の表現は、サブピクチャを使用せずに、高めの解像度の表現よりも少ない頻度のRAPでコーディングされることができる。クライアントは低めの解像度のフル映像を受信する一方で、高めの解像度の映像について、クライアントは、現在ビューポートをカバーするサブピクチャのみを受信して復号する。
【0041】
3.3.2. サブピクチャとMCTSとの間の違い
サブピクチャとMCTSとの間には幾つかの重要な設計上の違いがある。第1に、VVCにおけるサブピクチャ機能は、ピクチャ境界においてと同様に、この場合にはサブピクチャ境界においてサンプルパディングを適用することによって、サブピクチャが抽出可能である場合であっても、サブピクチャの外を指すコーディングブロックの動きベクトルを可能にする。第2に、マージモード及びVVCのデコーダ側動きベクトル精緻化プロセスにおける動きベクトルの選択及び導出のために追加の変更が導入されている。これは、MCTSに対してエンコーダ側で適用される非標準の動き制約と比較して高いコーディング効率を可能にする。第3に、適合ビットストリームであるサブビットストリームを作成するためにピクチャのシーケンスから1つ以上の抽出可能なサブピクチャを抽出するときに、SH(及び、存在する場合にPH NALユニット)の書き換えが必要とされない。HEVC MCTSに基づくサブビットストリーム抽出では、SHの書き換えが必要とされる。なお、HEVC MCTS抽出及びVVCサブピクチャ抽出のどちらでも、SPS及びPPSの書き換えは必要とされる。しかしながら、典型的に、ビットストリーム内には少しのパラメータセットしか存在しない一方で、各ピクチャは少なくとも1つのスライスを持ち、従って、SHの書き換えはアプリケーションシステムにとってかなりの負担となり得る。第4に、ピクチャ内の異なるサブピクチャのスライスは異なるNALユニットタイプを持つことが許される。これは、更に詳細に後述するように、ピクチャ内の混合NALユニットタイプ又は混合サブピクチャタイプとしばしば呼ばれる特徴である。第5に、VVCは、サブピクチャシーケンスについてのHRD及びレベル定義を規定しており、従って、抽出可能なサブピクチャシーケンス各々のサブビットストリームの適合性がエンコーダによって保証され得る。
【0042】
3.3.3. ピクチャ内の混合サブピクチャタイプ
AVC及びHEVCでは、ピクチャ内の全てのVCL NALユニットが同じNALユニットタイプを持つ必要がある。VVCは、特定の相異なるVCL NALユニットタイプを持つサブピクチャ同士をピクチャ内で混ぜ合わせるオプションを導入し、従って、ピクチャレベルだけでなくサブピクチャレベルでも、ランダムアクセスに対するサポートを提供する。VVCにおいて、サブピクチャ内のVCL-NALユニットは、同じNALユニットタイプを持つことが依然として必要とされる。
【0043】
IRAPサブピクチャからのランダムアクセスの能力は、360°映像アプリケーションにとって有益である。図2に示したものと同様のビューポート依存360°映像配信スキームにおいて、空間的に隣接するビューポートのコンテンツ同士が大きく重なり合い、すなわち、ビューポート内のサブピクチャのうちの一部のみがビューポートの向きの変更中に新しいサブピクチャによって置き換えられ、大部分のサブピクチャはビューポート内に留まる。ビューポートに新たに導入されるサブピクチャシーケンスは、IRAPスライスで開始しなければならないが、残りのサブピクチャがビューポート変更時にインター予測を実行することを可能にされるとき、全体的な伝送ビットレートの大幅な低減を達成することができる。
【0044】
ピクチャがただ1つのタイプのNALユニットを含むのか、2つ以上のタイプを含むのかのインジケーションが、そのピクチャによって参照されるPPS内で(すなわち、pps_mixed_nalu_types_in_pic_flagと呼ばれるフラグを用いて)提供される。ピクチャは、IRAPスライスを含むサブピクチャと、トレーリングスライスを含むサブピクチャとを同時に有し得る。NALユニットタイプRASL及びRADLのリーディングピクチャスライスを含め、ピクチャ内での異なるNALユニットタイプの他の組み合わせも少数ながら可能にされ、これは、異なるビットストリームから抽出されたオープンGOP及びクローズGOPコーディング構造を有するサブピクチャシーケンスを1つのビットストリームにマージすることを可能にする。
【0045】
3.3.4. サブピクチャレイアウト及びIDシグナリング
VVCにおけるサブピクチャのレイアウトはSPS内でシグナリングされ、従って、CLVS内で一定である。各サブピクチャは、その左上CTUの位置、並びにCTU数でのその幅及び高さによってシグナリングされ、従って、サブピクチャがCTU粒度でピクチャの矩形領域をカバーすることが保証される。それらのサブピクチャがSPS内でシグナリングされる順序が、ピクチャ内の各サブピクチャのインデックスを決定する。
【0046】
SH又はPHの書き換えなくサブピクチャシーケンスの抽出及びマージを可能にするために、VVCにおけるスライスアドレシングスキームは、サブピクチャID、及びスライスをサブピクチャに関連付けるためのサブピクチャ固有スライスインデックスに基づく。SHでは、そのスライスを含むサブピクチャのサブピクチャID及びサブピクチャレベルスライスインデックスがシグナリングされる。なお、特定のサブピクチャのサブピクチャIDの値は、そのサブピクチャインデックスの値とは異なることができる。これら2つの間のマッピングは、SPS又はPPS(しかし、決して両方ではない)内でシグナリングされるか、又は黙示的に推定されるかのいずれかである。存在する場合、サブピクチャIDマッピングは、サブピクチャサブビットストリーム抽出プロセスにおいてSPS及びPPSを書き換えるときに書き換えられるか又は追加されるかする必要がある。サブピクチャID及びサブピクチャレベルスライスインデックスはどちらも、復号ピクチャのDPBスロット内のスライスの最初の復号CTUの正確な位置をデコーダに示す。サブビットストリーム抽出の後、サブピクチャのサブピクチャIDは変更されないままであるが、サブピクチャインデックスは変わり得る。サブピクチャ内のスライス内の最初のCTUのラスタスキャンCTUアドレスが元のビットストリームでの値と比較して変化した場合であっても、それぞれのSH内のサブピクチャID及びサブピクチャレベルスライスインデックスの変化していない値がなおも、抽出されたサブビットストリームの復号ピクチャ内の各CTUの位置を正確に決定する。図3は、2つのサブピクチャ及び4つのスライスを含む例を用いて、サブピクチャ抽出を可能にするためのサブピクチャID、サブピクチャインデックス、及びサブピクチャレベルスライスインデックスの使用を示している。
【0047】
サブピクチャ抽出と同様に、サブピクチャについてのシグナリングは、異なるビットストリームが協調的に生成される(例えば、別個のサブピクチャIDを使用するが、それ以外は、例えばCTUサイズ、クロマフォーマット、コーディングツールなどクロマフォーマット、コーディングツールなど、殆ど揃えられたSPS、PPS、及びPHパラメータを使用して)という条件で、SPS及びPPSを書き換えるだけで、異なるビットストリームからの幾つかのサブピクチャを1つのビットストリームにマージすることを可能にする。
【0048】
サブピクチャ及びスライスは、それぞれ、SPS及びPPS内で独立にシグナリングされるが、適合ビットストリームを形成するために、サブピクチャレイアウトとスライスレイアウトとの間に固有の相互制約が存在する。第1に、サブピクチャの存在は、矩形スライスを用いることを必要とし、ラスタスキャンスライスを禁止する。第2に、所与のサブピクチャのスライスは、復号順で連続したNALユニットであるとされ、これが意味することは、サブピクチャレイアウトが、ビットストリーム内のコーディングされるスライスNALユニットの順序を制約するということである。
【0049】
3.4. VVCにおける一般的なサブビットストリーム抽出プロセス
HEVCと同様に、VVC仕様は、特定の動作点(すなわち、OLS及び含まれる時間サブレイヤ)に対応するサブビットストリームを抽出することを可能にするサブビットストリーム抽出プロセスを含む。HEVCでは、抽出プロセスは復号プロセスの一部であり、すなわち、ビットストリーム内に存在するときに、動作点に関連しないNALユニットをデコーダが破棄する必要があるが、VVC設計は、デコーダに供給されるビットストリームが、示された動作点に属さないNALユニットを含まないこと、すなわち、必要なときに、動作点に関連しないNALユニットが、デコーダの一部ではない抽出器によって破棄されることを想定している。HEVCと比較した顕著な違いは、VVCでは、スケーラブルネスティングされたHRD SEIメッセージの取り扱いが標準規定されていること、例えば、抽出されたビットストリームがターゲット動作点についての正しいHRDタイミングパラメータを担持することである。プロセスは、元のBP SEIメッセージ、及び、もしあれば、DUI SEIメッセージを除去することと、ターゲット動作点がビットストリーム内の全てのレイヤを含むものでないときに、元々はスケーラブルネスティングSEIメッセージ中に含まれていた適切なSEIメッセージを挿入することとを含む。しかしながら、PT SEIメッセージは特別な取り扱いを有し、上の動作は、各PT SEIメッセージが全てのOLSに適用されることが指し示されない場合にのみ必要とされる。
【0050】
VVCにおける一般的なサブビットストリーム抽出プロセスの仕様は、以下の通りである:
C.6 一般的なサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、及びターゲット最高TemporalId値tIDTargetである。
このプロセスの出力はサブビットストリームoutBitstreamである。
OLSインデックスtargetOlsIdxを有するOLSはターゲットOLSと称される。
入力ビットストリームに対するビットストリーム適合の要件は、以下の条件の全てを満たす任意の出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームが、ビットストリーム、VPSによって規定されるOLSのリストへのインデックスに等しいtargetOlsIdx、及び両端を含めて0からvps_ptl_max_tid[vps_ols_ptl_idx[targetOlsIdx]]の範囲内のいずれかの値に等しいtIDTargetを入力とした、この従属節で規定されるプロセスの出力である。
- 出力サブビットストリームが、LayerIdInOls[targetOlsIdx]内のnuh_layer_id値の各々に等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームが、tIDTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む:
注-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
出力サブビットストリームOutBitstreamは、以下の順序付けられたステップを適用することによって導出される:
1. ビットストリームoutBitstreamが、ビットストリームinBitstreamと同一であるように設定される。
2. tIDTargetより大きいTemporalIdを有する全てのNALユニットを、outBitstreamから除去する。
3. リストLayerIdInOls[targetOlsIdx]に含まれないnuh_layer_idを有し、且つDCI、OPI、VPS、AUD、又はEOB NALユニットではなく、且つ0、1、130、又は203に等しいPayloadTypeのペイロードを有する非スケーラブルネステッドSEIメッセージを含むSEI NALユニットではない全てのNALユニットを、outBitstreamから除去する。
4. 以下の条件の全てが真である全てのAPS及びVCL NALユニットと、PH_NUT若しくはFD_NUTに等しいnal_unit_typeを有した、又はSUFFIX_SEI_NUT若しくはPREFIX_SEI_NUTに等しいnal_unit_typeを有し、且つ0(BP)、1(PT)、130(DUI)、及び203(SLI)のいずれにも等しくないPayloadTypeを有するSEIメッセージを含んだ、これらのVCL NALユニットの関連する非VCL NALユニットとを、outBitstreamから除去する:
- nal_unit_typeがAPS_NUT、TRAIL_NUT、STSA_NUT、RADL_NUT、若しくはRASL_NUTに等しい、又はnal_unit_typeがGDR_NUTに等しく、且つ関連付けられたph_recovery_poc_cntが0より大きい;
- TemporalIdが、NumSubLayersInLayerInOLS[targetOlsIdx][GeneralLayerIdx[nuh_layer_id]]以上である。
5. AUの全てのVCL NALユニットが上のステップ2、3、又は4によって除去され、AUD又はOPI NALユニットがAU内に存在するとき、AUD又はOPI NALユニットをoutBitstreamから除去する。
6. outBitstream内の各OPI NALユニットについて、opi_htid_info_present_flagを1に等しく設定し、opi_ols_info_present_flagを1に等しく設定し、setopi_htid_plus1をtIdTarget+1に等しく設定し、opi_ols_idxをtargetOlsIdxに等しく設定する。
7. AUDがoutBitstream内のAU内に存在し、AUがIRAP又はGDR AUになるとき、該AUDのaud_irap_or_gdr_flagを1に等しく設定する。
8. NestingOlsIdx[i]がtargetOlsIdxに等しくなるように、1に等しいsn_ols_flagを持ち、且つ両端を含めて0からsn_num_olss_minus1の範囲内のiの値がないスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから除去する。
9. 0に等しいsn_ols_flagを持ち、且つリストLayerIdInOls[targetOlsIdx]内の値に等しい値がリストNestingLayerId内にないスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから除去する。
10. LayerIdInOls[targetOlsIdx]が、ビットストリームinBitstream内の全てのVCL NALユニット内のnuh_layer_idの全ての値を含まないとき、以下が、列挙された順序で適用される:
a. 0(BP)、130(DUI)、又は203(SLI)に等しいpayloadTypeを有する非スケーラブルネステッドSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから削除する;
b. general_same_pic_timing_in_all_ols_flagが0に等しいとき、1(PT)に等しいpayloadTypeを有する非スケーラブルネステッドSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから削除する;
c. outBitstreamが、ターゲットOLSに適用される、1に等しいsn_ols_flag又は0に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含むSEI NALユニットseiNalUnitAを含むとき、又は、NumLayersInOls[targetOlsIdx]が1に等しく、且つoutBitstreamが、outBitstream内のレイヤに適用される、0に等しいsn_ols_flag及び0に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含むSEI NALユニットseiNalUnitAを含むとき、新しいSEI NALユニットseiNalUnitBを生成し、それを、seiNalUnitA直後にseiNalUnitAを含むPUに含め、スケーラブルネスティングSEIメッセージからスケーラブルネステッドSEIメッセージを抽出し、それらを(非スケーラブルネステッドSEIメッセージとして)seiNalUnitBに直接含め、seiNalUnitAをoutBitstreamから除去する。
【0051】
3.5. VVCにおけるサブピクチャサブビットストリーム抽出プロセス
VVCは、個々の独立にコーディングされるサブピクチャのHRD適合性テストを可能にしており、すなわち、個々のサブピクチャに関連するビットストリーム部分を抽出して有効なビットストリームを形成することができ、そして、そのビットストリームのHRDモデルへの適合性をテストすることができる。適合性テストは、そのようなサブピクチャサブビットストリームのための完全なHRDモデルの定義を必要とし、VVCは、サブピクチャレベル情報(SLI)SEIメッセージと呼ばれる新しいSEIメッセージによって、他のHRDパラメータに加えて、必要な情報を運ぶことを可能にする。
【0052】
SLI SEIメッセージは、サブピクチャシーケンスのレベル情報を提供し、これは、デコーダによるサブピクチャビットストリームの処理を記述するHRDモデルのCPBサイズ及びビットレート値を導出するために必要とされるものである。複数のサブピクチャからなる元のビットストリームは、ビットストリームのパラメータセットにおいて示される特定のレベル(例えば、60Hzでの4Kのレベル5.1)によって定めれる限界を守り得るが、その特定のビットストリームのサブピクチャサブビットストリームは、より低いレベル(例えば、60Hzでの720pのレベル3)に対応し得る。さらに、VVCは、特定のサブピクチャサブビットストリームのレベルを、基準レベルの分数によって表現することを可能にしており、これは、HEVCよりも細かい粒度でのレベルシグナリングを可能にし、この情報はまた、複数のサブピクチャを1つのジョイントビットストリームにマージするシステムに、マージされたビットストリームのレベル制限に各サブピクチャサブビットストリームがどの程度寄与するかについてのガイダンスを提供する。例えば、一定のビットレートを示すビットストリーム、又はマルチレイヤビットストリームの場合の、サブピクチャパーティショニングが適用されないレイヤのレベル寄与などの、追加の特性も、SLI SEIメッセージ内でシグナリングすることができ、従って、そのようなシナリオに対しても、個々のサブピクチャシーケンスごとの完全なHRDモデルの導出を可能にする。適合するサブピクチャサブビットストリームを可能にするための努力の更なる部分は、個々のサブピクチャに属するVCL NALユニットに対して、例えば最小圧縮比又はビン・ツー・ビット比に対する制約などの、サブピクチャスコープとともにピクチャスコープを持つ数多くの適合関連制約を適用するものである。
【0053】
HEVCにおいて、独立にコーディングされる領域(すなわち、MCTS)のサブビットストリーム抽出及び適合性テストは、そのようなサブビットストリーム向けのパラメータセットが、MCTS抽出情報セットSEIメッセージによってネストされた形態で運ばれることを必要とする。
【0054】
VVCは、他のサブピクチャに関連付けられた不要なNALユニットを除去し、パラメータセットの関連部分を、サブピクチャサブビットストリームの特性を正しく反映するようにアクティブに書き換えることによって、独立にコーディングされたサブピクチャからの適合ビットストリームの生成を可能にする新しいサブピクチャサブビットストリーム抽出プロセスを追加する。例えば、このプロセスは、VPS及びSPS内のレベルインジケータ及びHRDパラメータと、それぞれのパラメータセットの適切なセクション内のピクチャサイズ、パーティショニング情報、適合ウィンドウオフセット、スケーリングウィンドウオフセット、及び仮想境界位置とを書き換えることを含む。サブピクチャサブビットストリーム抽出プロセスは、SLI SEIメッセージ内で提供される情報に基づいて、ビットストリームのパラメータセット内の情報の一部を書き換える。
【0055】
サブピクチャサブビットストリーム抽出プロセスの仕様は以下の通りである:
C.7 サブピクチャサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、ターゲット最高TemporalId値tIDTarget、及び、両端を含めて0からNumLayersInOls[targetOlsIdx]-1までのiについてのターゲットサブピクチャインデックス値subpicIdxTarget[i]のリストである。
このプロセスの出力は、サブビットストリームoutBitstreamである。
OLSインデックスtargetOlsIdxを有するOLSがターゲットOLSとして参照される。ターゲットOLS内のレイヤのうち、参照されるSPSが0よりも大きいsps_num_subpics_minus1を持つレイヤがmultiSubpicLayersとして参照される。
入力ビットストリームに対するビットストリーム適合の要件は、以下の条件の全てを満たす任意の出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームが、ビットストリーム、VPSによって規定されるOLSのリストへのインデックスに等しいtargetOlsIdx、両端を含めて0からvps_max_sublayers_minus1の範囲内のいずれかの値に等しいtIDTarget、及び、以下の条件を満たした、両端を含めて0からNumLayersInOls[targetOlsIdx]-1までのiについてのリストsubpicIdxTarget[i]を入力とした、この従属節で規定されるプロセスの出力である:
- sps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]が1に等しいように、subpicIdxTarget[i]の値が、両端を含めて0からsps_num_subpics_minus1の範囲内の値に等しく、sps_num_subpics_minus1及びsps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]は、LayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有するレイヤによって参照されるSPS内で見出されるか、それに基づいて推定される:
注1-LayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有するレイヤについてのsps_num_subpics_minus1が0に等しいとき、subpicIdxTarget[i]の値は0に等しい;
- m及びnの任意の2つの異なる整数値について、sps_num_subpics_minus1が、それぞれ、LayerIdInOls[targetOlsIdx][m]及びLayerIdInOls[targetOlsIdx][n]に等しいnuh_layer_idを有する両方のレイヤについて0より大きいとき、subpicIdxTarget[m]がsubpicIdxTarget[n]に等しい。
- 出力サブビットストリームが、LayerIdInOls[targetOlsIdx]内のnuh_layer_id値の各々に等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームが、tIDTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む:
注2-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームが、両端を含めて0からNumLayersInOls[targetOlsIdx]-1の範囲内の各iについて、LayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有するとともにSubpicIdVal[subpicIdxTarget[i]]に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは、以下の順序のステップによって導出される:
1. 付録C.6に規定されたサブビットストリーム抽出プロセスが、inBitstream、targetOlsIdx、及びtIDTargetを入力として呼び出され、該プロセスの出力がoutBitstreamに割り当てられる。
2. 両端を含めて0からNumLayersInOls[targetOlsIdx]-1の範囲内のiの各値について、LayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_id及びSubpicIdVal[subpicIdxTarget[i]]に等しくないsh_subpic_idを有する全てのVCL NALユニットと、それらの関連するフィラーデータNALユニットと、フィラーペイロードSEIメッセージを含むそれらに関連するSEI NALユニットとを、outBitstreamから除去する。
3. ターゲットOLSに適用されるSLI SEIメッセージが存在し、且つそのSLI SEIメッセージのsli_cbr_constraint_flagが0に等しいとき、FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージを含むSEI NALユニットとを除去する。
4. 1に等しいsn_subpic_flagを有し、且つ両端を含めて0からsn_num_subpics_minus1までのjについてのsn_subpic_id[j]値のいずれもがmultiSubpicLayers内のレイヤについてのSubpicIdVal[subpicIdxTarget[i]]値のいずれにも等しくないスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから除去する。
5. 少なくとも1つのVCL NALユニットがステップ2によって除去されているとき、0に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから除去する。
6. この文書で指定されていない何らかの外部手段が、サブビットストリームoutBitstreamについての置換パラメータセットを提供するために利用可能である場合、全てのパラメータセットを置換パラメータセットで置換する。そうでない場合、以下の順序付けられたステップが適用される:
a. 変数spIdxが、multiSubpicLayers内のいずれかのレイヤについてのsubpicIdxTarget[i]の値に等しく設定される;
b. ターゲットOLSに適用されるSLI SEIメッセージが存在するとき、存在するときに、全ての参照されるVPS内のprofile_tier_level()シンタックス構造のリスト内のvps_ols_ptl_idx[targetOlsIdx]番目のエントリにおいて、及び、NumLayersInOls[targetOlsIdx]が1に等しいときに、全ての参照されるSPS内のprofile_tier_level()シンタックス構造において、general_level_idc及び両端を含めて0からtIDTarget-1の範囲内のkについてのsublayer_level_idc[k]の値を、それぞれ、spIdx番目のサブピクチャシーケンスについて式1621によって導出されるSubpicLevelIdc[spIdx][tIDTarget]及びSubpicLevelIdc[spIdx][k]に等しいように設定する;
c. ターゲットOLSに適用されるSLI SEIメッセージが存在するとき、両端を含めて0からtIDTargetの範囲内のkについて、spLvIdxがSubpicLevelIdx[spIdx][k]に等しく設定されるようにし、SubpicLevelIdx[spIdx][k]は、spIdx番目のサブピクチャシーケンスについて式1621によって導出される。VCL HRDパラメータ又はNAL HRDパラメータが存在するとき、両端を含めて0からtIDTargetの範囲内のkについて、存在するときに、全ての参照されるVPS内のvps_ols_timing_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]番目のols_timing_hrd_parameters()シンタックス構造において、及び、NumLayersInOls[targetOlsIdx]が1に等しいときに、全ての参照されるSPS内のols_timing_hrd_parameters()シンタックス構造において、j番目のCPBのcpb_size_value_minus1[k][j]及びbit_rate_value_minus1[k][j]のそれぞれの値を、それらが、それぞれ、式1617及び1618によってそれぞれ導出されるSubpicCpbSizeVcl[spLvIdx][spIdx][k]及びSubpicCpbSizeNal[spLvIdx][spIdx][k]、式1619及び1620によってそれぞれ導出されるSubpicBitrateVcl[spLvIdx][spIdx][k]及びSubpicBitrateNal[spLvIdx][spIdx][k]に一致するように設定し、ここで、jは、両端を含めて0からhrd_cpb_cnt_minus1の範囲内であり、iは、両端を含めて0からNumLayersInOls[targetOlsIdx]-1までの範囲内である;
d. multiSubpicLayers内の各レイヤについて、そのレイヤ内のピクチャによって参照されるSPS及びPPSの書き換えのために、以下の順序付けられたステップが適用される:
i. 変数subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesが次のように導出される:
subpicWidthInLumaSamples=Min((sps_subpic_ctu_top_left_x[spIdx]+
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY,
pps_pic_width_in_luma_samples)-
sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY (1600)
subpicHeightInLumaSamples=Min((sps_subpic_ctu_top_left_y[spIdx]+
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY,
pps_pic_height_in_luma_samples)-
sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY (1601)
ii. 全ての参照されるSPS内のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値、並びに全ての参照されるPPS内のpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesの値を、それぞれ、subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesに等しいように設定する;
iii. 全ての参照されるSPS内のsps_num_subpics_minus1及び全ての参照されるPPS内のpps_num_subpics_minus1の値を、0に等しいように設定する;
iv. 存在するときに、全ての参照されるSPS内のシンタックス要素sps_subpic_ctu_top_left_x[spIdx]及びsps_subpic_ctu_top_left_y[spIdx]の値を、0に等しいように設定する;
v. spIdxに等しくない各jについて、存在するときに、全ての参照されるSPS内のシンタックス要素sps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]、及びsps_subpic_id[j]を除去する;
vi. spIdxが0より大きく、且つ参照されるSPSのsps_subpic_id_mapping_explicitly_signalled_flagが0に等しいとき、sps_subpic_id_mapping_explicitly_signalled_flag及びsps_subpic_id_mapping_present_flagの値をどちらも1に等しく設定し、spIdxに等しいsps_subpic_id[0]をSPSに追加する;
vii. spIdxに等しくない各jについて、存在するときに、全ての参照されるPPS内のシンタックス要素pps_subpic_id[j]を除去する;
viii. spIdxに等しいサブピクチャインデックスを有するサブピクチャに関連付けられていない全てのタイル行、タイル列、及びスライスを除去するために、タイル及びスライスのシグナリングのための全ての参照されるPPS内のシンタックス要素を設定する;
ix. 変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset、及びsubpicConfWinBottomOffsetが、以下のように導出される:
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx]==0?
Sps_conf_win_left_offset:0 (1602)
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx]+
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY>= (1603)
sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx]==0?
sps_conf_win_top_offset:0 (1604)
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx]+
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY>= (1605)
sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0

ここで、これらの式中のsps_subpic_ctu_top_left_x[spIdx]x[]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、sps_height_max_in_luma_samples、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、sps_conf_win_bottom_offsetの値は、それらが書き換えられる前の元のSPSからの値である:
注3-入力ビットストリーム及び出力ビットストリームの両方におけるmultiSubpicLayersのレイヤ内のピクチャについて、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値は、それぞれ、pps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesに等しい。従って、これらの式において、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、それぞれ、pps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesで置き換えられ得る;
x. 全ての参照されるSPS内のsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、及びsps_conf_win_bottom_offsetの値を、それぞれ、subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset、及びsubpicConfWinBottomOffsetに等しいように設定する;
xi. 変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset、及びsubpicScalWinBotOffsetが、以下のように導出される:
subpicScalWinLeftOffset=pps_scaling_win_left_offset- (1606)
sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=(rightSubpicBd>=
sps_pic_width_max_in_luma_samples)? (1607)
pps_scaling_win_right_offset:pps_scaling_win_right_offset-
(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC
subpicScalWinTopOffset=pps_scaling_win_top_offset- (1608)
sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=(botSubpicBd>=
sps_pic_height_max_in_luma_samples)? (1609)
pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-
(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC
ここで、これらの式中のsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、及びsps_pic_height_max_in_luma_samplesの値は、それらが書き換えられる前の元のSPSからの値であり、これらの式中のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、及びpps_scaling_win_bottom_offsetの値は、それらが書き換えられる前の元のPPSからの値である;
xii. 全ての参照されるPPS NALユニット内のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、及びpps_scaling_win_bottom_offsetの値を、それぞれ、subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset、及びsubpicScalWinBotOffsetに等しいように設定する;
xiii. 変数numVerVbs、subpicVbx[i]、numHorVbs、及びsubpicVby[i]が、以下のように導出される:
numVerVbs=0;
subpicX=sps_subpic_ctu_top_left_x[spIdx]
for(i=0;i<sps_num_ver_virtual_boundaries;i++){
vbX=sps_virtual_boundary_pos_x_minus1[i]+1
if(vbX>(subpicX*CtbSizeY/8)&&vbX<Min((subpicX+ (1610)
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY/8,
pps_pic_width_in_luma_samples/8))
subpicVbx[numVerVbs++]=vbX-subpicX*CtbSizeY/8
}
numHorVbs=0;
subpicY=sps_subpic_ctu_top_left_y[spIdx]
for(i=0;i<sps_num_hor_virtual_boundaries;i++){
vbY=sps_virtual_boundary_pos_y_minus1[i]+1
if(vbY>(subpicY*CtbSizeY/8)&&vbY<Min((subpicY+ (1611)
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY/8,
pps_pic_height_in_luma_samples/8))
subpicVby[numHorVbs++]=vbY-subpicY*CtbSizeY/8
}
ここで、これらの式中のsps_num_ver_virtual_boundaries、sps_virtual_boundary_pos_x_minus1[i]、sps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_num_hor_virtual_boundaries、sps_virtual_boundary_pos_y_minus1[i]、sps_subpic_ctu_top_left_y[spIdx]、及びsps_subpic_height_minus1[spIdx]の値は、それらが書き換えられる前の元のSPSからの値である;
xiv. sps_virtual_boundaries_present_flagが1に等しいとき、両端を含めて0からnumVerVbs-1の範囲内のi、及び0からnumHorVbs-1の範囲内のjについて、全ての参照SPS内のsps_num_ver_virtual_boundaries、sps_virtual_boundary_pos_x_minus1[i]、sps_num_hor_virtual_boundaries、及びsps_virtual_boundary_pos_y_minus1[j]シンタックス要素の値を、それぞれ、numVerVbs、subpicVbx[i]-1、numHorVbs、及びsubpicVby[j]-1に等しいように設定する。抽出されたサブピクチャの外側の仮想境界は除去される。numVerVbs及びnumHorVbsの両方が0に等しいとき、全ての参照されるSPS内のsps_virtual_boundaries_enabled_flagの値を0に等しいように設定し、シンタックス要素sps_virtual_boundaries_present_flag、sps_num_ver_virtual_boundaries、sps_virtual_boundary_pos_x_minus1[i]、sps_num_hor_virtual_boundaries、及びsps_virtual_boundary_pos_y_minus1[i]を除去する;
e. ターゲットOLSに適用されるSLI SEIメッセージが存在するとき、以下が適用される:
i. sli_cbr_constraint_flagが1に等しい場合、全ての参照されるVPS内のvps_ols_timing_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]番目のols_timing_hrd_parameters()シンタックス構造において、及び、NumLayersInOls[targetOlsIdx]が1に等しいときに、全ての参照されるSPS内のols_timing_hrd_parameters()シンタックス構造において、j番目のCPBのcbr_flag[tIDTarget][j]を1に等しく設定する;
ii. そうでない(sli_cbr_constraint_flagが0に等しい)場合、cbr_flag[tIDTarget][j]を0に等しく設定する。どちらの場合も、jは、両端を含めて0からhrd_cpb_cnt_minus1の範囲内にある;
7. 少なくとも1つのVCL NALユニットがステップ2によって除去されているとき、以下が、列挙された順序で適用される:
a. 0(BP)、130(DUI)、203(SLI)、又は132(復号ピクチャハッシュ)に等しいpayloadTypeを有する非スケーラブルネステッドSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから削除する;
b. general_same_pic_timing_in_all_ols_flagが0に等しいとき、1(PT)に等しいpayloadTypeを有する非スケーラブルネステッドSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから削除する;
c. outBitstreamが、outBitstream内のターゲットOLS及びサブピクチャに適用される、1に等しいsn_ols_flag又は1に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含むSEI NALユニットseiNalUnitAを含むとき、又は、NumLayersInOls[targetOlsIdx]が1に等しく、且つoutBitstreamが、outBitstream内のレイヤ及びサブピクチャに適用される、0に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含むSEI NALユニットseiNalUnitAを含むとき、新しいSEI NALユニットseiNalUnitBを生成し、それを、seiNalUnitA直後にseiNalUnitAを含むPUに含め、スケーラブルネスティングSEIメッセージからスケーラブルネステッドSEIメッセージを抽出し、それらを(非スケーラブルネステッドSEIメッセージとして)seiNalUnitBに直接含め、seiNalUnitAをoutBitstreamから除去する。
【0056】
4. 開示される技術的ソリューションによって解決される技術的問題の例
VVCにおけるPOC、SEI、及びサブピクチャサブビットストリーム抽出の設計は、以下の問題を有する:
1) VVC仕様の節C.4は、POCに関連する以下の制約を含む:
currPicLayerIdを現在ピクチャのnuh_layer_idに等しいものとする;
各現在ピクチャについて、変数maxPicOrderCnt及びminPicOrderCntを、それぞれ、currPicLayerIdに等しいnuh_layer_idを有する以下のピクチャのPicOrderCntVal値の最大値及び最小値に等しく設定されるものとする:
- 現在ピクチャ;
- どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ;
- 現在ピクチャのRefPicList[0]内の全てのエントリ及びRefPicList[1]内の全てのエントリによって参照されるSTRP;
- 現在ピクチャをcurrPicとして、1に等しいPictureOutputFlag、AuCpbRemovalTime[currPic]より小さいAuCpbRemovalTime[n]、及びAuCpbRemovalTime[currPic]以上のDpbOutputTime[n]を持つ全てのピクチャn;
CLVSSピクチャではない各現在ピクチャについて、maxPicOrderCnt-minPicOrderCntの値は、MaxPicOrderCntLsb/2未満であるものとする;
上の制約は、上の2つめの項目が緩和された場合に適合ビットストリームとなる以下のビットストリームを許可しない:
a. 元のビットストリームがシングルレイヤビットストリームであり、そのビットストリームから、全ての非イントラコーディディングされたピクチャを除去することによって、サブビットストリームoutBitstreamが抽出される。outBitstream内に、ピクチャpicAと、ピクチャprevTid0Pic、すなわち、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、且つRASL又はRADLピクチャではない、同じレイヤ内の復号順での先行ピクチャと、の間のPOC値の差がMaxPicOrderCntLsb/2よりも大きくなるような、少なくとも1つのピクチャpicAが存在する。上の制約によれば、このビットストリームoutBitstreamは、制約に違反するので、適合ビットストリームではない;
しかしながら、picAが、PH内でシグナリングされるPOC MSB値を持つ場合、そのPOCは正しく導出されることができる。従って、2つめの項目が以下のように変更されれば、ビットストリームoutBitstreamは適合ビットストリームになり得る:
- ph_poc_msb_cycle_valが現在ピクチャに対して存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ;
b. 元のビットストリームがマルチレイヤビットストリームであり、レイヤインデックスjを有するレイヤが、ビットストリーム内のレイヤインデックスlayerBを有する別のレイヤの直接参照レイヤであり、且つvps_max_tid_il_ref_pics_plus1[i][j]が0に等しい。そして、抽出されたビットストリームoutBitstreamにおいて、一般的なサブビットストリーム抽出プロセスに従って、レイヤjが出力レイヤであるがレイヤiはそうではないOLSについて、0に等しいph_recovery_poc_cntを有するGDRピクチャ、又はIRAPピクチャのみがレイヤi内に存在する。この場合、上と同様に、outBitstream内に、ピクチャpicAと、ピクチャprevTid0Pic、すなわち、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、且つRASL又はRADLピクチャではない、同じレイヤ内の復号順での先行ピクチャと、の間のPOC値の差がMaxPicOrderCntLsb/2よりも大きくなるような、少なくとも1つのピクチャpicAが、レイヤi内に存在する。上の制約によれば、このビットストリームoutBitstreamは、制約に違反するので、適合ビットストリームではない。outBitstreamのような抽出されたビットストリームは、元のビットストリームが適合ビットストリームであった場合に適合ビットストリームであることが必要とされるので、従って、元のビットストリームも適合ビットストリームではない;
しかしながら、picAが、PH内でシグナリングされるPOC MSB値を持つ場合、そのPOCは正しく導出されることができる。この場合も、2つめの項目が以下のように変更されれば、この例におけるビットストリームoutBitstream及び元のビットストリームはどちらも適合ビットストリームになり得る:
- ph_poc_msb_cycle_valが現在ピクチャに対して存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ;
c. 上の例a及びbと同様の元のビットストリーム及びoutBitstreamであるが、複数のレイヤを含み、ピクチャpicAについて、同じAU内に別のピクチャpicBがあり、そのピクチャは、picAを含むレイヤの参照レイヤに属する。換言すれば、picAのPOC値は、picBのPOC値に等しく導出されることになる。この場合、picAとprevTid0Picとの間のピクチャPOC差がMaxPicOrderCntLsb/2よりも大きくても、picBのPOC値が正しく導出されることができる限り、picAのPOC値は依然として正しく導出されることができる;
従って、上の2つめの項目が以下のように変更されれば、このような例におけるビットストリームoutBitstreamは適合ビットストリームになり得る:
- 現在AU内に、現在レイヤの参照レイヤに属するピクチャが存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ。
2) 一般的なサブビットストリーム抽出プロセスでは、ステップ9が、0に等しいsn_ols_flagを持ち、且つリストLayerIdInOls[targetOlsIdx]内の値に等しい値がリストNestingLayerId内にないスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットを、outBitstreamから除去する。しかしながら、このステップは実際には必要でなく、何故なら、1)0に等しいsn_ols_flagを有するスケーラブルネスティングSEIメッセージを含むSEI NALユニットでは、NestingLayerIdが常にSEI NALユニットのレイヤIDを含むからである。2)SEI NALユニットがリストLayerIdInOls[targetOlsIdx]内にないレイヤIDを持つ場合、それはステップ3によって既に除去されていることになる。
3) サブピクチャサブビットストリーム抽出プロセスにおいて、ステップ2によって少なくとも1つのVCL NALユニットが除去されているとき、ステップ5は、ネスト化されたSLI SEIメッセージを含めて、0に等しいsn_subpic_flagを有するスケーラブルネスティングSEIメッセージを含む全てのSEI NALユニットをoutBitstreamから除去する。しかしながら、ネスト化されたSLI SEIメッセージは、存在するとき、パラメータセットの書き換えのためにステップ6によって必要とされ得る。
4) ネスト化されたもの及びネスト化されていないの両方のHRD関連SEIメッセージが存在して同じOLSに適用されることが許されている。同様に、ネスト化されたもの及びネスト化されていないの両方の非HRD関連SEIメッセージが存在して同じレイヤに適用されることも許されている。しかしながら、特定のペイロードタイプのそのようなSEIメッセージのコンテンツが同じであることを要求する制約を欠いている。
【0057】
5. 技術的ソリューションの例
上の問題及びその他を解決するため、以下に要約した方法を開示する。これらの項目は、全体的な概念を説明するための例と見なされるべきであり、狭く解釈されるべきでない。また、これらの項目は、個別に又は任意のやり方で組み合わせて適用されることができる:
1) 問題1を解決するために、問題1で説明したPOC関連制約における2つめの項目を以下のうちの1つに変更することが提案される:
a. ph_poc_msb_cycle_valが現在ピクチャに対して存在せず、且つ現在AU内に現在レイヤの参照レイヤに属するピクチャが存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ:
i. あるいは、“現在AU内に現在レイヤの参照レイヤに属するピクチャが存在しない”という句が、“現在ピクチャのPocFromIlrpFlagが0に等しい”によって置き換えられ、そして、PocFromIlrpFlagが次のように規定される:
変数currLayerIdxがGeneralLayerIdx[nuh_layer_id]に等しく設定される。vps_independent_layer_flag[currLayerIdx]が0に等しく、且つGeneralLayerIdx[layerIdA]がリストReferenceLayerIdx[currLayerIdx]中にあるようなlayerIdAに等しいnuh_layer_idを有するピクチャpicAが現在AU内に存在する場合、変数PocFromIlrpFlagは1に等しく設定される。そうでない場合、PocFromIlrpFlagは0に等しく設定される;
b. ph_poc_msb_cycle_valが現在ピクチャに対して存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ;
c. 現在AU内に、現在レイヤの参照レイヤに属するピクチャが存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ:
i. あるいは、“現在AU内に現在レイヤの参照レイヤに属するピクチャが存在しない”という句が、“現在ピクチャのPocFromIlrpFlagが0に等しい”によって置き換えられ、そして、PocFromIlrpFlagが上記のように規定される;
d. ph_poc_msb_cycle_valが現在ピクチャに対して存在しないとき、又は現在AU内に現在レイヤの参照レイヤに属するピクチャが存在しないとき、どちらも0に等しいTemporalId及びph_non_ref_pic_flagを持ち、RASLピクチャ又はRADLピクチャではない、復号順での先行ピクチャ:
i. あるいは、“現在AU内に現在レイヤの参照レイヤに属するピクチャが存在しない”という句が、“現在ピクチャのPocFromIlrpFlagが0に等しい”によって置き換えられ、そして、PocFromIlrpFlagが上記のように規定される。
2) 問題2を解決するために、一般的なサブビットストリーム抽出プロセスのステップ9を除去する。
3) 問題3を解決するために、サブピクチャサブビットストリーム抽出プロセスのステップ5がステップ6全体の後に移動される。
4) 問題4を解決するために、以下の制約が提案される。特定のAU又はDUに関連付けられて特定のOLS又はレイヤに適用される、133に等しくない特定の値のpayloadTypeを有する複数のSEIメッセージが存在するとき、これらのSEIメッセージの一部又は全部がスケーラブルネスティングされるかにかかわらず、SEIメッセージは同じSEIペイロードコンテンツを持つものとする。
なお、133に等しいpayloadTypeを有するSEIメッセージは、スケーラブルネスティングSEIメッセージである。
【0058】
6. 実施形態
以下は、VVC仕様に適用されることができる、第5節に要約した発明態様の一部の幾つかの実施形態例である。変更対象テキストは、JVET-S2001-vHでの最新のVVCテキストに基づく。追加又は変更されている最も関連する部分は、太字のイタリック体且つ下線付きのフォントで示され、例えば、太字のイタリック体且つ下線付きのfeatureは追加を示し、削除されている部分の一部は、太字のイタリック体の二重括弧で囲まれ、例えば、太字のイタリック体の[[]]で囲まれたフィーチャは削除を示す。本質的に編集上の変更であるために強調表示していない変更も一部あり得る。
6.1. 第1実施形態
この実施形態は、項目1.a.i、2、3、及び4に関する。
(外1)
(外2)
(外3)
(外4)
【0059】
図4は、ここに開示される様々な技術が実装され得る映像処理システム4000の一例を示すブロック図である。様々な実装は、システム4000のコンポーネントの一部又は全てを含み得る。システム4000は、映像コンテンツを受信する入力4002を含み得る。映像コンテンツは、例えば8ビット又は10ビットのマルチコンポーネント(多成分)ピクセル値といった、ロー(未加工)又は未圧縮のフォーマットで受信されてもよいし、あるいは圧縮又は符号化されたフォーマットで受信されてもよい。入力4002は、ネットワークインタフェース、周辺バスインタフェース、又はストレージインタフェースを表し得る。ネットワークインタフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)などの有線インタフェース、及びWi-Fi(登録商標)若しくはセルラーインタフェースなどの無線インタフェースを含む。
【0060】
システム4000は、本文書に記載される様々なコーディング又は符号化方法を実装し得るコーディングコンポーネント4004を含み得る。コーディングコンポーネント4004は、入力4002からコーディングコンポーネント4004の出力まで映像の平均ビットレートを低減させて、映像の符号化表現を生成し得る。コーディング技術は、それ故に、映像圧縮技術又は映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント4004の出力は、格納されるか、コンポーネント4006によって表されるように接続されて通信を介して伝送されるかし得る。入力4002で受信された映像の格納又は通信されるビットストリーム(又は符号化)表現は、ディスプレイインタフェース910に送られるピクセル値又は表示可能映像を生成するためにコンポーネント4008によって使用され得る。ビットストリーム表現からユーザが見ることができる映像を生成するプロセスは、映像解凍と呼ばれることがある。また、特定の映像処理操作が“コーディング”の操作又はツールとして参照されることがあるが、理解されることには、コーディングのツール又は操作はエンコーダで使用され、コーディングの結果を裏返す対応する復号のツール又は操作がデコーダで実行されることになる。
【0061】
周辺バスインタフェース又はディスプレイインタフェースの例は、ユニバーサルシリアルバス(USB)又は高精細マルチメディアインタフェース(HDMI(登録商標))又はディスプレイポート(Displayport)などを含み得る。ストレージインタフェースの例は、SATA(serial advanced technology attachment)、PCI、IDEインタフェースなどを含む。本文書に記載される技術は、例えば携帯電話、ラップトップ、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実行することが可能な他の装置などの、種々のエレクトロニクス装置にて具現化され得る。
【0062】
図5は、映像処理装置5000のブロック図である。装置5000は、ここに記載される方法(例えば、図9図11に示される方法)のうちの1つ以上を実装するために使用され得る。装置5000は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信器などにて具現化され得る。装置5000は、1つ以上のプロセッサ5002、1つ以上のメモリ5004、及び映像処理ハードウェア5006を含み得る。(1つ以上の)プロセッサ5002は、本文書に記載される1つ以上の方法を実行するように構成され得る。(1つ以上の)メモリ5004は、ここに記載される方法及び技術を実行するのに使用されるデータ及びコードを格納するために使用され得る。映像処理ハードウェア5006は、本文書に記載される一部の技術をハードウェア回路にて実装するために使用され得る。一部の実施形態において、映像処理ハードウェア5006は、例えばグラフィックスコプロセッサといったプロセッサ5002に少なくとも部分的に含められ得る。
【0063】
図6は、この開示の技術を利用し得る映像コーディングシステム100の一例を示すブロック図である。
【0064】
図6に示すように、映像コーディングシステム100は、ソース装置110及びデスティネーション装置120を含み得る。ソース装置110は、符号化映像データを生成し、映像符号化装置として参照され得る。デスティネーション装置120は、ソース装置110によって生成された符号化映像データを復号することができ、映像復号装置として参照され得る。
【0065】
ソース装置110は、映像ソース112、ビデオエンコーダ114、及び入力/出力(I/O)インタフェース116を含み得る。
【0066】
映像ソース112は、例えば、映像キャプチャ装置、映像コンテンツプロバイダから映像データを受信するインタフェース、及び/又は映像データを生成するコンピュータグラフィックスシステム、又はそのようなソースの組み合わせなどの、ソースを含み得る。映像データは、1つ以上のピクチャを有し得る。ビデオエンコーダ114は、映像ソース112からの映像データを符号化してビットストリームを生成する。ビットストリームは、映像データの符号化表現を形成する一連のビットを含み得る。ビットストリームは、符号化ピクチャ及び関連データを含み得る。符号化ピクチャはピクチャの符号化表現である。関連データは、シーケンスパラメータセット、ピクチャパラメータセット、及び他のシンタックス構造を含み得る。I/Oインタフェース116は、変調器/復調器(モデム)及び/又は送信器を含み得る。符号化映像データは、I/Oインタフェース116を介し、ネットワーク130aを通じて直接、デスティネーション装置120に伝送され得る。符号化映像データはまた、デスティネーション装置120によるアクセスのためにストレージ媒体/サーバ130b上に格納されてもよい。
【0067】
デスティネーション装置120は、I/Oインタフェース126、ビデオデコーダ124、及び表示装置122を含み得る。
【0068】
I/Oインタフェース126は、受信器及び/又はモデムを含み得る。I/Oインタフェース126は、ソース装置110又はストレージ媒体/サーバ130bから符号化映像データを取得し得る。ビデオデコーダ124は符号化映像データを復号し得る。表示装置122は、復号映像データをユーザに表示し得る。表示装置122は、デスティネーション装置120と一体化されてもよいし、あるいは、外部表示装置とインタフェースするように構成されたデスティネーション装置120の外部にあってもよい。
【0069】
ビデオエンコーダ114及びビデオデコーダ124は、例えばハイエフィシェンシビデオコーディング(HEVC)標準、バーサタイルビデオコーディング(VVC)標準、及び他の現行の及び/又は将来の標準などの、映像圧縮標準に従って動作し得る。
【0070】
図7は、図6に示したシステム100内のビデオエンコーダ114とし得るものであるビデオエンコーダ200の一例を示すブロック図である。
【0071】
ビデオエンコーダ200は、この開示の技術のうちのいずれか又は全てを実行するように構成され得る。図7の例において、ビデオエンコーダ200は、複数の機能コンポーネントを含んでいる。この開示に記載される技術は、ビデオエンコーダ200の様々なコンポーネントの間で共有され得る。一部の例において、プロセッサが、この開示に記載される技術のうちのいずれか又は全てを実行するように構成され得る。
【0072】
ビデオエンコーダ200の機能コンポーネントは、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、及びイントラ予測ユニット206を含み得る予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214とを含み得る。
【0073】
他の例において、ビデオエンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでいてもよい。IBCユニットは、少なくとも1つの参照ピクチャが、現在映像ブロックが位置するところのピクチャである、というIBCモードで予測を実行し得る。
【0074】
また、例えば動き推定ユニット204及び動き補償ユニット205などの一部のコンポーネントは、図5の例では説明の目的で別々に表されているが、高度に集積されることができる。
【0075】
分割ユニット201は、ピクチャを1つ以上の映像ブロックに分割し得る。ビデオエンコーダ200及びビデオデコーダ300は、様々な映像ブロックサイズをサポートし得る。
【0076】
モード選択ユニット203は、例えば誤差結果に基づいて、イントラ又はインターである複数のコーディングモードのうちの1つを選択し、得られたイントラ又はインターコーディングされたブロックを、残差ブロックデータを生成する残差生成ユニット207と、参照ピクチャとしての使用のために符号化ブロックを再構成する再構成ユニット212とに提供し得る。一部の例において、モード選択ユニット203は、予測がインター予測信号及びイントラ予測信号に基づくものである組み合わせイントラ・インター予測(combination of intra and inter predication;CIIP)モードを選択してもよい。モード選択ユニット203はまた、インター予測の場合に、ブロックに対する動きベクトルの分解能(例えば、サブピクセル又は整数ピクセルの精度)を選択し得る。
【0077】
現在映像ブロックに対してインター予測を実行するために、動き推定ユニット204が、バッファ213からの1つ以上の参照フレームを現在映像ブロックと比較することによって、現在映像ブロックについての動き情報を生成し得る。動き補償ユニット205が、現在映像ブロックに関連付けられたピクチャ以外の、バッファ213からのピクチャの動き情報及び復号サンプルに基づいて、現在映像ブロックについての予測映像ブロックを決定し得る。
【0078】
動き推定ユニット204及び動き補償ユニット205は、例えば、現在映像ブロックがIスライス内にあるか、Pスライス内にあるか、それともBスライス内にあるかに応じて、現在映像ブロックに対して異なる演算を実行し得る。
【0079】
一部の例において、動き推定ユニット204は、現在映像ブロックに対して片方向予測を実行することができ、動き推定ユニット204は、現在映像ブロックに対する参照映像ブロックについてリスト0又はリスト1の参照ピクチャを探索し得る。そして、動き推定ユニット204は、参照映像ブロックを含んだリスト0又はリスト1内の参照ピクチャを指し示す参照インデックスと、現在映像ブロックと参照映像ブロックとの間の空間変位を指し示す動きベクトルとを生成し得る。動き推定ユニット204は、現在映像ブロックの動き情報として、上記参照インデックスと、予測方向インジケータと、上記動きベクトルとを出力し得る。現在映像ブロックの動き情報によって示される参照映像ブロックに基づいて、動き補償ユニット205が現在ブロックの予測映像ブロックを生成し得る。
【0080】
他の例において、動き推定ユニット204は、現在映像ブロックに対して双方向予測を実行することができ、動き推定ユニット204は、現在映像ブロックに対する参照映像ブロックについてリスト0内の参照ピクチャを探索し得るとともに、現在映像ブロックに対するもう1つの参照映像ブロックについてリスト1内の参照ピクチャも探索し得る。そして、動き推定ユニット204は、参照映像ブロックを含んだリスト0内の及びリスト1内の参照ピクチャを指し示す参照インデックスと、それら参照映像ブロックと現在映像ブロックとの間の空間変位を指し示す動きベクトルとを生成し得る。動き推定ユニット204は、現在映像ブロックの動き情報として、それら参照インデックスと、現在映像ブロックの上記動きベクトルとを出力し得る。現在映像ブロックの動き情報によって示される参照映像ブロックに基づいて、動き補償ユニット205が現在ブロックの予測映像ブロックを生成し得る。
【0081】
一部の例において、動き推定ユニット204は、デコーダの復号処理のために、動き情報の完全なセットを出力し得る。
【0082】
一部の例において、動き推定ユニット204は、現在映像についての動き情報の完全なセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して現在映像ブロックの動き情報をシグナリングしてもよい。例えば、動き推定ユニット204は、現在映像ブロックの動き情報が隣接映像ブロックの動き情報と十分に似ていると判定し得る。
【0083】
一例において、動き推定ユニット204は、現在映像ブロックに関連付けられるシンタックス構造内で、現在映像ブロックが別の映像ブロックと同じ動き情報を持つことをビデオデコーダ300に示す値を指し示し得る。
【0084】
他の一例において、動き推定ユニット204は、現在映像ブロックに関連付けられるシンタックス構造内で、別の映像ブロックと動きベクトル差(MVD)とを特定してもよい。動きベクトル差は、現在映像ブロックの動きベクトルと、指し示される映像ブロックの動きベクトルとの間の差を示す。ビデオデコーダ300は、指し示された映像ブロックの動きベクトルと動きベクトル差とを用いて、現在映像ブロックの動きベクトルを決定し得る。
【0085】
上述のように、ビデオエンコーダ200は、動きベクトルを予測的にシグナリングし得る。ビデオエンコーダ200によって実装され得る予測的シグナリング技術の2つの例は、アドバンスト動きベクトル予測(AMVP)及びマージモードシグナリングを含む。
【0086】
イントラ予測ユニット206は、現在映像ブロックに対してイントラ予測を実行し得る。イントラ予測ユニット206が現在映像ブロックに対してイントラ予測を実行するとき、イントラ予測ユニット206は、同じピクチャ内の他の映像ブロックの復号サンプルに基づいて、現在映像ブロックについての予測データを生成し得る。現在映像ブロックについての予測データは、予測映像ブロックと様々なシンタックス要素とを含み得る。
【0087】
残差生成ユニット207は、現在映像ブロックの(1つ以上の)予測映像ブロックを現在映像ブロックから差し引くことによって(例えば、マイナス符号によって示される)、現在映像ブロックについての残差データを生成し得る。現在映像ブロックの残差データは、現在映像ブロック内のサンプルの異なるサンプル成分に対応する残差映像ブロックを含み得る。
【0088】
他の例では、例えばスキップモードにおいて、現在映像ブロックのために現在映像ブロックについての残差データが存在しないことがあり、残差生成ユニット207は減算演算を実行しないことがある。
【0089】
変換処理ユニット208は、現在映像ブロックに関連する残差映像ブロックに1つ以上の変換を適用することによって、現在映像ブロックについての1つ以上の変換係数映像ブロックを生成し得る。
【0090】
変換処理ユニット208が現在映像ブロックに関する変換係数映像ブロックを生成した後、量子化ユニット209が、現在映像ブロックに関する変換係数映像ブロックを、現在映像ブロックに関する1つ以上の量子化パラメータ(QP)値に基づいて量子化し得る。
【0091】
逆量子化ユニット210及び逆変換ユニット211が、変換係数映像ブロックに、それぞれ、逆量子化及び逆変換を適用して、変換係数映像ブロックから残差映像ブロックを再構成し得る。再構成ユニット212が、再構成された残差映像ブロックを、予測ユニット202によって生成された1つ以上の予測映像ブロックからの対応するサンプルに足し合わせて、バッファ213に記憶される現在ブロックに関する再構成映像ブロックを生成し得る。
【0092】
再構成ユニット212が映像ブロックを再構成した後、映像ブロック内の映像ブロッキングアーチファクトを低減させるために、ループフィルタリング演算が実行され得る。
【0093】
エントロピー符号化ユニット214が、ビデオエンコーダ200の他の機能コンポーネントからデータを受信し得る。エントロピー符号化ユニット214がデータを受信すると、エントロピー符号化ユニット214は、1つ以上のエントロピー符号化演算を実行してエントロピー符号化データを生成し、そして、エントロピー符号化データを含むビットストリームを出力し得る。
【0094】
図8は、図6に示したシステム100内のビデオデコーダ124とし得るものであるビデオデコーダ300の一例を示すブロック図である。
【0095】
ビデオデコーダ300は、この開示の技術のうちのいずれか又は全てを実行するように構成され得る。図8の例において、ビデオデコーダ300は、複数の機能コンポーネントを含んでいる。この開示に記載される技術は、ビデオデコーダ300の様々なコンポーネントの間で共有され得る。一部の例において、プロセッサが、この開示に記載される技術のうちのいずれか又は全てを実行するように構成され得る。
【0096】
図8の例において、ビデオデコーダ300は、エントロピー復号ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、再構成ユニット306、及びバッファ307を含んでいる。ビデオデコーダ300は、一部の例において、ビデオエンコーダ200(例えば、図7)に関して説明した符号化パスに対して概ね逆の復号パスを実行し得る。
【0097】
エントロピー復号ユニット301が符号化ビットストリームを取り出し得る。符号化ビットストリームは、エントロピー符号化された映像データ(例えば、映像データの符号化ブロック)を含み得る。エントロピー復号ユニット301はエントロピー符号化映像データを復号することができ、エントロピー復号された映像データから、動き補償ユニット302が、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、及び他のモーション情報を含む動き情報を決定し得る。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することによって、そのような情報を決定し得る。
【0098】
動き補償ユニット302は、場合により補間フィルタに基づく補間を実行して、動き補償ブロックを生成し得る。サブピクセル精度で使用される補間フィルタに関する識別子がシンタックス要素に含められ得る。
【0099】
動き補償ユニット302は、映像ブロックの符号化中にビデオエンコーダ200によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルに対する補間値を計算し得る。動き補償ユニット302は、ビデオエンコーダ200によって使用された補間フィルタを、受信したシンタックス情報に従って決定し、その補間フィルタを用いて予測ブロックを生成し得る。
【0100】
動き補償ユニット302は、シンタックス情報の一部を用いて、符号化ビデオシーケンスのフレーム及び/又はスライスを符号化するのに使用されるブロックのサイズ、符号化ビデオシーケンスのピクチャの各マクロブロックがどのように分割されるかを記述するパーティション情報、各パーティションがどのように符号化されるかを指し示すモード、各インター符号化ブロックに関する1つ又は複数の参照フレーム(及び参照フレームリスト)、及び符号化ビデオシーケンスを復号するための他の情報を決定し得る。
【0101】
イントラ予測ユニット303は、例えばビットストリーム内で受信した、イントラ予測モードを用いて、空間的に隣接するブロックから予測ブロックを形成し得る。逆量子化ユニット303が、ビットストリーム内で提供されてエントロピー復号ユニット301によって復号された量子化された映像ブロック係数を逆量子化する、例えば、量子化解除する。逆変換ユニット303が逆変換を適用する。
【0102】
再構成ユニット306が、残差ブロックを、動き補償ユニット302又はイントラ予測ユニット303によって生成された対応する予測ブロックと足し合わせて、復号ブロックを形成し得る。望まれる場合、ブロックアーチファクトを除去するために復号ブロックをフィルタリングするよう、デブロッキングフィルタも適用され得る。そして、復号映像ブロックがバッファ307に格納され、それが、後の動き補償/イントラ予測のための参照ブロックを提供し、また、ディスプレイ装置上での提示のために復号された映像を生成する。
【0103】
図9図11は、例えば、図4図8に示した実施形態において上述した技術的ソリューションを実装することができる方法例を示している。
【0104】
図9は、映像処理の方法例900のフローチャートを示している。方法900は、動作910にて、映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行することを含み、ビットストリームは更に、特定の出力レイヤセット(OLS)又は特定のレイヤのアクセスユニット(AU)又は復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、スケーラブルネスティングタイプとは異なるメッセージタイプを有する前記複数のSEIメッセージは、フォーマットルールに基づき、フォーマットルールは、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤのAU又はDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する。
【0105】
図10は、映像処理の方法例1000のフローチャートを示している。方法1000は、動作1010にて、現在ブロックを有する映像と該映像のビットストリームとの間の変換を実行することを含み、ビットストリームは、シンタックスフィールドがビットストリームから除外されることに起因してビットストリームに対する制約を規定するフォーマットルールに準拠し、シンタックスフィールドは、現在ブロックを有する現在ピクチャ又は現在ブロックを有する現在アクセスユニット(AU)に関連付けられたピクチャオーダカウント(POC)を示す。
【0106】
図11は、映像処理の方法例1100のフローチャートを示している。方法1100は、動作1110にて、映像と該映像のビットストリームとの間の変換を実行することを含み、ビットストリームは、ルールによって定められたサブビットストリーム抽出プロセスの順序に準拠し、ルールは、(a)条件を満たす全ての付加拡張情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットを出力ビットストリームから除去する動作をサブビットストリーム抽出プロセスが除外すること、又は(b)サブビットストリーム抽出プロセスの順序が、出力ビットストリームからSEI NALユニットを除去することに先立ってパラメータセットを置換パラメータセットで置換することを有すること、を規定する。
【0107】
以下のソリューションは、先行セクション(例えば、項目1から4)で説明した技術の実施形態例を示す。
【0108】
次に、一部の実施形態によって好まれるソリューションのリストを提供する。
【0109】
A1. 映像データを処理する方法であって、映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行するステップ、を有し、前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤのアクセスユニット(AU)又は復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、スケーラブルネスティングタイプとは異なるメッセージタイプを有する前記複数のSEIメッセージは、フォーマットルールに基づき、前記フォーマットルールは、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記AU又は前記DUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、方法。
【0110】
A2. 前記スケーラブルネスティングSEIメッセージの前記ペイロードタイプの前記値は133に等しい、ソリューションA1の方法。
【0111】
A3. 前記複数のSEIメッセージは、スケーラブルネスティングSEIメッセージに含まれる少なくとも1つのSEIメッセージと、スケーラブルネスティングSEIメッセージに含まれない少なくとも1つのSEIメッセージとを有する、ソリューションA1の方法。
【0112】
A4. 映像データを処理する方法であって、現在ブロックを有する映像と該映像のビットストリームとの間の変換を実行するステップ、を有し、前記ビットストリームはフォーマットルールに準拠し、前記フォーマットルールは、シンタックスフィールドが前記ビットストリームから除外されることに起因して前記ビットストリームに対する制約を規定し、前記シンタックスフィールドは、前記現在ブロックを有する現在ピクチャ又は前記現在ブロックを有する現在アクセスユニット(AU)に関連付けられたピクチャオーダカウント(POC)を示す、方法。
【0113】
A5. 前記現在ピクチャ及び前記現在AUに関連付けられた前記POCを示す前記シンタックスフィールドが除外され、前記制約は、前記現在AU内の現在レイヤの参照レイヤに属するピクチャが存在しないことを規定する、ソリューションA4の方法。
【0114】
A6. 前記制約は、復号順での先行ピクチャがランダムアクセススキップトリーディング(RASL)ピクチャでもランダムアクセスデコーダブルリーディング(RADL)ピクチャでもないことを規定する、ソリューションA4又はA5の方法。
【0115】
A7. 前記制約は、前記現在AU内の現在レイヤの参照レイヤに属するピクチャを前記現在AUが除外することに起因して、復号順での先行ピクチャがランダムアクセススキップトリーディング(RASL)ピクチャでもランダムアクセスデコーダブルリーディング(RADL)ピクチャでもないことを規定する、ソリューションA4の方法。
【0116】
A8. 前記先行ピクチャの時間識別子がゼロに等しく、前記時間識別子はTemporalIdである、ソリューションA6又はA7の方法。
【0117】
A9. 前記シンタックスフィールドはph_poc_msb_cycle_valである、ソリューションA4乃至A8のいずれかの方法。
【0118】
A10. 前記変換は、前記ビットストリームから前記映像を復号することを有する、ソリューションA1乃至A9のいずれかの方法。
【0119】
A11. 前記変換は、前記映像を前記ビットストリームへと符号化することを有する、ソリューションA1乃至A9のいずれかの方法。
【0120】
A12. 映像を表すビットストリームをコンピュータ読み取り可能記録媒体に格納する方法であって、ソリューションA1乃至A9のいずれか1つ以上に記載された方法に従って前記映像から前記ビットストリームを生成するステップと、前記ビットストリームを前記コンピュータ読み取り可能記録媒体に格納するステップと、を有する方法。
【0121】
A13. ソリューションA1乃至A12のいずれか1つ以上に記載された方法を実行するように構成されたプロセッサを有する映像処理装置。
【0122】
A14. 命令を格納したコンピュータ読み取り可能媒体であって、前記命令は、実行されるときに、プロセッサにソリューションA1乃至A12の1つ以上に記載された方法を実行させる、コンピュータ読み取り可能媒体。
【0123】
A15. ソリューションA1乃至A12のいずれか1つ以上に従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
【0124】
A16. ビットストリームを格納するための映像処理装置であって、ソリューションA1乃至A12のいずれか1つ以上に記載された方法を実行するように構成された映像処理装置。
【0125】
次に、一部の実施形態によって好まれるソリューションの別のリストを提供する。
【0126】
B1. 映像データを処理する方法であって、映像と該映像のビットストリームとの間の変換を実行するステップ、を有し、前記ビットストリームは、ルールによって定められたサブビットストリーム抽出プロセスの順序に準拠し、前記ルールは、(a)条件を満たす全ての付加拡張情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットを出力ビットストリームから除去する動作を前記サブビットストリーム抽出プロセスが除外すること、又は(b)前記サブビットストリーム抽出プロセスの前記順序が、出力ビットストリームから前記SEI NALユニットを除去することに先立ってパラメータセットを置換パラメータセットで置換することを有すること、を規定する、方法。
【0127】
B2. 前記条件は、前記SEI NALユニットのうちの少なくとも1つが、(a)ゼロに等しいフラグと、(b)リスト内の第2の識別子の値とは異なる値を有する第1の識別子と、を有するスケーラブルネスティングSEIメッセージを有することを規定する、ソリューションB1の方法。
【0128】
B3. 前記フラグは、スケーラブルネスティングSEIメッセージが特定の出力レイヤセットに適用されるかを指し示し、前記第1の識別子はネスティングレイヤ識別子であり、前記第2の識別子は出力レイヤセット内のレイヤのレイヤ識別子である、ソリューションB2の方法。
【0129】
B4. 前記フラグはsn_ols_flagである、ソリューションB3の方法。
【0130】
B5. 前記第1の識別子はNestingLayerIdであり、前記第2の識別子はLayerIdInOls[targetOlsIdx]である、ソリューションB3の方法。
【0131】
B6. 前記SEI NALユニットのうちの少なくとも1つがスケーラブルネスティングSEIメッセージを含む、ソリューションB1の方法。
【0132】
B7. 少なくとも1つのビデオコーディングレイヤ(VCL)NALユニットが前記出力ビットストリームから除去されることに起因して、前記SEI NALユニットが前記出力ビットストリームから除去される、ソリューションB6の方法。
【0133】
B8. 前記スケーラブルネスティングSEIメッセージは、0に等しいフラグを有する、ソリューションB6又はB7の方法。
【0134】
B9. 前記フラグはsn_subpic_flagである、ソリューションB8の方法。
【0135】
B10. 前記変換は、前記ビットストリームから前記映像を復号することを有する、ソリューションB1乃至B9のいずれかの方法。
【0136】
B11. 前記変換は、前記映像を前記ビットストリームへと符号化することを有する、ソリューションB1乃至B9のいずれかの方法。
【0137】
B12. 映像を表すビットストリームをコンピュータ読み取り可能記録媒体に格納する方法であって、ソリューションB1乃至B9のいずれか1つ以上に記載された方法に従って前記映像から前記ビットストリームを生成するステップと、前記ビットストリームを前記コンピュータ読み取り可能記録媒体に格納するステップと、を有する方法。
【0138】
B13. ソリューションB1乃至B12のいずれか1つ以上に記載された方法を実行するように構成されたプロセッサを有する映像処理装置。
【0139】
B14. 命令を格納したコンピュータ読み取り可能媒体であって、前記命令は、実行されるときに、プロセッサにソリューションB1乃至B12の1つ以上に記載された方法を実行させる、コンピュータ読み取り可能媒体。
【0140】
B15. ソリューションB1乃至B12のいずれか1つ以上に従って生成されたビットストリームを格納したコンピュータ読み取り可能媒体。
【0141】
B16. ビットストリームを格納するための映像処理装置であって、ソリューションB1乃至B12のいずれか1つ以上に記載された方法を実行するように構成された映像処理装置。
【0142】
次に、一部の実施形態によって好まれるソリューションの更なる別のリストを提供する。
【0143】
P1. 映像処理の方法であって、1つ以上のピクチャを有する1つ以上のレイヤを有した映像と該映像のコーディディングされた表現との間の変換を実行するステップ、を有し、前記コーディングされた表現はフォーマットルールに準拠し、前記フォーマットルールは、現在アクセスユニット内の現在ピクチャに関連付けられたピクチャオーダカウントを示すシンタックスフィールドが存在しない場合に、前記コーディングされた表現に対する制約を規定する、方法。
【0144】
P2. 前記フォーマットルールは、復号順での先行ピクチャがランダムアクセススキップトリーディングピクチャでもランダムアクセスデコーダブルリーディングピクチャでもないという制約を規定する、ソリューションP1の方法。
【0145】
P3. 前記フォーマットルールは、前記現在アクセスユニット内の前記現在レイヤの参照レイヤに属するピクチャが存在しないという条件に前記制約が基づくことを規定する、ソリューションP1の方法。
【0146】
P4. 映像処理の方法であって、1つ以上のピクチャを有する1つ以上のレイヤを有した映像と該映像のコーディングされた表現との間の変換を実行するステップ、を有し、前記コーディングされた表現は、ルールによって定められたサブビットストリーム抽出プロセスの順序に従う、方法。
【0147】
P5. 前記ルールは、前記サブビットストリーム抽出プロセスが、条件に従って、全てのSEIネットワーク抽象化レイヤユニットについて、出力ビットストリームからスケーラブルネスティング付加拡張情報(SEI)メッセージを除去するステップを省略することを規定する、ソリューションP4の方法。
【0148】
P6. 前記ルールは、前記サブビットストリーム抽出プロセスの順序が、出力ビットストリーム内のスケーラブルネスティングSEIメッセージを含む付加拡張情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットを除去することに先立って、パラメータセットを置換パラメータセットで置換することを含む、ことを規定する、ソリューションP4の方法。
【0149】
P7. 映像処理の方法であって、1つ以上のピクチャを有する1つ以上のレイヤを有した映像と該映像のコーディングされた表現との間の変換を実行するステップ、を有し、前記コーディングされた表現はフォーマットルールに準拠し、前記フォーマットルールは、特定のアクセスユニット又は復号ユニットに関連付けられて特定の出力レイヤセット又はレイヤに適用される、133に等しくないペイロードタイプの特定の値を持つ複数の付加拡張情報(SEI)メッセージが存在する場合に、前記複数のSEIメッセージが同じSEIペイロードコンテンツを持つことを規定する、方法。
【0150】
P8. 前記複数のSEIメッセージのうちの一部又は全てがスケーラブルネスティングされる、ソリューションP7の方法。
【0151】
P9. 前記変換は、コーディングされた表現を前記映像から生成することを有する、ソリューションP1乃至P8のいずれかの方法。
【0152】
P10. 前記変換は、前記コーディングされた表現を復号して前記映像を生成することを有する、ソリューションP1乃至P8のいずれかの方法。
【0153】
P11. ソリューションP1乃至P10の1つ以上に記載された方法を実行するように構成されたプロセッサを有する映像復号装置。
【0154】
P12. ソリューションP1乃至P10の1つ以上に記載された方法を実行するように構成されたプロセッサを有する映像符号化装置。
【0155】
P13. コンピュータコードを格納したコンピュータプログラムプロダクトであって、前記コードは、プロセッサによって実行されるときに該プロセッサにソリューションP1乃至P10のいずれかに記載された方法を実行させる、コンピュータプログラムプロダクト。
【0156】
P14. ソリューションP1乃至P10のいずれかに従って生成されたコーディングされた表現を格納したコンピュータ読み取り可能媒体。
【0157】
ここに記載されたソリューションにおいて、エンコーダは、フォーマットルールに従ってコーディングされた表現を生成することによってフォーマットルールに準拠することができる。ここに記載されたソリューションにおいて、デコーダは、フォーマットルールを使用することで、フォーマットルールに従った構文要素の存在及び不存在の知識を用いて、コーディングされた表現内の構文要素を解析して、復号された映像を生成することができる。
【0158】
本文書において、用語“映像処理”は、映像符号化、映像復号、映像圧縮、又は映像解凍を指し得る。例えば、映像圧縮アルゴリズムが、映像のピクセル表現から対応するビットストリーム表現への変換又はその逆の変換において適用され得る。現在映像ブロックのビットストリーム表現は、例えば、シンタックスによって規定されるように、ビットストリーム内で一緒に置かれたビット又は複数の異なる場所に散らされたビットのいずれかに対応する。例えば、変換されコーディングされるエラー残差値に関して、ビットストリーム内のヘッダ及び他のフィールドの中のビットを用いて、マクロブロックを符号化し得る。また、変換において、デコーダは、上のソリューションで説明したように、決定に基づいて、フィールドが存在し得る又は存在しないという知識を用いてビットストリームを解析し得る。同様に、エンコーダは、特定のシンタックスフィールドを含めるか含めないかを決定し、それに従って、コーディングされた表現に対してそれらシンタックスフィールドを含める又は除外することによって、コーディングされた表現を生成し得る。
【0159】
開示される及びその他のソリューション、この文書に記述される例、実施形態、モジュール及び機能動作は、この文書に開示されている構造及びそれらに構造的に均等なものを含め、デジタル電子回路、又はコンピュータソフトウェア、ファームウェア、若しくはハードウェアにて、あるいはこれらのうちの1つ以上の組み合わせにて実施されることができる。開示される及びその他の実施形態は、1つ以上のコンピュータプログラムプロダクトとして実装されることができ、例えば、データ処理装置による実行のための、又はデータ処理装置の動作を制御するための、コンピュータ読み取り可能媒体にエンコードされたコンピュータプログラム命令の1つ以上のモジュールとして実装されることができる。コンピュータ読み取り可能媒体は、機械読み取り可能記憶装置、機械読み取り可能記憶基板、メモリ装置、機械読み取り可能な伝搬信号を生じさせる物質の組成、又はそれらのうちの1つ以上の組み合わせとすることができる。用語“データ処理装置”は、例として、プログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ若しくはコンピュータを含め、データを処理するあらゆる装置、デバイス、及び機械を包含する。装置は、ハードウェアに加えて、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はそれらのうちの1つ以上の組み合わせを構成するコードといった、問題としているコンピュータプログラムのための実行環境を作り出すコードを含むことができる。伝播される信号は、人工的に生成される信号であり、例えば、適切な受信器装置への伝送のために情報をエンコードするために生成される機械生成による電気信号、光信号、又は電磁信号である。
【0160】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる)は、コンパイル型又はインタープリタ型の言語を含め、如何なる形態のプログラミング言語で記述されてもよく、また、スタンドアロンプログラムとして、又はコンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、若しくは他のユニットとして、を含め、如何なる形態で展開されてもよい。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するわけではない。プログラムは、他のプログラム若しくはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に格納されてもよいし、問題としているプログラムに専用の単一ファイルに格納されてもよいし、あるいは、複数の連携ファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの部分を格納するファイル)に格納されてもよい。コンピュータプログラムは、1つのコンピュータ上で実行されるように展開されてもよいし、あるいは、一箇所に配置された、又は複数箇所に分散されて通信ネットワークによって相互接続された、複数のコンピュータ上で実行されるように展開されてもよい。
【0161】
この文書に記載されるプロセス及び論理フローは、入力データについて演算して出力を生成することによって機能を実行するよう、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行されることができる。これらのプロセス及び論理フローはまた、例えばFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)といった専用の論理回路によって実行されることもでき、また、装置も、そのような専用の論理回路として実装されることができる。
【0162】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用及び専用の双方のマイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般に、プロセッサは、読み出し専用メモリ若しくはランダムアクセスメモリ又はこれらの両方から命令及びデータを受信する。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令及びデータを格納する1つ以上のメモリデバイスである。一般に、コンピュータはまた、例えば磁気ディスク、磁気光ディスク、又は光ディスクといった、データを格納するための1つ以上の大容量ストレージ装置を含み、あるいは、大容量ストレージ装置からデータを受信したり、それにデータを転送したりするように動作的に結合される。しかしながら、コンピュータは、そのような装置を有する必要はない。コンピュータプログラム命令及びデータを格納するのに適したコンピュータ読み取り可能媒体は、例として、例えばEPROM、EEPROM、及びフラッシュメモリデバイスといった半導体メモリデバイス、例えば内部ハードディスク又はリムーバブルディスクといった磁気ディスク;光磁気ディスク;並びにCD ROM及びDVD-ROMディスクを含め、あらゆる形態の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、専用の論理回路によって補われたり、それに組み込まれたりしてもよい。
【0163】
この特許文書は数多くの詳細が含んでいるが、それらは、いずれかの主題又は特許請求され得るものの範囲についての限定として解釈されるべきでなく、むしろ、特定の技術の特定の実施形態に特有とし得る機構の説明として解釈されるべきである。別々の実施形態の文脈でこの特許文書に記載されている特定の複数の機構が、単一の実施形態にて組み合わせて実装されることもできる。逆に、単一の実施形態の文脈で説明されている種々の機構が、複数の実施形態にて別々に、又は何らかの好適なサブコンビネーションで実装されることもできる。さらには、複数の機構が、特定の組み合わせにて作用するものとして上述され、さらには当初はそのように特許請求されていることがあり得るが、場合によって、特許請求されている組み合わせからの1以上の機構を組み合わせから除くこともでき、また、特許請求されている組み合わせをサブコンビネーション又はサブコンビネーションのバリエーションへと導いてもよい。
【0164】
同様に、図面には処理が特定の順序で示されるが、このことは、所望の結果を達成するために、それらの動作が図示される特定の順序で若しくは順番に実行されること、又は図示される全ての処理が実行されることを要求するものとして理解されるべきでない。また、この特許文書に記載されている実施形態における種々のシステムコンポーネントの分離は、全ての実施形態においてそのような分離を必要とするものとして理解されるべきでない。
【0165】
ほんの少しの実装及び例を記載したのみであり、この特許文書に記載及び図示されているものに基づいて、他の実装、拡張及び変形が行われ得る。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
【手続補正書】
【提出日】2023-05-17
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像データを処理する方法であって、
映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行するステップ、
を有し、
前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤの特定のアクセスユニット(AU)又は特定の復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、
前記複数のSEIメッセージはフォーマットルールに基づき、
前記フォーマットルールは、第1の値に等しくない特定の値のペイロードタイプを前記複数のSEIメッセージが有するときに、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記特定のAU又は前記特定のDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、
方法。
【請求項2】
前記第1の値は133を有し、133に等しい前記第1の値のペイロードタイプを有するSEIメッセージはスケーラブルネスティングSEIメッセージである、請求項1に記載の方法。
【請求項3】
前記複数のSEIメッセージは、少なくとも1つのスケーラブルネステッドSEIメッセージと、少なくとも1つの非スケーラブルネステッドSEIメッセージとを有することが許される、請求項1又は2に記載の方法。
【請求項4】
前記ビットストリームは、ルールによって定められたサブビットストリーム抽出プロセスの順序に準拠し、前記ルールは、(a)条件を満たす全ての付加拡張情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットを出力ビットストリームから除去する動作を前記サブビットストリーム抽出プロセスが除外すること、又は(b)前記サブビットストリーム抽出プロセスの前記順序が、出力ビットストリームから前記SEI NALユニットを除去することに先立ってパラメータセットを置換パラメータセットで置換することを有すること、を規定する、請求項1乃至3のいずれかに記載の方法。
【請求項5】
前記条件は、(a)ゼロに等しいフラグを有し、(b)第2の識別子の第2のリスト内の値に等しい第1の識別子の第1のリスト内の値が存在しない、スケーラブルネスティングSEIメッセージを、前記SEI NALユニットが有することを規定する、請求項4に記載の方法。
【請求項6】
前記フラグは、スケーラブルネステッドSEIメッセージが特定の出力レイヤセットに適用されるかを指し示し、前記第1の識別子はネスティングレイヤ識別子であり、前記第2の識別子は出力レイヤセット内のレイヤのレイヤ識別子である、請求項5に記載の方法。
【請求項7】
前記変換は、前記ビットストリームから前記映像を復号することを有する、請求項1乃至6のいずれかに記載の方法。
【請求項8】
前記変換は、前記映像を前記ビットストリームへと符号化することを有する、請求項1乃至6のいずれかに記載の方法。
【請求項9】
プロセッサと、命令を有する非一時的なメモリと、を有する映像データを処理する装置であって、前記命令は、前記プロセッサによる実行を受けて、前記プロセッサに、
映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行させ、
前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤの特定のアクセスユニット(AU)又は特定の復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、
前記複数のSEIメッセージはフォーマットルールに基づき、
前記フォーマットルールは、第1の値に等しくない特定の値のペイロードタイプを前記複数のSEIメッセージが有するときに、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記特定のAU又は前記特定のDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、
装置。
【請求項10】
命令を格納した非一時的なコンピュータ読み取り可能記憶媒体であって、前記命令は、プロセッサに、
映像と、複数のレイヤを有する前記映像のビットストリームとの間の変換を実行させ、
前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤの特定のアクセスユニット(AU)又は特定の復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、
前記複数のSEIメッセージはフォーマットルールに基づき、
前記フォーマットルールは、第1の値に等しくない特定の値のペイロードタイプを前記複数のSEIメッセージが有するときに、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記特定のAU又は前記特定のDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、
コンピュータ読み取り可能記憶媒体。
【請求項11】
映像処理装置により実行される方法によって生成された映像のビットストリームを格納した非一時的なコンピュータ読み取り可能記録媒体であって、前記方法は、
複数のレイヤを有する前記映像の前記ビットストリームを生成するステップ、
を有し、
前記ビットストリームは、特定の出力レイヤセット(OLS)又は特定のレイヤの特定のアクセスユニット(AU)又は特定の復号ユニット(DU)に関連付けられた複数の付加拡張情報(SEI)メッセージを有し、
前記複数のSEIメッセージはフォーマットルールに基づき、
前記フォーマットルールは、第1の値に等しくない特定の値のペイロードタイプを前記複数のSEIメッセージが有するときに、前記複数のSEIメッセージが前記特定のOLS又は前記特定のレイヤの前記特定のAU又は前記特定のDUに関連付けられていることに起因して、前記複数のSEIメッセージの各々が同じSEIペイロードコンテンツを持つことを規定する、
コンピュータ読み取り可能記録媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
の出願は、2020年9月25日に出願された国際特許出願第PCT/CN2020/117596号に対する優先権及びその利益を適時に主張するものである2021年9月26日に出願された国際特許出願第PCT/CN2021/120530号に基づく上記特許出願の全てをそれらの全体にてここに援用する。
【国際調査報告】