BR122020007529B1 - Conceito de codificação que permite o processamento paralelo, desmultiplexador de transporte e fluxo de bites de vídeo - Google Patents

Conceito de codificação que permite o processamento paralelo, desmultiplexador de transporte e fluxo de bites de vídeo Download PDF

Info

Publication number
BR122020007529B1
BR122020007529B1 BR122020007529-5A BR122020007529A BR122020007529B1 BR 122020007529 B1 BR122020007529 B1 BR 122020007529B1 BR 122020007529 A BR122020007529 A BR 122020007529A BR 122020007529 B1 BR122020007529 B1 BR 122020007529B1
Authority
BR
Brazil
Prior art keywords
wpp
tiles
chunks
subflows
tile
Prior art date
Application number
BR122020007529-5A
Other languages
English (en)
Inventor
Thomas Schierl
Valeri GEORGE
Karsten GRÜNEBERG
Heiner Kirchhoffer
Anastacia Henkel
Detlev Marpe
Original Assignee
Ge Video Compression, Llc
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 Ge Video Compression, Llc filed Critical Ge Video Compression, Llc
Publication of BR122020007529B1 publication Critical patent/BR122020007529B1/pt

Links

Images

Classifications

    • 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/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/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/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Color Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

conceito de codificação que permite o processamento paralelo, desmultiplexador de transporte e fluxo de bites de vídeo. uma carga útil de sequência de bytes em bruto, que descreve uma imagem em pedaços, subfluxos ou placas wpp e codificada usando a codificação aritmética binária adaptativa de contexto, está subdividida ou cortada em parcelas com a continuação da adaptação de probabilidade de codificação aritmética binária adaptativa de contexto para além dos limites da parcela. através desta medida, os limites da parcela adicionalmente introduzidos dentro de pedaços, subfluxos ou tiles wpp não reduzem a eficiência da codificação entrópica destes elementos. por outro lado, porém, as parcelas são mais pequenas do que os pedaços originais, subfluxos ou tiles wpp e podem respetivamente ser transmitidas mais cedo, isto é, com menos atraso do que as entidades originais não cortadas, isto é, os pedaços, subfluxos ou tiles wpp. de acordo com outro aspeto, que pode ser combinado com o primeiro aspeto, as unidades nal de marcador de subfluxo são utilizadas dentro da sequência de unidades nal de um fluxo de bites de vídeo para permitir um desmultiplexador de transporte para atribuir dados de pedaços dentro das unidades nal aos correspondentes subfluxos ou tiles, de modo a poder, em paralelo, servir de decodificador multi-roscado com os correspondentes subfluxos ou tiles.

Description

