(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-01-17
(54)【発明の名称】ビデオ処理の方法、装置、及び媒体
(51)【国際特許分類】
H04N 19/70 20140101AFI20250109BHJP
【FI】
H04N19/70
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024542126
(86)(22)【出願日】2023-01-16
(85)【翻訳文提出日】2024-08-02
(86)【国際出願番号】 US2023060712
(87)【国際公開番号】W WO2023137477
(87)【国際公開日】2023-07-20
(32)【優先日】2022-01-16
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】110004381
【氏名又は名称】弁理士法人ITOH
(72)【発明者】
【氏名】ワン,イエ-クォイ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159MA05
5C159MC11
5C159ME01
5C159PP04
5C159RB09
5C159RC12
5C159UA02
5C159UA05
(57)【要約】
本開示の実施形態は、ビデオ処理のためのソリューションを提供する。ビデオ処理方法が提案される。前記方法は、第1の構文要素に基づいて、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換を実行するステップを含む。ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は、6に等しいことが許容される。
【選択図】
図4
【特許請求の範囲】
【請求項1】
ビデオ処理方法であって、
第1の構文要素に基づいて、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換を実行するステップ、を含み、
前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、
前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、
前記第1の構文要素の値は、6に等しいことが許容される、
方法。
【請求項2】
前記第1の構文要素は、構文要素gci_num_additional_bitsであり、
前記第2の構文要素は、構文要素gci_alignment_zero_bitであり、又は
前記構文構造は、構文構造general_constraints_infoである、
請求項1に記載の方法。
【請求項3】
前記第1の構文要素の値は、0又は6に等しいことのみが許容される、
請求項1に記載の方法。
【請求項4】
前記第1の構文要素についての6より大きい値は、予備される、
請求項1に記載の方法。
【請求項5】
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1に記載の方法。
【請求項6】
前記第3の構文要素は、構文要素gci_reserved_zero_bitである、
請求項5に記載の方法。
【請求項7】
前記第1の構文要素の前記値が5より大きい場合、前記構文構造は、
1つ又は複数の出力レイヤーセット(OLS)における全てのピクチャがリカバリポイントピクチャであるか、又は、イントラランダムアクセスポイント(IRAP)ピクチャであるかを示す、第3の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、拡張ダイナミックレンジがスケーリング及び変換プロセスで、及び、構文要素abs_remaining及びdec_abs_levelの2値化で使用されるか否かを示す、第4の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、現在のスライス内の構文構造residual_ts_codingに使用されるライス(Rice)パラメータが、シーケンスパラメータセット(SPS)を指す構文構造slice_headerに示されるか否かを示す、第5の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化で代替的ライスパラメータ導出が使用されるか否かを示す、第6の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化のためのライスパラメータ導出が、以前のTUから蓄積された統計を使用して、各変換単位(TU)の開始時に初期化されるか否かを示す、第7の構文要素、又は、
1つ又は複数のOLSにおける全てのピクチャについて、前記SPSを指す構文構造slice_headerに構文要素sh_reverse_last_sig_coeff_flagが存在するか否かを示す、第8の構文要素、
のうちの1つ又は複数の構文要素を含む、
請求項1に記載の方法。
【請求項8】
前記第3の構文要素は、構文要素gci_all_rap_pictures_constraint_flagであり、
前記第4の構文要素は、構文要素gci_no_extended_precision_processing_constraint_flagであり、
前記第5の構文要素は、構文要素gci_no_ts_residual_coding_rice_constraint_flagであり、
前記第6の構文要素は、構文要素gci_no_rrc_rice_extension_constraint_flagであり、
前記第7の構文要素は、構文要素gci_no_persistent_rice_adaptation_constraint_flagであり、又は、
前記第8の構文要素は、構文要素gci_no_reverse_last_sig_coeff_constraint_flagである、
請求項7に記載の方法。
【請求項9】
前記第4、第5、第6、第7、及び、第8の構文要素が、いずれも前記ビットストリームに存在しない場合、前記第3の構文要素は、前記ビットストリームに含まれることが許容される、
請求項7に記載の方法。
【請求項10】
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第3の構文要素は、前記ビットストリームに含まれる、
請求項7に記載の方法。
【請求項11】
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第2バージョンで指定されたプロファイルに準拠することが示される場合、前記第3、第4、第5、第6、第7、及び、第8の構文要素の全てが、前記ビットストリームに含まれる、
請求項7に記載の方法。
【請求項12】
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第4、第5、第6、第7、及び、第8の構文要素が、いずれも前記ビットストリームに存在しない、
請求項7に記載の方法。
【請求項13】
前記第1の構文要素の値は、5より大きい、
請求項1または2に記載の方法。
【請求項14】
前記第1の構文要素の値は、6に等しいことのみが許容される、
請求項1または2に記載の方法。
【請求項15】
前記構文要素gci_all_rap_pictures_constraint_flag、gci_no_extended_precision_processing_constraint_flag、gci_no_ts_residual_coding_rice_constraint_flag、gci_no_rrc_rice_extension_constraint_flag、gci_no_persistent_rice_adaptation_constraint_flag、及び、gci_no_reverse_last_sig_coeff_constraint_flagは、前記第1の構文要素の値とは無関係に前記構文構造に含まれる、
請求項1または2に記載の方法。
【請求項16】
前記第1の構文要素の値は、0又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項17】
前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、
請求項16に記載の方法。
【請求項18】
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項19】
前記第1の構文要素の値は、5より大きい、
請求項18に記載の方法。
【請求項20】
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、
前記第1の構文要素の値が6に等しくない場合、予備ビットについての全ての第3構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項21】
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項22】
前記第1の構文要素の値は0、1、又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項23】
前記第1の構文要素の値は、2から5まで(両端含む)の範囲外である、
請求項22に記載の方法。
【請求項24】
前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、
請求項1に記載の方法。
【請求項25】
前記第1の構文要素の値は、1又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項26】
前記第1の構文要素の値は、0に等しくないか、又は、2から5まで(両端含む)の範囲外である、
請求項25に記載の方法。
【請求項27】
前記第1の構文要素の値は0、1、又は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0、1、又は、6以外の前記第1の構文要素の値が、構文に現れることを許容し、
前記第1の構文要素の値が0、1、又は、6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項28】
前記第1の構文要素の値は、2から5まで(両端含む)の範囲外である、
請求項27に記載の方法。
【請求項29】
前記第1の構文要素の値は、0又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項30】
前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、
請求項29に記載の方法。
【請求項31】
前記第1の構文要素の値は、1又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、1又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が1又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1または2に記載の方法。
【請求項32】
前記第1の構文要素の値は、0に等しくないか、又は、2から5まで(両端含む)の範囲外である、
請求項31に記載の方法。
【請求項33】
前記転換は、前記現在のビデオブロックを前記ビットストリームにエンコードすることを含む、
請求項1に記載の方法。
【請求項34】
前記転換は、前記ビットストリームから前記現在のビデオブロックをデコードすることを含む、
請求項1に記載の方法。
【請求項35】
プロセッサと、命令を備えた非一時的メモリとを含む、ビデオデータを処理する装置であって、
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、請求項1に記載の方法を実行させる、装置。
【請求項36】
プロセッサに請求項1に記載の方法を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体。
【請求項37】
ビデオ処理装置によって実行される方法によって生成されたビデオのビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、
第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行するステップ、を含み、
前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、
前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、
前記第1の構文要素の値は、6に等しいことが許容される、
非一時的なコンピュータ可読記録媒体。
【請求項38】
ビデオのビットストリームを記憶する方法であって、
第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行する、ステップと、
前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶する、ステップと、を含み、
前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、
前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、
前記第1の構文要素の値は、6に等しいことが許容される、
方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は、一般に、ビデオコーディング技術に関し、より詳細には、多用途ビデオコーディング(VVC)範囲拡張一般制約情報フラグのシグナリングに関する。
【0002】
関連出願の相互参照
本出願は、2022年1月16日に出願された米国仮出願第63/300,013号の優先権の利益を主張し、その全内容は、参照により本明細書に明示的に組み込まれる。
【背景技術】
【0003】
ビデオコーディング規格は、主によく知られている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 Advanced Video Coding(AVC)、及びH.265/HEVC規格を策定した。H.262以降、ビデオコーディング規格は、時間予測及び変換コーディングが利用されるハイブリッドビデオコーディング構造に基づいている。HEVCを超える将来のビデオコーディング技術を探求するために、2015年にVCEGとMPEGによって共同ビデオ探索チーム(Joint Video Exploration Team、JVET)が設立された。それ以来、多くの新しい方法がJVETによって採用され、共同探索モデル(Joint Exploration Model、JEM)という名前のリファレンスソフトウェアに取り入れられている。JVETは、VVCプロジェクトが正式に開始された際に、後にJVETに改名された。VVCは、HEVCと比較して50%のビットレート削減を目標とした新しいコーディング規格である。
【0004】
VVC規格及び関連するコード化ビデオビットストリームの多用途補足拡張情報(Versatile Supplemental Enhancement Information、VSEI)規格は、テレビ放送、ビデオ会議、又はストレージメディアからの再生などの従来の用途だけでなく、アダプティブビットレートストリーミング、ビデオ領域抽出、複数のコード化ビデオビットストリームからのコンテンツの合成とマージ、マルチビュービデオ、スケーラブルレイヤーコーディング、ビューポートアダプティブ360度イマーシブメディアなどの新しい高度な用途も含め、最大限に幅広いアプリケーションで使用できるように設計されている。VVC規格についての修正案の最新ドラフトには、範囲拡張プロファイルの仕様、及びその他の側面が含まれている。
【発明の概要】
【0005】
本開示の実施形態は、ビデオ処理のためのソリューションを提供する。
【0006】
第1の態様では、ビデオ処理方法が提案される。前記方法は、第1の構文要素に基づいて、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換を実行するステップを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される。
【0007】
本開示の第1の態様による方法に基づくと、第1の構文要素の値は、6に等しいことが許容される。第1の構文要素の値が0又は1に等しいものとする従来のソリューションと比較して、提案された方法は、構文の互換性を有利に改善することができ、したがってビデオ処理の均一なプロセスを確保し、コーディング効率を改善する。
【0008】
第2の態様では、ビデオデータを処理する装置が提案される。前記ビデオデータを処理する装置は、プロセッサと、命令を備えた非一時的メモリとを含む。I前記命令は前記プロセッサによって実行されると、前記プロセッサに本開示の第1の態様による方法を実行させる。
【0009】
第3の態様では、非一時的なコンピュータ可読記憶媒体が提案される。前記非一時的なコンピュータ可読記憶媒体は、プロセッサに本開示の第1の態様による方法を実行させる命令を記憶する。
【0010】
第4の態様では、別の非一時的なコンピュータ可読記録媒体が提案される。前記非一時的なコンピュータ可読記録媒体は、ビデオ処理装置によって実行される方法によって生成されたビデオのビットストリームを記憶する。前記方法は、第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行するステップを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される。
【0011】
第5の態様では、ビデオのビットストリームを記憶する方法が提案される。前記方法は、第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行するステップと、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶するステップとを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される。
【0012】
この発明の内容は、詳細な説明でさらに詳しく説明する概念の選択を簡略化した形で紹介するために提供される。この発明の内容は、請求された主題の主要な特徴又は本質的な特徴を特定することを意図したものではなく、請求された主題の範囲を制限するために使用されることも意図されていない。
【図面の簡単な説明】
【0013】
添付の図面を参照した以下の詳細な説明により、本開示の実施形態の上記及びその他の目的、特徴、及び利点がより明らかになる。本開示の例示的な実施形態において、同じ参照番号は通常、同じ構成要素を指す。
【
図1】本開示のいくつかの実施形態による、例示的なビデオコーディングシステムを示すブロック図を示す。
【
図2】本開示のいくつかの実施形態による、第1の例示的なビデオエンコーダを示すブロック図を示す。
【
図3】本開示のいくつかの実施形態による、例示的なビデオデコーダを示すブロック図を示す。
【
図4】本開示のいくつかの実施形態による、ビデオ処理方法のフローチャートを示す。
【
図5】本開示の様々な実施形態を具現できるコンピューティングデバイスのブロック図を示す。
【0014】
図面全体を通じて、同一又は類似の参照番号は通常、同一又は類似の要素を指す。
【発明を実施するための形態】
【0015】
次に、いくつかの実施形態を参照して、本開示の原理を説明する。これらの実施形態は、説明のみを目的として記載されており、当業者が本開示を理解し具現するのを助けるものであり、本開示の範囲に関していかなる限定も示唆するものではないことを理解すべきである。本明細書に記載の開示は、以下に記載する方法以外にも様々な方式で具現されることができる。
【0016】
以下の説明及び特許請求の範囲において、別段の定義がない限り、本明細書で使用される全ての技術用語及び科学用語は、本開示が属する技術分野の当業者によって一般に理解されるのと同じ意味を有する。
【0017】
本開示における「一つの実施形態」、「一実施形態」、「例示的な実施形態」などへの言及は、記載される実施形態が特定の特徴、構造、又は特性を含み得ることを示すが、必ずしも全ての実施形態が特定の特徴、構造、又は特性を含むとは限らない。また、そのような語句は必ずしも同じ実施形態を指しているわけではない。さらに、特定の特徴、構造、又は特性が例示的な実施形態に関連して説明される場合、明示的に記載されているか否かにかかわらず、他の実施形態に関連してそのような特徴、構造、又は特性に影響を与えることは当業者の知識の範囲内であることが指摘される。
【0018】
「第1の」及び「第2の」などの用語は、本明細書では様々な要素を説明するために使用され得るが、これらの要素はこれらの用語によって限定されるべきではないことを理解すべきである。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、例示的な実施形態の範囲から逸脱することなく、第1の要素が第2の要素と呼ばれ得、同様に、第2の要素が第1の要素と呼ばれ得る。本明細書で使用されるように、「及び/又は」という用語には、列挙された用語の1つ又は複数のあらゆる組み合わせが含まれる。
【0019】
本明細書で使用される用語は、特定の実施形態を説明することのみを目的としており、例示的な実施形態を限定することを意図したものではない。本明細書で使用されるように、単数形「a(一つの)」、「an(一つの)」、及び「the(その)」は、文脈上明らかに別段の指示がない限り、複数形も含むものとする。「含む」、「備える」、「有する」、「持つ」、「含有する」及び/又は「包含する」という用語は、本明細書で使用される場合、記載された特徴、要素、及び/又は構成要素などの存在を指定するが、1つ又は複数の他の特徴、要素、構成要素及び/又はそれらの組み合わせの存在又は追加を排除するものではないことがさらに理解されるであろう。
【0020】
例示的な環境
図1は、本開示の技術を利用し得る例示的なビデオコーディングシステム100を示すブロック図である。図示されるように、ビデオコーディングシステム100は、ソースデバイス110と、宛先デバイス120とを含み得る。ソースデバイス110は、ビデオエンコーディングデバイスとも呼ばれ得、宛先デバイス120は、ビデオデコーディングデバイスとも呼ばれ得る。動作中、ソースデバイス110は、エンコードされたビデオデータを生成するように構成することができ、宛先デバイス120は、ソースデバイス110によって生成されたエンコードされたビデオデータをデコードするように構成することができる。ソースデバイス110は、ビデオソース112と、ビデオエンコーダ114と、入力/出力(I/O)インターフェース116とを含み得る。
【0021】
ビデオソース112は、ビデオキャプチャデバイスなどのソースを含み得る。ビデオキャプチャデバイスの例には、ビデオコンテンツプロバイダからビデオデータを受信するインターフェース、ビデオデータを生成するコンピュータグラフィックスシステム、及び/又はそれらの組み合わせが含まれるが、これらに限定されない。
【0022】
ビデオデータは、1つ又は複数のピクチャを含み得る。ビデオエンコーダ114は、ビデオソース112からのビデオデータをエンコードしてビットストリームを生成する。ビットストリームには、ビデオデータのコード化表現を形成する一連のビットが含まれ得る。ビットストリームには、コード化ピクチャ及び関連データが含まれ得る。コード化ピクチャは、ピクチャのコード化表現である。関連データには、シーケンスパラメータセット、ピクチャパラメータセット、及び他の構文構造が含まれ得る。I/Oインターフェース116は、変調器/復調器及び/又は送信機を含み得る。エンコードされたビデオデータは、I/Oインターフェース116を介してネットワーク130Aを通して宛先デバイス120に直接送信され得る。エンコードされたビデオデータは、宛先デバイス120によるアクセスのために記憶媒体/サーバ130Bに記憶されても良い。
【0023】
宛先デバイス120は、I/Oインターフェース126と、ビデオデコーダ124と、表示デバイス122とを含み得る。I/Oインターフェース126は、受信機及び/又はモデムを含み得る。I/Oインターフェース126は、ソースデバイス110又は記憶媒体/サーバ130Bからエンコードされたビデオデータを取得し得る。ビデオデコーダ124は、エンコードされたビデオデータをデコードし得る。表示デバイス122は、デコードされたビデオデータをユーザに表示し得る。表示デバイス122は、宛先デバイス120と一体化されて得、或いは外部表示デバイスとインターフェースするように構成された宛先デバイス120の外部にあり得る。
【0024】
ビデオエンコーダ114及びビデオデコーダ124は、High Efficiency Video Coding(高効率ビデオコーディング、HEVC)規格、Versatile Video Coding(多用途ビデオコーディング、VVC)規格及び他の現在の及び/又はさらなる規格などのビデオ圧縮規格に従って動作し得る。
【0025】
図2は、本開示のいくつかの実施形態による、
図1に示されるシステム100内のビデオエンコーダ114の一例であり得るビデオエンコーダ200の一例を示すブロック図である。
【0026】
ビデオエンコーダ200は、本開示の技術のいずれか又は全てを具現するように構成され得る。
図2の例では、ビデオエンコーダ200は複数の機能コンポーネントを含む。本開示で説明される技術は、ビデオエンコーダ200の様々なコンポーネント間で共有され得る。いくつかの例では、プロセッサは、本開示で説明された技術のいずれか又は全てを実行するように構成され得る。
【0027】
いくつかの実施形態では、ビデオエンコーダ200は、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205及びイントラ予測ユニット206を含み得る予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構築ユニット212と、バッファ213と、エントロピーエンコーディングユニット214とを含み得る。
【0028】
他の例では、ビデオエンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含み得る。一例では、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含み得る。IBCユニットは、少なくとも1つの参照ピクチャが現在のビデオブロックが位置するピクチャであるIBCモードで予測を実行し得る。
【0029】
さらに、動き推定ユニット204及び動き補償ユニット205などのいくつかの構成要素は統合され得るが、
図2の例では説明の目的で別々に表されている。
【0030】
分割ユニット201は、ピクチャを1つ又は複数のビデオブロックに分割し得る。ビデオエンコーダ200及びビデオデコーダ300は、多様なビデオブロックサイズをサポートし得る。
【0031】
モード選択ユニット203は、例えば、エラー結果に基づいて、イントラ又はインターのコーディングモードのうちの1つを選択し、その結果から得られるイントラコード化又はインターコード化されたブロックを、残差ブロックデータを生成するように残差生成ユニット207に提供し、エンコードされたブロックを再構築して参照ピクチャとして使用するように再構築ユニット212に提供し得る。いくつかの例では、モード選択ユニット203は、予測がインター予測信号及びイントラ予測信号に基づくイントラ及びインター予測の組み合わせ(CIIP)モードを選択し得る。モード選択ユニット203は、インター予測の場合、ブロックの動きベクトルの解像度(例:サブピクセル又は整数ピクセル精度)を選択してもよい。
【0032】
現在のビデオブロックに対してインター予測を実行するために、動き推定ユニット204は、バッファ213からの1つ又は複数の参照フレームを現在のビデオブロックと比較することで現在のビデオブロックの動き情報を生成し得る。動き補償ユニット205は、現在のビデオブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報及びデコードされたサンプルに基づいて、現在のビデオブロックの予測ビデオブロックを決定し得る。
【0033】
動き推定ユニット204及び動き補償ユニット205は、例えば、現在のビデオブロックがIスライス、Pスライス、又はBスライスのいずれにあるかに応じて、現在のビデオブロックに対して異なる演算を実行し得る。本明細書で使用されるように、「Iスライス」は、マクロブロックから構成されるピクチャの一部を指し得、その全てが同じピクチャ内のマクロブロックに基づいている。さらに、本明細書で使用されるように、いくつかの態様では、「Pスライス」及び「Bスライス」は、同じピクチャ内のマクロブロックに依存しないマクロブロックから構成されるピクチャの部分を指し得る。
【0034】
いくつかの例では、動き推定ユニット204は、現在のビデオブロックに対して単方向予測を実行し得、動き推定ユニット204は、現在のビデオブロックの参照ビデオブロックについてのリスト0又はリスト1の参照ピクチャを探し得る。次に、動き推定ユニット204は、参照ビデオブロックを含むリスト0又はリスト1内の参照ピクチャを示す参照インデックスと、現在のビデオブロックと参照ビデオブロックとの間の空間的変位を示す動きベクトルとを生成し得る。動き推定ユニット204は、参照インデックス、予測方向指示子、及び動きベクトルを現在のビデオブロックの動き情報として出力し得る。動き補償ユニット205は、現在のビデオブロックの動き情報によって示される参照ビデオブロックに基づいて、現在のビデオブロックの予測ビデオブロックを生成し得る。
【0035】
代替的に、他の例では、動き推定ユニット204は、現在のビデオブロックに対して双方向予測を実行し得る。動き推定ユニット204は、現在のビデオブロックの参照ビデオブロックについてのリスト0内の参照ピクチャを探してもよいし、現在のビデオブロックの別の参照ビデオブロックについてのリスト1内の参照ピクチャを探してもよい。次に、動き推定ユニット204は、参照ビデオブロックを含むリスト0及びリスト1内の参照ピクチャを示す参照インデックスと、参照ビデオブロックと現在のビデオブロックとの間の空間的変位を示す動きベクトルとを生成し得る。動き推定ユニット204は、現在のビデオブロックの参照インデックス及び動きベクトルを現在のビデオブロックの動き情報として出力し得る。動き補償ユニット205は、現在のビデオブロックの動き情報によって示される参照ビデオブロックに基づいて、現在のビデオブロックの予測ビデオブロックを生成し得る。
【0036】
いくつかの例では、動き推定ユニット204は、デコーダのデコーディング処理のためのフルセットの動き情報を出力し得る。代替的に、いくつかの実施形態では、動き推定ユニット204は、別のビデオブロックの動き情報を参照して現在のビデオブロックの動き情報をシグナリングし得る。例えば、動き推定ユニット204は、現在のビデオブロックの動き情報が隣接するビデオブロックの動き情報と十分に類似していると決定し得る。
【0037】
一例では、動き推定ユニット204は、現在のビデオブロックに関連付けられた構文構造において、現在のビデオブロックが別のビデオブロックと同じ動き情報を有することをビデオデコーダ300に示す値を示し得る。
【0038】
別の例では、動き推定ユニット204は、現在のビデオブロックに関連付けられた構文構造において、別のビデオブロック及び動きベクトル差分(MVD)を識別し得る。動きベクトル差分は、現在のビデオブロックの動きベクトルと、指示されたビデオブロックの動きベクトルとの間の差分を示す。ビデオデコーダ300は、指示されたビデオブロックの動きベクトル及び動きベクトル差分を使用して現在のビデオブロックの動きベクトルを決定し得る。
【0039】
上で論じたように、ビデオエンコーダ200は、動きベクトルを予測的にシグナリングし得る。ビデオエンコーダ200によって具現され得る予測シグナリング技術の2つの例には、アドバンスト動きベクトル予測(AMVP)とマージモードシグナリングとが含まれる。
【0040】
イントラ予測ユニット206は、現在のビデオブロックに対してイントラ予測を実行し得る。イントラ予測ユニット206が現在のビデオブロックに対してイントラ予測を実行するとき、イントラ予測ユニット206は、同じピクチャ内の他のビデオブロックのデコードされたサンプルに基づいて、現在のビデオブロックについての予測データを生成し得る。現在のビデオブロックについての予測データには、予測されたビデオブロック及び様々な構文要素が含まれ得る。
【0041】
残差生成ユニット207は、現在のビデオブロックから現在のビデオブロックの予測ビデオブロックを減算する(例:マイナス記号によって示される)ことで、現在のビデオブロックについての残差データを生成し得る。現在のビデオブロックの残差データは、現在のビデオブロック内のサンプルの異なるサンプル成分に対応する残差ビデオブロックを含み得る。
【0042】
他の例では、例えばスキップモードにおいて、現在のビデオブロックについての残差データが存在しなくてもよいし、残差生成ユニット207は減算演算を実行しなくてもよい。
【0043】
変換処理ユニット208は、現在のビデオブロックに関連付けられた残差ビデオブロックに1つ又は複数の変換を適用することによって、現在のビデオブロックについての1つ又は複数の変換係数ビデオブロックを生成し得る。
【0044】
変換処理ユニット208が現在のビデオブロックに関連付けられた変換係数ビデオブロックを生成した後、量子化ユニット209は、現在のビデオブロックに関連付けられた1つ又は複数の量子化パラメータ(QP)値に基づいて、現在のビデオブロックに関連付けられた変換係数ビデオブロックを量子化し得る。
【0045】
逆量子化ユニット210及び逆変換ユニット211は、それぞれ、変換係数ビデオブロックに逆量子化及び逆変換を適用して、変換係数ビデオブロックから残差ビデオブロックを再構築し得る。再構築ユニット212は、再構築された残差ビデオブロックを、予測ユニット202によって生成された1つ又は複数の予測ビデオブロックからの対応するサンプルに追加して、バッファ213に記憶するために現在のビデオブロックに関連付けられた再構築ビデオブロックを生成し得る。
【0046】
再構築ユニット212がビデオブロックを再構築した後、ループフィルタリング動作が実行されて、ビデオブロック内のビデオブロッキングアーティファクトを低減し得る。
【0047】
エントロピーエンコーディングユニット214は、ビデオエンコーダ200の他の機能コンポーネントからデータを受信し得る。エントロピーエンコーディングユニット214がデータを受信すると、エントロピーエンコーディングユニット214は、1つ又は複数のエントロピーエンコーディング動作を実行して、エントロピーエンコード化データを生成し、エントロピーエンコード化データを含むビットストリームを出力し得る。
【0048】
図3は、本開示のいくつかの実施形態による、
図1に示されるシステム100内のビデオデコーダ124の一例であり得るビデオデコーダ300の一例を示すブロック図である。
【0049】
ビデオデコーダ300は、本開示の技術のいずれか又は全てを実行するように構成され得る。
図3の例では、ビデオデコーダ300は複数の機能コンポーネントを含む。本開示で説明される技術は、ビデオデコーダ300の様々なコンポーネント間で共有され得る。いくつかの例では、プロセッサは、本開示で説明された技術のいずれか又は全てを実行するように構成され得る。
【0050】
図3の例では、ビデオデコーダ300は、エントロピーデコーディングユニット301と、動き補償ユニット302と、イントラ予測ユニット303と、逆量子化ユニット304と、逆変換ユニット305と、再構築ユニット306と、バッファ307とを含む。ビデオデコーダ300は、いくつかの例では、ビデオエンコーダ200に関して説明したエンコーディングパスと一般に逆のデコーディングパスを実行し得る。
【0051】
エントロピーデコーディングユニット301は、エンコードされたビットストリームを取り戻し得る。エンコードされたビットストリームは、エントロピーコード化されたビデオデータ(例:ビデオデータのエンコードされたブロック)を含み得る。エントロピーデコーディングユニット301は、エントロピーコード化されたビデオデータをデコードし得、エントロピーデコードされたビデオデータから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス及び他の動き情報を含む動き情報を決定し得る。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することによってそのような情報を決定し得る。AMVPが使用され、隣接するPB及び参照ピクチャからのデータに基づいた最もあり得るいくつかの候補の導出を含む。動き情報には、通常、水平及び垂直動きベクトル変位値、1つ又は2つの参照ピクチャインデックス、及びBスライス内の予測領域の場合は、どの参照ピクチャリストが各インデックスに関連付けられているかの識別が含まれる。本明細書で使用されるように、いくつかの態様では、「マージモード」は、空間的又は時間的に隣接するブロックから動き情報を導出することを指し得る。
【0052】
動き補償ユニット302は、おそらく補間フィルタに基づいて補間を実行しながら、動き補償されたブロックを生成し得る。サブピクセル精度で使用される補間フィルタの識別子が構文要素に含まれ得る。
【0053】
動き補償ユニット302は、ビデオブロックのエンコーディング中にビデオエンコーダ200によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルについての補間値を計算し得る。動き補償ユニット302は、受信した構文情報に従ってビデオエンコーダ200によって使用される補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【0054】
動き補償ユニット302は、構文情報の少なくとも一部を使用して、エンコードされたビデオシーケンスのフレーム及び/又はスライスをエンコードするために使用されるブロックのサイズ、エンコードされたビデオシーケンスのピクチャの各マクロブロックがどのように分割されるかを説明するパーティション情報、各パーティションがどのようにエンコードされるかを示すモード、各インターエンコードされたブロックの1つ又は複数の参照フレーム(及び参照フレームリスト)、及びエンコードされたビデオシーケンスをデコードするその他の情報を決定し得る。本明細書で使用されるように、いくつかの態様では、「スライス」は、エントロピーコーディング、信号予測、及び残差信号再構築に関して、同じピクチャの他のスライスから独立してデコードできるデータ構造を指し得る。スライスは、ピクチャ全体又はピクチャの領域のいずれかになり得る。
【0055】
イントラ予測ユニット303は、例えばビットストリームで受信されたイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成し得る。逆量子化ユニット304は、ビットストリームで提供され、エントロピーデコーディングユニット301によってデコードされた量子化ビデオブロック係数を逆量子化、即ち量子化解除する。逆変換ユニット305は、逆変換を適用する。
【0056】
再構築ユニット306は、例えば、残差ブロックと、動き補償ユニット302又はイントラ予測ユニット303によって生成された対応する予測ブロックとを加算することで、デコードされたブロックを取得し得る。必要に応じて、デブロッキングフィルタが適用されて、ブロックアーティファクトを除去するよう、デコードされたブロックをフィルタリングしてもよい。次に、デコードされたビデオブロックはバッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のための参照ブロックを提供し、また、表示デバイス上にプレゼンテーションするためのデコードされたビデオも生成する。
【0057】
本開示のいくつかの例示的な実施形態について以下に詳細に説明することにする。本明細書では理解を容易にするためにセクション見出しが使用されているが、セクションで開示される実施形態をそのセクションのみに限定するものではないことを理解すべきである。さらに、特定の実施形態が多用途ビデオコーディング又は他の特定のビデオコーデックを参照して説明されるが、開示された技術は他のビデオコーディング技術にも適用可能である。さらに、いくつかの実施形態はビデオコーディングステップを詳細に説明するが、コーディングを元に戻す対応するデコーディングステップはデコーダによって実施されることが理解されるであろう。さらに、ビデオ処理という用語には、ビデオコーディング又は圧縮、ビデオデコーディング又は解凍、及びビデオピクセルを1つの圧縮フォーマットから別の圧縮フォーマット又は異なる圧縮ビットレートで表現するビデオトランスコーディングが包含される。
【表1】
【0058】
本開示の実施形態のさらなる詳細を、VVC範囲拡張一般制約情報フラグのシグナリングに関連して、以下に記載することにする。本開示の実施形態は、一般的な概念を説明するための例として考慮されるべきであり、狭義に解釈されるべきではない。さらに、これらの実施形態は、個別に又は任意の方式で組み合わせて適用され得る。
【0059】
ここで使用されているように、ビットストリーム内の位置は、その位置がビットストリーム内の最初のビットの位置から8ビットの整数倍である場合に「バイトアラインメント」されており、ビット、バイト、又は構文要素は、ビットストリーム内での出現位置がバイトアラインメントされている場合にバイトアラインメントされていると言われる。
【0060】
図4は、本開示のいくつかの実施形態によるビデオ処理の方法400のフローチャートを示す。
図4に示すように、402では、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換が、第1の構文要素に基づいて実行される。本明細書で使用されるように、「ブロック」という用語は、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディングブロック(CB)、コーディングユニット(CU)、予測ユニット(PU)、変換ユニット(TU)、予測ブロック(PB)、変換ブロック(TB)、複数のサンプル/ピクセルを含むビデオ処理ユニット、及び/又は同様のものを表し得る。ブロックは、長方形又は非長方形であり得る。いくつかの実施形態では、転換は、現在のビデオブロックをビットストリームにエンコードすることを含み得る。追加的に又は代替的に、転換は、ビットストリームから現在のビデオブロックをデコードすることを含み得る。
【0061】
いくつかの実施形態では、第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定する。言い換えれば、前記第1の構文要素は、構文構造における追加のGCIビットの数と前記第2の構文要素(存在する場合)の数との差を指定する。前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントのために使用される。例えば、前記構文構造の最後の位置がバイトアラインメントされていない場合、少なくとも1つの第2の構文要素は、前記構文構造の最後の位置をバイトアラインメントにするために前記構文構造に含まれ得る。さらに、前記第1の構文要素の値は6に等しいことが許容される。
【0062】
限定ではなく例として、第1の構文要素は、構文要素gci_num_additional_bitsであり得、第2の構文要素は、構文要素gci_alignment_zero_bitであり得、及び/又は構文構造は、構文構造general_constraints_infoであり得る。
【0063】
上記を考慮すると、第1の構文要素の値は、6に等しいことが許容される。第1の構文要素の値が0又は1に等しいものとする従来のソリューションと比較して、提案された方法は、構文の互換性を有利に改善することができ、したがってビデオ処理の均一なプロセスを確保し、コーディング効率を改善する。
【0064】
いくつかの実施形態では、第1の構文要素の値は、0又は6に等しいことのみが許容され得る。第1の構文要素についての6より大きい値は、例えば、将来の使用のために予備され得る。その上、前記転換を実行するデコーダは、6より大きい第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。例えば、第3の構文要素の全てがデコーディングプロセス中に考慮されない場合がある。
【0065】
一例では、第3の構文要素は、構文要素gci_reserved_zero_bitであり得る。上記の構文要素及び構文構造は、他の任意の適切な文字列として表され得ることを理解すべきである。例えば、第3の構文要素は、gci_reserved_bitとしても表され得る。本開示の範囲は、この点に限定されない。追加的に、第1の構文要素の値は、1から5まで(両端含む)の範囲外であるものとする。
【0066】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は0又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は0又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6より大きいgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが6より大きい場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。上記の解説は、単に説明の目的で記載されたものであることを理解すべきである。本開示の範囲は、この点に限定されない。
【0067】
いくつかの実施形態では、前記第1の構文要素の値が5より大きい場合、前記構文構造は、(1)1つ又は複数の出力レイヤーセット(OLS)における全てのピクチャが復旧ポイントピクチャか、又はイントラランダムアクセスポイント(IRAP)ピクチャであり得るかを示す第3の構文要素、(2)1つ又は複数のOLSにおける全てのピクチャについて、拡張ダイナミックレンジがスケーリング及び変換プロセスで、及び構文要素abs_remaining及びdec_abs_levelの2値化に使用され得るか否かを示す第4の構文要素、(3)1つ又は複数のOLSにおける全てのピクチャについて、現在のスライス内の構文構造residual_ts_codingに使用されるライス(Rice)パラメータが、シーケンスパラメータセット(SPS)を指す構文構造slice_headerに示され得るか否かを示す第5の構文要素、(4)1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化に代替的ライスパラメータ導出が使用され得るか否かを示す第6の構文要素、(5)1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化のためのライスパラメータ導出が、以前のTUから蓄積された統計を使用して各変換単位(TU)の開始時に初期化され得るか否かを示す第7の構文要素、又は(6)1つ又は複数のOLSにおける全てのピクチャについて、SPSを指す構文構造slice_headerに構文要素sh_reverse_last_sig_coeff_flagが存在し得るか否かを示す第8の構文要素からの1つ又は複数の構文要素を含む。
【0068】
例えば、前記第3の構文要素は、構文要素gci_all_rap_pictures_constraint_flagであり得、前記第4の構文要素は、構文要素gci_no_extended_precision_processing_constraint_flagであり得、前記第5の構文要素は、構文要素gci_no_ts_residual_coding_rice_constraint_flagであり得、前記第6の構文要素は、構文要素gci_no_rrc_rice_extension_constraint_flagであり得、前記第7の構文要素は、構文要素gci_no_persistent_rice_adaptation_constraint_flagであり得、又は前記第8の構文要素は、構文要素gci_no_reverse_last_sig_coeff_constraint_flagであり得る。上記の構文要素は、他の任意の適切な文字列として表され得ることを理解すべきである。本開示の範囲は、この点に限定されない。
【0069】
いくつかの実施形態では、前記第4、第5、第6、第7、及び第8の構文要素の全てが前記ビットストリームに不在の場合、前記第3の構文要素は、前記ビットストリームに含まれることが許容される。いくつかの実施形態では、前記少なくとも1つの第2の構文要素以外の追加のGCIビットが前記構文構造に存在し、前記ビットストリームが多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示され得る場合、前記第3の構文要素は、前記ビットストリームに含まれ得る。例えば、gci_present_flagが1に等しく、ビットストリーム(即ち、OlsInScope)がVVCバージョン1で指定されたプロファイルに準拠することが示される場合、gci_all_rap_pictures_constraint_flagが存在する必要がある。
【0070】
いくつかの実施形態では、前記少なくとも1つの第2の構文要素以外の追加のGCIビットが前記構文構造に存在し、前記ビットストリームが多用途ビデオコーディング(VVC)の第2バージョンで指定されたプロファイルに準拠することが示され得る場合、前記第3、第4、第5、第6、第7、及び第8の構文要素の全てが前記ビットストリームに含まれ得る。例えば、gci_present_flagが1に等しく、ビットストリーム(即ち、OlsInScope)がVVCバージョン2で指定されたプロファイルに準拠することが示される場合、6つの新しいGCIフラグが全て存在する必要がある。
【0071】
いくつかの実施形態では、前記少なくとも1つの第2の構文要素以外の追加のGCIビットが前記構文構造に存在し得、前記ビットストリームが多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示され得る場合、前記第4、第5、第6、第7、及び第8の構文要素の全てが前記ビットストリームに不在であり得る。例えば、gci_present_flagが1に等しく、ビットストリーム(即ち、OlsInScope)がVVCバージョン1で指定されたプロファイルに準拠することが示される場合、6つの新しいGCIフラグのうちgci_all_rap_pictures_constraint_flag以外の5つが存在しない必要がある。
【0072】
いくつかの実施形態では、前記第1の構文要素の値は、5より大きいものとする。代替的に、前記第1の構文要素の値は、6に等しいことのみが許容され得る。いくつかの実施形態では、前記構文要素gci_all_rap_pictures_constraint_flag、gci_no_extended_precision_processing_constraint_flag、gci_no_ts_residual_coding_rice_constraint_flag、gci_no_rrc_rice_extension_constraint_flag、gci_no_persistent_rice_adaptation_constraint_flag、及びgci_no_reverse_last_sig_coeff_constraint_flagは、前記第1の構文要素の値とは無関係に前記構文構造に含まれ得る。
【0073】
いくつかの実施形態では、前記第1の構文要素の値は、0又は6に等しいことのみが許容され得る。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は、1から5まで(両端含む)の範囲外であるものとする。
【0074】
限定ではなく例として、gci_num_additional_bitsgci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は0又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は0又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、0又は6以外のgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが0又は6以外の場合は、全てのgci_reserved_zero_bit[ i ] 構文要素の値を無視するものとする。
【0075】
いくつかの実施形態では、前記第1の構文要素の値は、6に等しいことのみが許容される。第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は5より大きい場合がある。
【0076】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6より大きいgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが6より大きい場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。
【0077】
いくつかの実施形態では、前記第1の構文要素の値は6に等しいことのみが許容され得る。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、6に等しくない前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が6に等しくない場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。
【0078】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6に等しくないgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが6に等しくない場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。
【0079】
いくつかの実施形態では、前記第1の構文要素の値は、6に等しいことのみが許容される。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、6に等しくない前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての第3の構文要素の値は前記デコーダで無視され得る。
【0080】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6に等しくないgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが0又は6以外の場合、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。
【0081】
いくつかの実施形態では、前記第1の構文要素の値は、0、1、又は6に等しいことのみが許容され得る。前記第1の構文要素についての6より大きい値は予備される。前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は、2から5まで(両端含む)の範囲外であるものとする。
【0082】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は0、1、又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は0、1、又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6より大きいgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが6より大きい場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。
【0083】
いくつかの実施形態では、前記第1の構文要素の値は、1又は6に等しいことのみが許容される。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は0に等しくないか、又は2から5まで(両端含む)の範囲外であるものとする。
【0084】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は1又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は1又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、6より大きいgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが6より大きい場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものとする。
【0085】
いくつかの実施形態では、前記第1の構文要素の値は、0、1、又は6に等しいことのみが許容され得る。前記第1の構文要素についての6より大きい値は予備される。前記転換を実行するデコーダは、0、1、又は6以外の前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が0、1、又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は、2から5まで(両端含む)の範囲外であるものとする。
【0086】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は0、1、又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は0、1、又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、0、1、又は6以外のgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが0、1、又は6以外の場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものする。
【0087】
いくつかの実施形態では、前記第1の構文要素の値は、0又は6に等しいことのみが許容され得る。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、0又は6以外の第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は1から5まで(両端含む)の範囲外であるものとする。
【0088】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は0又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は0又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、0又は6以外のgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが0又は6以外の場合は、全てのgci_reserved_zero_bit[ i ] 構文要素の値を無視するものとする。
【0089】
いくつかの実施形態では、前記第1の構文要素の値は、1又は6に等しいことのみが許容される。前記第1の構文要素についての6より大きい値は予備され得る。前記転換を実行するデコーダは、1又は6以外の前記第1の構文要素の値が構文に現れることを許容し得る。さらに、前記第1の構文要素の値が1又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視され得る。追加的に、前記第1の構文要素の値は0に等しくないか、又は2から5まで(両端含む)の範囲外であるものとする。
【0090】
限定ではなく例として、gci_num_additional_bitsのセマンティクスは次のように定式化され得る。gci_num_additional_bitsは、gci_alignment_zero_bit構文要素(存在する場合)以外の一般制約情報構文構造における追加GCIビットの数を指定する。このドキュメントのこのバージョンに準拠するビットストリームでは、gci_num_additional_bitsの値は1又は6に等しいものとする。gci_num_additional_bitsについての6より大きい値は、ITU-T | ISO/IECによる将来の使用のために予備される。このドキュメントのこのバージョンでは、gci_num_additional_bitsの値は1又は6に等しい必要があるが、このドキュメントのこのバージョンに準拠するデコーダは、1又は6以外のgci_num_additional_bitsの値が構文に現れることを許容するものとし、gci_num_additional_bitsが1又は6以外の場合は、全てのgci_reserved_zero_bit[ i ]構文要素の値を無視するものする。
【0091】
本開示の実施形態によれば、非一時的なコンピュータ可読記録媒体が提案される。ビデオのビットストリームは、前記非一時的なコンピュータ可読記録媒体に記憶される。前記ビットストリームは、ビデオ処理装置によって実行される方法によって生成され得る。前記方法によれば、ビデオの現在のビデオブロックとビットストリームとの間の転換が、第1の構文要素に基づいて実行される。前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定する。前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は、6に等しいことが許容される。
【0092】
本開示の実施形態によれば、ビデオのビットストリームを記憶する方法が提案される。前記方法では、ビデオの現在のビデオブロックとビットストリームとの間の転換が、第1の構文要素に基づいて実行される。前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定する。前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される。さらに、前記ビットストリームは、前記非一時的なコンピュータ可読記録媒体に記憶される。
【0093】
本開示の具現は、以下の条項を考慮して説明され得、その特徴は、任意の合理的な方式で組み合わされ得る。
【0094】
条項1.ビデオ処理方法であって、第1の構文要素に基づいて、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換を実行するステップを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される、方法。
【0095】
条項2.前記第1の構文要素は、構文要素gci_num_additional_bitsであり、前記第2の構文要素は、構文要素gci_alignment_zero_bitであり、又は前記構文構造は、構文構造general_constraints_infoである、条項1に記載の方法。
【0096】
条項3.前記第1の構文要素の値は、0又は6に等しいことのみが許容される、条項1から2のいずれか一項に記載の方法。
【0097】
条項4.前記第1の構文要素についての6より大きい値は予備される、条項1から3のいずれか一項に記載の方法。
【0098】
条項5.前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から4のいずれか一項に記載の方法。
【0099】
条項6.前記第3の構文要素は、構文要素gci_reserved_zero_bitである、条項5に記載の方法。
【0100】
条項7.前記第1の構文要素の前記値が5より大きい場合、前記構文構造は、1つ又は複数の出力レイヤーセット(OLS)における全てのピクチャが復旧ポイントピクチャであるか、又はイントラランダムアクセスポイント(IRAP)ピクチャであるかを示す第3の構文要素、1つ又は複数のOLSにおける全てのピクチャについて、拡張ダイナミックレンジがスケーリング及び変換プロセスで、及び構文要素abs_remaining及びdec_abs_levelの2値化に使用されるか否かを示す第4の構文要素、1つ又は複数のOLSにおける全てのピクチャについて、現在のスライス内の構文構造residual_ts_codingに使用されるライス(Rice)パラメータが、シーケンスパラメータセット(SPS)を指す構文構造slice_headerに示されるか否かを示す第5の構文要素、1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化に代替的ライスパラメータ導出が使用されるか否かを示す第6の構文要素、1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化のためのライスパラメータ導出が、以前のTUから蓄積された統計を使用して各変換単位(TU)の開始時に初期化されるか否かを示す第7の構文要素、又は1つ又は複数のOLSにおける全てのピクチャについて、前記SPSを指す構文構造slice_headerに構文要素sh_reverse_last_sig_coeff_flagが存在するか否かを示す第8の構文要素のうちの1つ又は複数の構文要素を含む、条項1から6のいずれか一項に記載の方法。
【0101】
条項8.前記第3の構文要素は、構文要素gci_all_rap_pictures_constraint_flagであり、前記第4の構文要素は、構文要素gci_no_extended_precision_processing_constraint_flagであり、前記第5の構文要素は、構文要素gci_no_ts_residual_coding_rice_constraint_flagであり、前記第6の構文要素は、構文要素gci_no_rrc_rice_extension_constraint_flagであり、前記第7の構文要素は、構文要素gci_no_persistent_rice_adaptation_constraint_flagであり、又は前記第8の構文要素は、構文要素gci_no_reverse_last_sig_coeff_constraint_flagである、条項7に記載の方法。
【0102】
条項9.前記第4、第5、第6、第7、及び第8の構文要素の全てが前記ビットストリームに存在しない場合、前記第3の構文要素は、前記ビットストリームに含まれることが許容される、条項7から8のいずれか一項に記載の方法。
【0103】
条項10.前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが前記構文構造に存在し、前記ビットストリームが多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第3の構文要素は、前記ビットストリームに含まれる、条項7から9のいずれか一項に記載の方法。
【0104】
条項11.前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが前記構文構造に存在し、前記ビットストリームが多用途ビデオコーディング(VVC)の第2バージョンで指定されたプロファイルに準拠することが示される場合、前記第3、第4、第5、第6、第7、及び第8の構文要素の全てが前記ビットストリームに含まれる、条項7から9のいずれか一項に記載の方法。
【0105】
条項12.前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが前記構文構造に存在し、前記ビットストリームが多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第4、第5、第6、第7、及び第8の構文要素がいずれも前記ビットストリームに存在しない、条項7から9のいずれか一項に記載の方法。
【0106】
条項13.前記第1の構文要素の値は、5より大きい、条項1から2のいずれか一項に記載の方法。
【0107】
条項14.前記第1の構文要素の値は、6に等しいことのみが許容される、条項1から2のいずれか一項に記載の方法。
【0108】
条項15.前記構文要素gci_all_rap_pictures_constraint_flag、gci_no_extended_precision_processing_constraint_flag、gci_no_ts_residual_coding_rice_constraint_flag、gci_no_rrc_rice_extension_constraint_flag、gci_no_persistent_rice_adaptation_constraint_flag、及びgci_no_reverse_last_sig_coeff_constraint_flagは、前記第1の構文要素の値とは無関係に前記構文構造に含まれる、条項1から2のいずれか一項に記載の方法。
【0109】
条項16.前記第1の構文要素の値は、0又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0110】
条項17.前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、条項16に記載の方法。
【0111】
条項18.前記第1の構文要素の値は、6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0112】
条項19.前記第1の構文要素の値は、5より大きい、条項18に記載の方法。
【0113】
条項20.前記第1の構文要素の値は、6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、前記第1の構文要素の値が6に等しくない場合、予備ビットについての第3構文要素の全ての値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0114】
条項21.前記第1の構文要素の値は、6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0115】
条項22.前記第1の構文要素の値は0、1、又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0116】
条項23.前記第1の構文要素の値は、2から5まで(両端含む)の範囲外である、条項22に記載の方法。
【0117】
条項24.前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、条項1から8のいずれか一項に記載の方法。
【0118】
条項25.前記第1の構文要素の値は、1又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から~2のいずれか一項に記載の方法。
【0119】
条項26.前記第1の構文要素の値は、0に等しくないか、又は2から5まで(両端含む)の範囲外である、条項25に記載の方法。
【0120】
条項27.前記第1の構文要素の値は0、1、又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、0、1、又は6以外の前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が0、1、又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0121】
条項28.前記第1の構文要素の値は、2から5まで(両端含む)の範囲外である、条項27に記載の方法。
【0122】
条項29.前記第1の構文要素の値は、0又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0123】
条項30.前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である、条項29に記載の方法。
【0124】
条項31.前記第1の構文要素の値は、1又は6に等しいことのみが許容され、前記第1の構文要素についての6より大きい値は予備され、前記転換を実行するデコーダは、1又は6以外の前記第1の構文要素の値が構文に現れることを許容し、前記第1の構文要素の値が1又は6以外の場合、予備ビットについての全ての第3の構文要素の値は前記デコーダで無視される、条項1から2のいずれか一項に記載の方法。
【0125】
条項32.前記第1の構文要素の値は、0に等しくないか、又は2から5まで(両端含む)の範囲外である、条項31に記載の方法。
【0126】
条項33.前記転換は、前記現在のビデオブロックを前記ビットストリームにエンコードすることを含む、条項1から32のいずれか一項に記載の方法。
【0127】
条項34.前記転換は、前記ビットストリームから前記現在のビデオブロックをデコードすることを含む、条項1から32のいずれか一項に記載の方法。
【0128】
条項35.プロセッサと命令を備えた非一時的メモリとを含む、ビデオデータを処理する装置であって、前記命令は前記プロセッサによって実行されると、前記プロセッサに条項1から34のいずれか一項に記載の方法を実行させる、装置。
【0129】
条項36.プロセッサに条項1から34のいずれか一項に記載の方法を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体。
【0130】
条項37.ビデオ処理装置によって実行される方法によって生成されたビデオのビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行するステップを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される、非一時的なコンピュータ可読記録媒体。
【0131】
条項38.ビデオのビットストリームを記憶する方法であって、第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行するステップと、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶するステップとを含み、ここで、前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、前記第1の構文要素の値は6に等しいことが許容される、方法。
【0132】
例示的なデバイス
図5は、本開示の様々な実施形態を具現できるコンピューティングデバイス500のブロック図を示す。コンピューティングデバイス500は、ソースデバイス110(或いは、ビデオエンコーダ114又は200)又は宛先デバイス120(或いは、ビデオデコーダ124又は300)として具現されるか、又はそれに含まれ得る。
【0133】
図5に示されるコンピューティングデバイス500は、単に解説を目的としたものであり、本開示の実施形態の機能及び範囲をいかなる形でも制限することを示唆するものではないことが理解されるだろう。
【0134】
図5に示すように、コンピューティングデバイス500は、汎用コンピューティングデバイス500を含む。コンピューティングデバイス500は、少なくとも1つ又は複数のプロセッサ又は処理ユニット510と、メモリ520と、記憶ユニット530と、1つ又は複数の通信ユニット540と、1つ又は複数の入力デバイス550と、1つ又は複数の出力デバイス560とを含み得る。
【0135】
いくつかの実施形態では、コンピューティングデバイス500は、コンピューティング能力を有する任意のユーザ端末又はサーバ端末として具現され得る。前記サーバ端末は、サービスプロバイダが提供するサーバや大規模コンピューティングデバイスなどであり得る。前記ユーザ端末は、例えば、携帯電話、ステーション、ユニット、デバイス、マルチメディアコンピュータ、マルチメディアタブレット、インターネットノード、コミュニケータ、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、タブレットコンピュータ、パーソナルコミュニケーションシステム(PCS)デバイス、パーソナルナビゲーションデバイス、携帯情報端末(PDA)、オーディオ/ビデオプレーヤー、デジタルカメラ/ビデオカメラ、測位デバイス、テレビ受信機、ラジオ放送受信機、電子ブックデバイス、ゲームデバイス、又はそれらの任意の組み合わせ(これらのデバイスのアクセサリ及び周辺機器、又はそれらの任意の組み合わせを含む)を含む、任意のタイプの移動端末、固定端末、又は携帯端末であり得る。コンピューティングデバイス500は、ユーザに対する任意のタイプのインターフェース(「ウェアラブル」回路など)をサポートできることが考えられる。
【0136】
処理ユニット510は、物理又は仮想プロセッサであり得、メモリ520に記憶されたプログラムに基づいて様々なプロセスを具現することができる。マルチプロセッサシステムでは、コンピューティングデバイス500の並列処理能力を向上させるために、複数の処理ユニットがコンピュータ実行可能命令を並列に実行する。処理ユニット510は、中央処理ユニット(CPU)、マイクロプロセッサ、コントローラ又はマイクロコントローラと呼ばれても良い。
【0137】
コンピューティングデバイス500は、通常、様々なコンピュータ記憶媒体を含む。このような媒体は、揮発性及び不揮発性媒体、又は取り外し可能及び取り外し不可能な媒体を含むがこれらに限定されない、コンピューティングデバイス500によってアクセス可能な任意の媒体であり得る。メモリ520は、揮発性メモリ(例えば、レジスタ、キャッシュ、ランダムアクセスメモリ(RAM))、不揮発性メモリ(例えば、読み取り専用メモリ(ROM)、電気的に消去可能なプログラム可能な読み取り専用メモリ(EEPROM)、フラッシュメモリ)、又はそれらの任意の組み合わせであり得る。記憶ユニット530は、任意の取り外し可能又は取り外し不可能な媒体であり得、情報及び/又はデータを記憶するために使用でき、コンピューティングデバイス500でアクセスできる、メモリ、フラッシュメモリドライブ、磁気ディスク又は別の他の媒体などの機械可読媒体を含み得る。
【0138】
コンピューティングデバイス500は、追加の取り外し可能/取り外し不可能、揮発性/不揮発性メモリ媒体をさらに含み得る。なお、
図5には示していないが、着脱可能な不揮発性磁気ディスクの読み書きを行う磁気ディスクドライブや、着脱可能な不揮発性光ディスクの読み書きを行う光ディスクドライブを提供することが可能である。このような場合、各ドライブは、1つ又は複数のデータ媒体インターフェースを介してバス(図示せず)に接続され得る。
【0139】
通信ユニット540は、通信媒体を介してさらなるコンピューティングデバイスと通信する。その上、コンピューティングデバイス500内のコンポーネントの機能は、通信接続を介して通信できる単一のコンピューティングクラスタ又は複数のコンピューティングマシンによって具現され得る。したがって、コンピューティングデバイス500は、1つ又は複数の他のサーバ、ネットワーク化されたパーソナルコンピュータ(PC)、又はさらなる一般的なネットワークノードとの論理接続を使用して、ネットワーク化された環境で動作することができる。
【0140】
入力デバイス550は、マウス、キーボード、トラッキングボール、音声入力デバイスなどの様々な入力デバイスのうちの1つ又は複数であり得る。出力デバイス560は、ディスプレイ、ラウドスピーカ、プリンタなどの様々な出力デバイスのうちの1つ又は複数であり得る。通信ユニット540によって、コンピューティングデバイス500は、記憶デバイス及び表示デバイスなどの1つ又は複数の外部デバイス(図示せず)とさらに通信することができ、1つ又は複数のデバイスにより、ユーザがコンピューティングデバイス500と対話可能にするか、又は、必要に応じて、任意のデバイス(ネットワークカード、モデムなど)により、コンピューティングデバイス500が1つ又は複数の他のコンピューティングデバイスと通信可能にする。このような通信は、入力/出力(I/O)インターフェイス(図示せず)を介して実行され得る。
【0141】
いくつかの実施形態では、単一のデバイスに統合される代わりに、コンピューティングデバイス500のいくつかの又は全てのコンポーネントがクラウドコンピューティングアーキテクチャに配置され得る。クラウドコンピューティングアーキテクチャでは、コンポーネントは遠隔的に提供され、連携して本開示で説明される機能を実施し得る。いくつかの実施形態では、クラウドコンピューティングは、コンピューティング、ソフトウェア、データアクセス及びストレージサービスを提供し、これらのサービスを提供するシステム又はハードウェアの物理的な位置又は構成をエンドユーザが認識する必要はない。様々な実施形態において、クラウドコンピューティングは、適切なプロトコルを使用して広域ネットワーク(インターネットなど)を介してサービスを提供する。例えば、クラウドコンピューティングプロバイダーは、Webブラウザ又はその他のコンピューティングコンポーネントを通じてアクセスできる広域ネットワーク経由でアプリケーションを提供する。クラウドコンピューティングアーキテクチャのソフトウェア又はコンポーネント及び対応するデータは、遠隔地にあるサーバに保存され得る。クラウドコンピューティング環境におけるコンピューティングリソースは、リモートデータセンターの場所に併合又は分散され得る。クラウドコンピューティングインフラストラクチャは、ユーザにとって単一のアクセスポイントとして動作するが、共有データセンターを通じてサービスを提供し得る。したがって、クラウドコンピューティングアーキテクチャを使用して、本明細書で説明されるコンポーネント及び機能を遠隔地にあるサービスプロバイダから提供し得る。代替的に、それらは従来のサーバから提供されるか、又はクライアントデバイスに直接又はその他の方法でインストールされ得る。
【0142】
コンピューティングデバイス500は、本開示の実施形態においてビデオエンコーディング/デコーディングを具現するために使用され得る。メモリ520は、1つ又は複数のプログラム命令を有する1つ又は複数のビデオコーディングモジュール525を含み得る。これらのモジュールは、本明細書で説明される様々な実施形態の機能を実行するように、処理ユニット510によってアクセス可能かつ実行可能である。
【0143】
ビデオエンコーディングを実行する例示的な実施形態では、入力デバイス550は、エンコードされるビデオデータを入力570として受信し得る。ビデオデータは、例えば、ビデオコーディングモジュール525によって処理されて、エンコードされたビットストリームを生成し得る。エンコードされたビットストリームは、出力デバイス560を介して出力580として提供され得る。
【0144】
ビデオデコーディングを実行する例示的な実施形態では、入力デバイス550は、エンコードされたビットストリームを入力570として受信し得る。エンコードされたビットストリームは、例えば、ビデオコーディングモジュール525によって処理されて、デコードされたビデオデータを生成し得る。デコードされたビデオデータは、出力デバイス560を介して出力580として提供され得る。
【0145】
本開示は、その好ましい実施形態を参照して特に図示及び説明されたが、添付の特許請求の範囲によって定義される本出願の精神及び範囲から逸脱することなく、形態及び詳細における様々な変更を行うことができることが当業者には理解されるであろう。このような変形は、本出願の範囲に含まれるものとする。したがって、本出願の実施形態に関する前述の説明は限定することを意図したものではない。
【手続補正書】
【提出日】2024-09-20
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ビデオ処理方法であって、
第1の構文要素に基づいて、ビデオの現在のビデオブロックと前記ビデオのビットストリームとの間の転換を実行するステップ、を含み、
前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、
前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、
前記第1の構文要素の値は、6に等しいことが許容される、
方法。
【請求項2】
前記第1の構文要素は、構文要素gci_num_additional_bitsであり、
または、
前記第2の構文要素は、構文要素gci_alignment_zero_bitであり、又は
前記構文構造は、構文構造general_constraints_infoである、
請求項1に記載の方法。
【請求項3】
前記第1の構文要素の値は、0又は6に等しいことのみが許容される、
請求項1に記載の方法。
【請求項4】
前記第1の構文要素についての6より大きい値は、予備される、
請求項1に記載の方法。
【請求項5】
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項1に記載の方法。
【請求項6】
前記第3の構文要素は、構文要素gci_reserved_zero_bitである、
請求項5に記載の方法。
【請求項7】
前記第1の構文要素の前記値が5より大きい場合、前記構文構造は、
1つ又は複数の出力レイヤーセット(OLS)における全てのピクチャがリカバリポイントピクチャであるか、又は、イントラランダムアクセスポイント(IRAP)ピクチャであるかを示す、第3の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、拡張ダイナミックレンジがスケーリング及び変換プロセスで、及び、構文要素abs_remaining及びdec_abs_levelの2値化で使用されるか否かを示す、第4の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、現在のスライス内の構文構造residual_ts_codingに使用されるライス(Rice)パラメータが、シーケンスパラメータセット(SPS)を指す構文構造slice_headerに示されるか否かを示す、第5の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化で代替的ライスパラメータ導出が使用されるか否かを示す、第6の構文要素、
1つ又は複数のOLSにおける全てのピクチャについて、構文要素abs_remaining及びdec_abs_levelの2値化のためのライスパラメータ導出が、以前のTUから蓄積された統計を使用して、各変換単位(TU)の開始時に初期化されるか否かを示す、第7の構文要素、又は、
1つ又は複数のOLSにおける全てのピクチャについて、前記SPSを指す構文構造slice_headerに構文要素sh_reverse_last_sig_coeff_flagが存在するか否かを示す、第8の構文要素、
のうちの1つ又は複数の構文要素を含む、
請求項1に記載の方法。
【請求項8】
前記第3の構文要素は、構文要素gci_all_rap_pictures_constraint_flagであり、
前記第4の構文要素は、構文要素gci_no_extended_precision_processing_constraint_flagであり、
前記第5の構文要素は、構文要素gci_no_ts_residual_coding_rice_constraint_flagであり、
前記第6の構文要素は、構文要素gci_no_rrc_rice_extension_constraint_flagであり、
前記第7の構文要素は、構文要素gci_no_persistent_rice_adaptation_constraint_flagであり、又は、
前記第8の構文要素は、構文要素gci_no_reverse_last_sig_coeff_constraint_flagである、
請求項7に記載の方法。
【請求項9】
前記第4、第5、第6、第7、及び、第8の構文要素が、いずれも前記ビットストリームに存在しない場合、前記第3の構文要素は、前記ビットストリームに含まれることが許容され
、および/または、
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第3の構文要素は、前記ビットストリームに含まれ
、および/または、
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第2バージョンで指定されたプロファイルに準拠することが示される場合、前記第3、第4、第5、第6、第7、及び、第8の構文要素の全てが、前記ビットストリームに含まれ
、および/または、
前記少なくとも1つの第2の構文要素以外の前記追加のGCIビットが、前記構文構造に存在し、前記ビットストリームが、多用途ビデオコーディング(VVC)の第1バージョンで指定されたプロファイルに準拠することが示される場合、前記第4、第5、第6、第7、及び、第8の構文要素が、いずれも前記ビットストリームに存在しない、
請求項7に記載の方法。
【請求項10】
前記第1の構文要素の値は、5より大き
く、および/または、
前記第1の構文要素の値は、6に等しいことのみが許容され
、および/または、
前記構文要素gci_all_rap_pictures_constraint_flag、gci_no_extended_precision_processing_constraint_flag、gci_no_ts_residual_coding_rice_constraint_flag、gci_no_rrc_rice_extension_constraint_flag、gci_no_persistent_rice_adaptation_constraint_flag、及び、gci_no_reverse_last_sig_coeff_constraint_flagは、前記第1の構文要素の値とは無関係に前記構文構造に含まれ
、および/または、
前記第1の構文要素の値は、0又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項
1に記載の方法。
【請求項11】
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、
前記第1の構文要素の値が6に等しくない場合、予備ビットについての全ての第3構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、前記第1の構文要素の6に等しくない値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は0、1、又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は、1から5まで(両端含む)の範囲外である
か、
または、
前記第1の構文要素の値は、1又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、6より大きい前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が6より大きい場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は0、1、又は、6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0、1、又は、6以外の前記第1の構文要素の値が、構文に現れることを許容し、
前記第1の構文要素の値が0、1、又は、6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は、0又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、0又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が0又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される
か、
または、
前記第1の構文要素の値は、1又は6に等しいことのみが許容され、
前記第1の構文要素についての6より大きい値は、予備され、
前記転換を実行するデコーダは、1又は6以外の前記第1の構文要素の値が構文に現れることを許容し、
前記第1の構文要素の値が1又は6以外の場合、予備ビットについての全ての第3の構文要素の値は、前記デコーダで無視される、
請求項
1に記載の方法。
【請求項12】
前記転換は、前記現在のビデオブロックを前記ビットストリームにエンコードすることを含む、
請求項1に記載の方法。
【請求項13】
前記転換は、前記ビットストリームから前記現在のビデオブロックをデコードすることを含む、
請求項1に記載の方法。
【請求項14】
プロセッサと、命令を備えた非一時的メモリとを含む、ビデオデータを処理する装置であって、
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、請求項1
乃至13のいずれか一項に記載の方法を実行させる、装置。
【請求項15】
プロセッサに請求項1
乃至13のいずれか一項に記載の方法を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体。
【請求項16】
ビデオのビットストリームを記憶する方法であって、
第1の構文要素に基づいて、前記ビデオの現在のビデオブロックと前記ビットストリームとの間の転換を実行する、ステップと、
前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶する、ステップと、を含み、
前記第1の構文要素は、少なくとも1つの第2の構文要素以外の一般制約情報についての構文構造における追加の一般制約情報(GCI)ビットの数を指定し、
前記少なくとも1つの第2の構文要素は、前記構文構造のバイトアラインメントに使用され、
前記第1の構文要素の値は、6に等しいことが許容される、
方法。
【国際調査報告】