JP2022524618A - エンコーダ、デコーダ、および対応する方法 - Google Patents
エンコーダ、デコーダ、および対応する方法 Download PDFInfo
- Publication number
- JP2022524618A JP2022524618A JP2021554984A JP2021554984A JP2022524618A JP 2022524618 A JP2022524618 A JP 2022524618A JP 2021554984 A JP2021554984 A JP 2021554984A JP 2021554984 A JP2021554984 A JP 2021554984A JP 2022524618 A JP2022524618 A JP 2022524618A
- Authority
- JP
- Japan
- Prior art keywords
- picture
- gdr
- video
- flag
- tile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 354
- 238000003860 storage Methods 0.000 claims description 52
- 230000005540 biological transmission Effects 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 36
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000033001 locomotion Effects 0.000 description 162
- 230000008569 process Effects 0.000 description 136
- 239000000523 sample Substances 0.000 description 86
- 239000013598 vector Substances 0.000 description 58
- 238000011084 recovery Methods 0.000 description 50
- 241000023320 Luma <angiosperm> Species 0.000 description 48
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 48
- 238000013139 quantization Methods 0.000 description 38
- 238000006243 chemical reaction Methods 0.000 description 36
- 238000010586 diagram Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 22
- 230000009466 transformation Effects 0.000 description 22
- 230000006835 compression Effects 0.000 description 18
- 238000007906 compression Methods 0.000 description 18
- 238000001914 filtration Methods 0.000 description 18
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 14
- 239000013074 reference sample Substances 0.000 description 14
- 230000003044 adaptive effect Effects 0.000 description 10
- 230000011664 signaling Effects 0.000 description 10
- 238000009795 derivation Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 241001482237 Pica Species 0.000 description 4
- 238000003491 array Methods 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 4
- 230000001143 conditioned effect Effects 0.000 description 4
- 238000006731 degradation reaction Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000000153 supplemental effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 241000699670 Mus sp. Species 0.000 description 2
- 235000008322 Trichosanthes cucumerina Nutrition 0.000 description 2
- 244000078912 Trichosanthes cucumerina Species 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000008570 general process Effects 0.000 description 2
- 230000012010 growth Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/188—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/1883—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/23—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/12—Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/55—Motion estimation with spatial constraints, e.g. at image or region borders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
- H04N21/6336—Control signals issued by server directed to the network components or client directed to client directed to decoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/147—Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本特許出願は、Fnu Hendryらによって2019年3月11日に出願された「Gradual Decoding Refresh in Video Coding」と題する米国仮特許出願第62/816,722号、およびFnu Hendryらによって2019年7月5日に出願された「Gradual Decoding Refresh in Video Coding」と題する米国仮特許出願第62/871,020号の利益を主張し、その各々が参照により本明細書に組み込まれる。
リーディングピクチャを伴うBLA(BLA_W_LP): 復号順序で1つまたは複数のリーディングピクチャが後続し得るブロークンリンクアクセス(BLA)ピクチャのNALユニット。
RADLを伴うBLA(BLA_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないBLAピクチャのNALユニット。
リーディングピクチャを伴わないBLA(BLA_N_LP): 復号順序でリーディングピクチャが後続しないBLAピクチャのNALユニット。
RADLを伴うIDR(IDR_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないIDRピクチャのNALユニット。
リーディングピクチャを伴わないIDR(IDR_N_LP): 復号順序でリーディングピクチャが後続しないIDRピクチャのNALユニット。
CRA: リーディングピクチャが後続し得るクリーンランダムアクセス(CRA)ピクチャのNALユニット(すなわち、RASLピクチャもしくはRADLピクチャのいずれか、またはその両方)。
RADL: RADLピクチャのNALユニット。
RASL: RASLピクチャのNALユニット。
RADLを伴うIDR(IDR_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないIDRピクチャのNALユニット。
リーディングピクチャを伴わないIDR(IDR_N_LP): 復号順序でリーディングピクチャが後続しないIDRピクチャのNALユニット。
CRA: リーディングピクチャが後続し得るクリーンランダムアクセス(CRA)ピクチャのNALユニット(すなわち、RASLピクチャもしくはRADLピクチャのいずれか、またはその両方)。
RADL: RADLピクチャのNALユニット。
RASL: RASLピクチャのNALユニット。
a. NALユニットタイプGDR_NUTを有するピクチャは、GDRピクチャ、すなわち、GDR期間の中の最初のピクチャと呼ばれる。
b. GDRピクチャは、temporalIDが0に等しい。
c. GDRピクチャを含むアクセスユニットは、GDRアクセスユニットと呼ばれる。上述のように、アクセスユニットは一組のNALユニットである。各NALユニットは、単一のピクチャを含み得る。
a. GDRアクセスユニットがビットストリームの中の最初のアクセスユニットである。
b. GDRアクセスユニットがエンドオブシーケンス(EOS)アクセスユニットの直後に続く。
c. GDRアクセスユニットがエンドオブビットストリーム(EOB:end-of-bitstream)アクセスユニットの直後に続く。
d. デコーダフラグ、いわゆる、NoIncorrectPicOutputFlagがGDRピクチャに関連付けられ、デコーダの外側のエンティティによってフラグの値が1(すなわち、真)に等しく設定される。
a. DPBの中のすべての参照ピクチャが「参照のために未使用」としてマークされる。
b. ピクチャのPOC MSBが0に等しくなるように設定される。
c. GDRピクチャ、およびGDR期間の中の最後のピクチャを除きGDR期間の中の最後のピクチャまで出力順序でGDRピクチャに後続するすべてのピクチャは、出力されない(すなわち、「出力のために不必要」としてマークされる)。
a. フラグはgdr_enabled_flagと指定されうる。
b. フラグが1に等しいとき、GDRピクチャがCVSの中に存在し得る。そうではなく、フラグが0に等しいとき、GDRピクチャがCVSの中に存在しないようにGDRは有効化されていない。
a. GDR期間の中の最後のピクチャとGDRピクチャとの間の差分(delta)POCとして、情報がシグナリングされる。情報は、recovery_point_cntと指定されるシンタックス要素を使用してシグナリングされ得る。
b. タイルグループヘッダの中のシンタックス要素recovery_point_cntの存在は、gdr_enabledフラグの値、およびピクチャのNALユニットタイプが条件とされてよく、すなわち、gdr_enabled_flagが1に等しく、かつタイルグループを含むNALユニットのnal_unit_typeがGDR_NUTであるときのみ、フラグが存在する。
a. フラグは、refreshed_region_flagと指定されうる。
b. そのフラグの存在は、gdr_enabled_flagの値、およびタイルグループを含むピクチャがGDR期間内にあるかどうかが、条件とされてよい。したがって、次のことのすべてが真であるときのみ、フラグが存在する。
i. gdr_enabled_flagの値が1に等しい。
ii. 現在ピクチャのPOCが、最後のGDRピクチャのPOC値以上であり(現在ピクチャがGDRピクチャであるとき、最後のGDRピクチャが現在ピクチャである)、GDR期間の中の最後のピクチャのPOCよりも小さい。
c. フラグがタイルグループヘッダの中に存在しないとき、フラグの値は1に等しいものと推測される。
a. 一代替形態では、長方形タイルグループ情報がPPSの中に存在するか否かをシグナリングするのではなく、タイルグループ情報(すなわち、長方形タイルグループ、ラスタ走査タイルグループなどの、任意のタイプのタイルグループ)がPPSの中に存在するかどうかを指定するために、より全般的なフラグがPPSの中でシグナリングされ得る。
a. このフラグはPPSの中でシグナリングされ、loop_filter_across_refreshed_region_enabled_flagと呼ばれることがある。
b. loop_filter_across_refreshed_region_enabled_flagの存在は、loop_filter_across_tile_enabled_flagの値が条件とされうる。loop_filter_across_tile_enabled_flagが0に等しいとき、loop_filter_across_refreshed_region_enabled_flagは存在しなくてよく、その値は0に等しいものと推測される。
c. 一代替形態では、タイルグループヘッダの中でそのフラグがシグナリングされてよく、その存在は、refreshed_region_flagの値が条件とされえ、すなわち、refreshed_region_flagの値が1に等しいときのみ、そのフラグが存在する。
a. エッジを共有する近傍タイルグループが、リフレッシュされていないタイルグループであるとき、タイルグループの境界におけるエッジのデブロッキングが行われない。
b. タイルグループの境界におけるブロックに対するサンプル適応オフセット(SAO:sample adaptive offset)プロセスは、リフレッシュ済み領域境界の外側からのいかなるサンプルも使用しない。
c. タイルグループの境界におけるブロックに対する適応ループフィルタ処理(ALF:adaptive loop filtering)プロセスは、リフレッシュ済み領域境界の外側からのいかなるサンプルも使用しない。
a. ピクチャの中のリフレッシュ済みの領域の左の境界位置について、PicRefreshedLeftBoundaryPos。
b. ピクチャの中のリフレッシュ済みの領域の右の境界位置について、PicRefreshedRightBoundaryPos。
c. ピクチャの中のリフレッシュ済みの領域の上の境界位置について、PicRefreshedTopBoundaryPos。
d. ピクチャの中のリフレッシュ済みの領域の下の境界位置について、PicRefreshedBotBoundaryPos。
a. タイルグループが属するピクチャがリフレッシュされていない領域を含むかどうかを示すために、フラグがシグナリングされうる。ピクチャがリフレッシュされていない領域を含まないことが指定されるとき、リフレッシュ済み境界情報はシグナリングされず、単純にピクチャ境界に等しいものと推測されうる。
a. デブロッキングプロセスの場合、エッジがデブロッキングされる必要があるか否かを決めるために、リフレッシュ済みの領域のエッジを決定する。
b. SAOプロセスの場合、リフレッシュ領域を横断するループフィルタが可能とされないとき、リフレッシュされていない領域からのサンプルを使用することを回避するためにクリッピングプロセスが適用され得るように、リフレッシュ済みの領域の境界を決定する。
c. ALFプロセスの場合、リフレッシュ済みの領域を横断するループフィルタが可能とされないとき、リフレッシュされていない領域からのサンプルを使用することを回避するためにクリッピングプロセスが適用され得るように、リフレッシュ領域の境界を決定する。
a. 現在ブロックからその参照ピクチャへの動きベクトルは、その参照ピクチャの中のリフレッシュ済みの領域の境界によってクリッピングされる。
b. その参照ピクチャの中のサンプルのための分数補間フィルタについて、これはその参照ピクチャの中のリフレッシュ済みの領域の境界によってクリッピングされる。
注 - CRAピクチャは、その復号プロセスにおけるインター予測のために、それ自体以外のいかなるピクチャも参照せず、復号順序でビットストリームの中の最初のピクチャであってよく、または後でビットストリームの中に出現してよい。CRAピクチャは、関連付けられたRADLピクチャまたはRASLピクチャを有してよい。CRAピクチャが1に等しいNoIncorrectPicOutputFlagを有するとき、RASLピクチャは、ビットストリームの中に存在しないピクチャへの参照を含み得るため、復号可能でない場合があるので、関連付けられたRASLピクチャはデコーダによって出力されない。
注1 - IRAPアクセスユニットは、IDRアクセスユニットまたはCRAアクセスユニットでありうる。各IDRアクセスユニットに対してNoIncorrectPicOutputFlagの値は1に等しく、復号順序でビットストリームの中の最初のアクセスユニットである各CRAアクセスユニットは、復号順序でエンドオブシーケンスNALユニットに後続するか、または1に等しいHandleCraAsCvsStartFlagを有する、最初のアクセスユニットである。
注2 - 復号順序でビットストリームの中の最初のアクセスユニットである各GDRアクセスユニットに対して、NoIncorrectPicOutputFlagの値が1に等しいことは、復号順序でエンドオブシーケンスNALユニットに後続するか、または1に等しいHandleGdrAsCvsStartFlagを有する、最初のアクセスユニットである。
注 - すべてのRASLピクチャは、関連付けられるCRAピクチャのリーディングピクチャである。関連付けられるCRAピクチャが、1に等しいNoIncorrectPicOutputFlagを有するとき、ビットストリームの中に存在しないピクチャへの参照をRASLピクチャが含み得るので、RASLピクチャは出力されず、正しく復号可能でない場合がある。RASLピクチャは、非RASLピクチャの復号プロセスのための参照ピクチャとして使用されない。存在するとき、すべてのRASLピクチャは、関連付けられる同じCRAピクチャのすべてのトレーリングピクチャに復号順序で先行する。
tile_group_addressは、式6-7によって指定されるタイルIDである。
tile_group_addressの長さは、Ceil( Log2 ( NumTilesInPic ) )ビットである。
tile_group_addressの値は、両端値を含む0~NumTilesInPic - 1という範囲の中になければならない。
tile_group_addressは、第iのタイルグループの左上隅角に位置するタイルのタイルインデックスである。
tile_group_addressの長さは、signalled_tile_group_index_length_minus1 + 1ビットである。
signalled_tile_group_id_flagが0に等しい場合、tile_group_addressの値は、両端値を含む0~NumTilesInPic - 1という範囲の中になければならない。そうでない場合、tile_group_addressの値は、両端値を含む0~2( signalled_tile_group_index_length_minus1 + 1 ) - 1という範囲の中になければならない。
tile_group_addressは、タイルグループのタイルグループIDである。
tile_group_addressの長さは、signalled_tile_group_index_length_minus1 + 1ビットである。
signalled_tile_group_id_flagが0に等しい場合、tile_group_addressの値は、両端値を含む0~num_tile_groups_in_pic_minus1という範囲の中になければならない。そうでない場合、tile_group_addressの値は、両端値を含む0~2( signalled_tile_group_index_length_minus1 + 1 ) - 1という範囲の中になければならない。
if( rect_tile_group_flag ) {
if ( tile_group_info_in_pps ) {
tileGroupIdx = 0
while( tile_group_address != rect_tile_group_id[ tileGroupIdx ] )
tileGroupIdx++
tileIdx = top_left_tile_idx[ tileGroupIdx ]
BottomRightTileIdx = bottom_right_tile_idx[ tileGroupIdx ]
} else {
tileIdx = tile_group_address
BottomRightTileIdx = bottom_right_tile_id
}
TopLeftTileIdx = tileIdx
deltaTileIdx = BottomRightTileIdx - TopLeftTileIdx
NumTileRowsInTileGroupMinus1 = deltaTileIdx / ( num_tile_columns_minus1 + 1 ) (7-35)
NumTileColumnsInTileGroupMinus1 = deltaTileIdx % ( num_tile_columns_minus1 + 1 )
NumTilesInCurrTileGroup = ( NumTileRowsInTileGroupMinus1 + 1 ) * ( NumTileColumnsInTileGroupMinus1 + 1 )
for( j = 0, tIdx = 0; j < NumTileRowsInTileGroupMinus1 + 1; j++, tileIdx += num_tile_columns_minus1 + 1 )
for( i = 0, currTileIdx = tileIdx; i < NumTileColumnsInTileGroupMinus1 + 1; i++, currTileIdx++, tIdx++ )
TgTileIdx[ tIdx ] = currTileIdx
} else {
NumTilesInCurrTileGroup = num_tiles_in_tile_group_minus1 + 1
TgTileIdx[ 0 ] = tile_group_address
for( i = 1; i < NumTilesInCurrTileGroup; i++ )
TgTileIdx[ i ] = TgTileIdx[ i - 1 ] + 1
}
tileColIdx = TopLeftTileIdx % ( num_tile_columns_minus1 + 1 )
tileRowIdx = TopLeftTileIdx / ( num_tile_columns_minus1 + 1 )
TGRefreshedLeftBoundary = ColBd[ tileColIdx ] << CtbLog2SizeY
TGRefreshedTopBoundary = RowBd[ tileRowIdx ] << CtbLog2SizeY
tileColIdx = BottomRightTileIdx % ( num_tile_columns_minus1 + 1 )
tileRowIdx = BottomRightTileIdx / ( num_tile_columns_minus1 + 1 )
TGRefreshedRightBoundary = ( ( ColBd[ tileColIdx ] + ColWidth[ tileColIdx ] ) << CtbLog2SizeY ) - 1
TGRefreshedRightBoundary = TGRefreshedRightBoundary > pic_width_in_luma_samples ? pic_width_in_luma_samples : TGRefreshedRightBoundary
TGRefreshedBotBoundary = ( ( RowBd[ tileRowIdx ] + RowHeight[ tileRowIdx ] ) << CtbLog2SizeY ) - 1
TGRefreshedBotBoundary = TGRefreshedBotBoundary > pic_height_in_luma_samples ? pic_height_in_luma_samples : TGRefreshedBotBoundary
nal_unit_typeがGDR_NUTに等しく、コーディングされたタイルグループがGDRピクチャに属するとき、TemporalIdは0に等しくなければならない。
この仕様(すなわち、JVET寄稿JVET-M1001-v5)に準拠するビットストリームは、1つまたは複数のCVSを含む。
CVSは、1つまたは複数のアクセスユニットを含む。NALユニットおよびコーディングされたピクチャの順序、ならびにアクセスユニットへのそれらの関連付けが、第7.4.2.4.4節に記載される。
CVSの最初のアクセスユニットは、以下のうちの1つである。
- NoBrokenPictureOutputFlagが1に等しいIRAPアクセスユニット。
- NoIncorrectPicOutputFlagが1に等しいGDRアクセスユニット。
存在するとき、エンドオブシーケンスNALユニットまたはエンドオブビットストリームNALユニットを含むアクセスユニットの後の次のアクセスユニットが、以下のうちの1つでなければならないことが、ビットストリーム適合の要件である。
- IDRアクセスユニットまたはCRAアクセスユニットであり得るIRAPアクセスユニット。
- GDRアクセスユニット。
...
現在ピクチャがIRAPピクチャであるとき、以下のことが適用される。
- 現在ピクチャが、IDRピクチャ、復号順序でビットストリームの中の最初のピクチャ、または復号順序でエンドオブシーケンスNALユニットに後続する最初のピクチャであるとき、変数NoIncorrectPicOutputFlagは、1に等しく設定される。
- そうではなく、この仕様で指定されないいくつかの外部手段(たとえば、ユーザ入力)が、変数HandleCraAsCvsStartFlagを現在ピクチャに対する値に設定するために利用可能であるとき、変数HandleCraAsCvsStartFlagは、外部手段によって提供される値に等しく設定され、変数NoIncorrectPicOutputFlagは、HandleCraAsCvsStartFlagに等しく設定される。
- そうでない場合、変数HandleCraAsCvsStartFlagは、0に等しく設定され、変数NoIncorrectPicOutputFlagは、0に等しく設定される。
現在ピクチャがGDRピクチャであるとき、以下のことが適用される。
- 現在ピクチャが、GDRピクチャ、復号順序でビットストリームの中の最初のピクチャ、または復号順序でエンドオブシーケンスNALユニットに後続する最初のピクチャであるとき、変数NoIncorrectPicOutputFlagは、1に等しく設定される。
- そうではなく、この仕様で指定されないいくつかの外部手段が、変数HandleGdrAsCvsStartFlagを現在ピクチャに対する値に設定するために利用可能であるとき、変数HandleGdrAsCvsStartFlagは、外部手段によって提供される値に等しく設定され、変数NoIncorrectPicOutputFlagは、HandleGdrAsCvsStartFlagに等しく設定される。
- そうでない場合、変数HandleGdrAsCvsStartFlagは、0に等しく設定され、変数NoIncorrectPicOutputFlagは、0に等しく設定される。
...
1. NALユニットの復号が第8.2節で指定される。
2. 第8.3節におけるプロセスは、タイルグループヘッダレイヤの中のシンタックス要素を使用する以下の復号プロセス、および上記のことを指定する。
- ピクチャ順序カウントに関係する変数および関数が、第8.3.1節で指定されるように導出される。これは、ピクチャの最初のタイルグループに対してのみ呼び出される必要がある。
- 非IDRピクチャのタイルグループごとの復号プロセスの開始において、参照ピクチャリスト0(RefPicList[ 0 ])および参照ピクチャリスト1(RefPicList[ 1 ])の導出のために、第8.3.2節で指定される参照ピクチャリスト構成のための復号プロセスが呼び出される。
- 第8.3.3節における参照ピクチャマーキングのための復号プロセスが呼び出され、参照ピクチャは、「参照のために未使用」または「長期の参照のために使用済み」としてマークされ得る。これは、ピクチャの最初のタイルグループに対してのみ呼び出される。
- PicOutputFlagは次のように設定される。
- 次の条件のうちの1つが真であるとき、PictureOutputFlagは、0に等しく設定される。
- 現在ピクチャがRASLピクチャであり、関連付けられるIRAPピクチャのNoIncorrectPicOutputFlagが1に等しい。
- gdr_enabled_flagが1に等しく、現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいGDRピクチャである。
- gdr_enabled_flagが1に等しく、現在ピクチャが、refreshed_region_flagが0に等しい1つまたは複数のタイルグループを含み、関連付けられるGDRピクチャのNoBrokenPictureOutputFlagが1に等しい。
- そうでない場合、PicOutputFlagは、1に等しく設定される。
3. 復号プロセスは、ツリーユニットをコーディングすること、スケーリング、変換、ループ内フィルタ処理などのために呼び出される。
4. 現在ピクチャのすべてのタイルグループが復号された後、現在の復号ピクチャが「短期の参照のために使用済み」としてマークされる。
このプロセスの出力は、PicOrderCntVal、すなわち、現在ピクチャのピクチャ順序カウントである。
コーディングされた各ピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。
現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャ、またはNoIncorrectPicOutputFlagが1に等しいGDRピクチャでないとき、変数prevPicOrderCntLsbおよびprevPicOrderCntMsbは、次のように導出される。
- 0に等しいTemporalIdを有するとともにRASLまたはRADLピクチャでない、復号順序で前のピクチャを、prevTid0Picとする。
- 変数prevPicOrderCntLsbは、prevTid0Picのtile_group_pic_order_cnt_lsbに等しく設定される。
- 変数prevPicOrderCntMsbは、prevTid0PicのPicOrderCntMsbに等しく設定される。
- 現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャ、またはNoIncorrectPicOutputFlagが1に等しいGDRピクチャであるとき、PicOrderCntMsbは、0に等しく設定される。
if( ( tile_group_pic_order_cnt_lsb < prevPicOrderCntLsb ) && ( ( prevPicOrderCntLsb - tile_group_pic_order_cnt_lsb ) >= ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb + MaxPicOrderCntLsb (8-1)
else if( (tile_group_pic_order_cnt_lsb > prevPicOrderCntLsb ) && ( ( tile_group_pic_order_cnt_lsb - prevPicOrderCntLsb ) > ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb - MaxPicOrderCntLsb
else
PicOrderCntMsb = prevPicOrderCntMsb
PicOrderCntValは、次のように導出される。
PicOrderCntVal = PicOrderCntMsb + tile_group_pic_order_cnt_lsb (8-2)
このプロセスは、gdr_enabled_flagが1に等しいときにしか呼び出されない。
このプロセスは、タイルグループヘッダ構文解析が完了した後に呼び出される。
このプロセスの出力は、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPos、すなわち、現在ピクチャのリフレッシュ済みの領域の境界位置である。
コーディングされた各ピクチャは、PicOrderCntValとして示されるリフレッシュ済み領域境界位置変数のセットに関連付けられる。
PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosは、次のように導出される。
タイルグループが、refreshed_region_flagが1に等しい現在ピクチャの最初に受信されたタイルグループである場合、以下のことが適用される。
PicRefreshedLeftBoundaryPos = TGRefreshedLeftBoundary
PicRefreshedRightBoundaryPos = TGRefreshedRightBoundary
PicRefreshedTopBoundaryPos = TGRefreshedTopBoundary
PicRefreshedBotBoundaryPos = TileGroupBotBoundary
そうではなく、refreshed_region_flagが1に等しい場合、以下のことが適用される。
PicRefreshedLeftBoundaryPos = TGRefreshedLeftBoundary < PicRefreshedLeftBoundaryPos ? TGRefreshedLeftBoundary : PicRefreshedLeftBoundaryPos
PicRefreshedRightBoundaryPos = TGRefreshedRightBoundary > PicRefreshedRightBoundaryPos ? TGRefreshedRightBoundary : PicRefreshedRightBoundaryPos
PicRefreshedTopBoundaryPos = TGRefreshedTopBoundary < PicRefreshedTopBoundaryPos ? TGRefreshedTopBoundary : RefreshedRegionTopBoundaryPos
PicRefreshedBotBoundaryPos = TileGroupBotBoundary > PicRefreshedBotBoundaryPos ? TileGroupBotBoundary : PicRefreshedBotBoundaryPos
...
NoIncorrectPicOutputFlagが1に等しいIRAPピクチャまたはNoIncorrectPicOutputFlagが1に等しいGDRピクチャでない、各現在ピクチャに対して、maxPicOrderCnt - minPicOrderCntの値がMaxPicOrderCntLsb / 2よりも小さくなければならないことが、ビットストリーム適合の要件である。
...
...
現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャまたはNoIncorrectPicOutputFlagが1に等しいGDRピクチャである場合、(もしあれば)現在、DPBの中にあるすべての参照ピクチャは「参照のために未使用」としてマークされる。
...
...
変数currCbは、ルーマロケーション( xCb, yCb )における現在ルーマコーディングブロックを指定する。
- tile_group_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方の成分は、0に等しく設定され、availableFlagLXColは、0に等しく設定される。
- そうでない(tile_group_temporal_mvp_enabled_flagが1に等しい)場合、以下の順序付きステップが適用される。
xColBr = xCb + cbWidth (8-414)
yColBr = yCb + cbHeight (8-415)
leftBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedLeftBoundaryPos : 0 (8-415)
topBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedTopBoundaryPos : 0 (8-415)
rightBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedRightBoundaryPos : pic_width_in_luma_samples (8-415)
botBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedBotBoundaryPos : pic_height_in_luma_samples (8-415)
- yCb >> CtbLog2SizeYがyColBr >> CtbLog2SizeYに等しく、yColBrが、両端値を含むtopBoundaryPosからbotBoundaryPosまでの範囲の中にあり、かつxColBrが、両端値を含むleftBoundaryPosからrightBoundaryPosまでの範囲の中にある場合、以下のことが適用される。
- 変数colCbは、ColPicによって指定されるコロケートされたピクチャの内側の、( ( xColBr >> 3 ) << 3, ( yColBr >> 3 ) << 3 )によって与えられる修正済みのロケーションをカバーするルーマコーディングブロックを指定する。
- ルーマロケーション( xColCb, yColCb )は、ColPicによって指定されるコロケートされたピクチャの左上のルーマサンプルに対してcolCbによって指定されるコロケートされたルーマコーディングブロックの左上のサンプルに等しく設定される。
- 第8.5.2.12節で指定されるようなコロケートされた動きベクトルのための導出プロセスは、入力としてcurrCb、colCb、( xColCb, yColCb )、refIdxLX、および0に等しく設定されたsbFlagとともに呼び出され、出力がmvLXColおよびavailableFlagLXColに割り当てられる。
- そうでない場合、mvLXColの両方の成分は、0に等しく設定され、availableFlagLXColは、0に等しく設定される。
2. ...
このプロセスの入力は、以下の通りである。
- フルサンプル単位でのルーマロケーション( xIntL, yIntL )、
- 分数サンプル単位でのルーマロケーション( xFracL, yFracL )、
- ルーマ参照サンプルアレイrefPicLXL、
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos, PicRefreshedRightBoundaryPos, xIntL + i ) (8-458)
yInti = Clip3( PicRefreshedTopBoundaryPos, PicRefreshedBotBoundaryPos, yIntL + i ) (8-458)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, ( xIntL + i ) ) : (8-459)
Clip3( 0, picW - 1, xIntL + i )
yInti = Clip3( 0, picH - 1, yIntL + i ) (8-460)
...
このプロセスの入力は、以下の通りである。
- フルサンプル単位でのルーマロケーション( xIntL, yIntL )、
- 分数サンプル単位でのルーマロケーション( xFracL, yFracL )、
- ルーマ参照サンプルアレイrefPicLXL、
- 参照サンプルパディングの方向および量を指定する、dir = 0,1を伴うリストpadVal[ dir ]。
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos, PicRefreshedRightBoundaryPos, xIntL + i - 3 ) (8-830)
yInti = Clip3( PicRefreshedTopBoundaryPos, PicRefreshedBotBoundaryPos, yIntL + i - 3 ) (8-830)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) : (8-831)
Clip3( 0, picW - 1, xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 ) (8-832)
このプロセスの入力は、以下の通りである。
- 1/32分数サンプル単位でのクロマロケーション( xFracC, yFracC )、
- クロマ参照サンプルアレイrefPicLXC。
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
変数xOffsetは、( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY ) / SubWidthCに等しく設定される。
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos / SubWidthC, PicRefreshedRightBoundaryPos / SubWidthC, xIntL + i ) (8-844)
yInti = Clip3( PicRefreshedTopBoundaryPos / SubHeightC, PicRefreshedBotBoundaryPos / SubHeightC, yIntL + i ) (8-844)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( xOffset, picWC, xIntC + i - 1 ) : (8-845)
Clip3( 0, picWC - 1, xIntC + i - 1 )
yInti = Clip3( 0, picHC - 1, yIntC + i - 1 ) (8-846)
全般的なプロセス。
...
デブロッキングフィルタプロセスは、以下のタイプのエッジを除いて、ピクチャのすべてのコーディングサブブロックエッジおよび変換ブロックエッジに適用される。
- ピクチャの境界にあるエッジ。
- 以下のことのすべてが満たされるとき、タイルグループtgAの上の境界に一致するエッジ。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- そのエッジがタイルグループtgBの下の境界に一致し、tgBのrefreshed_region_flagの値がtgAのrefreshed_region_flagの値とは異なる。
- 以下のことのすべてが満たされるとき、タイルグループtgAの左の境界に一致するエッジ。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- そのエッジがタイルグループtgBの右の境界に一致し、tgBのrefreshed_region_flagの値がtgAのrefreshed_region_flagの値とは異なる。
- loop_filter_across_tiles_enabled_flagが0に等しいとき、タイル境界に一致するエッジ。
- tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しいかまたはtile_group_deblocking_filter_disabled_flagが1に等しいタイルグループの、上または左の境界に一致するエッジ。
- tile_group_deblocking_filter_disabled_flagが1に等しいタイルグループ内のエッジ。
- 考慮される成分の8×8サンプルグリッド境界に対応しないエッジ。
- エッジの両側がインター予測を使用するクロマ成分内のエッジ。
- IntraSubPartitionsSplit値がISP_NO_SPLITに等しくないコーディングユニットのルーマ変換ブロックを横断するエッジ。
...
コーディングブロック幅log2CbW、コーディングブロック高さlog2CbH、およびコーディングブロックの左上のサンプルのロケーション( xCb, yCb )を有するコーディングユニットごとに、edgeTypeがEDGE_VERに等しくxCb % 8が0に等しいとき、またはedgeTypeがEDGE_HORに等しくyCb % 8が0に等しいとき、以下の順序付きステップによってエッジがフィルタ処理される。
- edgeTypeがEDGE_VERに等しく、かつ次の条件のうちの1つまたは複数が真である場合、filterEdgeFlagは、0に等しく設定される。
- 現在コーディングブロックの左の境界がピクチャの左の境界である。
- 現在コーディングブロックの左の境界がタイルの左の境界であり、loop_filter_across_tiles_enabled_flagが0に等しい。
- 現在コーディングブロックの左の境界がタイルグループの左の境界であり、tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- 現在コーディングブロックの左の境界が現在タイルグループの左の境界であり、次のすべての条件が満たされる。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- 現在タイルグループの左の境界と境界を共有したタイルグループが存在し、そのrefreshed_region_flagの値が現在タイルグループのrefreshed_region_flagの値とは異なる。
- そうではなく、edgeTypeがEDGE_HORに等しく、かつ次の条件のうちの1つまたは複数が真である場合、変数filterEdgeFlagは、0に等しく設定される。
- 現在ルーマコーディングブロックの上の境界がピクチャの上の境界である。
- 現在コーディングブロックの上の境界がタイルの上の境界であり、loop_filter_across_tiles_enabled_flagが0に等しい。
- 現在コーディングブロックの上の境界がタイルグループの上の境界であり、tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- 現在コーディングブロックの上の境界が現在タイルグループの上の境界であり、次のすべての条件が満たされる。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- 現在タイルグループの上の境界と境界を共有したタイルグループが存在し、そのrefreshed_region_flagの値が現在タイルグループのrefreshed_region_flagの値とは異なる。
- そうでない場合、filterEdgeFlagは、1に等しく設定される。
タイルが統合されると、シンタックスを適合させる。
SAOのためのCTB修正プロセスが説明される。
i = 0..nCtbSw - 1かつj = 0..nCtbSh - 1を伴うすべてのサンプルロケーション( xSi, ySj )および( xYi, yYj )に対して、recPicture[ xSi ][ ySj ]をカバーするコーディングブロックを含むコーディングユニットのpcm_loop_filter_disabled_flag、pcm_flag[ xYi ][ yYj ]、およびcu_transquant_bypass_flagの値に応じて、以下のことが適用される。
- ....
将来決定変換/量子化バイパスにおいて保留中の強調されたセクションを修正する。
- そうではなく、SaoTypeIdx[ cIdx ][ rx ][ ry ]が2に等しい場合、以下の順序付きステップが適用される。
- 修正済みのサンプルロケーション( xSik', ySjk' )および( xYik', yYik' )が、次のように導出される。
( xSik', ySjk' ) = ( xSi + hPos[ k ], ySj + vPos[ k ] ) (8-1128)
( xYik', yYjk' ) = ( cIdx = = 0 ) ? ( xSik', ySjk' ) : ( xSik' * SubWidthC, ySjk' * SubHeightC ) (8-1129)
- k = 0..1を伴うすべてのサンプルロケーション( xSik', ySjk' )および( xYik', yYjk' )に対して次の条件のうちの1つまたは複数が真である場合、edgeIdxは、0に等しく設定される。
- ロケーション( xSik', ySjk' )におけるサンプルが、ピクチャ境界の外側にある。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、現在タイルグループのrefreshed_region_flagが1に等しく、かつロケーション( xSik', ySjk' )におけるサンプルを含むタイルグループのrefreshed_region_flagが0に等しい。
- ロケーション( xSik', ySjk' )におけるサンプルが、異なるタイルグループに属し、次の2つの条件のうちの1つが真である。
- MinTbAddrZs[ xYik' >> MinTbLog2SizeY ][ yYjk' >> MinTbLog2SizeY ]がMinTbAddrZs[ xYi >> MinTbLog2SizeY ][ yYj >> MinTbLog2SizeY ]よりも小さく、サンプルrecPicture[ xSi ][ ySj ]が属するタイルグループの中のtile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- MinTbAddrZs[ xYi >> MinTbLog2SizeY ][ yYj >> MinTbLog2SizeY ]がMinTbAddrZs[ xYik' >> MinTbLog2SizeY ][ yYjk' >> MinTbLog2SizeY ]よりも小さく、サンプルrecPicture[ xSik' ][ ySjk' ]が属するタイルグループの中のtile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- loop_filter_across_tiles_enabled_flagが0に等しく、ロケーション( xSik', ySjk' )におけるサンプルが、異なるタイルに属する。
タイルグループを有しないタイルが組み込まれるとき、強調されたセクションを修正する。
- そうでない場合、edgeIdxは、次のように導出される。
- 以下のことが適用される。
edgeIdx = 2 + Sign( recPicture[ xSi ][ ySj ] - recPicture[ xSi + hPos[ 0 ] ][ ySj + vPos[ 0 ] ] ) + Sign( recPicture[ xSi ][ ySj ] - recPicture[ xSi + hPos[ 1 ] ][ ySj + vPos[ 1 ] ] ) (8-1130)
- edgeIdxが0、1、または2に等しいとき、edgeIdxは次のように修正される。
edgeIdx = ( edgeIdx = = 2 ) ? 0 : ( edgeIdx + 1 ) (8-1131)
saoPicture[ xSi ][ ySj ] = Clip3( 0, ( 1 << bitDepth ) - 1, recPicture[ xSi ][ ySj ] + SaoOffsetVal[ cIdx ][ rx ][ ry ][ edgeIdx ] ) (8-1132)
ALFのためのルーマサンプルに対するコーディングツリーブロックフィルタ処理プロセスが説明される。
...
フィルタ処理済みの再構成ルーマサンプルalfPictureL[ x ][ y ]の導出のために、現在のルーマコーディングツリーブロックの内側の各再構成ルーマサンプルrecPictureL[ x ][ y ]が、x, y = 0..CtbSizeY - 1を伴って次のようにフィルタ処理される。
- ...
- ルーマサンプルの所与のアレイrecPictureの内側の対応するルーマサンプル( x, y )の各々に対するロケーション( hx, vy )は、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary, rightBoundary, xCtb + x ) (8-1140)
vy = Clip3( topBoundary, botBoundary, yCtb + y ) (8-1141)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples - 1, xCtb + x ) (8-1140)
vy = Clip3( 0, pic_height_in_luma_samples - 1, yCtb + y ) (8-1141)
- ...
...
ルーマサンプルの所与のアレイrecPictureの内側の対応するルーマサンプル( x, y )の各々に対するロケーション( hx, vy )が、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary, rightBoundary, x ) (8-1140)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples - 1, x ) (8-1145)
vy = Clip3( 0, pic_height_in_luma_samples - 1, y ) (8-1146)
...
フィルタ処理済みの再構成クロマサンプルalfPicture[ x ][ y ]の導出のために、現在のクロマコーディングツリーブロックの内側の各再構成クロマサンプルrecPicture[ x ][ y ]が、x, y = 0..ctbSizeC - 1を伴って次のようにフィルタ処理される。
- クロマサンプルの所与のアレイrecPictureの内側の対応するクロマサンプル( x, y )の各々に対するロケーション( hx, vy )が、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary / SubWidthC, rightBoundary / SubWidthC, xCtbC + x ) (8-1140)
vy = Clip3( topBoundary / SubWidthC, botBoundary / SubWidthC, yCtbC + y ) (8-1141)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples / SubWidthC - 1, xCtbC + x ) (8-1177)
vy = Clip3( 0, pic_height_in_luma_samples / SubHeightC - 1, yCtbC + y ) (8-1178)
12 ソースデバイス
14 宛先デバイス
16 コンピュータ可読媒体
18 ビデオソース
20 ビデオエンコーダ
22 出力インターフェース
28 入力インターフェース
30 ビデオデコーダ
32 ディスプレイデバイス
40 モード選択ユニット
42 動き推定ユニット
44 動き補償ユニット
46 イントラ予測ユニット
48 区分ユニット
50 加算器
52 変換処理ユニット
54 量子化ユニット
56 エントロピーコーディングユニット
58 逆量子化ユニット
60 逆変換ユニット
62 加算器
64 参照フレームメモリ
70 エントロピー復号ユニット
72 動き補償ユニット
74 イントラ予測ユニット
76 逆量子化ユニット
78 逆変換ユニット
80 加算器
82 参照フレームメモリ
402 IRAPピクチャ
404 リーディングピクチャ
406 トレーリングピクチャ
408 復号順序
410 提示順序
502 GDRピクチャ
504 トレーリングピクチャ
506 リカバリポイントピクチャ
508 コーディングされたビデオシーケンス
510 リフレッシュ済みの/クリーンな領域
512 リフレッシュされていない/ダーティな領域
602 現在ピクチャ
604 参照ピクチャ
604 リフレッシュ済みの領域
606 リフレッシュ済みの領域
608 リフレッシュされていない領域
610 動きベクトル
612 参照ブロック
614 現在ブロック
702 GDRピクチャ
704 トレーリングピクチャ
706 リカバリポイントピクチャ
708 CVS
730 NALユニット
750 ビデオビットストリーム
752 シーケンスパラメータセット(SPS)
754 ピクチャパラメータセット(PPS)
756 スライスヘッダ
758 画像データ
760 ピクチャ
1000 ビデオコーディングデバイス
1010 入口ポート
1020 受信器ユニット(Rx)
1030 プロセッサ
1040 送信器ユニット(Tx)
1050 出口ポート
1060 メモリ
1070 コーディングモジュール
1080 I/Oデバイス
1100 コーディングするための手段
1101 受信手段
1102 ビデオコーディングデバイス
1103 記憶手段
1105 処理手段
1107 送信手段
リーディングピクチャを伴うBLA(BLA_W_LP): 復号順序で1つまたは複数のリーディングピクチャが後続し得るブロークンリンクアクセス(BLA)ピクチャのNALユニット。
RADLを伴うBLA(BLA_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないBLAピクチャのNALユニット。
リーディングピクチャを伴わないBLA(BLA_N_LP): 復号順序でリーディングピクチャが後続しないBLAピクチャのNALユニット。
RADLを伴うIDR(IDR_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないIDRピクチャのNALユニット。
リーディングピクチャを伴わないIDR(IDR_N_LP): 復号順序でリーディングピクチャが後続しないIDRピクチャのNALユニット。
CRA: リーディングピクチャが後続し得るクリーンランダムアクセス(CRA)ピクチャのNALユニット(すなわち、RASLピクチャもしくはRADLピクチャのいずれか、またはその両方)。
RADL: RADLピクチャのNALユニット。
RASL: RASLピクチャのNALユニット。
RADLを伴うIDR(IDR_W_RADL): 復号順序で1つまたは複数のRADLピクチャが後続し得るがRASLピクチャが後続し得ないIDRピクチャのNALユニット。
リーディングピクチャを伴わないIDR(IDR_N_LP): 復号順序でリーディングピクチャが後続しないIDRピクチャのNALユニット。
CRA: リーディングピクチャが後続し得るクリーンランダムアクセス(CRA)ピクチャのNALユニット(すなわち、RASLピクチャもしくはRADLピクチャのいずれか、またはその両方)。
RADL: RADLピクチャのNALユニット。
RASL: RASLピクチャのNALユニット。
a. NALユニットタイプGDR_NUTを有するピクチャは、GDRピクチャ、すなわち、GDR期間の中の最初のピクチャと呼ばれる。
b. GDRピクチャは、temporalIDが0に等しい。
c. GDRピクチャを含むアクセスユニットは、GDRアクセスユニットと呼ばれる。上述のように、アクセスユニットは一組のNALユニットである。各NALユニットは、単一のピクチャを含み得る。
a. GDRアクセスユニットがビットストリームの中の最初のアクセスユニットである。
b. GDRアクセスユニットがエンドオブシーケンス(EOS)アクセスユニットの直後に続く。
c. GDRアクセスユニットがエンドオブビットストリーム(EOB:end-of-bitstream)アクセスユニットの直後に続く。
d. デコーダフラグ、いわゆる、NoIncorrectPicOutputFlagがGDRピクチャに関連付けられ、デコーダの外側のエンティティによってフラグの値が1(すなわち、真)に等しく設定される。
a. DPBの中のすべての参照ピクチャが「参照のために未使用」としてマークされる。
b. ピクチャのPOC MSBが0に等しくなるように設定される。
c. GDRピクチャ、およびGDR期間の中の最後のピクチャを除きGDR期間の中の最後のピクチャまで出力順序でGDRピクチャに後続するすべてのピクチャは、出力されない(すなわち、「出力のために不必要」としてマークされる)。
a. フラグはgdr_enabled_flagと指定されうる。
b. フラグが1に等しいとき、GDRピクチャがCVSの中に存在し得る。そうではなく、フラグが0に等しいとき、GDRピクチャがCVSの中に存在しないようにGDRは有効化されていない。
a. GDR期間の中の最後のピクチャとGDRピクチャとの間の差分(delta)POCとして、情報がシグナリングされる。情報は、recovery_point_cntと指定されるシンタックス要素を使用してシグナリングされ得る。
b. タイルグループヘッダの中のシンタックス要素recovery_point_cntの存在は、gdr_enabledフラグの値、およびピクチャのNALユニットタイプが条件とされてよく、すなわち、gdr_enabled_flagが1に等しく、かつタイルグループを含むNALユニットのnal_unit_typeがGDR_NUTであるときのみ、フラグが存在する。
a. フラグは、refreshed_region_flagと指定されうる。
b. そのフラグの存在は、gdr_enabled_flagの値、およびタイルグループを含むピクチャがGDR期間内にあるかどうかが、条件とされてよい。したがって、次のことのすべてが真であるときのみ、フラグが存在する。
i. gdr_enabled_flagの値が1に等しい。
ii. 現在ピクチャのPOCが、最後のGDRピクチャのPOC値以上であり(現在ピクチャがGDRピクチャであるとき、最後のGDRピクチャが現在ピクチャである)、GDR期間の中の最後のピクチャのPOCよりも小さい。
c. フラグがタイルグループヘッダの中に存在しないとき、フラグの値は1に等しいものと推測される。
a. 一代替形態では、長方形タイルグループ情報がPPSの中に存在するか否かをシグナリングするのではなく、タイルグループ情報(すなわち、長方形タイルグループ、ラスタ走査タイルグループなどの、任意のタイプのタイルグループ)がPPSの中に存在するかどうかを指定するために、より全般的なフラグがPPSの中でシグナリングされ得る。
a. このフラグはPPSの中でシグナリングされ、loop_filter_across_refreshed_region_enabled_flagと呼ばれることがある。
b. loop_filter_across_refreshed_region_enabled_flagの存在は、loop_filter_across_tile_enabled_flagの値が条件とされうる。loop_filter_across_tile_enabled_flagが0に等しいとき、loop_filter_across_refreshed_region_enabled_flagは存在しなくてよく、その値は0に等しいものと推測される。
c. 一代替形態では、タイルグループヘッダの中でそのフラグがシグナリングされてよく、その存在は、refreshed_region_flagの値が条件とされえ、すなわち、refreshed_region_flagの値が1に等しいときのみ、そのフラグが存在する。
a. エッジを共有する近傍タイルグループが、リフレッシュされていないタイルグループであるとき、タイルグループの境界におけるエッジのデブロッキングが行われない。
b. タイルグループの境界におけるブロックに対するサンプル適応オフセット(SAO:sample adaptive offset)プロセスは、リフレッシュ済み領域境界の外側からのいかなるサンプルも使用しない。
c. タイルグループの境界におけるブロックに対する適応ループフィルタ処理(ALF:adaptive loop filtering)プロセスは、リフレッシュ済み領域境界の外側からのいかなるサンプルも使用しない。
a. ピクチャの中のリフレッシュ済みの領域の左の境界位置について、PicRefreshedLeftBoundaryPos。
b. ピクチャの中のリフレッシュ済みの領域の右の境界位置について、PicRefreshedRightBoundaryPos。
c. ピクチャの中のリフレッシュ済みの領域の上の境界位置について、PicRefreshedTopBoundaryPos。
d. ピクチャの中のリフレッシュ済みの領域の下の境界位置について、PicRefreshedBotBoundaryPos。
a. タイルグループが属するピクチャがリフレッシュされていない領域を含むかどうかを示すために、フラグがシグナリングされうる。ピクチャがリフレッシュされていない領域を含まないことが指定されるとき、リフレッシュ済み境界情報はシグナリングされず、単純にピクチャ境界に等しいものと推測されうる。
a. デブロッキングプロセスの場合、エッジがデブロッキングされる必要があるか否かを決めるために、リフレッシュ済みの領域のエッジを決定する。
b. SAOプロセスの場合、リフレッシュ領域を横断するループフィルタが可能とされないとき、リフレッシュされていない領域からのサンプルを使用することを回避するためにクリッピングプロセスが適用され得るように、リフレッシュ済みの領域の境界を決定する。
c. ALFプロセスの場合、リフレッシュ済みの領域を横断するループフィルタが可能とされないとき、リフレッシュされていない領域からのサンプルを使用することを回避するためにクリッピングプロセスが適用され得るように、リフレッシュ領域の境界を決定する。
a. 現在ブロックからその参照ピクチャへの動きベクトルは、その参照ピクチャの中のリフレッシュ済みの領域の境界によってクリッピングされる。
b. その参照ピクチャの中のサンプルのための分数補間フィルタについて、これはその参照ピクチャの中のリフレッシュ済みの領域の境界によってクリッピングされる。
注 - CRAピクチャは、その復号プロセスにおけるインター予測のために、それ自体以外のいかなるピクチャも参照せず、復号順序でビットストリームの中の最初のピクチャであってよく、または後でビットストリームの中に出現してよい。CRAピクチャは、関連付けられたRADLピクチャまたはRASLピクチャを有してよい。CRAピクチャが1に等しいNoIncorrectPicOutputFlagを有するとき、RASLピクチャは、ビットストリームの中に存在しないピクチャへの参照を含み得るため、復号可能でない場合があるので、関連付けられたRASLピクチャはデコーダによって出力されない。
注1 - IRAPアクセスユニットは、IDRアクセスユニットまたはCRAアクセスユニットでありうる。各IDRアクセスユニットに対してNoIncorrectPicOutputFlagの値は1に等しく、復号順序でビットストリームの中の最初のアクセスユニットである各CRAアクセスユニットは、復号順序でエンドオブシーケンスNALユニットに後続するか、または1に等しいHandleCraAsCvsStartFlagを有する、最初のアクセスユニットである。
注2 - 復号順序でビットストリームの中の最初のアクセスユニットである各GDRアクセスユニットに対して、NoIncorrectPicOutputFlagの値が1に等しいことは、復号順序でエンドオブシーケンスNALユニットに後続するか、または1に等しいHandleGdrAsCvsStartFlagを有する、最初のアクセスユニットである。
注 - すべてのRASLピクチャは、関連付けられるCRAピクチャのリーディングピクチャである。関連付けられるCRAピクチャが、1に等しいNoIncorrectPicOutputFlagを有するとき、ビットストリームの中に存在しないピクチャへの参照をRASLピクチャが含み得るので、RASLピクチャは出力されず、正しく復号可能でない場合がある。RASLピクチャは、非RASLピクチャの復号プロセスのための参照ピクチャとして使用されない。存在するとき、すべてのRASLピクチャは、関連付けられる同じCRAピクチャのすべてのトレーリングピクチャに復号順序で先行する。
tile_group_addressは、式6-7によって指定されるタイルIDである。
tile_group_addressの長さは、Ceil( Log2 ( NumTilesInPic ) )ビットである。
tile_group_addressの値は、両端値を含む0~NumTilesInPic - 1という範囲の中になければならない。
tile_group_addressは、第iのタイルグループの左上隅角に位置するタイルのタイルインデックスである。
tile_group_addressの長さは、signalled_tile_group_index_length_minus1 + 1ビットである。
signalled_tile_group_id_flagが0に等しい場合、tile_group_addressの値は、両端値を含む0~NumTilesInPic - 1という範囲の中になければならない。そうでない場合、tile_group_addressの値は、両端値を含む0~2( signalled_tile_group_index_length_minus1 + 1 ) - 1という範囲の中になければならない。
tile_group_addressは、タイルグループのタイルグループIDである。
tile_group_addressの長さは、signalled_tile_group_index_length_minus1 + 1ビットである。
signalled_tile_group_id_flagが0に等しい場合、tile_group_addressの値は、両端値を含む0~num_tile_groups_in_pic_minus1という範囲の中になければならない。そうでない場合、tile_group_addressの値は、両端値を含む0~2( signalled_tile_group_index_length_minus1 + 1 ) - 1という範囲の中になければならない。
if( rect_tile_group_flag ) {
if ( tile_group_info_in_pps ) {
tileGroupIdx = 0
while( tile_group_address != rect_tile_group_id[ tileGroupIdx ] )
tileGroupIdx++
tileIdx = top_left_tile_idx[ tileGroupIdx ]
BottomRightTileIdx = bottom_right_tile_idx[ tileGroupIdx ]
} else {
tileIdx = tile_group_address
BottomRightTileIdx = bottom_right_tile_id
}
TopLeftTileIdx = tileIdx
deltaTileIdx = BottomRightTileIdx - TopLeftTileIdx
NumTileRowsInTileGroupMinus1 = deltaTileIdx / ( num_tile_columns_minus1 + 1 ) (7-35)
NumTileColumnsInTileGroupMinus1 = deltaTileIdx % ( num_tile_columns_minus1 + 1 )
NumTilesInCurrTileGroup = ( NumTileRowsInTileGroupMinus1 + 1 ) * ( NumTileColumnsInTileGroupMinus1 + 1 )
for( j = 0, tIdx = 0; j < NumTileRowsInTileGroupMinus1 + 1; j++, tileIdx += num_tile_columns_minus1 + 1 )
for( i = 0, currTileIdx = tileIdx; i < NumTileColumnsInTileGroupMinus1 + 1; i++, currTileIdx++, tIdx++ )
TgTileIdx[ tIdx ] = currTileIdx
} else {
NumTilesInCurrTileGroup = num_tiles_in_tile_group_minus1 + 1
TgTileIdx[ 0 ] = tile_group_address
for( i = 1; i < NumTilesInCurrTileGroup; i++ )
TgTileIdx[ i ] = TgTileIdx[ i - 1 ] + 1
}
tileColIdx = TopLeftTileIdx % ( num_tile_columns_minus1 + 1 )
tileRowIdx = TopLeftTileIdx / ( num_tile_columns_minus1 + 1 )
TGRefreshedLeftBoundary = ColBd[ tileColIdx ] << CtbLog2SizeY
TGRefreshedTopBoundary = RowBd[ tileRowIdx ] << CtbLog2SizeY
tileColIdx = BottomRightTileIdx % ( num_tile_columns_minus1 + 1 )
tileRowIdx = BottomRightTileIdx / ( num_tile_columns_minus1 + 1 )
TGRefreshedRightBoundary = ( ( ColBd[ tileColIdx ] + ColWidth[ tileColIdx ] ) << CtbLog2SizeY ) - 1
TGRefreshedRightBoundary = TGRefreshedRightBoundary > pic_width_in_luma_samples ? pic_width_in_luma_samples : TGRefreshedRightBoundary
TGRefreshedBotBoundary = ( ( RowBd[ tileRowIdx ] + RowHeight[ tileRowIdx ] ) << CtbLog2SizeY ) - 1
TGRefreshedBotBoundary = TGRefreshedBotBoundary > pic_height_in_luma_samples ? pic_height_in_luma_samples : TGRefreshedBotBoundary
nal_unit_typeがGDR_NUTに等しく、コーディングされたタイルグループがGDRピクチャに属するとき、TemporalIdは0に等しくなければならない。
この仕様(すなわち、JVET寄稿JVET-M1001-v5)に準拠するビットストリームは、1つまたは複数のCVSを含む。
CVSは、1つまたは複数のアクセスユニットを含む。NALユニットおよびコーディングされたピクチャの順序、ならびにアクセスユニットへのそれらの関連付けが、第7.4.2.4.4節に記載される。
CVSの最初のアクセスユニットは、以下のうちの1つである。
- NoBrokenPictureOutputFlagが1に等しいIRAPアクセスユニット。
- NoIncorrectPicOutputFlagが1に等しいGDRアクセスユニット。
存在するとき、エンドオブシーケンスNALユニットまたはエンドオブビットストリーム終了NALユニットを含むアクセスユニットの後の次のアクセスユニットが、以下のうちの1つでなければならないことが、ビットストリーム適合の要件である。
- IDRアクセスユニットまたはCRAアクセスユニットであり得るIRAPアクセスユニット。
- GDRアクセスユニット。
...
現在ピクチャがIRAPピクチャであるとき、以下のことが適用される。
- 現在ピクチャが、IDRピクチャ、復号順序でビットストリームの中の最初のピクチャ、または復号順序でエンドオブシーケンスNALユニットに後続する最初のピクチャであるとき、変数NoIncorrectPicOutputFlagは、1に等しく設定される。
- そうではなく、この仕様で指定されないいくつかの外部手段(たとえば、ユーザ入力)が、変数HandleCraAsCvsStartFlagを現在ピクチャに対する値に設定するために利用可能であるとき、変数HandleCraAsCvsStartFlagは、外部手段によって提供される値に等しく設定され、変数NoIncorrectPicOutputFlagは、HandleCraAsCvsStartFlagに等しく設定される。
- そうでない場合、変数HandleCraAsCvsStartFlagは、0に等しく設定され、変数NoIncorrectPicOutputFlagは、0に等しく設定される。
現在ピクチャがGDRピクチャであるとき、以下のことが適用される。
- 現在ピクチャが、GDRピクチャ、復号順序でビットストリームの中の最初のピクチャ、または復号順序でエンドオブシーケンスNALユニットに後続する最初のピクチャであるとき、変数NoIncorrectPicOutputFlagは、1に等しく設定される。
- そうではなく、この仕様で指定されないいくつかの外部手段が、変数HandleGdrAsCvsStartFlagを現在ピクチャに対する値に設定するために利用可能であるとき、変数HandleGdrAsCvsStartFlagは、外部手段によって提供される値に等しく設定され、変数NoIncorrectPicOutputFlagは、HandleGdrAsCvsStartFlagに等しく設定される。
- そうでない場合、変数HandleGdrAsCvsStartFlagは、0に等しく設定され、変数NoIncorrectPicOutputFlagは、0に等しく設定される。
...
1. NALユニットの復号が第8.2節で指定される。
2. 第8.3節におけるプロセスは、タイルグループヘッダレイヤの中のシンタックス要素を使用する以下の復号プロセス、および上記のことを指定する。
- ピクチャ順序カウントに関係する変数および関数が、第8.3.1節で指定されるように導出される。これは、ピクチャの最初のタイルグループに対してのみ呼び出される必要がある。
- 非IDRピクチャのタイルグループごとの復号プロセスの開始において、参照ピクチャリスト0(RefPicList[ 0 ])および参照ピクチャリスト1(RefPicList[ 1 ])の導出のために、第8.3.2節で指定される参照ピクチャリスト構成のための復号プロセスが呼び出される。
- 第8.3.3節における参照ピクチャマーキングのための復号プロセスが呼び出され、参照ピクチャは、「参照のために未使用」または「長期の参照のために使用済み」としてマークされ得る。これは、ピクチャの最初のタイルグループに対してのみ呼び出される。
- PicOutputFlagは次のように設定される。
- 次の条件のうちの1つが真であるとき、PictureOutputFlagは、0に等しく設定される。
- 現在ピクチャがRASLピクチャであり、関連付けられるIRAPピクチャのNoIncorrectPicOutputFlagが1に等しい。
- gdr_enabled_flagが1に等しく、現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいGDRピクチャである。
- gdr_enabled_flagが1に等しく、現在ピクチャが、refreshed_region_flagが0に等しい1つまたは複数のタイルグループを含み、関連付けられるGDRピクチャのNoBrokenPictureOutputFlagが1に等しい。
- そうでない場合、PicOutputFlagは、1に等しく設定される。
3. 復号プロセスは、ツリーユニットをコーディングすること、スケーリング、変換、ループ内フィルタ処理などのために呼び出される。
4. 現在ピクチャのすべてのタイルグループが復号された後、現在の復号ピクチャが「短期の参照のために使用済み」としてマークされる。
このプロセスの出力は、PicOrderCntVal、すなわち、現在ピクチャのピクチャ順序カウントである。
コーディングされた各ピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。
現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャ、またはNoIncorrectPicOutputFlagが1に等しいGDRピクチャでないとき、変数prevPicOrderCntLsbおよびprevPicOrderCntMsbは、次のように導出される。
- 0に等しいTemporalIdを有するとともにRASLまたはRADLピクチャでない、復号順序で前のピクチャを、prevTid0Picとする。
- 変数prevPicOrderCntLsbは、prevTid0Picのtile_group_pic_order_cnt_lsbに等しく設定される。
- 変数prevPicOrderCntMsbは、prevTid0PicのPicOrderCntMsbに等しく設定される。
- 現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャ、またはNoIncorrectPicOutputFlagが1に等しいGDRピクチャであるとき、PicOrderCntMsbは、0に等しく設定される。
if( ( tile_group_pic_order_cnt_lsb < prevPicOrderCntLsb ) && ( ( prevPicOrderCntLsb - tile_group_pic_order_cnt_lsb ) >= ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb + MaxPicOrderCntLsb (8-1)
else if( (tile_group_pic_order_cnt_lsb > prevPicOrderCntLsb ) && ( ( tile_group_pic_order_cnt_lsb - prevPicOrderCntLsb ) > ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb - MaxPicOrderCntLsb
else
PicOrderCntMsb = prevPicOrderCntMsb
PicOrderCntValは、次のように導出される。
PicOrderCntVal = PicOrderCntMsb + tile_group_pic_order_cnt_lsb (8-2)
このプロセスは、gdr_enabled_flagが1に等しいときにしか呼び出されない。
このプロセスは、タイルグループヘッダ構文解析が完了した後に呼び出される。
このプロセスの出力は、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPos、すなわち、現在ピクチャのリフレッシュ済みの領域の境界位置である。
コーディングされた各ピクチャは、PicOrderCntValとして示されるリフレッシュ済み領域境界位置変数のセットに関連付けられる。
PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosは、次のように導出される。
タイルグループが、refreshed_region_flagが1に等しい現在ピクチャの最初に受信されたタイルグループである場合、以下のことが適用される。
PicRefreshedLeftBoundaryPos = TGRefreshedLeftBoundary
PicRefreshedRightBoundaryPos = TGRefreshedRightBoundary
PicRefreshedTopBoundaryPos = TGRefreshedTopBoundary
PicRefreshedBotBoundaryPos = TileGroupBotBoundary
そうではなく、refreshed_region_flagが1に等しい場合、以下のことが適用される。
PicRefreshedLeftBoundaryPos = TGRefreshedLeftBoundary < PicRefreshedLeftBoundaryPos ? TGRefreshedLeftBoundary : PicRefreshedLeftBoundaryPos
PicRefreshedRightBoundaryPos = TGRefreshedRightBoundary > PicRefreshedRightBoundaryPos ? TGRefreshedRightBoundary : PicRefreshedRightBoundaryPos
PicRefreshedTopBoundaryPos = TGRefreshedTopBoundary < PicRefreshedTopBoundaryPos ? TGRefreshedTopBoundary : RefreshedRegionTopBoundaryPos
PicRefreshedBotBoundaryPos = TileGroupBotBoundary > PicRefreshedBotBoundaryPos ? TileGroupBotBoundary : PicRefreshedBotBoundaryPos
...
NoIncorrectPicOutputFlagが1に等しいIRAPピクチャまたはNoIncorrectPicOutputFlagが1に等しいGDRピクチャでない、各現在ピクチャに対して、maxPicOrderCnt - minPicOrderCntの値がMaxPicOrderCntLsb / 2よりも小さくなければならないことが、ビットストリーム適合の要件である。
...
...
現在ピクチャが、NoIncorrectPicOutputFlagが1に等しいIRAPピクチャまたはNoIncorrectPicOutputFlagが1に等しいGDRピクチャである場合、(もしあれば)現在、DPBの中にあるすべての参照ピクチャは「参照のために未使用」としてマークされる。
...
...
変数currCbは、ルーマロケーション( xCb, yCb )における現在ルーマコーディングブロックを指定する。
- tile_group_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方の成分は、0に等しく設定され、availableFlagLXColは、0に等しく設定される。
- そうでない(tile_group_temporal_mvp_enabled_flagが1に等しい)場合、以下の順序付きステップが適用される。
xColBr = xCb + cbWidth (8-414)
yColBr = yCb + cbHeight (8-415)
leftBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedLeftBoundaryPos : 0 (8-415)
topBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedTopBoundaryPos : 0 (8-415)
rightBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedRightBoundaryPos : pic_width_in_luma_samples (8-415)
botBoundaryPos = gdr_enabled_flag ? RefPicList[ X ][ refIdxLX ]によって参照されるピクチャのPicRefreshedBotBoundaryPos : pic_height_in_luma_samples (8-415)
- yCb >> CtbLog2SizeYがyColBr >> CtbLog2SizeYに等しく、yColBrが、両端値を含むtopBoundaryPosからbotBoundaryPosまでの範囲の中にあり、かつxColBrが、両端値を含むleftBoundaryPosからrightBoundaryPosまでの範囲の中にある場合、以下のことが適用される。
- 変数colCbは、ColPicによって指定されるコロケートされたピクチャの内側の、( ( xColBr >> 3 ) << 3, ( yColBr >> 3 ) << 3 )によって与えられる修正済みのロケーションをカバーするルーマコーディングブロックを指定する。
- ルーマロケーション( xColCb, yColCb )は、ColPicによって指定されるコロケートされたピクチャの左上のルーマサンプルに対してcolCbによって指定されるコロケートされたルーマコーディングブロックの左上のサンプルに等しく設定される。
- 第8.5.2.12節で指定されるようなコロケートされた動きベクトルのための導出プロセスは、入力としてcurrCb、colCb、( xColCb, yColCb )、refIdxLX、および0に等しく設定されたsbFlagとともに呼び出され、出力がmvLXColおよびavailableFlagLXColに割り当てられる。
- そうでない場合、mvLXColの両方の成分は、0に等しく設定され、availableFlagLXColは、0に等しく設定される。
2. ...
このプロセスの入力は、以下の通りである。
- フルサンプル単位でのルーマロケーション( xIntL, yIntL )、
- 分数サンプル単位でのルーマロケーション( xFracL, yFracL )、
- ルーマ参照サンプルアレイrefPicLXL、
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos, PicRefreshedRightBoundaryPos, xIntL + i ) (8-458)
yInti = Clip3( PicRefreshedTopBoundaryPos, PicRefreshedBotBoundaryPos, yIntL + i ) (8-458)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, ( xIntL + i ) ) : (8-459)
Clip3( 0, picW - 1, xIntL + i )
yInti = Clip3( 0, picH - 1, yIntL + i ) (8-460)
...
このプロセスの入力は、以下の通りである。
- フルサンプル単位でのルーマロケーション( xIntL, yIntL )、
- 分数サンプル単位でのルーマロケーション( xFracL, yFracL )、
- ルーマ参照サンプルアレイrefPicLXL、
- 参照サンプルパディングの方向および量を指定する、dir = 0,1を伴うリストpadVal[ dir ]。
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos, PicRefreshedRightBoundaryPos, xIntL + i - 3 ) (8-830)
yInti = Clip3( PicRefreshedTopBoundaryPos, PicRefreshedBotBoundaryPos, yIntL + i - 3 ) (8-830)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) : (8-831)
Clip3( 0, picW - 1, xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 ) (8-832)
このプロセスの入力は、以下の通りである。
- 1/32分数サンプル単位でのクロマロケーション( xFracC, yFracC )、
- クロマ参照サンプルアレイrefPicLXC。
- 参照ピクチャのリフレッシュ済み領域境界PicRefreshedLeftBoundaryPos、PicRefreshedTopBoundaryPos、PicRefreshedRightBoundaryPos、およびPicRefreshedBotBoundaryPos。
...
変数xOffsetは、( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY ) / SubWidthCに等しく設定される。
- gdr_enabled_flagが1に等しい場合、以下のことが適用される。
xInti = Clip3( PicRefreshedLeftBoundaryPos / SubWidthC, PicRefreshedRightBoundaryPos / SubWidthC, xIntL + i ) (8-844)
yInti = Clip3( PicRefreshedTopBoundaryPos / SubHeightC, PicRefreshedBotBoundaryPos / SubHeightC, yIntL + i ) (8-844)
- そうでない(gdr_enabled_flagが0に等しい)場合、以下のことが適用される。
xInti = sps_ref_wraparound_enabled_flag ? ClipH( xOffset, picWC, xIntC + i - 1 ) : (8-845)
Clip3( 0, picWC - 1, xIntC + i - 1 )
yInti = Clip3( 0, picHC - 1, yIntC + i - 1 ) (8-846)
全般的なプロセス。
...
デブロッキングフィルタプロセスは、以下のタイプのエッジを除いて、ピクチャのすべてのコーディングサブブロックエッジおよび変換ブロックエッジに適用される。
- ピクチャの境界にあるエッジ。
- 以下のことのすべてが満たされるとき、タイルグループtgAの上の境界に一致するエッジ。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- そのエッジがタイルグループtgBの下の境界に一致し、tgBのrefreshed_region_flagの値がtgAのrefreshed_region_flagの値とは異なる。
- 以下のことのすべてが満たされるとき、タイルグループtgAの左の境界に一致するエッジ。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- そのエッジがタイルグループtgBの右の境界に一致し、tgBのrefreshed_region_flagの値がtgAのrefreshed_region_flagの値とは異なる。
- loop_filter_across_tiles_enabled_flagが0に等しいとき、タイル境界に一致するエッジ。
- tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しいかまたはtile_group_deblocking_filter_disabled_flagが1に等しいタイルグループの、上または左の境界に一致するエッジ。
- tile_group_deblocking_filter_disabled_flagが1に等しいタイルグループ内のエッジ。
- 考慮される成分の8×8サンプルグリッド境界に対応しないエッジ。
- エッジの両側がインター予測を使用するクロマ成分内のエッジ。
- IntraSubPartitionsSplit値がISP_NO_SPLITに等しくないコーディングユニットのルーマ変換ブロックを横断するエッジ。
...
コーディングブロック幅log2CbW、コーディングブロック高さlog2CbH、およびコーディングブロックの左上のサンプルのロケーション( xCb, yCb )を有するコーディングユニットごとに、edgeTypeがEDGE_VERに等しくxCb % 8が0に等しいとき、またはedgeTypeがEDGE_HORに等しくyCb % 8が0に等しいとき、以下の順序付きステップによってエッジがフィルタ処理される。
- edgeTypeがEDGE_VERに等しく、かつ次の条件のうちの1つまたは複数が真である場合、filterEdgeFlagは、0に等しく設定される。
- 現在コーディングブロックの左の境界がピクチャの左の境界である。
- 現在コーディングブロックの左の境界がタイルの左の境界であり、loop_filter_across_tiles_enabled_flagが0に等しい。
- 現在コーディングブロックの左の境界がタイルグループの左の境界であり、tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- 現在コーディングブロックの左の境界が現在タイルグループの左の境界であり、次のすべての条件が満たされる。
- gdr_enabled_flagが1に等しい。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- 現在タイルグループの左の境界と境界を共有したタイルグループが存在し、そのrefreshed_region_flagの値が現在タイルグループのrefreshed_region_flagの値とは異なる。
- そうではなく、edgeTypeがEDGE_HORに等しく、かつ次の条件のうちの1つまたは複数が真である場合、変数filterEdgeFlagは、0に等しく設定される。
- 現在ルーマコーディングブロックの上の境界がピクチャの上の境界である。
- 現在コーディングブロックの上の境界がタイルの上の境界であり、loop_filter_across_tiles_enabled_flagが0に等しい。
- 現在コーディングブロックの上の境界がタイルグループの上の境界であり、tile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- 現在コーディングブロックの上の境界が現在タイルグループの上の境界であり、次のすべての条件が満たされる。
- loop_filter_across_refreshed_region_enabled_flagが0に等しい。
- 現在タイルグループの上の境界と境界を共有したタイルグループが存在し、そのrefreshed_region_flagの値が現在タイルグループのrefreshed_region_flagの値とは異なる。
- そうでない場合、filterEdgeFlagは、1に等しく設定される。
タイルが統合されると、シンタックスを適合させる。
SAOのためのCTB修正プロセスが説明される。
i = 0..nCtbSw - 1かつj = 0..nCtbSh - 1を伴うすべてのサンプルロケーション( xSi, ySj )および( xYi, yYj )に対して、recPicture[ xSi ][ ySj ]をカバーするコーディングブロックを含むコーディングユニットのpcm_loop_filter_disabled_flag、pcm_flag[ xYi ][ yYj ]、およびcu_transquant_bypass_flagの値に応じて、以下のことが適用される。
- ....
将来決定変換/量子化バイパスにおいて保留中の強調されたセクションを修正する。
- そうではなく、SaoTypeIdx[ cIdx ][ rx ][ ry ]が2に等しい場合、以下の順序付きステップが適用される。
- 修正済みのサンプルロケーション( xSik', ySjk' )および( xYik', yYik' )が、次のように導出される。
( xSik', ySjk' ) = ( xSi + hPos[ k ], ySj + vPos[ k ] ) (8-1128)
( xYik', yYjk' ) = ( cIdx = = 0 ) ? ( xSik', ySjk' ) : ( xSik' * SubWidthC, ySjk' * SubHeightC ) (8-1129)
- k = 0..1を伴うすべてのサンプルロケーション( xSik', ySjk' )および( xYik', yYjk' )に対して次の条件のうちの1つまたは複数が真である場合、edgeIdxは、0に等しく設定される。
- ロケーション( xSik', ySjk' )におけるサンプルが、ピクチャ境界の外側にある。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、現在タイルグループのrefreshed_region_flagが1に等しく、かつロケーション( xSik', ySjk' )におけるサンプルを含むタイルグループのrefreshed_region_flagが0に等しい。
- ロケーション( xSik', ySjk' )におけるサンプルが、異なるタイルグループに属し、次の2つの条件のうちの1つが真である。
- MinTbAddrZs[ xYik' >> MinTbLog2SizeY ][ yYjk' >> MinTbLog2SizeY ]がMinTbAddrZs[ xYi >> MinTbLog2SizeY ][ yYj >> MinTbLog2SizeY ]よりも小さく、サンプルrecPicture[ xSi ][ ySj ]が属するタイルグループの中のtile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- MinTbAddrZs[ xYi >> MinTbLog2SizeY ][ yYj >> MinTbLog2SizeY ]がMinTbAddrZs[ xYik' >> MinTbLog2SizeY ][ yYjk' >> MinTbLog2SizeY ]よりも小さく、サンプルrecPicture[ xSik' ][ ySjk' ]が属するタイルグループの中のtile_group_loop_filter_across_tile_groups_enabled_flagが0に等しい。
- loop_filter_across_tiles_enabled_flagが0に等しく、ロケーション( xSik', ySjk' )におけるサンプルが、異なるタイルに属する。
タイルグループを有しないタイルが組み込まれるとき、強調されたセクションを修正する。
- そうでない場合、edgeIdxは、次のように導出される。
- 以下のことが適用される。
edgeIdx = 2 + Sign( recPicture[ xSi ][ ySj ] - recPicture[ xSi + hPos[ 0 ] ][ ySj + vPos[ 0 ] ] ) + Sign( recPicture[ xSi ][ ySj ] - recPicture[ xSi + hPos[ 1 ] ][ ySj + vPos[ 1 ] ] ) (8-1130)
- edgeIdxが0、1、または2に等しいとき、edgeIdxは次のように修正される。
edgeIdx = ( edgeIdx = = 2 ) ? 0 : ( edgeIdx + 1 ) (8-1131)
saoPicture[ xSi ][ ySj ] = Clip3( 0, ( 1 << bitDepth ) - 1, recPicture[ xSi ][ ySj ] + SaoOffsetVal[ cIdx ][ rx ][ ry ][ edgeIdx ] ) (8-1132)
ALFのためのルーマサンプルに対するコーディングツリーブロックフィルタ処理プロセスが説明される。
...
フィルタ処理済みの再構成ルーマサンプルalfPictureL[ x ][ y ]の導出のために、現在のルーマコーディングツリーブロックの内側の各再構成ルーマサンプルrecPictureL[ x ][ y ]が、x, y = 0..CtbSizeY - 1を伴って次のようにフィルタ処理される。
- ...
- ルーマサンプルの所与のアレイrecPictureの内側の対応するルーマサンプル( x, y )の各々に対するロケーション( hx, vy )は、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary, rightBoundary, xCtb + x ) (8-1140)
vy = Clip3( topBoundary, botBoundary, yCtb + y ) (8-1141)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples - 1, xCtb + x ) (8-1140)
vy = Clip3( 0, pic_height_in_luma_samples - 1, yCtb + y ) (8-1141)
- ...
...
ルーマサンプルの所与のアレイrecPictureの内側の対応するルーマサンプル( x, y )の各々に対するロケーション( hx, vy )が、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary, rightBoundary, x ) (8-1140)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples - 1, x ) (8-1145)
vy = Clip3( 0, pic_height_in_luma_samples - 1, y ) (8-1146)
...
フィルタ処理済みの再構成クロマサンプルalfPicture[ x ][ y ]の導出のために、現在のクロマコーディングツリーブロックの内側の各再構成クロマサンプルrecPicture[ x ][ y ]が、x, y = 0..ctbSizeC - 1を伴って次のようにフィルタ処理される。
- クロマサンプルの所与のアレイrecPictureの内側の対応するクロマサンプル( x, y )の各々に対するロケーション( hx, vy )が、次のように導出される。
- gdr_enabled_flagが1に等しく、loop_filter_across_refreshed_region_enabled_flagが0に等しく、ロケーション( x, y )におけるルーマサンプルを含むタイルグループtgAのrefreshed_region_flagが1に等しい場合、以下のことが適用される。
- ロケーション( hx, vy )が別のタイルグループtgBの中に位置し、かつtgBのrefreshed_region_flagが0に等しい場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、TGRefreshedLeftBoundary、TGRefreshedRightBoundary、TGRefreshedTopBoundary、およびTGRefreshedBotBoundaryに等しく設定される。
- そうでない場合、変数leftBoundary、rightBoundary、topBoundary、およびbotBoundaryは、それぞれ、PicRefreshedLeftBoundaryPos、PicRefreshedRightBoundaryPos、PicRefreshedTopBoundaryPos、およびPicRefreshedBotBoundaryPosに等しく設定される。
hx = Clip3( leftBoundary / SubWidthC, rightBoundary / SubWidthC, xCtbC + x ) (8-1140)
vy = Clip3( topBoundary / SubWidthC, botBoundary / SubWidthC, yCtbC + y ) (8-1141)
- そうでない場合、以下のことが適用される。
hx = Clip3( 0, pic_width_in_luma_samples / SubWidthC - 1, xCtbC + x ) (8-1177)
vy = Clip3( 0, pic_height_in_luma_samples / SubHeightC - 1, yCtbC + y ) (8-1178)
12 ソースデバイス
14 宛先デバイス
16 コンピュータ可読媒体
18 ビデオソース
20 ビデオエンコーダ
22 出力インターフェース
28 入力インターフェース
30 ビデオデコーダ
32 ディスプレイデバイス
40 モード選択ユニット
42 動き推定ユニット
44 動き補償ユニット
46 イントラ予測ユニット
48 区分ユニット
50 加算器
52 変換処理ユニット
54 量子化ユニット
56 エントロピーコーディングユニット
58 逆量子化ユニット
60 逆変換ユニット
62 加算器
64 参照フレームメモリ
70 エントロピー復号ユニット
72 動き補償ユニット
74 イントラ予測ユニット
76 逆量子化ユニット
78 逆変換ユニット
80 加算器
82 参照フレームメモリ
402 IRAPピクチャ
404 リーディングピクチャ
406 トレーリングピクチャ
408 復号順序
410 提示順序
502 GDRピクチャ
504 トレーリングピクチャ
506 リカバリポイントピクチャ
508 コーディングされたビデオシーケンス
510 リフレッシュ済みの/クリーンな領域
512 リフレッシュされていない/ダーティな領域
602 現在ピクチャ
604 参照ピクチャ
604 リフレッシュ済みの領域
606 リフレッシュ済みの領域
608 リフレッシュされていない領域
610 動きベクトル
612 参照ブロック
614 現在ブロック
702 GDRピクチャ
704 トレーリングピクチャ
706 リカバリポイントピクチャ
708 CVS
730 NALユニット
750 ビデオビットストリーム
752 シーケンスパラメータセット(SPS)
754 ピクチャパラメータセット(PPS)
756 スライスヘッダ
758 画像データ
760 ピクチャ
1000 ビデオコーディングデバイス
1010 入口ポート
1020 受信器ユニット(Rx)
1030 プロセッサ
1040 送信器ユニット(Tx)
1050 出口ポート
1060 メモリ
1070 コーディングモジュール
1080 I/Oデバイス
1100 コーディングするための手段
1101 受信手段
1102 ビデオコーディングデバイス
1103 記憶手段
1105 処理手段
1107 送信手段
Claims (20)
- ビデオデコーダによって実施される、コーディングされたビデオビットストリームを復号する方法であって、
前記ビデオデコーダが、前記コーディングされたビデオビットストリームを受信するステップであって、前記コーディングされたビデオビットストリームは、コーディングされたビデオシーケンス(CVS)に対応する漸次復号リフレッシュ(GDR)フラグを含む、ステップと、
前記ビデオデコーダが、前記CVSの中にGDRピクチャが存在するかどうかを前記GDRフラグの値に基づいて決定するステップと、
前記GDRピクチャが存在することを前記GDRフラグの前記値が示すとき、前記ビデオデコーダが、前記GDRピクチャにおいて前記CVSの復号を開始するステップと、
前記ビデオデコーダが、復号された前記CVSに従って画像を生成するステップと
を含む、方法。 - 前記GDRフラグは、前記ビットストリームのシーケンスパラメータセットの中に含まれる、請求項1に記載の方法。
- 前記GDRフラグはgdr_enabled_flagと指定される、請求項1または2に記載の方法。
- 前記GDRが有効化されているとき、前記GDRフラグの前記値は1である、請求項1から3のいずれか一項に記載の方法。
- 前記GDRピクチャが前記ビデオビットストリームの前記CVSの中に存在しないとき、前記GDRフラグは第2の値に設定されるように構成される、請求項1から4のいずれか一項に記載の方法。
- 前記GDRフラグの前記第2の値は0である、請求項5に記載の方法。
- ビデオエンコーダによって実施される、ビデオビットストリームを符号化する方法であって、
ビデオエンコーダが、前記ビデオビットストリームのコーディングされたビデオシーケンス(CVS)の中に漸次デコーダリフレッシュ(GDR)ピクチャを符号化するステップと、
前記ビデオエンコーダが、GDRフラグを前記GDRピクチャが前記ビデオビットストリームの前記CVSの中に存在することを示すための第1の値に設定するステップと、
前記ビデオエンコーダが、ビデオデコーダに向かう送信のために前記ビデオビットストリームを記憶するステップと
を含む、方法。 - 前記GDRフラグは、前記ビデオビットストリームのシーケンスパラメータセットの中に符号化される、請求項7に記載の方法。
- 前記GDRフラグはgdr_enabled_flagと指定される、請求項7または8に記載の方法。
- 前記GDRが有効化されているとき、前記GDRフラグの前記第1の値は1である、請求項7から9のいずれか一項に記載の方法。
- 前記GDRピクチャが前記ビデオビットストリームの前記CVSの中に存在しないとき、前記GDRフラグは第2の値に設定されるように構成される、請求項7から10のいずれか一項に記載の方法。
- 前記GDRフラグの前記第2の値は0である、請求項7から11のいずれか一項に記載の方法。
- 復号デバイスであって、
コーディングされたビデオビットストリームを受信するように構成された受信器と、
前記受信器に結合されたメモリであって、命令を記憶する、メモリと、
前記メモリに結合されたプロセッサとを備え、前記プロセッサは、前記復号デバイスに、
前記コーディングされたビデオビットストリームを受信することであって、前記コーディングされたビデオビットストリームは、コーディングされたビデオシーケンス(CVS)に対応する漸次復号リフレッシュ(GDR)フラグを含む、ことと、
GDRピクチャが前記CVSの中に存在するかどうかを前記GDRフラグの値に基づいて決定することと、
前記GDRピクチャが存在することを前記GDRフラグの前記値が示すとき、前記GDRピクチャにおいて前記CVSの復号を開始することと、
復号された前記CVSに従って画像を生成することと
をさせるために、前記命令を実行するように構成される、
復号デバイス。 - 生成された前記画像を表示するように構成されたディスプレイをさらに備える、請求項13に記載の復号デバイス。
- 符号化デバイスであって、
命令を含むメモリと、
前記メモリに結合されたプロセッサであって、前記符号化デバイスに、
前記ビデオビットストリームのコーディングされたビデオシーケンス(CVS)の中で漸次デコーダリフレッシュ(GDR)ピクチャを符号化することと、
前記GDRピクチャが前記ビデオビットストリームの前記CVSの中に存在することを示すための第1の値にGDRフラグを設定することと
をさせるために、前記命令を実施するように構成された、プロセッサと、
前記プロセッサに結合された送信器であって、ビデオデコーダに向かって前記ビデオビットストリームを送信するように構成された、送信器と
を備える、符号化デバイス。 - 前記メモリは、前記送信器が前記ビデオデコーダに向かって前記CVSを送信する前に前記ビデオビットストリームを記憶する、請求項15に記載の符号化デバイス。
- 符号化すべきピクチャを受信するか、または復号すべきビットストリームを受信するように構成された、受信器と、
前記受信器に結合された送信器であって、前記ビットストリームをデコーダへ送信するか、または復号画像をディスプレイへ送信するように構成された、送信器と、
前記受信器または前記送信器のうちの少なくとも1つに結合されたメモリであって、命令を記憶するように構成された、メモリと、
前記メモリに結合されたプロセッサであって、請求項1から6のいずれか一項および請求項7から12のいずれか一項に記載の方法を行うために、前記メモリの中に記憶された前記命令を実行するように構成された、プロセッサと
を備える、コーディング装置。 - 画像を表示するように構成されたディスプレイをさらに備える、請求項17に記載のコーディング装置。
- エンコーダと、
前記エンコーダと通信しているデコーダとを備え、前記エンコーダまたは前記デコーダは、請求項13から18のいずれか一項に記載の復号デバイス、符号化デバイス、またはコーディング装置を含む、
システム。 - 符号化すべきピクチャを受信するか、または復号すべきビットストリームを受信するように構成された、受信手段と、
前記受信手段に結合された送信手段であって、前記ビットストリームを復号手段へ送信するか、または復号画像を表示手段へ送信するように構成された、送信手段と、
前記受信手段または前記送信手段のうちの少なくとも1つに結合された記憶手段であって、命令を記憶するように構成された、記憶手段と、
前記記憶手段に結合された処理手段であって、請求項1から6のいずれか一項および請求項7から12のいずれか一項に記載の方法を行うために、前記記憶手段の中に記憶された前記命令を実行するように構成された、処理手段と
を備える、コーディングするための手段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023184082A JP2024008969A (ja) | 2019-03-11 | 2023-10-26 | エンコーダ、デコーダ、および対応する方法 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962816722P | 2019-03-11 | 2019-03-11 | |
US62/816,722 | 2019-03-11 | ||
US201962871020P | 2019-07-05 | 2019-07-05 | |
US62/871,020 | 2019-07-05 | ||
PCT/US2020/022180 WO2020185957A1 (en) | 2019-03-11 | 2020-03-11 | Gradual decoding refresh in video coding |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023184082A Division JP2024008969A (ja) | 2019-03-11 | 2023-10-26 | エンコーダ、デコーダ、および対応する方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022524618A true JP2022524618A (ja) | 2022-05-09 |
JP7399977B2 JP7399977B2 (ja) | 2023-12-18 |
Family
ID=72426295
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021554984A Active JP7399977B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダ、および対応する方法 |
JP2021554982A Active JP7337948B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダ、および対応する方法 |
JP2021555265A Active JP7302000B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダ、および対応する方法 |
JP2021554681A Active JP7364685B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダおよび対応する方法 |
JP2023101903A Pending JP2023130378A (ja) | 2019-03-11 | 2023-06-21 | エンコーダ、デコーダ、および対応する方法 |
JP2023135533A Pending JP2023160851A (ja) | 2019-03-11 | 2023-08-23 | エンコーダ、デコーダ、および対応する方法 |
JP2023173335A Pending JP2023181208A (ja) | 2019-03-11 | 2023-10-05 | エンコーダ、デコーダおよび対応する方法 |
JP2023184082A Pending JP2024008969A (ja) | 2019-03-11 | 2023-10-26 | エンコーダ、デコーダ、および対応する方法 |
Family Applications After (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021554982A Active JP7337948B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダ、および対応する方法 |
JP2021555265A Active JP7302000B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダ、および対応する方法 |
JP2021554681A Active JP7364685B2 (ja) | 2019-03-11 | 2020-03-11 | エンコーダ、デコーダおよび対応する方法 |
JP2023101903A Pending JP2023130378A (ja) | 2019-03-11 | 2023-06-21 | エンコーダ、デコーダ、および対応する方法 |
JP2023135533A Pending JP2023160851A (ja) | 2019-03-11 | 2023-08-23 | エンコーダ、デコーダ、および対応する方法 |
JP2023173335A Pending JP2023181208A (ja) | 2019-03-11 | 2023-10-05 | エンコーダ、デコーダおよび対応する方法 |
JP2023184082A Pending JP2024008969A (ja) | 2019-03-11 | 2023-10-26 | エンコーダ、デコーダ、および対応する方法 |
Country Status (8)
Country | Link |
---|---|
US (7) | US11632545B2 (ja) |
EP (5) | EP4432649A2 (ja) |
JP (8) | JP7399977B2 (ja) |
KR (4) | KR20210132197A (ja) |
CN (4) | CN113924781A (ja) |
BR (1) | BR112021017985A2 (ja) |
MX (4) | MX2021011012A (ja) |
WO (4) | WO2020185957A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022526088A (ja) * | 2019-03-11 | 2022-05-23 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | エンコーダ、デコーダ、および対応する方法 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112534810A (zh) * | 2018-08-06 | 2021-03-19 | 夏普株式会社 | 运动图像解码装置以及运动图像编码装置 |
BR112021002832A2 (pt) * | 2018-08-17 | 2021-05-04 | Huawei Technologies Co., Ltd. | gerenciamento de imagem de referência em codificação de vídeo |
CN113924784B (zh) * | 2019-03-12 | 2024-06-11 | 现代自动车株式会社 | 用于编码和解码影像的方法 |
GB2617304B (en) * | 2019-03-20 | 2024-04-03 | V Nova Int Ltd | Residual filtering in signal enhancement coding |
ES2953120T3 (es) * | 2019-04-23 | 2023-11-08 | Guangdong Oppo Mobile Telecommunications Corp Ltd | Método de decodificación de imágenes, decodificador y medio de almacenamiento |
CN114930825A (zh) | 2019-12-26 | 2022-08-19 | 字节跳动有限公司 | 用于在编解码图片中实现解码顺序的技术 |
US11758171B2 (en) | 2019-12-27 | 2023-09-12 | Alibaba Group Holding Limited | Methods and systems for performing gradual decoding refresh processing on pictures |
JP7460790B2 (ja) * | 2020-03-19 | 2024-04-02 | バイトダンス インコーポレイテッド | 参照ピクチャ順序の制約 |
US11533499B2 (en) * | 2020-03-31 | 2022-12-20 | Tencent America LLC | Method for signaling mixed NAL unit type and subpicture partitioning in coded video stream |
US11496730B2 (en) * | 2020-04-03 | 2022-11-08 | Electronics And Telecommunications Research Institute | Method, apparatus and storage medium for image encoding/decoding using subpicture |
WO2022174431A1 (zh) * | 2021-02-20 | 2022-08-25 | 深圳市大疆创新科技有限公司 | 图像传输方法、可移动平台、设备及计算机可读存储介质 |
CN114630122B (zh) | 2021-03-19 | 2023-04-28 | 杭州海康威视数字技术股份有限公司 | 基于自适应帧内刷新机制的解码、编码方法及相关设备 |
EP4415099A1 (en) | 2021-10-06 | 2024-08-14 | Soulbrain Co., Ltd. | Electrolyte and secondary battery comprising same |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051915A1 (en) * | 2012-09-28 | 2014-04-03 | Qualcomm Incorporated | Signaling of regions of interest and gradual decoding refresh in video coding |
WO2014107723A1 (en) * | 2013-01-07 | 2014-07-10 | Qualcomm Incorporated | Gradual decoding refresh with temporal scalability support in video coding |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8300690B2 (en) | 2002-07-16 | 2012-10-30 | Nokia Corporation | Method for random access and gradual picture refresh in video coding |
US20040260827A1 (en) * | 2003-06-19 | 2004-12-23 | Nokia Corporation | Stream switching based on gradual decoder refresh |
EP2119187B1 (en) * | 2007-02-23 | 2017-07-19 | Nokia Technologies Oy | Backward-compatible characterization of aggregated media data units |
TW201032597A (en) * | 2009-01-28 | 2010-09-01 | Nokia Corp | Method and apparatus for video coding and decoding |
TW201210325A (en) * | 2010-07-21 | 2012-03-01 | Nokia Corp | Method and apparatus for indicating switching points in a streaming session |
US9237356B2 (en) * | 2011-09-23 | 2016-01-12 | Qualcomm Incorporated | Reference picture list construction for video coding |
US9264717B2 (en) * | 2011-10-31 | 2016-02-16 | Qualcomm Incorporated | Random access with advanced decoded picture buffer (DPB) management in video coding |
US9124895B2 (en) * | 2011-11-04 | 2015-09-01 | Qualcomm Incorporated | Video coding with network abstraction layer units that include multiple encoded picture partitions |
US9736476B2 (en) * | 2012-04-27 | 2017-08-15 | Qualcomm Incorporated | Full random access from clean random access pictures in video coding |
AU2013282644B2 (en) | 2012-06-25 | 2016-05-12 | Nec Corporation | Video encoding/decoding device, method, and program |
US9225978B2 (en) * | 2012-06-28 | 2015-12-29 | Qualcomm Incorporated | Streaming adaption based on clean random access (CRA) pictures |
US9648322B2 (en) * | 2012-07-10 | 2017-05-09 | Qualcomm Incorporated | Coding random access pictures for video coding |
US10003815B2 (en) * | 2013-06-03 | 2018-06-19 | Qualcomm Incorporated | Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures |
EP3039861A1 (en) * | 2013-08-28 | 2016-07-06 | Cisco Technology, Inc. | Support for trick modes in hevc streams |
WO2015047162A1 (en) * | 2013-09-26 | 2015-04-02 | Telefonaktiebolaget L M Ericsson (Publ) | Hybrid codec scalable video |
CN106416250B (zh) * | 2013-12-02 | 2020-12-04 | 诺基亚技术有限公司 | 视频编码和解码 |
US10560710B2 (en) * | 2014-01-03 | 2020-02-11 | Qualcomm Incorporated | Method for coding recovery point supplemental enhancement information (SEI) messages and region refresh information SEI messages in multi-layer coding |
US10136152B2 (en) * | 2014-03-24 | 2018-11-20 | Qualcomm Incorporated | Use of specific HEVC SEI messages for multi-layer video codecs |
JP6398569B2 (ja) * | 2014-10-07 | 2018-10-03 | 株式会社ソシオネクスト | 画像符号化装置、画像符号化方法および画像符号化プログラム |
WO2017052626A1 (en) * | 2015-09-25 | 2017-03-30 | Intel Corporation | Power gate with metal on both sides |
US20170111642A1 (en) * | 2015-10-14 | 2017-04-20 | Qualcomm Incorporated | Support of random access and switching of layers and sub-layers in multi-layer video files |
US10638147B2 (en) * | 2018-06-01 | 2020-04-28 | Apple Inc. | Gradual decoder refresh techniques with management of reference pictures |
US10972755B2 (en) * | 2018-12-03 | 2021-04-06 | Mediatek Singapore Pte. Ltd. | Method and system of NAL unit header structure for signaling new elements |
US11956471B2 (en) * | 2018-12-20 | 2024-04-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Normative indication of recovery point |
JP7399977B2 (ja) * | 2019-03-11 | 2023-12-18 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | エンコーダ、デコーダ、および対応する方法 |
EP3939305A4 (en) * | 2019-03-11 | 2022-12-21 | Telefonaktiebolaget Lm Ericsson (Publ) | PROCEDURE FOR RECOVERY POINT PROCESS FOR VIDEO ENCODER AND ASSOCIATED DEVICE |
US11228777B2 (en) * | 2019-12-30 | 2022-01-18 | Tencent America LLC | Method for layerwise random access in a coded video stream |
KR20220141794A (ko) * | 2020-03-05 | 2022-10-20 | 엘지전자 주식회사 | 혼성 nal 유닛 타입에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
-
2020
- 2020-03-11 JP JP2021554984A patent/JP7399977B2/ja active Active
- 2020-03-11 MX MX2021011012A patent/MX2021011012A/es unknown
- 2020-03-11 EP EP24185878.6A patent/EP4432649A2/en active Pending
- 2020-03-11 MX MX2021011013A patent/MX2021011013A/es unknown
- 2020-03-11 JP JP2021554982A patent/JP7337948B2/ja active Active
- 2020-03-11 EP EP20769626.1A patent/EP3928508A4/en active Pending
- 2020-03-11 EP EP20770334.9A patent/EP3928512A4/en not_active Ceased
- 2020-03-11 JP JP2021555265A patent/JP7302000B2/ja active Active
- 2020-03-11 CN CN202080020589.5A patent/CN113924781A/zh active Pending
- 2020-03-11 EP EP20768948.0A patent/EP3928511A4/en not_active Ceased
- 2020-03-11 BR BR112021017985A patent/BR112021017985A2/pt unknown
- 2020-03-11 CN CN202080020603.1A patent/CN113557733A/zh active Pending
- 2020-03-11 WO PCT/US2020/022180 patent/WO2020185957A1/en active Application Filing
- 2020-03-11 WO PCT/US2020/022179 patent/WO2020185956A1/en unknown
- 2020-03-11 JP JP2021554681A patent/JP7364685B2/ja active Active
- 2020-03-11 KR KR1020217032625A patent/KR20210132197A/ko not_active Application Discontinuation
- 2020-03-11 EP EP20770691.2A patent/EP3928520A4/en active Pending
- 2020-03-11 WO PCT/US2020/022182 patent/WO2020185959A1/en unknown
- 2020-03-11 MX MX2021011038A patent/MX2021011038A/es unknown
- 2020-03-11 CN CN202080020573.4A patent/CN113557722A/zh active Pending
- 2020-03-11 WO PCT/US2020/022185 patent/WO2020185962A1/en unknown
- 2020-03-11 CN CN202080020529.3A patent/CN113615175A/zh active Pending
- 2020-03-11 MX MX2021011014A patent/MX2021011014A/es unknown
- 2020-03-11 KR KR1020217032495A patent/KR20210134774A/ko not_active Application Discontinuation
- 2020-03-11 KR KR1020217032535A patent/KR20210134036A/ko not_active Application Discontinuation
- 2020-03-11 KR KR1020217032492A patent/KR20210134390A/ko not_active Application Discontinuation
-
2021
- 2021-09-09 US US17/470,776 patent/US11632545B2/en active Active
- 2021-09-09 US US17/470,791 patent/US11856189B2/en active Active
- 2021-09-09 US US17/470,798 patent/US11917134B2/en active Active
- 2021-09-09 US US17/470,783 patent/US20210409689A1/en active Pending
-
2023
- 2023-01-19 US US18/156,943 patent/US11973939B2/en active Active
- 2023-06-21 JP JP2023101903A patent/JP2023130378A/ja active Pending
- 2023-08-23 JP JP2023135533A patent/JP2023160851A/ja active Pending
- 2023-10-05 JP JP2023173335A patent/JP2023181208A/ja active Pending
- 2023-10-26 JP JP2023184082A patent/JP2024008969A/ja active Pending
- 2023-11-16 US US18/511,215 patent/US20240163425A1/en active Pending
-
2024
- 2024-01-22 US US18/419,297 patent/US20240244189A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051915A1 (en) * | 2012-09-28 | 2014-04-03 | Qualcomm Incorporated | Signaling of regions of interest and gradual decoding refresh in video coding |
WO2014107723A1 (en) * | 2013-01-07 | 2014-07-10 | Qualcomm Incorporated | Gradual decoding refresh with temporal scalability support in video coding |
Non-Patent Citations (3)
Title |
---|
HENDRY, YE-KUI WANG, JIANLE CHEN, AND SEUNGWOOK HONG: "AHG14/AHG17: GDR - Gradual decoding refresh", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-N0115-v1, JPN6022053365, March 2019 (2019-03-01), pages 1 - 5, ISSN: 0004946547 * |
JEAN-MARC THIESSE, AND DIDIER NICHOLSON: "Improved Cyclic Intra Refresh", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-K0212-v2, JPN6022053366, July 2018 (2018-07-01), pages 1 - 8, ISSN: 0004946545 * |
JEAN-MARC THIESSE, DIDIER NICHOLSON, AND DAVID GOMMELET: "AHG14: Updates on Intra Refresh Proposal", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-M0387-v2, JPN6022053364, January 2019 (2019-01-01), pages 1 - 13, ISSN: 0004946546 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022526088A (ja) * | 2019-03-11 | 2022-05-23 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | エンコーダ、デコーダ、および対応する方法 |
JP7302000B2 (ja) | 2019-03-11 | 2023-07-03 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | エンコーダ、デコーダ、および対応する方法 |
US11917134B2 (en) | 2019-03-11 | 2024-02-27 | Huawei Technologies Co., Ltd. | Gradual decoding refresh in video coding |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7399977B2 (ja) | エンコーダ、デコーダ、および対応する方法 | |
US11895312B2 (en) | Output of prior pictures for pictures starting a new coded video sequence in video coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211109 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230320 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230626 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231026 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20231106 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20231120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7399977 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |