MXPA05007183A - Reduccion del costo de transmision de factores de escala para codificacion de audio avanzada mpeg-2 usando una celosia. - Google Patents

Reduccion del costo de transmision de factores de escala para codificacion de audio avanzada mpeg-2 usando una celosia.

Info

Publication number
MXPA05007183A
MXPA05007183A MXPA05007183A MXPA05007183A MXPA05007183A MX PA05007183 A MXPA05007183 A MX PA05007183A MX PA05007183 A MXPA05007183 A MX PA05007183A MX PA05007183 A MXPA05007183 A MX PA05007183A MX PA05007183 A MXPA05007183 A MX PA05007183A
Authority
MX
Mexico
Prior art keywords
scale factor
band
scale
frequency bands
scale factors
Prior art date
Application number
MXPA05007183A
Other languages
English (en)
Inventor
Mark Stuart Vinton
Original Assignee
Dolby Lab Licensing Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dolby Lab Licensing Corp filed Critical Dolby Lab Licensing Corp
Publication of MXPA05007183A publication Critical patent/MXPA05007183A/es

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/035Scalar quantisation

Abstract

Un codificador perceptual divide una senal de audio en bloques de tiempo sucesivos, cada bloque de tiempo es dividido en bandas de frecuencia, y se asigna un factor de escala a cada una de las bandas de frecuencia. Los bitios por bloque se incrementan con los valores de los factores de escala y con las variaciones de banda a banda, en los valores de los factores de escala. Se determina un factor de escala preliminar para cada una de las bandas de frecuencia, y se optimizan los factores de escala para cada una de las bandas de frecuencia, en donde la optimizacion incluye incrementar el factor de escala hasta un valor mayor que el valor del factor de escala preliminar, para una o mas de las bandas de frecuencia, de tal forma que el incremento en el costo de los bitios, del incremento realizado, sea igual o menor que la reduccion del costo de bitios que resulta de la disminucion en las variaciones de banda a banda, en los valores de los factores de escala, que resultan de incrementar el factor de escala para cada una o mas de las bandas de frecuencia. La figura mas representativa de la invencion es la numero 1.

Description

