compressão de áudio márcio dahia e geber ramalho

40
Compressão de áudio Márcio Dahia e Geber Ramalho

Upload: india-keith

Post on 15-Mar-2016

27 views

Category:

Documents


1 download

DESCRIPTION

Compressão de áudio Márcio Dahia e Geber Ramalho. O que é compressão de dados?. Processo de codificação de mensagens a fim de reduzir o “espaço” necessário para representá-las (armazená-las, transmití-las) 2 tipos de compressão Sem perdas Não há eliminação de informação na mensagem. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Compressão de áudio Márcio Dahia e Geber Ramalho

Compressão de áudioMárcio Dahia e Geber Ramalho

Page 2: Compressão de áudio Márcio Dahia e Geber Ramalho
Page 3: Compressão de áudio Márcio Dahia e Geber Ramalho

O QUE É COMPRESSÃO DE DADOS? Processo de codificação de mensagens a fim de

reduzir o “espaço” necessário para representá-las (armazená-las, transmití-las)

2 tipos de compressão Sem perdas

Não há eliminação de informação na mensagem. Compressão implica codificação eficiente

Com perdas Informações redundantes, pouco importantes ou irrelevantes sob

algum critério são descartadas Não dispensa a codificação eficiente Grau de compressão x Distorção na mensagem

Page 4: Compressão de áudio Márcio Dahia e Geber Ramalho

POR QUE UMA CODIFICAÇÃO PARA ÁUDIO? Porque custa caro armazenar e enviar

44.1 x 16 x 2 = 1.4Mbps + códigos de erro + cabeçalhos + etc.

Page 5: Compressão de áudio Márcio Dahia e Geber Ramalho

POR QUE FAZ SENTIDO UMA CODIFICAÇÃO ESPECÍFICA PRA ÁUDIO? Teoria da Informação: Quanto maior o

conhecimento sobre a mensagem, emissor e/ou receptor, melhor a compressão

Mp3 usa modelagem psicoacústica para remover informações da

irrelevantes + correlação entre os canais (E/D)

FLAC usa correlação entre os canais (E/D) + comportamento do sinal para

aumentar a compressão

Page 6: Compressão de áudio Márcio Dahia e Geber Ramalho

EXEMPLO

*Taxa de Compressão(TC) = 1- (tamanho comprimido/tamanho original )

Page 7: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO DE ÁUDIO: HISTÓRICO 1988 : Criação Motion Pictures Expert Group

(MPEG) Padronização da codificação para transmissão e

gravação de filmes Imagem, seqüência de imagens (vídeo) e áudio Surgimento de novos conceitos e vocabulário

Frame, Codec, Bitrate Padronização do processo de decodificação

Apenas sugestão de compressão

Page 8: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO DE ÁUDIO: HISTÓRICO 1992: MPEG-1.

O padrão de codificação de áudio consistia em 3 modos de operação de acordo com o taxa de compressão (complexidade do processo de codificação)

As principais idéias foram sugeridas pela Fraunhofer Institut für Integrierte Schaltungen (IS 11172-3 e IS 13818-3).

Page 9: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO DE ÁUDIO: HISTÓRICO

1994: Surge Xiph.org: padrões aberto para transmissão e armazenamento de áudio e vídeo.

1996: Surge o ID3: Padrão de fato para de metadados no mp3

1997: MPEG-2 Advanced Audio Coding (AAC): Estado da arte em

compressão de áudio (melhorado em Mpeg-4) 2003: Surge FLAC

Page 10: Compressão de áudio Márcio Dahia e Geber Ramalho

CONCEITOS IMPORTANTES• Codec (COder–DECoder)• Frames

– Estrutura de dados correspondente à unidade mínima de tempo em arquivos de áudio

– Mp3 => 1152 amostras PCM• Bitrate (taxa de bits): Número de bits p/ codificar um frame

• Medida em kbps– CBR (constant bitrate) - A mesma quantidade de bits para

representar qualquer frame (WAV)– ABR (average bitrate) - Frames menos complexos deixam

bits para os próximos (MP3)– VBR (variable bitrate) - O número de bits para cada frame

deve garantir a qualidade definida no início da codificação (MP3, AAC, VORBIS)

Page 11: Compressão de áudio Márcio Dahia e Geber Ramalho

DADOS

Frequências de amostragem previstas 32, 44.1 and 48 kHz

Bitrates previstos 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256

and 320 kbit/s

Page 12: Compressão de áudio Márcio Dahia e Geber Ramalho