[001] A presente invenção refere-se a conceitos de codificação que permitem um processamento paralelo, como no envolvimento HEVC, um desmultiplexador de transporte e um fluxo de bites de vídeo.
[002] A paralelização de codificador e decodificador é muito importante devido aos requisitos de processamento aumentados pelo padrão HEVC, assim como, pelo aumento esperado da resolução de vídeo. As arquiteturas de múltiplos núcleos estão a ficar disponíveis em uma ampla variedade de dispositivos eletrônicos modernos. Consequentemente, são necessários eficientes métodos para permitir o uso de arquiteturas de múltiplos núcleos.
[003] A codificação ou decodificação de LCUs ocorre em uma análise por varrimento, pela qual as probabilidades CABAC são adaptadas às especificidades de cada imagem. Existem dependências espaciais entre LCUs adjacentes. Cada LCU depende do seu vizinho esquerdo, acima, acima à esquerda e acima à direita, devido a diferentes componentes, por exemplo, vetor de movimento, predição, intra-predição e outros. De modo a permitir a paralelização na decodificação, estas dependências têm de ser normalmente interrompidas ou são interrompidas em aplicações da tecnologia atual.
[004] Foram propostos alguns conceitos de paralelização, nomeadamente o processamento da frente de onda, que usam pedaços entrópicos [3], operações de processamento paralelo da frente de onda (WPP), usando subfluxos [2] [4], [11] ou tiles [5]. O último não tem de ser necessariamente combinado com o processamento de frente de inda para permitir a paralelização na decodificação ou codificação. Deste ponto de vista, os tiles são idênticos a subfluxos WPP. O nosso motivador inicial para continuar a estudar o conceito de pedaços entrópicos é concretizar técnicas que reduzem a perda da eficiência de codificação, diminuindo assim o fardo sobre o fluxo de bites para abordagens de paralelização na codificação e decodificação.
[005] Para uma melhor compreensão, particularmente o uso de LCUs, é necessário olhar primeiro para a estrutura de H.264/AVC [1].
[006] Uma sequência de vídeo codificada em H.264/AVC consiste de séries de unidades de acesso que são recolhidas no fluxo da unidade NAL e usam apenas um conjunto de parâmetros de sequência. Cada sequência de vídeo pode ser decodificada independentemente. Uma sequência codificada consiste de uma sequência de imagens codificadas. Uma imagem codificada pode ser uma imagem inteira ou um campo único. Cada imagem é dividida em macro-blocos de tamanho fixo (em HEVC [5]: LCUs). Vário macro-blocos ou LCUs podem ser fundido em um pedaço. Uma imagem é, por isso, uma coleção de um ou mais pedaços. O objetivo desta separação de dados é permitir uma decodificação independente de amostras na área da imagem, que é representada pelo pedaço, sem usar os dados de outros pedaços.
[007] Uma técnica que é frequentemente chamada de “pedaços entrópicos” [3] é um fracionamento do pedaço tradicional em sub-pedaços adicionais. Especificamente, quer dizer formar pedaços de dados codificados entrópicos de um único pedaço. A disposição de pedaços entrópicos em um pedaço pode ter diferentes variedades. A mais simples é usar cada fila de LCUs/macroblocos em uma imagem como um pedaço entrópico. Em alternativa, as colunas ou regiões separadas podem ser utilizadas como pedaços entrópicos, que podem ser interrompidos e articulados uns com os outros, p. ex. pedaço 1 na Fig. 1.
[008] Um objetivo óbvio do conceito de pedaço entrópico é permitir o uso de CPU/GPU paralelo e arquiteturas de múltiplos núcleos, para melhorar o tempo do processo de decodificação, isto é, para acelerar o processo. O pedaço atual pode ser dividido em partições que podem ser analisadas e reconstruídas sem referência a outros dados de pedaços. Apesar de se poderem alcançar algumas vantagens com a abordagem de pedaços entrópicos, emergem algumas penalidades.
[009] O conceito de pedaços entrópicos foi estendido ao processamento de frente de onda de subfluxos (WPP), conforme proposto na [2], [10], [11] e parcialmente integrado em [5]. Aqui é definido o esquema de repetição dos subfluxos. Que têm uma inicialização do estado de entropia melhorada por linha comparada com pedaços entrópicos.
[010] O conceito de tile permite a separação da informação da imagem a codificar, ao mesmo tempo que cada tile possui a sua própria ordem da análise por varrimento. Um tile é definido por uma estrutura comum, que é repetida na imagem. Um tile também pode ter uma certa largura de coluna e altura de linha em termos de LCUs ou CUs.
[011] Os tiles podem ser codificados de modo independente e podem ser também codificados de modo a não precisarem de um processamento de união com outros tiles, para que essas tramas do decodificador possam processar tiles de uma Unidade de Acesso totalmente, ou pelo menos para alguns passos de operação de codificação, de modo independe, isto é, a codificação entrópica e codificação de transformação.
[012] Por isso, um tile permite fortemente correr codificadores de tiles, assim como decodificadores, total ou parcialmente independente, de um modo paralelo para cima, no último caso, p. ex. para o estágio de filtragem do codec HEVC.
[013] Para usar totalmente as técnicas de paralelização na corrente de captura, codificação, transmissão, decodificação e apresentação de um sistema de comunicação de vídeo ou sistemas idênticos, o transporte e o acesso dos dados entre os participantes de comunicação é um passo importante e demorado para toda a injeção de atraso extremo-a-extremo. Isto é especialmente um problema, se usar técnicas de paralelização, como tiles, subfluxos ou pedaços entrópicos.
[014] As abordagens de dados de subfluxos WPP implicam que os dados codificados das partições, se forem processados, não têm localidade de dados, isto é, um único encadeamento a decodificar a Unidade de Acesso, tem de saltar potencialmente grandes partes de memória para aceder a dados da próxima linha de subfluxo WPP. Um sistema de decodificação de encadeamento múltiplo tem de esperar para transmitir certos dados, isto é, subfluxos WPP, para trabalhar de um modo completamente paralelizado, explorando o processamento de frente de onda.
[015] No fluxo de vídeo, a permitir mais altas resoluções (Full-HD, QUAD- HD etc.) leva a maiores quantidades de dados que têm de ser transmitidos. Para cenários sensíveis ao tempo, os chamados Atrasos Baixos uso-caso, como conferências de vídeo (<145 ms) ou aplicações de jogos, (<40 ms) são precisos atrasos muito baixos extremo-a-extremo.
[016] Por isso, o tempo de transmissão torna-se em um fator crítico. Considere a ligação de carregamento de ADSL para uma aplicação de conferência de vídeo. Aqui, os chamados pontos de fluxo de acesso aleatório, normalmente estes referem-se a imagens I, serão os candidatos a causar um estrangulamento durante a transmissão.
[017] HEVC permite o chamado processamento Frente de Onda, assim como, o processamento de tiles no lado do codificador e no lado do decodificador. Isto é permitido pelo uso de pedaços entrópicos, subfluxos WPP ou mesmo uma combinação desses. O processamento paralelo é também permitido pela codificação e decodificação paralela de tiles.
[018] No caso “objetivo de não paralelização”, os dados de um pedaço inteiro seriam entregues de uma só vez, sendo assim o último CU dos pedaços acessível pelo decodificador se tiver sido transmitido. Isto não é um problema, se houver um decodificador encadeado único.
[019] No caso de encadeamento múltiplo, se puderem ser usados múltiplos CPUs ou núcleos, o processo de decodificação gostaria, porém, de começar assim que os dados codificados chegarem ao decodificador de Frente de Onda ou encadeamentos de decodificador de tiles.
[020] Assim sendo, seria favorável ter conceitos à mão que permitem reduzir o atraso de codificação em ambientes de processamento paralelos com menos sérias reduções na eficiência de codificação.
[021] Correspondentemente, a presente invenção tem por objetivo fornecer um conceito de codificação, um conceito de desmultiplexação de transporte e um fluxo de bites de vídeo, que permitem muito mais eficiência, uma codificação de baixo atraso em ambientes de processamento paralelos.
[022] Este objeto é conseguido pela questão das reivindicações independentes anexas.
[023] De acordo com um primeiro aspeto do presente pedido, uma carga útil de sequência de bytes em bruto que descreve uma imagem em pedaços, subfluxos WPP ou tiles e codificada usando a codificação aritmética binária adaptativa de contexto está subdividida ou cortada em parcelas com a continuação da adaptação de probabilidade de codificação aritmética binária adaptativa de contexto para além dos limites da parcela. Através desta medida, os limites da parcela adicionalmente introduzidos dentro de pedaços, subfluxos WPP ou tiles não reduzem a eficiência de codificação entrópica destes elementos. Por outro lado, porém, as parcelas são menores do que os pedaços originais, subfluxos WPP ou tiles e podem respectivamente ser transmitidas mais cedo, isto é, com menos atraso do que as entidades originais não cortadas, isto é, os pedaços, subfluxos WPP ou tiles.
[024] De acordo um outro aspeto, que pode ser combinado com o primeiro aspeto, as unidades NAL de marcador de subfluxo são utilizadas dentro da sequência de unidades NAL de um fluxo de bites de vídeo para permitir que um desmultiplexador de transporte atribua dados de pedaços dentro das unidades NAL aos correspondentes subfluxos ou tiles, de modo a poder, em paralelo, servir de decodificador de encadeamento múltiplo com os correspondentes subfluxos ou tiles.
[025] As implementações vantajosas são objeto das reivindicações dependentes. Além disso, as versões privilegiadas da presente invenção são explicadas em mais detalhe abaixo relativamente às figuras, entre as quais:
[026] a Fig.1 mostra uma esquemática que ilustra os possíveis compostos de pedaços entrópicos;
[027] a Fig.2 mostra uma esquemática que ilustra três tiles espalhados sobre três pedaços;
[028] a Fig.3 mostra a esquemática que ilustra um exemplo intercalar de trances de um esquema intercalar cíclico de parcelas de comprimento variável em quatro;
[029] a Fig.4 mostra uma esquemática que ilustra uma codificação, segmentação, intercalação e decodificação de dados de pedaços entrópicos;
[030] a Fig.5 mostra uma esquemática que ilustra um exemplo intercalar de trances do esquema intercalar cíclico de trances de comprimento variável em quatro, usando sempre códigos de marcador e a divulgação dos dados atuais do pedaço sobre múltiplas unidades NAL. Os códigos de marcador são usados, mesmo se a partição não estiver presente. Isto pode ser ainda mais melhorado, usando um identificador de parcelas, a seguir ao marcador, indicando o número de parcela. Isto prescinde da necessidade de enviar sempre um marcador, conforme exigido para o modo cíclico;
[031] a Fig. 6 mostra uma tabela de pseudo-códigos, ilustrando sintaxe de unidade;
[032] a Fig. 7 mostra uma tabela de pseudo-códigos, ilustrando uma sequência de sintaxe de conjunto de parâmetros;
[033] a Fig. 8 mostra uma tabela de pseudo-códigos, ilustrando uma sintaxe RBSP de camada de Pedaços de Baixo Atraso;
[034] a Fig. 9 mostra uma tabela de pseudo-códigos, ilustrando uma sintaxe de cabeçalho de pedaço;
[035] a Fig. 10 mostra uma tabela de pseudo-códigos, ilustrando uma sintaxe de marcador de subfluxos;
[036] a Fig. 11 mostra uma esquemática que ilustra um exemplo para um encapsulamento único de dados de pedaços entrópicos (AF é o Campo de Adaptação MPEG-2 TS);
[037] a Fig. 12 mostra uma esquemática que ilustra um exemplo para um encapsulamento único ES de dados de pedaços entrópicos;
[038] a Fig. 13 mostra uma esquemática que ilustra outro exemplo para um encapsulamento Empacotado Multi-ES de dados de pedaços entrópicos;
[039] a Fig. 14 mostra uma esquemática de diagrama de bloco, que ilustra um desmultiplexador de Transporte para ES único;
[040] a Fig. 15 mostra uma esquemática de diagrama de bloco, que ilustra um desmultiplexador de Transporte para multi-ES;
[041] a Fig. 16 mostra uma esquemática de diagrama de bloco, que ilustra um codificador;
[042] a Fig. 17 mostra uma esquemática de diagrama de bloco, que ilustra um decodificador;
[043] a Fig. 18 mostra um fluxograma de passos realizados pelos decodificador; e
[044] a Fig. 19 mostra uma esquemática que ilustra um exemplo para multi-ES, usando RTP.
[045] Para reduzir o tempo em que um encadeamento de decodificador paralelo pode iniciar e terminar os seus dados de uma imagem, as versões abaixo usam uma segmentação dos dados, estruturada para a paralelização, como dados de um ou mais tiles ou dados de um ou mais subfluxos WPP em pequenas parcelas através de uma abordagem intercalar de baixo atraso.
[046] Assim sendo, o codificador pode entregar dados, correspondentes a um conjunto em particular de LCUs ou pelo menos uma parte alinhada de bytes de um subfluxo ou tile ou partes suas em forma de uma parcela para o decodificador através do caminho de transmissão do codificador para o decodificador.
[047] Uma vez que as parcelas são menores do que todo o subfluxo WPP ou tile e/ou podem ser adaptadas à atual unidade de transferência máxima (MTU) do caminho de transmissão, de modo a que as parcelas de múltiplos subfluxos WPP ou tiles possam ser dispostas em uma unidade de transferência entre o codificador e decodificador, antes da finalização da unidade de acesso completa, a decodificação no lado de decodificação pode ser iniciada significativamente mais cedo do que se usar uma transmissão sequencial dos subfluxos WPP ou tiles completos de uma Unidade de Acesso.
[048] Isto resulta obviamente em uma transmissão mais rápida das parcelas e arranque mais cedo de um processo de decodificação paralelo no decodificador. A abordagem pode ser também aplicada para além de limites de imagem, no caso de o(s) próximo(s) pedaço(s) de imagem ou pedaço(s) entrópico(s) já puderem estar decodificados, p. ex., em um modo de frente de onda, com base no conhecimento de que a informação exigida para decodificar um pedaço entrópico de um imagem que se segue devido à disponibilidade e referências inter-imagem. Esses dados já decodificáveis de uma imagem que sucede na ordem de decodificação podem ser derivados a partir do comprimento máximo do vetor de movimento permitido/sinalizado ou da informação adicional no fluxo que indica as dependências de partes de dados para a(s) imagem/imagens precedentes, ou um esquema de referenciação fixado, indicando a posição usada sinalizada em uma posição de sequência fixa, como um conjunto de parâmetros.
[049] Uma imagem pode ser codificada com um pedaço entrópico por linha(s) (LCU) da unidade de codificação maior ou usando subfluxos WPP ou mesmo uma combinação como um subfluxo WPP por linha, que pode ainda estar incluído em um Pedaço Entrópico separada. Esse tipo de estrutura de dados é necessário para fazer uso da técnica de processamento de Frente de Onda no lado do decodificador. Ou podem ser usadas tiles para permitir o processamento paralelo.
[050] Durante o processo de codificação, o fluxo de bites de cada pedaço, que contém os dados de fluxos WPP ou tiles, pode ser dividido em parcelas de tamanho variável para corresponder ao tamanho máximo da unidade de transferência, entre codificador e decodificador. Depois, as parcelas resultantes são intercaladas e podem ser passadas à transmissão e colocadas em pacotes do tamanho MTU.
[051] Para permitir um processamento no lado do decodificador, antes ou depois de cada parcela, pode ser inserido um código de marcador. Um código de marcador apropriado para HEVC pode ser “0x00 00 02”, que até passaria a prevenção de emulação do código de arranque. Após recepção de um pacote que inclui múltiplas parcelas, o receptor ou decodificador podem analisar o fluxo de bites atualmente contidos durante o processo de prevenção de emulação do código de arranque para não exigir um passo de análise adicional. Pode haver, por exemplo, dois modos para a identificação da parcela. Pode haver sempre uma disposição cíclica das parcelas, a começar pela parcela com parcela_id (identificador de parcela) igual a 1 para a parcela com parcela_id igual a n. Isto pode guardar os dados de sinalização para o segundo método geral. Um método alternativo pode ser um cabeçalho específico a seguir ao marcador, indicando o parcela_id, p. ex. como um valor de bit 8.
[052] A desintercalação dos dados de parcela intercalada pode ser aplicada com base no conhecimento do número de parcelas por pacote, que pode ser um pacote de unidade NAL. Por isso, pode haver adicionalmente um mapeamento de subfluxos WPP ou tiles para parcelas. Este mapeamento pode ser implicitamente derivado do número de tiles/número de subfluxos WPP, ou pode ser sinalizado diretamente no CLP. O mapeamento é importante para o processo de desintercalação, de modo a que os dados de certos subfluxos WPP ou tiles possam ser identificados e servidos à frente de onda ou encadeamento de decodificador paralelo encarregue da decodificação do subfluxo WPP ou tile em questão.
[053] Para informar o decodificador sobre o uso do esquema de intercalação para o encapsulamento de baixo atraso, pode haver uma baixo_atraso_bandeira no cabeçalho de unidade NAL.
[054] Outro modo pode ser uma intercalação e desintercalação sobre a camada de transporte, isto é, fora do processo de decodificação talvez no RTP [8] [9] [0154] ou camada de Fluxo de Transporte MPEG-2 [7].
[055] Por isso, pode ser colocado um cabeçalho à frente do pacote, indicando a presença de uma parcela através de uma bandeira incluindo uma informação de tamanho em bytes por parcela presente. Uma vez que a camada de transporte é desacoplada do processo de decodificação, pode não haver necessidade de integrar um código de marcador, uma vez que a informação adicional da camada de transporte tem de ser, de qualquer modo, removida antes de passar esses dados para o decodificador. A camada de transporte registra depois também os dados para a entrega de fluxos de bites ao decodificador.
[056] Um cabeçalho de comprimento variável pode ser utilizado em uma camada de multiplexação extra. Esta camada de multiplexação também pode fazer parte de um codec e pode ser introduzida antes dos atual acesso dos Dados de Sequência de Bytes em Bruto (RBSP) no decodificador. Um esquema de cabeçalho pode ser encontrado na Fig. 3. Mas também pode haver um cabeçalho diretamente em frente a cada parcela, indicando o comprimento, assim como, do seu indicador. Onde continua a existir a necessidade de mapear o indicador para estruturas de fluxos de bites conforme já foi declarado antes.
[057] O tamanho da parcela pode ser também constante, p. ex. x bytes por parcela. Isto resulta em um esquema de multiplexação simples, como é apresentado na Fig. 4.
[058] O tamanho constante dos segmentos pode trazer um problema no fim do fluxo de bites devido ao seu tamanho variável.
[059] São possíveis duas soluções gerais. A primeira é uma geração de segmentos cíclicos de x-bytes (usualmente a representação do fluxo de bites do pedaço está alinhado com o byte) e o controle do consumo de bytes por cada motor de decodificador, isto é, o decodificador descobre a complementação de um pedaço entrópico ou incluindo um código de marcador.
[060] O segundo método é a sinalização de comprimentos de parcelas, se as parcelas forem de tamanho variável em um cabeçalho, conforme se pode ver na figura.
[061] O tamanho do segmento e o modo de intercalação podem ser sinalizados em uma mensagem SEI ou no CLP.
[062] O esquema de transmissão é apresentado na Figura 4.
[063] Outro método interessante é a utilização de códigos de finalização ou códigos de marcador no fim do conjunto de parcelas no pacote, como NAL ou pacote de pedaço. Neste caso, são possíveis segmentos de comprimento variável, sendo necessária uma análise completa do fluxo de bites. Para limitar aqui o acesso à memória, este processo de análise adicional para a multiplexação pode ser combinado com a análise de prevenção da emulação do código de arranque, exigido como primeiro passo antes de aceder aos dados RBSP contidos em uma unidade NAL. Este tipo de esquema de marcador é apresentado na Figura 5.
[064] A ideia aqui é dividir de modo intercalar uma estrutura de nível superior, como um pedaço atual, pedaço entrópico ou similar, na sua estrutura de dados de nível inferior contida, como subfluxos WPP ou tiles, enquanto intercala os dados em parcelas. Estas parcelas, pertencendo, cada uma, a uma estrutura de baixo nível, p. ex. um subfluxo WPP ou um tile específico, são intercaladas em um pacote de baixo atraso, que pode ser uma unidade NAL específica, uma unidade NAL com sinalização adicional através de uma bandeira de intercalação de baixo atraso ou mesmo um pedaço ou cabeçalho de pedaço de baixo peso que indica a abordagem de intercalação de baixo atraso através de uma bandeira ou o tipo de pedaço, conforme apresentado para a “unidade NAL #1” na figura, sendo assim o decodificador informado para aplicar uma função de gravação para um decodificador de encadeamento “único”, que está a usar um processamento sequencial das parcelas na ordem original/desintercalada no decodificador. Para dividir os dados de um pedaço atual como parcelas intercaladas sobre múltiplos pacotes para ganhar a característica de baixo atraso, uma camada de transporte pode fragmentar a unidade NAL que contém os dados intercalados de baixo atraso para pacotes de redes de tamanho máximo MTU. A fragmentação dos dados atuais do pedaço em múltiplas unidades NAL pode ser também diretamente aplicada pela camada de codificação, existindo assim a necessidade de sinalizar esse tipo de unidade NAL que contém a continuação de um pedaço, conforme apresentado na Fig. 5 para “unidade NAL #2”. Para detectar a finalização dos dados intercalados em múltiplos pacotes, como unidades NAL. Pode haver a necessidade de um código de finalização específico, como também é apresentado para “unidade NAL #2” na figura ou uma bandeira que indica a conclusão no pedaço ou cabeçalho NAL.
[065] No caso de perder os pacotes NAL, existe também a necessidade de detectar perdas. Isto pode ser aplicado por informação adicional no cabeçalho, p. ex. o cabeçalho de pedaço de baixo peso, como os primeiros MBs das parcelas contidas ou apenas de uma parcela específica #1. Possuindo informação como os desvios para os subfluxos WPP ou o atual tamanho da parcela, alguém pode também usar estes valores de tamanho (valores de desvio para um subfluxo WPP ou tile específico) para fazer uma verificação de sanidade depois de receber a unidade NAL com o código de finalização e as unidades NAL precedentes.
[066] Isto é, conforme descrito, as parcelas podem ser empacotados em pacotes 300 de modo a que cada pacote 300 compreenda uma parcela T# de cada subfluxo WPP ou tile da imagem, ou um subconjunto dos subfluxos WPP ou tiles da imagem (porque, por exemplo, um certo subfluxo WPP ou tile já foi completamente transportado através dos pacotes precedentes), dispostas por uma ordem # definida de entre os subfluxos WPP ou tiles, compreendendo cada pacote um cabeçalho 302 com a revelação das posições e/ou comprimentos das parcelas T# empacotados no respetivo pacote 300, ou marcadores 304 a separar as parcelas T# entre si dentro do respetivo pacote 300, em que o decodificador pode estar configurado para, ao receber a carga útil de sequência de bytes em bruto, usar a informação compreendida pelos cabeçalhos 302 ou os marcadores 304, de modo a aceder às parcelas dentro dos pacotes. Os pacotes 300a que compreendem as primeiras - de acordo com a ordem definida de entre os subfluxos WPP ou tiles - parcelas dos subfluxos WPP ou tiles da imagem, podem compreender um indicador 306 de características de atraso baixo, e os pacotes 300b que compreendem as segundas ou subsequentes - de acordo com a ordem definida de entre os subfluxos WPP ou tiles - parcelas T# dos subfluxos WPP ou tiles da imagem, podem compreender um indicador de continuação 308. Os pacotes 300 podem ser unidades NAL ou pedaços.
[067] Em seguida, é providenciado um exemplo para sinalizar a sintaxe e a semântica para a intercalação de baixo atraso em parcelas.
[068] No entanto, a divisão de dados de parcelas, como os dados de um subfluxo WPP ou tile, pode ser também aplicado no nível de pedaço ou abaixo, conforme declarado em cima.
[069] Agora, é apresentada uma abordagem, que pode ser combinada com a análise para a prevenção de emulação do código de arranque para reduzir passos de processamento adicionais. Por isso, é aplicada uma intercalação no nível RBSP do codec HEVC.
[070] Uma parcela pode ser vista como dividir dados RBSP em seções para serem intercaladas na seção de carga útil da unidade NAL para acesso a dados de baixo atraso. A finalização de uma parcela pode ser indicada pelo código 0x000002 e pode ser seguida por um identificador de parcela 8bit parcela_id. As parcelas podem ser intercaladas de modo cíclico, de modo a que o código final da parcela não seja seguida pelo parcela_id, que está implicitamente derivado. Os dados Rbsp em uma única parcela correspondem a dados de um tile, dados de subfluxo, dados de pedaço ou dados de um pedaço entrópico.
[071] Na sintaxe da unidade NAL, podem ser permitidos dois modos para a intercalação de baixo atraso conforme indicado pela “encapsulamento_bandeira de baixo atraso”, isto é a disposição cíclica das parcelas, assim como, uma indicação da parcela através de um identificador adicional “parcela_id” que segue o codificador de marcador através de uma bandeira, como a “cíclica_bandeira de baixo atraso” no cabeçalho da unidade NAL. Estas duas bandeiras podem estar também presentes no Conjunto de Parâmetros de Sequência ou mesmo no APS. Para as disposições de parcelas cíclicas, pode continuar a haver a necessidade de conhecer o número de parcelas durante a análise, conforme é providenciado no CLP como “núm_baixo_atraso_parcelas”.
[072] Na unidade NAL, os intercalados “LD_rbsp_byte”s são lidos pelo analisador, um gravador para a atual ordem RBSP sequencial no último para- ciclo na sintaxe NAL:
Figure img0001
[073] Pode haver também uma sinalização explícita no CLP ou no APS para um tamanho fixo de parcelas ciclicamente dispostas conforme indicado no “baixo_atraso_parcela_comprimento_menos1”. O último não foi usado no exemplo da sintaxe da unidade NAL, mas é direto se tiver um empacotamento conforme apresentado na Fig. 4 em pelo menos na sintaxe da unidade NAL da Fig. 6, um empacotamento conforme apresentado na Fig. 5 e discutida acima era o básico.
[074] Para possibilitar esta característica de intercalação de parcelas sobre múltiplos pacotes, como pedaços e/ou unidades NAL, pode haver um requisito para uma memória temporária global, como a rede de LD_rbsp_byte para as parcelas, de modo a ter acesso repetido aos dados RBSP de unidades NAL já recebidas. Para permitir a resiliência de erros, depois de receber um código de finalização, ou se a soma do número de bytes recebidos para uma parcela for igual ao tamanho da parcela, que pode ser derivado dos valores de desvio conforme providenciado para os dados de parcela contidos, p. ex. dos dados relativos ao respetivo subfluxo WPP ou tile, da qual a parcela em questão faz parte.
[075] Uma condição importante para subfluxos WPP dispostos em parcelas intercaladas de baixo atraso é que uma parcela n+1 apenas consiga aceder a dados da parcela n, que já foram fornecidos na parcela n e já estão guardados ou disponíveis no decodificador.
[076] A sintaxe RBSP da camada do Pedaço de Baixo Atraso para reordenar/desintercalar ao nível do pedaço pode ser concebida do seguinte modo. Em particular, a sintaxe deve, nesse caso, ter quase o mesmo comportamento da camada da unidade NAL, mas a reordenação tem de ser definida ao nível do pedaço. A Fig. 8 mostra uma sintaxe RBSP de camada de Pedaços de Baixo Atraso.
[077] No caso de usar o cabeçalho do pedaço para empacotar as parcelas intercaladas, pode haver o requisito de indicar, ao nível de codec, se receber um novo pedaço, a não reposição do estado CABAC, uma vez que a codificação entrópica de parcelas de, p. ex. um subfluxo WPP, não deve ser interrompida. Não repor o CABAC em um pedaço é indicado como “não_cabac_reset_bandeira” no cabeçalho do pedaço. O cabeçalho de pedaço apresentado é adequado para pedaços de baixo atraso, devendo assim ser apresentadas as características entropia_pedaço. É apresentada uma correspondente sintaxe de cabeçalho do pedaço na Fig. 9.
[078] A camada de transporte permite a otimização da organização de dados reencaminhados para a(s) unidade(s) de decodificador com base no fato de um número de subfluxos/tiles/parcelas (na camada de transporte, nós assumimos uma entidade abstrata que pode ser representada por um subfluxo, um tile, parte de um subfluxo ou tile, ou uma parte do fluxo de bites que tem uma função idêntica, isto é, permite a decodificação paralela ou a renovação gradual do decodificador) poder ser processado na camada de codificação independentemente uns dos outros. Uma possibilidade é começar a enviar parcelas em paralelo para várias unidades de decodificação com atraso mínimo. O fluxo de bites consiste de uma sequência de unidades NAL que são os itens mais pequenos que podem ser individualmente manuseados na camada de transporte. Consequentemente, os seguintes métodos de manuseamento na camada de transporte baseiam-se em subfluxos/tiles/parcelas, que estão contidas em um pedaço separado ou em unidades de pedaços entrópicos NAL.
[079] A camada de transporte deve também otimizar o desempenho do decodificador e a resiliência de erros com base no fato de a camada de codificação usar uma renovação gradual de decodificador. Uma opção é prescindir de partes irrelevantes do fluxo de bites se houver partes anteriores do fluxo de bites que não foram corretamente recebidas, p. ex. devido a erros de transmissão, ou que nem sequer foram recebidas, p. ex. devido a um interruptor entre canais de transporte.
[080] Para permitir essa exploração/otimização, é sinalizada uma diferente informação na camada de transporte.
[081] A informação lateral geral é sinalizada, usando descritores:
[082] - O número de subfluxos/tiles, onde "1" significa que existe apenas um fluxo/tile que contém toda a imagem de vídeo ;
[083] - Informação comum a todos os subfluxos/tiles, p. ex. se todos os subfluxos/tiles tiverem o mesmo tamanho ou se os requisitos da memória temporária forem os mesmos;
[084] - Informação individual sobre cada subfluxo/tile, p. ex. se os subfluxos/tiles tiverem tamanho diferente ou se os seus requisitos de memória temporária diferirem;
[085] - Número de passos de renovação gradual do decodificador, em que "1" significa que não é utilizada a renovação gradual do decodificador;
[086] - Uma bandeira que indica se estes subfluxos/tiles permitem o processamento paralelo de baixo atraso;
[087] Se o número de subfluxos/tiles > 1, os elementos da sintaxe são inseridos no fluxo antes de cada bloco de dados que contém um certo subfluxo/tile. Estes elementos de sintaxe seguem a sintaxe da unidade NAL, mas usam um único tipo de unidade NAL que não é usado pela camada de codificação (p. ex. nal_unidade_tipo = 0x19 ou nal_unidade_tipo=0x1F), que passa a ser designado de marcadores de subfluxos.
[088] Estes elementos de sintaxe são utilizados como marcadores e transportam informação sobre o bloco de dados que segue pelo menos um campo de dados que identifica o subfluxo/tile.
[089] Se o número de passos de renovação gradual do decodificador > 1, estes elementos de sintaxe também transportam uma bandeira que indica se o subfluxo/tile está intra-codificada (permite a renovação gradual do decodificador).
[090] É apresentada uma correspondente sintaxe na Fig. 10. Podem ser aplicadas as seguintes restrições:
Figure img0002
que pertence a uma imagem, incrementado por cada pedaço ou pedaço entrópico a mais que pertence à mesma imagem; é_intra : se ‘1’, a unidade NAL que se segue contém um pedaço intra-codificado ou um pedaço entrópico intra-codificado.
[091] Um método para o encapsulamento do fluxo de vídeo em uma multiplexação de transporte é apresentado na Fig. 11, onde cada pedaço ou pedaço entrópico é separadamente transportado em um número inteiro de pacotes de fluxo de transporte. Se o tamanho da carga útil não corresponder exatamente aos bytes disponíveis nos pacotes TS de tamanho fixo, o último pacote TS contém um campo de adaptação.
[092] Note-se que pode ser também providenciado um comportamento similar do Fluxo Elementar dos Fluxos de Transporte MPEG-2 por uma sessão RTP ou um fluxo RTP do Protocolo de Transporte em Tempo Real, conforme ilustrado na Fig. 19. No RTP [0149], um Fluxo de RTP (identificado pelo tipo de meio e tipo de carga útil como indicado no SDP [0153]) pode estar contido na sua própria sessão RTP, em que uma Sessão RTP é identificada pelo endereço de rede (IP), a porta (UDP), assim como, o identificador de origem (SSRC). Uma sessão de meio como indicado no SDP pode conter múltiplas sessões RTP, possuindo cada uma um diferente tipo de meio. Mas também é possível transportar o mesmo fluxo de meio (p. ex. vídeo) em diferentes fluxos RTP, onde os fluxos RTP podem estar contidos na mesma sessão RTP (análogo a 1. abaixo) ou pode estar contido nas suas próprias sessões RTP (análogo a 2. abaixo). A Fig. 19 ilustra o caso 2.
[093] Os formatos de carga útil RTP [0150] [0154] têm um número de ordem de decodificação (DON), que permite recuperar a ordem de decodificação das unidades NAL no receptor no caso de serem intencionalmente transmitidas fora da ordem de decodificação para efeitos de resiliência de erros, conforme descrito em [0150][0154]. Os marcadores adicionais MKR não são, por isso, necessários. No caso de parcelas de transporte dos subfluxos WPP ou tiles pela ordem pela qual ficam disponíveis a partir dos processos de codificação, o DON também pode ser utilizado para recuperar a ordem de parcelas antes de fornecê-las ao decodificador único.
[094] Mas neste caso, seria introduzido um atraso adicional no decodificador devido ao processo separado de desintercalação antes do processo de decodificação. O sistema descrito aqui pode providenciar as parcelas codificadas diretamente para os processos de decodificação dos diferentes subfluxos WPP ou tiles, enquanto os dados chegam ao receptor. A identificação das parcelas associada a um subfluxo WPP ou tile pode ser derivada pelo endereço de pedaços no cabeçalho de segmento do pedaço do segmento do pedaço e a ordem de transmissão dos pacotes conforme indicado pelo número de sequência RTP no cabeçalho RTP.
[095] Neste cenário, o DON é utilizado para a compatibilidade inversa, isto é, para decodificadores que não fornecem a capacidade melhorada de decodificar parcelas de subfluxos WPP ou tiles enviados fora da ordem de decodificação quando chegam. O envio de dados de parcelas fora da ordem de decodificação é apenas aplicada relativamente ao nível de subfluxos WPP ou tiles, isto é, nos dados transmitidos, as parcelas de um único subfluxo WPP ou tile são transmitidas por ordem de decodificação, sendo que os dados dos diferentes subfluxos WPP ou tiles estão intercalados.
[096] Há duas opções possíveis: 1. Todos os pedaços e pedaços entrópicos estão contidos no mesmo fluxo elementar, isto é, o mesmo PID é atribuído a todos os pacotes TS desse fluxo de vídeo; no texto que se segue este método é chamado de encapsulamento ES único. 2. Os diferentes PIDs estão atribuídos a pedaços e pedaços entrópicos do mesmo fluxo de bites de vídeo; no texto que se segue este método é chamado de encapsulamento multi-ES.
[097] A Fig. 11 é válida para ambas as opções se a primeira opção for considerada um caso especial da estrutura mais generalista através da definição do mesmo PID para todos os ES.
[098] É apresentado na Fig. 12 um modo mais eficiente para o encapsulamento em um único ES. Aqui, é necessário, no máximo, um campo de adaptação por imagem.
[099] É apresentado na Fig. 13 um modo mais eficiente para o encapsulamento em um múltiplo ES. Aqui, os campos de adaptação são evitados; em vez disso, outro pedaço, p. ex. o tile colocado da imagem seguinte, começa imediatamente no mesmo pacote de fluxo de transporte.
[0100] Na Fig. 14 é apresentada uma possível estrutura do desmultiplexador de transporte para o encapsulamento com um único fluxo elementar (ES) dirigido a um decodificador de múltiplo encadeamento. O pedaço entrópico na figura pode conter dados de um subfluxo WPP ou tile específico.
[0101] A Memória Temporária de Transporte (TB) recolhe dados que pertencem a um pacote de transporte e reencaminha-os para a Memória Temporária de Multiplexação (MB). Na saída do MB, os cabeçalhos da unidade NAL são avaliados e prescinde-se dos marcadores de subfluxos, enquanto os dados transportados no marcador de subfluxo são guardados. Os dados de cada pedaço ou pedaço entrópico são guardados em uma Memória Temporária de Pedaços (SB) separada, de onde são puxados por um decodificador de múltiplos encadeamentos, assim que ficar disponível um encadeamento de decodificador.
[0102] Na Fig. 15 é apresentada uma possível estrutura do desmultiplexador de transporte para o encapsulamento com fluxos elementares múltiplos dirigidos a um decodificador de múltiplo encadeamento.
[0103] Os conceitos acima delineados são descritos novamente em baixo, mas por outras palavras. A descrição abaixo pode ser, por isso, combinada individualmente com detalhes adicionais da descrição acima.
[0104] A Fig. 16 mostra uma estrutura generalista de um codificador de acordo com um modelo do presente pedido. O codificador 10 podia ser implementado para ser capaz de operar em um modo de múltiplo encadeamento, isto é, apenas de encadeamento único. Isto é, o codificador 10 devia, por exemplo, ser implementado usando múltiplos núcleos CPU. Por outras palavras, o codificador 10 podia suportar um processamento paralelo, mas não tem de o fazer. O conceito de codificação do presente pedido permite aos codificadores de processamento paralelo aplicar eficazmente um processamento paralelo sem, porém, comprometer a eficácia da compressão. Relativamente à capacidade de processamento paralelo, são válidas declarações similares para o decodificador, que é descrito mais tarde relativamente à Fig. 17.
[0105] O codificador 10 é um codificador de vídeo, mas em geral o codificador 10 pode ser também um codificador de imagem. Uma imagem 12 de um vídeo 14 é apresentada como codificador de entrada 10 em uma entrada 16.
[0106] O codificador 10 é um codificador híbrido, isto é, a imagem 12 é prevista no preditor 18, e o residual de predição 20 tal como é obtido por um determinador residual 22, como por exemplo um subtrator, é sujeito a uma transformação, como por exemplo uma decomposição espectral como um DCT, e a uma quantização em um módulo de transformação/quantização 24. Um residual quantizado 26 assim obtido é sujeito à codificação entrópica em um codificador entrópico 28, nomeadamente a codificação aritmética binária adaptativa de contexto. A versão reconstruível do residual como disponível para o decodificador, isto é, o sinal residual desquantizado e retransformado 30, é recuperada por um módulo de retransformação e requantização 31, e combinada com o sinal de predição 32 do preditor 18 através do combinador 33, resultando assim em uma reconstrução 34 da imagem 12. No entanto, o codificador 10 opera em uma base de bloco. De acordo com isso, o sinal reconstruído 34 sofre de descontinuidades nos limites do bloco e correspondentemente, pode ser aplicado um filtro 36 ao sinal reconstruído 34 para rentabilizar uma imagem de referência 38, à base da qual o preditor 18 prediz subsequentemente imagens codificadas. Como se pode ver a tracejado na Fig. 16, o preditor 18 pode, porém, também explorar o sinal reconstruído 34 diretamente sem filtro 36 ou uma versão intermédia. No caso de codificação de imagem, pode prescindir-se do filtro 36.
[0107] O preditor 18 pode escolher entre diferentes modos de predição para predizer certos blocos da imagem 12. Pode haver um modo de predição temporal, de acordo com o qual um bloco é previsto com base em imagens previamente codificadas, um modo de predição espacial, de acordo com o qual um bloco é previsto com base nos blocos previamente codificados da mesma imagem, modos de predição inter-camadas, de acordo com o qual um bloco de uma imagem que mostra a cena em uma camada mais alta, como em uma resolução espacial mais alta ou de um outro ponto de vista, é previsto com base em uma imagem correspondente que mostra esta cena em uma camada mais baixa, como em uma resolução espacial mais baixa ou de um outro ponto de vista.
[0108] É utilizada uma certa sintaxe para compilar os dados residuais quantizados 26, isto é, níveis de coeficientes de transformação e outros dados residuais, assim como, os dados do modo de codificação incluindo, por exemplo, os modos de predição e parâmetros de predição para os blocos individuais da imagem 12 conforme determinado pelo preditor 18 e estes elementos de sintaxe são sujeito à codificação entrópica pelo codificador entrópico 28. Os fluxos de dados assim obtidos como saída pelo codificador entrópico 28 são chamados de carga útil de sequência de bytes em bruto 40.
[0109] Os elementos do codificador 10 da Fig. 16 estão interligados, como se pode ver na Fig. 16.
[0110] A Fig. 17 mostra um decodificador que se adapta ao codificador da Fig. 16, isto é, que é capaz de decodificar a carga útil de sequência dos bytes em bruto. O decodificador da Fig. 17 é geralmente indicado pelo sinal de referência 50 e compreende um decodificador entrópico 52, um módulo de retransformação/desquantização 54, um combinador 56, um filtro 58 e um preditor 60. O decodificador entrópico 42 recebe a carga útil de sequência de bytes em bruto 40 e realiza a decodificação entrópica usando a decodificação aritmética de binário adaptativa de contexto para recuperar o sinal residual 62 e os parâmetros de codificação 64. Os módulos de retransformação/desquantização 54 desquantiza e retransforma os dados residuais 62 e reencaminha o sinal residual, obtido assim para o combinador 56. O combinador 56 também recebe um sinal de predição 66 do preditor 60 que, por sua vez, forma o sinal de predição 66 usando os parâmetros de codificação 64 com base no sinal reconstruído 68 determinado pelo combinador 56 ao combinar o sinal de predição 66 e o sinal residual 65. Como já foi explicado acima relativamente à Fig. 16, o preditor 60 pode usar a versão filtrada do sinal reconstruído 68 ou alguma versão intermédia, em alternativa ou como complemento. A imagem por reproduzir e emitida finalmente na saída 70 do decodificador 50 pode igualmente ser determinada em uma versão não filtrada do sinal de combinação 68 ou alguma sua versão filtrada.
[0111] De acordo com o conceito de tile, a imagem 12 está subdividida em tiles e pelo menos as predições de blocos dentro destes tiles estão restringidas ao uso, como base para uma predição espacial, de dados meramente relacionados com o mesmo tile. Através desta medida, pelo menos a predição pode ser realizada em paralelo para cada tile individualmente. Para efeitos ilustrativos apenas, a Fig. 16 ilustra a imagem 12 como estando subdividida em nove tiles. A subdivisão de cada tile em novo blocos, como se pode ver Fig. 16, serve também meramente como exemplo. Além disso, para ficar completo, note-se que o modo de codificar os tiles separadamente pode não estar limitado à predição espacial (intra predição). Em vez disso, qualquer predição de parâmetros de codificação de um respectivo tile através dos limites do tile e qualquer dependência da seleção de contexto na codificação entrópica de um respectivo tile através dos respectivos limites do tile podem ser também proibida, de modo a ser limitada a ficar dependente apenas de dados do mesmo tile. Por conseguinte, o decodificador é capaz de realizar as operações mencionadas me paralelo, nomeadamente em unidades de tiles.
[0112] Para ser transmitido através de algum canal de transmissão, os elementos de sintaxe têm de ser entropicamente codificados pedaço a pedaço pelo codificador entrópico 28. Para este fim, o codificador entrópico 28 analisa os blocos dos tiles, atravessando os blocos de um primeiro tile em primeiro lugar e depois procede com os blocos do próximo tile por ordem de tiles e assim por diante. Uma análise por varrimento pode, por exemplo, ser usada para analisar os blocos dentro dos tiles e os tiles, respectivamente. Os pedaços são depois empacotados em unidades NAL, que são as unidades menores para transmissão. Antes de codificar entropicamente um pedaço, o codificador entrópico 28 inicializa as suas probabilidades CABAC, isto é, as probabilidades usadas para codificar aritmeticamente o elemento de sintaxe desse pedaço. O decodificador entrópico 52 faz o mesmo, isto é, inicializa as suas probabilidades nos inícios do pedaço. Cada inicialização, porém, afeta negativamente a eficiência da codificação entrópica, uma vez que as probabilidades são continuamente adaptadas às atuais estatísticas da probabilidade o símbolo dos vários contextos e a correspondente redefinição das probabilidades CABAC representa um desvio do estado adaptado. Como é do conhecimento de qualquer profissional na matéria, a codificação entrópica leva a uma compressão otimizada apenas se as probabilidades se adaptarem às atuais estatísticas de probabilidade do símbolo.
[0113] Correspondentemente, um decodificador, de acordo com uma versão do presente pedido, opera como se pode ver na Fig. 18. O decodificador recebe no passo 80 a carga útil da sequência de bytes em bruto que descreve uma imagem 12 em tiles 82, em parcelas de tiles. Na Fig. 18, o primeiro tile 82 na ordem de tiles 84 é apresentada, a título exemplificativo, cortada ou dividida em duas parcelas 86a e 86b, cada uma cobrindo a título de exemplo uma sub-sequência da sequência de blocos dentro do tile. Depois, no passo 82, as parcelas 86a e 86b estão entropicamente decodificadas. No entanto, na decodificação entrópica, as parcelas 86a e 86b, a adaptação das probabilidades CABAC é continuada para além dos limites da parcela. Isto é, durante a decodificação da parcela 86a, as probabilidades CABAC são continuamente adaptadas às atuais estatísticas do símbolo e o estado no fim da decodificação entrópica da parcela 86a é adaptado ao começar a decodificação entrópica da parcela 86b. No passo 90, a carga útil da sequência de bytes em bruto, assim entropicamente decodificado, é decodificada para obter a imagem 12.
[0114] Devido à contínua adaptação da probabilidade CABAC para além dos limites 92 da parcela posicionada nos tiles interiores 82, estes limites de parcela não afetam negativamente a eficiência da codificação entrópica para além da sub-divisão da imagem 12 em tiles 82. Por outro lado, é ainda possível o processamento paralelo do tile. Para além disso, é possível transmitir individualmente as parcelas e, como as parcelas são menores do que os tiles completos 82, é possível iniciar no passo 90 a decodificação de cada tile, assim que a primeira parcela do respectivo tile tiver sido recebida e entropicamente decodificada.
[0115] A descrição das Figs. 16 até 18 dizem principalmente respeito à utilização dos tiles. Tal como descrito acima, os tiles resultam de uma partição espacial de uma imagem. Similarmente aos tiles, os pedaços também subdividem espacialmente uma imagem. Os pedaços são, correspondentemente, também um meio para permitir a codificação/decodificação paralela. Similarmente aos tiles, a predição e assim por diante estão proibidas, de modo a que os pedaços possam ser individualmente decodificáveis. Correspondentemente, a descrição das Figs. 16 até 18 é também válida para dividir pedaços em parcelas.
[0116] O mesmo aplica-se quando se usa subfluxos WPP. Os subfluxos WPP também representam uma partição espacial de uma imagem 12, nomeadamente em subfluxos WPP. Ao contrário dos tiles e pedaços, os subfluxos WPP não impõem restrições a predições e seleções de contato através dos subfluxos WPP. Os subfluxos WPP estendem-se ao longo das filas de bloco, como filas LCU, como se pode ver na Fig. 4, e para permitir o processamento paralelo é apenas feito um compromisso relativamente à codificação entrópica CABAC pela ordem conforme definido de entre os subfluxos WPP (ver Fig. 4) 92 e para cada subfluxo WPP 92, exceto o primeiro subfluxo WPP, as probabilidades CABAC não são completamente repostas mas são adotadas ou definidas para serem iguais, resultando as probabilidades CABAC depois de ter entropicamente decodificado subfluxo WPP imediatamente anterior até ao segundo LCU 94 daí, com a ordem LCU a começar, para cada subfluxo WPP, no mesmo lado da imagem 12, como o lado esquerdo tal como está ilustrado na Fig. 4. Correspondentemente, o mesmo atraso de codificação cumpridor entre a sequência de subfluxos WPP, estes subfluxos WPP 92 são decodificáveis em paralelo, de modo a que as porções, às quais a imagem 12 é decodificada em paralelo, isto é, concorrentemente, forma um tipo de frente de onda 96 que se move através da imagem de um modo em tile da esquerda para a direita.
[0117] Isto é, ao transferir a descrição das Fig. 16 até 18 para subfluxos WPP, qualquer subfluxo WPP 92 (Fig. 4) pode ser também sub-dividido em parcelas 98a e 98b sem interromper a adaptação da probabilidade CABAC no limite 100 entre estas parcelas 98a e 98b no interior do respetivo subfluxo WPP 92, evitando assim penalidades no que diz respeito à eficiência da codificação entrópica devido à transmissibilidade individual de ambas as parcelas 98a e 98b, mas mantendo a capacidade de usar o processamento paralelo de frente de onda e permitir o arranque deste processamento paralelo de frente de onda mais cedo, uma vez que as parcelas são mais pequenas do que os subfluxos WPP 92 completos.
[0118] Tal como é descrito acima relativamente às Figs. 1 até 15, existem várias possibilidades para transmitir parcelas empacotados em unidades NAL. É feita referência à Fig. 3, onde os tiles ou subfluxos ou pedaços dessas parcelas ou subfluxos foram divididas em parcelas no domínio aritmeticamente codificado com um cabeçalho anterior à na parcela de cada subfluxo ou tile e apresentam informação que permite a localização dos limites da parcela. Outra versão era a apresentada na Fig. 9.
[0119] Aí a sub-divisão de tiles ou subfluxos WPP em parcelas foi feita pela mudança ligeira na estrutura do pedaço: os pedaços que começam em um limite de tile ou subfluxo WPP, isto é, que começam no início de um tile ou subfluxo WPP, têm o não_cabac_reset_bandeira definido para zero, causando assim a usual inicialização/reset da probabilidade CABAC. Os pedaços, porém, que carregam parcelas que começam no interior de um tile ou subfluxo WPP têm não_cabac_reset_bandeira definido para um, causando assim a continuação acima descrita da adaptação da probabilidade CABAC.
[0120] No que diz respeito à desintercalação, que se concretiza no passo de recepção 80, para cada parcela é determinado a que subfluxo WPP ou tile pertence a respectiva parcela. As diferentes possibilidades têm sido descritas acima como, por exemplo, um ciclo round-robin através do número de subfluxos WPP ou tiles de uma imagem atual. Em alternativa, no caso de usar cabeçalhos de pedaços para transportar as parcelas, os cabeçalhos de pedaços podem compreender uma indicação que permite a localização do início do respetivo pedaço dentro da imagem atual 12.
[0121] Relativamente a isto, note-se que a decomposição dos pedaços, subfluxos WPP ou tiles em parcelas é realizada ao longo de uma ordem, de decodificação dentro de cada pedaço, subfluxo WPP ou tile: isto é, dentro de cada pedaço, subfluxo WPP ou tile, a porção da imagem espacialmente coberta pelo respetivo pedaço, subfluxo WPP ou tile, é codificada em, ou decodificada de, o respetivo pedaço, subfluxo WPP ou tile por essa ordem de decodificação, e cada parcela de um respetivo pedaço, subfluxo WPP ou tile cobre uma porção contínua do respetivo pedaço, subfluxo WPP ou tile ao longo da ordem de decodificação. Deste modo, é definida uma ordem de entre parcelas que pertencem ao mesmo pedaço, subfluxo WPP ou tile, nomeadamente a ordem de codificação/decodificação, e cada parcela tem uma classificação dentro dessa ordem. Uma vez que a subdivisão da imagem em subfluxos WPP ou tiles é sinalizada para o decodificador, o decodificador está informado sobre as subdivisões. Correspondentemente, para associar cada parcela a um respetivo subfluxo WPP ou tile, por exemplo, é suficiente se cada parcela tiver um endereço de arranque que identifica uma posição inicial, a partir da qual a respectiva parcela cobre continuamente a imagem usando a ordem de codificação/decodificação para o tile/subfluxos WPP, da qual a respectiva parcela faz parte. Mesmo a ordem de entre as parcelas que pertencem a um certo tile ou subfluxo WPP, por exemplo, pode ser reconstruída em um desmultiplexador de transporte ou pelo decodificador usando as posições iniciais. No entanto, para reclassificar, pode ser utilizada também a informação dos cabeçalhos de pacote de transporte das camadas baixas OSI, conforme descrito acima relativamente às transmissões RTP, como o número da ordem de decodificação, isto é, DONs. Um desmultiplexador de transporte do tipo mencionado pode ser configurado de modo idêntico ao desmultiplexador de transporte acima discutido, para guardar dados de parcelas de subfluxo WPP ou tile igual em uma memória temporária de pedaços, e os dados de parcelas de subfluxos WPP ou tiles associaram diferentes subfluxos WPP ou tiles em diferentes memórias temporárias de pedaços. Tal como mencionado acima, a estrutura do pedaço, isto é, os cabeçalhos dos pedaços, pode ser utilizada para transportar parcelas.
[0122] De seguida, faz-se referência às versões das Figs. 11 até 15 para descrevê-las novamente por outras palavras. Tal como descrito nestas figuras, os pedaços Si são empacotados em unidades NAL com cada unidade NAL 110 (ver Fig. 11) a compreender um cabeçalho da unidade NAL 112. Note-se que os pedaços Si podem ser pedaços normais ou pedaços que carregam parcelas de acordo com a Fig. 9. Correspondentemente, estes pedaços unicamente carregam dados que dizem respeito a um subfluxo WPP ou tile de uma imagem atual, nomeadamente do subfluxo WPP ou tile, respectivamente. Através da fragmentação, as unidades NAL 110 são transportadas através de pacotes 114 de fluxos de transporte (TS), nomeadamente a seção de carga útil 116 disso. Ao fazê-lo, cada unidade NAL 110 e o correspondente pedaço Si é precedido por um respetivo marcador de subfluxo MKR que indica i, isto é, o subfluxo WPP ou tile, à qual pertence o pedaço imediatamente a seguir da unidade NAL 110 imediatamente a seguir.
[0123] As unidades NAL 110, que carregam pedaços que pertencem a diferentes subfluxos WPP ou tiles, podem ser distribuídas em mais do que um fluxo elementar ES ou para o mesmo fluxo elementar, conforme explicado nas Figs. 11 até 13. Conforme mencionado acima, o “fluxo elementar” pode também identificar um fluxo RTP separado na sua própria sessão RTP.
[0124] Tal como é explicado relativamente às Figs. 14 e 15, um desmultiplexador de transporte pode compreender uma memória temporária multiplex MB, memórias temporárias de pedaços SB e uma memória temporária de transporte TB. As memórias temporárias de pedaços SB são puxadas por um decodificador e encadeamento múltiplo que permite uma decodificação paralela de uma imagem em subfluxos ou tiles WPP; a memória temporária de transporte TB configurada para recolher dados que pertencem a um pacote TS de um fluxo elementar pré-determinado de um fluxo de bits de vídeo, e reencaminhar os dados para a memória temporária MB. O desmultiplexador de transporte é depois configurado para avaliar cabeçalhos da unidade NAL de unidades NAL de uma sequência de unidades NAL empacotados nos pacotes TS em uma saída da memória temporária MB, descartar MKR de unidades NAL de marcadores de subfluxo com armazenamento dos dados do marcador de subfluxo transportados dentro das unidades NAL de marcadores de subfluxo e guardar dados de pedaços de subfluxos ou tiles dentro de unidades NAL que seguem unidades NAL de marcadores de subfluxo, cujo campo de dados identifica um subfluxo ou paca WPP igual em um, isto é, a mesma, memória temporária de pedaços SB, e dados de pedaços de subfluxos ou tiles WPP dentro de unidades NAL que seguem unidades NAL de marcadores de subfluxos, cujo campo de dados identifica diferentes subfluxos ou tiles WPP em diferentes memórias temporárias de pedaços SB. Como se pode ver na Fig. 15, o desmultiplexador de transporte pode compreender um desmultiplexador chamado TS demux na Fig. 15, e está configurado para receber o fluxo de bites de vídeo e dividir pacotes TS do fluxo de bites de vídeo em diferentes fluxos elementares, isto é, distribuir os pacotes TS do fluxo de bites de vídeo aso diferentes fluxos elementares. O desmultiplexador realiza esta divisão ou distribuição de acordo com os PIDs contidos nos cabeçalhos TS do pacote TS, de modo a que cada fluxo elementar seja composto por pacotes TS de um PAD de pacotes TS de outros fluxos elementares.
[0125] Isto é, se os pedaços corresponderem às parcelas no sentido da versão da Fig. 9, o MTD, isto é, o decodificador de múltiplos encadeamentos é capaz de iniciar o processamento de mais do que um subfluxo WPP ou tile de uma imagem atual, assim que a correspondente memória temporária de pedaços SB do respetivo subfluxo WPP ou tile tem dados contidos, reduzindo assim o atraso.
[0126] Apesar de alguns aspetos terem sido descritos no contexto de um aparelho, é claro que estes aspetos também representam uma descrição do correspondente método, em que um bloco ou dispositivo corresponde a um passo de método ou a uma característica de um passo de método. De modo análogo, os aspetos descritos no contexto de um passo de método também representam uma descrição de um correspondente bloco ou item ou característica de um correspondente aparelho. Alguns ou todos os passos do método podem ser executados (ou usados) por um aparelho de hardware, com por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas versões, um ou mais dos mais importantes passos do método podem ser executados por um aparelho destes.
[0127] O fluxo de bites codificados da invenção pode ser guardado em um meio de armazenamento digital ou pode ser transmitido em um meio de transmissão, como um meio de transmissão sem fios ou um meio de transmissão com fios, como a Internet.
[0128] Estas contribuições acima descrevem, assim, entre outras coisas, métodos para encapsulamento de baixo atraso e transmissão de dados de vídeo estruturados conforme providenciado pelo novo padrão de codificação HEVC, como estruturado em tiles, subfluxos de processamento paralelo de frente de onda (WPP), pedaços ou pedaços entrópicos. Entre outras coisas, foram apresentadas técnicas que permitem o transporte de baixo atraso em um ambiente paralelizado de codificador - transmissor - receptor - decodificador através do transporte intercalado de pedaços entrópicos/pedaços/tiles /subfluxos. Para resolver os problemas de estrangulamento delineados na parte introdutória da especificação e para minimizar o atraso do tempo de transmissão e decodificação, isto é, o atraso extremo a extremo, foi apresentada uma técnica para um esquema de pedaços entrópicos intercalados para a transmissão e processamento paralelos.
[0129] Dependendo de certos requisitos de implementação, as versões da invenção podem ser implementadas em hardware ou em software. A implementação pode ser realizada usando um meio de armazenamento digital, por exemplo uma disquete, um DVD, um Blu-Ray, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória FLASH, com sinais de controle de leitura eletrônica guardados lá, que cooperam (ou são capazes de cooperar) com um sistema de computador programável, de modo a que seja executado o respetivo método. Por isso, o meio de armazenamento digital pode ser lido em computador.
[0130] Algumas versões de acordo com a invenção compreendem um suporte de dados com sinais de controle de leitura eletrônica, que são capazes de cooperar com um sistema de computador programável, de modo a que seja executado um dos métodos aqui descritos.
[0131] De um modo geral, as versões da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, sendo o código de programa operativo para executar um dos métodos quando o produto do programa de computador corre em um computador. O código de programa pode, por exemplo, ser guardado em um suporte de leitura em máquina.
[0132] Outras versões compreendem o programa de computador para executar um dos métodos aqui descritos, guardados em um suporte de leitura em máquina.
[0133] Por outras palavras, uma versão do método da invenção é, por isso, um programa de computador com um código de programa para executar um dos métodos aqui descritos, quando o programa de computador corre em um computador.
[0134] Outra versão dos métodos da invenção é, por isso, um suporte de dados (ou um suporte de armazenamento digital, ou um suporte de leitura em computador) compreendendo, aí gravados, o programa de computador para executar um dos métodos aqui descritos. O suporte de dados, o suporte de armazenamento digital ou o suporte gravado são tipicamente tangíveis e/ou não transicionais.
[0135] Outra versão do método da invenção é, por isso, um fluxo de dados ou uma sequência de sinais que representam o programa de computador para executar um dos métodos aqui descritos.
[0136] O fluxo de dados ou a sequência de sinais pode, por exemplo, ser configurado para ser transferido através de uma ligação de comunicação de dados, por exemplo via Internet.
[0137] Outra versão compreende um meio de processamento, por exemplo, um computador, ou um dispositivo lógico programável, configurado para ou adaptado para executar um dos métodos aqui descritos.
[0138] Outra versão compreende um computador com o programa de computador instalado para executar um dos métodos aqui descritos.
[0139] Outra versão de acordo com a invenção compreende um aparelho ou um sistema configurado para transferir (por exemplo, eletronicamente ou opticamente) um programa de computador para executar um dos métodos aqui descritos para um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou idêntico. O aparelho ou sistema pode, por exemplo, compreender um servidor de ficheiros para transferir o programa de computador para o receptor.
[0140] Em algumas versões, pode ser utilizado um dispositivo programável lógico (por exemplo uma rede de portas lógicas programáveis) para executar algumas ou todas as funcionalidades dos métodos aqui descritos Em algumas versões, uma rede de portas lógicas programáveis pode cooperar com um microprocessador para executar um dos métodos aqui descritos. De um modo geral, os métodos são preferencialmente executados por qualquer aparelho de hardware.
[0141] As versões acima descritas são meramente ilustradas para os princípios da presente invenção. Compreende-se que as modificações e variações das disposições e dos detalhes descritos serão evidentes aos profissionais da matéria. Pretende-se, por isso, que seja limitado apenas pelo âmbito das reivindicações de patente impendentes e não pelos detalhes específicos da descrição e explicação das versões aqui constantes. REFERÊNCIAS
[0142] Thomas Wiegand, Gary J. Sullivan, Gisle Bjontegaard, Ajay Luthra, ”Overview of the H.264/AVC Video Coding Standard”, IEEE Trans. Sist. Circuitos Tecnol. Video, vol. 13, N7, julho de 2003.
[0143] JCTVC-E196, “Wavefront Parallel Processing”, 5° Encontro JCT-VC, Genebra 2011.
[0144] JCTVC-D070, “Lightweight slicing for entropy coding”, 4° Encontro, Daegu, 2011.
[0145] JCTVC-D073, “Periodic initialization for wavefront coding functionality”, 4° Encontro, Daegu, 2011.
[0146] HEVC WD5: Rascunho 5 da Alta Eficiência da Codificação de Vídeo JTCVC-G1103, 5° Encontro JCT-VC, Genebra Encontro de novembro de 2011.
[0147] JTCVC-D243, "Analysis of entropy slices approaches", 4° Encontro, Daegu, 2011.
[0148] ISO/IEC 13818-1/2011, MPEG-2 Fluxo de Transporte incluindo AMDs 1 - 6.
[0149] IETF Protocolo de transporte em tempo real, RTP RFC 3550.
[0150] IETF RTP Formato Carga Útil, IETF RFC 6184.
[0151] JCTVC-F275, Frente de Onda e Escoamento Cabac: Diferentes Graus de Paralelismo Sem Transcodificação, Encontro de Torino
[0152] JCT-VC-F724, Frente de Onda Processamento Paralelo para HEVC Codificação e Decodificação, Encontro de Torino** no fim da descrição
[0153] IETF Protocolo de Descrição de Sessão (SDP), RFC 4566
[0154] IETF RTP Formato Carga Útil para Alta Eficiência da Codificação de Vídeo, draft-schierl-payload-h265.

Claims (6)

1. Demultiplexador de transporte caracterizado porser configurado para receber um fluxo contínuo de bits de vídeo que compreende carga útil da sequência de byte bruta que descreve uma figura em subfluxos contínuos WPP ou tiles e codificada usando CABAC, o fluxo contínuo de bits de vídeo sendo decomposto em parcelas dos subfluxos contínuos WPP ou tiles com adaptação de probabilidade CABAC contínua através das delimitações da parcela, em que cada parcela compreende informação que identifica, para cada parcela, a quais subfluxo contínuo WPP ou tile a respectiva parcela pertence, e para associar as parcelas aos subfluxos contínuos WPP ou aos tiles usando a informação.
2. Demultiplexador de transporte, de acordo com a reivindicação 1, caracterizado por, para cada parcela, a informação compreendida pela respectiva parcela compreender um endereço de uma posição de início na figura, início a partir do qual a respectiva parcela cobre continuamente uma parte do subfluxo contínuo WPP ou do tile aos quais a respectiva parcela pertence.
3. Demultiplexador de transporte, de acordo com qualquer uma das reivindicações 1 ou 2, caracterizado poro demultiplexador de transporte ser configurado para classificar, para cada subfluxo contínuo WPP ou tile, as parcelas dos mesmos usando um número de ordem de decodificação em cabeçalhos de pacote dos pacotes nos quais as parcelas são empacotadas.
4. Demultiplexador de transporte, de acordo com a reivindicação 1, caracterizado pora carga útil da sequência de byte bruta ter, codificada, uma cena em camadas correspondentes a diferentes pontos de visualização.
5. Demultiplexador de transporte, de acordo com a reivindicação 1, caracterizado pora carga útil da sequência de byte bruta ter, codificada na mesma, a figura em camadas.
6. Método para demultiplexação de transporte caracterizado por compreender receber um fluxo contínuo de bits de vídeo que compreende carga útil da sequência de byte bruta que descreve uma figura em subfluxos contínuos WPP ou tiles e codificada usando CABAC, o fluxo contínuo de bits de vídeo sendo decomposto em parcelas dos subfluxos contínuos WPP ou tiles com adaptação de probabilidade CABAC contínua através das delimitações da parcela, em que cada parcela compreende informação que identifica, para cada parcela, a quais subfluxo contínuo WPP ou tile a respectiva parcela pertence, e associar as parcelas aos subfluxos contínuos WPP ou aos tiles usando a informação.
BR122020007529-5A 2012-01-20 2013-01-21 Conceito de codificação que permite o processamento paralelo, desmultiplexador de transporte e fluxo de bites de vídeo BR122020007529B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201261588849P 2012-01-20 2012-01-20
US61/588,849 2012-01-20
PCT/EP2013/051043 WO2013107906A2 (en) 2012-01-20 2013-01-21 Coding concept allowing parallel processing, transport demultiplexer and video bitstream
BR112014017915-8A BR112014017915B1 (pt) 2012-01-20 2013-01-21 conceito de codificação que permite o processamento parelelo, desmultiplexador de transporte e fluxo de bites de vídeo

