BR112019010515A2 - sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos - Google Patents

sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos Download PDF

Info

Publication number
BR112019010515A2
BR112019010515A2 BR112019010515A BR112019010515A BR112019010515A2 BR 112019010515 A2 BR112019010515 A2 BR 112019010515A2 BR 112019010515 A BR112019010515 A BR 112019010515A BR 112019010515 A BR112019010515 A BR 112019010515A BR 112019010515 A2 BR112019010515 A2 BR 112019010515A2
Authority
BR
Brazil
Prior art keywords
video
encoded
parameters
color volume
video signals
Prior art date
Application number
BR112019010515A
Other languages
English (en)
Inventor
Krishnan Ramasubramonian Adarsh
Rusanovskyy Dmytro
Sole Rojals Joel
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of BR112019010515A2 publication Critical patent/BR112019010515A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/39Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications

Landscapes

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

Abstract

são providos métodos, aparelhos e meios passíveis de leitura por computador para processamento de dados de vídeo pelo sistema de codificação de vídeo que implementa dados de vídeo st 2094-10. podem incluir pelo menos dois sinais de vídeo, que pode ser exibida ao mesmo tempo em diferentes regiões de exibição de um quadro de vídeo. em várias implementações, várias técnicas podem ser utilizadas para determinar uma associação entre um conjunto de parâmetros de volume de cor e um sinal de vídeo, e esta associação pode ser codificada em um fluxo de bits. mediante a decodificação do fluxo de bits, o conjunto de parâmetros de volume de cor associado a um sinal de vídeo em particular pode ser utilizado para comprimir o volume de cor do sinal de vídeo em uma faixa que pode ser exibida por um dispositivo de exibição em particular.

Description