COMPRESSÃO COM PERDASMP3

Page 13: Compressão de áudio Márcio Dahia e Geber Ramalho

PROCESSO DE COMPRESSÃO MP3 Entrada no formato PCM

Processa 1152 amostras por vez por canal Frames são codificados independentemente

Page 14: Compressão de áudio Márcio Dahia e Geber Ramalho

MODELO PERCEPTIVO Objetivo

Analisar o que pode ser considerado redundante ou irrelevante

Critérios Limiar de audibilidade Mascaramento de sons

Simultâneo Temporal

Boa parte dos critérios são avaliados no domínio da freqüência Transformada de Fourier

Page 15: Compressão de áudio Márcio Dahia e Geber Ramalho

LIMIAR DE AUDIBILIDADE Um codificador perceptual compara o sinal de

entrada com o limiar de audição e descarta os sinais que estão abaixo ou acima

Page 16: Compressão de áudio Márcio Dahia e Geber Ramalho

MASCARAMENTO Quando dois sons ocorrem, o mais intenso pode

ocultar o menos intenso Se estão próximos no espectro

Baixas freqüências mascaram as altas mais facilmente

Page 17: Compressão de áudio Márcio Dahia e Geber Ramalho

MASCARAMENTO E se Se estão próximos no tempo (quase simultâneos)

O mascaramento “antes” é menor do que o “depois”

Page 18: Compressão de áudio Márcio Dahia e Geber Ramalho

MASCARAMENTO TEMPORAL E ESPECTRAL

Page 19: Compressão de áudio Márcio Dahia e Geber Ramalho

PROCESSO DE COMPRESSÃO MP3

Page 20: Compressão de áudio Márcio Dahia e Geber Ramalho

ANÁLISE DE BANCO DE FILTROS Objetivo:

transformar o sinal para o domínio da freqüência para evidenciar as redundâncias

Composto por 2 fases Filtragem em sub-bandas Transformada Discreta Modificada do Cosseno (MDCT)

Page 21: Compressão de áudio Márcio Dahia e Geber Ramalho

FILTRAGEM DE SUB-BANDA Supostamente baseado no

conceito de banda-critica regiões da membrana basilar

que estabelecem limites na percepção de freqüências

Porém 32 subbandas de mesma

largura Sem justificativa psicoacústica

36 amostras em cada sub-banda

Page 22: Compressão de áudio Márcio Dahia e Geber Ramalho

FILTRAGEM DE SUB-BANDA

Page 23: Compressão de áudio Márcio Dahia e Geber Ramalho

TRANSFORMA DISCRETA MODIFICADA DO COSSENO As 36 amostras de cada banda são transformadas do

domínio do tempo para o domínio da freqüência

Esta transformada, agrupa nos primeiros elementos muita informação e depois vão ficando com valores pequenos... Segundo o bitrate escolhido a codificação, as informações vão

sendo descartadas pela ordem de relevância

Page 24: Compressão de áudio Márcio Dahia e Geber Ramalho

PROCESSO DE COMPRESSÃO MP3

Page 25: Compressão de áudio Márcio Dahia e Geber Ramalho

QUANTIZAÇÃO E CODIFICAÇÃO Quantização

As informações irrelevantes (detectadas na fase de modelagem perceptual) são efetivamente retiradas

O número de bits para cada banda é determinado

Codificação (joint stereo) Dissociação inter-canais (caso estéreo) Os Canais E e D são transformados em média (E+D)/2 e

lado (E-D)/2, no domínio da frequência Média + lado = E Média – lado = D

Codificação de Huffmann

Page 26: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO DE HUFFMAN Mensagem:

aaaaaabbbcdee 104 bits (ASCII)

Mensagem comprimida 00000010101011101111110110 26 bits. TC = 75%

Page 27: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO DE HUFFMAN É preciso conhecer a tabela (codebook) para

decodificar Os decocers MP3 já tem um codebook

prédefinido

Page 28: Compressão de áudio Márcio Dahia e Geber Ramalho

PROCESSO DE COMPRESSÃO MP3

Page 29: Compressão de áudio Márcio Dahia e Geber Ramalho

ENCODING

http://upload.wikimedia.org/wikipedia/commons/0/01/Mp3filestructure.svg

http://www.mp3-tech.org/programmer/frame_header.html

Page 30: Compressão de áudio Márcio Dahia e Geber Ramalho

METADADOS ID3 Padrão não prevê metadados