REDUCCIÓN DEL COSTO DE TRANSMISIÓN DE FACTORES DE ESCALA PARA CODIFICACIÓN DE AUDIO AVANZADA MPEG-2 USANDO UNA CELOSÍA ANTECEDENTES DE LA INVENCIÓN Las técnicas de codificación de audio con transformación y banco de filtros, típicas, tales como la MPEG-1 de capas 1 a 3, Dolby AC-3 (también conocido como Dolby Digital) (Dolby, Dolby Digital y Dolby AC-3 son marcas comerciales de Dolby Laboratories Licensing Corporation) , y la Codificación de Audio Avanzada (AAC, por sus siglas en inglés) PEG-2, reducen las velocidades de transferencia de los datos de transmisión, asignando dinámicamente bitios, tanto en el tiempo como en la frecuencia, para remover redundancias inaudibles en la señal de audio. La asignación dinámica de los bitios se basa típicamente en principios psicoacústicos dependientes de la señal. Detalles adicionales del Dolby AC-3 pueden ser encontrados en el Estándar Digital Audio Compression (AC-3), aprobado el 10 de Noviembre de 1994. (Revisión 1) Anexo A adicionado el 12 de Abril de 1995. (Revisión 2) Fe de erratas 13 adicionada el 24 de Mayo de 1995. (Revisión 3) Anexo B y C adicionados el 20 de Diciembre de 1995. Detalles adicionales de la AAC pueden ser encontrados en "ISO/IEC MPEG-2 Audio Coding by Bosi et al", presentado en la 101a Convención del 8 al 11 de Noviembre de 1996, en Los Angeles, Preimpresión de la Sociedad de Ingeniería de Audio, 4382) . En la AAC, la asignación de bitios se consigue usando factores de escala y parámetros de ganancia global contenidos en el flujo de bitios. El espectro de audio, transformado mediante el uso de una transformación cosenoidal discreta modificada (MDCT, por sus siglas en inglés) , bien conocida, llamada también cancelación de nombres alternos en el dominio del tiempo (TDAC, por sus siglas en inglés) (Ver Princen et al., "Analysis/synthesis filter bank design based on time domain aliasing cancellation, " IEEE Trans . Acoust., Speech, Signal Processing, Vol . ASSP-34, pp. 1153-1161, Octubre de 1986), es dividido en bandas con un ancho de banda aproximadamente semicritico y los factores de escala son aplicados multiplicativamente. Los factores de escala y la ganancia global representan conjuntamente una asignación de bitios en pasos de 1.5 dB o en incrementos de bitios de aproximadamente un cuarto (la asignación exacta de los bitios, conseguida, es dependiente de las características estocásticas de la señal de audio y es complicada además por el cuantificador no lineal incorporado en la AAC) .El incremento del factor de escala en una banda, efectivamente, reduce el ruido de cuantificación en esa banda, asignando más bitios a esa banda. A la inversa, la reducción de un factor de escala incrementa el ruido de cuantificación en una banda particular, reduciendo los bitios asignados a la misma. Debido a que la AAC es un sistema de codificación de audio adaptativo, hacia delante, los factores de escala son portados por el descodificador . Esto se consigue codificando diferencialmente los factores de escala y luego realizando la codificación de Huffman a las diferencias. Los códigos de Huffman definidos en el estándar AAC, son tales que las variaciones grandes en los parámetros del factor de escala, de banda a banda, conducen a un consumo excesivo de los bitios disponibles en la forma de información secundaria, lo cual complica la derivación del factor de escala, tal como se explica en la próxima sección.
Cálculo del Factor de Escala El cálculo de los factores de escala en un codificador AAC es un problema muy difícil debido a la incertidumbre en la asignación del ruido, conseguida mediante la alteración de los factores de escala y el uso de una etapa de cuantificador no lineal . En la AAC se usan comúnmente dos técnicas para calcular los factores de escala, en especial el análisis por síntesis y la estimación directamente a partir del modelo de enmascaramiento, las cuales se describen posteriormente. Aunque la selección de los factores de escala puede ser arbitraria, dentro de cierta limitación impuesta por el estándar, estas dos técnicas son las mejor conocidas.
Cálculo del factor de escala usando análisis por síntesis El cálculo del factor de escala usando el análisis por síntesis se consigue usando dos ciclos anidados, un ciclo interno que es el responsable de la cuantificación y conteo de bitios, y un ciclo externo, que analiza el resultado del ciclo interno y altera en forma correspondiente los factores de escala. El ciclo interno altera el parámetro de ganancia global contenido en el flujo de bitios de la AAC, para asegurar que el número de bitios usados para codificar el espectro de audio no sea mayor que el número de bitios disponibles. La ganancia global se fija en un valor inicial y el espectro es cuantificado . Posteriormente se cuentan los números de bitios usados . Si el número de bitios usados es mayor que el número de bitios disponibles, entonces la ganancia global se incrementa y el espectro es cuantificado nuevamente, y se vuelve a contar el número de bitios usados . Este proceso se repite hasta que el número de bitios usados sea menor que el número de bitios disponibles. Al ciclo interno se hace referencia a menudo como "ciclo de velocidad de transferencia" porque controla la velocidad de transferencia de bitios de codificación. El ciclo externo analiza el resultado conseguido por el ciclo interno y altera los factores de escala, de tal forma que el ruido de la cuantificación en cada banda cumpla con los requerimientos psicoacústicos , tanto como sea posible. El ciclo externo inicia fijando todos los factores de escala en cero y el ciclo interno es llamado para cuantificar el espectro. Después se calcula la distorsión (ruido de la cuantificación) en cada banda y es comparada con los requerimientos de ruido para cada banda, como es calculado por el modelo psicoacústico. Si la distorsión en alguna banda es mayor que la distorsión permisible, calculada por el modelo psicoacústico, entonces se incrementa el factor de escala para esa banda. El ciclo interno es llamado nuevamente, con los factores de escala ajustados, y el proceso se repite hasta que (1) la distorsión en todas las bandas sea menor que el nivel de enmascaramiento calculado por el modelo psicoacústico o (2) hasta que todos los factores de escala hayan sido incrementados . La técnica de análisis por síntesis sufre de varios problemas; primero, la técnica es extremadamente compleja y, consecuentemente, no es apropiada para aplicaciones restringidas por la complejidad. Además, el proceso de ciclo dual, descrito anteriormente, no garantiza la convergencia hacia una solución óptima; sin embargo, a velocidades de transferencia de datos más altas, se ha demostrado que produce resultados excelentes.
Estimación de factores de escala, a partir del nivel de enmascaramiento Asumiendo que el incremento del factor de -escala, en una unidad, en una banda, conduzca a una reducción de 1.5 dB en la distorsión de la cuantificación en esa banda (un incremento en la relación de señal a ruido) (tanto la ganancia global como los factores de escala son cuantificados en pasos de 1.5 dB) , los factores de escala pueden ser derivados directamente a partir del modelo de enmascaramiento descrito en "Increased efficiency MPEG-2 ACC Encoding," by Smithers et al., Audio Engineering Society Convention Paper, Presented at the IIIth Convention, 2001 September 21-24, New York. Para esta técnica, los factores de escala son calculados primero directamente a partir del modelo de enmascaramiento, por e emplo, usando la expresión presentada a continuación en la EC. 1, en donde s± es el factor de escala para la i-ésima banda y irij es el nivel de enmascaramiento en la i-ésima banda, calculado por el modelo psicoacustico.
El espectro es cuantificado después usando el ciclo interno (o ciclo de la velocidad de transferencia) descrito en la sección previa, eliminando así la necesidad del ciclo externo de alta complejidad. Aunque esta técnica es mucho más simple que la técnica del análisis por síntesis descrita en la sección previa, y por lo tanto es apropiada para sistemas restringidos por la complejidad, el cálculo de los factores de escala a partir del modelo de enmascaramiento genera factores de escala que exhiben una mayor variación de banda a banda que aquellos generados por la técnica de análisis por síntesis, de dos ciclos. Debido a que los factores de escala son codificados diferencialmente y luego codificados por codificación de Huffman (mayores diferencias implican palabras de código Huffman más largas) , una gran variación en los factores de escala significa que el costo de bitios de la transmisión de los factores de escala es muy alto, lo cual degrada el desempeño de la estimación de los factores de escala, a partir de la técnica del nivel de enmascaramiento.
DESCRIPCIÓN DE LA INVENCIÓN La presente invención se enfoca a un método para reducir el costo total en bitios, de un codificador de audio perceptual, que emplea una asignación de bitios adaptativa, en el cual una representación en el dominio del tiempo, de una señal de audio, es dividida en bloques de tiempo sucesivos, en donde cada bloque de tiempo es dividido en bandas de frecuencia, y un factor de escala es asignado a cada una de las bandas de frecuencia, en donde el número de bitios requerido para representar cada bloque se incrementa al incrementarse los valores de los factores de escala y al incrementarse las variaciones de los valores de los factores de escala, de banda a banda. Se determina un factor de escala preliminar, para cada una de las bandas de frecuencia, y los factores de escala para cada una de las bandas de frecuencia es optimizado, en donde la optimización incluye incrementar el factor de escala hasta un valor mayor que el valor del factor de escala preliminar, para una o más de las bandas de frecuencia. Ninguna de las técnicas descritas anteriormente para calcular los factores de escala en la AAC toma en cuenta explícitamente el costo de transmitir los factores de escala hacia el descodificador . En particular, la técnica de derivación directa, más simple, puede permitir que el costo de transmisión de los factores de escala exceda el 10% (a 128 kbps para material estereofónico) de la velocidad de transferencia de datos total para transmisión de audio, degradando así el desempeño descodificado. Para abordar este problema, la presente invención emplea una técnica de optimización con programación dinámica, que incluye, por ejemplo, un enrejado y un algoritmo de búsqueda Viterbi, para reducir el costo de bitios de la transmisión de la información de factores de escala en AAC (Codificación de Audio Avanzada MPEG-2/4) . La invención minimiza una función costo que negocia el costo de transmitir los factores de escala, contra el costo de desplazar los factores de escala a partir de valores preliminares derivados por una técnica de cálculo de factores de escala preliminares. En particular, factores de escala, que tienen valores menores que otros, pueden ser desplazados a valores mayores, a fin de reducir el grado de las variaciones en el valor del factor de escala, desde una banda de factores de escala, hasta la próxima. Aunque un incremento en el valor de los factores de escala causa que más bitios sean asignados a una banda de factores de escala, existen ahorros globales de bitios en la reducción del grado de las variaciones de banda a banda en los valores de los factores de escala, debido a que las diferencias de banda a banda, son codificadas con codificación de Huffman, de tal forma que la longitud del código se incrementa al incrementar las variaciones de banda a banda. Los ahorros totales en los bitios causan que haya más bitios disponibles al cuantificador, para la asignación a bandas de factores de escala diferentes a aquellas en las cuales el valor del factor de escala se incrementa para el propósito de reducir las variaciones de banda a banda, dando por resultado entonces una mejora en la calidad del audio percibido. Aunque la invención es aplicable a formas de AAC que emplean dos ciclos anidados en el cuantificador, para derivar factores de escala preliminares, tanto un ciclo de iteración interno como un ciclo de iteración externo (como se describe en el documento de Bosi et al., citado anteriormente) , la invención es particularmente benéfica cuando se emplea en una forma de AAC en la cual el ciclo externo, que calcula el error del cuantificador y deriva los factores de escala usando análisis por síntesis, es omitido y los factores de escala preliminares son estimados usando el umbral de enmascaramiento derivado por la porción de modelo perceptual del codificador AAC. Esa forma modificada de AAC es descrita en el documento de la convención, de Smithers et al., identificado anteriormente. La técnica de programación dinámica, de conformidad con la presente invención, es substancialmente menos compleja desde el punto de vista de cómputo, que el ciclo exterior omitido, pero da por resultado una señal codificada que tiene substancialmente la misma calidad que la producida por un codificador AAC empleando dos ciclos anidados.
DESCRIPCIÓN DE LOS DIBUJOS La figura 1 es un diagrama de bloques esquemático, funcional, de un proceso de codificación que incorpora la optimización de los factores de escala con programación dinámica, de conformidad con la presente invención. La figura 2 es un diagrama de flujo simplificado, que muestra la aplicación de un algoritmo de búsqueda Viterbi, a una ecuación de costos de bitios, del tipo empleado preferentemente en la presente invención. La figura 3 son gráficas de valores de factores de escala preliminares versus bandas de factores de escala, para el caso de factores de escala preliminares que resultan de una técnica de estimación directa de factores de escala y para factores de escala ajustados, que resultan de una optimización del costo de bitios, de conformidad con la invención. La figura 4 son gráficas de formas de onda ejemplares, que indican el costo de bitios de los factores de escala, por cuadro, que resultan de una técnica de estimación directa de factores de escala, y para factores de escala ajustados, que resultan de una optimización de costos de bitios, de conformidad con la presente invención.
EL MEJOR MODO PARA LLEVAR A CABO LA INVENCIÓN La figura 1 muestra una representación de alto nivel, simple, de un proceso de codificación AAC, que incorpora la optimización de factores de escala con programación dinámica, de conformidad con la presente invención. La figura muestra la optimización de factores de escala de conformidad con la presente invención, junto con la estimación directa de factores de escala a partir de la información del modelo, descrita anteriormente. Aunque otras técnicas de derivación de factores de escala pueden ser mejoradas usando las enseñanzas de esta invención, la invención es par icularmente conveniente para el uso con la técnica de estimación directa. En la figura 1, el audio de entrada es transformado usando una MDCT 2 , seguido por el pre-procesamiento 4 (por ejemplo, la corrección de ruido temporal (TNS, por sus siglas en inglés) , predicción y codificación en el lado intermedio (MS, por sus siglas en inglés) para aplicaciones estereofónicas) . La entrada se pasa también a un modelo psicoacústico 6, que calcula el nivel de enmascaramiento. Como se explicó anteriormente, el modelo de enmascaramiento se usa directamente para calcular los factores de escala para cada banda ("cálculo de los factores de escala" 8) . Aunque los factores de escala preliminares derivados mediante esta técnica se aproximan muy cercanamente al requerimiento psicoacústico, la alta variación de banda a banda en los valores de los factores de escala, conduce a un alto costo de transmisión. Para minimizar este costo, la optimización de los factores de escala 10, de conformidad con la presente invención, procesa los factores de escala preliminares antes de su aplicación al espectro de MDCT en el ciclo de la velocidad de transferencia 12 y en la codificación sin ruido (codificación de Huffman diferencial) 14. Se asume que el incremento del valor de un factor de escala en una unidad y en una banda, incrementa el número de bitios usados en esa banda por un cuarto de bitio y por coeficiente de MDCT. Aunque esto no es siempre exacto debido a la naturaleza estoc stica no conocida, de la señal y el cuantificador no uniforme usado en la AAC, en promedio es una suposición razonable . Además se asume que los factores de escala preliminares han sido ya determinados para el desempeño psicoacústico apropiado, ya sea mediante técnicas de análisis por síntesis o de estimación directa con enmascaramiento. La siguiente fórmula de costos negocia el costo de la transmisión de factores de escala, contra el costo de aplicar más bitios a una banda particular. La función del costo se proporciona abajo en la Ecuación 2.
En la Ecuación 2, C es el costo total de desplazar los factores de escala, los cuales deberían de hacerse tan negativos como fuese posible a fin de reducir el costo relativo de la transmisión de factores de escala. El símbolo s representa los factores de escala preliminares derivados, por ejemplo, por consideraciones psicoacústicas mediante cualesquiera de las técnicas analizadas anteriormente. Además, ¾. es el nuevo conjunto de factores de escala en la Ecuación 2 y B¿ es el número de coeficientes en la i-ésima banda de factores de escala. La función DO es la consulta de Huffman de los factores de escala codificados diferencialmente . La escala por banda o± es un valor entre 0 y 1 que estima el número de los coeficientes de MDCT que serán cuantificados como valores diferentes de cero. El parámetro a±, el cual es una función del valor del factor de escala, es opcional (si es omitido es reemplazado por un valor constante igual a 1) pero mejora en gran medida el desempeño del algoritmo si es estimado con exactitud. En esta ecuación, se asume que a¿ es constante si los factores de escala son modificados sólo ligeramente con respecto a sus valores preliminares. Por simplicidad, esto puede conseguirse contando el número de coeficientes MDCT en una banda que tenga un valor absoluto mayor que algún umbral predefinido. Para la Ecuación 2 del costo de bitios de los factores de escala, únicamente se permite que los nuevos factores de escala tomen valores mayores o iguales que los valores preliminares, de aquí que el sistema no puede disminuir los bitios asignados a una banda sino que únicamente puede incrementar el número de bitios si los bitios adicionales que resultan de un factor de escala incrementado, son más baratos que el costo de los factores de escala codificado diferencialmente . La función D(SÍ-SÍ_!), la consulta de Huffman, de los factores de escala codificados diferencialmente , aplicados al conjunto original de factores de escala, es una constante en la Ecuación 2 y puede ser removida en la práctica. Se desea optimizar el valor del factor de escala, en cada banda de factores de escala, a fin de minimizar el número total de bitios requeridos. Una optimización conveniente puede ser conseguida .poblando un enrejado (al que a veces se hace referencia como una "celosía") de tal manera que sus nodos en cada nivel o etapa consecutiva (bandas de factores de escala "i") son los estados posibles (valores de los factores de escala "k") para esa etapa y mediante la aplicación de un algoritmo de búsqueda apropiado, tal como un algoritmo de búsqueda Viterbi, el cual es una técnica de búsqueda de un costo mínimo, particularmente conveniente para un enrejado. En este contexto, el algoritmo Viterbi determina la trayectoria de bitios mínima a través del enrejado, optimizando con ello el valor del factor de escala, en cada banda de factores de escala. El algoritmo Viterbi calcula la mejor (más barata) trayectoria para cada nodo (valor del factor de escala) y en cada etapa (banda de factores de escala) encontrando la mejor extensión (velocidad de transferencia de bitios más baja) desde los nodos previos (valores de los factores de escala) . Esos cálculos son realizados para cada etapa (banda de factores de escala) hasta la última. En cada etapa (banda de factores de escala) , el algoritmo mantiene un recuento de: (1) la mejor trayectoria hacia cada nodo (valor del factor de escala), y (2) el costo acumulativo hasta ese nodo (valor del factor de escala) . Conocer la mejor trayectoria hacia un nodo es equivalente a conocer el valor de cada nodo (factor de escala) el valor del mejor nodo predecesor (factor de escala), determinando así la mejor trayectoria a través del enrejado y minimizando el número total de bitios requeridos. El valor del factor de escala en cada banda de factores de escala, es optimizado para cada cuadro (bloque) de audio digital sucesivo. El algoritmo de búsqueda Viterbi es bien conocido. Ver, por ejemplo, el Capitulo 15 ("Codificación de Arbol y Enrejado") de Vector Quantization and Signal Compression by Alien Gersho and Robert M. Gray, Kluwer Academic Publishers, Boston, 1992, pp . 555-586. Más específicamente, para minimizar función costo en la Ecuación 2, se puede emplear una técnica de optimización con programación dinámica, tal como un algoritmo de codificación Viterbi, como sigue. Se construye una celosía o enrejado con el k-ésimo estado en la ?-ési a etapa, denotado como i y el costo acumulativo en cualquier estado k y en la etapa i es denotado como Ck,j, Cada etapa en la celosía representa los posibles valores del nuevo conjunto de factores de escala después de la optimización. El algoritmo se calcula después usando los siguientes pasos : 1) Inicializar i = 0 y Ck/j = 0 Para todas las k tal que son el conjunto de factores de escala preliminares) encontrar (EC.3) 3) Si i < Número de bandas de factores de escala i = i + 1, regresar al paso 2. El nuevo conjunto de factores de escala, "si, son la trayectoria a través de la celosía, tal que Ckri es minimizado en la etapa final. El algoritmo de búsqueda Viterbi es bien comprendido y técnicas de implementación eficientes se encuentran ampliamente disponibles. Se pueden emplear alternativas a un algoritmo de búsqueda Viterbi, tal como por ejemplo otras técnicas de optimización en celosías. Un ejemplo de la aplicación de un algoritmo de búsqueda Viterbi en la Ecuación 3 se describe ahora con relación al diagrama de flujo de la Figura 2·. La figura 2 muestra un diagrama de flujo de un proceso que emplea un algoritmo de búsqueda Viterbi para minimizar la función costo de la Ecuación 3 para cada cuadro de audio digital . Como se indica en el bloque 2, primero se estima el factor de escala para cada banda de factores de escala, tomando en cuenta los requerimientos psicoacúst icos . Esto puede conseguirse, por e emplo, en la manera descrita en el documento de Smithers et al, mencionado anteriormente. Los factores de escala para cada banda de factores de escala son representados por un arreglo, SF[i],en donde la variable " puede variar de cero a N-l, en donde N es el número de las bandas de factores de escala en un cuadro de audio. Un arreglo secundario, Costo [k] , representa el costo acumulativo de una trayectoria a través del enrejado. Una matriz, Historia [i] [k] , almacena la trayectoria más barata hacia cada nodo (valor del factor de escala) en una etapa (banda de factores de escala) en el enrejado. La variable " " (el valor del factor de escala) puede variar desde cero hasta MAX-1, en donde MAX es el número de valores de factores de escala. Un contador de etapas (banda de factores de escala) "i" es inicializado a cero en un bloque inicializador 104, que, además de inicializar la banda de factores de escala tti " a cero, inicializa también la Historia [i] [k] en cero y el Costo [k] en cero. El contador de etapas es incrementado en el bloque 116 hasta que todas las bandas de factores de escala i son procesadas como lo determina el bloque de decisiones 114. Para cada etapa (banda de factores de escala) i en el enrejado, se determina la ruta más barata hacia cada nodo (valor del factor de escala) k en esa etapa. Esto es realizado usando los dos ciclos anidados, un ciclo 108 y un ciclo 110.
La variable k en el bloque de decisiones 118 es inicializada a cero por el bloque 116 y es incrementada por el bloque 128 del primer ciclo anidado 108, el ciclo k", hasta todos los valores de factores de escala posibles, representados por los nodos en la i-ésima etapa (i-ésima banda de factores de escala) sean verificados con respecto al costo, usando el segundo ciclo anidado 110, el ciclo m" . En el bloque 130, el segundo ciclo anidado 110 calcula el costo acumulativo de la trayectoria, desde la i-ésima-1 etapa (i-ésima-1 etapa (i-ésima-1 banda de factores de escala) hasta la i-ésima etapa (i-ésima banda de factores de escala) del enrejado de conformidad con la Ecuación 3 si el valor del factor de escala para la i-ésima banda de factores de escala es mayor o igual que el estimado del factor de escala preliminar (bloque 102) . Si el factor de escala no es mayor o igual que el factor de escala preliminar para esa banda de factores de escala, entonces se fija el costo acumulativo para esa banda de factores de escala, por ejemplo, como un valor arbitrariamente grande para asegurar que esta trayectoria a través del enre ado no es posible. La variable m en el bloque de decisión 124 es inicializada a cero por el bloque 122 y es incrementada por el bloque 132 del segundo ciclo anidado 110. La variable "m" (el número de nodos pasados en la trayectoria) puede variar de cero a MAX-l, en donde MAX es el número de nodos pasados en la trayectoria. El costo acumulativo para cada conjunto de nodos pasados en la trayectoria, en un arreglo temporal, TempCosto [m] , el valor del cual está dado por : TempCost[m]=Cost[m]+ Alfa [i] ^(k-SF[i])*B[i]/4+D(}c-m). en donde Alfa [i] es un escalamiento por bandas de factores de escala para compensar coeficientes de MDCT cuantificados como cero (ver ax en la Ecuación 3) , B [i] es el ancho de banda del factor de escala (ver B± en la Ecuación 3) y DO es la consulta en tabla de consulta de Huffman del costo de transmisión del factor de escala (ver la Ecuación 3) . El costo acumulativo temporal se calcula y almacena para todos los posibles valores de los nodos pasados del mapa de trayectorias m en el bloque 130. Una vez que los costos acumulativos para la transición de cada uno de los posibles nodos pasados, m, hacia el nodo presente, k, sean calculados, como es determinado por el bloque de decisiones 124, se encuentra y almacena el costo mínimo en el arreglo Costo2 [k] en el bloque 126. También, la trayectoria más barata hacia la i-ésima etapa y el k-iésimo nodo es almacenada en la matriz Historia [i] [k] en el bloque 126. Una vez que todos los nodos presentes J en la i-ésima etapa han sido procesados, tal como lo determina el bloque de decisión 118, el arreglo Costo2 [k] es copiado en el arreglo Costo [k] en el bloque 120 en un ciclo anidado i 106 y el procesamiento se repite hasta que todas las bandas de factores de escala hayan sido procesadas . Una vez que todas las bandas hayan sido procesadas, tal como lo determina el bloque de decisión 114, el arreglo Costo [k] contiene el costo acumulativo para cada trayectoria a través del enrejado. El valor mínimo en el arreglo Costo [k] es determinado por el bloque 134 y el Indice para ese valor (L) identifica el nuevo valor del factor de escala, ajustado, para la última banda de factores de escala (i = N-l) . Posteriormente, un contador wi " se disminuye en forma repetida, por un segundo ciclo (no anidado) i 112, iniciando desde i = N-l por el bloque 140. La matriz Historia [i] [k] se usa para realizar un rastreo hacia atrás, a través del enrejado, para encontrar cada nodo previo a lo largo de la ruta más barata, a medida que la banda de factores de escala i regrese de N-l a cero, identificando con ello el valor del factor de escala para un costo de bitios óptimo, para cada banda de factores de escala, el cual es proporcionado en la salida 146. Esto es realizado en el ciclo 112 mediante la disminución repetida de i en el bloque 140 y determinando el valor del factor de escala, histórico, óptimo, k, para cada banda de factores de escala i en el bloque 142. El bloque 144 identifica el nuevo valor del factor de escala, ajustado, para cada banda de factores de escala, sucesiva, hacia atrás, cuando i es disminuido desde N-l hasta cero. La figura 3 muestra el efecto de aplicar la optimización de factores de escala, de la presente invención, a los factores de escala preliminares, derivados mediante la técnica de estimación directa, para un solo cuadro de audio de la AAC . Los circuios graficados en la Figura 3 representan los factores de escala no ajustados; mientras que los puntos graficados como positivos representan los factores de escala ajustados, de conformidad con una aplicación de la presente invención. La técnica de optimización de factores de escala, de conformidad con la presente invención, reduce en gran medida la variación de los factores de escala. También, los factores de escala ajustados son siempre incrementados, no sólo ahorrando bitios en forma global, sino que disminuyendo el ruido de la cuantificación no únicamente en las bandas en las cuales se incrementan los factores de escala, sino que también en otras bandas, como un resultado de los ahorros de bitios totales (permitiendo asi que más bitios sean asignados a otras bandas) . Los ahorros de bitios conseguidos mediante esta técnica se muestran en la figura 4, la cual gráfica el costo de transmitir los factores de escala por cuadro de un solo segmento de audio, con y sin el uso de la optimización de conformidad con la presente invención. La línea superior en la figura 4 es el costo de la transmisión sin el uso de la presente invención, mientras que la linea inferior muestra el costo de la transmisión de bitios, con el uso de la presente invención. A partir de la figura 4, se observará que el costo de los bitios, por cuadro, para la transmisión de los factores de escala, es reducido en gran medida mediante la presente invención. Deberá comprenderse 'que la implementacion de otras variaciones y modificaciones de la invención y sus diferentes aspectos, serán evidentes para los experimentados en la técnica, y que la invención no se encuentra limitada por estas modalidades específicas descritas. Por lo tanto se contempla cubrir, a través de la presente invención, cualesquiera y todas modificaciones, variaciones o equivalentes que se encuentren dentro del verdadero espíritu y alcance de los principios subyacentes básicos descritos y reivindicados en la presente. La presente invención y sus diferentes aspectos pueden ser implementados como funciones de software ejecutadas en procesadores de señales digitales, en computadoras digitales de propósito general, programadas, y/o computadoras digitales de propósitos especiales. Las interfases entre los flujos de señales analógicas y digitales pueden ser ejecutadas en hardware apropiado y/o como funciones en software y/o firmware.

