Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 40

ISSN 0103-9741

Monografias em Cincia da Computao


n 01/07

Fundamentos de Sistemas Multimdia


Part 1 Aquisio, Codificao e Exibio de Dados

Luiz Fernando Gomes Soares

Departamento de Informtica

PONTIFCIA UNIVERSIDADE CATLICA DO RIO DE JANEIRO

RUA MARQUS DE SO VICENTE, 225 - CEP 22451-900

RIO DE JANEIRO - BRASIL


Monografias em Cincia da Computao, No. 01/07 ISSN: 0103-9741
Editor: Prof. Carlos Jos Pereira de Lucena Janeiro de 2007

Fundamentos de Sistemas Multimdia


Part 1 Aquisio, Codificao e Exibio de Dados
Luiz Fernando Gomes Soares
Laboratrio TeleMdia DI PUC-Rio
Rua Marqus de So Vicente, 225, Rio de Janeiro, RJ - 22451-900.
lfgs@inf.puc-rio.br

Resumo. Esta monografia compe a primeira parte do material didtico do curso


de Fundamentos de Multimdia. Ela diz respeito aquisio, codificao e exibio
de dados, nas mais diversas mdias de representao.

Palavras chave: codificao digital, compresso, compactao, padres de


codificao.

2
Fundamentos de Sistemas Multimdia
Part 1 Aquisio, Codificao e Exibio de Dados

Laboratrio TeleMdia da PUC-Rio Todos os direitos reservados


Impresso no Brasil

As informaes contidas neste documento so de propriedade do Laboratrio TeleMdia (PUC-Rio),


sendo proibida a sua divulgao, reproduo ou armazenamento em base de dados ou sistema de
recuperao sem permisso prvia e por escrito do Laboratrio TeleMdia (PUC-Rio). As informaes
esto sujeitas a alteraes sem notificao prvia.
Os nomes de produtos, servios ou tecnologias eventualmente mencionadas neste documento so
marcas registradas dos respectivos detentores.
Figuras apresentadas, quando obtidas de outros documentos, so sempre referenciadas e so de
propriedade dos respectivos autores ou editoras referenciados.
Fazer cpias de qualquer parte deste documento para qualquer finalidade, alm do uso pessoal,
constitui violao das leis internacionais de direitos autorais.

Laboratrio TeleMdia
Departamento de Informtica
Pontifcia Universidade Catlica do Rio de Janeiro
Rua Marqus de So Vicente, 225, Prdio ITS - Gvea
22451-900 Rio de Janeiro RJ Brasil
http://www.telemidia.puc-rio.br

3
Table of Contents
1. Introduo.......................................................................................................................5
2. Informao e Sinal..........................................................................................................5
3. Converso de Sinais........................................................................................................7
3.1. Converso A/D .......................................................................................................7
3.2. Converso D/A .......................................................................................................9
3.3. Outros Codificadores de Onda ...............................................................................9
4. Compresso e Compactao .........................................................................................10
4.1. Codificao por Carreira ......................................................................................10
4.2. Codificao de Shannon-Fano..............................................................................11
4.3. Codificao de Huffman.......................................................................................12
4.4. Codificao de Lempel-Ziv-Welch ......................................................................13
4.5. Outras Tcnicas de Compactao.........................................................................14
4.6. Compresso em Imagem Esttica.........................................................................14
4.7. Compresso em udio..........................................................................................18
4.8. Compresso em Vdeo..........................................................................................23
4.8.1. H.261 ............................................................................................................25
4.8.2. MPEG Vdeo ................................................................................................27
4.9. Multiplexao e Sincronizao.............................................................................30
5. Aplicaes de Banda Larga ..........................................................................................32
6. Requisitos de Comunicao das Diversas Mdias ........................................................33
6.1. Texto.....................................................................................................................34
6.2. Imagem .................................................................................................................34
6.3. udio ....................................................................................................................35
6.4. Vdeo ....................................................................................................................37
7. Consideraes Finais ....................................................................................................38
Referncias ...........................................................................................................................38

4
Fundamentos de Sistemas Multimdia
Part 1 Aquisio, Codificao e Exibio de Dados
Luiz Fernando Gomes Soares

Laboratrio TeleMdia DI PUC-Rio


Rua Marqus de So Vicente, 225, Rio de Janeiro, RJ - 22451-900.
lfgs@inf.puc-rio.br

Resumo. Esta monografia compe a primeira parte do material didtico do curso


de Fundamentos de Multimdia. Ela diz respeito aquisio, codificao e exibio
de dados, nas mais diversas mdias de representao.

Palavras chave: codificao digital, compresso, compactao, padres de


codificao.

1. Introduo
Os sistemas de computao (sistemas de processamento, sistemas operacionais, redes de
comunicao etc.) foram desenvolvidos, originalmente, para dar suporte ao processamento e
comunicao de dados textuais. Com a evoluo tecnolgica, no s as redes aumentaram em
muito seu desempenho, mas tambm cresceu muito a capacidade de processamento e
armazenamento das estaes de trabalho. Isso tornou possvel o desenvolvimento de sistemas
para processamento e comunicao de informaes representadas em vrias outras mdias
alm da textual, como udio, vdeo etc. O fenmeno da convergncia , em parte, marcado
por essa mistura de diferentes tipos de mdia em sistemas integrados de transmisso e
processamento de informao. Nesta monografia, apresentaremos os principais conceitos
envolvidos na codificao digital dessas informaes e na sua comunicao.

2. Informao e Sinal
Os seres humanos adquirem informao atravs de seus sentidos: viso, audio, tato, olfato e
paladar. Esses sentidos so denominados mdias1 de percepo. As informaes adquiridas
so ento codificadas em estruturas de dados que denominamos mdias de representao, ou
simplificadamente mdias. So exemplos de mdias de representao as mdias texto, grfico,
udio e vdeo. Note que no existe uma correspondncia biunvoca entre as mdias de
percepo e de representao e que ainda , no mnimo, pouco usual a utilizao de mdias
representando informaes adquiridas pelo olfato, tato e paladar, embora j existam estudos
nesse sentido.

Definimos sinais como ondas que se propagam atravs de algum meio fsico possuindo, por
exemplo, uma amplitude que varia ao longo do tempo, correspondendo codificao da

1
Em portugus, mdia vem da palavra latina medius (de onde derivou a palavra anglo-saxnica medium), e seu
plural mdias (correspondendo palavra anglo-saxnica media).

5
informao transmitida. Um sinal pode ser distorcido durante sua transmisso, por terem suas
componentes de freqncia atenuaes diferentes devido a limitaes do meio de transmisso.
Pode-se mesmo ter perda ou deformao de parte do sinal por rudos. Ao transmitir
informaes esperamos, no entanto, preservar seu significado e recuperar seu entendimento.

Podemos ento introduzir informalmente o conceito de qualidade de sinal e qualidade da


informao transmitida, atravs de um exemplo. Um vdeo transmitido a 30 quadros por
segundo (padro de TV), certamente tem uma qualidade de sinal melhor do que se fosse
transmitido a 10 quadros por segundo (imagine, por exemplo, que a cada trs quadros dois so
perdidos). Se estivssemos filmando uma paisagem sem qualquer movimento, a qualidade da
informao transmitida seria a mesma (nesse caso extremo bastaria at mesmo a transmisso
de um nico quadro), independente do sinal. Se, no entanto, o vdeo tivesse muito
movimento, a qualidade da informao transmitida no seria boa a 10 quadros por segundo e
a sensao obtida seria a de vrias imagens com movimentos bruscos, sem naturalidade.

Do exemplo anterior, podemos notar que um sinal pode carregar muita informao
redundante. Tcnicas para reduo dessa redundncia, denominadas tcnicas de compresso e
de compactao, podem ser empregadas. Sobre elas, teremos muito o que discutir ao longo
desta monografia. Vamos, no entanto, primeiramente, aprofundar um pouco mais a discusso
sobre informaes e sinais, analgicos e digitais.

Inicialmente os computadores estavam restritos ao processamento e comunicao de dois


tipos de dados palavras e nmeros. Cdigos para nmeros (binrios, BCD, ponto flutuante
IEEE etc.) esto hoje padronizados e estabilizados. Cdigos para caracteres alfanumricos
(ASCII, EBCDIC etc.) so tambm amplamente aceitos. Enfim, a mdia textual hoje
razoavelmente bem entendida como codificao digital.

A mdia grfica foi a segunda mdia a ganhar representao nos computadores digitais. Ela
possui dois formatos: o vetorial e o matricial. O formato vetorial bastante utilizado em
modelagem geomtrica e nele as figuras so representadas por um conjunto de segmentos de
reta ou curvas, dados pelas coordenadas de seus pontos e pelos atributos das linhas que os
unem. Imagens no formato matricial so usualmente chamadas de imagens estticas. Nesse
formato, as imagens so divididas em pequenas regies, chamadas de elementos de fotografia,
ou pixels (picture elements, muitas vezes tambm chamados de pels). Para cada uma dessas
regies guarda-se sua informao codificada de cor. Quanto maior o nmero de bits para
codificar a cor, mais cores pode-se codificar e mais prximo pode-se chegar da cor original.
Temos assim uma matriz de M linhas e N colunas, onde cada elemento representa um dos
MxN pixels que compe a imagem. Na reproduo da imagem, os pixels so reconstrudos
utilizando-se a informao de cor armazenada na matriz. Quanto menor for o tamanho do
pixel, mais fiel ser sua colorao com relao original, mas maior ser a matriz da imagem.
Ao tamanho da matriz d-se o nome de resoluo geomtrica da imagem. A quantidade de
bits utilizados para armazenar a cor de um pixel chama-se resoluo de cor da imagem.

Informaes na mdia textual e grfica so originalmente digitais. Por isso, muitas vezes essas
mdias so referidas como mdias discretas. J informaes geradas por fontes sonoras e de
vdeo apresentam variaes contnuas de amplitude, constituindo-se no tipo de informao
que comumente percebida pelos sentidos humanos atravs de sinais que denominamos
analgicos. Devido a isso, as mdias de vdeo e udio so usualmente referidas como mdias
contnuas.

6
importante que se entenda que qualquer tipo de informao (seja analgica ou digital) pode
ser codificada em uma estrutura de dados (mdia de representao) digital, e essa codificao
digital pode ser transmitida em um sinal analgico ou digital, como veremos.

A codificao digital de informaes tem, em geral, vantagens em uma comunicao. Isso se


deve, principalmente, possibilidade de podermos restaurar, no receptor, a informao
codificada original, mesmo na presena de distores, falhas ou rudos no sistema de
transmisso.

3. Converso de Sinais
Para utilizarmos as vantagens da codificao digital, devemos transformar as mdias contnuas
de udio e vdeo, normalmente adquiridas atravs de sinais analgicos. A essa transformao
chamamos de converso analgica digital, ou converso A/D.

Uma vez processados e transmitidos, sinais digitais2 podem ter de ser transformados em
analgicos para percepo pelos sentidos humanos. A essa transformao chamamos de
converso digital analgica, ou simplesmente converso D/A.

3.1. Converso A/D


O teorema de Nyquist assegura que uma taxa de amostragem de 2W vezes por segundo o
suficiente para recuperar um sinal com banda passante W Hz. Isso quer dizer que, de um sinal
analgico, basta se guardar os valores das amplitudes de suas amostras tomadas a intervalos
regulares de 1/2W segundos para que se possa ter toda a informao necessria para
reconstru-lo integralmente. O processo de amostrar e guardar os valores dessas amostras,
ilustrado na Figura 1, conhecido como Pulse Amplitude Modulation (PAM).

A partir dos pulsos PAM, podemos produzir os pulsos PCM (Pulse Code Modulation) atravs
de um processo conhecido como quantizao, onde cada amostra PAM aproximada a um
inteiro de n bits. No exemplo da Figura 1, escolhemos n=3, dando origem a oito nveis (23) de
quantizao. A sada PCM corresponde ao resultado dessa quantizao.

