PT1157562E - Codificação video - Google Patents

Codificação video Download PDF

Info

Publication number
PT1157562E
PT1157562E PT00906346T PT00906346T PT1157562E PT 1157562 E PT1157562 E PT 1157562E PT 00906346 T PT00906346 T PT 00906346T PT 00906346 T PT00906346 T PT 00906346T PT 1157562 E PT1157562 E PT 1157562E
Authority
PT
Portugal
Prior art keywords
video
image
video data
data
update request
Prior art date
Application number
PT00906346T
Other languages
English (en)
Inventor
Miska Hannuksela
Ari Hourunranta
Original Assignee
Nokia Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=10847994&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=PT1157562(E) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nokia Corp filed Critical Nokia Corp
Publication of PT1157562E publication Critical patent/PT1157562E/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • H04N19/166Feedback from the receiver or from the transmission channel concerning the amount of transmission errors, e.g. bit error rate [BER]
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Color Television Systems (AREA)
  • Glass Compositions (AREA)
  • Television Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

1
DESCRIÇÃO "CODIFICAÇÃO VÍDEO" A presente invenção refere-se a codificação de video.
Um dos objectivos recentes nas comunicações móveis tem sido a tentativa para aumentar a velocidade de transmissão de dados, de modo a possibilitar serviços multimédia através de redes móveis. Um dos componentes chave da multimédia é o video digital. 0 video digital oferece um grande número de vantagens sobre os tradicionais sistemas analógicos, suportando serviços tais como video através de telefone e aplicações multimédia. No entanto, um problema chave do video digital, quando comparado com os sistemas analógicos, é a sobrecarga que implica em recursos de comunicações e armazenamento. Por exemplo, é necessária uma largura de banda de aproximadamente 160 Mbps de modo a transmitir video com qualidade de emissão, a qual se compara com uma largura de banda de aproximadamente 5 MHz para qualidade comparável de video analógico. Logo, para se poder usar video digital, o sinal digital requer redução na quantidade de dados. A transmissão de video envolve um tráfego continuo de dados que representam imagens em movimento. Tal como é geralmente conhecido, a quantidade de dados necessários para transferir imagens é alta, comparativamente a muitos outros tipos de meios de transmissão e, até hoje, o uso de video em terminais de baixa taxa de bits tem sido desprezível. No entanto, têm sido obtidos progressos significativos na área da compressão de video de baixa taxa de bits. Qualidade aceitável de video pode ser obtida em taxas de bits à volta de 20 Kb por segundo.
Como resultado desta progressiva redução na taxa de bits, espera-se que o video vá ficar brevemente um serviço 2 viável para oferecer redes de largura de banda limitada, tais como as redes fixas públicas (PSTNs) e as redes de telecomunicações móveis. Em aplicações de videotelefone que usem redes fixas, os erros são usualmente ultrapassados retransmitindo os dados. No entanto os telefones móveis são susceptiveis a maior taxa de erros que as PSTN e têm atrasos de confirmação mais longos. Estes atrasos mais longos tornam impraticável usar a retransmissão com aplicações em tempo real de videotelefone móvel. A retransmissão é igualmente ineficaz em situações de taxa de erros altas.
Uma sequência de video consiste numa série de imagens paradas ou frames. A redução de dados é obtida usando técnicas de compressão para remover dados redundantes e simultaneamente mantendo informação suficiente para permitir que a imagem original seja reproduzida com uma qualidade aceitável. Existem dois géneros principais de redundância em sinais de video: espacial e temporal. Para a codificação de imagens, as técnicas que só exploram a redundância espacial são designadas intraframe ou I frame (i.e. tratam separadamente cada frame), enquanto que aquelas que exploram a redundância temporal são designadas interframe ou P frames (i.e. exploram semelhanças entre frames). A posterior, invariavelmente, explora igualmente a redundância espacial e.g. gerando dados de compensação de movimento, que descrevem o movimento (isto é deslocação) entre áreas semelhantes da imagem presente e uma imagem antecedente. No caso de interframe, a imagem prevista (com compensação de movimento) raramente é suficientemente exacta o e portanto uma imagem com previsão de erro comprimida espacialmente é associada a cada interframe.
No entanto, habitualmente não é possível obter compressão suficiente reduzindo apenas a redundância da 3 sequência. Logo, codificadores de vídeo tentam reduzir a qualidade dessas partes da sequência vídeo que são, subjectivamente, as menos importantes. Adicionalmente, a redundância da sequência de bits codificada é reduzida por meio de parâmetros e coeficientes de codificação de compressão eficientes e sem perdas. A técnica principal consiste em utilizar códigos de comprimento variável, nos quais cada valor é codificado usando uma palavra de código unívoca. As palavras de código mais curtas são alocadas aos valores que estatisticamente ocorrem com maior frequência.
Diversas técnicas de codificação vídeo têm sido desenvolvidas. As quais incluem codificação de repetição, reabastecimento de acesso condicionado, codificação por transformação, codificação de Huffman e modulação por código de impulsos diferenciais (DPCM). Muitas destas são utilizadas em normas padrão tais como as recomendações ITU-T JPEG, MPEG-1 e MPEG-2, e H.261/H.263. A JPEG define a constituição do fluxo de dados comprimidos para imagens paradas; As MPEG/MPEG-2 são para compressão de imagens em movimento; As H.261/H.263 foram definidas, em primeiro lugar, para aplicações de videotelefone que empreguem conexões de baixas taxas de bits (na ordem dos 10 Kb) . Os actuais sistemas de videotelefone foram projectados, em primeiro lugar, para uso em PSTN ou redes de pacotes e são reguladas pelas recomendações ITU-T H.324, a qual cobre comunicações multimédia de baixa taxa de bits, a H.233 a qual está relacionada com multiplexagem e a H.323, a qual cobre vídeo conferência em sobre redes de área local tradicionais de media partilhado. Os primeiros videotelefones serão baseados na H.324. O vídeo comprimido é facilmente corruptível por erros de transmissão, essencialmente por duas razões. Primeiro, devido à utilização de codificação temporal preditiva 4 diferencial (interframes) , é propagado um erro simultaneamente espacial e temporal. Na prática, isto significa que a partir do momento que ocorre um erro, é facilmente perceptivel ao olho humano por um período de tempo relativamente longo. Especialmente susceptíveis são as transmissões de baixa taxa de bits onde existem apenas algumas frames com codificação intra (a transmissão de frames com codificação intra faria parar a propagação do erro temporal) . Em segundo lugar, o uso de códigos de comprimento variável aumenta a susceptibilidade de erros. Quando um erro de bit altera a palavra código, o descodificador perderá a sincronia código-palavra e igualmente descodificará subsequentes palavras código sem erros (contendo vários bits) de modo incorrecto até ao próximo código de sincronismo (ou código inicial) . Um código de sincronismo é um padrão de bits, o qual não pode ser gerado por nenhuma combinação válida de outras palavras código e tais códigos são adicionados à sequência de bits em intervalos para permitir o de novo o sincronismo.
Cada bit numa sequência de bits comprimida não tem uma importância igual para as imagens descomprimidas. Alguns bits pertencem a segmentos que definem informação vital, tal como o tipo de imagem (p.ex. intra ou inter) valor do quantizador e modos de codificação opcionais que foram utilizados. Em H.263 a informação mais vital é reunida no cabeçalho da imagem. Um erro de transmissão no cabeçalho da imagem provoca tipicamente uma falha total da interpretação dos bits subsequentes que definem o conteúdo da imagem. Devido à utilização de codificação temporal preditiva diferencial (interframes), o erro é propagado tanto espacial e temporalmente. Assim, quando um descodificador detecta um cabeçalho de imagem corrompido, uma abordagem típica consiste em congelar a imagem anterior no ecrã, 5 enviar um pedido de imagem intra para o terminal transmissor e aguardar a intraframe pedida. Esta operação causa uma pausa irritante no video recebido.
Os erros de transmissão têm uma natureza diferente conforme a rede subjacente. Em redes com comutação por pacotes os erros de transmissão são tipicamente perdas de pacotes (devido à congestão em elementos da rede). Em redes de comutação de circuitos, os erros de transmissão são tipicamente erros de bits em que um "1" fica corrompido em "0" ou vice-versa e, em redes de comunicação por rádio os erros podem ocorrer em rajadas tornando a situação ainda mais difícil.
Para impedir degradações em imagens introduzidas por transmissão e erros podem-se utilizar retransmissões (tal como anteriormente descrito), podem-se aplicar detecção de erros (p.ex. verificação por redundância cíclica - Cyclic Redundancy Checking (CRC)) e/ou métodos de correcção de erro e/ou podem-se ocultar efeitos dos dados corrompidos recebidos. Em redes fixas a retransmissão proporciona uma forma razoável de proteger os fluxos de dados vídeo de erros, visto que as taxas de erros de bits (Bit Error Rates (BER)) encontram-se tipicamente na região 10“6. No entanto, atrasos de confirmação mais longos, associados à transmissão por rádio com baixa de taxa de bits e taxas de erros moderadas ou elevadas (p.ex. 10”4 a 10”3) tornam impraticável o uso da retransmissão, em especial com aplicações videofone por rádio em tempo real. A detecção de erros e métodos de correcção exigem normalmente grandes sobrecarga em termos dos dados que têm de ser transmitidos e exigem capacidade de memória/processamento. Consequentemente, para aplicações de baixa taxa de bits a ocultação de erros pode ser considerada o modo preferido para proteger e recuperar imagens de erros de transmissão. 6
Os métodos de ocultação de erro vídeo são tipicamente aplicáveis para erros de transmissão que ocorrem devido à perda de pacotes e corrupção de bits. H.263 é uma recomendação ITU-T para a codificação vídeo para a comunicação de baixa taxa de bits, que geralmente significa taxas de dados abaixo dos 64 kbps. A recomendação especifica a sintaxe da sequência de bits e a descodificação da sequência de bits. Existem actualmente duas versões de H.263. A versão 1 consiste no algoritmo núcleo e quatro modos de codificação opcionais. A versão 2 de H-263 é uma extensão da versão 1, proporcionando doze modos de codificação negociáveis.
As imagens são codificadas como luminância (Y) e dois componentes (CB e CR) de diferença de cor (crominância) . As imagens crominância são recolhidas a metade da resolução da imagem luminância ao longo dos dois eixos de coordenadas. Os dados de imagem são codificados numa base bloco-a-bloco, representando cada bloco 8x8 pixéis de luminância ou crominância.
Cada imagem codificada, bem como a sequência de bits codificada correspondente, é disposta numa estrutura hierárquica com quatro camadas que são de baixo para cima. camada bloco, camada macrobloco, camada de segmento de imagem e camada de imagem. A camada de segmento de imagem tanto pode ser disposta como um grupo de blocos (GOB) como uma fatia.
Os dados da camada bloco consistem em coeficientes de transformação co-seno discretos de quantização uniforme, que são rastreados em zig-zag, processados com um codificador de repetição e codificados com códigos de comprimento variável.
Cada macrobloco refere-se a 16 x 16 pixéis de luminância e componentes de 8 x 8 pixéis de crominância com 7 correspondência espacial. Por outras palavras, um macrobloco consiste em quatro blocos de luminância 8 X 8 e os dois blocos de diferença de cor 8x8 com correspondência espacial. Cada macrobloco inter está associado com dados de compensação de movimento que incluem um vector de movimento que define a posição de uma área correspondente no frame de referência que mais se assemelha aos pixéis do macrobloco inter. Os dados do macrobloco inter incluem dados de predição de erro codificada para os pixéis do macrobloco.
Normalmente, cada imagem é dividida em grupos de blocos (GOBs). Um grupo de blocos (GOB) inclui tipicamente uma linha de macroblocos. Os dados para cada GOB consistem num cabeçalho GOB opcional seguido de dados para os macroblocos dentro do GOB.
Se for utilizado o modo opcional estruturado em fatias, cada imagem é dividida em fatias em vez de GOBs. Uma fatia contém uma série de macroblocos consecutivos por ordem de rastreio. Os dados para cada fatia consistem num cabeçalho de fatia seguido de dados para os macroblocos da fatia.
Os dados da camada de imagem contêm parâmetros que afectam toda a área de imagem e a descodificação dos dados de imagem. Os dados de parâmetros codificados são dispostos num chamado cabeçalho de imagem.
Os cabeçalhos da imagem e GOB (ou fatia) começam com um código de sincronização. Nenhuma outra palavra de código uma combinação válida de palavras de código pode formar os mesmos padrões de bits que os códigos de sincronização. Assim, os códigos de sincronização podem ser utilizados para a detecção de erros da sequência de bits e para a ressincronização após os erros de bits. Quanto mais códigos de sincronização forem adicionados ao fluxo de bits tanto mais o sistema se torna robusto contra erros. A maioria das técnicas de ocultação de erros conhecidas baseiam-se em esquemas de interpolação espacial e temporal. A interpolação espacial é utilizada em intraframes e áreas com codificação inter das interframes. A interpolação espacial significa que as áreas perdidas são interpoladas a partir de áreas espacialmente vizinhas. Esta operação pode ser feita, por exemplo, utilizando a média ponderada da distância dos pixéis de fronteira. A ocultação de erros recorrendo à interpolação temporal é utilizada mais frequentemente na codificação video de baixa taxa de bits, uma vez que o número de intraframes é normalmente bastante baixa. Um esquema de interpolação temporal muito básico copia as áreas perdidas das mesmas posições da frame anterior, isto é, trata os blocos perdidos como blocos "não codificados". Em esquemas mais avançados, a compensação de movimento é executada recorrendo tanto à mediana como à média dos vectores de blocos espacialmente vizinhos. Apareceram também algumas propostas no sentido de utilizar equiparação de pixéis de fronteira para encontrar os melhores vectores de movimento para o bloco perdido. A baixas resoluções e a baixas taxas de bits a correlação entre blocos espacialmente vizinhos é frequentemente bastante baixa. Assim, vectores de movimento interpolados, baseados em dados de pixéis espacialmente vizinhos podem estar longe dos valores originais. Isto significa que esquemas de ocultação unidireccionais frequentemente não conseguem reconstruir os blocos originais. Além disso, se só forem utilizados vectores de movimento para ocultar sem tentar recuperar os blocos com predição de erro, a imagem torna-se pouco nítida uma vez que se perde uma grande porção de detalhes. Na prática, na utilização de esquemas de ocultação actuais, os erros ou 9 blocos incorrectamente ocultados são visíveis durante um período relativamente longo. 0 termo codec refere-se à capacidade tanto de codificar como de descodificar. Os parâmetros de codificação vídeo do algoritmo que controla a codificação no codec vídeo são normalmente pré-seleccionados com base no ambiente em que são designados para operar. Este facto é particularmente benéfico para a transmissão por canais susceptíveis aos erros. Nestas condições os parâmetros de codificação são seleccionados de forma a tentar minimizar o efeito da transmissão de erros na qualidade da imagem. Quando ocorrem erros na transmissão, o vídeo descodificado resultante provoca normalmente um aspecto granulado adicional, irritantes quadrados verde e rosa, tendência para salto temporais e por vezes padrões axadrezados.
Nos sistemas existentes, dois parâmetros que estão tipicamente pré estabelecidos no algoritmo codificador são a porção de informação de actualização intra e a frequência de códigos de arranque. Em redes PSTN o codec vídeo arranca a codificação com uma intraframe completa. As imagens intraframe são codificadas sem referência a outras imagens, o que significa que contêm toda a informação necessária para a sua reconstrução pelo descodif icador e, por esta razão, são essencialmente o ponto de entrada para o acesso a uma sequência vídeo. Porque o conteúdo da informação das intraframes é elevado, a taxa de compressão é relativamente baixa e por conseguinte uma intraframe completa exige um número significativo de bits de dados para definir a imagem. Como resultado, a transmissão de uma intraframe por canais de largura de banda baixa, mesmo utilizando pequenas memórias intermédias para minimizar atrasos, dura grandes períodos de tempo. Normalmente tem como resultado o congelamento pelo descodificador da imagem anterior no ecrã 10 durante um momento, na realidade para permitir à imagem seguinte recuperar o atraso. Assim, como abordagem alternativa, em imagens sucessivas, é preferível actualizar porções da imagem em modo intra em vez de actualizar toda a imagem de uma só vez. Portanto, diz-se que a imagem é intra-actualizada. Tipicamente, este facto ocorre numa base macrobloco a macrobloco de 16 x 16 pixéis. Se as taxas a que os macroblocos são actualizados é baixa os artefactos de erros de transmissão na imagem podem ser detectados durante bastante tempo e só desaparecem quando o macrobloco errado é intra-actualizado. Por conseguinte, em redes com susceptibilidade ao erro é necessário aumentar o número de macroblocos de intra-actualização em cada frame, ou a taxa a que as intraframes completas são enviadas.
Outra técnica utilizada para minimizar o impacto dos erros de transmissão consiste em reduzir o tamanho das áreas afectadas. Uma vez que a sequência de bits codificada contém palavras de código de codificação de comprimento variável (variable length coding (VLC)), um erro na sequência de bits na maioria dos casos faz com que o descodificador perca a sincronização com as palavras de código VLC. O descodificador só pode continuar a descodificar correctamente depois de receber um código de arranque. Tipicamente, os códigos de arranque são encontrados no início das frames de imagem codificadas, no entanto a maioria dos padrões de codificação vídeo permitem também a inserção de códigos de arranque noutros sítios numa imagem, por exemplo no início de cada linha de macroblocos ou mesmo com maior frequência. Assim, para reduzir o tamanho das áreas afectadas por erros de transmissão podem ser introduzidos códigos de arranque na imagem em localizações mais frequentes. A densidade destes códigos de arranque é um compromisso entre uma reduzida 11 qualidade de imagem devido a um aumento do número de códigos de arranque e o tamanho da área que é afectada por erros de transmissão. Em ambientes susceptiveis ao erro será vantajoso sacrificar um pouco da qualidade de imagem visual de forma a reduzir a área de imagem afectada por áreas de transmissão. A abordagem global actual consiste em pré-programar a informação de actualização intra e parâmetros do código de arranque no algoritmo que controla o codificador vídeo, dependendo do nível antecipado de erros de transmissão. Os dados de actualização intra e códigos de arranque são razoavelmente eficazes para mitigar os efeitos de erros de transmissão previsíveis, mas estas abordagens têm certas deficiências. Principalmente, estas deficiências têm origem no facto de os erros de transmissão reais não serem sempre previsíveis e em situações em que existe uma ampla margem entre o erro de transmissão predito e o verdadeiro erro de transmissão os parâmetros de actualização intra e código de arranque não serão consistentes com o nível exigido para estes parâmetros de codificação. Por exemplo, se os erros de transmissão são menos do que o antecipado então o nível de repetição de dados de actualização intra ou código de arranque estarão em excesso em relação ao necessário e o excesso será, portanto, redundante. Por outro lado, se os erros de transmissão são muito piores do que o previsto, então a informação de actualização intra e código de arranque serão insuficientes e irão espalhar-se tanto temporalmente como espacialmente nas imagens descodificadas tendo como resultado uma fraca qualidade de imagem.
Em terminais multimédia H.324 conhecidos é possível enviar vários comandos a partir de um descodificador receptor para um codificador transmissor através do protocolo de controlo H.245. Um comando é o 12 videoFastUpdatePicture que o descodificador pede ao codificador para introduzir o modo de actualização rápida assim que poder e actualizar toda a imagem. 0 protocolo não define como o codificador irá concretizar a actualização. 0 protocolo define também o comando videoFastUpdateGOB que pede ao codificador para introduzir o modo de actualização rápida assim que poder e actualizar todo o GOB, e videoFastUpdateMB que pede ao codificador para introduzir o modo de actualização rápida assim que poder e actualizar todo o macrobloco. Assim, o descodificador pode identificar a imagem, GOB ou macrobloco a ser actualizado.
Numa implementação básica, um terminal multimédia conforme H.324 irá enviar um comando videoFastUpdatePicture de cada vez que é detectado um erro. De modo semelhante, um comando videoFastUpdateGOB é enviado por cada GOB corrompido.
De acordo com H.245 o terminal que executa o pedido pede um reconhecimento ao codificador por cada mensagem enviada e se o reconhecimento não é enviado a tempo o descodificador irá enviar a mensagem outra vez. Isto significa que o canal de controlo pode ficar muito congestionado com comandos repetidos.
Em H.263 Apêndice 1 é introduzido um mecanismo de feedback chamado Error Tracking no qual é utilizado um protocolo H.245 para transmitir indicações acerca de quais os macroblocos de uma frame são recebidos corrompidos. 0 codificador vídeo segue os erros de predição nas frames Z passadas. Com base nas indicações H.245 e nos contadores de erros de predição, o codificador vídeo pode decidir quais os macroblocos que irá actualizar em modo intra. Um terceiro sistema de transmissão vídeo com feedback é definido em H.263 anexo N. Este é conhecido como Reference Picture Selection mode. Este sistema define formas de um 13 descodificador vídeo indicar quais os segmentos da imagem (GOB ou fatias) foram corrompidos e, com base nesta informação, o codificador vídeo pode codificar as partes corrompidas recorrendo a frames antigas em vez da última. 0 descodificador envia um reconhecimento negativo (negative acknowledgement - NACK) por cada segmento de imagem corrompido. Assim, se toda uma imagem estiver corrompida, ficará corrompido um NACK por cada segmento. Em alternativa, o descodificador pode enviar um feedback positivo, isto é os segmentos que foram recebidos sem corrupção e o codificador pode utilizar apenas as áreas não corrompidas para predição. A US 5,528,284 descreve um método de descodificação vídeo em que, em resposta a um erro nos dados recebidos para uma frame de vídeo, só é pedida uma actualização INTRA de toda uma frame vídeo (não uma porção) se os dados de actualização pedidos chegarem antes de uma actualização programada (sem ser especificamente pedida) INTRA. Esta operação evita o envio de pedidos de actualização INTRA desnecessários. Se for decidido enviar um pedido de actualização para toda a frame vídeo, quaisquer dados vídeo codificados para a frame já alinhados no descodificador são abortados tal como quaisquer dados recebidos à posteriori, até que os dados de actualização INTRA solicitados sejam recebidos. Durante este período o processo de descodificação é congelado. Não há medição do intervalo de tempo a partir da transmissão de uma primeira mensagem de pedido de actualização. Este documento não explica ou sugere que uma outra mensagem de pedido de actualização é transmitida de um descodificador vídeo para um codificador vídeo só se tiver passado um intervalo de tempo pré determinado desde uma mensagem de pedido de actualização anterior, uma vez que uma porção correspondente dos dados 14 vídeo foram transmitidos a partir de um descodificador vídeo para o codificador vídeo transmissor, limitando assim transmissões múltiplas de mensagens de pedido de actualização para a mesma porção com erros. Um método de descodificação vídeo que inclui a recepção de dados vídeo codificados por um descodificador vídeo, descodificando dos dados vídeo mencionados para formar dados vídeo descodificados e determinar a presença ou não de erros nos dados vídeo descodificados e, se for determinada a presença de um erro, enviar de uma mensagem de pedido de actualização a partir do descodificador vídeo mencionado para um codificador vídeo transmissor, a pedir uma actualização de pelo menos uma porção correspondente dos dados vídeo que contêm o erro, determinar a presença ou não de erros nos dados descodificados subsequentes para uma porção correspondente dos dados vídeo, caracterizado por se determinar a passagem de um período de tempo pré determinado desde a transmissão de uma mensagem de pedido de actualização anterior e transmitindo apenas uma outra mensagem de pedido de actualização para a porção correspondente dos dados vídeo subsequente se o período de tempo pré determinado foi ultrapassado, para limitar assim a transmissão repetida de mensagens de pedido de actualização para a mesma porção com erros. A mensagem de pedido de actualização podem pedir a actualização da totalidade de uma imagem da sequência vídeo. Adicionalmente ou em alternativa, as mensagens de pedido de actualização podem pedir a actualização de um segmento de uma imagem da sequência vídeo.
De preferência, o período de tempo pré determinado é proporcional ao atraso de confirmação entre o descodificador vídeo e o codificador vídeo. De modo 15 vantajoso, o período pré determinado é o dobro do atraso de confirmação.
De preferência, o método inclui a comparação da porção de alterações nos dados vídeo subsequentes com dados de imagem anteriores para uma área correspondente e em que a outra mensagem de pedido de actualização é enviada se a quantidade de alterações exceder um limiar pré determinado e o período pré determinado tiver sido ultrapassado.
De preferência, a outra mensagem de pedido de actualização é enviada se a quantidade de movimento na imagem anterior exceder um limiar pré determinado e o período de tempo pré determinado tiver sido ultrapassado.
De preferência, uma área de uma imagem que contém um erro é ocultada ao ser determinada a presença de um erro nos dados vídeo descodificados.
De preferência, uma área de uma imagem que contém um erro é ocultada ao ser determinada a presença do erro nos dados de vídeo descodificados e, quando é determinado que o erro está presente de forma a que a imagem não pode ser descodificada, todas as partes da imagem são rotuladas como estando ocultadas e a próxima imagem é descodificada.
De acordo com um outro aspecto da presente invenção, a invenção fornece um aparelho de descodificação vídeo que inclui: meios de recepção de dados vídeo codificados; meio de descodificação dos ditos dados vídeo para formar dados vídeo descodificados, meio para determinar a presença ou não de erros nos dados vídeo descodificados, meio para envio de uma mensagem de pedido de actualização para um codificador vídeo transmissor a pedir uma actualização de pelo menos uma porção correspondente dos dados vídeo que contêm o erro e meio de determinação da presença ou não de erros nos dados descodificados 16 subsequentes para uma porção correspondente dos dados vídeo e caracterizado por incluir o meio de determinação para determinar a ultrapassagem de um período de tempo pré determinado desde a transmissão de uma mensagem de pedido de actualização anterior e em que o aparelho descodificador é concebido para transmitir apenas uma outra mensagem de pedido de actualização para a porção correspondente dos dados vídeo subsequentes se o período de tempo pré determinado foi ultrapassado, limitando assim a transmissão repetida de mensagens de pedido de actualização para a mesma porção com erros.
De preferência, o aparelho inclui meios de comparação para comparar a quantidade de alterações nos dados vídeo descodificados com dados de imagem anteriores para uma área correspondente e em que o descodificador é concebido para enviar a outra mensagem de pedido de actualização se: a quantidade de alterações excede um limiar pré determinado e o período de tempo pré determinado tiver sido ultrapassado.
De modo vantajoso, a outra mensagem de pedido de actualização é enviada se a quantidade de movimento na imagem anterior exceder um limiar pré determinado e o período de tempo pré determinado tiver sido ultrapassado. A presente invenção é também extensível a um dispositivo rádio móvel. A presente invenção será agora descrita apenas através de exemplos fazendo referência às figuras anexas em que:
Figura 1 mostra um sistema de comunicações móvel multimédia;
Figura 3
Figura 2 mostra um exemplo de componentes multimédia de um terminal multimédia; mostra um exemplo de um codec video, 17 Figura 4
Figura 5
Figura 6
Figura 7
Figura 8
Figura 9
Figura 10 é um fluxograma que mostra o funcionamento de um descodificador video de acordo com uma primeira forma de concretização da presente invenção; é um fluxograma que mostra o funcionamento ao nível de imagem de um descodificador vídeo de acordo com a presente invenção é um fluxograma que mostra o funcionamento ao nível GOB de um descodif icador vídeo de acordo com a presente invenção é um fluxograma que mostra um algoritmo descodificador macrobloco executado por um descodificador vídeo de acordo com a presente invenção é um fluxograma que mostra o funcionamento ao nível de imagem de uma outra forma de concretização de um descodificador vídeo de acordo com a presente invenção é um fluxograma que mostra o funcionamento ao nível de imagem de um codificador vídeo de acordo com a presente invenção e é um fluxograma que mostra o funcionamento ao nível GOB de um codificador vídeo de acordo com a presente invenção
Outra descrição da presente invenção será feita fazendo referência à recomendação H.324. No entanto, não se pretende limitar a aplicação do pedido de patente a este protocolo e protocolos relacionados. A figura 1 mostra um sistema de comunicações móvel multimédia típico. Um primeiro terminal móvel multimédia 1 comunica com um segundo terminal móvel multimédia 2 por um radio link 3 para uma rede de comunicações móvel 4. Os 18 dados de controlo são enviados entre os dois terminais 1,2 bem como os dados multimédia. A figura 2 mostra os componentes multimédia típicos de um terminal 1 conforme H.324. 0 terminal inclui um codec vídeo 10 conforme H.263, um codec áudio 20 conforme G.723, um gestor de protocolo de dados 30 conforme 1.120, um gestor de controlo 40 conforme H.245, um multiplexador/desmultiplexador 50 conforme H.223 e um modem 60 (caso necessário). O codec vídeo 10 recebe sinais de um dispositivo de captura vídeo do terminal (não representado) (p.ex. câmara) para codificação e recebe sinais de um terminal remoto 2 para descodificação e apresentação pelo terminal 1 num ecrã 70. O codec áudio 20 recebe sinais para descodificar a partir do microfone (não representado) do terminal 1 e recebe sinais de um terminal remoto 2 para descodificar e reproduzir pelo altifalante (não representado) do terminal 1. O gestor de controlo 40 controla o funcionamento do codec vídeo 10, do codec áudio 20 e do gestor de protocolos de dados 30. No entanto, uma vez que a presente invenção se refere à operação do codec vídeo 10 não será prosseguida a discussão do codec áudio 20 e gestor do protocolo 30. A figura 3 mostra um exemplo de um codec vídeo 10 de acordo com a presente invenção. O codec vídeo inclui uma parte codificadora 100 e uma parte descodificadora 200. A parte codificadora 100 inclui um input 101 para receber um sinal vídeo da câmara ou fonte vídeo (não representado) do terminal 1. Um comutador 102 comuta o codificador entre o modo intra de codificação e o modo inter.
Em modo intra, o sinal vídeo do input 101 é transformado em coeficientes DCT por uma transformada DCT 103. Os coeficientes DCT são então passados para um quantizador 104 que quantiza o coeficiente. Tanto o 19 comutador 102 e o quantizador 104 são controlados por um gestor de controlo codificador 105 do codec video que recebe também o controlo de feedback do terminal receptor 2 por meio do gestor de controlo H.245 40.
Em modo inter, o comutador 102 é operado para aceitar de um subtractor 106 a diferença entre o sinal do input 101 e uma imagem anterior que é guardada num dispositivo de memória de imagens 107. O output de dados diferenciados do subtractor 106 representa o erro de predição entre a imagem actual e a imagem anterior, armazenada no dispositivo de memória de imagens 107. Os dados no dispositivo de memória de imagens 10 7 são gerados por meio da passagem de output de dados por um quantizador inverso 108 e aplicação de uma transformada DCT inversa 109 para os dados quantizados inversos. Os dados resultantes são adicionados aos conteúdos do dispositivo de memória de imagem 107 pelo adicionador 110. Um estimador de movimento 111 pode gerar dados de compensação de movimento a partir de dados no dispositivo de memória de imagens 107 de uma forma convencional. O codec video faz a saída dos coeficientes DCT quantizados 112a, o índice de quantização 112b (isto é os pormenores da quantização utilizados), um marcador intra/inter 112c para indicar o modo de codificação realizado (I ou P/B), um marcador de transmissão 112d para indicar o número da frame que está a ser codificada e os vectores de movimento 112e para a imagem que está a ser codificada. São multiplexados em conjunto pelo multiplexador 50, juntamente com outros sinais multimédia. A parte descodificadora 200 do codec vídeo 10 inclui um quantizador inverso 120, uma transformada DCT inversa 121, um compensador de movimento 122, um dispositivo de memória de imagem 123 e um controlador 124. O controlador 124 20 recebe sinais de controlo codec video desmultiplexados a partir do fluxo multimédia codificado pelo desmultiplexador 50. Na prática o controlador 105 do codificador e o controlador 124 do descodif icador pode ser o mesmo processador.
Considerando o terminal 1 como receptor dos dados video codificados desde o terminal 2, a operação do codec video 10 será agora descrito fazendo referência primeiro ao seu papel de descodificação. O terminal 1 recebe um sinal multimédia do terminal transmissor 2. O desmultiplexador 50 desmultiplexa o sinal multimédia e passa os dados video para o video codec 10 e os dados de controlo H.245 para o controlo H.245 40. O descodificador 200 do video codec descodifica os dados video codificados por meio de quantização inversa, transformada DCT inversa e compensação de movimento dos dados. Faz-se então a saida dos dados video descodificados para a reprodução num ecrã 70 do terminal receptor 1. O controlador 124 do descodificador verifica a integridade dos dados recebidos, se é detectado um erro pode pedir uma actualização dos dados corrompidos a partir do codificador do terminal transmissor 2 de uma forma a ser descrita em seguida.
Os erros nos dados video podem ocorrer ao nivel da imagem, ao nivel GOB ou ao nivel macrobloco. A verificação de erros pode ser realizada a cada nivel.
Um erro ao nivel da imagem significa que a imagem não pode ser descodificada e ficou completamente perdida ou ficou tão corrompida que ficou efectivamente perdida. Um erro ao nivel da imagem pode ser detectado de uma ou mais formas. A figura 4 mostra um fluxograma que ilustra um método de geração de mensagens de actualização de acordo com uma primeira forma de concretização da presente invenção. Em primeiro lugar (300) o descodificador começa a 21 descodificar uma imagem recebida. Se o cabeçalho da imagem fica corrompido (302) ou se encontra um parâmetro inverosímil (p.ex. um marcador inter é colocado quando o tipo de codificação é intra) a imagem perde-se irremediavelmente.
Em alternativa pode-se detectar um erro por meio da determinação do tipo de codificação utilizado na imagem e, se o tipo de codificação foi intra e mais do que Q segmentos são determinados como corrompidos (304) a imagem é considerada perdida. Os segmentos poderiam incluir GOB, fatias ou macroblocos. Por exemplo no formato de imagem QCIF existem 9 GOBs por imagem. Por conseguinte, poderia estabelecer-se como critério se, por exemplo, mais de 4 GOBs de uma imagem estiverem corrompidos uma imagem é considerada perdida. Se um GOB está ou não corrompido pode ser determinado por CRC.
Em alternativa, se a propagação temporal de erros ocorreu por mais de F imagens (p.ex. um MB não foi actualizado durante um tempo estabelecido X) e a área ocultada aumentou para além de um certo limiar sem ser actualizada (306) a imagem é considerada perdida. Para este fim, o descodificador, durante a descodificação, mantém um registo do estado (p.ex. oculto/inter/intra) dos macroblocos da imagem e considera a imagem perdida se mais do que um número pré determinado de macroblocos é marcado como oculto.
Em alternativa, se a imagem actual N é considerada perdida, o controlador 124 determina (307) se a frame antes da frame actual (N-l) continha muito movimento ou muitos erros de predição. Este facto pode ser atingido durante a descodificação da imagem seguinte (N+l) por meio da recolha dos vectores de movimento para a imagem seguinte (N+l) e cálculo da deslocação representada para a totalidade da 22 imagem. Isto pode ser feito por meio do cálculo do movimento médio representado pelos vectores de movimento ou contagem do número dos vectores de movimento associados à imagem. Se ficar determinado que a frame depois da frame actual não continha muito movimento ou erros de predição, descodifica-se a próxima imagem (300). Por outro lado é possível que a imagem actual tenha de apresentar uma imagem aceitável, isto é a imagem seguinte tem codificação inter e tem de ser predita a partir da imagem descodificada correctamente anterior.
Quando se encontra um erro ao nível da imagem o controlador 124 determina (308) se o conteúdo da imagem se modificou significativamente desde a última actualização da imagem. Esta operação pode ser conseguida por meio da geração de histogramas dos valores de pixel da crominância e/ou luminância da frame actual e uma imagem previamente descodificada com êxito e comparação dos histogramas. Em alternativa, as somas de das duas imagens podem ser comparadas. A soma do gradiente representa para cada imagem a soma das diferenças entre os valores da luminância do pixel adjacente nas direcções x e y. Se a imagem actual for considerada como tendo mudado consideravelmente, o controlador 124 determina então (312) se mais do que um período T foi ultrapassado desde que foi enviada uma actualização de imagem anterior. Neste caso é enviada uma mensagem videoFastUpdate Picture (314) para o terminal transmissor 2. O descodificador continua então a descodificar a imagem seguinte (300) sem esperar a resposta do codificador para o comando actualização.
T é proporcional ao atraso de confirmação da via de comunicação entre os dois terminais de comunicação 1,2 o que pode ser medido pelo gestor do protocolo H.245 40. Um valor típico para T é duas vezes o atraso de confirmação. O 23 valor de T é determinado para permitir o atraso de confirmação entre o descodificador receptor e o descodificador transmissor e o tempo que leva o codificador transmissor para responder aos comandos de actualização. Não é necessária a realização de todas as fases 302, 304, 306 e 307 cada uma pode ser utilizada isoladamente ou podem ser utilizados outros métodos de detecção de erros. A figura 5 é um fluxograma que mostra o funcionamento ao nivel da imagem de um descodif icador de acordo com uma segunda forma de concretização da presente invenção. Em primeiro lugar (400) é descodificada a imagem seguinte N. Se o descodificador for incapaz de descodificar a imagem (402) a imagem está em estado "perdida". O descodificador irá devolver esta decisão quando o cabeçalho da imagem for irrecuperável. Neste caso, o controlador do descodificador 124 inspecciona a imagem anterior (N-m) recebida e descodificada com êxito e garante a quantidade de movimento na imagem anterior (404) . Esta operação pode ser conseguida, por exemplo, por meio de cálculo da quantidade total de deslocamento representado pelos vectores de movimento associados com os MBs da imagem anteriormente descodificada com êxito (N-m). Se este movimento é menos ou igual a um limiar pré-determinado D, um marcador "Check Next Picture" é colocado em 1 (406) e a próxima imagem (N+l) é descodificada (400). Se o movimento é maior do que um limiar pré determinado D, a imagem é considerada corrompida e todos os MBs são marcados como estando corrompidos (408) . Isto é conseguido por meio do estabelecimento do estatuto de todos os macroblocos na imagem como "ocultos". O controlador 124 determina então (410) se passou mais do que um período T desde que foi enviado um comando anterior de actualização de imagem. Neste caso é enviada uma mensagem videoFastUpdate Picture 24 (412) para o codificador transmissor. Em todo o caso é estabelecida a "Check Next Picture Flag" em 0 (414) e a imagem seguinte é descodificada (400).
Ti pode ser proporcional ao atraso de confirmação da via de comunicação entre os dois terminais de comunicação 1,2 o que pode ser medido pelo gestor do protocolo H.245 40. Um valor apropriado para Ti é duas vezes o atraso de confirmação.
Se o descodificador conseguiu descodificar os dados do cabeçalho da imagem com êxito (402) dos GOBs da imagem são descodificados (500) (ver figura 6). De acordo com H.263 a inclusão de um cabeçalho GOB é opcional. Se omitido, o descodificador não executa qualquer verificação de integridade ao nível GOB e descodifica imediatamente o cabeçalho e dados dos MBs do GOB.
Tal como se mostra na figura 7, à medida que cada GOB da imagem é descodificado o estatuto de cada MB do GOB é determinado (602). Se um macrobloco ficar corrompido ou perdido, o MB é ocultado utilizando técnicas de ocultação de erros conhecidas e o estatuto do MB passa a "oculto" (604). Para outros MBs o descodificador determina o tipo de MB a partir do cabeçalho do macrobloco. Para MBs com codificação intra o estatuto fica definido para "actualizar" (606). O controlador 124 mantém o registo (608) do estatuto dos MBs para cada GOB e cada imagem. Para MBs com codificação inter, o estatuto é copiado do MB correspondente da frame anterior que foi descodificada.
Voltando à figura 6, assim que todos os MBs de um GOB estão descodificados (tanto quanto o descodificador é capaz), o número de MBs ocultos no GOB que está a ser descodificado é determinado por meio de exame dos registos do estatuto MB (608/502). Se o número de MBs ocultos é menor que o limiar pré determinado M (503) então o GOB 25 seguinte é descodificado (501). No entanto, se o número de MBs ocultos for maior que o limiar pré determinado M (503) então o controlador 124 verifica (504) se uma actualização GOB foi anteriormente solicitada pelo descodificador. Se foi anteriormente enviado um comando de actualização o controlador 124 determina (505) se passou mais do que um período T2 desde a actualização GOB anterior. Nesse caso é enviado um comando videoFastUpdateGOB (506). Caso contrário o GOB seguinte é descodificado (501). T2 é proporcional ao atraso de confirmação da via de comunicação entre os dois terminais de comunicação 1,2 o que pode ser medido pelo gestor do protocolo H.245 40. Um valor típico para T2 é duas vezes o atraso de confirmação.
Se não foi enviado anteriormente qualquer actualização GOB (504) o controlador verifica se o GOB está corrompido (507). Este facto pode ser verificado por CRC, taxa de erro de bits ou inspecção do cabeçalho GOB (se houver). Se o GOB não for considerado corrompido, o GOB seguinte é descodificado (501) . Se o GOB for considerado como corrupto a vizinhança (p.ex. GOBs anteriores) é examinada (508) para ver se incluiu muitos MBs com codificação intra. Nesse caso, é provável que o GOB actualmente corrompido inclua também muitos MBs com codificação intra. O controlador 124 determina então (505) se passou mais do que um período T2 desde que foi enviada a actualização GOB. Nesse caso é enviado um comando videoFastUpdateGOB (506). Caso contrário o GOB seguinte é descodificado (501). Se for determinado que os GOBs vizinhos não incluem muitos MBs com codificação intra, então o número de bits no GOB actual são contados (509) e comparados com um limiar B. Tipicamente um QCIF GOB consiste em cerca de 200 bits e um valor B típico pode ser 500 bits. Se o número de bits no GOB excede o limiar B então o controlador 124 determina (505) se passou mais do 26 que um período T2 desde que foi enviada a última actualização GOB anterior. Nesse caso é enviado um comando videoFastUpdateGOB (506). Caso contrário o GOB seguinte é descodificado (501) . Se o número de bits não exceder o limiar B, o GOB seguinte é descodificado (501) . Este processo continua até que o último MB do último GOB de uma imagem tiver sido descodificado (510), altura em que o processo de descodificação continua na fase 420 da figura 5.
Assim, vários comandos de actualização GOB podem ser enviados para uma única imagem. Um temporizador separado é mantido para cada GOB da imagem e um comando de actualização GOB é só mais do que tempo T2 que passou desde que foi enviado um comando de actualização GOB para esse GOB de uma imagem. Por exemplo, depois de descodificar a imagem N, digamos que foram enviados comandos de actualização para os GOBs 1 e 5. Ao descodificar a imagem N+l, mesmo se os GOBs 1 e 5 estão corrompidos, os comandos de actualização GOB para estes GOBs não são enviados em tempo porque o período T2 não expirou desde que foi anteriormente enviado um comando de actualização no que se refere a estes GOBs.
Assim que todos os GOBs de uma imagem foram descodificados (500) o número total de MBs ocultos é determinado (420) a partir dos registos do estatuto MB (608) . Se for determinado (422) que o número de MBs ocultos é maior do que um limiar C, então o controlador 124 determina (410) se foi ultrapassado mais do que um período Ti desde que foi enviada uma actualização de imagem anterior. Neste caso é enviada uma mensagem videoFastUpdate Picture (412) para o codificador transmissor e é descodificada a imagem seguinte (400) . Em todo o caso é estabelecida a'Check Next Picture Flag" em 0 (414). 27
Se o número de MBs ocultos na imagem é determinado (422) como sendo inferior a C mas maior que 0, o controlador 124 determina (424) se a imagem actual se modificou consideravelmente. Esta operação pode ser conseguida de uma forma convencional p.ex. por meio de comparação de histogramas da frame actual e da frame anterior que foi descodificada com êxito e/ou comparação das somas de gradiente das duas frames. Se a imagem actual for considerada como tendo mudado consideravelmente, o controlador 124 determina então (410) se mais do que um periodo Ti foi ultrapassado desde que foi enviada uma actualização de imagem anterior. Neste caso é enviada uma mensagem videoFastUpdate Picture (412) para o terminal transmissor 2. Se a imagem actual não for considerada como tendo mudado consideravelmente, é estabelecida a "Check Next Picture Flag" em 0 (414) e a imagem seguinte é descodificada (400).
Se 0 número de MBs ocultos na imagem é determinado (422) como sendo zero é verificado 0 marcador "Check Next Picture" (426) . Se 0 marcador não estiver estabelecido (isto é = 0) é descodificada a imagem seguinte (400) . No entanto, se o marcador estiver estabelecido (isto é = 1) isto significa que a imagem anterior (N-l) se perdeu. A imagem actual (N) é por conseguinte comprada com a imagem anterior, descodificada com êxito (N-n) (em que n é um número inteiro maior que 1) e a modificação no conteúdo da imagem é determinado (424) como descrito anteriormente.
De acordo com a forma de concretização anteriormente descrita é enviado um comando de actualização GOB para um GOB excepto se um comando de actualização para o GOB em questão já tiver sido enviado no espaço do tempo T2. De forma semelhante, é enviado um comando de actualização de imagem para cada imagem excepto se um comando de 28 actualização deste género foi já enviado no espaço do tempo Ti. É assim possível enviar tanto comando(s) de actualização GOB e comando de actualização de imagem para a mesma imagem. De acordo com uma outra forma de concretização da presente invenção, o(s) comando (s) de actualização é gerado mas não é enviado até que toda a imagem esteja descodificada (na medida do possível) . Caso se decida enviar um comando de actualização da imagem para a imagem actual em descodificação, então não é enviado qualquer comando(s) de actualização GOB para a mesma imagem. Assim, na fase 506 é gerado um comando de actualização GOB mas não é enviado tal como se mostra na figura 8, na fase 428 o controlador 124 determina se um comando de actualização de imagem foi enviado para a imagem que está a ser descodificada. Nesse caso, o(s) comando(s) de actualização GOB para a imagem actual são ignorados. Caso contrário, o(s) comando(s) de actualização GOB para a imagem actual são enviados (430). A descodificação da imagem seguinte é então executada (400).
Passa-se agora a descrever a operação da parte codificadora do codec vídeo do terminal transmissor 2. A primeira imagem é codificada como um intraframe, com as frames subsequentes a ser codificadas como interframes até que ou uma modificação da cena provoque a codificação de uma intraframe ou uma actualização forçada seja iniciada tal como estabelecido pelos parâmetros pré determinados do codificador ou seja recebida uma mensagem de actualização do terminal receptor 1.
Quando o terminal transmissor 2 recebe uma mensagem de actualização, a parte codificadora responde por meio de actualização da parte da imagem solicitada na mensagem do terminal receptorl. Assim, se o terminal receptor 1 enviou um comando videoFastUpdatePicture, o codificador do 29 terminal transmissor 2 actualiza a totalidade da imagem. Assim, se o terminal receptor 1 enviou um comando videoFastUpdateGOB, o codificador do terminal transmissor 2 actualiza a totalidade do GOB. A figura 9 é um fluxograma que mostra como um codificador de acordo com a presente invenção reage a um comando de actualização de imagem (videoFastUpdatePicture). 0 terminal transmissor 2 controla (800) as mensagens de feedback codec (p.ex. enviadas pelo canal de controlo H.245) a partir do terminal receptor 1 por meio do gestor de controlo 40 e o controlador 105 do codec vídeo. Quando um comando de actualização é recebido (802) pelo codificador 100, o controlador 105 verifica (804) se está no espaço de S segundos (p.ex. 5 segundos) do início da transmissão. Nesse caso, o controlador instrui (806) o codificador para actualizar a totalidade da imagem em formato com codificação intra. Isto faz com que o comutador 102 desligue o subtractor 106 e o codificador 100 codifique a totalidade da imagem seguinte do vídeo de entrada desde o input 101 como um intraframe.
Se passaram mais de S segundos quando se recebe um comando de actualização de imagem, o controlador 105 determina (808) se o terminal transmissor 2 recebeu mais de R pedidos de actualização durante um período I pré determinado. Nesse caso, o controlador comuta o comutador 102 para o modo intra e a totalidade da imagem é actualizada em formato com codificação intra (806). De outra forma, o controlador permite o estado modo intra do comutador 102 numa base macrobloco-por-macrobloco (810) de forma que todos os macroblocos são codificados em formato intra numa base macrobloco-por-macrobloco ao longo de imagens sucessivas. Se o codificador é pré programado assim, de forma que o processo de actualização por defeito 30 (passados os primeiros S segundos) deve actualizar numa base macrobloco-por-macrobloco, e o descodificador receptor não aceita actualização sucessiva de macroblocos, o descodificador receptor irá enviar muitos comandos videoFastUpdatePicture para o codificador transmissor. A fase operacional 808 garante por conseguinte que o codificador irá acabar por actualizar toda a imagem em formato intra. Os valores apropriados para Rei são 10 e 5 segundos respectivamente. A figura 10 é um fluxograma que mostra como o codificador 100 do terminal transmissor 2 reage com um comando videoFastUpdateGOB. As mensagens de feedback enviadas a partir do terminal receptor 1 (p.ex. por um canal de controlo H.245) são controladas (900) pelo gestor de controlo 40 e o controlador 105 da parte codificadora 100 do terminal transmissor 2 Quando é recebido um comando videoFastUpdateGOB (902) pelo codificador 100 o controlador 105 identifica (904) os macroblocos do GOB solicitados que sofreram maiores alterações. Estes MBs do GOB que sofreram maiores alterações são actualizados primeiro (906) por codificação intra. Estes MBs podem ser identificados considerando, pixel por pixel, os valores de luminância dos pixéis de um MB do GOB da imagem seguinte a descodificar e uma imagem anterior. É formada uma soma do quadrado das diferenças entre os pixéis da imagem seguinte e da imagem anterior. O codificador codifica primeiro, em modo intra, os MBs com maiores diferenças. Os outros MBs do GOB são actualizados durante a codificação do MB correspondente no GOB correspondente nas imagens seguintes.
O controlador 105 do codificador 100 regista também a propagação temporal de MBs corrompidos. Assim, quando é recebido um comando videoFastUpdateGOB, o codificador pode também actualizar os MBs que foram preditos a partir do GOB 31 comando corrompido, para os quais foi enviado videoFastUpdateGOB a partir do descodificador.
Lisboa, 20 de Setembro de 2006

