Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Ir a la navegaciónIr a la búsqueda
La ley A (A-Law) es un sistema de cuantificación logarítmica de señales de audio, usado
habitualmente para compresión en el campo de comunicaciones telefónicas. Este sistema de
codificación es usado en Europa y en el resto del mundo, a diferencia de Estados Unidos,
Canadá y Japón donde se utiliza un sistema similar llamado ley Mu. Forma parte de la
Recomendación G.711 de la UIT-T.
Tipos de algoritmos[editar]
Existen dos tipos de algoritmos de Ley-A: una versión analógica y otra digital cuantizada.
Versión analógica[editar]
Para una entrada determinada, la ecuación para la codificación según la Ley A es:
en la cual:
: es la función signo.
Si A = 1, la entrada es igual a la salida.
La función inversa es la siguiente:
en la cual es la función exponencial.
Versión digital[editar]
La Ley A, en su forma cuantificada digital está definida en la Recomendación
G.711. El comportamiento de la cuantificación se aproxima al de la codificación
analógica mediante 14 segmentos rectilíneos (7 para señales positivas y 7 para
negativas), pero como los segmentos que pasan por el origen son colineales,
éstos se consideran uno solo. 2Los segmentos se denominan ±0, ±1 hasta ±6.
Digitalmente, es aplicada una cuantificación no uniforme (logarítmica) a la señal
original, en la cual existen pequeños pasos de cuantificación para los valores
pequeños de amplitud y pasos de cuantificación grandes para los valores grandes
de amplitud. El algoritmo, en su versión digital, es un sistema de compresión con
pérdidas en comparación con la codificación lineal normal. Esto significa que al
recuperar la señal, ésta no será exactamente igual a la original. La codificación de
Ley-A toma los 13 bits (ó 16 bits convertidos a 13) de las muestras de las señales
de audio y las comprime a un valor de 8 bits, así: 3
0 S0000000ABCDX S000ABCD
0 S0000001ABCDX S001ABCD
±1 S000001ABCDXX S010ABCD
±2 S00001ABCDXXX S011ABCD
±3 S0001ABCDXXXX S100ABCD
±4 S001ABCDXXXXX S101ABCD
±5 S01ABCDXXXXXX S110ABCD
±6 S1ABCDXXXXXXX S111ABCD
se divide por tramos la curva . Cada segmento es representado por tres bits,
los cuales pasan al código comprimido después del bit de signo "S".
Adicionalmente, la Recomendación G.711 especifica que los bits pares
resultantes deben ser invertidos antes de enviar el octeto de bits, lo que sirve para
aumentar la densidad de transiciones y facilitar el proceso de recuperación de la
señal de reloj del sistema en el receptor PCM. La inversión del código comprimido
se lleva a cabo sometiéndolo a la operación o exclusiva con el valor hexadecimal
0x55 (equivalente al valor binario 0b10101010). La decodificación del patrón
comprimido consiste en invertir los pasos anteriormente descritos obteniéndose
esta segunda tabla:
S000ABCD S0000000ABCD1
S001ABCD S0000001ABCD1
S010ABCD S000001ABCD10
S011ABCD S00001ABCD100
S100ABCD S0001ABCD1000
S101ABCD S001ABCD10000
S110ABCD S01ABCD100000
S111ABCD S1ABCD1000000
Implementación[editar]
Como en la Ley Mu, existen tres formas de implementar el algoritmo de la Ley
A:
Funcionamiento[editar]
El algoritmo Ley A basa su funcionamiento en un proceso de compresión y
expansión llamado companding. Se aplica una compresión/expansión de las
amplitudes y posteriormente una cuantificación uniforme. Las amplitudes de la
señal de audio pequeñas son expandidas y las amplitudes más elevadas son
comprimidas.
Esto se puede entender de la siguiente forma; cuando una señal pasa a
través de un compansor (compresor-expansor), el intervalo de las amplitudes
pequeñas de entrada es representado en un intervalo más largo en la salida,
y el intervalo de las amplitudes más elevadas pasa a ser representado en un
intervalo más pequeño en la salida. En la siguiente figura podemos verlo con
claridad:
Ésta figura muestra que el rango de los valores de entrada (línea horizontal)
contenidos en el intervalo [-0.2,0.2] (amplitudes pequeñas) están
representados en la salida (línea vertical) en el intervalo [-0.7,0.7],
aproximadamente. Podemos comprobar que hay una expansión.
Por otra parte vemos que los valores de entrada contenidos en el intervalo [-
1,-0,6] y [0.6,1] son representados en la salida en los intervalos [-1, -0.9,] y
[0.9,1]. Podemos comprobar que se produce una compresión.
Digitalmente, todo este esquema es equivalente a aplicar una cuantificación
no uniforme (logarítmica) a la señal original, donde tendremos pequeños
pasos de cuantificación para los valores pequeños de amplitud y pasos de
cuantificación grandes para los valores grandes de amplitud. Para recuperar
la señal en el destino tendremos que aplicar la función inversa.
Por lo tanto, la implementación del sistema consiste en aplicar a la señal de
entrada una función logarítmica y una vez procesada realizar una
cuantificación uniforme. Es lo mismo que decir que el paso de cuantificación
sigue una función del tipo logarítmico.
Ley Mu
Ir a la navegaciónIr a la búsqueda
Comparación de la compansión (compresión-expansión) de los algoritmos Ley-μ (Ley Mu) y Ley-A
Índice
1Tipos de algoritmos
o 1.1Versión analógica
o 1.2Versión digital
2Características básicas de la Ley μ
3Planteamiento del algoritmo
4Implementación
5Funcionamiento
6Véase también
7Referencias
Tipos de algoritmos[editar]
Existen dos tipos de algoritmos de Ley-Mu: una versión analógica y otra digital cuantizada.
Versión analógica[editar]
Para una entrada determinada, la ecuación para la codificación según la Ley Mu es:2
en la cual:
: es la función signo.
En el receptor, la expansión analógica viene dada por la inversa de la ecuación
anterior:
Versión digital[editar]
La Ley Mu, en su forma cuantificada digital, está definida en la
Recomendación G.711. El comportamiento de la cuantificación se aproxima al
de la codificación analógica mediante 16 segmentos rectilíneos, pero como
los segmentos que pasan por el origen son colineales, éstos se consideran
uno solo, quedando en total 15 segmentos, nombrándose éstos como 0, ±1
hasta ±7. Digitalmente, es aplicada una cuantificación no uniforme
(logarítmica) a la señal original, en la cual existen pequeños pasos de
cuantificación para los valores pequeños de amplitud y pasos de
cuantificación grandes para los valores grandes de amplitud. Sin embargo,
esta recomendación es poco clara acerca de cómo codificar los valores en el
límite de un rango (por ejemplo, si a +31 le corresponde el número
hexadecimal 0xEF o el 0xF0). Sin embargo, la Recomendación G.1913 ofrece
un ejemplo de código en lenguaje C para un codificador de Ley Mu lo que
proporciona la codificación de la tabla adjunta a esta sección.4En este caso,
cada muestra de señal de audio telefónico se convierte a su equivalente a 14
bits: un bit de signo "S" (0=negativo y 1=positivo) mas 13 bits de magnitud.
Antes de la determinación del segmento de cada muestra, el bit de signo se
retira y se aplica un desplazamiento de 33 unidades al código lineal por lo que
la mayor muestra es de 8192-33=8159 y la resolución es de 2/8159. Este
desplazamiento permite convertir los extremos de cada segmento en números
que son potencias de 2 lo que simplifica la determinación de segmento y de
paso de cuantificación.4Finalmente, el conjunto de bits se comprime, sin
afectar al bit de signo, como se indica seguidamente en la tabla:
0 S00000001ABCDX S000ABCD
±1 S0000001ABCDXX S001ABCD
±2 S000001ABCDXXX S010ABCD
±3 S00001ABCDXXXX S011ABCD
±4 S0001ABCDXXXXX S100ABCD
±5 S001ABCDXXXXXX S101ABCD
±6 S01ABCDXXXXXXX S110ABCD
±7 S1ABCDXXXXXXXX S111ABCD
S000ABCD S00000001ABCD1
S001ABCD S0000001ABCD10
S010ABCD S000001ABCD100
S011ABCD S00001ABCD1000
S100ABCD S0001ABCD10000
S101ABCD S001ABCD100000
S110ABCD S01ABCD1000000
S111ABCD S1ABCD10000000
Implementación[editar]
Existen tres formas de implementar el algoritmo de la Ley Mu:
Funcionamiento[editar]
El algoritmo de Ley Mu basa su funcionamiento en un proceso de
compresión y expansión llamado compansión. Se aplica una
compresión/expansión de las amplitudes y posteriormente una
cuantificación uniforme. Las amplitudes de la señal de audio pequeñas
son expandidas y las amplitudes más elevadas son comprimidas.
El funcionamiento se basa en que cuando una señal pasa a través de un
compansor, el intervalo de las amplitudes pequeñas de entrada es
representado por un intervalo de cuantificación más grande en la salida, y
el intervalo de las amplitudes más elevadas pasa a ser representado en
un intervalo de cuantificación más pequeño en la salida, tal como se
muestra en la figura anexa:
Representación de intervalos de cuantificación con el algoritmo de Ley Mu
La ley Mu se utiliza en Estados Unido y japón porque alli las tramas que se utilizan son de
1,55 Mb/s mientras que en Europa se utilizan tramas de 2 Mb/s, asique se utiliza la ley A.
G.711
Ir a la navegaciónIr a la búsqueda