Buscar

Fundamentos de Sistemas Multimídia MPEG-4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEG-Systems
Profa. Débora Christina Muchaluat Saade
debora@midiacom.uff.br
MPEGMPEG--SystemsSystems
Profa. Débora Christina Muchaluat Saade
debora@midiacom.uff.br
Departamento de Engenharia de TelecomunicaDepartamento de Engenharia de Telecomunicaçções ões -- UFFUFF
2
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--1 1 SystemsSystems
3
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--2 Systems2 Systems
� 2 tipos de fluxos de transporte:
• SPTS – Single Program Transport Stream
– Vários fluxos elementares (video, áudio diferentes e dados) 
compartilhando uma base de tempo comum. 
• Ex.: um filme transmitido em vários idiomas
• MPTS – Multiple Program Transport Stream
4
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--2 Systems2 Systems
5
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--2 TS2 TS
� Serviços descritos através de um conjunto de 
tabelas (PSI – Program Specific Information)
• PAT – Program Association Table
• PMT – Program Map Table
6
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
TabelasTabelas do MPEGdo MPEG--2 TS2 TS
� Cada pacote MPEG-2 TS indica
• PID – Program Identification
• Carrega seções (com informações das tabelas) ou 
PES (fluxos elementares empacotados)
7
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
ExemploExemplo de MPEG TSde MPEG TS
8
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEG-4
Profa. Débora Christina Muchaluat Saade
deborams@telecom.uff.br
MPEGMPEG--44
Profa. Débora Christina Muchaluat Saade
deborams@telecom.uff.br
Departamento de Engenharia de TelecomunicaDepartamento de Engenharia de Telecomunicaçções ões -- UFFUFF
9
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MultimMultimíídia para Qualquer Plataformadia para Qualquer Plataforma
10
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--44
� Objetos de mídia podem ser de origem natural ou 
sintética
• Áudio (voz ou música), vídeo, objetos 2D e 3D
� Composições de objetos formam cenas 
audiovisuais
� Interatividade com o usuário
� Transmissão sobre qualquer tipo de rede
11
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--44
� Composição de cenas
• Definida como:
– Background
– 1 ou mais objetos audiovisuais
• AVO – audio-visual object
• podem ser compostos de vários objetos de mídia
individuais
– Ex.: objeto pessoa = vídeo + áudio
12
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Cenas MPEGCenas MPEG--44
13
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Cenas MPEGCenas MPEG--44
14
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Cena MPEGCena MPEG--44
15
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
BIFSBIFS
� BInary Format for Scenes
• Linguagem binária usada para descrição de cenas
• Derivada da VRML (Virtual Reality Modeling
Language) – padrão ISO
16
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
DescriDescriçção das Cenasão das Cenas
� BIFS – linguagem binária
� eXtensible MPEG-4 Textual format (XMT)
• Integração dos objetos de mídia nas cenas
• Sintaxe textual
• Baseada em XML
• Interoperabilidade com outros padrões: X3D e SMIL
17
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
InteroperabilidadeInteroperabilidade
� eXtensible MPEG-4 Textual format (XMT)
X M T
M P E G - 4
R e p r e s e n t a t i o n
( e . g . m p 4 )
S M I L
M P E G - 7
S V G
P a r s e
C o m p i l e
S M I L P l a y e r
V R M L
B r o w s e r
M P E G - 4
P l a y e rX 3 D
18
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
XMTXMT
� XMT oferece dois níveis de sintaxe e semântica:
• XMT-ΩΩΩΩ
– autoria de alto nível
– Compatível com SMIL
• XMT-A
– mesmo nível de abstração do BIFS de forma 
textual
– Compatível com X3D
19
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
XMTXMT
20
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--44
� Cada objeto tem um descritor
• Object descriptor
– Fornece as informações sobre o objeto (tipo de codificação, ...)
� Fluxo MPEG4 possui vários fluxos elementares:
• Fluxos de mídia
– Cada objeto tem os seus fluxos (1 ou mais)
• Fluxos de controle
– Descrição em BIFS
– Descritores de objetos
21
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
IntegraIntegraçção entre os fluxos elementaresão entre os fluxos elementares
22
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--4 4 SystemsSystems
� Fluxo MPEG-4 é transportado na rede como um fluxo de 
transporte (transport stream - TS)
• Consistindo de um fluxo multiplexando vários fluxos
elementares empacotados (packetized elementary streams -
PES)
� A informação de cada objeto audiovisual é chamada de 
fluxo elementar (elementary stream - ES)
• Carregada no payload de um pacote PES
� Descritores – elementary stream descriptor – ESD – são
usados pela camada de sincronização para entregar o 
fluxo elementar ao decodificador apropriado.
23
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Fluxos MPEGFluxos MPEG--44
24
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--4 4 SystemsSystems/DMIF/DMIF
DMIF – Delivery Multimedia Integration Framework
25
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Receptor MPEGReceptor MPEG--44
34
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
MPEGMPEG--4 V4 Víídeodeo
� Dois padrões para codificação de vídeo MPEG-4
• MPEG-4 Parte 2 – 1994 a 1999
• MPEG-4/H.264 Parte 10 – 1999 a 2005
– Marpe, Wiegand, Sullivan. The H.264/MPEG4 Advanced Video 
Coding Standard and its Applications, IEEE Communications 
Magazine, Agosto de 2006.
– Wiegand, Sullivan, Bjontegaard, Luthra. Overview of the H.264 
Video Coding Standard, IEEE Transactions of Circuits and 
Systems for Video Technology, Vol.13, No.7, Julho de 2003.
– Richardson. H.264 and MPEG-4 Video Compression – Video 
Coding for Next-generation Multimedia, John Wiley & Sons 
Inc., 2003.
35
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 Parte 104 Parte 10
� AVC – Advanced Video Coding
� Padrão mais recente para codificação de vídeo
� Esforço conjunto do grupos:
• ITU-T Video Coding Experts Group (VCEG)
• ISO/IEC Moving Pictures Expert Group (MPEG)
� Padrão inicial e conjunto de extensões FRExt
(fideliy range extensions) - 2005
36
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Principais novidades na codificação de vídeo em relação 
a padrões anteriores considerando estimativa e 
compensação de movimento:
• Mais flexibilidade no tamanho do bloco para realizar
compensação de movimento variando de 16x16 a 4x4
• Possibilidade de uso de um quarto de pixel (quarter sample) 
para realizar a compensação de movimento
• Vetores de movimento podem ultrapassar os limites de um 
quadro (como no H.263)
• Compensação de movimento usando múltiplos quadros de 
referência (para P e B)
37
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Principais novidades na codificação de vídeo em relação 
a padrões anteriores considerando estimativa e 
compensação de movimento:
• Desacoplamento da ordem de referência da ordem de 
apresentação
• Possibilidade de uso de quadros B como referência para
codificação de outros quadros
• Predição de quadros de maneira ponderada pelo codificador
(cenas com fades)
• Filtragem anti-bloco (deblocking filtering) – evita efeitos de 
visualização da imagem em blocos (blocking artifacts)
38
Fundamentos de SistemasMultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Principais novidades adicionais na codificação de 
vídeo em relação a padrões anteriores que 
ajudam a aumentar a eficiência na codificação: 
• Menor tamanho de bloco para aplicação da
transformada (8x8 ou 4x4)
• Transformada hieráquica
• Transformada com palavras de tamanho pequeno –
padrões anteriores usavam processamento de 32 
bits, H.264/AVC usa aritmética de 16 bits
39
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Principais novidades adicionais na codificação de vídeo 
em relação a padrões anteriores que ajudam a aumentar 
a eficiência na codificação: 
• Transformada inversa exata, permitindo obter a mesma
qualidade de decodificação em todos os decodificadores
• Codificação por entropia usando codificação aritmética
(CABAC – context-adaptive binary arithmetic coding)
• Codificação por entropia adaptativa ao contexto: ambos os
métodos CAVLC e CABAC utilizam codificação adaptativa
ao contexto para melhorar o desempenho do codificador
41
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Estrutura do codificador de vídeo H.264/AVC
42
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� NAL (Network abstraction layer)
� Conceitos principais
• Unidades NAL
– pacote que contém um número inteiro de bytes
– formato genérico para uso em redes orientadas a pacotes ou 
fluxo de bytes
– Um fluxo de unidades NAL pode conter uma ou mais 
seqüências de vídeo codificadas (GOP)
• 2 formatos para unidades NAL
– Fluxo de bytes
– Fluxo de pacotes
43
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� NAL (Network abstraction layer)
� Conceitos principais
• Formato para fluxo de bytes
– Unidade NAL começa com um código de início (start code de 3 bytes)
– Um byte por quadro de vídeo é necessário para permitir alinhamento
• Formato para transporte de pacotes 
– Unidades NAL são transportadas em pacotes (sem start code)
• Conjuntos de parâmetros
– Non-VCL NALs: usadas para troca de parâmetros entre codificador e 
decodidifcador
• Unidades de acesso
– Um conjunto de unidades NAL de formato específico representa uma 
unidade de acesso, cuja decodificação resulta em um quadro do vídeo
44
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Troca de conjuntos de parâmetros
45
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
Estrutura de Unidade de AcessoEstrutura de Unidade de Acesso
� SEI – supplemental enhancement
information
• Informação de temporização
� Quadro dividido em fatias (slices)
� Informações redundantes opcionais 
para recuperação de perdas
• Decodificadores não são obrigados a 
decodificar essas informações
� Se for o último quadro da seqüência 
(end of sequence)
� Se for o último quadro do fluxo de 
unidades NAL (end of stream)
46
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� VCL (Video Coding Layer)
� Seqüência de vídeo codificada
• Quadros codificados
– Quadro inteiro
• Quadro progressivo
– ½ quadro (campo)
• Quadro entrelaçado
47
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Representação de cor YCrCb
� Formato mais comum 
• 4:2:0 e 8 bits por componente
� Pode chegar a 
• 4:2:2 com 10 bits por componente
� Cada quadro é dividido em macroblocos de
• 16x16 para Y 
• 8x8 para Cr e Cb
48
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� FMO – Flexible macroblock ordering
• Conceito de grupos de fatias
– Existe um mapa relacionando macroblocos com grupo de fatias
• Cada macrobloco contém um número de identificação de grupo de 
fatias
� ASO – Arbitrary Slice Ordering
• slices podem ser enviados em qualquer ordem
Sem FMO Com FMO (ex.: ROI e videoconferência)
49
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Tipos de quadros:
• Quadros I
– Todos os macroblocos em uma fatia (slice) podem ser 
preditos (codificação diferencial) por dados 
previamente codificados
– Até em quadros I, amostras são preditas por outras na
fatia corrente que já foram codificadas
– Macroblocos podem variar de 16x16 a 4x4
50
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Predição de macroblocos I
51
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Tipos de quadros:
• Compensação de Movimento
– Quadros P
• suportam múltiplos quadros de referência
– Quadros B
• suportam múltiplos quadros de referência
• Também podem ser usados como quadros de referência
• Diferença principal entre quadros P e B é que macroblocos
de quadros B podem usar média ponderada de macroblocos
de 2 listas distintas de quadros para calcular estimativa e 
compensação de movimento bidirecional
52
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
�Múltiplos quadros de referência para fazer 
compensação e estimativa de movimento
53
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Predição Inter-quadro
• Vários tipos de macroblocos para realizar
compensação e estimativa de movimento
– 16x16, 16x8, 8x16, 8x8
• Se partição 8x8 foi escolhida, ela pode ser 
particionada novamente em 8x4, 4x8 e 4x4
54
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Compensação de movimento (Y) 
• precisão de ¼ de pixel
• ¼ pixel é calculado com a média do pixel e ½ pixel
½ pixel
b = round ((E – 5F + 20G + 20H – 5I +J) / 32)
¼ pixel
a = round((G + b) / 2)
55
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Tipos de quadros:
• SI (switching I) e SP 
(switching P) permitem
– troca eficiente entre
fluxos de vídeo
• por exemplo, o 
mesmo vídeo
codificado em
diferentes taxas
– acesso aleatório
eficiente para
decodificadores
56
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Transformadas e Quantização
• Ao invés de usar a DCT em blocos 8x8, como nos
outros padrões
• MPEG-4/H.264 usa transformadas inteiras de 
diferentes tamanhos de blocos (4x4)
• Transformada de Hadamard adicional é aplicada
aos coeficientes DC das componentes de 
crominância (2x2)
57
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Codificação por Entropia
• Exponential Golomb Codes
– valores de parâmetros que são mais freqüentes usam palavras-
código de menor tamanho (ex. Macrobloco tipo P 16x16 –
code_num=0)
Formato: 
[M zeros][1][INFO] 
onde INFO tem M bits
M = floor(log2[cod_num + 1])
INFO = code_num + 1 – 2M
Decodificação:
1.Leia M zeros seguidos de 1
2.Leia o campo INFO de M bits
3. code_num = 2M + INFO - 1
58
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Codificação por Entropia
• Para transmitir os coeficientes das transformadas
quantizados:
– CAVLC – Context-Adaptive Variable Length Coding
– CABAC – Context-Adaptive Binary Arithmetic 
Coding
• CABAC fornece uma redução típica de 10% a 20% 
em relação ao CAVLC
59
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� In-loop deblocking filter (filtragem anti-bloco)
• Idéia básica: identificar “blocking artifact”
– se existe diferença absoluta grande entre amostras
próximas ao limite de um bloco => efeito em blocos
• Filtro suaviza a diferença
sem filtro com filtro
60
Fundamentos de Sistemas MultimFundamentosde Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Atualmente são 6 perfis distintos:
• Versão 1:
– Baseline
– Main 
– Extended
• FRExt (versão 3)
– High
– High 10
– High 4:2:2
61
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Perfis
62
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
H.264/MPEGH.264/MPEG--4 AVC4 AVC
� Comparação H.264/MPEG4-AVC com MPEG-2
63
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
SBTVDSBTVD
� Perfis Baseline e High
64
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
SBTVDSBTVD
� Duas combinações de perfil@nível H.264
• SDTV e HDTV => HP@L4
– High profile at level 4
– HDTV: 16:9
– SDTV: 4:3 ou 16:9 
• LDTV => BP@L1.3
– Baseline profile at level 1.3
– LDTV: 4:3 ou 16:9
65
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
SBTVDSBTVD
� Nível 4 – Full-seg – High Profile
• Resolução:
– SDTV: 720x480
– HDTV: 
• 1280x720 (HD)
• 1920x1080 (Full HD)
• Taxa de quadros:
– SDTV: 30Hz ou 60Hz
– HDTV: 60Hz
– Full HD: 30Hz
66
Fundamentos de Sistemas MultimFundamentos de Sistemas Multimíídiadia
SBTVDSBTVD
� Nível 1.3 - One-seg
• Baseline Profile

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes