compressão de Áudio digital joaquim macedo departamento de informática da universidade do minho
TRANSCRIPT
Compressão de Áudio Digital
Joaquim MacedoDepartamento de Informática da Universidade do Minho
Sumário Princípios de Compressão Áudio Redundância Estatística Redundância Temporal Codificação perceptual áudio Normas de compressão áudio Norma de Compressão Áudio MPEG-1 Norma de Compressão Áudio MPEG-2 Normas de Compressão Áudio AC Comparação de Algoritmos de Compressão Formatos Áudio
Exemplo 7.1 Queremos transmitir áudio estéreo em tempo
real num canal de 56Kbps. Considere os seguintes cenáriosa) Usamos uma frequência de amostragem de 44.1KHz.
Quantos bits podemos usar para cada amostra áudio?b) Usamos 16 bits/amostra/canal. Qual a máxima
frequência de amostragem? O que podemos fazer para evitar o aliasing
c) Queremos usar uma frequência de amostragem de 44.1 Khz e 16 bits/amostra/canal. Qual a razão mínima de compressão para transmitir o sinal áudio?
Princípios de Compressão Áudio
Redundância Estatística Mais bits para valores de amostra mais comuns
Redundância Temporal Correlação entre valores de amostras vizinhas Redundância inter-amostra
Redundância do Conhecimento Explorar conhecimento partilhado entre
codificador e descodificador Ficheiros MIDI
Propriedades do Sistema Humano de Audição Aumentar a qualidade subjectiva do sinal áudio
Função Taxa de Distorção Teorema de Shannon para
codificação da fonte sem erros Limite na compressão sem erros
Fontes áudio naturais Compressão sem perdas máxima 2:1 Compressão com perdas usada na
prática Obtenção de maior razão de compressão.
Função Taxa de Distorção
distorção dm
Débito D(dm)Codificador simples
Codificador complexo
Limite da teoria da informação
X de esperado valor - E(x) média distorção -
doreconstruí vector - original fontevector
)},({^
^
dm
SS
SSdEdm
Redundância Estatística Compressão de Texto
Métodos de compressão eficientes baseados na entropia
Pode-se usar a mesma abordagem na compressão de áudio
Exemplo 7.2 Considere um sistema de aquisição áudio que
tem 10000 amostras de áudio mono com resolução de 3 bits com níveis entre 0 e 7. O número de ocorrências para os oito níveis foram [700,900,1500,3000,1700,1100,800,300]
Calcule e desenhe a função densidade de probabilidade para cada símbolo
Calcule a entropia da fonte
Solução
p[0] = 700/10000 = 0.07p[1] = 900/10000 = 0.09p[2] = 1500/10000 = 0.15p[3] = 3000/10000 = 0.30p[4] = 1700/10000 = 0.17p[5] = 1100/10000 = 0.11p[6] = 800/10000 = 0.08 p[7] = 300/10000 = 0.03
30.0log*30.015.0log*15.009.0log*09.007.0log*07.0( 2222H
)03.0log*03.008.0log*08.011.0log*11.017.0log*17.0 2222
samplebits / 88.1
Sinal chord.wav
Fig. 4.14(a) Fig. 7.3,pag.149
Audio Waveform (Chord)
80
100
120
140
160
180
1 2001 4001 6001Samples
Am
plitu
de
Redundância Estatística O método de codificação baseado na
entropia Não consegue altos níveis de compressão
para a maioria dos sinais áudio Mas disponibiliza bom desempenho
quando aplicado a coeficientes de transformada
Norma MPEG-1 utiliza codificação baseada na entropia
Codificação MU-LAW
g h h* g*QuantificadorUniformeCompressor
)(gf
Expansor
)( *1 hf
)(gfh
g h
*h )( *1* hfg
*h
)(gfh
g
)(gfh
g h
*h
h
*h )( *1* hfg
*h
)( *1* hfg
*h
Codificação MU-LAWCaratcterísticas de E/S com 255
Exemplo 7.3 Considere o sinal áudio chord.
Quantifique o sinal uniformemente com 8 bits, utilizando a compressão com mu=255. Expanda o sinal e calcule a relação sinal-ruído (SNR). Compare a SNR com a obtida com o exemplo 4.6
Redundância Temporal
DPCMDifferential Pulse Code Modulation
No DPCM Uma amostra áudio é prevista com base nas
amostras anteriores
O valor previsto é aproximado mas diferente do valor da amostra
Fórmula usada pela técnica LPC(Linear Preditive Coding)
nn ss ^
nnn sse^
'
1
^
n
M
iin ss
Codificador DPCMEsquema simplificado
Codificador
Previsor
^
ne
^
nS´nS
Áudio original
ÁudioCompactado
Quantificador
ne
nS
Descodificador DPCMEsquema simplificado
Descodificador
Previsor
^
ne
^
nS´nS
Áudio Reconstruído
ÁudioCompactado
DPCM
N
mjmm
M
iopti
ssjR
jjR
jRijR
1
1,
*)(
entrada de amostra da dados dos
açãoautocorrel de função a é ,....2,1,0),(
)()(
Exemplo 7.4 Considere o sinal áudio chord.
Determine o conjunto óptimo de coeficientes de previsão de 1ª,2ª e 3ª ordem.
Erros de previsão
DPCM Depois de obtida o erro da
sequência en É codificado para reconstruir o sinal
perfeitamente Na codificação com perdas uma
qualidade de reconstrução razoável é aceitável
A quantificação é a única operação na codificação DPCM que introduz ruído
Exemplo 7.5 As 4 primeiras amostras duma sequência digital
áudio são [70,75,80,82,...]. São necessários no mínimo 7 bits para codificar cada uma das amostras. As amostras áudio são codificadas usando o DPCM usando o previsor de primeira ordem. Os coeficientes de erro de predição são quantificados por 2 e arredondados para o próximo inteiro e armazenados sem perdas. Determine o número aproximado de bits necessários para representar cada amostra e o erro reconstruído em cada instância de amostra.
Codificação DPCMvários passos para a sequência [70,75,80,82,...]
Instâncias
de amostras
0 1 2 3
Sinal original 70 75 80 82
Erro do sinal 0 75-67.9=6.4 80-73.6 =6.4
82-77.2 =4.8
Erro do sinal quantificado
0 7.1/2=4 6.4/2=3 4.8/2=2
Erro reconstruído 0 4*2=8 3*2=6 2*2=4
Sinal reconstruído 70 67.9+8=75.9 73.6+6= 79.6
77.2+4= 81.2
Sinal previsto para próxima amostra
70*0.97=67.9
75.9*0.97=73.6
79.6*0.97=77.2
81.2*0.97=78.8
Erro de reconstrução 0 -0.9 0.4 0.8
Nº de bits necessários 7 3 2 2
nS
ne
´nS
nS^
Codificação do Áudio Perceptível
P Q R S T U V
Frequency
Sou
nd P
ress
ure
Lev
el
3 bits6 bits 4 bits
Threshold of hearing
MaskingThreshold
P Q R S T U V
Frequency
Sou
nd P
ress
ure
Lev
el
3 bits6 bits 4 bits
Threshold of hearing
MaskingThreshold
Codificação do Áudio Perceptível
Band 1H
L
H
L
H
L
H
L
Average LevelMasking Level
Masking Level
Average Level
Average LevelMasking Level
Masking LevelAverage Level
SignalLevel
SignalLevel
SignalLevel
SignalLevel
Band 2
Band 3
Band 4
Band 1H
L
H
L
H
L
H
L
Average LevelMasking Level
Masking Level
Average Level
Average LevelMasking Level
Masking LevelAverage Level
SignalLevel
SignalLevel
SignalLevel
SignalLevel
Band 2
Band 3
Band 4
Normas de Compressão Áudio Codificadores áudio de baixo débito
Para telefone ITU-G.711
Defeito para ISDN 8000 amostras/seg, 8 bits/amostra Usam u-law e A-law companding
ITU-G.722 Áudio de maior fidelidade Codifica 7KHz em 64Kbit/seg
ITU-G.729 Voz a 8 KHz Usa uma estrutura conjugada
Algebraic-Code-excited, Linear Prediction Agorithm
Normas de Compressão Áudio Codificadores áudio genéricos
MPEG-1 Adoptada em 1992 Para áudio digital de alta fidelidade Norma de compressão genérica
Pode compactar sinais áudio provenientes duma larga diversidade de fontes
MPEG-2 Baseada na MPEG-1 com alguns melhoramentos
MPEG-4 Compacta tanto som natural (música, voz) como
sintetizado O som sintetizado pode ser representado por texto ou
pela descripção de intrumentos musicais com diferentes efeitos
Normas de Compressão Áudio Codificadores áudio genéricos
AC-2 e AC-3 Desenvolvidos pela Dolby Digital
Laboratories Para codificação de áudio de alata
fidelidade multi-canal
Norma MPEG-1 Áudio Explora as propriedades psico-acústicas do
ouvido humano Taxa de amostragem áudio:32, 44.1 ou 48 KHz pode compactar: mono ou estéreo (2 canais)
3 camadas independentes de compressão Compromisso entre complexidade, relação de
compressão, qualidade Camada 1 : mais simples, débitos acima de
128kbps/canal Camada 2: complexidade moderada, débito à volta de
128 bits/canal Camada 3 (mp3): maior complexidade, débitos à volta
de 64 kbps/canal e oferece a melhor qualidade áudio Adequada para transmissão áudio em ISDN
Codificador Áudio MPEG-1
Banco de Filtros de Análise
Alocação, Quantificaç
ão e Codificação
de bits
Formatação da
sequência de bits
Modelo Psico-Acústico
Dados auxiliares(opcional)
Sequência de bits codificada
Entrada Áudio
Descodificador Áudio MPEG-1
Desempacotamento da sequência de
bits
Reconstrução da
frequência de
amostragem
Banco de Filtros de Síntese
Dados auxiliares
Sequência de bits codificada
ÁudioReconstruído
Áudio MPEG-1Banco de Filtros
Para conseguir melhor desempenho As larguras de banda dos filtros no banco de
filtros devem unificar com as sub-bandas críticas Mais pequenas na gama inferior de frequências Maiores na gama superior Para simplificar o desenho do codificador
Existem 32 sub-bandas de igual largura Os filtros são relativamente simples
Boa resolução no tempo e uma resolução razoável na frequência
O banco de filtros não é reversível Mesmo que os coeficientes de sub-banda não
sejam quantificados, o sinal de áudio reconstruído não é igual ao original
MPEG camada 1,2 e 3Codificação de camada
Filtro sub-banda 3
Filtro sub-banda 2
Filtro sub-banda 1
Filtro sub-banda 32
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
12Amostras
AmostrasAgrupadas
AmostrasÁudio
.
.
.
Quadro da camada 2 e 3Quadro da camada 1
Codificação do MPEG-1 camada 3
Banco de
Filtros
da
Camada 1
e da
Camada 2
Redução
do
Aliasing,
Quantificação
e
codificação
Janela MDCT
Janela MDCT
Janela MDCT
MDCT
MDCT
MDCT
.
.
.
.
.
.
EntradaÁudioPCM
ÁudioCompactado
1
32
Norma MPEG-2
Define duas normas MPEG-2 BC
BC (Backward Compatible) Extensão da norma MPEG-1
Inclui codificação multi-canal e multilingue É permitida codificação a frequências abaixo de 32
KHz
MPEG-2 AAC ACC (Advanced Audio Coding)
Codificador áudio altamente avançado com um desempenho de compressão superior
MPEG-2 AAC 3 Perfis ou Modos
Modo Low Complexity (LC) Aplicações em que o gargalo é a velocidade
de processamento e a memória Modo Main
Quando há capacidade de computação e memória disponíveis
Mode SSR (Scalable Sample Rate) Quando as aplicações precisam de
descodificação escaláveis.
Codificador MPEG-2 AACEsquema simplificado
Modelo
Perceptual
Processo de
Controlo da Taxa
de Distorção
Banco de Filtros
Calibragem do ruído temporal
Previsão
Factores de Escala
Quantizador
Codificação sem ruído
Multiplexador da
Sequência de bits
Entrada do Sinal Áudio
Sequênciacodificada de bits áudio
Normas de Compressão Áudio ACÁudio Digital Áudio
O codificador AC-3 é largamente utilizado para transportar Áudio multi-canal em aplicações como
Vídeo DVDTV Digital TV de alta definição (HDTV)Aplicações de éstudio
O codificador AC-3 foi precedido por AC-1e AC-2.AC-1: Utiliza modulação delta adaptativa combinada com compandinganalógica. Não é um codificador perceptual.AC-2: Um codificador perceptual que usa uma transformada de baixa Complexidade TDAC (Time domain alias cancellation) transform. Usa MDCT, MDST.Àudio de alta qualidade a um débito de 256 kbps por canal.AC-3: Superior ao AC-2. Alta qualidade a 384 kbps/seis-canais
Codificador AC-3Esquema simplificado
Empacotador do sequência
de bits
Alocação de bits
Qunatificador da mantissa,
Vírgula flutuante em
bloco
Transformação TDAC Expoentes
MantissasQuantificadas
Coeficientesde transformada
Mantissas
ÁudioCodificado
AmostrasÁudio
Codificação de Expoente
exp2* xs
Os expoentes são valores de 5 bits que indicam o número de zeros da
frente
Os valores dos expoentes variam de 0 a 24
São codificados de forma diferencial
Os diferentes expoentes são combinados em grupos no bloco áudio
A Estratégia do expoente define como os diferentes expoentes são codificados
Descodificador AC-3Esquema simplificado
Desempacotador do expoente
Alocação de bits
Desempacotador da mantissa, Normalização
Ponto flutuante para fixo
Transformação inversa TDAC
Canais 5.1 de saída
Sequência de bits codificada
Comparação de algoritmosDébito(em Kb/seg)
Qualidade Aplicação Disponível desde
MPEGCamada 1
32-448 Boa a 192 Kbps/canal
DCC 1991
MPEGCamada 2
32-384 Boa a 256 Kbps/canal
Difusão de Áudio Digital, CD-I, DVD
1991
MPEGCamada 3
32-320 Boa a 96 Kbps/canal
1993
AC-3 Dolby
32-640 Boa a 384 Kbps/5.1 canais
HDTV, Cabo, DVD
1991
Formatos Áudiotípicos para armazenamento de som
Extensão/ tipo de ficheiro
Comentários
aiff Áudio não compactado, tipicamente 16 bits/amostra. Pode ter outra resolução, tipicamente usado em Mac/Unix
au Usa compressão mu-law. Usado em plataformas Sun
mov Vídeo QuickTime
mpa/mp2 Formato MPEG áudio. São usadas várias camadas para compromisso entre a complexidade e o desempenho
mp3 Camada 3 do MPEG áudio
qt Formato QuickTime. Proprietário da Apple
Ra,ram Formato Real Áudio. Proprietário da Real Networks. Suporta áudio ao vivo na Internet
wav Áudio não compactado, tipicamente 16 bits/amostra
wma Áudio usado no Windows Media. Proprietário da MicrosoftFormatos usados para cadeias de áudio na Internet