Documente Academic
Documente Profesional
Documente Cultură
Ingeniera de Telecomunicaciones
Tel 350
LA PAZ-BOLIVIA
1. Introduccin
Un cdec de audio es un cdec que incluye un conjunto de algoritmos que
permiten codificar y decodificar los datos auditivos, lo cual significa reducir la cantidad de
bits que ocupa el fichero de audio. Sirve para comprimir seales o ficheros de audio con
un flujo de datos (stream) con el objetivo de que ocupan el menor espacio posible,
consiguiendo una buena calidad final, y descomprimindolos para reproducirlos o
manipularlos en un formato ms apropiado. Se implementa en software, hardware o una
combinacin de ambos.
La referencia del estndar de calidad para estas seales es la calidad de una seal sobre
lnea telefnica convencional, por ejemplo muestreada a 8Khz, cuantificada con la ley a o
y codificada con 8 bits; y cuya mxima componente espectral sea de 3.3Khz. Esto resulta
en una tasa binaria de 64Kbps.
Esta tasa es demasiado elevada para los sistemas de comunicaciones en tiempo real, por lo
que el objetivo de los cdec para voz es representar la seal con el menor nmero de bits
posible, siempre que la seal reconstruida en el receptor sea aceptablemente parecida a la
seal original
2. Mtodos de codificacin
Actualmente existe una gran variedad de cdec de audio. Aunque cada vez son ms
complejos y aaden caractersticas adicionales, se pueden clasificar en cinco grandes
grupos dependiendo del mtodo de codificacin o reduccin de la tasa de bits:
2.1. Codificadores conceptuales
Los codificadores perceptuales aprovechan las limitaciones en la percepcin del sistema
auditivo humano (umbral de audicin, enmascaramiento temporal y/o frecuencial) para
codificar el flujo de datos.
Para codificar las muestras en formato PCM (audio digital sin comprimir) se realiza una
transformada al dominio frecuencial y se cuantifican y codifican a partir de un conjunto de
datos obtenidos en un modelo psicoacstico. La implementacin de este modelo
psicoacstico es lo que determina la calidad final y es donde se aprovecha el
enmascaramiento temporal o frecuencial, siendo el umbral de enmascaramiento el que
controla la cuantificacin.
En la cuantificacin de audio se utilizan distintos tipos de cuantificadores: uniforme, no-
uniforme, logartmico (ley-mu o ley-A), diferencial o vectorial. Generalmente se utiliza
cuantificacin no-uniforme para msica, cuantificacin diferencial o logartmica para
seales de voz y cuantificacin vectorial para un proceso avanzado de la seal de voz.
En la salida de este bloque se puede incorporar un codificador entrpico que comprime sin
prdidas para reducir el tamao de la trama binaria. Esta trama se empaqueta junto con
informacin adicional que contiene datos imprescindibles para la decodificacin como el
tamao de la trama, el nmero de bits de codificacin, el margen dinmico... Tambin se
puede aadir correccin de errores.
El decodificador desempaqueta la seal codificada para obtener las muestras y la
informacin auxiliar. Seguidamente, decodifica las muestras y las convierte en el dominio
temporal para obtener audio en formato PCM, aunque ste no ser igual al inicial, puesto
que es un proceso de codificacin con prdidas.
Las distintas versiones de MPEG-1, siendo MP3 (MPEG-1 layer3) la ms conocida,
utilizan este mtodo de codificacin.
2.2.Codificadores paramtricos
Los codificadores paramtricos se basan en que el audio y la voz se pueden representar
y sintetizar con tonos aislados, patrones armnicos (representados con sinusoides) y
componentes ruidosas. Estos se representan con parmetros como la amplitud, la frecuencia
fundamental o los componentes espectrales y requieren pocos bits para representarlos.
Durante el proceso de codificacin se extrae informacin de las muestras de entrada
aplicando una transformada de Fourier para luego realizar la estimacin de parmetros.
Seguidamente se codifican basndose con un modelo de la percepcin humana, y
se multiplexan para formar la trama binaria.
En el proceso de decodificacin, a travs de un bloque de sntesis y con los parmetros
codificados, se reproduce una seal con las caractersticas anlogas a la seal original.
Un ejemplo de este tipo de codificacin es HVXC para voz y HILN para msica, ambos
dentro del estndar MPEG-4
Codificacin en subbandas
Codificacin por transformada
2.5.Codificadores hbridos
Los codificadores hbridos, tambin conocidos como codificadores de anlisis-por-sntesis
combinan las tcnicas de los codificadores de forma de onda con los vocoders. El objetivo
de estos es obtener voz de alta cualidad a tasas de bit bajas (inferiores a 8kHz). Su
funcionamiento se basa en analizar un conjunto de muestras como si se tratase de una sola
para obtener los parmetros de la seal. Al decodificar la trama, se sintetizan los parmetros
para conseguir que se parezca al original.
Algunos codificadores hbridos son:
Codificador RELP
Codificador multipulso MPC
Codificador CELP
Codificador VSELP
Codificador RPE-LTP
3. Cdec de voz con perdidas
En audio se aprovechan las limitaciones del sistema auditivo humano (margen
frecuencial, umbral de audicin, enmascaramiento temporal y/o enmascaramiento
frecuencial) para comprimir los datos de audio. Se usan diferentes mtodos para eliminar
los datos inaudibles:
Una tcnica muy comnmente usada es predecir el valor de la siguiente muestra con el
valor de las muestras anteriores. Esto es posible gracias a las correlaciones en las muestras
de seales de voz, debido a los efectos de la cavidad vocal y las vibraciones de las cuerdas
vocales, como se explic en apartados anteriores. Si las predicciones son efectivas entonces
la seal de error entre las muestras predichas y las actuales muestras de la seal de voz
tendrn menor varianza que las muestras originales de la seal de voz. De todos modos el
inters es cuantificar esta seal de error con menos bits que la seal original de voz. En esto
se basan los esquemas de DPCM (PCM Diferencial), en los que se cuantifica la diferencia
entre la seal original y la predicha.
5.2.G723
El estndar G.723 (no confundir con G.723.1) apareci como una extensin de G.721, pero
funcionando a tasas binarias de 24 Kbps y 40 Kbps (seal diferencia cuantificada con 3 y 5
bits respectivamente). Este estndar tambin est obsoleto e incluido en G.726
5.3.G726
Las operaciones en G.726 (G.721 y G.723) se hacen con seales PCM lineales de 16 bits,
por lo que se ha de convertir la seal de entrada al codificador y la seal de salida del
decodificador (usualmente suelen ser PCM con ley A o mu a 64Kbps).
La aplicacin fundamental de G.726 con las tasas de 24 y 16 kbps es codificar la voz en los
canales de DCME (Digital Cirtuit Multiplication Equipment) y la de 40 Kbps para
transportar seales de datos de los mdems de DCME (no de audio, ya que al ser un cdec
de forma de onda sirve para cualquier tipo de datos).
5.4.G727
En la lnea de los cdecs anteriores tenemos G.727, que tambin usa ADPCM, pero una
versin ligeramente distinta, llamada ADPCM jerarquizado, ya que los bits en los que se
codifica la seal tienen dos jerarquas:
Este cdec est orientado hacia transmisin de voz en tiempo real, como la mayora de
los cdecs de voz, por lo que esta jerarquizacin tiene sentido para aliviar situaciones de
congestin, ya que los bits menos significativos pueden ser descartados en la red cuando
hay una situacin de congestin, y as ayudar a aliviar la congestin y tener la seal
decodificada a la salida (con menos calidad obviamente).
5.5.GSM
Una vez se tienen los parmetros de los 2 filtros, se pasa la correspondiente trama por estos
y se llega al anlisis de RPE. Tras este anlisis, cada subtrama de 40 muestras es dividida
en 3 secuencias de 13 muestras cada una. La secuencia de 13 muestras de mayor energa es
elegida como la representacin de la seal de excitacin. Como estamos en el caso de RPE
slo es necesario cuantificar la amplitud de los pulsos, que se cuantifica con 3 bits. El
resultado de esta codificacin da un total de 260 bits por cada muestra de 20 ms, por lo que
la tasa binara es de 260/0.02=13000 bps.
Este cdec da una buena calidad de audio, aunque no tan buena como la de G.728 por
ejemplo. La principal ventaja de este cdec es su simplicidad, ya que por ejemplo se puede
ejecutar en tiempo real en uno de los antiguos 486 a 66 MHz, mientras que un tpico CELP
necesita un DSP dedicado para ejecutarse en tiempo real.
5.6.G 723.1
El cdec se optimiz de forma que represente la voz con gran calidad a las velocidades
mencionadas y con una complejidad restringida. La msica y otras seales audio no se
representan con la misma fidelidad que la voz, pero con este cdec se pueden comprimir y
descomprimir.
Este cdec codifica la voz u otras seales audio en tramas de 30 ms. Adems, tiene un pre
anlisis de 7,5 ms, lo que resulta en un retardo algortmico total de 37,5 ms. Todos los
dems retardos en la implementacin y el funcionamiento de este cdec se deben a:
Todos estos requisitos fueron cumplidos por un cdec CELP adaptativo hacia atrs
desarrollado en los laboratorios de AT&T Bell, que fue estandarizado en 1992 como G.728.
La frecuencia de muestreo de este cdec es de 8 KHz (narrowband). Este cdec usa
adaptacin hacia detrs para calcular los coeficientes del filtro a corto plazo. En lugar de
almacenar 20 ms de la seal original para calcular estos coeficientes, se usa la seal
codificada para calcular los coeficientes del filtro. Esto significa que el filtro puede usar
una longitud de trama mucho menor que la de los CELP habituales. Adems se usa un filtro
predictor de corto lazo de mayor orden, haciendo que no sea necesario el filtro predictor de
largo plazo. En este caso la trama es de slo 5 muestras dando un retardo total menor de 2
ms. Cada trama de 5 muestras se representa con 10 bits, distribuidos de esta manera:
De este modo se tiene un cdec a 16 Kbps con un retardo menor de 2 ms y una calidad
mejor o igual que la de G.721, adems de una gran robustez frente a errores de canal.
Las principales aplicaciones de este cdec son aplicaciones que necesiten de muy bajo
retardo en la codificacin, por ejemplo aplicaciones en las que el retardo en el canal sea
considerable (ms de 50-100 ms) y se quiera mantener una aplicacin en tiempo real con
esos retardos y no mayores.
5.8.G 729
G.729 es un cdec hbrido de voz, con muestreo a 8 KHz (narrow band), muy usado en la
actualidad en aplicaciones de VoIP. Ofrece una buena calidad, pero su complejidad es
extremadamente elevada, necesitando en algunos casos un DSP para su uso en aplicaciones
en tiempo real. Es un estndar de la ITU-T, aprobado en 1995.
El algoritmo usado por este cdec es conocido como CS-ACELP (Conjugate-Structure
Algebraic-Code-Excited Linear Prediction). Se trabaja internamente con tramas de 10 ms
de duracin, cada una representada con 80 bits, haciendo que el retardo algortmico del
cdec (es decir, el retardo sin tener en cuenta el procesamiento del equipo que haga las
operaciones de codificacin-decodificacin) sea de 15 ms, un retardo moderado. La calidad
es similar a la de G.721 (ADPCM 32 Kbps). La tasa binaria de este cdec es de 8 Kbps, en
su versin inicial.
5.9.iLBC
iLBC es un cdec hbrido de banda estrecha (frecuencia de muestreo 8 KHz) que puede
operar con 2 tasas binarias, de 13.33 (duracin de trama 30 ms) y 15.2 Kbps (duracin de
trama 20 ms). Fue desarrollado por GIPS (Global IP Solutions) pero en la actualidad es de
cdigo abierto. Se define en el RFC 3951.
Este cdec es muy adecuado para comunicaciones robustas de voz sobre IP. La
disminucin de la calidad es muy pequea cuando se producen prdidas o retrasos de
paquetes IP. Los cdecs tradicionales de audio que operan a bajas tasas binarias aprovechan
las dependencias entre las tramas colindantes, lo cual hace que cuando haya una prdida o
un retraso de una de las tramas, las dems tambin se vean afectadas y se propague el error.
Por el contrario, las tramas en iLBC son independientes unas de otras, por lo que este tipo
de errores en cadena no se producirn.
En comparacin con G.729 A, iLBC proporciona mejor calidad de voz teniendo la misma
complejidad algortmica y adems es ms robusto frente a prdida de paquetes.
Es usado por Gizmo Project, Ekiga, Open Wengo, Google Talk, Skype y Yahoo!
Messenger.
5.10. iSAC
iSAC es un cdec de audio de banda ancha (wide band), ya que su frecuencia de muestreo
es de 16 KHz, desarrollado por GIPS, actualmente su algoritmo no est descrito
pblicamente y es necesaria licencia de GIPS para su uso comercial. Su tasa binaria es
variable y auto adaptativa en el rango de 10 a 32 Kbps (tamao de trama entre 30 y 60 ms
respectivamente). Es recomendado para aplicaciones de VoIP de ancho de banda elevado,
juegos en red, aprendizaje a distancia y streaming de audio (buen comportamiento incluso
con seales no vocales como msica).
Para este cdec, el cociente calidad de audio/tasa binaria es bastante elevada. La calidad es
comparable a la de G.722 con tasas binarias iguales en los dos cdecs.
5.11. SOVPC
SVOPC son las siglas de Sinusoidal Voice Over Packet Coder, es un cdec de audio
diseado especficamente para comunicacin de voz en canales de comunicacin en los que
hay prdidas de paquetes. El algoritmo usado consiste en el modelado quasi-armnico de la
seal resultante tras la prediccin lineal. Es un cdec desarrollado por Skype y usado en el
mismo programa.
5.12. RT audio
Significa Real Time Audio o Audio en Tiempo Real. Es un cdec de voz diseado para
aplicaciones full-dplex de VoIP. Las principales aplicaciones sobre las que se usa son
juegos, conferencias de audio y aplicaciones wireless sobre IP. Es un cdec desarrollado
por Microsoft y propietario de la misma compaa. Destacar que es un cdec bastante
reciente (2006).
Una caracterstica muy importante de este cdec es que puede operar en dos modos
distintos, en los cuales vara la frecuencia de muestreo:
Narrow Band Mode o modo banda estrecha, con frecuencia de muestreo de 8 Khz
Wide Band Mode o modo banda ancha, con frecuencia de muestreo de 16 Khz
6. Conclusiones
La voz humana puede incluir tonos que alcancen hasta los 20 KHz, que est directamente
relacionado con el lmite de frecuencias que es capaz de percibir el odo. Sin embargo, la
mayor parte de la energa se concentra en las frecuencias ms bajas, por debajo de los 4
KHz. Es por ello que la mayor parte de los cdecs utilizados, considerados de banda
estrecha, se centran en el tratamiento de la voz en ese intervalo
Con el paso del tiempo, con el objetivo de reducir el ancho de banda consumido en la
transmisin empez a pesar ms en la ingeniera, el poder comprimir la voz para tener un
sistema de telecomunicaciones ms eficiente se convirti en una necesidad.
A medida que la necesidad del ser humano de comunicarse de una forma ms rpida y
eficiente crece, tambin lo har la tecnologa, para ello es necesario ir buscando formas de
compresin de voz con menos prdida de datos y menor ancho de banda.
7. Cdec de Video
Hay varios tipos de cdecs de video disponibles. Cada uno de ellos ha sido implementado por
diferentes compaas y tiene su propio algoritmo. Tienen distintas especificaciones y su
aplicacin se extiende a distintos campos. Generalmente se adaptan a los standards de la
industria.
Se diferencian en general por varios factores, como la tecnologa usada para la compresin o
el algoritmo, la plataforma que los soporta, el sistema operativo en el que corren, entre otros.
Los cdecs que provocan prdida de informacin para conseguir un tamao de archivo
reducido son llamados lossy. Hay cdecs sin prdida pero por lo general no vale la pena un
aumento considerable del tamao del archivo por un cambio imperceptible en la calidad del
video.
H.261
Fue desarrollado por el grupo ITU-T y fue el primer estndar de compresin de video. Es
usado principalmente en videoconferencia y videotelefona antigua, y est optimizado por lo
tanto para ratios bajos de datos. Trabaja mejor en pelculas en las que hay poco cambio entre
los cuadros. No tiene tan buena calidad como el H.263 y puede no ejecutarse bien en
mquinas de gama ms baja.
H.263
Inicialmente creado para videoconferencia y video por internet, este cdec fue un gran paso
hacia la estandarizacin de la capacidad de compresin de video de escaneo progresivo y es
mejor que el H.261, fue usado principalmente como punto de partida para el desarrollo de
MPEG (que est optimizado para ratios de datos ms altos). En la actualidad es usado para
comprimir video en formato Flash. Entre sus desventajas est que hace un uso bastante
intensivo del CPU y puede no dar buenos resultados en mquinas de gama ms baja.
H.264
Tambin conocido como MPEG-4 AVC, este cdec provee alta calidad de codificacin y
decodificacin para aplicaciones de transmisin de video en tiempo real, a ratios que van
desde un cuarto a la mitad del tamao de los archivos de los formatos de video previos. El
tamao de archivo logrado es 3 veces ms pequeo que los logrados con los cdecs MPEG-2.
Logra imgenes de buena calidad tanto a altos como a bajos ratios y una mejor calidad de
imagen que MPEG-2, MPEG-4 o H.263. Es dos veces ms eficiente que MPEG-4. Es fcil de
integrar y cubre un amplio rango de formato de imgenes. Entre sus desventajas encontramos
que requiere un tiempo de codificacin mayor y que los acuerdos de licencia son algo
complicados.
MPEG-1
Este cdec da una excelente calidad de imagen a ratios de CD-ROM. Uno de los usos ms
populares del MPEG-1 es el VCD, o video CD llamado libro blanco. MPEG incluye
compresin de video y audio. El mayor problema que hay con el MPEG son sus altos
requerimientos para la reproduccin, lo que ha hecho que este cdec no tenga gran acogida.
MPEG-2
Est optimizado para calidad de difusin para video digital y ofrece muy buena calidad de
imagen y resolucin. Es el estandar de vdeo principal para DVD-Video. Se requiere pagar la
licencia para distribuir video con MPEG-2.
MPEG-4
DiVx
Su nombre viene de la marca que lo ha creado, Divx Inc. y por lo tanto es un cdec
comercial, por el uso del cual hay que pagar. Este cdec utiliza compresin lossy (con
prdida) MPEG-4 Part 2 y es totalmente compatible con MPEG-4-Advanced Simple Profile,
MPEG-4 ASP. Es bastante simple de utilizar y es popular debido a su facilidad para
comprimir largos segmentos de video en tamaos pequeos manteniendo una calidad visual
relativamente alta.
x264