Claims (13)

  1. REIVINDICAÇÕES 1. Método de descodificação vídeo que inclui a recepção de dados vídeo codificados por um descodificador vídeo, descodificação dos dados vídeo mencionados para formar dados vídeo descodificados e determinação da presença ou não de erros nos dados vídeo descodificados e, se for determinada a presença de um erro, envio de uma mensagem de pedido de actualização a partir do descodificador vídeo mencionado para um codificador vídeo transmissor, a pedir uma actualização de pelo menos uma porção correspondente dos dados vídeo que contêm o erro, determinação da presença ou não de erros nos dados descodificados subsequentes para uma porção correspondente dos dados vídeo, caracterizado por determinar-se a passagem de um período de tempo pré determinado desde a transmissão de uma mensagem de pedido de actualização anterior e transmitindo apenas uma outra mensagem de pedido de actualização para a porção correspondente dos dados vídeo subsequentes se o período de tempo pré determinado foi ultrapassado, para limitar assim a transmissão repetida de mensagens de pedido de actualização para a mesma porção com erros.
  2. 2. Método de acordo com a reivindicação 1, em que as mensagens de pedido de actualização pedem a actualização de toda uma imagem da sequência vídeo.
  3. 3. Método de acordo com a reivindicação 1, em que as mensagens de pedido de actualização pedem a actualização de um segmento da sequência vídeo.
  4. 4. Método de acordo com a reivindicação 1, 2 ou 3, em que o período de tempo pré determinado é proporcional ao atraso de confirmação entre o descodificador vídeo e o codificador vídeo.
  5. 5. Método de acordo com qualquer uma das reivindicações anteriores que inclui a comparação da porção de alterações nos dados vídeo descodificados, subsequentes com dados de imagem anteriores para uma área correspondente e em que a outra mensagem de pedido de actualização é enviada se a quantidade de alterações exceder um limiar pré determinado e o período pré determinado tiver sido ultrapassado.
  6. 6. Método de descodificação vídeo de acordo com qualquer uma das reivindicações anteriores em que a outra mensagem de pedido de actualização é enviada se a quantidade de movimento na imagem anterior exceder um limiar pré determinado e o período de tempo pré determinado tiver sido ultrapassado.
  7. 7. Método de descodificação vídeo tal como reivindicado na reivindicação 1, em que uma área da imagem que contém um erro é ocultada ao determinar-se um erro nos dados vídeo descodificados.
  8. 8. Método de descodificação vídeo de acordo com a reivindicação 7, em que, quando se determina a presença de um erro, de forma que não se pode descodificar uma imagem, todas as partes da imagem são rotuladas como ocultadas e a imagem seguinte é descodificada.
  9. 9. Aparelho de descodificação vídeo (200) que inclui meios (50, 60) para receber dados vídeo codificados, meios (120, 121, 123, 124) para descodificar os ditos dados vídeo para formar dados vídeo descodificados, meios (124) para determinar a presença ou não de erros nos dados vídeo descodificados, meios (124) para envio de uma mensagem de pedido de actualização para um codificador vídeo transmissor a pedir uma actualização de pelo menos uma porção correspondente dos dados vídeo que contêm o erro e meio de determinação da presença ou não de erros nos dados descodificados subsequentes para uma porção correspondente dos dados vídeo e caracterizado por incluir o meio de determinação para determinar a ultrapassagem de um período de tempo pré determinado desde a transmissão de uma mensagem de pedido de actualização anterior e em que o aparelho descodificador é concebido para transmitir apenas uma outra mensagem de pedido de actualização para a porção correspondente dos dados vídeo subsequentes se o período de tempo pré determinado foi ultrapassado, limitando assim a transmissão repetida de mensagens de pedido de actualização para a mesma porção com erros.
  10. 10. Aparelho de acordo com a reivindicação 9 que inclui a comparação da porção de alterações nos dados vídeo descodificados, subsequentes com dados de imagem anteriores para uma área correspondente e em que a outra mensagem de pedido de actualização é enviada se a quantidade de alterações exceder um limiar pré determinado e o período pré determinado tiver sido ultrapassado.
  11. 11. Aparelho de acordo com a reivindicação 9 ou 10, em que a outra mensagem de pedido de actualização é enviada se a quantidade de movimento na imagem anterior exceder um limiar pré determinado e o período de tempo pré determinado tiver sido ultrapassado.
  12. 12. Dispositivo rádio móvel que inclui aparelho descodificador de acordo com qualquer uma das reivindicações 9 a 11.
  13. 13. Dispositivo rádio móvel concebido para funcionar de acordo com o método de descodificação das reivindicações 1 a 8. Lisboa, 20 de Setembro de 2006
