4. Codificación y compresión de audio.personales.upv.es/misan/audio4.pdf · ti me d i a / A T C /...
Transcript of 4. Codificación y compresión de audio.personales.upv.es/misan/audio4.pdf · ti me d i a / A T C /...
Transmisión de Datos Multimedia/ATC/2004-2005
4. Codificación y compresión de audio.
1. Introducción.
2. Características del audio. 2.1 Digitalización.
2.2 Calidad de una señal de audio.
2.3 Parámetros específicos.
3. Compresión de audio.3.1 Calidad telefónica.
3.2 Calidad CD.
Bibliografía[FLU95] Understanding networked multimedia. [GIB98] Digital Compression for Multimedia
[Pan93] Digital Audio Compression [Pan96] A Tutorial on MPEG/Audio Compression [MP3 Intro] An introduction to MP3
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
2
1. Introducción.
● Las secuencias de audio forman parte de las aplicaciones multimedia.
● El estudio de la codificación y compresión se puede enfocar en función de la aplicación:● Aplicaciones interactivas (audio-conferencia audio) codecs
simétricos. ● Aplicaciones de difusión y reproducción de medios (TV digital, audio
Hi-Fi, DVD, etc.) codecs asimétricos
● Características de una señal de audio.● Distintos tipos de calidad de audio.● Técnicas de compresión de audio.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
3
2. Características del audio
● Una señal de audio no es más que una onda acústica (variaciones de presión del aire)
● La señal de audio es unidimensional (tiempo) ● El micrófono transforma las ondas acústicas que lo golpean, en
señales eléctricas (niveles de voltaje)● El oído es muy sensible a las variaciones de sonido de corta
duración (ms) al contrarío que el ojo humano.● La relación de dos sonidos A y B se mide en decibelios:
● dB=20 log10 (A/B).
● La intensidad de un sonido A se mide en decibelios tomando como referencia el menor sonido audible.
● 0 dB: Menor sonido audible● La señal de referencia (B) es una onda senoidal a 1khz que provoca una presión
de 0.0003 dinas/cm2
● A y B son amplitudes (si fueran potencias sería 10 log10 (A/B))
● 50 dB: Conversación normal.● 120dB: Umbral del dolor.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
4
Características del audio
● El rango de frecuencias audibles por los humanos está entre 20Hz y 20KHz.
Audible
No audible
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
5
2.1 Digitalización y cuantificación.
● La digitalización de las señales de audio se realizan mediante convertidores A/D.● Muestrean la señal analógica de audio a una frecuencia
determinada.● Según Nyquist: “Si la señal de entrada tiene una frecuencia
máxima de f, la frecuencia de muestreo tiene que ser de al menos 2f “(al muestrear a Sf captaremos hasta la frec. Sf/2)
● En el conversor D/A, un filtro paso bajo puede interpolar la parte de señal entre las muestras, para poder reconstruir perfectamente la señal original.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
6
Digitalización y cuantificación.
● Cuantificación: Las muestras obtenidas se codifican en un número finito de bits● Error de cuantificación (quantification noise).● Codificación lineal o logarítmica.
● PCM (Pulse Code Modulation).● Usado para la digitalización de señales de audio.● Parámetros: Sf, bits/muestra, niveles de cuantificación*
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
7
Digitalización y cuantificación.
● Cuantificación PCM lineal● Los niveles de cuantificación están espaciados de manera
equitativa.● Cada bit de resolución añade 6 dB de rango dinámico.● Con 16 bits por muestra se cubre totalmente el rango dinámico
del oído humano.
● Cuantificaciones no-lineales (logarítmica)● Los pasos de cuantificación decrecen logarítmicamente.● El oído humano es menos sensible a sonidos fuertes.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
8
Digitalización: Interfaz MIDI
● MIDI (Musical Instrument Digital Interface).
● Utilizado para codificar música (instrumentos).● Codifica los elementos básicos (notas, silencios, ritmos, etc.) en
mensajes MIDI.● Cada instrumento tiene su propio código (hasta 127)● Un sintetizador interpreta los mensajes MIDI y produce la señal de
audio correspondiente.● Ventaja:
● Reduce mucho el ancho de banda necesario (factor de 1000 !!)● Inconvenientes:
● Necesidad de un sintetizador en ambos extremos (calidad de sonido diferente).
● Aplicable solo a música.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
9
2.2 Calidad de una señal de audio.
● Voz (telefonía)● Se define para los servicios de telefonía digital.● Estándar G.711 (ITU): Codificación logarítmica.
● Japón y USA: Transformación µ-law.● Resto: Transformación A-law.
● Parámetros:● Señal de audio de 3.1 KHz (BW). (300-3400Hz)● Sf = 8 KHz● 8 bits/muestra.● Tasa de bits: 64Kbps (N-ISDN).
● Otras técnicas de codificación y compresión:● DPCM y ADPCM,● G.72x, ● GSM,● LPC y CELP,● etc.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
10
Calidad de una señal de audio.
● CD-Digital Audio.● Calidad de audio superior: Sonido Hi-Fi estereofónico.● Utiliza una codificación lineal. Las diferencias de amplitud deben ser
respetadas por igual.● Parámetros:
● Señal de audio de 20 KHz (BW).● Sf = 44.1 KHz● 16 bits/muestra.● Soporta estereofonía (dos canales)● Tasa de bits: 1.411 Mbps.
● Otros estándares utilizan esta calidad de audio:● DAT (32.4 y 48 KHz),● MPEG (32, 44,1 y 48 KHz),● DVI, ● etc.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
11
2.3 Parámetros específicos.
● Tasa de bits (throughput):● Audio sin comprimir:
● Calidad telefónica: 64Kbps.● Calidad CD: 1.411 Mbps.
● Audio comprimido:● Calidad telefónica: 32, 16, 4 Kbps (ADPCM, CELP)● Calidad CD: 192 Kbps. (MPEG audio)
● Retardo de tránsito (aplicaciones interactivas)● Conversación:
● Telefonía: < 25 ms (evitar echo).● 100 a 500 ms (sensación de tiempo real).
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
12
Parámetros específicos.
● Varianza del retardo (jitter).● Es el parámetro más crítico para los streams de audio.● Solución:
● Técnicas de ecualización del retardo.● Se suministra un tiempo adicional antes de comenzar la
reproducción, almacenando los paquetes en un buffer de entrada.● Consecuencias:
● Incrementamos el retardo total. ● Necesitamos recursos de memoria para el buffer de ecualización.
● Compromiso entre la capacidad de almacenamiento y el máximo jitter tolerable por la aplicación.
● Tasas de error: bit error rate (BER)● Calidad telefónica: < 10-2, Calidad CD: < 10-3 ,con ECC <10-12
Transmisión de Datos Multimedia/ATC/2004-2005
Tema 4: Codificación y compresión de audio.
Introducción.
Características del audio. Digitalización.
Calidad de una señal de audio.
Parámetros específicos.
Compresión de audio.Calidad telefónica.
Calidad CD.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
14
Cod. lineal A-Law
0000000wxyza 000wxyz
0000001wxyza 001wxyz
000001wxyzab 010wxyz
00001wxyzabc 011wxyz
0001wxyzabcd 100wxyz
001wxyzabcde 101wxyz
01wxyzabcdef 110wxyz
1wxyzabcdefg 111wxyz
Cod. Lineal u-Law
00000001wxyza 000wxyz
0000001wxyzab 001wxyz
000001wxyzabc 010wxyz
00001wxyzabcd 011wxyz
0001wxyzabcde 100wxyz
001wxyzabcdef 101wxyz
01wxyzabcdefg 110wxyz
1wxyzabcdefgh 111wxyz
3.1 Calidad telefónica
● Codificación: ITU G.711● Muestreo: 8KHz. Muestra: 16 bits. Codificación log.● µ-law y A-law: Codifican una muestra PCM de 16 bits (14 bits) en 8
bits.● 8 segmentos: 0xFF, 0x1FF, 0x3FF, 0x7FF, 0xFFF, 0x1FFF, 0x3FFF,
0x7FFF
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
15
Algoritmos de compresión (Voz)
Codificación diferencial: DPCM (Differential Pulse Code Modulation).
Explota la redundancia temporal entre las muestras.Se transmite la diferencia
entre muestras (bastante menor).
Problema: Sobrecarga de gradiente (slope overload)
Las diferencias en altas frec.(cercanas a Nyquist) no se pueden representar con el mismo número de bits.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
16
Algoritmos de compresión (Voz)
● Codificación diferencial adaptativa: ● ADPCM (Adaptive Differential Pulse Code
Modulation). Predice la muestra y cuantiza adaptativamente.
● Predicción: Codifica la diferencia entre la muestra actual y una estimación basada en las últimas “n” muestras
Dequantizer(adaptive)
+
Predictormodule
Xp[n-1]
C[n] Xp[n]Dq[n]
Decodificador
Quantizer(adaptive)
Dequantizer(adaptive)
-
+Predictormodule
X[n]
Xp[n-1]
C[n]
Dq[n]
D[n]
Xp[n]
Codificador
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
17
Algoritmos de compresión (Voz)
● Codificación diferencial adaptativa: ● ADPCM (Adaptive Differential Pulse Code Modulation).
Predice la muestra y cuantiza adaptativamente.● Cuantización adaptativa: Usa pasos más largos para
codificar diferencias entre muestras muy distintas en magnitud (de alta frecuencia) y pasos más pequeños para muestras que son similares (bajas frecuencias).
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
18
Dequantizer(adaptive)
+
DelayXp[n-1]
C[n] Xp[n]Dq[n]
Decodificador
Quantizer(adaptive)
Dequantizer(adaptive)
-
+Delay
X[n]
Xp[n-1]
C[n]
Dq[n]
D[n]
Xp[n]
Codificador
Predictormodule
Una implementación de ADPCM
● Algoritmo ADPCM (IMA: Interactive Multimedia Association)● Algoritmo de dominio público. Calidad de audio e índice de
compresión aceptables. ● Sencillo y capaz de trabajar en tiempo real (software).● Indice de compresión: (PCMbits/4) a 1.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
19
Quantizer
Tab1 Tab2Indice Tab2
0..88
Retardosiguientemuestra
+
Quantizer: tres últimos bits
Ajuste índice tabla 2
Step
B1B1B0 Ajuste
000 -1
001 -1
010 -1
011 -1
100 2
101 4
110 6
111 8
Tabla 1Ajuste sobre la tabla 2 para decidir lasdiferencias a aplicar.
Indice Step
0 7
1 8
2 9
….. …..
50 876
51 963
…. ….
88 32767
Tabla 2Distribuye el rango dinámico de la muestra PCM
IMA ADPCM
S >= Step/4
Start
S < 0Bit3 =1S = -S
Bit3 =0 S >= StepBit2 =1
S = S - Step
Bit1 =0
Bit2 =0 S >= Step/2Bit1 =1
S = S - Step/2
Bit0 =0
Bit0 =1
SI
NO
NO
NO
NO
SI
SI
SI
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
20
Tabla 2: Distribuye el rango dinámico de la muestra PCM
IMA ADPCM
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
21
IMA ADPCM: Ejemplo de funcionamiento (I)
● Supongamos que queremos codificar la siguiente secuencia de muestras de audio con IMA ADPCM:
● Estado inicial
{ }163,167,155,150=x
163
167
15440-1001075155
150-0----150
Valor predicho
Valor reconst.
ÍndiceAjusteResultstepdif.X
45.304
71
2
707
.
.==
++=
xxx
rec
Dif
S=5step=7
Start
¿5 < 0?
Bit3 =0¿5
>=7?
Bit2 =0 Bit1 =1
Bit0 =0
NO
NOSI
NO
¿5>=3.5?
1.5>=1.75?
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
22
IMA ADPCM: Ejemplo de funcionamiento (II)
● Tercera muestra:
163
16713880111713167
15440-1001075155
150-0----150
Valor predicho
Valor reconst.
ÍndiceAjusteResultstepdif.X
S=13step=7
Start
Bit3 =0 Bit2 =1
Bit1 =1
Bit0 =1
NO SI
SI
2.5>=1.75?
¿6>=3.5?
¿13<0?
¿13>=7?
SI
1325.1214
71
2
717
.
.==
++=
xxx
rec
Dif
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
23
IMA ADPCM: Ejemplo de funcionamiento (III)
● Cuarta muestra:
163-47-1100116-4163
16713880111713167
15440-1001075155
150-0----150
Valor predicho
Valor reconst.
ÍndiceAjusteResultstepdif.X
S=4step=16
4414
160
2
16016
.
.==
++=
xxx
rec
Dif
(como Bit3=1, realmente sería -4)
Start
-4 < 0? Bit3 =1
4 >=16?
Bit2 =0
Bit1 =0
SI
NO
4>=4?
¿4>=8?
SIBit0 =1
NO
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
24
Calidad telefónica: Recomendaciones ITU
G.701: Digitalización PCM
G.711: Codificación logarítmica µ-law y A-law
G.721: ADPCMMuestreo a 8 Khz, muestras de 8 bits: 64 Kbps
Utiliza diferencias de 4 bits: tasa de bits final 32 Kbps
G.722: Sub-Band ADPCM.Muestreo a 16 Khz, muestras de 14 bits: 224 Kbps
Codifica señales de audio de hasta 7 KHz (por el muestreo)
Descompone la señal en dos bandas de 4 KHz.
A cada banda le aplica ADPCM.
Tasas de bits finales: 48, 56 y 64 Kbps.
G.723, G.726, G.727: Variantes del G.721 (ADPCM).
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
25
Calidad telefónica: Vo-coding
LPC (Linear Predictive Coding) US-FS-1015Define un modelo analítico del aparato fonadorReduce cada segmento de audio a los parámetros del modelo que más se aproximan al original.El decodificador recoge estos parámetros y sintetiza la voz correspondiente.LPC-10E puede bajar hasta 2.4 Kbps.
CELP (Code Excited Linear Prediction) US-FS-1016.Es una versión mejorada del LPC.Diferencia:
Utiliza un code-book con secuencias predefinidas para aplicarlas a cada frame de audio, eligiendo aquella que más se aproxima al original. Además, calcula los errores cometidos. Se envían los parámetros y la versión comprimida de los errores.
Tasa de bits de hasta 4.8 Kbps (calidad similar a ADPCM G.721 a 32 Kbps)
Variantes CELP:GSM, VSELP, LD-CELP, ITU G.729, QCELP, MELT, etc.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
26
Calidad telefónica
Año Tasa de bits(Kbps)
Nombre MOS
1972 64 PCM (PSTN) 4.41976 2.4 LPC-10 2.71984 32 G.721 ADPCM 4.11990 4.15 INMARSAT 3.21991 13 GSM 3.61991 4.8 CELP (US 1016) 3.21992 16 G.728 (LD-CELP) 41992 8 VSELP 3.51993 1-8 QCELP 3.41995 8 G.729 4.21995 6.3 G.723.1 3.981995 5-6 Half-Rate GSM 3.41996 2.4 New LPC 3.3
● Tabla resumen de algunos codecs de audio.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
27
3.2 Calidad CD
● Estándares MPEG/audio (Estándar ISO)● MPEG (Moving Pictures Expert Group)● MPEG/audio ofrece altos índices de compresión,
manteniendo la calidad del audio del stream original.● Son algoritmos de compresión con pérdidas*.
● MPEG-1 /audio● Muestreos: 32, 44.1 y 48 KHz.● Soportan uno o dos canales (diferentes modos de
operación).● Tasas de bits: 32 a 256 Kbps/canal.● Indices de compresión: 2.7 a 24.
● MPEG-2 /audio● Compatibilidad hacia atrás con MPEG-1.● Diseñado para sistemas de sonido multicanal.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
28
MPEG-1 audio.
● El stream comprimido puede incluir información auxiliar (acceso aleatorio, avance y retroceso rápido, CRC, etc.)
● Arquitectura de tres niveles● MPEG-1 Nivel I:
● El más sencillo. Tasa de bits 192 Kbps/canal. Aplicaciones: Philips DCC
● MPEG-1 Nivel II:● Complejidad media. Tasa de bits 128 Kbps/canal. Aplicaciones:
DAB, CD-I, Vídeo CD.● MPEG-1 Nivel III:
● El más complejo. Ofrece la mejor calidad de audio con tasas de bits sobre 64 Kbps/canal. Está preparado para N-RDSI.
● Existen codecs hardware de los tres niveles para aplicaciones de tiempo real.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
29
MPEG audio: Fundamentos.
● Se basa en la capacidad de percepción que tiene el oído humano (modelos psico-acústicos)● Enmascaramiento de señales débiles (noise masking):
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
30
MPEG audio: Fundamentos.
● Discriminación frecuencial limitada. ● La agudeza (selectividad) del oído humano en baja
frecuencia es muy superior que en altas frecuencias (sub-band coding)
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
31
Time-FrecSub-bandfiltering
Modelopsico-acúst.
Asig. Bits.CuantizadorCodificador
Formato delstream de bits
Datos auxiliares(opcional)
PCM audioStream de bitscomprimido
Codificador
Stream de bitscomprimido
DesensambladoReconst.
de bandasTransformación
Frec-Time
PCM audio
Datos auxiliares(opcional)
Decodificador
MPEG Audio: Diagrama de bloques
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
32
MPEG-1 audio: Niveles.
● Nivel I:● Se divide la señal de audio en 32 bandas de 750 Hz.● Tasa de muestreo: 48 Khz. Tamaño de trama: 384 muestras● El umbral de enmascaramiento (SMR) se calcula con una FFT de
512 puntos (modelo psico-acústico).● Para cada sub-banda se escoge uno de los 15 cuantizadores
definidos en función del SMR y la tasa de bits requerida.
● Nivel II:● Utiliza un tamaño de trama de 1152 muestras, una FFT de 1024
puntos (cálculo del SMR) y una cuantización más fina.
● Nivel III:● Incrementa la resolución en frecuencia de las 32 bandas (MDCT),
utiliza un modelo psico-acústico más elaborado, y añade una etapa de compresión Huffman.
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
33
MPEG Audio: Calidad de audio
● Parámetros de calidad objetivos:● MSE (Mean Square Error).
● Calcula el error cuadrático medio entre la señal original y la reconstruida con el codec.
● SNR (Signal-to-Noise Ratio)● Relación logarítmica entre dos señales. Se utilizará para
comparar la señal original con el error introducido por el codec.● Se expresa en decibelios (dB).
( )MSE
isNdBSNR
N
i∑
== 1
2
10
1
log10)(
( ) ( )∑=
′−=N
i
isisN
MSE1
21
MSEPSNR
2
10
255log10=
Tra
ns
mis
ión
de
Da
tos
Mu
ltim
ed
ia/A
TC
/200
4-2
00
5
34
MPEG Audio: Calidad de audio.
● Parámetros de calidad subjetivos:● MOS (Mean Opinion Score): MPEG define una serie de tests para
determinar la calidad de audio generada por cada nivel.
Resultados:Fuente:
Estéreo, 16bits, 48KHz, 256 Kbps
Compresión 6:1
En condiciones de escucha óptimas, expertos en audición han sido incapaces de distinguir secuencias comprimidas de sus originales.