Podemos calcular, a partir desse processo, denominado converso A/D, a taxa gerada pela
transmisso de informao analgica atravs de sinais digitais.3 Considere o caso de sinais de
voz, por exemplo. Se assumirmos que a banda passante necessria desses sinais tem largura
igual a 3.100 Hz, a taxa de amostragem de Nyquist , nesse caso, igual a 6.200 amostras por
segundo. Normalmente amostra-se a uma taxa maior, para facilitar a construo dos codecs
(codificadores/decodificadores). Se escolhermos uma taxa de 8.000 amostras por segundo e
codificarmos cada amostra com oito bits, a taxa gerada ser 8.000 x 8 = 64 Kbps, que a taxa
definida pelo padro ITU-T G.711 [ITU-T G.711] para telefonia digital.

2
Um sinal digital pode ser transformado em um sinal analgico, para transmisso em um dado meio, tambm
pelo processo de modulao.
3
Nesta monografia consideraremos sempre o sinal digital gerado a partir de uma informao codificada
digitalmente como tendo sempre um bit por intervalo de sinalizao, ou seja, um sinal onde sua taxa em bauds
a mesma que sua taxa em bits por segundo.

7
Sinal Original

t
6,9 6,5

5,1
4,6

3,0 2,8
Pulsos PAM
1,0

t
7
6
5
4
Quantizao 3
2
1
0 t
011 101 111 101 110 011 001

Sada PCM 011101111101110011001

Figura 1: Pulsos PAM e PCM.

A Figura 1 ilustra o caso onde os nveis de quantizao so igualmente espaados, ou seja, o


quantum Q (diferena entre nveis) constante. Como conseqncia, o erro mximo de
quantizao Q/2. Chamamos esse caso de quantizao linear. Nele, as amostras pequenas
so, em termos proporcionais, mais penalizadas pelo erro de quantizao do que as grandes.

Para melhorar a qualidade do sinal amostrado, podemos usar uma quantizao logartmica,
onde o sinal primeiro logaritmicamente transformado de forma a manter o erro mximo de
quantizao aproximadamente constante, a despeito da amplitude da amostra. Vrias funes
logartmicas foram propostas e estudadas com esse intento. Duas dessas funes so
largamente utilizadas e padronizadas, sendo denominadas lei A e lei . A primeira mais
utilizada na Europa, enquanto a segunda predomina nos EUA.

1 1

Lei (EUA) Lei A (Europa e Brasil)

1 + ln Ax 1
<x <1
ln ( 1 + x) 1 + ln A A
y(x) = 0 < x < 1
ln ( 1 + ) y(x) =
Ax 1
= 255 1 + ln A
0 <x <
A

A = 100

Figura 2: Lei A e Lei .

8
A Tabela 1 apresenta o resultado da converso A/D de alguns sinais de udio e vdeo.

Tabela 1: Converso A/D para alguns sinais de vdeo e udio.

Sinais Faixa Freqncia de Codificao Taxa de bits


passante amostragem bits/amostra (b/a)
Voz 300- 3.400Hz 8.000 Hz Log PCM (8b/a) 64 Kbps
(ITU-T G711)
Qualidade CD 0 - 21KHz 44,1 KHz Log PCM (16 b/a 1,41 Mbps
(estreo) por canal) (2 x 720,6 Kbps)
Vdeo (NTSC - 0 - 4,2 MHz 10 MHz 8 b/a 80 Mbps
luminncia)

3.2. Converso D/A


Pode-se demonstrar que um trem de pulsos PCM, obtido pela amostragem de um sinal em
uma freqncia maior ou igual dada pelo teorema de Nyquist, tem o mesmo espectro de
freqncia que o sinal amostrado, no intervalo de freqncias dado pela banda passante desse
sinal. A converso D/A se faz, ento, pela simples passagem do trem de pulsos PCM por um
filtro na faixa passante (e, assim, com a largura de banda) do sinal originalmente amostrado.

No fosse pelo erro de quantizao, o sinal obtido da sada do filtro seria idntico ao sinal
analgico original.

Note que o sinal de sada to mais prximo do sinal original quanto menor for o erro de
quantizao. O erro de quantizao, por sua vez, to menor quanto maior o nmero de
nveis de quantizao, ou seja, quanto maior o nmero de bits utilizados na codificao.

3.3. Outros Codificadores de Onda


A codificao PCM representa cada amostra pelo seu valor absoluto, mas essa no a nica
representao possvel. Alternativamente, podemos representar apenas a diferena entre o
valor de uma amostra e o valor de sua antecessora. Esse esquema de codificao
denominado DPCM (Differencial Pulse Code Modulation). Quando os valores das amostras
so muito prximos uns dos outros, necessitaremos de um menor nmero de nveis para
representar as diferenas do que o necessrio para representar os valores absolutos das
amostras, para um mesmo erro de quantizao. Como um menor nmero de nveis pode
representar um menor nmero de bits para codificar todos os nveis, utilizando-se DPCM,
poderemos ter um menor nmero de bits gerados pela codificao. DPCM um caso
particular de codificao preditiva, em que o valor predito da amostra corrente o valor da
amostra anterior, guardando-se (codificando-se) ento o erro (diferena) de predio.

A idia do DPCM pode ser ainda refinada um pouco mais, variando-se dinamicamente os
nveis de quantizao, dependendo se o sinal varia muito ou pouco. Dessa forma, prev-se
no apenas o valor da amostra corrente baseado na amostra anterior, mas tambm o valor do
quantum, baseado em uma funo, bem conhecida, dos valores de amostras anteriores. Esse
esquema denominado ADPCM, de Adaptative Differencial Pulse Code Modulation.

9
Existem ainda outras formas de codificao que independem do tipo do sinal analgico.
Vamos citar apenas mais uma, a SBC (SubBand Coding). Na codificao por sub-bandas, o
espectro de freqncia do sinal dividido em vrias bandas de freqncia. Cada banda ento
tratada como se representasse um sinal distinto, e nela aplicada qualquer uma das tcnicas
anteriores. A vantagem da SBC que, atravs da anlise de um sinal, pode-se identificar suas
bandas mais importantes no transporte da informao. Para essas bandas, pode-se utilizar um
erro de quantizao menor do que aquele usado nas bandas menos importantes, ou seja, pode-
se codificar as bandas menos importantes utilizando um nmero menor de bits por amostras.

4. Compresso e Compactao
Um sinal digital, em geral, carrega muita informao redundante. Se eliminarmos essa
redundncia conseguiremos reduzir em muito a quantidade de bits gerados, que em alguns
casos pode ser muito grande; na Tabela 1, por exemplo, pode ser observado que 1 minuto de
vdeo preto e branco gera 600 Mbytes.

Quando eliminamos apenas a redundncia de um sinal, no h perda de informao e dizemos


que fizemos uma compactao, ou compresso sem perdas. No entanto, podemos tambm
diminuir a quantidade de bits com alguma perda de informao. Dependendo de quem for o
usurio da informao, parte dela pode ser considerada pouco til. Raramente necessrio
manter o sinal original intacto no caso das mdias vdeo, udio e imagens estticas, uma vez
que o usurio final perderia de qualquer forma parte da informao por limitaes fsicas; tal
o caso do ouvido e olho humano. Vemos assim que a quantidade de informao que
podemos perder pode ser dependente do usurio, mas ela tambm pode depender da tarefa em
desenvolvimento: por exemplo, perder um pouco da nitidez de um vdeo em uma
videotelefonia pode ser perfeitamente aceitvel, enquanto a perda da qualidade do vdeo pode
ser inadmissvel em uma aplicao mdica. Quando na reduo dos dados gerados h perda
de informao, dizemos que fizemos uma compresso com perdas, ou simplesmente
compresso.

Existem vrias tcnicas de compresso sem perdas (compactao) que podem ser aplicadas a
qualquer tipo de dados, independente da mdia representada. As Sees 4.1 4.5 so
dedicadas a algumas dessas tcnicas mais usuais. As tcnicas de compresso com perdas
sero estudadas para cada mdia em particular nas Sees 4.6 4.8.

4.1. Codificao por Carreira


O desempenho da codificao por carreira (run length coding) depende muito da estatstica
dos dados de entrada. Ela consiste simplesmente em representar os dados pelo seu valor e o
nmero de vezes que ele se repete. A unidade para codificao pode ser um bit, um byte, um
caractere, um pixel, uma amostra etc. A Figura 3 ilustra o caso da unidade ser um pixel de 8
bits e o caso da unidade ser o bit.

10
76 76 76 76 76 78 79 79 79 79 80 80

76 | 5 78 | 1 79 | 4 80 | 2

...
0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1

0/7 1/4 0/5

Figura 3: Codificao por carreira.

4.2. Codificao de Shannon-Fano


Para as duas prximas tcnicas de codificao, imagine que nossos dados sejam apenas os
smbolos A, B, C, D e E (que podem representar um pixel, uma amostra de udio ou vdeo,
um caractere etc.) e que eles ocorram na freqncia dada pela tabela a seguir.

Smbolo A B C D E
Nmero de 15 7 6 6 5
Ocorrncias

A codificao de Shannon-Fano constri a rvore de codificao seguindo o seguinte


algoritmo:
1. Alinhe os smbolos de acordo com suas freqncias/probabilidades, e.g.,
ABCDE.
2. Divida recursivamente em duas partes, cada uma com aproximadamente o
mesmo nmero de contagem (soma das freqncias).

A rvore gerada fica ento:

E temos a seguinte codificao, gerando uma compactao de 117:89.

11
Smbolo Freqncia Cdigo Subtotal (#bits)
A 15 00 30
B 7 01 14
C 6 10 12
D 6 110 18
E 5 111 15

4.3. Codificao de Huffman


Tomando o mesmo exemplo da seo anterior, a codificao de Huffman constri a rvore de
codificao seguindo o seguinte algoritmo:
1. Iniciao: Ponha todos os ns em uma lista ABERTA. Mantenha a lista alinhada
todo o tempo de aplicao do algoritmo (e.g., ABCDE).
2. Repita at que a lista ABERTA contenha apenas um n:
a. Pegue os dois ns de mais baixas freqncias/probabilidades e crie um n
pai para ambos.
b. Atribua ao n pai a soma das freqncias/probabilidades dos filhos e o
insira na lista ABERTA.
c. Atribua cdigos 0 e 1 aos dois ramos da rvore, e retire os filhos da lista
ABERTA.

A rvore gerada fica ento:

E temos a seguinte codificao, gerando uma compactao de 117:87.

Smbolo Freqncia Cdigo Subtotal (#bits)


A 15 0 15
B 7 100 21
C 6 101 18
D 6 110 18
E 5 111 15

12
Note que, quer usando a codificao de Huffman ou de Shannon-Fano, o decodificador deve
usar o mesmo dicionrio de cdigos gerado pelo codificador para recuperar os smbolos
originais.

4.4. Codificao de Lempel-Ziv-Welch


Um procedimento diferente dos dois anteriores processar smbolo a smbolo e ir construindo
o dicionrio de cdigos passo a passo. medida que o dicionrio vai sendo construdo, ele
pode ser usado na codificao do prximo smbolo, dinamicamente.

No esquema de Lempel e Ziv, posteriormente estendido por Welch, o dicionrio construdo


como uma estrutura de dados, uma tabela, que mantm seqncias de smbolos, em conjunto
com um identificador nico (cdigo) para toda a seqncia. A tabela contm at, digamos, 2j
posies (seqncias). Ela iniciada simplesmente com o conjunto dos 2k possveis smbolos,
isto , todas as seqncias de tamanho 1. Os melhores desempenhos so conseguidos quando
k << j, dependendo, obviamente, do grau de redundncia dos dados.

A codificao se inicia definindo a seqncia de smbolos corrente S como o primeiro


smbolo a codificar. Note que S membro do dicionrio. A codificao ento continua como
a seguir:
1. Se no existem mais smbolos para codificar, d como sada o cdigo da seqncia (j
bits) para S. Em caso contrrio,
2. Pegue o prximo smbolo P e concatene a S, obtendo a nova seqncia SP.
3. Se SP j estiver no dicionrio, faa S = SP e volte para o passo 1. Em caso contrrio,
4. D como sada o cdigo da seqncia (j bits) para S.
5. Adicione SP ao dicionrio, se ainda houver espao.
6. Faa S = P e volte para o passo 1.

Note que assim procedendo, o decodificador no tem a necessidade de conhecer a priori todo
o dicionrio, pois pode reconstru-lo passo a passo, dinamicamente, a partir dos dados
codificados. A decodificao se inicia definindo a seqncia de smbolos corrente S como a
entrada no dicionrio correspondente ao primeiro cdigo a decodificar e dando como sada o
smbolo S. Se houver mais cdigos a decodificar faa:

1. Leia prximo cdigo X

2. Se houver a entrada no dicionrio (P) correspondente a X:


a) D como sada P.
b) Adicione S concatenado ao primeiro smbolo de P no dicionrio,
caso a entrada no exista.

Se no houver a entrada no dicionrio (P) correspondente a X:


a) Faa P igual a S concatenado ao primeiro smbolo de S e
adicione ao dicionrio.
b) D como sada P.

3. Faa S igual a P e volte para o passo 1, se houver mais smbolos a decodificar.

13
4.5. Outras Tcnicas de Compactao
Alm das tcnicas anteriormente mencionadas, outras so encontradas, bem como variantes
das primeiras. Uma, no entanto, merece destaque por ser comumente utilizada: a codificao
aritmtica.

A codificao aritmtica tambm parte do conhecimento da freqncia de ocorrncias dos


smbolos, tal qual as codificaes de Shannon-Fano e de Huffman. Baseado na freqncia de
ocorrncias, intervalos so associados aos smbolos e, a partir desses intervalos, novos
intervalos so construdos para seqncias de smbolos. Uma seqncia pode ento ser
codificada por qualquer nmero dentro do intervalo calculado para a seqncia, garantindo
sua decodificao posterior sem ambigidade. Na referncia [Cormen 02] pode-se encontrar a
especificao detalhada do algoritmo.

4.6. Compresso em Imagem Esttica


As imagens geram, normalmente, uma quantidade de informao muito grande. Se levarmos
em considerao a correlao do valor (cor) de cada pixel, podemos reduzir a quantidade de
informao gerada.

Existe um grande nmero de formatos para imagens estticas, baseados em esquemas


diferentes de compresso. Dentre os mais usuais atualmente podemos citar os formatos TIFF
e GIF, que so baseados no algoritmo de Lempel-Ziv, apresentado na Seo 4.4, e o padro
ISO para imagens estticas, chamado JPEG [ISO 94], baseado em transformadas, como
veremos mais adiante.

A forma mais simples de compresso de uma imagem a reduo da sua resoluo


geomtrica. Isso implica em aumentarmos o tamanho da regio de um pixel. Tal
procedimento pode ser feito at um certo limite, dependendo do usurio final e do dispositivo
de exibio, para se evitar o efeito apresentado na Figura 4, onde vemos primeiro a imagem
original dividida em pixels e, em seguida, a imagem reproduzida; a diferena se deve ao fato
do pixel ter uma regio grande.

Figura 4: Efeito do tamanho da regio de um pixel na codificao/decodificao.

Outra forma de compresso a reduo do espao de cor pela simples utilizao de um


nmero menor de bits para representao de cada pixel. Cabe antes, no entanto, uma
discusso sobre como as cores so representadas.

14
Atravs das adies das cores vermelha, verde e azul, podemos obter quase todas as cores
visveis pelo olho humano. Assim, uma representao bem comum a RGB (de Red Green
Blue), onde um pixel representado pelos valores dessas componentes. comum
encontrarmos o padro RGB 8-8-8, onde se utilizam 8 bits para codificao de cada
componente; e o padro 5-6-5, onde reservado um nmero maior de bits (6) para a
componente verde, por ser o olho humano mais sensvel a essa componente. Outra
representao bastante utilizada o sistema YCrCb. A componente Y denominada
luminncia, e uma medida da sensibilidade do olho humano s vrias componentes de
freqncia de uma cor. Para as fontes usuais de luz provenientes de dispositivos de vdeo, Y
dada por:

Y = 0,299R + 0,587G + 0,114B

As componentes Cr e Cb so chamadas de crominncia e sua definio varia de padro para


padro, bem como seu nome (componentes I e Q no padro NTSC de TV, e componentes U e
V no padro PAL de TV). Cr e Cb so os nomes utilizados pelos padres MPEG e JPEG, e
tm seus valores dados por:

Cr = ((R - Y) / 1,6) + 0,5

Cb = ((B - Y)/ 2) + 0,5

O leitor deve observar que o conjunto de equaes para Y, Cr e Cb linearmente independente


(isso tambm acontece para as outras definies de Cr e Cb), ou seja, dado Y, Cr e Cb, obtm-
se facilmente R, G e B.

O olho humano mais sensvel luminncia do que crominncia, assim, na compresso


pela reduo da resoluo de cor, podemos utilizar um nmero menor de bits para as
componentes da crominncia. Mais comum, no entanto, utilizarmos uma menor resoluo
geomtrica para as componentes de crominncia do que aquela utilizada para a luminncia.

Uma outra forma de compresso de imagem esttica, geralmente sem perdas, a codificao
preditiva. De forma anloga explicao da Seo 3.3, na codificao preditiva de uma
imagem, realiza-se uma predio do valor do pixel baseada em valores de outros pixels da
imagem. A diferena do valor real para o valor predito ento codificada. A Figura 5 ilustra o
caso.

Figura 5: Imagem original e imagem com apenas os erros de predio.

Se na imagem os pixels tiverem valores muito prximos, pode-se usar um nmero menor de
bits para armazenar o erro da predio, do que aquele usado para codificar o valor absoluto do

15
pixel. Alm disso, uma imagem com poucos contornos vai gerar muitos valores pequenos, ou
mesmo o valor zero, tornando o emprego de um outro mtodo de compresso posterior bem
eficiente.

Antes de continuarmos nossa discusso sobre tcnicas de compresso, devemos ressaltar que,
normalmente, as tcnicas de compresso so seguidas pela aplicao de algum esquema de
compactao. Muitas vezes, o esquema de compresso simplesmente prepara os dados para
que possam sofrer uma maior compactao. Nada impede tambm que apliquemos vrias
tcnicas de compresso em seqncia.

Um exemplo de codificao preditiva pode ser encontrado no padro JPEG [ISO 94] no modo
sem perdas, onde a codificao de Huffman aplicada aps a codificao preditiva. No
esquema, apresentado na Figura 6, o codificador por entropia utiliza a codificao de
Huffman. Note tambm, pela figura, que existem 7 possveis predies para um pixel X.

Selees Predio

0 sem predio
1 A
CB 2 B
Preditor Codificador C
A X 3
por entropia A+B-C
4
imagem A+((B-C)/2)
5
comprimida
imagem 6 B+((A-C)/2)
fonte Tabela de (A+B)/2
7
especificao

Figura 6: JPEG sem perdas.

Existem ainda outras tcnicas para compresso de imagem, tais como a codificao por sub-
bandas (similar ao apresentado na Seo 3.3) e a quantizao vetorial. Entretanto, ns nos
deteremos apenas em mais uma, por ser utilizada nos padres JPEG e MPEG: a codificao
por transformadas.

O leitor j deve ter percebido, pelas vrias referncias Seo 3.3, que existem vrias
similaridades entre amostras no tempo e pixels. Na verdade, podemos considerar os pixels
como se fossem amostras do sinal imagem, s que amostras obtidas no no tempo, mas no
espao. exatamente por isso que podemos aplicar todas as tcnicas da Seo 3.3 nas
imagens estticas. Note tambm que, em um sinal de vdeo, o grupo de vrias amostras
temporais formam um quadro (por exemplo, no nosso sistema de TV, existem 30 quadros por
segundo). Esse quadro uma imagem esttica onde, de fato, as amostras temporais do vdeo
so os pixels (amostras espaciais). Esse fato que nos permite no somente tratar o vdeo
como um sinal contnuo e nele aplicarmos todas as tcnicas de compresso conhecidas para
sinal contnuo, como tambm trat-lo como uma seqncia de imagens estticas no tempo,
aplicando as mesmas tcnicas de compresso utilizadas para imagens.

Uma vez que uma imagem esttica pode ser considerada uma seqncia de amostras
espaciais, ns podemos agora pensar, como fizemos com os sinais analgicos, em aplicar uma
transformada (por exemplo Fourier) para descrever o mesmo sinal no domnio da freqncia.
S que agora no domnio das freqncias espaciais. Como estamos com um sinal discreto,
precisaremos de uma transformada discreta. Poderamos usar a transformada discreta de
Fourier, como mencionado, mas outra transformada leva a melhores resultados na
compresso: a transformada discreta de co-senos.

16
No espao bidimensional de uma imagem de 8x8 pixels, a transformada discreta de co-senos
(FDCT: Forward Discrete Cosine Transform) dada por:

1 7 7
(2 x + 1)u (2 y + 1)v
F ( u, v ) = C ( u) C ( v ) f ( x , y ) cos cos
4 x=0 y =0 16 16

1
C( w) = para w = 0
2

C( w) = 1 para w = 1, 2, ... , 7

E a transformada inversa (IDCT: Inverse Discrete Cosine Transform) por:

1 7 7 (2 x + 1)u (2 y + 1)v
f ( x, y ) =
4 u =0 v =0
C (u )C (v) F (u, v) cos
16

cos
16

No domnio da freqncia, as mudanas abruptas que acontecem nos contornos de uma figura
esto concentradas nas freqncias mais altas. Assim, uma imagem com poucos contornos
deve concentrar seus coeficientes nas freqncias baixas. Mais ainda, os coeficientes das
freqncias altas so menos importantes e perdas nesses coeficientes podem diminuir um
pouco a nitidez da imagem, mas para muitas aplicaes isto pode ser aceitvel.

Pelos motivos mencionados no pargrafo anterior, aps uma imagem ser transformada, os
coeficientes gerados so quantizados de forma diferenciada, usando uma maior preciso
(quantum menor) para as freqncias mais baixas. Assim procede o padro JPEG [ISO 94] no
modo seqencial, dividindo uma imagem em blocos de 8x8 pixels e aplicando uma
compresso em cada bloco, conforme o diagrama mostrado na Figura 7. A imagem varrida
uma nica vez, da esquerda para direita, de cima para baixo.

Codificador
FDCT Quantizador
por entropia
imagem
imagem comprimida
fonte Tabela de Tabela de
especificao especificao

Figura 7: Codificao JPEG modo seqencial.

No JPEG, aps a aplicao da transformada discreta de co-senos e a quantizao dos


coeficientes, esses so organizados da mais baixa freqncia para a mais alta,4 quando ento
aplicada a codificao por carreira, seguida da codificao de Huffman (ou codificao
aritmtica), ilustradas na Figura 7 pelo bloco Codificador por entropia.

4
Na verdade, um passo adicional existe no JPEG, quando os coeficientes DC (freqncia zero) de um bloco so
codificados pela diferena entre seu valor e o valor do coeficiente DC do bloco anterior.

17
A decodificao JPEG modo seqencial ilustrada na Figura 8.

Decodificador
Dequantizador IDCT
por entropia

imagem
comprimida Tabela de imagem
Tabela de
especificao especificao reconstruda

Figura 8: Decodificao JPEG modo seqencial.

O padro JPEG ainda possui mais dois modos de compresso: o progressivo e o hierrquico.

O modo progressivo tambm utiliza a transformada de co-senos, mas a imagem codificada


em vrias varreduras. Na variante denominada seleo de espectro, a cada varredura so
codificados coeficientes das mesmas freqncias de todos os blocos, da mais baixa freqncia
para a maior freqncia. J na variante denominada aproximao sucessiva, primeiro
codificado o coeficiente de mais baixa freqncia de todos os blocos e depois so codificados,
paulatinamente, os bits dos demais coeficientes de todos os blocos, do mais significativo para
o menos significativo.

Note que no modo progressivo, os primeiros dados da imagem que so decodificados j


permitem ter uma viso completa da cena, embora ainda sem muita nitidez. Com o restante
dos dados, a nitidez vai se tornando cada vez melhor. Isto pode ser til em vrios casos.
Muitas vezes, navegando na Web, queremos apenas ter uma idia da informao que vem na
pgina a seguir. Certas vezes essa informao nem aquela que desejamos. Ter uma viso
rpida dessa informao, ainda que no com todos os detalhes, pode acelerar em muito a
tarefa sendo executada. Outras vezes podemos estar trafegando com a imagem em um meio
de pequena banda passante, ou mesmo em um trecho congestionado de uma rede. Nesses
casos, o descarte seletivo dos dados que no trazem muita informao pode ser a nica forma
vivel de manter a aplicao em funcionamento. Como veremos, um bom sistema de
comunicao deve poder identificar a parte da informao que ele deve manter ntegra e quais
partes ele pode perder, em caso de necessidade ou convenincia.

O modo JPEG hierrquico tambm permite separar da imagem os dados mais relevantes dos
menos relevantes, mas atravs do aumento progressivo da resoluo geomtrica. Nesse modo,
a imagem codificada com mltiplas resolues, de forma que a menor resoluo pode ser
decodificada sem a necessidade de se ter a resoluo maior.

4.7. Compresso em udio


A compresso de um sinal de udio depende muito do tipo de sinal. Vamos comear pela voz
humana.

Um ser humano falando emite surtos de voz apenas durante 35% a 40% do tempo de fala. O
restante do tempo preenchido com silncio que existe entre palavras e entre uma sentena e
outra. Se pudermos detectar esse silncio e elimin-lo da codificao, de forma que ele possa
ser recuperado na decodificao, reduziremos muito a quantidade de dados gerados. Essa
tcnica aplicada telefonia digital com o nome TASI (Time Assignment Digital

18
Interpolation). Ainda como outra caracterstica da voz e do ouvido humano, a perda de surto
de voz e de silncio muito diferente. Perdas da ordem de 1% da informao do surto de voz
so tolerveis,5 ao passo que podemos tolerar a perda de at 50% do silncio. Note que, com a
deteco de silncio, transformamos um trfego de voz contnuo em um trfego em rajadas.

Uma outra forma de comprimir a voz humana codificar, ao invs de suas amostras, os
parmetros de um modelo analtico do trato vocal capaz de gerar aquelas amostras. No
mtodo conhecido como LPC (Linear Predictive Coding), apenas os parmetros que
descrevem o melhor modelo que se adapta s amostras codificado. Um decodificador LPC
usa esses parmetros para a gerao sinttica da voz que , usualmente, parecida com a
original. O resultado inteligvel, mas a tonalidade aquela de um rob falando.

CELP (Code Excited Linear Predictor) bastante similar a LPC. O codificador CELP gera os
mesmos parmetros LPC, mas computa os erros entre a fala original e a fala gerada pelo
modelo sinttico. Tanto os parmetros do modelo analtico do trato vocal quanto uma
representao comprimida dos erros so codificados. A representao comprimida um
ndice em um vetor de excitao (que pode ser pensado como um livro de cdigos
compartilhado pelo codificador e decodificador). O resultado do CELP tem uma qualidade de
fala muito boa a uma taxa bem baixa. A Tabela 2 apresenta alguns padres recomendados
pelo ITU-T [ITU-T G.711; ITU-G.722; ITU-T G.723; ITU-T G.726; e ITU-T G.729] para
voz.

Tabela 2: Padres ITU-T para voz.

Taxa de Recursos de
Qualidade da Atraso
Padro Algoritmo compresso processamento
voz resultante adicionado
(Kbps) necessrios
48, 56, 64 (sem
G.711 PCM Nenhum Excelente Nenhum
compresso)
64 (faixa passante
G.722 SBC/ADPCM Moderado Excelente Alto
de50 a 7KHz)
Boa (6.3)
G.723 MP-MLQ 5.3, 6.3 Moderado Alto
Moderada (5.3)
Boa (40) Muito
G.726 ADPCM 16, 24, 32, 40 Baixo
Moderada (24) baixo
G.738 LD-CELP 16 Muito Alto Boa Baixo
G.729 CS-ACELP 8 Alto Boa Baixo

Mais especificamente para udio, de uma forma geral, um padro muito importante o
MPEG udio [ISO 93a e ISO 98].

MPEG udio leva em conta o modelo psicoacstico humano para realizar uma compresso
perceptualmente sem perdas. O modelo divide o domnio de freqncia audvel (entre 20
Hz e 20 KHz) em 32 bandas, chamadas bandas crticas. O sistema de audio tem uma
resoluo limitada e dependente da freqncia. A medida perceptualmente uniforme de
freqncias pode ser expressa em termos das larguras das bandas crticas. A Figura 9 mostra
a sensibilidade do ouvido humano nas diversas freqncias.

5
Na realidade, a percentagem de perda depende do tamanho do surto de voz e se a perda ocorre no incio ou no
meio do surto. Na referncia [Gruber 85] possvel encontrar uma discusso sobre o assunto.

19
Limite no Silncio

Frequncia

Figura 9: Sensibilidade do ouvido humano.

Note que a sensibilidade do ouvido ilustrada na Figura 9 medida em decibis (dB SPL dB
Sound Preassure Level ou simplificadamente dB). O decibel uma unidade conveniente
para expressar o que se chama de nvel sonoro. O som, de uma forma geral, tem uma medida
de intensidade que a potncia transferida por uma onda sonora por rea de uma superfcie
que intercepta essa onda. O decibel nada mais do que uma forma comparativa de analisar
valores. Nesse caso, ao invs de fornecer o valor absoluto da intensidade sonora para uma
freqncia, podemos fornecer o seu valor dividido pela menor intensidade perceptvel ao
ouvido humano6 e utilizar uma escala logartmica para representar essa razo, j que o
intervalo de intensidades produzido pela voz humana muito grande. Assim, o nvel sonoro
em decibis definido como:
I
= 10 log10
I0

onde I0 o menor valor de intensidade sonora perceptvel ao ouvido e I a intensidade do


som sendo medido. Note que, para I = I0, temos que = 0 dB, ou seja, a nossa referncia de
menor intensidade perceptvel corresponde ao 0 dB.

Voltando ao MPEG udio, seu modelo leva em conta o mascaramento de freqncias,


caracterstica do ouvido humano que quando submetido a um sinal de uma certa amplitude em
uma dada freqncia, mascara as outras freqncias ao redor, que possuam uma amplitude
abaixo de um certo limite. A Figura 10 ilustra o caso.

Amplitude Sinal tonal forte

Regio onde os sinais fracos so


mascarados

Freqncia

Figura 10: Mascaramento de freqncias.

6
O valor de referncia definido como I0 = 10-12 Watts/m2. Ele corresponde aproximadamente o limiar da
audio humana. No entanto, o limiar de audio varia de freqncia para freqncia e com a intensidade do
som, como descoberto por Fletcher e Munson em 1933.

20
MPEG udio transforma o sinal para o domnio da freqncia e aplica o mascaramento de
freqncias, codificando apenas aquelas componentes de freqncia que no so mascaradas.
A Figura 11 ilustra o procedimento.

Antes

Freqncia

Depois

Freqncia

Figura 11: Mascaramento de freqncias nas bandas crticas MPEG.

MPEG udio tambm leva em considerao resultados psicoacsticos que mostram que, para
freqncias maiores que 2 KHz, o ouvido percebe a imagem estereofnica baseado mais no
envelope temporal do udio do que em sua estrutura mais refinada. Assim, no modo intensity
stereo, o codificador soma as freqncias mais altas do sinal estereofnico em um nico
sinal. Os canais de esquerda e direita so reconstrudos com a mesma forma, mas com
magnitudes diferentes, baseadas em fatores de escala.

Na codificao MPEG, para cada intervalo de tempo de udio codificado (isto , para cada
conjunto de amostras), existe um nmero fixo de bits total para todas as 32 sub-bandas.
Escolhe-se o nmero de bits de uma banda de forma a minimizar a percepo auditiva do
rudo de quantizao, levando-se em conta, como j mencionamos, o mascaramento de
freqncias.

MPEG 1 udio [ISO 93a] define trs mtodos de compresso, denominados camadas 1, 2 e 3
(MP1, MP2, MP3).

MP1 agrupa 12 amostras para cada uma das 32 sub-bandas. Cada grupo de 12 recebe ento os
bits para codificao e, se o nmero de bits no zero, um fator de escala.

MP2 e MP3 ainda levam em conta uma outra caracterstica psicoacstica, o mascaramento
temporal. Quando emitido um tom em uma dada freqncia e com uma certa amplitude,
esse tom mascara os tons, na mesma freqncia, abaixo de uma certa amplitude, que varia no
tempo. A Figura 12 ilustra o fato com um tom emitido a 60dB.

21
Tom de teste

Tom de
mascaramento

Tempo (ms)

Figura 12: Mascaramento temporal.

MP2 codifica os dados em grupos maiores: para cada sub-banda agrupa 3 grupos de 12
amostras. Isso modela um pouco da mscara temporal, pois se faz uma alocao de bits e se
usa trs fatores de escala para cada trio de 12 amostras.

Tanto MP1 quanto MP2 usam bandas uniformes, isto , do mesmo tamanho, que no
modelam bem o ouvido humano, como pode ser visto pela Figura 9. MP3 usa bandas no
uniformes e faz uma alocao de bits melhor. MP3 faz um melhor clculo do quantum de
cada banda, isto , uma melhor distribuio de bits, usando inclusive o conceito de
reservatrio de bits (como mencionado, o nmero de bits total para as 32 bandas fixo para
cada grupo de amostras, mas no MP3 pode haver emprstimos de bits de um grupo de
amostras para outro).

MP2 e MP3 tambm permitem o MS stereo mode, alm do stereo intensity mode. O modo MS
stereo codifica os sinais de freqncias mais altas dos canais direito e esquerdo como a soma
(middle-channel) e diferena (side-channel). Tcnicas de sintonizao so ento utilizadas
para comprimir o sinal side-channel.

A Tabela 3 apresenta uma comparao das vrias camadas MPEG 1 udio.

Tabela 3: Camadas MPEG 1 udio (a codificao pode ser realizada com taxas de amostragem de 32, 41.1 e 48 KHz).

Camadas Taxa de bits alvo Taxa de Qualidade Retardo


(Kbps) compresso Mximo (ms)

MP1 32 a 448 4:1 50

MP2 32 a 384 6:1 100

MP3 Telefonia: 8 Kbps


32 a 320 12:1 150

Rdio AM: 32 Kbps

Rdio FM: 64 Kbps

CD: 128 Kbps

As camadas do padro MPEG 1 udio, denominada fase 1 (MP1, MP2 e MP3) prevem
apenas o uso de dois canais em um fluxo de udio, ou seja, apenas o estreo tradicional. O
padro MPEG 2 [ISO 98] introduz algumas extenses. O padro MPEG 2 udio (fase 2)
comum, chamado de BC (Backward Compatible), tem as mesmas camadas e usa os
mesmos algoritmos com os mesmos parmetros do udio MPEG 1. A diferena que o

22
MPEG 2 prev a formao de fluxos de udio com at 6 canais, em vez de implementar
apenas o estreo com dois canais.

A codificao AAC novidade do udio MPEG 2, conhecida como NBC (Non Backward
Compatible), de no compatvel com MPEG 1. Essa codificao mais eficiente que o MPEG
1 (MP3 etc.), tolera at 48 canais de udio e 15 canais de freqncias baixas, com taxas de
amostragem de 8 a 96 KHz. A AAC necessita de menos processamento e, conseqentemente,
tem retardo menor na (de)codificao.

Alm das codificaes apresentadas, ainda existem vrias outras em uso atual. Entre elas
podemos citar a DD e a DTS.

AC-3 era o antigo nome da codificao chamada hoje de Dolby Digital (DD). Essa
codificao proprietria da empresa Dolby, mas foi adotada pelos EUA como codificao de
udio a ser utilizada nos DVDs e em HDTV (High Definition TV). Ela utiliza 6 canais de
udio, sendo 5 com qualidade de CD (20 Hz a 20 KHz) e um apenas para as baixas
freqncias, (20 a 120 Hz). A taxa dessa codificao de cerca de 384 Kbps. A Figura 13
apresenta a distribuio sugerida de auto-falantes para os 6 canais de udio.

Central
Principal Principal
Esquerdo Direito

Sub-woofer
Surround Surround
Esquerdo Direito

Figura 13: udio multicanal.

A Europa usa ainda uma outra codificao proprietria, a DTS. Essa tambm multicanal,
mas a taxa gerada de cerca de 1,536 Mbps. Tanto o DD quanto DTS trabalham com
codificao por sub-bandas (at 576 na DD). Testes exaustivos com especialistas em udio
no conseguem chegar a uma definio sobre qual codificao a melhor. No entanto, trilhas
DD obviamente ocupam menos espao de armazenamento (e de banda, quando transmitidas)
e, por isso, a codificao DD tem sido preferida pelos fabricantes de DVD.