Claims (7)

  1. REIVINDICACIONES 1. Un método para reducir el costo total de bitios, de un codificador de audio perceptual que emplea una asignación adaptativa de bitios en la que una representación en el dominio del tiempo de una señal de audio es dividida en bloques de tiempo sucesivos, cada bloque de tiempo es dividido en bandas de frecuencia, y se asigna un factor de escala a cada una de las bandas de frecuencia, en donde el número de bitios requeridos para representar cada bloque se incrementa cuando se incrementan los valores de los factores de escala y cuando se incrementan las variaciones de banda a banda, en los valores de los factores de escala, caracterizado porque comprende: determinar un factor de escala preliminar para cada una de las bandas de frecuencia, y, optimizar los factores de escala para cada una de las bandas de frecuencia, la optimización incluye incrementar el factor de escala hasta un valor mayor que el valor del factor de escala preliminar para una o mas de las bandas de frecuencia, de tal forma que el incremento en el costo de bitios de ese incremento realizado, es igual o menor que la reducción del costo de bitios que resulta de disminuir las variaciones de banda a banda, en los valores de factores de escala que resultan de incrementar el factor de escala para una o más de las bandas de frecuencia .
  2. 2. Un método de conformidad con la reivindicación 1, caracterizado porque la optimización incluye minimizar una función de costo de bitios.
  3. 3. Un método de conformidad con la reivindicación 2, caracterizado porque la minimización minimiza el costo de los bitios de una trayectoria a través de un enrejado en el cual sus nodos son los posibles valores de los factores de escala, en cada banda de factores de escala, consecutiva.
  4. 4. Un método de conformidad con la reivindicación 3, caracterizado porque la minimización es realizada por un algoritmo de búsqueda Viterbi .
  5. 5. Un método de conformidad con cualesquiera de las reivindicaciones 1 a 4, caracterizado porque el codificador de audio perceptual codifica, mediante codificación de Huffman, las diferencias entre los valores de los factores de escala de las bandas de frecuencia vecinas, en donde un incremento en las variaciones de banda a banda, en los valores de los factores de escala, incrementa el número de bitios requeridos por la codificación de Huffman.
  6. 6. Un método de conformidad con cualesquiera de las reivindicaciones 1 a 5, caracterizado porque la derivación de un factor de escala preliminar para cada una de las bandas de frecuencia, emplea al menos un ciclo iterativo .
  7. 7. Un método de conformidad con la reivindicación 6, caracterizado porgue el codificador de audio perceptual genera un modelo de enmascaramiento, y la derivación emplea un ciclo iterativo y calcula factores de escala en base al modelo de enmascaramiento.
