Broadcast day-2007-scopus-mpeg-4

100 visualizações

Publicada em

Scopus - Codificação de Vídeo em MPEG-4 - Sidnei Brito

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
100
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Broadcast day-2007-scopus-mpeg-4

  1. 1. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Codificação de Vídeo em MPEG-4
  2. 2. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Agenda • O que é MPEG-4 • Evolução da Norma • Especificação • Ferramentas e Algoritmos • Empacotamento • Aplicações
  3. 3. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Entendendo a Sopa de Letrinhas • MPEG: Moving Picture Expert Group (ISO) • VCEG: Video Coding Expert Group (ITU-T) • JVT: Joint Video Team • AVC: Advanced Video Coding • MPEG-4 Parte 10: Nome oficial do ISO/IEC 14496-10-AVC • H.264: Nome oficial do ITU – Normas da série H – Audio Visual e MM
  4. 4. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Segundo Prato • VCL: Video Coding Layer • NAL: Network Abstraction Layer • CAVLC: Context Adaptative Variable Length Coding • CABAC: Context Aritmetic Binary Adaptative Coding
  5. 5. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 O que é MPEG-4 Norma desenvolvida com o propósito de criar e/ou propor novas ferramentas para o aprimoramento dos padrões de compressão de vídeo digital existentes a fim de possibilitar diferentes aplicações para diferentes meios de transmissão. Streaming Internet Celular ADSL
  6. 6. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Evolução da Norma H.264/AVC H.264 H.26L - VCEG H26L: nome extra-oficial para H.264 dado pelo ITU MPEG-4 (parte 10)AVC H.264/AVC (2001) JVT
  7. 7. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 O que o H.264/AVC especifica • VCL: Video coding layer: Especifica as ferramentas implementadas para compressão de vídeo • NAL: Network Abstraction Layer: Especifica o mapeamento dos pacotes gerados no VCL para diferentes meios de transmissão
  8. 8. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Conceito do H.264/AVC • Usa as ferramentas existentes do MPEG-2: • GOP • Quadros I, P, B • Codificação Intra-Frame • Codificação Inter-Frame • Codificação Temporal e Espacial • Aplicação de DCT – Transformada Discreta Cossenoidal • Codificação por Entropia
  9. 9. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Conceito do H.264/AVC • Implementa novas ferramentas do AVC: • CAVLC • CABAC • Loop Deblocking Filter • Variable Block Sizes • Multiple Reference Frames • Define novos “Profiles” • Baseline • Main • Extended • E seus respectivos “Levels”
  10. 10. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Importante!! Não existe uma única inovação que possibilita o ganho em compressão no H.264/AVC e sim um conjunto de melhorias que geram pequenos ganhos individuais, possibilitando um significante aumento na taxa de compressão.
  11. 11. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2 = H.264/AVC = 30 qps eu tiro 12 qps I B P B P B P B P B P B I GOP = 12 Predictive Frame Bidirectional Frame Intra-Frame GOP = 12
  12. 12. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Codificação Intra-Frame Redução de Dados Irrelavantes: Não transmite dados que são dispensáveis para a composição da imagem. Ex: freqüências de cores que não podem ser detectadas pelo olho humano, vídeo blancking, amostragem (4:2:2 ou 4:2:0), quantização 12, 10 para 8 bits, etc... Redução de Redundâncias: Pixels com valores próximos são considerados como idênticos e simplesmente repetidos
  13. 13. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Codificação Intra-Frame (I) Quadro 1 (I) Frame reconstruído Compressão Intra-Frame 8x8
  14. 14. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: Codificação Intra-Frame (I) Quadro 1 (I) Frame reconstruído Maior compressão Intra-Frame 8x8 4x4
  15. 15. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Codificação Inter-Frame Predictive Frame (P) Quadro comprimido tendo como referência o quadro anterior. Proporciona maior compressão que o quadro do tipo (I) Bi-directional Predictive (B) Quadro comprimido tendo como referência o quadro imediatamente anterior e também o imediatamente posterior. Proporciona maior compressão que os quadros dos tipos (I) e (P)
  16. 16. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Codificação Inter-Frame (P) (I) Frame é Armazenado (P) Frame Quadro 1 Quadro 2 Vetor de Movimento 16x16
  17. 17. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: Codificação Inter-Frame (P) (P) Frame(I) Frame Utilização de múltiplos frames = Maior Compressão
  18. 18. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: Compensação de Movimento 16X16 16X8 8X8 8X4 4X4 16X16 16X8 8X8 8X4 4X4 Melhor busca e maior correlação entre blocos = Maior Compressão
  19. 19. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Codificação Inter-Frame (B) (I) Frame já armazenado Quadro 1 (P) Frame é reconstruído e armazenado Quadro 3 (B) Frame Vetor de Movimento Quadro 2 é armazenado
  20. 20. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: Codificação Inter-Frame (B) (B) Frame Utilização de múltiplos frames = Maior Compressão
  21. 21. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Sequência de Quadros Comprimidos (B) Frame Vetor de Movimento (I) Frame Quadro 1 (P) Frame Quadro 3 Vetor de Movimento Quadro 2
  22. 22. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: Sequência de Quadros Comprimidos (B) Frame(I) Frame Quadro 1 (P) Frame Quadro 3 Quadro 2
  23. 23. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Transformadas Após calculado os resíduos de cada quadro, cada índice é equacionado em matrizes e aplicado a transformada, visando a normalização e a redução de informações a serem transmitidas MPEG-2 = DCT 8x8 H.264 = HCT 4x4
  24. 24. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Aplicação da DCT 41 27 -3 6 -247 -4 -5 -3 -117 -1 1 -1 -40 -2 2 1 -2 2 -2 2 0 -3 1 1 -1 -1 -1 0 2 1 -2 0 -7 -2 -1 1 -6 1 0 0 -4 -1 -1 1 -3 -3 -1 1 0 -1 -1 2 0 0 -2 -1 -2 -1 -1 -1 0 -1 -1 1 Matriz de coeficientes DCT H.264/AVC HCT
  25. 25. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2=H.264/AVC: Varredura em ZIG-ZAG 2 2 0 0 20 0 0 0 8 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (2) 2 20 8 0 0 0 0 0 2 0 0 … Coeficiente DC Coeficientes AC HCT DCT
  26. 26. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Run Lenght Encoding - Entropia AAAABBBBBCCCDD 4(A)5(B)3(C)2D Tabela de Códigos 01110011000000
  27. 27. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Huffman - VLC (2) 2 20 8 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0… (2) 2 20 8 0 0 0 0 0 2 EOB VLC = CÓDIGO DE HUFFMAN (1) 001 00 001 00 111 000 Quadro (I) processado Predictive Coding
  28. 28. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 H.264/AVC: CAVLC ou CABAC (2) 2 20 8 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0… (2) 2 20 8 0 0 0 0 0 2 EOB CAVLC, CABAC (1) 001 00 001 00 111 000 Quadro (I) processado Predictive Coding
  29. 29. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 CAVLC Context Adaptative Variable Length Coding Gera trailers de coeficientes 0, -1, +1 Gera correlação entre índices dos blocos vizinhos Gera proximidade na magnitude de coeficientes de valores não zeros Várias tabelas adaptativas dinâmicas
  30. 30. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Exemplo de CAVLC Bitstream Gerado →→→→ 000010001110010111101101 (24 bits) Macro Bloco 4x4 Indices reordenados: 0,3,0,1,-1,-1,0,1,0,0,0,0,0,0,0,0 TotalCoef = 5; TotalZeros=3; T1s =3
  31. 31. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 CABAC • CABAC: Context Aritmetic Binary Adaptative Coding Operações estatísticas Modelos de probabilidades Exp-Golomb code CABAC = 15% mais eficiente do que CAVLC
  32. 32. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Deblocking Filter • Compressões baseadas na divisão da imagem em macro blocos geram blocos visíveis em função da dificuldade maior na reconstrução das bordas do que do interior do bloco. • H.264/AVC usa uma técnica de filtragem para reduzir o efeito da blocagem nos limites dos macro-blocos Ganho de compressão ~5 a 10% em função da melhoria dos pixels para análise temporal e espacial Melhoria na imagem subjetiva
  33. 33. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Efeito de “Deblocking Filtering”
  34. 34. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Profiles and Levels • H.264/AVC define 3 “Profiles” Baseline Profile – BP Main Profile – MP Extended Profile – XP • Define também 15 “Levels” 1, 1.1, 1.2, 1.3 2, 2.1, 2.2 3, 3.1, 3.2 4, 4.1, 4.2 5, 5.1
  35. 35. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Ferramentas Suportadas por Profile SP SI Data Partioning B Weighted Prediction I P CAVLC Interlace CABAC Slice Groups Redundant Slice Extended Main Baseline
  36. 36. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Exemplos MP@ML MP@L3 MPEG-2 H.264/AVC
  37. 37. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 NAL – Network Abstraction Layer Video Coding Layer H.320 ControlData etc.MPEG-2H323/IPMP4FF Network Abstraction Layer Data Partitioning Especifica o mapeamento dos pacotes gerados no VCL para diferentes meios de transmissão
  38. 38. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 MPEG-2: Sintaxe do Transport Stream Header Adaptation Field PES (Dados) VIDEO AUDIO PSI SI PCR DTS PTSPID 188 Bytes 4 bytes 184 bytes
  39. 39. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Aplicações • Internet • Sistema Brasileiro de TV Digital – ISDTV • IPTV • Contribuição Jornalismo sobre E-1 • Distribuição de TV
  40. 40. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 UE-9410 H.264 Encoder UE-9318 H.264 DVB-S2 Encoder Scopus H.264/AVC - Linha de Produtos IRD-2900 H.264 Receiver
  41. 41. Scopus information not be disclosed or reprinted without prior written permission from Scopus – Presentation for SSPI event 05-06-07 Sidnei Brito Scopus do Brasil Ltda sidnei@scopusbrasil.com.br +55 12 3923-9208 +55 12 9113-7844 Visite nosso web-site: www.scopusbrasil.com.br Obrigado a todos!

×