4.8. Compresso em Vdeo


Como vimos na Seo 3, o sinal de vdeo pode ser codificado usando qualquer uma das
tcnicas l mencionadas: PCM, DPCM, ADPCM, SBC etc. Tambm conforme vimos na
Seo 4.6, um vdeo pode ser considerado como uma seqncia de imagens estticas, ou
quadros. Cada um desses quadros pode ser codificado usando as mesmas tcnicas empregadas
para as imagens estticas. Em particular, poderamos empregar a codificao JPEG em cada
quadro. Essa tcnica constitui a base da codificao chamada MJPEG (Motion JPEG).
Entretanto, ao empregarmos essa codificao, estaremos levando em conta apenas a
redundncia de informao contida em um quadro (redundncia intra-quadro), quando a

23
maior redundncia pode estar nas informaes contidas em quadros consecutivos
(redundncia inter-quadros).

Nesta seo nos deteremos na anlise de dois padres de codificao de vdeo que levam em
conta no apenas a redundncia intra-quadro, mas tambm a existente inter-quadros: os
padres H.261 e MPEG vdeo. Antes, porm, vamos analisar alguns padres de sinal de
vdeo.

Sinais de TV so, em geral, adquiridos no formato RGB, mas transmitidos no formato YCrCb,
onde a resoluo dos canais de crominncia menor que a de luminncia, levando em conta a
maior sensibilidade do olho humano luminncia, como discutimos na Seo 4.6. Os sinais
so ento multiplexados e modulados, gerando um sinal chamado vdeo composto modulado,
conforme ilustrado na Figura 14.

R Componentes
Cmera G
B
De Video
(BNC)

Somador Y
Cr S-VHS
Subtrator Cb (Mini DIN)

Vdeo
Sub-amostragem Multiplexador VC Composto
na crominncia (RCA)

Vdeo
Modulador VCM Composto
Modulado

Figura 14: Gerao de sinal de vdeo de TV.

Sistemas de vdeo apresentam informaes como uma seqncia de quadros, sendo cada
quadro composto de linhas. Um dos sistemas de distribuio de televiso mais utilizado usa
525 linhas por quadro, a uma taxa de 30 quadros/segundo ( o padro M de TV, utilizado
tanto pelo padro americano NTSC, quanto pelo padro brasileiro PAL-M).7 As televises
tm uma relao de aspecto de 4:3, dando ao padro M uma resoluo para a luminncia de
700 x 525 pixels por quadro.

Nem todas as linhas da televiso so visveis. A maioria dos formatos de vdeo digital esto
relacionados com a rea visvel para cada padro de televiso. A recomendao BT 601-4
[ITU-R BT.601-4] especifica 483 linhas ativas, com 720 pixels por linha. Apenas 480 das 483
linhas e 704 dos 720 pixels (os primeiros e ltimos 8 pixels so descartados) so usados para
codificao. O padro especifica a sub-amostragem de crominncia 4:2:2, conforme dado pela
Figura 15, indicando que, para cada dois valores de luminncia na horizontal, apenas um de
cada crominncia deve ser gerado. Isso implica em uma taxa gerada de:

704 x 480 x 29,97 x 16 = 162 Mbps

7
Na verdade, a taxa de quadros de 29,97 quadros/segundo para TV colorida. Os padres europeus, em geral,
usam 25 quadros/segundo e 625 linhas por quadro.

24
A Figura 15 apresenta tambm outras sub-amostragens de crominncia utilizadas em outros
padres de codificao, como veremos.

4:2:0 4:2:2 4:4:4 4:1:1

Crominncia Luminncia
Cr e Cb
1 pixel de Crom innci a Cr
1 pixel de Lumin nci a
e 1 pixel de Crominncia Cb

Figura 15: Sub-amostragem de crominncia MPEG 2.

O padro H.261 do ITU-T, discutido mais adiante, usa os formatos CIF (Common
Interchange Format), com 288 linhas e 352 pixels por linha, e QCIF (Quarter CIF), com 144
linhas e 176 pixels por linha, para a luminncia. Sua extenso, H.263, acrescenta trs novos
formatos: o sub-QCIF (128 x 96), o 4CIF (704 x 576), tambm conhecido como SCIF, e o
16CIF (1408 x 1152). Todos os formatos citados possuem sub-amostragem de crominncia
(relao de aspecto) 4:2:0, conforme ilustrado na Figura 15.

O padro MPEG 1 vdeo pode codificar imagens de at 4096 linhas x 4096 pixels x 60
quadros/segundo. No entanto, a maioria das aplicaes usam o formato SIF, com 240 linhas,
352 pixels por linha e sub-amostragem de crominncia 4:2:0.

O padro MPEG 2 pode codificar imagens de at 16.383 linhas x 16.383 pixels. O padro
organizado, como veremos, em diversos perfis e nveis, que especificam o formato utilizado.
Exemplos de formato so: nvel baixo (240 linhas x 352 pixels/linha x 30 quadros/segundo
idntico ao SIF MPEG 1), nvel principal, visando a codificao com qualidade de TV (720 x
480 x 30), e os nveis alto, visando a TV de alta resoluo - HDTV, e a produo de filmes
(em geral 1280 x 720 x 30; 1920 x 1080 x 30 ou 1440 x 1152 x 30). O padro permite sub-
amostragem de crominncia 4:2:0, 4:2:2 e 4:4:4.

Note que vrios formatos so menores que os tamanhos de TV atuais. Note tambm que as
imagens de TV so significativamente menores do que as telas atuais das estaes de
trabalho. Quase todos os formatos de vdeo digital apresentam a imagem em uma rea menor
do que a tela da estao. Alguns padres, no entanto, chegam a resolues suficientes para
atender a qualidade das TVs de alta resoluo, a HDTV.

4.8.1. H.261
H.261 [ITU-T H.261] o padro de compresso mais usado em sistemas de videoconferncia.
Seu objetivo inicial foi as aplicaes para redes comutadas por circuito, mais especificamente
a RDSI-FE. Da decorre sua gerao de trfego CBR (de Constant Bit Rate, isto , taxa
constante) nas taxas de p x 64 Kbps, p variando de 1 a 30.

H.261 divide cada quadro (QCIF ou CIF) em macroblocos de 16 x 16 pixels, gerando 6


blocos de 8 x 8 pixels (4 de luminncia e 2 de crominncia), conforme ilustra a Figura 16.

25
Pixels
(a) Blocos Y

Luma
Cb Cr

(b) Blocos

Figura 16: Blocos H.261.

O padro define dois tipos de codificao. Na codificao intra-quadro, o macrobloco


codificado levando em conta apenas a redundncia espacial do bloco. Cada bloco passa por
um processo muito parecido com o descrito no JPEG modo seqencial, gerando os blocos
codificados. Na codificao preditiva, realizada uma pesquisa no quadro anterior procura
de um macrobloco o mais parecido possvel com o macrobloco que se quer codificar (a
pesquisa realizada apenas na componente de luminncia e apenas em uma regio que
circunda o macrobloco). O erro de predio (diferena entre os macroblocos) ento enviado
para codificao, sofrendo ento o mesmo processo descrito para a codificao intra-quadro.
No caso da codificao preditiva, deve tambm ser codificado o vetor (chamado de vetor de
deslocamento), que especifica o deslocamento entre o macrobloco corrente e o macrobloco do
quadro anterior usado para a predio.

Todo macrobloco sofre uma codificao intra-quadro e preditiva. A que gera a maior
compresso escolhida. Uma vez codificados, os quadros so enviados a um buffer que vai
regular o fluxo de informao para uma taxa de bits constante. Lembre-se que o H.261 foi
pensado para uma rede comutada por circuitos. Como a taxa de entrada no buffer VBR
(Variable Bit Rate, isto , taxa varivel), se no fosse tomada nenhuma providncia poderia
ocorrer estouro de buffer ou falta de bits codificados. Para que isso no acontea, o tamanho
do passo do quantizador (o quantum), dos coeficientes gerados a partir da transformada de co-
senos, ajustado, quando necessrio, conforme a quantidade de dados no buffer, para se
chegar taxa CBR desejada de sada.

O ajuste no passo do quantizador afeta a qualidade do vdeo gerado, privilegiando os vdeos


com poucas mudanas de cena. Pouca mudana de cena implica em maior compresso, isto ,
menos bits gerados na codificao que entram no buffer, o que faz o processo de
realimentao diminuir o quantum para aumentar a quantidade de bits gerados. Como
conseqncia da diminuio do quantum, tem-se uma imagem de melhor qualidade. Como em
aplicaes de videoconferncia e videotelefonia no existe, em geral, muitas mudanas de
cenas, o padro bem apropriado para elas.

O padro H.263 [ITU-T H.263] estende o padro H.261, introduzindo novos formatos de
quadros, como discutimos anteriormente, otimizando o H.261 para codificao de vdeo a
taxas inferiores a 64 Kbps e adicionando facilidades para maior qualidade e melhores
servios. Contudo, as idias bsicas de compresso so as mesmas.

26
4.8.2. MPEG Vdeo
Idntico ao H.261, o padro MPEG vdeo [ISO 93c e ISO 00a] divide um quadro em
macroblocos, como apresentado na Figura 16, vlida tambm para o MPEG com amostragem
de crominncia 4:2:0.

Cada bloco pode ser codificado usando apenas a informao intra-quadro, de forma idntica
ao que foi apresentado para o JPEG. Quadros em que todos os blocos so codificados dessa
forma so denominados quadros I.

Um macrobloco pode tambm ser codificado de forma preditiva, semelhante ao H.261. No


entanto, a predio MPEG mais rica, uma vez que pode ser feita baseada em quadros
passados e em quadros futuros da seqncia de um vdeo. Quando a predio feita baseada
em um quadro passado, tal qual o H.261, codificado o erro de predio (diferena do
macrobloco que se quer codificar para o macrobloco de referncia do quadro passado),
usando os mesmos procedimentos usados para os macroblocos intra-quadros, e o vetor de
movimento (que d a posio relativa do macrobloco que se quer codificar para o macrobloco
de referncia do quadro passado). Quadros codificados usando esse tipo de predio so
chamados quadros P. A predio sempre baseada no primeiro quadro do tipo I ou P,
anterior.

A estimao do movimento (estimao do macrobloco mais prximo daquele que se quer


codificar) se d dentro de uma regio do quadro de referncia, conforme ilustra a Figura 17.
Para TV, por exemplo, obtm-se bom desempenho com p=15 pixels em cenas comuns de
noticirio e p=63 em cenas de muito movimento, como por exemplo, cenas de esporte.

Figura 17: Estimao de movimento.

Macroblocos tambm podem ser codificados baseados no primeiro quadro I ou P, posterior ou


anterior. Nesse caso, teremos dois quadros de referncia para a procura do melhor casamento.
A codificao pode ser realizada ento baseada no quadro anterior, ou baseada no quadro
posterior, ou ainda baseada na interpolao do quadro anterior e posterior. Quadros
codificados usando esse tipo de predio so chamados quadros B.

27
Quadros B apresentam como vantagem o fato de, normalmente, apresentarem uma
compresso maior que os quadros I e P (Tabela 4). So tambm quadros que, se perdidos, no
afetam tanto a qualidade da imagem, pois o erro cometido no se propagar, uma vez que
esses quadros no so usados como referncia de predio (note que a perda de um quadro I
ou P implica na perda de todos os quadros at o prximo quadro I). No entanto, quadros B
introduzem um retardo extra no processo de codificao, porque devem ser codificados fora
da seqncia, alm de exigirem mais processamento para codificao.

Tabela 4: Tamanhos tpicos de quadros MPEG 1.

Tipos de Quadro Tamanho (Kbytes) Compresso

I 18 2:1

P 6 7:1

B 2,5 50:1

Mdia 4,8 27:1

Ao contrrio do H.261, que escolhe sempre a melhor codificao para o macrobloco, no


MPEG, o padro de codificao de quadros um parmetro da escolha do usurio, isto , o
usurio escolhe qual a seqncia de quadros I, P, ou B a ser utilizada. Note que essa escolha
vai depender das aplicaes. Por exemplo, como veremos na Seo 6, o retardo de
transferncia pode ser crtico em aplicaes onde h uma interatividade em tempo real entre
os participantes, como em um sistema de videoconferncia. Nesse caso, o nmero de quadros
B em seqncia no pode ser muito grande, devido ao retardo que isso introduz.

