MPEG
Jessica Zorzatto
Universidade Federal de São CarlosPrograma de Pós-Graduação
Estruturas de Aplicações Distribuídas e Multimídia
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:
mais simples, menor compressão, usada nos sistemas de áudio de consumo, baixo custo de implementação.
Layer II: 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) 7(P) 10(I)4(P)
3(B)
5(B) 6(B)
8(B) 9(B)2(B)
MPEG1 – Exemplo:
I B B B B B B P P
1 2 3 4 5 6 7 8 9 10
I
1 3 4 2 6 7 5 9 10 8
O rd e m d e A p re se n ta ç ã o :
O rd e m d e T ra n sm issã o :
P re d iç ã o P ro g re ss iv a
P re d iç ã o B id ire c io n a l
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: Sem referência de macroblocos de outra pinturas
FP-macroblocos: Referência de macroblocos de pinturas anteriores
BP-macroblocos 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 zig-zag 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): 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.
Macrobloco: 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 Pack Pack ISO_FIM
Cab. de Pack Cab. de Sistema Pacote PacotePacote
Cabeçalho de Pacote Byte ByteByteByteByte 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.
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 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 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 5 canais de áudio de alta qualidade
Áudio multilíngua 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.