“MÉTODO E APARELHO DE CODIFICAÇÃO E DECODIFICAÇÃO, APARELHO DE COMUNICAÇÃO SEM FIO COM CODIFICADOR INCORPORADO, E, CODEC DE VÍDEO.” Campo da Invenção Esta invenção relata a codificação e a decodificação de vídeo.
Descrição da Técnica Anterior Um dos alvos recentes nas telecomunicações móveis tem sido para aumentar a velocidade da transmissão de dados, de forma a habilitar a incorporação dos serviços de multimídia para as redes móveis, Um dos componentes chaves da multimídia é o vídeo digital. A transmissão de vídeo compreende favoravelmente o tráfego de dados contínuo representando as imagens em movimento. Como é geralmente conhecido, a soma de dados necessária para transferir as imagens é alta quando comparado com muitos outros tipos de mídia e o distante uso de vídeo nos terminais de baixa taxa de bits tem sido negligenciável. Contudo, um progresso significante tem sido alcançado na área da compressão de video de baixa taxa de bits. Uma qualidade de vídeo aceitável pode ser obtida nas taxas de bits em tomo de 20 kbits por segundo. Como resultado desta redução progressiva na taxa de bits, o vídeo será um serviço viável para oferecer sobre os canais tal como os canais de comunicações móveis.
Uma sequência de vídeo consiste de uma série de imagens imóveis ou quadros. Os métodos de compressão de vídeo são baseados na redução da redundância e perceptivamente das partes irrelevantes das sequências de vídeo. A redundância das seqüências de vídeo pode ser categorizada em espacial, temporal e redundância espectral. A redundância espectral significa a correlação entre os pixels vizinhos dentro do quadro. A redundância temporal significa a correlação entre as áreas sucessivas dos quadros. A redundância temporal aumenta a probabilidade dos objetos aparecerem em uma imagem prévia aparecendo também na imagem atual. A compressão pode ser alcançada pela geração dos dados de compensação de movimento que descrevem o movimento (deslocamento) entre as áreas similares das imagens prévia e atual. A imagem atual é então predita de uma prévia. A redundância espectral significa a correlação entre os componentes de cores diferentes da mesma imagem. Os métodos de compressão de vídeo diferenciam tipicamente entre as imagens que utilizam ou não a redução de redundância temporal. As imagens compactadas que não utilizam os métodos de redução de redundância temporal, são usualmente denominados de INTRA ou de quadros-I considerando que as imagens preditas temporariamente, são denominadas de INTER ou quadros-P (e também quadros-B quando os quadros INTER puderem ser preditos de uma maneira para frente ou para trás). No caso do quadro INTER, a imagem predita (movimento-compensado) é raramente precisa o suficiente e então uma imagem de erro de predição compactada espacialmente é também uma parte de cada quadro INTER.
Contudo, uma compressão suficiente não pode usualmente ser alcançada por somente reduzir a redundância da sequência de vídeo. Então, os codificadores de vídeo tentam reduzir a qualidade destas partes da seqüência de vídeo que são subjetivamente a menos importante. Em adição, a redundância do fluxo de bits codificada é reduzida por meio de uma eficiente codificação de pouca-perda dos parâmetros de compressão e dos coeficientes. A técnica principal é usar códigos de comprimentos variados. O vídeo compactado é facilmente corrompido pelos erros de transmissão, principalmente por duas razões. Primeiramente, devido à utilização da codificação diferencial preditiva temporal (quadros INTER), o erro é propagado espacialmente e temporariamente. Na prática isto significa que, uma vez que ocorram erros, é facilmente visível para os olhos humanos por um tempo relativamente longo. Especialmente suscetível são as transmissões em uma taxa de bits baixa onde existem apenas uns poucos quadros INTRA-codifícados (a transmissão dos quadros INTRA-codificados terminaria a propagação de erro temporal). Segundo, o uso de códigos de comprimento variável aumenta a suscetibilidade para erros. Quando um bit de erro altera a palavra código para uma outra de comprimento diferente, o decodificador perde a sincronização da palavra código e também decodifica as palavras códigos subseqüentes livres-erro (compreendendo vários bits) incorretamente até a próxima sincronização ou código inicial. (O código de sincronização é um padrão de bit que não pode ser gerado de qualquer combinação legal de outras palavras código).
Uma das características inerentes da transmissão de dados sem fio é a probabilidade de erro de bits relativamente alto. Este problema pode ser endereçado por vários transportes, rede e esquemas de retransmissão da camada de enlace. Contudo, o obstáculo de tais esquemas é a possibilidade de retardos de transmissão flutuantes e não limitados. Nos serviços audiovisuais de conversação, é inaceitável ter retardos amplos de estação a estação. Então, os esquemas de retransmissão não podem ser usados em tais serviços. Ao invés de um deve-se tentar detectar e ocultar os erros de transmissão. Nos serviços de recuperação audiovisuais de fuga, o retardo de transmissão pode variar como que devido ao fato de que alguma carga inicial em memória intermediária ocorra antes de iniciar a reprodução. Contudo, o retardo máximo de transmissão aceitável é fixo e, se excedido, existe uma pausa prejudicando a reprodução. Na prática, ambos os canais confiável e não confiável de transporte são usados nos serviços de recuperação.
Todo bit no fluxo de bits de vídeo compactado não possui a mesma importância para as imagens descompactadas. Alguns bits definem uma informação vital tal como o tipo de imagem (por exemplo INTRA ou INTER), o valor de quantização e os modos de codificação opcionais tem sido usados. A recomendação ITU-T H.263 descreve a codificação de vídeo para comunicação de baixa taxa de bits. Na H.263, a informação mais vital é agrupada no cabeçalho da imagem. O erro de transmissão no cabeçalho da imagem tipicamente causa uma interpretação mim dos bits subseqüentes definindo o conteúdo de imagem. Devido à utilização da codificação diferencial preditiva temporal (quadros INTER), o erro é propagado espacialmente e temporariamente, Então, uma aproximação normal para a corrupção do cabeçalho de imagem é para congelar a imagem prévia na tela, para enviar uma solicitação de imagem INTRA para a transmissão terminal e para esperar pelo quadro INTRA solicitado. Isto pode causar uma pausa prejudicial no vídeo recebido, especialmente nas sequências de vídeo de conversação.
Os erros de transmissão possuem uma natureza diferente dependendo da rede subjacente. Nas redes comutadas por pacotes, tais como a internet e etc, os erros de transmissão são tipicamente perdas de pacotes (devido ao congestionamento nos elementos de rede). Nas redes comutadas por circuito, tal como as redes móveis (por exemplo HSCSD para o GSM), os erros de transmissão são tipicamente erros de bits onde o T corrompido para ‘0’ ou vice versa.
Para impedir as degradações nas imagens introduzidas pelos erros de transmissão, as retransmissões podem ser usadas, a detecção de erros e/ou os métodos de correção de erros podem ser aplicados, e/ou os efeitos dos dados corrompidos recebidos podem ser ocultados. Normalmente a retransmissão fornece um caminho razoável para proteger os fluxos de dados de vídeo dos erros, mas os retardos amplos de ida-volta associados com a transmissão de baixa taxa de bits e a moderada ou altas taxas de erro tomam praticamente impossível usar a retransmissão, especialmente com aplicações de vídeo fone em tempo real. Os métodos de correção e detecção de erros usualmente solicitam amplas sobrecargas de transmissão, uma vez que eles somam a redundância aos dados. Consequentemente, para as aplicações de baixa taxa de bits o ocultamento do erro pode ser considerado como um caminho preferido para proteger e recuperar as imagens dos erros de transmissão. Os métodos de ocultamento do erro de vídeo são tipicamente aplicáveis aos erros de transmissão ocorrendo através da perda de pacotes e da corrupção dos bits. Ο H.263 é uma recomendação ITU-T de codificação de vídeo para comunicação de baixa taxa de bits que geralmente significa taxa de dados abaixo de 64 kbps. A recomendação especifica a sintaxe do fluxo de bits e a decodificação do fluxo de bits. Atualmente, existem duas versões da Versão 1 do H.263 que consiste de um algoritmo principal e quatros modos de codificação opcionais. A Versão 2 do H.263 é uma extensão da Versão 1 fornecendo 12 novos modos de codificação negociáveis. O H.263 é atualmente um dos métodos de codificação mais favoráveis proposto para aplicações sem fio móveis, onde a taxa de bits é da ordem de 28.8 bits por segundo e as imagens de % do Formato Intermediário Comum (QCIF) de 176 x 144 pixels são usualmente usadas. Atualmente as taxas de bits esperadas para os produtos sem fio de terceira geração estão em tomo de 64 kbps e a resolução da imagem pode ser maior.
As imagens são codificadas como luminância (Y) e os componentes (Cb e Cr) de duas cores diferentes (crominância). As imagens de crominância são amostradas na metade da resolução da imagem de luminância ao longo de ambos os eixos da coordenada. Os dados da imagem são codificados com base no bloco-a-bloco, cada bloco representando 8 x 8 de luminância ou crominância.
Cada imagem codificada, tanto quanto o fluxo de bits codificado correspondente, é disposto em uma estrutura hierárquica com quatro camadas, que são de baixo para cima: a camada do bloco, a camada do macro-bloco, a camada do segmento de imagem e a camada de imagem. A camada do segmento de imagem pode então ser disposta como um grupo de blocos ou uma fatia.
Um bloco descreve os pixels de 8x8 de luminância ou crominância. Os dados da camada do bloco consistem de coeficientes de transformação de co-seno discreto quantizado uniformemente, que são varridos em zig-zag, processados com o codificador de extensão de execução e codificado com os códigos de comprimento variável.
Cada macro-bloco descreve pixels de 16x16 de luminância e espacialmente correspondendo a 8x8 pixels de dois componentes de crominância. Em outras palavras, o macro-bloco consiste de quatro blocos de 8x8 de luminância e dois blocos espacialmente correspondendo a 8x8 de cores diferentes. Cada macro-bloco INTER é associado com o vetor de movimento que define a posição de uma área correspondente ao quadro de referência que se assemelha aos pixels do macro-bloco INTER atual. O macro-bloco de dados INTER compreende os dados do erro de predição codificado para os pixels do macro-bloco.
Usualmente, cada imagem é dividida em segmentos conhecidos como grupo de blocos (GOBs). Um grupo de blocos (GOB) para uma imagem QCIF (de Va do Formato Intermediário Comum) tipicamente compreende uma coluna de macro-blocos (por exemplo 11 macro-blocos). Os dados para cada GOB consistem de um cabeçalho GOB opcional seguido pelos dados para os macro-blocos dentro do GOB.
Se a fatia opcional do modo estruturado for usada, cada imagem é dividida em partes ao invés de GOBs. A parte contêm um número de macro-blocos consecutivos na ordem de varredura. Os dados para cada parte consistem de um cabeçalho da parte seguida pelos dados para os macro-blocos da fatia.
Os dados da camada da imagem contêm os parâmetros afetando toda a área da imagem e a decodificação dos dados da imagem. Os dados codificados do parâmetro estão dispostos no denominado cabeçalho da imagem. No formato QCIF a imagem é dividida em 176x144 pixels que correspondem a 9 colunas de 11 macro-blocos.
Os cabeçalhos da imagem e do GOB (ou parte) iniciam com a sincronização ou código de início. Nenhuma outra palavra código ou uma combinação legal de palavras código podem formar o mesmo padrão de bit como os códigos de sincronização. Então, os códigos de sincronização podem ser usados para detecção do erro do fluxo de bits e para a re-sincronização após os erros de bit. Ο H.263 é o padrão de compressão de vídeo usado na Recomendação ITU-T H.263 “Terminal para Comunicação a Baixa Taxa de Bits” de fevereiro de 1998, que define a comunicação do vídeo fone sobre as redes móveis e a RTCP. Quando a conexão H.324 estiver operando sobre um canal sem fio, é comum que o fluxo de bits recebido contenha erros de transmissão. No fluxo de bits de vídeo H.263, estes erros são extremamente prejudiciais se eles ocorrerem nos cabeçalhos da imagem. Tal erro pode prevenir a decodificação dos conteúdos da imagem. Os erros no cabeçalho da imagem INTRA causam as mais severas implicações, desde que estas imagens sejam usadas como fontes de predição temporal inicial. Erros no cabeçalho da imagem INTRA afetam a imagem INTRA decodificada correspondente e cada imagem subseqüente inicialmente predita desta imagem INTRA.
Objetivos da Invenção De acordo com a invenção é fornecido um método de codificação e decodificação de vídeo como reivindicado nas reivindicações apensas. Um codificador e um decodifícador são também fornecidos como reivindicado nas reivindicações apensas. A primeira incorporação da invenção introduz um novo método para repetir os cabeçalhos da imagem INTRA nos fluxos de bits de vídeo, que é totalmente complacente com a recomendação ITU-T H.263. A invenção introduz cópias redundantes dos cabeçalhos de imagem no fluxo de bits. Se o primeiro cabeçalho de imagem for corrompido, o decodifícador pode usar uma cópia deste para habilitar a decodificação dos conteúdos da imagem. Esta invenção introduz um método de repetição do cabeçalho de imagem INTRA que usa a sintaxe e a semântica padrão do H.263. Em adição, todos os decodificadores complacentes padrões podem utilizar o método. A inclusão de uma repetição do cabeçalho da imagem para ao menos os quadros-INTRA significa que o decodifícador de recebimento não necessariamente tem de congelar o visor, enviar uma solicitação de repetição para o codificador e esperar que o codificador envie a informação repetida. Então as pausas prejudiciais devido ao congelamento da imagem são evitadas e o usuário final deverá perceber uma melhor qualidade de vídeo. A invenção é aplicável às aplicações em tempo real e também às aplicações em tempo não real, tal como os serviços de recuperação que podem não ser capazes de responder as solicitações de repetição INTRA do decodificador de recepção.
Breve Descrição das Figuras A invenção será descrita agora, apenas por meio de exemplo, com referência aos desenhos apensos, nos quais;
Figura 1 - apresenta um sistema de comunicação móvel de multimídia;
Figura 2 - apresenta um exemplo dos componentes de multimídia de um terminal de multimídia;
Figura 3 - apresenta uma estrutura de dados típica de um sinal de vídeo codificado de acordo com ο H.263;
Figura 4 - apresenta um exemplo de um codec de vídeo de acordo com a invenção;
Figura 5 - apresenta a estrutura de dados de uma saída do sinal de vídeo por um codificador de acordo com a primeira incorporação da invenção;
Figura 6 - apresenta a estrutura de dados de uma saída do sinal de vídeo por um codificador de acordo com a segunda incorporação da invenção;
Figura 7 - apresenta um fluxograma da operação do codificador de vídeo de acordo com a terceira incorporação da invenção;
Figura 8 - apresenta um fluxograma da operação do decodificador de vídeo de acordo com a primeira incorporação da invenção;
Figura 9 - apresenta um fluxograma da operação do decodificador de vídeo de acordo com a terceira incorporação da invenção.
Descrição Detalhada da Invenção A descrição da invenção também será referenciada às recomendações H.324 e à H.263. Contudo, não é intenção limitar a aplicação da invenção a estes ou aos protocolos relacionados.
A Figura 1 apresenta um sistema de comunicação móvel de multimídia. O primeiro terminal 1 de multimídia comunica com o segundo terminal 2 de multimídia através do enlace 3 de comunicação e a rede 4 de comunicação. Os dados de controle são enviados entre os dois terminais 1, 2 como também os dados de multimídia. Nas incorporações da invenção a serem descritas, os terminais de multimídia 1,2 são videofones móveis/sem fio e a rede de comunicação é uma rede de comunicação móvel tal como a rede GSM. O enlace 3 de comunicação nesta disposição é um enlace de rádio. Em outras incorporações da invenção, os terminais de multimídia podem ambos ser os videofones da Rede de Telefonia Comutada Pública (RTCP) ou pode ser um terminal de multimídia móvel e um pode ser um terminal de multimídia RTCP. Os terminais 1,2 podem ser usados para a aplicação em tempo real tal como as aplicações de vídeo-telefonia ou em tempo não real tal como os serviços de recuperação. A Figura 2 apresenta os componentes de multimídia típicos do terminal 1 em conformidade com ο H.324. O terminal compreende um codec de vídeo 10 conformando com ο H.263, um codec de áudio 20 conformando com o G.723.1, um gerenciador 30 de protocolo de dados conformando com ο T.120, um gerenciador 40 de controle cujo sinal de saída está de acordo com o protocolo de controle H.245, um multiplexador/demultiplexador 50 conforme ο H.223 e o modem 60 (se solicitado). O codec de vídeo 10 recebe os sinais de um dispositivo de captura de vídeo do terminal (por exemplo, a câmera (não apresentada)) para codificação e recebe os sinais do terminal 2 remoto para decodificação e visualização pelo terminal 1 no visor 70. O codec de áudio 20 recebe os sinais para codificação do microfone (não apresentado) do terminal 1 e recebe os sinais do terminal remoto 2 para decodificação e reprodução pelo alto-falante (não apresentado) do terminal 1. Estes padrões referenciados acima são descritos por exemplo como propósitos apenas e não estão intencionados a serem limitativos. O gerenciador 40 de controle controla a operação do codec 10 de vídeo, o codec 20 de áudio, o gerenciador 30 de protocolo de dados e o multiplexador/demultiplexador 50. Contudo, uma vez que a invenção é realizada com a operação do codec 10 de vídeo, nenhuma outra discussão das outras partes do terminal será fornecida. O codec 10 de vídeo recebe um sinal de vídeo de entrada digital de uma fonte de sinal (não apresentada). O sinal de vídeo representa uma seqüência de quadros onde cada quadro é uma imagem imóvel. Quando visualizado na seqüência, os quadros fornecem a impressão de uma imagem contendo movimento. Então, a seqüência dos quadros é referenciada aqui como uma imagem em movimento. O codec 10 codifica a imagem em movimento da fonte de sinal (não apresentada) e decodifica o sinal recebido representando a imagem em movimento para visualização no visor 70. A Figura 3 apresenta a estrutura de dados para o quadro (ou imagem) de um sinal de video codificado de acordo com ο H.263. Cada quadro começa com o cabeçalho 80 de imagem, usualmente em tomo de 50 bits. O cabeçalho 80 de imagem compreende: - Código do Início da Imagem (CII) para sincronização; - Referência Temporal (RT) formada pelo incremento do valor da RT no cabeçalho da imagem de referência prévia-temporária (por exemplo o quadro-I) por um número saltado adicional ou imagens de não-referência uma vez que a imagem de referência é transmitida previamente; - Indicando o tipo de informação (PTIPO), junto com outras coisas, se o quadro é um quadro INTRA ou um quadro INTER, o formato da imagem (CIF, QCIF e etc); e - A informação do quantizador (PQUANT), que indica o quantizador DCT a ser usado para o resto da imagem.
Seguindo o cabeçalho 80 da imagem, os dados 82 da imagem para o primeiro segmento (GOB, fatia) da imagem. Devido à presença do cabeçalho 80 da imagem, o cabeçalho do segmento para o primeiro segmento não é necessário. Então, os dados da imagem 82 seguindo o cabeçalho 80 da imagem incluem o vetor 821 de movimento do macro-bloco (se aplicável) e os dados do bloco 822.
Após os dados 82 para o primeiro segmento da imagem é o cabeçalho 84 do segmento (por exemplo o cabeçalho GOB) para o próximo segmento. Este cabeçalho GOB inclui: - o código de inicio GOB (GBSC) para sincronização; - o Número do Grupo (NG) indicando o número do GOB dentro da imagem; - o ID do quadro GOB (GFID) que tem o mesmo valor em todo o segmento de uma determinada imagem e o mesmo valor como em uma imagem codificada previamente se as duas imagens forem do mesmo tipo (I, P etc.); e - a informação do quantizador (GQUANT) indicando o quantizador a ser usado para o restante da imagem (a menos que alterado subseqüentemente no fluxo de bits). O cabeçalho 84 do segmento para o segundo segmento é seguido pelos dados de imagem 86 (e o vetor de movimento do macro-bloco (se aplicável) e os dados do bloco) para este segmento. Os dados do quadro continuam com o cabeçalho do segmento 84 e os dados de imagem 86 até que todo o quadro tenha sido codificado. O cabeçalho de imagem 80 para o próximo quadro é então enviado.
Será claro para o leitor que a perda do cabeçalho de imagem pode ter vários efeitos na codificação da imagem. O decodifícador não será capaz de sincronizar a imagem, não saberá como a imagem tem sido codificada (I ou P), etc. Convencionalmente, quando o cabeçalho da imagem for corrompido, todos os dados são descartados e uma solicitação para atualizar uma imagem INTRA é enviada para o dispositivo de transmissão. Em resposta, o dispositivo de transmissão codifica o quadro no modo INTRA e a imagem atual é congelada no visor até que este novo dado codificado-INTRA seja recebido e decodificado, A Figura 4 apresenta um exemplo de um codec de vídeo 10 de acordo com a invenção. O codec de vídeo compreende uma parte codificadora 100 e uma parte decodificadora 200, Considerando o terminal 1 como transmitindo os dados de vídeo codificados para o terminal 2, a operação do codec de vídeo 10 será descrita agora com referência a sua função de codificação. A parte codificadora 100 compreende uma entrada 101 para receber um sinal de vídeo de uma câmera ou fonte de vídeo (não apresentada) do terminal 1. O comutador 102 comuta o codificador entre o modo-INTRA de codificação e o modo-INTER.
No modo-INTRA, o sinal de vídeo da entrada 101 é enviado diretamente para o transformador DCT 103 que transforma os dados dos pixels em coeficientes DCT. Os coeficientes DCT são então passados para o quantizador 104 que quantifica os coeficientes. Ambos o comutador 102 e o quantizador 104 são controlados pelo gerenciador 105 de controle de codificação do codec de vídeo que também recebe o controle de realimentação do terminal de recepção 2 por meio do gerenciador 40 de controle H.245. A saída de dados do quantizador 104 é passada através de um quantizador inverso 108 e de um transformador DCT 109. Os dados resultantes são adicionados ao conteúdo em um armazenador 107 de imagem pelo somador 110. No modo INTRA, o comutador 115 é aberto de forma que os conteúdos do armazenador 107 de imagem sejam sobrescritos pela saída do transformador DCT inverso 109.
No modo INTER, o comutador 102 é operado para aceitar de um substrator 106 a diferença entre o sinal da entrada 101 e uma imagem prévia que é armazenada no armazenador 107 de imagem. A diferença da saída de dados do substrator 106 representa o erro de predição entre a imagem atual e a imagem prévia armazenada no armazenador 107 de imagem. O erro de predição é transformado DCT e quantizado. Os dados no armazenador 107 de imagem são então atualizados pela passagem da saída de dados pelo quantizador 104 através do quantizador 108 inverso e do transformador DCT inverso 109 e adicionando os dados resultantes aos conteúdos do armazenador 107 de imagem pelo somador 110, o comutador 115 estando fechado. O estimador de movimento 111 pode gerar dados de compensação de movimento dos dados no armazenador 107 de imagem de uma maneira convencional. O codificador de vídeo 100 produz a informação do cabeçalho (por exemplo o flag RT de referência temporal 112a para indicar o número do quadro sendo codificado, um flag INTRA/INTER 112b para indicar o modo de codificação executado (I ou P/B), um indexador de quantização 112c (e os detalhes do quantizador usado), os coeficientes DCT quantizados 112d e os vetores em movimento 112e para a imagem sendo codificada. Estes são codificados e multiplexados juntos pelo codificador de comprimento variável (CCV) 113. A saída do codificador é então multiplexada com outros sinais pelo multiplexador 50.
Na primeira incorporação da invenção, o codificador é disposto para enviar repetições do cabeçalho da imagem após todo quadro INTRA. O armazenador de dados 114 é então fornecido para armazenar temporariamente os dados a serem repetidos. Na primeira incorporação, para todo quadro INTRA, o cabeçalho 80 de imagem e o primeiro segmento de dados 82 são repetidos para transmissão para um decodificador de recepção. Então os dados de saída do codificador são como na forma apresentada na Figura 5.
Como apresentado na Figura 5, o sinal codificado começa com os dados para a primeira imagem 510 do sinal de vídeo. Este quadro é INTRA codificado. Os dados compreendem o cabeçalho 80 de imagem, os dados para o primeiro segmento 82 e o cabeçalho 84 e os dados 86 para segmentos subseqüentes da primeira imagem. O cabeçalho 80 da imagem e os dados 82 para o primeiro segmento da primeira imagem 510 são então repetidos como dados 512, o cabeçalho da imagem repetida possuindo a mesma referência temporal RT como o quadro original. Estes dados repetidos são seguidos pelos dados para os quadros subseqüentes INTER-codificados 520, 522, 524. Quando o próximo quadro INTRA for codificado, os dados 510’ para o quadro é seguido por uma repetição 512’ do cabeçalho de imagem 80 e o primeiro segmento de dados 82 para o quadro INTRA 510’.
Este dispositivo conduz a uma sobrecarga em tomo de 227 bytes por quadro-INTRA para uma conexão de 28.8 kbps e uma imagem QCIF. O decodificador de recepção então receberá uma duplicata da informação do cabeçalho. Neste cenário, o decodificador é disposto para operar como descrito no Anexo N do H.263 com referência para o modo de Seleção da Imagem de Referência (SIR). De acordo com o Anexo N H.263, se o decodificador recebe dois ou mais cabeçalhos de imagem possuindo a mesma Referência Temporal (RT), então o segundo e os cabeçalhos subseqüentes (e seus dados relacionados) são ignorados pelo decodificador. Então, se o decodificador de recepção gerencia corretamente o decodificador, a primeira ocorrência do cabeçalho da imagem (então a leitura da RT deste cabeçalho), o decodificador ignorará a repetição do cabeçalho da imagem. Então o codificador de acordo com a primeira incorporação da invenção será operável com o decodificador convencional, embora tal dispositivo não resulte nos benefícios da invenção. A compatibilidade é contudo fornecida.
Na primeira incorporação descrita acima, os dados repetidos relatam uma parte incompleta do quadro e em particular ao cabeçalho da imagem e os dados para o primeiro segmento da imagem. O decodificador de acordo com a invenção então detecta a presença dos dados repetidos pela detecção de que os dados para um quadro incompleto tem sido recebidos e usa os dados armazenados para completar o quadro.
Na segunda incorporação de um codificador de acordo com a invenção, os quadros de vídeo redundantes são adicionados para o fluxo de bits codificado. Tal quadro redundante não é usado para trazer qualquer informação adicional para a seqüência de vídeo transmitida. Ao invés do quadro redundante ser usado para repetir o cabeçalho da imagem de uma imagem prévia. Os quadros redundantes são adicionados ao fluxo de bits de vídeo por um codificador de acordo com a invenção. A presença de um quadro redundante é explicitamente sinalizada para o decodificador ou o decodificador pode usar as características implícitas dos quadros redundantes para detectar a presença de tal quadro redundante, A Figura 6 apresenta a estrutura de quadro de uma saída de sinal pelo codificador de acordo com a segunda incorporação da invenção. O codificador é disposto para gerar e enviar um quadro redundante 612 após cada quadro INTRA 610. De acordo com ο H.263, as imagens compactadas consecutivas não podem representar a mesma imagem não compactada a menos que o modo de Seleção de Imagem de Referência (SIR) for selecionado (Anexo N). A segunda incorporação da invenção não confia no SIR sendo selecionado. Neste caso, o cabeçalho de imagem somente é armazenado no armazenador 114 de dados. Sob o controle 105 o cabeçalho de imagem original 80 é alterado tal que o novo cabeçalho de imagem 80’ é o mesmo que para o quadro INTRA 610, exceto que o tipo de codificação de imagem no campo PTIPO é alterado de I para P e o campo RT é incrementado. O controle 105 também agrupa um campo 88 que indica que não tem sido alterado para os dados para todo o quadro. No H.263 este campo inclui um flag de Indicação de Macro-bloco Codificado (COD), que é agrupado em relação ao macro-bloco que é INTER-codificado e, quando agrupado, indica que nenhuma informação adicional é enviada para o macro-bloco (e não altera). Os quadros-INTER subsequentes 620, 622, 624, codificados na mesma maneira como os quadros 520,522, 524 apresentados na Figura 5, são transmitidos até o próximo quadro-INTRA 610’.
De acordo com outra incorporação da invenção, os quadros redundantes estão incluídos após os quadros-INTER como também os quadros-INTRA. O quadro redundante dos dados repetidos 612 contém o cabeçalho de imagem 80’ em tomo de 50 bits, 99 bits COD (um para cada um dos 99 macro-blocos dentro de uma imagem QCIF) e alguns bits de enchimento para compor um número inteiro de bits para um quadro completo. De um modo geral tal quadro redundante tipicamente consiste de 19 bytes e então adiciona em tomo de 8% de sobrecarga para o fluxo de dados para uma conexão H.263 de 28.8 kbps e uma imagem QCIF. Este valor de sobrecarga aplica somente se cada quadro INTRA e cada quadro INTER for associado com um quadro redundante. Claramente a sobrecarga pode ser reduzida se o quadro redundante for codificado após apenas cada quadro INTRA.
Como descrito com referência às Figuras 5 e 6, o cabeçalho de imagem repetido para um quadro é fornecido subsequente aos dados originais para o quadro de uma imagem e antes para os dados para o próximo quadro. A terceira incorporação do codificador será agora descrita. Esta incorporação é baseada em uma nova adição para o campo da Informação de Aperfeiçoamento Suplementar (Anexo L) do H.263. A adição habilita à repetição dos campos da camada de imagem determinada da imagem prévia nos campos de informação suplementar da imagem atual. (Os campos da camada da imagem não são repetidos dentro da mesma imagem uma vez que eles estão em perigo de serem corrompidos ao mesmo tempo como os próprios dados da camada de imagem.) A inclusão da Informação de Aperfeiçoamento Suplementar no cabeçalho da imagem é indicado, de acordo com o H.263, pelo flag PEI. Se PEI for estabelecido, isto indica que a informação suplementar segue no campo PSUPP de 8-bits. O PEI também indica que o campo PSUPP também segue com a outra informação e assim por diante.
Os decodificadores que não suportam as capacidades estendidas descritas no Anexo L são projetadas para descartar o PSUPP se PEI for estabelecido em 1. Isto habilita a compatibilidade para as capacidades estendidas do Anexo L, de forma que o fluxo de bits que faz uso das capacidades estendidas pode também ser usado sem alteração pelos decodificadores que não suportam estas capacidades. O Anexo L do H.263 descreve o formato da informação de aperfeiçoamento suplementar enviado no campo PSUPP da camada de imagem desta Recomendação. A presença desta informação de aperfeiçoamento suplementar é indicada no PEI, e um bit PEI adicional é inserido entre todo octeto dos dados PSUPP.
Os dados PSUPP consistem de uma indicação do tipo de função de quatro-bits FTIPO, seguida por uma especificação do tamanho dos dados de parâmetro de quatro- bits TD, seguido pelos octetos TD dos dados de parâmetro de função, opcionalmente seguido por outra indicação do tipo de função, e assim por diante. O decodificador que recebe uma indicação do tipo de função que não suporta pode descartar os dados do parâmetro de função para a função e então checar para uma indicação do tipo de função subseqüente que pode ser suportado. Os valores FTIPO que foram definidos são apresentados na Tabela L.l do H.263. Esta incorporação da invenção requerería algumas alterações no Anexo L do H.263. Estas alterações são: 1 - a definição da nova indicação do tipo de função (FTIPO) na Tabela L.l do H.263 por exemplo Entrada 13 - Repetição dos Dados da Camada de Imagem; e 2 - a inclusão no Anexo L de uma explanação do efeito deste código FTIPO é por exemplo: A Função de Repetição dos Dados da Camada de Imagem deveria ser usada para repetir os campos determinados da representação codificada dos dados da camada de imagem da imagem prévia. Os campos repetidos deverão aparecer na ordem sintática natural iniciando do campo de Referência Temporal (RT). Em outras palavras, se os bits PEI forem removidos dos dados repetidos da camada de imagem, o fluxo de bits de repetição seria exatamente o mesmo do fluxo de bits original na posição correspondente. O campo TD do IAS indica o número de bytes repetidos. O TD igual a zero é reservado para uso futuro. A informação do cabeçalho da imagem então segue o octeto FTIPO/TD.
Este método proposto introduz um retardo considerável comparado com as incorporações anteriores ao recuperar o cabeçalho de imagem corrompido, uma vez que a recuperação não pode tomar lugar até o início da próxima imagem for recebida. Contudo, uma vez que a operação do decodificador for tipicamente mais rápida do que a transmissão de vídeo-dados em tempo real ao menos nas baixas taxas do quadro, o decodificador é comumente capaz de recuperar o tempo gasto para esperar a próxima imagem chegar.
Uma forma possível para implementar um codificador de acordo com a terceira incorporação é apresentada no fluxograma apresentado na Figura 7. Com relação a esta incorporação, o cabeçalho de imagem refere-se aos dados da camada de imagem precedentes à Informação de Aperfeiçoamento Suplementar na sintaxe do fluxo de bits. O sinal não compactado é enviado para o codificador 700 na taxa de quadro determinada. 0 algoritmo de controle da taxa de bits decide se para o código ou para saltar o quadro 702 particular. Se o quadro estiver indo para ser codificado, o cabeçalho da imagem é codificado primeiro 704. O cabeçalho de imagem é também armazenado 708 no armazenador de dados 114. Não mais do que três cabeçalhos de imagens são necessários em qualquer momento, denominadamente de o cabeçalho da nova imagem e os cabeçalhos das duas imagens codificadas anteriormente. O codificador determina 706 se o GFID está caminhando para ser alterado nesta imagem (comparado com a imagem anterior) baseado nos cabeçalhos da imagem das imagens prévia e atual. Se o GFID da imagem prévia também difere do GFID da imagem 710 antes que, uma necessite repetir o cabeçalho da imagem da imagem anterior como Informação Aperfeiçoada Suplementar. Por outro lado, o receptor pode recuperar o cabeçalho da imagem da imagem prévia 712 usando o GFID da imagem atual ou a imagem que precede a imagem anterior. Finalmente, o restante da imagem é codificado 714. Então, o laço de codificação continua do início 700. O cabeçalho da imagem repetido pode ser repetido sem o CII. Altemativamente, o cabeçalho podería ser manipulado pelo código sistemático de correção de erro. O código sistemático de correção de erro é tal que os primeiros símbolos k são as mensagens atuais e o restante dos símbolos é usado para verificação de erro. Neste caso particular, os primeiros bits k são o cabeçalho da imagem, e os restantes dos bits são transmitidos como Informação Aperfeiçoada Suplementar no próximo quadro. Conseqüentemente, a seleção do código de correção de erro afeta como os vários erros de inversão de bits podem ser detectados e corrigidos e como os vários bits suplementares são necessários para fornecer esta proteção de erro.
Nas incorporações do codificador 100 descrito acima o codificador tem sido pré-programado para enviar repetições do cabeçalho de imagem. Contudo, o codificador 100 pode ser disposto adicionalmente para repetir ou restaurar os dados de imagem em resposta ao comando do decodificador, Adicionalmente ou altemativamente o codificador pode ser disposto para enviar um cabeçalho de imagem repetido toda vez que o parâmetro GFID altera o estado.
Considerando o terminal 1 como recebendo os dados de vídeo codificados do terminal 2, a operação do codec de vídeo 10 de acordo com a invenção será descrita agora com referência a sua função de decodificação. O terminal 1 recebe o sinal de multimídia do terminal 2 de transmissão, O demultiplexador 50 demultiplexa o sinal de multimídia e passa os sinais demultiplexados para as partes corretas do receptor, por exemplo os dados recebidos do codec de vídeo 10, os dados de áudio para o codec de áudio 20 e os dados de controle H.245 para o controle 40 H.245.0 decodifícador 200 do codec de vídeo decodifica os dados de vídeo codificados pela quantização inversa, pelos dados de transformação DCT inversa e de compensação de movimento. Os dados de vídeo decodificados são então enviados para reprodução no visor 70 do terminal de recepção 1.
Como apresentado na Figura 4, a parte do decodifícador 200 do codec de vídeo 10 compreende um decodifícador 218 de comprimento variável, um quantizador inverso 220, um transformador 221 DCT inverso, um compensador de movimento 222, o armazenador 223 de imagem, um controlador 224, um armazenador de dados 228 de imagem temporário e os comutadores 230 e 232. O controlador 224 recebe os sinais de controle do codec de vídeo demultiplexados do fluxo de multimídia codificado pelo demultiplexador 50. Na prática o controlador 105 do codificador e o controlador 224 do decodifícador podem ser o mesmo processador. O controlador 224 do decodifícador checa a integridade dos dados recebidos. Um erro no cabeçalho de imagem pode significar que a imagem não pode ser decodificada e é completamente perdida ou é então corrompida que está efetivamente perdida, A primeira incorporação do decodifícador será agora descrita. O Decodifícador de Comprimento Variável (DCV) 218 decodifica os dados recebidos na tentativa de reproduzir a estrutura do quadro original que possui o formato tal como apresentado na Figura 3. Vale dizer que, o DCV 218 descompacta os dados codificados e o controlador 224 detecta o Código de Início de Imagem (CII) dentro dos dados recebidos. O controlador 224 então usa a informação dentro do cabeçalho da imagem para controlar o quantizador inverso 220 e o comutador 230. Quando a informação do PTIPO indica um quadro-INTRA, o comutador 230 é aberto e a saída do dispositivo 221 DCT inverso é entrada para o armazenador 223 da imagem. Quando a informação PTIPO indica um quadro-INTER, o comutador 230 é fechado e os conteúdos do armazenador de imagem 223 são adicionados na saída do dispositivo 221 DCT inverso (o erro de predição decodificado) pelo somador 234.
Se o decodifícador não for capaz de decodificar o primeiro cabeçalho de imagem, mas for capaz de detectar outros segmentos da imagem (por exemplo o GBSC do segundo segmento 84), então o decodifícador armazena estes dados no armazenamento 228 de dados de imagem temporário. Quando o decodifícador recebe, decodifica e identifica os dados do cabeçalho repetidos (e o primeiro segmento de dados 82), o decodifícador então usa os dados no armazenamento de imagem temporário para reproduzir o restante da imagem.
Então, se o controlador 224 não detecta o CII no início do quadro (ou por outro lado determina que o cabeçalho da imagem está corrompido) mas não detecta o cabeçalho de segmento (por exemplo detectando um código GBSC de início GOB), o controlador 224 altera o status do comutador 232 tal que a saída de dados do DCV 218 é entrada para o armazenamento 228 de dados de imagem temporário. Estes dados iniciarão do código GBSC detectado uma vez que o DCV não será capaz de sincronizar o início da imagem.
Referenciando à Figura 5, vamos assumir que o decodifícador tem detectado o GBSC no cabeçalho 84 para o segundo segmento do quadro 510. Os dados armazenados no armazenador de dados 228 de imagem temporário então compreende o cabeçalho 84 avançado e o cabeçalho para o segundo segmento, os dados para o segundo segmento, o cabeçalho para o terceiro segmento, os dados para o terceiro segmento do quadro 510 e etc.
Se o cabeçalho de imagem perdido/corrompido pertencido ao quadro-INTRA, os próximos dados recebidos pelo decodifícador serão então o cabeçalho de imagem repetido e o primeiro segmento de dados 512.0 decodifícador recebe os dados 512 relatando o cabeçalho 80 de imagem repetido e o primeiro segmento 82 de dados. O controlador detecta o CII nos dados 512 repetidos, lê o campo PTIPO no cabeçalho e então instrui o quantizador 220 como o quantizador a ser usado e o comutador 230 abre em resposta ao campo PTIPO no cabeçalho indicando um quadro INTRA. O restante da informação repetida (o primeiro segmento de dados repetido) é decodificado pelo quantizador inverso 220 e o transformador IDCT e o primeiro segmento de imagem repetido decodificado é saída do IDCT 222 para o aimazenador de imagem 223. O decodificador reconhece que os dados não são para toda a imagem e é apenas um cabeçalho 80 de imagem seguido pelos dados 82 de imagem para o primeiro segmento seguido pelo cabeçalho de imagem para um quadro subsequente, por exemplo, o decodificador decodificando os dados repetidos 512 e então detectando que o código inicial subseqüente é para um código diferente e o quadro 520. Em resposta a esta detecção pelo decodificador, o controlador 224 altera o status do comutador 232 tal que os dados do quadro 510 armazenados no armazenador 228 de imagem temporário é saída para o quantizador inverso 220 e o transformador IDCT 221. Os dados decodificados são então saída para o armazenamento de imagem 223 para atualizar os conteúdos do armazenador de imagem com o restante dos dados decodificados para a imagem atual.
Como mencionado acima, na primeira incorporação de um decodificador de acordo com a invenção, o decodificador detecta o recebimento de um cabeçalho de imagem repetido pela detecção da ocorrência do cabeçalho da imagem que não é seguido pelos dados para toda a imagem (por exemplo a imagem seguida pelos dados para um segmento da imagem mas não mais). Outras formas poderíam ser usadas para detectar a repetição da informação do cabeçalho.
Como explicado anteriormente, se o decodificador for para decodificar corretamente o quadro 510, o decodificador simplesmente descarta a repetição do cabeçalho 512 quando o sinal é formado como apresentado na Figura 5. A Figura 8 apresenta um fluxograma ilustrando o método de operar um decodificador de acordo com a primeira incorporação da invenção. Primeiramente 400 o decodificador 200 inicia a decodificação do sinal recebido pela checagem se o código de início da imagem (CII) é o próximo código nos dados entrantes. Se o cabeçalho de imagem for considerado para ser corrompido 402, o controlador armazena 404 os dados de imagem associados com os segmentos restantes da imagem no armazenador de dados 228 de imagem temporário. Várias formas podem ser usadas para determinar se a imagem é corrompida. Alguns métodos exemplares são se o decodificador não pode detectar o CII, ou se um método de detecção de erro (tal como o total de verificação CRC H.223) indica que existe ura erro, ou se um parâmetro improvável é encontrado no cabeçalho da imagem (por exemplo o flag INTER é estabelecido dentro do cabeçalho do segmento quando o tipo de codificação do cabeçalho da imagem é INTRA). O decodificador 200 então procura o próximo cabeçalho livre de erro. Se o cabeçalho for um quadro INTRA, o decodificador tenta decodificar o quadro. Se forem encontrados que alguns dos segmentos de imagem estão perdidos, os segmentos correspondentes do quadro prévio são lidos do armazenador 228 de imagem temporário e decodificado. Se o cabeçalho de imagem perdido/corrompido pertencido ao quadro-INTRA, os próximos dados recebidos pelo decodificador serão o cabeçalho de imagem repetido e o primeiro segmento de dados 512. O decodificador decodifica 408 o cabeçalho da imagem e os dados para o primeiro segmento da imagem. O decodificador detecta 406 que os dados não estão para todo o quadro e, em resposta, o decodificador então decodifica 408 os dados armazenados no armazenador de dados 228 de imagem temporário, com base neste cabeçalho de imagem repetido.
As técnicas normais de ocultamento de erro podem então ser usadas para ocultar os erros dentro da imagem que possuem aumento da transmissão ou decodificação de erros. Como é convencional, o decodificador também pode enviar uma solicitação atualizada para o codificador se o quadro decodificado é considerado também errôneo, O decodificador convencional, na recepção de um quadro incompleto de dados, concluiría que a perda dos dados foi perdida na transmissão. Então, o decodificador solicitaria um pedido de imagem INTRA de uma forma conhecida. Então, o codificador de acordo com a invenção pode operar com o decodificador que não está de acordo com a invenção. A segunda incorporação do decodificador de acordo com a invenção será agora descrita, Com referência ao sinal formatado como apresentado na Figura 6, se o decodificador não for capaz de decodificar o cabeçalho original do quadro 610, o decodificador armazena os dados da imagem restante 84, 86 para o quadro no armazenamento 228 de imagem temporário. O primeiro segmento do quadro não é armazenado porque não pode ser identificado pelo decodificador. Quando o quadro redundante 612 for recebido, o decodificador lê os dados como sendo INTER codificado mas sem alteração. 0 codificador de acordo com a técnica anterior não usualmente fomeceria esta informação (esta sendo aparentemente 100% redundante). O decodificador de acordo com a invenção detecta o recebimento de um cabeçalho de imagem repetido pela detecção da ocorrência de um cabeçalho de imagem INTER seguido pelo campo indicando nenhuma-alteração. Na recepção de tais dados, o decodificador usa o cabeçalho de imagem INTER para configurar o decodificador e então decodifica a informação do quadro prévio, armazenado no armazenador 228.
Nesta incorporação, os dados para o primeiro segmento de imagem não é repetido e pode então ser considerado para ser perdido. O decodificador, no recebimento dos dados do cabeçalho repetido, então faz com que o comutador 232 altere o status tal que os conteúdos dos dados da imagem são restaurados do segundo segmento avançado. Altemativamente, o decodificador pode ser capaz de estimar onde o primeiro segmento dos dados de imagem deveríam começar nos dados corrompidos e decodificar os dados a partir deste ponto. Por exemplo, vamos assumir que existe um erro de inversão de bit no cabeçalho da imagem da imagem original e então o cabeçalho da imagem não pode ser decodificado. Contudo, o CII está ainda válido e o início do quadro pode então ser detectado confiantemente. Toda a imagem 610 é então armazenada no armazenador 228 de imagem temporário e então quando o cabeçalho repetido for recebido, o decodificador 200 inicia a decodificar os dados armazenados na posição onde o cabeçalho da imagem é esperado para terminar e onde os dados para o primeiro segmento é esperado para iniciar.
Então, o decodificador inspeciona os dados entrantes. Se o cabeçalho da imagem estiver perdido ou corrompido, os dados para o restante do quadro são armazenados no armazenador de dados 228 de imagem temporário. Os dados subseqüentes são então codificados e se os dados relacionam a um quadro-INTER e indica que não existe alteração na imagem, o cabeçalho da imagem é decodificado e o armazenador de dados 228 de imagem temporário é decodificado usando a informação no cabeçalho da imagem do quadro redundante.
Quando o sinal é formatado como apresentado na Figura 6, se o decodificador gerencia a decodíficação corretamente do cabeçalho de imagem do quadro 610, o decodificador continuará e decodificará a repetição do cabeçalho 612. Como descrito com referência à Figura 6, a informação 612 repetida compreende o cabeçalho 82 da imagem (incluindo a RT incrementada) e o campo 88 indicando que nenhum dos dados tem alterado com relação ao quadro prévio codificado. Uma vez que não existem dados armazenados no armazenador de dados 228 de imagem temporário, o decodificador descartará o quadro redundante de dados e decodificará o quadro subseqüente 620.
No recebimento de um sinal codificado de acordo com a terceira incorporação da invenção, o decodificador de acordo com a invenção usa os dados seguindo o octeto FTIPO/TD da Informação de Aperfeiçoamento Suplementar no quadro subseqüente para decodificar os dados armazenados no armazenador 228 de imagem temporário. A terceira incorporação do decodificador será agora descrita com referência à Figura 9. Esta incorporação faz uso do método IAS como descrito anteriormente com referência ao codificador e a Figura 7. O decodificador opera como a seguir. Ao iniciar 900, o decodificador recebe o cabeçalho da imagem da próxima imagem transmitida. Se o cabeçalho estiver livre de erros 901, o decodificador pode decodificar o cabeçalho sem problemas 902. Então, este pode continuar a decodificar o restante da imagem 904. Se alguns erros forem detectados no cabeçalho da imagem 901, o decodificador busca 906 para o primeiro cabeçalho do segmento livre de erro (GOB ou fatia) da imagem. Vamos chamar esta posição de fluxo de bits como a primeira posição de re-sincronização. Se o GFID do cabeçalho for o mesmo como na imagem prévia 908, o decodificador pode recuperar as partes cruciais do cabeçalho da imagem 910 e continuar a decodificação 904, iniciando daquele segmento de imagem particular. Se o GFID difere de uma imagem prévia 908, o decodificador busca 912 para o próximo código de início da imagem. Se os dados da camada de imagem contiverem a repetição 914 do cabeçalho da imagem IAS, o decodificador pode recuperar o cabeçalho da imagem da imagem atual 916. Deve também estabelecer a posição de decodificação no fluxo de bits de retomo para a primeira posição 918 de re-sincronização. Se os dados da camada de imagem não contiverem a repetição do cabeçalho da imagem IAS, o decodificador busca o próximo código de início do segmento de imagem e checa 920 se o GFID no cabeçalho é o mesmo como o GFID da imagem que está sendo decodificada. Se os GFIDs forem iguais, o decodificador pode recuperar o cabeçalho da imagem 910 e continuar a decodificação da primeira posição de re-sincronização. Se os GFIDs forem diferentes um do outro, o decodificador não possui meios para recuperar o cabeçalho da imagem corrompido. Neste caso 922, pode solicitar para uma atualização INTRA, por exemplo. O armazenador de imagem temporário pode armazenar os dados codificados para uma pluralidade de quadros. Uma vez que muitos quadros nas aplicações de baixa taxa de bits são codificados em um quadro INTER, a maioria dos dados armazenados no armazenador de dados de imagem temporário é comumente para representar os dados de erro de predição e consequentemente serem relativamente compactos. O armazenador de imagem temporário então deveria ser suficiente para armazenar os dados para pelo menos um quadro INTRA e um quadro INTER de dados, um quadro INTER tipicamente sendo codificado em tomo de 250 bytes para uma imagem QCIF em 28.8 kbps.
Se quaisquer dados para os quadros subsequentes de vídeo são também armazenados no armazenador de dados 228 de imagem temporário, estes são também decodificados e a saída para o armazenador de imagem 223 traz os conteúdos do armazenador de imagem 223 em alinhamento com os conteúdos do armazenador de imagem correspondente do dispositivo de transmissão.