O padro MPEG 1 trabalha, em geral, com o formato SIF, embora uma maior resoluo
tambm seja permitida por sua sintaxe. O padro MPEG 2, como j mencionado, admite
vrios formatos de quadros e diferentes resolues para as componentes de crominncia. De
fato, o MPEG 2 especifica vrios conjuntos de parmetros de restrio, que so definidos nos
seus perfis e nveis. Um perfil especifica as facilidades de codificao que sero utilizadas.
Um nvel especifica a resoluo dos quadros, as taxas de bits etc. Vrias combinaes de
perfis e nveis foram definidas, como veremos mais adiante. O MPEG 2 usa os mesmos tipos
de quadro I, P e B, como o MPEG 1, mas introduz outros mtodos de predio [Netravali 95]
para lidar com vdeo entrelaado.8

O MPEG 2 tambm apresenta vrias extenses de escalabilidade [ISO 00a]. As extenses


provem, basicamente, duas ou mais seqncias de bits, ou camadas, que podem ser
combinadas para prover um nico sinal de vdeo de alta qualidade. A camada base pode, por
definio, ser totalmente decodificada por si mesma, de forma a prover um vdeo de baixa
qualidade. Como veremos a seguir, muitas das tcnicas empregadas so semelhantes s
codificaes progressivas e hierrquica do JPEG.

8
Vdeo entrelaado tipicamente usado em TV, onde so primeiro varridas as linhas mpares e depois as pares.
Aos conjuntos de linhas mpares e pares chamamos campos. Assim, um quadro composto de dois campos.

28
Com a escalabilidade SNR (Signal to Noise Ratio), outra camada pode ser adicionada
camada base, oferecendo uma melhora na preciso dos coeficientes da DCT (Discrete Cosine
Transform), adicionando valores de correo para serem utilizados antes da decodificao
(aplicao da DCT inversa). Essa extenso tambm prov a codificao do vdeo na resoluo
4:2:2, tendo por camada base o vdeo na resoluo 4:2:0.

Escalabilidade por partio de dados uma verso simplificada da escalabilidade SNR. Com
essa extenso, at um certo nmero de coeficientes de freqncias DCT enviado pela
camada base. Os coeficientes restantes so enviados por outra camada a ser adicionada
bsica.

Na escalabilidade espacial, a camada base tem uma resoluo espacial (resoluo geomtrica
de cada imagem) menor do que a do vdeo original. A camada de melhoramento ento
acrescida camada base para se obter a resoluo original.

Na escalabilidade temporal, a camada base tem uma resoluo temporal (nmero de quadros
por segundo) menor do que a do vdeo original. Novamente, a camada de melhoramento
ento adicionada camada base para a obteno da resoluo original.

Escalabilidade especialmente til em redes que permitem distinguir os tipos de fluxos e


privilegiar a entrega do mais importante. Assim, em caso de necessidade ou convenincia de
perda, um sinal de vdeo com um mnimo de qualidade ainda poder ser recebido.

No MPEG 2, o perfil principal (main profile) utiliza os quadros I, P e B e uma amostragem de


cor 4:2:0. O perfil simples (simple profile) basicamente o perfil principal sem os quadros B.
O perfil escalvel SNR (SNR Profile) adiciona a escalabilidade SNR ao perfil principal. O
perfil escalvel espacialmente (spatially scalable profile) adiciona a escalabilidade espacial ao
perfil escalvel SNR. O perfil alto adiciona cor 4:2:2 ao perfil escalvel espacialmente. Todos
os perfis so limitados ao mximo de trs camadas. O nvel principal (main level), como
mencionado no incio desta seo, est definido basicamente para o vdeo ITU-R Rec. 601. O
nvel simples (simple level) definido para vdeo SIF. Os dois nveis alto para HDTV so o
nvel alto-1440 (high-1440 level), com um mximo de 1440 pixels por linha, e o nvel alto
(high level), com no mximo 1920 pixels por linha. Nem todas as combinaes de perfis e
nveis foram padronizadas. No futuro, quando necessrio, perfis e nveis podero ser
adicionados ao padro.

Diferente da codificao linear de udio e vdeo do MPEG 1 e 2, a codificao MPEG 49 [ISO


01a] baseada em objetos, isto , as cenas audiovisuais so codificadas em termos de objetos.
Um objeto pode ser uma imagem, um vdeo ou um udio.

Objetos codificados separadamente fornecem trs benefcios: reusabilidade a abordagem


orientada a objeto permite aos autores reusarem material udio-visual mais rapidamente;
escalabilidade objetos podem ser codificados usando diferentes resolues espaciais e
temporais (a resoluo do objeto pode ser ajustada para casar com a capacidade do meio de
transporte); interatividade porque os objetos audiovisuais so compostos em quadros no
decodificador, o usurio pode controlar a sada.

9
MPEG 4, cuja designao formal do ISO/IEC ISO/IEC 14496, foi finalizado em outubro de 1998 e tornou-se
um padro internacional nos primeiros meses de 1999. No final de 1999, foram acrescentadas novas extenses
(MPEG-4 verso 2), tornando-se um padro internacional formal no comeo de 2000.

29
O objetivo inicial do MPEG 4 era a sua utilizao em aplicaes com baixas taxas de bits.
Com as finalidades originais consideravelmente modificadas, um novo conjunto de aplicaes
usar o MPEG 4, tais como: videoconferncia, comunicaes mveis, acesso a vdeo de
servidores remotos para aplicaes multimdia, jogos etc. Atualmente, o grupo MPEG 4 est
direcionando os trabalhos para televiso digital, aplicaes grficas interativas e World Wide
Web.

O MPEG 4 considera uma cena como sendo composta de Objetos de Vdeo (Video Objects)
VOs. Os VOs tm propriedades como forma, movimento, textura etc. Eles vo se constituir
nas entidades no fluxo de bits que o usurio pode manipular e ter acesso. Um Plano de
Objetos de Vdeo (Video Object Plane - VOP) uma ocorrncia de um VO em dado instante
de tempo. Cada quadro consiste de vrios VOPs. Uma cena que contm somente um VOP
pode corresponder aos padres correntes, tais como MPEG 1 ou 2. Cada VOP tem sua prpria
resoluo espacial e temporal.

Uma cena, dividida em objetos como mencionado, possui uma organizao hierrquica. Uma
informao adicional enviada com os VOPs a fim de informar ao receptor como compor a
cena. A descrio de cada cena baseia-se em conceitos da Virtual Reality Modeling Language
(VRML Linguagem de Modelagem de Realidade Virtual). Contudo, o padro MPEG 4
introduziu novos conceitos de modelagem e otimizou os j existentes, dando origem a uma
linguagem diferente e mais poderosa: Binary Format for Scenes (BIFS).

4.9. Multiplexao e Sincronizao


Tanto o H.261 quanto o MPEG padronizam a forma como informaes udio-visuais devem
ser multiplexadas (unidas em um nico fluxo). No caso do MPEG, a padronizao MPEG
System [ISO 93b e ISO 00b] responsvel por essa especificao. Ambos os padres
adicionam aos fluxos elementares de udio e vdeo informaes para suas exibies
sincronizadas. A sincronizao realizada pela adio de selos de tempo (timestamps) a
conjuntos de amostras codificadas de vdeo e udio, baseadas em um relgio compartilhado.
A Figura 18 ilustra o procedimento.

Relgio
do
Sistema

Figura 18: Multiplexao e sincronizao dos fluxos de udio e vdeo.

Um fluxo MPEG organizado em duas camadas: a camada pack e a camada packet. A


camada pack contm informaes utilizadas por todos os fluxos elementares e a camada
packet as informaes particulares a cada fluxo. Um fluxo MPEG consiste de um ou mais

30
packs. O cabealho pack contm informaes de temporizao do sistema e sobre as taxas de
dados. O cabealho packet contm a identificao do fluxo elementar, os requisitos de
armazenamento e informaes de temporizao. Os dados packet contm um nmero de bytes
varivel de um mesmo fluxo elementar. Assim, depois de remover o cabealho packet, os
dados packet de todos os packets com o mesmo identificador so concatenados para a
recuperao de um fluxo elementar. At 32 fluxos de udio e 16 fluxos de vdeo podem ser
multiplexados em um fluxo MPEG. A Figura 19 apresenta a estrutura de camadas MPEG 1
System [ISO 93b].

Figura 19: Camadas MPEG 1 System.

A funo do MPEG 2 System [ISO 00b] idntica do MPEG 1. Contudo, o MPEG 2


System especifica dois formatos de dados: o fluxo de programa (program stream) e o fluxo de
transporte (transport stream) (Figura 20). O fluxo de programa similar e compatvel ao
fluxo MPEG 1 System. Ele foi otimizado para aplicaes multimdia e para ser processado
por software.

O fluxo de transporte pode transportar mltiplos programas simultaneamente e otimizado


para aplicaes onde a perda de dados comum. O fluxo de transporte consiste de pacotes de
tamanho fixo (188 bytes, incluindo 4 bytes de cabealho).

Empacotador

Empacotador

Figura 20: MPEG 2 System

31
Similar ao MPEG 1 e 2, o MPEG 4 System [ISO 01b] desenvolvido para fornecer
multiplexao de fluxos de dados elementares, sincronizao e empacotamento.
Adicionalmente, o MPEG 4 System fornece parmetros de representao/manipulao
bsicos (translao, rotao e zoom) no cabealho da camada de fluxo de dados de cada
objeto.

5. Aplicaes de Banda Larga


Com o grande desenvolvimento da tecnologia digital, os diferentes tipos de informao (texto,
udio, vdeo etc.) passaram a ser processados de forma integrada, dando origem aos sistemas
multimdia.

Tradicionalmente, os sistemas de comunicao foram desenvolvidos para o transporte de tipos


especficos de informao o sistema telefnico para o trfego de voz; as redes de
comutao de pacotes para dados textuais; vdeo e televiso em redes de radiodifuso ou a
cabo. Essas redes foram claramente projetadas para aplicaes especficas, normalmente
adaptando-se mal a outros tipos de servio. O ideal de uma nica rede capaz de atender a
todos esses servios, para a obteno de uma economia advinda do compartilhamento dos
recursos, veio motivar o conceito das redes de servios integrados e diferenciados.

Vrios cenrios foram delineados de forma a caracterizar os efeitos de aplicaes multimdia


em redes de alta velocidade e com integrao de servios. Imagine, por exemplo, mdicos em
hospitais localizados em regies diferentes, discutindo o diagnstico de um paciente usando
informaes de raio X, histrico da evoluo do caso, vdeos, banco de dados sobre
acompanhamentos de casos semelhantes etc. Suponha cada participante dessa teleconferncia
multimdia tendo acesso ao conjunto de tais informaes, trocando comentrios por voz e
apontando os diversos itens sob discusso. Suponha cada participante podendo modificar,
organizadamente, o contedo visvel da tela e seu formato (selecionando uma nova imagem,
ampliando-a na tela etc.). Suponha ainda que os fluxos de voz e as informaes visuais sejam
enviadas a todos os participantes simultaneamente, de forma que todo o sincronismo
necessrio (por exemplo, uma imagem em movimento sendo referenciada e comentada
oralmente) seja preservado. Esse cenrio serve para colocar em evidncia que a infra-estrutura
de comunicao necessria para essa aplicao deve prover servios para realizar uma
transmisso sncrona e em tempo real das informaes multimdia. Como veremos na
prxima seo, para complicar ainda mais essa aplicao j bastante complexa, as
caractersticas e requisitos de comunicao dos diferentes tipos de informao variam muito.

O ITU-T define como servios de banda larga (broadband) qualquer servio que requer
canais de transmisso capazes de suportar taxas maiores que aquelas do acesso primrio das
RDSI-FE (T1 = 1,544 Mbps, E1 = 2,048 Mbps).

O ITU-T classifica as aplicaes em banda larga em quatro categorias: servios


conversacionais, servios de recuperao, servios de mensagem e servios de distribuio.

Servios conversacionais provem meios para transferncia fim a fim em tempo real. Entre as
aplicaes que a se enquadram podemos citar: videotelefonia, videoconferncia,
transferncia de documentos multimdia em tempo real (fac-smile de alta resoluo, anotao
de voz etc.), servios de segurana, supercomputao virtual e teleao (controle por
computador de dispositivos fsicos remotos, associados a um controle de processo em tempo
real). O ponto chave dessas aplicaes a interatividade em tempo real da comunicao entre
os usurios dos servios.

32
Servios de recuperao fornecem a facilidade de recuperao de informao armazenada
remotamente. Entre as aplicaes que a se enquadram podemos citar: videotexto, livrarias
eletrnicas e vdeo sob demanda (tanto para entretenimento, pela substituio da TV a cabo,
quanto para educao e treinamento remotos).

Servios de mensagem oferecem a comunicao entre usurios via unidades de


armazenamento, com funes de store-and-forward, mailbox (caixa de correio) ou
manipulao de mensagens. Ao contrrio dos servios conversacionais, esses servios no so
em tempo real. Entre as aplicaes que a se enquadram podemos citar: correio de vdeo e
correio de documentos multimdia.

Servios de distribuio so subdivididos em duas classes: servios sem controle do usurio e


servios com controle do usurio. Entre as aplicaes sem controle do usurio podemos citar:
distribuio de udio e vdeo, distribuio de documentos (jornais, revistas e livros),
distribuio de cotao da bolsa de valores e difuso de TV. Entre as aplicaes com controle
do usurio, podemos citar a substituio de documentos tradicionais (livros, revistas, jornais
etc.), pelos equivalentes eletrnicos com distribuio sob controle do usurio.

O que caracteriza as aplicaes de banda larga o fato de terem de lidar com objetos no
convencionais (udio, vdeo etc.). No convencionais no sentido de serem objetos longos (1
minuto de vdeo colorido no comprimido, qualidade TV, contm 1,8 Gbytes de dados), de
exigirem transferncia contnua de dados a altas taxas (162 Mbps para sinal de TV no
comprimido) e, alm de tudo, de exigirem acesso sincronizado aos dados. A prxima seo
resumir as caractersticas e requisitos de comunicao das diversas mdias envolvidas nas
aplicaes de banda larga.

6. Requisitos de Comunicao das Diversas Mdias


As caractersticas e requisitos de comunicao exigidos pelos diversos tipos de mdia so
muito diferentes. Vrias caractersticas devem ser consideradas ao classificarmos fontes de
trfego. A natureza do trfego gerado uma de suas caractersticas mais importantes, dando
origem a trs classes bsicas: a classe de trfego contnuo com taxa constante (Constant Bit
Rate CBR), a classe de trfego em rajadas (bursty) e a classe de trfego contnuo com taxa
varivel (Variable Bit Rate VBR).

Na classe de trfego contnuo com taxa constante,10 o trfego, como o prprio nome diz,
constante e, por conseguinte, sua taxa mdia igual a sua taxa de pico. Essa taxa o nico
parmetro necessrio para se caracterizar tal fonte.

As fontes cujo trfego gerado tem caracterstica de rajadas apresentam perodos ativos
(durante os quais h gerao de informao pela fonte, que opera na sua taxa de pico)
intercalados por perodos de inatividade (durante os quais a fonte no produz trfego algum).
Para se caracterizar uma fonte com trfego em rajadas no suficiente utilizarmos a taxa
mdia de gerao de informao, j que essa taxa no representa corretamente o seu

10
Em geral, os padres de comunicao utilizam a palavra contnuo para caracterizar sem interrupo e a taxas
constantes. Note, no entanto, que temos, alm do trfego em rajadas, o trfego sem interrupo mas com taxa
varivel. Em geral, os padres chamam apenas de trfego com taxa varivel (VBR) a ambos os trfegos (em
rajadas e contnuo com taxa varivel), independente de serem sem interrupo ou no.

33
comportamento. A taxa mdia nem sequer representa uma taxa na qual a fonte opera em
algum momento. Muito mais significativas so informaes sobre a distribuio das rajadas
ao longo do tempo, a durao das rajadas, e a taxa de pico atingida durante as rajadas. Alguns
parmetros comumente utilizados para caracterizao desse tipo de trfego incluem a durao
mdia dos perodos de atividade e a explosividade (burstiness) da fonte a razo entre a
taxa de pico e a taxa mdia de utilizao do canal.11

Por fim, as fontes de trfego contnuo com taxa varivel apresentam variaes na taxa de
transmisso ao longo do tempo. Parmetros como a mdia e a varincia da taxa de
transmisso podem ser utilizados para caracterizar o comportamento de fontes com essa
caracterstica. O parmetro de explosividade (burstiness) tambm bastante utilizado na
caracterizao dessas fontes.

Requisitos sobre a qualidade do servio de comunicao desejado (QoS), tais como retardo
mximo de transferncia, variao estatstica do retardo (jitter), vazo mdia, taxas aceitveis
de erro de bit e de pacote de dados, variam muito de uma mdia para outra, e so dependentes
da aplicao. De uma forma geral, podemos caracterizar as diversas mdias, quanto aos
requisitos de comunicao exigidos, como se segue nos prximos pargrafos.

6.1. Texto
O trfego gerado por informaes em texto , em sua grande maioria, de rajada. Para
compreender essa natureza do trfego, pense na comunicao de um terminal com um
computador durante a execuo interativa de um programa. A vazo mdia dos dados vai
depender muito da aplicao, variando desde alguns poucos bits por segundo para aplicaes
de correio eletrnico, at alguns megabits por segundo em transferncia de arquivos. Para
texto, excetuando-se algumas aplicaes em tempo real, como por exemplo para controle de
processos crticos, o retardo mximo de transferncia e a variao estatstica do retardo no se
constituem em problemas, sendo seus requisitos, em geral, facilmente satisfeitos pelo sistema
de comunicao. Quanto tolerncia a erros, na grande maioria das aplicaes, no se pode
tolerar erro nem em um nico bit: suponha, por exemplo, o caso da perda de um bit numa
transferncia eletrnica de fundos.

6.2. Imagem
O trfego gerado em aplicaes grficas animadas, onde vrios quadros so gerados em
intervalos regulares de tempo, tem caractersticas bem semelhantes s da mdia de vdeo,
comentadas mais frente. Excetuando o caso de imagens animadas, a natureza do trfego
gerado pela mdia grfica tambm de rajadas, com vazes mdias chegando a algumas
dezenas de megabits por segundo. Como em textos, o retardo mximo e a variao estatstica
do retardo, em geral, no so relevantes.

Como discutido na Seo 2 as imagens grficas podem estar no formato vetorial ou matricial.
Para imagens no formato matricial e sem compresso, a taxa de erro de bit pode ser bem
maior que a taxa de erro de pacote, uma vez que, em geral, no haver nenhum problema se,

11
Existem outras definies para a medida da explosividade da fonte: a razo entre o desvio padro e a taxa
mdia gerada, por exemplo.

34
por exemplo, um nico pixel de uma tela ficar azul em vez de verde. O mesmo no se pode
dizer da perda de um pacote, que poder, por exemplo, apagar um bloco da imagem na tela.
Para imagens no formato vetorial e imagens (vetoriais ou matriciais) onde foram utilizadas
tcnicas de compresso ou compactao, a tolerncia perda depende muito da aplicao e
seus usurios. Como discutimos na Seo 4.6, existem mtodos de compresso que
identificam a poro mais importante dos dados de uma imagem. Para esses dados, deve-se
evitar ao mximo as perdas. As pores menos importantes podem ser descartadas, se
necessrio (seja por erro na transmisso, por congestionamento no sistema de comunicao,
ou mesmo porque o usurio final no necessita delas para obter a informao que deseja). Um
sistema de comunicao deve poder identificar as pores que ele deve manter ntegras. Outro
caso importante, com relao s perdas, so as imagens que no so processadas somente pelo
olho humano, mas tambm pelo computador como, por exemplo, imagens mdicas ou
cartogrficas. Nesse caso, a perda de um nico bit (seja devido comunicao ou ao mtodo
de compresso) pode ser intolervel (imagine uma doena que se quer diagnosticar atravs de
uma imagem mdica).

6.3. udio
A mdia de udio tem caractersticas bem distintas das mencionadas nos dois pargrafos
anteriores, principalmente em aplicaes de tempo real com interatividade, como os servios
conversacionais do ITU-T. Comeando pela natureza do trfego gerado, a mdia de udio se
caracteriza por gerar um trfego contnuo com taxa constante. Mesmo quando no sinal de voz
realizada a compactao por deteco de silncio, por exemplo, passando a se caracterizar
agora como um trfego de rajada [Gruber 82], ele deve ser reproduzido no destino a uma taxa
constante. O trfego gerado para comunicao dessa mdia do tipo CBR, caso no seja
empregada nenhuma tcnica de compactao ou compresso. Em caso contrrio, o trfego se
caracteriza como VBR e, s vezes, como no caso da voz com deteco de silncio, como um
trfego em rajadas.

A vazo mdia gerada pela mdia de udio depende da qualidade do sinal, da codificao e
compactao ou compresso utilizadas. Para sinais de voz, por exemplo, j apresentamos a
tcnica PCM, que gera 64 Kbps se utilizarmos 8 bits para codificar cada amostra (tomada a
cada 125 seg, isto , 8.000 amostras por segundo). Com qualidade aproximadamente igual, a
codificao ADPCM gera 32 Kbps. Sinais de udio de alta qualidade (qualidade de CD
estreo, por exemplo) geram taxas bem superiores, como, por exemplo, os CDs de udio,
onde a taxa de 1,411 Mbps, como vimos na Seo 3.1.

Quanto s perdas, as taxas de erros de bits ou de pacotes podem ser relativamente altas,
devido ao alto grau de redundncia presente nos sinais de udio. O nico requisito que os
pacotes no sejam muito grandes (no caso da voz, menores que uma slaba), o que
normalmente j satisfeito para no se perder tempo no empacotamento e assim no
aumentar o retardo de transferncia. Perdas da ordem de 1% da informao de voz so
tolerveis12 [Gopal 84, Gruber 85]. Uma vez que as redes de alta velocidade utilizam, hoje em
dia, meios fsicos de alta confiabilidade (como fibra tica, por exemplo, onde a taxa de erro
tpica de 10-9 ou menos) a deteco de erros para a voz nessas redes pode ser tranqilamente

12
Na realidade, como j comentamos, a percentagem de perda depende do tamanho do surto de voz e se a perda
ocorre no incio ou no meio do surto.

35
dispensada, em benefcio de um maior desempenho. Apesar da baixa taxa de erros das redes
de fibra tica, nas mdias grfica e de texto a deteco de erros ainda , na maioria das vezes,
necessria, e em alguns casos at a deteco e correo. Um cuidado adicional deve ser
tomado quando, devido s tcnicas de compresso utilizadas no udio, um erro pode se
propagar para outros bits. Nesse caso, o erro pode ser intolervel. Ainda com respeito ao
udio, pores da informao podem ser diferenciadas quanto tolerncia s perdas. No caso
da voz, por exemplo, perdas nos intervalos de silncio so muito mais tolerveis do que
perdas durante os surtos de voz. Um sistema de comunicao deve poder identificar as
pores mais sensveis a perdas, caso seja necessrio o descarte de dados.

No caso da utilizao de sistemas de comunicao que apresentam variao estatstica do


retardo (como as redes comutadas por pacotes), tal variao deve ser compensada. Para
entendermos melhor o problema, analisemos a Figura 21.

Surto de Voz
Perodo de Silncio

1 2 3 4 5 6 7 8 9 10

TEMPO
ORIGEM

1 2 3 4 5 6 7 8 9 10

TEMPO
DESTINO

Silncio Introduzido Silncio Eliminado

Figura 21: Efeito da variao estatstica do retardo na comunicao de voz.

Na linha horizontal superior vemos os surtos de voz e de silncio sendo gerados na fonte a
uma taxa constante. Os surtos de voz so divididos em pacotes, que so as unidades que
transitaro no sistema de comunicao (os surtos de silncio no so transmitidos). Uma vez
que o pacote gerado, ele imediatamente entregue para transmisso (veremos a seguir que o
retardo mximo um requisito importante). Se os pacotes sofrerem retardos variveis,
chegaro ao destino no mais preservando a continuidade, conforme mostra a linha horizontal
inferior da figura, podendo gerar intervalos de silncio dentro de um surto de voz, ou
diminuir, e at mesmo eliminar, intervalos de silncio, o que pode causar a perda da
inteligibilidade da informao no destino. Alguma forma de compensao dessa variao
estatstica do retardo deve ser realizada.13 A estratgia utilizada pelos algoritmos de
compensao baseia-se fundamentalmente em assegurar uma reserva de pacotes antes de dar
incio ao processo de reproduo, introduzindo um retardo inicial a cada surto de voz.
Aparentemente o problema estaria resolvido se escolhssemos o retardo inicial bem grande,

