|
CODIFICADOR MP3 EN MATLAB Este sitio está dedicado al formato de audio MPEG-1 Capa III |
|
Psicoacústica Grupo MPEG Codificación MP3 |
ANÁLISIS PSICOACÚSTICO El modelo psicoacústico II que se usa en la Capa III tiene mejoras adicionales que se adaptan mejor a las propiedades del oído humano, en comparación con el modelo empleado en las otras dos capas (modelo I). El análisis psicoacústico tiene dos tareas que cumplir: decidir qué tipo de bloque usar, y calcular la distorsión máxima permitida. Primero el modelo convierte el audio al dominio espectral, usando una FFT de 1024 puntos para conseguir una buena resolución de frecuencia y poder calcular correctamente los umbrales de enmascaramiento. Antes de la FFT, se aplica una ventana de Hanning convencional para evitar las discontinuidades en los extremos de la señal. La salida de la FFT se usa primero para analizar qué tipo de señal está siendo procesada: una señal estacionaria hace que el modelo escoja bloques largos, y una señal con muchos transitorios da como resultado bloques cortos. El tipo de bloque se usa luego en la parte MDCT del algoritmo. Después de esto, el modelo psicoacústico calcula el mínimo umbral de enmascaramiento para cada subbanda. Estos valores de umbral se usan luego para calcular la distorsión permitida. El modelo pasa entonces las distorsiones permitidas a la sección "REPARTICIÓN DE RUIDO" en el codificador para uso posterior. El estándar 11172-3 proporciona dos modelos psicoacústicos; el modelo I es menos complejo que el modelo psicoacústico II y simplifica mucho los cálculos. Ambos modelos trabajan para cualquiera de las capas, aunque requieren adaptaciones específicas para el esquema de la Capa III. Existe considerable libertad en la implementación del modelo psicoacústico; la precisión que se requiera del modelo es dependiente de la aplicación y de la tasa de bits que se quiere lograr. Para bajos niveles de compresión, donde hay un número generoso de bits para realizar la codificación, el modelo psicoacústico puede ser completamente omitido; en cuyo caso, sólo se calcula la relación señal a ruido (SNR) más baja, y con este valor se realiza el proceso de repartición de ruido para la subbanda. A continuación se muestran los pasos generales para el cálculo psicoacústico de la señal.
(512 - 384) / 2 = 64 puntos El desplazamiento requerido es, entonces, de 320 puntos para alinear los datos del modelo I con la salida del banco de filtros polifásico.
El modelo I usa una FFT de 512 puntos para la Capa I y una FFT de 1024 puntos para las Capas II y III. Debido a que el análisis se realiza para 384 muestras en la Capa I, la FFT de 512 puntos proporciona la cobertura adecuada. El análisis psicoacústico para las Capas II y III se realiza sobre 1152 muestras, así que la FFT de 1024 puntos no proporciona cobertura total. Idealmente, la FFT debería cubrir todas las 1152 muestras; aunque 1024 puntos es un compromiso razonable ya que las muestras que se omiten, no tienen mayor impacto en el análisis psicoacústico. El modelo II usa una FFT de 1024 puntos para todas las capas. En la Capa I, el modelo centra las 384 muestras dentro de la FFT de 1024 puntos. Para las Capas II y III, el modelo ejecuta dos cálculos psicoacústicos de 1024 puntos. El primer cálculo se encarga de las 576 muestras iniciales, y el segundo cálculo se realiza sobre las últimas 576 muestras. El modelo II combina los resultados de ambos cálculos, de tal manera que el resultado total implique la selección del umbral de enmascaramiento de ruido (Noise Masking Treshold) más bajo en cada subbanda. Para simplificar los cálculos, ambos modelos procesan los valores espectrales en unidades perceptuales (el bark, relacionado con el ancho de las bandas críticas).
El modelo I identifica las componentes tonales basado en los picos locales del espectro de potencias. Después de procesar todas las componentes tonales, el modelo concentra los valores espectrales restantes en una única componente no-tonal por banda crítica. El índice de frecuencia de cada una de estas componentes no-tonales es el valor más cercano a la media geométrica de la banda crítica a la cual pertenece cada componente no-tonal. El modelo II realmente nunca separa las componentes tonales ni las no-tonales, sino que calcula un índice de tonalidad en función de la frecuencia, el cual mide el comportamiento que presenta cada tipo de componente. El modelo II usa este índice para interpolar entre valores puros TMN (Tone Masking Noise) y valores puros NMT (Noise Masking Tone). El índice de tonalidad es en realidad una medida anticipada (la cual es llamada "PREDICTABILITY MEASURE", medición de la predecibilidad): el modelo II usa datos de los dos cálculos anteriores para predecir, a través de una extrapolación lineal, los valores de la componente que está siendo procesada. Las componentes tonales son más predecibles y, por lo tanto, tienen índices de tonalidad más altos. Este método de discriminación es mejor que el usado por el modelo I.
Después de realizada esta escogencia, el modelo I calcula el efecto de enmascaramiento que cada componente enmascarante (tonal o no-tonal) tiene sobre las líneas de frecuencia adyacentes a ella. Este análisis sólo es necesario hacerlo para las líneas de frecuencia que se encuentran entre -3 y +8 barks a partir de la componente enmascarante. O sea, el análisis abarca todas las líneas de frecuencia que se encuentren tres (3) bandas críticas a la izquierda (hacia las bajas frecuencias), y ocho (8) bandas críticas a la derecha (hacia las altas frecuencias) de la componente enmascarante. Esto se debe a que el efecto de enmascaramiento de la componente tonal o no-tonal que está siendo analizada (por más intensidad que ésta tenga) es demasiado tenue por fuera de este rango. Como el modelo II nunca separa las componentes no-tonales y tonales, sino que calcula el índice de tonalidad (en función de la frecuencia) que presenta cada componente enmascarante, entonces no es necesario hacer el cálculo de los umbrales de enmascaramiento individuales.
Usando el modelo I, este umbral absoluto se combina con los umbrales individuales calculados en el paso anterior para determinar el umbral de enmascaramiento global sobre toda la banda de audio. El modelo II no calcula el umbral de enmascaramiento global, sino que trabaja todos los datos dentro de cada subbanda, de acuerdo con el índice de tonalidad que tenga cada componente enmascarante en esa subbanda.
Con el modelo I, para encontrar el umbral de enmascaramiento mínimo en cada subbanda, simplemente se extrae el mínimo valor del espectro global incluido entre las dos frecuencias límites de cada subbanda, o sea, el valor extraído del umbral global debe ser el valor mínimo de enmascaramiento en la subbanda. Este método se comporta bien para las subbandas más bajas donde la subbanda es estrecha con respecto a las bandas críticas, pero se vuelve inadecuado para las subbandas altas porque una banda crítica en esta frecuencia se distribuye sobre varias subbandas. Esta imprecisión se incrementa todavía más, debido a que el modelo I concentra todas las componentes no-tonales, dentro de cada banda crítica, en un único valor para una sola frecuencia. El modelo II selecciona el mínimo de todos los umbrales de enmascaramiento en cada subbanda sólo para regiones de frecuencia donde el ancho de la subbanda es amplio comparado con el ancho de la banda crítica. Si el ancho de la subbanda es estrecho en comparación con el ancho de la banda crítica, el modelo realiza un promedio entre todos los umbrales de enmascaramiento en esa subbanda. El modelo II es más preciso para las subbandas altas, ya que éste no concentra las componentes de ruido.
[ Principal ] |