BR122023027038A2 - VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD - Google Patents
VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD Download PDFInfo
- Publication number
- BR122023027038A2 BR122023027038A2 BR122023027038-0A BR122023027038A BR122023027038A2 BR 122023027038 A2 BR122023027038 A2 BR 122023027038A2 BR 122023027038 A BR122023027038 A BR 122023027038A BR 122023027038 A2 BR122023027038 A2 BR 122023027038A2
- Authority
- BR
- Brazil
- Prior art keywords
- subfigure
- sps
- flag
- value
- syntax
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000013507 mapping Methods 0.000 claims description 79
- 238000001914 filtration Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 abstract description 28
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 81
- 230000033001 locomotion Effects 0.000 description 79
- 238000010586 diagram Methods 0.000 description 71
- 241000023320 Luma <angiosperm> Species 0.000 description 48
- 239000013598 vector Substances 0.000 description 42
- 238000004458 analytical method Methods 0.000 description 26
- 239000000523 sample Substances 0.000 description 24
- 230000003044 adaptive effect Effects 0.000 description 20
- 238000013139 quantization Methods 0.000 description 18
- 238000005192 partition Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 9
- 230000011664 signaling Effects 0.000 description 9
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000002457 bidirectional effect Effects 0.000 description 7
- 239000013074 reference sample Substances 0.000 description 7
- 230000002123 temporal effect Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 238000003672 processing method Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005429 filling process Methods 0.000 description 2
- 229920000069 polyphenylene sulfide Polymers 0.000 description 2
- 208000034188 Stiff person spectrum disease Diseases 0.000 description 1
- 229920010524 Syndiotactic polystyrene Polymers 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 208000012112 ischiocoxopodopatellar syndrome Diseases 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000002490 spark plasma sintering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Abstract
Um dispositivo de decodificação de sinal de vídeo compreende um processador, em que: o processador decodifica uma sintaxe de carga útil de sequência de bytes brutos (RBSP) do conjunto de parâmetros de sequência (SPS) incluída em um fluxo de bits de um sinal de vídeo, e decodifica o fluxo de bits com base no resultado de decodificação da sintaxe de RBSP de SPS; a sintaxe de RBSP de SPS inclui um primeiro elemento de sintaxe relacionado ao número de uma ou mais subfiguras configurando uma figura, e um segundo elemento de sintaxe indicando se deve processar um limite das uma ou mais subfiguras como um limite da uma figura com base no primeiro elemento de sintaxe; e o segundo elemento de sintaxe é analisado apenas quando o número das uma ou mais subfiguras é dois ou mais.A video signal decoding device comprises a processor, wherein: the processor decodes a sequence parameter set (SPS) raw byte sequence payload syntax (RBSP) included in a bit stream of a video signal video, and decodes the bit stream based on the decoding result of the RBSP syntax of SPS; The SPS RBSP syntax includes a first syntax element relating to the number of one or more subfigures configuring a figure, and a second syntax element indicating whether to process a boundary of the one or more subfigures as a boundary of a figure based on the first syntax element; and the second syntax element is analyzed only when the number of the one or more subfigures is two or more.
Description
[001] A presente divulgação refere-se a um método de processamento de sinal de vídeo e aparelho, e mais particularmente, a um método de processamento de sinal de vídeo e aparelho para codificar ou decodificar um sinal de vídeo.[001] The present disclosure relates to a video signal processing method and apparatus, and more particularly, to a video signal processing method and apparatus for encoding or decoding a video signal.
[002] A codificação de compressão refere-se a uma série de técnicas de processamento de sinal para transmitir informações digitalizadas através de uma linha de comunicação ou armazenar informações em uma forma adequada para um meio de armazenamento. Um objeto de codificação de compressão inclui objetos como voz, vídeo e texto e, em particular, uma técnica para realizar codificação de compressão em uma imagem é chamada de compressão de vídeo. A codificação de compressão para um sinal de vídeo é realizada removendo o excesso de informações em consideração à correlação espacial, correlação temporal e correlação estocástica. No entanto, com o desenvolvimento recente de vários meios de comunicação e meios de transmissão de dados, são necessários um método e aparelho de processamento de sinal de vídeo mais eficientes.[002] Compression coding refers to a series of signal processing techniques for transmitting digitized information over a communication line or storing information in a form suitable for a storage medium. A compression coding object includes objects such as voice, video and text, and in particular, a technique for performing compression coding on an image is called video compression. Compression coding for a video signal is performed by removing excess information in consideration of spatial correlation, temporal correlation, and stochastic correlation. However, with the recent development of various communication media and data transmission media, a more efficient video signal processing method and apparatus are needed.
[003] A presente divulgação destina-se a fornecer um método de processamento de sinal de vídeo e um dispositivo para aumentar a eficiência de codificação do sinal de vídeo.[003] The present disclosure is intended to provide a video signal processing method and a device for increasing the coding efficiency of the video signal.
[004] A presente divulgação fornece um método de processamento de sinal de vídeo e um dispositivo para o mesmo.[004] The present disclosure provides a video signal processing method and a device therefor.
[005] Em detalhes, um dispositivo de decodificação de sinal de vídeo inclui um processador, em que o processador decodifica uma sintaxe de carga útil de sequência de bytes brutos (RBSP) do conjunto de parâmetros de sequência (SPS) incluída em um fluxo de bits de um sinal de vídeo, e decodifica o fluxo de bits com base em um resultado de decodificação da sintaxe de RBSP de SPS, em que a sintaxe de RBSP de SPS inclui um primeiro elemento de sintaxe relacionado ao número de pelo menos uma subfigura constituindo uma figura, e inclui um segundo elemento de sintaxe indicando se um limite da pelo menos uma subfigura é processado como um limite de uma figura com base no primeiro elemento de sintaxe, em que o segundo elemento de sintaxe é analisado apenas quando o número de pelo menos uma subfigura é pelo menos 2.[005] In detail, a video signal decoding device includes a processor, wherein the processor decodes a sequence parameter set (SPS) raw byte sequence payload syntax (RBSP) included in a video stream. bits of a video signal, and decodes the bit stream based on a decoding result of the SPS RBSP syntax, wherein the SPS RBSP syntax includes a first syntax element relating to the number of at least one subfigure constituting a figure, and includes a second syntax element indicating whether a boundary of the at least one subfigure is processed as a boundary of a figure based on the first syntax element, wherein the second syntax element is parsed only when the number of at least least one subfigure is at least 2.
[006] Além disso, na presente divulgação, um dispositivo de codificação de sinal de vídeo inclui um processador, em que o processador obtém uma sintaxe de carga útil de sequência de bytes brutos (RBSP) do conjunto de parâmetros de sequência (SPS), e codifica um fluxo de bits incluindo a sintaxe de RBSPde SPS, em que a sintaxe de RBSP de SPS inclui um primeiro elemento de sintaxe relacionado ao número de pelo menos uma subfigura constituindo uma figura, e inclui um segundo elemento de sintaxe indicando se um limite da pelo menos uma subfigura é processado como um limite de uma figura com base no primeiro elemento de sintaxe, em que o segundo elemento de sintaxe é analisado apenas quando o número de pelo menos uma subfigura é pelo menos 2.[006] Furthermore, in the present disclosure, a video signal encoding device includes a processor, wherein the processor obtains a raw byte sequence payload syntax (RBSP) from the sequence parameter set (SPS), and encodes a bit stream including the SPS RBSP syntax, wherein the SPS RBSP syntax includes a first syntax element relating to the number of at least one subfigure constituting a figure, and includes a second syntax element indicating whether a limit of the at least one subfigure is processed as a boundary of a figure based on the first syntax element, wherein the second syntax element is parsed only when the number of at least one subfigure is at least 2.
[007] Além disso, na presente divulgação, um meio legível por computador não transitório que armazena um fluxo de bits de um sinal de vídeo é fornecido, em que o fluxo de bits é codificado através de um método de codificação incluindo: obter uma sintaxe de carga útil de sequência de bytes brutos (RBSP) do conjunto de parâmetros de sequência (SPS); e codificar um fluxo de bits incluindo a sintaxe de RBSP de SPS, em que a sintaxe de RBSP de SPS inclui um primeiro elemento de sintaxe relacionado ao número de pelo menos uma subfigura constituindo uma figura, e inclui um segundo elemento de sintaxe indicando se um limite da pelo menos uma subfigura é processado como um limite de uma figura com base no primeiro elemento de sintaxe, em que o segundo elemento de sintaxe é analisado apenas quando o número de pelo menos uma subfigura é pelo menos 2.[007] Furthermore, in the present disclosure, a non-transitory computer readable medium that stores a bit stream of a video signal is provided, wherein the bit stream is encoded via a coding method including: obtaining a syntax sequence parameter set (SPS) raw byte sequence (RBSP) payload; and encoding a bit stream including the SPS RBSP syntax, wherein the SPS RBSP syntax includes a first syntax element relating to the number of at least one subfigure constituting a figure, and includes a second syntax element indicating whether a limit of the at least one subfigure is processed as a limit of a figure based on the first syntax element, wherein the second syntax element is parsed only when the number of at least one subfigure is at least 2.
[008] Além disso, na presente divulgação, o primeiro elemento de sintaxe indica um valor obtido subtraindo 1 do número de pelo menos uma subfigura.[008] Furthermore, in the present disclosure, the first syntax element indicates a value obtained by subtracting 1 from the number of at least one subfigure.
[009] Além disso, na presente divulgação, o segundo elemento de sintaxe ainda indica se a filtragem em loop é aplicada ao limite da pelo menos uma subfigura.[009] Furthermore, in the present disclosure, the second syntax element further indicates whether loop filtering is applied to the boundary of the at least one subfigure.
[010] Além disso, na presente divulgação, o valor indicado pelo primeiro elemento de sintaxe é maior do que 0.[010] Furthermore, in the present disclosure, the value indicated by the first syntax element is greater than 0.
[011] Além disso, na presente divulgação, quando o número de pelo menos uma subfigura é 1, o segundo elemento de sintaxe é inferido como um valor predefinido indicando uma operação específica.[011] Furthermore, in the present disclosure, when the number of at least one subfigure is 1, the second syntax element is inferred as a predefined value indicating a specific operation.
[012] Além disso, na presente divulgação, a sintaxe de RBSP de SPS inclui um terceiro elemento de sintaxe indicando se as informações relacionadas a pelo menos uma subfigura estão presentes, e inclui um quarto elemento de sintaxe indicando se o mapeamento de ID para a pelo menos uma subfigura está presente, em que o quarto elemento de sintaxe é analisado quando o terceiro elemento de sintaxe indica presença das informações relacionadas a pelo menos uma subfigura, e quando o quarto elemento de sintaxe indica presença do mapeamento de ID para a pelo menos uma subfigura, um valor de mapeamento de ID para a pelo menos uma subfigura é sinalizado na sintaxe de RBSP de SPS.[012] Furthermore, in the present disclosure, the SPS RBSP syntax includes a third syntax element indicating whether information related to at least one subfigure is present, and includes a fourth syntax element indicating whether the ID mapping to the at least one subfigure is present, wherein the fourth syntax element is parsed when the third syntax element indicates presence of information related to at least one subfigure, and when the fourth syntax element indicates presence of the ID mapping for the at least one a subfigure, an ID mapping value for the at least one subfigure is signaled in the SPS RBSP syntax.
[013] Além disso, na presente divulgação, quando o quarto elemento de sintaxe indica presença do mapeamento de ID para a pelo menos uma subfigura e o valor de mapeamento de ID para a pelo menos uma subfigura não é sinalizado na sintaxe de RBSP de SPS, o valor de mapeamento de ID para a pelo menos uma subfigura é sinalizado em uma sintaxe de RBSPdo conjunto de parâmetros de figura (PPS) referente à sintaxe de RBSP de SPS.[013] Furthermore, in the present disclosure, when the fourth syntax element indicates presence of the ID mapping for the at least one subfigure and the ID mapping value for the at least one subfigure is not signaled in the RBSP syntax of SPS , the ID mapping value for the at least one subfigure is signaled in a figure parameter set (PPS) RBSP syntax referring to the SPS RBSP syntax.
[014] A presente divulgação fornece um método para processar eficientemente um sinal de vídeo.[014] The present disclosure provides a method for efficiently processing a video signal.
[015] Os efeitos obtidos a partir da presente divulgação não estão limitados aos efeitos acima, e outros efeitos seriam claramente compreendidos por aquelas pessoas versadas na técnica a partir da descrição a seguir.[015] The effects obtained from the present disclosure are not limited to the above effects, and other effects would be clearly understood by those skilled in the art from the following description.
[016] A Figura 1 é um diagrama de blocos esquemático de um aparelho de codificação de sinal de vídeo de acordo com uma modalidade da presente invenção.[016] Figure 1 is a schematic block diagram of a video signal coding apparatus in accordance with an embodiment of the present invention.
[017] A Figura 2 é um diagrama de blocos esquemático de um aparelho de decodificação de sinal de vídeo de acordo com uma modalidade da presente invenção.[017] Figure 2 is a schematic block diagram of a video signal decoding apparatus in accordance with an embodiment of the present invention.
[018] A Figura 3 mostra uma modalidade na qual uma unidade de árvore de codificação é dividida em unidades de codificação em uma figura.[018] Figure 3 shows an embodiment in which a coding tree unit is divided into coding units in a figure.
[019] A Figura 4 mostra uma modalidade de um método para sinalizar uma divisão de uma árvore quaternária e uma árvore multi-tipo.[019] Figure 4 shows an embodiment of a method for signaling a split of a quaternary tree and a multi-type tree.
[020] As Figuras 5 e 6 ilustram mais especificamente um método de intrapredição de acordo com uma modalidade da presente invenção.[020] Figures 5 and 6 more specifically illustrate an intraprediction method according to an embodiment of the present invention.
[021] A Figura 7 é um diagrama que ilustra uma porção de uma estrutura de sintaxe de alto nível de acordo com uma modalidade da presente invenção.[021] Figure 7 is a diagram illustrating a portion of a high-level syntax structure in accordance with an embodiment of the present invention.
[022] A Figura 8 é um diagrama que ilustra um tipo de unidade de camada abstrata de rede (NAL) de acordo com uma modalidade da presente invenção.[022] Figure 8 is a diagram illustrating a type of network abstract layer unit (NAL) in accordance with an embodiment of the present invention.
[023] A Figura 9 é um diagrama que ilustra que uma figura é dividida em CTUs, blocos, e fatias de acordo com uma modalidade da presente invenção.[023] Figure 9 is a diagram illustrating that a figure is divided into CTUs, blocks, and slices according to an embodiment of the present invention.
[024] A Figura 10 é um diagrama que ilustra que uma figura é dividida em uma pluralidade de subfigura de acordo com uma modalidade da presente invenção.[024] Figure 10 is a diagram illustrating that a figure is divided into a plurality of subfigures in accordance with an embodiment of the present invention.
[025] A Figura 11 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[025] Figure 11 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[026] A Figura 12 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[026] Figure 12 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[027] A Figura 13 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[027] Figure 13 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[028] A Figura 14 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[028] Figure 14 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[029] A Figura 15 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[029] Figure 15 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[030] A Figura 16 ilustra uma estrutura de sintaxe e semântica de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[030] Figure 16 illustrates an RBSP syntax and semantic structure of a set of figure parameters according to an embodiment of the present invention.
[031] A Figura 17 é um diagrama que ilustra um método para determinar uma variável de matriz Subpicldl_ist[i] de acordo com uma modalidade da presente invenção.[031] Figure 17 is a diagram illustrating a method for determining a Subpicldl_ist[i] matrix variable in accordance with an embodiment of the present invention.
[032] A Figura 18 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[032] Figure 18 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[033] A Figura 19 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[033] Figure 19 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[034] A Figura 20 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[034] Figure 20 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[035] A Figura 21 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[035] Figure 21 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[036] A Figura 22 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[036] Figure 22 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[037] A Figura 23 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[037] Figure 23 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[038] A Figura 24 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[038] Figure 24 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[039] A Figura 25 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[039] Figure 25 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[040] A Figura 26 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[040] Figure 26 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[041] A Figura 27 é um diagrama que ilustra elemento de sintaxe subpic_id_mapping_in_pps_flag incluído em um conjunto de parâmetro de figura de acordo com uma modalidade da presente invenção.[041] Figure 27 is a diagram illustrating subpic_id_mapping_in_pps_flag syntax element included in a figure parameter set in accordance with an embodiment of the present invention.
[042] A Figura 28 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[042] Figure 28 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[043] A Figura 29 é um diagrama que ilustra uma unidade de camada abstrata de rede (NAL) que é uma unidade básica constituindo um fluxo de bits de acordo com uma modalidade da presente invenção.[043] Figure 29 is a diagram illustrating a network abstract layer unit (NAL) which is a basic unit constituting a bit stream in accordance with an embodiment of the present invention.
[044] A Figura 30 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de decodificação, uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência, e uma estrutura de sintaxe de nível de camada de perfil de acordo com uma modalidade da presente invenção.[044] Figure 30 is a diagram illustrating a decoding parameter set RBSP syntax structure, a sequence parameter set RBSP syntax structure, and a profile layer level syntax structure in accordance with with an embodiment of the present invention.
[045] A Figura 31 é um diagrama que ilustra uma sintaxe de RBSP de conjunto de parâmetros de vídeo e uma sintaxe geral de informação de restrição de acordo com uma modalidade da presente invenção.[045] Figure 31 is a diagram illustrating a video parameter set RBSP syntax and a general constraint information syntax in accordance with an embodiment of the present invention.
[046] A Figura 32 é um diagrama que ilustra uma sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[046] Figure 32 is a diagram illustrating a sequence parameter set RBSP syntax in accordance with an embodiment of the present invention.
[047] A Figura 33 é um diagrama que ilustra uma sintaxe de RBSPde conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[047] Figure 33 is a diagram illustrating a sequence parameter set RBSP syntax in accordance with an embodiment of the present invention.
[048] A Figura 34 é um diagrama que ilustra uma sintaxe de RBSPde conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[048] Figure 34 is a diagram illustrating a sequence parameter set RBSP syntax in accordance with an embodiment of the present invention.
[049] A Figura 35 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[049] Figure 35 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[050] A Figura 36 é um diagrama que ilustra uma sintaxe geral de informação de restrição estrutura de acordo com uma modalidade da presente invenção.[050] Figure 36 is a diagram illustrating a general syntax of structure restriction information in accordance with an embodiment of the present invention.
[051] Os termos usados neste relatório descritivo podem ser termos gerais atualmente amplamente utilizados em consideração às funções da presente invenção, mas podem variar de acordo com as intenções das pessoas versadas na técnica, costumes ou o advento de novas tecnologias. Além disso, em certos casos, pode haver termos que o requerente seleciona arbitrariamente e, neste caso, seus significados são descritos em uma parte de descrição correspondente da presente invenção. Assim, os termos usados nesta especificação devem ser interpretados com base nos significados substanciais dos termos e conteúdos em todo o relatório descritivo.[051] The terms used in this specification may be general terms currently widely used in consideration of the functions of the present invention, but may vary according to the intentions of those skilled in the art, customs or the advent of new technologies. Furthermore, in certain cases, there may be terms that the applicant selects arbitrarily, in which case their meanings are described in a corresponding description part of the present invention. Accordingly, terms used in this specification should be interpreted based on the substantial meanings of the terms and contents throughout the specification.
[052] Neste relatório descritivo, alguns termos podem ser interpretados como segue. A codificação pode ser interpretada como codificação ou decodificação em alguns casos. No presente relatório descritivo, um aparelho para gerar um fluxo de bits de sinal de vídeo realizando a encodificação (codificação) de um sinal de vídeo é denominado como um aparelho de codificação ou um codificador, e um aparelho que realiza a decodificação (decodificação) de um fluxo de bits de sinal de vídeo para reconstruir um sinal de vídeo é denominado como um aparelho de decodificação ou decodificador. Além disso, neste relatório descritivo, o aparelho de processamento de sinal de vídeo é usado como um termo de um conceito que inclui um codificador e um decodificador. Informação é um termo que inclui todos os valores, parâmetros, coeficientes, elementos, etc. Em alguns casos, o significado é interpretado de forma diferente, de modo que a presente invenção não está limitada a ele. “Unidade” é usado como um significado para se referir a uma unidade básica de processamento de imagem ou a uma posição específica de uma figura e refere-se a uma região de imagem incluindo pelo menos um componente de luma e um componente de croma. Além disso, “bloco” refere-se a uma região de imagem incluindo um componente específico entre componentes de luma e componentes de croma (isto é, Cbe Cr). No entanto, dependendo da modalidade, termos como “unidade”, “bloco”, “partição” e “região” podem ser usados alternadamente. Além disso, nesta especificação, uma unidade pode ser usada como um conceito incluindo toda uma unidade de codificação, uma unidade de predição e uma unidade de transformada. Afigura indica um campo ou quadro e, de acordo com uma modalidade, os termos podem ser usados alternadamente.[052] In this specification, some terms can be interpreted as follows. Encoding can be interpreted as encoding or decoding in some cases. In the present specification, an apparatus for generating a video signal bit stream by performing encoding (coding) of a video signal is referred to as a coding apparatus or an encoder, and an apparatus that performs decoding (decoding) of a stream of video signal bits to reconstruct a video signal is termed as a decoding apparatus or decoder. Furthermore, in this specification, video signal processing apparatus is used as a term for a concept that includes an encoder and a decoder. Information is a term that includes all values, parameters, coefficients, elements, etc. In some cases, the meaning is interpreted differently, so the present invention is not limited to it. “Unit” is used as a meaning to refer to a basic image processing unit or a specific position of a figure and refers to an image region including at least one luma component and one chroma component. Furthermore, “block” refers to an image region including a specific component between luma components and chroma components (i.e., Cbe Cr). However, depending on the modality, terms such as “unit”, “block”, “partition” and “region” may be used interchangeably. Furthermore, in this specification, a unit can be used as a concept including an entire coding unit, a prediction unit and a transform unit. A figure indicates a field or frame and, according to an embodiment, the terms may be used interchangeably.
[053] A Figura 1 é um diagrama de blocos esquemático de um aparelho de codificação de sinal de vídeo 100 de acordo com uma modalidade da presente invenção. Com referência à Figura 1, o aparelho de codificação 100 da presente invenção inclui uma unidade de transformada 110, uma unidade de quantização 115, uma unidade de quantização inversa 120, uma unidade de transformada inversa 125, uma unidade de filtragem 130, uma unidade de predição 150, e uma unidade de codificação de entropia 160.[053] Figure 1 is a schematic block diagram of a video signal coding apparatus 100 in accordance with an embodiment of the present invention. Referring to Figure 1, the coding apparatus 100 of the present invention includes a transform unit 110, a quantization unit 115, an inverse quantization unit 120, an inverse transform unit 125, a filtering unit 130, a prediction 150, and an entropy coding unit 160.
[054] A unidade de transformada 110 obtém um valor de um coeficiente de transformada transformando um sinal residual, que é uma diferença entre o sinal de vídeo de entrada e o sinal previsto gerado pela unidade de predição 150. Por exemplo, uma Transformada de Cosseno Discreta (DCT), uma Transformada de Seno Discreta (DST) ou uma Transformada de Wavelet pode ser usada. O DCT e o DST realizam a transformada dividindo o sinal da figura de entrada em blocos. Na transformada, a eficiência de codificação pode variar de acordo com a distribuição e características dos valores na região de transformada. A unidade de quantização 115 quantifica o valor do valor do coeficiente de transformada emitido da unidade de transformada 110.[054] The transform unit 110 obtains a value of a transform coefficient by transforming a residual signal, which is a difference between the input video signal and the predicted signal generated by the prediction unit 150. For example, a Cosine Transform Discrete Sine Transform (DCT), a Discrete Sine Transform (DST) or a Wavelet Transform can be used. DCT and DST perform the transform by dividing the input figure signal into blocks. In the transform, the coding efficiency can vary according to the distribution and characteristics of the values in the transform region. The quantization unit 115 quantifies the value of the transform coefficient value output from the transform unit 110.
[055] De modo a melhorar a eficiência de codificação, em vez de codificar o sinal de figura como está, um método de prever uma figura usando uma região já codificada através da unidade de predição 150 e obter uma figura reconstruída adicionando um valor residual entre a figura original e a figura predita para a figura predita é usada. Para evitar incompatibilidades no codificador e no decodificador, as informações que podem ser usadas no decodificadordevem ser usadas ao realizara predição no codificador. Para isso, o codificador realiza novamente um processo de reconstrução do bloco atual codificado. A unidade de quantização inversa 120 quantiza inversamente o valor do coeficiente de transformada, e a unidade de transformada inversa 125 reconstrói o valor residual usando o valor do coeficiente de transformada quantizado inverso. Enquanto isso, a unidade de filtragem 130 realiza operações de filtragem para melhorar a qualidade da figura reconstruída e para melhorar a eficiência de codificação. Por exemplo, um filtro de desbloqueio, um desvio adaptativo de amostra (SAO) e um filtro de loop adaptativo podem ser incluídos. A figura filtrada é emitida ou armazenada em um buffer de figura decodificado (DPB) 156 para uso como uma figura de referência.[055] In order to improve coding efficiency, instead of encoding the figure signal as-is, a method of predicting a figure using an already encoded region through the prediction unit 150 and obtaining a reconstructed figure by adding a residual value between the original figure and the predicted figure for the predicted figure is used. To avoid incompatibilities in the encoder and decoder, information that can be used in the decoder must be used when performing prediction in the encoder. To do this, the encoder again carries out a reconstruction process of the current encoded block. The inverse quantization unit 120 inversely quantizes the transform coefficient value, and the inverse transform unit 125 reconstructs the residual value using the inverse quantized transform coefficient value. Meanwhile, the filtering unit 130 performs filtering operations to improve the quality of the reconstructed figure and to improve the coding efficiency. For example, a deblocking filter, an adaptive sample offset (SAO), and an adaptive loop filter can be included. The filtered figure is output or stored in a decoded picture buffer (DPB) 156 for use as a reference figure.
[056] De modo a aumentar a eficiência de codificação, em vez de codificar um sinal de figura como está, é usado um método para adquirir uma figura reconstruída em que uma figura é prevista usando uma região que já foi codificada através da unidade de predição 150, e um valor residual entre a figura original e a figura predita é adicionado à figura predita. Uma unidade de intrapredição 152 realiza intrapredição dentro da figura atual e uma unidade de interpredição 154 prevê a figura atual usando uma figura de referência armazenada no buffer de figura decodificado 156. A unidade de intrapredição 152 executa intrapredição de regiões reconstruídas na figura atual figura, e transmite informação de intracodificação para uma unidade de codificação de entropia 160. Novamente, a unidade de interpredição 154 pode incluir uma unidade de estimativa de movimento 154a e uma unidade de compensação de movimento 154b. A unidade de estimativa de movimento 154a obtém um valor de vetor de movimento da região atual referindo-se à região específica reconstruída. A unidade de estimativa de movimento 154a pode transmitir informação de posição (quadro de referência, vetor de movimento ou semelhante) da região de referência para a unidade de codificação de entropia 160 a ser incluída no fluxo de bits. A unidade de compensação de movimento 154b realiza compensação entre movimentos usando o valor do vetor de movimento transmitido da unidade de estimativa de movimento 154a.[056] In order to increase coding efficiency, instead of encoding a figure signal as-is, a method is used to acquire a reconstructed figure in which a figure is predicted using a region that has already been encoded through the prediction unit. 150, and a residual value between the original figure and the predicted figure is added to the predicted figure. An intra-prediction unit 152 performs intra-prediction within the current figure, and an inter-prediction unit 154 predicts the current figure using a reference figure stored in the decoded figure buffer 156. The intra-prediction unit 152 performs intra-prediction of reconstructed regions in the current figure, and transmits intracoding information to an entropy coding unit 160. Again, the interprediction unit 154 may include a motion estimation unit 154a and a motion compensation unit 154b. The motion estimation unit 154a obtains a motion vector value of the current region by referring to the specific reconstructed region. The motion estimation unit 154a may transmit position information (reference frame, motion vector, or the like) of the reference region to the entropy coding unit 160 to be included in the bit stream. The motion compensation unit 154b performs compensation between motions using the motion vector value transmitted from the motion estimation unit 154a.
[057] A unidade de predição 150 inclui uma unidade de intrapredição 152 e uma unidade de interpredição 154. A unidade de intrapredição 152 realiza intrapredição na figura atual e a unidade de interpredição 154 executa interpredição para prever a figura atual usando a figura de referência armazenada no DPB 156. A unidade de intrapredição 152 realiza intrapredição de amostras reconstruídas na figura atual e transmite informações de intracodificação para a unidade de codificação de entropia 160. A informação de intracodificação pode incluir pelo menos um de um modo de intrapredição, um sinalizador de Modo mais provável (MPM) e um índice de MPM. As informações de intracodificação podem incluir informações sobre a amostra de referência. A unidade de interpredição 154 pode incluir uma unidade de estimativa de movimento 154a e uma unidade de compensação de movimento 154b. A unidade de estimativa de movimento 154a refere-se a uma região específica da figura de referência reconstruída para obter um valor de vetor de movimento da região atual. A unidade de estimativa de movimento 154a transmite o conjunto de informações de movimento (índice de figura de referência, informação de vetor de movimento, etc.) na região de referência para a unidade de codificação de entropia 160. A unidade de compensação de movimento 154b realiza compensação de movimento usando o valor de vetor de movimento transmitido da unidade de estimativa de movimento 154a. A unidade de interpredição 154 transmite informações de intercodificação incluindo informações de movimento em uma região de referência para a unidade de codificação de entropia 160.[057] The prediction unit 150 includes an intraprediction unit 152 and an interprediction unit 154. The intraprediction unit 152 performs intraprediction on the current figure and the interprediction unit 154 performs interprediction to predict the current figure using the stored reference figure in the DPB 156. The intra-prediction unit 152 performs intra-prediction of reconstructed samples in the current figure and transmits intra-coding information to the entropy coding unit 160. The intra-coding information may include at least one of an intra-prediction mode, a Mode flag most likely (MPM) and an MPM index. Intracoding information may include information about the reference sample. The interprediction unit 154 may include a motion estimation unit 154a and a motion compensation unit 154b. Motion estimation unit 154a refers to a specific region of the reconstructed reference figure to obtain a motion vector value of the current region. The motion estimation unit 154a transmits the set of motion information (reference figure index, motion vector information, etc.) in the reference region to the entropy coding unit 160. The motion compensation unit 154b performs motion compensation using the motion vector value transmitted from the motion estimation unit 154a. The interprediction unit 154 transmits intercoding information including motion information in a reference region to the entropy coding unit 160.
[058] De acordo com uma modalidade adicional, a unidade de predição 150 pode incluir uma unidade de predição de cópia intrabloco (BC) (não ilustrada). A unidade de intrapredição de BC realiza a intrapredição de BC a partir de amostras reconstruídas na figura atual e transmite informações de intracodificação BC para uma unidade de codificação de entropia 160. A unidade de intrapredição de BC refere-se a uma região específica na figura atual e obtém um valor de vetor de bloco indicando uma região de referência a ser usada para predição da região atual. A unidade de intrapredição de BC pode realizar intrapredição de BC usando o valor de vetor de bloco obtido. A unidade de intrapredição de BC transmite a informação de intracodificação de BC para a unidade de codificação de entropia 160. A informação de intracodificação de BC pode incluir informação de vetor de bloco.[058] According to an additional embodiment, the prediction unit 150 may include an intrablock copy (BC) prediction unit (not illustrated). The BC intraprediction unit performs BC intraprediction from reconstructed samples in the current figure and transmits BC intracoding information to an entropy coding unit 160. The BC intraprediction unit refers to a specific region in the current figure and obtains a block vector value indicating a reference region to be used for prediction of the current region. The BC intraprediction unit can perform BC intraprediction using the obtained block vector value. The BC intraprediction unit transmits the BC intracoding information to the entropy coding unit 160. The BC intracoding information may include block vector information.
[059] Quando a predição de figura descrita acima é realizada, a unidade de transformada 110 transforma um valor residual entre a figura original e a figura predita para obter um valor de coeficiente de transformada. Neste caso, a transformada pode ser realizada em uma unidade de bloco específica dentro de uma figura, e o tamanho de um bloco específico pode ser variado dentro de uma faixa predefinida. A unidade de quantização 115 quantifica o valor do coeficiente de transformada gerado na unidade de transformada 110 e o transmite para a unidade de codificação de entropia 160.[059] When the figure prediction described above is performed, the transform unit 110 transforms a residual value between the original figure and the predicted figure to obtain a transform coefficient value. In this case, the transform can be performed on a specific block unit within a figure, and the size of a specific block can be varied within a predefined range. The quantization unit 115 quantifies the value of the transform coefficient generated in the transform unit 110 and transmits it to the entropy coding unit 160.
[060] A unidade de codificação de entropia 160 codifica informações de coeficientes de transformada quantificados, informações de intracodificação e informações de intercodificação para gerar um fluxo de bits de sinal de vídeo. Na unidade de codificação de entropia 160, um método de codificação de comprimento variável (VLC), um método de codificação aritmética ou semelhante pode ser usado. O método de VLC transforma os símbolos introduzidos em palavras de código sucessivas, e o comprimento das palavras de código pode ser variável. Por exemplo, símbolos que ocorrem com frequência são expressos como palavras de código curtas e símbolos que ocorrem com menos frequência são expressos como palavras de código longas. Como o método de VLC, um método de codificação de comprimento variável adaptável baseado em contexto (CAVLC) pode ser usado. A codificação aritmética transforma símbolos de dados sucessivos em um único ponto decimal, e a codificação aritmética pode obter o número ideal de bits decimais necessários para representar cada símbolo. Como codificação aritmética, a codificação aritmética adaptativa baseada em contexto (CABAC) pode ser usada. Por exemplo, a unidade de codificação de entropia 160 pode binarizar informações que representam um coeficiente de transformada quantizado. Além disso, a unidade de codificação de entropia 160 pode gerar um fluxo de bits por codificação aritmética da informação binária.[060] The entropy coding unit 160 encodes quantized transform coefficient information, intracoding information, and intercoding information to generate a video signal bit stream. In the entropy coding unit 160, a variable length coding method (VLC), an arithmetic coding method, or the like may be used. The VLC method transforms the input symbols into successive code words, and the length of the code words can be variable. For example, symbols that occur frequently are expressed as short codewords, and symbols that occur less frequently are expressed as long codewords. Like the VLC method, a context-based adaptive variable-length encoding (CAVLC) method can be used. Arithmetic coding transforms successive data symbols into a single decimal point, and arithmetic coding can obtain the optimal number of decimal bits needed to represent each symbol. As arithmetic coding, context-based adaptive arithmetic coding (CABAC) can be used. For example, the entropy coding unit 160 may binarize information representing a quantized transform coefficient. Furthermore, the entropy coding unit 160 can generate a bit stream by arithmetic coding the binary information.
[061] O fluxo de bits gerado é encapsulado usando uma unidade de camada de abstração de rede (NAL) como unidade básica. A unidade de NAL inclui um número inteiro de unidades de árvore de codificação codificadas. Para decodificar um fluxo de bits em um decodificador de vídeo, primeiro, o fluxo de bits deve ser separado em unidades de NAL e, em seguida, cada unidade de NAL separada deve ser decodificada. Enquanto isso, as informações necessárias para decodificar um fluxo de bits de sinal de vídeo podem ser transmitidas através de um conjunto de nível superior de Carga útil de sequência de bytes brutos (RBSP), como Conjunto de parâmetros de figura (PPS), Conjunto de parâmetros de sequência (SPS), Conjunto de parâmetros de vídeo (VPS) e semelhantes.[061] The generated bit stream is encapsulated using a network abstraction layer unit (NAL) as the base unit. The NAL unit includes an integer number of encoded coding tree units. To decode a bitstream in a video decoder, first, the bitstream must be separated into NAL units, and then each separate NAL unit must be decoded. Meanwhile, the information required to decode a video signal bitstream can be transmitted through a higher-level set of Raw Byte Sequence Payload (RBSP) such as Picture Parameter Set (PPS), Figure Parameter Set (PPS), Sequence Parameters (SPS), Video Parameter Set (VPS) and the like.
[062] Enquanto isso, o diagrama de blocos da Figura 1 mostra um aparelho de codificação 100 de acordo com uma modalidade da presente invenção, e blocos exibidos separadamente distinguem e mostram logicamente os elementos do aparelho de codificação 100. Consequentemente, os elementos do aparelho de codificação descrito acima 100 podem ser montados como um chip ou como uma pluralidade de chips dependendo do design do dispositivo. De acordo com uma modalidade, a operação de cada elemento do aparelho de codificação 100 descrito acima pode ser realizada por um processador (não mostrado).[062] Meanwhile, the block diagram of Figure 1 shows a coding apparatus 100 in accordance with an embodiment of the present invention, and separately displayed blocks logically distinguish and show the elements of the coding apparatus 100. Accordingly, the elements of the apparatus coding scheme described above 100 can be assembled as a chip or as a plurality of chips depending on the design of the device. According to one embodiment, the operation of each element of the coding apparatus 100 described above may be performed by a processor (not shown).
[063] A Figura 2 é um diagrama de blocos esquemático de um aparelho de decodificação de sinal de vídeo 200 de acordo com uma modalidade da presente divulgação. Com referência à Figura 2, o aparelho de decodificação 200 da presente divulgação inclui uma unidade de decodificação de entropia 210, uma unidade de desquantização 220, uma unidade de transformada inversa 225, uma unidade de filtragem 230, e uma unidade de predição 250.[063] Figure 2 is a schematic block diagram of a video signal decoding apparatus 200 in accordance with an embodiment of the present disclosure. Referring to Figure 2, the decoding apparatus 200 of the present disclosure includes an entropy decoding unit 210, a dequantization unit 220, an inverse transform unit 225, a filtering unit 230, and a prediction unit 250.
[064] A unidade de decodificação de entropia 210 decodifica por entropia um fluxo de bits de sinal de vídeo para extrair informações de coeficiente de transformada, informações de intracodificação, informações de intercodificação e semelhantes para cada região. Por exemplo, a unidade de decodificação de entropia 210 pode obter um código binário para informação de coeficiente de transformada de uma região específica do fluxo de bits do sinal de vídeo. Além disso, a unidade de decodificação de entropia 210 obtém um coeficiente de transformada quantizado por binarização inversa de um código binário. A unidade de desquantização 220 desquantiza o coeficiente de transformada quantizado, a unidade de transformada inversa 225 reconstrói um valor residual usando o coeficiente de transformada desquantizado. O dispositivo de processamento de sinal de vídeo 200 reconstrói um valor de pixel original somando o valor residual obtido pela unidade de transformada inversa 225 com um valor de predição obtido pela unidade de predição 250.[064] The entropy decoding unit 210 entropy decodes a video signal bit stream to extract transform coefficient information, intracoding information, intercoding information, and the like for each region. For example, the entropy decoding unit 210 may obtain a binary code for transform coefficient information of a specific region of the video signal bit stream. Furthermore, the entropy decoding unit 210 obtains a quantized transform coefficient by inverse binarization of a binary code. The dequantization unit 220 dequantizes the quantized transform coefficient, the inverse transform unit 225 reconstructs a residual value using the dequantized transform coefficient. The video signal processing device 200 reconstructs an original pixel value by summing the residual value obtained by the inverse transform unit 225 with a prediction value obtained by the prediction unit 250.
[065] Enquanto isso, a unidade de filtragem 230 realiza filtragem em uma figura para melhorar a qualidade da imagem. Isso pode incluirum filtro de desbloqueio para reduzir a distorção do bloco e/ou um filtro de loop adaptativo para remover a distorção de toda a figura. Afigura filtrada é emitida ou armazenada no DPB 256 para uso como figura de referência para a próxima figura.[065] Meanwhile, the filtering unit 230 performs filtering on a figure to improve image quality. This may include an unblocking filter to reduce block distortion and/or an adaptive loop filter to remove distortion from the entire figure. The filtered figure is output or stored in the DPB 256 for use as a reference figure for the next figure.
[066] A unidade de predição 250 inclui uma unidade de intrapredição 252 e uma unidade de interpredição 254. A unidade de predição 250 gera uma figura de predição usando o tipo de codificação decodificado através da unidade de decodificação de entropia 210 descrita acima, coeficientes de transformada para cada região e informações de intra/intercodificação. Para reconstruir um bloco atual no qual a decodificação é realizada, pode ser usada uma região decodificada da figura atual ou outras figuras incluindo o bloco atual. Uma figura (ou bloco/fatia) usando apenas a figura atual para reconstrução, ou seja, realizando intrapredição ou intrapredição de BC é chamada de figura intra ou figura I (ou bloco/fatia), e uma figura (ou bloco/fatia) que executa toda a intrapredição, interpredição e intrapredição de BC é denominado como uma figura inter (ou bloco/fatia). Afim de prever valores de amostra de cada bloco entre figuras (ou, blocos/fatias), uma figura (ou, bloco/fatia) usando até um vetor de movimento e um índice de figura de referência é chamada de figura preditiva ou figura P (ou, bloco/fatia) e uma figura (ou bloco/fatia) usando até dois vetores de movimento e um índice de figura de referência é chamado de figura bipreditiva ou figura B (ou bloco/fatia). Em outras palavras, a figura P (ou, bloco/fatia) usa até um conjunto de informações de movimento para prever cada bloco, e a figura B (ou, bloco/fatia) usa até dois conjuntos de informações de movimento para prever cada bloco. Aqui, o conjunto de informações de movimento inclui um ou mais vetores de movimento e um índice de figura de referência.[066] The prediction unit 250 includes an intra-prediction unit 252 and an inter-prediction unit 254. The prediction unit 250 generates a prediction figure using the coding type decoded through the entropy decoding unit 210 described above, coefficients of transformed for each region and intra/intercoding information. To reconstruct a current block on which decoding is performed, a decoded region of the current figure or other figures including the current block can be used. A figure (or block/slice) using only the current figure for reconstruction, i.e., performing BC intraprediction or intraprediction is called an intra figure or I figure (or block/slice), and a figure (or block/slice) that performs all intraprediction, interprediction and intraprediction of BC is termed as an inter figure (or block/slice). In order to predict sample values of each block between figures (or, blocks/slices), a figure (or, block/slice) using up to a motion vector and a reference figure index is called a predictive figure or P-figure ( or, block/slice) and a figure (or block/slice) using up to two motion vectors and a reference figure index is called a bipredictive figure or B-figure (or block/slice). In other words, figure P (or, block/slice) uses up to one set of motion information to predict each block, and figure B (or, block/slice) uses up to two sets of motion information to predict each block . Here, the motion information set includes one or more motion vectors and a reference figure index.
[067] A unidade de intrapredição 252 gera um bloco de predição usando as informações de intracodificação e amostras restauradas na figura atual. Conforme descrito acima, as informações de intracodificação podem incluir pelo menos um de um modo de intrapredição, um sinalizador de Modo Mais Provável (MPM) e um índice de MPM. A unidade de intrapredição 252 prevê os valores de amostra do bloco atual usando as amostras restauradas localizadas no lado esquerdo e/ou superior do bloco atual como amostras de referência. Nesta divulgação, amostras restauradas, amostras de referência e amostras do bloco atual podem representar pixels. Além disso, os valores de amostra podem representar valores de pixel.[067] The intraprediction unit 252 generates a prediction block using the intracoding information and samples restored in the current figure. As described above, the intracoding information may include at least one of an intraprediction mode, a Most Probable Mode (MPM) flag, and an MPM index. The intraprediction unit 252 predicts the sample values of the current block using the restored samples located on the left and/or top side of the current block as reference samples. In this disclosure, restored samples, reference samples, and samples from the current block may represent pixels. Additionally, sampled values can represent pixel values.
[068] De acordo com uma modalidade, as amostras de referência podem ser amostras incluídas em um bloco vizinho do bloco atual. Por exemplo, as amostras de referência podem ser amostras adjacentes ao limite esquerdo do bloco atual e/ou amostras adjacentes ao limite superior. Além disso, as amostras de referência podem ser amostras localizadas em uma linha dentro de uma distância predeterminada do limite esquerdo do bloco atual e/ou amostras localizadas em uma linha dentro de uma distância predeterminada do limite superior do bloco atual entre as amostras de blocos vizinhos do bloco atual. Neste caso, o bloco vizinho do bloco atual pode incluir o bloco esquerdo (L), o bloco superior (A), o bloco inferior esquerdo (BL), o bloco superior direito (AR) ou o bloco superior esquerdo (AL).[068] According to one embodiment, reference samples may be samples included in a neighboring block of the current block. For example, reference samples can be samples adjacent to the left boundary of the current block and/or samples adjacent to the upper boundary. Additionally, reference samples may be samples located on a line within a predetermined distance from the left boundary of the current block and/or samples located on a line within a predetermined distance from the upper boundary of the current block between samples from neighboring blocks. of the current block. In this case, the neighboring block of the current block may include the left block (L), the upper block (A), the lower left block (BL), the upper right block (AR), or the upper left block (AL).
[069] A unidade de interpredição 254 gera um bloco de predição usando figuras de referência e informações de intercodificação armazenadas no DPB 256. As informações de intercodificação podem incluir conjunto de informações de movimento (índice de figura de referência, informação de vetor de movimento, etc.) do bloco atual para o bloco de referência. A interpredição pode incluir predição LO, predição L1 e predição bi. A predição LO significa predição usando uma figura de referência incluída na lista de figuras LO, e predição L1 significa predição usando uma figura de referência incluída na lista de figuras L1. Para isso, um conjunto de informações de movimento (por exemplo, vetor de movimento e índice de figura de referência) pode ser necessário. No método de bipredição, até duas regiões de referência podem ser usadas, e as duas regiões de referência podem existir na mesma figura de referência ou podem existir em figuras diferentes. Ou seja, no método de bipredição, até dois conjuntos de informações de movimento (por exemplo, um vetor de movimento e um índice de figura de referência) podem ser usados e dois vetores de movimento podem corresponder ao mesmo índice de figura de referência ou a diferentes índices de figura de referência. Neste caso, as figuras de referência podem ser exibidas (ou emitidas) antes e depois da figura atual no aspecto de tempo. De acordo com uma modalidade, duas regiões de referência usadas em um esquema de bipredição podem ser regiões selecionadas de uma lista de figuras LO e uma lista de figuras L1.[069] The interprediction unit 254 generates a prediction block using reference figures and intercoding information stored in the DPB 256. The intercoding information may include set of motion information (reference figure index, motion vector information, etc.) from the current block to the reference block. Interprediction can include LO prediction, L1 prediction and bi prediction. LO prediction means prediction using a reference figure included in the LO figure list, and L1 prediction means prediction using a reference figure included in the L1 figure list. For this, a set of motion information (e.g., motion vector and reference figure index) may be needed. In the biprediction method, up to two reference regions can be used, and the two reference regions can exist in the same reference figure or can exist in different figures. That is, in the biprediction method, up to two sets of motion information (e.g., a motion vector and a reference figure index) can be used, and two motion vectors can correspond to the same reference figure index or to different reference figure indices. In this case, reference figures can be displayed (or output) before and after the current figure in the time aspect. According to one embodiment, two reference regions used in a biprediction scheme may be regions selected from a list of LO figures and a list of L1 figures.
[070] A unidade de interpredição 254 pode obter um bloco de referência do bloco atual usando um vetor de movimento e um índice de figura de referência. O bloco de referência está em uma figura de referência correspondente a um índice de figura de referência. Além disso, um valor de amostra de um bloco especificado por um vetor de movimento ou um valor interpolado do mesmo pode ser usado como um preditor do bloco atual. Para predição de movimento com precisão de pixel de unidade de sub-pel, por exemplo, um filtro de interpolação de 8 toques para um sinal de luma e um filtro de interpolação de 4 toques para um sinal de croma podem ser usados. No entanto, o filtro de interpolação para predição de movimento em unidades de sub-pel não está limitado a ele. Desta forma, a unidade de interpredição 254 executa compensação de movimento para prever a textura da unidade atual a partir de figuras em movimento reconstruídas anteriormente. Neste caso, a unidade de interpredição pode usar um conjunto de informações de movimento.[070] The interprediction unit 254 may obtain a reference block from the current block using a motion vector and a reference figure index. The reference block is in a reference figure corresponding to a reference figure index. Additionally, a sample value from a block specified by a motion vector or an interpolated value thereof can be used as a predictor of the current block. For motion prediction with sub-pel unit pixel accuracy, for example, an 8-tap interpolation filter for a luma signal and a 4-tap interpolation filter for a chroma signal can be used. However, the interpolation filter for motion prediction in sub-pel units is not limited to it. In this way, the interprediction unit 254 performs motion compensation to predict the texture of the current unit from previously reconstructed moving figures. In this case, the interprediction unit may use a set of motion information.
[071] De acordo com uma modalidade adicional, a unidade de predição 250 pode incluir uma unidade de intrapredição de BC (não ilustrada). A unidade de intrapredição de BC pode reconstruir a região atual referindo-se a uma região específica incluindo amostras reconstruídas na figura atual. A unidade de intrapredição de BC obtém informação de intracodificação de BC na região atual da unidade de decodificação de entropia 210. A unidade de intrapredição de BC obtém um valor de vetor de bloco da região atual indicando uma região específica na figura atual. A unidade de intrapredição de BC pode realizar intrapredição de BC usando o valor de vetor de bloco obtido. A informação de intracodificação de BC pode incluir informação de vetor de bloco.[071] According to an additional embodiment, the prediction unit 250 may include a BC intraprediction unit (not illustrated). The BC intraprediction unit can reconstruct the current region by referring to a specific region including reconstructed samples in the current figure. The BC intraprediction unit obtains BC intracoding information in the current region from the entropy decoding unit 210. The BC intraprediction unit obtains a block vector value of the current region indicating a specific region in the current figure. The BC intraprediction unit can perform BC intraprediction using the obtained block vector value. The BC intracoding information may include block vector information.
[072] A figura de vídeo reconstruída é gerada pela adição do valorde predição emitido da unidade de intrapredição 252 ou da unidade de interpredição 254 e o valor residual emitido da unidade de transformada inversa 225. Ou seja, o aparelho de decodificação de sinal de vídeo 200 reconstrói o bloco atual usando o bloco de predição gerado pela unidade de predição 250 e o resíduo obtido da unidade de transformada inversa 225.[072] The reconstructed video figure is generated by adding the prediction value output from the intraprediction unit 252 or the interprediction unit 254 and the residual value output from the inverse transform unit 225. That is, the video signal decoding apparatus 200 reconstructs the current block using the prediction block generated by the prediction unit 250 and the residue obtained from the inverse transform unit 225.
[073] Entretanto, o diagrama de blocos da Figura 2 mostra um aparelho de decodificação 200 de acordo com uma modalidade da presente invenção, e blocos exibidos separadamente distinguem e mostram logicamente os elementos do aparelho de decodificação 200. Consequentemente, os elementos do aparelho de decodificação acima descrito 200 podem ser montados como um chip ou como uma pluralidade de chips dependendo do design do dispositivo. De acordo com uma modalidade, a operação de cada elemento do aparelho de decodificação 200 descrito acima pode ser realizada por um processador (não mostrado).[073] However, the block diagram of Figure 2 shows a decoding apparatus 200 in accordance with an embodiment of the present invention, and separately displayed blocks logically distinguish and show the elements of the decoding apparatus 200. Consequently, the elements of the decoding apparatus The above-described decoder 200 can be assembled as one chip or as a plurality of chips depending on the design of the device. According to one embodiment, the operation of each element of the decoding apparatus 200 described above may be performed by a processor (not shown).
[074] A Figura 3 ilustra uma modalidade na qual uma unidade de árvore de codificação (CTU) é dividida em unidades de codificação (CUs) em uma figura. No processo de codificação de um sinal de vídeo, uma figura pode ser dividida em uma sequência de unidades de árvore de codificação (CTUs). A unidade de árvore de codificação é composta por um bloco NXN de amostras de luma e dois blocos de amostras de croma correspondentes. A unidade de árvore de codificação pode ser dividida em uma pluralidade de unidades de codificação. A unidade de árvore de codificação não é dividida e pode ser um nó folha. Neste caso, a própria unidade de árvore de codificação pode ser uma unidade de codificação. A unidade de codificação refere-se a uma unidade básica para processar uma figura no processo de processamento do sinal de vídeo descrito acima, isto é, intra/interpredição, transformada, quantização e/ou codificação de entropia. O tamanho e a forma da unidade de codificação em uma figura podem não ser constantes. A unidade de codificação pode ter uma forma quadrada ou retangular. A unidade de codificação retangular (ou bloco retangular) inclui uma unidade de codificação vertical (ou bloco vertical) e uma unidade de codificação horizontal (ou bloco horizontal). No presente relatório descritivo, o bloco vertical é um bloco cuja altura é maior que a largura, e o bloco horizontal é um bloco cuja largura é maior que a altura. Além disso, neste relatório descritivo, um bloco não quadrado pode referir-se a um bloco retangular, mas a presente invenção não está limitada a ele.[074] Figure 3 illustrates an embodiment in which a coding tree unit (CTU) is divided into coding units (CUs) in a figure. In the process of encoding a video signal, a picture can be divided into a sequence of coding tree units (CTUs). The coding tree unit is composed of an NXN block of luma samples and two blocks of corresponding chroma samples. The coding tree unit can be divided into a plurality of coding units. The coding tree unit is not split and can be a leaf node. In this case, the encoding tree unit itself may be a encoding unit. The coding unit refers to a basic unit for processing a figure in the video signal processing process described above, that is, intra/interprediction, transform, quantization and/or entropy coding. The size and shape of the coding unit in a figure may not be constant. The encoding unit may have a square or rectangular shape. The rectangular coding unit (or rectangular block) includes a vertical coding unit (or vertical block) and a horizontal coding unit (or horizontal block). In the present specification, the vertical block is a block whose height is greater than the width, and the horizontal block is a block whose width is greater than the height. Furthermore, in this specification, a non-square block may refer to a rectangular block, but the present invention is not limited thereto.
[075] Com referência à Figura 3, a unidade de árvore de codificação é primeiro dividida em uma estrutura de árvore quaternária (QT). Ou seja, um nó com tamanho 2NX2N em uma estrutura de árvore quaternária pode ser dividido em quatro nós com tamanho NXN. No presente relatório descritivo, a árvore quaternária também pode ser denominada como uma árvore quaternária. A divisão de árvore quaternária pode ser executada recursivamente e nem todos os nós precisam ser divididos com a mesma profundidade.[075] With reference to Figure 3, the coding tree unit is first divided into a quaternary tree (QT) structure. That is, a node with size 2NX2N in a quaternary tree structure can be divided into four nodes with size NXN. In the present specification, the quaternary tree may also be referred to as a quaternary tree. Quaternary tree splitting can be performed recursively and not all nodes need to be split to the same depth.
[076] Enquanto isso, o nó folha da árvore quaternária descrita acima pode ser ainda dividido em uma estrutura de árvore multi-tipo (MTT). De acordo com uma modalidade da presente invenção, em uma estrutura de árvore multi-tipo, um nó pode ser dividido em uma estrutura de árvore binária ou ternária de divisão horizontal ou vertical. Ou seja, na estrutura de árvore multi-tipo, existem quatro estruturas de divisão, como divisão binária vertical, divisão binária horizontal, divisão ternária vertical e divisão ternária horizontal. De acordo com uma modalidade da presente invenção, em cada uma das estruturas de árvore, a largura e a altura dos nós podem ter potências de 2. Por exemplo, em uma estrutura de árvore binária (BT), um nó de tamanho 2NX2N pode ser dividido em dois nós NX2N por divisão binária vertical e dividido em dois nós 2NXN por divisão binária horizontal. Além disso, em uma estrutura de árvore ternária (TT), um nó de tamanho 2NX2N é dividido em nós (N/2)X2N, NX2N e (N/2)X2N por divisão ternária vertical e dividido em 2NX(N/2), nós 2NXN e 2NX(N/2) por divisão ternária horizontal. Essa divisão de árvore de vários tipos pode ser executada recursivamente.[076] Meanwhile, the leaf node of the quaternary tree described above can be further divided into a multi-type tree (MTT) structure. According to an embodiment of the present invention, in a multi-type tree structure, a node can be divided into a binary or ternary tree structure of horizontal or vertical division. That is, in the multi-type tree structure, there are four splitting structures such as vertical binary splitting, horizontal binary splitting, vertical ternary splitting and horizontal ternary splitting. According to an embodiment of the present invention, in each of the tree structures, the width and height of the nodes may be powers of 2. For example, in a binary tree (BT) structure, a node of size 2NX2N may be divided into two NX2N nodes by vertical binary division and divided into two 2NXN nodes by horizontal binary division. Furthermore, in a ternary tree (TT) structure, a node of size 2NX2N is split into (N/2)X2N, NX2N, and (N/2)X2N nodes by vertical ternary splitting and split into 2NX(N/2) , nodes 2NXN and 2NX(N/2) by horizontal ternary division. This multi-type tree splitting can be performed recursively.
[077] Um nó folha de uma árvore multi-tipo pode ser uma unidade de codificação. Quando uma unidade de codificação não é maior em comparação com um comprimento máximo de conversão, a unidade de codificação pode ser usada como uma unidade de predição e/ou conversão sem ser mais dividida. Em uma modalidade, quando uma largura ou altura de uma unidade de codificação atual é maior que o comprimento máximo de conversão, a unidade de codificação atual pode ser dividida em uma pluralidade de unidades de conversão sem sinalização explícita sobre divisão. Por outro lado, pelo menos um dos seguintes parâmetros na árvore quaternária descrita acima e na árvore multi-tipo pode ser predefinido ou transmitido através de um conjunto de RBSPs de nível superior, como PPS, SPS, VPS e semelhantes. 1) Tamanho da CTU: tamanho do nó raiz da árvore quaternária, 2) tamanho mínimo do QT MinQtSize: tamanho mínimo permitido do nó folha do QT, 3) tamanho máximo do BT MaxBtSize: tamanho máximo permitido do nó raiz do BT, 4) Tamanho máximo do TT MaxTtSize: máximo do TT permitido tamanho do nó raiz, 5) Profundidade máxima do MTT MaxMttDepth: profundidade máxima permitida da divisão do MTT do nó folha do QT, 6) Tamanho mínimo BTMinBtSize: tamanho mínimo permitido do nó folha BT, 7) Tamanho mínimo TT MinTtSize: tamanho mínimo permitido do nó folha TT.[077] A leaf node of a multi-type tree can be a coding unit. When a coding unit is not larger compared to a maximum conversion length, the coding unit can be used as a prediction and/or conversion unit without being further divided. In one embodiment, when a width or height of a current coding unit is greater than the maximum conversion length, the current coding unit can be divided into a plurality of conversion units without explicit signaling about division. On the other hand, at least one of the following parameters in the quaternary tree described above and the multi-type tree can be predefined or passed through a set of higher-level RBSPs such as PPS, SPS, VPS and the like. 1) CTU Size: root node size of the quaternary tree, 2) minimum QT size MinQtSize: minimum allowed QT leaf node size, 3) maximum BT size MaxBtSize: maximum allowed BT root node size, 4) Maximum TT Size MaxTtSize: Maximum TT allowed root node size, 5) Maximum MTT Depth MaxMttDepth: Maximum allowed MTT split depth of QT leaf node, 6) Minimum BTMinBtSize Size: Minimum allowed BT leaf node size, 7) Minimum TT size MinTtSize: minimum allowed size of the TT leaf node.
[078] A Figura 4 ilustra uma modalidade de um método para sinalizar uma divisão de árvore quaternária e árvore multi-tipo. Os sinalizadores predefinidos podem ser usados para sinalizara divisão de árvore quaternária e árvore multi-tipo descrita acima. Com referência à Figura 4, pelo menos um de um sinalizador 'split_cu_flag' indicando se um nó está dividido ou não, um sinalizador 'split_qt_flag' indicando se um nó de árvore quaternária é ou não dividido, um sinalizador 'mtt_split_cu_vertical_flag' indicando uma direção de divisãodo multi-tipo nó de árvore, ou um sinalizador 'mtt_split_cu_binary_flag' indicando a forma de divisão do nó de árvore multi-tipo pode ser usado.[078] Figure 4 illustrates an embodiment of a method for signaling a split of quaternary tree and multi-type tree. The predefined flags can be used to signal the quaternary tree and multi-type tree split described above. With reference to Figure 4, at least one of a 'split_cu_flag' flag indicating whether or not a node is split, a 'split_qt_flag' flag indicating whether or not a quaternary tree node is split, a 'mtt_split_cu_vertical_flag' flag indicating a direction of split multi-type tree node, or a 'mtt_split_cu_binary_flag' flag indicating the split form of the multi-type tree node can be used.
[079] De acordo com uma modalidade da presente invenção, ‘split_cu_flag’, que é um sinalizadorque indica se o nó atual está dividido ou não, pode ser sinalizado primeiro. Quando o valor de 'split_cu_flag'é 0, indica que o nó atual não está dividido e o nó atual se torna uma unidade de codificação. Quando o nó atual é uma unidade de árvore de codificação, a unidade de árvore de codificação inclui uma unidade de codificação não dividida. Quando o nó atual é um nó de árvore quaternária “nó da QT”, o nó atual é um nó folha “nó de folha da QT” da árvore quaternária e se torna a unidade de codificação. Quando o nó atual é um nó de árvore multi-tipo “nó da MTT”, o nó atual é um nó folha “nó folha da MTT” da árvore multi-tipo e se torna uma unidade de codificação.[079] According to an embodiment of the present invention, 'split_cu_flag', which is a flag that indicates whether the current node is split or not, can be signaled first. When the value of 'split_cu_flag' is 0, it indicates that the current node is not split and the current node becomes a coding unit. When the current node is a coding tree unit, the coding tree unit includes an undivided coding unit. When the current node is a quaternary tree node “QT node”, the current node is a leaf node “QT leaf node” of the quaternary tree and becomes the coding unit. When the current node is a multi-type tree node “MTT node”, the current node is a leaf node “MTT leaf node” of the multi-type tree and becomes a coding unit.
[080] Quando o valor de ‘split_cu_flag’é 1, o nó atual pode ser dividido em nós de uma árvore quaternária ou uma árvore multi-tipo de acordo com o valor de ‘split_qt_flag’. A unidade de árvore de codificação é um nó raiz de uma árvore quaternária e pode ser primeiro dividida em uma estrutura de árvore quaternária. Na estrutura árvore quaternária, ‘split_qt_flag’ é sinalizado para cada nó ‘nó QT’. Quando o valor de ‘spl it_qt_flag’ é 1, o nó é dividido em 4 nós quadrados, e quando o valor de ‘split_qt_flag’ é 0, o nó se torna o nó folha da árvore quaternária ‘nó folha QT’, e o nó é dividido em nós de árvore de vários tipos. De acordo com uma modalidade da presente invenção, a divisão em árvore quaternária pode ser limitada de acordo com o tipo do nó atual. Quando o nó atual é uma unidade de árvore de codificação (nó raiz da árvore quaternária) ou um nó de árvore quaternária, a divisão de árvore quaternária pode ser permitida e quando o nó atual é um nó de árvore multi-tipo, a divisão de árvore quaternária pode não ser permitido. Cada nó de folha de árvore quaternária ‘nó de folha QT’ pode ser dividido em estruturas de árvore de vários tipos. Conforme descrito acima, quando ‘split_qt_flag’é 0, o nó atual pode ser dividido em nós de vários tipos. Para indicara direção da divisãoe a forma da divisão, ‘mtt_split_cu_vertical_flag’ e ‘mtt_split_cu_binary_flag’ podem ser sinalizados. Quando o valor de ‘mtt_split_cu_vertical_flag’ é 1, a divisão vertical do nó ‘nó MTT’ é indicada, e quando o valor de ‘mtt_split_cu_vertical_flag’ é 0, a divisão horizontal do nó ‘nó MTT’ é indicada. Além disso, quando o valor de ‘mtt_split_cu_binary_flag’ é 1, o nó ‘nó mtt’ é dividido em dois nós retangulares e quando o valor de ‘mtt_split_cu_binary_flag’ é 0, o nó ‘nó mtt’ é dividido em três nós retangulares.[080] When the value of 'split_cu_flag' is 1, the current node can be divided into nodes of a quaternary tree or a multi-type tree according to the value of 'split_qt_flag'. The coding tree unit is a root node of a quaternary tree and can be first divided into a quaternary tree structure. In the quaternary tree structure, ‘split_qt_flag’ is flagged for each node ‘QT node’. When the value of 'spl it_qt_flag' is 1, the node is divided into 4 square nodes, and when the value of 'split_qt_flag' is 0, the node becomes the leaf node of the quaternary tree 'QT leaf node', and the node is divided into tree nodes of various types. According to an embodiment of the present invention, the quaternary tree split can be limited according to the type of the current node. When the current node is a coding tree unit (quaternary tree root node) or a quaternary tree node, quaternary tree splitting can be allowed, and when the current node is a multi-type tree node, splitting of Quaternary tree may not be allowed. Each quaternary tree leaf node ‘QT leaf node’ can be divided into tree structures of various types. As described above, when ‘split_qt_flag’ is 0, the current node can be split into nodes of various types. To indicate the direction of the split and the shape of the split, ‘mtt_split_cu_vertical_flag’ and ‘mtt_split_cu_binary_flag’ can be flagged. When the value of ‘mtt_split_cu_vertical_flag’ is 1, the vertical split of the node ‘MTT node’ is indicated, and when the value of ‘mtt_split_cu_vertical_flag’ is 0, the horizontal split of the node ‘MTT node’ is indicated. Furthermore, when the value of ‘mtt_split_cu_binary_flag’ is 1, the node ‘mtt node’ is split into two rectangular nodes and when the value of ‘mtt_split_cu_binary_flag’ is 0, the node ‘mtt node’ is split into three rectangular nodes.
[081] A predição de figura (compensação de movimento) para codificação é realizada em unidades de codificação que não são mais divididas (isto é, nós de folha da árvore de unidades de codificação). A unidade básica que realiza tal predição é doravante denominada como uma unidade de predição ou um bloco de predição.[081] Figure prediction (motion compensation) for coding is performed on coding units that are no longer split (i.e., leaf nodes of the coding unit tree). The basic unit that performs such prediction is hereinafter referred to as a prediction unit or a prediction block.
[082] Em seguida, o termo unidade usado no presente relatório descritivo pode ser usado como um termo para substituir a unidade de predição, que é uma unidade básica para realizar a predição. No entanto, a presente invenção não está limitada a isso, e pode ser mais amplamente entendida como um conceito que inclui a unidade de codificação.[082] Next, the term unit used in the present specification can be used as a term to replace the prediction unit, which is a basic unit for carrying out the prediction. However, the present invention is not limited to this, and can be more broadly understood as a concept that includes the coding unit.
[083] As Figuras 5 e 6 ilustram mais especificamente um método de intrapredição de acordo com uma modalidade da presente invenção. Como descrito acima, a unidade de intrapredição prevê os valores de amostra do bloco atual usando as amostras restauradas localizadas no lado esquerdo e/ou superior do bloco atual como amostras de referência.[083] Figures 5 and 6 more specifically illustrate an intraprediction method according to an embodiment of the present invention. As described above, the intraprediction unit predicts the sample values of the current block using the restored samples located on the left and/or top side of the current block as reference samples.
[084] Em primeiro lugar, a Figura 5 mostra uma modalidade de amostras de referência usadas para predição de um bloco atual em um modo de intrapredição. De acordo com uma modalidade, as amostras de referência podem ser amostras adjacentes ao limite esquerdo do bloco atual e/ou amostras adjacentes ao limite superior. Como mostrado na Figura 5, quando o tamanho do bloco atual é WXH e amostras de uma única linha de referência adjacente ao bloco atual são usadas para intrapredição, amostras de referência podem ser configuradas usando um máximo de 2W+2H+1 amostras vizinhas localizadasà esquerda e/ou lado superior do bloco atual.[084] Firstly, Figure 5 shows an embodiment of reference samples used to predict a current block in an intraprediction mode. According to one embodiment, the reference samples may be samples adjacent to the left boundary of the current block and/or samples adjacent to the upper boundary. As shown in Figure 5, when the current block size is WXH and samples from a single reference line adjacent to the current block are used for intraprediction, reference samples can be configured using a maximum of 2W+2H+1 neighboring samples located on the left and/or top side of the current block.
[085] Além disso, se pelo menos algumas das amostras a serem usadas como amostras de referência não tiverem sido restauradas, a unidade de intrapredição pode obter uma amostra de referência realizando um processo de preenchimento de amostra de referência. Além disso, a unidade de intrapredição pode realizar um processo de filtragem de amostra de referência para reduzir erros na intrapredição. Ou seja, realizar a filtragem em amostras circundantes e/ou amostras de referência obtidas por um processo de preenchimento de amostra de referência pode ser realizada para obter amostras de referência filtradas. A unidadede intrapredição prevê as amostras do bloco atual usando as amostras de referência assim obtidas. A unidade de intrapredição prevê amostras do bloco atual usando amostras de referência que não foram filtradas ou amostras de referência que foram filtradas. Na presente divulgação, as amostras circundantes podem incluir amostras em pelo menos uma linha de referência. Por exemplo, as amostras circundantes podem incluir amostras adjacentes em uma linha adjacente ao limite do bloco atual.[085] Furthermore, if at least some of the samples to be used as reference samples have not been restored, the intraprediction unit may obtain a reference sample by performing a reference sample filling process. Furthermore, the intraprediction unit may perform a reference sample filtering process to reduce errors in the intraprediction. That is, performing filtering on surrounding samples and/or reference samples obtained by a reference sample filling process can be performed to obtain filtered reference samples. The intraprediction unit predicts the samples of the current block using the reference samples thus obtained. The intraprediction unit predicts samples from the current block using reference samples that have not been filtered or reference samples that have been filtered. In the present disclosure, surrounding samples may include samples on at least one reference line. For example, surrounding samples may include adjacent samples in a line adjacent to the current block boundary.
[086] A seguir, a Figura 6 mostra uma modalidade de modos de predição usados para intrapredição. Para intrapredição, as informações do modo de intrapredição indicando uma direção de intrapredição podem ser sinalizadas. A informação do modo de intrapredição indica um de uma pluralidade de modos de intrapredição incluídos no conjunto de modo de intrapredição. Quando o bloco atual é um bloco de intrapredição, o decodificador recebe informações do modo de intrapredição do bloco atual do fluxo de bits. A unidade de intrapredição do decodificador executa intrapredição no bloco atual com base nas informações de modo de intrapredição extraídas.[086] Next, Figure 6 shows an embodiment of prediction modes used for intraprediction. For intraprediction, intraprediction mode information indicating an intraprediction direction can be signaled. The intraprediction mode information indicates one of a plurality of intraprediction modes included in the intraprediction mode set. When the current block is an intraprediction block, the decoder receives intraprediction mode information from the current block of the bitstream. The intraprediction unit of the decoder performs intraprediction on the current block based on the extracted intraprediction mode information.
[087] De acordo com uma modalidade da presente invenção, o conjunto de modos de intrapredição pode incluir todos os modos de intrapredição usados na intrapredição (por exemplo, um total de 67 modos de intrapredição). Mais especificamente, o conjunto de modo de intrapredição pode incluir um modo planar, um modo DC e uma pluralidade (por exemplo, 65) de modos de ângulo (isto é, modos direcionais). Cada modo de intrapredição pode ser indicado através de um índice predefinido (isto é, índice de modo de intrapredição). Por exemplo, como mostrado na Figura 6, o índice 0 do modo de intrapredição indica um modo planar e o índice 1 do modo de intrapredição indica um modo DC. Além disso, os índices de modo de intrapredição 2 a 66 podem indicar diferentes modos de ângulo, respectivamente. Os modos de ângulo indicam respectivamente ângulos que são diferentes entre si dentro de uma faixa de ângulo pré-definida. Por exemplo, o modo de ângulo pode indicar um ângulo dentro de uma faixa de ângulo (isto é, uma primeira faixa angular) entre 45 graus e -135 graus no sentido horário. O modo de ângulo pode ser definido com base na direção das 12 horas. Neste caso, o índice de modo de intrapredição 2 indica um modo diagonal horizontal (HDIA), o índice de modo de intrapredição 18 indica um modo horizontal (Horizontal, HOR), o índice de modo de intrapredição 34 indica um modo diagonal (DIA), o índice de modo de intrapredição 50 indica um modo vertical (VER), e o índice de modo de intrapredição 66 indica um modo diagonal vertical (VDIA).[087] According to an embodiment of the present invention, the set of intraprediction modes may include all intraprediction modes used in intraprediction (for example, a total of 67 intraprediction modes). More specifically, the intraprediction mode set may include a planar mode, a DC mode, and a plurality (e.g., 65) of angle modes (i.e., directional modes). Each intraprediction mode can be indicated via a predefined index (i.e., intraprediction mode index). For example, as shown in Figure 6, the intraprediction mode index 0 indicates a planar mode and the intraprediction mode index 1 indicates a DC mode. Furthermore, intraprediction mode indices 2 to 66 can indicate different angle modes, respectively. Angle modes respectively indicate angles that are different from each other within a predefined angle range. For example, angle mode may indicate an angle within an angle range (i.e., a first angle range) between 45 degrees and -135 degrees clockwise. The angle mode can be set based on the 12 o'clock direction. In this case, intraprediction mode index 2 indicates a horizontal diagonal mode (HDIA), intraprediction mode index 18 indicates a horizontal mode (Horizontal, HOR), intraprediction mode index 34 indicates a diagonal mode (DIA) , the intraprediction mode index 50 indicates a vertical mode (VER), and the intraprediction mode index 66 indicates a vertical diagonal mode (VDIA).
[088] Enquanto isso, uma faixa de ângulo predefinido pode ser definida de forma diferente de acordo com a forma de um bloco atual. Por exemplo, quando um bloco atual é um bloco retangular, um modo de grande angular indicando um ângulo que excede 45 graus ou é menor que -135 graus no sentido horário pode ser usado adicionalmente. Quando um bloco atual é um bloco horizontal, o modo de ângulo pode indicar um ângulo que cai dentro de uma faixa de ângulo (isto é, segunda faixa de ângulo) entre (45+offset1) graus e (-135+offsetl) graus no sentido horário. Aqui, os modos de ângulo 67 a 76 fora da primeira faixa de ângulo podem ser usados adicionalmente. Além disso, quando o bloco atual é um bloco vertical, o modo de ângulo pode indicar um ângulo que cai dentro de uma faixa de ângulo (isto é, terceira faixa de ângulo) entre (45-offset2) graus e (-135-offset2) graus no sentido horário. Aqui, os modos de ângulo -10 a -1 fora da primeira faixa de ângulo podem ser usados adicionalmente. De acordo com uma modalidade da presente invenção, os valores de deslocamento 1 e deslocamento2 podem ser determinados de forma diferente de acordo com uma razão entre a largura e a altura de um bloco retangular. Além disso, offsetl e offset2 podem ser números positivos.[088] Meanwhile, a predefined angle range can be set differently according to the shape of a current block. For example, when a current block is a rectangular block, a wide-angle mode indicating an angle that exceeds 45 degrees or is less than -135 degrees clockwise can be additionally used. When a current block is a horizontal block, angle mode can indicate an angle that falls within an angle range (i.e. second angle range) between (45+offset1) degrees and (-135+offsetl) degrees in clockwise. Here, angle modes 67 to 76 outside the first angle range can be used additionally. Additionally, when the current block is a vertical block, angle mode can indicate an angle that falls within an angle range (i.e., third angle range) between (45-offset2) degrees and (-135-offset2) ) degrees clockwise. Here angle modes -10 to -1 outside the first angle range can be used additionally. According to an embodiment of the present invention, the values of displacement 1 and displacement 2 can be determined differently according to a ratio between the width and height of a rectangular block. Additionally, offsetl and offset2 can be positive numbers.
[089] De acordo com uma modalidade adicional da presente invenção, uma pluralidade de modos de ângulo que constituem um conjunto de modo de intrapredição pode incluirum modo de ângulo básico e um modo de ângulo estendido. Aqui, o modo de ângulo estendido pode ser determinado com base no modo de ângulo básico.[089] According to a further embodiment of the present invention, a plurality of angle modes that constitute an intraprediction mode set may include a basic angle mode and an extended angle mode. Here, the extended angle mode can be determined based on the basic angle mode.
[090] De acordo com uma modalidade, o modo de ângulo básico pode ser um modo correspondente a um ângulo usado na intrapredição de um padrão de codificação de vídeo de alta eficiência (HEVC) existente, e o modo de ângulo estendido pode ser um modo correspondente a um ângulo recentemente adicionado na intrapredição de um padrão de codec de vídeo de próxima geração. Em mais detalhes, o modo de ângulo básico pode ser um modo de ângulo correspondente a qualquer um dos modos de intrapredição {2, 4, 6, ..., 66}, e o modo de ângulo estendido pode ser um modo de ângulo correspondente a qualquer um dos modos de intrapredição {3, 5, 7, ..., 65}. Nomeadamente, o modo de ângulo estendido pode ser um modo de ângulo entre os modos de ângulo básicos dentro da primeira faixa de ângulo. Portanto, um ângulo indicado pelo modo de ângulo estendido pode ser determinado com base em um ângulo indicado pelo modo de ângulo básico.[090] According to one embodiment, the basic angle mode may be a mode corresponding to an angle used in the intraprediction of an existing high-efficiency video coding (HEVC) standard, and the extended angle mode may be a mode corresponding to a newly added angle in the intraprediction of a next-generation video codec standard. In more detail, the basic angle mode can be an angle mode corresponding to any of the intraprediction modes {2, 4, 6, ..., 66}, and the extended angle mode can be an angle mode corresponding to any of the intraprediction modes {3, 5, 7, ..., 65}. Namely, the extended angle mode may be an angle mode between the basic angle modes within the first angle range. Therefore, an angle indicated by the extended angle mode can be determined based on an angle indicated by the basic angle mode.
[091] De acordo com outra modalidade, o modo de ângulo básico pode ser um modo correspondente a um ângulo dentro da primeira faixa de ângulo predefinida e o modo de ângulo estendido pode ser um modo de grande angular fora da primeira faixa de ângulo. Nomeadamente, o modo de ângulo básico pode ser um modo de ângulo correspondente a qualquer um dos modos de intrapredição {2, 3, 4, ..., 66}, e o modo de ângulo estendido pode ser um modo de ângulo correspondente a qualquer um dos modos de intrapredição {-10, -9 -1} e {67, 68 76}. Um ângulo indicado pelo modo de ângulo estendido pode ser determinado como um ângulo oposto a um ângulo indicado por um modo de ângulo básico correspondente. Portanto, um ângulo indicado pelo modo de ângulo estendido pode ser determinado com base em um ângulo indicado pelo modo de ângulo básico. Enquanto isso, o número de modos de ângulo estendido não está limitado a isso, e ângulos estendidos adicionais podem ser definidos de acordo com um tamanho e/ou forma de um bloco atual. Por exemplo, o modo de ângulo estendido pode ser definido como um modo de ângulo correspondente a qualquer um dos modos de intrapredição{-14, -13, -1} e {67, 68, ..., 80}. Enquanto isso, o número total de modos de intrapredição incluídos no conjunto de modo de intrapredição pode ser variado de acordo com as configurações acima mencionadas do modo de ângulo básico e modo de ângulo estendido.[091] According to another embodiment, the basic angle mode may be a mode corresponding to an angle within the first predefined angle range and the extended angle mode may be a wide-angle mode outside the first angle range. Namely, the basic angle mode can be an angle mode corresponding to any of the intraprediction modes {2, 3, 4, ..., 66}, and the extended angle mode can be an angle mode corresponding to any one of the intraprediction modes {-10, -9 -1} and {67, 68 76}. An angle indicated by the extended angle mode can be determined as an angle opposite to an angle indicated by a corresponding basic angle mode. Therefore, an angle indicated by the extended angle mode can be determined based on an angle indicated by the basic angle mode. Meanwhile, the number of extended angle modes is not limited to this, and additional extended angles can be defined according to a current block size and/or shape. For example, the extended angle mode can be defined as an angle mode corresponding to any of the intraprediction modes {-14, -13, -1} and {67, 68, ..., 80}. Meanwhile, the total number of intraprediction modes included in the intraprediction mode set can be varied according to the above-mentioned configurations of basic angle mode and extended angle mode.
[092] Nas modalidades acima, um intervalo entre os modos de ângulo estendido pode ser definido com base em um intervalo entre os modos de ângulo básico correspondentes. Por exemplo, o intervalo entre os modos de ângulo estendido {3, 5, 7,..., 65} pode ser determinado com base no intervalo entre os modos de ângulo básico correspondentes {2, 4, 6, ..., 66}. Além disso, o intervalo entre os modos de ângulo estendido {-10, -9, ..., -1} pode ser determinado com base no intervalo entre os modos de ângulo básicos opostos correspondentes {56, 57, ..., 65} e o intervalo entre os modos de ângulo estendido {67, 68, ..., 76} pode ser determinado com base no intervalo entre os modos de ângulo básico opostos correspondentes {3, 4, ..., 12}. O intervalo entre os modos de ângulo estendido pode ser definido igual a um intervalo de ângulo entre os modos de ângulo básico correspondentes. Além disso, o número de modos de ângulo estendido no conjunto de modo de intrapredição pode ser definido igual ou menor que o número de modos de ângulo básico.[092] In the above embodiments, a range between extended angle modes can be defined based on a range between corresponding basic angle modes. For example, the range between the extended angle modes {3, 5, 7,..., 65} can be determined based on the range between the corresponding basic angle modes {2, 4, 6,..., 66 }. Furthermore, the interval between the extended angle modes {-10, -9, ..., -1} can be determined based on the interval between the corresponding opposite basic angle modes {56, 57, ..., 65 } and the interval between the extended angle modes {67, 68, ..., 76} can be determined based on the interval between the corresponding opposite basic angle modes {3, 4, ..., 12}. The range between extended angle modes can be set equal to an angle range between the corresponding basic angle modes. Furthermore, the number of extended angle modes in the intraprediction mode set can be set equal to or less than the number of basic angle modes.
[093] De acordo com uma modalidade da presente invenção, o modo de ângulo estendido pode ser sinalizado com base no modo de ângulo básico. Por exemplo, um modo de grande angular (isto é, modo de ângulo estendido) pode substituir pelo menos um modo de ângulo (isto é, modo de ângulo básico) dentro da primeira faixa de ângulo. Um modo de ângulo básico substituído pode ser um modo de ângulo correspondente a um lado oposto do modo de grande angular. Nomeadamente, o modo de ângulo básico substituído é um modo de ângulo correspondente a um ângulo oposto a um ângulo indicado pelo modo de grande angular ou correspondente a um ângulo que difere tanto quanto um índice de deslocamento predefinido do ângulo oposto. De acordo com uma modalidade da presente invenção, o índice de deslocamento predefinido é 1. Um índice de modo de intrapredição correspondente ao modo de ângulo básico substituído pode ser remapeado para um modo de grande angular de modo a sinalizar o modo de grande angular. Por exemplo, os modos de grande angular {-10, -9, ..., -1} podem ser sinalizados pelos índices de modo de intrapredição {57, 58 66} respectivamente, e os modos de grande angular {67, 68 76} podem ser sinalizados pelos índices de modo de intrapredição {2, 3 11} respectivamente. Conforme descrito acima, uma vez que o índice do modo de intrapredição para o modo de ângulo básico sinaliza o modo de ângulo estendido, os índices do modo de intrapredição do mesmo conjunto podem ser usados para sinalizar um modo de intrapredição mesmo se os modos de ângulo usados na intrapredição de cada bloco tiverem configurações diferentes. Portanto, uma sobrecarga de sinalização devido a uma mudança na configuração do modo de intrapredição pode ser minimizada.[093] According to an embodiment of the present invention, the extended angle mode can be signaled based on the basic angle mode. For example, a wide angle mode (i.e., extended angle mode) may replace at least one angle mode (i.e., basic angle mode) within the first angle range. A substituted basic angle mode may be an angle mode corresponding to an opposite side of the wide angle mode. Namely, the substituted basic angle mode is an angle mode corresponding to an angle opposite to an angle indicated by the wide angle mode or corresponding to an angle that differs by as much as a predefined displacement index from the opposite angle. According to one embodiment of the present invention, the predefined shift index is 1. An intraprediction mode index corresponding to the substituted basic angle mode can be remapped to a wide angle mode in order to signal the wide angle mode. For example, the wide-angle modes {-10, -9, ..., -1} can be signaled by the intraprediction mode indices {57, 58 66} respectively, and the wide-angle modes {67, 68 76 } can be signaled by the intraprediction mode indices {2, 3 11} respectively. As described above, since the intraprediction mode index for the basic angle mode signals the extended angle mode, the intraprediction mode indices from the same set can be used to signal an intraprediction mode even if the angle modes used in the intraprediction of each block have different configurations. Therefore, a signaling overhead due to a change in intraprediction mode configuration can be minimized.
[094] Enquanto isso, a utilização do modo de ângulo estendido pode ser determinada com base em pelo menos um de uma forma e tamanho de um bloco atual. De acordo com uma modalidade, o modo de ângulo estendido pode ser usado para intrapredição do bloco atual quando o tamanho do bloco atual é maior que um tamanho predefinido;caso contrário, apenas o modo de ângulo básico pode ser usado para intrapredição do bloco atual. De acordo com outra modalidade, o modo de ângulo estendido pode ser usado para intrapredição do bloco atual quando o bloco atual é um bloco diferente de um quadrado, e apenas o modo de ângulo básico pode ser usado para intrapredição do bloco atual quando a corrente bloco é um bloco quadrado.[094] Meanwhile, the use of the extended angle mode can be determined based on at least one of the shape and size of a current block. According to one embodiment, the extended angle mode can be used for intraprediction of the current block when the size of the current block is greater than a predefined size; otherwise, only the basic angle mode can be used for intraprediction of the current block. According to another embodiment, the extended angle mode can be used for intraprediction of the current block when the current block is a block other than a square, and only the basic angle mode can be used for intraprediction of the current block when the current block it is a square block.
[095] A unidade de intrapredição determina amostras de referência e/ou amostras de referência interpoladas a serem usadas na intrapredição do bloco atual com base na informação do modo de intrapredição do bloco atual. Quando o índice de modo de intrapredição indica um modo de ângulo particular, uma amostra de referência ou amostra de referência interpolada correspondente ao ângulo particular de uma amostra atual do bloco atual é usada na predição de um pixel atual. Portanto, amostras de referência e/ou amostras de referência interpoladas de diferentes conjuntos podem ser usadas na intrapredição de acordo com um modo de intrapredição. Quando a intrapredição do bloco atual foi realizada usando amostras de referência e informações do modo de intrapredição, o decodificador restaura os valores de amostra do bloco atual adicionando um sinal residual do bloco atual obtido da unidade de transformada inversa a um valor de intrapredição do bloco atual.[095] The intraprediction unit determines reference samples and/or interpolated reference samples to be used in the intraprediction of the current block based on information from the intraprediction mode of the current block. When the intraprediction mode index indicates a particular angle mode, a reference sample or interpolated reference sample corresponding to the particular angle of a current sample of the current block is used in predicting a current pixel. Therefore, reference samples and/or interpolated reference samples from different sets can be used in intraprediction according to an intraprediction mode. When intraprediction of the current block has been performed using reference samples and intraprediction mode information, the decoder restores the sample values of the current block by adding a residual signal of the current block obtained from the inverse transform unit to an intraprediction value of the current block .
[096] A Figura 7 é um diagrama que ilustra uma porção de uma estrutura de sintaxe de alto nível de acordo com uma modalidade da presente invenção. Com referência à Figura 7, o decodificador pode decodificar uma imagem de acordo com uma determinada regra de um fluxo de bits que é resultado da codificação de vídeo e pode emitir a imagem. Um elemento de sintaxe é cada informação incluída em um fluxo de bits de acordo com uma série de regras determinadas, e uma estrutura de sintaxe é uma configuração de elementos de sintaxe. Os elementos de sintaxe podem ser alinhados em unidades de bytes e encapsulados como uma unidade de camada de abstração de rede (NAL), e isso é chamado de carga útil de sequência de bytes bruta (RBSP). Os elementos de sintaxe podem ser codificados em unidades da unidade NAL e armazenados em um fluxo de bits ou transmitidos. Vários tipos de unidades NAL podem ser definidos. As unidades NAL podem ser classificadas como uma camada de codificação de vídeo (VCL) e uma não VCL, conforme sejam informações sobre a compactação do conteúdo dos próprios dados de vídeo ou informações adicionais para compactação. A unidade NALdivididaem uma classe não VCL pode incluir uma sintaxe de RBSP de VPS, uma sintaxe de RBSP de SPS, uma sintaxe de RBSP de PPS, uma sintaxe de RBSP de cabeçalho de figura (PH), uma sintaxe de RBSP de camada de fatia e semelhantes. Quando um fluxo de bits é gerado ou transmitido como resultado da compactação de imagem, as unidades NAL podem ser configuradas na ordem de unidade NAL de VPS, unidade NAL de SPS, unidade NAL de PPS, unidade NAL de PH e unidade NAL de camada de fatia. O número e a ordem das unidades NAL podem ser alterados de acordo com um ambiente de compressão de imagem. Uma unidade NAL de delimitador de unidade de acesso (AUD) e uma unidade NAL de informações de capacidade de decodificação (DCI) podem preceder a sintaxe de RBSP de VPS. A Figura 7 mostra uma relação de referência entre sintaxes inferiores em uma sintaxe superior. Em particular, os elementos de sintaxe a serem comumente usados em uma sequência de vídeo ou unidade de figura (figura inferior) ou uma unidade de fatia para decodificar uma primeira figura em um fluxo de bits podem ter a relação mostrada na Figura 7. Como exemplo da relação de referência, os parâmetros definidos na sintaxe de RBSP de VPS referenciados com base no SPS VPS id definido na sintaxe de RBSP de SPS podem ser comumente aplicados à sequência de vídeo correspondente. Alguns parâmetros podem ser redefinidos/atualizados em uma sintaxe inferior. Os termos sobre uma estrutura de sintaxe usados neste documento podem indicar uma estrutura de sintaxe incluindo um nome parcial, mesmo que os termos sejam mencionados como o nome parcial em vez de um nome completo. Além disso, a sinalização/análise para a estrutura de sintaxe e elemento de sintaxe da presente invenção pode ser aplicada de forma semelhante durante a codificação/decodificação.[096] Figure 7 is a diagram illustrating a portion of a high-level syntax structure in accordance with an embodiment of the present invention. Referring to Figure 7, the decoder can decode an image according to a certain rule of a bit stream that is the result of video coding and can output the image. A syntax element is each piece of information included in a stream of bits according to a set of given rules, and a syntax structure is a configuration of syntax elements. Syntax elements can be aligned into byte units and encapsulated as a network abstraction layer unit (NAL), and this is called a raw byte sequence payload (RBSP). Syntax elements can be encoded in NAL unit units and stored in a bit stream or transmitted. Various types of NAL units can be defined. NAL units can be classified as a video coding layer (VCL) and a non-VCL depending on whether they are information about compressing the content of the video data itself or additional information for compression. The NAL unit divided into a non-VCL class may include a VPS RBSP syntax, an SPS RBSP syntax, a PPS RBSP syntax, a picture header (PH) RBSP syntax, a slice layer RBSP syntax and the like. When a bit stream is generated or transmitted as a result of image compression, the NAL units can be configured in the order of VPS NAL unit, SPS NAL unit, PPS NAL unit, PH NAL unit, and layer NAL unit. slice. The number and order of NAL units can be changed according to an image compression environment. An access unit delimiter (AUD) NAL unit and a decoding capability information (DCI) NAL unit can precede the VPS RBSP syntax. Figure 7 shows a reference relationship between lower syntaxes in a higher syntax. In particular, the syntax elements to be commonly used in a video sequence or picture unit (bottom figure) or a slice unit for decoding a first picture in a bit stream may have the relationship shown in Figure 7. As an example of the reference relationship, the parameters defined in the VPS RBSP syntax referenced based on the SPS VPS id defined in the SPS RBSP syntax can be commonly applied to the corresponding video sequence. Some parameters can be reset/updated in a lower syntax. Terms about a syntax structure used in this document may indicate a syntax structure including a partial name, even if the terms are referred to as the partial name rather than a full name. Furthermore, signaling/parsing for the syntax structure and syntax element of the present invention can be applied in a similar manner during encoding/decoding.
[097] A Figura 8 é um diagrama que ilustra um tipo de unidade de camada abstrata de rede (NAL) de acordo com uma modalidade da presente invenção.[097] Figure 8 is a diagram illustrating a type of network abstract layer unit (NAL) in accordance with an embodiment of the present invention.
[098] As unidades NAL podem ser classificadas grosseiramente como duas classes. As unidades NAL correspondentes às informações de dados de vídeo podem ser classificadas como VCL, e as unidades NAL, incluindo informações que não são informações de dados de vídeo, mas são necessárias para decodificar um vídeo, podem ser classificadas como não VCL. As unidades NAL classificadas como VCL também podem ter vários tipos de unidades NAL de acordo com um método de aplicação. As informações sobre um tipo de unidade NAL podem ser incluídas nas informações do cabeçalho da unidade NAL. O decodificador pode identificar uma unidade NAL usando um tipo de unidade NAL indicado nas informações de cabeçalho em uma camada de transporte/rede. Na Figura 8, um tipo de unidade NAL (nal_unit_type), o nome de um tipo de unidade NAL (Nome de nal_unit_type), o conteúdo de uma unidade NALe estrutura de sintaxe de RBSP e uma classe de tipo de unidade NAL podem ser confirmados. Com referência à Figura 8, informações sobre as unidades NAL mostradas na Figura 7 pode ser confirmado.[098] NAL units can be roughly classified as two classes. NAL units corresponding to video data information can be classified as VCL, and NAL units including information that is not video data information but are necessary to decode a video can be classified as non-VCL. NAL units classified as VCL can also have various types of NAL units according to an application method. Information about an NAL unit type can be included in the NAL unit header information. The decoder can identify a NAL unit using a NAL unit type indicated in the header information at a transport/network layer. In Figure 8, a NAL unit type (nal_unit_type), the name of a NAL unit type (nal_unit_type name), the content of a NAL unit, and RBSP syntax structure, and a NAL unit type class can be confirmed. With reference to Figure 8, information about the NAL units shown in Figure 7 can be confirmed.
[099] A Figura 9 é um diagrama que ilustra que uma figura é dividida em CTUs, blocos, e fatias de acordo com uma modalidade da presente invenção.[099] Figure 9 is a diagram illustrating that a figure is divided into CTUs, blocks, and slices according to an embodiment of the present invention.
[0100] Por várias razões, uma figura/quadro pode ser dividida em blocos/unidades de codificação de um tamanho predefinido ou um conjunto dos mesmos. Uma unidade de codificação (CU) pode ser um bloco de codificação de amostras de luma e um bloco de codificação correspondente a amostras de dois componentes de croma e pode ter três matrizes de amostras. Um bloco de árvore de codificação (CTB) pode ser configurado com uma unidade de árvore de codificação (CTU) de um componente de luma e dois componentes de croma. Um bloco é uma área retangular em uma figura e pode incluir CTUs em uma coluna de blocos e uma linha de blocos de um tamanho específico. Uma fatia pode ser configurada com blocos de tamanho inteiro ou colunas de CTU sucessivas de tamanho inteiro. Uma fatia pode ser transmitida como uma única unidade NAL.[0100] For various reasons, a figure/frame can be divided into coding blocks/units of a predefined size or a set thereof. A coding unit (CU) may be a coding block of luma samples and a coding block corresponding to samples of two chroma components and may have three sample matrices. A code tree block (CTB) can be configured with a code tree unit (CTU) of one luma component and two chroma components. A block is a rectangular area in a figure and can include CTUs in a column of blocks and a row of blocks of a specific size. A slice can be configured with integer-sized blocks or successive integer-sized CTU columns. A slice can be transmitted as a single NAL unit.
[0101] Em detalhes, a Figura 9 ilustra que uma figura é configurada com 18 x 12 luma de CTUs e dividida em 24 blocos e 9 fatias retangulares de acordo com uma modalidade da presente invenção. A divisão da figura mostrada na Figura 9 é meramente um exemplo, e uma figura pode ser dividida em várias formas sem se limitar ao exemplo ilustrado na Figura 9. Uma figura pode ser dividida não apenas em fatias retangulares, mas também em fatias do tipo varredura raster. Além disso, um bloco pode ser dividido em formas de tamanhos diferentes.[0101] In detail, Figure 9 illustrates that a figure is configured with 18 x 12 luma of CTUs and divided into 24 blocks and 9 rectangular slices according to an embodiment of the present invention. The division of the figure shown in Figure 9 is merely an example, and a figure can be divided into various shapes without being limited to the example illustrated in Figure 9. A figure can be divided not only into rectangular slices, but also into raster-type slices raster. Furthermore, a block can be divided into shapes of different sizes.
[0102] A Figura 10 é um diagrama que ilustra que uma figura é dividida em uma pluralidade de subfiguras de acordo com uma modalidade da presente invenção.[0102] Figure 10 is a diagram illustrating that a figure is divided into a plurality of subfigures in accordance with an embodiment of the present invention.
[0103] Em detalhes, a Figura 10 ilustra que uma figura é dividida em uma pluralidade de figuras inferiores (doravante referidas como subfiguras) de acordo com uma modalidade da presente invenção. Com referência à Figura 10, uma figura pode ser configurada sendo dividida em 15 blocos e 24 fatias, e pode ser dividida em 24 subfiguras. Quando uma figura é dividida em uma pluralidade de subfiguras, a codificação/decodificação pode ser realizada por subfigura. Além disso, uma nova figura pode ser configurada com uma determinada subfigura ou subfiguras, e uma nova figura também pode ser configurada com subfiguras de outra camada de codificação de vídeo (VCL).[0103] In detail, Figure 10 illustrates that a figure is divided into a plurality of lower figures (hereinafter referred to as subfigures) in accordance with an embodiment of the present invention. With reference to Figure 10, a figure can be configured by being divided into 15 blocks and 24 slices, and can be divided into 24 subfigures. When a figure is divided into a plurality of subfigures, encoding/decoding can be performed per subfigure. Additionally, a new picture can be configured with a certain subpicture or subpictures, and a new picture can also be configured with subpictures from another video coding layer (VCL).
[0104] A Figura 11 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0104] Figure 11 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0105] Os elementos de sintaxe incluídos na estrutura de sintaxe de RBSP de SPS serão descritos com referência à Figura 11.[0105] The syntax elements included in the RBSP syntax structure of SPS will be described with reference to Figure 11.
[0106] sps_decoding_parameter_set_id é um elemento de sintaxe que indica se deve se referir a DPS em SPS. Quando um valor de sps_decoding_parameter_set_id é maior que 0, esse elemento de sintaxe indica dps_decoding_parameter_set_id de um conjunto de parâmetros de decodificação (DPS) referido no SPS. Pelo contrário, quando o valor de sps_decoding_parameter_set_id for 0, esse elemento de sintaxe pode indicar que DPS não é referido no SPS correspondente. Todos os SPSs referidos por figuras codificadas de um fluxo de bits precisam ter o mesmo valor de sps_decod i ng_parameter_set_id.[0106] sps_decoding_parameter_set_id is a syntax element that indicates whether to refer to DPS in SPS. When a value of sps_decoding_parameter_set_id is greater than 0, this syntax element indicates dps_decoding_parameter_set_id of a decoding parameter set (DPS) referred to in the SPS. On the contrary, when the value of sps_decoding_parameter_set_id is 0, this syntax element may indicate that DPS is not referred to in the corresponding SPS. All SPSs referred to by encoded figures of a bitstream must have the same sps_decod i ng_parameter_set_id value.
[0107] sps_video_parameter_set_id é um elemento de sintaxe que indica se deve se referir a VPS em SPS. Quando um valor de sps_video_parameter_set_id é maior que 0, pode indicar vps_video_parameter_set_id para VPS referido no SPS. Ao contrário, quando o valor de sps_video_parameter_set_id for 0, o SPS correspondente pode não se referir ao VPS. Além disso, quando o valor de sps_video_parameter_set_id é 0, um valor de vps_max_layers_minus1 pode ser inferido como 0. Além disso, quando o valor de sps_video_parameter_set_id é 0, uma sequência de vídeo codificada (CVS) pode incluirapenas uma camada.[0107] sps_video_parameter_set_id is a syntax element that indicates whether to refer to VPS in SPS. When a value of sps_video_parameter_set_id is greater than 0, it may indicate vps_video_parameter_set_id for VPS referred to in SPS. Conversely, when the value of sps_video_parameter_set_id is 0, the corresponding SPS may not refer to the VPS. Additionally, when the value of sps_video_parameter_set_id is 0, a value of vps_max_layers_minus1 can be inferred to be 0. Additionally, when the value of sps_video_parameter_set_id is 0, a encoded video sequence (CVS) can include only one layer.
[0108] sps_seq_parameter_set_id é um elemento de sintaxe, que fornece um ID para SPS para ser referido por outros elementos de sintaxe. sps_seq_parameter_set_id pode ser usado como informação a ser referenciada no PPS.[0108] sps_seq_parameter_set_id is a syntax element, which provides an ID for SPS to be referred to by other syntax elements. sps_seq_parameter_set_id can be used as information to be referenced in PPS.
[0109] subpics_present_flag é um elemento de sintaxe que indica se um parâmetro relacionado a uma subfigura está presente na sintaxe de RBSP de SPS. Quando o valor de subpics_present_flag for 1, pode indicar que um parâmetro (elemento de sintaxe) relacionado a uma subfigura está presente na sintaxe de RBSP de SPS, e quando o valor de subpics_present_flag for 0, pode indicar que um parâmetro (elemento de sintaxe) relacionado a uma subfigura não está presente na sintaxe de RBSP de SPS.[0109] subpics_present_flag is a syntax element that indicates whether a parameter related to a subpicture is present in the SPS RBSP syntax. When the value of subpics_present_flag is 1, it may indicate that a parameter (syntax element) related to a subfigure is present in the SPS RBSP syntax, and when the value of subpics_present_flag is 0, it may indicate that a parameter (syntax element) related to a subfigure is not present in the RBSP syntax of SPS.
[0110] Quando o valor de subpics_present_flag for 1, os parâmetros (elementos de sintaxe) relacionados a uma subfigura, descritos abaixo, podem ser sinalizados.[0110] When the value of subpics_present_flag is 1, the parameters (syntax elements) related to a subpicture, described below, can be flagged.
[0111] sps_num_subpics_minus1 é um elemento de sintaxe que indica um valor relacionado ao número desubfiguras. sps_num_subpics_minus1 indica um valor obtido subtraindo 1 do número de subfiguras. Ou seja, um valor obtido pela adição de 1 ao valor de sps_num_subpics_minus1 pode indicar o número de subfiguras. sps_num_subpics_minus1 pode ter um valor entre 0 e (MaxSlicesPerAu - 1). Aqui, MaxSlicesPerAu pode ter um valor entre 16 e 600 de acordo com um nível. Quando sps_num_subpics_minus1 não está presente, o valor de sps_num_subpics_minus1 pode ser inferido como 0.[0111] sps_num_subpics_minus1 is a syntax element that indicates a value related to the number of subpics. sps_num_subpics_minus1 indicates a value obtained by subtracting 1 from the number of subpictures. That is, a value obtained by adding 1 to the value of sps_num_subpics_minus1 can indicate the number of subpictures. sps_num_subpics_minus1 can have a value between 0 and (MaxSlicesPerAu - 1). Here, MaxSlicesPerAu can have a value between 16 and 600 according to a level. When sps_num_subpics_minus1 is not present, the value of sps_num_subpics_minus1 can be inferred to be 0.
[0112] Com referência à Figura 11, quando sps_num_subpics_minus1 está presente, os elementos de sintaxe definidos para cada subfigura podem ser sinalizados. Elementos de sintaxe que indicam informações de coordenadas de um ponto inicial superior esquerdo de uma subfigura, uma largura de uma subfigura, uma altura de uma subfigura, informações que indicam se uma subfigura é considerada uma figura e informações que indicam se um filtro de loop é aplicado pode ser sinalizado.[0112] Referring to Figure 11, when sps_num_subpics_minus1 is present, the syntax elements defined for each subpicture can be flagged. Syntax elements that indicate coordinate information for a top-left starting point of a subfigure, a width of a subfigure, a height of a subfigure, information that indicates whether a subfigure is considered a figure, and information that indicates whether a loop filter is applied can be flagged.
[0113] subpic_ctu_top_left_x[i] é um elemento de sintaxe que indica, em unidades de CtbSizeY, uma posição do eixo horizontal de uma CTU superior esquerda de uma i-ésima subfigura. Aqui, a posição do eixo horizontal pode ser indicada em uma forma de coordenadas. CtbSizeY representa o tamanho de um CTB do componente luma. CtbSizeY pode ser determinado como 1 « Ctbl_og2SizeY, em que CtbLog2SizeY pode ser determinado como um valor obtido calculando sps_log2_ctu_size_minus5 + 5. Ctbl_og2SizeY representa um valor obtido tomando Iog2 de um tamanho de CTB de um componente luma. Aqui, o símbolo “«”, que é um operador de deslocamento à esquerda, representa que uma entrada de operando para o operador é binarizada, e o operando binarizado é deslocado para a esquerda tanto quanto um parâmetro de deslocamento. O número de bits de subpic_ctu_top_left_x[i] pode ser determinado como um valor obtido calculando Ceil(Log2(pic_width_max_in_luma_samples / CtbSizeY)). Aqui, Ceil(A) é uma função que retorna um número menor que é maior que um número real A. Quando subpic_ctu_top_left_x[i] não está presente, um valor de subpic_ctu_top_left_x[i] pode ser inferido como 0.[0113] subpic_ctu_top_left_x[i] is a syntax element that indicates, in units of CtbSizeY, a position of the horizontal axis of a top left CTU of an ith subfigure. Here, the position of the horizontal axis can be indicated in a coordinate form. CtbSizeY represents the size of a CTB of the luma component. CtbSizeY can be determined as 1 « Ctbl_og2SizeY, where CtbLog2SizeY can be determined as a value obtained by calculating sps_log2_ctu_size_minus5 + 5. Ctbl_og2SizeY represents a value obtained by taking Iog2 from a CTB size of a luma component. Here, the symbol “«”, which is a left shift operator, represents that an operand input to the operator is binarized, and the binarized operand is shifted left as much as a shift parameter. The number of bits of subpic_ctu_top_left_x[i] can be determined as a value obtained by calculating Ceil(Log2(pic_width_max_in_luma_samples / CtbSizeY)). Here, Ceil(A) is a function that returns a smaller number that is greater than a real number A. When subpic_ctu_top_left_x[i] is not present, a value of subpic_ctu_top_left_x[i] can be inferred as 0.
[0114] subpic_ctu_top_left_y[i] é um elemento de sintaxe que indica, em unidades de CtbSizeY, uma posição do eixo vertical de uma CTU superior esquerda de uma i-ésima subfigura. Aqui, a posição do eixo vertical pode ser indicada em uma forma de coordenadas. O número de bits de subpic_ctu_top_left_y[i] pode ser determinado como um valor obtido calculando Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY)). Quando subpic_ctu_top_left_y[i] não está presente, um valor de subpic_ctu_top_left_y[i] pode ser inferido como 0. pic_width_max_in_luma_sampleséum elemento de sintaxe que indica uma largura máxima de cada figura decodificada referente a SPS.[0114] subpic_ctu_top_left_y[i] is a syntax element that indicates, in units of CtbSizeY, a position of the vertical axis of a top left CTU of an ith subfigure. Here, the position of the vertical axis can be indicated in a coordinate form. The number of bits of subpic_ctu_top_left_y[i] can be determined as a value obtained by calculating Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY)). When subpic_ctu_top_left_y[i] is not present, a value of subpic_ctu_top_left_y[i] can be inferred as 0. pic_width_max_in_luma_samples is a syntax element that indicates a maximum width of each decoded figure referring to SPS.
[0115] subpic_width_minus1[i]é um elemento de sintaxe que indica um valor relacionado a uma largura de uma i-ésima subfigura. subpic_width_minus1[i] indica um valor obtido subtraindo 1 da largura de uma i-ésima subfigura. Nomeadamente, um valorobtido pela adição de 1 ao valor de subpic_width_minus1[i] pode ser um valor que indica a largura de uma i-ésima subfigura. Aqui, o valor que indica a largura de uma subfigura pode ser expresso em unidades de CtbSizeY. O número de bits de subpic_width_minus1[i] pode ser determinado como um valor obtido calculando Ceil(Log2(pic_width_max_in_luma_samples / CtbSizeY)). Quando subpic_width_minus1[i] não está presente, a largura de uma subfigura pode ser inferida como Ceil(pic_width_max_in_luma_samples/CtbSizeY) - 1.[0115] subpic_width_minus1[i] is a syntax element that indicates a value related to a width of an ith subfigure. subpic_width_minus1[i] indicates a value obtained by subtracting 1 from the width of an ith subpicture. Namely, a value obtained by adding 1 to the value of subpic_width_minus1[i] may be a value that indicates the width of an ith subpicture. Here, the value indicating the width of a subfigure can be expressed in units of CtbSizeY. The number of bits of subpic_width_minus1[i] can be determined as a value obtained by calculating Ceil(Log2(pic_width_max_in_luma_samples / CtbSizeY)). When subpic_width_minus1[i] is not present, the width of a subpicture can be inferred as Ceil(pic_width_max_in_luma_samples/CtbSizeY) - 1.
[0116] subpic_height_minus1[i]é um elemento de sintaxe que indica um valor relacionado a uma altura de uma i-ésima subfigura. subpic_height_minus1[i] indica um valor obtido subtraindo 1 da altura de uma i-ésima subfigura. Nomeadamente, um valor obtido pela adição de 1 ao valor de subpic_height_minus1[i] pode ser um valor que indica uma altura de uma i-ésima subfigura. Aqui, o valor que indica a altura de uma subfigura pode ser expresso em unidades de CtbSizeY. O número de bits de subpic_height_minus1[i] pode ser determinado como um valor obtido calculando Ceil(Log2(pic_height_max_in_luma_samples / CtbSizeY)). pic_height_max_in_luma_samples é um elemento de sintaxe que indica a altura máxima de cada figura decodificada referente ao SPS. Quando subpic_height_minus1[i] não estiver presente, a altura de uma subfigura pode ser inferida como Ceil(pic_height_max_in_luma_samples/CtbSizeY) - 1.[0116] subpic_height_minus1[i] is a syntax element that indicates a value related to a height of an ith subfigure. subpic_height_minus1[i] indicates a value obtained by subtracting 1 from the height of an ith subfigure. Namely, a value obtained by adding 1 to the value of subpic_height_minus1[i] can be a value that indicates a height of an ith subpicture. Here, the value indicating the height of a subfigure can be expressed in units of CtbSizeY. The number of bits of subpic_height_minus1[i] can be determined as a value obtained by calculating Ceil(Log2(pic_height_max_in_luma_samples / CtbSizeY)). pic_height_max_in_luma_samples is a syntax element that indicates the maximum height of each decoded figure relative to the SPS. When subpic_height_minus1[i] is not present, the height of a subfigure can be inferred as Ceil(pic_height_max_in_luma_samples/CtbSizeY) - 1.
[0117] subpic_treated_as_pic_flag[i] é um elemento de sintaxe que indica se o decodificador considera uma i-ésima subfigura como uma figura para realizar a decodificação. Quando um valor de subpic_treated_as_pic_flag[i] é 1, uma i-ésima subfigura em uma figura codificada individualmente dentro de uma sequência de vídeo de camada codificada (CLVS) pode ser tratada como uma figura durante um processo de decodificação, exceto para filtragem em loop. Quando o valor de subpic_treated_as_pic_flag[i] é 0, pode indicar que uma i-ésima subfigura em uma figura codificada individualmente dentro de um CLVS não é tratada como uma figura durante um processo de decodificação, exceto para filtragem em loop. Quando subpic_treated_as_pic_flag[i] não estiver presente, um valor de subpic_treated_as_pic_flag[i] pode ser inferido como 0.[0117] subpic_treated_as_pic_flag[i] is a syntax element that indicates whether the decoder considers an ith subpicture as a picture to perform decoding. When a value of subpic_treated_as_pic_flag[i] is 1, an ith subpicture in an individually encoded picture within a coded layer video sequence (CLVS) may be treated as a picture during a decoding process, except for loop filtering . When the value of subpic_treated_as_pic_flag[i] is 0, it may indicate that an ith subpicture in an individually encoded picture within a CLVS is not treated as a picture during a decoding process except for loop filtering. When subpic_treated_as_pic_flag[i] is not present, a value of subpic_treated_as_pic_flag[i] can be inferred as 0.
[0118] Loop_filter_across_subpic_enabled_flag[i] é um elemento de sintaxe que indica se um filtro de loop pode ser operado em um limite de subfigura. Quando um valor de Loop_filter_across_subpic_enabled_flag[i]é 1, isso indica que um filtro de loop pode ser operado em um limite de subfigura. O filtro de loop pode ser aplicado a cada i-ésima subfigura codificada dentro de um CLVS. Quando o valor de Loop_filter_across_subpic_enabled_flag[i]for 0, isso indica que esse filtro de loop não é operado em um limite de subfigura. Quando Loop_filter_across_subpic_enabled_flag[i] não estiver presente, o valor de Loop_filter_across_subpic_enabled_flag[i] pode ser inferido como 1.[0118] Loop_filter_across_subpic_enabled_flag[i] is a syntax element that indicates whether a loop filter can be operated on a subpic boundary. When a value of Loop_filter_across_subpic_enabled_flag[i] is 1, it indicates that a loop filter can be operated on a subpicture boundary. The loop filter can be applied to every ith subfigure encoded within a CLVS. When the value of Loop_filter_across_subpic_enabled_flag[i]is 0, it indicates that this loop filter is not operated on a subpicture boundary. When Loop_filter_across_subpic_enabled_flag[i] is not present, the value of Loop_filter_across_subpic_enabled_flag[i] can be inferred as 1.
[0119] Além disso, os parâmetros (elementos de sintaxe) relacionados a uma subfigura, que são descritos abaixo, podem ser sinalizados adicionalmente.[0119] Furthermore, parameters (syntax elements) related to a subfigure, which are described below, can be additionally signaled.
[0120] sps_subpic_id_present_flag é um elemento de sintaxe que indica se o mapeamento de ID de subfigura está presente no SPS. Quando um valor de sps_subpic_id_present_flag é 1, isso indica que o mapeamento de ID de subfigura está presente no SPS. Um ID de subfigura pode ser redefinido/mapeado como um novo valor de ID em vez de um valor definido padrão. Quando um valor de sps_subpic_id_present_flag é 0, isso indica que o mapeamento de ID de subfigura não está presente no SPS. sps_subpic_id_present_flag descrito na presente divulgação pode ser descrito como sps_subpic_id_mapping_explicitly_signalled_flag.[0120] sps_subpic_id_present_flag is a syntax element that indicates whether the subpicture ID mapping is present in the SPS. When a value of sps_subpic_id_present_flag is 1, it indicates that the subpicture ID mapping is present in the SPS. A subfigure ID can be reset/mapped as a new ID value instead of a default defined value. When a value of sps_subpic_id_present_flag is 0, it indicates that the subpicture ID mapping is not present in the SPS. sps_subpic_id_present_flag described in the present disclosure may be described as sps_subpic_id_mapping_explicitly_signalled_flag.
[0121] sps_subpic_id_signalling_present_flagé um elemento de sintaxe que indica se as informações relacionadas ao mapeamento de ID de subfigura são sinalizadas no SPS. Quando um valor de sps_subpic_id_signalling_present_flagé 1, as informações (valor de mapeamento) relacionadas ao mapeamento de ID de subfigura são sinalizadas no SPS. Quando o valor de sps_subpic_id_signalling_present_flag é 0, as informações (valor de mapeamento) relacionadas ao mapeamento de ID de subfigura não são sinalizadas no SPS. Quando sps_subpic_id_signalling_present_flag não está presente, o valor de sps_subpic_id_signalling_present_flag pode ser inferido como 0. sps_subpic_id_signalling_present_flag descrito na presente divulgação pode ser descrito como sps_subpic_id_mapping_present_flag.[0121] sps_subpic_id_signalling_present_flag is a syntax element that indicates whether information related to the subpicture ID mapping is signaled in the SPS. When a value of sps_subpic_id_signalling_present_flage is 1, the information (mapping value) related to the subpicture ID mapping is signaled in the SPS. When the value of sps_subpic_id_signalling_present_flag is 0, the information (mapping value) related to the subpicture ID mapping is not signaled in SPS. When sps_subpic_id_signalling_present_flag is not present, the value of sps_subpic_id_signalling_present_flag may be inferred to be 0. sps_subpic_id_signalling_present_flag described in the present disclosure may be described as sps_subpic_id_mapping_present_flag.
[0122] sps_subpic_id_len_minus1 é um elemento de sintaxe que indica um valor relacionado ao número de bits para expressar um valor de sps_subpic_id[i] descrito abaixo. sps_subpic_id_len_minus1 indica um valor obtido subtraindo 1 do número de bits para expressar o valor de sps_subpic_id[i]. Ou seja, um valor obtido pela adição de 1 ao valor de sps_subpic_id_len_minus1 pode indicar o número de bits para expressar o valor de sps_subpic_id[i]. sps_subpic_id_len_minus1 pode ter um valor entre 0 e 15.[0122] sps_subpic_id_len_minus1 is a syntax element that indicates a value related to the number of bits to express a sps_subpic_id[i] value described below. sps_subpic_id_len_minus1 indicates a value obtained by subtracting 1 from the number of bits to express the value of sps_subpic_id[i]. That is, a value obtained by adding 1 to the value of sps_subpic_id_len_minus1 can indicate the number of bits to express the value of sps_subpic_id[i]. sps_subpic_id_len_minus1 can have a value between 0 and 15.
[0123] sps_subpic_id[i] é um elemento de sintaxe que indica um valor de ID de subfigura de uma i-ésima subfigura. O número de bits para expressar um valor de sps_subpic_id[i] pode ser calculado como sps_subpic_id_len_minus1 + 1. Quando sps_subpic_id[i] não está presente e o valor de sps_subpic_id_present_flag é 0, o valor de ID de subfigura de uma i-ésima subfigura pode ser um valor entre 0 e o valor de sps_num_subpics_minus1. Com referência à Figura 11, o valor de ID de subfigura pode ser determinado como um valor de i que aumenta em incrementos de 1 devido ao loop for na sintaxe if(subpics_present_flag). Quando sps_subpic_id[i] não está presente e o valor de sps_subpic_id_present_flag é 0, o número de bits para expressar o valor de sps_subpic_id[i] pode ser inferido como um valor obtido calculando Ceil(Log2(sps_num_subpics_minus1 + 1)).[0123] sps_subpic_id[i] is a syntax element that indicates a subpicture ID value of an ith subpicture. The number of bits to express a value of sps_subpic_id[i] can be calculated as sps_subpic_id_len_minus1 + 1. When sps_subpic_id[i] is not present and the value of sps_subpic_id_present_flag is 0, the subfigure ID value of an ith subfigure can be a value between 0 and the value of sps_num_subpics_minus1. Referring to Figure 11, the subpicture ID value can be determined as a value of i that increases in increments of 1 due to the for loop in the if(subpics_present_flag) syntax. When sps_subpic_id[i] is not present and the value of sps_subpic_id_present_flag is 0, the number of bits to express the value of sps_subpic_id[i] can be inferred as a value obtained by calculating Ceil(Log2(sps_num_subpics_minus1 + 1)).
[0124] Na Figura 11, para que o elemento de sintaxe sps_subpic_id[i] seja sinalizado, o valor de sps_subpic_id_present_flag indicando se o mapeamento de ID de subfigura está presente deve ser 1. Além disso, o valor de sps_subpic_id_signalling_present_flag indicando que um valor de ID de subfigura mapeado é sinalizado em SPS deve ser 1. Então, o codificador/decodificador pode sinalizar/analisarsps_subpic_id_len_minus1 que é um elemento de sintaxe que indica o número de bits para expressar um valor de ID de subfigura, e o codificador pode informar o decodificador do valor de sps_subpic_id[i] pelo número de subfiguras previamente sinalizadas.[0124] In Figure 11, for the sps_subpic_id[i] syntax element to be signaled, the value of sps_subpic_id_present_flag indicating whether the subfigure ID mapping is present must be 1. Additionally, the value of sps_subpic_id_signalling_present_flag indicating that a value of Mapped subpicture ID is signaled in SPS must be 1. Then, the encoder/decoder can flag/analyzearsps_subpic_id_len_minus1 which is a syntax element that indicates the number of bits to express a subpicture ID value, and the encoder can inform the decoder of the value of sps_subpic_id[i] by the number of previously flagged subpictures.
[0125] A Figura 12 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[0125] Figure 12 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0126] Com referência à Figura 12, os elementos de sintaxe incluídos na estrutura de sintaxe de RBSP de PPS são descritos abaixo.[0126] With reference to Figure 12, the syntax elements included in the PPS RBSP syntax structure are described below.
[0127] pps_pic_parameter_set_id é um elemento de sintaxe, que indica distintamente PPS para ser referido por outros elementos de sintaxe. pps_pic_parameter_set_id pode ter um valor entre 0 e 63.[0127] pps_pic_parameter_set_id is a syntax element, which distinctly indicates PPS to be referred to by other syntax elements. pps_pic_parameter_set_id can have a value between 0 and 63.
[0128] pps_seq_parameter_set_id é um elemento de sintaxe que indica um valor correspondente a sps_seq_parameter_set_id para referência a SPS. Um valor de pps_seq_parameter_set_id deve ser o mesmo em todos os PPSs referidos por figuras codificadas dentro de um CLVS.[0128] pps_seq_parameter_set_id is a syntax element that indicates a value corresponding to sps_seq_parameter_set_id for reference to SPS. A value of pps_seq_parameter_set_id must be the same across all PPSs referred to by figures encoded within a CLVS.
[0129] pic_width_in_luma_samplesé um elemento de sintaxe que indica uma largura de uma figura codificada referente a PPS em unidades de amostra de luma. Um valor de pic_width_in_luma_samples não é 0 e deve ser expresso como um múltiplo de Max(8, MinCbSizeY) e deve ser igual ou menor que um valor de pic_width_max_in_luma_samples. pic_width_max_in_luma_samples pode indicar a largura máxima de uma figura pelo número de amostras de luma. Quando o valor de subpics_present_flag for 1 ou o valor de ref_pic_resampling_enabled_flag for 0, o valor de pic_width_in_luma_samples deverá ser igual ao valor de pic_width_max_in_luma_samples. Max(a, b) é uma função que retorna um valor maior entre “a” e “b”.[0129] pic_width_in_luma_samples is a syntax element that indicates a width of an encoded figure referring to PPS in luma sample units. A value of pic_width_in_luma_samples is not 0 and must be expressed as a multiple of Max(8, MinCbSizeY) and must be equal to or less than a value of pic_width_max_in_luma_samples. pic_width_max_in_luma_samples can indicate the maximum width of a figure by the number of luma samples. When the value of subpics_present_flag is 1 or the value of ref_pic_resampling_enabled_flag is 0, the value of pic_width_in_luma_samples must be equal to the value of pic_width_max_in_luma_samples. Max(a, b) is a function that returns a value greater between “a” and “b”.
[0130] pic_height_in_luma_samplesé um elemento de sintaxe que indica uma altura de cada figura decodificada referente a PPS em unidades de amostra de luma. Um valor de pic_height_in_luma_samples não é 0 e deve ser expresso como um múltiplo de Max(8, MinCbSizeY) e deve ser igual ou menor que um valor de pic_height_max_in_luma_samples.[0130] pic_height_in_luma_samples is a syntax element that indicates a height of each decoded figure referring to PPS in luma sample units. A value of pic_height_in_luma_samples is not 0 and must be expressed as a multiple of Max(8, MinCbSizeY) and must be equal to or less than a value of pic_height_max_in_luma_samples.
[0131] Os quatro elementos de sintaxe pps_subpic_id_signalling_present_flag, pps_num_subpics_minus1, pps_subpic_id_len_minus1 e pps_subpic_id[i] descritos abaixo são elementos de sintaxe em PPS relacionados a uma subfigura.[0131] The four syntax elements pps_subpic_id_signalling_present_flag, pps_num_subpics_minus1, pps_subpic_id_len_minus1 and pps_subpic_id[i] described below are syntax elements in PPS related to a subfigure.
[0132] pps_subpic_id_signalling_present_flag é um elemento de sintaxe que indica se o mapeamento de ID de subfigura é sinalizado em PPS. Quando um valor de pps_subpic_id_signalling_present_flag é 1, indica que o mapeamento de ID de subfigura é sinalizado em PPS. Quando o valor de pps_subpic_id_signalling_present_flag é 0, indica que o mapeamento de ID de subfigura não está sinalizado no PPS. Além disso, quando o valor de sps_subpic_id_present_flagfor 0 ou o valor de sps_subpic_id_signalling_present_flag for 1, o valor de pps_subpic_id_signalling_present_flag deverá ser 0.[0132] pps_subpic_id_signalling_present_flag is a syntax element that indicates whether the subpicture ID mapping is signaled in PPS. When a value of pps_subpic_id_signalling_present_flag is 1, it indicates that the subpicture ID mapping is signaled in PPS. When the value of pps_subpic_id_signalling_present_flag is 0, it indicates that the subpicture ID mapping is not signaled in PPS. Additionally, when the value of sps_subpic_id_present_flag is 0 or the value of sps_subpic_id_signalling_present_flag is 1, the value of pps_subpic_id_signalling_present_flag must be 0.
[0133] pps_num_subpics_minus1 é um elemento de sintaxe que indica um valor relacionado ao número de subfiguras em uma figura codificada referente a PPS. Um valor de pps_num_subpics_minus1 é um valor obtido subtraindo 1 do número de subfiguras em uma figura codificada referente a PPS. Nomeadamente, um valor obtido pela adição de 1 ao valor de pps_num_subpics_minus1 pode indicar o número de subfiguras em uma figura codificada referente a PPS. Como uma condição de correspondência de fluxo de bits, o valor de pps_num_subpic_minus1 deve ser igual ao valor de sps_num_subpics_minus1.[0133] pps_num_subpics_minus1 is a syntax element that indicates a value related to the number of subpics in a PPS-related encoded figure. A value of pps_num_subpics_minus1 is a value obtained by subtracting 1 from the number of subpictures in a PPS-encoded picture. Namely, a value obtained by adding 1 to the value of pps_num_subpics_minus1 can indicate the number of subpictures in a PPS-encoded picture. As a bitstream matching condition, the value of pps_num_subpic_minus1 must be equal to the value of sps_num_subpics_minus1.
[0134] pps_subpic_id_len_minus1 é um elemento de sintaxe que indica um valor relacionado ao número de bits usados para expressar pps_subpic_id[i]. Um valor de pps_subpic_id_len_minus1 indica um valor obtido subtraindo 1 do número de bits usados para expressar pps_subpic_id[i]. Ou seja, um valor obtido pela adição de 1 ao valor de pps_subpic_id_len_minus1 indica o número de bits usados para expressar pps_subpic_id[i]. O valor de pps_subpic_id_len_minus1 pode variar de 0 a 15. Como uma condição de correspondência de fluxo de bits, o valor de pps_subpic_id_len_minus1 deve ser o mesmo em todos os PPSs referidos em figuras codificadas dentro de um CLVS.[0134] pps_subpic_id_len_minus1 is a syntax element that indicates a value related to the number of bits used to express pps_subpic_id[i]. A value of pps_subpic_id_len_minus1 indicates a value obtained by subtracting 1 from the number of bits used to express pps_subpic_id[i]. That is, a value obtained by adding 1 to the value of pps_subpic_id_len_minus1 indicates the number of bits used to express pps_subpic_id[i]. The value of pps_subpic_id_len_minus1 can range from 0 to 15. As a bitstream matching condition, the value of pps_subpic_id_len_minus1 must be the same across all PPSs referred to in figures encoded within a CLVS.
[0135] pps_subpic_id[i] é um elemento de sintaxe que indica um valor de ID de subfigura de uma i-ésima subfigura. Um comprimento (número de bits) de pps_subpic_id[i] pode ser igual a um valor obtido calculando pps_subpic_id_len_minus1 +1.[0135] pps_subpic_id[i] is a syntax element that indicates a subpicture ID value of an ith subpicture. A length (number of bits) of pps_subpic_id[i] can be equal to a value obtained by calculating pps_subpic_id_len_minus1 +1.
[0136] A Figura 13 é um diagrama que ilustra uma estrutura de sintaxe de RBSPde cabeçalho de figura de acordo com uma modalidade da presente invenção.[0136] Figure 13 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0137] Com referência à Figura 13, os elementos de sintaxe incluídos na estrutura de sintaxe de RBSP de cabeçalho de figura são descritos abaixo.[0137] With reference to Figure 13, the syntax elements included in the figure header RBSP syntax structure are described below.
[0138] ph_pic_parameter_set_id é um elemento de sintaxe que indica um valor correspondente a pps_pic_parameter_set_id definido no PPS. ph_pic_parameter_set_id pode ter um valor entre 0 e 63.[0138] ph_pic_parameter_set_id is a syntax element that indicates a value corresponding to pps_pic_parameter_set_id defined in PPS. ph_pic_parameter_set_id can have a value between 0 and 63.
[0139] ph_subpic_id_signalling_present_flag é um elemento de sintaxe que indica se a sinalização de mapeamento de ID de subfigura pode ser transmitida em um cabeçalho de figura. Quando um valor de ph_subpic_id_signalling_present_flagé 1, isso indica que a sinalização de mapeamento de ID de subfigura pode ser transmitida em um cabeçalho de figura. Quando o valor de ph_subpic_id_signalling_present_flag é 0, isso indica que a sinalização de mapeamento de ID de figura de subfigura não é transmitida em um cabeçalho de figura.[0139] ph_subpic_id_signalling_present_flag is a syntax element that indicates whether the subpicture ID mapping flag can be conveyed in a picture header. When a value of ph_subpic_id_signalling_present_flage is 1, this indicates that the subpicture ID mapping flag can be passed in a picture header. When the value of ph_subpic_id_signalling_present_flag is 0, it indicates that the subpicture ID mapping flag is not transmitted in a picture header.
[0140] ph_subpic_id_len_minus1 é um elemento de sintaxe que indica um valor relacionado ao número de bits usados para expressar ph_subpic_id[i]. ph_subpic_id_len_minus1 pode indicar um valor obtido subtraindo 1 do número de bits usados para expressar ph_subpic_id[i]. Ou seja, um valor obtido pela adição de 1 ao valor de ph_subpic_id_len_minus1 pode ser o número de bits usados para expressar ph_subpic_id[i]. Aqui, o valor de pic_subpic_id_len_minus1 pode estar entre 0 e 15. Como uma condição de correspondência de fluxo de bits, o valor de ph_subpic_id_len_minus1 deve ser o mesmo em todos os PHs referidos por uma figura codificada dentro de um CLVS.[0140] ph_subpic_id_len_minus1 is a syntax element that indicates a value related to the number of bits used to express ph_subpic_id[i]. ph_subpic_id_len_minus1 can indicate a value obtained by subtracting 1 from the number of bits used to express ph_subpic_id[i]. That is, a value obtained by adding 1 to the value of ph_subpic_id_len_minus1 can be the number of bits used to express ph_subpic_id[i]. Here, the value of pic_subpic_id_len_minus1 can be between 0 and 15. As a bitstream matching condition, the value of ph_subpic_id_len_minus1 must be the same across all PHs referred to by a figure encoded within a CLVS.
[0141] ph_subpic_id[i] é um elemento de sintaxe que indica um i-ésimo valor de ID de subfigura. O número de bits para expressar ph_subpic_id[i] pode ser calculado como ph_subpic_id_len_minus1 +1.[0141] ph_subpic_id[i] is a syntax element that indicates an ith subpicture ID value. The number of bits to express ph_subpic_id[i] can be calculated as ph_subpic_id_len_minus1 +1.
[0142] Subpicldl_ist[i] é um elemento de sintaxe usado para determinar um valordeslice_subpic_idem um cabeçalho de fatia.[0142] Subpicldl_ist[i] is a syntax element used to determine a slice_subpic_ide value in a slice header.
[0143] Um método de derivar Subpicldl_ist[i] é expresso pela Equação 1. [0143] A method of deriving Subpicldl_ist[i] is expressed by Equation 1.
[0144] é um operador condicional, eA= B ? C : D indica que A se torna um valor de C se a condição B for verdadeira e se torna um valor de D se a condição B for falsa.[0144] is a conditional operator, eA= B ? C : D indicates that A becomes a value of C if condition B is true and becomes a value of D if condition B is false.
[0145] Com referência à Equação 1, um valordeSubpicldl_ist[i] é determinado de acordo com o valor de sps_subpic_id_signalling_present_flag quando o valor de sps_subpic_id_present_flag é 1. Aqui, quando o valor de sps_subpic_id_signalling_present_flag é 1, o valor de Subpicldl_ist[i] é o igual ao valor de sps_subpic_id[i]. Quando o valor de sps_subpic_id_signalling_present_flag é 0, o valor de Subpicldl_ist[i] é determinado de acordo com o valor de ph_subpic_id_signalling_present_flag. Aqui, quando o valor de ph_subpic_id_signalling_present_flag é 1, o valor de SubpicldList[i] é o mesmo que o valorde ph_subpic_id[i]. Quando o valor de ph_subpic_id_signalling_present_flag é 0, o valorde Subpicldl_ist[i] é igual ao valorde pps_subpic_id[i].[0145] With reference to Equation 1, a value of Subpicldl_ist[i] is determined according to the value of sps_subpic_id_signalling_present_flag when the value of sps_subpic_id_present_flag is 1. Here, when the value of sps_subpic_id_signalling_present_flag is 1, the value of Subpicldl_ist[i] is the equal to the value of sps_subpic_id[i]. When the value of sps_subpic_id_signalling_present_flag is 0, the value of Subpicldl_ist[i] is determined according to the value of ph_subpic_id_signalling_present_flag. Here, when the value of ph_subpic_id_signalling_present_flag is 1, the value of SubpicldList[i] is the same as the value of ph_subpic_id[i]. When the value of ph_subpic_id_signalling_present_flag is 0, the value of Subpicldl_ist[i] is equal to the value of pps_subpic_id[i].
[0146] Enquanto isso, o valor de Subpicldl_ist[i] é igual a um índice i quando o valor de sps_subpic_id_present_flag é 0.[0146] Meanwhile, the value of Subpicldl_ist[i] is equal to an index i when the value of sps_subpic_id_present_flag is 0.
[0147] A Figura 14 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[0147] Figure 14 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0148] Em detalhes, a Figura 14 mostra que ph_subpic_id[i] é sempre sinalizado/analisado na estrutura de sintaxe de RBSP de cabeçalho de figura.[0148] In detail, Figure 14 shows that ph_subpic_id[i] is always flagged/parsed in the picture header RBSP syntax structure.
[0149] Pode haver um caso em que o valor de ph_subpic_id[i] não esteja presente de acordo com uma condição na qual Subpicldl_ist[i] descrito na Figura 13 é sinalizado/analisado. Por exemplo, conforme mostrado na Equação 1, quando o valor de sps_subpic_id_present_flag é 1, o valor de sps_subpic_id_signalling_present_flag é 0 e o valor de ph_subpic_id_signalling_present_flag é 0, Sub picldl_ist[i] = pps_subpic_id[ij. No entanto, pode haver um caso em que o valor de pps_subpic_id[i] não esteja presente. Como uma condição (isto é, sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag) não é considerada ao sinalizar/analisar pps_subpic_id_signalling_present_flag, o valor de pps_subpics_id_signalling_present_flag pode ser 0. Um valor de ID de subfigura pode não ser transmitido em PPS quando o valor de pps_subpic_id_signalling_present_flag é 0e, portanto, o valor de pps_subpic_id[i] pode não estar presente. A Figura 14 ilustra um exemplo para resolver este problema. Com referência à Figura 14, existe uma condição para sinalização/análisede ph_subpic_id[i] na estrutura de sintaxe de RBSP do cabeçalho da figura. Ou seja, quando sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag for verdadeiro, ph_subpic_id_len_minus1 e ph_subpic_id[i] podem ser sinalizados/analisados. Em um cabeçalho de figura, quando sps_subpic_id_present_flag é verdadeiro (isto é, o valor de sps_subpic_id_present_flag é 1) e o valor de sps_subpic_id_signalling_flag é 0, um valor de ID de subfigura não sinalizado no SPS pode ser transmitido. A transmissão de um valor de ID de subfigura em um cabeçalho de figura pode ser independente de um valor de ID de subfigura estar presente no PPS.[0149] There may be a case where the value of ph_subpic_id[i] is not present according to a condition in which Subpicldl_ist[i] described in Figure 13 is flagged/parsed. For example, as shown in Equation 1, when the value of sps_subpic_id_present_flag is 1, the value of sps_subpic_id_signalling_present_flag is 0, and the value of ph_subpic_id_signalling_present_flag is 0, Sub picldl_ist[i] = pps_subpic_id[ij. However, there may be a case where the value of pps_subpic_id[i] is not present. Because a condition (i.e. sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag) is not considered when signaling/parsing pps_subpic_id_signalling_present_flag, the value of pps_subpics_id_signalling_present_flag may be 0. A subpicture ID value may not be transmitted in PPS when the value of pps_subpic_id_signalling_present_flag g is 0e, therefore , the value of pps_subpic_id[i] may not be present. Figure 14 illustrates an example to solve this problem. With reference to Figure 14, there is a condition for flagging/parsing ph_subpic_id[i] in the RBSP syntax structure of the figure header. That is, when sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag is true, ph_subpic_id_len_minus1 and ph_subpic_id[i] can be signaled/analyzed. In a picture header, when sps_subpic_id_present_flag is true (that is, the value of sps_subpic_id_present_flag is 1) and the value of sps_subpic_id_signalling_flag is 0, an unsigned subpicture ID value in the SPS can be passed. The transmission of a subfigure ID value in a figure header may be independent of whether a subfigure ID value is present in the PPS.
[0150] A Figura 15 é um diagrama que ilustra uma estrutura de sintaxe de RBSPde cabeçalho de figura de acordo com uma modalidade da presente invenção.[0150] Figure 15 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0151] A Figura 15 ilustra outro método para sempre sinalizar/analisaro valor de ph_subpic_id[i] para abordar o caso mencionado acima em que o valor de Subpicldl_ist[i] não está presente de acordo com uma condição de sinalização/análise sintática.[0151] Figure 15 illustrates another method for always flagging/parsing the value of ph_subpic_id[i] to address the aforementioned case in which the value of Subpicldl_ist[i] is not present according to a flagging/parsing condition.
[0152] Quando a condição sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag && !pps_subpic_id_signalling_flag for verdadeira, ph_subpic_id_len_minus1 e ph_subpic_id[i] podem ser sinalizados/analisados. Em outras palavras, a Figura 15 propõe um formato no qual uma condição relacionada a pps_subpic_id_signalling_flag é adicionada à condição descrita com referência à Figura 14. Além da condição proposta com referência à Figura 14, quando o valor de pps_subpic_id_signalling_flag é 0, subpic_id[i] não pode ser sinalizado/analisado na sintaxe de RBSP de SPS e na sintaxe de RBSP de PPS. Neste caso, pode ser indicado que subpicjd[i] deve ser sinalizado/analisado em um cabeçalho de figura.[0152] When the condition sps_subpic_id_present_flag && !sps_subpic_id_signalling_flag && !pps_subpic_id_signalling_flag is true, ph_subpic_id_len_minus1 and ph_subpic_id[i] can be signaled/analyzed. In other words, Figure 15 proposes a format in which a condition related to pps_subpic_id_signalling_flag is added to the condition described with reference to Figure 14. In addition to the condition proposed with reference to Figure 14, when the value of pps_subpic_id_signalling_flag is 0, subpic_id[i] cannot be flagged/parsed in SPS RBSP syntax and PPS RBSP syntax. In this case, it may be indicated that subpicjd[i] should be flagged/parsed in a figure header.
[0153] A Figura 16 ilustra uma estrutura de sintaxe e semântica de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[0153] Figure 16 illustrates an RBSP syntax and semantic structure of a set of figure parameters according to an embodiment of the present invention.
[0154] A Figura 16 ilustra outro método para sempre sinalizar/analisaro valor de ph_subpic_id[i] para abordar o caso mencionado acima em que o valor de Subpicldl_ist[i] não está presente de acordo com uma condição de sinalização/análise sintática.[0154] Figure 16 illustrates another method for always flagging/parsing the value of ph_subpic_id[i] to address the aforementioned case in which the value of Subpicldl_ist[i] is not present according to a flagging/parsing condition.
[0155] A Figura 16 ilustra que uma condição adicional é adicionada a uma semântica que descreve pps_subpic_id_signalling_present_flag na estrutura de sintaxe RBSP do cabeçalho da figura descrita com referência à Figura 13.[0155] Figure 16 illustrates that an additional condition is added to a semantics describing pps_subpic_id_signalling_present_flag in the RBSP syntax structure of the figure header described with reference to Figure 13.
[0156] A condição adicional é descrita abaixo. [Quando sps_subpic_id_present_flag é igual a 1 e sps_subpic_id_signalling_present_flag é igual a 0, pps subpic id signalling present flag deve ser igual a 1]. Em outras palavras, quando o valor de sps_subpic_id_present_flag é 1 e o valor de sps_subpic_id_signalling_present_flag é 0, o valor de pps_subpic_id_signalling_present_flag pode ser definido como 1. Ou seja, no caso em queé indicado que o mapeamento de ID de subfigura está presente no SPS, mas um valor de ID de subfigura não é sinalizado em SPS, o valor de pps_subpic_id_signalling_present_flag pode ser definido como 1 em PPS e um valor de ID de subfigura pode ser sinalizado/analisado em PPS. Isto é eficaz em termos do grau de liberdade de transmissão de um valor de ID de subfigura, uma vez que um valor de ID de subfigura pode ser transmitido num cabeçalho de figura. Quando um valor de ID de subfigura é transmitido simultaneamente em um cabeçalho de figura e em PPS conforme configurado anteriormente, o valor de Subpicldl_ist[i] pode ser determinado como um valor de um cabeçalho de figura.[0156] The additional condition is described below. [When sps_subpic_id_present_flag is equal to 1 and sps_subpic_id_signalling_present_flag is equal to 0, pps subpic id signaling present flag must be equal to 1]. In other words, when the value of sps_subpic_id_present_flag is 1 and the value of sps_subpic_id_signalling_present_flag is 0, the value of pps_subpic_id_signalling_present_flag can be set to 1. That is, in the case where it is indicated that the subfigure ID mapping is present in the SPS, but a subpicture ID value is not flagged in SPS, the pps_subpic_id_signalling_present_flag value can be set to 1 in PPS, and a subpicture ID value can be flagged/parsed in PPS. This is effective in terms of the degree of freedom of transmitting a subfigure ID value, since a subfigure ID value can be transmitted in a figure header. When a subpicldl ID value is transmitted simultaneously in a figure header and in PPS as previously configured, the value of Subpicldl_ist[i] can be determined as a value of a figure header.
[0157] A Figura 17 é um diagrama que ilustra um método para determinar uma variável de matriz Subpicldl_ist[i] de acordo com uma modalidade da presente invenção.[0157] Figure 17 is a diagram illustrating a method for determining a Subpicldl_ist[i] matrix variable in accordance with an embodiment of the present invention.
[0158] Em detalhes, a Figura 17 é um diagrama que ilustra um método para resolver um problema que pode ocorrer na Equação 1.[0158] In detail, Figure 17 is a diagram illustrating a method for solving a problem that may occur in Equation 1.
[0159] A Figura 17 mostra que quando sps_subpic_id_present_flag é verdadeiro (isto é, tem um valor de 1), sps_subpic_id_signalling_present_flag é falso (isto é, tem um valor de 0) e ph_subpic_id_signalling_present_flag é falso (isto é, tem um valor de 0), a condição de pps subpic id signalling present flag é verificada novamente. O codificador/decodificador pode verificar a condição de pps_subpic_id_signalling_present_flag novamente e pode determinar Subpicldl_ist[i] como pps_subpic_id[i] quando pps_subpic_id_signalling_present_flagfor verdadeiro (isto é, tem um valor de 1) e determinar Subpicldl_ist[i] como um valor de índice i quando pps_subpic_id_signalling_present_flag é falso (isto é, tem um valor de 0).[0159] Figure 17 shows that when sps_subpic_id_present_flag is true (i.e., has a value of 1), sps_subpic_id_signalling_present_flag is false (i.e., has a value of 0) and ph_subpic_id_signalling_present_flag is false (i.e., has a value of 0) , the pps subpic id signaling present flag condition is checked again. The encoder/decoder may check the pps_subpic_id_signalling_present_flag condition again and may determine Subpicldl_ist[i] as pps_subpic_id[i] when pps_subpic_id_signalling_present_flag is true (that is, has a value of 1) and determine Subpicldl_ist[i] as an index value i when pps_subpic_id_signalling_present_flag is false (i.e., has a value of 0).
[0160] Além disso, como uma condição de correspondência de fluxo de bits, a condição de que pelo menos um dos valores de sps_subpic_id_signalling_present_flag, pps_subpic_id_signalling_present_flag e ph_subpic_id_signalling_present_flag deve ser 1 quando o valor de sps_subpic_id_present_flag for 1 pode ser considerado.[0160] Furthermore, as a bitstream matching condition, the condition that at least one of the values of sps_subpic_id_signalling_present_flag, pps_subpic_id_signalling_present_flag and ph_subpic_id_signalling_present_flag must be 1 when the value of sps_subpic_id_present_flag is 1 can be considered.
[0161] [sps_subpic_id_present_flag igual a 1 especifica que o mapeamento de ID de subfigura está presente no SPS. sps_subpic_id_present_flag igual a 0 especifica que o mapeamento de ID de subfigura não está presente no SPS. É um requisito de conformidade de fluxo de bits que o valor de um dentre sps_subpic_id_signalling_present_flag, pps_subpic_id_signalling_present_flag e ph_subpic_id_signalling_present_flag seja igual a 1.][0161] [sps_subpic_id_present_flag equal to 1 specifies that the subpicture ID mapping is present in the SPS. sps_subpic_id_present_flag equal to 0 specifies that the subpicture ID mapping is not present in the SPS. It is a bitstream compliance requirement that the value of one of sps_subpic_id_signalling_present_flag, pps_subpic_id_signalling_present_flag, and ph_subpic_id_signalling_present_flag equals 1.]
[0162] A Figura 18 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0162] Figure 18 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0163] A Figura 18 é um diagrama que ilustra uma estrutura na qual sps_subpic_id_present_flag incluída na estrutura de sintaxe de RBSP de SPS é sinalizada/analisada. sps_subpic_id_present_flag é um elemento de sintaxe que indica se o mapeamento de ID de subfigura está presente e pode ser significativo quando uma subfigura está presente. Com referência à Figura 11, no SPS, sps_subpic_id_present_flag é sinalizado/analisado independentemente de (independentemente de verdadeiro/falso) um resultado de análise de subpics_present_flag indicando se uma subfigura está presente em uma figura. Portanto, conforme descrito acima, quando o valor de subpics_present_flag é 0, sps_subpic_id_present_flag não é mais significativo. Em outras palavras, como o mapeamento de ID de subfigura não está obviamente presente se uma subfigura não estiver presente em uma figura, sps_subpic_id_present_flag que é um elemento de sintaxe que indica se o mapeamento de ID de subfigura está presente não é necessário. Portanto, de acordo com a Figura 18, sps_subpic_id_present_flag pode ser sinalizado/analisado quando subpics_present_flag for verdadeiro.[0163] Figure 18 is a diagram illustrating a structure in which sps_subpic_id_present_flag included in the RBSP syntax structure of SPS is flagged/parsed. sps_subpic_id_present_flag is a syntax element that indicates whether the subpicture ID mapping is present and can be meaningful when a subpicture is present. With reference to Figure 11, in SPS, sps_subpic_id_present_flag is flagged/parsed independently of (regardless of true/false) a subpics_present_flag parsing result indicating whether a subpicture is present in a figure. Therefore, as described above, when the value of subpics_present_flag is 0, sps_subpic_id_present_flag is no longer significant. In other words, since the subfigure ID mapping is not obviously present if a subfigure is not present in a figure, sps_subpic_id_present_flag which is a syntax element that indicates whether the subfigure ID mapping is present is not necessary. Therefore, according to Figure 18, sps_subpic_id_present_flag can be flagged/parsed when subpics_present_flag is true.
[0164] A Figura 19 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0164] Figure 19 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0165] Em detalhes, a Figura 19 refere-se a elementos de sintaxe relacionados a uma partição na estrutura de sintaxe de RBSPde SPS de acordo com uma modalidade da presente invenção.[0165] In detail, Figure 19 refers to syntax elements related to a partition in the RBSPde SPS syntax structure according to an embodiment of the present invention.
[0166] Iog2_min_luma_coding_block_size_minus2é um elemento de sintaxe que indica um valor relacionado a um tamanho mínimo de bloco de codificação de luma. Iog2_min_luma_coding_block_size_minus2 indica um valor obtido subtraindo 2 de um tamanho mínimo de bloco de codificação de luma. Ou seja, um valor obtido pela adição de 2 ao valor de Iog2_min_luma_coding_block_size_minus2 pode indicar um tamanho mínimo de bloco de codificação de luma. Aqui, Iog2_min_luma_coding_block_size_minus2 pode ter um valor entre 0 e (sps_log2_ctu_size_minus5 + 3). sps_log2_ctu_size_minus5 é um elemento de sintaxe que indica um valor relacionado ao tamanho de um bloco de árvore de codificação luma de uma unidade de árvore de codificação. sps_log2_ctu_size_minus5 pode ser sinalizado/analisado no SPS e pode ter um valor entre 0 e 2.[0166] Iog2_min_luma_coding_block_size_minus2 is a syntax element that indicates a value related to a minimum luma coding block size. Iog2_min_luma_coding_block_size_minus2 indicates a value obtained by subtracting 2 from a minimum luma encoding block size. That is, a value obtained by adding 2 to the value of Iog2_min_luma_coding_block_size_minus2 may indicate a minimum luma encoding block size. Here, Iog2_min_luma_coding_block_size_minus2 can have a value between 0 and (sps_log2_ctu_size_minus5 + 3). sps_log2_ctu_size_minus5 is a syntax element that indicates a value related to the size of a luma encoding tree block of a encoding tree unit. sps_log2_ctu_size_minus5 can be flagged/parsed in SPS and can have a value between 0 and 2.
[0167] As variáveis MinCbl_og2SizeY, MinCbSizeY, IbcBufWidthY, IbcBufWidthC e Vsize que podem ser usadas na presente invenção podem ser calculadas usando a Equação 2. [0167] The variables MinCbl_og2SizeY, MinCbSizeY, IbcBufWidthY, IbcBufWidthC and Vsize that can be used in the present invention can be calculated using Equation 2.
[0168] MinCbl_og2SizeYdenota um tamanho mínimo de bloco de codificação de luma em unidades Iog2, MinCbSizeY denota um tamanho mínimo de bloco de codificação, IbcBufWidthY denota um tamanho de buffer de luma capaz de armazenar uma área de referência necessária para cópia de intrabloco, e IbcBufWidthC denota um tamanho de buffer de croma capaz de armazenando uma área de referência necessária para a cópia intrabloco.[0168] MinCbl_og2SizeY denotes a minimum luma encoding block size in Iog2 units, MinCbSizeY denotes a minimum encoding block size, IbcBufWidthY denotes a luma buffer size capable of storing a reference area required for intrablock copying, and IbcBufWidthC denotes a chroma buffer size capable of storing a reference area required for intrablock copying.
[0169] Min(a, b) é uma função que retorna um valor menor entre “a” e “b”. A variável MinCbSizeYdeve ser igual ou menor que VSize.[0169] Min(a, b) is a function that returns a smaller value between “a” and “b”. The MinCbSizeY variable must be equal to or less than VSize.
[0170] partition_constraints_override_enabled_flag é um elemento de sintaxe que indica se partition_constraints_override_flag que é um elemento de sintaxe de restrição de partição (flag) está presente em um cabeçalho de figura referente a SPS. Quando um valorde partition_constraints_override_enabled_flagé 1, isso indica que partition_constraints_override_flag pode estar presente em um cabeçalho de figura referente ao SPS. Quando o valorde partition_constraints_override_enabled_flagfor 0, isso indica que partition_constraints_override_flag não está presente em um cabeçalho de figura referente ao SPS.[0170] partition_constraints_override_enabled_flag is a syntax element that indicates whether partition_constraints_override_flag, which is a partition restriction syntax element (flag), is present in a figure header relating to SPS. When a partition_constraints_override_enabled_flag value is 1, this indicates that partition_constraints_override_flag can be present in an SPS-related figure header. When the value of partition_constraints_override_enabled_flag is 0, it indicates that partition_constraints_override_flag is not present in an SPS-related figure header.
[0171] Log2 descrito na presente divulgação é um operador log2(A).[0171] Log2 described in the present disclosure is a log2(A) operator.
[0172] sps_log2_diff_min_qt_min_cb_intra_slice_luma é um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho mínimo de amostras de luma de um bloco de folha luma que é resultado da divisão de árvore quaternária de CTU e um valor obtido tomando um binário logaritmo de um tamanho mínimo de bloco de codificação para uma unidade de codificação luma em fatias de fatia tipo 2 (fatia I) referente a SPS. Quando o valor de partition_constraints_override_enabled_flag for 1, sps_log2_diff_min_qt_min_cb_intra_slice_luma poderá ser alterado para o valor de pic_log2_diff_min_qt_min_cb_luma se pic_log2_diff_min_qt_min_cb_luma estiver presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_min_qt_min_cb_intra_slice_luma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinCbl_og2SizeY). O valor (MinQtl_og2SizelntraY) obtido tomando um logaritmo binário de um tamanho mínimo de amostras de luma de um bloco de folha de luma que é resultado da divisão de árvore quaternária de CTU pode ser calculado conforme mostrado na Equação 3. [0172] sps_log2_diff_min_qt_min_cb_intra_slice_luma is a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a minimum size of luma samples from a luma leaf block that is the result of CTU quaternary tree splitting and a value obtained by taking a binary logarithm of a minimum coding block size for a luma coding unit in slice type 2 slices (slice I) relative to SPS. When the value of partition_constraints_override_enabled_flag is 1, sps_log2_diff_min_qt_min_cb_intra_slice_luma can be changed to the value of pic_log2_diff_min_qt_min_cb_luma if pic_log2_diff_min_qt_min_cb_luma is present in an SPS-related figure header. sps_log2_diff_min_qt_min_cb_intra_slice_luma can have a value between 0 and (Ctbl_og2SizeY - MinCbl_og2SizeY). The value (MinQtl_og2SizelntraY) obtained by taking a binary logarithm of a minimum size of luma samples from a luma leaf block that is the result of quaternary tree splitting of CTU can be calculated as shown in Equation 3.
[0173] sps_log2_diff_min_qt_min_cb_inter_slice é um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho mínimo de amostras de luma de um bloco de folha de luma que é resultado da divisão de árvore quaternária de CTU e um valor obtido tomando um binário logaritmo de um tamanho mínimo de bloco de codificação para uma unidade de codificação luma em fatias do tipo 0 (fatia B), 1 (fatia P) ou 2 (fatia I) referente a SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_min_qt_min_cb_inter_slice pode ser alterado para o valor de pic_log2_diff_min_qt_min_cb_luma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_min_qt_min_cb_inter_slice pode ter um valor entre 0 e (Ctbl_og2SizeY- MinCbl_og2SizeY).O valor (MinQtl_og2SizelnterY) obtido tomando um logaritmo binário de um tamanho mínimo de amostras de luma de um bloco de folha de luma que é resultado da divisão de árvore quaternária de CTU pode ser calculado conforme mostrado na Equação 4. [0173] sps_log2_diff_min_qt_min_cb_inter_slice is a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a minimum size of luma samples from a luma leaf block that is the result of quaternary tree splitting of CTU and a value obtained taking a binary logarithm of a minimum coding block size for a luma coding unit into slices of type 0 (B slice), 1 (P slice) or 2 (I slice) relative to SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_min_qt_min_cb_inter_slice can be changed to the value of pic_log2_diff_min_qt_min_cb_luma that is present in a figure header referring to SPS. sps_log2_diff_min_qt_min_cb_inter_slice can have a value between 0 and (Ctbl_og2SizeY- MinCbl_og2SizeY). be calculated as shown in Equation 4.
[0174] sps_max_mtt_hierarchy_depth_inter_slice é um elemento de sintaxe que indica uma profundidade de hierarquia máxima básica de uma unidade de codificação. Aqui, a unidade de codificação pode ser um resultado da divisão multi- tipo de um nó folha de árvore quaternária em uma fatia de fatia tipo 0 (fatia B) ou fatia tipo 1 (fatia P) referente a SPS. Em outras palavras, sps_max_mtt_hierarchy_depth_inter_slice pode ser um elemento de sintaxe que indica um número máximo de vezes que uma unidade de codificação pode ser dividida em forma de vários tipos em uma entre fatias. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_max_mtt_hierarchy_depth_inter_slice pode ser alterado para o valor de pic_max_mtt_hierarchy_depth_inter_slice que está presente em um cabeçalho de figura referente ao SPS. sps_max_mtt_hierarchy_depth_inter_slice pode ter um valor entre 0 e 2*(Ctbl_og2SizeY - MinCbLog2SizeY).[0174] sps_max_mtt_hierarchy_depth_inter_slice is a syntax element that indicates a basic maximum hierarchy depth of a coding unit. Here, the coding unit may be a result of multi-type division of a quaternary tree leaf node into a type-0 slice (B-slice) or type-1 slice (P-slice) referring to SPS. In other words, sps_max_mtt_hierarchy_depth_inter_slice can be a syntax element that indicates a maximum number of times that a coding unit can be divided into multiple types in an interslice. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_max_mtt_hierarchy_depth_inter_slice can be changed to the value of pic_max_mtt_hierarchy_depth_inter_slice that is present in an SPS-related figure header. sps_max_mtt_hierarchy_depth_inter_slice can have a value between 0 and 2*(Ctbl_og2SizeY - MinCbLog2SizeY).
[0175] sps_max_mtt_hierarchy_depth_intra_slice_luma é um elemento de sintaxe que indica uma profundidade de hierarquia máxima básica de uma unidade de codificação. Aqui, a unidade de codificação pode ser resultado da divisão multitipo de um nó folha de árvore quaternária em uma fatia de fatia tipo 2 (fatia I) referente a SPS. Nomeadamente, este pode ser um elemento de sintaxe que indica um número máximo de vezes que uma unidade de codificação pode ser dividida em forma de vários tipos em uma fatia interna. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_max_mtt_hierarchy_depth_intra_slice_luma pode ser alterado para o valor de pic_max_mtt_hierarchy_depth_intra_slice_luma que está presente em um cabeçalho de figura referente ao SPS. sps_max_mtt_hierarchy_depth_intra_slice_luma pode ter um valor entre 0 e 2*(Ctbl_og2SizeY - MinCbLog2SizeY).[0175] sps_max_mtt_hierarchy_depth_intra_slice_luma is a syntax element that indicates a basic maximum hierarchy depth of a coding unit. Here, the coding unit can be the result of the multitype division of a quaternary tree leaf node into a type 2 slice slice (slice I) referring to SPS. Namely, this can be a syntax element that indicates a maximum number of times that a coding unit can be divided into multiple types in an internal slice. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_max_mtt_hierarchy_depth_intra_slice_luma can be changed to the value of pic_max_mtt_hierarchy_depth_intra_slice_luma that is present in an SPS-related figure header. sps_max_mtt_hierarchy_depth_intra_slice_luma can have a value between 0 and 2*(Ctbl_og2SizeY - MinCbLog2SizeY).
[0176] sps_log2_diff_max_bt_min_qt_intra_slice_luma pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação luma capaz de ser dividido binário e um valor obtido tomando um logaritmo binário de um tamanho mínimo (largura ou altura) de um bloco de folha de luma que é resultado da divisão de árvore quaternária de CTU em fatias de fatia tipo 2 (fatia I) referente ao SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_max_bt_min_qt_intra_slice_luma pode ser alterado para o valor de pic_log2_diff_max_bt_min_qt_luma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_bt_min_qt_intra_slice_lumapode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraY). Quando sps_log2_diff_max_bt_min_qt_intra_slice_luma não está presente, o valor de sps_log2_diff_max_bt_min_qt_intra_slice_luma pode ser inferido como 0.[0176] sps_log2_diff_max_bt_min_qt_intra_slice_luma may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a luma encoding block capable of binary division and a value obtained by taking a binary logarithm of a minimum size (width or height) of a luma leaf block that is the result of dividing the CTU quaternary tree into type 2 slice slices (slice I) referring to the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_max_bt_min_qt_intra_slice_luma can be changed to the value of pic_log2_diff_max_bt_min_qt_luma that is present in an SPS-related figure header. sps_log2_diff_max_bt_min_qt_intra_slice_luma can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraY). When sps_log2_diff_max_bt_min_qt_intra_slice_luma is not present, the value of sps_log2_diff_max_bt_min_qt_intra_slice_luma can be inferred to be 0.
[0177] sps_log2_diff_max_tt_min_qt_intra_slice_luma pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação luma capaz de ser dividido ternário e um valor obtido tomando um logaritmo binário de um tamanho mínimo (largura ou altura) de um nó de folha de luma que é resultado da divisão da árvore quaternária de CTU em fatias de fatia tipo 2 (fatia I) referente ao SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_max_tt_min_qt_intra_slice_luma pode ser alterado para o valor de pic_log2_diff_max_tt_min_qt_luma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_tt_min_qt_intra_slice_luma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraY). Quando sps_log2_diff_max_tt_min_qt_intra_slice_luma não está presente, o valor de sps_log2_diff_max_tt_min_qt_intra_slice_luma pode ser inferido como 0.[0177] sps_log2_diff_max_tt_min_qt_intra_slice_luma may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a luma encoding block capable of ternary splitting and a value obtained by taking a binary logarithm of a minimum size (width or height) of a luma leaf node that is the result of dividing the CTU quaternary tree into type 2 slice slices (slice I) referring to the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_max_tt_min_qt_intra_slice_luma can be changed to the value of pic_log2_diff_max_tt_min_qt_luma that is present in an SPS-related figure header. sps_log2_diff_max_tt_min_qt_intra_slice_luma can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraY). When sps_log2_diff_max_tt_min_qt_intra_slice_luma is not present, the value of sps_log2_diff_max_tt_min_qt_intra_slice_luma can be inferred to be 0.
[0178] sps_log2_diff_max_bt_min_qt_inter_slice pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação luma capaz de ser dividido binário e um valor obtido tomando um logaritmo binário de um tamanho mínimo de um bloco de folha de luma queé resultado da divisão de árvore quaternária de CTU em fatias de fatia tipo 0 (fatia B) ou 1 (fatia P) referente ao SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_max_bt_min_qt_inter_slice pode ser alterado para o valor de pic_log2_diff_max_bt_min_qt_luma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_bt_min_qt_inter_slice pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelnterY). Quando sps_log2_diff_max_bt_min_qt_inter_slice não está presente, o valor de sps_log2_diff_max_bt_min_qt_inter_slice pode ser inferido como 0.[0178] sps_log2_diff_max_bt_min_qt_inter_slice may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a luma encoding block capable of binary division and a value obtained by taking a binary logarithm of a minimum size of a luma leaf block that is the result of dividing the CTU quaternary tree into slice slices type 0 (slice B) or 1 (slice P) relative to the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_max_bt_min_qt_inter_slice can be changed to the value of pic_log2_diff_max_bt_min_qt_luma that is present in an SPS-related figure header. sps_log2_diff_max_bt_min_qt_inter_slice can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelnterY). When sps_log2_diff_max_bt_min_qt_inter_slice is not present, the value of sps_log2_diff_max_bt_min_qt_inter_slice can be inferred to be 0.
[0179] sps_log2_diff_max_tt_min_qt_inter_slice pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação luma capaz de ser dividido ternário e um valor obtido tomando um logaritmo binário de um tamanho mínimo de um bloco de folha de luma queé resultado da divisão de árvore quaternária de CTU em fatias de fatia tipo 0 (fatia B) ou 1 (fatia P) referente ao SPS.[0179] sps_log2_diff_max_tt_min_qt_inter_slice may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a luma encoding block capable of ternary splitting and a value obtained by taking a binary logarithm of a minimum size of a luma leaf block that is the result of dividing the CTU quaternary tree into slice slices type 0 (slice B) or 1 (slice P) relative to the SPS.
[0180] Quando o valorde partition_constraints_override_enabled_flag é 1, o valorde partition_constraints_override_enabled_flag pode ser alterado para o valorde pic_log2_di1f_max_tt_min_qt_luma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_tt_min_qt_inter_slice pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelnterY). Quando sps_log2_diff_max_tt_min_qt_inter_slice não está presente, o valor de sps_log2_diff_max_tt_min_qt_inter_slice pode ser inferido como 0.[0180] When the partition_constraints_override_enabled_flag value is 1, the partition_constraints_override_enabled_flag value can be changed to the pic_log2_di1f_max_tt_min_qt_luma value that is present in a figure header relating to the SPS. sps_log2_diff_max_tt_min_qt_inter_slice can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelnterY). When sps_log2_diff_max_tt_min_qt_inter_slice is not present, the value of sps_log2_diff_max_tt_min_qt_inter_slice can be inferred to be 0.
[0181] sps_log2_diff_min_qt_min_cb_intra_slice_chroma pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho mínimo de um bloco de folha de croma que é resultado da divisão de árvore quaternária de uma CTU de croma com um tipo de árvore de DUAL_TREE_CHROMAe um valor obtido tomando um logaritmo binário de um tamanho mínimo de bloco de codificação de croma CUs tendo um tipo de árvore DUALTREECHROMAem uma fatia de fatia tipo 2 (fatia I) referente a SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_min_qt_min_cb_intra_slice_chroma pode ser alterado para o valorde pic_log2_diff_min_qt_min_cb_chromaque está presente em um cabeçalho de figura referente ao SPS.[0181] sps_log2_diff_min_qt_min_cb_intra_slice_chroma may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a minimum size of a chroma sheet block that is the result of quaternary tree division of a chroma CTU with a type of tree of DUAL_TREE_CHROMA and a value obtained by taking a binary logarithm of a minimum chroma coding block size CUs having a tree type DUALTREECHROMA in a type 2 slice slice (slice I) referring to SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_min_qt_min_cb_intra_slice_chroma can be changed to the value of pic_log2_diff_min_qt_min_cb_chroma that is present in an SPS-related figure header.
[0182] sps_log2_diff_min_qt_min_cb_intra_slice_chroma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinCbl_og2SizeY). Quando sps_log2_diff_min_qt_min_cb_intra_slice_chroma não está presente, o valor de sps_log2_diff_min_qt_min_cb_intra_slice_chroma pode ser inferido como 0. O valor (MinQtLog2SizelntraC) obtido tomando um logaritmo binário de um tamanho mínimo de um bloco de folha de croma que é resultado da divisão de árvore quaternária de uma CTU de croma com um tipo de árvore de DUALTREECHROMA pode ser calculado como mostrado na Equação 5. [0182] sps_log2_diff_min_qt_min_cb_intra_slice_chroma can have a value between 0 and (Ctbl_og2SizeY - MinCbl_og2SizeY). When SPS_LOG2_DIFF_min_QT_MIN_CB_CB_SLICE_CHROMA is not present, the value of SPS_LOG2_DIFF_MIN_QT_CB_Intra_Slice_chroma can be inferred as 0. The value (minqtlog2sizelntrac) quaternary tree of a chroma ctu with a tree type of DUALTREECHROMA can be calculated as shown in Equation 5.
[0183] sps_max_mtt_hierarchy_depth_intra_slice_chroma pode ser um elemento de sintaxe que indica uma profundidade de hierarquia máxima básica para uma unidade de codificação de croma que é resultado da divisão de vários tipos de um nó de folha de árvore quaternária de croma tendo um tipo de árvore de DUAL_TREE_CHROMAem uma fatia do tipo de fatia 2 (fatia I) referindo-se ao SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_max_mtt_hierarchy_depth_intra_slice_chroma pode ser alterado para o valor de pic_max_mtt_hierarchy_depth_intra_slice_chroma que está presente em um cabeçalho de figura referente ao SPS. sps_max_mtt_hierarchy_depth_intra_slice_chroma pode ter um valor entre 0 e 2*(CtbLog2SizeY - MinCbl_og2SizeY). Quando sps_max_mtt_hierarchy_depth_intra_slice_chroma não está presente, o valor de sps_max_mtt_hierarchy_depth_intra_slice_chroma pode ser inferido como 0.[0183] sps_max_mtt_hierarchy_depth_intra_slice_chroma may be a syntax element that indicates a basic maximum hierarchy depth for a chroma encoding unit that is the result of splitting multiple types of a quaternary chroma tree leaf node having a tree type of DUAL_TREE_CHROMA into a slice of slice type 2 (slice I) referring to the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_max_mtt_hierarchy_depth_intra_slice_chroma can be changed to the value of pic_max_mtt_hierarchy_depth_intra_slice_chroma that is present in an SPS-related figure header. sps_max_mtt_hierarchy_depth_intra_slice_chroma can have a value between 0 and 2*(CtbLog2SizeY - MinCbl_og2SizeY). When sps_max_mtt_hierarchy_depth_intra_slice_chroma is not present, the value of sps_max_mtt_hierarchy_depth_intra_slice_chroma can be inferred to be 0.
[0184] sps_log2_diff_max_bt_min_qt_intra_slice_chroma pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação de croma capaz de ser dividido binário e um valor obtido tomando um logaritmo binário de um tamanho mínimo (largura ou altura) de um bloco de folha de croma que é resultado da divisão de árvore quaternária de uma CTU de croma com um tipo de árvore de DUAL_TREE_CHROMA em fatias de fatia tipo 2 (fatia I) referindo-se a SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_max_bt_min_qt_intra_slice_chroma pode ser alterado para o valor de pic_log2_diff_max_bt_min_qt_chroma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_bt_min_qt_intra_slice_chroma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraC). Quando sps_log2_diff_max_bt_min_qt_intra_slice_chroma não está presente, o valor de sps_log2_diff_max_bt_min_qt_intra_slice_chroma pode ser inferido como 0.[0184] sps_log2_diff_max_bt_min_qt_intra_slice_chroma may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a chroma encoding block capable of binary splitting and a value obtained by taking a logarithm binary of a minimum size (width or height) of a chroma leaf block that is the result of quaternary tree division of a chroma CTU with a tree type of DUAL_TREE_CHROMA into type 2 slice slices (slice I) referring the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_max_bt_min_qt_intra_slice_chroma can be changed to the value of pic_log2_diff_max_bt_min_qt_chroma that is present in an SPS-related figure header. sps_log2_diff_max_bt_min_qt_intra_slice_chroma can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraC). When sps_log2_diff_max_bt_min_qt_intra_slice_chroma is not present, the value of sps_log2_diff_max_bt_min_qt_intra_slice_chroma can be inferred to be 0.
[0185] sps_log2_diff_max_tt_min_qt_intra_slice_chroma pode ser um elemento de sintaxe que indica uma diferença entre um valor obtido tomando um logaritmo binário de um tamanho máximo (largura ou altura) de um bloco de codificação de croma capaz de ser dividido ternário e um valor obtido tomando um logaritmo binário de um tamanho mínimo (largura ou altura) de um bloco de folha de croma que é resultado da divisão de árvore quaternária de uma CTU de croma com um tipo de árvore de DUAL_TREE_CHROMA em fatias de fatia tipo 2 (fatia I) referindo-se a SPS. Quando o valor de partition_constraints_override_enabled_flag é 1, o valor de sps_log2_diff_max_tt_min_qt_intra_slice_chroma pode ser alterado para o valor de pic_log2_diff_max_tt_min_qt_chroma que está presente em um cabeçalho de figura referente ao SPS. sps_log2_diff_max_tt_min_qt_intra_slice_chroma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraC). Quando sps_log2_diff_max_tt_min_qt_intra_slice_chroma não está presente, o valor de sps_log2_diff_max_tt_min_qt_intra_slice_chroma pode ser inferido como 0.[0185] sps_log2_diff_max_tt_min_qt_intra_slice_chroma may be a syntax element that indicates a difference between a value obtained by taking a binary logarithm of a maximum size (width or height) of a chroma encoding block capable of ternary splitting and a value obtained by taking a logarithm binary of a minimum size (width or height) of a chroma leaf block that is the result of quaternary tree division of a chroma CTU with a tree type of DUAL_TREE_CHROMA into type 2 slice slices (slice I) referring the SPS. When the value of partition_constraints_override_enabled_flag is 1, the value of sps_log2_diff_max_tt_min_qt_intra_slice_chroma can be changed to the value of pic_log2_diff_max_tt_min_qt_chroma that is present in an SPS-related figure header. sps_log2_diff_max_tt_min_qt_intra_slice_chroma can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraC). When sps_log2_diff_max_tt_min_qt_intra_slice_chroma is not present, the value of sps_log2_diff_max_tt_min_qt_intra_slice_chroma can be inferred to be 0.
[0186] Os tipos de fatia descritos na presente divulgação podem incluir três tipos. A fatia tipo 0 pode ser a fatia B, a fatia tipo 1 pode ser a fatia P e a fatia tipo 2 pode ser a fatia I. Os tipos de fatia 0 e 1 podem ser codificados/decodificados usando métodos de interpredição e intrapredição, e o tipo de fatia 2 pode ser codificado/decodificado usando apenas intrapredição.[0186] The slice types described in the present disclosure can include three types. Slice type 0 can be slice B, slice type 1 can be slice P, and slice type 2 can be slice I. Slice types 0 and 1 can be encoded/decoded using interprediction and intraprediction methods, and slice type 2 can be encoded/decoded using intraprediction only.
[0187] Os tipos de árvore descritos na presente divulgação podem incluirdois tipos. Esses tipos podem ser classificados grosseiramente em uma única árvore (SINGLE TREE) e uma árvore dupla. Aqui, a árvore dupla pode ser classificada de acordo com se um bloco é um componente luma (DUAL_TREE_LUMA) ou um componente de croma (DUALTREECHROMA). Na árvore única, um bloco de um componente luma e um bloco de um componente de croma podem ser divididos usando o mesmo método ao dividir um bloco. Na árvore dupla, um bloco de um componente luma e um bloco de um componente de croma podem ser divididos usando métodos diferentes ao dividir um bloco.[0187] The tree types described in the present disclosure may include two types. These types can be roughly classified into a single tree (SINGLE TREE) and a double tree. Here, the dual tree can be classified according to whether a block is a luma component (DUAL_TREE_LUMA) or a chroma component (DUALTREECHROMA). In single tree, a block of a luma component and a block of a chroma component can be split using the same method when splitting a block. In dual tree, a block of a luma component and a block of a chroma component can be split using different methods when splitting a block.
[0188] A Figura 20 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0188] Figure 20 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0189] Em detalhes, a Figura 20 mostra uma estrutura na qual os elementos de sintaxe relacionados a uma partição de bloco de codificação na sintaxe de RBSP de SPS são sinalizados/analisados. MinCbSizeY e CtbSizeY entre as variáveis mencionadas acima podem ter o mesmo valor. Iog2_min_luma_coding_block_size_minus2 pode ter um valor entre 0 e (sps_log2_ctu_size_minus5 + 3). Por exemplo, uma CTU pode ter um tamanho de 32 quando sps_log2_ctu_size_minus5 tem um valor de 0 e, aqui, Iog2_min_luma_coding_block_size_minus2 pode ter um valor entre 0 e 3. Quando o valor de Iog2_min_luma_coding_block_size_minus2 é 3, MinCbLog2SizeY tem um valor de 5 e MinCbSizeYtem um valor de 32 de acordo com a Equação 2 (isto é, 1 « 5). MinCbSizeY e CtbSizeY se tornam iguais. Mesmo quando o valor de sps_log2_ctu_size_minus5for 1, MinCbSizeYe CtbSizeYpodem se tornar iguais. No entanto, quando o valor de sps_log2_ctu_size_minus5 é 2, pode não ocorrer um caso em que MinCbSizeY e CtbSizeY são iguais. Uma porção dos elementos de sintaxe relacionados à partição da Figura 20 pode indicar um valorde 0 quando MinCbSizeY e CtbSizeY são iguais. Portanto, quando MinCbSizeY e CtbSizeY são iguais, os elementos de sintaxe relacionados à partição podem ser inferidos como tendo um valor de 0 sem serem sinalizados/analisados. Por exemplo, entre o elementos de si ntaxe, sps_log2_d iff_mi n_qt_mi n_cb_i ntra_sl icelu ma, sps_log2_diff_min_qt_min_cb_inter_slice,sps_max_mtt_hierarchy_depth_inter_slice, sps_max_mtt_hierarchy_depth_intra_slice_luma, sps_log2_diff_min_qt_min_cb_intra_slice_chroma, e sps_max_mtt_hierarchy_depth_intra_slice_chroma, que são elementos de sintaxe tendo um valor entre 0 e (Ctbl_og2SizeY - MinCbl_og2SizeY), podem ser inferidos como tendo um valor de 0.[0189] In detail, Figure 20 shows a structure in which syntax elements related to a coding block partition in the RBSP syntax of SPS are signaled/parsed. MinCbSizeY and CtbSizeY among the variables mentioned above can have the same value. Iog2_min_luma_coding_block_size_minus2 can have a value between 0 and (sps_log2_ctu_size_minus5 + 3). For example, a CTU can have a size of 32 when sps_log2_ctu_size_minus5 has a value of 0, and here Iog2_min_luma_coding_block_size_minus2 can have a value between 0 and 3. When the value of Iog2_min_luma_coding_block_size_minus2 is 3, MinCbLog2SizeY has a value of 5 and MinCbSizeY has a value of 32 according to Equation 2 (i.e., 1 « 5). MinCbSizeY and CtbSizeY become equal. Even when the value of sps_log2_ctu_size_minus5 is 1, MinCbSizeY and CtbSizeY may become equal. However, when the value of sps_log2_ctu_size_minus5 is 2, a case where MinCbSizeY and CtbSizeY are equal may not occur. A portion of the partition-related syntax elements of Figure 20 may indicate a value of 0 when MinCbSizeY and CtbSizeY are equal. Therefore, when MinCbSizeY and CtbSizeY are equal, partition-related syntax elements can be inferred to have a value of 0 without being flagged/parsed. For example, among the syntax elements, sps_log2_d iff_mi n_qt_mi n_cb_intra_sl iceluma, sps_log2_diff_min_qt_min_cb_inter_slice, sps_max_mtt_hierarchy_depth_inter_slice, sps_max_mtt_hierarchy_depth_intra_slice_luma, min_qt_min_cb_intra_slice_chroma, and sps_max_mtt_hierarchy_depth_intra_slice_chroma, which are syntax elements having a value between 0 and (Ctbl_og2SizeY - MinCbl_og2SizeY), can be inferred as having a value of 0.
[0190] Elementos de sintaxe sps_log2_diff_max_bt_min_qt_intra_slice_luma, sps_log2_diff_max_tt_min_qt_intra_slice_luma, sps_log2_diff_max_bt_min_qt_inter_slice, e sps_log2_diff_max_tt_min_qt_inter_slice podem ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraY). Visto que o valor de sps_log2_diff_min_qt_min_cb_inter_slice é inferido como 0, MinQtl_og2SizelntraY é igual a MinCbl_og2SizeYde acordo com a Equação 4. O valor de Ctbl_og2SizeY pode ser 0 igual ao valor de MinCbl_og2SizeY[0190] Syntax elements sps_log2_diff_max_bt_min_qt_intra_slice_luma, sps_log2_diff_max_tt_min_qt_intra_slice_luma, sps_log2_diff_max_bt_min_qt_inter_slice, and sps_log2_diff_max_tt_min_qt_inter_slice can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraY). Since the value of sps_log2_diff_min_qt_min_cb_inter_slice is inferred to be 0, MinQtl_og2SizelntraY is equal to MinCbl_og2SizeY according to Equation 4. The value of Ctbl_og2SizeY can be 0 equal to the value of MinCbl_og2SizeY
[0191] Elementos de sintaxe sps_log2_d iff_max_bt_m i n_qt_i ntra_sl i ce_ch roma e sps_log2_diff_max_tt_min_qt_intra_slice_chroma pode ter um valor entre 0 e (Ctbl_og2SizeY - MinQtl_og2SizelntraC). Visto que o valor de sps_log2_diff_min_qt_min_cb_intra_slice_chroma é inferido como 0, MinQtLog2SizelntraC é igual a MinCbl_og2SizeYde acordo com a Equação 5. O valor de CtbLog2SizeY pode ser 0 igual ao valor de MinCbLog2SizeY.[0191] Syntax elements sps_log2_d iff_max_bt_m i n_qt_i ntra_sl i ce_ch roma and sps_log2_diff_max_tt_min_qt_intra_slice_chroma can have a value between 0 and (Ctbl_og2SizeY - MinQtl_og2SizelntraC). Since the value of sps_log2_diff_min_qt_min_cb_intra_slice_chroma is inferred to be 0, MinQtLog2SizelntraC is equal to MinCbl_og2SizeY according to Equation 5. The value of CtbLog2SizeY can be 0 equal to the value of MinCbLog2SizeY.
[0192] Portanto, os elementos de sintaxe partition_constraints_override_enabled_flag, sps_log2_diff_mi n_qt_mi n_cb_i ntra_sl ice_l uma, sps_log2_diff_min_qt_min_cb_inter_slice,sps_max_mtt_hierarchy_depth_inter_slice, e sps_max_mtt_hierarchy_depth_intra_slice_luma da Figura 20 podem ser sinalizados/analisados apenas quando o valor de MinCbSizeY e o valor de CtbSizeY não forem iguais. Em outras palavras, os elementos de sintaxe acima podem ser sinalizados/analisados quando a condição ‘MinCbSizeY != CtbSizeY’ for verdadeira. Além disso, quando parâmetros (elementos de sintaxe) relacionados a uma partição do bloco de codificação estão presentes em um cabeçalho de figura referente ao SPS, valores dos parâmetros relacionados a uma partição do bloco de codificação são priorizados em relação aos valores definidos no SPS. Em outras palavras, os valores dos parâmetros relacionados a uma partição do bloco de codificação são alterados para valores definidos em um cabeçalho de figura. Além disso, elementos de sintaxe sps_log2_diff_min_qt_min_cb_intra_slice_chroma e sps_max_mtt_hierarchy_depth_intra_slice_chroma que são sinalizados/analisados quando qtbtt_dual_tree_intra_flag é verdadeiro pode ser sinalizado/analisado apenas quando a condição (MinCbSizeY != CtbSizeY) também for verdadeira. qtbtt_dual_tree_intra_flag é um elemento de sintaxe indicando que um bloco de codificação pode ser dividido para cada tipo de árvore.[0192] Therefore, the syntax elements partition_constraints_override_enabled_flag, sps_log2_diff_mi n_qt_mi n_cb_i ntra_sl ice_l a, sps_log2_diff_min_qt_min_cb_inter_slice, sps_max_mtt_hierarchy_depth_inter_slice, and depth_intra_slice_luma in Figure 20 can be flagged/analyzed only when the value of MinCbSizeY and the value of CtbSizeY are not equal. In other words, the above syntax elements can be flagged/parsed when the condition ‘MinCbSizeY != CtbSizeY’ is true. Furthermore, when parameters (syntax elements) related to a coding block partition are present in a figure header referring to the SPS, values of the parameters related to a coding block partition are prioritized over the values defined in the SPS. In other words, the values of parameters related to a coding block partition are changed to values defined in a figure header. Additionally, sps_log2_diff_min_qt_min_cb_intra_slice_chroma and sps_max_mtt_hierarchy_depth_intra_slice_chroma syntax elements that are flagged/parsed when qtbtt_dual_tree_intra_flag is true can be flagged/parsed only when the condition (MinCbSizeY != CtbSizeY) is also true. qtbtt_dual_tree_intra_flag is a syntax element indicating that a coding block can be split for each tree type.
[0193] A Figura 21 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[0193] Figure 21 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0194] Em detalhes, a Figura 21 mostra elementos de sintaxe relacionados a substituição de parâmetro relacionados à partição de bloco incluídos na estrutura de sintaxe de RBSP de cabeçalho de figura. Com referência à Figura 21, quando partition_constraints_override_enabled_flag da sintaxe de RBSP de SPS referida por um cabeçalho de figura é verdadeiro, um parâmetro (elemento de sintaxe) correspondente a um parâmetro relacionadoà partição de bloco (elemento de sintaxe) definido na sintaxe de RBSP de SPS está presente em um cabeçalho de figura. Aqui, um valor definido em um cabeçalho de figura pode ser usado preferencialmente no momento da partição do bloco. Os parâmetros relacionados à partição definidos em um cabeçalho de figura podem ter o mesmo problema mencionado acima com referência à Figura 20. No entanto, referindo-se à Figura 20, o elemento de sintaxe partition_constraints_override_enabled_flag é sinalizado/analisado quando MinCbSizeYe CtbSizeY não são iguais. Portanto, um novo valor pode ser definido em um cabeçalho de figura somente quando o valor de partition_constraints_override_enabled_flag for verdadeiro (istoé, 1), e o valor recém- definido pode ser usado preferencialmente no momento da partição do bloco.[0194] In detail, Figure 21 shows block partition-related parameter substitution-related syntax elements included in the figure header RBSP syntax structure. With reference to Figure 21, when partition_constraints_override_enabled_flag of the SPS RBSP syntax referred to by a figure header is true, a parameter (syntax element) corresponding to a block partition-related parameter (syntax element) defined in the SPS RBSP syntax is present in a figure header. Here, a value defined in a figure header can be used preferentially at block partition time. Partition-related parameters defined in a figure header may have the same problem mentioned above with reference to Figure 20. However, referring to Figure 20, the partition_constraints_override_enabled_flag syntax element is flagged/parsed when MinCbSizeY and CtbSizeY are not equal. Therefore, a new value can be defined in a figure header only when the value of partition_constraints_override_enabled_flag is true (i.e., 1), and the newly defined value can be preferentially used at block partition time.
[0195] A Figura 22 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de cabeçalho de figura de acordo com uma modalidade da presente invenção.[0195] Figure 22 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0196] Em detalhes, com referência à Figura 22, elementos de sintaxe incluídos na estrutura de sintaxe de RBSP de cabeçalho de figura podem estar relacionados à informação necessária para determinar um valor de parâmetro de quantização (qp) de uma unidade de codificação.[0196] In detail, with reference to Figure 22, syntax elements included in the figure header RBSP syntax structure may be related to information necessary to determine a quantization parameter (qp) value of a coding unit.
[0197] Quando um valor de cu_qp_delta_enabled_flag é 1, indica que elementos de sintaxe pic_cu_qp_delta_subdiv_intra_slice e pic_cu_qp_delta_subdiv_inter_slice podem estar presentes em cabeçalhos de figura referentes a SPS. Além disso, quando o valordecu_qp_delta_enabled_flagé 1, indica que cu_qp_delta_abs pode estar presente em uma unidade de transformada.[0197] When a value of cu_qp_delta_enabled_flag is 1, it indicates that pic_cu_qp_delta_subdiv_intra_slice and pic_cu_qp_delta_subdiv_inter_slice syntax elements may be present in figure headers referring to SPS. Furthermore, when the cu_qp_delta_enabled_flag value is 1, it indicates that cu_qp_delta_abs can be present in a transform unit.
[0198] pic_cu_qp_delta_subdiv_intra_slice é um elemento de sintaxe que indica um valor máximo de cbSubdiv de uma unidade de codificação em uma fatia intra que transporta cu_qp_delta_abs e cu_qp_delta_sign_flag. pic_cu_qp_delta_subdiv_intra_slice pode ter um valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). Quando pic_cu_qp_delta_subdiv_intra_slice não está presente, o valor de pic_cu_qp_delta_subdiv_intra_slice pode ser inferido como 0.[0198] pic_cu_qp_delta_subdiv_intra_slice is a syntax element that indicates a maximum cbSubdiv value of a coding unit in an intra slice carrying cu_qp_delta_abs and cu_qp_delta_sign_flag. pic_cu_qp_delta_subdiv_intra_slice can have a value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). When pic_cu_qp_delta_subdiv_intra_slice is not present, the value of pic_cu_qp_delta_subdiv_intra_slice can be inferred to be 0.
[0199] pic_cu_qp_delta_subdiv_inter_slice é um elemento de sintaxe que indica um valor máximo de cbSubdiv de uma unidade de codificação em uma fatia entre transmitindo cu_qp_delta_abs e cu_qp_delta_sign_flag. pic_cu_qp_delta_subdiv_inter_slice pode ter um valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). Quando pic_cu_qp_delta_subdiv_inter_slice não está presente, o valor de pic_cu_qp_delta_subdiv_inter_slice pode ser inferido como 0.[0199] pic_cu_qp_delta_subdiv_inter_slice is a syntax element that indicates a maximum cbSubdiv value of a coding unit in a slice between transmitting cu_qp_delta_abs and cu_qp_delta_sign_flag. pic_cu_qp_delta_subdiv_inter_slice can have a value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). When pic_cu_qp_delta_subdiv_inter_slice is not present, the value of pic_cu_qp_delta_subdiv_inter_slice can be inferred to be 0.
[0200] pic_cu_chroma_qp_offset_subdiv_intra_slice é um elemento de sintaxe que indica um valor máximo de cbSubdiv de uma unidade de codificação em uma fatia intra que transporta cu_chroma_qp_offset_flag. pic_cu_chroma_qp_offset_subdiv_intra_slice pode ter um valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). Quando pic_cu_chroma_qp_offset_subdiv_intra_slice não está presente, o valor de pic_cu_chroma_qp_offset_subdiv_intra_slice pode ser inferido como 0.[0200] pic_cu_chroma_qp_offset_subdiv_intra_slice is a syntax element that indicates a maximum cbSubdiv value of a coding unit in an intra slice carrying cu_chroma_qp_offset_flag. pic_cu_chroma_qp_offset_subdiv_intra_slice can have a value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). When pic_cu_chroma_qp_offset_subdiv_intra_slice is not present, the value of pic_cu_chroma_qp_offset_subdiv_intra_slice can be inferred to be 0.
[0201] pic_cu_chroma_qp_offiset_subdiv_inter_slice é um elemento de sintaxe que indica um valor máximo de cbSubdiv de uma unidade de codificação em uma entre fatias que transporta cu_chroma_qp_offeet_flag. pic_cu_chroma_qp_offset_subdiv_inter_slice pode ter um valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). Quando pic_cu_chroma_qp_offset_subdiv_inter_slice não está presente, o valor de pic_cu_chroma_qp_offset_subdiv_inter_slicepode ser inferido como 0.[0201] pic_cu_chroma_qp_offiset_subdiv_inter_slice is a syntax element that indicates a maximum cbSubdiv value of a coding unit in an interslice that carries cu_chroma_qp_offeet_flag. pic_cu_chroma_qp_offset_subdiv_inter_slice can have a value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). When pic_cu_chroma_qp_offset_subdiv_inter_slice is not present, the value of pic_cu_chroma_qp_offset_subdiv_inter_slice may be inferred to be 0.
[0202] A Figura 23 é um diagrama que ilustra uma estrutura de sintaxe de RBSPde cabeçalho de figura de acordo com uma modalidade da presente invenção.[0202] Figure 23 is a diagram illustrating a figure header RBSP syntax structure in accordance with an embodiment of the present invention.
[0203] Em detalhes, a Figura 23 mostra que um elemento de sintaxe relacionado ao parâmetro de quantização incluído na estrutura de sintaxe RBSP do cabeçalho da figura é sinalizado/analisado. O elemento de sintaxe relacionado ao parâmetro de quantização pic_cu_qp_delta_subdiv_intra_slice descrito com referência à Figura 22 pode ter um valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). Enquanto isso, como descrito acima com referência à Figura 20, MinCbSizeYe CtbSizeY podem ter o mesmo valor. Neste caso, o valor de pic_max_mtt_hierarchy_depth_intra_slice_luma é 0. Além disso, MinQtl_og2SizelntraY tem o mesmo valor que MinCbl_og2SizeY e Ctbl_og2SizeY, e, aqui, o valor é 0. Portanto, pic_cu_qp_delta_subdiv_intra_slicetem apenas o valor 0. Outro elemento de sintaxe tem a pic_cu_qp_delta_subdiv_inter_slice valor entre 0 e 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). Também neste caso, como descrito acima com referência à Figura 20, MinCbSizeYe CtbSizeY podem ter o mesmo valor. Neste caso, o valor de pic_max_mtt_hierarchy_depth_inter_slice é 0. Além disso, MinQtl_og2SizelnterY tem o mesmo valor que MinCbl_og2SizeY e Ctbl_og2SizeY, e, aqui, o valor é 0. Portanto, pic_cu_qp_delta_subdiv_inter_slice tem apenas o valor 0. Pelo mesmo motivo, pic_cu_chroma_qp_offset_subdiv_intra_slice e pic_cu_chroma_qp_offset_subdiv_intra_slice e pic_cu_chroma_qp_offset_subdiv_inter_slice também pode ter um valor de 0. Portanto, como um elemento de sintaxe relacionado ao parâmetro de quantização tem um valor de 0 quando MinCbSizeY e CtbSizeY têm o mesmo valor, um elemento de sintaxe relacionado ao parâmetro de quantização presente em um cabeçalho de figura pode ser sinalizado/analisado quando MinCbSizeYe CtbSizeY têm valores diferentes (isto é, CtbSizeY != MinCbSizeY) na Figura 23.[0203] In detail, Figure 23 shows that a syntax element related to the quantization parameter included in the RBSP syntax structure of the figure header is signaled/parsed. The syntax element related to the quantization parameter pic_cu_qp_delta_subdiv_intra_slice described with reference to Figure 22 can have a value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelntraY + pic_max_mtt_hierarchy_depth_intra_slice_luma). Meanwhile, as described above with reference to Figure 20, MinCbSizeY and CtbSizeY can have the same value. In this case, the value of pic_max_mtt_hierarchy_depth_intra_slice_luma is 0. Furthermore, MinQtl_og2SizelntraY has the same value as MinCbl_og2SizeY and Ctbl_og2SizeY, and here the value is 0. Therefore, pic_cu_qp_delta_subdiv_intra_slice only has the value 0. Another syntax element has the p_delta_subdiv_inter_slice value between 0 and 2 * (Ctbl_og2SizeY - MinQtl_og2SizelnterY + pic_max_mtt_hierarchy_depth_inter_slice). Also in this case, as described above with reference to Figure 20, MinCbSizeY and CtbSizeY can have the same value. In this case, the value of pic_max_mtt_hierarchy_depth_inter_slice is 0. Furthermore, MinQtl_og2SizelnterY has the same value as MinCbl_og2SizeY and Ctbl_og2SizeY, and here the value is 0. Therefore, pic_cu_qp_delta_subdiv_inter_slice only has the value 0. For the same reason, pic_cu_chroma_qp_offset_ subdiv_intra_slice and pic_cu_chroma_qp_offset_subdiv_intra_slice and pic_cu_chroma_qp_offset_subdiv_inter_slice can also have a value of 0. Therefore, because a quantization parameter-related syntax element has a value of 0 when MinCbSizeY and CtbSizeY have the same value, a quantization parameter-related syntax element present in a figure header can be flagged/parsed when MinCbSizeY and CtbSizeY have different values (i.e. CtbSizeY != MinCbSizeY) in Figure 23.
[0204] A Figura 24 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0204] Figure 24 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0205] Quando um valorde sps_video_parameter_set_id é maior que 0, pode indicar vps_video_parameter_set_id do VPS referido no SPS. Quando o valor de sps_video_parameter_set_id é 0, SPS pode não se referir a VPS, e o valor de vps_max_layers_minus1 pode ser inferido como 0. Aqui, CVS pode incluir apenas uma camada.[0205] When a sps_video_parameter_set_id value is greater than 0, it may indicate vps_video_parameter_set_id of the VPS referred to in the SPS. When the value of sps_video_parameter_set_id is 0, SPS may not refer to VPS, and the value of vps_max_layers_minus1 may be inferred as 0. Here, CVS may include only one layer.
[0206] sps_seq_parameter_set_id é um elemento de sintaxe, que fornece um ID para SPS para ser referido por outros elementos de sintaxe. Aqui, o ID para SPS pode ser usado como informação a ser referenciada no PPS.[0206] sps_seq_parameter_set_id is a syntax element, which provides an ID for SPS to be referred to by other syntax elements. Here, the ID for SPS can be used as information to be referenced in the PPS.
[0207] subpics_present_flag é um elemento de sintaxe que indica se um parâmetro (elemento de sintaxe) relacionado a uma subfigura está presente na estrutura de sintaxe de RBSP de SPS. Quando o valor de subpics_present_flag for 1, pode indicar que um parâmetro relacionado a uma subfigura está presente na estrutura de sintaxe de RBSPde SPS. Quando o valor de subpics_present_flag for 0, pode indicar que um parâmetro relacionado a uma subfigura não está presente na estrutura de sintaxe de RBSPde SPS. Quando o valor de subpics_present_flag é 1, os parâmetros relacionados à subfigura descritos abaixo podem ser sinalizados/analisados. subpics_present_flag descrito na presente divulgação é o mesmo elemento de sintaxe que subpic_info_present_flag da Figura 24, e esses elementos são usados deforma intercambiável na presente divulgação. Aqui, entre os parâmetros relacionados com a subfigura que são sinalizados/analisados, os mesmos parâmetros que os da Figura 11 não será descrito.[0207] subpics_present_flag is a syntax element that indicates whether a parameter (syntax element) related to a subpicture is present in the RBSP syntax structure of SPS. When the value of subpics_present_flag is 1, it may indicate that a parameter related to a subpicture is present in the RBSPde SPS syntax structure. When the value of subpics_present_flag is 0, it may indicate that a parameter related to a subpicture is not present in the RBSPde SPS syntax structure. When the value of subpics_present_flag is 1, the subpicture-related parameters described below can be flagged/analyzed. subpics_present_flag described in the present disclosure is the same syntax element as subpic_info_present_flag of Figure 24, and these elements are used interchangeably in the present disclosure. Here, among the parameters related to the subfigure that are flagged/analyzed, the same parameters as those in Figure 11 will not be described.
[0208] subpic_id_mapping_explicity_signalled_flag é um elemento de sintaxe que indica se o mapeamento de ID de subfigura é explicitamente sinalizado. Aqui, o mapeamento de ID de subfigura pode ser sinalizado em SPS ou PPS referido por uma figura codificada de um CLVS. Quando um valor de subpic_id_mapping_explicity_signalled_flag é 1, isso indica que o mapeamento de ID de subfigura é sinalizado explicitamente em um CLVS. Quando o valor de subpic_id_mapping_explicity_signalled_flag é 0, isso indica que o mapeamento de ID de subfigura não é sinalizado explicitamente em um CLVS. Quando subpic_id_mapping_explicity_signalled_flag não está presente, o valor de subpic_id_mapping_explicity_signalled_flag pode ser inferido como 0.[0208] subpic_id_mapping_explicity_signalled_flag is a syntax element that indicates whether the subpicture ID mapping is explicitly signaled. Here, the subfigure ID mapping can be signaled in SPS or PPS referred to by an encoded figure of a CLVS. When a subpic_id_mapping_explicity_signalled_flag value is 1, it indicates that the subpic ID mapping is explicitly signaled in a CLVS. When the value of subpic_id_mapping_explicity_signalled_flag is 0, it indicates that the subpicture ID mapping is not explicitly signaled in a CLVS. When subpic_id_mapping_explicity_signalled_flag is not present, the value of subpic_id_mapping_explicity_signalled_flag can be inferred to be 0.
[0209] subpic_id_mapping_in_sps_flag é um elemento de sintaxe que indica um nível de sinalização de mapeamento de ID de subfigura quando o valor de subpic_id_mapping_explicity_signalled_flag é 1. Quando um valor de subpic_id_mapping_in_sps_flag é 1, indica que o mapeamento de ID de subfigura é sinalizadoem SPS. Quando o valor de subpic_id_mapping_in_sps_flagéO, indicaque o mapeamento de ID de subfigura é sinalizadoem PPS.[0209] subpic_id_mapping_in_sps_flag is a syntax element that indicates a subpicture ID mapping signaling level when the value of subpic_id_mapping_explicity_signalled_flag is 1. When a value of subpic_id_mapping_in_sps_flag is 1, it indicates that the subpicture ID mapping is flagged in SPS. When the value of subpic_id_mapping_in_sps_flageO, it indicates that the subpicture ID mapping is flagged in PPS.
[0210] A Figura 25 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0210] Figure 25 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0211] Em detalhes, a Figura 25 mostra a estrutura de sintaxe de RBSP de SPS incluindo um elemento de sintaxe relacionado ao número de subfiguras. Com referência à Figura 25, os elementos de sintaxe relacionados ao número de subfiguras podem ser sinalizados/analisados quando o valor de subpic_info_present_flag da Figura 24 é 1, sendo subpic_info_present_flag um sinalizadorque indica a presença de informações de subfigura com base em informações básicas de elementos de sintaxe. Uma única figura pode ser dividida em uma pluralidade de subfiguras. Aqui, o número de subfiguras divididas pode ter um valor obtido adicionando 1 ao valor de sps_num_subpics_minus1. Aqui, um valor que indica o número de subfiguras pode estar entre 0 e Ceil(pic_width_max_in_luma_samples + CtbSizeY) * Ceil(pic_height_max_in_luma_samples + CtbSizeY) - 1. Quando o valor de sps_num_subpics_minus1 é 0, o número de subfiguras é 1. Nomeadamente, o número de subfiguras sendo 1 em uma única figura tem o mesmo significado que a única figura não é dividida em subfiguras. Quando o valor de sps_num_subpics_minus1 é 0, pedaços de informação (elementos de sintaxe) considerando vários casos que podem ocorrer quando uma pluralidade de subfiguras estão presentes podem ser inferidas sem serem sinalizadas/analisadas. A estrutura de sintaxe ilustrada na Figura 25 indica que quando o valor de sps_num_subpics_minus1 é 0, o valor de sps_independent_subpics_flag, o valor de sps_subpic_id_len_minus1 e o valor de subpic_id_mapping_explicitly_signalled_flag podem ser inferidos. Aqui, cada um dos valores inferidos pode ser 0. Além disso, cada um dos valores inferidos pode ser inferido como um valor individual para realizar uma operação predefinida. Em outras palavras, quando o número de subfiguras é pelo menos 2 (isto é, sps_num_subpics_minus1 > 0), sps_independent_subpics_flag, sps_subpic_id_len_minus1 e subpic_id_mapping_explicitly_signalled_flag podem ser sinalizados/analisados. sps_independent_subpics_flag é um elemento de sintaxe que indica se os limites de todas as subfiguras devem ser tratados como um limite de uma figura. Além disso, sps_independent_subpics_flag pode indicar ainda que a filtragem em loop não é usada em um limite de subfigura. sps_subpic_id_len_minus1 é um elemento de sintaxe que indica o número de bits necessários ao mapear um valorde ID de subfigura. subpic_id_mapping_explicitly_signalled_flag é um elemento de sintaxe que indica se um ID de subfigura é explicitamente sinalizado. Quando o valor de sps_independent_subpics_flag é 1, um limite de subfigura pode ser tratado como um limitede uma figura. Além disso, indicaque a filtragem em loop não pode ser usada em um limitede subfigura. Quando o valorde sps_independent_subpics_flagéO, isso indica que não há restrição para tratar um limite de subfigura como um limite de uma figura. Além disso, indica que não há restrição quanto ao uso de filtragem em loop em um limite de subfigura. Quando o valor de subpic_id_mapping_explicitly_signalled_flag é 1, indica que um ID de subfigura pode ser sinalizado explicitamente, e quando o valor de subpic_id_mapping_explicitly_signalled_flag é 0, indica que um valor de ID de subfigura não é sinalizado explicitamente.[0211] In detail, Figure 25 shows the RBSP syntax structure of SPS including a syntax element related to the number of subfigures. With reference to Figure 25, syntax elements related to the number of subfigures can be flagged/parsed when the value of subpic_info_present_flag of Figure 24 is 1, with subpic_info_present_flag being a flag that indicates the presence of subfigure information based on basic information of elements of syntax. A single figure can be divided into a plurality of subfigures. Here, the number of subpics divided can have a value obtained by adding 1 to the value of sps_num_subpics_minus1. Here, a value indicating the number of subpictures can be between 0 and Ceil(pic_width_max_in_luma_samples + CtbSizeY) * Ceil(pic_height_max_in_luma_samples + CtbSizeY) - 1. When the value of sps_num_subpics_minus1 is 0, the number of subpictures is 1. Namely, the number of subfigures being 1 in a single figure has the same meaning as the single figure is not divided into subfigures. When the value of sps_num_subpics_minus1 is 0, pieces of information (syntax elements) considering various cases that may occur when a plurality of subpics are present can be inferred without being flagged/parsed. The syntax structure illustrated in Figure 25 indicates that when the value of sps_num_subpics_minus1 is 0, the value of sps_independent_subpics_flag, the value of sps_subpic_id_len_minus1, and the value of subpic_id_mapping_explicitly_signalled_flag can be inferred. Here, each of the inferred values can be 0. Furthermore, each of the inferred values can be inferred as an individual value to perform a predefined operation. In other words, when the number of subpictures is at least 2 (i.e. sps_num_subpics_minus1 > 0), sps_independent_subpics_flag, sps_subpic_id_len_minus1 and subpic_id_mapping_explicitly_signalled_flag can be flagged/analyzed. sps_independent_subpics_flag is a syntax element that indicates whether the boundaries of all subpics should be treated as a boundary of a picture. Additionally, sps_independent_subpics_flag can further indicate that loop filtering is not used on a subpicture boundary. sps_subpic_id_len_minus1 is a syntax element that indicates the number of bits required when mapping a subpicture ID value. subpic_id_mapping_explicitly_signalled_flag is a syntax element that indicates whether a subpicture ID is explicitly flagged. When the value of sps_independent_subpics_flag is 1, a subpicture boundary can be treated as a picture boundary. Additionally, it indicates that loop filtering cannot be used in a subfigure limit. When the value of sps_independent_subpics_flage is O, it indicates that there is no restriction to treat a subpicture boundary as a picture boundary. Additionally, it indicates that there is no restriction on the use of loop filtering on a subfigure boundary. When the value of subpic_id_mapping_explicitly_signalled_flag is 1, it indicates that a subpicture ID can be explicitly flagged, and when the value of subpic_id_mapping_explicitly_signalled_flag is 0, it indicates that a subpicture ID value is not flagged explicitly.
[0212] A Figura 26 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[0212] Figure 26 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0213] Os elementos de sintaxe mostrados na Figura 26 são descritos abaixo. Aqui, entre os elementos de sintaxe mostrados na Figura 26, os mesmos elementos de sintaxe que os elementos de sintaxe descritos com referência à Figura 12 não será descrito.[0213] The syntax elements shown in Figure 26 are described below. Here, among the syntax elements shown in Figure 26, the same syntax elements as the syntax elements described with reference to Figure 12 will not be described.
[0214] subpic_id_mapping_in_pps_flag é um elemento de sintaxe que indica se o mapeamento de ID de subfigura é sinalizado em PPS. Quando um valor de subpic_id_mapping_in_pps_flag é 1, pode indicar que o mapeamento de ID de subfigura é sinalizado em PPS. Quando o valor de subpic_id_mapping_in_pps_flag é 0, indica que o mapeamento de ID de subfigura não está sinalizado no PPS. Quando o valor de subpic_id_mapping_explicitly_signalled_flag é 0 ou o valor de subpic_id_mapping_in_sps_flag é 1, o valor de subpic_id_mapping_in_pps_flag é necessariamente 0. Caso contrário (isto é, quando o valor de subpic_id_mapping_explicitly_signalled_flag é 1 e o valor de subpic_id_mapping_in_sps_flag é 0), o valor de subpic_id_mapping_in_sps_flag é 0 é necessário ser 1.[0214] subpic_id_mapping_in_pps_flag is a syntax element that indicates whether the subpicture ID mapping is flagged in PPS. When a value of subpic_id_mapping_in_pps_flag is 1, it may indicate that the subpicture ID mapping is flagged in PPS. When the value of subpic_id_mapping_in_pps_flag is 0, it indicates that the subpicture ID mapping is not flagged in PPS. When the value of subpic_id_mapping_explicitly_signalled_flag is 0 or the value of subpic_id_mapping_in_sps_flag is 1, the value of subpic_id_mapping_in_pps_flag is necessarily 0. Otherwise (that is, when the value of subpic_id_mapping_explicitly_signalled_flag is 1 and the value of subpic_id_mapping_in_sps_flag is 0), the value of subpic_id_mapping_in_sps_flag is 0 needs to be 1.
[0215] Quando o valor de subpic_id_mapping_in_pps_flag é 1, os elementos de sintaxe pps_num_subpics_minus1, pps_subpic_id_len_minus e pps_subpic_id[i] relacionados ao mapeamento de ID de subfigura podem ser sinalizados/analisados.[0215] When the value of subpic_id_mapping_in_pps_flag is 1, the syntax elements pps_num_subpics_minus1, pps_subpic_id_len_minus and pps_subpic_id[i] related to subfigure ID mapping can be flagged/parsed.
[0216] A Figura 27 é um diagrama que ilustra subpic_id_mapping_in_pps_flag incluído na estrutura de sintaxe de RBSP de conjunto de parâmetros de figura.[0216] Figure 27 is a diagram illustrating subpic_id_mapping_in_pps_flag included in the figure parameter set RBSP syntax structure.
[0217] Em detalhes, a Figura 27 mostra um método para definir o valor de subpic_id_mapping_in_pps_flag descrito com referência à Figura 26. Foi descrito com referência à Figura 25 que quando o valor de sps_num_subpics_minus1 é 0, elementos de sintaxe para vários casos que podem ocorrer quando uma pluralidade de subfiguras estão presentes podem ser inferidos sem serem sinalizados/analisados. Da mesma forma, os elementos de sintaxe relacionados a subfigura descritos com referência à Figura 26 pode ser similarmente sinalizado/analisado com base no valor de subpic_id_mapping_in_pps_flag em PPS referente a SPS. Portanto, quando o valor de sps_num_subpics_minus1 descrito com referência à Figura 25 for 0, o valor de subpic_id_mapping_in_pps_flag pode ser definido como 0 para que os elementos de sintaxe relacionados à subfigura possam ser inferidos sem serem sinalizados/analisados. Aqui, referindo-se à Figura 27, a condição para definir o valor de subpic_id_mapping_in_pps_flag como 0 pode incluir adicionalmente um caso em que o valor de sps_num_subpics_minus1 é 0.[0217] In detail, Figure 27 shows a method for setting the value of subpic_id_mapping_in_pps_flag described with reference to Figure 26. It has been described with reference to Figure 25 that when the value of sps_num_subpics_minus1 is 0, syntax elements for various cases that may occur when a plurality of subfigures are present they can be inferred without being flagged/analyzed. Likewise, the subpicture-related syntax elements described with reference to Figure 26 can be similarly flagged/parsed based on the value of subpic_id_mapping_in_pps_flag in PPS relative to SPS. Therefore, when the value of sps_num_subpics_minus1 described with reference to Figure 25 is 0, the value of subpic_id_mapping_in_pps_flag can be set to 0 so that syntax elements related to the subpicture can be inferred without being flagged/parsed. Here, referring to Figure 27, the condition for setting the value of subpic_id_mapping_in_pps_flag to 0 may additionally include a case where the value of sps_num_subpics_minus1 is 0.
[0218] A Figura 28 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de figura de acordo com uma modalidade da presente invenção.[0218] Figure 28 is a diagram illustrating a figure parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0219] Em detalhes, a Figura 28 mostra uma estrutura na qual é sinalizado/analisado um sinalizadorque indica se um filtro de loop é aplicado entre os blocos. Uma figura pode ser dividida em uma pluralidade de subfiguras e uma figura/subfigura pode ser dividida em uma pluralidade de blocos. Além disso, uma figura/subfigura pode ser dividida em uma pluralidade de fatias e um bloco também pode ser dividido em uma pluralidade de fatias. Aqui, a largura e a altura de um bloco podem ser um múltiplo de CTB em unidades de CTB.[0219] In detail, Figure 28 shows a structure in which a flag indicating whether a loop filter is applied between blocks is signaled/analyzed. A figure can be divided into a plurality of subfigures and a figure/subfigure can be divided into a plurality of blocks. Furthermore, a figure/subfigure can be divided into a plurality of slices and a block can also be divided into a plurality of slices. Here, the width and height of a block can be a multiple of CTB in CTB units.
[0220] no_pic_partition_flag é um elemento de sintaxe que indica se uma figura individual está sujeita a divisão adicional. Quando um valor de no_pic_partition_flag é 1, indica que uma figura individual referente ao PPS não está sujeita a divisão adicional. Quando o valor de no_pic_partition_flag é 0, indica que uma figura individual referente ao PPS pode ser dividida em mais de um bloco ou fatia.[0220] no_pic_partition_flag is a syntax element that indicates whether an individual picture is subject to further division. When a value of no_pic_partition_flag is 1, it indicates that an individual picture referring to the PPS is not subject to further division. When the value of no_pic_partition_flag is 0, it indicates that an individual picture referring to the PPS can be divided into more than one block or slice.
[0221] num_exp_tile_columns_minus1 é um elemento de sintaxe que indica um valor relacionado a uma largura de coluna de bloco. num_exp_tile_columns_minus1 indica um valor obtido subtraindo 1 de uma largura de coluna de bloco. Em outras palavras, um valor obtido pela adição de 1 ao valor de num_exp_tile_columns_minus1 indica um valor de larguras de coluna lado a lado. num_exp_tile_columns_minus1 pode ter um valor entre 0 e PicWidthlnCtbsY - 1. Quando o valor de no_pic_partition_flag é 1, o valor de num_exp_tile_columns_minus1 pode ser inferido como 0.[0221] num_exp_tile_columns_minus1 is a syntax element that indicates a value related to a tile column width. num_exp_tile_columns_minus1 indicates a value obtained by subtracting 1 from a tile column width. In other words, a value obtained by adding 1 to the value of num_exp_tile_columns_minus1 indicates a value of tiled column widths. num_exp_tile_columns_minus1 can have a value between 0 and PicWidthlnCtbsY - 1. When the value of no_pic_partition_flag is 1, the value of num_exp_tile_columns_minus1 can be inferred to be 0.
[0222] num_exp_tile_row_minus1 é um elemento de sintaxe que indica um valor relacionado a uma altura de linhade bloco. num_exp_tile_row_minus1 indica um valor obtido subtraindo 1 de uma altura de linha de bloco. Em outras palavras, um valor obtido pela adição de 1 ao valor de num_exp_tile_row_minus1 indica um valor das alturas das linhas do bloco. num_exp_tile_rows_minus1 pode ter um valor entre -1 e PicHeightlnCtbsY - 1. Quando o valor de no_pic_partition_flag é 1, o valor de num_tile_rows_minus1 pode ser inferido como 0.[0222] num_exp_tile_row_minus1 is a syntax element that indicates a value related to a tile row height. num_exp_tile_row_minus1 indicates a value obtained by subtracting 1 from a tile row height. In other words, a value obtained by adding 1 to the value of num_exp_tile_row_minus1 indicates a value for the row heights of the block. num_exp_tile_rows_minus1 can have a value between -1 and PicHeightlnCtbsY - 1. When the value of no_pic_partition_flag is 1, the value of num_tile_rows_minus1 can be inferred to be 0.
[0223] Pode haver um caso em que o valorde num_exp_tile_columns_minus1 e o valor de num_exp_tile_row_minus1 sejam ambos 0. Aqui, uma variável NumTilesInPic pode ser determinada pela Equação 6. [Equação 6] [0223] There may be a case where the value of num_exp_tile_columns_minus1 and the value of num_exp_tile_row_minus1 are both 0. Here, a variable NumTilesInPic can be determined by Equation 6. [Equation 6]
[0224] NumTilesInPic denota o número de blocos em uma figura, NumTileColumnsdenota o número de linhas de blocos em uma figura e NumTileRows denota o número de colunas de blocos em uma figura.[0224] NumTilesInPic denotes the number of tiles in a figure, NumTileColumns denotes the number of rows of tiles in a figure, and NumTileRows denotes the number of columns of tiles in a figure.
[0225] As variáveis NumTileColumnse NumTileRowspodem ser induzidas ao determinar coIWidthQ.[0225] The variables NumTileColumn and NumTileRows may be induced when determining coIWidthQ.
[0226] Quando o valor de loop_filter_across_tiles_enabled_flag da Figura 28 for 1, indica que uma operação de filtragem em loop pode ser realizada em blocos presentes em uma figura. Quando um valor de loop_filter_across_tiles_enabled_flag é 0, isso indica que uma operação de filtragem em loop não é executada nos blocos presentes em uma figura. A operação de filtragem em loop pode incluir filtro de desbloqueio, filtro de deslocamento adaptativo de amostra e operações de filtro de loop adaptativo. Quando loop_filter_across_tiles_enabled_flag não estiver presente, o valorde loop_filter_across_tiles_enabled_flag pode ser inferido como 1.[0226] When the value of loop_filter_across_tiles_enabled_flag of Figure 28 is 1, it indicates that a loop filtering operation can be performed on blocks present in a figure. When a loop_filter_across_tiles_enabled_flag value is 0, it indicates that a looped filtering operation is not performed on the tiles present in a figure. The loop filtering operation may include deblocking filter, adaptive sample shift filter, and adaptive loop filter operations. When loop_filter_across_tiles_enabled_flag is not present, the loop_filter_across_tiles_enabled_flag value can be inferred as 1.
[0227] Quando uma figura, subfigura ou fatia é configurada com um bloco, não é necessário indicar se um filtro de loop é aplicado nos blocos. Portanto, o valor de no_pic_partition_flag pode ser inferido como um valor predefinido, em que o valor predefinido pode ser 1.[0227] When a figure, subfigure, or slice is configured with a block, it is not necessary to indicate whether a loop filter is applied to the blocks. Therefore, the value of no_pic_partition_flag can be inferred as a predefined value, where the predefined value can be 1.
[0228] A Figura 29 é um diagrama que ilustra uma unidade de camada abstrata de rede (NAL) que é uma unidade básica constituindo um fluxo de bits.[0228] Figure 29 is a diagram illustrating a network abstract layer unit (NAL) which is a basic unit constituting a bit stream.
[0229] Quando uma imagem de vídeo é codificada e armazenada como um fluxo de bits através do codificador, o fluxo de bits pode ser configurado em unidades de camada de abstração de rede. Uma unidade de camada de abstração de rede é chamada de unidade NAL abaixo. Uma unidade NAL pode ser definida de várias formas de acordo com a sua finalidade e pode ser distinguida por um ID único. Uma unidade NAL pode ser dividida em uma parte incluindo informações de dados de imagem reais e uma parte incluindo informações necessárias para decodificar tal imagem de vídeo. A Figura 29 é um diagrama que ilustra uma porção de vários tipos de unidades NAL. Uma unidade NAL pode ser configurada com base em um pedido predefinido, e as informações incluídas na unidade NAL correspondente também podem ser configuradas com base em um pedido predefinido. Cada unidade NAL pode ter uma relação de referência cruzada. Como mostrado na Figura 29, uma unidade NAL de DPS indica uma sintaxe de RBSP do conjunto de parâmetros de decodificação (DPS). Uma unidade NAL de VPS indica uma sintaxe de RBSP do conjunto de parâmetros de vídeo (VPS). Uma unidade NALde SPS indica uma sintaxe de RBSPdo conjunto de parâmetros de sequência (SPS). Uma unidade NALde PPS indica uma sintaxe de RBSP do conjunto de parâmetros de figura (PPS). A sintaxe de RBSP de DPS é uma sintaxe que inclui informações (elemento de sintaxe) necessárias para que o decodificador execute a decodificação de vídeo. A sintaxe de RBSP de DPS pode ser descrita como uma sintaxe de RBSP de informações de capacidade de decodificação (DCI). A sintaxe de RBSP de VPS é uma sintaxe que inclui informações (elemento de sintaxe) comumente usadas para decodificar dados codificados de camada básica e de camada aprimorada. A sintaxe de RBSP de SPS é uma sintaxe que inclui elementos de sintaxe transmitidos em um nível de unidade de sequência. A sintaxe de RBSP de SPS pode incluir informações (elemento de sintaxe) comumente usadas para decodificar uma figura por referência ao VPS. Aqui, a sequência representa um conjunto de uma ou mais figuras. A sintaxe de RBSPde PPS é uma sintaxe que inclui informações (elemento de sintaxe) comumente usada para decodificar pelo menos uma figura. O RBSP mencionado acima, que é uma carga útil de sequência de bytes bruta (RBSP), pode representar uma sintaxe que é alinhada por byte e encapsulada como uma unidade NAL. As sintaxes acima mencionadas são descritas abaixo.[0229] When a video image is encoded and stored as a bitstream through the encoder, the bitstream may be configured into network abstraction layer units. A network abstraction layer unit is called an NAL unit below. An NAL unit can be defined in various ways according to its purpose and can be distinguished by a unique ID. An NAL unit can be divided into a part including actual image data information and a part including information necessary to decode such a video image. Figure 29 is a diagram illustrating a portion of various types of NAL units. A NAL unit can be configured based on a predefined order, and the information included in the corresponding NAL unit can also be configured based on a predefined order. Each NAL unit can have a cross-reference relationship. As shown in Figure 29, a DPS NAL unit indicates a decoding parameter set (DPS) RBSP syntax. A VPS NAL unit indicates a video parameter set (VPS) RBSP syntax. An SPS NAL unit indicates a sequence parameter set (SPS) RBSP syntax. A PPS NAL unit indicates a figure parameter set (PPS) RBSP syntax. The DPS RBSP syntax is a syntax that includes information (syntax element) necessary for the decoder to perform video decoding. The DPS RBSP syntax can be described as a decoding capability information (DCI) RBSP syntax. The VPS RBSP syntax is a syntax that includes information (syntax element) commonly used to decode base-layer and enhanced-layer encoded data. The SPS RBSP syntax is a syntax that includes syntax elements passed at a sequence unit level. The RBSP syntax of SPS may include information (syntax element) commonly used to decode a figure by reference to the VPS. Here, the sequence represents a set of one or more figures. The RBSPde PPS syntax is an information-inclusive syntax (syntax element) commonly used to decode at least one figure. The RBSP mentioned above, which is a raw byte sequence payload (RBSP), can represent a syntax that is byte-aligned and encapsulated as an NAL unit. The above-mentioned syntaxes are described below.
[0230] A Figura 30 é um diagrama que ilustra uma estrutura de sintaxe de RBSPde conjunto de parâmetros de decodificação, uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência, e um estrutura de sintaxe de nível de camada de perfil de acordo com uma modalidade da presente invenção.[0230] Figure 30 is a diagram illustrating a decoding parameter set RBSP syntax structure, a sequence parameter set RBSP syntax structure, and a profile layer level syntax structure in accordance with an embodiment of the present invention.
[0231] A Figura 30(a) é um diagrama que ilustra uma sintaxe RBSP do conjunto de parâmetros de decodificação (DPS), Figura 30(b) é um diagrama que ilustra uma sintaxe de RBSP do conjunto de parâmetros de sequência (SPS), e a Figura 30(c) é um diagrama que ilustra uma sintaxe de nível de camada de perfil 'profi le_tier_level()'.[0231] Figure 30(a) is a diagram illustrating a decoding parameter set (DPS) RBSP syntax, Figure 30(b) is a diagram illustrating a sequence parameter set (SPS) RBSP syntax , and Figure 30(c) is a diagram illustrating a profile tier level syntax 'profi le_tier_level()'.
[0232] Como mostrado nas Figuras 30 (a) e (b), a sintaxe de nível de camada de perfil pode ser incluída (chamada) na sintaxe de RBSP de DPS e na sintaxe de RBSP de SPS. A sintaxe de nível de camada de perfil pode incluir informações relacionadas a um perfil, camada e nível. Aqui, a sintaxe de nível de camada de perfil pode incluir uma sintaxe ‘general_constraint_info()’ para informações gerais de restrição (GCI). A sintaxe para GCI (doravante referida como sintaxe GCI) pode controlar para desabilitar uma ferramenta e/ou função, etc. incluída na sintaxe GCI e/ou outra sintaxe (por exemplo, sintaxe de RBSP de DPS, sintaxe de RBSPde VPS, sintaxe de RBSP de SPS, Sintaxe de RBSP de PPS, sintaxe Sliceheader ou semelhante) para interoperabilidade. Quando a sintaxe GCI indica desabilitar uma ferramenta e/ou função, as ferramentas e/ou funções declaradas em uma sintaxe inferior podem ser desabilitadas. Aqui, de acordo com uma posição de uma unidade NAL analisada pelo decodificador, pode ser determinado se deve aplicar a ferramenta e/ou função desabilitadapela sintaxe GCI a todos os fluxos de bits ou fluxos de bits parciais. Por exemplo, a sintaxe de nível de perfil ‘ profi le_tier_level()’pode ser incluída na sintaxe de RBSPde DPS e/ou na sintaxe de RBSPde SPS, e quando a sintaxe de nível de perfil está incluída na sintaxe de RBSP de DPS, a sintaxe GCI incluída no perfil a sintaxe de nível de camada pode ser aplicada a todos os fluxos de bits. Para outro exemplo, quando a sintaxe de nível de camada de perfil é incluída na sintaxe de RBSP de SPS, a sintaxe GCI incluída na sintaxe de nível de camada de perfil pode ser aplicada em uma sequência de vídeo de camada codificada (CLVS).[0232] As shown in Figures 30 (a) and (b), the profile layer level syntax can be included (called) in the RBSP syntax of DPS and the RBSP syntax of SPS. The profile layer level syntax can include information related to a profile, layer, and level. Here, the profile layer level syntax may include a ‘general_constraint_info()’ syntax for general constraint information (GCI). The syntax for GCI (hereinafter referred to as GCI syntax) can control to disable a tool and/or function, etc. included in the GCI syntax and/or other syntax (e.g., DPS RBSP syntax, VPS RBSP syntax, SPS RBSP syntax, PPS RBSP syntax, Sliceheader syntax, or similar) for interoperability. When the GCI syntax indicates to disable a tool and/or function, tools and/or functions declared in a lower syntax may be disabled. Here, according to a position of an NAL unit analyzed by the decoder, it can be determined whether to apply the tool and/or function disabled by the GCI syntax to all bitstreams or partial bitstreams. For example, the profile level syntax 'profi le_tier_level()' may be included in the DPS RBSP syntax and/or the SPS RBSP syntax, and when the profile level syntax is included in the DPS RBSP syntax, the GCI syntax included in the profile layer-level syntax can be applied to all bitstreams. For another example, when the profile layer level syntax is included in the RBSP syntax of SPS, the GCI syntax included in the profile layer level syntax can be applied to a encoded layer video sequence (CLVS).
[0233] A Figura 31 é um diagrama que ilustra uma sintaxe de RBSP de conjunto de parâmetros de vídeo e uma sintaxe geral de informação de restrição de acordo com uma modalidade da presente invenção.[0233] Figure 31 is a diagram illustrating a video parameter set RBSP syntax and a general constraint information syntax in accordance with an embodiment of the present invention.
[0234] A Figura 31(a) é um diagrama que ilustra uma sintaxe de RBSP de um conjunto de parâmetros de vídeo (VPS) de acordo com uma modalidade da presente invenção, e a Figura 31(b) é um diagrama que ilustra uma sintaxe de informação de restrição geral (GCI) de acordo com uma modalidade da presente invenção. Como mostrado na Figura 31(a), a sintaxe GCI ‘general_constraint_info()’ pode ser incluída na sintaxe VPS. Além disso, embora não ilustrado na Figura 31(a), a sintaxe de nível de camada de perfil acima mencionada pode ser incluída na sintaxe VPS e a sintaxe GCI pode ser incluída na sintaxe de nível de camada de perfil incluída na sintaxe VPS. A sintaxe GCI pode incluir pelo menos um elemento de sintaxe. As Figuras 32 e 33 são diagramas que ilustram uma sintaxe de RBSP do conjunto de parâmetros de sequência (SPS) de acordo com uma modalidade da presente invenção. A seguir, um sinalizador de restrição que é um elemento de sintaxe incluído na sintaxe GCI será descrito com referência às Figuras 31 a 33.[0234] Figure 31(a) is a diagram illustrating an RBSP syntax of a video parameter set (VPS) in accordance with an embodiment of the present invention, and Figure 31(b) is a diagram illustrating a general constraint information (GCI) syntax in accordance with an embodiment of the present invention. As shown in Figure 31(a), the GCI syntax ‘general_constraint_info()’ can be included in the VPS syntax. Furthermore, although not illustrated in Figure 31(a), the aforementioned profile layer level syntax can be included in the VPS syntax and the GCI syntax can be included in the profile layer level syntax included in the VPS syntax. The GCI syntax may include at least one syntax element. Figures 32 and 33 are diagrams illustrating a sequence parameter set (SPS) RBSP syntax in accordance with an embodiment of the present invention. In the following, a restriction flag which is a syntax element included in the GCI syntax will be described with reference to Figures 31 to 33.
[0235] - no_qtbtt_dual_tree_intra_constraint_flag[0235] - no_qtbtt_dual_tree_intra_constraint_flag
[0236] no_qtbtt_dual_tree_intra_constraint_flag é um sinalizador para controlar qtbtt_dual_tree_intra_flag. Por exemplo, quando um valor de no_qtbtt_dual_tree_intra_constraint_flag é 1, um valorde qtbtt_dual_tree_intra_flag pode ser definido como 0. Enquanto isso, quando o valor de no_qtbtt_dual_tree_intra_constraint_flag é 0, não há restrição no valor de qtbtt_dual_tree_intra_flag. Ou seja, o valor de qtbtt_dual_tree_intra_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0236] no_qtbtt_dual_tree_intra_constraint_flag is a flag to control qtbtt_dual_tree_intra_flag. For example, when a value of no_qtbtt_dual_tree_intra_constraint_flag is 1, a value of qtbtt_dual_tree_intra_flag can be set to 0. Meanwhile, when the value of no_qtbtt_dual_tree_intra_constraint_flag is 0, there is no restriction on the value of qtbtt_dual_tree_intra_flag. That is, the value of qtbtt_dual_tree_intra_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0237] Aqui, qtbtt_dual_tree_intra_flag é um sinalizadorque indica se a fatia é usada em uma estrutura de sintaxe coding_tree. Por exemplo, quando o valor de qtbtt_dual_tree_intra_flag é 1, isso indica que para fatia I, cada unidade de árvore de codificação (CTU) pode ser dividida em unidades de codificação com 64 x64 amostras de luma por meio de divisão de árvore quaternária implícita, em que as unidades de codificação são nós raiz (unidade de codificação mais alta) da estrutura de sintaxe coding tree separada para dois elementos, ou seja, luma e croma. Quando o valor de qtbtt_dual_tree_intra_flag é 0, pode indicarque a estrutura de sintaxe coding_tree não é usada para fatia I. O qtbtt_dual_tree_intra_flag mencionado acima pode ser chamado de sps_qtbtt_dual_tree_intra_flag.[0237] Here, qtbtt_dual_tree_intra_flag is a flag that indicates whether the slice is used in a coding_tree syntax structure. For example, when the value of qtbtt_dual_tree_intra_flag is 1, it indicates that for slice I, each coding tree unit (CTU) can be divided into coding units with 64 x64 luma samples through implicit quaternary tree splitting, in that the coding units are root nodes (highest coding unit) of the separate coding tree syntax structure for two elements, namely luma and chroma. When the value of qtbtt_dual_tree_intra_flag is 0, it may indicate that the coding_tree syntax structure is not used for slice I. The qtbtt_dual_tree_intra_flag mentioned above can be called sps_qtbtt_dual_tree_intra_flag.
[0238] Com referência à Figura 32, Iog2_ctu_size_minus5 é um elemento de sintaxe que indica informação de tamanho de um bloco de árvore de codificação luma de cada unidade de árvore de codificação. O tamanho (Ctbl_og2SizeY) de um bloco de árvore de codificação luma em unidades de Iog2 pode ser encontrado adicionando 5 a Iog2_ctu_size_minus5. Isto é expresso como Equação 7 como abaixo. Na Equação 7, CtbSizeY denota um tamanho de cada bloco de árvore de codificação de luma. [0238] Referring to Figure 32, Iog2_ctu_size_minus5 is a syntax element that indicates size information of a luma coding tree block of each coding tree unit. The size (Ctbl_og2SizeY) of a luma encoding tree block in Iog2 units can be found by adding 5 to Iog2_ctu_size_minus5. This is expressed as Equation 7 as below. In Equation 7, CtbSizeY denotes a size of each luma encoding tree block.
[0239] - no_partition_constraints_override_constraint_flag[0239] - no_partition_constraints_override_constraint_flag
[0240] no_partition_constraints_override_constraint_flag é um sinalizador para controlar partition_constraints_override_enabled_flag. Por exemplo, quando um valor de no_partition_constraints_override_constraint_flag é 1, um valor de partition_constraints_override_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_partition_constraints_override_constraint_flag é 0, não há restrição no valor de partition_constraints_override_enabled_flag. Ou seja, o valor de partition_constraints_override_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0240] no_partition_constraints_override_constraint_flag is a flag to control partition_constraints_override_enabled_flag. For example, when a value of no_partition_constraints_override_constraint_flag is 1, a value of partition_constraints_override_enabled_flag can be set to 0. Meanwhile, when the value of no_partition_constraints_override_constraint_flag is 0, there is no restriction on the value of partition_constraints_override_enabled_flag. That is, the value of partition_constraints_override_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0241] Aqui, partition_constraints_override_enabled_flagé um sinalizadorque indica se ph_partition_constraints_override_flag está presente em um cabeçalho de figura (PH). Quando um valor de partition_constraints_override_enabled_flag é 1, indica que ph_partition_constraints_override_flag está presente e quando o valor de partition_constraints_override_enabled_flag é 0, indica que ph_partition_constraints_override_flag não está presente. O partition_constraints_override_enabled_flag mencionado acima pode ser chamado de sps_partition_constraints_override_enabled_flag.[0241] Here, partition_constraints_override_enabled_flag is a flag that indicates whether ph_partition_constraints_override_flag is present in a figure header (PH). When a value of partition_constraints_override_enabled_flag is 1, it indicates that ph_partition_constraints_override_flag is present and when the value of partition_constraints_override_enabled_flag is 0, it indicates that ph_partition_constraints_override_flag is not present. The partition_constraints_override_enabled_flag mentioned above can be called sps_partition_constraints_override_enabled_flag.
[0242] - no_sao_constraint_flag[0242] - no_sao_constraint_flag
[0243] no_sao_constraint_flag é um sinalizador para controlar sps_sao_enabled_flag. Por exemplo, quando um valor de no_sao_constraint_flag é 1, um valor de sps_sao_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_sao_constraint_flag é 0, não há restrição no valor de sps_sao_enabled_flag. Ou seja, o valor de sps_sao_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0243] no_sao_constraint_flag is a flag to control sps_sao_enabled_flag. For example, when a value of no_sao_constraint_flag is 1, a value of sps_sao_enabled_flag can be set to 0. Meanwhile, when the value of no_sao_constraint_flag is 0, there is no restriction on the value of sps_sao_enabled_flag. That is, the value of sps_sao_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0244] Aqui, sps_sao_enabled_flag é um sinalizador que indica se um processo de deslocamento adaptativo de amostra é aplicado a uma figura reconstruída após um processo de filtro de desbloqueio para uma sequência de vídeo de camada codificada (CLVS). Por exemplo, quando o valor de sps_sao_enabled_flag é 1, indica que o processo de deslocamento adaptativo de amostra está habilitado para uma figura reconstruída após o processo de filtro de desbloqueio para um CLVS, e o processo de deslocamento adaptativo de amostra é aplicado a uma figura reconstruída após o filtro de desbloqueio processo para um CLVS. Quando o valor de sps_sao_enabled_flag é 0, indica que o processo de deslocamento adaptativo de amostra está desabilitado para uma figura reconstruída após o processo de filtro de desbloqueio para um CLVS, e o processo de deslocamento adaptativo de amostra não é aplicado a uma figura reconstruída após o processo de filtro de desbloqueio para um CLVS.[0244] Here, sps_sao_enabled_flag is a flag that indicates whether an adaptive sample shift process is applied to a reconstructed figure after a deblocking filter process for a coded layer video sequence (CLVS). For example, when the value of sps_sao_enabled_flag is 1, it indicates that the adaptive sample shift process is enabled for a figure reconstructed after the deblocking filter process for a CLVS, and the adaptive sample shift process is applied to a figure Rebuilt after the process unlock filter for a CLVS. When the value of sps_sao_enabled_flag is 0, it indicates that the adaptive sample shift process is disabled for a figure reconstructed after the unlock filter process for a CLVS, and the adaptive sample shift process is not applied to a figure reconstructed after the unlock filter process for a CLVS.
[0245] - no_alf_constraint_flag[0245] - no_alf_constraint_flag
[0246] no_alf_constraint_flag é um sinalizador para controlar sps_alf_enabled_flag. Por exemplo, quando um valor de no_alf_constraint_flag é 1, um valorde sps_alf_enabled_flag pode ser definido como 0. Enquanto isso, quando o valorde no_alf_constraint_flag é0, não há restrição no valor de sps_alf_enabled_flag. Ou seja, o valor de sps_alf_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0246] no_alf_constraint_flag is a flag to control sps_alf_enabled_flag. For example, when a value of no_alf_constraint_flag is 1, a value of sps_alf_enabled_flag can be set to 0. Meanwhile, when the value of no_alf_constraint_flag is 0, there is no restriction on the value of sps_alf_enabled_flag. That is, the value of sps_alf_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0247] Aqui, sps_alf_enabled_flag é um sinalizador que indica se um filtro de loop adaptativo que é aplicado na decodificação de figuras em um CLVS está ativado. Por exemplo, quando o valor de sps_alf_enabled_flag é 1, o filtro de loop adaptativo é habilitado e pode ser aplicado na decodificação de figuras em um CLVS. Quando o valor de sps_alf_enabled_flag for 0, indica que o filtro de loop adaptativo está desabilitadoe não é aplicado na decodificação de figuras em um CLVS.[0247] Here, sps_alf_enabled_flag is a flag that indicates whether an adaptive loop filter that is applied when decoding figures in a CLVS is enabled. For example, when the value of sps_alf_enabled_flag is 1, the adaptive loop filter is enabled and can be applied when decoding figures in a CLVS. When the value of sps_alf_enabled_flag is 0, it indicates that the adaptive loop filter is disabled and is not applied when decoding figures in a CLVS.
[0248] - no_joint_cbcr_constraint_flag[0248] - no_joint_cbcr_constraint_flag
[0249] no_joint_cbcr_constraint_flag é um sinalizador para controlar spsjoint_cbcr_enabled_flag. Por exemplo, quando um valor de no_joint_cbcr_constraint_flag é 1, um valor de sps_joint_cbcr_enabled_flag pode ser definido como 0. Enquanto isso, quando o valorde no_joint_cbcr_constraint_flag é 0, não há restrição no valor de sps_joint_cbcr_enabled_flag. Ou seja, o valor de spsjoint_cbcr_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0249] no_joint_cbcr_constraint_flag is a flag to control spsjoint_cbcr_enabled_flag. For example, when a value of no_joint_cbcr_constraint_flag is 1, a value of sps_joint_cbcr_enabled_flag can be set to 0. Meanwhile, when the value of no_joint_cbcr_constraint_flag is 0, there is no restriction on the value of sps_joint_cbcr_enabled_flag. That is, the value of spsjoint_cbcr_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0250] Aqui, sps_joint_cbcr_enabled_flag é um sinalizador que indica se a codificação conjunta de resíduos de croma usados na decodificaçãode figuras em um CLVS está habilitada. Por exemplo, quando o valor de spsjoint_cbcr_enabled_flag é 1, indica que a codificação conjunta de resíduos de croma está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de spsjoint_cbcr_enabled_flag é 0, indica que a codificação conjunta de resíduos de croma está desabilitada e não é usada na decodificação de figuras em um CLVS. Enquanto isso, sps_joint_cbcr_enabled_flag pode não estar presente e, nesse caso, o valor de sps_joint_cbcr_enabled_flag pode ser inferido como 0.[0250] Here, sps_joint_cbcr_enabled_flag is a flag that indicates whether joint coding of chroma residues used in decoding figures in a CLVS is enabled. For example, when the value of spsjoint_cbcr_enabled_flag is 1, it indicates that chroma residue joint coding is enabled and can be used to decode figures in a CLVS. When the value of spsjoint_cbcr_enabled_flag is 0, it indicates that chroma residue joint coding is disabled and is not used in decoding figures in a CLVS. Meanwhile, sps_joint_cbcr_enabled_flag may not be present, in which case the value of sps_joint_cbcr_enabled_flag may be inferred to be 0.
[0251] - no_ref_wraparound_constraint_flag[0251] - no_ref_wraparound_constraint_flag
[0252] no_ref_wraparound_constraint_flag é um sinalizador para controlar sps_ref_wraparound_enabled_flag. Por exemplo, quando um valor de no_ref_wraparound_constraint_flag é 1, um valor de sps_ref_wraparound_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_ref_wraparound_constraint_flag é 0, não há restrição no valor de sps_ref_wraparound_enabled_flag. Ou seja, o valor de sps_ref_wraparound_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0252] no_ref_wraparound_constraint_flag is a flag to control sps_ref_wraparound_enabled_flag. For example, when a value of no_ref_wraparound_constraint_flag is 1, a value of sps_ref_wraparound_enabled_flag can be set to 0. Meanwhile, when the value of no_ref_wraparound_constraint_flag is 0, there is no restriction on the value of sps_ref_wraparound_enabled_flag. That is, the value of sps_ref_wraparound_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0253] Aqui, sps_ref_wraparound_enabled_flag é um sinalizador que indica se a compensação de movimento envolvente horizontal que é aplicada na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valor de sps_ref_wraparound_enabled_flag é 1, isso indica que a compensação de movimento horizontal está habilitada e pode ser aplicada na decodificação de figuras em um CLVS. Quando o valor de sps_ref_wraparound_enabled_flag for 0, isso indica que a compensação de movimento de contorno horizontal está desabilitada e não é aplicada na decodificação de figuras em um CLVS.[0253] Here, sps_ref_wraparound_enabled_flag is a flag that indicates whether the horizontal wraparound motion compensation that is applied when decoding figures in a CLVS is enabled. For example, when the value of sps_ref_wraparound_enabled_flag is 1, it indicates that horizontal motion compensation is enabled and can be applied when decoding figures in a CLVS. When the value of sps_ref_wraparound_enabled_flag is 0, this indicates that horizontal wraparound motion compensation is disabled and is not applied when decoding figures in a CLVS.
[0254] - no_temporal_mvp_constraint_flag[0254] - no_temporal_mvp_constraint_flag
[0255] no_temporal_mvp_constraint_flag é um sinalizador para controlar sps_temporal_mvp_enabled_flag. Por exemplo, quando um valor de no_temporal_mvp_constraint_flag é 1, um valor de sps_temporal_mvp_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_temporal_mvp_constraint_flag é 0, não há restrição no valor de sps_temporal_mvp_enabled_flag. Ou seja, o valor de sps_temporal_mvp_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0255] no_temporal_mvp_constraint_flag is a flag to control sps_temporal_mvp_enabled_flag. For example, when a value of no_temporal_mvp_constraint_flag is 1, a value of sps_temporal_mvp_enabled_flag can be set to 0. Meanwhile, when the value of no_temporal_mvp_constraint_flag is 0, there is no restriction on the value of sps_temporal_mvp_enabled_flag. That is, the value of sps_temporal_mvp_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0256] Aqui, sps_temporal_mvp_enabled_flag é um sinalizadorque indica se os preditores de vetor de movimento temporal usados na decodificação de figuras em um CLVS estão ativados. Por exemplo, quando o valor de sps_temporal_mvp_enabled_flag é 1, indica que os preditores de vetor de movimento temporal estão habilitados e podem ser usados na decodificação de figuras em um CLVS. Quando o valor de sps_temporal_mvp_enabled_flag é 0, indica que os preditores de vetor de movimento temporal estão desabilitados e não são usados na decodificação de figuras em um CLVS.[0256] Here, sps_temporal_mvp_enabled_flag is a flag that indicates whether the temporal motion vector predictors used in decoding figures in a CLVS are enabled. For example, when the value of sps_temporal_mvp_enabled_flag is 1, it indicates that temporal motion vector predictors are enabled and can be used in decoding figures in a CLVS. When the value of sps_temporal_mvp_enabled_flag is 0, it indicates that temporal motion vector predictors are disabled and are not used in decoding figures in a CLVS.
[0257] - no_sbtmvp_constraint_flag[0257] - no_sbtmvp_constraint_flag
[0258] no_sbtmvp_constraint_flag é um sinalizador para controlar sps_sbtmvp_enabled_flag. Por exemplo, quando um valor de no_sbtmvp_constraint_flag é 1, um valor de sps_sbtmvp_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_sbtmvp_constraint_flag é 0, não há restrição no valor de sps_sbtmvp_enabled_flag. Ou seja, o valor de sps_sbtmvp_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0258] no_sbtmvp_constraint_flag is a flag to control sps_sbtmvp_enabled_flag. For example, when a value of no_sbtmvp_constraint_flag is 1, a value of sps_sbtmvp_enabled_flag can be set to 0. Meanwhile, when the value of no_sbtmvp_constraint_flag is 0, there is no restriction on the value of sps_sbtmvp_enabled_flag. That is, the value of sps_sbtmvp_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0259] Aqui, sps_sbtmvp_enabled_flag é um sinalizador que indica se os preditores de vetor de movimento temporal baseados em sub-bloco usados na decodificação de figuras em um CLVS estão ativados. Por exemplo, quando o valor de sps_sbtmvp_enabled_flag é 1, isso indica que os preditores de vetor de movimento temporal baseados em sub-bloco estão habilitados e podem ser usados na decodificação de figuras em um CLVS. Aqui, um tipo de fatia de figuras pode incluir tipos (por exemplo, fatia B, fatia P), exceto para fatia I. Quando o valor de sps_sbtmvp_enabled_flag é 0, indica que os preditores de vetor de movimento temporal baseados em sub-bloco estão desabilitados e não são usados na decodificação de figuras em um CLVS.[0259] Here, sps_sbtmvp_enabled_flag is a flag that indicates whether the sub-block based temporal motion vector predictors used in decoding figures in a CLVS are enabled. For example, when the value of sps_sbtmvp_enabled_flag is 1, it indicates that sub-block based temporal motion vector predictors are enabled and can be used in decoding figures in a CLVS. Here, a figure slice type can include types (e.g. slice B, slice P) except for slice I. When the value of sps_sbtmvp_enabled_flag is 0, it indicates that the sub-block based temporal motion vector predictors are disabled and are not used when decoding figures in a CLVS.
[0260] - no_amvr_constraint_flag[0260] - no_amvr_constraint_flag
[0261] no_amvr_constraint_flag é um sinalizador para controlar sps_amvr_enabled_flag. Por exemplo, quando um valor de no_amvr_constraint_flag é 1, um valor de sps_amvr_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no amvr constraint flag é 0, não há restrição no valor de sps_amvr_enabled_flag. Ou seja, o valor de sps_amvr_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0261] no_amvr_constraint_flag is a flag to control sps_amvr_enabled_flag. For example, when a value of no_amvr_constraint_flag is 1, a value of sps_amvr_enabled_flag can be set to 0. Meanwhile, when the value of no amvr constraint flag is 0, there is no restriction on the value of sps_amvr_enabled_flag. That is, the value of sps_amvr_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0262] Aqui, sps_amvr_enabled_flag é um sinalizador que indica se a resolução de diferença de vetor de movimento usada na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valorde sps_amvr_enabled_flag é 1, indica que a resolução de diferença de vetor de movimento está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de sps_amvr_enabled_flag é 0, indica que a resolução da diferença do vetor de movimento está desabilitada e não é usada na decodificação de figuras em um CLVS.[0262] Here, sps_amvr_enabled_flag is a flag that indicates whether the motion vector difference resolution used in decoding figures in a CLVS is enabled. For example, when the value of sps_amvr_enabled_flag is 1, it indicates that motion vector difference resolution is enabled and can be used in decoding figures in a CLVS. When the value of sps_amvr_enabled_flag is 0, it indicates that motion vector difference resolution is disabled and is not used when decoding figures in a CLVS.
[0263] - no_bdof_constraint_flag[0263] - no_bdof_constraint_flag
[0264] no_bdof_constraint_flag é um sinalizador para controlar sps_bdof_enabled_flag. Por exemplo, quando um valorde no_bdof_constraint_flag é 1, um valor de sps_bdof_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_bdof_constraint_flag é 0, não há restrição no valor de sps_bdof_enabled_flag. Ou seja, o valor de sps_bdof_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0264] no_bdof_constraint_flag is a flag to control sps_bdof_enabled_flag. For example, when a value of no_bdof_constraint_flag is 1, a value of sps_bdof_enabled_flag can be set to 0. Meanwhile, when the value of no_bdof_constraint_flag is 0, there is no restriction on the value of sps_bdof_enabled_flag. That is, the value of sps_bdof_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0265] Aqui, sps_bdof_enabled_flag é um sinalizadorque indica se a predição bidirecional de fluxo óptico usada na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valor de sps_bdof_enabled_flag é 1, indica que a predição bidirecional de fluxo óptico está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de sps_bdof_enabled_flag é 0, indica que a predição bidirecional de fluxo óptico está desabilitada e não é usada na decodificação de figuras em um CLVS.[0265] Here, sps_bdof_enabled_flag is a flag that indicates whether the bidirectional optical flow prediction used in decoding figures in a CLVS is enabled. For example, when the value of sps_bdof_enabled_flag is 1, it indicates that bidirectional optical flow prediction is enabled and can be used to decode figures in a CLVS. When the value of sps_bdof_enabled_flag is 0, it indicates that bidirectional optical flow prediction is disabled and is not used in decoding figures in a CLVS.
[0266] - no_dmvr_constraint_flag[0266] - no_dmvr_constraint_flag
[0267] no_dmvr_constraint_flag é um sinalizador para controlar sps_dmvr_enabled_flag. Por exemplo, quando um valor de no_dmvr_constraint_flag é 1, um valor de sps_dmvr_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no dmvr constraint flag é 0, não há restrição no valor de sps_dmvr_enabled_flag. Ou seja, o valor de sps_dmvr_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0267] no_dmvr_constraint_flag is a flag to control sps_dmvr_enabled_flag. For example, when a value of no_dmvr_constraint_flag is 1, a value of sps_dmvr_enabled_flag can be set to 0. Meanwhile, when the value of no dmvr constraint flag is 0, there is no restriction on the value of sps_dmvr_enabled_flag. That is, the value of sps_dmvr_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0268] Aqui, sps_dmvr_enabled_flag é um sinalizador que indica se a bi- predição baseada em refinamento de vetor de movimento do decodificador usada na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valor de sps_dmvr_enabled_flag é 1, isso indica que a bi-predição baseada em refinamento de vetor de movimento do decodificador está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de sps_dmvr_enabled_flag é 0, isso indica que a bi-predição baseada em refinamento de vetor de movimento do decodificador está desabilitada e não é usada na decodificação de figuras em um CLVS.[0268] Here, sps_dmvr_enabled_flag is a flag that indicates whether the decoder motion vector refinement based bi-prediction used in decoding figures in a CLVS is enabled. For example, when the value of sps_dmvr_enabled_flag is 1, it indicates that the decoder's motion vector refinement-based bi-prediction is enabled and can be used in decoding figures in a CLVS. When the value of sps_dmvr_enabled_flag is 0, it indicates that the decoder's motion vector refinement-based bi-prediction is disabled and is not used in decoding figures in a CLVS.
[0269] - no_cclm_constraint_flag[0269] - no_cclm_constraint_flag
[0270] no_cclm_constraint_flag é um sinalizador para controlar sps_cclm_enabled_flag. Por exemplo, quando um valor de no_cclm_constraint_flag é 1, um valor de sps_cclm_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_cclm_constraint_flag é 0, não há restrição no valor de sps_cclm_enabled_flag. Ou seja, o valor de sps_cclm_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0270] no_cclm_constraint_flag is a flag to control sps_cclm_enabled_flag. For example, when a value of no_cclm_constraint_flag is 1, a value of sps_cclm_enabled_flag can be set to 0. Meanwhile, when the value of no_cclm_constraint_flag is 0, there is no restriction on the value of sps_cclm_enabled_flag. That is, the value of sps_cclm_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0271] Aqui, sps_cclm_enabled_flag é um sinalizador que indica se a intrapredição de modelo linear de componente cruzado de um componente de luma para um componente de croma usado na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valor de sps_cclm_enabled_flag é 1, indica que a intrapredição do modelo linear de componente cruzado de um componente de luma para um componente de croma está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de sps_cclm_enabled_flag é 0, indica que a intrapredição do modelo linearde componentes cruzados de um componente de luma para um componente de croma está desabilitadae não é usada na decodificação de figuras em um CLVS. Enquanto isso, sps_cclm_enabled_flag pode não estar presente e, nesse caso, o valor de spscclmenabledjlag pode ser inferido como 0.[0271] Here, sps_cclm_enabled_flag is a flag that indicates whether cross-component linear model intraprediction of a luma component to a chroma component used in decoding figures in a CLVS is enabled. For example, when the value of sps_cclm_enabled_flag is 1, it indicates that cross-component linear model intraprediction from a luma component to a chroma component is enabled and can be used in decoding figures in a CLVS. When the value of sps_cclm_enabled_flag is 0, it indicates that linear model intraprediction of cross components from a luma component to a chroma component is disabled and is not used in decoding figures in a CLVS. Meanwhile, sps_cclm_enabled_flag may not be present, in which case the value of spscclmenabledjlag may be inferred to be 0.
[0272] - no_mts_constraint_flag[0272] - no_mts_constraint_flag
[0273] no_mts_constraint_flag é um sinalizador para controlar sps_mts_enabled_flag. Por exemplo, quando um valor de no_mts_constraint_flag é 1, um valor de sps_mts_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_mts_constraint_flag é 0, não há restrição no valor de sps_mts_enabled_flag. Ou seja, o valor de sps_mts_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0273] no_mts_constraint_flag is a flag to control sps_mts_enabled_flag. For example, when a value of no_mts_constraint_flag is 1, a value of sps_mts_enabled_flag can be set to 0. Meanwhile, when the value of no_mts_constraint_flag is 0, there is no restriction on the value of sps_mts_enabled_flag. That is, the value of sps_mts_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0274] Aqui, sps_mts_enabled_flag é um sinalizador que indica se sps_explicit_mts_intra_enabled_flag e sps_explicit_mts_inter_enabled_flag estão presentes em um conjunto de parâmetros de sequência (SPS). Por exemplo, quando o valor de sps_mts_enabled_flag é 1, isso indica que sps_explicit_mts_intra_enabled_flag e sps_explicit_mts_inter_enabled_flag estão presentes no SPS. Quando o valor de sps_mts_enabled_flag é 0, isso indica que sps_explicit_mts_intra_enabled_flag e sps_explicit_mts_inter_enabled_flag não estão presentes no SPS.[0274] Here, sps_mts_enabled_flag is a flag that indicates whether sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag are present in a sequence parameter set (SPS). For example, when the value of sps_mts_enabled_flag is 1, it indicates that sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag are present in the SPS. When the value of sps_mts_enabled_flag is 0, it indicates that sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag are not present in the SPS.
[0275] Aqui, sps_explicit_mts_intra_enabled_flag e sps_explicit_mts_inter_enabled_flag são sinalizadores que indicam se mtsjdx está presente em uma sintaxe de unidade de codificação intra de um CLVS. Por exemplo, quando um valor de sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag é 1, isso indica que mtsjdx pode estar presente em uma sintaxe de unidade de intra/intercodificação. Quando o valor de sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag for 0, isso indica que mtsjdx não está presente na sintaxe da unidade de intra/intercodificação. Enquanto isso, sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag pode não estar presente e, nesse caso, o valor de sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag pode ser inferido como 0.[0275] Here, sps_explicit_mts_intra_enabled_flag and sps_explicit_mts_inter_enabled_flag are flags that indicate whether mtsjdx is present in an intra coding unit syntax of a CLVS. For example, when a value of sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag is 1, this indicates that mtsjdx may be present in an intra/intercoding unit syntax. When the value of sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag is 0, it indicates that mtsjdx is not present in the intra/intercoding unit syntax. Meanwhile, sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag may not be present, in which case the value of sps_explicit_mts_intra_enabled_flag/sps_explicit_mts_inter_enabled_flag may be inferred to be 0.
[0276] O mtsjdx acima mencionado é um elemento de sintaxe que indica um kernel de transformada aplicado ao longo das direções horizontal e vertical de um bloco de transformada de luma associado a uma unidade de codificação atual.[0276] The aforementioned mtsjdx is a syntax element that indicates a transform kernel applied along the horizontal and vertical directions of a luma transform block associated with a current encoding unit.
[0277] - no_sbt_constraint_flag[0277] - no_sbt_constraint_flag
[0278] no_sbt_constraint_flag é um sinalizador para controlar sps_sbt_enabled_flag. Por exemplo, quando um valorde no_sbt_constraint_flag é 1, um valor de sps_sbt_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_sbt_constraint_flag é 0, não há restrição no valor de sps_sbt_enabled_flag. Ou seja, o valor de sps_sbt_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0278] no_sbt_constraint_flag is a flag to control sps_sbt_enabled_flag. For example, when a value of no_sbt_constraint_flag is 1, a value of sps_sbt_enabled_flag can be set to 0. Meanwhile, when the value of no_sbt_constraint_flag is 0, there is no restriction on the value of sps_sbt_enabled_flag. That is, the value of sps_sbt_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0279] Aqui, sps_sbt_enabled_flag é um sinalizador que indica se a transformada de sub-bloco para unidades de codificação interpreditas (CUs) usadas na decodificação de figuras em um CLVS está habilitada. Por exemplo, quando o valor de sps_sbt_enabled_flag é 1, indica que a transformada de sub-bloco para unidades de codificação interpreditas está habilitada e pode ser usada na decodificação de figuras em um CLVS. Quando o valor de sps_sbt_enabled_flag é 0, indica que a transformada de sub-bloco para unidades de codificação interpreditas está desabilitada e não é usada na decodificação de figuras em um CLVS.[0279] Here, sps_sbt_enabled_flag is a flag that indicates whether the sub-block transform for interpredicted coding units (CUs) used in decoding figures in a CLVS is enabled. For example, when the value of sps_sbt_enabled_flag is 1, it indicates that the sub-block transform for interpredicted coding units is enabled and can be used in decoding figures in a CLVS. When the value of sps_sbt_enabled_flag is 0, it indicates that the subblock transform for interpredicted coding units is disabled and is not used in decoding figures in a CLVS.
[0280] - no_affine_motion_constraint_flag[0280] - no_affine_motion_constraint_flag
[0281] no_affine_motion_constraint_flag é um sinalizador para controlar sps_affine_enabled_flag. Por exemplo, quando um valor de no_affine_motion_constraint_flag é 1, um valor de sps_affine_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_affine_motion_constraint_flag é 0, não há restrição no valor de sps_affine_enabled_flag. Ou seja, o valor de sps_affine_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0281] no_affine_motion_constraint_flag is a flag to control sps_affine_enabled_flag. For example, when a value of no_affine_motion_constraint_flag is 1, a value of sps_affine_enabled_flag can be set to 0. Meanwhile, when the value of no_affine_motion_constraint_flag is 0, there is no restriction on the value of sps_affine_enabled_flag. That is, the value of sps_affine_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0282] Aqui, sps_affine_enabled_flag é um sinalizador que indica se a compensação de movimento baseada em modelo afim usada na decodificação de figuras em um CLVS está habilitada. Além disso, sps_affine_enabled_flag indica se inter_affine_flag e cu_affine_type_flag estão presentes em uma sintaxe de unidade de codificação de um CLVS. Por exemplo, quando o valor de sps_affine_enabled_flag é 1, indica que a compensação de movimento baseada em modelo afim está habilitada e pode ser usada na decodificação de figuras em um CLVS. Além disso, quando o valor de sps_affine_enabled_flag é 1, isso indica que inter_affine_flag e cu_affine_type_flag podem estar presentes na sintaxe da unidade de codificação de um CLVS. Quando o valor de sps_affine_enabled_flagé 0, indica que a compensação de movimento baseada em modelo afim está desabilitada e não é usada na decodificação de figuras em um CLVS. Quando o valor de sps_affine_enabled_flag é 0, isso indica que inter_affine_flag e cu_affine_type_flag não estão presentes na sintaxe da unidade de codificação de um CLVS.[0282] Here, sps_affine_enabled_flag is a flag that indicates whether affine model-based motion compensation used in decoding figures in a CLVS is enabled. Additionally, sps_affine_enabled_flag indicates whether inter_affine_flag and cu_affine_type_flag are present in a CLVS coding unit syntax. For example, when the value of sps_affine_enabled_flag is 1, it indicates that affine model-based motion compensation is enabled and can be used in decoding figures in a CLVS. Additionally, when the value of sps_affine_enabled_flag is 1, this indicates that inter_affine_flag and cu_affine_type_flag may be present in the coding unit syntax of a CLVS. When the value of sps_affine_enabled_flage is 0, it indicates that affine model-based motion compensation is disabled and is not used when decoding figures in a CLVS. When the value of sps_affine_enabled_flag is 0, it indicates that inter_affine_flag and cu_affine_type_flag are not present in the coding unit syntax of a CLVS.
[0283] Aqui, inter_affine_flag é um sinalizador que indica se a compensação de movimento baseada em modelo afim é usada para gerar uma amostra de predição de uma unidade de codificação atual ao decodificar a unidade de codificação atual. cu_affine_type_flag é um sinalizador que indica se a compensação de movimento baseada em modelo afim que usa 4 parâmetros é usada ou a compensação de movimento baseada em modelo afim que usa 6 parâmetros é usada ao decodificar uma unidade de codificação atual.[0283] Here, inter_affine_flag is a flag that indicates whether affine model-based motion compensation is used to generate a prediction sample of a current coding unit when decoding the current coding unit. cu_affine_type_flag is a flag that indicates whether affine model-based motion compensation that uses 4 parameters is used or affine model-based motion compensation that uses 6 parameters is used when decoding a current encoding unit.
[0284] - no_bcw_constraint_flag[0284] - no_bcw_constraint_flag
[0285] no_bcw_constraint_flag é um sinalizador para controlar sps_bcw_enabled_flag. Por exemplo, quando um valor de no_bcw_constraint_flag é 1, um valor de sps_bcw_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_bcw_constraint_flag é 0, não há restrição no valor de sps_bcw_enabled_flag. Ou seja, o valor de sps_bcw_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0285] no_bcw_constraint_flag is a flag to control sps_bcw_enabled_flag. For example, when a value of no_bcw_constraint_flag is 1, a value of sps_bcw_enabled_flag can be set to 0. Meanwhile, when the value of no_bcw_constraint_flag is 0, there is no restriction on the value of sps_bcw_enabled_flag. That is, the value of sps_bcw_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0286] Aqui, sps_bcw_enabled_flag é um sinalizadorque indica se a predição bidirecional usando pesos de unidade de codificação, que é usada na decodificação de figuras em um CLVS, está habilitada. Além disso, sps_bcw_enabled_flag também pode indicar se bcwjdx está presente na sintaxe da unidade de codificação de um CLVS. Por exemplo, quando o valor de sps_bcw_enabled_flag é 1, indica que a predição bidirecional usando pesos de unidade de codificação está habilitada e pode ser usada na decodificação de figuras em um CLVS. Além disso, quando o valor de sps_bcw_enabled_flag é 1, indica que bcwjdx pode estar presente na sintaxe da unidade de codificação de um CLVS. Quando o valor de sps_bcw_enabled_flag é 0, indica que a predição bidirecional usando pesos unitários de codificação está desabilitada e não é usada na decodificação de figuras em um CLVS. Além disso, quando o valor de sps_bcw_enabled_flag é 0, indica que bcwjdx não está presente na sintaxe da unidade de codificação de um CLVS.[0286] Here, sps_bcw_enabled_flag is a flag that indicates whether bidirectional prediction using coding unit weights, which is used in decoding figures in a CLVS, is enabled. Additionally, sps_bcw_enabled_flag can also indicate whether bcwjdx is present in the coding unit syntax of a CLVS. For example, when the value of sps_bcw_enabled_flag is 1, it indicates that bidirectional prediction using coding unit weights is enabled and can be used in decoding figures in a CLVS. Additionally, when the value of sps_bcw_enabled_flag is 1, it indicates that bcwjdx may be present in the coding unit syntax of a CLVS. When the value of sps_bcw_enabled_flag is 0, it indicates that bidirectional prediction using coding unit weights is disabled and is not used when decoding figures in a CLVS. Additionally, when the value of sps_bcw_enabled_flag is 0, it indicates that bcwjdx is not present in the coding unit syntax of a CLVS.
[0287] Aqui, bcwjdx é um elemento de sintaxe que indica um índice relacionado à predição bidirecional usando pesos de unidade de codificação.[0287] Here, bcwjdx is a syntax element that indicates an index related to bidirectional prediction using coding unit weights.
[0288] - nojbc_constraint_flag[0288] - nojbc_constraint_flag
[0289] nojbc_constraint_flag é um sinalizador para controlar spsjbc_enabled_flag. Por exemplo, quando um valor de nojbc_constraint_flag é 1, um valor de spsjbc_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de nojbc_constraint_flag é 0, não há restrição no valor de spsjbc_enabled_flag. Ou seja, o valor de spsjbc_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0289] nojbc_constraint_flag is a flag to control spsjbc_enabled_flag. For example, when a value of nojbc_constraint_flag is 1, a value of spsjbc_enabled_flag can be set to 0. Meanwhile, when the value of nojbc_constraint_flag is 0, there is no restriction on the value of spsjbc_enabled_flag. That is, the value of spsjbc_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0290] Aqui, spsjbc_enabled_flag é um sinalizadorque indica se um modo de predição de cópia intrabloco (IBC) usado na decodificação de figuras em um CLVS está ativado. Por exemplo, quando o valor de sps_ibc_enabled_flag é 1, indica que o modo de predição IBC está habilitado e pode ser usado na decodificação de figuras em um CLVS. Quando o valor de sps_ibc_enabled_flag é 0, indica que o modo de predição IBC está desabilitado e não é usado na decodificação de figuras em um CLVS.[0290] Here, spsjbc_enabled_flag is a flag that indicates whether an intrablock copy (IBC) prediction mode used in decoding figures in a CLVS is enabled. For example, when the value of sps_ibc_enabled_flag is 1, it indicates that the IBC prediction mode is enabled and can be used to decode figures in a CLVS. When the value of sps_ibc_enabled_flag is 0, it indicates that the IBC prediction mode is disabled and is not used when decoding figures in a CLVS.
[0291] - no_ciip_constraint_flag[0291] - no_ciip_constraint_flag
[0292] no_ciip_constraint_flag é um sinalizador para controlar sps_ciip_enabled_flag. Por exemplo, quando um valor de no_ciip_constraint_flag é 1, um valor de sps_ciip_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_ciip_constraint_flag é 0, não há restrição no valor de sps_ciip_enabled_flag. Ou seja, o valor de sps_ciip_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0292] no_ciip_constraint_flag is a flag to control sps_ciip_enabled_flag. For example, when a value of no_ciip_constraint_flag is 1, a value of sps_ciip_enabled_flag can be set to 0. Meanwhile, when the value of no_ciip_constraint_flag is 0, there is no restriction on the value of sps_ciip_enabled_flag. That is, the value of sps_ciip_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0293] Aqui, sps_ciip_enabled_flag é um sinalizador que indica se ciip_flag está presente em uma sintaxe de unidade de codificação para unidades de intercodificação. Por exemplo, quando um valor de sps_ciip_enabled_flag é 0, isso indica que ciip_flag não está presente na sintaxe da unidade de codificação para unidades de intercodificação. Quando o valor de sps_ciip_enabled_flag for 1, isso indica que ciip_flag pode estar presente na sintaxe da unidade de codificação para unidades de intercodificação.[0293] Here, sps_ciip_enabled_flag is a flag that indicates whether ciip_flag is present in a coding unit syntax for intercoding units. For example, when a value of sps_ciip_enabled_flag is 0, it indicates that ciip_flag is not present in the coding unit syntax for intercoding units. When the value of sps_ciip_enabled_flag is 1, this indicates that ciip_flag may be present in the coding unit syntax for intercoding units.
[0294] ciip flag é um sinalizador que indica se a mesclagem entre figuras e a predição intra-figura são aplicadas a uma unidade de codificação atual.[0294] ciip flag is a flag that indicates whether inter-figure merging and intra-figure prediction are applied to a current coding unit.
[0295] - no_fpel_mmvd_constraint_flag[0295] - no_fpel_mmvd_constraint_flag
[0296] no_fpel_mmvd_constraint_flag é um sinalizador para controlar sps_fpel_mmvd_enabled_flag. Por exemplo, quando um valor de no_fpel_mmvd_constraint_flag é 1, um valor de sps_fpel_mmvd_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_fpel_mmvd_constraint_flag é 0, não há restrição no valor de sps_fpel_mmvd_enabled_flag. Ou seja, o valor de sps_fpel_mmvd_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0296] no_fpel_mmvd_constraint_flag is a flag to control sps_fpel_mmvd_enabled_flag. For example, when a value of no_fpel_mmvd_constraint_flag is 1, a value of sps_fpel_mmvd_enabled_flag can be set to 0. Meanwhile, when the value of no_fpel_mmvd_constraint_flag is 0, there is no restriction on the value of sps_fpel_mmvd_enabled_flag. That is, the value of sps_fpel_mmvd_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0297] Aqui, sps_fpel_mmvd_enabled_flag é um sinalizadorque indica o tipo de precisão da amostra usada em um modo de mesclagem usando uma diferença de vetor de movimento. Por exemplo, quando o valorde sps_fpel_mmvd_enabled_flag é 1, isso indica que a precisão da amostra usada no modo de mesclagem usando uma diferença de vetor de movimento é a precisão da amostra inteira. Quando o valorde sps_fpel_mmvd_enabled_flag é 0, isso indica que a precisão da amostra usada no modo de mesclagem usando uma diferença de vetor de movimento é uma precisão fracionária da amostra. Enquanto isso, sps_fpel_mmvd_enabled_flag pode não estar presente e, nesse caso, o valor de sps_fpel_mmvd_enabled_flag pode ser inferido como 0. sps_fpel_mmvd_enabled_flag pode ser referido como sps_mmvd_fullpel_only_flag.[0297] Here, sps_fpel_mmvd_enabled_flag is a flag that indicates the type of sample precision used in a blend mode using a motion vector difference. For example, when the value of sps_fpel_mmvd_enabled_flag is 1, this indicates that the precision of the sample used in blend mode using a motion vector difference is the precision of the entire sample. When the sps_fpel_mmvd_enabled_flag value is 0, it indicates that the sample precision used in blend mode using a motion vector difference is a fractional sample precision. Meanwhile, sps_fpel_mmvd_enabled_flag may not be present, in which case the value of sps_fpel_mmvd_enabled_flag may be inferred as 0. sps_fpel_mmvd_enabled_flag may be referred to as sps_mmvd_fullpel_only_flag.
[0298] - no_triângulo_constraint_flag[0298] - no_triângulo_constraint_flag
[0299] no_triangle_constraint_flag é um sinalizador para controlar sps_triangle_enabled_flag. Por exemplo, quando um valor de no_triangle_constraint_flag é 1, um valor de sps_triangle_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_triangle_constraint_flag é 0, não há restrição no valor de sps_triangle_enabled_flag. Ou seja, o valor de sps_triangle_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0299] no_triangle_constraint_flag is a flag to control sps_triangle_enabled_flag. For example, when a value of no_triangle_constraint_flag is 1, a value of sps_triangle_enabled_flag can be set to 0. Meanwhile, when the value of no_triangle_constraint_flag is 0, there is no restriction on the value of sps_triangle_enabled_flag. That is, the value of sps_triangle_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0300] Aqui, sps_triangle_enabled_flag é um sinalizador que indica se a compensação de movimento baseada em triângulo pode ser aplicada. De acordo com um método de predição de compensação de movimento baseado em triângulo, uma unidade de intercodificação pode ser dividida em duas formas de triângulo em relação a uma linha diagonal na unidade de intercodificação e cada área de triângulo pode ter um conjunto de informações de movimento diferente e, ao realizar compensação de movimento com base nisso, uma amostra de predição pode ser gerada.[0300] Here, sps_triangle_enabled_flag is a flag that indicates whether triangle-based motion compensation can be applied. According to a triangle-based motion compensation prediction method, an intercoding unit can be divided into two triangle shapes with respect to a diagonal line on the intercoding unit, and each triangle area can have a set of motion information different, and by performing motion compensation based on this, a prediction sample can be generated.
[0301] - no_ladf_constraint_flag[0301] - no_ladf_constraint_flag
[0302] no_ladf_constraint_flag é um sinalizador para controlar sps_ladf_enabled_flag. Por exemplo, quando um valor de no_ladf_constraint_flag é 1, um valor de sps_ladf_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_ladf_constraint_flag é 0, não há restrição no valor de sps_ladf_enabled_flag. Ou seja, o valor de sps_ladf_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0302] no_ladf_constraint_flag is a flag to control sps_ladf_enabled_flag. For example, when a value of no_ladf_constraint_flag is 1, a value of sps_ladf_enabled_flag can be set to 0. Meanwhile, when the value of no_ladf_constraint_flag is 0, there is no restriction on the value of sps_ladf_enabled_flag. That is, the value of sps_ladf_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0303] Aqui, sps_ladf_enabled_flag é um sinalizador que indica se sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offiset, sps_ladf_qp_offiset[i] e sps_ladf_delta_threshold_minus1[i] estão presentes no SPS. Por exemplo, quando o valor de sps_ladf_enabled_flag é 1, isso indica que sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offiset, sps_ladf_qp_offeet[i] e sps_ladf_delta_threshold_minus1[i] estão presentes no SPS. Quando o valor de sps_ladf_enabled_flag for 0, isso indica que sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offeet, sps_ladf_qp_offeet[i] e sps_ladf_delta_threshold_minus1[i] não estão presentes no SPS.[0303] Here, sps_ladf_enabled_flag is a flag that indicates whether sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offiset, sps_ladf_qp_offiset[i] and sps_ladf_delta_threshold_minus1[i] are present in the SPS. For example, when the value of sps_ladf_enabled_flag is 1, it indicates that sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offiset, sps_ladf_qp_offeet[i], and sps_ladf_delta_threshold_minus1[i] are present in the SPS. When the value of sps_ladf_enabled_flag is 0, it indicates that sps_num_ladf_intervals_minus2, sps_ladf_lowest_interval_qp_offeet, sps_ladf_qp_offeet[i] and sps_ladf_delta_threshold_minus1[i] are not present in the SPS.
[0304] sps_num_ladf_intervals_minus2 é um elemento de sintaxe que indica o número de sps_ladf_delta_threshold_minus1[i]e sps_ladf_qp_ofíset[i] presentes no SPS. sps_num_ladf_intervals_minus2 pode ter um valor entre 0 e 3.[0304] sps_num_ladf_intervals_minus2 is a syntax element that indicates the number of sps_ladf_delta_threshold_minus1[i] and sps_ladf_qp_ofíset[i] present in the SPS. sps_num_ladf_intervals_minus2 can have a value between 0 and 3.
[0305] sps_ladf_lowest_interval_qp_offeet é um elemento de sintaxe que indica um deslocamento usado para derivar um parâmetro de quantificação (QP) que é uma variável. sps_ladf_lowest_interval_qp_oflsetpode ter um valor entre -63 e 63.[0305] sps_ladf_lowest_interval_qp_offeet is a syntax element that indicates an offset used to derive a quantization parameter (QP) that is a variable. sps_ladf_lowest_interval_qp_oflset can have a value between -63 and 63.
[0306] sps_ladf_qp_offset[i] é um elemento de sintaxe que indica uma matriz de deslocamento usada para derivar um parâmetro de quantização que é uma variável. sps_ladf_qp_offset[i] pode ter um valor entre -63 e 63.[0306] sps_ladf_qp_offset[i] is a syntax element that indicates an offset matrix used to derive a quantization parameter that is a variable. sps_ladf_qp_offset[i] can have a value between -63 and 63.
[0307] sps_ladf_delta_threshold_minus1[i] é um elemento de sintaxe usado para calcular um valor de SpsLadflntervalLowerBound[i] que é um elemento de sintaxe que especifica um limite inferior de um intervalo de nível de intensidade de i-ésima luma. sps_ladf_delta_threshold_minus1[i] pode ter um valor entre 0 e 2BitDepth - 3. BitDepth, que indica uma profundidade de bits, representa o número de bits necessários para expressar o brilho de uma imagem.[0307] sps_ladf_delta_threshold_minus1[i] is a syntax element used to calculate a value of SpsLadflntervalLowerBound[i] which is a syntax element that specifies a lower limit of an i-th luma intensity level range. sps_ladf_delta_threshold_minus1[i] can have a value between 0 and 2BitDepth - 3. BitDepth, which indicates a bit depth, represents the number of bits required to express the brightness of an image.
[0308] - no_transform_skip_constraint_flag[0308] - no_transform_skip_constraint_flag
[0309] no_transform_skip_constraint_flag é um sinalizador para controlar sps_transform_skip_enabled_flag. Por exemplo, quando um valor de no_transform_skip_constraint_flag é 1, um valor de sps_transfomn_skip_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_transform_ski p_constrai nt_flag é 0, não há restrição no valor de sps_transform_ski p_enabled_flag. Ou seja, o valor de sps_transfomn_skip_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0309] no_transform_skip_constraint_flag is a flag to control sps_transform_skip_enabled_flag. For example, when a value of no_transform_skip_constraint_flag is 1, a value of sps_transfomn_skip_enabled_flag can be set to 0. Meanwhile, when the value of no_transform_ski p_constraint_flag is 0, there is no restriction on the value of sps_transform_ski p_enabled_flag. That is, the value of sps_transfomn_skip_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0310] Aqui, sps_transform_skip_enabled_flag é um sinalizadorque indica se transform_skip_flag está presente em uma sintaxe de unidade de transformada. Por exemplo, quando o valor de sps_transform_skip_enabled_flag é 1, isso indica que transform_skip_flag pode estar presente na sintaxe da unidade de transformada. Quando o valor de sps_transform_skip_enabled_flag for 0, isso indica que transform_skip_flag não está presente na sintaxe da unidade de transformada.[0310] Here, sps_transform_skip_enabled_flag is a flag that indicates whether transform_skip_flag is present in a transform unit syntax. For example, when the value of sps_transform_skip_enabled_flag is 1, this indicates that transform_skip_flag may be present in the transform unit syntax. When the value of sps_transform_skip_enabled_flag is 0, it indicates that transform_skip_flag is not present in the transform unit syntax.
[0311] transform_skip_flag é um sinalizadorque indica se a transformada foi aplicada a uma unidade de transformada.[0311] transform_skip_flag is a flag that indicates whether the transform was applied to a transform unit.
[0312] - no_bdpcm_constraint_flag[0312] - no_bdpcm_constraint_flag
[0313] no_bdpcm_constraint_flag é um sinalizador para controlar sps_bdpcm_enabled_flag. Por exemplo, quando um valor de no_bdpcm_constraint_flag é 1, um valor de sps_bdpcm_enabled_flag pode ser definido como 0. Enquanto isso, quando o valorde no_bdpcm_constraint_flag é 0, não há restrição no valor de sps_bdpcm_enabled_flag. Ou seja, o valor de sps_bdpcm_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0313] no_bdpcm_constraint_flag is a flag to control sps_bdpcm_enabled_flag. For example, when a value of no_bdpcm_constraint_flag is 1, a value of sps_bdpcm_enabled_flag can be set to 0. Meanwhile, when the value of no_bdpcm_constraint_flag is 0, there is no restriction on the value of sps_bdpcm_enabled_flag. That is, the value of sps_bdpcm_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0314] Aqui, sps_bdpcm_enabled_flag é um sinalizador que indica se intra_bdpcm_luma_flag e intra_bdpcm_chroma_flag estão presentes em uma sintaxe de unidade de codificação para unidades de intracodificação. Por exemplo, quando um valor de sps_bdpcm_enabled_flag é 1, isso indica que intra_bdpcm_luma_flag e intra_bdpcm_chroma_flag podem estar presentes na sintaxe da unidade de codificação para unidades de intracodificação. Quando o valor de sps_bdpcm_enabled_flag é 0, isso indica que intra_bdpcm_luma_flag e intra_bdpcm_chroma_flag não estão presentes na sintaxe da unidade de codificação para unidades de intracodificação. Enquanto isso, sps_bdpcm_enabled_flag pode não estar presente e, nesse caso, o valor de sps_bdpcm_enabled_flag pode ser inferido como 0.[0314] Here, sps_bdpcm_enabled_flag is a flag that indicates whether intra_bdpcm_luma_flag and intra_bdpcm_chroma_flag are present in a coding unit syntax for intracoding units. For example, when a value of sps_bdpcm_enabled_flag is 1, this indicates that intra_bdpcm_luma_flag and intra_bdpcm_chroma_flag may be present in the coding unit syntax for intracoding units. When the value of sps_bdpcm_enabled_flag is 0, it indicates that intra_bdpcm_luma_flag and intra_bdpcm_chroma_flag are not present in the coding unit syntax for intracoding units. Meanwhile, sps_bdpcm_enabled_flag may not be present, in which case the value of sps_bdpcm_enabled_flag may be inferred to be 0.
[0315] intra_bdpcm_luma_flag/intra_bdpcm_chroma_flag são sinalizadores que indicam se a modulação de código de pulso delta baseada em bloco (bdpcm) é aplicada a um bloco de codificação luma/croma de uma posição específica (x0, y0).[0315] intra_bdpcm_luma_flag/intra_bdpcm_chroma_flag are flags that indicate whether block-based delta pulse code modulation (bdpcm) is applied to a luma/chroma coding block of a specific position (x0, y0).
[0316] - no_qp_delta_constraint_flag[0316] - no_qp_delta_constraint_flag
[0317] no_qp_delta_constraint_flag é um sinalizador para controlar cu_qp_delta_enabled_flag. Por exemplo, quando um valor de no_qp_delta_constraint_flag é 1, um valor de cu_qp_delta_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_qp_delta_constraint_flag é 0, não há restrição no valor de cu_qp_delta_enabled_flag. Ou seja, o valor de cu_qp_delta_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0317] no_qp_delta_constraint_flag is a flag to control cu_qp_delta_enabled_flag. For example, when a value of no_qp_delta_constraint_flag is 1, a value of cu_qp_delta_enabled_flag can be set to 0. Meanwhile, when the value of no_qp_delta_constraint_flag is 0, there is no restriction on the value of cu_qp_delta_enabled_flag. That is, the value of cu_qp_delta_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0318] Aqui, cu_qp_delta_enabled_flag é um sinalizador que indica se os elementos de sintaxe ph_cu_qp_delta_subdiv_intra_slice e ph_cu_qp_delta_subdiv_inter_slice estão presentes em PHs referentes a PPS. Além disso, cu_qp_delta_enabled_flag indica se cu_qp_delta_abs e cu_qp_delta_sign_flag, que são elementos de sintaxe incluídos em uma sintaxe de unidade de transformada e uma sintaxe de codificação de paleta, estão presentes. Por exemplo, quando o valor de cu_qp_delta_enabled_flag é 1, indica que os elementos de sintaxe ph_cu_qp_delta_subdiv_intra_slice e ph_cu_qp_delta_subdiv_inter_slice podem estar presentes em PHs referentes a PPS. Além disso, quando o valor de cu_qp_delta_enabled_flag é 1, indica que os elementos de sintaxe cu_qp_delta_abs e cu_qp_delta_sign_flag podem estar presentes na sintaxe da unidade de transformada e na sintaxe de codificação da paleta. Quando o valor de cu_qp_delta_enabled_flag é 0, indica que os elementos de sintaxe ph_cu_qp_delta_subdiv_intra_slice e ph_cu_qp_delta_subdiv_inter_slice não estão presentes nos PHs referentes ao PPS. Além disso, quando o valor de cu_qp_delta_enabled_flag é 0, indica que os elementos de sintaxe cu_qp_delta_abs e cu_qp_delta_sign_flag não estão presentes na sintaxe da unidade de transformada e na sintaxe de codificação da paleta.[0318] Here, cu_qp_delta_enabled_flag is a flag that indicates whether the syntax elements ph_cu_qp_delta_subdiv_intra_slice and ph_cu_qp_delta_subdiv_inter_slice are present in PHs referring to PPS. Additionally, cu_qp_delta_enabled_flag indicates whether cu_qp_delta_abs and cu_qp_delta_sign_flag, which are syntax elements included in a transform unit syntax and a palette encoding syntax, are present. For example, when the value of cu_qp_delta_enabled_flag is 1, it indicates that the syntax elements ph_cu_qp_delta_subdiv_intra_slice and ph_cu_qp_delta_subdiv_inter_slice can be present in PHs referring to PPS. Additionally, when the value of cu_qp_delta_enabled_flag is 1, it indicates that the cu_qp_delta_abs and cu_qp_delta_sign_flag syntax elements may be present in the transform unit syntax and the palette encoding syntax. When the value of cu_qp_delta_enabled_flag is 0, it indicates that the syntax elements ph_cu_qp_delta_subdiv_intra_slice and ph_cu_qp_delta_subdiv_inter_slice are not present in the PHs referring to the PPS. Additionally, when the value of cu_qp_delta_enabled_flag is 0, it indicates that the cu_qp_delta_abs and cu_qp_delta_sign_flag syntax elements are not present in the transform unit syntax and palette encoding syntax.
[0319] ph_cu_qp_delta_subd iv_i ntra_sl ice/ph_cu_qp_delta_subd i v_inter_sl ic e são elementos de sintaxe que indicam um valor máximo 'cbSubdiv' de uma unidade de codificação em uma fatia intra/inter transmitindo cu_qp_delta_abs e cu_qp_delta_sign_flag. Aqui, ‘cbSubdiv’ indica um valor de divisão inferior de um bloco.[0319] ph_cu_qp_delta_subd iv_i ntra_sl ice/ph_cu_qp_delta_subd i v_inter_sl ic and are syntax elements that indicate a maximum 'cbSubdiv' value of a coding unit in an intra/inter slice conveying cu_qp_delta_abs and cu_qp_delta_sign_flag. Here, ‘cbSubdiv’ indicates a lower division value of a block.
[0320] cu_qp_delta_abs é um elemento de sintaxe que indica um valor absoluto de uma diferença 'CuQpDeltaVal' entre um parâmetro de quantização de uma unidade de codificação atual e um valor de predição de parâmetro de quantização da unidade de codificação atual.[0320] cu_qp_delta_abs is a syntax element that indicates an absolute value of a 'CuQpDeltaVal' difference between a quantization parameter of a current coding unit and a quantization parameter prediction value of the current coding unit.
[0321] cu_qp_delta_sign_flag é um sinalizador que indica um sinal do 'CuQpDeltaVal'.[0321] cu_qp_delta_sign_flag is a flag that indicates a sign of 'CuQpDeltaVal'.
[0322] - no_dep_quant_constraint_flag[0322] - no_dep_quant_constraint_flag
[0323] no_dep_quant_constraint_flag é um sinalizador para controlar sps_dep_quant_enabled_flag. Por exemplo, quando um valor de no_dep_quant_constraint_flag é 1, um valor de sps_dep_quant_enabled_flag pode ser definido como 0. Enquanto isso, quando o valor de no_dep_quant_constraint_flag é 0, não há restrição no valor de sps_dep_quant_enabled_flag. Ou seja, o valor de sps_dep_quant_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0323] no_dep_quant_constraint_flag is a flag to control sps_dep_quant_enabled_flag. For example, when a value of no_dep_quant_constraint_flag is 1, a value of sps_dep_quant_enabled_flag can be set to 0. Meanwhile, when the value of no_dep_quant_constraint_flag is 0, there is no restriction on the value of sps_dep_quant_enabled_flag. That is, the value of sps_dep_quant_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0324] Aqui, sps_dep_quant_enabled_flag é um sinalizadorque indica se a quantização dependente usada em figuras referentes a SPS está ativada. Por exemplo, quando o valor de sps_dep_quant_enabled_flag é 1, indica que a quantização dependente está habilitada e pode ser usada em figuras referentes ao SPS. Quando o valor de sps_dep_quant_enabled_flag é 0, indica que a quantização dependente está desabilitada e não é usada em figuras referentes ao SPS.[0324] Here, sps_dep_quant_enabled_flag is a flag that indicates whether the dependent quantization used in figures referring to SPS is enabled. For example, when the value of sps_dep_quant_enabled_flag is 1, it indicates that dependent quantization is enabled and can be used in figures referring to SPS. When the value of sps_dep_quant_enabled_flag is 0, it indicates that dependent quantization is disabled and is not used in figures referring to SPS.
[0325] - no_sign_data_hiding_constraint_flag[0325] - no_sign_data_hiding_constraint_flag
[0326] no_sign_data_hiding_constraint_flag é um sinalizador para controlar sps_sign_data_hiding_enabled_flag. Por exemplo, quando um valor de no_sign_data_hiding_constraint_flag é 1, um valor de sps_sign_data_hiding_enabled_flag pode serdefinido como 0. Enquanto isso, quando o valor de no_sign_data_hiding_constraint_flag é 0, não há restrição no valor de sps_sign_data_hiding_enabled_flag. Ou seja, o valor de sps_sign_data_hiding_enabled_flag pode ser determinado de acordo com um resultado de análise da sintaxe de RBSP de SPS.[0326] no_sign_data_hiding_constraint_flag is a flag to control sps_sign_data_hiding_enabled_flag. For example, when a value of no_sign_data_hiding_constraint_flag is 1, a value of sps_sign_data_hiding_enabled_flag can be set to 0. Meanwhile, when the value of no_sign_data_hiding_constraint_flag is 0, there is no restriction on the value of sps_sign_data_hiding_enabled_flag. That is, the value of sps_sign_data_hiding_enabled_flag can be determined according to an analysis result of the RBSP syntax of SPS.
[0327] Aqui, sps_sign_data_hiding_enabled_flag é um sinalizadorque indica se a ocultação de bits de sinal usada em figuras referentes a SPS está ativada. Por exemplo, quando o valor de sps_sign_data_hiding_enabled_flag é 1, isso indica que a ocultação de bits de sinal usada em figuras referentes ao SPS está habilitadae pode ser usada em figuras referentes ao SPS. Quando o valor de sps_sign_data_hiding_enabled_flag é 0, indica que a ocultação de bit de sinal usada em figuras referentes ao SPS está desabilitada e não é usada em figuras referentes ao SPS.[0327] Here, sps_sign_data_hiding_enabled_flag is a flag that indicates whether sign bit hiding used in SPS-related figures is enabled. For example, when the value of sps_sign_data_hiding_enabled_flag is 1, this indicates that sign bit hiding used in SPS figures is enabled and can be used in SPS figures. When the value of sps_sign_data_hiding_enabled_flag is 0, it indicates that sign bit hiding used in SPS figures is disabled and is not used in SPS figures.
[0328] A Figura 34 é um diagrama que ilustra uma sintaxe RBSP do conjunto de parâmetros de sequência (SPS) de acordo com uma modalidade da presente invenção.[0328] Figure 34 is a diagram illustrating a sequence parameter set (SPS) RBSP syntax in accordance with an embodiment of the present invention.
[0329] Com referência à Figura 34, o elemento de sintaxe de RBSPde SPS inclui sps_scaling_list_enabled_flag de modo a incluir um espaço estendido para adicionar informações de parâmetro relacionadas a alta faixa dinâmica (hdr) e os parâmetros sps descritos abaixo. A cláusula “se” abaixo de hrd_parameters_present_flag mostrada na Figura 34 podem ser informações de parâmetros relacionadas a hdr.[0329] Referring to Figure 34, the RBSPde SPS syntax element includes sps_scaling_list_enabled_flag so as to include an extended space for adding parameter information related to high dynamic range (hdr) and the sps parameters described below. The “if” clause below hrd_parameters_present_flag shown in Figure 34 may be hdr-related parameter information.
[0330] A Figura 35 é um diagrama que ilustra uma estrutura de sintaxe de RBSP de conjunto de parâmetros de sequência de acordo com uma modalidade da presente invenção.[0330] Figure 35 is a diagram illustrating a sequence parameter set RBSP syntax structure in accordance with an embodiment of the present invention.
[0331] Elementos de sintaxe incluídos na estrutura de sintaxe de RBSP de SPS serão descritos com referência à Figura 35.[0331] Syntax elements included in the RBSP syntax structure of SPS will be described with reference to Figure 35.
[0332] Quando um valor de sps_entropy_coding_sync_enabled_flag é 1, um processo de sincronização específico pode ser aplicado a variáveis de conteúdo. O processo de sincronização específico é aplicado antes de decodificar um primeiro CTU incluindo um primeiro CTB de uma linha CTB presente em um bloco individual em uma figura individual referente ao SPS. Além disso, quando o valor de sps_entropy_coding_sync_enabled_flag é 1, um processo de armazenamento específico pode ser aplicado a variáveis de conteúdo. O processo de armazenamento específico é aplicado após a decodificação de uma CTU incluindo um primeiro CTB de uma linha CTB presente em um bloco individual em uma figura individual referente ao SPS. Quando o valor de sps_entropy_coding_sync_enabled_flag for 0, o processo de sincronização específico e o processo de armazenamento específico não podem ser aplicados a variáveis de conteúdo. Determinar que o processo de sincronização específico não é aplicado é realizado antes de decodificar um primeiro CTU incluindo um primeiro CTB de uma linha CTB presente em um bloco individual em uma figura individual referente ao SPS. A determinação de que o processo de armazenamento específico não é aplicado é realizada após a decodificação de uma CTU incluindo um primeiro CTB de uma linha CTB presente em um bloco individual em uma figura individual referente ao SPS.[0332] When a value of sps_entropy_coding_sync_enabled_flag is 1, a specific synchronization process can be applied to content variables. The specific synchronization process is applied before decoding a first CTU including a first CTB of a CTB line present in an individual block in an individual figure relating to the SPS. Additionally, when the value of sps_entropy_coding_sync_enabled_flag is 1, a specific storage process can be applied to content variables. The specific storage process is applied after decoding a CTU including a first CTB of a CTB line present in an individual block in an individual figure relating to the SPS. When the value of sps_entropy_coding_sync_enabled_flag is 0, the specific synchronization process and the specific storage process cannot be applied to content variables. Determining that the specific synchronization process is not applied is performed before decoding a first CTU including a first CTB of a CTB line present in an individual block in an individual figure relating to the SPS. The determination that the specific storage process is not applied is made after decoding a CTU including a first CTB of a CTB line present in an individual block in an individual figure relating to the SPS.
[0333] same_qp_table_for_chroma é um elemento de sintaxe relacionado a uma tabela de mapeamento de croma QP. Quando um valor de sameqpjablejbrchroma é 1, indica que apenas uma tabela de mapeamento de croma QP é usada, em que uma tabela de mapeamento de croma QP também é usada em sinais residuais de Cb, Cr e sinal residual de Cb-Cr conjunto. Quando o valor de same_qp_table_for_chroma é 0, duas tabelas de mapeamento de croma QP para Cb e Cre uma tabela de mapeamento de croma QP para junta Cb-Cr são sinalizadas em SPS. A tabela de mapeamento de croma QP pode ser sinalizada quando o valor de sps_joint_cbcr_enabled_flag for 1. Quando o valor de same_qp_table_for_chroma não estiver presente, o valor de same_qp_table_for_chroma pode ser inferido como 1.[0333] same_qp_table_for_chroma is a syntax element related to a QP chroma mapping table. When a value of sameqpjablejbrchroma is 1, it indicates that only a QP chroma mapping table is used, where a QP chroma mapping table is also used in Cb, Cr residual signals, and joint Cb-Cr residual signal. When the value of same_qp_table_for_chroma is 0, two QP chroma mapping tables for Cb and one QP chroma mapping table for Cb-Cr joint are signaled in SPS. The QP chroma mapping table can be flagged when the value of sps_joint_cbcr_enabled_flag is 1. When the value of same_qp_table_for_chroma is not present, the value of same_qp_table_for_chroma can be inferred to be 1.
[0334] sps_explicit_mts_intra_enabled_flag é um elemento de sintaxe que indica se mtxjdx está presente em uma sintaxe intra CU. Quando um valor de sps_explicit_mts_intra_enabled_flag é 1, isso indica que mtxjdx pode estar presente na sintaxe intra CU. Quando o valor de sps_explicit_mtsjntra_enabled_flag for 0, isso indica que mtxjdx não está presente na sintaxe intra CU. Quando sps_explicit_mtsjntra_enabled_flag não está presente, o valor de sps_explicit_mtsjntra_enabled_flag pode ser inferido como 0.[0334] sps_explicit_mts_intra_enabled_flag is a syntax element that indicates whether mtxjdx is present in an intra CU syntax. When a value of sps_explicit_mts_intra_enabled_flag is 1, it indicates that mtxjdx may be present in intra CU syntax. When the value of sps_explicit_mtsjntra_enabled_flag is 0, it indicates that mtxjdx is not present in the intra CU syntax. When sps_explicit_mtsjntra_enabled_flag is not present, the value of sps_explicit_mtsjntra_enabled_flag can be inferred to be 0.
[0335] sps_explicit_mtsjnter_enabled_flag é um elemento de sintaxe que indica se mtxjdx está presente em uma sintaxe entre CUs. Quando um valor de sps_explicit_mtsjnter_enabled_flag é 1, isso indica que mtxjdx pode estar presente na sintaxe entre CUs. Quando o valor de sps_explicit_mtsjnter_enabled_flag é 0, indica que mtxjdx não está presente na sintaxe entre CUs. Quando sps_explicit_mtsjnter_enabled_flag não estiver presente, o valor de sps_explicit_mtsjnter_enabled_flag pode ser inferido como 0.[0335] sps_explicit_mtsjnter_enabled_flag is a syntax element that indicates whether mtxjdx is present in a cross-CU syntax. When a value of sps_explicit_mtsjnter_enabled_flag is 1, it indicates that mtxjdx may be present in the syntax between CUs. When the value of sps_explicit_mtsjnter_enabled_flag is 0, it indicates that mtxjdx is not present in the inter-CU syntax. When sps_explicit_mtsjnter_enabled_flag is not present, the value of sps_explicit_mtsjnter_enabled_flag can be inferred to be 0.
[0336] sps_affine_amvr_enabled_flag é um elemento de sintaxe que indica se a resolução de diferença de vetor de movimento adaptável é usada para um vetor de movimento de um modo inter afim. Quando um valor de sps_affine_amvr_enabled_flag é 1, isso indica que a resolução de diferença de vetor de movimento adaptável é usada para um vetor de movimento de um modo inter afim. Quando o valor de sps_affine_amvr_enabled_flag é 0, isso indica que a resolução de diferença de vetor de movimento adaptável não é usada para um vetor de movimento de um modo inter afim. Quando sps_affine_amvr_enabled_flag não estiver presente, o valor de sps_affine_amvr_enabled_flag pode ser inferido como 0.[0336] sps_affine_amvr_enabled_flag is a syntax element that indicates whether adaptive motion vector difference resolution is used for a motion vector in an inter-affine mode. When a value of sps_affine_amvr_enabled_flag is 1, it indicates that adaptive motion vector difference resolution is used for a motion vector in an inter-affine mode. When the value of sps_affine_amvr_enabled_flag is 0, it indicates that adaptive motion vector difference resolution is not used for a motion vector in an inter-affine mode. When sps_affine_amvr_enabled_flag is not present, the value of sps_affine_amvr_enabled_flag can be inferred to be 0.
[0337] sps_affine_prof_enabled_flag é um elemento de sintaxe que indica se o refinamento de predição de um fluxo óptico é usado na compensação de movimento afim. Quando um valor de sps_affine_prof_enabled_flag é 1, a compensação de movimento afim pode ser refinada com o fluxo óptico. Quando o valor de sps_affine_prof_enabled_flag é 0, a compensação de movimento afim não é refinada. Quando sps_affine_prof_enabled_flag não estiver presente, o valor de sps_affine_prof_enabled_flag pode ser inferido como 0.[0337] sps_affine_prof_enabled_flag is a syntax element that indicates whether the prediction refinement of an optical flow is used in affine motion compensation. When a value of sps_affine_prof_enabled_flag is 1, affine motion compensation can be refined with optical flow. When the value of sps_affine_prof_enabled_flag is 0, affine motion compensation is not refined. When sps_affine_prof_enabled_flag is not present, the value of sps_affine_prof_enabled_flag can be inferred to be 0.
[0338] sps_explicit_scaling_list_enabled_flag é um elemento de sintaxe que indica se uma lista de dimensionamento explícita é usada. Quando um valor de sps_explicit_scaling_list_enabled_flag é 1, isso pode indicar que a lista de dimensionamento explícita é usada. A lista de escala explícita pode ser sinalizada em uma lista de escala de um conjunto de parâmetros de adaptação (APS). Aqui, a lista de escala explícita pode ser usada em um processo de escala para um coeficiente de transformada quando a decodificação de fatia é habilitada para um CLVS. Quando o valor de sps_explicit_scaling_list_enabled_flag é 0, pode indicar que a lista de dimensionamento explícita é usada no processo de dimensionamento para um coeficiente de transformada quando a decodificação de fatia não está habilitada para um CLVS.[0338] sps_explicit_scaling_list_enabled_flag is a syntax element that indicates whether an explicit scaling list is used. When a value of sps_explicit_scaling_list_enabled_flag is 1, it may indicate that the explicit scaling list is used. The explicit scale list can be flagged in an adaptation parameter set (APS) scale list. Here, the explicit scale list can be used in a scaling process for a transform coefficient when slice decoding is enabled for a CLVS. When the value of sps_explicit_scaling_list_enabled_flag is 0, it may indicate that the explicit scaling list is used in the scaling process for a transform coefficient when slice decoding is not enabled for a CLVS.
[0339] sps_virtual_boundaries_enabled_flag é um elemento de sintaxe que indica se a filtragem em loop está desabilitada. Quando um valor de sps_virtual_boundaries_enabled_flagé 1, isso indica que a desativação da filtragem em loop em um limite virtual pode ser aplicada a figuras codificadas em um CLVS. Quando o valor de sps_virtual_boundaries_enabled_flag é 0, isso indica que a desativação da filtragem em loop em um limite virtual não é aplicada a figuras codificadas em um CLVS. Uma operação de filtragem em loop pode incluir filtro de desbloqueio, filtro de deslocamento adaptativo de amostra e operações de filtro de loop adaptativo.[0339] sps_virtual_boundaries_enabled_flag is a syntax element that indicates whether loop filtering is disabled. When a value of sps_virtual_boundaries_enabled_flage is 1, this indicates that disabling loop filtering on a virtual boundary can be applied to figures encoded in a CLVS. When the value of sps_virtual_boundaries_enabled_flag is 0, it indicates that disabling loop filtering on a virtual boundary is not applied to figures encoded in a CLVS. A loop filtering operation can include deblocking filter, adaptive sample shift filter, and adaptive loop filter operations.
[0340] A Figura 36 é um diagrama que ilustra uma estrutura de sintaxe de informação de restrição geral de acordo com uma modalidade da presente invenção.[0340] Figure 36 is a diagram illustrating a general constraint information syntax structure in accordance with an embodiment of the present invention.
[0341] Os elementos de sintaxe incluídos na estrutura de sintaxe de informação de restrição geral (GCI) descrita com referência à Figura 36 pode habilitar/desabilitar sinalizadores (elementos de sintaxe) definidos na sintaxe SPS RBSP. Aqui, as bandeiras podem ser as mostradas na Figura 35. Os elementos de sintaxe incluídos na estrutura de sintaxe GCI, descritos abaixo, têm uma relação mutuamente exclusiva e não são limitados pelos nomes mostrados na Figura 36. Além disso, descrições sobrepostas de porções, que são as mesmas ou correspondem à modalidade da Figura 35, dos sinalizadores (elementos de sintaxe) incluídos na estrutura de sintaxe SPS restringidos pelos elementos de sintaxe incluídos na estrutura de sintaxe GCI não serão fornecidos.[0341] Syntax elements included in the general constraint information (GCI) syntax structure described with reference to Figure 36 can enable/disable flags (syntax elements) defined in the SPS RBSP syntax. Here, the flags may be as shown in Figure 35. The syntax elements included in the GCI syntax structure, described below, have a mutually exclusive relationship and are not limited by the names shown in Figure 36. Additionally, overlapping descriptions of portions, that are the same or correspond to the embodiment of Figure 35, of the flags (syntax elements) included in the SPS syntax structure restricted by the syntax elements included in the GCI syntax structure will not be provided.
[0342] no_weighted_pred_constraint_flag é um sinalizador que restringe sps_weighted_pred_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_weighted_pred_constraint_flag é 1, um valor de sps_weighted_pred_flag é limitado a 0. Quando o valor de no_weighted_pred_constraint_flag é 0, o valor de sps_weighted_pred_flag não é limitado. sps_weighted_pred_flag é um elemento de sintaxe que indica se a predição ponderada é aplicada à fatia P referente ao SPS. A predição ponderada é aplicada à fatia P quando um valor de sps_weighted_pred_flag é 1 e a predição ponderada não é aplicada à fatia P quando o valor de sps_weighted_pred_flag é 0.[0342] no_weighted_pred_constraint_flag is a flag that restricts sps_weighted_pred_flag included in the SPS syntax structure. When a value of no_weighted_pred_constraint_flag is 1, a value of sps_weighted_pred_flag is constrained to 0. When the value of no_weighted_pred_constraint_flag is 0, the value of sps_weighted_pred_flag is not constrained. sps_weighted_pred_flag is a syntax element that indicates whether the weighted prediction is applied to the slice P referring to the SPS. Weighted prediction is applied to slice P when a value of sps_weighted_pred_flag is 1 and weighted prediction is not applied to slice P when a value of sps_weighted_pred_flag is 0.
[0343] no_weighted_bipred_constraint_flag é um sinalizador que restringe sps_weighted_bipred_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_weighted_bipred_constraint_flag é 1, um valor de sps_weighted_bipred_flag é limitado a 0. Quando o valor de no_weighted_bipred_constraint_flag é 0, o valor de sps_weighted_bipred_flag não é limitado. sps_weighted_bipred_flag é um elemento de sintaxe que indica se a predição ponderada é aplicada à fatia B referente ao SPS. A predição ponderada é aplicada à fatia B quando um valor de sps_weighted_bipred_flag é 1 e a predição ponderada não é aplicadaà fatia B quando o valor de sps_weighted_bipred_flag é 0.[0343] no_weighted_bipred_constraint_flag is a flag that restricts sps_weighted_bipred_flag included in the SPS syntax structure. When a value of no_weighted_bipred_constraint_flag is 1, a value of sps_weighted_bipred_flag is constrained to 0. When the value of no_weighted_bipred_constraint_flag is 0, the value of sps_weighted_bipred_flag is not constrained. sps_weighted_bipred_flag is a syntax element that indicates whether the weighted prediction is applied to slice B for the SPS. Weighted prediction is applied to slice B when a value of sps_weighted_bipred_flag is 1 and weighted prediction is not applied to slice B when the value of sps_weighted_bipred_flag is 0.
[0344] no_same_qp_table_for_chroma_constraint_flag é um sinalizador que restringe same_qp_table_for_chroma incluído na estrutura de sintaxe SPS. Quando um valor de no_same_qp_table_for_chroma_constraint_flag é 1, um valor de same_qp_table_for_chroma é limitado a 0. Quando o valor de no_same_qp_table_for_chroma_constraint_flag é 0, o valor de same_qp_table_for_chroma não é limitado.[0344] no_same_qp_table_for_chroma_constraint_flag is a flag that restricts same_qp_table_for_chroma included in the SPS syntax structure. When a value of no_same_qp_table_for_chroma_constraint_flag is 1, a value of same_qp_table_for_chroma is constrained to 0. When the value of no_same_qp_table_for_chroma_constraint_flag is 0, the value of same_qp_table_for_chroma is not constrained.
[0345] no_explicit_mts_intra_constraint_flag é um sinalizador que restringe sps_explicit_mts_intra_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_explicit_mts_intra_constraint_flag é 1, um valor de sps_explicit_mts_intra_enabled_flag é limitado a 0. Quando o valor de no_explicit_mts_intra_constraint_flag é 0, o valor de sps_explicit_mts_intra_enabled_flag não é limitado.[0345] no_explicit_mts_intra_constraint_flag is a flag that restricts sps_explicit_mts_intra_enabled_flag included in the SPS syntax structure. When a value of no_explicit_mts_intra_constraint_flag is 1, a value of sps_explicit_mts_intra_enabled_flag is limited to 0. When the value of no_explicit_mts_intra_constraint_flag is 0, the value of sps_explicit_mts_intra_enabled_flag is not limited.
[0346] no_explicit_mts_inter_constraint_flag é um sinalizador que restringe sps_explicit_mts_inter_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_explicit_mts_inter_constraint_flag é 1, um valor de sps_explicit_mts_inter_enabled_flag é limitado a 0. Quando o valor de no_explicit_mts_inter_constraint_flag é 0, o valor de sps_explicit_mts_inter_enabled_flag não é limitado.[0346] no_explicit_mts_inter_constraint_flag is a flag that restricts sps_explicit_mts_inter_enabled_flag included in the SPS syntax structure. When a value of no_explicit_mts_inter_constraint_flag is 1, a value of sps_explicit_mts_inter_enabled_flag is limited to 0. When the value of no_explicit_mts_inter_constraint_flag is 0, the value of sps_explicit_mts_inter_enabled_flag is not limited.
[0347] no_affine_amvr_constraint_flag é um sinalizador que restringe sps_affine_amvr_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_affine_amvr_constraint_flag é 1, um valorde sps_affine_amvr_enabled_flag é limitado a 0. Quando o valor de no_affine_amvr_constraint_flag é 0, o valor de sps_affine_amvr_enabled_flag não é limitado.[0347] no_affine_amvr_constraint_flag is a flag that restricts sps_affine_amvr_enabled_flag included in the SPS syntax structure. When a value of no_affine_amvr_constraint_flag is 1, a value of sps_affine_amvr_enabled_flag is limited to 0. When the value of no_affine_amvr_constraint_flag is 0, the value of sps_affine_amvr_enabled_flag is not limited.
[0348] no_affine_prof_constraint_flag é um sinalizador que restringe sps_affine_prof_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_affine_prof_constraint_flag é 1, um valorde sps_affine_prof_enabled_flag é limitado a 0. Quando o valor de no_affine_prof_constraint_flag é 0, o valor de sps_affine_prof_enabled_flag não é limitado.[0348] no_affine_prof_constraint_flag is a flag that restricts sps_affine_prof_enabled_flag included in the SPS syntax structure. When a value of no_affine_prof_constraint_flag is 1, a value of sps_affine_prof_enabled_flag is limited to 0. When the value of no_affine_prof_constraint_flag is 0, the value of sps_affine_prof_enabled_flag is not limited.
[0349] no_explicit_scaling_list_constraint_flagé um sinalizadorque restringe sps_explicit_scaling_list_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_explicit_scaling_list_constraint_flag é 1, um valor de sps_explicit_scaling_list_enabled_flag é limitado a 0. Quando o valor de no_explicit_scaling_list_constraint_flag é 0, o valor de sps_explicit_scaling_list_enabled_flag não é limitado.[0349] no_explicit_scaling_list_constraint_flag is a flag that restricts sps_explicit_scaling_list_enabled_flag included in the SPS syntax structure. When a value of no_explicit_scaling_list_constraint_flag is 1, a value of sps_explicit_scaling_list_enabled_flag is limited to 0. When the value of no_explicit_scaling_list_constraint_flag is 0, the value of sps_explicit_scaling_list_enabled_flag is not limited.
[0350] no_virtual_boundaries_constraint_flag é um sinalizador que restringe sps_virtual_boundaries_enabled_flag incluído na estrutura de sintaxe SPS. Quando um valor de no_virtual_boundaries_constraint_flag é 1, um valor de sps_virtual_boundaries_enabled_flag é limitado a 0. Quando o valor de no_virtual_boundaries_constraint_flag é 0, o valor de sps_virtual_boundaries_enabled_flag nãoé limitado.[0350] no_virtual_boundaries_constraint_flag is a flag that restricts sps_virtual_boundaries_enabled_flag included in the SPS syntax structure. When a value of no_virtual_boundaries_constraint_flag is 1, a value of sps_virtual_boundaries_enabled_flag is constrained to 0. When the value of no_virtual_boundaries_constraint_flag is 0, the value of sps_virtual_boundaries_enabled_flag is not constrained.
[0351] Embora a presente divulgação seja estabelecida principalmente em relação a um decodificador, um codificador pode realizar a mesma operação. O termo “analisar” incluído na presente divulgação foi usado principalmente em relação a um processo de obtenção de informações de um fluxo de bits, mas pode ser interpretado como configuração de informações correspondentes em um fluxo de bits em um lado do codificador. Assim, o termo “analisar” também pode ser interpretado como um ato de configurar um fluxo de bits em um codificador sem se limitar à operação de um decodificador. Além disso, tal fluxo de bits pode ser armazenado em um meio de gravação legível por computador.[0351] Although the present disclosure is set forth primarily with respect to a decoder, an encoder can perform the same operation. The term “parse” included in the present disclosure has been used primarily in relation to a process of obtaining information from a bit stream, but can be interpreted as setting corresponding information into a bit stream on one side of the encoder. Thus, the term “parse” can also be interpreted as an act of configuring a bit stream in an encoder without being limited to the operation of a decoder. Furthermore, such a bit stream may be stored on a computer-readable recording medium.
[0352] As modalidades descritas acima da presente invenção podem ser implementadas através de vários meios. Por exemplo, as modalidades da presente invenção podem ser implementadas por hardware, firmware, software ou uma combinação dos mesmos.[0352] The above-described embodiments of the present invention can be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
[0353] Para implementação por hardware, o método de acordo com as modalidades da presente invenção pode ser implementado por um ou mais de Circuitos Integrados Específicos de Aplicação (ASICs), Processadores de Sinal Digital (DSPs), Dispositivos de Processamento de Sinal Digital (DSPDs), Dispositivos Lógicos Programáveis (PLDs), Matrizes de Portas Programáveis em Campo (FPGAs), processadores, controladores, microcontroladores, microprocessadores e semelhantes.[0353] For hardware implementation, the method according to embodiments of the present invention can be implemented by one or more of Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices ( DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors and the like.
[0354] No caso de implementação por firmware ou software, o método de acordo com as modalidades da presente invenção pode ser implementado na forma de um módulo, procedimento ou função que executa as funções ou operações descritas acima. O código do software pode ser armazenado na memória e conduzido por um processador. A memória pode estar localizada dentro ou fora do processador, podendo trocar dados com o processador por diversos meios já conhecidos.[0354] In the case of implementation by firmware or software, the method according to embodiments of the present invention can be implemented in the form of a module, procedure or function that performs the functions or operations described above. Software code can be stored in memory and driven by a processor. Memory can be located inside or outside the processor, and can exchange data with the processor through various known means.
[0355] Algumas modalidades também podem ser implementadas na forma de um meio de gravação incluindo instruções executáveis por um computador, como um módulo de programa executado por um computador. Uma mídia legível por computador pode ser qualquer mídia disponível que seja acessível por um computador e inclui mídia volátil e não volátil, mídia removível e não removível. Além disso, o meio legível por computador pode incluir meios de armazenamento de computador e meios de comunicação. A mídia de armazenamento de computador inclui mídia volátil e não volátil, removível e não removível implementada em qualquer método ou tecnologia para armazenamento de informações, como instruções legíveis por computador, estruturas de dados, módulos de programa ou outros dados. Os meios de comunicação normalmente incluem instruções legíveis por computador, estruturas de dados, outros dados em um sinal de dados modulado, como módulos de programa ou outros mecanismos de transmissão, e incluem qualquer meio de entrega de informações.[0355] Some embodiments may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that is accessible by a computer and includes volatile and non-volatile media, removable media and non-removable media. Furthermore, the computer-readable medium may include computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data. Communication media typically include computer-readable instructions, data structures, other data in a modulated data signal, such as program modules or other transmission mechanisms, and include any means of delivering information.
[0356] A descrição acima mencionada da presente invenção é apenas para fins ilustrativos, e será entendido que aquelas pessoas versadas na técnica à qual a presente invenção pertence podem fazer alterações na presente invenção sem alterar as ideias técnicas ou características essenciais da presente invenção e a invenção podem ser facilmente modificadas em outras formas específicas. Portanto, as modalidades descritas acima são ilustrativas e não são restritas em todos os aspectos. Por exemplo, cada componente descrito como uma única entidade pode ser distribuído e implementado e, da mesma forma, os componentes descritos como distribuídos também podem ser implementados de forma associada.[0356] The above-mentioned description of the present invention is for illustrative purposes only, and it will be understood that those skilled in the art to which the present invention belongs may make changes to the present invention without altering the technical ideas or essential features of the present invention and the invention can be easily modified into other specific forms. Therefore, the embodiments described above are illustrative and are not restricted in all respects. For example, each component described as a single entity can be distributed and implemented, and similarly, components described as distributed can also be implemented in an associated way.
[0357] O escopo da presente invenção é definido pelas reivindicações anexas em vez da descrição detalhada acima, e todas as alterações ou modificações derivadas do significado e alcance das reivindicações anexas e seus equivalentes devem ser interpretadas como incluídas no escopo da presente invenção.[0357] The scope of the present invention is defined by the appended claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the appended claims and their equivalents shall be construed as falling within the scope of the present invention.
Claims (21)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2019-0171788 | 2019-12-20 | ||
KR10-2020-0041255 | 2020-04-04 | ||
KR10-2020-0050377 | 2020-04-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
BR122023027038A2 true BR122023027038A2 (en) | 2024-04-24 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4358514A2 (en) | Video signal processing method and device | |
TWI663869B (en) | Block adaptive color-space conversion coding | |
TWI829721B (en) | Cross-component ipm derivaition | |
CA2949542C (en) | Block adaptive color-space conversion coding | |
AU2020407738B2 (en) | Video signal processing method and device therefor | |
US11228761B2 (en) | Border handling for extended quadtree partitions | |
WO2020182207A1 (en) | Partitions on sub-block transform mode | |
CN114567786B (en) | Method and apparatus for video encoding and decoding in 4:4:4 chroma format | |
JP2022549185A (en) | Base size constraints for chroma intra mode | |
CN115211130B (en) | Method for processing video data based on signaling of slice and picture segmentation | |
CN113366855A (en) | Condition-based asymmetric quadtree partitioning | |
BR122022009674A2 (en) | METHOD IMPLEMENTED BY AN ENCODER, ENCODING DEVICE AND APPARATUS, SYSTEM AND MEANS FOR ENCODING | |
BR122023027038A2 (en) | VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD | |
BR122023027041A2 (en) | VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD | |
BR122023027045A2 (en) | VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD | |
BR122023027043A2 (en) | VIDEO SIGNAL DECODING DEVICE, VIDEO SIGNAL CODING DEVICE, NON-TRAINER COMPUTER READABLE MEDIUM AND VIDEO SIGNAL DECODING METHOD | |
CN115244922A (en) | Using picture level stripe index in video coding and decoding | |
JP7460784B2 (en) | Coding pictures with slices and tiles | |
BR112016028727B1 (en) | DETERMINING THE APPLICATION OF UNLOCKING FILTERING TO PALETTE CODED BLOCKS IN VIDEO CODING |