13
Note que a variao estatstica do retardo no necessariamente introduzida s pela rede de comunicao, mas
por todo o sistema. Ela introduzida desde a interao da placa de udio com o sistema operacional da estao,
passando pelos protocolos de comunicao (sistema operacional de rede), at chegar ao sistema de transmisso.
No destino, o caminho semelhante, mas em ordem inversa, tambm pode introduzir aleatoriedade no retardo
antes da reproduo. Assim, embora muitas vezes o sistema de transmisso no introduza aleatoriedade no
retardo, a compensao ainda deve ser feita.

36
entretanto, o valor desse retardo est limitado pelo mximo retardo de transferncia (desde a
gerao at a reproduo) permitido para o sinal de voz, sem que haja perda da interatividade
da comunicao [Bastos 92]. As referncias [Soares 91, Bastos 92, Soares 92, Gopal 84,
Adams 85, e Faria 92] discutem com algum detalhe a anlise de desempenho de vrios
algoritmos para compensao da variao estatstica de retardo, com o objetivo de manter a
continuidade em sinais de voz. Embora apresentados para sinais de voz, os algoritmos podem
ser facilmente estendidos para qualquer sinal contnuo (com taxas constante ou varivel). O
Apndice C apresenta uma discusso resumida desses algoritmos.

O retardo de transferncia mximo crtico para o udio, principalmente no caso de


conversaes. Um dos motivos devido ao problema do eco [Handel 89], mas, mesmo nos
casos em que o eco no cause problemas, ou que canceladores de eco sejam utilizados, o
retardo de transferncia mximo pode ser crtico. Cada interlocutor, em uma conversao,
normalmente espera o fim do discurso do outro para dar incio sua fala; se o retardo de
transferncia for muito grande, a conversao comea a sentir um efeito de ruptura, podendo
at se tornar invivel (se o leitor j utilizou a rede telefnica via satlite, deve ter sentido esse
efeito). Um retardo de transferncia maior que 200 ms j comea a incomodar os
interlocutores [Bastos 92]. Os padres de telefonia estipulam 40 ms para distncias
continentais e 80 ms para distncias intercontinentais como limites para o retardo mximo de
transferncia. bom frisarmos novamente que os problemas de retardo s so crticos em
aplicaes que exigem comunicao interativa em tempo real. Nesse caso, como no podemos
introduzir um retardo inicial muito grande para compensarmos a variao estatstica do
retardo, a compensao s poder ser efetiva se a variao estatstica apresentada for pequena.

6.4. Vdeo
Tal qual a mdia de udio, a mdia de vdeo se caracteriza por gerar um trfego contnuo com
taxa constante. Da mesma forma que no udio, mesmo quando no sinal realizada alguma
tcnica de compactao ou compresso e o trfego gerado para comunicao se caracterizar
como um trfego com taxas variveis, o sinal deve ser reproduzido no destino a uma taxa
constante. Como na mdia de udio, o retardo de transferncia mximo tem grande
importncia, e a variao estatstica do retardo deve ser compensada. Normalmente, como o
vdeo vem acompanhado de (sincronizado com) udio, uma vez obedecidos os requisitos de
retardo desse, esto obedecidos os daquele.

A vazo mdia gerada por uma fonte de vdeo varia com a qualidade do sinal e os algoritmos
de codificao, compactao e compresso empregados, conforme discutido na Seo 4.8.

Em vdeo, a taxa de erro de bit pode ser maior que a taxa de erro de pacote, pelos mesmos
motivos explicitados para as imagens grficas no formato matricial. No entanto, no vdeo,
como a imagem no esttica e devem ser gerados vrios quadros por segundo, a taxa de erro
de pacote no to crtica. Mesmo a taxa de erro de bit tolervel maior do que aquela para
imagens estticas [Hehmann 90]. Na verdade, a discusso sobre a taxa de erro aceitvel no
to simples. Quando utilizamos tcnicas de compresso, um erro pode se propagar. Dessa
forma, alguns quadros, em que o erro no se propaga, podem tolerar erros de bits e de
pacotes. Naqueles em que o erro se propaga, s vezes at um nico erro de bit pode ser
intolervel. Tal qual nas imagens no formato matricial, quando se utiliza tcnicas de
compresso ou compactao, a tolerncia a perda depende muito da aplicao e seus usurios.
Como discutimos na Seo 4.8, existem mtodos de compresso que identificam a poro
mais importante dos dados de um vdeo. Para esses dados, deve-se evitar ao mximo as

37
perdas, as pores menos importantes podem ser descartadas, se necessrio (ou por erro na
transmisso, ou por congestionamento no sistema de comunicao, ou mesmo porque o
usurio final no necessita delas para obter a informao que deseja). Mais uma vez, um
sistema de comunicao deve poder identificar as pores em que ele deve minimizar as
perdas.

7. Consideraes Finais
As referncias [Hehmann 90, Gruber 82, Soares 92] apresentam vrias caractersticas das
diversas mdias para diferentes aplicaes e tcnicas de compresso e compactao utilizadas.

O que vimos na Seo 6 foi um grande nmero de combinaes de caractersticas e requisitos


que um sistema de comunicao e processamento devem satisfazer de forma a tornar
possveis as aplicaes multimdia. Naquela seo, foram mostrados apenas alguns requisitos,
sem contudo se fazer meno s diferenas no que concerne ao gerenciamento de buffers,
controle de fluxo, gerenciamento de conexes. No foram sequer mencionadas as direes
para a otimizao de compromissos no atendimento dos vrios requisitos de diferentes
aplicaes. Pelo exposto, fica claro que um desafio para a construo de qualquer sistema de
comunicao e processamento fornecer mecanismos para oferecer o suporte a essas diversas
caractersticas de trfego. Esses mecanismos devem permitir negociar a qualidade de servio
desejada (QoS), isto :

O mximo retardo de transferncia;

A variao mxima de retardo para o atendimento dos requisitos de especificao de


udio e vdeo;

Os mecanismos para compensao da variao estatstica do retardo;

O valor da vazo necessria para a abertura de uma comunicao.

As taxas de erros de bit e pacote tolerveis (separadamente negociadas);

A especificao de qual estratgia a ser adotada, para todos os tipos de erro: deteco,
deteco e correo, ou nada;

Os mecanismos para controle do fluxo de dados e congestionamento do sistema de


comunicao.

As condies para o fechamento de uma comunicao, caso no seja possvel atender


aos requisitos.

Referncias
[Adams 85] Adam, C. e Ades, S. Voice Experiments in the UNIVERSE Project.
Proceedings of International Conference on Communications. 29.4.1 -
29.4.9, 1985.

[Bastos 92] Bastos, T.L.P. e Soares, L.F.G. Anlise de Algoritmos para Reproduo
em Tempo Real de Voz em Redes de Pacotes. Relatrio Tcnico IBM
CCR-141, Rio de Janeiro. Janeiro, 1992.

38
[Cormen 02] Cormen, T.H.;Leiserson, C.E.; Rivest, R.L.; Stein, C. Algoritmos.
Traduo da 2 edio americana Teoria e Prtica. 2002.

[Faria 92] Faria, A.L.A. Implementao do Mecanismo de Controle de Acesso por


Deteco de Silncio em um Sistema de Teleconferncia. Dissertao de
Mestrado, Depto. de Engenharia Eltrica, PUC-Rio. Maro, 1992.

[Gopal 84] Gopal, P.M., Wong, J.W. e Majithia, J.C. Analysis of Playout Strategies
for Voice Transmission Using Packet Switching Techniques.
Performance Evaluation, n.4. Fevereiro, 1984

[Gruber 82] Gruber, J.G. A Comparison of Measure and Calculated Speech Temporal
Parameters Relevant to Speech Activity Detection. IEEE Transactions on
Communications, vol. com-30, n.4. Abril, 1982.

[Gruber 85] Gruber, J.G. Subjective Effects of Variable Delay and Speech Loss in
Dinamically Managed Voice Systems. IEEE Transactions on
Communications, vol. com-33. Agosto, 1985.

[Handel 89] Handel, R. Evolution of ISDN Towards Broadband ISDN. IEEE


Network Magazine, pg 7-13. Maro, 1989.

[Hehmann 90] Hehmann, D. B., M.G. Salmony, and H.J. Stuttgen. Transport services for
multimedia applications on broadband networks. Computer
Communications Vol 13 No. 4, 1990, Pages 197-203.

[ISO 93a] ISO/IEC. Coding of Moving Pictures and Associated Audio for Digital
Storage Media at up to about 1.5 Mbit/s - Part 3: Audio. ISO/IEC 11172-
3. 1993.

[ISO 93b] ISO/IEC. Information Technology-Coding of Moving Pictures and


Associated Audio for Digital Storage Media at up to about 1.5 Mbit/s -
Part 1: Systems. ISO/IEC 11172-1. 1993.

[ISO 93c] ISO/IEC. Information Technology-Coding of Moving Pictures and


Associated Audio for Digital Storage Media at up to about 1.5 Mbit/s -
Part 2: Video. ISO/IEC 11172-2. 1993.

[ISO 94] ITU-T Recommendation T.81. Joint Photographic Experts Group, 1993.

[ISO 98] ISO/IEC. Information technology - Generic coding of moving pictures


associated audio information: Audio. ISO/IEC 13818-3. 1998.

[ISO 00a] ISO/IEC. Information technology - Generic coding of moving pictures


and associated audio information: Video. ISO/IEC 13818-2. 2000

[ISO 00b] ISO/IEC. Information technology - Generic coding of moving pictures


and associated audio information: Systems. ISO/IEC 13818-1. 2000

[ISO 01a] ISO/IEC. Coding of Audio-Visual Objects Part 2: Video. ISO/IEC


14496-2. 2 Edition. 2001.

39
[ISO 01b] ISO/IEC. Coding of Audio-Visual Objects Part 1: Systems. ISO/IEC
14496-1. 2 Edition. 2001.

[ITU-R BT.601-4] ITU-R. Encoding parameters of digital television for studios. ITU-R
BT.601-4. 1994.

[ITU-T G.711] ITU-T. Pulse Code Modulation (PCM) of Voice Frequencies. ITU-T
G.711. 1988.

[ITU-G.722] ITU-T. 7 kHz Audio-Coding Within 64 kbit/s. ITU-G.722. 1988.

[ITU-T G.723] ITU-T. Speech Coders Dual Rate Speech Coder for Multimedia
Communications Transmitting at 5.3 and 6.3 kbit/s. ITU-T G.723. 1996.

[ITU-T G.726] ITU-T. 40, 32, 24, 16 kbit/s Adaptive Differential Pulse Code Modulation
(ADPCM). ITU-T G.726. 1990.

[ITU-T G.729] ITU-T. Coding of speech at 8 kbit/s using conjugate-structure algebraic-


code-excited linear-prediction (CSACELP). ITU-T G.729. 1996.

[ITU-T H.261] ITU-T. Video Codec for Audiovisual Services at p x 64 kbit/s. ITU-T
H.261. 1993.

[ITU-T H.263] ITU-T. Video Coding for Low Bit Rate Communication. ITU-T H.263.
2005.

[Netravali 95] Netravali, A.N.; Haskell, B.G. Digital Pictures: Representation,


Compression and Standards. Springer. 1995

[Soares 91] Soares, L.F.G., Martins, S.L. e Bastos, T.L.P. Um Algoritmo para
Compensao da Variao Estatstica do Retardo em Redes Comutadas
por Pacotes. Anais do 8 Simpsio Brasileiro de Redes de Computadores.
1991.

[Soares 92] Soares, L.F.G. e Bastos, T.L.P. Anlise de Algoritmos para Reproduo
em Tempo Real de Voz em Redes de Pacotes. Anais do 10 Simpsio
Brasileiro de Redes de Computadores, Recife. 1992.

40

Você também pode gostar