PT00906346T 1999-02-18 2000-02-16 Codificação video PT1157562E (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9903676A GB2347038A (en) 1999-02-18 1999-02-18 A video codec using re-transmission

Publications (1)

Publication Number Publication Date
PT1157562E true PT1157562E (pt) 2006-11-30

Family

ID=10847994

Family Applications (1)

Application Number Title Priority Date Filing Date
PT00906346T PT1157562E (pt) 1999-02-18 2000-02-16 Codificação video

Country Status (11)

Country Link
US (1) US6611561B1 (pt)
EP (2) EP1157562B1 (pt)
JP (1) JP4603695B2 (pt)
CN (3) CN1192635C (pt)
AT (1) ATE331391T1 (pt)
AU (1) AU2805600A (pt)
DE (1) DE60028942T2 (pt)
ES (1) ES2267498T3 (pt)
GB (1) GB2347038A (pt)
PT (1) PT1157562E (pt)
WO (1) WO2000049810A1 (pt)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI113124B (fi) 1999-04-29 2004-02-27 Nokia Corp Tiedonsiirto
JP3483806B2 (ja) * 1999-07-28 2004-01-06 松下電器産業株式会社 動画像信号の符号化装置及び符号化方法
FR2809917B1 (fr) * 2000-05-30 2002-08-30 Cit Alcatel Codage d'image par segments avec prediction du mouvement
GB2366464A (en) * 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
KR100396892B1 (ko) * 2000-10-05 2003-09-03 삼성전자주식회사 비디오 mp3 시스템, 축소 비디오데이터 생성장치와생성방법 및 축소 비디오데이터 복원장치 및 복원방법
JP2002191048A (ja) * 2000-12-22 2002-07-05 Ando Electric Co Ltd 動画符号通信評価方法及び動画符号通信評価装置
US7133455B2 (en) * 2000-12-29 2006-11-07 Intel Corporation Providing error resilience and concealment for video data
US6993075B2 (en) * 2001-03-05 2006-01-31 Intervideo, Inc. Systems and methods for reducing error propagation in a video data stream
WO2003019939A1 (en) * 2001-08-23 2003-03-06 Polycom, Inc. System and method for video error concealment
FR2829635A1 (fr) * 2001-09-07 2003-03-14 Cit Alcatel Procede de compression d'images d'animations
US7149248B2 (en) * 2001-09-12 2006-12-12 Broadcom Corporation Command packet system and method supporting improved trick mode performance in video decoding systems
US7020203B1 (en) * 2001-12-21 2006-03-28 Polycom, Inc. Dynamic intra-coded macroblock refresh interval for video error concealment
AU2003215752A1 (en) * 2002-03-27 2003-10-13 British Telecommunications Public Limited Company Video coding and transmission
CN102291585A (zh) * 2002-07-15 2011-12-21 诺基亚有限公司 用于视频序列中错误隐藏的方法
US7260269B2 (en) * 2002-08-28 2007-08-21 Seiko Epson Corporation Image recovery using thresholding and direct linear solvers
KR100548316B1 (ko) * 2002-11-08 2006-02-02 엘지전자 주식회사 동영상 에러 보정 방법 및 장치
US9192859B2 (en) * 2002-12-10 2015-11-24 Sony Computer Entertainment America Llc System and method for compressing video based on latency measurements and other feedback
US20110181686A1 (en) * 2003-03-03 2011-07-28 Apple Inc. Flow control
US7827458B1 (en) * 2003-03-03 2010-11-02 Apple Inc. Packet loss error recovery
US20040252761A1 (en) * 2003-06-16 2004-12-16 Dilithium Networks Pty Limited (An Australian Corporation) Method and apparatus for handling video communication errors
US7796499B2 (en) 2003-12-05 2010-09-14 Telefonaktiebolaget L M Ericsson (Publ) Method of and system for video fast update
CN100562106C (zh) * 2004-01-23 2009-11-18 日本电气株式会社 运动图像通信装置、运动图像通信***及运动图像通信方法
JP2006060813A (ja) * 2004-08-20 2006-03-02 Polycom Inc ビデオデコーダにおける誤り隠蔽
KR100678050B1 (ko) 2004-10-27 2007-02-02 삼성전자주식회사 이동 통신 시스템에서 영상 데이터를 송수신하기 위한장치 및 방법
CN100461859C (zh) * 2004-11-12 2009-02-11 乐金电子(昆山)电脑有限公司 移动终端客户端及识别并还原解码器错误运行的方法
JP2008529346A (ja) * 2005-01-24 2008-07-31 トムソン ライセンシング Crcパリティコードを利用したビデオエラー検出技術
TW200633539A (en) * 2005-03-09 2006-09-16 Pixart Imaging Inc Estimation method of motion vector based on distance weighted searching sequence
US9237347B2 (en) * 2005-03-21 2016-01-12 The Regents Of The University Of California Systems and methods for video compression for low bit rate and low latency video communications
CN100459717C (zh) * 2005-04-20 2009-02-04 华为技术有限公司 基于h.264的压缩视频传输误码消除方法
US9661376B2 (en) * 2005-07-13 2017-05-23 Polycom, Inc. Video error concealment method
US8229983B2 (en) * 2005-09-27 2012-07-24 Qualcomm Incorporated Channel switch frame
US8670437B2 (en) * 2005-09-27 2014-03-11 Qualcomm Incorporated Methods and apparatus for service acquisition
US7827467B2 (en) * 2006-01-04 2010-11-02 Nokia Corporation Method for checking of video encoder and decoder state integrity
US8861585B2 (en) 2006-01-20 2014-10-14 Qualcomm Incorporated Method and apparatus for error resilience algorithms in wireless video communication
US8325822B2 (en) 2006-01-20 2012-12-04 Qualcomm Incorporated Method and apparatus for determining an encoding method based on a distortion value related to error concealment
US20070189383A1 (en) * 2006-02-15 2007-08-16 Samsung Electronics Co., Ltd. Method and system for appending redundancy to uncompressed video for transmission over wireless communication channels
US8699810B2 (en) 2006-06-26 2014-04-15 Qualcomm Incorporated Efficient fixed-point approximations of forward and inverse discrete cosine transforms
US8385424B2 (en) 2006-06-26 2013-02-26 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
US8300698B2 (en) 2006-10-23 2012-10-30 Qualcomm Incorporated Signalling of maximum dynamic range of inverse discrete cosine transform
UA93118C2 (ru) * 2006-11-14 2011-01-10 Квелкомм Инкорпорейтед Системы и способы для переключения каналов
EP2098077A2 (en) * 2006-11-15 2009-09-09 QUALCOMM Incorporated Systems and methods for applications using channel switch frames
CN101291434A (zh) * 2007-04-17 2008-10-22 华为技术有限公司 多视编解码方法及装置
FR2930387B1 (fr) * 2008-04-17 2010-09-24 Canon Kk Procede de traitement d'un flux de donnees codes
KR100949917B1 (ko) * 2008-05-28 2010-03-30 한국산업기술대학교산학협력단 적응적 인트라 예측을 통한 고속 부호화 방법 및 시스템
US20090303309A1 (en) * 2008-06-04 2009-12-10 Pantech Co., Ltd. Mobile terminal and method for transmitting video data in video telephony system
US8780986B2 (en) * 2008-06-06 2014-07-15 Apple Inc. Refresh pixel group selection and coding adjustment
CN101742437B (zh) * 2009-12-11 2013-08-07 中兴通讯股份有限公司 移动视频的通信方法及服务端、服务器
US9246830B2 (en) * 2011-10-05 2016-01-26 Futurewei Technologies, Inc. Method and apparatus for multimedia queue management
US8904024B2 (en) * 2012-08-03 2014-12-02 Ittiam Systems (P) Ltd System and method for low delay fast update for video streaming
US9407923B2 (en) 2013-05-20 2016-08-02 Gamefly Israel Ltd. Overconing lost IP packets in streaming video in IP networks
US10778247B2 (en) 2015-12-15 2020-09-15 Seiko Epson Corporation Circuit device, electro-optical device, electronic apparatus, mobile body, and error detection method
JP6840994B2 (ja) * 2016-10-26 2021-03-10 セイコーエプソン株式会社 回路装置、電気光学装置、電子機器、移動体及びエラー検出方法
JP6720517B2 (ja) * 2015-12-15 2020-07-08 セイコーエプソン株式会社 回路装置、電気光学装置、電子機器、移動体
JP6897059B2 (ja) * 2016-10-26 2021-06-30 セイコーエプソン株式会社 回路装置、電気光学装置、電子機器及び移動体
CN108574684B (zh) * 2017-03-14 2020-08-28 大唐移动通信设备有限公司 一种解压缩的方法和装置
US10291936B2 (en) 2017-08-15 2019-05-14 Electronic Arts Inc. Overcoming lost or corrupted slices in video streaming
CN115079673B (zh) * 2022-07-05 2024-06-11 重庆赛力斯凤凰智创科技有限公司 一种故障上传方法、装置、设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69122634T2 (de) * 1990-02-06 1997-05-15 Alcatel Italia System, Packetaufbau und Einrichtung zur Verarbeitung der Ausgangsinformation eines Signalkodierers
JPH04170184A (ja) * 1990-10-12 1992-06-17 Mitsubishi Electric Corp 画像伝送装置
US5455629A (en) * 1991-02-27 1995-10-03 Rca Thomson Licensing Corporation Apparatus for concealing errors in a digital video processing system
JPH06237451A (ja) * 1993-02-10 1994-08-23 Hitachi Ltd 動画通信方式および端末装置
US5737022A (en) * 1993-02-26 1998-04-07 Kabushiki Kaisha Toshiba Motion picture error concealment using simplified motion compensation
US5745169A (en) * 1993-07-19 1998-04-28 British Telecommunications Public Limited Company Detecting errors in video images
JP3844490B2 (ja) * 1993-07-19 2006-11-15 ブリテイッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー ビデオ画像におけるエラー検出検出方法および検出装置
JPH07322248A (ja) * 1994-05-30 1995-12-08 Matsushita Electric Ind Co Ltd 動画像データの伝送方法および伝送装置
US5550847A (en) * 1994-10-11 1996-08-27 Motorola, Inc. Device and method of signal loss recovery for realtime and/or interactive communications
JPH0993592A (ja) * 1995-07-13 1997-04-04 Matsushita Electric Ind Co Ltd 画像符号化装置
JP3630474B2 (ja) * 1995-07-14 2005-03-16 沖電気工業株式会社 動画像伝送システム及び動画像伝送装置
US5768533A (en) * 1995-09-01 1998-06-16 National Semiconductor Corporation Video coding using segmented frames and retransmission to overcome channel errors
US5910827A (en) * 1997-02-26 1999-06-08 Kwan; Katherine W. Video signal decoding arrangement and method for improved error concealment
JPH10247901A (ja) * 1997-03-04 1998-09-14 Matsushita Electric Ind Co Ltd 再送制御方法
US6091775A (en) * 1997-04-17 2000-07-18 Sharp Kabushiki Kaisha Video-coding device and video-decoding device
JP3905969B2 (ja) * 1998-01-30 2007-04-18 株式会社東芝 動画像符号化装置および動画像符号化方法
US6104757A (en) * 1998-05-15 2000-08-15 North Carolina State University System and method of error control for interactive low-bit rate video transmission
US6304295B1 (en) * 1998-09-18 2001-10-16 Sarnoff Corporation Region-based refresh strategy for video compression

Also Published As

Publication number Publication date
CN1642288A (zh) 2005-07-20
EP1157562A1 (en) 2001-11-28
US6611561B1 (en) 2003-08-26
JP4603695B2 (ja) 2010-12-22
JP2002537736A (ja) 2002-11-05
ATE331391T1 (de) 2006-07-15
CN1897697A (zh) 2007-01-17
CN1340275A (zh) 2002-03-13
CN1192635C (zh) 2005-03-09
EP1657935A2 (en) 2006-05-17
GB9903676D0 (en) 1999-04-14
GB2347038A (en) 2000-08-23
WO2000049810A1 (en) 2000-08-24
EP1157562B1 (en) 2006-06-21
AU2805600A (en) 2000-09-04
EP1657935B1 (en) 2016-06-29
DE60028942D1 (de) 2006-08-03
DE60028942T2 (de) 2007-02-15
EP1657935A3 (en) 2009-03-18
ES2267498T3 (es) 2007-03-16

Similar Documents

Publication Publication Date Title
PT1157562E (pt) Codificação video
CA2377865C (en) Video coding using repeated header data
KR100931873B1 (ko) 비디오 신호 부호화/복호화 방법 및 비디오 신호 부호기/복호기
JP2006526908A (ja) ピクチャを符号化する方法、ビットストリームからピクチャを復号化する方法、ピクチャを符号化するエンコーダ、ピクチャを符号化するエンコーダを備える送信装置、ビットストリームからピクチャを復号化するデコーダ、ビットストリームからピクチャを復号化するデコーダを備える受信装置、およびシステム
BRPI0110770B1 (pt) método de codificação/ decodificação de um sinal de vídeo representando uma sequência de imagens, e, codificador/decodificador de vídeo
JP2006060813A (ja) ビデオデコーダにおける誤り隠蔽
US20050089102A1 (en) Video processing
Farber et al. Robust H. 263 compatible transmission for mobile video server access
EP1345451A1 (en) Video processing
KR100312418B1 (ko) 동영상부호화장치에서인트라모드부호화선택방법
da Silva Tavares et al. Error statistical analysis of H. 263 syntactical elements
EP1349398A1 (en) Video processing