Universidade Federal de São Carlos
Programa de Pós-Graduação
Estruturas de Aplicações Distribuídas e Multimídia
MPEG
Jessica Zorzatto
MPEG

Padrão para compressão de Vídeo e Áudio

Possui três partes:



MPEG-Vídeo;
MPEG-Áudio;
MPEG-Systems
MPEG- Vídeo

Dois tipos de compressão:

A primeira é baseada nas cores, o algoritmo procura por
agrupamentos de pixels com a mesma cor e os substitui
por um único código

Compacta os vídeos numa razão de mais ou menos 1/3.

A segunda etapa da compressão dividide em pequenos
blocos de 16 x 16 pixels cada um, chamados de macro
blocks. Ao invés de simplesmente atualizar toda a imagem
a cada quadro, são mudados apenas os blocos que foram
alterados de forma perceptível entre um quadro e outro.
MPEG – Vídeo : exemplo
•Usando vídeo sem compressão, cada quadro seria uma nova imagem.
•Com o MPEG, são capturadas apenas as diferenças entre os quadros.
• Mesmo em cenas com movimentação rápida é raro serem alterados mais do que 20 ou
30% dos macro blocks a cada quadro da imagem.
MPEG - Áudio

Aproveita das características do sistema auditivo
humano;

Os nossos ouvidos não são capazes de captar todos
estes sons simultaneamente porque alguns dos sons
estão escondidos pelos sons mais fortes. Isto também
porque os nossos ouvidos são mais sensíveis aos
sons mais graves do que aos sons mais agudos.

Remoção de partes não audíveis
MPEG – Áudio





Os sons mascarados não são audíveis, portanto, é
possível descartá-los sem afetar a qualidade do
áudio.
Padrão genérico de compressão de áudio
Remove partes não audíveis, as quais não geram
distorção no áudio
Possui os algoritmos MPEG layer 1, 2 e 3.
A complexidade aumenta conforme aumenta a “layer
MPEG - Áudio

Para se efetuar compressão de áudio basicamente
existem duas alternativas:



reduzir a freqüência de amostragem
reduzir a resolução da amostra para uma valor inferior
Para obtermos qualidade não podemos fazer grandes
alterações na freqüência de amostragem, pois o
sistema auditivo humano só houve sons entre 20Hz e
os 20KHz
MPEG - Áudio

efeito de máscara e é a chave para o método de codificação
utilizado no MPEG Áudio.

nenhum som mais fraco perto do som mais forte (à freqüência
de 1000Hz) será ouvido pois serão todos mascarados

o efeito de máscara permite aumentar o ruído de fundo à volta
de um som forte porque o ruído será mascarado de qualquer
forma. Aumentar o ruído de fundo, é o mesmo que reduzir o
número de bits utilizados por amostra. Usar menos bits
significa comprimir.
MPEG




MPEG1, que corresponde à codificação de imagem em
movimento e respectivos canais de áudio para
armazenamento em suportes digitais.
MPEG2, que corresponde a codificação genérica para
imagens em movimento e informação áudio associada.
MPEG3, originalmente planeado para aplicações HDTV, mas
mais tarde incluído no MPEG2.
MPEG4, que corresponde à codificação de Objetos
audiovisuais.
MPEG1

A idéia principal:


uma aplicação usando MPEG1 pode usar a layer que
oferece o melhor compromisso entre a necessidade de
computação e a performance de compressão.
O áudio pode ser codificado em qualquer uma das
layer’s.
MPEG1

MPEG1 providencia um esquema de compressão para fontes de áudio
stereo e mono com qualidade semelhante a CD Áudio. A parte do
algoritmo correspondente ao áudio está dividida em três níveis (layers).

Layer I:





Layer II:



mais simples,
menor compressão,
usada nos sistemas de áudio de consumo,
baixo custo de implementação.
maior compressão
encontra-se em numerosas aplicações de consumo e profissionais.
Layer III:



encontrada sobre RDIS ( Rede Digital Integrada de Serviços),
oferece a maior compressão,
maior custo de uma maior complexidade de codificação e decodificação.
MPEG1

Codificar VHS-quality vídeo:



360 x 280 pixels
30 pinturas por segundo
Taxa de 1.5 Mbps
MPEG1 – Pré processamento

Vídeos interlaçados devem ser convertidos para não
interlaçados

Cada pintura consiste em 3 componentes:



Um de luminância Y
Dois de cromonância, Cr e Cb
Converter vídeo para o formato YCrCb (formato
digital da TV – CCIR601)



Y= 0.301R + 0.586G + 0.113B
Cr = 0.512R - 0.430G – 0.082B + 128
Cb = -0.172R – 0.340G + 0.512B + 128
MPEG1- Tipos de pinturas:

I - pictures:




Codicados sem referência de outras pinturas.
Ponto de referência para outras pinturas
Compressão moderada
P - pictures:


codicados em modo preditivo
Motion-compensated prediction : usa quadros
anteriores do tipo I ou P.
MPEG1- Tipos de pinturas:

