6/06/2015

Que son los CODECs?

La palabra codec proviene de abreviar las palabras Codificación y Decodificación. Su función principal es la de adaptar la información digital de la voz para obtener algún beneficio. Este beneficio en muchos casos es la compresión de la voz de tal manera que podamos utilizar menos ancho de banda del necesario.

Generalmente se entiende por Codecs que son varios modelos matemáticos usados para codificar (y comprimir) la información de audio análoga. Muchos de estos modelos toman en cuenta la capacidad del cerebro humano para formar una impresión a partir de información incompleta.

Todos hemos visto las ilusiones ópticas, del mismo modo, los algoritmos de compresión de voz se aprovechan de nuestra tendencia a interpretar lo que creemos que debemos escuchar, en lugar de lo que realmente escuchamos. El propósito de los diferentes algoritmos de codificación es estrictamente mantener el balance entre la eficiencia y la calidad.Antes de profundizar más en cada uno de los Codecs individuales, vamos a echar un vistazo en la siguiente tabla.



CODEC                  DATA BITRATE (KBPS)                      ¿REQUIERE LICENCIA?
G.711
64 Kbps
No
G.726 16, 24, 32 o 40 Kbps No
G.729A 8 Kbps Si
GSM 13 Kbps No
ILBC 13.3 Kbps (30-ms frame)
o 15.2 Kbps (20-ms frames)
No
Speex
Variables (entre 2.15 y 22.4 Kbps)
No
g.722 64 Kbps No



G.711

G.711 es el códec fundamental de la PSTN. De hecho, si alguien se refiere a PCM con respecto a una red telefónica, se le permite pensar en G.711. Dos métodos de comprensión son usados: ulaw en Norte América y alaw en el resto del mundo. Cualquieras de los 2 métodos proporciona  una palabra de 8 bit transmitida 8,000 veces por segundo. Si saca cuentas, usted veras que se requieren 64,000 bits para ser transmitidos por segundo.

Mucha gente le dirá que G.711 es un códec sin compresión. Esto no es exactamente cierto, como el companding (compresión-expansión)  es considerado una forma de compresión. Lo que es cierto es que G.711 es el códec base desde el cual todos los demás se derivan.

G.711 impone una carga mínima (casi cero) en la CPU.


G.726

Este codec ha existido desde hace un tiempo (solía ser G.721, que ahora es obsoleto), y es uno de los códecs comprimidos originales. Es también conocido como Adaptive Differential Pulse-Code Modulation (ADPCM), y este puede correr en varias velocidades de bits (bitrates). Las velocidades más comunes son 16 Kbps, 24 Kbps y 32 Kbps. Hasta el momento de escribir estas líneas, Asterisk  únicamente soportaba el rate de ADPCM-32 que es el tipo más difundido y popular de este códec.

G.726 ofreces una calidad casi idéntica a G.711, pero este usa la mita de ancho de banda. Esto es posible porque en lugar de enviar el resultado de la medición de cuantificación, se envía sólo información suficiente para describir la diferencia entre la muestra actual y la anterior. G.726 cayó en desgracia en la década de 1990 debido a su incapacidad para llevar las señales de fax y módem, pero debido a su relación calidad-ancho de banda/CPU ahora está haciendo una reaparición. G.726 es especialmente atractivo, ya que no requiere una gran cantidad de trabajo computacional del sistema.


G.729A

Teniendo en cuenta el poco ancho de banda que utiliza, G.729A ofrece una impresionante calidad de sonido. Esto lo hace mediante el uso de Estructura Conjugada Predicción Lineal Algebraica con Excitación por Código (CS-ACELP.). A causa de las patentes, no se puede utilizar G.729A sin tener que pagar una cuota de licencia, sin embargo, es muy popular y está bien apoyado en muchos teléfonos y sistemas diferentes.

Para lograr su impresionante relación de compresión, este codec requiere una igualmente impresionante cantidad de esfuerzo por parte del CPU. En un sistema Asterisk, el uso de codecs muy comprimidos agotará rápidamente los recursos del CPU.

G.729A utiliza 8 Kbps de ancho de banda.


GSM

El códec  Sistema Global para Comunicaciones Móviles (GSM) es el favorito de Asterisk. Este codec no viene gravado con un requisito de licencia de la manera que lo hace G.729A, y ofrece un excelente rendimiento con respecto a la demanda  de  CPU.

La calidad de sonido se considera generalmente que es de un grado menor que la producida por G.729A, pero gran parte de esto se reduce a opinión personal. GSM opera a 13 Kbps.


ILBC

El Internet Códec Low Bitrate (iLBC) ofrece una atractiva mezcla de bajo ancho de banda y calidad, y es especialmente adecuado para mantener una calidad razonable en los enlaces de red con pérdidas.

Naturalmente, Asterisk soporta iLBC, pero no es tan popular como el codecs ITU, y este puede ser compatible con los teléfonos IP comunes y sistemas de VoIP comerciales. IETF RFC 3951 y 3952 se han publicado en apoyo de iLBC y iLBC está en la pista de las normas IETF.

Debido a que iLBC utiliza algoritmos complejos para lograr sus altos niveles de compresión,  tiene un costo bastante elevado en consumo de CPU en Asterisk.

Mientras que usted está autorizado para utilizarla iLBC sin pagar licencia, el titular de la patente iLBC, Global IP Sound (GIPS), quiere saber cada vez que lo utilice en una aplicación comercial. La forma de hacerlo es mediante la descarga y la impresión de una copia de la iLBC licencia, firmarlo y devolverlo a GIPS.

ILBC opera a 13.3 Kbps (frames de 30 ms) y 15,2 Kbps (frames de 20 ms).


SPEEX

Speex es un códec de tasa de bits variable (VBR), lo que significa que es capaz de modificar dinámicamente su tasa de bits para responder a las condiciones cambiantes de la red. Se ofrece en versiones tanto de banda estrecha y de banda ancha, en función de si quieres calidad telefónica o mejor.

Speex es un codec totalmente gratis, licenciado bajo la variante Xiph.org de la licencia BSD.

Un proyecto de Internet para Speex está disponible, y más información sobre Speex se puede encontrar en su página web (http://www.speex.org).

Speex puede funcionar a cualquier  tasa de bits desde 2,15 hasta 22,4 Kbps, debido a su velocidad de bits variable.


G.722

G.722 es un códec estándar ITU-T que fue aprobado en 1998. El códec G.722 produce una voz de mucho más calidad en el mismo espacio que G.711 (64 Kbps) y está empezando a ser popular entre los fabricantes de dispositivos de VoIP. Las patentes de G.722 han caducado, por lo que es de libre acceso. Si tiene acceso a dispositivos que admiten G.722, usted quedará impresionado por la mejora de la calidad.

MP3

Seguro está pensando, MP3 es un codec? En concreto, es el Moving Picture Experts Group Audio Layer 3 estándar de codificación. Con un nombre así, no es de extrañar que lo llamemos MP3! En Asterisk, el codec MP3 se utiliza normalmente para la música en espera (MoH). MP3 no es un códec de telefonía, ya que está optimizado para la música, no para voz, sin embargo, es muy popular entre los sistemas de telefonía VoIP como un método de entrega de MoH.

Leer más >>