MXPA05007183A 2003-01-02 2003-12-16 Reduccion del costo de transmision de factores de escala para codificacion de audio avanzada mpeg-2 usando una celosia. MXPA05007183A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/336,637 US7272566B2 (en) 2003-01-02 2003-01-02 Reducing scale factor transmission cost for MPEG-2 advanced audio coding (AAC) using a lattice based post processing technique
PCT/US2003/040173 WO2004061823A1 (en) 2003-01-02 2003-12-16 Reducing scale factor transmission cost for mpeg-2 aac using a lattice

Publications (1)

Publication Number Publication Date
MXPA05007183A true MXPA05007183A (es) 2005-09-12

Family

ID=32681060

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA05007183A MXPA05007183A (es) 2003-01-02 2003-12-16 Reduccion del costo de transmision de factores de escala para codificacion de audio avanzada mpeg-2 usando una celosia.

Country Status (18)

Country Link
US (1) US7272566B2 (es)
EP (1) EP1581928B1 (es)
JP (1) JP4425148B2 (es)
KR (1) KR101045520B1 (es)
CN (1) CN1735925B (es)
AT (1) ATE412960T1 (es)
AU (1) AU2003303495B2 (es)
CA (1) CA2507535C (es)
DE (1) DE60324465D1 (es)
DK (1) DK1581928T3 (es)
ES (1) ES2312852T3 (es)
HK (1) HK1079327A1 (es)
IL (1) IL168636A (es)
MX (1) MXPA05007183A (es)
MY (1) MY138588A (es)
PL (1) PL208346B1 (es)
TW (1) TWI335145B (es)
WO (1) WO2004061823A1 (es)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005292702A (ja) * 2004-04-05 2005-10-20 Kddi Corp オーディオフレームに対するフェードイン/フェードアウト処理装置及びプログラム
US8170879B2 (en) * 2004-10-26 2012-05-01 Qnx Software Systems Limited Periodic signal enhancement system
US7949520B2 (en) * 2004-10-26 2011-05-24 QNX Software Sytems Co. Adaptive filter pitch extraction
US7716046B2 (en) * 2004-10-26 2010-05-11 Qnx Software Systems (Wavemakers), Inc. Advanced periodic signal enhancement
US7610196B2 (en) * 2004-10-26 2009-10-27 Qnx Software Systems (Wavemakers), Inc. Periodic signal enhancement system
US8543390B2 (en) 2004-10-26 2013-09-24 Qnx Software Systems Limited Multi-channel periodic signal enhancement system
US7680652B2 (en) * 2004-10-26 2010-03-16 Qnx Software Systems (Wavemakers), Inc. Periodic signal enhancement system
US8306821B2 (en) 2004-10-26 2012-11-06 Qnx Software Systems Limited Sub-band periodic signal enhancement system
KR100707173B1 (ko) * 2004-12-21 2007-04-13 삼성전자주식회사 저비트율 부호화/복호화방법 및 장치
US7590523B2 (en) * 2006-03-20 2009-09-15 Mindspeed Technologies, Inc. Speech post-processing using MDCT coefficients
ES2623226T3 (es) * 2006-07-04 2017-07-10 Dolby International Ab Unidad de filtro y procedimiento de generación de respuestas al impulso de filtro de subbanda
US8010370B2 (en) * 2006-07-28 2011-08-30 Apple Inc. Bitrate control for perceptual coding
US8032371B2 (en) * 2006-07-28 2011-10-04 Apple Inc. Determining scale factor values in encoding audio data with AAC
CN101308659B (zh) * 2007-05-16 2011-11-30 中兴通讯股份有限公司 一种基于先进音频编码器的心理声学模型的处理方法
EP2159790B1 (en) * 2007-06-27 2019-11-13 NEC Corporation Audio encoding method, audio decoding method, audio encoding device, audio decoding device, program, and audio encoding/decoding system
US20110035212A1 (en) * 2007-08-27 2011-02-10 Telefonaktiebolaget L M Ericsson (Publ) Transform coding of speech and audio signals
US8904400B2 (en) 2007-09-11 2014-12-02 2236008 Ontario Inc. Processing system having a partitioning component for resource partitioning
US8850154B2 (en) 2007-09-11 2014-09-30 2236008 Ontario Inc. Processing system having memory partitioning
US8694310B2 (en) 2007-09-17 2014-04-08 Qnx Software Systems Limited Remote control server protocol system
CN101854175B (zh) * 2007-10-12 2013-04-17 联咏科技股份有限公司 可降低信号功率频谱密度的编码方法
GB2454190A (en) * 2007-10-30 2009-05-06 Cambridge Silicon Radio Ltd Minimising a cost function in encoding data using spectral partitioning
US8209514B2 (en) 2008-02-04 2012-06-26 Qnx Software Systems Limited Media processing system having resource partitioning
CN102132494B (zh) * 2008-04-16 2013-10-02 华为技术有限公司 通信方法和通信装置
US8290782B2 (en) * 2008-07-24 2012-10-16 Dts, Inc. Compression of audio scale-factors by two-dimensional transformation
JP5304504B2 (ja) * 2009-07-17 2013-10-02 ソニー株式会社 信号符号化装置、信号復号装置、信号処理システム、これらにおける処理方法およびプログラム
US8380524B2 (en) * 2009-11-26 2013-02-19 Research In Motion Limited Rate-distortion optimization for advanced audio coding
EP2346031B1 (en) * 2009-11-26 2015-09-30 BlackBerry Limited Rate-distortion optimization for advanced audio coding
RU2648595C2 (ru) 2011-05-13 2018-03-26 Самсунг Электроникс Ко., Лтд. Распределение битов, кодирование и декодирование аудио
US9293146B2 (en) * 2012-09-04 2016-03-22 Apple Inc. Intensity stereo coding in advanced audio coding
US20140344159A1 (en) * 2013-05-20 2014-11-20 Dell Products, Lp License Key Generation
EP2830058A1 (en) * 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Frequency-domain audio coding supporting transform length switching
TWI557726B (zh) * 2013-08-29 2016-11-11 杜比國際公司 用於決定音頻信號的高頻帶信號的主比例因子頻帶表之系統和方法
US10339947B2 (en) * 2017-03-22 2019-07-02 Immersion Networks, Inc. System and method for processing audio data
CN110426569B (zh) * 2019-07-12 2021-09-21 国网上海市电力公司 一种变压器声信号降噪处理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581653A (en) 1993-08-31 1996-12-03 Dolby Laboratories Licensing Corporation Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
US6430533B1 (en) * 1996-05-03 2002-08-06 Lsi Logic Corporation Audio decoder core MPEG-1/MPEG-2/AC-3 functional algorithm partitioning and implementation
US5845249A (en) * 1996-05-03 1998-12-01 Lsi Logic Corporation Microarchitecture of audio core for an MPEG-2 and AC-3 decoder
US6226616B1 (en) * 1999-06-21 2001-05-01 Digital Theater Systems, Inc. Sound quality of established low bit-rate audio coding systems without loss of decoder compatibility
FR2822122B1 (fr) * 2001-03-14 2003-05-23 Nacam Assemblage d'un etrier de colonne de direction avec un pignon de direction d'un vehicule automobile
US7027982B2 (en) * 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
US6934677B2 (en) * 2001-12-14 2005-08-23 Microsoft Corporation Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands

Also Published As

Publication number Publication date
DK1581928T3 (da) 2009-01-19
CA2507535A1 (en) 2004-07-22
AU2003303495B2 (en) 2009-02-19
CN1735925A (zh) 2006-02-15
EP1581928A1 (en) 2005-10-05
KR101045520B1 (ko) 2011-06-30
DE60324465D1 (de) 2008-12-11
ATE412960T1 (de) 2008-11-15
PL377709A1 (pl) 2006-02-06
WO2004061823A1 (en) 2004-07-22
EP1581928B1 (en) 2008-10-29
US7272566B2 (en) 2007-09-18
JP2006512617A (ja) 2006-04-13
CN1735925B (zh) 2010-04-28
MY138588A (en) 2009-07-31
PL208346B1 (pl) 2011-04-29
IL168636A (en) 2011-01-31
TW200419929A (en) 2004-10-01
AU2003303495A1 (en) 2004-07-29
CA2507535C (en) 2013-02-12
HK1079327A1 (en) 2006-03-31
ES2312852T3 (es) 2009-03-01
KR20050089870A (ko) 2005-09-08
US20040131204A1 (en) 2004-07-08
JP4425148B2 (ja) 2010-03-03
TWI335145B (en) 2010-12-21

Similar Documents

Publication Publication Date Title
AU2003303495B2 (en) Reducing scale factor transmission cost for MPEG-2 AAC using a lattice
US7383180B2 (en) Constant bitrate media encoding techniques
KR101278805B1 (ko) 엔트로피 코딩 방법 및 엔트로피 디코딩 방법
EP2054882B1 (en) Arbitrary shaping of temporal noise envelope without side-information
CA2327405C (en) Perceptual audio coder bit allocation scheme providing improved perceptual quality consistency
CN109313908B (zh) 用于对音频信号进行编码的音频编码器以及方法
US8374857B2 (en) Estimating rate controlling parameters in perceptual audio encoders
JP4903130B2 (ja) 知覚コーディングのビット割り当てにおける複雑さを軽減した計算方法
US7650277B2 (en) System, method, and apparatus for fast quantization in perceptual audio coders
KR101789083B1 (ko) 분포 양자화 및 코딩을 사용하는 누적 합계 표현의 모델링에 의한 오디오 신호 엔벨로프 인코딩, 처리 및 디코딩을 위한 장치 및 방법
KR101789085B1 (ko) 분포 양자화 및 코딩을 사용하는 오디오 신호 엔벨로프의 분할에 의한 오디오 신호 엔벨로프 인코딩, 처리 및 디코딩을 위한 장치 및 방법
JP2003345398A (ja) オーディオ信号符号化方法
JP2000137497A (ja) デジタル音響信号符号化装置、デジタル音響信号符号化方法及びデジタル音響信号符号化プログラムを記録した媒体
JP2003108192A (ja) オーディオ信号符号化方法
CA2686264A1 (en) Optimization of mp3 encoding with complete decoder compatibility

Legal Events

Date Code Title Description
FG Grant or registration