B - pictures:



quadros codicados em modo bidirecionalmente preditivo,
em relação a outros quadros I ou P.
Mais alto grau de compressão
D – pictures:



quadros codicados unicamente com o DC de cada bloco.
Sem referência de outras pinturas
São (raramente) utilizados essencialmente para procura
rápida.
MPEG1- Tipos de pinturas:

Reference pictures:


I-pictures e P-pictures
Predictive-codec pictures:

P-pictures e B-pictures
MPEG1- Tipos de pinturas:

Se B-pictures são usada é necessário uma
reordem na seqüência das pinturas


Encoder orderna as pinturas
Decoder decodifica as pinturas na ordem que elas
chegam e reorganiza na ordem correta a qual a
seqüência que deverá ser exibida.
MPEG1 - Delay

B-pictures causam delay tanto no encoder
quanto no decoder



Encoder: B-picture só poderá ser codificada após
a pintura de referência ter sido;
Decoder: Pintura de referência é decodificada
mas não é exibida
Não devem ser utilizadas em aplicações de
tempo real
MPEG1 – Exemplo:
1(I)
2(B)
4(P)
3(B)
5(B)
6(B)
7(P)
8(B)
10(I)
9(B)
MPEG1 – Exemplo:
P r e d iç ã o P ro g re s s iv a
I
B
B
P
B
B
P
B
B
I
P r e d iç ã o B id ir e c io n a l
O rd e m d e A p r e s e n ta ç ã o :
O rd e m d e T r a n s m is s ã o :
1
1
2
4
3
2
4
3
5
7
6
5
7
6
8
10
9
8
10
9
MPEG1 – Unidades de codificação

Pinturas:



Macroblocos de 16 x 16 pixels
Codificados da esquerda pra direita , de cima pra
baixo
Cada macrobloco:


6 blocos de 8 x 8 pixels
4 blocos de luminância, um bloco Cb de crominância
e um bloco Cr de crominância
MPEG1 – Unidades de codificação

Macrobloco:


Motion compensation
Bloco:

Operação DCT
MPEG1 - Macroblocos

Modo de codificação:

I-macroblocos:


FP-macroblocos:


Referência de macroblocos de pinturas anteriores
BP-macroblocos


Sem referência de macroblocos de outra pinturas
Referência de macroblocos de pinturas futuras
B-macroblocos

Referência de macroblocos de pinturas anteriores e
futuras
MPEG1 - Macroblocos

Para BP-, FP-, e B- macroblocos, é
encontrado Motion compensated-prediction
baseado na referência das pinturas.

A predição é subtraída do dado atual para formar
o macrobloco de predição de erro.
MPEG1 - Macroblocos

I – macroblocos e macroblocos de predição de
erros são divididos em blocos de 8 x 8 pixels,
e a transformação discreta de cosseno (DCT)
é feita sobre cada bloco.

Os coeficientes do DCT são quantatizados e
bloco bidimensional é scaneado em ordem zigzag para converter em uma string unidimensional
MPEG1 - Macroblocos

Informações dos macroblocos e coeficientes
de quantização são codificados

Nesse estágio a representação da pintura
codificada é gerada.
MPEG1– Video Bitsstream Specification

Seqüêcia:


constituída por vários grupos de quadros. Contém um cabeçalho de informação que
inicializa o decodificador.
Grupo de Pinturas:

formado por vários quadros que, por sua vez, são constituídos por slices (fatias).

Pintura: representa uma imagem;

Slice(fatia):



Macrobloco:


formadas por macro-blocos, sendo a sua função principal a detecção e recuperação de erros
(re-sincronização).
Menor unidade que pode ser decodificada independentemente.
contendo informação relativa a compensação de movimento e quanticação.
Bloco:

menor unidade que pode ser manipulada e sobre a qual é calculada a DCT.
MPEG – Video Bitsstream Specification
MPEG1 – Paramêtros

Parâmetros podem ser configurados livremente

Existem algumas limitações:







Tamanho Horizontal: Máximo de 720 pixels
Tamanho Vertical: Máximo de 576 pixels
Número máximo de macro-blocos por quadro: 396
Número máximo de macro-blocos por segundo: 396 x 25
ou 330 x 30
Taxa máxima de transmissão: 1.85 Mbps
Taxa de Pintura: Máximo de 30
Tamanho maximo do buffer do decoder: 330 Kbits
MPEG1 - Systems

Sincronização entre codificador/decodificador

Multiplexação de múltiplos bitstreams de
áudio e vídeo codificados

Especifica a sintática e a semântica da stream
MPEG
MPEG1- Systems

Organizada em duas camadas:

pack layer: contém informações sobre todas as
streams

packet layer: contém informações sobre uma
stream particular
MPEG1 - Systems
Fluxo de Dados ISO11172
Pack
Cab. de Pack
Pack
Pack
Cab. de Sistema Pacote Pacote
Cabeçalho de Pacote
Byte Byte Byte Byte Byte
ISO_FIM
Pacote
Byte
MPEG2