Publications (1)

Publication Number Publication Date
BR122020007529B1 true BR122020007529B1 (pt) 2021-09-21

Family

ID=47594765

Family Applications (2)

Application Number Title Priority Date Filing Date
BR122020007529-5A BR122020007529B1 (pt) 2012-01-20 2013-01-21 Conceito de codificação que permite o processamento paralelo, desmultiplexador de transporte e fluxo de bites de vídeo
BR112014017915-8A BR112014017915B1 (pt) 2012-01-20 2013-01-21 conceito de codificação que permite o processamento parelelo, desmultiplexador de transporte e fluxo de bites de vídeo

Family Applications After (1)

Application Number Title Priority Date Filing Date
BR112014017915-8A BR112014017915B1 (pt) 2012-01-20 2013-01-21 conceito de codificação que permite o processamento parelelo, desmultiplexador de transporte e fluxo de bites de vídeo

Country Status (23)

Country Link
US (6) US9930368B2 (pt)
EP (2) EP3923578A1 (pt)
JP (5) JP2015507899A (pt)
KR (11) KR102365958B1 (pt)
CN (5) CN109729356B (pt)
AU (7) AU2013211002B2 (pt)
BR (2) BR122020007529B1 (pt)
CA (2) CA2861951C (pt)
CL (1) CL2014001886A1 (pt)
ES (1) ES2886119T3 (pt)
HK (1) HK1204182A1 (pt)
HU (1) HUE055964T2 (pt)
IL (8) IL298776B1 (pt)
IN (1) IN2014KN01699A (pt)
MX (1) MX350507B (pt)
MY (1) MY167465A (pt)
PH (5) PH12014501660B1 (pt)
RU (2) RU2679551C2 (pt)
SG (3) SG11201404251QA (pt)
TW (5) TWI645715B (pt)
UA (2) UA114618C2 (pt)
WO (1) WO2013107906A2 (pt)
ZA (1) ZA201406040B (pt)

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2977111A1 (fr) 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
SG11201404251QA (en) * 2012-01-20 2014-08-28 Fraunhofer Ges Forschung Coding concept allowing parallel processing, transport demultiplexer and video bitstream
KR102489001B1 (ko) 2012-03-22 2023-01-18 엘지전자 주식회사 비디오 인코딩 방법, 비디오 디코딩 방법 및 이를 이용하는 장치
IN2014DN07859A (pt) * 2012-04-16 2015-04-24 Ericsson Telefon Ab L M
US9621905B2 (en) * 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
JP6080405B2 (ja) * 2012-06-29 2017-02-15 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
MX348737B (es) 2012-08-09 2017-06-27 Panasonic Ip Corp America Metodo decodificador de imagen, metodo codificador de imagen, aparato decodificador de imagen, aparato codificador de imagen, y aparato codificador y decodificador de imagen.
US9491457B2 (en) 2012-09-28 2016-11-08 Qualcomm Incorporated Signaling of regions of interest and gradual decoding refresh in video coding
PL2940999T3 (pl) * 2013-01-04 2019-09-30 Samsung Electronics Co., Ltd. Sposób dekodowania entropijnego segmentów wycinka
US9924165B1 (en) * 2013-07-03 2018-03-20 Ambarella, Inc. Interleaved video coding pipeline
US9628792B2 (en) 2013-07-15 2017-04-18 Qualcomm Incorporated Cross-layer parallel processing and offset delay parameters for video coding
KR20240052886A (ko) 2013-07-15 2024-04-23 지이 비디오 컴프레션, 엘엘씨 다계층식 비디오 코딩에서의 저지연 개념
JP6268066B2 (ja) * 2013-09-20 2018-01-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
US9299122B2 (en) 2013-09-25 2016-03-29 Apple Inc. Neighbor context processing in block processing pipelines
US9305325B2 (en) 2013-09-25 2016-04-05 Apple Inc. Neighbor context caching in block processing pipelines
US9270999B2 (en) 2013-09-25 2016-02-23 Apple Inc. Delayed chroma processing in block processing pipelines
US9571846B2 (en) 2013-09-27 2017-02-14 Apple Inc. Data storage and access in block processing pipelines
US9596470B1 (en) 2013-09-27 2017-03-14 Ambarella, Inc. Tree-coded video compression with coupled pipelines
US9215472B2 (en) 2013-09-27 2015-12-15 Apple Inc. Parallel hardware and software block processing pipelines
US9578372B2 (en) * 2013-09-27 2017-02-21 Cisco Technology, Inc. Delay tolerant decoder
US9218639B2 (en) 2013-09-27 2015-12-22 Apple Inc. Processing order in block processing pipelines
CN105659602B (zh) 2013-10-14 2019-10-08 微软技术许可有限责任公司 用于视频和图像编码的帧内块复制预测模式的编码器侧选项
JP6359101B2 (ja) 2013-10-14 2018-07-18 マイクロソフト テクノロジー ライセンシング,エルエルシー ビデオ及び画像の符号化及び復号のためのイントラブロックコピー予測モードの特徴
JP6336058B2 (ja) 2013-10-14 2018-06-06 マイクロソフト テクノロジー ライセンシング,エルエルシー ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
CN105917650B (zh) 2014-01-03 2019-12-24 微软技术许可有限责任公司 视频和图像编/解码的方法、计算设备及计算机可读介质
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
KR101847899B1 (ko) * 2014-02-12 2018-04-12 주식회사 칩스앤미디어 동영상 처리 방법 및 장치
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
RU2657210C2 (ru) 2014-03-04 2018-06-08 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Зеркальное отображение блоков и режим пропуска в интра-основанном на копии блока предсказании
WO2015184067A1 (en) * 2014-05-28 2015-12-03 Arris Enterprises, Inc. Content aware scheduling in a hevc decoder operating on a multi-core processor platform
EP3158734A4 (en) 2014-06-19 2017-04-26 Microsoft Technology Licensing, LLC Unified intra block copy and inter prediction modes
US9807410B2 (en) 2014-07-02 2017-10-31 Apple Inc. Late-stage mode conversions in pipelined video encoders
EP3917146A1 (en) 2014-09-30 2021-12-01 Microsoft Technology Licensing, LLC Rules for intra-picture prediction modes when wavefront parallel processing is enabled
US9591325B2 (en) 2015-01-27 2017-03-07 Microsoft Technology Licensing, Llc Special case handling for merged chroma blocks in intra block copy prediction mode
US10027989B2 (en) * 2015-05-06 2018-07-17 Integrated Device Technology, Inc. Method and apparatus for parallel decoding
WO2016197314A1 (en) 2015-06-09 2016-12-15 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
US10003811B2 (en) 2015-09-01 2018-06-19 Microsoft Technology Licensing, Llc Parallel processing of a video frame
US20170105010A1 (en) * 2015-10-09 2017-04-13 Microsoft Technology Licensing, Llc Receiver-side modifications for reduced video latency
US10230948B2 (en) * 2016-02-03 2019-03-12 Mediatek Inc. Video transmitting system with on-the-fly encoding and on-the-fly delivering and associated video receiving system
CN109076144B (zh) * 2016-05-10 2021-05-11 奥林巴斯株式会社 图像处理装置、图像处理方法以及存储介质
CN114125505A (zh) * 2016-05-26 2022-03-01 弗劳恩霍夫应用研究促进协会 针对交互式客户端的全景视频的广播流
CN107483950A (zh) * 2016-06-07 2017-12-15 北京大学 图片并行编码方法及系统
US20180020228A1 (en) * 2016-07-12 2018-01-18 Mediatek Inc. Video processing system with multiple syntax parsing circuits and/or multiple post decoding circuits
JP6957638B2 (ja) * 2017-03-20 2021-11-02 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 高度なビデオデータストリーム抽出および多重解像度ビデオ伝送
WO2018207956A1 (ko) * 2017-05-10 2018-11-15 엘지전자(주) 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US10861196B2 (en) 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
GB2569269B (en) 2017-10-20 2020-07-15 Graphcore Ltd Synchronization in a multi-tile processing arrangement
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
GB2569645B (en) * 2017-12-22 2022-02-23 Displaylink Uk Ltd Managing data for transportation
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US11252429B2 (en) * 2018-04-27 2022-02-15 Ati Technologies Ulc Low-latency consumption of an encoded video bitstream
CN110662064B (zh) 2018-06-29 2022-06-14 北京字节跳动网络技术有限公司 Lut中的运动候选的检查顺序
CN110662052B (zh) 2018-06-29 2022-07-08 北京字节跳动网络技术有限公司 更新查找表(lut)的条件
WO2020003269A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Selection of coded motion information for lut updating
WO2020003282A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Managing motion vector predictors for video coding
GB2588531B (en) 2018-06-29 2023-02-01 Beijing Bytedance Network Tech Co Ltd Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
EP3791587A1 (en) * 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Resetting of look up table per slice/tile/lcu row
CN110662054B (zh) 2018-06-29 2023-01-06 北京字节跳动网络技术有限公司 用于视频处理的方法、装置、计算机可读存储介质
BR112020024202A2 (pt) 2018-06-29 2021-02-17 Beijing Bytedance Network Technology Co., Ltd. método de processamento de dados de vídeo, aparelho de processamento de vídeo e meios de armazenamento e gravação legíveis por computador não transitório
BR112020024162A2 (pt) 2018-06-29 2021-03-02 Beijing Bytedance Network Technology Co., Ltd. método de processamento de vídeo e aparelho para processar dados de vídeo, meios de armazenamento e de gravação legíveis por computador não transitórios, método para armazenar uma representação de fluxo de bits de um vídeo
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
KR20240008952A (ko) 2018-07-02 2024-01-19 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 인트라 예측 모드들을 갖는 lut들 및 비인접 블록들로부터의 인트라 모드 예측
CN110675315A (zh) * 2018-07-03 2020-01-10 财团法人工业技术研究院 点云拼贴处理方法及装置
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
GB2590310B (en) 2018-09-12 2023-03-22 Beijing Bytedance Network Tech Co Ltd Conditions for starting checking HMVP candidates depend on total number minus K
CN113170237B (zh) * 2018-09-28 2023-02-28 中兴通讯股份有限公司 视频编码与解码方法和设备
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
US11206244B2 (en) * 2018-12-21 2021-12-21 ARRIS Enterprise LLC Method to preserve video data obfuscation for video frames
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
WO2020147772A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidates derivation
CN113615193A (zh) 2019-03-22 2021-11-05 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
WO2020197236A1 (ko) * 2019-03-24 2020-10-01 엘지전자 주식회사 서브 픽처 핸들링 구조 기반 영상 또는 비디오 코딩
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
WO2020231220A1 (ko) * 2019-05-15 2020-11-19 현대자동차주식회사 동영상 데이터의 병렬 부호화 및 복호화를 위한 방법 및 장치
US11553209B2 (en) 2019-05-15 2023-01-10 Hyundai Motor Company Method and apparatus for parallel encoding and decoding of moving picture data
US11711544B2 (en) 2019-07-02 2023-07-25 Apple Inc. Point cloud compression with supplemental information messages
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11398833B2 (en) * 2019-10-02 2022-07-26 Apple Inc. Low-latency encoding using a bypass sub-stream and an entropy encoded sub-stream
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11475605B2 (en) 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points
CN115885512A (zh) * 2020-06-12 2023-03-31 字节跳动有限公司 视频比特流中图片输出顺序的约束
CN111726626B (zh) * 2020-06-18 2022-05-03 格兰菲智能科技有限公司 集成电路及用于视频解码的概率表存储方法
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
TWI774233B (zh) * 2020-09-23 2022-08-11 瑞昱半導體股份有限公司 訊號傳輸系統與發射端編碼裝置
CN116601873A (zh) * 2020-12-10 2023-08-15 苹果公司 分块熵流的级联
US11375242B1 (en) * 2021-01-27 2022-06-28 Qualcomm Incorporated Compression of bitstream indexes for parallel entropy coding
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes
CN112995237B (zh) * 2021-05-21 2021-10-08 杭州博雅鸿图视频技术有限公司 一种用于处理视频数据流的方法、装置、设备及存储介质
KR20230022061A (ko) 2021-08-06 2023-02-14 삼성전자주식회사 디코딩 장치 및 그의 동작 방법
CN114339349A (zh) * 2021-12-10 2022-04-12 海信视像科技股份有限公司 一种显示设备、数据传输方法及存储介质
GB2621917A (en) * 2022-06-16 2024-02-28 Mbda Uk Ltd Method for image encoding

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926205A (en) 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
US6683909B1 (en) * 2000-03-16 2004-01-27 Ezenial Inc. Macroblock parsing without processing overhead
WO2004008775A1 (ja) 2002-07-15 2004-01-22 Hitachi, Ltd. 動画像符号化方法及び復号化方法
JP2007525038A (ja) 2003-01-09 2007-08-30 トムソン ライセンシング Wlan配信のためmpegトランスポートストリームをipパケットに変換する方法及び装置
US7688895B2 (en) * 2003-07-22 2010-03-30 Lsi Corporation Method and/or circuit for binary arithmetic decoding decisions before termination
US7558954B2 (en) 2003-10-31 2009-07-07 Hewlett-Packard Development Company, L.P. Method and apparatus for ensuring the integrity of data
JP4931034B2 (ja) * 2004-06-10 2012-05-16 株式会社ソニー・コンピュータエンタテインメント 復号装置および復号方法、並びに、プログラムおよびプログラム記録媒体
US20060002479A1 (en) 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
US20060062312A1 (en) * 2004-09-22 2006-03-23 Yen-Chi Lee Video demultiplexer and decoder with efficient data recovery
US7675872B2 (en) 2004-11-30 2010-03-09 Broadcom Corporation System, method, and apparatus for displaying pictures
EP1971154A4 (en) * 2006-01-05 2010-10-27 Nippon Telegraph & Telephone VIDEO CODING METHOD AND DECODING METHOD, DEVICE THEREFOR, DEVICE THEREFOR AND STORAGE MEDIUM WITH THE PROGRAM
US8315308B2 (en) * 2006-01-11 2012-11-20 Qualcomm Incorporated Video coding with fine granularity spatial scalability
JP2007214998A (ja) * 2006-02-10 2007-08-23 Fuji Xerox Co Ltd 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム
KR101450921B1 (ko) 2006-07-05 2014-10-15 톰슨 라이센싱 멀티뷰 비디오 엔코딩 및 디코딩을 위한 방법 및 장치
US20080040498A1 (en) 2006-08-10 2008-02-14 Nokia Corporation System and method of XML based content fragmentation for rich media streaming
JP2008141483A (ja) * 2006-12-01 2008-06-19 Brother Ind Ltd ツリー型配信システム、ノード装置、情報処理プログラム及び情報配信方法
KR100849495B1 (ko) 2006-12-04 2008-07-31 한국전자통신연구원 Rtp 패킷화 모드별 비트율 생성 방법
CN101198051B (zh) * 2006-12-07 2011-10-05 深圳艾科创新微电子有限公司 基于h.264的熵解码器的实现方法及装置
WO2009025357A1 (ja) * 2007-08-22 2009-02-26 Nippon Telegraph And Telephone Corporation 映像品質推定装置、映像品質推定方法、フレーム種別判定方法、および記録媒体
US8938009B2 (en) * 2007-10-12 2015-01-20 Qualcomm Incorporated Layered encoded bitstream structure
CN101170688B (zh) * 2007-11-26 2010-12-01 电子科技大学 一种宏块模式的快速选择方法
US8542748B2 (en) * 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
JP4875024B2 (ja) * 2008-05-09 2012-02-15 株式会社東芝 画像情報伝送装置
US8619856B2 (en) * 2008-10-03 2013-12-31 Qualcomm Incorporated Video coding with large macroblocks
US7932843B2 (en) * 2008-10-17 2011-04-26 Texas Instruments Incorporated Parallel CABAC decoding for video decompression
US9467699B2 (en) * 2008-12-03 2016-10-11 Hfi Innovation Inc. Method for performing parallel coding with ordered entropy slices, and associated apparatus
KR101063424B1 (ko) 2009-02-02 2011-09-07 주식회사 코아로직 비디오 데이터 처리 장치 및 방법
JP2010278668A (ja) * 2009-05-27 2010-12-09 Sony Corp 符号化装置及び符号化方法、並びに復号装置及び復号方法
JP5212319B2 (ja) * 2009-09-08 2013-06-19 ブラザー工業株式会社 符号化装置、符号化方法、および符号化プログラム
US20110194613A1 (en) * 2010-02-11 2011-08-11 Qualcomm Incorporated Video coding with large macroblocks
TWI403170B (zh) * 2010-05-21 2013-07-21 Univ Nat Chiao Tung 背景調適性二進制算術解碼裝置及其解碼方法
US8344917B2 (en) * 2010-09-30 2013-01-01 Sharp Laboratories Of America, Inc. Methods and systems for context initialization in video coding and decoding
US20120163457A1 (en) * 2010-12-28 2012-06-28 Viktor Wahadaniah Moving picture decoding method, moving picture coding method, moving picture decoding apparatus, moving picture coding apparatus, and moving picture coding and decoding apparatus
US9370647B2 (en) 2011-07-14 2016-06-21 W. L. Gore & Associates, Inc. Expandable medical devices
KR102085171B1 (ko) 2011-07-15 2020-03-06 지이 비디오 컴프레션, 엘엘씨 저-지연을 위한 샘플 배치 코딩
SG11201404251QA (en) 2012-01-20 2014-08-28 Fraunhofer Ges Forschung Coding concept allowing parallel processing, transport demultiplexer and video bitstream
KR101981267B1 (ko) * 2012-04-13 2019-05-23 지이 비디오 컴프레션, 엘엘씨 저지연 화상 코딩

