Contenido
Principal
Psicoacústica
Definición
Aspectos relevantes
Conclusión
Grupo MPEG
Historia
Estándares MPEG
Audio MPEG
Codificación MP3
La Capa III
Análisis psicoacústico
Filtro híbrido
Cuantización
Formato
Encabezado
Información secundaria
Datos
principales
Descargas
Links
|
CODIFICACIÓN
MP3
DATOS PRINCIPALES
En esta parte del flujo de bits de
la Capa III, están incluidos los campos mostrados en la
siguiente figura:

- Factores de escala:
Éstos se usan para colorear el ruido de
cuantización. Los factores de escala se
transmiten para cada grupo de líneas de
frecuencia (bandas del factor de escala) de cada
gránulo, dependiendo del valor de scfsi para ese
grupo particular de líneas de frecuencia. La
cantidad de factores de escala realmente
transmitidos, también depende de block_type,
window_switching_flag y mixed_block_type. Los
factores de escala consumen entre 0 y 74 bits.
Código
de Huffman: Las líneas de frecuencia de
cada gránulo se dividen en tres particiones
(rzero, count1 y big_values). La partición rzero
no se codifica, ya que sólo contiene valores
iguales a cero (0). La partición count1 contiene
cuádruplos de valores iguales a -1, 0 ó 1, que
se codifican usando una de 2 posibles tablas de
Huffman, la cual ha sido especificada por
coun1table_select. Para cada valor diferente de
cero, se agrega un bit que indica el signo ('0'
si es positivo). La partición big_values fue
subdividida en tres regiones, las cuales se
codifican separadamente, usando una de 32
posibles tablas de Huffman (numeradas de 0 a 31,
pero en realidad son 30, ya que las tablas 4 y 14
no existen), o sea, una tabla por región. Dentro
de la partición big_values, los pares de líneas
de frecuencia con valor absoluto menor que 15, se
codifican directamente. Para cada valor absoluto
mayor o igual a 15, se agregan 1 ó 2 campos
extras llamados "linbitsx" o
"linbitsy" dependiendo de cuál es el
valor del par (x,y) que es mayor o igual a 15.
Este campo extra usa de 0 a 13 bits, dependiendo
del parámetro "linbits", el cual se
calcula con base en el valor máximo de la
región, como se muestra en la siguiente fórmula:

De nuevo, para cada valor diferente de
cero, se agrega bit de signo ('0' si es
positivo). Por ejemplo: Asúmase, primero que la
tabla de Huffman ya ha sido seleccionada, y
también:
Par de valores cuantizados
(x,y) = (0,15)
Máximo valor cuantizado de la región = 1039
Código de Huffman para el par (0,15) = '01101'
Valor adicional para 'y' = linbitsy = 15-15 = 0

En el caso de que 'x' también sea mayor que 14, se debe buscar el código de
Huffman para el par (15,15), y además también se debe codificar un valor adicional
llamado "linbitsx", que indica la diferencia entre 15 (máximo valor de las tablas) y
el valor verdadero de 'x'. Adicionalmente, por cada valor diferente de cero se debe
agregar un bit de signo ('0' si es positivo, '1' si es negativo). En el ejemplo, la
cantidad total de bits que se necesita para codificar el par es 17 bits, ya que se
debe agregar un bit para indicar que 'y' es diferente de cero (0).
- Datos auxiliares:
Éstos son opcionales, y la cantidad de bits
repartidos para este campo, se define por el
usuario.
[ Principal ]
Psicoacústica: [ Definición | Aspectos relevantes | Conclusión ]
Grupo MPEG: [ Historia | Estándares MPEG | Audio MPEG ]
Codificación MP3: [ La Capa III | Análisis psicoacústico | Filtro híbrido | Cuantización | Formato
Encabezado | Información secundaria | Datos principales ]
[ Descargas ]
[ Links ]
|