Baseado nos princípios do MPEG1 e estende esses princípios por
forma a permitir maior qualidade e ainda maior eficiência.

O objetivo principal do MPEG2:


providenciar um standard para satisfazer os requisitos das redes digitais de
radiodifusão planeadas.
Além dos dois canais que o MPEG1 suportava, foi adicionado:

suporte para múltiplos canais.



suporta até cinco canais áudio (esquerdo, direito, centro e dois canais de surround ou "circundantes")
mais um canal de graves, ou em extensão sete canais mais um canal de graves. Significa isto que
poderemos em casa ter a mesma experiência que em algumas salas de cinema.
Característica "multilíngue", o que significa que um filme pode ser
transmitido em diferentes linguagens, podendo esta ser escolhida
posteriormente.
MPEG2 - Aplicações





Transmissão digital dos formatos atuais de
televisão (PAL, SECAM, NTSC).
Televisão de alta definição (HDTV).
Cinema eletrônico.
Jogos e aplicações multimídia de elevada
qualidade.
...
MPEG1 e MPEG2
MPEG2

É dividido em 4 partes:




Systems
Vídeo
Áudio
Conformance
MPEG2 - Systems




Mesma função do MPEG1-Systems
Multiplexação entre áudio, vídeo e dados
Sincronização entre decodificação e play-back
2 formatos de datastream:

Program Stream:



Aplicações de recuperação mutimídia
Sistemas de processamento de software
Transport Stream:



Carrega múltiplos programas simultaneamente
Comum em aplicações com comum perda de dados
Transmissão de televisão digital e videofone
MPEG2 - Vídeo



Suporta vídeo interlaçado ou não-interlaçado
Permite pintura de 16.383 x 16.383 pixels
Provê característica do vídeo (PAL e NTSC)


Facilita operações de processamento
4 modos de escalonamento de vídeo


Vídeos importantes possuem escalonamento mais alto para proteção
de erros
Permite ao decoder selecionar a parte do vídeo a decodificar

Basicamente, esta propriedade permite que seqüências
preparadas para alta definição possam ser reproduzidas, sem
processamento adicional, em dispositivos de capacidade mais
reduzida
MPEG2 - Vídeo

Existem várias formas de escalonamento:


Espacial: Codifica uma camada base com uma resolução mais baixa
Data partitioning: Método de domínio de freqüência.




SNR: Método de domínio espacial


Camadas codificadas na mesma taxa mas com diferente qualidade de
pintura
Temporal: Método de domínio temporal



Quebra o bloco de 64 coeficientes em 2 bitstreams
Canal de prioridade mais alta contém os coeficientes de freqüências
mais baixas
Canal de prioridade mais baixa contém os coeficientes de freqüências
mais altas
Camada de prioridade mais alta codifica o vídeo numa taxa de frame
mais baixa
Frames intemediários podem ser codificados numa segunda camada
usando a reconstrução da primeira
Híbrido: Constituído por combinações dos anteriores.
MPEG2 - Vídeo

Profiles:


Definem subconjuntos da sintaxe global que implicam
níveis da complexidade diferentes nos algoritmos de
codificação e decodificação – os modos escaláveis
correspondem a diferentes profiles
Levels:

Definem restrições de alguns parâmetros dos bitstreams –
um determinado Level corresponde a determinados
valores máximos de resolução espacial, temporal e bit rate
MPEG2 - Vídeo
MPEG2 - Vídeo
MPEG2 - Áudio

Extensão do MPEG1 – áudio:

Áudio multicanal


Áudio multilíngua


5 canais de áudio de alta qualidade
7 canais
Taxa de compressão mais baixa

Bit rates abaixo de 8 Kbps
MPEG4

Primeira versão estava disponível no final de
1998.

Novo padrão para broadcasting, movies e
aplicações multimídia baseadas em MPEG 2.
MPEG7


O grupo MPEG-7 tem como nome formal
"Interface de Descrição do Conteúdo
Multimídia" [5]
Especificará um conjunto padrão de
descritores e esquemas de descrição usados
para especificar o conteúdo da informação,
com a finalidade de tornar a busca da
informação multimídia mais rápida e
eficiente.
MPEG7


Projetado para fazer busca de vídeo e áudio
bem como filtrar tais buscas.
Padrão focado principalmente em sobrecargas
de informação, que os usuários “rodam” na
Internet e é projetado par fazer busca de
conteúdos de áudio e video tão facilmente
como busca texto.
MPEG - MP3





Extensão utilizada para os ficheiros MPEG Áudio
Layer III.
Taxa de compressão até 12:1
Reproduz sons com qualidade de CD.
Usa compressão psychoacústica a qual remove do
sinal sonoro sons que os nossos ouvidos não
conseguem ouvir.
Filtros híbridos, quantização não-uniforme,
codificação Huffman e outras técnicas avançadas.
Download

Slide 1 - Universidade Federal de São Carlos