Also Published As

Publication number Publication date
KR101863181B1 (ko) 2018-05-31
KR101863179B1 (ko) 2018-05-31
US20140334557A1 (en) 2014-11-13
TW201728174A (zh) 2017-08-01
TWI775701B (zh) 2022-08-21
EP2805491B1 (en) 2021-05-12
KR20170078850A (ko) 2017-07-07
HK1204182A1 (en) 2015-11-06
RU2017103637A3 (pt) 2019-01-18
TWI559744B (zh) 2016-11-21
RU2019102609A (ru) 2020-07-30
IL290402B1 (en) 2023-01-01
US20180167641A1 (en) 2018-06-14
PH12014501660A1 (en) 2014-10-13
KR20180059571A (ko) 2018-06-04
KR20150003407A (ko) 2015-01-08
WO2013107906A3 (en) 2013-09-26
IL262644A (en) 2018-12-31
KR102070887B1 (ko) 2020-01-29
KR20230038817A (ko) 2023-03-21
SG11201404251QA (en) 2014-08-28
MX2014008695A (es) 2014-11-21
JP2022165992A (ja) 2022-11-01
IN2014KN01699A (pt) 2015-10-23
PH12018500347B1 (en) 2018-07-09
US20190124365A1 (en) 2019-04-25
CN104081781B (zh) 2018-11-02
CN109729356B (zh) 2022-07-08
PH12018500346A1 (en) 2018-07-09
KR20210012066A (ko) 2021-02-02
AU2020244429A1 (en) 2020-10-29
PH12018500346B1 (en) 2018-07-09
PH12018500345A1 (en) 2018-07-09
TWI645715B (zh) 2018-12-21
AU2021290315B2 (en) 2023-08-17
KR101863177B1 (ko) 2018-05-31
CN109729357A (zh) 2019-05-07
JP2015507899A (ja) 2015-03-12
UA124569C2 (uk) 2021-10-13
PH12014501660B1 (en) 2014-10-13
CN104081781A (zh) 2014-10-01
CL2014001886A1 (es) 2014-11-21
JP6808341B2 (ja) 2021-01-06
AU2017210565A1 (en) 2017-08-24
CA2861951C (en) 2020-08-11
CN109729356A (zh) 2019-05-07
TW202218426A (zh) 2022-05-01
US10887625B2 (en) 2021-01-05
KR101718488B1 (ko) 2017-03-21
US20190124364A1 (en) 2019-04-25
US10880577B2 (en) 2020-12-29
IL290402B2 (en) 2023-05-01
WO2013107906A2 (en) 2013-07-25
AU2016202208A1 (en) 2016-05-05
KR102365958B1 (ko) 2022-02-23
CN109729355A (zh) 2019-05-07
IL233699A (en) 2017-04-30
AU2020244429B2 (en) 2021-09-30
AU2016202208B2 (en) 2017-05-04
KR102210228B1 (ko) 2021-02-01
IL310411A (en) 2024-03-01
PH12018500345B1 (en) 2018-07-09
AU2019226180B2 (en) 2020-07-02
CA3081964A1 (en) 2013-07-25
AU2019226180A1 (en) 2019-09-26
PH12018500347A1 (en) 2018-07-09
US10873766B2 (en) 2020-12-22
AU2013211002A1 (en) 2014-09-18
KR101752879B1 (ko) 2017-06-30
IL290402A (en) 2022-04-01
TW202315404A (zh) 2023-04-01
BR112014017915A2 (pt) 2019-10-08
IL267776A (en) 2019-08-29
RU2679551C2 (ru) 2019-02-11
AU2017210565B2 (en) 2019-06-20
US20190306537A1 (en) 2019-10-03
PH12018500344B1 (en) 2018-07-09
MY167465A (en) 2018-08-29
CN109729350A (zh) 2019-05-07
CA2861951A1 (en) 2013-07-25
RU2017103637A (ru) 2019-01-18
RU2019102609A3 (pt) 2021-11-23
TW202339503A (zh) 2023-10-01
IL284595A (en) 2021-08-31
IL298776A (en) 2023-02-01
KR101862329B1 (ko) 2018-05-29
TWI804390B (zh) 2023-06-01
KR102510411B1 (ko) 2023-03-16
IL267776B (en) 2021-07-29
JP2018198447A (ja) 2018-12-13
ZA201406040B (en) 2015-12-23
IL262644B (en) 2019-07-31
IL284595B (en) 2022-03-01
AU2013211002B2 (en) 2016-01-14
BR112014017915B1 (pt) 2021-03-16
US10880578B2 (en) 2020-12-29
CN109729350B (zh) 2023-04-07
JP2016158267A (ja) 2016-09-01
JP6721638B2 (ja) 2020-07-15
SG10202001107WA (en) 2020-04-29
IL251266A0 (en) 2017-05-29
TW201921939A (zh) 2019-06-01
US9930368B2 (en) 2018-03-27
JP7111771B2 (ja) 2022-08-02
EP2805491A2 (en) 2014-11-26
TW201336314A (zh) 2013-09-01
IL233699A0 (en) 2014-09-30
HUE055964T2 (hu) 2022-01-28
US20180167640A1 (en) 2018-06-14
KR20140131926A (ko) 2014-11-14
ES2886119T3 (es) 2021-12-16
TWI753214B (zh) 2022-01-21
RU2014134041A (ru) 2016-03-20
KR20200010606A (ko) 2020-01-30
SG10201606621XA (en) 2016-09-29
IL251266B (en) 2018-10-31
CN109729357B (zh) 2022-07-26
RU2610291C2 (ru) 2017-02-08
UA114618C2 (uk) 2017-07-10
EP3923578A1 (en) 2021-12-15
KR20170078852A (ko) 2017-07-07
JP2020167719A (ja) 2020-10-08
KR20170077295A (ko) 2017-07-05
IL298776B1 (en) 2024-03-01
KR20170078851A (ko) 2017-07-07
US10880579B2 (en) 2020-12-29
CN109729355B (zh) 2022-07-26
AU2023266237A1 (en) 2024-02-08
AU2021290315A1 (en) 2022-01-27
KR20220025288A (ko) 2022-03-03
US20210044835A1 (en) 2021-02-11
MX350507B (es) 2017-09-08
PH12018500344A1 (en) 2018-07-09

Similar Documents

Publication Publication Date Title
AU2020244429B2 (en) Coding concept allowing parallel processing, transport demultiplexer and video bitstream
RU2808541C1 (ru) Принцип кодирования, делающий возможной параллельную обработку, транспортный демультиплексор и битовый поток видео
RU2773795C2 (ru) Принцип кодирования, делающий возможной параллельную обработку, транспортный демультиплексор и битовый поток видео

Legal Events

Date Code Title Description
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/26

Ipc: H04N 19/13 (2014.01), H04N 19/436 (2014.01), H04N

B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 21/01/2013, OBSERVADAS AS CONDICOES LEGAIS.