Solução: Usar 128 bytes antes do primeiro frame (v1.0)

Page 31: Compressão de áudio Márcio Dahia e Geber Ramalho

AAC (ADVANCED AUDIO CODING) Evolução do mp3

Fim da retro-compatibilidade com Layer I e II Codificação para até 48 canais De 576 para 1024 amostras por canal por frame De 36 para 48 sub-bandas Padrão para iPhone, iPod, iPad, Nintendo DSi, iTunes,

DivX Plus Web Player and PlayStation 3 Uso de codebooks

Tem um dicionário mais amplo, sequencias muito mais longas de eventos que podem uma subbanda, várias, etc.

Dissociação inter-frames Predição

Surgimento dos modos

Page 32: Compressão de áudio Márcio Dahia e Geber Ramalho

AAC: CURIOSIDADE Diversos modos com complexidade variável

MPEG-2 AAC LC / Low Complexity MPEG-2 AAC Main MPEG-2 AAC SSR / Scalable Sampling Rate MPEG-4 AAC LC / Low Complexity MPEG-4 AAC Main MPEG-4 AAC SSR / Scalable Sampling Rate MPEG-4 AAC LTP / Long Term Prediction MPEG-4 AAC HE / High Efficiency MPEG-4 AAC LD / Low Delay

Page 33: Compressão de áudio Márcio Dahia e Geber Ramalho

COMPRESSÃO SEM PERDASFLAC

Page 34: Compressão de áudio Márcio Dahia e Geber Ramalho

COMPRESSÃO SEM PERDAS Os compressores sem perdas, em geral possuem

os seguintes passos

Exemplo: FLAC

Page 35: Compressão de áudio Márcio Dahia e Geber Ramalho

BLOCKING Separação do conteúdo em partes contíguas Tamanho pode variar de 16 a 64k amostras

valor fixo dependente da frequencia de amostragem e número de canais

Blocos possuem Sub-bloco Informações sobre um canal específico

Blocos são codificados em FramesCabeçalho

taxa de amostragem, resolução, CRC do frame etc. Os frames são independente entre si.

Sub-frame: contém o dado codificado e um header que indica a predição usada na compressão

Page 36: Compressão de áudio Márcio Dahia e Geber Ramalho

DISSOCIAÇÃO INTER-CANAIS Remoção redundância de informação causada

pela correlação entre os canais

Executa transformações e usa a melhor delas. Canais codificados independentemente Média-Lado (mid-side): Os Canais são transformados

em média (média dos 2 canais) e lado (canal esquerdo menos direito)

Esquerda-Lado/Direita-Lado: Codifica um canal (esquerda ou direita) e a diferença entre este e o canal não codificado. Geralmente, os melhores resultados

Page 37: Compressão de áudio Márcio Dahia e Geber Ramalho

PREDIÇÃO Função matemática para tentar descrever o sinal

4 funções existentes1. Zero: prediz sempre zero. Resíduo = Entrada2. Constante: Usado quando todas as amostras de uma

canal possuem o mesmo valor, e.g., valor médio.3. Preditor Linear Fixo: função linear com coeficientes fixos

que prediz no máximo 4 amostras subseqüentes4. Predição FIR Linear: filtro de até 32 estágios.

Acha a solução para o sistema de 32 equações 32 variáveis Algoritmo O(n2)

Page 38: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO RESIDUAL Codificação da diferença (resíduo) entre o que foi

predito e a entrada Utiliza o código Rice para codificar os resíduos de

predição (passo anterior) Dados um número N (de k bits) a ser codificado e um

número M (potencia de 2, “numero mágico”) que divide N, a codificação Rice (R) é representada por A parte inteira é o número de uns e zero é separado e o resto

é binário <Unário(N div M)><Binário(N mod M)> Ex.: N=23 (10111) , m=16 R= 10111

Page 39: Compressão de áudio Márcio Dahia e Geber Ramalho

CODIFICAÇÃO RESIDUAL Por que Rice?

É ótimo para distribuições geométricasHuffman também é ótimo nessa distribuição, mas

difícil de decodificar (encontrar onde começa e termina cada código)

Para escolher M, FLAC utiliza 2 métodos Método 1: Baseando-se na variância do sinal

residual. O bloco inteiro é codificado com esse M. Método 2: Um bloco é dividido em várias partes de

tamanhos distintos. M é escolhido baseado na média do resíduo daquela parte específica

Page 40: Compressão de áudio Márcio Dahia e Geber Ramalho

FIM