SISTEMAS E MÉTODOS PARA SINALIZAR E RESTRINGIR UM SISTEMA DE VÍDEO DE ALTO ALCANCE DINÂMICO (HDR) COM METADADOS DINÂMICOS
CAMPO [001] Este pedido é relacionado a sistemas e métodos de video. Mais especificamente, este pedido referese a sistemas e métodos para organizar e gerenciar um sistema de video de Alta Faixa dinâmica (HDR) com metadados dinâmicos (por exemplo, ST 2094-10). Estes sistemas e métodos são aplicáveis para a difusão de video digital ou sistemas de video Através Do Topo que suportam a sinalização de sinais de video UHD e HDR/WCG, ou qualquer outro sistema de video adequado.
FUNDAMENTOS [002] Exemplos de padrões de codificação de video incluem ITU-T H.261, ISO/IEC MPEG-1 Visual, ITU-T H.262 ou ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IEC MPEG 4 Visual e ITU-T H.264 (também conhecido como ISO/IEC MPEG -4 AVC), incluindo suas extensões de codificação de video Escalável (SVC) e Multi-visão (MVC).
[003] Adição, um padrão de codificação de video, a saber, codificação de video de Alta Eficiência (HEVC), foi desenvolvido pela Equipe de Colaboração Conjunta na codificação de video (JCT-VC) do Grupo de Especialistas de codificação de video ITU-T (VCEG) e Um Grupo de Especialistas de Imagem de Movimento ISO/IEC (MPEG). A especificação de sorteio HEVC Mais recente está disponível como recomendação ITU-T H.265: codificação de vídeo de Alta Eficiência (HEVC), http:/www. Int/rec/T-REC265-201504-1/en.
Petição 870190048209, de 23/05/2019, pág. 19/202
2/156 [004] Seguindo o processo de decodificação, ο sinal de video não comprimido é sinalizado através de uma interface fisica digital de alta velocidade para um dispositivo de consumo final, tal como um visor ou uma TV. Protocolos, requisitos e recomendações para a utilização de interfaces digitais não comprimidas por dispositivos eletrônicos de consumidor tais como Televisões Digitais (DTVs), cabos digitais, caixas de set-top satélite ou terrestres (STBs) e dispositivos periféricos relacionados que incluem, mas não se limitam a, aparelhos de DVD/gravadores e outras Fontes ou Pias relacionadas são especificadas na especificação de CTA -861. Uma versão recente do relatório descritivo encontra-se disponível em https ://standards . eta .tech/kwspub/published_docs/ANSI-CTA8 61-F-Preview. pdf .
BREVE SUMÁRIO [005] Em várias implementações, são providos sistemas e métodos para a codificação de parâmetros de transformada de volume de cor definidos por ST 2094-10 em um fluxo de bits. Um vídeo pode ser capturado com um grande volume de cor, incluindo uma grande gama dinâmica de cores e uma ampla gama de cores. O vídeo capturado desta maneira tenta capturar a gama e a profundidade de cores que podem ser percebidas pela visão humana. Entretanto, um dispositivo de exibição pode não ser capaz de exibir um grande volume de cor. Assim, padrões tais como ST 2094-10 definem parâmetros para conduzir transformadas de volume de cor, que pode ser usado para comprimir um volume de cor em uma forma mais compacta.
[006] São providas técnicas que permitem que
Petição 870190048209, de 23/05/2019, pág. 20/202
3/156 um sistema de codificação de vídeo use os parâmetros definidos por ST 2094-10. De acordo com pelo menos um exemplo, um método de processamento de dados de vídeo é provido que inclui o recebimento dos dados de vídeo, em que os dados de vídeo incluem pelo menos dois sinais de vídeo. O método inclui ainda a obtenção de um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de vídeo. O método inclui ainda a determinação de uma região de exibição para cada um dos pelo menos dois sinais de vídeo, em que a região de exibição determina uma porção de um quadro de vídeo no qual pelo menos dois sinais de vídeo serão exibidos. O método inclui ainda determinar, para cada um dos pelo menos dois sinais de vídeo, associação entre um sinal de vídeo entre os pelo menos dois sinais de vídeo e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que o conjunto de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição para o sinal de vídeo. O método inclui ainda a geração de um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformação de volume de cor. O método inclui ainda a geração de um fluxo de bits codificado para os dados de vídeo, em que o fluxo de bits codificado inclui um ou mais blocos de metadados. O método inclui ainda a codificação, no fluxo de bits codificado, a associação determinada entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor.
[007] Em um outro exemplo, é provido um
Petição 870190048209, de 23/05/2019, pág. 21/202
4/156 aparelho que inclui uma memória configurada para armazenar dados de video incluindo pelo menos dois sinais de video e um processador. 0 processador é configurado para e pode obter um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de video. 0 processador é configurado para e pode determinar uma região de exibição para cada um dos pelo menos dois sinais de video, em que a região de exibição determina uma porção de um quadro de video no qual pelo menos dois sinais de video serão exibidos. 0 processador é configurado para e pode determinar, para cada um dos pelo menos dois sinais de video, uma respectiva associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que o conjunto de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição para o sinal de video. 0 processador é configurado para e pode gerar um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformada de volume de cor. 0 processador é configurado para e pode gerar um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados. 0 processador é configurado para e pode codificar, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de video e o um ou mais conjuntos de parâmetros de volume de cor.
[008] Em um outro exemplo, um meio legivel por computador é fornecido tendo armazenado nele instruções
Petição 870190048209, de 23/05/2019, pág. 22/202
5/156 que operam de acordo com a presente invenção executado por um processador que executa um método que inclui: receber os dados de video, em que os dados de video incluem pelo menos dois sinais de video. 0 método inclui ainda a obtenção de um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de video. 0 método inclui ainda a determinação de uma região de exibição para cada um dos pelo menos dois sinais de video, em que a região de exibição determina uma porção de um quadro de video no qual pelo menos dois sinais de video serão exibidos. 0 método inclui ainda determinar, para cada um dos pelo menos dois sinais de video, uma respectiva associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que o conjunto de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição para o sinal de video. 0 método inclui ainda a geração de um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformação de volume de cor. 0 método inclui ainda a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados. 0 método inclui ainda a codificação, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de video e o um ou mais conjuntos de parâmetros de volume de cor.
[009] Em um outro exemplo, é provido um aparelho que inclui meios para receber os dados de video,
Petição 870190048209, de 23/05/2019, pág. 23/202
6/156 em que os dados de vídeo incluem pelo menos dois sinais de video. 0 aparelho ainda compreende meios para a obtenção de um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de video. 0 aparelho ainda compreende meios para determinar uma região de exibição para cada um dos pelo menos dois sinais de video, em que a região de exibição determina uma porção de um quadro de video no qual pelo menos dois sinais de video serão exibidos. 0 aparelho ainda compreende meios para determinar, para cada um dos pelo menos dois sinais de video, uma respectiva associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que o conjunto de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição para o sinal de video. 0 aparelho ainda compreende meios para a geração de um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformação de volume de cor. 0 aparelho ainda compreende meios para a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados. 0 aparelho ainda compreende meios para a codificação, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor.
[0010] Em alguns aspectos, a codificação das respectivas associações determinadas entre os pelo menos dois sinais de vídeo e a um ou mais conjuntos de parâmetros
Petição 870190048209, de 23/05/2019, pág. 24/202
7/156 de volume de cor inclui a colocação de um ou mais blocos de metadados no fluxo de bits codificado de acordo com uma ordem das regiões de exibição dentro do quadro de video.
[0011] Em alguns aspectos, a codificação das respectivas associações determinadas entre os pelo menos dois sinais de video e o um ou mais conjuntos de parâmetros de volume de cor incluem a inserção de um ou mais valores no fluxo de bits codificado que cada um indica as respectivas associações determinadas.
[0012] Em alguns aspectos, uma primeira região de exibição para um primeiro sinal de video entre a pelo menos dois sinais de video se sobrepõem a uma segunda região de exibição para um segundo sinal de video entre os pelo menos dois sinais de video, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição. Em alguns aspectos, a prioridade é baseada em uma ordem na qual a primeira região de exibição e a segunda região de exibição são exibidas no quadro de video. Em alguns aspectos, a prioridade é baseada em um valor fornecido pelos dados de video.
[0013] Em alguns aspectos, um ou mais blocos de metadados são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
[0014] De acordo com pelo menos um exemplo, é provido um método de processamento de dados de video que inclui receber um fluxo de bits codificado, em que o fluxo
Petição 870190048209, de 23/05/2019, pág. 25/202
8/156 de bits codificado inclui pelo menos dois sinais de video codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor. 0 método inclui ainda determinar uma região de exibição para cada um dos dois sinais de video pelo menos codificados. 0 método inclui ainda determinar, para cada um dos pelo menos dois sinais de video, associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor. 0 método inclui ainda a decodificação de pelo menos dois sinais de video codificados utilizando um conjunto associado de parâmetros de transformada de volume de cor, em que o conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
[0015] Em outro exemplo, é provido um aparelho que inclui uma memória configurada para armazenar dados de video e um processador. O processador é configurado para receber e receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de video codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor. O processador é configurado para e pode determinar uma região de exibição para cada um dos dois sinais de video pelo menos codificados. O processador é configurado para e pode determinar, para cada um dos pelo menos dois sinais de video codificados, associação entre um sinal de video entre os pelo menos dois sinais de video
Petição 870190048209, de 23/05/2019, pág. 26/202
9/156 codificados e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor. 0 processador é configurado para e pode decodificar pelo menos dois sinais de video codificados utilizando um conjunto associado de parâmetros de transformada de volume de cor, em que o conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
[0016] Em um outro exemplo, um meio legivel por computador é fornecido tendo armazenado nele instruções que operam de acordo com a presente invenção executado por um processador que executa um método que inclui: receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de video codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor. O método inclui ainda determinar uma região de exibição para cada um dos dois sinais de video pelo menos codificados. O método inclui ainda determinar, para cada um dos pelo menos dois sinais de video, associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor. O método inclui ainda a decodificação de pelo menos dois sinais de video codificados utilizando um conjunto associado de parâmetros de transformada de volume de cor, em que o conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
Petição 870190048209, de 23/05/2019, pág. 27/202
10/156 [0017] Em um outro exemplo, é provido um aparelho que inclui meios para receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de video codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros
de transformada de volume de cor. 0 aparelho ainda
compreende meios para determinar uma região de exibição
para cada um dos dois sinais de video pelo menos
codificados 0 aparelho ainda compreende meios para
determinar, para cada um dos dois sinais de video pelo
menos codificados, associação entre um sinal de video entre os pelo menos dois sinais de video codificados e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor. O aparelho ainda compreende meios para a decodif icação de pelo menos dois sinais de video codificados utilizando um conjunto associado de parâmetros de transformada de volume de cor, em que o conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
[0018] Em alguns aspectos, associações entre os pelo menos dois sinais de video e o um ou mais conjunto de parâmetros de transformação de volume de cor é baseado em uma ordem das regiões de exibição.
[0019] Em alguns aspectos, as associações entre os pelo menos dois sinais de video e a um ou mais conjuntos de parâmetros de transformação de volume de cor é baseado em um ou mais valores incluídos no fluxo de bits codificado.
Petição 870190048209, de 23/05/2019, pág. 28/202
11/156 [0020] Em alguns aspectos, uma primeira região de exibição para um primeiro sinal de video entre a pelo menos dois sinais de video se sobrepõem a uma segunda região de exibição para um segundo sinal de video entre os pelo menos dois sinais de video, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição. Em alguns aspectos, a prioridade é baseada em uma ordem na qual a primeira região de exibição e a segunda região de exibição são exibidas no quadro de video. Em alguns aspectos, a prioridade é baseada em um valor fornecido pelos dados de video.
[0021] Em alguns aspectos, um ou mais blocos de metadados são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
[0022] De acordo com pelo menos um exemplo, é provido um método de processamento de dados de video que inclui receber os dados de video, em que os dados de video são associados a um volume de cor. O método ainda inclui a obtenção de um conjunto de parâmetros de transformação de volume de cor a partir dos dados de video, em que o conjunto de parâmetros de transformação de volume de cor pode ser usado para transformar o volume de cor. O método ainda inclui a obtenção de um conjunto de parâmetros de volume de cor de exibição principal, em que o conjunto de parâmetros de volume de cor de exibição principal inclui valores determinados quando da geração de uma cópia mestre
Petição 870190048209, de 23/05/2019, pág. 29/202
12/156 dos dados de vídeo. 0 método ainda inclui a geração de um ou mais blocos de metadados para o conjunto de parâmetros de transformação de volume de cor. 0 método ainda inclui a geração de um ou mais blocos de metadados adicionais para o conjunto de parâmetros de volume de cor de exibição principal. 0 método ainda inclui a geração de um fluxo de bits codificado para os dados de vídeo, em que o fluxo de bits codificado inclui um ou mais blocos de metadados e um ou mais blocos de metadados adicionais, em que a inclusão de um ou mais blocos de metadados adicionais é necessária pela presença de um ou mais blocos de metadados no fluxo de bits codificado.
[0023] Em outro exemplo, é provido um aparelho que inclui uma memória configurada para armazenar dados de vídeo que incluem um volume de cor e um processador. O processador é configurado para e pode obter um conjunto de parâmetros de transformação de volume de cor a partir dos dados de vídeo, em que o conjunto de parâmetros de transformação de volume de cor pode ser usado para transformar a cor volume. O processador é configurado para e pode obter um conjunto de parâmetros de volume de cor de exibição principal, em que o conjunto de parâmetros de volume de cor de exibição principal inclui valores determinados quando da geração de uma cópia mestre dos dados de vídeo. O processador é configurado para e pode gerar um ou mais blocos de metadados para o conjunto de parâmetros de vetor de transformada de volume de cor. O processador é configurado para e pode gerar um ou mais blocos de metadados adicionais para o conjunto de parâmetros de volume de cor de exibição principal. O
Petição 870190048209, de 23/05/2019, pág. 30/202
13/156 processador é configurado para e pode gerar um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados e um ou mais blocos de metadados adicionais, em que a inclusão de um ou mais blocos de metadados adicionais é necessária pela presença de um ou mais blocos de metadados no fluxo de bits codificado.
[0024] Em outro exemplo, um meio legivel por computador é fornecido tendo armazenado nele instruções que, quando executadas por um processador, realizam um método que inclui: recepção dos dados de video, em que os dados de video incluem um volume de cor. O método inclui ainda a obtenção de um conjunto de parâmetros de transformação de volume de cor a partir dos dados de video, em que o conjunto de parâmetros de transformação de volume de cor pode ser usado para transformar o volume de cor. O método inclui ainda a obtenção de um conjunto de parâmetros de volume de cor de visor mestre, em que o conjunto de valores de volume de cor de exibição mestre inclui valores determinados quando da geração de uma cópia mestre dos dados de video. O método inclui ainda a geração de um ou mais blocos de metadados para o conjunto de parâmetros de transformação de volume de cor. O método inclui ainda a geração de um ou mais blocos de metadados adicionais para o conjunto de valores de volume de cor de exibição mestre. O método inclui ainda a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados e um ou mais blocos de metadados adicionais, em que a inclusão de um ou mais blocos de metadados adicionais é necessária pela
Petição 870190048209, de 23/05/2019, pág. 31/202
14/156 presença de um ou mais blocos de metadados no fluxo de bits codificado.
[0025] Em outro exemplo, é provido um aparelho que inclui meios para receber os dados de video, em que os dados de video incluem um volume de cor. O aparelho ainda compreende meios para a obtenção de um conjunto de parâmetros de transformação de volume de cor a partir dos dados de video, em que o conjunto de parâmetros de transformação de volume de cor pode ser usado para transformar o volume de cor. O aparelho ainda compreende meios para a obtenção de um conjunto de parâmetros de volume de cor de visor mestre, em que o conjunto de valores de volume de cor de exibição mestre inclui valores determinados quando da geração de uma cópia mestre dos dados de video. O aparelho ainda compreende meios para a geração de um ou mais blocos de metadados para o conjunto de parâmetros de transformação de volume de cor. O aparelho ainda compreende meios para a geração de um ou mais blocos de metadados adicionais para o conjunto de parâmetros de volume de cor de exibição de matriz. O equipamento compreende ainda meios para a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados e um ou mais blocos de metadados adicionais, em que a inclusão de um ou mais blocos de metadados adicionais é necessária pela presença de um ou mais blocos de metadados no fluxo de bits codificado.
[0026] Em alguns aspectos, o conjunto de parâmetros de transformação de volume de cor inclui uma característica de transferência, e em que, no fluxo de bits
Petição 870190048209, de 23/05/2019, pág. 32/202
15/156 codificado, o um ou mais blocos de metadados excluídos quando a característica de transferência não corresponde a um valor particular.
[0027] Em alguns aspectos, o conjunto de parâmetros de transformação de volume de cor e o conjunto de parâmetros de volume de cor de exibição mestre incluem um mesmo campo, e em que o campo é omitido do um ou mais blocos de metadados com base no campo estando presente em um ou mais blocos de metadados adicionais.
[0028] Em alguns aspectos, os dados de vídeo incluem uma pluralidade de janelas de processamento, e em que, no fluxo de bits codificado, uma quantidade da pluralidade de janelas de processamento é restringida a um valor entre um e dezesseis.
[0029] Em alguns aspectos, os dados de vídeo incluem uma pluralidade de elementos de descrição de conteúdo, e em que, no fluxo de bits codificado, uma quantidade da pluralidade de elementos de descrição de conteúdo é restringida a um.
[0030] Em alguns aspectos, os dados de vídeo incluem uma pluralidade de elementos de exibição alvo, e em que, no fluxo de bits codificado, uma quantidade da pluralidade de elementos de exibição alvo é restringida a um valor entre um e dezesseis.
[0031] Em alguns aspectos, o fluxo de bits codificado inclui pelo menos um bloco de metadados para cada unidade de acesso no fluxo de bits codificado, bloco de metadados incluindo parâmetros de transformação de volume de cor.
[0032] Em alguns aspectos, os valores
Petição 870190048209, de 23/05/2019, pág. 33/202
16/156 definidos como reservados são excluídos do fluxo de bits codificado [0033] Em alguns aspectos, um ou mais blocos de metadados incluem, cada um, um valor de comprimento, e em que, no fluxo de bits codificado, o valor de comprimento é restrito a um múltiplo de oito.
[0034] Em alguns aspectos, um ou mais blocos de metadados incluem, cada um, um valor de comprimento, e em que, no fluxo de bits codificado, o valor de comprimento é restrito a um valor entre 0 e 255.
[0035] Em alguns aspectos, um ou mais blocos de metadados são codificados em uma ou mais Informações Suplementares de Aperfeiçoamento (SEI) unidade de Camada de Abstração de Rede (NAL).
[0036] Em alguns aspectos, um ou mais blocos de metadados adicionais são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI) .
[0037] De acordo com pelo menos um exemplo, é provido um método de processamento de dados de video que inclui receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui um ou mais blocos de metadados que incluem um conjunto de parâmetros de transformada de volume de cor codificados. O método inclui ainda determinar a presença de um ou mais blocos de metadados no fluxo de bits codificado. O método ainda inclui, com base na determinação da presença de um ou mais blocos de metadados no fluxo de bits codificado, determinar que uma presença de um ou mais blocos adicionais é necessária no fluxo de bits codificado. O método inclui ainda determinar que o fluxo de
Petição 870190048209, de 23/05/2019, pág. 34/202
17/156 bits codificado não inclui um ou mais blocos de metadados adicionais que incluem um conjunto codificado de parâmetros de volume de cor de exibição mestre. 0 método inclui ainda determinar, com base no fluxo de bits codificado não incluindo um ou mais blocos de metadados adicionais, que o fluxo de bits codificado não se conforma ao requisito. 0 método ainda inclui não processar pelo menos uma parte do fluxo de bits codificado com base na determinação de que o fluxo de bits codificado não se conforma com o requisito.
[0038] Em outro exemplo, é provido um aparelho que inclui uma memória configurada para armazenar dados de video e um processador. O processador é configurado para receber e receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui um ou mais blocos de metadados que incluem um conjunto de parâmetros de transformada de volume de cor codificados. O processador é
configurado para e pode determinar a presença de um ou mais
blocos de metadados no fluxo de bits codificado 0
processador é configurado para e pode, com base na
determinação da presença de um ou ma is blocos de metadados
no fluxo de bits codificado, determinar que uma presença de um ou mais blocos adicionais é necessária no fluxo de bits codificado. O processador é configurado para e pode determinar que o fluxo de bits codificado não inclui um ou mais blocos de metadados adicionais que incluem um conjunto codificado de parâmetros de volume de cor de exibição mestre. O processador é configurado para e pode determinar, com base no fluxo de bits codificado não incluindo um ou mais blocos de metadados adicionais, que o fluxo de bits codificado não se conforma ao requisito. O processador é
Petição 870190048209, de 23/05/2019, pág. 35/202
18/156 configurado para e não processar pelo menos uma parte do fluxo de bits codificado com base na determinação de que o fluxo de bits codificado não se conforma com o requisito [0039] Em um outro exemplo, um meio legivel por computador é fornecido tendo armazenado nele instruções que operam de acordo com a presente invenção executado por um processador que executa um método que inclui: receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui um ou mais blocos de metadados que incluem um conjunto de parâmetros de transformada de volume de cor codificados. O método inclui ainda determinar a presença de um ou mais blocos de metadados no fluxo de bits codificado. O método ainda inclui, com base na determinação da presença de um ou mais blocos de metadados no fluxo de bits codificado, determinar que uma presença de um ou mais blocos adicionais é necessária no fluxo de bits codificado. O método inclui ainda determinar que o fluxo de bits codificado não inclui um ou mais blocos de metadados adicionais que incluem um conjunto codificado de parâmetros de volume de cor de exibição mestre. O método inclui ainda determinar, com base no fluxo de bits codificado não incluindo um ou mais blocos de metadados adicionais, que o fluxo de bits codificado não se conforma ao requisito. O método ainda inclui não processar pelo menos uma parte do fluxo de bits codificado com base na determinação de que o fluxo de bits codificado não se conforma com o requisito.
[0040] Em um outro exemplo, é provido um aparelho que inclui meios para receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui um ou mais blocos de metadados que incluem um conjunto de
Petição 870190048209, de 23/05/2019, pág. 36/202
19/156 parâmetros de transformada de volume de cor codificados. 0 aparelho ainda compreende meios para determinar a presença de um ou mais blocos de metadados no fluxo de bits codificado. 0 aparelho ainda compreende meios para, com base na determinação da presença de um ou mais blocos de metadados no fluxo de bits codificado, determinar que uma presença de um ou mais blocos adicionais é necessária no fluxo de bits codificado. 0 aparelho ainda compreende meios para determinar que o fluxo de bits codificado não inclui um ou mais blocos de metadados adicionais que incluem um conjunto codificado de parâmetros de volume de cor de exibição mestre. 0 aparelho ainda compreende meios para determinar, com base no fluxo de bits codificado não incluindo um ou mais blocos de metadados adicionais, que o fluxo de bits codificado não se conforma ao requisito. 0 aparelho ainda compreende meios para não processar pelo menos uma parte do fluxo de bits codificado com base na determinação de que o fluxo de bits codificado não se conforma com o requisito.
[0041] Em alguns aspectos, o conjunto codificado de parâmetros de transformação de volume de cor inclui uma característica de transferência. Nesses aspectos, os métodos, aparelhos, e meio legível por computador descrito acima adicionalmente compreende determinar que um valor da característica de transferência é um valor particular. Nestes aspectos, a determinação de que o fluxo de bits codificado é não conformado é também baseada em um ou mais blocos de metadados sendo incluídos no fluxo de bits codificado quando o valor da característica de transferência é o valor particular.
Petição 870190048209, de 23/05/2019, pág. 37/202
20/156 [0042] Em alguns aspectos, o conjunto codificado de parâmetros de transformada de volume de cor e o conjunto de parâmetros de volume de cor de visor mestre inclui um mesmo campo, e em que a determinação de que o fluxo de bits codificado é não conformado é também baseada no campo estando presente em ambos, um ou mais blocos de metadados e um ou mais blocos de metadados adicionais.
[0043] Em alguns aspectos, o conjunto codificado de parâmetros de transformada de volume de cor e o conjunto de parâmetros de volume de cor de visor mestre inclui um mesmo campo, em que o campo é omitido do um ou mais blocos de metadados. Nesses aspectos, os métodos, aparelhos e meios passíveis de leitura por computador descritos acima compreendem adicionalmente a decodificação do conjunto de parâmetros de volume de cor, em que a decodif icação inclui o uso de um valor para o campo a partir do conjunto codificado de parâmetros de volume de cor de exibição mestre.
[0044] Em alguns aspectos, os dados de video incluem uma pluralidade de janelas de processamento, e em que a determinação de que o fluxo de bits codificado é não conformado é adicionalmente baseada em uma quantidade da pluralidade de janelas de processamento sendo maiores que dezesseis.
[0045] Em alguns aspectos, os dados de video incluem uma pluralidade de elementos de descrição de conteúdo, e em que a determinação de que o fluxo de bits codificado é não conformado é adicionalmente baseada em uma quantidade da pluralidade de elementos de descrição de conteúdo sendo maior do que um.
Petição 870190048209, de 23/05/2019, pág. 38/202
21/156
Em alguns aspectos os dados de vídeo incluem uma pluralidade de elementos de exibição alvos, e em que a determinação de que o fluxo de bits codificado é não conformado é adicionalmente baseada em uma quantidade da pluralidade de elementos de exibição alvo sendo maior do que dezesseis.
Em alguns aspectos os métodos aparelhos, e meio legível por computador descrito acima adicionalmente compreende determinar que o fluxo de bits codificado não inclui um bloco de metadados para uma unidade de acesso em particular no fluxo de bits codificado, em que a determinação de que o fluxo de bits codificado é não conformado é adicionalmente baseada no fluxo de bits codificado não incluindo um bloco de metadados para a unidade de acesso especifica.
Em alguns aspectos os métodos aparelhos, e o meio legível por computador descrito acima adicionalmente compreende determinar que o fluxo de bits codificado inclui um valor reservado, em que a determinação de que o fluxo de bits codificado é não conformado é adicionalmente baseada no fluxo de bits codificado que inclui um valor reservado.
Em alguns aspectos, um ou mais blocos de metadados incluem, cada um, um valor de comprimento, e determinar que o fluxo de bits codificado não se conforma é também baseado no valor de comprimento não sendo um múltiplo de oito.
Em alguns aspectos um ou mais blocos de metadados incluem, cada um, um valor de comprimento, e em que a determinação de que o fluxo de bits codificado é
Petição 870190048209, de 23/05/2019, pág. 39/202
22/156 não conformado é adicionalmente baseada no valor de comprimento sendo maior do que 255.
[0051] Em alguns aspectos, um ou mais blocos de metadados são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
[0052] Em alguns aspectos, um ou mais blocos de metadados adicionais são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI) .
[0053] Este sumário não se destina a identificar características chaves ou essenciais do assunto reivindicado, não se destina a ser usado em isolamento para determinar o escopo do assunto reivindicado. A matéria em questão deve ser entendida por referência a partes apropriadas do relatório descritivo inteiro desta patente, qualquer ou todos os desenhos, e cada reivindicação.
[0054] O precedente, junto com outras características e modalidades, tornar-se-á mais aparente ao se referir ao relatório descritivo, reivindicações e desenhos anexos a seguir.
BREVE DESCRIÇÃO DOS DESENHOS [0055] Exemplos ilustrativos das várias implementações são descritos em detalhes abaixo com referência às figuras de desenho a seguir:
[0056] A Figura 1 é um diagrama de blocos que ilustra um exemplo de um sistema de codificação de vídeo que inclui um dispositivo de codificação 104 e um dispositivo de decodificação.
[0057] A Figura 2 ilustra a faixa dinâmica de
Petição 870190048209, de 23/05/2019, pág. 40/202
23/156 visão humana típica, em comparação com a faixa dinâmica de vários tipos de exibição.
[0058] A Figura 3 ilustra um exemplo de um diagrama de cromaticidade, sobreposto com um triângulo representando uma gama de cores SDR e um triângulo representando uma gama de cores HDR.
[0059] A Figura 4 ilustra um exemplo de um processo para converter dados de vídeo RGB lineares de alta precisão para dados HDR.
[0060] A Figura 5 ilustra exemplos de curvas de luminância produzidas por funções de transferência definidas por vários padrões.
[0061] A Figura 6 ilustra um exemplo de blocos de processamento que podem ser utilizados em implementações de ST 2094-10.
[0062] A Figura 7 é um exemplo de um processo
para processamento de dados de vídeo
[0063] A Figura 8 é um exemplo de um processo
para processamento de dados de vídeo
[0064] A Figura 9 é um exemplo de um processo
para processamento de dados de vídeo
[0065] A Figura 10 é um exemplo de um processo
para processamento de dados de vídeo
[0066] A Figura 11 é um diagrama de ; blocos que
ilustra um dispositivo de codificação exemplar.
[0067] A Figura 12 é um diagrama de blocos que ilustra um dispositivo de decodificação exemplar.
DESCRIÇÃO DETALHADA [0068] Certos aspectos e modalidades da presente invenção são providos a seguir. Alguns destes
Petição 870190048209, de 23/05/2019, pág. 41/202
24/156 aspectos e modalidades podem ser aplicados independentemente e alguns deles podem ser aplicados em combinação como seria aparente àqueles versados na técnica. Na descrição a seguir, para fins de explicação, detalhes específicos são estabelecidos a fim de proporcionar uma compreensão completa das modalidades da invenção. Entretanto, será evidente que várias modalidades podem ser praticadas sem estes detalhes específicos. As figuras e a descrição não pretendem ser restritivas.
[0069] A descrição seguinte provê apenas modalidades exemplares, e não se destina a limitar o escopo, a aplicabilidade, ou a configuração da revelação. Em vez disso, a descrição seguinte das modalidades exemplares proverá aqueles versados na técnica com uma descrição de capacitação para implementar uma modalidade exemplar. Deve ser compreendido que várias mudanças podem ser feitas na função e arranjo de elementos sem afastar-se do espirito e escopo da invenção, conforme estabelecido nas reivindicações anexas.
[0070] Detalhes específicos são dados na descrição a seguir para proporcionar uma compreensão completa das modalidades. Entretanto, será compreendido por alguém versado na técnica que as modalidades podem ser praticadas sem estes detalhes específicos. Por exemplo, circuitos, sistemas, redes, processos, e outros componentes podem ser mostrados como componentes na forma de diagrama de blocos de modo a não obscurecer as modalidades em detalhe desnecessário. Em outros casos, circuitos bem conhecidos, processos, algoritmos, estruturas, e técnicas podem ser mostradas sem detalhes desnecessários a fim de
Petição 870190048209, de 23/05/2019, pág. 42/202
25/156 evitar obscurecer as modalidades.
[0071] Também, observa-se que modalidades individuais podem ser descritas como um processo que é representado como um fluxograma, um fluxograma, um fluxograma de dados, um diagrama de estrutura, ou um diagrama de blocos. Embora um fluxograma possa descrever as operações como um processo sequencial, muitas das operações podem ser executadas em paralelo ou concomitantemente. Além disso, a ordem das operações pode ser rearranjada. Um processo é terminado quando suas operações são completadas, mas poderia ter etapas adicionais não incluídas numa figura. Um processo pode corresponder a um método, uma função, um procedimento, uma subrotina, um subprograma, etc., quando um processo corresponde a uma função, sua terminação pode corresponder a um retorno da função da função de chamada ou função principal.
[0072] O termo meio legível por computador inclui, mas não está limitado a, dispositivos de armazenamento portáteis ou não portáteis, dispositivos de armazenamento óptico, e vários outros meios capazes de armazenar, conter, ou transportar instruções (s) e/ou dados. Um meio legível por computador pode incluir um meio não transitório no qual os dados podem ser armazenados e que não incluem ondas portadoras e/ou sinais eletrônicos transitórios que se propagam sem fio ou através de conexões com fios. Exemplos de um meio não transitório podem incluir, mas não estão limitados a, um disco magnético ou fita, meio de armazenamento óptico, tal como disco compacto (CD) ou disco versátil digital (DVD), memória flash, memória ou dispositivos de memória. Um meio legível por
Petição 870190048209, de 23/05/2019, pág. 43/202
26/156 computador pode ter armazenado no mesmo instruções executáveis por código e/ou máquina que podem representar um procedimento, uma função, um subprograma, um programa, uma rotina, uma subrotina, um módulo, um pacote de software, uma classe, ou qualquer combinação de instruções, estruturas de dados, ou declarações de programa. Um segmento de código pode ser acoplado a outro segmento de código ou um circuito de hardware passando e/ou recebendo informação, dados, argumentos, parâmetros, ou conteúdos de memória. Informações, argumentos, parâmetros, dados, etc. podem ser passados, encaminhados, ou transmitido através de qualquer meio adequado incluindo compartilhamento de memória, passagem de mensagem, passagem de token, transmissão de rede ou similar.
[0073] Além disso, as modalidades podem ser implementadas por hardware, software, firmware, middleware, microcódigo, linguagens de descrição de hardware, ou qualquer combinação dos mesmos. Quando implementado em software, firmware, middleware ou microcódigo, código de programa ou segmentos de código para executar as tarefas necessárias (por exemplo, um produto de programa de computador) pode ser armazenada em um meio legivel por computador ou legivel por máquina. Um processador(s) pode executar as tarefas necessárias.
[0074] Mais dispositivos e sistemas proporcionam aos consumidores a capacidade de consumir dados digitais de video, a necessidade de técnicas de codificação de video eficientes se torna mais importante. A codificação de video é necessária para reduzir o armazenamento e as exigências de transmissão necessárias
Petição 870190048209, de 23/05/2019, pág. 44/202
27/156 para lidar com grandes quantidades de dados presentes em dados digitais de video. Várias técnicas de codificação de video podem ser usadas para comprimir dados de video em uma forma que utiliza uma taxa de bits mais baixa enquanto mantém alta qualidade de video. Tal como aqui utilizado, codificação refere-se a codificação e decodificação. [0075] A Figura 1 é um diagrama de blocos que ilustra um exemplo de um sistema de codificação de video 100 que inclui um dispositivo de codificação 104 e um dispositivo de decodificação 112. Em alguns exemplos, o sistema de codificação de video 100 pode ser uma Faixa Dinâmica Alta (HDR) sistema, tal que o dispositivo de codificação 100 possa receber sinais de video HDR e pode produzir um fluxo de bits para os sinais de video HDR, e o dispositivo de decodificação 112 pode decodificar o fluxo de bits no sinal de video HDR que pode ser emitido. O dispositivo de codificação 104 pode ser parte de um dispositivo fonte, e o dispositivo de decodificação 112 pode ser parte de um dispositivo de recepção. O dispositivo fonte e/ou o dispositivo receptor pode incluir um dispositivo eletrônico, tal como um aparelho telefônico móvel ou estacionário (por exemplo telefone celular, telefone celular, ou similar), um computador de mesa, um computador laptop ou notebook, um computador de mesa, uma set top box, uma televisão, uma câmera, um dispositivo de exibição, um tocador de midia digital, um console de videogame, um dispositivo de transmissão continua de video, uma câmera de Protocolo Internet (IP), ou qualquer outro dispositivo eletrônico adequado. Em alguns exemplos, o dispositivo fonte e o dispositivo receptor podem incluir um
Petição 870190048209, de 23/05/2019, pág. 45/202
28/156 ou mais transceptores sem fio para comunicações sem fio. As técnicas de codificação descritas aqui são aplicáveis a codificação de video em várias aplicações multimídia, incluindo transmissões de video em escoamento (por exemplo, através da Internet), radiodifusão ou transmissões de televisão, codificação de video digital para armazenamento em um meio de armazenamento de dados, decodificação de video digital armazenado em um meio de armazenamento de dados, ou outras aplicações. Em alguns exemplos, o sistema 100 pode suportar transmissão de video de uma via ou de duas vias para suportar aplicações tais como videoconferência, transmissão continua de video, reprodução de video, difusão de video, jogo e/ou videotelefonia.
[0076] Dispositivo de codificação 104 (ou codificador) pode ser utilizada para codificar dados de video utilizando um padrão de codificação de video ou protocolo para gerar um fluxo de bits de video codificado. Exemplos de padrões de codificação de video incluem ITU-T H.261, ISO/IEC MPEG -1 Visual, ITU-T H.262 ou Visual ISO/IEC MPEG -2, ITU-T H.263, ISO/IEC MPEG -4, ITU-T H.264 (também conhecido como ISO/IEC MPEG -4 AVC), incluindo a sua codificação em video Escalável (SVC) e extensões de codificação de video Multiview (MVC), e codificação de video de Alta Eficiência (HEVC) ou ITU-T H 265. Várias extensões para a unidade HEVC com codificação de video de multi-camadas existem, incluindo as extensões de codificação de conteúdo de faixa e de tela, codificação de video 3D (3D-HEVC) e extensões multiview (MV-HEVC) e extensão escalonável (SHVC). A HEVC e suas extensões foram desenvolvidas pela equipe De colaboração conjunta na
Petição 870190048209, de 23/05/2019, pág. 46/202
29/156
Codificação de Video (JCT-VC) bem como a Equipe de Colaboração Conjunta no Desenvolvimento de extensão de codificação de video 3D (JCT -3V) do Grupo de Especialistas de codificação de video ITU-T (VCEG) e Grupo de especialistas de imagem de Movimento ISO/IEC (MPEG). MPEG e ITU-T VCEG também formaram um time de Video de exploração conjunta (JVET) para explorar novas ferramentas de codificação para a próxima geração de padrão de codificação de video. 0 software de referência é chamado JEM (modelo de exploração conjunta).
[0077] Muitos exemplos aqui descritos proporcionam exemplos utilizando o modelo JEM, o Padrão HEVC e/ou suas extensões. Entretanto, as técnicas e sistemas aqui descritos também podem ser aplicáveis a outros padrões de codificação, tal como AVC, MPEG, extensões do mesmo, ou outros padrões de codificação adequados que existem atualmente ou futuros padrões de codificação. Consequentemente, embora as técnicas e sistemas aqui descritos possam ser descritos com referência a um padrão de codificação de video particular, alguém experiente na técnica apreciará que a descrição não deve ser interpretada para aplicar apenas a esse padrão particular.
[0078] Com referência à Figura 1, uma fonte de video 102 pode fornecer os dados de video para o dispositivo de codificação 104. A fonte de video 102 pode ser parte do dispositivo fonte, ou pode ser parte de um dispositivo diferente do dispositivo fonte. A fonte de video 102 pode incluir um dispositivo de captura de video (por exemplo uma câmera de video, um telefone de câmera, um
Petição 870190048209, de 23/05/2019, pág. 47/202
30/156 telefone de video, ou similar) um arquivo de video contendo video armazenado, um servidor de video ou um provedor de conteúdo que fornece dados de video, uma interface de alimentação de video recebendo video a partir de um servidor de video ou provedor de conteúdo, um sistema de gráficos de computador para a geração de dados de video gráficos de computador, uma combinação de tais fontes, ou qualquer outra fonte de video adequada.
[0079] Os dados de video da fonte de video 102 podem incluir uma ou mais imagens ou quadros de entrada. Uma imagem ou quadro de um video é uma imagem parada de uma cena. O motor codificador 106 (ou codificador) do dispositivo de codificação 104 codifica os dados de video para gerar um fluxo de bits de video codificado. Em alguns exemplos, um fluxo de bits de video codificado (ou fluxo de bits de video ou fluxo de bits ) é uma série de uma ou mais sequências de video codificadas. Uma sequência de video codificada (CVS) inclui uma série de unidades de acesso (AUs) começando com uma AU que tem uma imagem de ponto de acesso aleatório na camada base e com certas propriedades até e não incluindo uma Próxima AU que tem uma imagem de ponto de acesso aleatório na camada base e com certas propriedades. Por exemplo, as certas propriedades de uma imagem de ponto de acesso aleatório que inicia um CVS podem incluir um indicador RASL (por exemplo, NoRaslOutputFlag) igual a 1. De outra forma, uma imagem de ponto de acesso aleatório (com indicador RASL igual a 0) não inicia um CVS. Uma unidade de acesso (AU) inclui uma ou mais imagens codificadas e informações de controle correspondentes às imagens codificadas que compartilham o
Petição 870190048209, de 23/05/2019, pág. 48/202
31/156 mesmo tempo de saída. Fatias codificadas de imagens são encapsuladas no nível de fluxo de bits em unidades de dados denominadas unidades de camada de abstração de rede (NAL). Por exemplo, um fluxo de bits de vídeo HEVC pode incluir um ou mais CVSs incluindo Unidades externas. Cada uma das unidades externas tem um cabeçalho unitário Externo. Em um exemplo, o cabeçalho é um byte para o H.264/AVC (exceto
para extensões de múltiplas camadas) e dois bytes para
HEVC. Os elementos de sintaxe no cabeçalho unitário Externo
levam os bits des ignados e, portanto, são visíveis para
todos os tipos de sistemas e camadas de transporte, tal
como Fluxo de transporte, Protocolo de transporte em tempo Real (RTP), Formato de Arquivo, entre outros.
[0080] Duas classes de unidades Externas existem no padrão HEVC, incluindo camada de Codificação de vídeo (VCL) unidades Externas e unidades externas não-VCL. Uma unidade externa de VCL Inclui uma fatia ou segmento de fatia (descrito abaixo) de dados de imagem codificados, e uma unidade externa sem VCL Inclui informação de controlo que se refere a uma ou mais imagens codificadas. Em alguns casos, uma unidade Externa pode ser referida como um pacote. Um HEVC AU inclui Unidades Externas de VCL contendo dados de imagem codificada e unidades externas não VCL (Se houver) correspondente aos dados de imagem codificada.
[0081] Unidades Externas podem conter uma sequência de bits que formam uma representação codificada dos dados de video (por exemplo, um fluxo de bits de video codificado, um CVS de um fluxo de bits, ou similar) , como representações codificadas de imagens em video. O motor codificador 106 gera representações codificadas de imagens
Petição 870190048209, de 23/05/2019, pág. 49/202
32/156 por divisão de cada imagem em múltiplas fatias. Uma fatia é independente de outras fatias, de modo que A informação na fatia é codificada sem dependência de dados de outras fatias dentro da mesma imagem. Uma fatia inclui um ou mais segmentos de fatias incluindo um segmento de fatias independente e, se presente, um ou mais segmentos de fatias dependentes que dependem de segmentos de fatias anteriores. As fatias são então divididas em blocos de árvore de codificação (CTBs) de amostras de luma e amostras de croma. Um CTB de amostras de luma e um ou mais CTBs De amostras de croma, junto com sintaxe para as amostras, são referidos como uma unidade de árvore de codificação (CTU). A CTU é a unidade de processamento básica para A codificação HEVC. Uma CTU pode ser dividida em múltiplas unidades de codificação (CUs) de tamanhos variados. Uma CU contém conjuntos de amostras de luma e croma que são referidos como blocos de codificação (CBs).
[0082] A luma e a croma CBs Podem ser divididas em blocos de predição (PBs). Um PB é um bloco de amostras do componente luma ou um componente croma que utiliza os mesmos parâmetros de movimento para predição inter-predição ou intra-bloco (quando disponível ou habilitado para utilização) . A luma PB E um ou mais PBs Croma, junto com sintaxe associada, formam uma unidade de predição (PU) . Para interpredição, um conjunto de parâmetros de movimento (por exemplo um ou mais vetores de movimento, índices de referência ou similares) é sinalizada
no fluxo de bits para cada PU e é usada para a
interpredição da luma PB e De um ou mais PBs croma. Os
parâmetros de movimento também podem ser referidos como
Petição 870190048209, de 23/05/2019, pág. 50/202
33/156 informação de movimento. Um CB também pode ser dividido em um ou mais blocos de transformada (TBs) . Um TB representa um bloco quadrado de amostras de um componente de cor no qual a mesma transformada bidimensional é aplicada para codificar um sinal residual de predição. Uma unidade de transformação (TU) representa os TBs de amostras de luma e croma e elementos de sintaxe correspondentes [0083] Um tamanho de uma CU corresponde a um tamanho do modo de codificação e pode ser de formato
quadrado. Por exemplo, um tamanho de uma CU pode ser 8
amostras x 8, 16 x 16 amostras, 32 amostras, 64 X 64
amostras, ou qualquer outra dimensão apropriada até o
tamanho da CTU correspondente. A frase N x N é aqui usada para se referir a dimensões de pixel de um bloco de video em termos de dimensões vertical e horizontal (por exemplo, 8 pixels x 8 pixels) . Os pixels em um bloco podem ser dispostos em linhas e colunas. Em alguns exemplos, os blocos podem não ter o mesmo número de pixels numa direção horizontal como numa direção vertical. Os dados de sintaxe associados a uma CU podem descrever, por exemplo, a divisão da CU em uma ou mais PUs. Os modos de partição podem diferir entre se a CU é codificada no modo intra-predição ou no modo interpredição codificado. O PUs pode ser dividido para ser de formato não quadrado. Os dados de sintaxe associados a uma CU também podem descrever, por exemplo, partição da CU em um ou mais TUs de acordo com uma CTU. A TU pode ser quadrada ou não quadrada de formato.
[0084] De acordo com o padrão HEVC, as transformações podem ser realizadas utilizando unidades de Transformação (TUs) TUs pode variar para diferentes CUs. Os
Petição 870190048209, de 23/05/2019, pág. 51/202
34/156
TUs podem ser dimensionados com base no tamanho de PUs dentro de uma Dada CU. 0 TUs pode ser o mesmo tamanho ou menor do que o PUs. Em alguns exemplos, amostras residuais correspondentes a uma CU podem ser subdivididas em unidades menores utilizando uma estrutura quadruárvore conhecida como árvore quádrupla residual (RQT) . Os nós de folha do RQT podem corresponder a TUs. Valores de diferença de Pixel associados com o TUs podem ser transformados para produzir coeficientes de transformada. Os coeficientes de transformada podem então ser quantificados pelo motor codificador 106 [0085] Uma vez que as imagens dos dados de video são divididas em CUs, o motor codificador 106 prevê cada PU utilizando um modo de predição. A unidade de predição ou bloco de predição é então subtraída dos dados de video originais para obter resíduos (descritos abaixo). Para cada CU, um modo de predição pode ser sinalizado dentro do fluxo de bits utilizando dados de sintaxe. Um modo de predição pode incluir predição intra-predição (ou intra-imagem) ou interpredição (ou predição entre imagem). Intra-predição utiliza a correlação entre amostras espacialmente vizinhas dentro de uma imagem. Por exemplo, utilizando intra-predição, cada PU é prevista a partir de dados de imagem vizinhos na mesma imagem utilizando, por exemplo, predição DC para encontrar um valor médio para a PU, predição planar para ajustar uma superfície plana à PU, predição de direção para extrapolar de dados vizinhos, ou quaisquer outros tipos adequados de predição. Interpredição utiliza a correlação temporal entre imagens de modo a derivar uma predição compensada por movimento para um bloco
Petição 870190048209, de 23/05/2019, pág. 52/202
35/156 de amostras de imagem. Por exemplo, utilizando-se interpredição, cada PU É prevista utilizando predição de compensação de movimento a partir do sinal de dados de imagem em uma ou mais imagens de referência (antes ou depois da imagem atual em ordem de saída). A decisão de codificar uma área de imagem utilizando predição entre imagem ou intra-imagem pode ser feita, por exemplo, no nível de CU.
[0086] Em alguns exemplos, a uma ou mais fatias de uma imagem são designadas um tipo de fatia. Os tipos de fatias incluem uma fatia I, uma fatia P e uma fatia B. Uma fatia I (intra-quadros, independentemente decodificável) é uma fatia de uma imagem que é codificada
somente por intra-predição, θ, portanto, é
independentemente decodificável, já que a fatia I Requer
apenas os dados dentro do quadro para prever qualquer
unidade de previsão ou bloco de predição da fatia. Uma fatia P (quadros uni-direcionais previstos) é uma fatia de uma imagem que pode ser codificada com intra-predição e com interpredição unidirecional. Cada unidade de predição ou bloco de predição dentro de uma fatia P é codificada com predição intra ou interpredição. Quando o interpredição se aplica, a unidade de predição ou bloco de predição é somente predita por uma imagem de referência, e, portanto, amostras de referência são apenas de uma região de referência de um quadro. Uma fatia B (quadros preditivos bi-direcionais) é uma fatia de uma imagem que pode ser codificada com intra-predição e com interpredição (por exemplo, bi-predição ou uni-predição). Uma unidade de predição ou bloco de predição de uma fatia B pode ser
Petição 870190048209, de 23/05/2019, pág. 53/202
36/156 predita bidirecionalmente a partir de duas imagens de referência, onde cada imagem contribui com uma região de referência e conjuntos de amostras das duas regiões de referência são ponderados (por exemplo, com pesos iguais ou com pesos diferentes) para produzir o sinal de predição do bloco prognosticado bi-direcional. Como explicado acima, as fatias de uma imagem são codificadas independentemente. Em alguns casos, uma imagem pode ser codificada como uma fatia.
[0087] Uma PU pode incluir os dados (por exemplo, parâmetros de movimento ou outros dados adequados) relacionados com o processo de previsão. Por exemplo, quando a PU é codificada utilizando intra-predição, a PU pode incluir dados que descrevem um modo intra-predição para a PU. Como um outro exemplo, quando a PU é codificada utilizando interpredição, a PU pode incluir dados que definem um vetor de movimento para a PU. Os dados que definem o vetor de movimento para uma PU podem descrever, por exemplo, um componente horizontal do vetor de movimento (Δχ) , um componente vertical do vetor de movimento (Ay) , uma resolução para o vetor de movimento (por exemplo, precisão de número inteiro, precisão de um quarto de pixel, ou precisão de um oitavo pixel), uma imagem de referência à qual os pontos vetoriais de movimento, um indice de referência, uma lista de imagem de referência (por exemplo, lista 0, lista 1, ou lista C) para o vetor de movimento, ou qualquer combinação dos mesmos.
[0088] O dispositivo de codificação 104 pode então efetuar a transformação e a quantização. Por exemplo, após a predição, o motor codificador 106 pode calcular
Petição 870190048209, de 23/05/2019, pág. 54/202
37/156 valores residuais correspondentes à PU. Os valores residuais podem compreender valores de diferença de pixel entre o bloco atual de pixels sendo codificados (a PU) e o bloco de predição utilizado para prever o bloco atual (por exemplo, a versão predita do bloco atual). Por exemplo, após a geração de um bloco de predição (por exemplo, a emissão de interpredição ou intra-predição) , o motor codificador 106 pode gerar um bloco residual pela subtração do bloco de predição produzido por uma unidade de previsão a partir do bloco atual. O bloco residual inclui um conjunto de valores de diferença de pixel que quantificam diferenças entre valores de pixel dos valores de bloco atual e pixel do bloco de predição. Em alguns exemplos, o bloco residual pode ser representado em um bloco de dois formatos de bloco dimensional (por exemplo, uma matriz bidimensional ou conjunto de valores de pixel) . Em tais exemplos, o bloco residual é uma representação bidimensional dos valores de pixel.
[0089] Qualquer dado residual que possa estar remanescente após a predição é executado utilizando uma transformada de bloco, que pode ser baseada em transformada discreta de cosseno, transformada de seno discreta, uma transformada de inteiro, uma transformada de ondas, outra função de transformada adequada, ou qualquer combinação das mesmas. Em alguns casos, uma ou mais transformadas em bloco (por exemplo, tamanhos 32 x 32, 16 x 16, 8x8, 4 x 4 ou similares) pode ser aplicado a dados residuais em cada CU. Em alguns exemplos, uma TU pode ser usada para os processos de transformada e de quantificação implementados pelo motor codificador 106. Uma dada CU tendo uma ou mais PUs também
Petição 870190048209, de 23/05/2019, pág. 55/202
38/156 pode incluir um ou mais TUs. Conforme descrito em maiores detalhes abaixo, os valores residuais podem ser transformados em coeficientes de transformada utilizando as transformadas de blocos, e então pode ser quantizada e escaneada utilizando-se TUs para Produzir coeficientes de transformada seriadas para codificação de entropia.
[0090] Em alguns exemplos, seguindo a codificação intra-preditiva ou interpreditiva utilizando o PUs de uma CU, o motor codificador 106 pode calcular dados residuais para o TUs da CU. As PUs podem compreender dados de pixel no domínio espacial (ou domínio de pixel) . O TUs pode compreender coeficientes no domínio de transformada após a aplicação de uma transformada de bloco. Conforme observado anteriormente, os dados residuais podem corresponder a valores de diferença de pixel entre pixels da imagem não codificada e dos valores de predição correspondentes às PUs. O motor codificador 106 pode formar os TUs incluindo os dados residuais para a CU, e pode então transformar o TUs para produzir coeficientes de transformada para a CU.
[0091] O motor codificador 106 pode efetuar a quantificação dos coeficientes de transformada. A quantificação provê uma compressão adicional pela quantificação dos coeficientes de transformada para reduzir a quantidade de dados utilizados para representar os coeficientes. Por exemplo, a quantificação pode reduzir a profundidade de bits associada a alguns ou todos os coeficientes. Em um exemplo, um coeficiente com um valor de n bits pode ser arredondado para um valor de m-bit durante a quantificação, com n sendo maior que m.
Petição 870190048209, de 23/05/2019, pág. 56/202
39/156 [0092] Uma vez que a quantificação é realizada, o fluxo de bits de vídeo codificado inclui coeficientes de transformada quantizados, informações de predição (por exemplo, modos de predição, vetores de movimento, vetores de bloco, ou semelhantes), informação de partição e quaisquer outros dados adequados, tais como outros dados de sintaxe. Os diferentes elementos do fluxo de bits de vídeo codificado podem então ser codificados por entropia pelo motor codificador 106. Em alguns exemplos, o motor codificador 106 pode utilizar uma ordem de varredura predefinida para varrer os coeficientes de transformada quantizados para produzir um vetor seriado que pode ser codificado por entropia. Em alguns exemplos, o motor codificador 106 pode executar uma varredura adaptativa. Após a varredura dos coeficientes de transformada quantizados para formar um vetor (por exemplo, um vetor unidimensional), o motor codificador 106 pode codificar por entropia o vetor. Por exemplo, o motor codificador 106 pode usar a codificação de comprimento variável adaptativa de contexto, a codificação aritmética binária adaptativa de contexto, codificação aritmética binária adaptativa de contexto à base de sintaxe, codificação de entropia de partição de intervalo de probabilidade, ou outra técnica de codificação de entropia adequada.
[0093] Como previamente descrito, um fluxo de bits HEVC inclui um grupo de Unidades externas Incluindo unidades Externas de VCL e unidades externas sem VCL. Unidades externas de VCL Incluem dados de imagem codificados formando um fluxo de bits de vídeo codificado. Por exemplo, uma sequência de bits que formam o fluxo de
Petição 870190048209, de 23/05/2019, pág. 57/202
40/156 bits de video codificado é recolocada em Unidades externas de VCL. Unidades externas não VCL Podem conter conjuntos de parâmetros com informações de alto nivel referentes ao fluxo de bits de video codificado, além de outras informações. Por exemplo, um conjunto de parâmetros pode incluir um conjunto de parâmetros de video (VPS), um conjunto de parâmetro de sequência (SPS) e um conjunto de parâmetro de imagem (PPS) . Exemplos de objetivos dos conjuntos de parâmetros incluem a eficiência de taxa de bits, a resiliência de erros e a provisão de interfaces de camada de sistemas. Cada fatia faz referência a Um Único PPS ativo, SPS, e VPS para acessar informação que o dispositivo de decodificação 112 pode usar para decodificar a fatia. Um identificador (ID) pode ser codificado para cada conjunto de parâmetro, incluindo um ID de VPS, um ID de SPS, e um ID de PPS um PS inclui um ID de SPS e um ID de VPS. Um PPS inclui um ID de PPS e um ID de SPS Cada cabeçalho de fatia inclui um ID de PPS Utilizando os IDs, conjuntos de parâmetros ativos podem ser identificados para uma dada fatia.
[0094] Um PPS inclui informação que se aplica a todas as fatias em uma dada imagem. Por causa disto, todas as fatias em uma imagem referem-se ao mesmo PPS. As fatias em imagens diferentes também podem se referir ao mesmo PPS. Um SPS inclui informação que se aplica a todas as imagens em uma mesma sequência de video codificada (CVS) ou fluxo de bits. Conforme descrito anteriormente, uma sequência de video codificada é uma série de unidades de acesso (AUs) que começa com uma imagem de ponto de acesso aleatório (por exemplo uma imagem de referência de
Petição 870190048209, de 23/05/2019, pág. 58/202
41/156 decodificação instantânea (IDR) ou acesso de ligação interrompida (BLAA) imagem, ou outra imagem de ponto de acesso aleatório apropriada) na camada base e com certas propriedades (descritas acima) até e não incluindo uma Próxima AU que tem uma imagem de ponto de acesso aleatório na camada base e com certas propriedades (ou o final do fluxo de bits) . A informação em Um SPS pode não mudar de imagem para imagem dentro de uma sequência de vídeo codificada. Imagens em uma sequência de vídeo codificada podem utilizar o mesmo SPS. A VPS inclui informação que se aplica a todas as camadas dentro de uma sequência de vídeo codificada ou fluxo de bits. A VPS inclui uma estrutura de sintaxe com elementos de sintaxe que se aplicam a sequências de vídeo codificadas inteiras. Em alguns exemplos, o VPS, PS, ou PPS pode ser transmitido em banda com o fluxo de bits codificado. Em alguns exemplos, o VPS, PS, ou PPS pode ser transmitido fora de banda em uma transmissão separada do que as unidades Externas contendo dados de vídeo codificados.
[0095] Um fluxo de bits de vídeo também pode incluir mensagens de informação de Melhoria Suplementar (SEI). Por exemplo, uma unidade externa SEI Pode ser parte do fluxo de bits de vídeo. Em alguns casos, uma mensagem SEI pode conter informações que não são necessárias pelo processo de decodificação. Por exemplo, a informação em uma mensagem SEI pode não ser essencial para o decodif icador decodificar as imagens de vídeo do fluxo de bits, mas o decodificador pode utilizar a informação para melhorar a exibição ou processamento das imagens (por exemplo, a saída decodificada) . A informação em uma mensagem SEI pode ser
Petição 870190048209, de 23/05/2019, pág. 59/202
42/156 metadado embutido. Em um exemplo ilustrativo, a informação em uma mensagem SEI poderia ser utilizada por MT entidade de decodificador-lado para melhorar a visibilidade do conteúdo. Em alguns casos, certos padrões de aplicação podem solicitar a presença de Tais mensagens SEI no fluxo de bits assim como o aperfeiçoamento em qualidade pode ser levado a todos os dispositivos que se conformam ao padrão de aplicação (por exemplo um carro da mensagem SEI de empacotamento de quadro para formato de video planoestereoscópico 3DTV compatível com quadro, onde a mensagem SEI é transportada para cada quadro do video, manipulação
de uma mensagem SEI de ponto de recuperação, utilização de
mensagem SEI de retângulo de Varredura de varredura de
panela em DVB, além de muitos outros exemplos)
[0096] A salda 110 do dispositivo de
codificação 104 pode enviar as unidades Externas que
compõem os dados de video codificados através da ligação de comunicações 120 para o dispositivo de decodificação 112 do dispositivo de recepção. A entrada 114 do dispositivo de decodificação 112 pode receber as unidades Externas. A ligação de comunicações 120 pode incluir um canal provido por uma rede sem fio, rede cabeada, ou uma combinação de rede com fio e sem fio. Uma rede sem fio pode incluir qualquer interface sem fio ou combinação de interfaces sem fio e pode incluir qualquer rede sem fio adequada (por exemplo, a Internet ou outra rede de área ampla, uma rede baseada em pacotes, WiFiTM, frequência de Rádio (RE), UWB, WiFi-Directed, Cellular, Long-Term Evolution (LTE), WiMaxTM, ou similar). Uma rede com fio pode incluir qualquer interface com fio (por exemplo, fibra, ethernet,
Petição 870190048209, de 23/05/2019, pág. 60/202
43/156 ethernet de linha de força, ethernet através de cabo coaxial, linha de sinal digital (DSL), ou similar). Redes com fios e/ou sem fios podem ser implementadas utilizando vários equipamentos, tais como estações base, roteadores, pontos de acesso, pontes, portas, comutadores ou semelhantes. Os dados de video codificados podem ser modulados de acordo com um padrão de comunicação, tal como um protocolo de comunicação sem fio, e transmitido para o dispositivo receptor.
[0097] Em alguns exemplos, o dispositivo de codificação 104 pode armazenar dados de video codificados em LT no armazenamento 108. A saida 110 pode recuperar os dados de video codificados a partir do dispositivo codificador 106 ou a partir do armazenamento 108. O armazenamento 108 pode incluir qualquer dentre uma variedade de meios de armazenamento de dados distribuídos ou acessados localmente. Por exemplo, o armazenamento 108 pode incluir um disco rigido, um disco de armazenamento, memória flash, memória volátil ou não volátil, ou qualquer outra midia de armazenamento digital adequada para armazenamento de dados de video codificados.
[0098] A entrada 114 do dispositivo de decodificação 112 recebe os dados de fluxo de bits de video codificados e pode fornecer os dados de fluxo de bits de video para o mecanismo decodificador 116 ou para o armazenamento 118 para uso posterior pelo mecanismo decodificador 116. O motor decodificador 116 pode decodificar dados de fluxo de bits de video codificados por decodificação por entropia (por exemplo, utilizando um decodificador de entropia) e extração dos elementos de uma
Petição 870190048209, de 23/05/2019, pág. 61/202
44/156 ou mais sequências de video codificadas que constituem os dados de video codificados. 0 motor decodificador 116 pode então reescalonar e executar uma transformada inversa nos dados de fluxo de bits de video codificados. Os dados residuais são, então, passados para um estágio de previsão do mecanismo decodificador o motor decodificador 116 prediz então um bloco de pixels (por exemplo, uma PU) . Em alguns exemplos, a predição é adicionada à saida da transformada inversa (os dados residuais).
[0099] O dispositivo de decodificação 112 pode emitir o video decodificado para um dispositivo de destino de video, que pode incluir um visor ou outro dispositivo de saida para exibir os dados de video decodificados a um consumidor do conteúdo. Em alguns aspectos, o dispositivo de destino de video 122 pode ser parte do dispositivo de recepção que inclui o dispositivo de decodificação 112. Em alguns aspectos, o dispositivo de destino de video 122 pode ser parte de um dispositivo separado diferente do dispositivo receptor.
[00100] Em alguns exemplos, o dispositivo de codificação de video 104 e/ou o dispositivo de decodificação de video 104 112 pode ser integrado com um dispositivo de codificação de áudio e dispositivo de decodificação de áudio, respectivamente. O dispositivo de codificação de video 104 e/ou o dispositivo de decodificação de video 112 também pode incluir outro hardware ou software que é necessário para implementar as técnicas de codificação descritas acima, tal como um ou mais microprocessadores, processadores de sinais digitais (DSPs), circuitos integrados de aplicação especifica
Petição 870190048209, de 23/05/2019, pág. 62/202
45/156 (ASICs), arranjos de portas programáveis em campo (FPGAs), lógica discreta, software, hardware, firmware ou qualquer combinação dos mesmos. 0 dispositivo de codificação de video 104 e o dispositivo de decodif icação de video 112 podem ser integrados como parte de um codificador/decodificador combinado (codec) respectivo dispositivo. Um exemplo de detalhes específicos do dispositivo de codificação 104 é descrito abaixo com referência à Figura 11 um exemplo de detalhes específicos do dispositivo de decodificação 112 é descrito abaixo com referência à Figura 12.
[00101] Extensões para o padrão HEVC incluem a Extensão de codificação de video Multiview, referida como MV-HEVC, e a extensão de codificação de video Escalável, referida como SHVC. As extensões MV-HEVC e SHVC compartilham o conceito de codificação em camadas, com diferentes camadas sendo incluídas no fluxo de bits de video codificado. Cada camada em uma sequência de video codificada é endereçada por um identificador de camada única (ID) . Um ID de camada pode estar presente em um cabeçalho de uma unidade Externa para identificar uma camada com a qual a unidade Externa está associada. Em MVHEVC, diferentes camadas geralmente representam diferentes vistas do mesmo cenário no fluxo de bits de video. Em SHVC, são providas diferentes camadas escaláveis que representam o fluxo de bits de video em diferentes resoluções espaciais (ou resolução de imagem) ou em diferentes organizações de reconstrução. As camadas escaláveis podem incluir uma camada base (com ID De camada =0) e uma ou mais camadas de ampliação (com IDs de camada =1, 2. N). A camada base pode
Petição 870190048209, de 23/05/2019, pág. 63/202
46/156 se conformar a um perfil da primeira versão de HEVC, e representa a camada mais baixa disponível em um fluxo de bits. As camadas de melhoramento têm resolução espacial aumentada, resolução temporal ou taxa de quadro, e/ou fidelidade de reconstrução (ou qualidade) em comparação com a camada base. As camadas de melhoramento são organizadas de forma hierárquica e podem (ou não) depender de camadas inferiores. Em alguns exemplos, as diferentes camadas podem ser codificadas utilizando um codec padrão único (por exemplo, todas as camadas são codificadas utilizando HEVC, SHVC, ou outro padrão de codificação). Em alguns exemplos, diferentes camadas podem ser codificadas utilizando um codec multi-padrão. Por exemplo, uma camada base pode ser codificada utilizando AVC, enquanto uma ou mais camadas de ampliação podem ser codificadas utilizando Extensões SHVC e/ou MV-HEVC para o padrão HEVC.
[00102] Vários padrões foram também definidos que descrevem as cores em um video capturado, incluindo a relação de contraste (por exemplo, o brilho ou a escuridão dos pixels no video) e a precisão da cor, entre outras coisas. Os parâmetros de cor podem ser usados, por exemplo, por um dispositivo de exibição que é capaz de usar os parâmetros de cor para determinar como exibir os pixels no video. Um exemplo de norma da International Telecommunication Union (ITU), ITU-R Recommension BT.709 (referido aqui como BT.709), define um padrão para Televisão de Alta definição (HDTV) . Os parâmetros de cor definidos por BT.709 são usualmente referidos como gama Dinâmica Padrão (SDR) e gama de cores padrão. Um outro padrão exemplar é a Recomendação ITU-R BT.2020 (referida
Petição 870190048209, de 23/05/2019, pág. 64/202
47/156 aqui como BT.2020 ) que define um padrão para Televisão de Alta Definição (UHDTV) . Os parâmetros de cor definidos por BT.2020 são comumente referidos como gama Dinâmica Alta (HDR) e Gama de Cores Amplas (WCG). Gama dinâmica e gama de cores são referidas aqui coletivamente como volume de cor.
[00103] Dispositivos de exibição podem não ser capazes de exibir o volume de cor de um sinal de video que utiliza uma gama dinâmica alta e gama de cores larga. Por exemplo, um sinal de video HDR pode ter um valor absoluto de brilho para cada pixel. Na luz do dia ampla, o sinal de video pode incluir algumas amostras iguais a 10.000 candeias por metro quadrado (cd/m2, frequentemente referido como um nit) . Um monitor de Formação de Imagem de Alta Definição tipico (HDI), entretanto, só pode ser capaz de exibir 1000 nits, enquanto os expositores de estúdio profissionais podem ser capazes de exibir 4000 nits.
[00104] Para permitir vários tipos diferentes de dispositivos de exibição para exibir sinais de video HDR e outros sinais de video com grandes volumes de cor, padrões têm sido definidos para transformadas de volume de cor. As transformadas de volume de cor podem ser usadas para transformar uma faixa dinâmica de entrada e gama de cores para uma faixa dinâmica de saida e gama de cores que podem ser exibidas por um dispositivo de exibição. Exemplos de padrões de transformação de volume de cor incluem um conjunto de padrões definidos pela Sociedade de Engenheiros de Televisão de Imagem de Movimento (SMPTE), ST 2094. dentro do Conjunto ST 2094, quatro documentos, ST 2094-10, ST 2094-20, ST 2094-30, e ST 2094-40, definem metadados que podem ser usados em transformadas de volume de cor. Outros
Petição 870190048209, de 23/05/2019, pág. 65/202
48/156 padrões aplicáveis incluem, por exemplo, SMTPE ST 2084, que proporciona uma função de transferência que permite a exibição do conteúdo de video HDR com um nivel de luminância de até 10.000 nits, e pode ser usado com o espaço de cores definido pelo BT2020 outro exemplo de um padrão aplicável é O SMTPE 2086, que especifica os itens de metadados para especificar o volume de cor (as cores primárias, ponto branco, e faixa de luminância) da tela que foi usada no mestre de conteúdo de video.
[00105] Entre os padrões acima mencionados, ST 2094-10 especifica metadados de transformada de volume de cor dependentes de conteúdo, modelo especializado da transformada generalizada de volume de cor definida pela ST 2094. Esta transformada de volume de cor é baseada em uma curva de mapeamento de tons definida por parametrização, cuja forma é definida ambas pelas características de essência de imagem (algoritmicamente computados a partir da essência de imagem de entrada) e possivelmente também por ajustes manualmente ajustados. Este metadado é gerado como parte do processo de masterização, isto é, a produção de uma cópia mestre a ser usada para a produção de cópias para distribuição. Os parâmetros de ajuste podem ser decididos como um ajuste criativo.
[00106] Os parâmetros de transformação de volume de cor definidos por ST 2094-10 são fornecidos como resumo, valores de ponto flutuante. Para distribuir estes parâmetros a um decodificador, um formato que provê estes parâmetros em um formato mais compacto e eficiente é necessário. Maior eficiência pode ser medida, por exemplo, em termos de bits requeridos para representar os valores
Petição 870190048209, de 23/05/2019, pág. 66/202
49/156 e/ou a complexidade computacional necessária para determinar e/ou utilizar os valores. 0 ST 2094-10, no entanto, não define um formato para codificação de parâmetros de formato de volume de cor em um fluxo de bits.
[00107] Em várias implementações, são providos sistemas e métodos para a codificação de parâmetros de transformada de volume de cor definidos por ST 2094-10 em um fluxo de bits. Em alguns exemplos, um conjunto de parâmetros de transformação de volume de cor pode ser provido com dados de vídeo. Adicionalmente, um conjunto de valores de volume de cor de visor mestre pode ser fornecido. Os parâmetros de volume de cor de exibição mestre incluem valores determinados quando da geração de uma cópia mestre dos dados de vídeo. Em algumas implementações, os parâmetros de transformada de volume de cor podem ser codificados em um fluxo de bits, junto com os dados de vídeo. Nestas implementações, os parâmetros de volume de cor de exibição mestre são requeridos para serem codificados no fluxo de bits.
[00108] Em alguns exemplos, os dados de vídeo podem incluir dois ou mais sinais de vídeo, onde cada sinal de vídeo pode ser exibido em uma região de exibição separada dentro da área de exibição de um dispositivo de exibição. Nesses exemplos, os dados de vídeo podem incluir conjuntos de parâmetros de transformação de volume de cor para os dois ou mais sinais de vídeo. Em algumas implementações, um codificador pode determinar uma associação entre um conjunto de parâmetros de transformação de volume de cor e uma região de exibição para um sinal de vídeo. A associação pode ser codificada no fluxo de bits,
Petição 870190048209, de 23/05/2019, pág. 67/202
50/156 junto com os dados de video.
[00109] Os exemplos precedentes podem ser utilizados para implementar um sistema de video HDR, incluindo um dispositivo de codificação para produzir um fluxo de bits codificado e/ou um dispositivo de decodificação para decodificar um fluxo de bits e formatar o video decodificado para exibição. Definindo várias restrições nos parâmetros fornecidos pela ST 2094-10, uma definição não ambígua desses parâmetros pode ser provida, o que pode simplificar a implementação de sistemas de video HDR.
[00110] Padrões de video que definem volumes de cor maiores tentam replicar mais estreitamente o que o olho humano é capaz de ver. Como notado acima, o volume de cor pode incluir uma gama dinâmica e uma gama de cores, onde a gama dinâmica e a gama de cores são atributos independentes de conteúdo de video.
[00111] Faixa dinâmica pode ser definida como a relação entre o brilho mínimo e máximo de um sinal de video. A faixa dinâmica também pode ser medida em termos de paradas de f. Em câmeras, um salto f é a relação do comprimento focal de uma lente para o diâmetro da abertura da câmera. Um detentor de f pode corresponder a uma duplicação da faixa dinâmica de um sinal de video. Como exemplo, MPEG define conteúdo HDR como conteúdo que caracteriza variações de brilho de mais do que 16 fparadas. Em alguns exemplos, uma faixa dinâmica entre paradas de 10 a 16 f é considerada uma faixa dinâmica intermediária, embora em outros exemplos seja considerada uma faixa dinâmica de HDR.
Petição 870190048209, de 23/05/2019, pág. 68/202
51/156 [00112] A Figura 2 ilustra a faixa dinâmica de visão humana típica 202, em comparação com a faixa dinâmica de vários tipos de exibição. A Figura 2 ilustra uma escala de luminância 200, em escala logarítmica de nits (por exemplo, em escala logarítmica cd/m2) . A título de exemplo, a luz de uma estrela está em aproximadamente 0,0001 nits na faixa de luminância ilustrada 200, e a luz da lua é de aproximadamente 0,01 nits. A luz interna típica pode estar entre 1 e 100 na faixa de luminância 200. A Luz solar pode estar entre 10.000 nits e 1.000.000 nits na faixa de luminância 200.
[00113] A visão humana 202 é capaz de observar em qualquer lugar entre menos do que 0,0001 nits até mais de 1.000.000 nits, com a faixa precisa que varia de uma pessoa a pessoa. A faixa dinâmica de visão humana 202 inclui uma faixa dinâmica simultânea 204. A faixa dinâmica simultânea 204 é definida como a relação entre os valores de luminância mais altos e mais baixos nos quais objetos podem ser detectados, enquanto o olho está em adaptação total. Adaptação completa quando o olho está em um estado estacionário após ter ajustado a uma condição de luz ambiente corrente ou nível de luminância. Embora a faixa dinâmica simultânea 204 esteja ilustrada no exemplo da Figura 2 entre cerca de 0,1 nits e cerca de 3200, a faixa dinâmica simultânea 204 pode ser centralizada em outros pontos ao longo da faixa de luminância 200 e a largura pode variar em diferentes níveis de luminância. Adicionalmente, a faixa dinâmica simultânea 204 pode variar de uma pessoa para outra [00114] A Figura 2 ilustra ainda uma faixa
Petição 870190048209, de 23/05/2019, pág. 69/202
52/156 dinâmica aproximada para os exibidores SDR 206 e a unidade HDR 208f Os exibidores SDR 206 incluem monitores, televisões, telas de comprimidos, telas de telefone inteligente, e outros dispositivos de exibição gue são capazes de exibir exibições HDR de vídeo SDR 208 incluem, por exemplo, televisões de alta definição e outros televisões e monitores.
[00115] BT.709 fornece que a faixa dinâmica de exibições SDR 206 pode ser de cerca de 0,1 a 100 nits, ou cerca de 10 f-paradas, que é significativamente menor do que a faixa dinâmica de visão humana 202. A faixa dinâmica de exibidores SDR 206 é também menor do que a faixa dinâmica simultânea ilustrada 204. Os exibidores SDR 206 também são incapazes de reproduzir precisamente as condições de tempo noturnas (por exemplo, luz de uma estrela, em cerca de 0,0001 nits) ou condições externas brilhantes (por exemplo, em torno de 1.000.000 nits).
[00116] Os exibidores HDR 208 podem cobrir uma faixa dinâmica mais ampla do que as exibições de SDR 206. Por exemplo, os exibidores HDR 208 podem ter uma faixa dinâmica de cerca de 0,01 nits a cerca de 5600 nits ou 16 f-paradas. Enquanto os exibidores HDR 208 também não englobam a faixa dinâmica de visão humana, os exibidores HDR 208 podem vir mais próximos de serem capazes de cobrir a faixa dinâmica simultânea 204 da pessoa média. As especificações para os parâmetros de faixa dinâmica para os exibidores HDR 208 podem ser encontradas, por exemplo, em BT.2020 e ST 2084.
[00117] Gama de cores que descreve a gama de cores gue estão disponíveis em um dispositivo particular,
Petição 870190048209, de 23/05/2019, pág. 70/202
53/156 tal como uma tela ou uma impressora. Gama de cores também pode ser referida como dimensão de cor. A Figura 3 ilustra um exemplo de um diagrama de cromaticidade 300, sobreposto com um triângulo representando uma gama de cores de SDR 304 e um triângulo representando uma gama de cores de HDR 302. Os valores na curva 306 no diagrama 300 são o espectro de cores; isto é, as cores evocadas por um único comprimento de onda de luz no espectro visível. As cores abaixo da curva 306 são não espectrais: a linha reta entre os pontos inferiores da curva 306 é referida como a linha de purgações, e as cores dentro do interior do diagrama 300 são cores insaturadas que são várias misturas de uma cor espectral ou uma cor púrpura com branco. Um ponto marcado D65 Indica a localização de branco para a curva espectral ilustrada 306. A Curva 306 também pode ser referida como o
local de espectro ou local espectral.
[00118] 0 triângulo representando uma gama de
cores de SDR 304 é baseado no vermelho, verde, e cores
primárias de cor azul como provido por BT709. A gama de
cores de SDR 304 é o espaço de cor utilizado por HDTVs,
radiodifusões de SDR, e outros conteúdos de mídia digital.
[00119] 0 triângulo representando uma gama de
cores HDR 302 é baseado no vermelho, cores primárias verdes e azuis como fornecidas pelo BT2020, conforme ilustrado pela figura 3, a gama de cores de HDR 302 proporciona cerca de 70% mais cores do que a gama de cores de SDR 304. Faixa de gama de cores definidas por outros padrões, tal como iniciativas De Cinema Digital (DCI) P3 (referida como DCIP3) proporcionam ainda mais cores do que a gama de cores HDR 302. DCI-P3 É usada para projeção de movimento digital.
Petição 870190048209, de 23/05/2019, pág. 71/202
54/156 [00120] A tabela 1 ilustra exemplos de parâmetros de gama de cores, incluindo aqueles providos por BT.709, BT.2020 e DCI-P3. Para cada definição de gama de cores, a Tabela 1 fornece uma coordenada x e y para um diagrama de cromaticidade.
Tabela 1: Parâmetros de Gama de Cores
Cor Ponto branco Cores primárias
Espaço Xw Yw xr Yr Xq Yq xb Yb
DCI-P3 0,314 0,351 0,68 0,32 0,265 0,69 0, 15 0,06
BT.709 0,3127 0,329 0, 64 0,33 0,3 0,6 0, 15 0,06
BT.2020 0,3127 0,329 0,708 0,292 0,170 0,797 0, 131 0, 046
[00121] Dados de video com um grande volume de cor (por exemplo, dados de video com uma alta faixa dinâmica e ampla gama de cores) pode ser adquirida e armazenada com um alto grau de precisão por componente. Por exemplo, valores de ponto flutuante podem ser usados para representar os valores de luma e croma de cada pixel. Como um exemplo adicional, o formato de croma 4: 4: 4, onde a luma, podem ser usados componentes croma-azul e cromavermelho cada qual tem a mesma taxa de amostra. A notação 4: 4: 4 também pode ser usada para se referir ao formato de cor Vermelho-Verde-Azul (RGB). Como um exemplo adicional, um espaço de cor muito largo, tal como o definido pela International Commission on Illumination (CIE) 1931 XYZ, pode ser usado. Os dados de video representados com um alto grau de precisão podem ser quase matematicamente sem perdas. Uma representação de alta precisão, entretanto, pode incluir redundâncias e não pode ser ideal para A compressão. Assim, um formato de precisão mais baixa que visa exibir o volume de cor o que pode ser visto pelo olho humano é frequentemente utilizado.
Petição 870190048209, de 23/05/2019, pág. 72/202
55/156 [00122] A Figura 4 ilustra um exemplo de um processo 400 para converter dados de video RGB lineares de alta precisão para dados HDR 4104. Os Dados HDR 410 podem ter uma precisão mais baixa e podem ser mais facilmente comprimidos. O processo exemplar 400 inclui uma função de transferência não linear 404, que pode compactar a faixa dinâmica, uma conversão de cor 406 que pode produzir um espaço de cor mais compacto ou robusto, e uma função de quantização 408 que pode converter representações de pontos flutuantes em representações inteiras.
[00123] Em vários exemplos, dados lineares RGB 402, que podem ter uma alta faixa dinâmica e uma representação de ponto flutuante, pode ser compactada utilizando a função de transferência não linear 404. Um exemplo de função de transferência não linear 404 é o quantizador perceptual definido na ST 2084. A saida da função de transferência 404 pode ser convertida em um espaço de cor alvo pela conversão de cor 406. O espaço de cor alvo pode ser um que é mais adequado para a compressão, tal como Ybcr. A quantificação 408 pode então ser usada para converter os dados em uma representação de número inteiro [00124] A ordem das etapas do processo exemplar 400 é um exemplo da ordem na qual as etapas podem ser realizadas. Em outros exemplos, as etapas podem ocorrer em ordem diferente. Por exemplo, a conversão de cor 406 pode preceder a função de transferência 404. Em outros exemplos, pode ocorrer também processamento adicional. Por exemplo, a subamostragem espacial pode ser aplicada a componentes coloridos.
Petição 870190048209, de 23/05/2019, pág. 73/202
56/156 [00125] A função de transferência 404 pode ser usada para mapear os valores digitais em uma imagem para e a partir de energia óptica. Energia ótica, que também é referida como potência óptica, é o grau no qual uma lente, espelho ou outro sistema óptico converge ou diverge luz. A função de transferência 404 pode ser aplicada aos dados em uma imagem para compactar a faixa dinâmica. Compactar a faixa dinâmica pode permitir que o conteúdo de vídeo represente os dados com um número limitado de bits. A função de transferência 404 pode ser uma unidimensional, função não linear que pode refletir o inverso da função de transferência eletro-óptica (EOTF) de um visor de um consumidor final (por exemplo, conforme especificado para o SDR na Recomendação ITU-R BT.1886 (referido aqui como BT.1886) ou em BT.709), ou aproximar a percepção do sistema visual humano de mudanças de brilho (por exemplo, como provido para HDR pela função de transferência de quantificador perceptiva (PQ) Especificada em ST 2084) . Uma função de transferência eletro-óptica descreve como ligar valores digitais, referidos como níveis de código ou valores de código, em luz visível. O processo inverso da transformada eletro-óptica é a eletro-transformação óptica (OETF), que produz níveis de código a partir da luminância.
[00126] A Figura 5 ilustra exemplos de curvas de luminância produzidas por funções de transferência definidas por vários padrões. Cada curva mostra um valor de luminância em diferentes níveis de códigos. A Figura 5 ilustra também uma faixa dinâmica habilitada por cada função de transferência. Em outros exemplos, as curvas podem ser tiradas separadamente para componentes de cor
Petição 870190048209, de 23/05/2019, pág. 74/202
57/156 vermelha (R), verde (G) e azul (B).
[00127] Uma função de transferência eletroóptica de referência é especificada na BT1886. A função de transferência é dada pela seguinte equação:
[00128] Na equação acima:
[00129] L é a luminância da tela em cd/m2 [00130] LW É a luminância de tela para branco;
[00131] LB é a luminância da tela para preto [00132] V é o nível de sinal de vídeo de entrada (normalizado, tal que o preto ocorre em V = 0 e branco em que ocorre V = 1) . Para o provedor de conteúdo
Por BT.709, os valores de código digital De 10 bits D mapeiam D para valores de V para a seguinte equação: V = (D-64)/876;
[00133] γ é um expoente de função de potência, onde γ = 2,404 [00134] a é uma variável para o ganho do usuário (controle de contraste de legado), onde:
[00135] e b é uma variável para a elevação de nível de negro de usuário (controle de brilho de legado), onde:
[00136] As variáveis a e b acima podem ser derivadas resolvendo as seguintes equações, de modo que V =
Petição 870190048209, de 23/05/2019, pág. 75/202
58/156
L dá L = LW e Tal que V = 0 dá L = LB:
[00137]
ST 2084 proporciona uma função de transferência que pode suportar mais eficientemente um maior dados de faixa dinâmica mais eficientemente. A função de transferência da ST 2084 é aplicada aos valores de R, G que produz representações não e B lineares, normalizados
lineares, R', G' e B ' . A ST 2084 define ainda a
normalização de NORM = 10000, que é associada a um brilho
de pico de 10.000 nits. Os valo res R ’ , G ’ e B ’ podem ser
calculados como segue:
R'= RO TF (max (0, min (R/NORM,1)))
G' = PQ_TF (max (0, min (G/NORM,1)))
B'= PO TF (max (0, min (B/NORM,1,)))
[00138] Na Equação (1), a Função de
transferência, PQ TF, é definida como segue:
j,. rSjx*
.r J. s
MW 1 “ 40% 4 “ W5W1757Í
MM 28 ss 78-8437
wl-. 937.5
40%
A função de transferência eletro-óptica pode ser definida como uma função com uma precisão de ponto
Petição 870190048209, de 23/05/2019, pág. 76/202
59/156 flutuante. Com precisão de ponto flutuante, é possível evitar a introdução de erros em um sinal que incorpora a não linearidade da função quando uma função de transferência ótica é aplicada. Esta função de transferência inversa especificada pela ST 2048 é como segue:
R = 10000 * inversePQ_TF (R')
G = 10000 * inversePQ_TF (G') (2)
B = 10000 * inversePQ_TF (B') [00140] Na Equação (2), a função de transferência inversa, inversa, é definida como segue:
Figure BR112019010515A2_D0001
^52 í
- ——x W 3424
W íq ' «>> 4-1 as------------ —
2413 pj » x 32 ™ MSSlSfôS [00141] Outras funções de transferência e funções de transferência inversa foram definidas. Um sistema de codificação de video pode utilizar uma destas outras funções de transferência e funções de transferência inversa ao invés de ou além daquelas fornecidas pela ST 2084 .
[00142] A conversão de cor 406 pode reduzir o tamanho do espaço de cor da entrada RGB linear 402.
Petição 870190048209, de 23/05/2019, pág. 77/202
60/156
Sistemas de captura de imagem frequentemente capturam imagens como dados RGB. O espaço de cores RGB, entretanto, pode ter um alto grau de redundância entre componentes coloridos. RGB não é, portanto, ideal para a produção de uma representação compacta dos dados. Para obter uma representação mais compacta e mais robusta, os componentes RGB podem ser convertidos em um espaço de cor mais não correlacionado, tal como Ybcr, que pode ser mais adequado para a compressão. O espaço de cor alvo produzido pela conversão de cor 406 pode separar o brilho, representado pela luminância, e informações de cor em diferentes componentes não correlacionados.
[00143] O espaço de cor YCbCr é um espaço de cor alvo usado por BT709 BT.709 provê a conversão seguinte para o espaço R' não linear, G' e B' para uma representação de luminância não constante, Y', Cb e Cr:
Figure BR112019010515A2_D0002
[00144] A conversão fornecida pela Equação (3) também pode ser implementada utilizando a seguinte conversão aproximada, que evita a divisão dos componentes Cb e Cr:
¥’ - 0.312000 * M' v * G’ r Ô.072300 * o - < i i4to * * G! t o.»oo» * b
Cr ~ S JOBW * R* -O.4S4I53 * G* - 0.04 W7 * B’ [00145] Ο BT.2020 especifica o processo de
Conversão a seguir de R', G' e B' para Y, Cb e Cr:
Petição 870190048209, de 23/05/2019, pág. 78/202
61/156 ¥’ ™ D.2O7 * R5 r Ô.O * <F 4 0.0593 * B’ [00146] A conversão fornecida pela Equação (5) também pode ser implementada utilizando a seguinte conversão aproximada, que evita a divisão dos componentes
Cb e Cr:
¥* «= 9,262760 ® R’ 4- Q..67W0 * G:: 4 9,959300 *
Cb 4), 139639 * R.’ “ 9/360370 s O’ 4 (1,300090 * B
O·» ô Jòòwà * R* - (UW86 CF - 0,040214 * [00147] Após a conversão de cor 406, os dados de entrada, agora no espaço de cor alvo, pode ainda ser representada com uma profundidade de alto bit (por exemplo, com precisão de ponto flutuante). A quantificação 408 pode converter os dados em uma profundidade de bits alvo. Em alguns exemplos, a precisão de 10 bits para 12 bits, em combinação com a função de transferência PQ, pode ser suficiente para os dados HDR 410 terem 16 f-paradas com uma distorção que está logo abaixo do que é notável pela visão humana. Dados HDR 410 com precisão de 10 bits podem ser também codificados pela maioria dos sistemas de codificação de video. A quantificação 408 é com perdas, significando que algumas informações são perdidas, e pode ser uma fonte de inexatidão nos dados HDR 410 emitidos pelo processo 400.
[00148] As seguintes equações proporcionam um exemplo de quantificação 408 que pode ser aplicada a palavras de código no espaço de cor alvo. Por exemplo, valores de entrada para Y, Cb e Cr que possuem precisão de ponto flutuante podem ser convertidos em valores de
Petição 870190048209, de 23/05/2019, pág. 79/202
62/156 profundidade de bits fixos BitDepthy para o valor Y e BitDepthC para os valores de croma (Cb e Cr).
Um exemplo de tal quantificação pode ser aplicado a palavras de código no espaço de cor alvo, tal como Ybcr como mostrado no exemplo a seguir. Por exemplo, os valores de entrada Ybcr representados em precisão de ponto flutuante são convertidos em um sinal de bit fixo Bits de profundidade para o Valor Y e bits de bits Para os valores de Croma (Cb, Cr).
-8)) * (219 4 lí))) ** (fesasl {(1.« ™ S)) * (124 * Cb + w)) Ó)
Do, Clipl-c ((1 - Ο φ (224 * Cr 4-128))) [00149] Acima:
Round(x) = Sign(x) * Floor(Abs(x) + 0,5 )
Sign (x) = -1 se x < 0, 0 se x=0,l se x > 0
Floor (x) para o maior inteiro menor que ou igual a x
Abs (x) = x se x>=0, -x se x<0
CliplY(x) = Clip3(0,(1 « BitDepthY)- 1, x)
CliplC (x) = Clip3(0, (1« BitDepthC )-l, x)
Clip3 (x,y,z) = x se z<y, y se z>y, z de outra forma [00150] Os dados HDR 410 produzidos pelo processo exemplar 400 podem ser comprimidos ou codificados por um codificador, por exemplo, utilizando os padrões AVC HEVC, ou VP8/VP9/VP10, para produzir um fluxo de bits codificado. Um fluxo de bits pode ser armazenado e/ou transmitido. O fluxo de bits pode ser descomprimido ou decodificado por um decodificador para produzir um sinal de
Petição 870190048209, de 23/05/2019, pág. 80/202
63/156 video não comprimido.
[00151] O sinal de video não comprimido pode ser transmitido a um dispositivo de consumo final utilizando, por exemplo, uma interface digital de alta velocidade. Exemplos de dispositivos eletrônicos de consumidor e meios de transmissão incluem televisões digitais, cabo digital, caixas montadas por satélite ou terrestres, dispositivos móveis e dispositivos periféricos relacionados, tais como Discos Versáteis digitais (DVD) jogadores e/ou gravadores, e outros dispositivos de decodificação relacionados e dispositivos de consumidor.
[00152] Protocolos, requisitos e recomendações para interfaces digitais de alta velocidade são definidos em especificações produzidas pelo Subcomite de televisão digital (DTV) da associação Eletrônica de Consumidor (CTA), Tal como CTA -861. Exemplos de Protocolos, requisitos, e recomendações definidas por CTA -861 incluem formatos de video e formas de onda; colorimetria e quantização; transporte de dados de video compactados e não comprimidos, bem como áudio de Modulação de Código de Pulso Linear (LPCM) ; transporte de dados auxiliares; e implementações da Associação de Padrões Eletrônicos de Video (VESA) Padrão de dados de Identificação de exibição Estendido Melhorado (EEDID), que é usado por dispositivos de consumidor para declarar capacidades E características de exibição.
[00153] A versão CTA 861-G da especificação de CTA -861 inclui uma Estrutura de dados de InfoFrame estendida, que pode transportar quantidades maiores de metadados dinâmicos. A dinâmica, neste contexto, significa que os dados podem variar temporalmente, isto é, ao longo
Petição 870190048209, de 23/05/2019, pág. 81/202
64/156 do tempo. Os dados transportados na estrutura de dados de InfoFrame estendida podem ser utilizados por um dispositivo final, tal como um visor, televisão ou outro dispositivo que pode processar um sinal de video, tal como um decodificador ou receptor. Os dados podem ser utilizados, por exemplo, para processamento inteligente, mapeamento guiado, adaptação de exibição, e transformação de volume de cor aplicável ao dispositivo final. Um InfoFrame estendido pode ter um tipo que é especificado por um número de 2 bytes. Quando o valor do tipo InfoFrame estendido é ajustado para 0x0001, 0x0002, 0x0003, ou 0x0004, o InfoFrame Estendido porta metadados HDR Dinâmicos. O InfoFrame de metadados Dinâmicos de HDR Contém o INT Metadado Dinâmico HDR que pode ser codificado em Informações Suplementares de Ampliação (SEI) mensagens em um fluxo de bits codificado. Mensagens SEI podem ser usadas em Fluxos AVC, HEVC e VP8/VP9/VP10, bem como fluxos de bits produzidos de acordo com outros padrões.
[00154] Um decodificador pode suportar A transmissão de certos tipos de Infoquadros estendidos com Metadados Dinâmicos HDR. O decodificador pode adicionalmente determinar se um dispositivo final alvo é capaz de receber os Metadados Dinâmicos De Metadados Dinâmicos HDR, e, se assim, pode enviar os Infoquadros com video associado codificado de acordo com o tipo de infoquadros. Em alguns exemplos, um decodificador não enviará um InfoFrame estendido por Metadados Dinâmicos HDR Que É de tipo 0x0001, 0x0002, 0x0003, ou 0x004 para um dispositivo final que não indica suporte para esse tipo de InfoFrame estendido. O dispositivo final pode, por exemplo,
Petição 870190048209, de 23/05/2019, pág. 82/202
65/156 utilização de Um Bloco de Dados de Metadados Dinâmicos HDR para indicar os tipos de Metadados Dinâmicos de HDR Estendidos para Os suportes de dispositivo de extremidade.
[00155] Comunicação entre um dispositivo final e um decodificador pode ser conduzida utilizando dados de Identificação de Exibição Estendidos (EDID). EDID é uma estrutura de dados fornecida por um dispositivo final para descrever as capacidades do dispositivo final. Por exemplo, o EDID pode descrever formatos de video que o dispositivo final é capaz de receber e renderizar. Um dispositivo de extremidade pode fornecer o EDID a um decodificador no pedido do decodificador. O decodificador pode selecionar um formato de saida com base na informação fornecida pelo EDID, levando em conta o formato de um fluxo de bits de entrada e formatos suportados pelo dispositivo final.
[00156] Em vários exemplos, vários blocos de dados podem ser usados para especificar parâmetros que descrevem as capacidades de exibição de um dispositivo final. Exemplos de tais blocos de dados incluem um bloco de Dados de colorimetria, um Bloco de Metadados Estáticos HDR, Um Bloco de dados de Metadados Dinâmicos HDR, além de outros blocos de dados. O bloco de Dados de colorimetria pode indicar padrões de colorimetria e padrões de gama de cores, tal como BT.2020 ou DCI-P3, suportado por um dispositivo final. O Bloco de Dados HDR indica as capacidades HDR do dispositivo final através de parâmetros tais como parâmetros que descrevem características da EOTF da tela (por exemplo, BT.1886, ST 2084, ou outros), parâmetros que descrevem uma faixa dinâmica desejada (por exemplo, uma luminância mínima e/ou máxima desejada) e/ou
Petição 870190048209, de 23/05/2019, pág. 83/202
66/156 parâmetros que descrevem uma luminância máxima média desejada para a renderização ótima de conteúdo no visor. Bloco de Dados de Metadados Dinâmicos HDR indica tipo e versão do tipo de Metadados Dinâmicos de HDR suportado.
[00157] Como notado acima, o SMTPE ST 2094 especifica quatro transformadas de volume de cor diferentes, cada uma publicada em um documento separado. Estes documentos são designados ST 2094-10, ST 2094-20, ST 2094-30 e ST 2094-40.
[00158] ST 2094-10 descreve metadado de HDR dinâmica, onde dinâmica pode significar que a transformada de volume de cor pode depender do conteúdo de vídeo. Por exemplo, a ST 2094-10 define uma função paramétrica de mapeamento de tons. O ST 2094-10 especifica ainda que o mapeamento de tons pode ser executado em vários espaços de cores, incluindo Cbcr, RGB e espaços de cor com base no sistema visual humano. A ST 2094-10 também provê uma descrição matemática de uma transformada de volume de cores exemplar da Entrada RGB.
[00159] A Figura 6 ilustra um exemplo de blocos de processamento 610 que podem ser usados em implementações de ST 2094-10. Os blocos de processamento 610 são ilustrados dentro de uma estrutura para um modelo de transformada de volume de cor generalizada provido por ST 2094-1. Nesta estrutura, uma imagem 602, que pode ser um quadro de vídeo ou uma parte de um quadro de vídeo, pode ser submetida a uma conversão de entrada 604, se necessário. A conversão de entrada 604 pode converter o espaço de cor da imagem 602 em um espaço de cores de entrada. Após os blocos de processamento 610 terem operado
Petição 870190048209, de 23/05/2019, pág. 84/202
67/156 na imagem, uma conversão de saída 606 pode ser aplicada, caso necessário, para converter o espaço de cor da imagem num espaço de cores de saída. O resultado do processo global é uma imagem transformada 608.
[00160] Os blocos de processo 610 de implementações ST 2094-10 incluem um bloco de mapeamento de tons 612, um bloco de ajuste de gama de cores 614, um bloco de gerenciamento de detalhamento 616.
[00161] Os parâmetros e os blocos de processo de operação 610 podem ser descritos como segue; na descrição que se segue, PQ significa quantizador perceptual:
[00162] Mapeamento de tons com Base no MaxRGB:
[00163] Para mapeamento de Tons com Base em maxRGB, os seguintes parâmetros são definidos:
[00164] MinimumPqencodedMaxrgb - Mínimo valor maxRGB codificado por PQ do conjunto de pixels reduzido [00165] AveragePqencodedMaxrgb - a média dos valores maxRGB codificados PQ do conjunto de pixels reduzidos [00166] MaximumPqencodedMaxrgb - Máximo valor maxRGB codificado por PQ do conjunto de pixels reduzido [00167] MinimumPqencodedMaxrgbOffset - um deslocamento na mesma unidade que Minimumpqcodificdedmaxrgb a ser adicionado ao valor Mínimo de maxqpsmaxrgb [00168] AveragePqencodedMaxrgbOffset - um deslocamento na mesma unidade AveragePqencodedMaxrgb a ser adicionado ao valor AveragePqencodedMaxrgb [00169] MaximumPqencodedMaxrgbOffset - um deslocamento máximo na mesma unidade
Petição 870190048209, de 23/05/2019, pág. 85/202
68/156
Maximumpqcodificdedmaxrgb a ser adicionado ao valor
MaximumPqencodedMaxrgb [00170] Mapeamento de Tons baseados em Ganho, deslocamento e Gama [00171] A equação 8 abaixo define uma função de mapeamento de tons para o mapeamento de tons com base em Ganho, Ganho e Gama:
Y = (min (max (0, (x x g) +0)) P (8) [00172] Na Equação 8, y = valor de saida; x = valor de entrada; g = valor de Ganho de Mapeamento de Tons; 0 = valor de Offset de Mapeamento de Tons; e P = valor de Mapeamento de Tons Gamma.
[00173] Os seguintes parâmetros HDR podem ser sinalizados (por exemplo, providos e/ou codificados em um fluxo de bits) para utilização na equação 8:
[00174] ToneMappingOffset - o deslocamento de mapeamento de tons utilizado na equação (8).
[00175] ToneMappingGain - ganho de mapeamento de tons utilizado na equação (8).
[00176] ToneMappingGamma - o mapeamento de tons gama utilizado na equação (8).
[00177] Os seguintes parâmetros são também definidos em ST 2094-10:
[00178] ChromaCompensationWeight é uma
quantidade de ajuste de croma
[00179] SaturationGain é uma quantidade de
ajuste de saturação
[00180] ToneDetailFactor é um parâmetro que
controla a contribuição da função de gestão de detalhes para o resultado do mapeamento de tons
Petição 870190048209, de 23/05/2019, pág. 86/202
69/156 [00181] As seguintes restrições são também definidas por ST 2094-10. ST 2094-10 especifica o escopo de Metadados HDR como tal que os metadados devem conter exatamente um de cada um dos seguintes:
[00182] Informação de Timelnterval definida
através de parâmetros especificados Em ST 2094-1; inclui :
[00183] TimeIntervalStart
[00184] TimeltervalDuration
[00185] Processingwindow Informação definida
através de parâmetros Especificados em ST 2094-1; inclui:
[00186] UpperLeftCorner
[00187] LowerRightCorner
[00188] WindowNumber
[00189] TargetedSystemDisplay informação
definida Através de parâmetros especificados em ST 2094-1;
inclui:
[00190] TargetedSYstemDisplayPrimaries
[00191] TargetedSystemDisplayWhitePointChromati
city
[00192] TargetedSYstemDisplayMaximumLuminance
[00193] TargetedSYstemDisplayMinimumLuminance
[00194] Parâmetros de transformação de volume
de cor:
[00195] ImageCharacteristicsLayer, que deve
conter exatamente um de cada um dos itens nomeados a
seguir:
[00196] MinimumPqencodedMaxrgb
[00197] AveragePqencodedMaxrgb
[00198] MaximumPqencodedMaxrgb
[00199] ManualAdjustementLayer, que pode conter
Petição 870190048209, de 23/05/2019, pág. 87/202
70/156 qualquer combinação tendo zero ou um de cada um dos itens nomeados a seguir:
[00200] MinimumPqencodedMaxrgbOffset [00201] AveragePqencodedMaxrgbOffset [00202] MaximumPqencodedMaxrgbOffset [00203] ToneMappingOffset [00204] ToneMappingGain [00205] ToneMappingGamma [00206] ChroaCompensationWeight [00207] SaturationGain [00208] ToneDetailFactor [00209] ST 2094-10 define um conjunto de Parâmetros HDR que podem ser usados para transformadas de volume de cor. O padrão também provê exemplos de informação que ilustram como os parâmetros HDR podem ser usados. No entanto, o conjunto ST 2094 de padrões, não define a maneira pela qual os parâmetros devem ser sinalizados (por exemplo, fornecidos em um fluxo de bits codificado). Organizações de Desenvolvimento de padrões (SDOs), tal como o Instituto Europeu De normas de telecomunicações (ETSI) espera-se que CTA, e MPEG desenvolvam padrões para transmissão de parâmetros HDR Em um fluxo de bits codificado. Por exemplo, o CTA-861-G é um padrão que especifica um formato para transmissão de metadados dinâmicos de HDR definidos em ST 2094 sobre interfaces de áudio/video digital.
[00210] Em fluxos HEVC e AVC, entre outros, os parâmetros HDR podem ser providos Utilizando mensagens SEI. Um formato para A codificação dos parâmetros definidos pela ST 2094-20 em Mensagens SEI é definido, por exemplo, na
Petição 870190048209, de 23/05/2019, pág. 88/202
71/156
Especificação Técnica ETSI 103 433. Os parâmetros definidos por ST 2094-30 podem ser codificados, por exemplo, na
Informação de Remapeamento de Cores SEI De HEVC ou AVC.
[00211] Um exemplo de uma mensagem SEI para
sinalizar os parâmetros definidos por ST 2094-10 em HEVC
foi proposto para ser adicionado à equipe Colaborativa
Conjunta Na codificação de video (JCTVC) JCTVC-X004, mas
esta proposta não foi adotada.
[00212] Para sistemas específicos, corpos de padrões tais como Advanced Television systems Committee (ATSC) e Radiodifusão de video Digital (DVB) pode definir um formato para a sinalização ST 2094-10 parâmetros. Por exemplo, os parâmetros podem ser codificados em mensagens SEI registradas de dados de usuário que podem ser adicionadas a um fluxo de bits codificado. Tais mensagens SEI podem ser otimizadas para o Sistema de video HDR para o qual os corpos padrões proporcionam especificações. Além disso, as mensagens SEI podem ser definidas de tal forma que as Mensagens SEI definem de forma não ambígua uma implementação para os parâmetros ST 2094-10 para um sistema de vídeo HDR específico.
[00213] São fornecidos sistemas e métodos para um Mecanismo padronizado para a codificação de metadados ST 2094-10 em fluxos de bits codificados. As técnicas descritas abaixo podem fornecer uma definição não ambígua para receber e analisar ST 2094-10 em um sistema de vídeo HDR. As técnicas também podem reduzir a complexidade de implementação de receptores. As técnicas incluem sinalização de espaço de cor e informações que podem ser utilizadas para conversão de espaço de cor, restringir o
Petição 870190048209, de 23/05/2019, pág. 89/202
72/156 número de elementos de processamento do ST 2094 que seria utilizado por um sistema de vídeo HDR, o uso de restrições de valores reservados ST 2094-10 que seriam utilizados, restringindo a sinalização obrigatória de informações suplementares, capacidades de exibição alvo de sinalização tal como gama de cores e luminância mínima, codificação e comprimento de bloco (por exemplo, o campo que indica o comprimento do bloco de metadados) com codificação de comprimento fixo, e especificação de associações entre elementos de processamento de ST 2094 que seria utilizado pelo sistema de vídeo HDR, entre outras coisas.
[00214] Estas técnicas proporcionam um mecanismo de sinalização padronizado onde nenhum é definido por ST 2094-10. Estas técnicas também podem definir um sistema de vídeo completo por espaços de enchimento não definidos por ST 2094-10, tal é a maneira pela qual os parâmetros HDR devem ser usados, uma descrição da entrada, e uma transformada de volume de cor de saída para uso, entre outras coisas. A incorporação de elementos de ST 2094-10 em Mensagens SEI é descrita, bem como restrições sobre o uso destes elementos.
[00215] Em um primeiro exemplo, o espaço de cor e a conversão podem ser sinalizados para um sistema de vídeo HDR Que implementa ST 2094-10. Como discutido acima, ST 2094-10 define metadados que podem indicar o espaço de cor de um sinal de vídeo de entrada e metadados que podem ser usados para converter o espaço de cor de entrada para outro espaço de cor. Exemplos de espaços de cor de entrada e de trabalho podem incluir Ybcr e ICtCp (onde I é o componente luma e Ct Ct e Cp são os componentes de croma
Petição 870190048209, de 23/05/2019, pág. 90/202
73/156 vermelho-amarelo e vermelho-verde, respectivamente) , que é definido pela Recomendação ITU-T BT.2100 Em alguns exemplos, matrizes exatas de transformadas de cores para conversão de um espaço de cor de entrada para um espaço de cor de trabalho, e para conversão do espaço de cor de trabalho para um espaço de cores de saída. Nestes exemplos, o espaço de cor de trabalho é um no qual uma função de mapeamento de tons pode ser aplicada.
[00216] Em alguns exemplos, um decodificador ou receptor de um sistema de vídeo HDR pode selecionar matriz de transformada de cores dentre conjuntos de matrizes providas em um fluxo de bits codificado. O decodificador pode, por exemplo, utilizar os valores da Informação de usabilidade de video HEVC (VUI) parâmetros, cores_primários e/ou coefs de matriz, para selecionar uma matriz de transformada de cores.
[00217] Em alguns exemplos, as restrições podem ser definidas para os parâmetros das matrizes de transformada de cores. Estas restrições podem simplificar a implementação de receptores. Por exemplo, as entradas de uma matriz de transformada de cores podem ser limitadas aos valores definidos pelos espaços de cor Ybcr ou ICtCp.
[00218] Em alguns exemplos, um flag pode ser usado para indicar se uma transformada de cores em particular e quaisquer desvios relacionados estão presentes em um fluxo de bits. Por exemplo, um indicador chamado RGBtoLMS_coef_present_flag pode indicar se os Parâmetros de Conversão de espaço de cor RGB para LMS estão disponíveis no fluxo de bits (LMS é um espaço de cores que representa a resposta dos três tipos de cones do olho
Petição 870190048209, de 23/05/2019, pág. 91/202
74/156 humano, e é nomeado para os picos de responsividade ou sensibilidade em comprimentos de onda longos, médios e curtos). Como um outro exemplo, um indicador denominado Yctorgb_coef_present_flag pode indicar se o fluxo de bits inclui parâmetros que podem ser usados para executar uma conversão de cor YCbCr para RGB. Em alguns casos, um valor de 1 para qualquer um desses flags pode indicar que os parâmetros de conversão de cor e quaisquer desvios relacionados estão presentes e um valor de 0 pode indicar que os parâmetros da versão da cor não estão disponíveis no fluxo de bits.
[00219] Em alguns exemplos, quando os parâmetros de transformação de cor não estão presentes, os valores dos coeficientes são inferidos como aqueles da matriz de identidade. Em alguns exemplos, quando os parâmetros de transformação de cor não estão presentes, os valores dos parâmetros são inferidos como zero. Em alguns exemplos, são possíveis outros valores padrão para os parâmetros e desvios de transformada de cores.
[00220] Em um segundo exemplo, o número de elementos de processamento de ST 2094-10 que são utilizados por um sistema de vídeo HDR pode ser restrito. Restringir o número de elementos de processamento pode tanto fornecer uma definição não ambígua para receber e analisar os parâmetros ST 2094-10, e simplificar a implementação de um receptor HDR. Por exemplo, o ST 2094-10 não especifica um número de blocos estendidos que podem ser incluídos em um fluxo de bits, onde blocos estendidos podem incluir elementos de processamento. Tendo um número indefinido de blocos estendidos pode significar que a quantidade de
Petição 870190048209, de 23/05/2019, pág. 92/202
75/156 memória que um decodificador precisa armazenar os blocos, e a quantidade de recursos de processamento necessárias para processar os blocos pode ser desconhecida. Assim, em vários exemplos, o número de blocos estendidos pode ser restrito, de modo que os decodificadores possam determinar a memória e os recursos de processamento necessários para o processamento dos blocos. Elementos de processamento ST 2094-10 podem incluir fragmentos de imagem processados, janelas de processamento, elementos de descrição de conteúdo, elementos de descrição de tela alvo e modelos de mapeamento de tons, entre outras coisas. Os exemplos que se seguem podem ser usados individualmente ou em qualquer combinação adequada.
[00221] Fragmentos de imagem processados e janelas de processamento (referidos como Processwindow por ST 2094) descrevem partes de um visor. Por exemplo, uma tela pode incluir múltiplas janelas, possivelmente sobrepostas, em que cada janela pode exibir um diferente sinal de vídeo. Um exemplo de janelas múltiplas na mesma tela é imagem em imagem, onde uma janela inserida no visor pode incluir um sinal de vídeo diferente do que o sinal de vídeo sendo emitido para a parte principal do visor. Em alguns exemplos, o número de fragmentos de imagem processados e janelas de processamento em um sinal de vídeo é limitado a um número fixo menor que 254. Por exemplo, o número pode ser estabelecido igual a um valor de 1 a 16. Conforme provido pela ST 2094, campo de ext_block_level para fragmentos de imagem processados e janelas de processamento é ajustado em 5. De acordo com a restrição do número de fragmentos de imagem processadas e das janelas de
Petição 870190048209, de 23/05/2019, pág. 93/202
76/156 processamento, como um outro exemplo, o número de blocos de extensão com um ext_block_level igual a 5 pode ser restrito a um.
[00222] Elementos de descrição de conteúdo (referidos como Imagecharcoccamada por ST 2094) podem fornecer informação sobre um sinal de vídeo particular. Em alguns exemplos, o número de elementos de descrição de conteúdo é estabelecido igual a 1. blocos de elementos de descrição de conteúdo têm um valor de ext_block_level de 1. Em alguns exemplos, o número de blocos de extensão com ext_block_level igual a 1 pode ser restrito a um.
[00223] Elementos de descrição de tela alvo (referidos por ST 2094 como TargetedSystemDisplay) pode fornecer informações sobre um dispositivo de exibição que um sinal de vídeo pode ser exibido. Em alguns exemplos, o número de elementos de descrição de visualização alvo é um valor na faixa de 1 a 16. blocos de Extensão para elementos de descrição de exibição alvo têm um valor de ext_block_level de 2 em alguns exemplos, o número de blocos de extensão com um ext_block_level igual a 2 pode ser restrito a menos do que ou igual a 16.
[00224] Modelos de mapeamento de tons podem ser usados para mapear um conjunto de cores para um segundo conjunto de cores. Por exemplo, o segundo conjunto de cores pode aproximar a aparência das imagens HDR em um sistema que tem uma faixa dinâmica mais limitada. Em alguns exemplos, para um sistema HDR que implementa ST 2094-10, o número de modelos de mapeamento de tons (referido como ColorVolumeTransform in ST 2094) é um valor de 1 a 16.
[00225] Em alguns exemplos, o número de
Petição 870190048209, de 23/05/2019, pág. 94/202
77/156 mensagens SEI sinalizando ST 2094-10 informação relacionada pode não exceder dois para cada quadro codificado ou unidade de acesso. Em alguns exemplos, cada unidade de acesso terá uma mensagem SEI associada com Metadados ST 2094-10. Em alguns exemplos, quando tal mensagem SEI está
presente, haverá apenas uma unidade por acesso
[00226] Em um terceiro i exemplo, o uso de
valores que são reservados em ST 2094-10 é restrito . A
limitação do uso de valores reservados pode garantir que
nenhuma informação não especificada ou não autorizada seja incluída em um fluxo de bits.
[00227] Em alguns exemplos, os fluxos de bits que obedecem a versão corrente da ST 2094-10 não devem incluir valores reservados. Por exemplo, para blocos de extensão, alguns valores para o ext_block_level são reservados para utilização pelo ATSC. Nesses exemplos, estes valores reservados não podem ser usados em um sistema de video HDR que implementa ST 2094-10. Alternativamente, em alguns exemplos, blocos de extensão que utilizam um valor reservado para o ext_block_level serão ignorados por um decodificador.
[00228] Em alguns exemplos, um decodificador descartará mensagens ST 2094-10 SEI que contêm valores reservados. Em alguns casos, quando um valor de ext_block_level para mensagens SEI é um valor diferente de 1, 2 ou 5, a mensagem SEI deve ser descartada. Em alguns casos, quando um valor de ext_block_level é igual a um valor reservado, a mensagem SEI deve ser descartada. Tais exemplos podem impedir um furo, no qual dados arbitrários de qualquer tamanho podem ser inseridos na mensagem SEI.
Petição 870190048209, de 23/05/2019, pág. 95/202
78/156
[00229] Em alguns exemplos, valores de
ext_block_level diferentes de 1, 2 ou 5 são reservados para
utilização futura por ATSC.
[00230] Em alguns exemplos, valores de
ext_block_level que não 1, 2, ou 5 não são permitidos a serem utilizados em sistema baseado no padrão ATSC.
[00231] Em um quarto exemplo, as restrições podem ser colocadas na sinalização obrigatória de informações suplementares. A especificação ATSC provê uma caixa de ferramentas que pode ser utilizada para sinalizar informação sobre um sinal de vídeo. Esta caixa de ferramentas permite que um fluxo de bits codifique funções de transferência múltiplas, incluindo as funções de transferência definidas por BR.709, BT.2020 e sistema Híbrido Gama (HPG) entre outros. Restringir o número de combinações, entretanto, pode simplificar a implementação de um decodificador. Em alguns exemplos, mensagens SEI com um valor de 4 para o payloadType pode ser usado para transmitir as características de diferentes funções de transferência.
[00232] Em alguns exemplos, uma mensagem ST 2094-10 SEI não estará presente quando o elemento de sintaxe de características de transferência no HEVC VUI não é igual a 16 (para a Função de transferência PQ da ST 2084) .
[00233] Em alguns exemplos, a mensagem ST 209410 SEI não estará presente quando o elemento de sintaxe de características de transferência 23T no HEVC VUI não é igual a 16 (para a Função de transferência PQ da ST2084) ou 18 (para a função de transferência de HPG).
Petição 870190048209, de 23/05/2019, pág. 96/202
79/156 [00234] Em alguns exemplos, uma mensagem SEI com metadados de volume de cor de exibição mestre, conforme definido por ST 2086, deve ser incluída em um fluxo de bits que tem uma mensagem SEI com Parâmetros ST 2094. Nesses exemplos, os elementos de sintaxe na mensagem ST 2094-10 SEI que transportam a mesma informação que a mensagem SEI para ST 2086 pode ser removida da Mensagem SEI Para os parâmetros ST 2094-10. Nestes exemplos, a informação correspondente necessária para derivar o processamento de quadro ST 2094-10 pode ser extraída da mensagem ST 2086 SEI.
[00235] Em alguns exemplos, quando uma mensagem ST 2086 SEI está presente no fluxo de bits, os elementos de sintaxe que são comuns entre ST 2086 e ST 2094-10 não são sinalizados na mensagem SEI Para ST 2094-10. Em vez disso, os elementos de sintaxe ST 2094-10 podem ser inferidos como os mesmos que os elementos de sintaxe correspondentes na mensagem ST 2086 SEI.
[00236] Em alguns exemplos, um indicador (chamado, por exemplo, st2086_info_present_flag ) pode
ser usada para indicar se os elementos de sintaxe que são
comuns entre ST 2086 e ST 2094-10 são sinalizados na
mensagem SEI Para ST 2094-10.
[00237] Em alguns exemplos, elementos de
sintaxe ST 2086 são incluídos na mensagem SEI para ST 209410. Nestes exemplos, para bits de bits ou unidades de acesso com uma Mensagem ST 2094-10 SEI presente, as mensagens ST 2086 SEI não são permitidas.
[00238] Em alguns exemplos, quando a informação de exibição de matriz é mensagem ST 2086 SEI conflita com
Petição 870190048209, de 23/05/2019, pág. 97/202
80/156 informação de exibição em uma mensagem ST 2094-10 SEI, a informação ST 2094-10 tem precedência para o processamento de um quadro.
[00239] Em um quinto exemplo, as capacidades de exibição alvo, tal como a gama de cores e uma luminância minima podem ser sinalizadas ou indicadas em um fluxo de bits. As capacidades de exibição alvo podem indicar requisitos minimos para um dispositivo de exibição a ser capaz de exibir um sinal de video codificado em um fluxo de bits.
[00240] Em alguns exemplos, um bloco de extensão que tem um valor de 2 para o ext_block_level pode incluir uma luminância minima de exibição alvo, primários alvos, e um ponto branco alvo.
[00241] Em alguns exemplos, um tipo de bloco adicional pode alternativamente ou adicionalmente ser adicionado. Os blocos de extensão com este tipo podem conter os primários, o ponto branco e a luminância minima do visor alvo. Por exemplo, um bloco de extensão com um
ext_block_ .level igual a 3, que seria de outra forma
reservado, poderia ser utilizado.
[00242] Em um sexto exemplo, o campo de
comprimento do bloco ext para blocos de extensão pode ser codificado utilizando um comprimento fixo. O campo de comprimento do bloco ext pode indicar o tamanho de um bloco de extensão. Por exemplo, quando o ext_block_level para um bloco de extensão é ajustado para 1, o comprimento de bloco ext correspondente pode ser ajustado para 5. Como um outro exemplo, quando o ext_block_level é ajustado para 2, o comprimento do bloco ext pode ser ajustado em 11. Como um
Petição 870190048209, de 23/05/2019, pág. 98/202
81/156 outro exemplo, quando o nivel do bloco ext é ajustado para 5, o comprimento do bloco ext pode ser igual a 7. Limitar o número de bits que podem ser utilizados para o comprimento do bloco ext pode simplificar a implementação de um decodificador.
[00243] Em alguns exemplos, o número de bits usados para codificar o comprimento de bloco do elemento de sintaxe 26T é escolhido para ser um múltiplo fixo de 8, ou outro múltiplo adequado.
[00244] Em alguns exemplos, a faixa de valores para o valor do comprimento do bloco ext é restringida a estar entre 0 e 255, inclusive [00245] Em alguns exemplos, uma restrição pode, em lugar disso, ou também ser colocada no número de vezes o elemento de sintaxe de alinhamento de zero de alinhamento de d dm é indicada em uma estrutura de dados ext_dm_data_block_load(). Por exemplo, o número de vezes que o elemento de sintaxe parece ser limitado a menos do que 7. A estrutura de dados ext_dm_data_block_payload() pode ser usada para indicar diferentes conjuntos de parâmetros. Por exemplo, quando o ext_block_level é igual a 1, o ext_dm_data_block_payload() a estrutura de dados pode fornecer valores de faixa de conteúdo, tais como valores minimo, máximo e Médio PQ. Como um outro exemplo, quando o ext_block_level é 2, o ext_dm_data_block_payload() podem incluir valores de corte, tais como inclinação, deslocamento, potência, peso de saturação e ganho de saturação, entre outras coisas. Como um outro exemplo, quando o ext_block_level é 5, o ext_dm_data_block_payload() pode descrever uma área ativa, também referida aqui como
Petição 870190048209, de 23/05/2019, pág. 99/202
82/156 uma região de exibição. 0 ext_dm_data_block_payload() também pode incluir um número de elementos ext_dm_data_block_payload(), que pode fixar o tamanho da estrutura de dados para um tamanho particular.
[00246] Em um sétimo exemplo, as associações entre Os elementos de processamento ST 2094 podem ser especificadas.
[00247] Como notado acima, o ext_dm_data_block_payload() a estrutura de dados pode fornecer informações relacionadas a parâmetros de mapeamento de gama de cores e parâmetros de cenário. Por exemplo, um ou mais estrutura de dados ext_dm_data_block_payload() podem incluir um conjunto de parâmetros de transformação de volume de cor, que pode ser utilizada por um decodificador ou receptor para transformar um sinal de vídeo em um que pode ser exibido por um dispositivo em particular. Em alguns exemplos, uma especificação pode ser fornecida para associar o sistema parâmetros de transformada de volume de cor em estruturas de dados ext_dm_data_block_payload()com regiões ativas em um visor. Em alguns exemplos, o vídeo que é exibido em um dispositivo pode ter mais de uma região de exibição, onde cada região pode emitir um sinal de vídeo diferente. Nesses exemplos, mais de um sinal de vídeo pode ser codificado em um fluxo de bits. Cada sinal de vídeo pode ser associado a um conjunto de parâmetros de transformação de volume de cor. Em alguns casos, dois sinais de vídeo podem ser associados ao mesmo conjunto de parâmetros de transformada de volume de cor. Várias técnicas podem ser usadas para determinar com qual região ativa um conjunto de parâmetros
Petição 870190048209, de 23/05/2019, pág. 100/202
83/156 de transformação de volume de cor é associado.
[00248] Em alguns exemplos, um índice pode ser usado para indicar uma associação entre um conjunto de parâmetros de volume de cor e uma região de exibição. Por exemplo, para cada ext_dm_data_block_payload() que não indica uma região de exibição à qual a informação na estrutura de dados se aplica (por exemplo, o nível do bloco ext é igual a 1 ou 2), o elemento de sintaxe pode ser usado para indicar uma associação. Por exemplo, uma mensagem SEI pode incluir um elemento de sintaxe na forma de uma lista de índices, onde a ordem dos índices corresponde à ordem na qual estrutura de dados ext_dm_data_block_payload() aparecem em um fluxo de bits. Neste exemplo, os valores de índice podem indicar uma ou mais regiões de exibição em que cada ext_dm_data_block_payload() está associada. Como um outro exemplo, as regiões de exibição ativas podem ser indicadas em uma mensagem SEI. Neste exemplo, um elemento de sintaxe na mensagem SEI pode indicar uma região de exibição ativa com a qual uma carga ext_dm_data_block_block é associada. Neste exemplo, as regiões de exibição ativas podem ser identificadas pela ordem na qual as regiões de exibição ativas são indicadas na mensagem SEI, ou cada região de exibição ativa pode ter um identificador.
[00249] Em alguns exemplos, a associação de parâmetros de transformação de volume de cor fornecido por estrutura de dados ext_dm_data_block_payload() com regiões de exibição podem ser baseadas na ordem na qual o ext_dm_data_block_payload() as regiões de dados e/ou exibição aparecem em um fluxo de bits. Por exemplo, restrições podem ser colocadas na ordem na qual diferentes
Petição 870190048209, de 23/05/2019, pág. 101/202
84/156 tipos de estrutura de dados ext_dm_data_block_payload() aparecem em um fluxo de bits. 0 tipo de um ext_dm_data_block_payload () pode ser indicado pelo elemento de sintaxe ext_block_level. Neste exemplo, a ordem na qual o ext_dm_data_block_payload () as estruturas de dados aparecem como uma região de exibição com a qual as estruturas de dados estão associadas.
[00250] Como um exemplo de restringir a ordem de estruturas de dados ext_dm_data_block_payload(), para qualquer valor de i na faixa de 0 a um bloco de blocos-1 (num_ext_blocks indica o número total de blocos de extensão) , onde ext_dm_data_block_load (i) indica parâmetros para mapeamento de gama de cores, caso exista qualquer valor j na faixa de 0 a num bloco-1, inclusive, ai que j é o menor número que é maior do que i para o qual ext_dm_data_block_load (j) contém informações sobre uma ou mais regiões ativas, e existe uma k que é maior que j tal como k é o menor número maior do que j para o qual ext_dm_data_block_load (k) indica parâmetros para mapeamento de gama de cores, então ext_dm_data_block_load (i) é associado a regiões indicadas por ext_dm_data_block_load (m) para m na faixa de j a k-1, inclusive. Alternativa ou adicionalmente, se existe qualquer valor j na faixa de 0 a num bloco-1, inclusive, tal que j é o menor número que é maior do que i para o qual ext_dm_data_block_load (j) contém informações sobre uma ou mais regiões ativas, e não existe valor de k que é maior do que j tal que ext_dm_data_block_load (k) indica parâmetros para mapeamento de gama de cores, então ext_dm_data_block_load (i) é associado a regiões indicadas
Petição 870190048209, de 23/05/2019, pág. 102/202
85/156 por ext_dm_data_block_load (m) para m na faixa de blocos de j a num-1, inclusive. Alternativa ou adicionalmente, ext_dm_data_block_load (i) aplica-se à imagem inteira.
[00251] Como um outro exemplo de restringir a ordem de estrutura de dados ext_dm_data_block_payload(), parâmetros para mapeamento de gama de cores podem incluir um ou mais elementos de sintaxe que não indique uma região para aplicação do mapeamento de gama de cores.
[00252] Em alguns exemplos, a associação de parâmetros de transformação de volume de cor com regiões de exibição pode ser baseada em associação de blocos. Por exemplo, um ext_dm_data_block_payload() pode ser incluído em um fluxo de bits que tem um valor ext_block_level em particular (por exemplo, 6 ou outro valor adequado), onde um bloco de extensão deste tipo pode indicar uma associação entre parâmetros de mapeamento de gama de cores, características de exibição alvo, informação de cena, e regiões ativas.
[00253] Como um exemplo, a estrutura de dados ext_dm_data_block_payload() pode sinalizar ou indicar um número de associações entre parâmetros de mapeamento de gama de cores, características de exibição alvo, informações de cena (coletivamente, parâmetros de transformada de volume de cor) e regiões ativas.
[00254] Como um outro exemplo, para cada associação, a estrutura de dados ext_dm_data_block_payload()pode incluir um ou mais valores que indicam o número de blocos usados para definir a associação. Neste exemplo, em alguns casos, o um ou mais valores para cada associação não é sinalizado
Petição 870190048209, de 23/05/2019, pág. 103/202
86/156 explicitamente e pode ser fixado para ser um valor preestabelecido. Alternativa ou adicionalmente, um elemento de sintaxe pode ser usado para indicar o modo de associação. Em tais exemplos, para cada modo, o um ou mais valores pode ser inferido ou o modo, ou pode ser sinalizado. Em tais exemplos, para cada modo, um ou mais blocos de valor particular pode ser especificado para ser especificado na associação. Alternativa ou adicionalmente, em alguns exemplos, para cada associação, um elemento de sintaxe pode sinalizar os indices correspondentes ao bloco que especifica a associação. Em tais exemplos, os indices podem corresponder ao indice doe estrutura de dados ext_dm_data_block_payload()como sinalizado na mensagem SEI. Em tais exemplos, os indices para um valor particular de ext_block_level, podem corresponder ao indice da estrutura de sintaxe ext_dm_data_block_payload daquele valor particular de ext_block_level como sinalizado na mensagem SEI.
[00255] Em alguns exemplos, informação de região explicita é enviada junto com cada conjunto de parâmetros de mapeamento de gama de cores, informação de cena e características de exibição alvo.
[00256] Em alguns exemplos, a informação de cena pode incluir um ou mais elementos de sintaxe que indicam a informação de luminância mínima, máxima, média da cena. Parâmetros de mapeamento de gama de cores podem incluir parâmetros de funções de mapeamento utilizados para fazer o mapeamento de gama de cores. As características de exibição alvo podem incluir características de exibição incluindo luminância mínima e máxima, cores primárias e um
Petição 870190048209, de 23/05/2019, pág. 104/202
87/156 ponto branco do visor. A informação de região pode incluir as coordenadas que indicam uma região (por exemplo quatro
coordenadas para uma região retangular) à qual um
subconjunto dos parâmetros é aplicável, um ou mais
identificadores associados à região, e um ou mais
parâmetros (descrevendo formas no domínio de coordenadas de
cores ou domínio espacial) para especificar ainda mais a sub-região da região onde o mapeamento deve ser aplicado.
[00257] Em alguns exemplos, os parâmetros de mapeamento de gama de cores podem ser usados para indicar todas as informações em uma estrutura de dados ext_dm_data_block_payload()que não está relacionada à sinalização de regiões (por exemplo, parâmetros de mapeamento de gama de cores, informação de cena e características de exibição alvo).
[00258] Um oitavo exemplo, sinalização de elementos de sintaxe adicionais e estrutura de sintaxe de modificação pode ser executada para permitir a possibilidade de extensibilidade futura utilizando valores reservados de ext_block_level. Isto pode incluir a sinalização de elemento de sintaxe ocupando um bit tantas vezes quanto existem bits no ext_dm_data_block_payload para valores de ext_block_level que são reservados na versão atual do relatório.
[00259] Em vários exemplos, um decodifreader ou receptor de um sistema de vídeo HDR pode executar verificações de conformidade em um fluxo de bits. Por exemplo, o decodificador ou receptor pode verificar se restrições e limitações, conforme descrito acima, foram aderidas. O decodificador pode executar uma verificação de
Petição 870190048209, de 23/05/2019, pág. 105/202
88/156 conformidade, por exemplo, em linha com a decodificação do fluxo de bits ou antes de começar a decodificar o fluxo de bits. Quando um fluxo de bits ou parte de um fluxo de bits falha na verificação de conformidade, o decodificador pode levar várias ações. Por exemplo, o decodificador pode ignorar uma estrutura de dados que falha em uma verificação de conformidade, e pode prosseguir com a decodificação do fluxo de bits após a estrutura de dados. Como um outro exemplo, o decodificador pode parar a decodificação do fluxo de bits a partir do ponto no qual o fluxo de bits falha na verificação de conformidade. Como um exemplo adicional, o decodificador pode rejeitar todo o fluxo de bits.
[00260] Diversas implementações exemplares dos métodos acima descritos serão agora descritas. As implementações de exemplo a seguir implementam um ou mais dos exemplos descritos acima. As implementações exemplares são ilustradas utilizando estruturas de sintaxe e semântica definidas por ATSC. As mudanças na estrutura de sintaxe e semântica são indicadas como se segue: [[texto dentro de colchetes duplos]] indica cancelamentos e texto sublinhado indica adições.
PRIMEIRO EXEMPLO [00261] Mudanças em estruturas de sintaxe:
Tabela E.2: ext_dm_data_block()1 __________________________________________________________________________________________________
I eM Week ienaSí i ] I íWWelífeO) [ êk Miloçk^o wl [ i | ] uík)
Ϊ eet drn block payloadí exí block lenuth[ i ]. |
Ϊ c^ block knel l U ) ί
Petição 870190048209, de 23/05/2019, pág. 106/202
89/156
Tabela E.3: ext dm_data_block_load (
ext dm data block^pavioad( ext block length, ext block levei .11....................................................'........................................................................................................ ext_block_len_bits — 8 * ext_b1ock_length ^t_bjock_usc_bjte^0 iff ext block levei ““ 1 j { Descriptor i ...............................1 ...............................-1
min PQ u(12) |
max PQ ii(12) |
avg PQ u(12) |
ext block use bits 36
______________________1______________________________________________________________________________________________________________________________________________ iff ext block level ~~ 2 ) f
laruet max PQ 11(12) |
turn slope u(12)
trim offset u(l2) |
trimjwwer trim chroma weight nd 2) 1 ΰ(Ϊ2)...............
trim saturation gain u( 12) |
ms weight *(13)
ext block use bits += 85
}
_________iff ext block, level 5 ) {____________________________________ active area left offset u(h) 1
active area right offset u(I3)
active area top offset u(l3)
__active area bottom, offset________________________ ext block, use bits += 52 u(l3)______|
|
iff ext block level == 6 ) f
num associations u(4) :
for( i == 0 i < num associations : i++· ) f
num blks in assoc! i 1 j
.......................................................forri.;“.CL;.j...51nuni_bl.ksy.a_ãssgc[.i.J.., i++)________________________________________________________________________________________________________________________________________________________ blk idx in assoc!i 1!i 1 y.í-íO i
ext block use bits +-= 8*
num blks in assoc! i 1 + 8
ext block use bits += 4
JÍJ.............................................................................................................................................. ...............................j
jffext block level::: ::: 1 |] ext block level = = 2 11
ext block level = = 5 II ext block level = = 6 )
while( ext ...block_useff>its+-+ < ext block len bits )
ext dm alignment zero bit ffn
else
wlti 1 e( ext block use bi ts++- <
ext block len bits )
ext dm data bit n( 1)
Petição 870190048209, de 23/05/2019, pág. 107/202
90/156
SEGUNDO EXEMPLO [00262] Mudanças em semântica:
[00263] Ext_block_length [i] é usado para derivar o tamanho da carga útil do bloco de metadados de DM estendido i-ésimo em bytes. Ext_block_length [i] não está presente se num_ext_blocks são iguais a 0.
O valor de ext_block_length deve estar na faixa de 0 a 255, inclusive.
[00264] Em uma alternativa, o elemento de sintaxe é codificado como ext_block_length_minusl e a semântica é especificada como segue:
[00265] Ext_block_length_minusl [i] mais 1 [ [é usado para derivar]] especifica o tamanho da carga útil do bloco de metadados de DM estendido i-ésimo em Bytes. [[Ext_block_length [i] não está presente se um bloco de ext é igual a 0. O valor do ext_block_length_minusldeve estar na faixa de 0 a 255, inclusive.
Tabela E.4: Definição de tipo de bloco de metadados de DM estendido
Nui i üp·? d? Li·?.:o de D?ví ey.emliici i ú | Reservadoi [ 2 | Metadados Nt¥e3 2 - Passagem de afiara[ ί 1 | Reservado[ i 4 | Reservadoi | S Metadados Nive 5 - Area afea| [ 6 [ Meradadas Nh eS 6 - A ssodagao _í ϊ Qb]_j7...255 ] Reservadoi [00266] num_associations especifica o número de associações especificadas em ext_dm_data_block_payload. O bloco de associação especifica a associação entre
Petição 870190048209, de 23/05/2019, pág. 108/202
91/156 características de exibição alvo, parâmetros de mapeamento de gama de cores e regiões ativas associadas aos parâmetros de mapeamento de gama de cores.
[00267] num_blocks_in_assoc[i] especifica o número de blocos que são especificados na i-ésima associação. O valor de num_block_in_assoc [i] deve estar na faixa de 0 a 255, inclusive.
[00268] blk_idx_in_assoc[i][j] especifica o
índice do i-ésimo bloco na i-ésima associação. 0 valor de
blk_idx. _in_assoc[i] [ ] ] deve estar na faixa de 0 a
num_ext _b locks - 1, inclusive.
[00269] É um requisito para conformidade de
corrente de bits que para cada bloco com índice k que tem valor ext_block_level igual a 1, 2 ou 5, deve ser pelo menos um valor de i na estrutura ext_dm_data_block_payload_syntax com ext_block_level igual a 6 tal que blk_idx_in_assoc [i] [i] é igual a k.
[00270] É um requisito para conformidade bicorrente que não deve haver mais de uma estrutura de sintaxe ext_dm_data_block_payload com ext_block_level igual a 6.
[00271] Ext_dm_data_bit pode ter qualquer valor. Sua presença e valor não afetam a conformidade do decodificador em perfis especificados nesta versão deste
Relatório descritivo. Decodificadores que se conformam a
esta ver são desta Especificação ignorarão todos os
elementos de sintaxe ext_dm_data_bit.
[00272] Em uma alternativa, a sintaxe de
alinhamento de bytes/à prova de futuro é especificada como segue:
Petição 870190048209, de 23/05/2019, pág. 109/202
92/156
Figure BR112019010515A2_D0003
TERCEIRO EXEMPLO [00273] Mudanças em elementos de sintaxe:
Tabela E.l: ST2094-10_data()
ST2O94-IÜ () f if( nuíR_extJtós ) I fodJ ...1 .P.í J
Petição 870190048209, de 23/05/2019, pág. 110/202
93/156
min PQ i u(12)
max PQ i u( 12)
i u(12)
to exOtakJeyei!!ss ! 1 ) (
uTtiie point x i u(I6)
white point y i ui to)
ht tn stope i 1.1(1»)
gjgjwg_________________________ trim chroma weight
tom saty,ration gain mü weight present Hay, __Uq> 1 u(D v.v.v.v.v.v.-^
ill ms weight present flag ::: :: : ! ) |
ms weight ........./ :/::: /: ......./::/:::/: 3: 3: /...... .. ::::::/............. :/ :/ : : /:////: :/ :/ :/ ::::: l ρ(Ϊ2)
to ext jrdcíckjrvel 2 } [ activ^^rea^sÜ^ixeí i li(13) i ti( 13)
active area top offset__________ active area bottom, oOW [00274] Mudanças em semântica:
Definição de tipo de bloco de metadados de mapeamento de exibição estendido
Petição 870190048209, de 23/05/2019, pág. 111/202
94/156
] ©xt btock lewl edição sáêüáda de aaapeasrâfc de tipo de bloco d? loetxkdos
Metadados Nivel Q - Faixa de coateudo
Metadados Nivel 1 - Passagem de apara
Metatfedos Nível 2 - Area Ativa
A.TSC Reservado
[00275] target—min_PQ especifica o valor mínimo de luminância de uma tela alvo em codificação PQ de 12 bits. O valor deve estar na faixa de 0 a 4095, inclusive. Se o target_min_PQ não estiver presente, deve ser inferido ser igual ao valor da fonte min PQ. O target_min_PQ é o valor codificado PQ da Luedetedsystepression, conforme definido na cláusula 10,4 de SMPTE ST 2094-lErro! Fonte de referência não encontrada. A codificação PQ de 10 Bits utiliza os bits mais significativos.
[00276] display_primaries_x [c] e display primaries y [c] especificar as coordenadas normalizadas de cromaticidade x e y, respectivamente, do componente primário de cor c do visor mestre em incrementos de 0,00002, de acordo com a definição CIE 1931 de x e y como especificado em ISO 11664-1 (veja também ISO 11664-3 e CIE 15) . Para descrever exibidores de matriz que utilizam cores de cor vermelha, verde e azul, sugere-se que o valor de índice c igual a 0 deve corresponder ao primário verde, c igual a 1 deve corresponder ao primário azul e c igual a 2 deve corresponder ao primário de cor vermelha (ver também Anexo E e Tabela E.3) . Os valores de display_primaries_x [c] e display_primaries_y [c] c] estará na faixa de 0 a 50.000, inclusive.
[00277] white_point_x e white point y especifica as coordenadas normalizadas de cromaticidade x e y, respectivamente, do ponto branco do visor mestre em
Petição 870190048209, de 23/05/2019, pág. 112/202
95/156 incrementos normalizados de 0,00002, de acordo com a definição CIE 1931 de x e y conforme especificado em ISO 11664-1 (veja também ISO 11664-3 e CIE 15) . Os valores do ponto branco x e branco_point_y devem estar na faixa de 0 a 50.000 .
QUARTO EXEMPLO [00278] Mudanças em elementos de sintaxe e etapas de semântica. Sintaxe para as matrizes é colocada em forma de laço, já que é uma representação mais compacta.
Tabela E.l: ST2094-10_type_data()
type data () 1 Descriptor
affected dm metadata id
current dm metadata id .MU..................
scene refresh UKÉV)
YÇÇtoRQB çç-ef present ilasi Ml
iff YCCtoRGB coef present flag ::::::: 1H
iotiiKK r'9. i-H-l
YCC'toRGB eoeili] ií lb)
· Li (Nil)( ( L L/Lll·
Y'CCtoRGB offset present fla^ u(p
ill YC€ioRGB..offset, present tlau.......1)[
Petição 870190048209, de 23/05/2019, pág. 113/202
96/156 fort Uíl i<3, ί.Ή') i
Í.míUi
RGBéoLMS ceefpresen? ihig
AXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXVe^XXXXXXXXXVeie^XXXXXXXXXXXXXXXXV^XXXXXY^êA...................
ill forfíMl s<9, ?++) &t2086 info present fW aXXXXXXXXXXXXXXXXXXW*XXXXXXXXX>»M^X^^ source min PQ ut goúrwKJigg(»l____________________________________________________________________________________________________________j u(l0)
ISíSL^LfeÍÊSlã____________________________________________________________________________________________________________LbéyI ifí num ext. blocks ) -i ^h.y.Çf .J1?V.LÇ:...^.^^()) i ?ÍGLêlí^D.!B.tD.L?.?£^bjt L.ílD.
fo?f i - 0; i ' mm? ext blocks, i ·»+ ) [
Tabela E.3: ext_dm_data_block_payload()
Petição 870190048209, de 23/05/2019, pág. 114/202
97/156
ext dm data block pavtoadfexi block. lenMkext block level JllOlOiiim^ Descri plot
ext block len bits - 8 * exr block length
exMdockj.ise^bhs- 0
tóAí bh>ck kvel — I ) {
mln PQ ud2)
max PQ
avg PQ ................. ..ymi.................
ex? block u.se bits +- 36
if£ extHdoeijevel--- 2 j { target max PQ ,u£I2f................
u(12)...............|
disnlav primaries x [cl v.-.'teeeeeeettiMeeeMceettMcmmiKmKmmmtttceeeMeceMKv.v.v.v.v.v.v.v.v.v.v.^^^ display primaries vid ..ioa................ _U( hS)
u{!6)
................................................................................................................................... trim slope .M.U)................
trim offset ..y£U).................
trim power uf 12)
trim chroma weight JO21................
him sain rati on gain
ms weight JOilclQl
ext block use bits -r- 85
:7 : 3 V 3 3 3 3 : 7 : : : 7 : : : 7 7 7 7 7 : :/ : : 7 7 :1:+ 11:+: : 7 7 : : : 7 : : :+ + 1 7 : 7 7 i < < : 1 : Hl ......................j....................................................................................................................................................
it! ext block level --- ?* ) 1
aciw...am...|eft..:ofite 1MOF111-+11
active area right tAet l:^^|>^:^li711+li:
active area tog cÃei <h)
active area bottom offset ..Sill)................)
ext block use bits +-- 52
: :/ :^ ? :;: <77:7:7 | I·.·:·.·.·. :·.·.·. :;.·.;.·.. γ ;: :;:·.γ·;:·^γ· <·:·:···: : γ.γ.< g/g g^.g· ·;.
ext dm arimwm bit .lluMai
J.......................................................................................................................................................................
Petição 870190048209, de 23/05/2019, pág. 115/202
98/156
Tabela E.4: Definição de tipo de bloco de metadados de DM estendido
í gxt biockjevel i 0 Tipo de bk.<o de metadados DM esteodido__________________________] Proibido i
Ϊ i 3 Metadados Nível 1 - Faixa, de coíitesdo | Metadados Nível 2 - Passagem de apara [ Protliido i
i 4 Açjfejç·.. I Metadados Nh’el 5 - Area adva !
! 6...255 Protbido ί
[00279] target—min_PQ especifica o valor mínimo de luminância de uma tela alvo em codificação PQ de 12 bits. O valor deve estar na faixa de 0 a 4095, inclusive. Se o target_min_PQ não estiver presente, deve ser inferido ser igual ao valor da fonte min PQ. O target_min_PQ é o valor codificado PQ de TargetedSYstemDUsplayMinimumLuminance conforme definido na cláusula 10,4 de SMPTE ST 2094-1 gama 241. 10-Bit PQ que codifica os bits mais significativos.
[00280] display_primaries_x[c] e display primaries yFcl especificam as coordenadas normalizadas de cromaticidade x e y, respectivamente, do componente primário de cor c do visor mestre em incrementos de 0,00002, de acordo com a definição CIE 1931 de x e y como especificado em ISO 11664-1 (veja também ISO 11664-3 e CIE 15) . Métodos para a descrição de exibidores de matriz que utilizam cores de cor vermelha, verde e azul, sugere-se que o valor de índice c igual a 0 deve corresponder ao primário verde, c igual a 1 deve corresponder ao primário azul e c igual a 2 deve corresponder ao primário de cor vermelha (ver também Anex E e Tabela E.3) . Os valores de display_primaries_x [c] e display_primaries_y [c] c] estará
Petição 870190048209, de 23/05/2019, pág. 116/202
99/156 na faixa de 0 a 50.000, inclusive.
especificam as coordenadas normalizadas de cromaticidade x respectivamente, do ponto branco do mestre em incrementos normalizados de 0,00002 de acordo com a definição CIE 1931 de x conforme especificado em ISO
11664-1 (veja também ISO
11664-3 e CIE 15) . Os valores do ponto branco x e do ponto branco v devem estar na faixa de a 50.000.
QUINTO
EXEMPLO [00282]
Mudanças em estruturas de semântica:
Tabela
E.2: ext_dm_data_block ()
Petição 870190048209, de 23/05/2019, pág. 117/202
100/156
Tabela E.3: ext_dm_data_block_load () cst datx block payloads ext ...block Joigth. m Nnck level
c.xl block ien bhs 3 * ext block lenglh ext block use bhs -- 0 erO^blockJevel ~~ I ) [ ntopJPQ m&xjR) ZZZZZíaJílZZZZZZZZZZZ cxtjúockja^bits 36 a.
iH ΛΙ- bl ock. IwM iK: 2 ) 1 target ntax PQ inrri offset tom power to rn__sMu rati opjga I« ros^waghr Jgjpck_t:beJ>[is
X
J...................................................................................
iR ext block level ; I acti vejtrea Jeft_pfikst i U-Í13)
------------------i-------------i.------------i.--------Petição 870190048209, de 23/05/2019, pág. 118/202
101/156
Figure BR112019010515A2_D0004
[00283] ext—block_length [i] é usado para derivar o tamanho da carga útil do bloco de metadados de DM estendido i-ésimo em bytes. Ext_block_length [i] não está presente se num_ext_blocks são iguais a 0.
O valor de ext_block_length deve estar na faixa de 0 a 255, inclusive.
[00284] Em uma alternativa, o elemento de sintaxe é codificado como ext_block_legth_minusl e a semântica é especificada como segue:
[00285] ext_block_length_minusl [i] mais 1 [ [é
Petição 870190048209, de 23/05/2019, pág. 119/202
102/156 usado para derivar]] especifica o tamanho da carga útil do bloco de metadados de DM estendido i-ésimo em Bytes. [[Ext_block_length [i] não está presente se num_ext_block é igual a 0. O valor do ext_block_length_minusldeve estar na faixa de 0 a 255, inclusive.
Tabela E.4: Definição de tipo de bloco de metadados de DM estendido
Tipo de bloco de metadados· DM estesdidos [
Reservado [
Metadados Nivel 1 - Faixa de conteúdo |
í V Metadados Nível. 2 - Passagem de apara [
j j i / / ú ú 7 Y dl·/ : / U it it 3 3 iúúú i i i i H N Reservado [
| 4 Resen-rado |
5 Metadados Nível. 5 - Area ativa [
ΐ ú Metadados Nível 6 - Associação [
Reservado [
[00286] num_associations especifica o numero de associações especificadas para a mensagem ext_dm_data_block_load na mensagem SEI. O bloco de associação especifica a associação entre informações de cena, características de exibição alvo, parâmetros de mapeamento de gama de cores e regiões ativas associadas com os parâmetros de mapeamento de gama de cores.
[00287] num_blocks_in_assoc[i] especifica o número de blocos que £ associação. O valor de num_ faixa de 0 a 255, inclusive [00288] blk_idx_ índice do bloco i-ésimo na blk_idx_in_assoc[i][]] deve num_blocks-l, inclusive.
[00289] É um ;ão especificados na i-ésima block_in_assoc[i] deve estar na _in_assoc [i] [ j ] especifica o i-ésima associação. O valor de ser utilizado na faixa de 0 a requisito para conformidade
Petição 870190048209, de 23/05/2019, pág. 120/202
103/156 bicorrente que para cada bloco com indice k tal que possui ext_block_level [k 1 tern valor igual al, 2 ou 5, deve haver pelo menos urn valor de i de tal modo que a estrutura de sintaxe ext_dm_data_block_payload(i) com ext_block_level igual a 6 tal que blk_idx_in_assoc[i][j] é igual a k.
[00290] É um requisito para conformidade bicorrente que não deve haver mais de uma estrutura ext_dm_data_block_payload_syntax na mensagem SEI com ext_block_level igual a 6.
[00291] ext_dm_data_bit pode ter qualquer valor. Sua presença e valor não afetam a conformidade do decodificador em perfis especificados nesta versão deste
Relatório descritivo. Decodificadores que se conformam a esta versão desta Especificação ignorarão todos os elementos de sintaxe ext_dm_data_bit.
[00292] Em uma alternativa, a sintaxe de alinhamento de bytes/à prova de futuro é especificada como segue:
Figure BR112019010515A2_D0005
[00293] O seguinte é o texto de ATSC Candidato
Padrão: A/341 emendas: 2094-10, que inclui emendas para O
Petição 870190048209, de 23/05/2019, pág. 121/202
104/156 documento ATSC Número S34-262 r3. Esta emenda inclui alguns dos métodos descritos acima.
[00294] 1. VISÃO GERAL [00295] Este documento descreve a codificação e transporte nos elementos de fluxo de bits emitidos ATSC do ST 2094-10 metadados dinâmicos para Transformação de Volume de Cor-Aplicação # 1 que é uma tecnologia para o uso de metadados dinâmicos para Conteúdo HDR. Se aprovado pelo ATSC, a/341: 2017, Video-HEVC, (a/341) seria alterado de acordo com as edições aqui descritas.
[00296] 2. REFERÊNCIAS [00297] As seguintes referências seriam adicionadas a A/341 [00298] 2.1 Referências Normativas [00299] [1] SMPTE: Metadados Dinâmicos Para a
Transformação de Volume de cor-Aplicação # 1, Doc. ST 2094-10 (2016), Society Of Motion Picture And Television Engineer, White Plains, NY.
[00300] 2.2 referências Informativas [00301] [2] SMPTE: Metadados Dinâmicos Para componentes De transformação de Volume de cor-Núcleo, Doc. ST 2094-1 (2016), Society Of Motion Picture And Television Engineers, White Plains, NY.
[00302] 3. DEFINIÇÃO DE TERMOS [00303] Nenhum novo acrônimos, abreviaturas ou termos seriam adicionados A A/341 [00304] 4. MUDANÇAS PARA A/341 [00305] Nesta seção deste documento, [ref] indica que uma referência cruzada a um documento referenciado referido que está listado em a/341 seria
Petição 870190048209, de 23/05/2019, pág. 122/202
105/156 inserido (ou conforme descrito de outra forma dentro dos suportes quadrados). Uma referência cruzada real para um documento referenciado listado neste documento seria atualizada com o número de referência das referências
recentemente adicionadas que seriam i incorporadas a um
documento a/341.
[00306] Adicional uma bala a 6,3.2.2
[00307] Adicionar o item de bala abaixo da
lista de bala encontrada em 6 ,3.2.2 Características De
transferência PQ:
[00308] . 0 fluxo de bits pode conter mensagens
SEI com valor de pagador igual a 4. isto permite a
Transmissão opcional da mensagem de metadados ST 2094-10 descrita em [ref para nova subseção descrita a seguir].
[00309] Uma nova subseção de acordo com a seção
6.3.2.2 [00310] Adicionar o texto abaixo de a/341 como uma nova subseção sob a Seção 6.3.2.2 PQ Transfer Characteristics. A nova subseção é intitulada Seção 6.2.2.2.x codificação E transporte Da mensagem De Metadados SMPTE ST 2094-10. (Para legibilidade, o texto seguinte não é mostrado em marcação.) [00311] Codificação e Transporte de mensagem de metadados SMPTE ST 2094-10 [00312] O fluxo de bits de video F-EVC pode conter a mensagem de metadados 2094-10 a fim de fornecer informação dinâmica sobre o Sinal de video FIDR. Quando uma mensagem de metadados 2094-10 está presente, esta informação pode ser empregada pelo visor para adaptar as imagens de FIDR entregues à capacidade do dispositivo de
Petição 870190048209, de 23/05/2019, pág. 123/202
106/156 exibição. Além disso, este metadado pode ser usado para derivar um SDR (ITU-R BT.709 [ref]) imagem por dispositivos de recepção, tal como um conversor/conversor ATSC 3.0 A informação transportada na mensagem de metadados 2094-10 definida em [ref para novo Anex descrito abaixo] provê um carrinho para elementos de metadados definidos em ST 2094-1 [2] e ST 2094-10 [1] [00313] Metadados 2094-10, quando presentes, deve ser codificada e transportada como dados de usuário registrados por uma Recomendação ITU-T. 35 informações Suplementares de Ampliação (SEI) mensagem por meio do ATSCl_data () estrutura definida na Tabela 14 da ANSI/SCTE 128-1 [ref] e o valor atribuído para o código do tipo de dados do usuário é mostrado em [ref para Tabela x.x].
Tabela x.x user_data_type_code
iiser daia type <’í>de [ user ..data .type.. structure
0x0«? i ST2094-10 dà-ZíM
[00314] Sintaxe e semântica para carga útil ST2094-10_dados () deve ser como especificado em [ref para novo Anexo descrito abaixo] cláusula [ref a novo Anexo, Seção 1 descrita abaixo] . Onde o tipo de unidade Externa correspondente deve ser ajustado igual a PREFIX SEI NUT.
[00315] Se uma mensagem de metadados 2094-10 estiver presente, as seguintes restrições devem aplicar-se:
[00316] . Mensagem de metadados 2094-10 deve ser associada a cada unidade de acesso do fluxo de bits. Se esta mensagem estiver presente, ela apenas estará presente uma vez por unidade de acesso.
[00317] . versão de aplicativo deve ser
Petição 870190048209, de 23/05/2019, pág. 124/202
107/156 estabelecida igual a 0 [00318] . Mensagens SEI de Volume de Cor de Exibição Matriz (Contendo SMPTE ST 2086 Metadados estáticos [ref]) devem estar presentes no fluxo de bits.
[00319] . O número de blocos de extensão com ext_block_level igual a 1 deve ser restrito a ser igual a 1.
[00320] . O número de blocos de extensão com um
ext. _block_ levei igual a 2 deve ser restrito a menos do que
ou igual a 16
[00321] 0 número de blocos de extensão com
ext. _block_ levei igual a 5 deve ser limitado a ser igual a 0
ou 1.
[00322] Adição de um novo Anexo a A/341 [00323] Adicionar o texto abaixo como um novo Anexo a a/341. O Anexo é intitulado Metadados com Base em SMPTE ST2094-10_Data. (Para legibilidade, o texto seguinte não é mostrado em marcação.) [00324] A.l METADADOS COM BASE NOS DADOS ST 2094-10 (NORMOTIVO) [00325] Esta cláusula especifica a sintaxe e a semântica de ST2094-10_data ().
[00326] A sintaxe para ST2094-10_data () é mostrada na Tabela Y.Y, Tabela Z.Z e tabela M.M.
[00327] Processo de efetuação de parse de cada elemento de sintaxe pelos descritores f (n), i (n) , ue (v) e u (n) é descrito em HEVC [ref].
[00328] Nota: os elementos de metadados são definidos de acordo com os padrões SMPTE ST2086 [ref], ST 2094-1 [2], ou ST 2094-10 [1]. A conversão entre valores de
Petição 870190048209, de 23/05/2019, pág. 125/202
108/156 luminescência e valores PQ de 12 bits pode Ser encontrada Em ST 2084 anex.
Tabela Y.Y ST2094-10_data() i ST2044-10 d a íá () f s ÍVescripwr | app JdsatiÍÈ®’ | we(y)| | »pp„ woim | uei v js metadata^refresh flag j ·ι(1 st i if{ metadatarefresh..Hag } ;[
I wmj^tjbhcks | w(v)| ] Í0 earn sxt Hochs) ( || i whilst :byte, allgiisdi i1 [?
dm | ft Uΐ
I fbr( I« ft; i < .. Hocks; i f + ) { ||
I II
I whHe( sbyte_ aligned/} )
I dm„,ali^weat„w0,W > / V / / J/lii/lt// i V //ii j///i//j/ :[ < i if/ 1 } Qt t ; c tt : Htitt f fl '
Petição 870190048209, de 23/05/2019, pág. 126/202
109/156
Table Z.Z ext_dm_data_block_payload()
ru dm mmriatu blackyi) { Descriptor i
®tt_bl(?ekjle8.^h[ I ] urf’.i i
sxt block mvd (s j j
ext jlm..dâlâ...b.kxêkblock Jteogthí i ], eM...block.Jwd [.
ilLiluLil/lllJlIi ill HUH/11/ i/1 J11 111111111111111 LllLllllJlllllll Lilli Lil ) 17.:.1.:.1.111/7.:.1 . l.l .Ulyuy: : : y^:^: : y 7 : 1< >1 :J : yJ /· /! : y y< : y : :J /yyy : : : : y y : f 1 : ::1 1 1 1 1 1 1 : : : : : 1 1 1 1 11 11 : 1 11 : : 1 1 1111 1 : : : : : 1 1 1 1 111 111 : 1:: : 1 1 : 1 : 1
Tabela N.N ext_dm_data_block_payload()
ϊ ext dm dma block psiylosdf ext block kn^lht ext JbliM'k levd ) ξ Descriptor i
y* i block levs bits ·· § * block icmpti mt blsK.'k use bits - Ui if( sxijblsiekjevel:RSK I) (| mhi 1’0 juü2) max PQ j 5./(12) avg PQ i 5./(12) ext block w bi Is /”' .16i ifi( wt block level 2) f| max PQ 1 /./(12) trim slope 1cí12) trim s:sflw j 5/()2) tri m power i 1/(12)
Petição 870190048209, de 23/05/2019, pág. 127/202
110/156
trim smurnêm gain 5M. weight i(13) ex· b\>vk Lise + 85 <12)
:if( ext...blwk fevd S )· (
active ..areajeô ...ofiW <H)
sedxe íiu.ii fitlseí a(l 5}
active. :.i(Í5!
aca veem. bottom,, offset o(Uj
ex- block i.vse bits — - 52
;t- <1 ...................................< /2/ :-//: : ::/::: - - - -- : : :/1 1 11/1 11 --- : 1 : 1 whílteÇ ®at„ b!eek,eae, Ws^· < ext ..block Jen JHts)
ext..:to...âl..ismy.bit ti 1.)
>/ ]5///[33 ]1[/ / ] 51/3/2/3] //// IB ]|
[00329] Esta cláusula define a semântica para
ST2094-10_data ().
[00330] Para os propósitos da presente
cláusula, as seguintes funções matemáticas aplicam- -se:
r) _ { x: x > i) X < 0
[00331] Floor(x) é o maior número inteiro
menor que ou igual a x
Petição 870190048209, de 23/05/2019, pág. 128/202
111/156
Figure BR112019010515A2_D0006
C7í/s3(r. y. ~) I y; x > V
G;: saião
AWnúCu ~ 5's$nU') *-H<xn(4&5(x) 4 0.5} [00332] /= Divisão de Inteiro com truncamento do resultado em direção a zero. Por exemplo, 7/4 e -7/4 são truncados a UNT 1 e -7/4 e 7/4 são truncados a -1.
[00333] A precisão das informações transportadas nessa mensagem SEI destina-se a ser adequada para propósitos correspondentes ao uso de SMPTE ST 2094-10 [1] .
[00334] app_identifier identifica uma aplicação e é estabelecido igual a 1 de acordo com restrições da seção 5 de ST 2094-10 [1].
[00335] app_version especifica a versão de aplicativo no aplicativo e é estabelecido igual a 0.
[00336] metadata_refresh_flag quando estabelecido igual a 1 cancela a persistência de qualquer metadado de mapeamento de exibição estendido anterior em ordem de saida e indica que os metadados de mapeamento de exibição estendidos se seguem. O metadado de mapeamento de exibição estendido persiste a partir da imagem codificada para a qual a mensagem SEI contendo ST2094-10_dados () é associada (inclusive) à imagem codificada à qual a mensagem SEI seguinte contendo ST2094-10_data() e com um conjunto de metadados_renovação_flag igual a 1 em ordem de saida é associado (exclusivo) ou (de outra forma) à última imagem
Petição 870190048209, de 23/05/2019, pág. 129/202
112/156 no CVS (inclusive) . Quando estabelecido igual a 0, este indicador indica que o metadado de mapeamento de exibição estendido não se segue.
[00337] num_ext_blocos especifica o número de blocos de metadados de mapeamento de exibição estendidos. O valor deve estar na faixa de 1 a 254, inclusive.
[00338] dm_alignment_zero_bit deve ser igual a 0 .
[00339] ext_block_length [i] é usado para derivar o tamanho da carga útil do bloco de metadados de mapeamento de exibição estendido i-ésimo em bytes. O valor deve estar na faixa de 0 a 1023, inclusive.
[00340] ext_block_nivel [i] especifica o nível de carga útil contido no bloco de metadados de mapeamento de exibição estendido i-ésimo. O valor deve estar na faixa de 0 a 255, inclusive. Os tipos de blocos de metadados de mapeamento de exibição estendidos correspondentes são definidos na Tabela E14 valores de ext_block_level[i] que são ATSC reservados não devem estar presentes nos fluxos de bits que se conformam a esta versão Da especificação ATSC. Os blocos utilizando valores reservados ATSC devem ser ignorados.
[00341] Quando o valor de ext_block_nivel [i] é
estabelecido igual a 1, o valor de ext_block_length [i]
pode ser ajustado i gual a 5 .
[00342] Quando o valor de ext_block_nivel [i] é
estabelecido igual a 2, o valor de ext_block_length [i]
deve ser estabelecido igual a 11.
[00343] Quando o valor de ext_block_nivel [i] é
estabelecido igual a 5, o valor de ext_block_length [i]
Petição 870190048209, de 23/05/2019, pág. 130/202
113/156 deve ser ajustado igual a 7.
Tabela M.M Definição de Tipo de loco de metadados de mapeamento de exibição estendida j ext NtK'k level j Exibidos'estendido m^pe/iado tipo de bloco de raetaíládos θ I ATSC Reservado| | | Metarfedos Nivd 1 - Faixa de coateódoi | 4 | Metadados Nivel 2 - Passagem de apara] }— .·. *.. .·. .·. ·.·. .·. .·. .·. .·. ....................... .·. .·. .·. .·. .·.· .·. .·. .·. .·........ .·. .·.... .'..'. .'..'. .'..'. .....<
I 1 | ATSC Reservadoi | ATSC Reservado| | 5 | Metadados Nível 5 - Área Ativai [ ô Ϊ55 I” ATSCR«erva<fc>I [00344] Quando um bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 5 está presente, as seguintes restrições devem aplicarse :
[00345] . Bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 5 deve ser precedida por pelo menos um bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 1 ou 2 [00346] . Entre quaisquer dois blocos de metadados de mapeamento de exibição estendidos com ext_block_level igual a 5, deve haver pelo menos um bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 1 ou 2.
[00347] . Bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 1 ou 2
Petição 870190048209, de 23/05/2019, pág. 131/202
114/156 estará presente após o último bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 5.
[00348] . Os metadados de um bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 1 ou 2 devem ser aplicados à área ativa especificada pelo primeiro bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 5 seguindo este bloco.
[00349] . Quando a área ativa definida pelo bloco de metadados de mapeamento de exibição estendido atual com ext_block_level igual a 5 sobrepõe-se com a área ativa definida por blocos de metadados de mapeamento de exibição estendidos precedentes com ext_block_level igual a 5, todos os metadados dos blocos de metadados de mapeamento de exibição estendidos com ext_block_level igual a 1 ou 2 associados com o bloco de metadados de mapeamento de exibição estendido atual com ext_block_level igual a 5 devem ser aplicados aos valores de pixel da área de sobreposição.
[00350] min_PQ especifica o valor mínimo de luminância da imagem corrente em codificação PQ de 12 bits. O valor deve estar na faixa de 0 a 4095, inclusive. Note que o valor de 12 bits min PQ é calculado como segue:
min_PQ = Clip3 (0, 4095, Round(Min * 4095)) [00351] Onde Min é MinimumPqencodeMaxrgb como definido na cláusula 6.1.3 De SMPTE ST 2094-10 [1] [00352] max_PQ especifica o valor de luminância máxima da imagem corrente na codificação PQ de 12 bits. O valor deve estar na faixa de 0 a 4095, inclusive. Note que
Petição 870190048209, de 23/05/2019, pág. 132/202
115/156 o valor de 12 bits max PQ é calculado como segue:
max_PQ = Clip3 (0, 4095, Round(Max * 4095)) [00353] Onde Max é MaximumPaencodedMaxrgb como definido na cláusula 6.1.5 de SMPTE ST 2094-10 [1].
[00354] avg_PQ especifica o valor médio de código PQ para a luminância da imagem em codificação PQ de 12 bits. 0 valor deve estar na faixa de 0 a 4095, inclusive. Note que o valor de média de 12 bits PQ É calculado como segue:
avg_PQ = Clip3 (0, 4095, Round(média * 4095)) [00355] onde Avg é AveragePqencodedMaxrgb como definido na seção 6.1.4 de SMPTE ST 2094-10 [1].
[00356] target—max_PQ especifica o valor de luminância máximo de uma exibição alvo em codificação PQ de 12 bits. O valor deve estar na faixa de 0 a 4095, inclusive. O valor target_max_PQ é o valor codificado PQ da TargetedSYstemDisplayMaximumLuminance, conforme definido na cláusula 10,4 de SMPTE ST 2094-1 [2].
[00357] Nota: Esta mensagem SEI não suporta a sinalização de TargetedSystemDisplayPrimaries, TargetedSYstemDisplayWhitePointChromaticity, e TargetedSystemDisplayMinimumLuminance que são especificadas como obrigatórios em ST 2094-10 [1].
[00358] Se houver mais de um bloco de metadados de mapeamento de exibição estendido com ext_block_level igual a 2, estes blocos não terão nenhum alvo duplicado max PQ.
[00359] trim_slope especifica o metadado de inclinação. O valor deve estar na faixa de 0 a 4095, inclusive. Se a inclinação_inclinação não estiver presente,
Petição 870190048209, de 23/05/2019, pág. 133/202
116/156
deve-se inferir que o valor de inclinação de 12 bits é
calculado como segue:
trim_slope = Clip3 (0, 4 0 95, Round((S S - -0,5) *
4096))
[00360] Em que S é o ganho de Tonalidade como
definido Na Cláusula 6. 2.3 de SMPTE ST 2094-10 [1].
[00361] trim_offset especifica o metadado de deslocamento. O valor deve estar na faixa de 0 a 4095, inclusive. Se o afastamento_offset não estiver presente, deve-se inferir que o valor de deslocamento de 12 bits é calculado como segue:
trim_offset = Clip3 (0,4095, Round((00 +0,5) * 4096)) [00362] no caso em que O É O offset de Tons como definido Na Cláusula 6.2.2 de SMPTE ST 2094-10 1 [00363] trim_power especifica o metadado de potência. O valor deve estar na faixa de 0 a4095, inclusive. Se a potência de compensação não estiver presente, deve-se inferir que o valor de potênciade 12 bits é calculado como segue:
trlm_power = Clip3 (0,4095, Round((PP-0,5)*
4096)) [00364] onde P é o Toneminggama como definido na cláusula 6.2.4 De SMPTE ST 2094-10 [1].
[00365] trim_croma_weight especifica o metadado de peso croma. O valor deve estar na faixa de 0 a 4095, inclusive. Se o peso de croma de compensação não estiver presente, deve-se inferir que o valor de ponderação croma de 12 bits é calculado como segue:
trlm_croma_welght = Clip3 (0, 4095, Round((CCCC
Petição 870190048209, de 23/05/2019, pág. 134/202
117/156 +0,5)*4096)) [00366] Em que CW é o peso de Cromus em peso como definido na Cláusula 6.3.1 de SMPTE ST 2094-10 [1].
[00367] trim_saturation_gain especifica o metadado de ganho de saturação. 0 valor deve estar na faixa de 0 a 4095, inclusive. Se o ganho de saturação de compensação não estiver presente, deve-se inferir que o valor de ganho de saturação de 12 bits é calculado como segue:
trim_saturation_gain = Clip3 (0, 4095,
Round((SSSS + 0,5) * 4096)) [00368] Onde SG é o SaturationGain como definido na cláusula 6.3.2 De SMPTE ST 2094-10 [1] .
[00369] ms_weight este campo é reservado para especificação futura. Este inteiro assinado de 13 bits deve ser Oxlfff (- 1).
[00370] active_area_left_offset, active_area_right_offset, active_area_top_offset, active_area_bottom_offset que especifica os pixels selecionados da imagem atual, em termos de uma região retangular especificada em coordenadas de imagem para a área ativa. Os valores devem estar na faixa de 0 a 8191, inclusive. Veja também Processingwindow de ST 2094-10 [1].
[00371] Active_area_left_offset, active_area_right_offset, active_area_top_offset, o deslocamento de fundo da área ativa representa as coordenadas do Canto Esquerdo e do Canto inferior restrito na cláusula 7.1 da ST 2094-10 [1] como segue:
Petição 870190048209, de 23/05/2019, pág. 135/202
118/156
Upped,.ehComer ίactactive_area_tnp_offKet)
LawerR.i ^MCbiner - (XSize - I - actm· area ri^hi offset, YSize -1 active area brUtvra trf'fset)
Compensação de topo de área ativa = (deslocamento esquerdo [0372] onde Xsize é a resolução horizontal da imagem corrente e Ysize é a resolução vertical da imagem corrente [00373] ext_dm_alignment_zero_bit deve ser igual a 0.
[00374] A Figura 7 é um exemplo de um processo 700 para processamento de dados de vídeo. O processo 700 pode ser executado por um sistema de codificação de vídeo, tal como o sistema de codificação de vídeo da Figura 1, que é a implementação ST 2094-10.
[00375] Na etapa 702, o processo 700 da Figura 7 inclui receber os dados de vídeo, em que os dados de vídeo incluem pelo menos dois sinais de vídeo. Pelo menos dois sinais de vídeo podem ser relacionados ou não relacionados e/ou podem ser iguais ou diferentes. Por exemplo, cada sinal de vídeo pode ter sido capturado por uma câmera diferente.
[00376] Na etapa 704, o processo 700 inclui a obtenção de um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de vídeo. Como discutido acima, os parâmetros de transformação de volume de cor podem incluir uma função de transferência, bem como variáveis e constantes relacionadas à função de transferência. Em várias implementações, a função de transferência, as variáveis, e constantes podem ser usadas
Petição 870190048209, de 23/05/2019, pág. 136/202
119/156 para compactar um volume de cor em uma faixa dinâmica menor.
[00377] Na etapa 706, o processo 700 inclui a determinação de uma região de exibição para cada um dos pelo menos dois sinais de vídeo, em que as regiões de exibição determinam uma porção de um quadro de vídeo no qual os sinais de vídeo serão exibidos. Em alguns casos, as regiões de exibição podem ser adjacentes. Em alguns casos, as regiões de exibição podem ser sobrepostas. Em alguns casos, tal como com imagem em imagem, uma região de exibição pode se sobrepor com outra região de exibição.
[00378] Na etapa 708, o processo 700 inclui determinar, para cada um dos pelo menos dois sinais de vídeo, uma associação respectiva entre um sinal de vídeo entre os pelo menos dois sinais de vídeo e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que conjuntos de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para regiões de exibição para sinais de vídeo. Por exemplo, um conjunto de parâmetros de transformação de volume de cor pode ser usado para modificar o sinal de vídeo em particular com o qual o conjunto de parâmetros de transformação de volume de cor é associado. Neste exemplo, o conjunto de parâmetros de transformação de volume de cor pode ser usado para compactar o sinal faixa dinâmica do sinal de vídeo em uma faixa que pode ser exibida por um dispositivo de exibição em particular.
[00379] [Na etapa 710, o processo 700 inclui a geração de um ou mais metadados para um ou mais conjuntos
Petição 870190048209, de 23/05/2019, pág. 137/202
120/156 de parâmetros de transformada de volume de cor. Os blocos de metadados podem ser codificados, por exemplo, em uma ou mais unidades externas SEI.
[00380] Na etapa 712, o processo 700 inclui a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados. O fluxo de bits codificado pode ser gerado, por exemplo, utilizando o padrão AVC ou HEVC, ou outro padrão de codificação de video.
[00381] Na etapa 714, o processo 700 inclui a codificação, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de video e um ou mais conjuntos de parâmetros de volume de cor. Em algumas implementações, a codificação das associações pode incluir a colocação de um ou mais blocos de metadados no fluxo de bits codificado de acordo com uma ordem das regiões de exibição dentro do quadro de video. Por exemplo, um ou mais blocos de metadados que contêm o conjunto de parâmetros de transformação de volume de cor para o primeiro (em ordem de rastreio) a região de exibição pode ser colocada no fluxo de bits codificado, então os blocos de metadados contêm o conjunto de parâmetros de transformação de volume de cor para o segundo (em ordem de varredura) a região de exibição pode ser colocada no fluxo de bits codificado a seguir, e assim por diante.
[00382] Em algumas implementações, a codificação das associações determinadas entre os pelo menos dois sinais de video e o um ou mais conjuntos de parâmetros de volume de cor podem incluir a inserção de um ou mais valores no fluxo de bits codificado que incluem,
Petição 870190048209, de 23/05/2019, pág. 138/202
121/156 cada um, as associações determinadas. Por exemplo, uma estrutura de dados pode ser codificada no fluxo de bits, onde a estrutura de dados indica uma associação entre um conjunto de parâmetros de volume de cor codificados em um conjunto específico de blocos de metadados e uma região de exibição.
[00383] Em alguns casos, uma primeira região de exibição para um primeiro sinal de vídeo proveniente da pelo menos dois sinais de vídeo se sobrepõem a uma segunda região de exibição para um segundo sinal de vídeo a partir de pelo menos dois sinais de vídeo. Nesses casos, um conjunto de parâmetros de transformação de volume de cor a partir de um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região sobreposta é determinada por uma prioridade entre a primeira região de exibição e a segunda região de exibição. Em alguns exemplos, a prioridade é baseada em uma ordem na qual a primeira região de exibição e a segunda região de exibição são exibidas no quadro de vídeo. Em alguns exemplos, a prioridade é baseada em um valor fornecido pelos dados de vídeo. Por exemplo, um valor de prioridade pode ser codificado no fluxo de bits com cada região de exibição.
[00384] A Figura 8 é um exemplo de um processo 800 para processamento de dados de vídeo. O processo 800 pode ser implementado por um sistema de codificação de vídeo que implementa ST 2094-10.
[00385] Na etapa 802, o processo 800 inclui receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de vídeo
Petição 870190048209, de 23/05/2019, pág. 139/202
122/156 codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor. Pelo menos dois sinais de video podem ser relacionados ou não relacionados e/ou podem ser iguais ou diferentes. Por exemplo, cada sinal de video pode ter sido capturado por uma câmera diferente. Os conjuntos de parâmetros de transformação de volume de cor podem incluir, por exemplo, uma função de transferência e variáveis e/ou constantes relacionadas com a função de transferência. 0 um ou mais blocos de metadados podem ser, por exemplo, codificados em uma ou mais unidades externas SEI No fluxo de bits codificado.
[00386] Na etapa 804, o processo 800 inclui a determinação de uma região de exibição para cada um dos dois sinais de video pelo menos codificados. Cada região de exibição pode corresponder a uma área de uma tela de um dispositivo de exibição (por exemplo, monitor, tela de telefone inteligente, tela de mesa digitalizadora, etc.). Cada sinal de video pode ser exibido em regiões de exibição individuais (ou possivelmente múltiplas individuais).
[00387] Na etapa 806, o processo 800 inclui determinar, para cada um dos pelo menos dois sinais de video, associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre o conjunto de parâmetros de transformação de volume de cor.
[00388] Na etapa 808, o processo 800 inclui a decodif icação de pelo menos dois sinais de video codificados utilizando um respectivo conjunto associado de parâmetros de transformada de volume de cor, em que o
Petição 870190048209, de 23/05/2019, pág. 140/202
123/156 respectivo conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente. Por exemplo, um conjunto de parâmetros de transformação de volume de cor pode ser usado para compactar a faixa dinâmica de um sinal de video em uma faixa gue pode ser exibida por um dispositivo de exibição em particular.
[00389] Em algumas implementações, associações entre os pelo menos dois sinais de video e o um ou mais conjunto de parâmetros de transformação de volume de cor é baseado em uma ordem das regiões de exibição. Por exemplo, um conjunto de parâmetros de transformação de volume de cor que aparece primeiro no fluxo de bits codificado pode ser associado a uma primeira região de exibição (em ordem de varredura) .
[00390] Em algumas implementações, associações entre os pelo menos dois sinais de video e a uma ou mais conjuntos de parâmetros de transformação de volume de cor com base em um ou mais valores incluídos no fluxo de bits codificado. Por exemplo, uma estrutura de dados pode ser codificada no fluxo de bits, onde a estrutura de dados inclui valores que associam um conjunto de parâmetros de transformação de volume de cor com uma região de exibição em particular.
[00391] Em alguns casos, uma primeira região de exibição para um primeiro sinal de video proveniente da pelo menos dois sinais de video se sobrepõem a uma segunda região de exibição para um segundo sinal de video a partir de pelo menos dois sinais de video. Nesses casos, um
Petição 870190048209, de 23/05/2019, pág. 141/202
124/156 conjunto de parâmetros de transformação de volume de cor a partir de um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região sobreposta é determinada por uma prioridade entre a primeira região de exibição e a segunda região de exibição. Por exemplo, a prioridade pode ser baseada em uma ordem na qual a primeira região de exibição e a segunda região de exibição exibida no quadro de vídeo. Como um outro exemplo, a prioridade pode ser baseada em um valor fornecido pelos dados de vídeo.
[00392] A Figura 9 é um exemplo de um processo 900 para processamento de dados de vídeo. O processo 900 pode ser implementado por um sistema de codificação de vídeo que inclui ST 2094-10.
[00393] Na etapa 902, o processo 900 inclui receber os dados de vídeo, em que os dados de vídeo são associados com um volume de cor. Conforme discutido acima, um volume de cor pode incluir pelo menos uma gama dinâmica e uma gama de cores, que a profundidade e gama de cores capturadas nos dados de vídeo.
[00394] Na etapa 904, o processo 900 inclui a obtenção de um conjunto de parâmetros de transformação de volume de cor a partir dos dados de vídeo, em que o conjunto de parâmetros de transformação de volume de cor pode ser usado para transformar o volume de cor. Por exemplo, o conjunto de parâmetros de transformação de volume de cor pode incluir uma função de transferência, variáveis e constantes. Como um exemplo adicional, os parâmetros de transformada de volume de cor podem ser usados para compactar a faixa dinâmica do volume de cor
Petição 870190048209, de 23/05/2019, pág. 142/202
125/156 para uma faixa que pode ser exibida por um dispositivo de exibição em particular.
[00395] Na etapa 906, o processo 900 inclui a obtenção de um conjunto de parâmetros de volume de cor de exibição mestre, em que o conjunto de valores de volume de cor de exibição mestre inclui valores determinados quando da geração de uma cópia mestre dos dados de vídeo. Os parâmetros de volume de cor de exibição de matriz podem refletir, por exemplo, profundidade e faixa de cores que a pessoa que fez com os dados de video desejados. Em alguns exemplos, é desejável que quaisquer cópias dos dados de vídeo sejam tão próximas quanto possíveis, sendo exibido utilizando a profundidade e a gama de cores capturadas pelos parâmetros de volume de cor do visor mestre.
[00396] Na etapa 908, o processo 900 inclui a geração de um ou mais blocos de metadados para o conjunto de parâmetros de transformada de volume de cor. O um ou mais blocos de metadados podem ser codificados, por exemplo, em uma ou mais unidades externas SEI.
[00397] Na etapa 910, o processo 900 inclui a geração de um ou mais blocos de metadados adicionais para o conjunto de parâmetros de volume de cor de exibição mestre. Em vários exemplos, os blocos de metadados para os parâmetros de volume de cor de exibição mestre também podem ser codificados em unidades externas SEI.
[00398] Na etapa 912, o processo 900 inclui a geração de um fluxo de bits codificado para os dados de vídeo, em que o fluxo de bits codificado inclui um ou mais blocos de metadados e um ou mais blocos de metadados adicionais, em que a inclusão de um ou mais blocos de
Petição 870190048209, de 23/05/2019, pág. 143/202
126/156 metadados adicionais é necessária pela presença de um ou mais blocos de metadados no fluxo de bits codificado.
[00399] Em alguns exemplos, o conjunto de parâmetros de transformação de volume de cor inclui uma característica de transferência, e em que, no fluxo de bits codificado, o um ou mais blocos de metadados são excluídos quando a característica de transferência não corresponde a um valor particular. Por exemplo, a característica de transferência tem um valor de 16 quando a função de transferência de ST 2084 é incluída no conjunto de parâmetros de transformada de volume de cor, e tem um valor de 18 quando a função de transferência de HPG é incluída. Nesses exemplos, um ou mais blocos de metadados não estão incluídos no fluxo de bits de acordo com a presente invenção a função de transferência não tem um valor de 16 ou 18.
[00400] Em alguns exemplos, o conjunto de parâmetros de transformação de volume de cor e o conjunto de parâmetros de volume de cor de exibição mestre incluem um mesmo campo. Nesses exemplos, o campo é omitido do um ou mais blocos de metadados para o conjunto de parâmetros de transformada de volume de cor com base em LT no campo estando presente em um ou mais blocos de metadados adicionais para os parâmetros de volume de cor de exibição mestre.
[00401] Em alguns exemplos, os dados de video incluem uma pluralidade de janelas de processamento. Em algumas implementações, no fluxo de bits codificado, uma quantidade da pluralidade de janelas de processamento é restringida a um valor entre um e dezesseis. Esta restrição
Petição 870190048209, de 23/05/2019, pág. 144/202
127/156 regulou as expectativas para os decodificadores, de modo que os decodif icadores possam esperar não mais do que dezesseis janelas de processamento em um fluxo de bits codificado. Similarmente, em alguns exemplos, os dados de video incluem uma pluralidade de elementos de descrição de conteúdo, e em que, no fluxo de bits codificado, uma quantidade da pluralidade de elementos de descrição de conteúdo é restringida a um. Em alguns exemplos, os dados de video incluem uma pluralidade de elementos de exibição alvo, e em que, no fluxo de bits codificado, uma quantidade da pluralidade de elementos de exibição alvo é restringida a um valor entre um e dezesseis. Estas restrições podem limitar a faixa de opções que se espera que um decodificador seja capaz de lidar [00402] Em alguns exemplos, um fluxo de bits codificado pode incluir pelo menos um bloco de metadados para cada unidade de acesso no fluxo de bits codificado, bloco de metadados incluindo parâmetros de transformação de volume de cor. Isto é, para cada unidade de acesso, o fluxo de bits codificado incluirá pelo menos um bloco de metadados que inclui parâmetros de transformada de volume de cor.
[00403] Em alguns exemplos, os valores definidos como reservados são excluídos do fluxo de bits codificado. Por exemplo, valores reservados para um campo de ext_block_level de um bloco de metadados (onde o bloco de metadados inclui parâmetros de transformada de volume de cor) pode ser excluído de um fluxo de bits codificado.
[00404] Em algumas implementações, um ou mais blocos de metadados para os parâmetros de transformada de
Petição 870190048209, de 23/05/2019, pág. 145/202
128/156 volume de cor incluem, cada um, um valor de comprimento. Em alguns exemplos, no fluxo de bits codificado, o valor de comprimento é restrito a um múltiplo de oito. Em alguns exemplos, o valor de comprimento é restrito a um valor entre 0 e 255.
[00405] A Figura 10 é um exemplo de um processo 1000 para processamento de dados de video. O processo 1000 pode ser implementado por um sistema de codificação de video que implementa ST 2094-10.
[00406] Na etapa 1002, o processo 1000 inclui receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui um ou mais blocos de metadados que incluem um conjunto de parâmetros de transformada de volume de cor codificados. Os parâmetros de volume de cor podem ser usados para reduzir a faixa dinâmica de dados de video incluídos no fluxo de bits codificado, de modo que os dados de video possam ser exibidos por um dispositivo de exibição em particular. Em alguns exemplos, os blocos de metadados são codificados em uma ou mais unidades externas SEI No fluxo de bits codificado.
[00407] Na etapa 1004, o processo 1000 inclui a determinação da presença de um ou mais blocos de metadados no fluxo de bits codificado [00408] Na etapa 1006, o processo 1000 inclui, com base na determinação da presença de um ou mais blocos de metadados no fluxo de bits codificado, determinar que uma presença de um ou mais blocos adicionais é necessária no fluxo de bits codificado.
[00409] Na etapa 1008, o processo 1000 inclui determinar que o fluxo de bits codificado não inclui o um
Petição 870190048209, de 23/05/2019, pág. 146/202
129/156 ou mais blocos de metadados mais adicionais que incluem um conjunto codificado de parâmetros de volume de cor de exibição mestre. Em algumas implementações, a presença, no fluxo de bits codificado, dos blocos de metadados que incluem o conjunto de parâmetros de transformação de volume de cor codificados significa que os blocos de metadados que incluem os parâmetros de volume de cor de exibição mestre também devem estar presentes no fluxo de bits codificado. Os blocos de metadados adicionais poderiam de outra forma ser codificados em uma ou mais unidades externas SEI no fluxo de bits codificado [00410] Na etapa 1010, o processo 1000 inclui determinar, com base no fluxo de bits codificado não incluindo um ou mais blocos de metadados adicionais, que o fluxo de bits codificado não se conforma ao requisito. Um fluxo de bits de conformação é aquele que adere aos padrões acordados. Um fluxo de bits não conformado pode não ser passível de efetuação de parse e/ou reproduzivel por decodificadores que são compatíveis com os padrões.
[00411] Na etapa 1012, o processo 100 não inclui o processamento de pelo menos uma parte do sistema o fluxo de bits codificado com base na determinação de que o fluxo de bits codificado não se conforma aos requisitos. O não processamento de uma parte do fluxo de bits pode significar, por exemplo, que os blocos de metadados que incluem parâmetros de transformada de volume de cor (por exemplo, unidades externas SEI Que contêm os parâmetros) não são analisadas, decodificadas e/ou usadas de outra forma. Alternativa ou adicionalmente, não a parte de processamento do fluxo de bits pode significar, por
Petição 870190048209, de 23/05/2019, pág. 147/202
130/156 exemplo, não o processamento (por exemplo, decodificação e/ou exibição) dados de video associados aos parâmetros de transformação de volume de cor. Alternativa ou adicionalmente, não o processamento de uma parte do fluxo de bits pode significar não decodificar ou exibir o fluxo de bits inteiro [00412] Em algumas implementações, um conjunto codificado de parâmetros de transformação de volume de cor inclui uma característica de transferência. Nestas implementações, o processo 1000 inclui ainda determinar que um valor da característica de transferência é valor particular, tal como um valor que indica que a função de transferência ST 2084 é incluída no fluxo de bits ou um valor que indica que a função de transferência de HPG é incluída no fluxo de bits. Nestas implementações, o fluxo de bits codificado não se conforma em forma de um ou mais blocos de metadados são incluídas no fluxo de bits codificado e o valor da característica de transferência é um valor particular.
[00413] Em alguns casos, o conjunto codificado de parâmetros de transformada de volume de cor e o conjunto de parâmetros de volume de cor de visor mestre inclui um mesmo campo. Nesses casos, a determinação de que o fluxo de bits codificado é não conformado é também baseada no campo estando presente em ambos, um ou mais blocos de metadados e um ou mais blocos de metadados adicionais.
[00414] Em alguns casos, o conjunto codificado de parâmetros de transformada de volume de cor e o conjunto de parâmetros de volume de cor de visor mestre inclui um mesmo campo, e o campo é omitido do um ou mais blocos de
Petição 870190048209, de 23/05/2019, pág. 148/202
131/156 metadados. Nesses casos, ao decodificar o conjunto de parâmetros de volume de cor, decodificação utiliza um valor para o campo a partir do conjunto codificado de parâmetros de volume de cor de exibição mestre.
[00415] Em alguns casos, os dados de video sendo processados incluem uma pluralidade de janelas de processamento. Nesses casos, a determinação de que o fluxo de bits codificado é não conformado pode ser adicionalmente baseada em uma quantidade da pluralidade de janelas de processamento sendo maior do que dezesseis.
[00416] Em alguns casos, os dados de video incluem uma pluralidade de elementos de descrição de conteúdo. Nesses casos, a determinação de que o fluxo de bits codificado é não conformado pode ser adicionalmente baseada em uma quantidade da pluralidade de elementos de descrição de conteúdo sendo maior do que um.
[00417] Em alguns casos, os dados de video incluem uma pluralidade de elementos de exibição alvos. Nestes casos, a determinação de que o fluxo de bits codificado é não conformado pode ser adicionalmente baseada em uma quantidade da pluralidade de elementos de exibição alvo sendo maior do que dezesseis.
[00418] Em algumas implementações, o processo 1000 também pode incluir a determinação de que o fluxo de bits codificado não inclui um bloco de metadados para uma unidade de acesso em particular no fluxo de bits codificado. Nestas implementações, a determinação de que o fluxo de bits codificado não se conforma pode ser também baseada no fluxo de bits codificado não incluindo um bloco de metadados para a unidade de acesso especifica.
Petição 870190048209, de 23/05/2019, pág. 149/202
132/156 [00419] Em algumas implementações, o processo 1000 também pode incluir a determinação de que o fluxo de bits codificado inclui um valor reservado. Nestas implementações, a determinação de que o fluxo de bits codificado é não conformado ainda com base no fluxo de bits codificado que inclui um valor reservado.
[00420] Em algumas implementações, um ou mais blocos de metadados incluem, cada um, um valor de comprimento. Nesses casos, a determinação de que o fluxo de bits codificado é não conformado ainda com base no valor de comprimento não sendo um múltiplo de oito. Em alguns casos, a determinação de que o fluxo de bits codificado é não conformado ainda com base no valor de comprimento sendo maior do que 255.
[00421] Os métodos e operações aqui discutidos podem ser implementados utilizando vídeo comprimido, e pode ser implementada em um sistema de codificação e decodificação de video exemplar (por exemplo, sistema 100). Em alguns exemplos, um sistema inclui um dispositivo fonte que fornece dados de video codificados a serem decodificados em um momento posterior por um dispositivo de destino. Em particular, o dispositivo fonte fornece os dados de video para o dispositivo de destino através de um meio legível por computador. O dispositivo fonte e o dispositivo de destino podem compreender qualquer uma de uma ampla gama de dispositivos, incluindo computadores de mesa, notebook (isto é, laptop) computadores, computadores de mesa, caixas de mesa, aparelhos telefônicos tais como os assim chamados telefones inteligentes, assim chamadas blocos inteligentes, televisões, câmeras, dispositivos de
Petição 870190048209, de 23/05/2019, pág. 150/202
133/156 exibição, tocadores de mídia digital, consoles de jogos de vídeo, dispositivo de transmissão contínua de vídeo, ou semelhantes. Em alguns casos, o dispositivo fonte e o dispositivo de destino podem ser equipados para comunicação sem fio.
[00422] O dispositivo de destino pode receber os dados de vídeo codificados a serem decodificados através do meio legível por computador. O meio legível por computador pode compreender qualquer tipo de meio ou dispositivo capaz de mover os dados de vídeo codificados a partir do dispositivo fonte para o dispositivo de destino. Em um exemplo, o meio legível por computador pode compreender um meio legível por computador para permitir que o dispositivo fonte transmita dados de vídeo codificados diretamente para o dispositivo de destino em tempo real. Os dados de vídeo codificados podem ser modulados de acordo com um padrão de comunicação, tal como um protocolo de comunicação sem fio, e transmitidos ao dispositivo de destino. O meio de comunicação pode compreender qualquer meio de comunicação sem fio ou por fios, tal como uma radiofrequência (RF) espectro ou uma ou mais linhas de transmissão físicas. O meio de comunicação pode formar parte de uma rede baseada em pacotes, tal como uma rede de área local, rede de área ampla, ou rede global tal como a Internet. O meio de comunicação pode incluir roteadores, comutadores, estações base, ou qualquer outro equipamento que possa ser útil para facilitar a comunicação do dispositivo fonte para o dispositivo de destino.
[00423] Em alguns exemplos, os dados codificados podem ser emitidos a partir da interface de
Petição 870190048209, de 23/05/2019, pág. 151/202
134/156 saida para um dispositivo de armazenamento. Similarmente, os dados codificados podem ser acessados a partir do dispositivo de armazenamento por interface de entrada. 0 dispositivo de armazenamento pode incluir qualquer dentre uma variedade de sistemas distribuídos ou distribuídos meios de armazenamento de dados acessados localmente, tal como um disco rigido, discos Blu-ray, DVDs, CD-ROMs, Memória instantânea, memória volátil ou não-volátil, ou qualquer outro meio de armazenamento digital adequado para armazenamento de dados de video codificados. Em um exemplo adicional, o dispositivo de armazenamento pode corresponder a um servidor de arquivo ou servidor um outro dispositivo de armazenamento intermediário que pode armazenar o video codificado gerado pelo dispositivo fonte. 0 dispositivo de destino pode acessar dados de video armazenados a partir do dispositivo de armazenamento através de transmissão continua ou transferência. 0 servidor de arquivos pode ser qualquer tipo de servidor capaz de armazenar dados de video codificados e transmitir os dados de video codificados para o dispositivo de destino. Servidores de arquivos exemplificativos incluem um servidor da web (por exemplo, para um site de rede) , um servidor FTP, dispositivos de armazenamento ligado por rede (NAS), ou uma unidade de disco local. Dispositivo de destino pode acessar os dados de video codificados através de qualquer conexão de dados padrão, incluindo uma conexão de Internet. Isto pode incluir um canal sem fio (por exemplo, uma conexão Wi-Fi), uma conexão cabeada (por exemplo, DSL, modem de cabo, etc.) ou uma combinação de ambos que é adequado para acessar dados de video codificados armazenados em um servidor de
Petição 870190048209, de 23/05/2019, pág. 152/202
135/156 arquivos. A transmissão de dados de vídeo codificados a partir do dispositivo de armazenamento pode ser uma transmissão contínua, uma transmissão de transferência, ou uma combinação dos mesmos.
[00424] As técnicas desta descrição não são necessariamente limitadas a aplicações ou ajustes sem fio. As técnicas podem ser aplicadas a codificação de vídeo em suporte de qualquer uma de uma variedade de aplicações multimídia, tais como radiodifusões de televisão através do ar, transmissões de televisão a cabo, transmissões de televisão por satélite, transmissões de vídeo de transmissão contínua de Internet, tal como transmissão contínua adaptativa dinâmica através de HTTP (DASH) vídeo digital que é codificado em um meio de armazenamento de dados, decodificação de vídeo digital armazenado em um meio de armazenamento de dados, ou outras aplicações. Em alguns exemplos, sistema pode ser configurado para suportar uma via ou transmissão de vídeo de duas vias para suportar aplicações tais como transmissão contínua de vídeo, reprodução de vídeo, difusão de video, e/ou videotelefonia.
[00425] Em um exemplo, o dispositivo fonte inclui uma fonte de video, um codificador de vídeo e uma interface de salda. O dispositivo de destino pode incluir uma interface de entrada, um decodificador de video e um dispositivo de exibição. O codificador de vídeo do dispositivo fonte pode ser configurado para aplicar as técnicas aqui descritas. Em outros exemplos, um dispositivo fonte e um dispositivo de destino podem incluir outros componentes ou disposições. Por exemplo, o dispositivo fonte pode receber dados de video a partir de uma fonte
Petição 870190048209, de 23/05/2019, pág. 153/202
136/156 externa de video, tal como uma câmera externa. Do mesmo modo, o dispositivo de destino pode fazer interface com um dispositivo de exibição externo, ao invés de incluir um dispositivo de exibição integrado.
[00426] O sistema exemplar acima é meramente um exemplo. Técnicas para processamento de dados de video em paralelo podem ser realizadas por qualquer dispositivo de codificação e/ou decodificação de video digital. Muito embora as técnicas desta descrição sejam realizadas por um dispositivo de codificação de video, as técnicas também podem ser executadas por um codificador/decodificador de video, tipicamente referido como Um CODEC . Além disso, as técnicas desta descrição podem também ser executadas por um pré-processador de video. Dispositivo fonte e dispositivo de destino são meramente exemplos de tais dispositivos de codificação nos quais o dispositivo fonte gera dados de vídeo codificados para transmissão para dispositivo de destino. Em alguns exemplos, os dispositivos fonte e de destino podem operar de uma maneira substancialmente simétrica de modo que cada um dos dispositivos inclua componentes de codificação e decodificação de vídeo. Portanto, os sistemas de exemplo podem suportar a transmissão de vídeo de uma via ou de duas vias entre os dispositivos de vídeo, por exemplo, para transmissão contínua de vídeo, reprodução de vídeo, difusão de vídeo, ou videotelefonia.
[00427] A fonte de vídeo pode incluir um dispositivo de captura de vídeo, tal como uma câmera de vídeo, um arquivo de vídeo contendo vídeo previamente capturado e/ou uma interface de entrada de vídeo para
Petição 870190048209, de 23/05/2019, pág. 154/202
137/156 receber video a partir de um provedor de conteúdo de video. Como alternativa adicional, a fonte de video pode gerar dados com base em gráficos de computador como o video fonte, ou uma combinação de video ao vivo, video arquivado e video gerado por computador. Em alguns casos, se a fonte de video for uma câmera de video, dispositivo fonte e dispositivo de destino podem formar os chamados telefones de câmera ou telefones de video. Como mencionado acima, entretanto, as técnicas descritas nesta descrição podem ser aplicáveis a codificação de video em geral, e podem ser aplicados a aplicações sem fio e/ou com fios. Em cada caso, o video capturado, pré-capturado ou gerado por computador pode ser codificado pelo codificador de video. A informação de video codificada pode então ser emitida por interface de
saida para o meio legivel por computador.
[00428] Como notado, o meio legivel por
computador pode incluir midia transiente, tal como uma
transmissão sem fios ou uma transmissão de rede cabeada, ou midia de armazenamento (isto é, midia de armazenamento não transitória) tal como um disco rigido, disco compacto, disco compacto, disco de video digital, disco Blu-ray, ou outro meio legivel por computador. Em alguns exemplos, um servidor de rede (não mostrado)) pode receber dados de video codificados a partir do dispositivo fonte e fornecer os dados de video codificados para o dispositivo de destino, por exemplo, transmissão por via de rede. Similarmente, um dispositivo de computação de uma instalação de produção média, tal como uma instalação de estampagem de disco, pode receber dados de video codificados a partir do dispositivo fonte e produzir um
Petição 870190048209, de 23/05/2019, pág. 155/202
138/156 disco contendo os dados de video codificados. Portanto, ο meio legivel por computador pode ser compreendido como incluindo uma ou mais midia legivel por computador de várias formas, em vários exemplos.
[00429] A interface de entrada do dispositivo de destino recebe informações do meio legivel por computador. A informação do meio legivel por computador pode incluir informação de sintaxe definida pelo codificador de video, que é também utilizada pelo decodificador de video, que inclui elementos de sintaxe que descrevem características e/ou processamento de blocos e outras unidades codificadas, por exemplo, grupo de imagens (GOP) . Um dispositivo de exibição exibe os dados de vídeo decodificados para um usuário, e pode compreender qualquer um de uma variedade de dispositivos de exibição, tais como um tubo de raios catódicos (CRT), um visor de cristal líquido (LCD), um visor de plasma, um diodo emissor de luz orgânico (OLED) visor, ou outro tipo de dispositivo de exibição. Várias modalidades da invenção foram descritas.
[00430] Os detalhes específicos do dispositivo de codificação 104 e do dispositivo de decodificação 112 são mostrados na Figura 11 e Na Figura 12, respectivamente. A Figura 11 é um diagrama de blocos que ilustra um exemplo de dispositivo de codificação 104 que pode implementar uma ou mais das técnicas descritas neste relatório. O dispositivo de codificação 104 pode, por exemplo, gerar as estruturas de sintaxe descritas aqui (por exemplo, as estruturas de sintaxe de um VPS, SPS, PPS, ou outros elementos de sintaxe). Dispositivo de codificação 104 pode executar codificação intra-predição e interpredição de
Petição 870190048209, de 23/05/2019, pág. 156/202
139/156 blocos de video em fatias de video. Conforme descrito anteriormente, a intra-codificação se baseia, pelo menos em parte, predição espacial para reduzir ou remover redundância espacial dentro de um dado quadro de video ou imagem. A intercodificação se baseia, pelo menos em parte, predição temporal para reduzir ou remover redundância temporal dentro de quadros adjacentes ou circundantes de uma sequência de video. Intra-modo (modo I) pode se referir a qualquer um dos vários modos de compressão com base espacial. Intermodos, tais como predições uni-direccionais (modo P) ou bipredição (modo B), pode se referir a qualquer um dos diversos modos de compressão à base temporal.
[00431] O dispositivo de codificação 104 inclui uma unidade de partição 35, unidade de processamento de previsão 41, unidade de filtro 63, memória de imagem 64, somador 50, unidade de processamento de transformada 52, unidade de quantização 54, e unidade de codificação de entropia 56. Unidade de processamento de previsão 41 inclui unidade de estimativa de movimento 42, unidade de compensação de movimento 44, e unidade de processamento intra-predição 46. Para reconstrução de bloco de video, o dispositivo de codificação 104 também inclui unidade de quantização inversa 58, unidade de processamento de transformada inversa 60, e somador 62. Unidade de filtro 63 destina-se a representar um ou mais filtros de laço, tal como um filtro de desbloqueio, filtro de laço adaptativo (ALF) e um filtro de compensação adaptativa de amostras (SAO) . Embora a unidade de filtro 63 seja mostrada na Figura 1 como sendo um filtro em laço, em outras configurações, a unidade de filtro 63 pode ser implementada
Petição 870190048209, de 23/05/2019, pág. 157/202
140/156 como um filtro pós-laço. Um dispositivo de pósprocessamento 57 pode executar processamento adicional em dados de vídeo codificados gerados pelo dispositivo de codificação 104. As técnicas desta descrição podem, em alguns casos, ser implementadas pelo dispositivo de codificação 104. Em outros casos, entretanto, uma ou mais das técnicas desta exposição podem ser implementadas pelo dispositivo de pós-processamento 57 [00432] Como mostrado na Figura 1, o dispositivo de codificação 104 recebe dados de vídeo, e a unidade de partição 35 divide os dados em blocos de vídeo. A partição também pode incluir particionamento em fatias, segmentos de fatias, ladrilhos ou outras unidades maiores, bem como partição de bloco de vídeo, por exemplo, de acordo com uma estrutura quadrangular de LCUs e CUs. O dispositivo de codificação 104 geralmente ilustra os componentes que codificam blocos de vídeo dentro de uma fatia de vídeo a ser codificada. A fatia pode ser dividida em múltiplos blocos de vídeo (e possivelmente em conjuntos de blocos de vídeo referidos como ladrilhos). A unidade de processamento de predição 41 pode selecionar um dentre uma pluralidade de possíveis modos de codificação, tal como uma dentre uma pluralidade de modos de codificação intra-predição ou uma dentre uma pluralidade de modos de codificação interpredição, para o bloco de vídeo atual com base em resultados de erros (por exemplo, taxa de codificação e nível de distorção, ou similar). A unidade de processamento de predição 41 pode fornecer o bloco intra- ou intercodifiçado resultante para o somador 50 para gerar dados de bloco residuais e para o somador 62 para
Petição 870190048209, de 23/05/2019, pág. 158/202
141/156 reconstruir o bloco codificado para utilização como uma imagem de referência.
[00433] A unidade de processamento intrapredição 46 dentro da unidade de processamento de predição 41 pode executar a codificação intra-predição do bloco de video atual em relação a um ou mais blocos vizinhos no mesmo guadro ou fatia que o bloco atual a ser codificado para a provisão de uma compressão espacial. A unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 dentro da unidade de processamento de predição 41 realizam a codificação interpreditiva do bloco de video atual em relação a um ou mais blocos preditivos em uma ou mais imagens de referência para a provisão de uma compressão temporal [00434] Unidade de estimativa de movimento 42 pode ser configurada para determinar o modo de interpredição para uma fatia de video de acordo com um padrão predeterminado para uma sequência de video. 0 padrão predeterminado pode designar fatias de video na sequência como fatias de P, fatias de B ou fatias de GPB. A unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 podem ser altamente integradas, mas são ilustradas separadamente para propósitos conceituais. Estimativa de movimento, realizada pela unidade de estimativa de movimento 42, é o processo de geração de vetores de movimento, que estimam movimento para blocos de video. Um vetor de movimento, por exemplo, pode indicar o deslocamento de uma unidade de predição (PU) de um bloco de video dentro de um quadro de video atual ou imagem em relação a um bloco preditivo dentro de uma imagem de
Petição 870190048209, de 23/05/2019, pág. 159/202
142/156 referência .
[00435] Um bloco preditivo é um bloco que é encontrado para combinar com precisão a PU do bloco de video a ser codificado em termos de diferença de pixel, que pode ser determinado pela soma da diferença absoluta (SAD), soma de diferença quadrada (SSD), ou outras métricas de diferença. Em alguns exemplos, o dispositivo de codificação 104 pode calcular valores para posições de pixel inteiro de imagens de referência armazenadas na memória de imagem 64. Por exemplo, o dispositivo de codificação 104 pode interpelar valores de posições de um quarto de pixel, posições de pixel de um oitavo, ou outras posições de pixel fracional da imagem de referência. Portanto, a unidade de estimativa de movimento 42 pode executar uma busca de movimento em relação às posições de pixel completas e posições de pixel fracional e saida de um vetor de movimento com precisão fracional de pixel.
[00436] Unidade de estimativa de movimento 42 calcula um vetor de movimento para uma PU de um bloco de video em uma fatia intercodifiçada pela comparação da posição da PU na Posição de um bloco preditivo de uma imagem de referência. A imagem de referência pode ser selecionada a partir de uma primeira lista de imagem de referência (lista 0) ou uma segunda lista de imagem de referência (listai), cada um dos quais identifica uma ou mais imagens de referência armazenadas na memória de imagem 64. Unidade de estimativa de movimento 42 envia o vetor de movimento calculado para a unidade de codificação de entropia 56 e unidade de compensação de movimento 44.
[00437] Compensação de movimento, realizada
Petição 870190048209, de 23/05/2019, pág. 160/202
143/156 pela unidade de compensação de movimento 44, pode envolver a busca ou a geração do bloco preditivo com base no vetor de movimento determinado por estimativa de movimento, possivelmente executando interpelações para precisão de sub-pixel. Ao receber o vetor de movimento para a PU do bloco de vídeo atual, unidade de compensação de movimento 44 pode localizar o bloco preditivo no qual os pontos de vetor de movimento em uma lista de imagem de referência. 0 dispositivo de codificação 104 forma um bloco de vídeo residual pela subtração dos valores de pixel do bloco de vídeo preditivo dos valores de pixel do bloco de vídeo atual sendo codificado, formando valores de diferença de pixel. Os valores de diferença de pixel formam dados residuais para o bloco, e podem incluir componentes de diferença de luma e de croma. O somador 50 representa o componente ou componentes que realizam esta operação de subtração. A unidade de compensação de movimento 44 pode também gerar elementos de sintaxe associados com os blocos de vídeo e a fatia de vídeo para utilização pelo dispositivo de decodificação 112 na decodificação dos blocos de vídeo da fatia de vídeo.
[00438] Unidade de processamento intra-predição 46 pode intra-prever um bloco atual, como alternativa à interpredição realizada pela unidade de estimativa de movimento 42 e unidade de compensação de movimento 44, conforme descrito acima. Em particular, a unidade de processamento intra-predição 46 pode determinar um modo intra-predição para utilizar para codificar um bloco atual. Em alguns exemplos, a unidade de processamento intrapredição 46 pode codificar um bloco atual utilizando vários
Petição 870190048209, de 23/05/2019, pág. 161/202
144/156 modos intra-predição, por exemplo , Durante passos de codificação separados, e processamento de unidade intrapredição 46 pode selecionar modo intra-predição apropriado para utilização a partir dos modos testados. Por exemplo, a unidade de processamento intra-predição 46 pode calcular valores de distorção de taxa utilizando a análise de distorção de taxa para os vários modos de intra-predição testados, e pode selecionar o modo intra-predição tendo as melhores características de distorção de taxa entre os modos testados. A análise de distorção de taxa geralmente determina uma quantidade de distorção (ou erro) entre um bloco codificado e um original, bloco não codificado que foi codificado para produzir o bloco codificado, bem como uma taxa de bits (isto é, um número de bits) usado para produzir o bloco codificado. A unidade de processamento Intra-predição 46 pode calcular razões a partir das distorções e taxas para vários blocos codificados para determinar qual modo intra-prognóstico exibe o melhor valor de distorção de taxa para o bloco.
[00439] Em qualquer caso, após selecionar um modo intra-predição para um bloco, a unidade de processamento intra-predição 46 pode fornecer informações indicativas do modo intra-predição selecionado para o bloco para a unidade de codificação de entropia 56. A unidade de codificação de entropia 56 pode codificar a informação indicando o modo intra-predição selecionado. O dispositivo de codificação 104 pode incluir na configuração de bits de bits transmitida definições de dados de contextos de codificação para vários blocos assim como indicações de um modo intra-predição mais provável, uma tabela de índice de
Petição 870190048209, de 23/05/2019, pág. 162/202
145/156 modo intra-predição, e uma tabela de índice de modo intrapredição modificada para uso para cada um dos contextos. Os dados de configuração de fluxo de bits podem incluir uma pluralidade de tabelas de índice de modo intra-predição e uma pluralidade de tabelas de índice de modo intra-predição modificadas (também referidas como tabelas de mapeamento de palavras de código).
[00440] A unidade de processamento de predição 41 gera o bloco preditivo para o bloco de vídeo atual através de interpredição ou intra-predição, o dispositivo de codificação 104 forma um bloco de vídeo residual pela subtração do bloco preditivo do bloco de vídeo atual. Os dados de vídeo residuais no bloco residual podem ser incluídos em um ou mais TUs e aplicados à unidade de processamento de transformação 52. A unidade de processamento de transformada 52 transforma os dados de vídeo residuais em coeficientes de transformada residuais utilizando uma transformada, tal como uma transformada discreta de cosseno (DCT) ou uma transformada conceitualmente similar. A unidade de processamento de transformada 52 pode converter os dados de vídeo residuais de um domínio de pixel para um domínio de transformada, tal
como um domínio de frequência.
[00441] Unidade de processamento de
transformação 52 pode enviar os coeficientes de
transformada resultantes para a unidade de quantificação 54. A unidade de quantização 54 quantiza os coeficientes de transformada para reduzir ainda mais a taxa de bits. O processo de quantificação pode reduzir a profundidade de bits associada a alguns ou todos os coeficientes. O grau de
Petição 870190048209, de 23/05/2019, pág. 163/202
146/156 quantificação pode ser modificado pelo ajuste de um parâmetro de quantificação. Em alguns exemplos, a unidade de quantização 54 pode então efetuar uma varredura da matriz que inclui os coeficientes de transformada quantizados. Alternativamente, a unidade de codificação de entropia 56 pode executar a varredura.
[00442] A seguir da quantificação, a entropia da unidade de codificação de entropia 56 codifica os coeficientes de transformada quantizados. Por exemplo, a unidade de codificação de entropia 56 pode realizar a codificação de comprimento variável adaptativa de contexto (CAVLC), codificação aritmética binária adaptativa de contexto (CABAC), codificação aritmética binária adaptativa de contexto à base de sintaxe (SBAC), codificação de entropia de partição de intervalo de probabilidade (PIPE) ou outra técnica de codificação de entropia. Seguindo a codificação de entropia pela unidade de codificação de entropia 56, o fluxo de bits codificado pode ser transmitido para o dispositivo de decodificação 112, ou arquivada para transmissão posterior ou recuperação pelo dispositivo de decodificação 1 122 a unidade de codificação de entropia 56 também pode codificar por entropia os vetores de movimento e os outros elementos de sintaxe para a fatia de vídeo atual que está sendo codificada.
[00443] Unidade de quantificação inversa 58 e unidade de processamento de transformada inversa 60 aplicam quantificação inversa e transformação inversa, respectivamente, para reconstruir o bloco residual no domínio de pixel para utilização posterior como um bloco de referência de uma imagem de referência. A unidade de
Petição 870190048209, de 23/05/2019, pág. 164/202
147/156 compensação de movimento 44 pode calcular um bloco de referência adicionando o bloco residual a um bloco preditivo de uma das imagens de referência dentro de uma lista de imagem de referência. A unidade de compensação de movimento 44 pode também aplicar um ou mais filtros de interpelação ao bloco residual reconstruído para calcular valores de pixel sub-inteiros para utilização em estimativa de movimento. 0 somador 62 adiciona o bloco residual reconstruído ao bloco de predição compensado de movimento produzido pela unidade de compensação de movimento 44 para produzir um bloco de referência para armazenamento na memória de imagem 64. 0 bloco de referência pode ser usado por unidade de estimativa de movimento 42 e unidade de compensação de movimento 44 como um bloco de referência para interprever um bloco em um quadro ou imagem de vídeo subsequente.
[00444] Desta maneira, o dispositivo de
codificação 104 da Figura 11 representa um exemplo de um
codificador de vídeo configurado para gerar sintaxe para um
fluxo de bits de vídeo codificado. 0 dispositivo de
codificação 104 pode, por exemplo, gerar conjuntos de
parâmetros VPS, SPS e PPS como descrito acima. 0
dispositivo de codificação 104 pode executar qualquer uma
das técnicas aqui descritas, incluindo os processos descritos acima com relação às Figuras 7 e 8. As técnicas desta descrição foram geralmente descritas com relação ao dispositivo de codificação 104, mas como mencionado acima, algumas das técnicas desta descrição também podem ser implementadas pelo dispositivo de pós-processamento 57 [00445] A Figura 12 é um diagrama de blocos que
Petição 870190048209, de 23/05/2019, pág. 165/202
148/156 ilustra um exemplo de dispositivo de decodificação 112. 0 dispositivo de decodificação 112 inclui uma unidade de decodificação de entropia 80, unidade de processamento de predição 81, unidade de quantização inversa 86, unidade de processamento de transformada inversa 88, somador 90, unidade de filtro 91, e memória de imagem 92. A unidade de processamento de predição 81 inclui a unidade de compensação de movimento 82 e a unidade de processamento de predição intra 84. O dispositivo de decodificação 112 pode, em alguns exemplos, executa uma passagem de decodificação geralmente recíproca à passagem de codificação descrita com relação ao dispositivo de codificação 104 da Figura 16.
[00446] Durante o processo de decodificação, o dispositivo de decodificação 112 recebe um fluxo de bits de vídeo codificado que representa blocos de vídeo de uma fatia de vídeo codificada e elementos de sintaxe associados enviados pelo dispositivo de codificação 104. Em algumas modalidades, o dispositivo de decodificação 112 pode receber o fluxo de bits de vídeo codificado a partir do dispositivo de codificação 104. Em algumas modalidades, o dispositivo de decodificação 112 pode receber o fluxo de bits de vídeo codificado a partir de uma entidade de rede 7 9, tal como um servidor, um elemento de rede ciente de meios (MANE), editor/organizador de vídeo, ou outro dispositivo configurado para implementar uma ou mais das técnicas descritas acima. A entidade de rede 79 pode ou não incluir o dispositivo de codificação 104. Algumas das técnicas descritas neste relatório podem ser implementadas pela entidade de rede 7 9 antes da entidade de rede 7 9 transmitir o fluxo de bits de vídeo codificado para o
Petição 870190048209, de 23/05/2019, pág. 166/202
149/156 dispositivo de decodificação 1 122 em Alguns sistemas de decodificação de video, a entidade de rede 79 e o dispositivo de decodificação 112 podem ser partes de dispositivos separados, enquanto em outros casos, a funcionalidade descrita com relação à entidade de rede 79 pode ser realizada pelo mesmo dispositivo que compreende o dispositivo de decodificação 112.
[00447] A unidade de decodificação de entropia 80 do dispositivo de decodificação 112 decodifica por entropia o fluxo de bits para gerar coeficientes quantizados, vetores de movimento, e outros elementos de sintaxe. A unidade de decodificação de entropia 80 encaminha os vetores de movimento e outros elementos de sintaxe para a unidade de processamento de predição 81. O dispositivo de decodificação 112 pode receber os elementos de sintaxe no nivel de fatia de video e/ou no nivel do bloco de video. A unidade de decodificação de entropia 80 pode processar e analisar tanto elementos de sintaxe de comprimento fixo como elementos de sintaxe de comprimento variável em ou mais conjuntos de parâmetros, tal como Um VPS, SPS, e PPS.
[00448] Quando a fatia de video é codificada como uma imagem intra-codificada (I) a unidade de processamento de predição intra-predição 84 da unidade de processamento de predição 81 pode gerar dados de predição para um bloco de video do INT fatia de video corrente com base em um modo intra-predição sinalizado e dados dos blocos previamente decodificados do quadro ou imagem atual. Quando o quadro de video é codificado como um entrelaçamento intercodifiçado (isto é, B, P ou GPB) a
Petição 870190048209, de 23/05/2019, pág. 167/202
150/156 unidade de compensação de movimento 82 da unidade de processamento de predição 81 produz blocos preditivos para um bloco de vídeo da fatia de vídeo atual com base em LT nos vetores de movimento e outros elementos de sintaxe recebidos da unidade decodificadora de entropia 80. Os Blocos preditivos podem ser produzidos a partir de uma das imagens de referência dentro de uma lista de imagem de referência. O dispositivo de decodificação 112 pode construir as listas de quadro de referência, a Lista 0 e a Lista 1, utilizando técnicas de construção padrão baseadas em imagens de referência armazenadas na memória de imagem 92 .
[00449] A unidade de compensação de movimento 82 determina a informação de predição para um bloco de vídeo da fatia de vídeo atual por análise dos vetores de movimento e outros elementos de sintaxe, e utiliza a informação de predição para produzir os blocos preditivos para o bloco de vídeo atual sendo decodificado. Por exemplo, a unidade de compensação de movimento 82 pode usar um ou mais elementos de sintaxe em um conjunto de parâmetros para determinar um modo de predição (por exemplo, Intra-ou interpredição) usado para codificar os blocos de vídeo da fatia de vídeo, um tipo de fatia de interpredição (por exemplo, fatia de B, fatia de P ou fatia de GPB) informação de construção para uma ou mais listas de imagem de referência para a fatia, vetores de movimento para cada bloco de vídeo intercodifiçado da fatia, estado interpredição para cada bloco de vídeo intercodifiçado da fatia, e outras informações para decodificar os blocos de vídeo na fatia de vídeo atual.
Petição 870190048209, de 23/05/2019, pág. 168/202
151/156 [00450] A unidade de compensação de movimento 82 também pode executar interpelação com base em filtros de interpelação. A unidade de compensação de movimento 82 pode usar filtros de interpelação conforme usados pelo dispositivo de codificação 104 durante a codificação dos blocos de vídeo para calcular valores interpelados para pixels sub-inteiros de blocos de referência. Neste caso, a unidade de compensação de movimento 82 pode determinar os filtros de interpelação utilizados pelo dispositivo de codificação 104 a partir dos elementos de sintaxe recebidos, e pode utilizar os filtros de interpelação para produzir blocos preditivos.
[00451] Unidade de quantificação inversa 86 quantifica inversa ou desquantifica, os coeficientes de transformada quantizados providos no fluxo de bits e decodificados pela unidade de decodificação por entropia 802. O processo de quantificação inversa pode incluir o uso de um parâmetro de quantificação calculado pelo dispositivo de codificação 104 para cada bloco de vídeo na fatia de vídeo para determinar um grau de quantificação e, da mesma forma, um grau de quantificação inversa que deve ser aplicado. A unidade de processamento de transformada inversa 88 aplica uma transformada inversa (por exemplo, uma DCT inversa ou outra transformada inversa adequada), uma transformada de inteiro inverso, ou um processo de transformada inversa conceitualmente similar, para os coeficientes de transformada a fim de produzir blocos residuais no domínio de pixel.
[00452] A unidade de compensação de movimento 82 gera o bloco preditivo para o bloco de vídeo atual com
Petição 870190048209, de 23/05/2019, pág. 169/202
152/156 base nos vetores de movimento e outros elementos de sintaxe, o dispositivo de decodificação 112 forma um bloco de vídeo decodificado pela soma dos blocos residuais da unidade de processamento de transformação inversa 88 com os blocos preditivos correspondentes gerados pela unidade de
compensação de movimento 82 . 0 Somador 90 representa o
componente ou componentes que realizam esta operação de
soma. Se desejado, filtros de laço (ou no laço de
codificação ou após o laço de codificação) também pode ser
utilizada para suavizar transições de pixel, ou para
melhorar de out ra forma a qualidade de ví deo. A unidade de
filtro 91 destina-se a representar um ou mais filtros de laço, tal como um filtro de desbloqueio, um filtro de circuito adaptativo (ALF) e um filtro de compensação adaptativa de amostras (SAO). Embora a unidade de filtro 91 seja mostrada na Figura 12 como sendo um filtro em laço, em outras configurações, a unidade de filtro 91 pode ser implementada como um filtro pós-laço. Os blocos de vídeo decodificados em um dado quadro ou imagem são então armazenados na memória de imagem 92, que armazena imagens de referência utilizadas para compensação de movimento subsequente. A memória de imagem 92 também armazena vídeo decodificado para apresentação posterior em um dispositivo de exibição, tal como o dispositivo de destino de vídeo 122 mostrado na Figura 1.
[00453] Na descrição precedente, aspectos da aplicação são descritos com referência a suas modalidades específicas, mas aqueles versados na técnica reconhecerão que a invenção não é limitada à mesma. Assim, embora modalidades ilustrativas da aplicação tenham sido descritas
Petição 870190048209, de 23/05/2019, pág. 170/202
153/156 em detalhe aqui, deve ser entendido que os conceitos inventivos podem ser de outro modo variadamente incorporados e empregados, e que as reivindicações anexas destinam-se a ser interpretadas de modo a incluírem tais variações, exceto como limitado pela técnica anterior. Várias características e aspectos da invenção descrita acima podem ser usados individualmente ou em conjunto. Além disso, as modalidades podem ser utilizadas em qualquer número de ambientes e aplicações além daquelas descritas aqui sem se afastar do espirito e escopo mais amplos da especificação. 0 relatório descritivo e desenhos, consequentemente, devem ser considerados como ilustrativos, ao invés de restritivos. Para fins de ilustração, os métodos foram descritos em uma ordem em particular. Deve ser apreciado que em configurações alternativas, os métodos podem ser realizados em ordem diferente daquela descrita.
[00454] Onde os componentes são descritos como sendo configurados para executar certas operações, tal configuração pode ser realizada, por exemplo, por projeto de circuitos eletrônicos ou outro hardware para realizar a operação, por programação de circuitos eletrônicos programáveis (por exemplo, microprocessadores, ou outros circuitos eletrônicos adequados) para realizar a operação, ou qualquer combinação dos mesmos.
[00455] Os vários blocos lógicos ilustrativos, módulos, circuitos, e etapas de algoritmos descritas com relação às modalidades aqui descritas podem ser implementadas como hardware eletrônico, software de computador, firmware, ou combinações dos mesmos. Para ilustrar claramente esta intercambialidade de hardware e
Petição 870190048209, de 23/05/2019, pág. 171/202
154/156 software, vários componentes ilustrativos, blocos, módulos, circuitos e etapas foram descritos acima geralmente em termos de sua funcionalidade. Se tal funcionalidade é implementada como hardware ou software depende da aplicação especifica e das restrições de projeto impostas ao sistema global. Os versados na técnica podem implementar a funcionalidade descrita de diversas maneiras para cada aplicação especifica, mas tais decisões de implementação não devem ser interpretadas como um afastamento do escopo da presente invenção.
[00456] As técnicas aqui descritas podem também ser implementadas em hardware eletrônico, software de computador, firmware, ou qualquer combinação dos mesmos. Tais técnicas podem ser implementadas em qualquer dentre uma variedade de dispositivos, tais como computadores de finalidades gerais, aparelhos de dispositivos de comunicação sem fio, ou dispositivos de circuito integrado com múltiplos usos, incluindo aplicação em aparelhos de comunicação sem fio, aparelhos e outros dispositivos. Quaisquer características descritas como módulos ou componentes podem ser implementadas em um dispositivo lógico integrado ou separadamente como dispositivos lógicos discretos mas interoperáveis. Se implementado em software, as técnicas podem ser realizadas pelo menos em parte por meio de meio de armazenamento de dados legível por computador compreendendo código de programa que inclui instruções que, quando executado, executa um ou mais dos métodos descritos acima. Meio de armazenamento de dados legível por computador pode formar parte de um produto de programa de computador, que pode incluir materiais de
Petição 870190048209, de 23/05/2019, pág. 172/202
155/156 embalagem. 0 meio legível por computador ou armazenamento de dados, tal como uma memória de acesso aleatório (RAM) tal como memória de acesso aleatório dinâmica síncrona (SDRAM), memória somente de leitura (ROM), memória de acesso aleatório não-volátil (NVRAM), memória somente de leitura programável eletricamente apagável (EEPROM), memória FLASH, meios de armazenamento de dados magnéticos ou ópticos, e semelhantes. As técnicas adicionalmente, ou alternativamente, podem ser realizadas pelo menos em parte por meio de um meio de comunicação legível por computador que transporta ou comunica código de programa na forma de instruções ou estruturas de dados e que pode ser acessada, leitura e/ou executada por um computador, tal como sinais ou ondas propagados.
[00457] O código de programa pode ser executado por um processador, o qual pode incluir um ou mais processadores, tal como um ou mais processadores de sinais digitais (DSPs), microprocessadores de finalidade geral, circuitos integrados de aplicação específica (ASICs), arranjos lógicos programáveis em campo (FPGAs), ou outros circuitos lógicos integrados ou discretos equivalentes. Tal processador pode ser configurado para executar qualquer uma das técnicas descritas neste relatório. Um processador de uso geral pode ser um microprocessador; mas na alternativa, o processador pode ser qualquer processador, controlador, microcontrolador ou máquina de estado convencionais. Um processador também pode ser implementado como uma combinação de dispositivos de computação, por exemplo, uma combinação de um DSP e um microprocessador, uma pluralidade de microprocessadores, um ou mais microprocessadores em
Petição 870190048209, de 23/05/2019, pág. 173/202
156/156 conjunto com um núcleo DSP, ou qualquer outra tal configuração. Consequentemente, o termo processador, conforme usado aqui, pode se referir a qualquer uma da estrutura precedente, qualquer combinação da estrutura precedente, ou qualquer outra estrutura ou aparelho adequado para implementação das técnicas aqui descritas. Além disso, em alguns aspectos, a funcionalidade aqui descrita pode ser provida dentro de módulos de software dedicados ou módulos de hardware configurados para codificação e decodificação, ou incorporado em um codificador-decodificador de video combinado (CODEC).

Claims (28)

  1. REIVINDICAÇÕES
    1. Método para o processamento de dados de vídeo, compreendendo:
    receber os dados de vídeo, em que os dados de vídeo incluem pelo menos dois sinais de vídeo;
    obter um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de vídeo;
    determinar uma região de exibição para cada um dos pelo menos dois sinais de vídeo, em que as regiões de exibição determinam uma porção de um quadro de vídeo no qual os sinais de vídeo serão exibidos;
    determinar, para cada um dos pelo menos dois sinais de vídeo, uma associação respectiva entre um sinal de vídeo entre os pelo menos dois sinais de vídeo e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que conjuntos de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para regiões de exibição para sinais de vídeo;
    gerar um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformada de volume de cor; gerar um fluxo de bits codificado para os dados
    de vídeo, em que o fluxo de bits codificado inclui um ou mais blocos de metadados; e codificar, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor.
    Petição 870190048209, de 23/05/2019, pág. 175/202
  2. 2/12
    2. Método, de acordo com a reivindicação 1, em que a codificação das respectivas associações determinadas entre os pelo menos dois sinais de vídeo e um ou mais conjuntos de parâmetros de volume de cor inclui a colocação de um ou mais blocos de metadados no fluxo de bits codificado de acordo com uma ordem das regiões de exibição dentro do quadro de vídeo.
  3. 3. Método, de acordo com a reivindicação 1, em que a codificação das respectivas associações determinadas entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor incluem a inserção de um ou mais valores no fluxo de bits codificado que cada um indica as respectivas associações determinadas.
  4. 4. Método, de acordo com a reivindicação 1, em que uma primeira região de exibição para um primeiro sinal de vídeo entre pelo menos dois sinais de vídeo se sobrepõem a uma segunda região de exibição para um segundo sinal de vídeo entre os pelo menos dois sinais de vídeo, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição.
  5. 5. Método, de acordo com a reivindicação 4, em que a prioridade é baseada em uma ordem na qual a primeira região de exibição e a segunda região de exibição são exibidas no quadro de vídeo.
  6. 6. Método, de acordo com a reivindicação 4, em que a prioridade é baseada em um valor provido pelos dados de vídeo.
    Petição 870190048209, de 23/05/2019, pág. 176/202
    3/12
  7. 7. Método, de acordo com a reivindicação 1, em que um ou mais blocos de metadados são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
  8. 8. Aparelho para processar dados de video, compreendendo:
    uma memória configurada para armazenar dados de video, em que os dados de video incluem pelo menos dois sinais de video; e um processador configurado para:
    obter um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de video determinar uma região de exibição para cada um dos pelo menos dois sinais de video, em que as regiões de exibição determinam partes de um quadro de video no qual dois sinais de video serão exibidos;
    determinar, para cada um dos pelo menos dois sinais de video, associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que conjuntos de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para regiões de exibição para sinais de video;
    gerar um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformada de volume de cor;
    gerar um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados; e
    Petição 870190048209, de 23/05/2019, pág. 177/202
    4/12 codificar, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor.
  9. 9. Aparelho, de acordo com a reivindicação 8, em que a codificação das respectivas associações determinadas entre pelo menos dois sinais de vídeo e um ou mais conjuntos de parâmetros de volume de cor inclui a colocação de um ou mais blocos de metadados no fluxo de bits codificado de acordo com uma ordem das regiões de exibição dentro do quadro de vídeo.
  10. 10. Aparelho, de acordo com a reivindicação 8, em que a codificação das respectivas associações determinadas entre os pelo menos dois sinais de vídeo e o um ou mais conjuntos de parâmetros de volume de cor incluem a inserção de um ou mais valores no fluxo de bits codificado que cada um indica as respectivas associações determinadas.
  11. 11. Aparelho, de acordo com a reivindicação 8, em que uma primeira região de exibição para um primeiro sinal de vídeo entre pelo menos dois sinais de vídeo se sobrepõem a uma segunda região de exibição para um segundo sinal de vídeo entre os pelo menos dois sinais de vídeo, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição.
  12. 12. Aparelho, de acordo com a reivindicação 8, em que um ou mais blocos de metadados são codificados em
    Petição 870190048209, de 23/05/2019, pág. 178/202
    5/12 uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
  13. 13. Meio legível por computador não transitório que tem armazenado nele instruções que, quando executado por um ou mais processadores, fazer com que o um ou mais processadores:
    receber dados de vídeo, em que os dados de vídeo incluem pelo menos dois sinais de vídeo;
    obter um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de vídeo;
    determinar uma região de exibição para cada um dos pelo menos dois sinais de vídeo, em que as regiões de exibição determinam partes de um quadro de vídeo no qual os sinais de vídeo serão exibidos;
    determinar, para cada um dos pelo menos dois sinais de vídeo, uma associação entre um sinal de vídeo entre pelo menos dois sinais de vídeo e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que conjuntos de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para regiões de exibição para sinais de vídeo;
    gerar um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformada de volume de cor;
    gerar um fluxo de bits codificado para os dados de vídeo, em que o fluxo de bits codificado inclui um ou mais blocos de metadados; e codificar, no fluxo de bits codificado, as respectivas associações determinadas entre os pelo menos
    Petição 870190048209, de 23/05/2019, pág. 179/202
    6/12 dois sinais de video e o um ou mais conjuntos de parâmetros de volume de cor.
  14. 14. Aparelho para processar dados de video, compreendendo:
    meios para receber os dados de video, em que os dados de video incluem pelo menos dois sinais de video;
    meios para a obtenção de um ou mais conjuntos de parâmetros de transformação de volume de cor a partir dos dados de video meios para determinar uma região de exibição para cada um dos pelo menos dois sinais de video, em que as regiões de exibição determinam partes de um quadro de video no qual os sinais de video serão exibidos;
    meios para determinar, para cada um dos pelo menos dois sinais de video, associação entre um sinal de video entre os pelo menos dois sinais de video e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor, em que conjuntos de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para regiões de exibição para sinais de video;
    meios para a geração de um ou mais blocos de metadados para um ou mais conjuntos de parâmetros de transformada de volume de cor;
    meios para a geração de um fluxo de bits codificado para os dados de video, em que o fluxo de bits codificado inclui um ou mais blocos de metadados; e meios para a codificação, no fluxo de bits codificado, a respectiva associação respectiva entre os
    Petição 870190048209, de 23/05/2019, pág. 180/202
    7/12 pelo menos dois sinais de vídeo e um ou mais conjuntos de parâmetros de volume de cor.
  15. 15. Método de processamento de dados de vídeo, compreendendo:
    receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de vídeo codificados e um ou mais bits mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor;
    determinar uma região de exibição para cada um dos dois sinais de vídeo pelo menos codificados;
    determinar, para cada um dos dois sinais de vídeo pelo menos codificados, associação entre um sinal de vídeo entre os pelo menos dois sinais de vídeo codificados e um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformada de volume de cor; e decodificar pelo menos dois sinais de vídeo codificados utilizando um respectivo conjunto associado de parâmetros de transformada de volume de cor, em que o respectivo conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
  16. 16. Método, de acordo com a reivindicação 15, em que as respectivas associações entre os pelo menos dois sinais de vídeo codificados e o um ou mais conjuntos de parâmetros de transformação de volume de cor é baseado em uma ordem das regiões de exibição.
  17. 17. Método, de acordo com a reivindicação 15, em
    Petição 870190048209, de 23/05/2019, pág. 181/202
    8/12 que as respectivas associações entre os pelo menos dois sinais de video codificados e o um ou mais conjuntos de parâmetros de transformação de volume de cor são baseados em um ou mais valores incluídos no fluxo de bits codificado.
  18. 18. Método, de acordo com a reivindicação 15, em que uma primeira região de exibição para um primeiro sinal de video entre pelo menos dos sinais de video codificados se sobrepõem a uma segunda região de exibição para um segundo sinal de video entre os pelo menos dois sinais de video codificados, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição.
  19. 19. Método, de acordo com a reivindicação 18, em que a prioridade é baseada em uma ordem na qual a a primeira região de exibição e a segunda região de exibição são exibidas em um quadro de video.
  20. 20. Método, de acordo com a reivindicação 18, em que a prioridade é baseada em um valor provido pelos dados de video.
  21. 21. Método, de acordo com a reivindicação 18, em que um ou mais blocos de metadados são codificados em uma ou mais Unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
  22. 22. Aparelho para processar dados de video, compreendendo:
    uma memória configurada para armazenar dados de
    Petição 870190048209, de 23/05/2019, pág. 182/202
    9/12 vídeo; e um processador configurado para:
    receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de vídeo codificados e um ou mais bits mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor;
    determinar uma região de exibição para cada um dos dois sinais de vídeo pelo menos codificados;
    determinar, para cada um dos pelo menos dois sinais de vídeo codificados, associação entre um sinal de vídeo entre os pelo menos dois sinais de vídeo codificados e um conjunto de parâmetros de transformação de volume de cor entre o conjunto de parâmetros de transformação de volume de cor; e decodificar os pelo menos dois sinais de vídeo codificados utilizando um respectivo conjunto associado de parâmetros de transformada de volume de cor, em que o respectivo conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
  23. 23. Aparelho, de acordo com a reivindicação 22, em que as respectivas associações entre os pelo menos dois sinais de vídeo codificados e o um ou mais conjuntos de parâmetros de transformação de volume de cor é baseado em uma ordem das regiões de exibição.
  24. 24. Aparelho, de acordo com a reivindicação 22, em que as respectivas associações entre os pelo menos dois sinais de vídeo codificados e o um ou mais conjuntos de
    Petição 870190048209, de 23/05/2019, pág. 183/202
    10/12 parâmetros de transformação de volume de cor são baseados em um ou mais valores incluídos no fluxo de bits codificado.
  25. 25. Aparelho, de acordo com a reivindicação 22, em que uma primeira região de exibição para um primeiro sinal de vídeo entre pelo menos dois sinais de vídeo codificados se sobrepõem a uma segunda região de exibição para um segundo sinal de vídeo entre os pelo menos dois sinais de vídeo codificados, e em que um conjunto de parâmetros de transformação de volume de cor entre um ou mais conjuntos de parâmetros de transformação de volume de cor para uso na região de sobreposição é determinado por uma prioridade entre a primeira região de exibição e a segunda região de exibição.
  26. 26. Aparelho, de acordo com a reivindicação 22, em que o um ou mais blocos de metadados funcionam são codificadas em uma ou mais unidades de camada de abstração de rede (NAL) de informação de melhoria suplementar (SEI).
  27. 27. Meio legível por computador não transitório que tem armazenado nele instruções que, quando executado por um ou mais processadores, fazer com que o um ou mais processadores:
    receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de vídeo codificados e um ou mais bits mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor;
    determinar uma região de exibição para cada um dos dois sinais de vídeo pelo menos codificados;
    determinar, para cada um dos pelo menos dois
    Petição 870190048209, de 23/05/2019, pág. 184/202
    11/12 sinais de video codificados, associação entre um sinal de video entre os pelo menos dois sinais de video codificados e um conjunto de parâmetros de transformação de volume de cor entre o conjunto de parâmetros de transformada de volume de cor; e decodificar pelo menos dois sinais de video codificados utilizando um respectivo conjunto associado de parâmetros de transformada de volume de cor, em que o respectivo conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
  28. 28. Aparelho para processar dados de video, compreendendo:
    meios para receber um fluxo de bits codificado, em que o fluxo de bits codificado inclui pelo menos dois sinais de video codificados e um ou mais blocos de metadados que incluem um ou mais conjuntos de parâmetros de transformada de volume de cor;
    meios para determinar uma região de exibição para cada um dos dois sinais de video pelo menos codificados;
    meios para determinar, para cada um dos pelo menos dois sinais de video codificados, associação entre um sinal de video entre os pelo menos dois sinais de video codificados e um conjunto de parâmetros de transformação de volume de cor entre o conjunto de parâmetros de transformação de volume de cor; e meios para decodificar os pelo menos dois sinais de video codificados utilizando um respectivo conjunto associado de parâmetros de transformada de volume de cor,
    Petição 870190048209, de 23/05/2019, pág. 185/202
    12/12 em que o respectivo conjunto associado de parâmetros de transformação de volume de cor determinam um ou mais parâmetros de exibição para uma região de exibição correspondente.
BR112019010515A 2016-11-30 2017-11-30 sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos BR112019010515A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662428511P 2016-11-30 2016-11-30
US15/826,549 US10812820B2 (en) 2016-11-30 2017-11-29 Systems and methods for signaling and constraining a high dynamic range (HDR) video system with dynamic metadata
PCT/US2017/064058 WO2018102605A1 (en) 2016-11-30 2017-11-30 Systems and methods for signaling and constraining a high dynamic range (hdr) video system with dynamic metadata

Publications (1)

Publication Number Publication Date
BR112019010515A2 true BR112019010515A2 (pt) 2019-10-01

Family

ID=62190666

Family Applications (2)

Application Number Title Priority Date Filing Date
BR112019010468A BR112019010468A2 (pt) 2016-11-30 2017-11-30 sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos
BR112019010515A BR112019010515A2 (pt) 2016-11-30 2017-11-30 sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR112019010468A BR112019010468A2 (pt) 2016-11-30 2017-11-30 sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos

Country Status (9)

Country Link
US (2) US10979729B2 (pt)
EP (2) EP3549342A1 (pt)
JP (2) JP2020501426A (pt)
KR (2) KR102593072B1 (pt)
CN (2) CN109964485B (pt)
AU (2) AU2017367694A1 (pt)
BR (2) BR112019010468A2 (pt)
TW (2) TW201824866A (pt)
WO (2) WO2018102604A1 (pt)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10880557B2 (en) 2015-06-05 2020-12-29 Fastvdo Llc High dynamic range image/video coding
US10225561B2 (en) * 2015-10-08 2019-03-05 Mediatek Inc. Method and apparatus for syntax signaling in image and video compression
US10257393B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Devices and methods for high dynamic range video
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
WO2017153376A1 (en) * 2016-03-07 2017-09-14 Koninklijke Philips N.V. Encoding and decoding hdr videos
CA3033242A1 (en) 2016-08-09 2018-02-15 Contrast, Inc. Real-time hdr video for vehicle control
US10834400B1 (en) * 2016-08-19 2020-11-10 Fastvdo Llc Enhancements of the AV1 video codec
US10979729B2 (en) 2016-11-30 2021-04-13 Qualcomm Incorporated Systems and methods for signaling and constraining a high dynamic range (HDR) video system with dynamic metadata
US10200687B2 (en) * 2017-06-02 2019-02-05 Apple Inc. Sample adaptive offset for high dynamic range (HDR) video compression
US10306307B2 (en) * 2017-06-30 2019-05-28 Apple Inc. Automatic configuration of video output settings for video source
CN109218755B (zh) * 2017-07-07 2020-08-25 华为技术有限公司 一种媒体数据的处理方法和装置
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
CN116170586B (zh) * 2018-10-08 2024-03-26 北京达佳互联信息技术有限公司 对视频信号进行解码或编码的方法、计算装置和存储介质
KR20200095651A (ko) * 2019-02-01 2020-08-11 삼성전자주식회사 고 동적 범위 콘텐트를 재생하는 전자 장치 및 그 방법
CN111406404B (zh) * 2019-07-15 2022-07-12 上海极清慧视科技有限公司 获得视频文件的压缩方法、解压缩方法、系统及存储介质
CN110691194B (zh) * 2019-09-19 2021-04-20 锐迪科微电子(上海)有限公司 广色域图像确定方法及装置
US11483529B2 (en) * 2019-10-23 2022-10-25 Nbcuniversal Media, Llc Normalized high-dynamic range visualization
KR102302755B1 (ko) * 2019-12-30 2021-09-16 재단법인 경주스마트미디어센터 Drm 콘텐츠 병렬 패키징 장치 및 이를 포함하는 drm 콘텐츠 병렬 패키징 시스템 및 drm 콘텐츠 병렬 패키징 방법
KR102373833B1 (ko) * 2020-01-09 2022-03-14 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
EP4115611A4 (en) * 2020-03-30 2023-06-28 ByteDance Inc. Slice type in video coding
KR20230019850A (ko) 2020-06-09 2023-02-09 바이트댄스 아이엔씨 서브픽처 레벨 및 버퍼링 정보의 시그널링
US11508296B2 (en) * 2020-06-24 2022-11-22 Canon Kabushiki Kaisha Image display system for displaying high dynamic range image
US20240013508A1 (en) * 2022-07-08 2024-01-11 Avago Technologies International Sales Pte. Limited Systems for and methods for assisting users with color blindness

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278435B1 (en) * 1998-04-03 2001-08-21 Tektronix, Inc. Compression and acquisition count optimization in a digital oscilloscope variable intensity rasterizer
JP2001333348A (ja) * 2000-05-24 2001-11-30 Minolta Co Ltd 送信装置、受信装置、放送システムおよび放送方法
US7414753B2 (en) 2004-05-06 2008-08-19 Canon Kabushiki Kaisha Color characterization using nonlinear regression
US9538176B2 (en) * 2008-08-08 2017-01-03 Dolby Laboratories Licensing Corporation Pre-processing for bitdepth and color format scalable video coding
BRPI1009443B1 (pt) * 2009-03-13 2021-08-24 Dolby Laboratories Licensing Corporation Método de geração de parâmetros de mapeamento de tons inverso, método de compactação de dados de vídeo e método para geração de um fluxo de bits de saída a partir de um fluxo de bits de entrada
JP6009538B2 (ja) * 2011-04-28 2016-10-19 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. Hdr画像を符号化及び復号するための装置及び方法
US20150201199A1 (en) 2011-12-07 2015-07-16 Google Inc. Systems and methods for facilitating video encoding for screen-sharing applications
US10880565B2 (en) * 2014-03-24 2020-12-29 Qualcomm Incorporated Use of specific HEVC SEI messages for multi-layer video codecs
US9942575B1 (en) 2014-11-13 2018-04-10 Google Llc Assigning videos to single-stream and multi-stream decoders
US10547844B2 (en) * 2014-12-04 2020-01-28 Lg Electronics Inc. Broadcasting signal transmission and reception method and device
TWI764870B (zh) * 2015-07-28 2022-05-21 法商內數位麥德遜專利控股有限公司 視訊訊號處理裝置及方法
US10917669B2 (en) * 2015-09-07 2021-02-09 Lg Electronics Inc. Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
AU2015227469A1 (en) * 2015-09-17 2017-04-06 Canon Kabushiki Kaisha Method, apparatus and system for displaying video data
JP6132006B1 (ja) * 2015-12-02 2017-05-24 日本電気株式会社 映像符号化装置、映像システム、映像符号化方法、及び映像符号化プログラム
WO2017116419A1 (en) 2015-12-29 2017-07-06 Thomson Licensing Method and apparatus for metadata insertion pipeline for streaming media
US20190075325A1 (en) * 2016-03-30 2019-03-07 Lg Electronics Inc. Method and apparatus for transmitting and receiving broadcast signals
PT3523970T (pt) * 2016-10-05 2022-10-07 Dolby Laboratories Licensing Corp Mensagens de informação de volume de cor de origem
US10979729B2 (en) 2016-11-30 2021-04-13 Qualcomm Incorporated Systems and methods for signaling and constraining a high dynamic range (HDR) video system with dynamic metadata

Also Published As

Publication number Publication date
CN109983772A (zh) 2019-07-05
CN109983772B (zh) 2022-02-22
KR20190089889A (ko) 2019-07-31
US20180152721A1 (en) 2018-05-31
EP3549343A1 (en) 2019-10-09
KR102594222B1 (ko) 2023-10-25
AU2017367694A1 (en) 2019-05-02
KR102593072B1 (ko) 2023-10-23
US10979729B2 (en) 2021-04-13
US20180152703A1 (en) 2018-05-31
TW201824867A (zh) 2018-07-01
KR20190089888A (ko) 2019-07-31
EP3549342A1 (en) 2019-10-09
TW201824866A (zh) 2018-07-01
WO2018102605A1 (en) 2018-06-07
AU2017368247A1 (en) 2019-05-02
CN109964485B (zh) 2022-01-11
JP2020501430A (ja) 2020-01-16
BR112019010468A2 (pt) 2019-09-10
WO2018102604A1 (en) 2018-06-07
JP2020501426A (ja) 2020-01-16
US10812820B2 (en) 2020-10-20
CN109964485A (zh) 2019-07-02

Similar Documents

Publication Publication Date Title
BR112019010515A2 (pt) sistemas e métodos para sinalizar e restringir um sistema de vídeo de alto alcance dinâmico (hdr) com metadados dinâmicos
KR102277879B1 (ko) 비디오 코딩을 위한 동일 범위들 및 다른 dra 파라미터들에 대한 시그널링 메커니즘들
US11102495B2 (en) Methods and systems for generating and processing content color volume messages for video
TWI755363B (zh) 用於高動態範圍及廣色域視訊寫碼之補充增強資訊(sei)訊息
BR112018004504B1 (pt) Processamento aperfeiçoado de uma mensagem de informação de melhoramento adicional de informação de remapeamento de cor
KR20210045458A (ko) 역 양자화 장치 및 방법
BR112016021529B1 (pt) Dispositivo de computação, método e meio legível por computador para ajuste de quantização/escalada e quantização/escalada inversa ao alternar áreas de cor
BR112020012101A2 (pt) controle de parâmetro de quantificação para codificação de vídeo com quantificação à base de transformada/pixel conjunta
US10368099B2 (en) Color remapping information SEI message signaling for display adaptation
WO2021212014A1 (en) Flexible chroma processing for dynamic range adjustment
BR112021003741A2 (pt) codificador, decodificador e métodos correspondentes usando uma codificação de paleta
BR112021003999A2 (pt) relação entre elementos de restrição de partição

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 5A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2698 DE 20-09-2022 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.