Foro VoIP - Voz sobre IP - Asterisk y SER - SIP IAX y H.323

3CX VoIP- Centralita telefonica (PBX) para Windows
3CX Centralita Telefónica para Windows
Descarga versión gratuita

BUSCAR

  • Protocolos VoIP
  •    

  • Teléfonos
  •    

  • QoS (Quality of Service)
  •    

  • Codecs
  •    

  • Asterisk
  •    

  • Centralita 3CX
  •    

  • SER (Sip Express Router)
  •    

  • Utilidades
  •    

     

      Codecs  

     
        Tabla resumen   Funcionamiento de un codec   Muestras audio   Nuevos codecs G711.1 -G722.2 -G.729.1      
     

     
    Funcionamiento de un codec - G711

    Como ya se ha comentado la comunicación de voz es analógica, mientras que la red de datos es digital. La transformación de la señal analógica a una señal digital se realiza mediante una conversión analógico-digital.

    Este proceso de conversión analógico digital o modulación por impulsos codificados (PCM) se realiza mediante tres pasos:

    - Muestreo (sampling)
    - Cuantificación (quantization)
    - Codificación (codification)


    En el proceso de cuantificación como explicaremos se puede realizar una compresión de la voz utilizando diferentes esquemas:

    Muestreo

    El proceso de muestreo consiste en tomar valores instantáneos de una señal analógica, a intervalos de tiempo iguales
    . A los valores instantáneos obtenidos se les llama muestras.

    Este proceso se ilustra en siguiente figura:



    El muestreo se efectúa siempre a un ritmo uniforme, que viene dado por la frecuencia de muestreo fm o sampling rate.

    La condición que debe cumplir fm viene dada por el teorema del muestreo "Si una señal contiene únicamente frecuencias inferiores a f, queda completamente determinada por muestras tomadas a una velocidad igual o superior a 2f."

    De acuerdo con el teorema del muestreo, las señales telefónicas de frecuencia vocal (que ocupan la Banda de 300 a - 3.400 Hz), se han de muestrear a una frecuencia igual o superior a 6.800 Hz (2 x 3.400).

    En la practica, sin embargo, se suele tomar una frecuencia de muestreo o sampling rate de fm = 8.000 Hz. Es decir, se toman 8.000 muestras por segundo que corresponden a una separación entre muestras de:

    T=1/8000= 0,000125 seg. = 125 µs

    Por lo tanto, dos muestras consecutivas de una misma señal están separadas 125 µs que es el periodo de muestreo.

    Cuantificación


    La cuantificación es el proceso mediante el cual se asignan valores discretos, a las amplitudes de las muestras obtenidas en el proceso de muestreo. Existen varias formas de cuantificar que iremos detallando según su complejidad.

    Cuantificación uniforme

    Hay que utilizar un número finito de valores discretos para representar en forma aproximada la amplitud de las muestras. Para ello, toda la gama de amplitudes que pueden tomar las muestras se divide en intervalos iguales y a todas las muestras cuya amplitud cae dentro de un intervalo, se les da el mismo valor.

    El proceso de cuantificación introduce necesariamente un error, ya que se sustituye la amplitud real de la muestra, por un valor aproximado. A este error se le llama error de cuantificación.

    El error de cuantificación se podría reducir aumentando el número de intervalos de cuantificación, pero existen limitaciones de tipo práctico que obligan a que el número de intervalos no sobrepase un determinado valor.

    Una cuantificación de este tipo, en la que todos los intervalos tienen la misma amplitud, se llama cuantificación uniforme.

    En siguiente figura se muestra el efecto de la cuantificación para el caso de una señal analógica. El número de intervalos de cuantificación se ha limitado a ocho.

    La señal original es la de trazo continuo, las muestras reconstruidas en el terminal distante, se representan por puntos y la señal reconstruida es la línea de trazos.

    El error de cuantificación introducido en cada muestra, da lugar a una deformación o distorsión de la señal reconstruida que se representa por línea de trazos y puntos.




    Cuantificación no uniforme

    En una cuantificación uniforme la distorsión es la misma cualquiera que sea la amplitud de la muestra. Por lo tanto cuanto menor es la amplitud de la señal de entrada mayor es la influencia del error. La situación se hace ya inadmisible para señales cuya amplitud analógica está cerca de la de un intervalo de cuantificación.

    Para solucionar este problema existen dos soluciones:

    - Aumentar los intervalos de cuantificación - si hay más intervalos habrá menos errores pero necesitaremos más números binarios para cuantificar una muestra y por tanto acabaremos necesitando mas ancho de banda para transmitirla.

    - Mediante una cuantificación no uniforme, en la cual se toma un número determinado de intervalos y se distribuyen de forma no uniforme aproximándolos en los niveles bajos de señal, y separándolos en los niveles altos. De esta forma, para las señales débiles es como si se utilizase un número muy elevado de niveles de cuantificación, con lo que se produce una disminución de la distorsión. Sin embargo para las señales fuertes se tendrá una situación menos favorable que la correspondiente a una cuantificación uniforme, pero todavía suficientemente buena.

    Por lo tanto lo que podemos hacer es realizar una cuantificación no uniforme mediante un codec (compresor-decompresor) y una cuantificación uniforme según se ve en la siguiente figura:

    Ley de codificación o compresión

    El proceso de cuantificación no uniforme responde a una característica determinada llamada ley de Codificación o de compresión.

    Hay dos tipos de leyes de codificación: las continuas y las de segmentos.

    En las primeras, los intervalos de cuantificación son todos de amplitud distinta, creciendo ordenadamente desde valores muy pequeños, correspondientes a las señales de nivel bajo, a valores grandes, correspondientes a las señales de nivel alto

    En las segundas, la gama de funcionamiento se divide en un número determinado de grupos y dentro de cada grupo los intervalos de cuantificación tienen la misma amplitud, siendo distinta de unos grupos a otros.

    Normalmente se utilizan las leyes de codificación de segmentos.

    G.711 Ley A (a-law) y ley µ (u-law)

    Actualmente, las dos leyes de compresión de segmentos mas utilizadas son la ley A (a-law) y la ley µ (u-law) que dan lugar al codec g.711. La ley A (a-law) se utiliza principalmente en los sistemas PCM europeos, y la ley µ (u-law)se utiliza en los sistemas PCM americanos.

    La ley A esta formada por 13 segmentos de recta (en realidad son 16 segmentos, pero como los tres segmentos centrales están alineados, se reducen a 13). Cada uno de los 16 segmentos, esta dividido en 16 intervalos iguales entre si, pero distintos de unos segmentos a otros.

    La formulación matemática de la Ley A es:

    y= Ax / 1+ LA --------------------- para 0 =< x =< 1/A
    y= 1+ L (Ax) / 1+ LA ------------- para 1/A=< x =< 1

    siendo L logaritmo neperiano.

    El parámetro A toma el valor de 87,6 representando x e y las señales de entrada y salida al compresor.

    La ley µ se representa matemáticamente como:

    y= L(1+µx) / L (1+µ)-------------- para 0 =< x =< 1

    donde µ= 255

    En siguiente figura se representa gráficamente la ley A (a-law):

    Cuantificación diferencial

    En las señales de frecuencia vocal, predominan generalmente las bajas frecuencias, por ello las amplitudes de dos muestras consecutivas difieren generalmente en una cantidad muy pequeña. Aprovechando esta circunstancia, se ha ideado la cuantificación diferencial.

    En la cuantificación diferencial, en lugar de tratar cada muestra separadamente, se cuantifica y codifica la diferencia entre una muestra y la que le precede. Como el número de intervalos de cuantificación necesarios para cuantificar la diferencia entre dos muestras consecutivas es lógicamente inferior al necesario para cuantificar una muestra aislada, la cuantificación diferencial permite una reducción sensible de la frecuencia de transmisión en línea, ya que esta es proporcional al numero de intervalos de cuantificación

    Cuantificación diferencial delta y ADPCM (Adaptative delta PCM)

    Si en un sistema DPCM vamos aumentando la frecuencia de muestreo, llega un momento en que dos muestras consecutivas tienen una amplitud tan próxima, que no se necesita más que un solo intervalo de cuantificación para cuantificar la diferencia.

    En este caso solo se necesitaría un bit por muestra, y la velocidad de transmisión en línea (bit rate) sería igual a la velocidad de muestreo. Este tipo de modulación se conoce con el nombre de modulación delta.

    La modulación delta descrita, se denomina modulación delta porque la magnitud de la variación producida a la salida es fija. Existen otros tipos de modulación delta mas sofisticados, en los cuales dicha variación no es fija sino que depende de las variaciones de la señal de entrada. Por ejemplo ADPCM o Adaptative delta PCM se basa en ajustar la escala de cuantificación de forma dinámica para adaptarse mejor a las diferencias pequeñas o grandes.

    Codificación - Decodificación


    La codificación es el proceso mediante el cual se representa una muestra cuantificada, mediante una sucesión de "1's" y "0's", es decir, mediante un número binario.

    En el punto anterior va hemos indicado que cada muestra cuantificada se representa, o codifica mediante un numero binario. Normalmente en telefonía se utilizan 256 intervalos de cuantificación para representar todas las posibles muestras (por ejemplo para G.711 tanto ley A como ley µ), por tanto se necesitarán números binarios de 8 bits para representar a todos los intervalos (pues 28 = 256). Otros codecs que usan ADPCM o cuantificación delta utilizan menos intervalos y por tanto menos bits.

    El dispositivo que realiza la cuantificación y la codificación se llama codificador.

    La decodificación es el proceso mediante el cual se reconstruyen las muestras, a partir de la señal numérica procedente de línea. Este proceso se realiza en un dispositivo denominado decodificador.

    Al conjunto de un codificador y de un decodificador en un mismo equipo, se le llama codec.

    IMPORTANTE: De esta explicación se deduce que si queremos calcular el bit-rate de un codec necesitamos solamente multiplicar la frecuencia de muestreo (sample rate) expresada en muestras por segundo o Herzios por los bits necesarios para cuantificar cada muestra y nos da como resultados los bits por segundo (bit-rate) del codec en cuestión.

    De todos modos por la posibilidad de utilizar compresión en codecs complejos, el bit-rate no puede deducirse siempre de esta manera.

    G 711.1

    Es un nuevo standard de la ITU-T de marzo de 2008 para mejorar la norma G.711. Si desea más información sobre este codec puede visitar G.711.1

     

     
     
     
    English   |   Acerca de    |   Contacto   |   Colaborar   |   Publicidad