ES2328187T3 - Aparato y metodo para generar valores de subbanda de audio y aparato ymetodo para generar muestras de audio de dominio de tiempo. - Google Patents
Aparato y metodo para generar valores de subbanda de audio y aparato ymetodo para generar muestras de audio de dominio de tiempo. Download PDFInfo
- Publication number
- ES2328187T3 ES2328187T3 ES07819260T ES07819260T ES2328187T3 ES 2328187 T3 ES2328187 T3 ES 2328187T3 ES 07819260 T ES07819260 T ES 07819260T ES 07819260 T ES07819260 T ES 07819260T ES 2328187 T3 ES2328187 T3 ES 2328187T3
- Authority
- ES
- Spain
- Prior art keywords
- window
- coefficients
- samples
- audio
- function
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/0204—Speech 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 using subband decomposition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/45—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of analysis window
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/0248—Filters characterised by a particular frequency response or filtering method
- H03H17/0264—Filter sets with mutual related characteristics
- H03H17/0266—Filter banks
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/038—Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Liquid Crystal Substances (AREA)
- Tires In General (AREA)
- Developing Agents For Electrophotography (AREA)
- External Artificial Organs (AREA)
- Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
- Peptides Or Proteins (AREA)
- Materials For Photolithography (AREA)
Abstract
Aparato para generar valores de subbanda de audio en canales de subbanda de audio, que comprende: un divisor (110) en ventanas de análisis para dividir en ventanas una trama (120) de muestras de entrada de audio de dominio de tiempo que están en una secuencia de tiempo que se extiende desde una muestra temprana hasta una muestra posterior usando una función (190) de ventana de análisis que comprende una secuencia de coeficientes de ventana para obtener muestras divididas en ventanas, comprendiendo la función de ventana de análisis un primer número de coeficientes de ventana derivados de una función de ventana más grande que comprende una secuencia de un segundo número de coeficientes de ventana más grande, en el que los coeficientes de ventana de la función de ventana se derivan mediante una interpolación de coeficientes de ventana de la función de ventana más grande; y en el que el segundo número es un número par; y una calculadora (170) para calcular los valores de subbanda de audio usando las muestras divididas en ventanas.
Description
Aparato y método para generar valores de
subbanda de audio y aparato y método para generar muestras de audio
de dominio de tiempo.
Las realizaciones de la presente invención se
refieren a un aparato y a un método para generar valores de
subbanda de audio, a un aparato y a un método para generar muestras
de audio de dominio de tiempo y sistemas que comprenden cualquiera
de los aparatos anteriormente mencionados, que pueden implementarse
por ejemplo en el campo de la codificación de audio, decodificación
de audio modernas u otras aplicaciones relacionadas con la
transmisión de audio.
El procesamiento de audio digital moderno se
basa normalmente en esquemas de codificación que permiten una
reducción significativa en cuanto a tasas de bits, anchos de banda
de transmisión y espacio de almacenamiento en comparación con una
transmisión y almacenamiento directos de los respectivos datos de
audio. Esto se consigue codificando los datos de audio en el lado
del emisor y decodificando los datos codificados en el lado del
receptor, por ejemplo, antes de proporcionar los datos de audio
decodificados a un oyente o a un procesamiento de señal
adicional.
Los sistemas de procesamiento de audio digital
de este tipo pueden implementarse con respecto a una gran variedad
de parámetros, que normalmente influyen en la calidad de los datos
de audio transmitidos o procesados de otro modo, por un lado, y la
eficacia computacional, los anchos de banda y otros parámetros
relacionados con el rendimiento, por otro lado. Muy a menudo,
calidades más altas requieren tasas de bits más altas, una
complejidad computacional aumentada y un mayor requisito de
almacenamiento, para los datos de audio codificados
correspondientes. Por lo tanto, dependiendo de la aplicación
prevista, los factores como tasas de bits permitidas, una
complejidad computacional aceptable y cantidades aceptables de
datos deben estar equilibrados con una calidad deseable y
alcanzable.
Un parámetro adicional, que es especialmente
importante en aplicaciones en tiempo real tal como una comunicación
bidireccional o una monodireccional, el retardo impuesto por los
diferentes esquemas de codificación también puede desempeñar un
papel importante. En consecuencia, el retardo impuesto por la
codificación y decodificación de audio plantea una limitación
adicional en cuanto a los parámetros mencionados anteriormente
cuando se equilibran las necesidades y los costes de los diferentes
esquemas de codificación con un campo de aplicación específico
previsto. Puesto que tales sistemas de audio digital pueden
aplicarse en muchos campos diferentes de aplicaciones, que varían
desde transmisión de calidad ultrabaja hasta una transmisión de
calidad superior, con frecuencia se imponen diferentes parámetros y
diferentes limitaciones en los sistemas de audio respectivos. En
algunas aplicaciones, un retardo inferior puede requerir por
ejemplo una tasa de bits más alta y, por lo tanto, un ancho de
banda de transmisión aumentado en comparación con un sistema de
audio con un retardo más alto, como nivel de calidad
comparable.
Sin embargo, en muchos casos, tiene que
adoptarse un equilibrio en cuanto a diferentes parámetros tales como
la tasa de bits, complejidad computacional, requisitos de memoria,
calidad y retardo.
El documento US 6.748.363 B1 se refiere a un
método de compresión/expansión de ventana de TI. El documento
describe una tecnología propietaria para comprimir las tablas de
ventana de codificadores de audio a 1/8 de su tamaño original (o
menos) sin ninguna pérdida de calidad. La técnica para reducir los
requisitos de almacenamiento para las tablas de ventana de
codificadores de audio está basada en diferenciación múltiple.
Puesto que la diferencia entre cualquiera de dos muestras
adyacentes en la primera señal de diferencia es pequeña, así es más
eficaz almacenar esta diferencia. Esta técnica puede llevarse a cabo
varias veces más, hasta que los retornos disminuyan, y los
requisitos computacionales para deshacer la compresión aumenten. El
número óptimo de veces para diferenciar depende de la aplicación
particular y de la conformación de la ventana.
El documento US 2005/102150 A1 se refiere a un
método de filtrado de análisis/síntesis de subbanda. El documento
describe un método de codificación/decodificación de audio que puede
codificar una señal de fuente de audio y decodificar una pluralidad
de muestras de subbanda para generar una señal de fuente de audio
digital. Durante el proceso de codificación, el método genera una
suma según P muestras de audio divididas en ventanas según 2P
intervalos de dominio de tiempo, genera una suma de una primera a
una suma de orden (M-1) según 2P muestras de audio
divididas en ventanas según los 2P intervalos de dominio de tiempo y
calcula M muestras de subbanda según las M sumas. Durante el
proceso de decodificación, el método lee M muestras de subbanda a
partir de una pluralidad de muestras de subbanda correspondientes a
un primer índice de un valor variado para generar una señal de
fuente de audio digital con una transformada de coseno discreta
modificada inversa y una operación sintética.
El documento US 6.707.869 B1 se refiere a un
aparato de procesamiento de señal con un filtro de diseño de
ventana flexible. El documento describe un filtro para aplicar una
función de ventana a una señal digital. El filtro tiene una memoria
para almacenar un conjunto básico de valores que representan una
ventana única. Un adaptador puede generar a partir de este conjunto
básico una pluralidad de conjuntos adaptados de valores, donde los
conjuntos adaptados de valores definen funciones de ventana que
tienen diferentes tamaños de ventana. El adaptador tiene una
entrada para recibir una señal de control que permite al adaptador
seleccionar el conjunto adaptado apropiado para adaptarse a la
señal digital que está procesándose. La aplicación de la función de
ventana se realiza en tramas sucesivas de la señal digital usando el
conjunto adaptado de valores generado por el adaptador en respuesta
a la señal de control.
El documento EP 1 160 977 A se refiere a un
método y aparato para reducir la distorsión en bancos de filtros en
cascada. El documento describe un método y aparato para reducir la
distorsión entre subbandas vecinas en bancos de filtros en cascada.
Se incluye un banco de filtros de reducción de distorsión para
reducir las componentes de distorsión entre diferentes subbandas.
Generalmente, la fase y respuesta de magnitud del banco de filtros
de reducción de distorsión es similar a la respuesta de magnitud del
banco de filtros de síntesis del banco de filtros de primera fase.
El banco de filtros de reducción de distorsión filtra y añade las
señales procedentes de un conjunto de M2 subbandas a partir de las
M1 subbandas del banco de filtros de análisis de primera fase. Una
resolución de frecuencia más alta se obtiene después de la fase de
reducción de distorsión mediante un banco de filtros de análisis
posterior. Las señales de estas subbandas se alimentan en primer
lugar a un banco de filtros de reducción de distorsión para reducir
la distorsión. Si el banco de filtros de primera fase es un banco
de filtros uniforme modulado con M1 bandas, y la fase para la
reducción de distorsión tiene M2 bandas, entonces para obtener la
cancelación de la distorsión, el banco de filtros de reducción de
distorsión debe tener una respuesta de frecuencia similar a la del
banco de filtros de síntesis para la primera fase, pero con la
frecuencia ajustada a escala por la relación de las tasas de
muestreo, M1/M2. Después de la fase de filtro de reducción de
distorsión, sigue un banco de filtros de análisis para obtener una
resolución de frecuencia más alta. Un banco de filtros de síntesis
para el banco de filtros de análisis de primera fase puede hacerse
menos denso manteniendo sólo cada subestructura de orden M1/M2 para
obtener el banco de filtros de reducción de distorsión.
El documento US 5.809.474 A se refiere a un
codificador de audio que adopta un algoritmo de filtrado de análisis
de alta velocidad y a un decodificador de audio que adopta un
algoritmo de filtrado de síntesis de alta velocidad. El documento
describe un codificador/decodificador de audio que adopta un
algoritmo de filtrado de análisis de alta velocidad. El codificador
de audio tiene una unidad de mapeo para clasificar una señal de
audio recibida según una banda de frecuencia usando el algoritmo de
filtrado de análisis de banda de alta velocidad, un modelo
psicoacústico para asignar bits a cada banda de frecuencia usando
características psicoacústicas, una unidad de cuantificación y
codificación para cuantificar y codificar la señal mapeada según el
número de bits asignado a cada banda de frecuencia, y una unidad de
empaquetado de trama para generar un flujo de bits a partir de una
salida de señal de dicha unidad de cuantificación y codificación. El
decodificador de audio tiene una unidad de desempaquetado de trama
para desempaquetar una señal a partir de un flujo de bits codificado
y recibido, una unidad de decodificación y cuantificación inversa
para decodificar y cuantificar de manera inversa dicha señal
cuantificada, y una unidad de mapeo inverso para mapear de manera
inversa en tiempo/frecuencia la señal cuantificada de manera
inversa usando el algoritmo de filtrado de síntesis de banda de alta
velocidad.
Según una realización de la presente invención,
un aparato para generar valores de subbanda de audio en canales de
subbanda de audio comprende un divisor en ventanas de análisis para
dividir en ventanas una trama de muestras de entrada de audio de
dominio de tiempo que están en una secuencia de tiempo que se
extiende desde una muestra temprana hasta una muestra posterior
usando una función de ventana de análisis que comprende una
secuencia de coeficientes de ventana para obtener muestras
divididas en ventanas, comprendiendo la función de ventana de
análisis un primer número de coeficientes de ventana derivados de
una función de ventana más grande que comprende una secuencia de un
segundo número de coeficientes de ventana más grande, en el que los
coeficientes de ventana de la función de ventana se derivan
mediante una interpolación de coeficientes de ventana de la función
de ventana más grande, en el que el segundo número es un número par,
y una calculadora para calcular los valores de subbanda de audio
usando las muestras divididas en ventanas.
Según una realización de la presente invención,
un aparato para generar muestras de audio de dominio de tiempo
comprende una calculadora para calcular una secuencia de muestras de
dominio de tiempo intermedias a partir de valores de subbanda de
audio en canales de subbanda de audio, comprendiendo la secuencia
muestras de dominio de tiempo intermedias más tempranas y muestras
de dominio de tiempo posteriores, un divisor en ventanas de
síntesis para dividir en ventanas la secuencia de muestras de
dominio de tiempo intermedias usando una función de ventana de
síntesis que comprende una secuencia de coeficientes de ventana para
obtener muestras de dominio de tiempo intermedias divididas en
ventanas, comprendiendo la función de ventana de síntesis un primer
número de coeficientes de ventana derivados de una función de
ventana más grande que comprende una secuencia de un segundo número
de coeficientes de ventana más grande, en el que los coeficientes de
ventana de la función de ventana se derivan mediante una
interpolación de coeficientes de ventana de la función de ventana
más grande, y en el que el segundo número es par y una fase de
salida de sumador-solapamiento para procesar las
muestras de dominio de tiempo intermedias divididas en ventanas
para obtener las muestras de dominio de tiempo.
Realizaciones de la presente invención se
describen posteriormente en el presente documento, haciendo
referencia a los dibujos adjuntos.
La figura 1 muestra un diagrama de bloques de
una realización de un aparato para generar valores de subbanda de
audio;
la figura 2a muestra un diagrama de bloques de
una realización de un aparato para generar muestras de audio de
dominio de tiempo;
la figura 2b ilustra un principio funcional
según una realización de la presente invención en la forma de un
aparato para generar muestras de dominio de tiempo;
la figura 3 ilustra el concepto de interpolación
de coeficientes de ventana según una realización de la presente
invención;
la figura 4 ilustra la interpolación de
coeficientes de ventana en el caso de una función de ventana de
seno;
la figura 5 muestra un diagrama de bloques de
una realización de la presente invención que comprende un
decodificador de SBR y un codificador de SBR;
la figura 6 ilustra las fuentes de retardo de un
sistema de SBR;
la figura 7a muestra un diagrama de flujo de una
realización de un método para generar valores de subbanda de
audio;
la figura 7b ilustra una etapa de la realización
del método mostrado en la figura 7a;
la figura 7c muestra un diagrama de flujo de una
realización de un método para generar valores de subbanda de
audio;
la figura 8a muestra un diagrama de flujo de un
ejemplo comparativo de un método para generar muestras de dominio
de tiempo;
la figura 8b muestra un diagrama de flujo de un
ejemplo comparativo de un método para generar muestras de dominio
de tiempo;
la figura 8c muestra un diagrama de flujo de una
realización de un método para generar muestras de dominio de
tiempo;
la figura 8d muestra un diagrama de flujo de
otra realización de un método para generar muestras de dominio de
tiempo;
la figura 9a muestra una implementación posible
de un ejemplo comparativo de un método para generar valores de
subbanda de audio;
la figura 9b muestra una implementación posible
de una realización de un método para generar valores de subbanda de
audio;
la figura 10a muestra una implementación posible
de un ejemplo comparativo de un método para generar muestras de
dominio de tiempo;
la figura 10b muestra otra implementación
posible de una realización de un método para generar muestras de
dominio de tiempo;
la figura 11 muestra una comparación de una
función de ventana de síntesis según una realización de la presente
invención y una función de ventana de seno;
la figura 12 muestra una comparación de una
función de ventana de síntesis según una realización de la presente
invención y una función de filtro prototipo QMF de SBR;
la figura 13 ilustra los diferentes retardos
provocados por la función de ventana y la función de filtro
prototipo mostrada en la figura 12;
la figura 14a muestra una tabla que ilustra
diferentes contribuciones al retardo de un códec
AAC-LD+SBR convencional y un códec
AAC-ELD que comprende una realización de la presente
invención;
la figura 14b muestra otra tabla que comprende
detalles referentes al retardo de diferentes componentes de
diferentes códecs;
la figura 15a muestra una comparación de una
respuesta de frecuencia de un aparato basándose en una función de
ventana según una realización de la presente invención y un aparato
basándose en una función de ventana de seno;
la figura 15b muestra un primer plano de la
respuesta de frecuencia mostrada en la figura 15a;
la figura 16a muestra una comparación de la
respuesta de frecuencia de 4 funciones de ventana diferentes;
la figura 16b muestra un primer plano de las
respuestas de frecuencia mostradas en la figura 16a;
la figura 17 muestra una comparación de una
respuesta de frecuencia de dos funciones de ventana diferentes, una
función de ventana según la presente invención y una función de
ventana que es una función de ventana simétrica;
la figura 18 muestra de manera esquemática la
propiedad de enmascaramiento temporal general del oído humano;
y
la figura 19 ilustra una comparación de una
señal de tiempo de audio original, una señal de tiempo generada
basándose en códec HEAAC y una señal de tiempo basándose en códec
que comprende una realización de la presente invención.
Las figuras 1 a 19 muestran diagramas de bloques
y otros diagramas que describen las propiedades funcionales y las
características de diferentes realizaciones de aparatos y métodos
para generar valores de subbanda de audio, de aparatos y métodos
para generar muestras de dominio de tiempo y sistemas que comprenden
al menos uno de los aparatos o métodos mencionados anteriormente.
Sin embargo, antes de describir una primera realización de la
presente invención con más detalle, debe observarse que las
realizaciones de la presente invención pueden implementarse en
hardware y en software. Por lo tanto, las implementaciones descritas
en cuanto a diagramas de bloques de implementaciones de hardware de
realizaciones respectivas pueden considerarse también como diagramas
de flujo de una realización apropiada de un método correspondiente.
Asimismo, un diagrama de flujo que describe una realización de la
presente invención puede considerarse como un diagrama de bloques de
una implementación de hardware correspondiente.
En lo sucesivo, van a describirse
implementaciones de bancos de filtros, que pueden implementarse como
un banco de filtros de análisis o un banco de filtros de síntesis.
Un banco de filtros de análisis es un aparato para generar valores
de subbanda de audio en canales de subbanda de audio basándose en
muestras (de entrada) de audio de dominio de tiempo que están en
una secuencia de tiempo que se extiende desde una muestra temprana
hasta una muestra posterior. En otras palabras, el término banco de
filtros de análisis puede usarse como sinónimo para una realización
de la presente invención en la forma de un aparato para generar
valores de subbanda de audio. Por consiguiente, un banco de filtros
de síntesis es un banco de filtros para generar muestras de audio
de dominio de tiempo a partir de valores de subbanda de audio en
canales de subbanda de audio. En otras palabras, el término banco
de filtros de síntesis puede usarse como sinónimo para una
realización según la presente invención en la forma de un aparato
para generar muestras de audio de dominio de tiempo.
Tanto un banco de filtros de análisis como un
banco de filtros de síntesis, a los que también se hace referencia
para abreviar como bancos de filtros, pueden implementarse, por
ejemplo, como bancos de filtros modulados. Los bancos de filtros
modulados, ejemplos y realizaciones de los cuales se comentarán con
más detalle posteriormente, están basados en oscilaciones que
tienen frecuencias que están basadas en o que se derivan a partir de
frecuencias centrales de subbandas correspondientes en el dominio
de frecuencia. El término "modulado" se refiere en este
contexto al hecho de que las oscilaciones mencionadas anteriormente
se usan en el contexto con una función de ventana o una función de
filtro prototipo, dependiendo de la implementación concreta de un
banco de filtros modulado de este tipo. Los bancos de filtros
modulados pueden basarse en principio en oscilaciones de valor real
tales como una oscilación armónica (oscilación de seno u oscilación
de coseno) u oscilaciones de valor complejo correspondientes
(oscilaciones exponenciales complejas). Por consiguiente, se hace
referencia a los bancos de filtros modulados como bancos de filtros
modulados reales o bancos de filtros modulados de filtros
complejos, respectivamente.
En la descripción siguiente se describirán con
más detalle realizaciones de la presente invención en la forma de
bancos de filtros de retardo bajo modulados complejos y bancos de
filtros de retardo bajo modulados reales y métodos e
implementaciones de software correspondientes. Una de las
aplicaciones principales de tales bancos de filtros de retardo bajo
modulados es una integración en un sistema de replicación de banda
espectral de retardo bajo (SBR), que se basa actualmente en usar un
banco de filtros QMF complejo con un filtro prototipo simétrico
(QMF = Quadrature Mirror Filter, filtro de espejo en
cuadratura).
Tal como será evidente en el marco de la
presente descripción, una implementación de bancos de filtros de
retardo bajo según realizaciones de la presente invención
proporcionará la ventaja de un equilibrio mejorado entre
complejidad computacional, respuesta de frecuencia, propagación de
ruido temporal y calidad (de reconstrucción). Además, puede
conseguirse un equilibrio mejorado entre retardo y calidad de
reconstrucción basándose en un enfoque para usar las denominadas
técnicas de retardo cero para extender la respuesta de impulso de
filtro de los bancos de filtros respectivos sin introducir retardo
adicional. Un retardo inferior a un nivel de calidad predefinido,
una mejor calidad a un nivel de retardo predefinido o una mejora
simultánea tanto del retardo como de la calidad, pueden conseguirse
empleando un banco de filtros de análisis o un banco de filtros de
síntesis según una realización de la presente invención.
Realizaciones de la presente invención se basan
en el descubrimiento de que estas mejoras pueden conseguirse
empleando un esquema de interpolación para obtener una función de
ventana que tiene un primer número de coeficientes de ventana
basándose en una función de ventana que tiene un segundo número de
coeficientes de ventana más grande. Empleando un esquema de
interpolación, puede conseguirse una distribución mejorada de los
valores de energía de los coeficientes de ventana de las funciones
de ventana. Esto lleva en muchos casos a un nivel de distorsión
mejorado y a una mejora con respecto a la calidad de audio. Por
ejemplo, cuando la función de ventana más grande comprende un
número par de coeficientes de ventana, puede ser útil un esquema de
interpolación.
La complejidad computacional aumenta sólo
ligeramente empleando un esquema de interpolación. Sin embargo,
este ligero aumento no sólo se compensa mediante la mejora respecto
a la calidad sino también por los ahorros resultantes relativos al
uso de memoria reducido cuando se compara la situación con dos
funciones de ventana separadas que se almacenan por separado.
Aunque la interpolación puede llevarse a cabo en uno o unos pocos
ciclos de la señal de reloj de un procesador en una implementación,
en muchos casos llevando a un retardo insignificante y a una
complejidad computacional aumentada, el requisito de memoria
adicional puede ser extremadamente importante en muchas
aplicaciones. Por ejemplo, en el caso de aplicaciones móviles, la
memoria puede estar limitada, especialmente cuando se emplean
funciones de ventana largas que tienen un número de coeficientes de
ventana significativo.
Además, pueden usarse realizaciones según la
presente invención en el contexto con una nueva función de ventana
para cualquiera de los dos bancos de filtros descritos
anteriormente, mejorando adicionalmente los equilibrios mencionados
anteriormente. La calidad y/o el retardo pueden mejorarse
adicionalmente en el caso de un banco de filtros de análisis
empleando una función de ventana de análisis que comprende una
secuencia de coeficientes de ventana, que comprende un primer grupo
que comprende una primera parte consecutiva de la secuencia de
coeficientes de ventana y comprendiendo el segundo grupo de
coeficientes de ventana una segunda parte consecutiva de la
secuencia de coeficientes de ventana. La primera parte y la segunda
parte comprenden todos los coeficientes de ventana de la función de
ventana. Además, la primera parte comprende menos coeficientes de
ventana que la segunda parte pero un valor de energía de los
coeficientes de ventana en la primera parte es más alto que un
valor de energía de los coeficientes de ventana de la segunda parte.
El primer grupo de coeficientes de ventana se usa para dividir en
ventanas muestras de dominio de tiempo posteriores y el segundo
grupo de coeficientes de ventana se usa para muestras de dominio de
tiempo más tempranas divididas en ventanas. Esta forma de la
función de ventana proporciona la oportunidad de procesar muestras
de dominio de tiempo con coeficientes de ventana que tienen valores
más altos de energía antes. Esto es un resultado de la distribución
de coeficientes de ventana descrita para las dos partes y su
aplicación a la secuencia de muestras de audio de dominio de
tiempo. En consecuencia, el empleo de una función de ventana de este
tipo puede reducir el retardo introducido por el banco de filtros a
un nivel de calidad constante o permite un nivel de calidad mejorada
basándose en un nivel de retardo constante.
Por consiguiente, en el caso de una realización
de la presente invención en la forma de un aparato para generar
muestras de audio de dominio de tiempo y un método correspondiente,
un divisor en ventanas de síntesis puede usar una función de
ventana de síntesis, que comprende una secuencia de coeficientes de
ventana ordenados de manera correspondiente en una primera parte
(consecutiva) y una segunda parte (consecutiva). Asimismo en el
caso de una función de ventana de síntesis, un valor de energía o un
valor de energía global de un coeficiente de ventana en la primera
parte es más alto que un valor de energía o un valor de energía
global de un coeficiente de ventana de una segunda parte, en la que
la primera parte comprende menos coeficientes de ventana que la
segunda parte. Debido a esta distribución de los coeficientes de
ventana entre las dos partes y al hecho de que el divisor en
ventanas de síntesis utiliza la primera parte de coeficientes de
divisor en ventanas para dividir en ventanas muestras de dominio de
tiempo posteriores y la segunda parte de coeficientes de ventana
para dividir en ventanas muestras de dominio de tiempo más
tempranas, los efectos y las ventajas descritos anteriormente
también se aplican a un banco de filtros de síntesis o a una
realización correspondiente de un método.
Descripciones detalladas de funciones de ventana
de síntesis y funciones de ventana de análisis empleadas en el
marco de algunas realizaciones de la presente invención se
describirán posteriormente con más detalle. En muchas realizaciones
de la presente invención, la secuencia de coeficientes de ventana de
la función de ventana de síntesis y/o de la función de ventana de
análisis comprenden exactamente el primer grupo y el segundo grupo
de coeficientes de ventana. Además, cada uno de los coeficientes de
ventana de la secuencia de coeficientes de ventana pertenece
exactamente a uno del primer grupo y el segundo grupo de
coeficientes de ventana.
Cada uno de los dos grupos comprende exactamente
una parte de la secuencia de coeficientes de ventana en una manera
consecutiva. En la presente descripción, una parte comprende un
conjunto consecutivo de coeficientes de ventana según la secuencia
de los coeficientes de ventana. En realizaciones según la presente
invención, cada uno de los dos grupos (el primero y el segundo
grupo) comprende exactamente una parte de la secuencia de los
coeficientes de ventana de la manera anteriormente explicada. Los
grupos respectivos de coeficientes de ventana no comprenden ningún
coeficiente de ventana que no pertenezca exactamente a la parte del
grupo respectivo. En otras palabras, en muchas realizaciones de la
presente invención, cada uno del primer y el segundo grupo de
coeficientes de ventana comprende sólo la primera parte y la segunda
parte de coeficientes de ventana sin que comprenda coeficientes de
ventana adicionales.
En el marco de la presente descripción, una
parte consecutiva de la secuencia de coeficientes de ventana debe
entenderse como un conjunto conectado de coeficientes de ventana en
el sentido matemático, en el que el conjunto no carece de
coeficientes de ventana en comparación con la secuencia de
coeficientes de ventana, que se encontraría en un intervalo (por
ejemplo intervalo de índices) de los coeficientes de ventana de la
parte respectiva. En consecuencia, en muchas realizaciones de la
presente invención, la secuencia de coeficientes de ventana se
divide exactamente en dos partes conectadas de coeficientes de
ventana, que forman cada uno del primer grupo o el segundo grupo de
coeficientes de ventana. En estos casos, cada coeficiente de ventana
comprendido en el primer grupo de coeficientes de ventana está
dispuesto o bien antes o después de cada uno de los coeficientes de
ventana del segundo grupo de coeficientes de ventana con respecto a
la secuencia global de los coeficientes de ventana.
\newpage
Dicho aún de otro modo, en muchas realizaciones
según la presente invención la secuencia de coeficientes de ventana
se divide exactamente en dos grupos o partes sin excluir ningún
coeficiente de ventana. Según la secuencia de los coeficientes de
ventana, que también representa un orden de estos, cada uno de los
dos grupos o partes comprende todos los coeficientes de ventana
hasta (pero excluyendo) o comenzando a partir de (incluyendo) un
coeficiente de ventana límite. Como ejemplo, la primera parte o
primer grupo puede comprender coeficientes de ventana que tengan
índices desde 0 hasta 95 y desde 96 hasta 639 en el caso de una
función de ventana que comprenda 640 coeficientes de ventana (que
tenga índices de 0 a 639). En este caso, el coeficiente de ventana
límite sería el correspondiente al índice 96. Naturalmente, también
son posibles otros ejemplos (por ejemplo 0 a 543 y 544 a 639).
La implementación detallada ejemplificada de un
banco de filtros de análisis descrita en lo sucesivo proporciona
una longitud de filtro que cubre 10 bloques de muestras de entrada
mientras provocan un retardo de sistema de sólo 2 bloques, que es
el retardo correspondiente según se introduce mediante una MDCT
(modified discrete cosine transform, transformada de coseno
discreta modificada) o una MDST (modified discrete sine
transform, transformada de seno discreta modificada). Una
diferencia se debe a la mayor longitud de filtro que cubre 10
bloques de muestras de entrada en comparación con una implementación
de una MDCT o MDST de modo que el solapamiento aumenta de 1 bloque
en el caso de MDCT y MDST a un solapamiento de 9 bloques. Sin
embargo, también pueden realizarse otras implementaciones que
cubran un número diferente de bloques de muestras de entrada, a las
que también se hace referencia como muestras de entrada de
audio.
Además, también pueden considerarse e
implementarse otros equilibrios.
La figura 1 muestra un diagrama de bloques de un
banco 100 de filtros de análisis como una realización de un aparato
para generar valores de subbanda de audio en canales de subbanda de
audio. El banco 100 de filtros de análisis comprende un divisor 110
en ventanas de análisis para dividir en ventanas una trama 120 de
muestras de entrada de audio de dominio de tiempo. La trama 120
comprende T bloques 130-1, ...,
130-T bloques de muestras (de entrada) de audio de
dominio de tiempo, donde T es un número entero positivo e igual a 10
en el caso de la realización mostrada en la figura 1. Sin embargo,
la trama 120 puede comprender también un número diferente de
bloques 130.
Tanto la trama 120 como cada uno de los bloques
130 comprende muestras de entrada de audio de dominio de tiempo en
una secuencia de tiempo que se extiende desde una muestra temprana
hasta una muestra posterior según una línea de tiempo tal como
indica una flecha 140 en la figura 1. En otras palabras, en la
ilustración tal como se muestra en la figura 1, cuanto más a la
derecha esté la muestra de audio de dominio de tiempo, que en este
caso es también una muestra de entrada de audio de dominio de
tiempo, más posterior es la correspondiente muestra de audio de
dominio de tiempo con respecto a la secuencia de la muestra de audio
de dominio de tiempo.
El divisor 110 en ventanas de análisis genera,
basándose en la secuencia de muestras de audio de dominio de
tiempo, muestras divididas en ventanas en el dominio de tiempo, que
están dispuestas en una trama 150 de muestras divididas en
ventanas. Según la trama 120 de muestras de entrada de audio de
dominio de tiempo, también la trama de muestras 150 divididas en
ventanas comprende T bloques de muestras 160-1, ...,
160-T divididas en ventanas. En realizaciones
preferidas de la presente invención cada uno de los bloques de
muestras 160 divididas en ventanas comprende el mismo número de
muestras divididas en ventanas que el número de muestras de entrada
de audio de dominio de tiempo de cada bloque 130 de muestras de
entrada de audio de dominio de tiempo. Por lo tanto, cuando cada
uno de los bloques 130 comprende N muestras de audio de entrada de
dominio de tiempo, la trama 120 y la trama 150 comprenden cada una
T - N muestras. En este caso, N es un número entero positivo, que
puede adquirir, por ejemplo, los valores de 32 ó 64. Para T - 10,
las tramas 120, 150 comprenden cada una 320 y 640, respectivamente,
en el caso anterior.
La ventana 110 de análisis está acoplada a una
calculadora 170 para calcular los valores de subbanda de audio
basándose en las muestras divididas en ventanas proporcionadas por
el divisor 110 en ventanas de análisis. Los valores de subbanda de
audio se proporcionan por la calculadora 170 como un bloque 180 de
valores de subbanda de audio, donde cada uno de los valores de
subbanda de audio corresponde con un canal de subbanda de audio. En
una realización preferida, también el bloque 180 de valores de
subbanda de audio comprende N valores de subbanda.
Cada uno de los canales de subbanda de audio
corresponde con una frecuencia central característica. Las
frecuencias centrales de los diferentes canales de subbanda de
audio pueden, por ejemplo, estar distribuidos de manera igualitaria
o separados de manera igualitaria con respecto al ancho de banda de
frecuencia de la señal de audio correspondiente tal como se
describe por las muestras de entrada de audio de dominio de tiempo
proporcionadas al banco 100 de filtros de análisis.
El divisor 110 en ventanas de análisis está
adaptado para dividir en ventanas la entrada de audio de dominio de
tiempo, comprendiendo muestras de la trama 120 basadas en una
función de ventana de análisis una secuencia de coeficientes de
ventana que tiene un primer número de coeficientes de ventana para
obtener las muestras divididas en ventanas de la trama 150. La
ventana 110 de análisis está adaptada para realizar la división en
ventanas de la trama de muestras 120 de audio de dominio de tiempo
multiplicando los valores de las muestras de audio de dominio de
tiempo con los coeficientes de ventana de la función de ventana de
análisis. En otras palabras, la división en ventanas comprende una
multiplicación elemento a elemento de las muestras de audio de
dominio de tiempo con un coeficiente de ventana correspondiente.
Como tanto la trama 120 de muestras de audio de dominio de tiempo
como los coeficientes de ventana comprenden una secuencia
correspondiente, la multiplicación elemento a elemento de los
coeficientes de ventana y las muestras de audio de dominio de tiempo
se lleva a cabo según las secuencias respectivas, por ejemplo, tal
como indica un índice de muestra y de coeficiente de ventana.
En realizaciones de la presente invención, las
funciones de ventana usadas para dividir en ventanas la trama de
muestras de entrada de audio de dominio de tiempo se generan
basándose en una función de ventana más grande que comprende un
segundo número de coeficientes de ventana más grande empleando un
esquema de interpolación tal como se comenta, por ejemplo, en el
contexto de las figuras 3 y 4. La función de ventana más grande
comprende normalmente un número par de coeficientes de ventana y
puede, por ejemplo, ser asimétrica con respecto a la secuencia de
coeficientes de ventana. También pueden emplearse funciones de
ventana simétricas.
La función 190 de ventana usada para dividir en
ventanas la trama 120 de muestras de entrada de dominio de tiempo
se obtiene, por ejemplo, mediante el divisor 110 en ventanas de
análisis o el banco 100 de filtros interpolando los coeficientes de
ventana de la función de ventana más grande. En realizaciones según
la presente invención, esto se lleva a cabo, por ejemplo,
interpolando coeficientes de ventana consecutivos de la función de
ventana más grande. En este caso puede emplearse un esquema de
interpolación lineal, uno polinómico o uno basado en spline
(ajuste de curvas mediante polinomios del mismo grado).
Cuando, por ejemplo, cada coeficiente de ventana
de la función de ventana más grande se utiliza una vez para generar
un coeficiente de ventana de la función de ventana y el segundo
número es par, el número de coeficientes de ventana de la función
190 de ventana (primer número) es la mitad del segundo número. Una
interpolación de este tipo puede estar basada en una interpolación
lineal, un ejemplo de la cual se comentará en el contexto de la
ecuación (15) posteriormente. Sin embargo, también pueden emplearse
otros esquemas de interpolación tal como se ha comentado.
En realizaciones de la presente invención en la
forma de un banco 100 de filtros de análisis tal como se muestra en
la figura 1, la función de ventana de análisis, así como la función
de ventana de síntesis en el caso de un banco de filtros de
síntesis, pueden comprender por ejemplo sólo coeficientes divididos
en ventanas de valor real. En otras palabras, cada uno de los
coeficientes de ventana atribuidos a un índice de coeficiente de
ventana es un valor real.
Los coeficientes de ventana forman juntos la
función de ventana respectiva, un ejemplo de la cual se muestra en
la figura 1 como una función 190 de ventana de análisis. En lo
sucesivo, se considerarán funciones de ventana, que permiten una
reducción del retardo cuando se usan en el contexto de los bancos de
filtros descritos. Sin embargo, las realizaciones de la presente
invención no se limitan a tales funciones de ventana de retardo
bajo.
La secuencia de coeficientes de ventana que
forman la función 190 de ventana de análisis comprende un primer
grupo 200 y un segundo grupo 210 de coeficientes de ventana. El
primer grupo 200 comprende una primera parte consecutiva y
conectada de los coeficientes de ventana de la secuencia de
coeficientes de ventana, mientras que el segundo grupo 210
comprende una segunda parte consecutiva y conectada de un
coeficiente de ventana. Junto con la primera parte en el primer
grupo 200, forman toda la secuencia de coeficientes de ventana de
la función 190 de ventana de análisis. Además, cada coeficiente de
ventana de la secuencia de coeficientes de ventana pertenece o bien
a la primera parte o a la segunda parte de coeficientes de ventana
de modo que toda la función 190 de ventana de análisis está
constituida por el coeficiente de ventana de la primera parte y de
la segunda parte. La primera parte de coeficientes de ventana es,
por lo tanto, idéntica al primer grupo 200 de coeficientes de
ventana y la segunda parte es idéntica al segundo grupo 210 de
coeficientes de ventana tal como indican las flechas 200, 210
correspondientes en la figura 1.
El número de coeficientes de ventana en el
primer grupo 200 de la primera parte de coeficientes de ventana es
menor que el número de coeficientes de ventana en el segundo grupo
de la segunda parte de coeficientes de ventana. Sin embargo, un
valor de energía o un valor total de energía de los coeficientes de
ventana en el primer grupo 200 es más alto que un valor de energía
o valor total de energía de los coeficientes de ventana en el
segundo grupo 210. Tal como se comentará posteriormente, un valor de
energía de un conjunto de coeficientes de ventana se basa en una
suma de los cuadrados de los valores absolutos de los coeficientes
de ventana correspondientes.
En realizaciones según la presente invención, la
función 190 de ventana de análisis así como una función de ventana
de síntesis correspondiente puede ser por lo tanto asimétrica con
respecto a la secuencia de coeficientes de ventana o un índice de
un coeficiente de ventana. Basándose en un conjunto de definición de
índices de coeficiente de ventana sobre el que se define la función
190 de ventana de análisis, la función 190 de ventana de análisis
es asimétrica, cuando para todos los números reales n existe un
número real adicional no de modo que el valor absoluto de
coeficiente de ventana correspondiente al coeficiente de ventana del
índice de coeficiente de ventana (no - n) no es igual al valor
absoluto del coeficiente de ventana correspondiente al índice de
coeficiente de ventana (no + n), cuando (n_{0} - n) y (no + n)
pertenecen al conjunto de definición.
Además, tal como se muestra también
esquemáticamente en la figura 1, la función 190 de ventana de
análisis comprende cambios de signo en los que el producto de dos
coeficientes de ventana consecutivos es negativo. Más detalles y
características adicionales de funciones de ventana posibles según
realizaciones de la presente invención se analizarán con más
detalle en el contexto de las figuras 11 a 19.
Tal como se indicó anteriormente, la trama de
muestras 150 divididas en ventanas comprende una estructura de
bloque similar con bloques 160-1, ...,
160-T individuales como la trama 120 de muestras de
entrada de dominio de tiempo individuales. Como el divisor 110 en
ventanas de análisis está adaptado para dividir en ventanas las
muestras de entrada de audio de dominio de tiempo multiplicando
estos valores con los coeficientes de ventana de la función 190 de
ventana de análisis, la trama 150 de muestras divididas en ventanas
está también en el dominio de tiempo. La calculadora 170 calcula
los valores de subbanda de audio, o para ser más precisos, el
bloque 180 de valores de subbanda de audio usando la trama 150 de
muestras divididas en ventanas y realiza una transferencia desde el
dominio de tiempo al dominio de frecuencia. La calculadora 170 puede
considerarse por lo tanto que es un convertidor de
tiempo/frecuencia, que puede proporcionar el bloque 180 de valores
de subbanda de audio como una representación espectral de la trama
150 de muestras divididas en ventanas.
Cada valor de subbanda de audio del bloque 180
corresponde con una subbanda que tiene una frecuencia
característica. El número de valores de subbanda de audio
comprendido en el bloque 180 también se denomina a veces número de
banda.
En muchas realizaciones según la presente
invención, el número de valores de subbanda de audio en el bloque
180 es idéntico al número de muestras de entrada de audio de dominio
de tiempo de cada uno de los bloques 130 de la trama 120. En el
caso de que la trama 150 de muestras divididas en ventanas comprenda
la misma estructura bloque a bloque que la trama 120 de modo que
cada uno de los bloques 160 de muestras divididas en ventanas
también comprenda el mismo número de muestras divididas en ventanas
que el bloque de estas muestras 130 de entrada de audio de dominio
de tiempo, el bloque 180 de valores de subbanda de audio
naturalmente también comprende el mismo número que el bloque
160.
La trama 120 puede generarse opcionalmente,
basándose en un bloque de muestras 220 de entrada de audio de
dominio de tiempo recientes desplazando los bloques
130-1, ..., 130-(T-1) un bloque en
el sentido opuesto a la flecha 140 que indica el sentido del
tiempo. De ese modo, una trama 120 de muestras de entrada de audio
de dominio de tiempo que va a procesarse se genera desplazando los
(T-1) bloques más recientes de una trama 120 de
muestras de audio de dominio de tiempo directamente precedente un
bloque hacia las muestras de audio de dominio de tiempo más
tempranas y añadiendo el bloque 220 reciente de muestras de audio de
dominio de tiempo recientes como el nuevo bloque
130-1 que comprende las muestras de audio de dominio
de tiempo más recientes de la trama 120 actual. En la figura 1 esto
se indica también mediante una serie de flechas 230 discontinuas
que indican el desplazamiento de los bloques 130-1,
..., 130-(T-1) en el sentido opuesto de la flecha
140.
Debido a este desplazamiento de los bloques 130
en el sentido opuesto del tiempo tal como indica la flecha 140, una
trama 120 actual que va a procesarse, comprende el bloque
130-(T-1) de la trama 120 directamente precedente
como el nuevo bloque 130-T. Por consiguiente, los
bloques 130-(T-1), 130-2 de la trama
120 actual que va a procesarse son iguales al bloque
130-(T-2), ..., 130-1 de la trama
120 directamente precedente. El bloque 130-T de la
trama 120 directamente precedente se descarta.
En consecuencia, cada muestra de audio de
dominio de tiempo del bloque 220 reciente se procesará
T-veces en el marco de T procesamientos
consecutivos de T tramas 120 consecutivas de muestras de entrada de
audio de dominio de tiempo. Por lo tanto, cada muestra de entrada
de audio de dominio de tiempo del bloque 220 reciente contribuye,
no sólo a T tramas 120 diferentes, sino también a T tramas 150
diferentes de muestras divididas en ventanas y T bloques 180 de
valores de subbanda de audio. Tal como se indicó anteriormente, en
una realización preferida según la presente invención, el número de
bloques T en la trama 120 es igual a 10, de modo que cada muestra
de audio de dominio de tiempo proporcionada al banco 100 de filtros
de análisis contribuye a 10 bloques 180 diferentes de valores de
subbanda de audio.
Al principio, antes de que una única trama 120
se procese por el banco 100 de filtros de análisis, la trama 120
puede inicializarse a un valor absoluto pequeño (por debajo de un
umbral predeterminado), por ejemplo el valor 0. Tal como se
explicará con más detalle posteriormente, la forma de la función 190
de ventana de análisis comprende un punto central o un "centro de
masas", que normalmente corresponde a o se encuentra entre dos
índices de coeficiente de ventana del primer grupo 200.
En consecuencia, el número de bloques 220
recientes que va a insertarse en la trama 120 es pequeño, antes de
que la trama 120 se llene al menos hasta un punto de modo que partes
de la trama 120 estén ocupadas por valores que no desaparecen (es
decir de valor distinto de cero) que corresponden a coeficientes de
ventana que tienen una contribución significativa en cuanto a sus
valores de energía. Normalmente, el número de bloques que va a
insertarse en la trama 120 antes de que pueda empezar un
procesamiento "significativo", es de 2 a 4 bloques dependiendo
de la forma de la función 190 de ventana de análisis. Por lo tanto,
el banco 100 de filtros de análisis puede proporcionar bloques 180
más rápido que un banco de filtros correspondiente empleando, por
ejemplo, una función de ventana simétrica. Como normalmente los
bloques 220 recientes se proporcionan al banco 100 de filtros de
análisis globalmente, cada uno de los bloques recientes corresponde
a un tiempo de grabación o de muestreo, que viene dado
esencialmente por la longitud del bloque 220 (es decir el número de
muestras de entrada de audio de dominio de tiempo comprendidas en el
bloque 220) y la tasa de muestreo o frecuencia de muestreo. Por lo
tanto, la función 190 de ventana de análisis, tal como se incorpora
en una realización de la presente invención, lleva a un retardo
reducido antes de que pueda proporcionarse o emitirse como salida
el primero y los siguientes bloques 180 de valores de subbanda de
audio por el banco 100 de filtros.
\newpage
Como opción adicional, el aparato 100 puede ser
capaz de de generar una señal o incorporar un fragmento de
información con respecto a la función 190 de ventana de análisis
usada para generar la trama 180 o con respecto a una función de
ventana de síntesis que va a usarse en el marco de un banco de
filtros de síntesis. Por tanto, la función 190 de filtro de
análisis puede ser, por ejemplo, una versión invertida en tiempo o
índice de la función de ventana de síntesis que va a usarse por el
banco de filtros de síntesis.
La figura 2a muestra un diagrama de bloques de
una realización de un aparato 300 para generar muestras de audio de
dominio de tiempo basándose en el bloque de valores de subbanda de
audio. Tal como se explicó anteriormente, a una realización de la
presente invención en la forma de un aparato 300 para generar
muestras de audio de dominio de tiempo también se denomina a menudo
un banco 300 de filtros de síntesis ya que el aparato puede generar
muestras de audio de dominio de tiempo, que en principio pueden
reproducirse, basándose en valores de subbanda de audio que
comprenden información espectral relativa a una señal de audio. Por
lo tanto, el banco 300 de filtros de síntesis puede sintetizar
muestras de audio de dominio de tiempo basándose en valores de
subbanda de audio, que pueden por ejemplo generarse por un banco 100
de filtros de análisis correspondiente.
La figura 2a muestra un diagrama de bloques del
banco 300 de filtros de síntesis que comprende una calculadora 310
a la que se proporciona un bloque 320 de valores de subbanda de
audio (en el dominio de frecuencia). La calculadora 310 puede
calcular una trama 330 que comprende una secuencia de muestras de
dominio de tiempo intermedias a partir de los valores de subbanda
de audio del bloque 320. La trama 330 de muestras de dominio de
tiempo intermedias comprende en muchas realizaciones según la
presente invención también una estructura de bloque similar como
por ejemplo la trama 150 de muestras divididas en ventanas del banco
100 de filtros de análisis de la figura 1. En estos casos, la trama
330 comprende bloques 340-1, ...,
340-T bloques de muestras de dominio de tiempo
intermedias.
La secuencia de muestras de dominio de tiempo
intermedias de la trama 330, así como cada bloque 340 de muestras
de dominio de tiempo intermedias comprenden un orden según el tiempo
tal como se indica mediante una flecha 350 en la figura 2a. En
consecuencia, la trama 330 comprende una muestra de dominio de
tiempo intermedia temprana en el bloque 340-T y una
muestra de dominio de tiempo intermedia más reciente en el bloque
340-1, que representan la primera y la última
muestra de dominio de tiempo intermedia para la trama 330,
respectivamente. Asimismo cada uno de los bloques 340 comprende un
orden similar. En consecuencia, en realizaciones de un banco de
filtros de síntesis los términos "trama" y "secuencia"
pueden usarse a menudo como sinónimos.
La calculadora 310 está acoplado a un divisor
360 en ventanas de síntesis al que se proporciona la trama 330 de
muestras de dominio de tiempo intermedias. El divisor en ventanas de
síntesis está adaptado para dividir en ventanas la secuencia de
muestras de dominio de tiempo intermedias usando una función 370 de
ventana de síntesis representada esquemáticamente en la figura 2a.
Como salida, el divisor 360 en ventanas de síntesis proporciona una
trama 380 de muestras de dominio de tiempo intermedias divididas en
ventanas, que puede comprender también una estructura bloque a
bloque de bloques 390-1, ...,
390-T.
Las tramas 330 y 380 pueden comprender T bloques
340 y 390, respectivamente, en las que T es un número entero
positivo. En una realización preferida según la presente invención
en la forma de un banco 300 de filtros de síntesis, el número de
bloques T es igual a 10. Sin embargo, en diferentes realizaciones,
también pueden estar comprendidos números de bloques diferentes en
una de las tramas. Para ser más precisos, en principio el número de
bloques T puede ser mayor o igual a 3, o mayor que o igual a 4,
dependiendo de las circunstancias de la implementación y los
equilibrios explicados anteriormente para realizaciones según la
presente invención que comprenden una estructura bloque a bloque de
tramas tanto para un banco 100 de filtros de síntesis como para un
banco 300 de filtros de síntesis.
El divisor 360 en ventanas de síntesis está
acoplado a una fase 400 de salida de
sumador-solapamiento, a la que se proporciona la
trama 380 de muestras de dominio de tiempo intermedias divididas en
ventanas. La fase 400 de salida de
sumador-solapamiento puede procesar las muestras de
dominio de tiempo intermedias divididas en ventanas para obtener un
bloque 410 de muestras de dominio de tiempo. El bloque 410 de las
muestras (de salida) de dominio de tiempo pueden proporcionarse
entonces por ejemplo a componentes adicionales para un
procesamiento, almacenamiento o transformación adicional, en señales
de audio audibles.
La calculadora 310 para calcular la secuencia de
muestras de dominio de tiempo comprendidas en la trama 330 puede
transferir datos desde el dominio de frecuencia al dominio de
tiempo. Por lo tanto, la calculadora 310 puede comprender un
convertidor de frecuencia/tiempo que puede generar una señal de
dominio de tiempo de la representación espectral comprendida en el
bloque 320 de valores de subbanda de audio. Tal como se explicó en
el contexto de la calculadora 170 del banco 100 de filtros de
análisis mostrado en la figura 1, cada uno de los valores de
subbanda de audio del bloque 320 corresponde a un canal de subbanda
de audio que tiene una frecuencia central característica.
A diferencia de esto, las muestras de dominio de
tiempo intermedias comprendidas en la trama 330 representan en
principio información en el dominio de tiempo. El divisor 360 en
ventanas de síntesis puede y está adaptado para dividir en ventanas
la secuencia de muestras de dominio de tiempo intermedias
comprendidas en la trama 330 usando la función 370 de ventana de
síntesis tal como se representa esquemáticamente en la figura
2a.
Tal como ya se ha comentado en el contexto de la
figura 1, el divisor 360 en ventanas de síntesis usa también una
función 370 de ventana de síntesis, que se obtiene por interpolación
de una función de ventana más grande que comprende un segundo
número de coeficientes de ventana. El segundo número es, por lo
tanto, mayor que un primer número de coeficientes de ventana de la
función 370 de ventana de síntesis usada para dividir en ventanas
las muestras de dominio de tiempo intermedias de la trama 330.
La función 370 de ventana de síntesis puede
obtenerse, por ejemplo, mediante el divisor 360 en ventanas de
síntesis o el banco 300 de filtros (el aparato) que realiza uno de
los esquemas de interpolación comentados anteriormente. Los
coeficientes de ventana de la función de ventana de síntesis pueden
generarse, por ejemplo, basándose en una interpolación. lineal, una
polinómica o una basada en spline. Además, en realizaciones
según la presente invención la interpolación puede basarse en la
utilización de coeficientes de ventana consecutivos de la función
de ventana más grande. Cuando cada coeficiente de ventana de la
función de ventana más grande se usa exactamente una vez, la
función 370 de ventana que comprende el primer número (más pequeño)
de coeficientes de ventana puede por ejemplo comprender exactamente
la mitad del número de coeficientes de ventana de la función de
ventana más grande, cuando el segundo número es par. En otras
palabras, en este caso el segundo número puede ser dos veces el
primer número. Sin embargo, también pueden implementarse otros
escenarios y esquemas de interpolación en el marco de las
realizaciones de la presente invención.
A continuación, se considerará con mayor
atención el caso de la denominada función de ventana de retardo
bajo. Tal como se indicó anteriormente, las realizaciones según la
presente invención no se limitan en modo alguno a estas funciones
de ventana. También pueden usarse otras funciones de ventana, tales
como las funciones de ventana simétricas.
La función 370 de ventana de síntesis comprende
una secuencia de coeficientes de ventana, que también comprende un
primer grupo 420 y un segundo grupo 430 de coeficientes de ventana
tal como se explicó anteriormente en el contexto de la función 190
de ventana con un primer grupo 200 y un segundo grupo 210 de
coeficientes de ventana.
El primer grupo 420 de coeficientes de ventana
de la función 370 de ventana de síntesis comprende una primera
parte consecutiva de la secuencia de coeficientes de ventana. De
manera similar, el segundo grupo 430 de coeficientes también
comprende una segunda parte consecutiva de la secuencia de
coeficientes de ventana, donde la primera parte comprende menos
coeficientes de ventana que la segunda parte y donde un valor de
energía o valor total de energía de los coeficientes de ventana en
la primera parte es más alto que el valor de energía correspondiente
de los coeficientes de ventana de la segunda parte. Otras
características y propiedades de la función 370 de ventana de
síntesis pueden ser similares a las características y propiedades
correspondientes de la función 190 de ventana de análisis tal como
se representa esquemáticamente en la figura 1. En consecuencia, se
hace referencia por el presente documento a la descripción
correspondiente en el marco de la función 190 de ventana de
análisis y la descripción adicional de las funciones de ventana con
respecto a las figuras 11 a 19, donde el primer grupo 200
corresponde al primer grupo 420 y el segundo grupo 210 corresponde
al segundo grupo 430.
Por ejemplo, las partes comprendidas en los dos
grupos 420, 430 de coeficientes de ventana normalmente forman cada
uno un conjunto consecutivo y conectado de coeficientes de ventana
que comprenden juntos todos los coeficientes de ventana de la
secuencia de coeficientes de ventana de la función 370 de ventana.
En muchas realizaciones según la presente invención, la función 190
de ventana de análisis tal como se representa en la figura 1 y la
función 370 de ventana de síntesis tal como se representa en la
figura 2a se basan una en otra. Por ejemplo, la función 190 de
ventana de análisis puede ser una versión invertida en tiempo o
invertida en índice de la función 370 de ventana de síntesis. Sin
embargo, también son posibles otras relaciones entre las dos
funciones 190, 370 de ventana. Puede ser recomendable emplear una
función 370 de ventana de síntesis en el marco del divisor 360 en
ventanas de síntesis, que se refiere a la función 190 de ventana de
análisis, que se empleó durante la generación (opcionalmente antes
de modificaciones adicionales) del bloque 320 de valores de subbanda
de audio proporcionados al banco 300 de filtros de síntesis.
Tal como se comentó en el contexto de la figura
1, el banco 300 de filtros de síntesis en la figura 2a puede
adaptarse opcionalmente de modo que el bloque 320 entrante puede
comprender señales adicionales o fragmentos de información
adicionales con respecto a las funciones de ventana. Como ejemplo,
el bloque 320 puede comprender información relativa a la función
190 de ventana de análisis usada para generar el bloque 320 o
relativa a la función 370 de ventana de síntesis que va a usarse
por el divisor 360 en ventanas de síntesis. Por lo tanto, el banco
300 de filtros puede adaptarse para aislar la información respectiva
y para proporcionar ésta al divisor 360 en ventanas de
síntesis.
La fase 400 de salida de
sumador-solapamiento puede generar el bloque 410 de
muestras de dominio de tiempo procesando las muestras de dominio de
tiempo intermedias divididas en ventanas comprendidas en la trama
380. En diferentes realizaciones según la presente invención, la
fase 4000 de salida de sumador-solapamiento puede
comprender una memoria para almacenar temporalmente tramas 380 de
muestras de dominio de tiempo intermedias divididas en ventanas,
recibidas anteriormente. Dependiendo de los detalles de
implementación, la fase 400 de salida de
sumador-solapamiento puede comprender, por ejemplo,
T posiciones de almacenamiento diferentes comprendidas en la
memoria para almacenar un número global de T tramas 380 de muestras
de dominio de tiempo intermedias divididas en ventanas. Sin
embargo, la fase 400 de salida de
sumador-solapamiento también puede comprender un
número diferente de posiciones de almacenamiento, según se requiera.
Además, en diferentes realizaciones según la presente invención, la
fase 400 de salida de sumador-solapamiento puede ser
capaz de proporcionar el bloque 410 de muestras de dominio de
tiempo basándose sólo en una única trama 380 de muestras de dominio
de tiempo intermedias. Realizaciones de diferentes bancos 300 de
filtros de síntesis se explicarán con más detalle posterior-
mente.
mente.
La figura 2b ilustra un principio funcional
según una realización de la presente invención en la forma de un
banco 300 de filtros de síntesis, que no se centra en la generación
de la función 370 de ventana por interpolación únicamente por
motivos de simplicidad.
El bloque 320 de valores de subbanda de audio se
transfiere en primer lugar desde el dominio de frecuencia al
dominio de tiempo mediante la calculadora 310, lo que se ilustra en
la figura 2b mediante una flecha 440. La trama 320 de muestras de
dominio de tiempo intermedias resultante que comprende los bloques
340-1, ..., 340-T de muestras de
dominio de tiempo intermedias se divide a continuación en ventanas
mediante el divisor 360 en ventanas de síntesis (no mostrado en la
figura 2b) multiplicando la secuencia de muestras de dominio de
tiempo intermedias de la trama 320 con la secuencia de coeficientes
de ventana de la función 370 de ventana de síntesis para obtener la
trama 380 de muestras de dominio de tiempo intermedias divididas en
ventanas. La trama 380 comprende de nuevo los bloques
390-1, ..., 390-T de muestras de
dominio de tiempo intermedias divididas en ventanas, que forman
juntas la trama 380 de muestras de dominio de tiempo intermedias
divididas en ventanas.
En la realización mostrada en la figura 2b de un
banco 300 de filtros de síntesis de la invención, la fase 400 de
salida de sumador-solapamiento puede entonces
generar el bloque 410 de muestras de salida de dominio de tiempo
añadiendo para cada valor de índice de las muestras de audio de
dominio de tiempo del bloque 410, las muestras de dominio de tiempo
intermedias divididas en ventanas de un bloque 390 de tramas 380
diferentes. Tal como se ilustra en la figura 2b, las muestras de
audio de dominio de tiempo del bloque 410 se obtienen añadiendo
para cada índice de muestra de audio una muestra de dominio de
tiempo intermedia dividida en ventanas del bloque
390-1 de la trama 380, procesada por el divisor 360
en ventanas de síntesis en la serie actual y tal como se describió
anteriormente, la muestra de dominio de tiempo intermedia
correspondiente del segundo bloque 390-2 de una
trama 380-1 procesada inmediatamente antes de la
trama 380 y almacenada en una posición de almacenamiento en la fase
400 de salida de sumador-solapamiento. Tal como se
ilustra en la figura 2b, pueden usarse otras muestras de dominio de
tiempo intermedias divididas en ventanas correspondientes de otros
bloques 390 (por ejemplo el bloque 390-3 de la
trama 380-2, el bloque 390-4 de la
trama 380-3, el bloque 390-5 de la
trama 380-4) procesados por el banco 300 de filtros
de síntesis anterior. Las tramas 380-2,
380-3, 380-4 y opcionalmente otras
tramas 380 se han procesado por el banco 300 de filtros de síntesis
en series anteriores. La trama 380-2 se ha
procesado inmediatamente antes que la trama 380-1 y,
por consiguiente, la trama 380-3 se generó
inmediatamente antes que la trama 380-2 y así
sucesivamente.
La fase 400 de salida de
sumador-solapamiento según se emplea en la
realización puede sumar para cada índice del bloque 410 de muestras
(de salida) de dominio de tiempo T bloques 390-1,
..., 390-T diferentes de muestras de dominio de
tiempo intermedias divididas en ventanas a partir de T tramas 380,
380-1, ..., 380-(T-1) diferentes.
Por lo tanto, aparte de los primeros T bloques procesados, cada una
de las muestras (de salida) de dominio de tiempo del bloque 410
está basada en T bloques 320 diferentes de valores de subbanda de
audio.
Como en el caso de la realización de la presente
invención un banco 100 de filtros de análisis descrito en la figura
1, debido a la forma de la función 370 de ventana de síntesis, el
banco 300 de filtros de síntesis ofrece la posibilidad de
proporcionar rápidamente el bloque 410 de muestras (de salida) de
dominio de tiempo. Esto también es una consecuencia de la forma de
la función 370 de ventana. Como el primer grupo 420 de coeficientes
de ventana corresponde a un valor de energía más alto y comprende
menos coeficientes de ventana que el segundo grupo 430, el divisor
360 en ventanas de síntesis puede proporcionar tramas 380
"significativas" de muestras divididas en ventanas cuando la
trama 330 de muestras de dominio de tiempo intermedias se llena de
modo que al menos los coeficientes de ventana del primer grupo 420
contribuyen a la trama 380. Los coeficientes de ventana del segundo
grupo 430 presentan una menor contribución debido a su valor de
energía más pequeño.
Por lo tanto, cuando al principio, el banco 300
de filtros de síntesis se inicializa con 0, la provisión de bloques
410 puede, en principio, comenzarse cuando sólo unos pocos bloques
320 de valores de subbanda de audio se han recibido por el banco
300 de filtros de síntesis. Por lo tanto, también el banco 300 de
filtros de síntesis permite una reducción de retardo significativa
en comparación con el banco de filtros de síntesis que tiene por
ejemplo una función de ventana de síntesis simétrica.
Tal como se indicó anteriormente, las
calculadoras 170 y 310 de las realizaciones mostradas en las figuras
1 y 2a pueden implementarse como calculadoras de valor real que
generan o pueden procesar valores de subbanda de audio de valor
real de los bloques 180 y 320, respectivamente. En estos casos, las
calculadoras pueden implementarse por ejemplo como calculadoras de
valor real basándose en funciones oscilantes armónicas tales como
la función seno o la función coseno. Sin embargo, también pueden
implementarse calculadoras de valor complejo como las calculadoras
170, 310. En estos casos las calculadoras pueden implementarse, por
ejemplo, basándose en funciones exponenciales complejas u otras
funciones de valor complejo armónicas. La frecuencia de las
oscilaciones de valor real o de valor complejo depende habitualmente
del índice del valor de subbanda de audio, al que también se hace
referencia a veces como el índice de banda o el índice de subbanda
de la subbanda específica. Además, la frecuencia puede ser idéntica
o depender de la frecuencia central de la subbanda correspondiente.
Por ejemplo, la frecuencia de la oscilación puede multiplicarse por
un factor constante, desplazarse con respecto a la frecuencia
central de la subbanda correspondiente o puede depender de una
combinación de ambas modificaciones.
Una calculadora 170, 310 de valor complejo puede
construirse o implementarse basándose en calculadoras de valor
real. Por ejemplo, para una calculadora de valor complejo una
implementación eficaz puede usarse en principio tanto para la parte
modulada por coseno como la modulada por seno de un banco de filtros
que representa la parte real y la imaginaria de una componente de
valor complejo. Esto significa que es posible implementar tanto la
parte modulada por coseno como la parte modulada por seno basándose
en, por ejemplo, las estructuras de DCT-IV- y
DST-IV- modificadas. Además, otras implementaciones
pueden emplear el uso de una FFT (FFT = Fast Fourier
Transform, transformada rápida de Fourier) implementándose
opcionalmente de manera conjunta tanto para la parte real como la
parte de las calculadoras moduladas de manera compleja usando una
FFT o usando en su lugar una fase de FFT separada para cada
transformada.
Las siguientes secciones describirán un ejemplo
de las realizaciones de un banco de filtros de análisis y el banco
de filtros de síntesis con múltiples solapamientos de 8 bloques para
el pasado, que no provocan retardo adicional, tal como se explicó
anteriormente, y un bloque para el futuro, que provoca el mismo
retardo que para una estructura MDCT/MDST (MDCT = Modified
Discrete Cosine Transform, transformada de coseno discreto
modificada; MDST = Modified Discrete Sine Transform,
transformada de seno discreto modificada). En otras palabras, en el
siguiente ejemplo, el parámetro T es igual a 10.
En primer lugar, se facilitará una descripción
de un banco de filtros complejo de retardo bajo modulado de
análisis. Tal como se ilustra en la figura 1, el banco 100 de
filtros de análisis comprende las etapas de transformación de una
división en ventanas de análisis realizada por el divisor 110 en
ventanas de análisis y una modulación de análisis realizada por la
calculadora 170. La división en ventanas de análisis se basa en la
ecuación
donde Z_{i,n} es la muestra
dividida en ventanas (de valor real) correspondiente al índice de
bloque i y el índice de muestra n de la trama 150 mostrada en la
figura 1. El valor x_{i,n} es la muestra de entrada de tiempo (de
valor real) correspondiente al mismo índice de bloque i e índice de
muestra n. La función 190 de ventana de análisis se representa en
la ecuación (1) por sus coeficientes de ventana de valor real
w(n), donde n también es el índice de coeficiente de ventana
en el intervalo indicado en la ecuación (1). Tal como ya se ha
explicado anteriormente, el parámetro N es el número de muestras en
un bloque 220, 130, 160,
180.
A partir de los argumentos de la función de
ventana de análisis
w(10N-1-n) puede verse que la
función de ventana de análisis representa una versión dada la
vuelta o una versión invertida en tiempo de la función de ventana
de síntesis, que se representa realmente por el coeficiente de
ventana w(n).
La modulación de análisis llevada a cabo por la
calculadora 170 en la realización mostrada en la figura 1, se basa
en las dos ecuaciones
y
para el índice de coeficiente
espectral o índice de banda k que es un número entero en el
intervalo
de
Los valores X_{Real,i,k} y X _{imag,i,k}
representan la parte real y la parte imaginaria del valor de
subbanda de audio de valor complejo correspondiente al índice de
bloque i y al índice de coeficiente espectral k del bloque 180. El
parámetro no representa una opción de índice, que es igual a
El banco de filtros de retardo bajo de síntesis
modulado de manera compleja correspondiente comprende las etapas de
transformación de una modulación de síntesis, una división en
ventanas de síntesis y un solapamiento-suma tal
como se describirá.
La modulación de síntesis se basa en la
ecuación
donde x'_{i,n} es una muestra de
dominio de tiempo intermedia de la trama 330 correspondiente al
índice de muestra n y al índice de bloque i. Una vez más, el
parámetro N es un número entero que indica la longitud del bloque
320, 340, 390, 410, a la que también se hace referencia como
longitud de bloque de transformada o, debido a la estructura bloque
a bloque de las tramas 330, 380, como una desviación respecto al
bloque anterior. Asimismo las variables y parámetros adicionales se
han introducido anteriormente, tal como el índice de coeficiente
espectral k y la desviación
no.
La división en ventanas de síntesis llevada a
cabo por el divisor 360 en ventanas de síntesis en la realización
mostrada en la figura 2a se basa en la ecuación
donde z'_{i,n} es el valor de la
muestra de dominio de tiempo intermedia dividida en ventanas
correspondiente al índice de muestra n y al índice de bloque i de
la trama
380.
El sello de transformación del
solapamiento-suma se basa en la ecuación
donde out_{i,n} representa la
muestra (de salida) de dominio de tiempo correspondiente al índice
de muestra n y el índice de bloque i. La ecuación (8), por lo
tanto, ilustra la operación de solapamiento-suma
según se lleva a cabo la fase 400 de salida de
sumador-solapamiento tal como se ilustra en la parte
inferior de la figura
2b.
Sin embargo, las realizaciones según la presente
invención no se limitan a bancos de filtros de retardo bajo
modulados de manera compleja que permiten un procesamiento de señal
de audio con uno de estos bancos de filtros. También puede
implementarse una implementación de valor real de un banco de
filtros de retardo bajo para una codificación de audio de retardo
bajo mejorada. Como comparación, por ejemplo, las ecuaciones (2) y
(6) en cuanto a una parte de coseno revela, la contribución de
coseno de la modulación de análisis y la modulación de síntesis
muestra una estructura comparable cuando se considera la de una
MDCT. Aunque el método de diseño permite en principio una extensión
de la MDCT en ambos sentidos respecto al tiempo, en este caso sólo
se aplica una extensión de E (= T-2) bloques hacia
el pasado, donde cada uno de los T bloques comprende N muestras. El
coeficiente de frecuencia X_{i,k} de banda k y el bloque i dentro
de un banco de filtros de análisis de N canales o N bandas puede
resumirse por
para el índice de coeficiente
espectral k según se define por la ecuación (4). En este caso, una
vez más n es un índice de muestra y w_{a} es la función de
ventana de
análisis.
Para completar, la descripción matemática
facilitada anteriormente del banco de filtros de análisis de retardo
bajo modulado de manera compleja puede facilitarse de la misma
forma resumida que la ecuación (9) intercambiando la función coseno
con la función exponencial de valor complejo. Para ser más precisos,
con la definición y las variables dadas anteriormente, las
ecuaciones (1), (2), (3) y (5) pueden resumirse y extenderse
según
donde a diferencia de las
ecuaciones (2) y (3), la extensión de 8 bloques en el pasado se ha
sustituido por la variable
E(=8).
\newpage
Las etapas de la modulación de síntesis y la
división en ventanas de síntesis, según se ha descrito para el caso
complejo en las ecuaciones (6) y (7), pueden resumirse en el caso de
un banco de filtros de síntesis de valor real. La trama 380 de
muestras de dominio de tiempo intermedias divididas en ventanas, a
la que también se hace referencia como el vector demodulado, viene
dada por
donde z'_{i,n} es la muestra de
dominio de tiempo intermedia dividida en ventanas correspondiente al
índice de banda i y al índice de muestra n. El índice de muestra n
es una vez más un número entero en el intervalo
de
y w_{s}(n) es la ventana
de síntesis, que es compatible con la ventana de análisis
wa(n) de la ecuación
(9).
La etapa de transformación del
solapamiento-suma viene dada entonces por
donde X'_{i,n} es la señal
reconstruida, o en su lugar una muestra de dominio de tiempo del
bloque 410 según proporciona la fase 400 de salida de
solapamiento-suma mostrada en la figura
2a.
Para el banco 300 de filtros de síntesis de
valor complejo, las ecuaciones (6) y (7) pueden resumirse y
generalizarse con respecto a la extensión de E(=8) bloques para la
trayectoria según
donde j = \sqrt{-1} es la unidad
imaginaria. La ecuación (13) representa la forma generalizada de la
ecuación (8) y también es válida para el caso de valor
complejo.
Como muestra una comparación directa de la
ecuación (14) con la ecuación (7), la función de ventana w(n)
de la ecuación (7) es la misma función de ventana de síntesis que
W_{s}(n) de la ecuación (14). Tal como se ha comentado
anteriormente, la comparación similar de la ecuación (10) con el
coeficiente de función de ventana de análisis w_{a}(n) con
la ecuación (1) muestra que la función de ventana de análisis es la
versión invertida en tiempo de la función de ventana de síntesis en
el caso de la ecuación (1).
Como tanto un banco 100 de filtros de análisis,
tal como se muestra en la figura 1, como un banco 300 de filtros de
síntesis, tal como se muestra en la figura 2a, ofrecen una mejora
significativa en cuanto a un equilibrio entre el retardo por un
lado y la calidad del proceso de audio por otro lado, se hace
referencia a menudo a los bancos 100, 300 de filtros como bancos de
filtros de retardo bajo. La versión de de valor complejo del mismo
también se denomina a veces banco de filtros de retardo bajo
complejo, que se abrevia como CLDFB. En determinadas
circunstancias, el término CLDFB no sólo se usa para la versión de
valor complejo sino también para la versión de valor real del banco
de filtros.
Tal como ha mostrado el análisis anterior de los
antecedentes matemáticos, el marco usado para implementar los
bancos de filtros de retardo bajo propuestos utiliza una estructura
de MDCT o a modo de IMDCT (IMDCT = Inverse MDCT, MDCT
inversa), tal como se conoce por la norma MPEG-4,
usando un solapamiento extendido. Las regiones de solapamiento
adicional pueden añadirse bloque a bloque en el lado izquierdo así
como en el derecho del núcleo a modo de MDCT. En este caso, sólo se
usa la extensión hacia el lado derecho (para el banco de filtros de
síntesis), que funciona sólo a partir de muestras pasadas y por lo
tanto no provoca ningún retardo adicional.
El análisis de las ecuaciones (1), (2) y (14) ha
mostrado que el procesamiento es muy similar al de una MDCT o
IMDCT. Sólo mediante ligeras modificaciones, que comprenden una
función de ventana de análisis y una función de ventana de síntesis
modificadas, respectivamente, la MDCT o IMDCT se extiende a un banco
de filtros modulado que puede manejar múltiples solapamientos y es
muy flexible en lo relativo a su retardo. Como han mostrado, por
ejemplo, las ecuaciones (2) y (3) la versión compleja se obtiene en
principio añadiendo simplemente una modulación por seno a la
modulación por coseno dada.
Tal como se comentó en el contexto de las
figuras 1 y 2a, tanto el divisor 110 en ventanas de análisis como
el divisor 360 en ventanas de síntesis o los bancos 100, 300 de
filtros respectivos están adaptados para dividir en ventanas las
tramas de muestras de dominio de tiempo respectivas multiplicando
cada una de las muestras de audio de dominio de tiempo respectivas
con un coeficiente de ventana individual. Cada una de las muestras
de dominio de tiempo se multiplica, en otras palabras, por un
coeficiente de ventana (individual), tal como han demostrado, por
ejemplo, las ecuaciones (1), (7), (9), (10), (11) y (14). En
consecuencia, el número de coeficientes de ventana de la función de
ventana respectiva es normalmente idéntico al número de muestras de
audio de dominio de tiempo respectivas.
Sin embargo, en determinadas circunstancias de
implementación, puede ser aconsejable implementar una función de
ventana que tenga un segundo número de coeficientes de ventana más
grande en comparación con la función de ventana real que tiene un
primer número de coeficientes más pequeño, que se usa realmente
durante la división en ventanas de la trama o secuencia de muestras
de audio de dominio de tiempo respectivas. Esto puede ser
aconsejable por ejemplo en el caso en que los requisitos de memoria
de una implementación específica puedan ser más valiosos que la
eficacia computacional. Un escenario adicional en el que un muestreo
descendente de los coeficientes de ventana podría llegar a ser útil
es en el caso del denominado enfoque de tasa dual, que se emplea
por ejemplo en el marco de sistemas de SBR (SBR = Spectral Band
Replication, replicación de banda espectral). El concepto de
SBR se explicará con más detalle en el contexto de las figuras 5 y
6.
En tal caso, el divisor 110 en ventanas de
análisis o el divisor 360 en ventanas de síntesis puede adaptarse
adicionalmente de modo que la función de ventana respectiva usada
para dividir en ventanas las muestras de audio de dominio de tiempo
proporcionadas al divisor 110, 360 en ventanas respectivo se deriva
mediante una interpolación de coeficientes de ventana de la función
de ventana más grande que tiene un segundo número de coeficientes
de ventana más grande.
La interpolación puede llevarse a cabo, por
ejemplo, mediante una interpolación lineal, polinómica o basada en
spline. Por ejemplo, en el caso de la interpolación lineal,
pero también en el caso de una interpolación polinómica o basada en
spline, el divisor 100, 360 en ventanas respectivo puede ser
capaz entonces de interpolar los coeficientes de ventana de la
función de ventana usada para dividir en ventanas basándose en dos
coeficientes de ventana consecutivos de la función de ventana más
grande según una secuencia de los coeficientes de ventana de la
función de ventana más grande para obtener un coeficiente de ventana
de la función de ventana.
Especialmente en el caso de un número par de
muestras de audio de dominio de tiempo y coeficientes de ventana,
una implementación de una interpolación tal como se describió
anteriormente, da como resultado una mejora significativa de la
calidad de audio. Por ejemplo, en el caso de un número par N \cdot
T de muestras de audio de dominio de tiempo en una de las tramas
120, 330, no usar una interpolación, por ejemplo, una interpolación
lineal, dará como resultado graves efectos de distorsión durante el
procesamiento adicional de las muestras de audio de dominio de
tiempo respectivas.
La figura 3 ilustra un ejemplo de una
interpolación lineal basándose en una función de ventana (una
función de ventana de análisis o una función de ventana de
síntesis) que va a emplearse en el contexto con las tramas que
comprenden N T/2 muestras de audio de dominio de tiempo. Debido a
limitaciones de memoria u otros detalles de implementación, los
coeficientes de ventana de la propia función de ventana no se
almacenan en una memoria, pero una función de ventana más grande
que comprende N T coeficientes de ventana se almacena durante una
memoria apropiada o está disponible de otro modo. La figura 3
ilustra en la gráfica superior, los coeficientes de ventana
c(n) correspondientes en función de los índices de
coeficiente de ventana n en el intervalo entre 0 y N
T-1.
Basándose en una interpolación lineal de dos
coeficientes de ventana consecutivos de la función de ventana que
tienen el número de coeficientes de ventana superior, tal como se
representa en la gráfica superior de la figura 3, una función de
ventana interpolada se calcula basándose en la ecuación
El número de coeficientes de ventana
interpolados ci(n) de la función de ventana que va a
aplicarse a una trama que tiene N T/2 muestras de audio de dominio
de tiempo comprenden la mitad del número de coeficientes de
ventana.
ventana.
Para ilustrar esto adicionalmente, en la figura
3 se muestran coeficientes de ventana 450-0, ...,
450-7 en la parte superior de la figura 3
correspondientes a un coeficiente de ventana c(0), ...,
c(7). Basándose en estos coeficientes de ventana y los
coeficientes de ventana adicionales de la función de ventana, una
aplicación de la ecuación (15) lleva a los coeficientes de ventana
ci(n) de la función de ventana interpolada representada en
la parte inferior de la figura 3. Por ejemplo, basándose en los
coeficientes de ventana 450-2 y
450-3, el coeficiente de ventana
460-1 se genera basándose en la ecuación (15), tal
como se ilustra mediante las flechas 470 en la figura 3. Por
consiguiente, el coeficiente de ventana 460-2 de la
función de ventana interpolada se calcula basándose en el
coeficiente de ventana 450-4, 450-5
de la función de ventana representada en la parte superior de la
figura 3. La figura 3 muestra la generación de coeficientes de
ventana ci(n) adicionales.
Para ilustrar la cancelación de distorsión que
puede conseguirse mediante el muestreo descendente interpolado de
la función de ventana, la figura 4 ilustra la interpolación de los
coeficientes de ventana en el caso de una función de ventana de
seno, que puede, por ejemplo, emplearse en una MDCT. Por motivos de
simplicidad, la mitad izquierda de la función de ventana y la mitad
derecha de la función de ventana están dibujadas una sobre la otra.
La figura 4 muestra una versión simplificada de una ventana de seno,
que comprende sólo 2 \cdot 4 puntos o coeficientes de ventana
para una MDCT que tiene una longitud de 8 muestras.
La figura 4 muestra cuatro coeficientes de
ventana 480-1, 480-2,
480-3 y 480-4 de la primera mitad de
la ventana de seno y cuatro coeficientes de ventana
490-1, 490-2, 490-3
y 390-4 de la segunda mitad de la ventana de seno.
El coeficiente de ventana 490-1, ...,
490-4 corresponde a los índices de coeficiente de
ventana 5, ..., 8. Los coeficientes de ventana
490-1, ..., 490-4 corresponden a la
segunda mitad de la longitud de la función de ventana de modo que
para los índices dados debe añadirse N' = 4 para obtener los índices
reales.
Para reducir o incluso conseguir la cancelación
de los efectos de distorsión tal como se describió anteriormente,
el coeficiente de ventana debería cumplir la condición
lo mejor posible. Cuanto mejor se
cumpla la relación (16), mejor será la supresión de la distorsión o
la cancelación de la
distorsión.
Suponiendo la situación de que una nueva función
de ventana que tiene la mitad del número de coeficientes de ventana
va a determinarse para la mitad izquierda de la función de ventana,
surge el siguiente problema. Debido al hecho de que la función de
ventana comprende un número par de coeficientes de ventana (muestreo
descendente numerado de manera par), sin emplear un esquema de
interpolación tal como se sugiere en la figura 3, los coeficientes
de ventana 480-1 y 480-3 ó
480-2 y 480-4 corresponden sólo a un
valor de distorsión de la función de ventana original o filtro
original.
Esto lleva a una proporción desequilibrada de
energía espectral y lleva a una redistribución asimétrica del punto
central (centro de masas) de la función de ventana correspondiente.
Basándose en la ecuación de interpolación (15) para el coeficiente
de ventana w(n) de la figura 4, los valores I_{1} e I_{2}
interpolados cumplen la relación de distorsión (16) mucho mejor, y
por lo tanto llevarán a una mejora significativa relativa a la
calidad de los datos de audio procesados.
Sin embargo, empleando un esquema de
interpolación incluso más elaborado, por ejemplo un esquema de
interpolación basado en spline u otro similar, podría dar
como resultado incluso coeficientes de ventana, que cumplen la
relación (16) incluso mejor. Una interpolación lineal es en la
mayoría de los casos suficiente y permite una implementación rápida
y eficaz.
En la situación en el caso de un sistema de SBR
típico que emplea un banco de filtros QMF de SBR (QMF =
Quadrature Mirror Filter, filtro de espejo en cuadratura),
no se requiere implementar una interpolación lineal u otro esquema
de interpolación puesto que el filtro prototipo QMF de SBR comprende
un número impar de coeficientes de filtro prototipo. Esto significa
que el filtro prototipo QMF de SBR comprende un valor máximo con
respecto al cual puede implementarse el muestreo descendente de
modo que la simetría del filtro prototipo QMF de SBR permanece
intacta.
En las figuras 5 y 6, se describirá una posible
aplicación para realizaciones según la presente invención en la
forma de tanto un banco de filtros de análisis como un banco de
filtros de síntesis. Un campo de aplicación importante es una
herramienta de de SBR o un sistema de SBR (SBR = Spectral Band
Replication, replicación de banda espectral). Sin embargo,
otras aplicaciones de realizaciones según la presente invención
pueden proceder de otros campos, en los que existe la necesidad de
modificaciones espectrales (por ejemplo modificaciones de ganancia
o ecualizaciones), tales como codificación de objeto de audio
espacial, codificación estéreo paramétrica de retardo bajo,
codificación de sonido perimétrico/espacial de retardo bajo,
ocultación de pérdida de trama, cancelación de eco u otras
aplicaciones correspondientes.
La idea básica subyacente a la SBR es la
observación de que habitualmente está presente una fuerte
correlación entre las características de un intervalo de alta
frecuencia de una señal, a la que se hará referencia como lo que se
denomina señal de banda alta, y las características del intervalo de
frecuencias de banda baja, a lo que se hace referencia
adicionalmente como la banda baja o señales de banda baja, de la
misma señal. Por tanto, puede lograrse una buena aproximación para
la representación de la banda alta de señal de entrada original
mediante una transposición desde la banda baja a la banda alta.
\newpage
Además de la transposición, la reconstrucción de
la banda alta incorpora la conformación de la envolvente espectral,
que comprende un ajuste de las ganancias. Este proceso se controla
normalmente mediante una transmisión de la envolvente espectral de
banda alta de la señal de entrada original. Información de guiado
adicional enviada desde el codificador controla módulos de síntesis
adicionales, tales como un filtrado inverso, una adición de ruido y
seno con el fin de manejar el material de audio cuando sólo la
transposición puede no ser suficiente. Los parámetros
correspondientes comprenden los parámetros "banda alta de
ruido" para la adición de ruido y el parámetro "banda alta de
tonalidades" para la adición de seno. Esta información de guiado
se denomina habitualmente datos de SBR.
El proceso de SBR puede combinarse con cualquier
forma de onda o códec convencional por medio de un proceso previo
en el lado de codificador y el proceso posterior en el lado de
decodificador. La SBR codifica la parte de alta frecuencia de una
señal de audio a un coste muy bajo mientras que el códec de audio se
usa para codificar la parte de frecuencia inferior de la señal.
En el lado de codificador, se analiza la señal
de entrada original, se codifican la envolvente espectral de banda
alta y sus características en relación con la banda baja y se
multiplexan los datos de SBR resultantes con un flujo de bits desde
el códec para la banda baja. En el lado de decodificador, los datos
de SBR se demultiplexan en primer lugar. El proceso de
decodificación se organiza generalmente en etapas. En primer lugar,
el decodificador de núcleo genera la banda baja y, en segundo
lugar, el decodificador de SBR opera como un procesador posterior
que usa los datos de SBR decodificados para guiar el proceso de
replicación de banda espectral. Se obtiene entonces una señal de
salida de ancho de banda completo.
Para obtener una eficacia de codificación tan
alta como sea posible, y para mantener la complejidad computacional
baja, se implementan con frecuencia códecs mejorados de SBR como los
denominados sistemas de tasa dual. Tasa dual significa que el códec
de núcleo limitado en banda está funcionando a la mitad de la tasa
de muestreo de audio externa. Por el contrario, la parte de SBR se
procesa a la frecuencia de muestreo completa.
La figura 5 muestra un diagrama de bloques
esquemático de un sistema 500 de SBR. El sistema 500 de SBR
comprende por ejemplo un codificador 510 de AAC-LD
(AAC-LD = Advanced Audio Codec
Low-delay, retardo bajo de códec de audio
avanzado) y un codificador 520 de SBR al que se proporcionan en
paralelo los datos de audio que van a procesarse. El codificador
520 de SBR comprende un banco 530 de filtros de análisis, que se
muestra en la figura 5 como banco de filtros de análisis QMF. El
banco 530 de filtros de análisis puede proporcionar valores de
audio de subbanda correspondientes a subbandas basándose en las
señales de audio proporcionadas al sistema 500 de SBR. Estos
valores de audio de subbanda se proporcionan entonces a un módulo
540 de extracción de parámetros de SBR, que genera los datos de SBR
tal como se describió anteriormente, por ejemplo que comprenden la
envolvente espectral para la banda alta, el parámetro de ruido de
banda alta y el parámetro de tonalidad de banda alta. Estos datos
de SBR se proporcionan entonces al codificador 510 de
AAC-LD.
El codificador 510 de AAC-LD se
muestra en la figura 5 como un codificador de tasa dual. En otras
palabras, el codificador 510 opera a la mitad de la frecuencia de
muestreo en comparación con la frecuencia de muestreo de los datos
de audio proporcionados al codificador 510. Para facilitar esto, el
codificador 510 de AAC-LD comprende una fase 550 de
muestreo descendente, que opcionalmente puede comprender un filtro
pasobajo para evitar distorsiones provocadas, por ejemplo, por una
violación de la teoría de Nyquist-Shannon. Los datos
de audio muestreados de manera descendente como salida mediante la
fase 550 de muestreo descendente se proporcionan entonces a un
codificador 560 (banco de filtros de análisis) en la forma de un
banco de filtros de MDCT. Las señales proporcionadas por el
codificador 560 se cuantifican entonces y se codifican en la fase
570 de cuantificación y codificación. Además, los datos de SBR
según se proporcionan por el módulo 540 de extracción de parámetros
de SBR se codifican también para obtener un flujo de bits, que
entonces se proporcionará por el codificador 510 de
ACC-LD. La fase 570 de cuantificación y codificación
puede cuantificar, por ejemplo, los datos según las propiedades
auditivas del oído humano.
El flujo de bits se proporciona entonces a un
decodificador 580 de AAC-LD, que forma parte del
lado de decodificador al que se transporta el flujo de bits. El
decodificador de AAC-LD comprende una fase 590 de
decodificación y decuantificación, que extrae los datos de SBR del
flujo de bits y los datos de audio decuantificados o recuantificados
en el dominio de frecuencia que representa la banda baja. Los datos
de banda baja se proporcionan entonces a un banco 600 de filtros de
síntesis (banco de filtros inverso de MDCT). La fase 600 de MDCT
inversa (MDCT^{-1}) convierte las señales proporcionadas a la
fase de MDCT inversa desde el dominio de frecuencia al dominio de
tiempo para proporcionar una señal de tiempo. Esta señal de dominio
de tiempo se proporciona entonces al decodificador 610 de SBR, que
comprende un banco 620 de filtros de análisis, que se muestra en la
figura 5 como un banco de filtros de análisis QMF.
El banco 620 de filtros de análisis realiza un
análisis espectral de la señal de tiempo proporcionada al banco 620
de filtros de análisis que representa la banda baja. Estos datos se
proporcionan entonces a un generador 630 de alta frecuencia, al que
también se hace referencia como generador de HF. Basándose en los
datos de SBR proporcionados por el codificador 580 de
AAC-LD y su fase 590 de decodificación y
decuantificación, el generador 630 de HF genera la banda alta
basándose en las señales de banda baja proporcionadas por el banco
620 de filtros de análisis. Tanto las señales de banda baja como de
banda alta se proporcionan entonces a un banco 640 de filtros de
síntesis, que transfiere las señales de banda baja y de banda alta
desde el dominio de frecuencia al dominio de tiempo para
proporcionar una señal de salida de audio de dominio de tiempo desde
el sistema 500 de SBR.
Para completar, debe observarse que en muchos
casos el sistema 500 de SBR tal como se muestra en la figura 5 no
se implementa de este modo. Para ser más precisos, el codificador
510 de AAC-LD y el codificador 520 de SBR
habitualmente se implementan en el lado de codificador, que
habitualmente se implementa por separado desde el lado de
decodificador que comprende el decodificador 580 de
AAC-LD y el decodificador 610 de SBR. En otras
palabras, el sistema 500 mostrado en la figura 5 representa
esencialmente la conexión de dos sistemas, concretamente un
codificador que comprende los codificadores 510, 520 mencionados
anteriormente y un decodificador que comprende los decodificadores
580, 610 mencionados anteriormente.
Realizaciones según la presente invención en la
forma de bancos 100 de filtros de análisis y bancos 300 de filtros
de síntesis pueden implementarse, por ejemplo, en el sistema 500
mostrado en la figura 5, en sustitución del banco 530 de filtros de
análisis, el banco 620 de filtros de análisis y el banco 640 de
filtros de síntesis. En otras palabras, los bancos de filtros de
síntesis o análisis de los componentes de SBR del sistema 500
pueden sustituirse, por ejemplo, por realizaciones correspondientes
según la presente invención. Además, la MDCT 560 y la MDCT 600
inversa pueden sustituirse también por bancos de filtros de análisis
y síntesis de retardo bajo, respectivamente. En este caso, si se
han implementado todas las sustituciones descritas, se realizará el
denominado códec AAC de retardo bajo mejorado (códec = codificador -
decodificador).
El AAC de retardo bajo mejorado
(AAC-ELD) está previsto para combinar las
características de retardo bajo de un AAC-LD
(Advanced Audio
Codec-Low-delay, códec de audio
avanzado-retardo bajo) con una alta eficacia de
codificación de HE-AAC (High Efficiency Advanced
Audio Codec, códec de audio avanzado de alta eficacia) usando
SBR con AAC-LD. El decodificador 610 de SBR actúa en
este escenario como un posprocesador, que se suministra después del
decodificador 580 de núcleo que incluye un banco de filtros de
análisis completo y un banco 640 de filtros de síntesis. Por lo
tanto, los componentes del decodificador 610 de SBR añaden retardo
de decodificación adicional, que se ilustra en la figura 5 mediante
el sombreado de los componentes 620, 630, 540.
En muchas implementaciones de sistemas 500 de
SBR, la parte de frecuencia inferior o banda baja varía normalmente
de 0 kHz a normalmente 5-15 kHz y se codifica usando
un codificador de forma de onda, al que se hace referencia como
códec de núcleo. El códec de núcleo puede ser por ejemplo uno de la
familia de códecs de audio de MPEG. Adicionalmente, una
reconstrucción de la parte de alta frecuencia o banda alta se
consigue mediante una transición de la banda baja. La combinación
de SBR con un codificador de núcleo se implementa en muchos casos
como un sistema de tasa dual, en el que el
codificador/decodificador de AAC subyacente se opera a la mitad de
la tasa de muestreo del codificador/decodificador de SBR.
La mayoría de los datos de control se usan para
la representación de envolvente espectral, que tiene una resolución
de tiempo y de frecuencia variables para poder controlar el proceso
de SBR lo mejor posible con la menor sobrecarga de tasa de bits
posible. Los otros datos de control tratan principalmente de
controlar la relación tonal-a-ruido
de la banda alta.
Tal como se muestra en la figura 5, la salida
desde el decodificador 580 de AAC subyacente normalmente se analiza
con un banco 620 de filtros QMF de 32 canales. A continuación, el
módulo 630 de generador de HF recrea la banda alta interconectando
subbandas de QMF de la banda baja existente a la banda alta. Además,
se realiza el filtrado inverso subbanda a subbanda, basándose en
los datos de control obtenidos a partir del flujo de bits (datos de
SBR). El ajustador de envolvente modifica la envolvente espectral de
la banda alta regenerada y añade componentes adicionales tales como
ruido y sinusoides que se añaden según los datos de control en el
flujo de bits. Puesto que todas las operaciones se realizan en el
dominio de frecuencia (también conocido como dominio de subbanda o
QMF), la etapa final del decodificador 610 es una síntesis 640 de
QMF para retener una señal de dominio de tiempo. Por ejemplo, en el
caso de que el análisis de QMF en el lado de codificador se realice
en un sistema de 32 subbandas de QFM para 1024 muestras de dominio
de tiempo, la reconstrucción de alta frecuencia da como resultado
64 subbandas de QMF sobre las que se realiza la síntesis produciendo
2048 muestras de dominio de tiempo, de modo que se obtiene un
muestreo ascendente por un factor de 2.
Además, el retardo del codificador 510 de núcleo
se dobla operando a la mitad de la tasa de muestreo original en el
modo de tasa dual, que hace surgir fuentes adicionales de retardo
tanto en el proceso de codificador como en el de decodificador de
un AAC-LD en combinación con SBR. En lo sucesivo, se
examinan tales fuentes de retardo y se minimiza su retardo
asociado.
La figura 6 muestra un diagrama de bloques
simplificado del sistema 500 mostrado en la figura 5. La figura 6
se concentra en fuentes de retardo en el proceso de
codificador/decodificador usando SBR y bancos de filtros de retardo
bajo para la codificación. Comparando la figura 6 con la figura 5,
la MDCT 560 y la MDCT 600 inversa se han sustituido por módulos de
retardo optimizado, la denominada MDCT 560' de retardo bajo (LD
MDCT) y la MDCT 600' de retardo bajo inversa (LD IMDCT). Además, el
generador 630 de HF se ha sustituido también por un módulo 630' de
retardo optimizado.
Aparte de la MDCT 560' de retardo bajo y la MDCT
600' inversa de retardo bajo, se emplean un entramado de SBR
modificado y un generador 630' de HF modificado en el sistema
mostrado en la figura 6. Con el fin de evitar el retardo por
entramado diferente de un codificador/decodificador 560, 600 de
núcleo y los módulos de SBR respectivos, el entramado de SBR se
adapta para coincidir con la longitud de entramado de 480 ó 512
muestras del AAC-LD. Además, la cuadrícula de
tiempo variable del generador 630 de HF, que implica 384 muestras de
retardo, está limitada respecto al ensanchamiento de datos de SBR
sobre tramas de AC-LD adyacentes. Por tanto, las
únicas fuentes de retardo restantes en el módulo de SBR son los
bancos 530, 620 y 640 de filtros.
Según la situación representada en la figura 6,
que representa una implementación parcial del códec
AAC-ELD, ya se han implementado algunas
optimizaciones de retardo incluyendo el uso de un banco de filtros
de retardo bajo en el núcleo de AAC-LD y la
eliminación de un solapamiento de SBR mencionado anteriormente. Para
mejoras de retardo adicionales, es necesario investigar los módulos
restantes. La figura 6 muestra las fuentes de retardo en el proceso
de codificador/decodificador usando SBR y los bancos de filtros de
retardo bajo denominados LD-MDCT y
LD-IMDCT en este caso. En comparación con la figura
5, en la figura 6 cada recuadro representa una fuente de retardo,
donde los módulos de optimización de retardo están dibujados de
manera sombreada. Los módulos similares no se han optimizado para
retardo bajo hasta ahora.
La figura 7a ilustra un diagrama de flujo que
comprende un pseudocódigo C o C++ para ilustrar una realización
según la presente invención en la forma de un banco de filtros de
análisis o un método correspondiente para generar valores de
subbanda de audio en canales de subbanda de audio. Para ser incluso
más precisos, la figura 7a representa un diagrama de flujo de un
banco de filtros de análisis de valor complejo para 32 bandas.
Tal como se comentó anteriormente, el banco de
filtros de análisis se usa para dividir la señal de dominio de
tiempo, por ejemplo proporcionada a partir del codificador de núcleo
en N = 32 señales de subbanda. La salida procedente del banco de
filtros, las muestras de subbanda o valores de subbanda de audio
son, en el caso de un banco de filtros de análisis de valor
complejo, de valor complejo y así se sobremuestrean por un factor
de 2, en comparación con un banco de filtros de valor real. El
filtrado implica y comprende las siguientes etapas, en las que una
disposición x(n) comprende exactamente 320 muestras de
dominio de tiempo. Cuanto más alto sea el índice de las muestras n
en la disposición, más antiguas son las muestras.
Tras un comienzo de las realizaciones del método
en la etapa S100, en primer lugar, las muestras en la disposición
x(n) se desplazan 32 posiciones en la etapa S110. Las 32
muestras más antiguas se descartan y se almacenan 32 muestras
nuevas en las posiciones 31 a 0 en la etapa S120. Tal como se
muestra en la figura 7a, las muestras de audio de dominio de tiempo
entrantes se almacenan en posiciones correspondientes a un índice
decreciente n en el intervalo de 31 a 0. Esto da como resultado una
inversión temporal de las muestras almacenadas en la trama o vector
correspondiente de modo que ya se ha tenido cuidado de invertir el
índice de la función de ventana para obtener la función de ventana
de análisis basándose en la función de ventana de síntesis
(igualmente larga).
Durante una etapa S130, se obtienen los
coeficientes de ventana ci(j) mediante una interpolación
lineal de los coeficientes c(j) basándose en la ecuación
(15). La interpolación se basa en un tamaño de bloque (longitud de
bloque o número de valores de subbanda) de N = 64 valores y se basa
en una trama que comprende T = 10 bloques. Por lo tanto, el índice
de los coeficientes de ventana de la función de ventana interpolada
está en el intervalo entre 0 y 319 según la ecuación (15). Los
coeficientes de ventana c(n) se dan en la tabla en el anexo 1
de la descripción. Sin embargo, dependiendo de los detalles de
implementación, para obtener los coeficientes de ventana basándose
en los valores dados en las tablas en los anexos 1 y 3, deben
considerarse cambios de signo adicionales con respecto a los
coeficientes de ventana correspondientes a los índices 128 a 255 y
384 a 511 (multiplicación con factor (-1)).
En estos casos, los coeficientes de ventana
w(n) o c(n) que van a usarse pueden obtenerse
según
con la función s(n) de
cambio de signo
según
para n = 0 a 639, donde
w_{tabla}(n) son los valores dados en las tablas en los
anexos.
Sin embargo, no se requiere implementar los
coeficientes de ventana según la tabla en el anexo 1 para obtener,
por ejemplo, la reducción de retardo ya descrita. Para conseguir
esta reducción de retardo, mientras se mantiene el nivel de calidad
de los datos de audio procesados, o para conseguir otro equilibrio,
los coeficientes de ventana c(n) para el índice de
coeficiente de ventana n en el intervalo entre 0 y 639, pueden
cumplir uno de los conjuntos de relaciones según se facilitan en
uno de los anexos 2 a 4. Además, debe observarse que pueden
emplearse también otros coeficientes de ventana c(n) en
realizaciones según la presente invención. Naturalmente, también
pueden implementarse otras funciones de ventana que comprenden un
número de coeficientes de ventana diferente de 320 ó 640, aunque
las tablas en los anexos 1 a 4 sólo se aplican a funciones de
ventana que tienen 640 coeficientes de ventana.
\newpage
La interpolación lineal según S130 lleva a una
mejora significativa de la calidad y a una reducción o cancelación
de los efectos de distorsión en el caso de una función de ventana
que comprende un número par de coeficientes de ventana. De
observarse además que la unidad compleja no es j como en las
ecuaciones (1), (2) y (16), sino que se indica mediante
i =
\sqrt{-1}.
En la etapa S140, las muestras de la disposición
x(n) se multiplican entonces elemento a elemento por los
coeficientes ci(n) de la ventana interpolada.
En la etapa S150, las muestras divididas en
ventanas se suman según la ecuación dada en el diagrama de flujo en
la figura 7a para crear la disposición de 64 elementos u(n).
En la etapa S160, se calculan 32 nuevas muestras de subbanda o
valores de subbanda de audio W(k,l) según la operación de
matriz Mu, en la que el elemento de la matriz M viene dado por
donde exp() indica la función
exponencial compleja y, como se mencionó anteriormente, i es la
unidad imaginaria. Antes de que termine el bucle de un diagrama de
flujo con la etapa S170, puede proporcionarse cada uno de los
valores de subbanda W(k,l) (= W[k] [l]), lo que
corresponde a la muestra 1 de subbanda en la subbanda que tiene el
índice k. En otras palabras, cada bucle en el diagrama de flujo
mostrado en la figura 7a produce 32 valores de subbanda de valor
complejo, representando cada uno la salida a partir de una subbanda
de banco de
filtros.
La figura 7b ilustra la etapa S150 de plegado de
la trama 150 de muestras de audio de dominio de tiempo divididas en
ventanas que comprende 10 bloques 160-1, ...,
160-10 de muestras de audio de dominio de tiempo
divididas en ventanas z(n) al vector u(n) sumando 5
veces cada dos bloques de la trama 150. El plegado o retracción se
realiza elemento a elemento de modo que las muestras de audio de
dominio de tiempo divididas en ventanas correspondientes al mismo
índice de muestra dentro de cada uno de los bloques
160-1, 160-3, 160-5,
160-7 y 160-9 se añaden para
obtener el valor correspondiente en los primeros bloques
650-1 del vector u(n). Por consiguiente,
basándose en los bloques 160-2,
160-4, 160-6, 160-8
y 160-10, se generan los elementos del vector
u(n) correspondientes en el bloque 160-2 en
la etapa S150.
Una realización adicional según la presente
invención en la forma de un banco de filtros de análisis puede
implementarse como un banco de filtros de retardo bajo complejo de
64 bandas. El procesamiento de este banco de filtros de retardo
bajo complejo como un banco de filtros de análisis es básicamente
similar al banco de filtros de análisis según se describe en el
contexto de la figura 7a. Debido a las similitudes y básicamente al
mismo procesamiento según se ha descrito en el contexto de la figura
7a, las diferencias entre el banco de filtros de análisis complejo
descrito para 32 bandas de la figura 7a y el banco de filtros de
análisis complejo para 64 subbandas se comentarán en este caso.
A diferencia del banco de filtros de análisis
que comprende 32 subbandas tal como se muestra en la figura 7a, el
vector de trama x(n) comprende, en el caso de un banco 640 de
filtros de análisis de 64 bandas elementos que tienen índices desde
0-639. Por lo tanto, la etapa S110 se modifica de
modo que las muestras en la disposición x(n) se desplazan 64
posiciones, donde se descartan las 64 muestras más antiguas. En la
etapa S120 en lugar de 32 muestras nuevas, se almacenan 64 muestras
nuevas en las posiciones 63 a 0. Tal como se muestra en la figura
7c, las muestras de audio de dominio de tiempo entrantes se
almacenan en posiciones correspondientes a un índice decreciente n
en el intervalo de 63 a 0. Esto da como resultado una inversión en
tiempo de las muestras almacenadas en la trama o vector
correspondiente de modo que ya se ha tenido cuidado de invertir el
índice de la función de ventana para obtener la función de ventana
de análisis basándose en la función de ventana de síntesis
(igualmente larga).
Como la ventana c(n) usada para dividir
en ventanas los elementos del vector de trama x(n), comprende
normalmente 640 elementos, puede omitirse la etapa S130 de
interpolación de manera lineal de los coeficientes de ventana para
obtener las ventanas interpoladas ci(n).
Entonces, durante la etapa S140, las muestras de
la disposición x(n) se multiplican o se dividen en ventanas
mediante el uso de la secuencia de coeficientes de ventana
c(n), que una vez más se basan en los valores en la tabla en
el anexo 1. En el caso de que el coeficiente de ventana c(n)
sea el de la función de ventana de síntesis, la división en
ventanas o multiplicación de la disposición x(n) por la
ventana c(n) se lleva a cabo según la ecuación
\vskip1.000000\baselineskip
para an = 0, ..., 639. Una vez más,
para conseguir las propiedades de retardo bajo de la función de
ventana, no se requiere implementar la función de ventana
exactamente según los coeficientes de ventana basándose en los
valores dados en la tabla del anexo 1. Para muchas aplicaciones, una
implementación en la que los coeficientes de ventana cumplen
cualquiera de los conjuntos de relaciones según se dan en la tablas
en los anexos 2 a 4 será suficiente para conseguir un equilibrio
aceptable entre calidad y una reducción significativa del retardo.
Sin embargo, dependiendo de los detalles de implementación, para
obtener los coeficientes de ventana basándose en los valores dados
en las tablas en los anexos 1 y 3, deben considerarse cambios de
signo adicionales con respecto a los coeficientes de ventana
correspondientes a los índices 128 a 255 y 384 a 511 (multiplicación
con factor (-1)) según las ecuaciones (16a) y
(16b).
La etapa S150 del diagrama de flujo mostrado en
la figura 7a se sustituye entonces por una suma de las muestras del
vector de trama z(n) según la ecuación
para crear la disposición de 128
elementos
u(n).
La etapa S160 de la figura 7a se sustituye
entonces por una etapa en la que se calculan 64 muestras de subbanda
nuevas según la operación de la matriz Mu, en la que los elementos
de matriz de la matriz M vienen dados por
donde exp() indica la función
exponencial compleja e i, tal como se explicó, es la unidad
imaginaria.
La figura 7c ilustra un diagrama de flujo según
una realización de la presente invención en la forma de un banco de
filtros de análisis de valor real para 32 canales de subbanda. La
realización tal como se ilustra en la figura 7c no difiere
significativamente de la realización mostrada en la figura 7a. La
principal diferencia entre las dos realizaciones es que la etapa
S160 de cálculo de los 32 valores nuevos de audio de subbanda de
valor complejo se sustituye en la realización mostrada en la figura
7c por una etapa S162 en la que se calculan 32 muestras de audio de
subbanda de valor real según una operación de matriz M_{r}u, en la
que los elementos de la matriz M_{r} vienen dados por
En consecuencia, cada bucle en el diagrama de
flujo produce 32 muestras de subbanda de valor real donde
W(k,1) corresponde a la muestra 1 de audio de subbanda de la
subbanda k.
El banco de filtros de análisis de valor real
puede emplearse, por ejemplo, en el marco de un modo de potencia
baja de un sistema de SBR, tal como se muestra en la figura 5. El
modo de potencia baja de la herramienta de SBR difiere de la
herramienta de SBR de alta calidad principalmente con respecto al
hecho de que se emplean bancos de filtros de valor real. Esto
reduce la complejidad computacional y el esfuerzo computacional por
un factor de 2, de modo que el número de operaciones por unidad de
tiempo se reducen esencialmente por un factor de 2 puesto que no se
requiere calcular ninguna parte imaginaria.
Los nuevos bancos de filtros propuestos según la
presente invención son totalmente compatibles con el modo de
potencia baja de sistemas de SBR. Por tanto, con los bancos de
filtros según la presente invención, los sistemas de SBR todavía
pueden funcionar en el modo normal o modo de alta calidad con bancos
de filtros complejos y en el modo de potencia baja con bancos de
filtros de valor real. El banco de filtros de valor real puede, por
ejemplo, derivarse a partir del banco de filtros complejo usando
sólo los valores reales (contribuciones moduladas por coseno) y
omitiendo los valores imaginarios (contribuciones moduladas por
seno).
La figura 8a muestra un diagrama de flujo según
un ejemplo comparativo de la presente invención en la forma de un
banco de filtros de síntesis de valor complejo para 64 canales de
subbanda. Tal como se comentó anteriormente, el filtrado de
síntesis de las señales de subbanda procesadas de SBR se consigue
usando un banco de filtros de síntesis de 64 subbandas. La salida
procedente del banco de filtros es un bloque de muestras de dominio
de tiempo de valor real tal como se sugiere en el contexto de la
figura 1. El proceso se ilustra mediante el diagrama de flujo en la
figura 8a, que también ilustra un ejemplo comparativo en la forma de
un método para generar muestras de audio de dominio de tiempo.
El filtrado de síntesis comprende después de un
inicio (etapa S200), las siguientes etapas, en las que una
disposición v comprende 1280 muestras. En la etapa S210, las
muestras en la disposición v se desplazan 128 posiciones, donde las
128 muestras más antiguas se descartan. En la etapa S220, los 64
valores nuevos de subbanda de audio de valor complejo se
multiplican por una matriz N, en la que los elementos de matriz
N(k,n) vienen dados por
donde exp() indica la función
exponencial compleja e i es la unidad imaginaria. La parte real del
resultado procedente de esta operación se almacena en la posición
0-127 de la disposición v, tal como se ilustra en
la figura
8a.
En la etapa S230, las muestras, que ahora están
en el dominio de tiempo se extraen de la disposición v según la
ecuación dada en la figura 8a para crear una disposición de 640
elementos g(n). En la etapa S240, las muestras de valor real
en el dominio de tiempo de disposición g se multiplican por el
coeficiente de ventana c(n) para producir una disposición w,
en la que los coeficientes de ventana son una vez más los
coeficientes de ventana basados en los valores dados en la tabla en
el anexo 1.
Sin embargo, tal como se comentó anteriormente,
no se requiere que los coeficientes de ventana se basen exactamente
en los valores dados en la tabla del anexo 1. Es suficiente en
diferentes ejemplos comparativos, si los coeficientes de ventana
satisfacen uno de los conjuntos de relaciones según se dan en las
tablas de los anexos 2 a 4, para conseguir la propiedad de retardo
bajo deseada del banco de filtros de síntesis. Además, tal como se
explicó en el contexto del banco de filtros de análisis, también
pueden utilizarse otros coeficientes de ventana en el marco del
banco de filtros de síntesis. Sin embargo, dependiendo de los
detalles de implementación, para obtener los coeficientes de
ventana basándose en los valores dados en las tablas en los anexos 1
y 3, deben considerarse cambios de signo adicionales con respecto a
los coeficientes de ventana correspondientes a los índices 128 a
255 y 384 a 511 (multiplicación con factor (-1)).
En la etapa S250, se calculan 64 muestras nuevas
de salida mediante una suma de muestras a partir de la disposición
w(n) según la última etapa y la fórmula dada en el diagrama
de flujo de la figura 8a, antes de que finalice un bucle de un
diagrama de flujo en la etapa S260. En el diagrama de flujo tal como
se muestra en la figura 8a, X [k] [l] (= X (k,l)) corresponde al
valor 1 de subbanda de audio en la subbanda que tiene el índice k.
Cada nuevo bucle tal como se representa en la figura 8a produce 64
muestras de audio de valor real de dominio de tiempo como
resultado.
La implementación tal como se muestra en la
figura 8a de un banco de filtros de análisis de valor complejo para
64 bandas no requiere una memoria intermedia de solapamiento/suma
que comprenda varias posiciones de almacenamiento tal como se
explicó en el contexto de la realización mostrada en la figura 2b.
En este caso, la memoria intermedia de
solapamiento-suma está "oculta" en los vectors
v y g, que se calcula basándose en los valores almacenados en el
vector v. La memoria intermedia de solapamiento-suma
se implementa en el marco de estos vectors siendo estos índices
superiores a 128, de modo que los valores corresponden a valores de
bloques anteriores o pasados.
La figura 8b ilustra un diagrama de flujo de un
banco de filtros de síntesis de valor real para 64 canales de
subbanda de audio de valor real. El banco de filtros de síntesis de
valor real según la figura 8b puede implementarse también en el
caso de una implementación de SBR de potencia baja como un banco de
filtros de SBR correspondiente.
El diagrama de flujo de la figura 8b difiere del
diagrama de flujo de la figura 8a, principalmente con respecto a la
etapa S222, que sustituye a la S220 de la figura 8a. En la etapa
S222, las 64 valores nuevos de subbanda de audio de valor real se
multiplican por una matriz N_{r}, en la que los elementos de la
matriz N_{r}(k,n) vienen dados por
donde el resultado de esta
operación se almacena una vez más en las posiciones
0-127 de la disposición
v.
Aparte de estas modificaciones, el diagrama de
flujo tal como se muestra en la figura 8b en el caso de un banco de
filtros de síntesis de valor real para el modo de SBR de potencia
baja, no difiere del diagrama de flujo tal como se muestra en la
figura 8a del banco de filtros de síntesis de valor complejo para el
modo de SBR de alta calidad.
La figura 8c ilustra un diagrama de flujo según
una realización de la presente invención en la forma de un banco de
filtros de síntesis de valor complejo muestreado de manera
descendente y el método apropiado, que puede implementarse por
ejemplo en una implementación de SBR de alta calidad. Para ser más
precisos, el banco de filtros de síntesis tal como se describe en
la figura 8c se refiere a un banco de filtros de síntesis de valor
complejo que puede procesar valores de subbanda de audio de valor
complejo para 32 canales de subbanda.
El filtrado de síntesis muestreado de manera
descendente de las señales de subbanda de proceso de SBR se consigue
usando un banco de filtros de síntesis de 32 canales tal como se
ilustra en la figura 8c. La salida del banco de filtros es un
bloque de muestras de dominio de tiempo de valor real. El proceso
viene dado en el diagrama de flujo de la figura 8c. El filtrado de
síntesis comprende después de un inicio (etapa S300), las siguientes
etapas, en las que una disposición v comprende 640 muestras de
dominio de tiempo de valor real.
En la etapa S310, las muestras en la disposición
v se desplazan 64 posiciones, en la que las 64 muestras más
antiguas se descartan. Entonces, en la etapa S320, las 32 muestras
nuevas de subbanda de valor complejo o valores de subbanda de audio
de valor complejo se multiplican por una matriz N, cuyos elementos
vienen dados por
donde exp() indica la función
exponencial compleja e i de nuevo es la unidad imaginaria. La parte
real del resultado de esta operación se almacena entonces en las
posiciones 0-63 de la disposición
v.
En la etapa S330, las muestras se extraen del
vector v según la ecuación dada en el diagrama de flujo de la
figura 8c para crear una disposición g de 320 elementos. En la etapa
S340, los coeficientes de ventana ci(n) de una función de
ventana interpolada se obtienen mediante una interpolación lineal de
los coeficientes c(n) según la ecuación (15), en la que el
índice n está una vez más en el intervalo entre 0 y 319 (N=64, T=10
para la ecuación (15)). Tal como se ilustró anteriormente, los
coeficientes de una función de ventana c(n) se basan en los
valores dados en la tabla del anexo 1. Además, para conseguir la
propiedad de retardo bajo tal como se ilustró anteriormente, no se
requiere que los coeficientes de ventana c(n) sean
exactamente las cifras dadas en la tabla del anexo 1. Es suficiente
con que los coeficientes de ventana c(n) cumplan al menos un
conjunto de relaciones según se facilita en los anexos 2 a 4. Sin
embargo, dependiendo de los detalles de implementación, para
obtener los coeficientes de ventana basándose en los valores dados
en las tablas en los anexos 1 y 3, deben considerarse cambios de
signo adicionales con respecto a los coeficientes de ventana
correspondientes a los índices 128 a 255 y 384 a 511
(multiplicación con factor (-1)) según las ecuaciones (16a) y (16b).
Además, naturalmente, también pueden emplearse diferentes funciones
de ventana que comprendan diferentes coeficientes de ventana
c(n) en realizaciones de la presente invención.
En la etapa S350, las muestras de la disposición
g se multiplican por el coeficiente de ventana interpolado
ci(n) de la función de ventana interpolada para obtener la
muestra de dominio de tiempo w(n) dividida en ventanas.
A continuación, en la etapa S360, se calculan 32
muestras nuevas de salida mediante una suma de muestras a partir de
la disposición w(n) según la última etapa S360, antes de la
etapa final S370 en el diagrama de flujo de la figura 8c.
Tal como se indicó anteriormente, en el diagrama
de flujo de la figura 8c, X([k][1]) (= x(k,1)) corresponde a
un valor 1 de subbanda de audio en el canal de subbanda de audio k.
Además, cada nuevo bucle de un diagrama de flujo tal como se indicó
en la figura 8c produce 32 muestras de dominio de tiempo de valor
real como salida.
La figura 8d muestra un diagrama de flujo de una
realización según la presente invención en la forma de un banco de
filtros de síntesis de valor real muestreado de manera descendente,
que puede emplearse por ejemplo en el caso de un banco de filtros
de SBR de baja potencia. La realización y el diagrama de flujo
mostrados en la figura 8d difiere del diagrama de flujo mostrado en
la figura 8c del banco de filtros de síntesis de valor complejo
muestreado de manera descendente sólo con respecto a la etapa S320,
que se sustituye en el diagrama de flujo mostrado en la figura 8d
por la etapa S322.
En la etapa S322, los 32 valores nuevos de
subbanda de audio de valor real, o muestras de subbanda se
multiplican por la matriz N_{r}, en la que los elementos de la
matriz N_{r} vienen dados por
donde el resultado de esta
operación se almacena en la posición de 0 a 64 de la disposición
v.
La figura 9a muestra una implementación de un
ejemplo comparativo en la forma de un método correspondiente a un
banco de filtros de análisis de valor complejo para 64 subbandas. La
figura 9a muestra una implementación como una implementación de
MATLAB, que proporciona como resultado un vector e y un vector
"estado". La función según se define en esta secuencia de
comandos mostrada en la figura 9a se denomina LDFB80 a la que se
proporciona un vector x que comprende muestras de audio recientes y
el vector "estado" como entrada. El nombre de la función
LDFB80 es una abreviatura para banco de filtros de retardo bajo para
8 bloques que se extienden en el pasado y 0 bloques en el
futuro.
En el lenguaje de programación MATLAB, el
símbolo de porcentaje (%) indica observaciones, que no se llevan a
cabo, sino que solamente sirven para el fin de comentar e ilustrar
el código fuente. En la siguiente descripción, se explicarán
diferentes segmentos del código fuente con respecto a sus
funciones.
En la secuencia de código S400, la memoria
intermedia que se representa por el vector "estado" se
actualiza de modo que el contenido del vector "estado" que
tiene los índices 577 a 640 se sustituyen por los contenidos del
vector x que comprende las muestras de entrada de audio de dominio
de tiempo recientes. En la secuencia de código S410, los
coeficientes de ventana de la función de ventana de análisis tal
como se almacenan en la variable LDFB80_win se transfieren al
vector win_ana.
En la etapa S420, que supone que las muestras
más recientes están alineadas hacia el lado derecho de la memoria
intermedia, se realiza la división en ventanas real. En el bloque
S420, el contenido del vector estado se multiplica elemento a
elemento (.*) con los elementos del vector win_ana que comprende la
función de ventana de análisis. El resultado de esta multiplicación
se almacena entonces en el vector x_win_orig.
En la etapa S430, se reconforma el contenido del
vector x_win_orig para formar una matriz de un tamaño de 128 . 5
elementos denominada x stack. En la etapa S440, el cambio de signo
de la pila x_stack se realiza con respecto a la segunda y cuarta
columna de la matriz x_stack.
En la etapa S450, la pila x_stack se pliega o
retrae sumando los elementos de x_stack con respecto al segundo
índice e invirtiendo simultáneamente el orden de los elementos y
transponiendo el resultado antes de almacenar el resultado de nuevo
a los diversos x_stack.
En el segmento de código S460, la transformación
desde el dominio de tiempo al dominio de frecuencia se lleva a cabo
calculando una transformada rápida de Fourier compleja (FFT) del
contenido multiplicado elemento a elemento de la pila x_stack
multiplicado con la función exponencial compleja a la que se
proporciona el argumento (-i \cdot \pi \cdot n/128), con los
índices y en el intervalo desde 0 hasta -127 y la unidad imaginaria
i.
En el segmento de código S470, se aplica un
factor twiddle posterior definiendo la variable m = (64 +
1)/2 y calculando el bloque que comprende los valores de subbanda de
audio como un vector y según la ecuación
El índice k cubre el intervalo de números
enteros desde 1-64 en la implementación mostrada en
la figura 9a. El vector y se proporciona entonces como el vector o
bloque que comprende los valores de subbanda de audio 180 de la
figura 1. La barra por encima de la segunda ecuación de
factorización (26) así como la función conj() del segmento de
codificación S417 en la figura 9a se refieren al conjugado complejo
del argumento del número complejo respectivo.
En un segmento de código final S480, el vector
de estado se desplaza 64 elementos. El vector de estado en su forma
desplazada puede proporcionarse entonces a la función LDFB80 como
entrada de nuevo en un bucle adicional de la función.
La figura 9b muestra una implementación de
MATLAB según una realización de la presente invención en la forma
de un método correspondiente a un banco de filtros de análisis de
valor complejo para 32 subbandas. Por consiguiente, se hace
referencia a la función definida como LDFB80_32 que indica que la
implementación representa un banco de filtros de retardo bajo para
32 subbandas basándose en un solapamiento adicional de 8 bloques en
el pasado y 0 bloques en el futuro.
La implementación de la figura 9b difiere de la
implementación mostrada en la figura 9a, sólo con respecto a unas
pocas secuencias de código, tal como se comentará en la siguiente
descripción. Las secuencias de código S400, S430, S460, S470 y S480
se sustituyen por secuencias de código S400', S430', S460', S470' y
S480' correspondientes que tienen en cuenta principalmente el hecho
de que el número de subbandas, o el número de valores de subbanda
proporcionados por la función LDFB80_32, se reduce por un factor de
2. Por consiguiente, la etapa S400' se refiere al vector estado que
está actualizándose con respecto a las 32 últimas entradas
correspondientes a los índices 289 a 320 con las 32 muestras de
entrada de audio de dominio de tiempo correspondientes del bloque
220 reciente tal como se muestra en la figura 1.
Sin embargo, la principal diferencia entre las
implementaciones tal como se muestra en las figuras 9a y 9b aparece
en la secuencia de código S410 de la figura 9a, que se sustituye por
una secuencia de código S412 en la implementación mostrada en la
figura 9b. La secuencia de código para S412 de la figura 9b
comprende en primer lugar el copiado de los 640 coeficientes de
ventana que comprenden ventanas almacenadas en el vector LDFB80_win
para el vector local win_ana. A continuación, tiene lugar una
interpolación según la ecuación (15), en la que dos coeficientes de
ventana consecutivos representados por los elementos de vector del
vector win_ana se añaden y se dividen por 2 y a continuación se
almacenan de nuevo en el vector win_ana.
La siguiente secuencia de código S420 es
idéntica a la secuencia de código S420 tal como se muestra en la
figura 9a, que lleva a cabo la multiplicación elemento a elemento
(.*) real de la división en ventanas de los valores, o elementos,
del vector estado con los elementos del vector win_ana que comprende
los coeficientes de ventana interpolados de la función de ventana
interpolada. El resultado de esta operación se almacena en el
vector x_win_orig. Sin embargo, la diferencia entre la secuencia de
código S420 de la figura 9b y la secuencia de código S420
correspondiente de la figura 9a, es que en el caso de la figura 9b,
se llevan a cabo no 640 sino sólo 320 multiplicaciones en el marco
de la división en ventanas.
En la secuencia de código S430' que sustituye a
la secuencia de código S430, la pila x_stack se prepara
reconformando el vector x_win_orig. Sin embargo, como el vector
X_win_orig sólo comprende 320 elementos, en comparación con el
vector correspondiente de la figura 9a que comprende 640 elementos,
la matriz x_stack sólo es una matriz de 64 \cdot 5 elementos.
Las secuencias de código S440 del cambio de
signo y la secuencia de código S450 de plegado de la pila son
idénticas en ambas implementaciones según las figuras 9a y 9b,
aparte del número de elementos reducido (320 en comparación con
640).
En la secuencia de código S460' que sustituye a
la secuencia de código S460 se lleva a cabo una transformada rápida
de Fourier (FFT) compleja impar de datos de ventana, que es bastante
similar a la transformada de la secuencia de código S460 de la
figura 9a. Sin embargo, una vez más, debido al número reducido de
valores de subbanda de audio de salida, al vector temp se le
proporciona el resultado de una transformada rápida de Fourier, de
la multiplicación elemento a elemento de los elementos de la pila
x_stack y de la función exponencial compleja del argumento (-i
\cdot \pi \cdot n/64), en la que el índice n está en el
intervalo entre 0 y 63.
Posteriormente, en la secuencia de código S470'
modificada, se realiza la aplicación de un factor twiddle
posterior definiendo la variable m = (32+1)/2 y generando el vector
de salida y según la ecuación (26), donde el índice k sólo cubre el
intervalo desde 1 hasta 32 y donde el número 128 que aparece en el
argumento de la función exponencial compleja se sustituye por el
número 64.
En la secuencia de código S480' final, el estado
de memoria intermedia se desplaza 32 elementos en el caso de la
implementación mostrada en la figura 9b, en la que en la secuencia
de código S480 correspondiente, la memoria intermedia se desplaza
64 elementos.
La figura 10a muestra una secuencia de comandos
de MATLAB que ilustra una implementación según un ejemplo
comparativo en la forma de un método correspondiente a un banco de
filtros de síntesis de valor complejo para 64 subbandas. La
secuencia de comandos mostrada en la figura 10a define la función
ILDFB80 a la que se proporciona el vector x que representa el
bloque 320 de valores de subbanda de audio de la figura 2a y un
vector estado "estado" como parámetros de entrada. El nombre
ILDFB80 indica que la función definida es un banco de filtros de
retardo bajo inverso correspondiente a 8 bloques de datos de audio
del pasado y 0 bloques del futuro. La función proporciona un vector
e y un vector estado "estado" redefinido o nuevo como
resultado, donde el vector y corresponde al bloque 410 de muestras
de audio de dominio de tiempo de la figura 2a.
En una secuencia de código S500, se realiza una
aplicación de un factor twiddle anterior, donde se define una
variable m = (64 + 1) /2 así como un vector temp. Los elementos
temp(n) del vector temp se definen según la ecuación
donde la barra por encima del
elemento del vector x(n) y la función conj() representan el
complejo conjugado, exp() representa la función exponencial
compleja, i representa la unidad imaginaria y n es un índice en el
intervalo desde 1 hasta
64.
En la secuencia de código S510, el vector temp
se expande en una matriz que comprende en la primera columna los
elementos del vector temp y en la segunda columna, el complejo
conjugado del vector temp invertido con respecto al orden de los
elementos tal como se define mediante el índice del vector. Por lo
tanto, en la secuencia de código S510 se establece una simetría
impar de la matriz temp basándose en el vector temp.
En una secuencia de código S52O se realiza una
transformada rápida de Fourier (FFT) impar basándose en la matriz
temp. En esta secuencia de código, se realiza la parte real de la
multiplicación elemento a elemento del resultado de la transformada
de Fourier inversa de la matriz temp con la función exponencial que
tiene el argumento de (i \cdot \pi/128) y se proporciona a un
vector y_knl, en el que el índice n está en el intervalo de 0 a
127.
En la secuencia de código S530, se forma una
extensión de los datos y un cambio de signo alternante. Para
conseguir esto, se invierte el orden de los elementos del vector_knl
y al mismo tiempo se lleva a cabo un cambio de signo. Entonces, se
define una matriz tmp, que comprende la primera, tercera y quinta
columna del vector_knl, en el que la segunda y la cuarta columna
comprenden el vector_knl con signo cambiado.
En una secuencia de código S540, los
coeficientes de ventana almacenados en el vector LDFB80_win se
copian en primer lugar al vector win_ana. Entonces, se determinan
los coeficientes de ventana de síntesis basándose en los
coeficientes de ventana de análisis almacenados en el vector win_ana
generando una versión invertida en tiempo de la función de ventana
de análisis según
donde N \cdot T es el número
total de coeficientes de ventana y n es el índice de los
coeficientes de
ventana.
En una secuencia de código S550, se aplica la
ventana de síntesis al vector tmp mediante una multiplicación
elemento a elemento del vector con la función de ventana de
síntesis. En una secuencia de código S560, se actualiza la memoria
intermedia estableciendo los elementos del vector estado con los
índices 577 a 640 a 0 y sumando el contenido del vector tmp
dividido en ventanas al estado del vector estado.
En una secuencia de código S570, se extrae el
vector de salida y que comprende muestras de audio de dominio de
tiempo del vector estado extrayendo los elementos del vector estado
extrayendo los elementos del vector estado con los índices 1 a
64.
En una secuencia de código S580, la secuencia de
código final de la función tal como se muestra en la figura 10a, el
estado del vector estado está desplazado 64 elementos de modo que
los elementos con índices desde 65 hasta 640 se copian a los
primeros 576 elementos del vector estado.
La figura 10b muestra una secuencia de comandos
de MATLAB de una implementación según una realización de la
presente invención en forma de un banco de filtros de síntesis de
valor complejo para 32 valores de subbanda. El nombre de la función
tal como se define por la secuencia de comandos mostrada en la
figura 10b ilustra esto como la función definida y se denomina
ILDFB80_32 que indica que la función es un banco de filtros de
retardo bajo inverso para 32 bandas con 8 bloques que se solapan del
pasado y 0 bloques que se solapan del futuro.
Como se ha tratado con respecto a la comparación
de la implementación mostrada en las figuras 9a y 9b, la
implementación según la secuencia de comandos de la figura 10b
también está estrechamente relacionada con la implementación del
banco de filtros de síntesis de 64 subbandas según la figura 10a. En
consecuencia, se proporcionan a la función los mismos vectores y se
proporcionan mediante la función que, sin embargo, comprenden sólo
la mitad del número de elementos en comparación con la
implementación de la figura 10a. La implementación para un banco de
filtros de síntesis de 32 bandas para 32 bandas difiere de la
versión de 64 subbandas ilustrada en la figura 10a, principalmente
con respecto a dos aspectos. Las secuencias de código S500, S510,
S520, S53\beta, S560, S570 y S580 se sustituyen por secuencias de
código en las que el número de elementos que van a tratarse y el
número adicional de parámetros relacionados con elementos se dividen
entre 2. Además, la secuencia de código S540 de generar la función
de ventana de síntesis se sustituye por una secuencia de código
S542, en la que la función de ventana de síntesis se genera como
función de ventana de síntesis interpolada de manera lineal según
la ecuación (15).
En la secuencia de código S500' que sustituye a
la secuencia de código S500, se define la variable m para ser igual
a m = (32+1)/2 y se define el vector temp según la ecuación (27), en
la que el índice n sólo cubre el intervalo de 1 a 32 y en la que el
factor de 1/128 se sustituye por el factor 1/64 en el argumento de
la función exponencial.
Por consiguiente, en la secuencia de código
S510' que sustituye a la secuencia de código S510, el intervalo de
índices sólo cubre los índices de los 32 elementos que comprenden el
vector temp. En otras palabras, el índice sólo cubre los valores
desde 1 hasta 32. Por consiguiente, en la secuencia de código S520'
que sustituye a la secuencia de código S520, el argumento de la
función exponencial se sustituye por (i \cdot \pi \cdot
n/64), en el que el índice n está en el intervalo desde 0 hasta 63.
En el marco de la secuencia de código S530', el intervalo de
índices también se reduce en un factor de 2 en comparación con la
secuencia de código S530.
La secuencia de código S542 que sustituye a la
secuencia de código S540 de la figura 10a también copia la función
de ventana almacenada en el vector LDFB80 win al vector win_ana y
genera una versión invertida en tiempo win_syn según la ecuación
(28). Sin embargo, la secuencia de código S542 de la implementación
mostrada en la figura 10b comprende además una etapa de
interpolación según la ecuación (15), en la que para cada elemento
del vector win_syn redefinido que comprende los coeficientes de
ventana de la función de ventana de síntesis, una interpolación
lineal de dos coeficientes de ventana consecutivos de la función de
ventana de síntesis original.
La secuencia de código S550 de aplicar la
ventana al vector tmp y sustituir los elementos tmp por la versión
dividida en ventanas de los mismos es idéntica en cuanto al código
como comparación directa de las secuencias de código respectivas en
las figuras 10a y 10b. Sin embargo, debido al menor tamaño del
vector tmp en la implementación de la figura 10b, durante una
implementación, sólo se lleva a cabo la mitad del número de
multiplicaciones.
También en el marco de las secuencias de código
S560', S570' y S580' que sustituyen a las secuencias de código
S560, S570 y S580, respectivamente, los índices 640 y 64 se
sustituyen por 320 y 32, respectivamente. Por lo tanto, estas tres
secuencias de código final sólo difieren de las secuencias de código
de la implementación mostrada en la figura 10a con respecto al
tamaño de los vectores estado tmp e y.
Como han ilustrado las realizaciones descritas
hasta ahora, el divisor en ventanas de análisis así como el divisor
en ventanas de síntesis están adaptados para dividir en ventanas las
muestras respectivas en el dominio de tiempo comprendido en las
tramas respectivas multiplicando éstas elemento a elemento con
coeficientes de ventana de una función de ventana.
Antes de describir con más precisión una función
de ventana, que puede emplearse por ejemplo como función de ventana
de síntesis y como función de ventana de análisis en su versión
invertida en tiempo, se comentarán con más detalles las ventajas de
las realizaciones según la presente invención, especialmente en
vista de una implementación en el marco de un sistema o herramienta
de SBR tal como muestran las figuras 5 y 6.
Entre las ventajas, las realizaciones según la
presente invención y los sistemas que comprenden más de una
realización según la presente invención pueden ofrecer una reducción
significativa del retardo según otros bancos de filtros. Sin
embargo, esta propiedad de retardo bajo se tratará en el contexto de
las figuras 13 y 14 con más detalle. Un aspecto importante en este
contexto es observar que la longitud de la función de ventana, en
otras palabras, el número de coeficientes de ventana que va a
aplicarse a una trama o a un bloque de muestras de dominio de
tiempo es independiente del retardo.
Las realizaciones según la presente invención
ofrecen la ventaja adicional de mejorar la calidad de los datos de
audio (reconstruidos). La interpolación empleada en las
realizaciones según la presente invención ofrece una distorsión
reducida de manera significativa en comparación con otros esquemas
de reducción con respecto al número de coeficientes de ventana.
Además, como se comentará en el contexto de las
figuras 17 y 18 con más detalle, en cuanto a la psicoacústica, las
realizaciones según la presente invención utilizan a menudo las
propiedades de enmascaramiento temporal del oído humano mejor que
muchos otros bancos de filtros. Además, como se comentará con más
precisión en el contexto de las figuras 15, 16 y 19, las
realizaciones según la presente invención ofrecen una respuesta de
frecuencia excelente.
Además, en muchos bancos de filtros según una
realización de la presente invención, puede alcanzarse una
reconstrucción perfecta si un banco de filtros de análisis y el
banco de filtros de síntesis están interconectados. En otras
palabras, las realizaciones según la presente invención no sólo
ofrecen una salida indistinguible de manera audible en comparación
con la entrada de un conjunto interconectado de este tipo de un
banco de filtros de análisis y un banco de filtros de síntesis,
sino (aparte de errores de cuantificación, errores de redondeo
computacional y otros efectos causados por la discretización
necesaria) una salida idéntica en comparación con la entrada.
Una integración en el módulo de SBR de bancos de
filtros según la presente invención puede alcanzarse fácilmente.
Aunque normalmente los módulos de SBR operan en el modo de tasa
dual, los bancos de filtros de retardo bajo de valor complejo según
realizaciones de la presente invención pueden proporcionar una
reconstrucción perfecta en el modo de tasa única, mientras que los
bancos de filtros QMF de SBR pueden proporcionar sólo una
reconstrucción casi perfecta. En el modo de tasa dual, se obtiene
la versión de 32 bandas de la respuesta de impulso mediante
interpolación lineal a la que también se hace referencia como
muestreo descendente de dos coeficientes de ventana o coeficientes
de filtro adyacentes de la respuesta de impulso de 64 bandas o
función de ventana como se explica en el contexto de la figura
3.
En caso de una implementación de valor complejo
de un banco de filtros, puede alcanzarse un retardo de análisis (o
síntesis) reducido significativo para bancos de filtros muestreados
de manera crítica, en los que la frecuencia de procesamiento o
muestreo corresponde a la frecuencia límite según la teoría de
Nyquist-Shannon. En caso de una implementación de
valor real de un banco de filtros, puede conseguirse una
implementación eficaz empleando algoritmos optimizados, como se
ilustra por ejemplo en el contexto de la implementación de MATLAB
mostrada en las figuras 9 y 10. Estas implementaciones pueden
emplearse por ejemplo para el modo de baja potencia de la
herramienta de SBR como se describe en el contexto de las figuras 5
y 6.
Como se explica en el contexto de las figuras 5
y 6, es posible alcanzar una reducción adicional con respecto al
retardo en el caso de un sistema de SBR usando un banco de filtros
de retardo bajo de valor complejo según una realización de la
presente invención. Como se comentó anteriormente, en el
decodificador 610 de SBR tal como se muestra en la figura 5, el
banco 620 de filtros de análisis de QMF se sustituye por un banco de
filtros de retardo bajo complejo (CLDFB) según una realización de
la presente invención. Esta sustitución puede realizarse de manera
computable manteniendo el número de bandas (64), la longitud de la
respuesta (640) de impulso y usando una modulación compleja. El
retardo alcanzado mediante esta herramienta se minimiza hasta el
punto que se consigue un retardo global lo suficientemente bajo
para una comunicación bidireccional sin sacrificar un nivel de
calidad alcanzable.
En comparación, por ejemplo, con un sistema que
comprende una MDCT y una MDST para formar un sistema de tipo MDCT
de valor complejo, una realización según la presente invención
proporciona una respuesta de frecuencia mucho mejor. En comparación
con el banco de filtros QMF, por ejemplo, usado en la SBR de
MPEG-4 en la actualidad, un sistema que comprende
uno o más bancos de filtros según realizaciones de la presente
invención proporciona un retardo significativamente más bajo.
Incluso en comparación con un banco de filtros
QMF de retardo bajo, las realizaciones según la presente invención
ofrecen la ventaja de una reconstrucción perfecta combinada con el
retardo más bajo. Las ventajas que surgen de la propiedad de
reconstrucción perfecta a diferencia de la reconstrucción casi
perfecta de los bancos de filtros QMF son las siguientes. Para una
reconstrucción casi perfecta, es necesaria una atenuación de banda
suprimida alta para atenuar la distorsión hasta un nivel lo
suficientemente bajo. Esto limita la posibilidad de alcanzar un
retardo muy bajo en el diseño del filtro. Por el contrario, el
empleo de una realización según la presente invención tiene ahora
la posibilidad de diseñar independientemente el filtro de modo que
no sea necesaria una atenuación de banda suprimida alta para
atenuar la distorsión hasta niveles lo suficientemente bajos. La
atenuación de banda suprimida sólo tiene que ser lo suficientemente
baja para permitir una distorsión reducida suficiente para la
aplicación de procesamiento de señal deseada. Por tanto, puede
alcanzarse un mejor equilibrio hacia un retardo más bajo en el
diseño del
filtro.
filtro.
La figura 11 muestra una comparación de una
función 700 de ventana tal como puede emplearse, por ejemplo, en
una realización según la presente invención junto con la función 710
de ventana de seno. La función 700 de ventana, a la que también se
hace referencia como ventana de CMLDFB de "síntesis" (CMLDFB =
complex modulated low-delay filterbank,
banco de filtros de retardo bajo modulado complejo), comprende 640
coeficientes de ventana basados en los valores dados en la tabla en
el anexo 1. Con respecto a la magnitud de las funciones de ventana,
debe observarse que en lo sucesivo no se consideran factores de
amortiguación o factores de amplificación generales para ajustar
una amplitud de la señal dividida en ventanas. Las funciones de
ventana pueden normalizarse, por ejemplo, con respecto a un valor
correspondiente al centro del retardo, como se comenta en el
contexto de la figura 13, o con respecto a un valor n = N, n = N -
1 o n = N + 1, donde N es la longitud de bloque y n es el índice de
los coeficientes de ventana. En comparación, la función 710 de
ventana de seno está definida sólo por 128 muestras y, por ejemplo,
se emplea en el caso de un módulo de MDCT o MDST.
Sin embargo, dependiendo de los detalles de
implementación, para obtener los coeficientes de ventana basándose
en los valores dados en la tablas en los anexos 1 y 3, deberán
considerarse cambios de signo adicionales con respecto a los
coeficientes de ventana correspondientes a los índices 128 a 255 y
384 a 511 (multiplicación con el factor (-1)) según las ecuaciones
(16a) y (16b).
Antes de tratar las diferencias de las dos
funciones 700, 710 de ventana, debe observarse que ambas funciones
de ventana comprenden sólo coeficientes de ventana de valor real.
Además, en ambos casos, un valor absoluto del coeficiente de
ventana correspondiente a un índice n = 0 es menor que 0,1. En caso
de una ventana 700 de CMLDFB, el valor respectivo es incluso menor
que 0,02.
Considerando las dos funciones 700, 710 de
ventana con respecto a sus conjuntos de definición, son evidentes
varias diferencias significativas. Mientras que la función 710 de
ventana de seno es simétrica, la función 700 de ventana muestra un
comportamiento asimétrico. Para definir esto con más claridad, la
función de ventana de seno es simétrica puesto que existe un valor
no de valor real de modo que con respecto a todos los números n
reales, de modo que la función 710 de ventana se define para
(n_{0}+n) y (n_{0}-n), la relación
\vskip1.000000\baselineskip
se cumple hasta un margen deseable
(\varepsilon \geq 0; el valor absoluto de la diferencia de los
términos en los dos lados de la ecuación (29) es menor que o igual
a \varepsilon), donde w(n) representa el coeficiente de
ventana correspondiente al índice n. En el caso de la ventana de
seno el índice respectivo no está exactamente en el medio de los
dos coeficientes de ventana más superiores. En otras palabras, para
la ventana 710 de seno el índice es no = 63,5. La función de
ventana de seno está definida para los índices n = 0, ...,
127.
Por el contrario, la función 700 de ventana está
definida por el conjunto de índices n = 0, ..., 639. La función 700
de ventana es claramente asimétrica en el sentido de que para todos
los números n_{0} de valor real existe siempre al menos un número
real de modo que (n_{0}+n) y (n_{0}-n)
pertenecen al conjunto de definición de la función de ventana, para
la que la desigualdad
\vskip1.000000\baselineskip
mantiene un margen (casi
deliberadamente) definible (\varepsilon \geq 0; el valor
absoluto de la diferencia de los términos en los dos lados de la
ecuación (29) es mayor que o igual a \varepsilon), donde de nuevo
w(n) es el coeficiente de ventana correspondiente al índice
n.
\newpage
Otras diferencias entre las dos funciones de
ventana, refiriéndose ambas a tamaños de bloque de N = 64 muestras,
es que el valor máximo de la función 700 de ventana es mayor que 1 y
se adquiere para índices en el intervalo de
para la ventana de síntesis. En
caso de la función 700 de ventana mostrada en la figura 11, el valor
máximo adquirido es mayor que 1,04 adquirido en el índice n = 77 de
muestra. Por el contrario, los valores máximos de la ventana 710 de
seno son menores que o iguales a 1, que se adquiere en n = 63 y n =
64.
Sin embargo, también la función 700 de ventana
adquiere un valor de aproximadamente 1 en índices de muestra de
alrededor de n = N. Para ser más precisos, el valor absoluto o el
propio valor del coeficiente de ventana
w(N-1) correspondiente al índice n =
N-1 es menor que 1, mientras que el valor absoluto o
el propio valor del coeficiente de ventana w(N)
correspondiente al índice n = N es mayor que 1. En algunas
realizaciones según la presente invención, estos dos coeficientes
de ventana obedecen a las relaciones
que es un resultado de optimizar la
calidad de audio de los bancos de filtros según realizaciones de la
presente invención. En muchos casos es deseable tener un
coeficiente de ventana w(0) que comprenda un valor absoluto
lo más pequeño posible. En este caso, un determinante de los
coeficientes de
ventana
debería ser lo más próximo a 1 para
alcanzar una calidad de audio, que está optimizada con respecto a
los posibles parámetros. El signo del determinante como se da
mediante la ecuación (33) es, sin embargo, de libre elección. Como
consecuencia de que el coeficiente de ventana w(0) es menor
que o aproximadamente 0, el producto de
w(N-1) \cdot w(N) o sus valores
absolutos deberían estar lo más próximos a +/- 1. En este caso, el
coeficiente de ventana w(2N-1) puede
elegirse entonces casi libremente. La ecuación (33) es un resultado
de emplear la técnica de matrices de retardo cero como se describe
en "New Framework for Modulated Perfect Reconstruction Filter
Banks" de G.D.T. Schuller y M.J.T. Smith, IEEE Transactions on
Signal Processing, vol. 44, n.º 8, agosto de
1996.
Además, como se comentará con más detalle en el
contexto de la figura 13, los coeficientes de ventana
correspondientes a los índices N-1 y N están
comprendidos en el medio del núcleo de modulación y por lo tanto
corresponden a la muestra que tiene un valor de aproximadamente 1,0
y que coincide con el retardo del banco de filtros según se define
mediante la función de ventana o función de filtro prototipo.
La función 700 de ventana de síntesis tal como
se muestra en la figura 11 muestra además un comportamiento
oscilante con coeficientes de ventana crecientes estrictamente
monótonos a partir del coeficiente de ventana de la secuencia de
coeficientes de ventana correspondientes al índice (n = 0) usados
para dividir en ventanas la muestra de audio de dominio de tiempo
más reciente hasta el coeficiente de ventana que comprende el valor
absoluto más alto de todos los coeficientes de ventana de la función
700 de ventana de síntesis. Naturalmente, en el caso de la función
de ventana de análisis invertida en tiempo, el comportamiento
oscilante comprende una disminución estrictamente monótona de los
coeficientes de ventana a partir del coeficiente de ventana que
comprende el valor absoluto más alto de todos los coeficientes de
ventana de una función de ventana de análisis (de inversión en
tiempo) correspondiente a los coeficientes de ventana de la
secuencia de coeficientes de ventana correspondientes a un índice
(n = 639) usados para dividir en ventanas la muestra de audio de
dominio de tiempo más reciente.
Como consecuencia del comportamiento oscilante,
el desarrollo de la función 700 de ventana de síntesis comienza con
un coeficiente de ventana correspondiente al índice n = 0 que tiene
un valor absoluto menor que 0,02 y un valor absoluto del
coeficiente de ventana correspondiente al índice n = 1 inferior a
0,03, que adquiere un valor de aproximadamente 1 a un índice n = N,
que adquiere un valor máximo de más de 1,04 a un índice según la
ecuación (31), que adquiere un valor adicional de aproximadamente 1
a un índice n = 90 y 91, un primer cambio de signo a los valores de
índice de n = 162 y n = 163, que adquieren un valor mínimo de menos
de -0,1 o ­ 0,12755 a un índice de aproximadamente n = 3N
y un cambio de signo adicional a valores de índice n = 284 y n =
285. Sin embargo, la función 700 de ventana de síntesis puede
comprender cambios de signo adicionales a valores de índice n
adicionales. Cuando se comparan los coeficientes de ventana con los
valores dados en las tablas en los anexos 1 y 3, los cambios de
signo adicionales con respecto a los coeficientes de ventana
correspondientes a los índices 128 a 255 y 384 a 511 (multiplicación
con factor (-1)) deberían considerarse según las ecuaciones (16a) y
(16b).
\newpage
El comportamiento oscilante de la función 700 de
ventana de síntesis es similar al de una oscilación muy amortiguada,
lo que se ilustra mediante el valor máximo de aproximadamente 1,04
y el valor mínimo de aproximadamente -0,12. En consecuencia, más
del 50% de todos los coeficientes de ventana comprenden valores
absolutos que son menores que o iguales a 0,1. Como se explica en
el contexto de las realizaciones descritas en las figuras 1 y 2a,
el desarrollo de la función de ventana comprende un primer grupo 420
(o 200) y un segundo grupo 430 (o 210), en los que el primer grupo
420 comprende una primera parte consecutiva de coeficientes de
ventana y el segundo grupo 430 comprende una segunda parte
consecutiva de coeficientes de ventana. Como ya se comentó
anteriormente, la secuencia de coeficientes de ventana de la
ventana comprende sólo el primer grupo 420 de coeficientes de
ventana y el segundo grupo de funciones 430 de ventana, en los que
el primer grupo 420 de coeficientes de ventana comprende
exactamente la primera secuencia consecutiva de coeficientes de
ventana, y en los que el segundo grupo 430 comprende exactamente la
segunda parte consecutiva de coeficientes de ventana. Por lo tanto,
los términos primer grupo 420 y primera parte de coeficientes de
ventana así como los términos segundo grupo 430 y segunda parte de
coeficientes de ventana pueden usarse como sinónimos.
El más del 50% de todos los coeficientes de
ventana que tienen valores absolutos menores que o iguales a 0,1
están comprendidos en el segundo grupo o segunda parte 430 de
coeficientes de ventana como consecuencia del comportamiento
oscilatorio muy amortiguado de la función 700 de ventana. Además,
asimismo más del 5,0% de todos los coeficientes de ventana
comprendidos en el segundo grupo o segunda parte 430 de coeficientes
de ventana comprenden valores absolutos de menos de o igual a
0,01.
La primera parte 420 de coeficientes de ventana
comprende menos de un tercio de todos los coeficientes de ventana
de la secuencia de coeficientes de ventana. Por consiguiente, la
segunda parte 430 de coeficientes de ventana comprende más de dos
tercios de coeficientes de ventana. En caso de procesar un número
total de bloques T en una de las tramas 120, 150, 330, 380 de más
de cuatro bloques, la primera parte normalmente comprende 3/2
\cdot N coeficientes de ventana, donde N es el número de muestras
de dominio de tiempo de un bloque. Por consiguiente, la segunda
parte comprende el resto de los coeficientes de ventana o, para ser
más precisos, (T-3/2)N coeficientes de
ventana. En caso de T = 10 bloques por trama tal como se muestra en
la figura 11, la primera parte comprende 3/2 \cdot N coeficientes
de ventana, mientras que la segunda parte 210 comprende 8,5 \cdot
N coeficientes de ventana. En caso de un tamaño de bloque de N = 64
muestras de audio de dominio de tiempo por bloque, la primera parte
comprende 96 coeficientes de ventana, mientras que la segunda parte
comprende 544 coeficientes de ventana. La función 700 de ventana de
síntesis tal como se muestra en la figura 11 adquiere un valor de
aproximadamente 0,96 en el límite de la primera parte y la segunda
parte a un índice de aproximadamente n = 95 o 96.
A pesar del número de coeficientes de ventana
comprendidos en la primera parte 420 y la segunda parte 430, un
valor de energía o un valor total de energía de coeficientes de
ventana correspondientes difieren significativamente entre sí. El
valor de energía según se define mediante
\vskip1.000000\baselineskip
donde w(n) es un coeficiente
de ventana y el índice n por el que se evalúa la suma en la ecuación
(34) corresponde a los índices de las partes 420, 430 respectivas,
todo el conjunto de coeficientes de ventana o cualquier otro
conjunto de coeficientes de ventana al que correspondan los valores
de energía E respectivos. A pesar de la diferencia significativa de
coeficientes de ventana, el valor de energía de la primera parte 420
es igual a o mayor que 2/3 del valor de energía global de todos los
coeficientes de ventana. Por consiguiente, el valor de energía de
la segunda parte 430 es menor que o igual a 1/3 del valor de energía
global de todos los coeficientes de
ventana.
Para ilustrar esto, el valor de energía de la
primera parte 420 de los coeficientes de ventana de la función 700
de ventana es de aproximadamente 55,85, mientras que el valor de
energía de los coeficientes de ventana de la segunda parte 430 es
de aproximadamente 22,81. El valor de energía global de todos los
coeficientes de ventana de la función 700 de ventana es de
aproximadamente 78,03, de modo que el valor de energía de la
primera parte 420 es de aproximadamente el 71,6% del valor de
energía global, mientras que el valor de energía de la segunda
parte 430 es de aproximadamente el 28,4% del valor de energía global
de todos los coeficientes de ventana.
Naturalmente, la ecuación (34) puede plantearse
en una versión normalizada dividiendo el valor de energía E entre
un factor de normalización E_{0}, que en principio puede ser
cualquier valor de energía. El factor de normalización E_{0}
puede ser, por ejemplo, el valor de energía global de todos los
coeficientes de ventana de la secuencia de coeficientes de ventana
calculado según la ecuación (34).
Basándose en los valores absolutos de los
coeficientes de ventana o basándose en los valores de energía de
los coeficientes de ventana respectivos, puede determinarse también
un punto central o un "centro de masas" de la secuencia de
coeficientes de ventana. El centro de masas o el punto central de la
secuencia de coeficientes de ventana es un número real y
normalmente se sitúa en el intervalo de índices de la primera parte
420 de los coeficientes de ventana. En caso de tramas respectivas
que comprenden más de cuatro bloques de muestras de audio de
dominio de tiempo (T > 4), el centro de masas n_{ca} basado en
los valores absolutos de los coeficientes de ventana o el centro de
masas n_{ce} basado en los valores de energía de los coeficientes
de ventana es menor que 3/2 \cdot N. En otras palabras, en caso de
T = 10 bloques por trama, el centro de masas se sitúa plenamente
dentro de la región de índices de la primera parte 200.
El centro de masas n_{ca} basado en los
valores absolutos de los coeficientes de ventana w(n) se
define según
y el centro de masas n_{ce} en
vista de los valores de energía de los coeficientes de ventana
w(n) se define
según
donde N y T son números enteros
positivos que indican el número de muestras de audio de dominio de
tiempo por bloque y el número de bloques por trama,
respectivamente. Naturalmente, los puntos centrales según las
ecuaciones (35) y (36) también pueden calcularse con respecto a un
conjunto limitado de coeficientes de ventana sustituyendo los
límites de las sumas anteriores en
consecuencia.
Para la función 700 de ventana tal como se
muestra en la figura 1, el centro de masas n_{ca} basado en los
valores absolutos de los coeficientes de ventana w(n) es
igual a un valor de n_{ca} \approx 87,75 y el punto central o
centro de masas n_{ce} con respecto a los valores de energía de
los coeficientes de ventana w(n) es n_{ce} \approx
80,04. Como la primera parte 200 de coeficientes de ventana de la
función 700 de ventana comprende 96 (= 3/2 \cdot N; N = 64)
coeficientes de ventana, ambos puntos centrales se sitúan plenamente
dentro de la primera parte 200 de los coeficientes de ventana, como
se explicó anteriormente.
Los coeficientes de ventana w(n) de la
función 700 de ventana están basados en los valores dados en la
tabla en el anexo 1. Sin embargo, para alcanzar, por ejemplo, la
propiedad de retardo bajo del banco de filtros como se comentó
anteriormente, no es necesario implementar la función de ventana con
tanta precisión como se da mediante los coeficientes de ventana en
la tabla del anexo 1. En muchos casos, es más que suficiente que
los coeficientes de ventana de una función de ventana que comprenden
640 coeficientes de ventana cumplan cualquiera de las relaciones o
ecuaciones dadas en las tablas de los anexos 2 a 4. Los coeficientes
de ventana o coeficientes de filtro dados en la tabla en el anexo 1
representan valores preferidos, que pueden adaptarse según las
ecuaciones (16a) y (16b) en algunas implementaciones. Sin embargo,
como se ha indicado, por ejemplo, mediante las tablas adicionales
dadas en los anexos adicionales, los valores preferidos pueden
variarse desde el segundo, tercer, cuarto, quinto dígito después de
la coma decimal de modo que las funciones de ventana o filtros
resultantes aún tengan las ventajas de las realizaciones según la
presente invención. Sin embargo, dependiendo de los detalles de
implementación, para obtener los coeficientes de ventana basándose
en los valores dados en la tablas en los anexos 1 y 3, deberían
considerarse cambios de signo adicionales con respecto a los
coeficientes de ventana correspondientes a los índices 128 a 255 y
384 a 511 (multiplicación con factor (-1)) según las ecuaciones
(16a) y (16b).
Naturalmente, pueden definirse igualmente
funciones de ventana adicionales que comprenden un número diferente
de coeficientes de ventana y usarse en el marco de las realizaciones
según la presente invención. En este contexto debería observarse
que tanto el número de muestras de audio de dominio de tiempo por
bloque como el número de bloques por trama así como la distribución
de los bloques con respecto a muestras del pasado y muestras del
futuro puede variarse por un amplio intervalo de parámetros.
La figura 12 muestra una comparación de una
ventana 700 de banco de filtros de retardo bajo modulada compleja
(ventana CMLDFB) tal como se muestra en la figura 11 y el filtro 720
prototipo QMF de SBR original como se puede emplear, por ejemplo,
en la herramienta de SBR según las normas MPEG. Tal como se muestra
en la figura 11, la ventana 700 CMLDFB es de nuevo la ventana de
síntesis según una realización de la presente invención.
Aunque la función 700 de ventana según una
realización de la presente invención es claramente asimétrica según
se define en el contexto de la ecuación (30), el filtro 720
prototipo QMF de SBR original es simétrico con respecto a los
índices n = 319 y 320, ya que la función 700 de ventana así como el
filtro 720 prototipo QMF de SBR están definidos cada uno con
respecto a 640 índices. En otras palabras, con respecto a la
ecuación (29) el "valor de índice" no que representa el índice
del centro de simetría viene dado por no = 319,5 en caso del filtro
720 prototipo QMF de SBR.
Además, debido a la simetría del filtro 720
prototipo QMF de SBR, también el punto central n_{ca} y n_{ce}
según las ecuaciones (35) y (36), respectivamente, son idénticos al
centro de simetría no. El valor de energía del filtro 720 prototipo
QMF de SBR es de 64,00 ya que el filtro prototipo es un filtro
ortogonal. Por el contrario, la función 700 de ventana claramente
asimétrica comprende un valor de energía de 78,0327 como se comentó
anteriormente.
En las siguientes secciones de la descripción,
se considerarán sistemas de SBR como se explica en el contexto de
las figuras 5 y 6, en las que el decodificador 610 de SBR comprende
realizaciones según la presente invención en forma de un banco de
filtros de análisis como banco 620 de filtros y una realización
según la presente invención en forma de banco de filtros de
síntesis para el banco 640 de filtros de síntesis. Como se comentará
con más detalle, el retardo global de un banco de filtros de
análisis según la presente invención que emplea la función 700 de
ventana tal como se muestra en las figuras 11 y 12 comprende un
retardo global de 127 muestras, mientras que la herramienta de SBR
basada en filtros prototipo QMF de SBR original da como resultado un
retardo global de 640 muestras.
La sustitución de los bancos de filtros QMF en
el módulo de SBR, por ejemplo en el decodificador 610 de SBR, por
un banco de filtros de retardo bajo de valor complejo (CLDFB) da
como resultado una reducción del retardo de 42 ms a 31,3 ms sin
introducir una degradación de la calidad de audio o complejidad
computacional adicional. Con el nuevo banco de filtros se soportan
tanto el modo de SBR convencional (modo de alta calidad) como el
modo de baja potencia que emplea sólo bancos de filtros de valor
real, como ha mostrado la descripción de las realizaciones según la
presente invención con respecto a las figuras 7 a 10.
Especialmente en el campo de la telecomunicación
y comunicación bidireccional, un retardo bajo es de gran
importancia. Aunque el AAC de retardo bajo mejorado ya puede
alcanzar un retardo lo suficientemente bajo para aplicaciones de
comunicación de 42 ms, su retardo algorítmico sigue siendo mayor que
el códec de núcleo AAC de retardo bajo, que puede alcanzar retardos
de hasta 20 ms y el de otros códecs de telecomunicación. En el
decodificador 610 de SBR, las fases de análisis y síntesis de QMF
aún provocan un retardo de reconstrucción de 12 ms. Un enfoque
prometedor para reducir ese retardo es utilizar una técnica de banco
de filtros de retardo bajo según una realización de la presente
invención y sustituir los bancos de filtros QMF actuales por una
versión de retardo bajo respectiva según las realizaciones de la
presente invención. En otras palabras, se alcanza una reducción de
retardo adicional simplemente sustituyendo los bancos de filtros
regulares usados en el módulo 610 de SBR por un banco de filtros de
retardo bajo complejo según las realizaciones de la presente
invención.
Para su uso en el módulo 610 de SBR, los nuevos
bancos de filtros según realizaciones de la presente invención, a
los que también se hace referencia como CLDFB, están diseñados para
ser lo más similar posible a los bancos de filtros QMF usados
originalmente. Esto incluye, por ejemplo, el uso de 64 subbandas o
bandas, una misma longitud de las respuestas de impulso y una
compatibilidad con modos de tasa dual como se emplea en sistemas de
SBR.
La figura 13 ilustra la comparación de la forma
700 de ventana CLDFB según una realización de la presente invención
y el filtro 720 prototipo QMF de SBR original. Además, ilustra el
retardo de bancos de filtros modulados, que puede determinarse
analizando el retardo de solapamiento introducido por la función de
ventana o filtro prototipo además del retardo de entramado del
núcleo de modulación que tiene una longitud de N muestras en caso
de un sistema basado en DCT-IV. La situación
mostrada en la figura 13 se refiere de nuevo al caso de un banco de
filtros de síntesis. La función 700 de ventana y la función 720 de
filtro prototipo también representan respuestas de impulso de los
filtros prototipo de síntesis de los dos bancos de filtros
implicados.
Con respecto al análisis del retardo tanto para
el banco de filtros QMF de SBR como para el CLDFB propuesto según
una realización de la presente invención, en el análisis y la
síntesis sólo el solapamiento hacia el lado derecho y el lado
izquierdo del núcleo de modulación, respectivamente, añade un
retardo.
Para ambos bancos de filtros, el núcleo de
modulación se basa en una DCT-IV que introduce un
retardo de 64 muestras, que está marcado en la figura 13 como el
retardo 750. En caso del filtro 720 prototipo QMF de SBR debido a
la simetría el retardo 750 del núcleo de modulación está dispuesto
simétricamente con respecto al centro de masas o punto central de
la función 720 de filtro prototipo respectiva como se indica en la
figura 13. El motivo para este comportamiento es que la memoria
intermedia del banco de filtros QMF de SBR necesita rellenarse
hasta un punto en el que la función 720 de filtro prototipo tiene la
contribución más significativa en cuanto a que los valores de
energía respectivos de los valores prototipo de filtro se
considerarán en el procesamiento. Debido a la forma de la función
720 de filtro prototipo, esto requiere rellenar la memoria
intermedia al menos hasta el punto central o centro de masas de la
función de filtro prototipo respectiva.
Para ilustrar esto adicionalmente, comenzando
desde una memoria intermedia inicializada del banco de filtros QMF
de SBR correspondiente, es necesario rellenar la memoria intermedia
hasta un punto en el que un procesamiento de datos dará como
resultado un procesamiento de datos significativos, lo que requiere
que la función de filtro prototipo o función de ventana respectiva
tenga una contribución significativa. En el caso de la función de
filtro prototipo QMF de SBR, la forma simétrica del filtro 720
prototipo produce un retardo, que es del orden del centro de masas
o punto central de la función de filtro prototipo.
Sin embargo, como el retardo introducido por el
núcleo de modulación del sistema basado en DCT-IV de
N = 64 para muestras siempre está presente y el sistema también
comprende un retardo de un bloque, puede observarse que el
prototipo de síntesis para el QMF de SBR introduce un retardo de
solapamiento de 288 muestras.
Como se indicó anteriormente, en el caso de los
bancos de filtros de síntesis a los que se refiere la figura 13,
este solapamiento 760 izquierdo adicional provoca el retardo,
mientras que el solapamiento 770 derecho se refiere a muestras del
pasado y por lo tanto no introduce un retardo adicional en el caso
de un banco de filtros de síntesis.
Por el contrario, comenzando con una memoria
intermedia inicializada del CLDFB según una realización de la
presente invención, el banco de filtros de síntesis así como el
banco de filtros de análisis puede proporcionar datos
"significativos" antes en comparación con el banco de filtros
QMF de SBR debido a la forma de la función de ventana. En otras
palabras, debido a la forma de la función 700 de ventana de análisis
o de síntesis, las muestras procesadas por funciones de ventana
indicativas de la contribución significativa son posibles antes. En
consecuencia, la función de ventana de síntesis o prototipo de
síntesis del CLDFB introduce sólo un retardo de solapamiento de 32
muestras teniendo en cuenta el retardo ya introducido por el núcleo
750 de modulación. La primera parte 420 o primer grupo 420 de
coeficientes de ventana de la función 700 de ventana, según una
realización de la presente invención, comprende en una realización
preferida según la presente invención los 96 coeficientes de
ventana correspondientes al retardo provocado por el solapamiento
760 de lado izquierdo junto con el retardo 750 del núcleo de
modulación.
El mismo retardo se introduce por el banco de
filtros de análisis o la función prototipo de análisis. El motivo
es que el banco de filtros de análisis se basa en la versión de
inversión de tiempo de la función de ventana de síntesis o función
prototipo. Por tanto, el retardo de solapamiento se introduce en el
lado derecho que comprende el mismo tamaño de solapamiento que para
el banco de filtros de síntesis. Por lo tanto, en caso de un banco
de filtros prototipo QMF original, también se introduce un retardo
de 288 muestras mientras que para un banco de filtros de análisis
según una realización de la presente invención sólo se introducen 32
muestras como retardo.
La tabla mostrada en la figura 14a proporciona
una perspectiva general del retardo con diferentes fases de
modificación suponiendo una longitud de trama de 480 muestras y una
tasa de muestreo de 48 kHz. En una configuración convencional que
comprende un códec AAC-LD junto con una herramienta
de SBR convencional, los bancos de filtros de MDCT e IMDCT en el
modo de tasa dual provocan un retardo de 40 ms. Además, la propia
herramienta de QMF provoca un retardo de 12 ms. Además, debido a un
solapamiento de SBR, se genera un retardo adicional de 8 ms de modo
que el retardo global de este códec está en el intervalo de 60
ms.
En comparación, un códec AAC-ELD
que comprende versiones de retardo bajo de la MDCT y la IMDCT genera
en el enfoque de tasa dual un retardo de 30 ms. En comparación con
el banco de filtros QMF original de una herramienta de SBR, el
empleo de un banco de filtros de retardo bajo de valor complejo
según una realización de la presente invención dará como resultado
un retardo de sólo 1 ms en comparación con los 12 ms de la
herramienta de QMF original. Evitando el solapamiento de SBR puede
evitarse completamente el solapamiento adicional de 8 ms de una
combinación sencilla de un AAC-LD y la herramienta
de SBR. Por lo tanto, el códec AAC de retardo bajo mejorado es
capaz de un retardo algorítmico global de 31 ms en vez de de 60 ms
para la combinación sencilla comentada anteriormente. Por lo tanto,
puede observarse que la combinación de los procedimientos de
reducción de retardo descritos da como resultado, de hecho, un
ahorro de retardo total de 29 ms.
La tabla en la figura 14b proporciona una
perspectiva general adicional del retardo de códec global provocado
por las versiones de banco de filtros original y propuesta en un
sistema tal como se muestra en las figuras 5 y 6. Los datos y
valores dados en la figura 14b se basan en una tasa de muestreo de
48 kHz y un tamaño de trama de codificador núcleo de 480 muestras.
Debido al enfoque de tasa dual de un sistema de SBR tal como se
muestra y trata en las figuras 5 y 6, el codificador de núcleo
funciona de manera eficaz a una tasa de muestreo de 24 kHz. Puesto
que el retardo de entramado de 64 muestras para el núcleo de
modulación ya está introducido por el codificador de núcleo, puede
restarse de los valores de retardo independientes de los dos bancos
de filtros tal como se describe en el contexto de la figura 13.
La tabla en la figura 14b destaca que es posible
reducir el retardo global del códec AAC de retardo bajo mejorado
que comprende las versiones de retardo bajo de la MDCT y de la IMDCT
(MDCT de LD e IMDCT de LD). Aunque un retardo algorítmico global de
42 ms puede conseguirse sólo empleando las versiones de retardo bajo
de la MDCT y la IMDCT así como los bancos de filtros QMF
originales, usando bancos de filtros de retardo bajo de valor
complejo según realizaciones de la presente invención en lugar de
los bancos de filtros QMF convencionales, puede reducirse
significativamente el retardo algorítmico global hasta sólo 31,3
ms.
Para evaluar la calidad de los bancos de filtros
según realizaciones de la presente invención y sistemas que
comprenden uno o más bancos de filtros, se han llevado a cabo
pruebas de escucha, a partir de las que puede concluirse que los
bancos de filtros según realizaciones de la presente invención
conservan la calidad de audio de AAC-ELD al mismo
nivel y no introducen ninguna degradación, ni para el modo de SBR
complejo ni para el modo de SBR de baja potencia de valor real. Por
tanto, los bancos de filtros de retardo optimizado según
realizaciones de la presente invención no introducen ninguna carga
en la calidad del audio aunque pueden reducir el retardo en más de
10 ms. Para los elementos transitorios puede observarse incluso que
pueden conseguirse algunas ligeras mejoras, aunque no
estadísticamente significativas. Las mejoras anteriormente
mencionadas se han observado durante pruebas de escucha de
castañuelas y carillón.
Con el fin de verificar adicionalmente que el
muestreo descendente en el caso de un banco de filtros de 32 bandas
según una realización de la presente invención funciona igualmente
bien para los bancos de filtros según la presente invención en
comparación con los bancos de filtros QMF, se realizó la siguiente
evaluación. En primer lugar, se analizó un barrido de seno
logarítmico con un banco de filtros de 32 bandas muestreado de
manera descendente, en el que se añadieron las 32 bandas superiores,
inicializadas con ceros. A continuación, se sintetizó el resultado
mediante un banco de filtros de 64 bandas, se volvió a muestrear de
manera descendente y se comparó con la señal original. El uso de un
filtro prototipo QMF de SBR convencional da como resultado una
relación señal a ruido (SNR) de 59,5 dB. Un banco de filtros según
la presente invención, sin embargo, alcanza un valor de SNR de 78,5
dB, que ilustra que los bancos de filtros según realizaciones de la
presente invención también rinden en la versión muestreada de
manera descendente al menos tan bien como los bancos de filtros QMF
originales.
Con el fin de mostrar que este enfoque de banco
de filtros no simétrico, de retardo optimizado tal como se emplea
en realizaciones según la presente invención proporciona un valor
adicional en comparación con un banco de filtros clásico con un
prototipo simétrico, a continuación se compararán prototipos
asimétricos con los prototipos simétricos que tienen el mismo
retardo.
La figura 15a muestra una comparación de una
respuesta de frecuencia en una ilustración de campo lejano de un
banco de filtros según la presente invención que emplea una ventana
de retardo bajo (gráfica 800) en comparación con la respuesta de
frecuencia de un banco de filtros que emplea una ventana de seno que
tiene una longitud de 128 coeficientes de filtro (gráfica 810). La
figura 15b muestra una ampliación de la respuesta de frecuencia en
el campo cercano de los mismos bancos de filtros que emplean las
mismas funciones de ventana tal como se comentó anteriormente.
Una comparación directa de las dos gráficas 800,
810 muestra que la respuesta de frecuencia del banco de filtros que
emplea un banco de filtros de retardo bajo según una realización de
la presente invención es significativamente mejor que la respuesta
de frecuencia correspondiente de un banco de filtros que emplea una
ventana de seno de 128 coeficientes de filtro que tienen el mismo
retardo.
Además, la figura 16a muestra una comparación de
diferentes funciones de ventana con un retardo global de 127
muestras. El banco de filtros (CLDFB) con 64 bandas comprende un
retardo global de 127 muestras que incluye el retardo de entramado
y el retardo de solapamiento. Un banco de filtros modulado con un
prototipo simétrico y el mismo retardo tendría, por lo tanto, un
prototipo de una longitud de 128, como ya se ilustró en el contexto
de las figuras 15a y 15b. Para estos bancos de filtros con un
solapamiento del 50%, tal como, por ejemplo, la MDCT, las ventanas
de seno o ventanas derivadas de Kaiser-Bessel
proporcionan generalmente una buena elección para prototipos. Por
lo tanto, en la figura 16a se compara una vista global de una
respuesta de frecuencia de un banco de filtros que emplea una
ventana de retardo bajo como prototipo según una realización de la
presente invención con las respuestas de frecuencia de prototipos
simétricos alternativos con el mismo retardo. La figura 16a
muestra, aparte de la respuesta de frecuencia del banco de filtros
según la presente invención (gráfica 800) y la respuesta de
frecuencia de un banco de filtros que emplea una ventana de seno
(gráfica 810), como ya se ha mostrado en las figuras 15a y 15b,
además dos ventanas KBD basadas en los parámetros \alpha = 4
(gráfica 820) y \alpha = 6 (gráfica 830). Tanto la figura 16a como
el primer plano de la figura 16a mostrado en la figura 16b,
muestran claramente que puede conseguirse una respuesta de
frecuencia mucho mejor con un banco de filtros según una
realización de la presente invención que tiene una función de
ventana no simétrica o una función de filtro prototipo con el mismo
retardo.
Para ilustrar esta ventaja de una manera más
general, en la figura 17 se comparan dos prototipos de banco de
filtros con valores de retardo diferentes del banco de filtros
previamente descrito. Aunque el banco de filtros según la presente
invención, que se consideró en las figuras 15 y 16, tiene un retardo
global de 127 muestras, que corresponde a un solapamiento de 8
bloques en el pasado y 0 bloques en el futuro (CLDFB 80), la figura
17 muestra una comparación de las respuestas de frecuencia de dos
prototipos de banco de filtros diferentes con un mismo retardo de
383 muestras. Para ser más precisos, la figura 17 muestra una
respuesta de frecuencia de un banco de filtros simétrico no
prototipo (gráfica 840) según una realización de la presente
invención, que está basada en un solapamiento de 6 bloques de
muestras de dominio de tiempo en el pasado y 2 bloques de muestras
de dominio de tiempo en el futuro (CLDFB 62). Además, la figura 17
también muestra la respuesta de frecuencia (gráfica 850) de una
función de filtro prototipo simétrica correspondiente que también
tiene un retardo de 383 muestras. Puede observarse que con el mismo
valor de retardo una función de ventana o prototipo no simétrica
consigue una mejor respuesta de frecuencia que un banco de filtros
con un filtro prototipo o función de ventana simétrica. Esto
demuestra la posibilidad de un mejor equilibrio entre retardo y
calidad, tal como se indicó anteriormente.
La figura 18 ilustra el efecto de
enmascaramiento temporal del oído humano. Cuando aparece un sonido o
un tono en un momento en el tiempo indicado por una línea 860 en la
figura 18, se produce un efecto de enmascaramiento con respecto a
la frecuencia del tono o el sonido y frecuencias vecinas
aproximadamente 20 ms antes de que comience el sonido real. Este
efecto se denomina enmascaramiento previo y es un aspecto de las
propiedades psicoacústicas del oído humano.
En la situación ilustrada en la figura 18, el
sonido permanece audible durante aproximadamente 200 ms hasta un
momento en el tiempo ilustrado por una línea 870. Durante este
tiempo, está activo un enmascarador del oído humano, que también se
denomina enmascaramiento simultáneo. Después de detenerse el sonido
(ilustrado por la línea 870), el enmascaramiento de la frecuencia
en la frecuencia vecina del tono disminuye lentamente durante un
periodo de tiempo de aproximadamente 150 ms tal como se ilustra en
la figura 18. A este efecto psicoacústico también se hace
referencia como enmascaramiento posterior.
La figura 19 ilustra una comparación de un
comportamiento de eco previo de una señal codificada
HE-AAC convencional y una señal codificada HEAAC
que se basa en un banco de filtros que emplea un banco de filtros de
retardo bajo (CMLDFB) según una realización de la presente
invención. La figura 19a ilustra la señal de tiempo original de las
castañuelas, que se ha procesado con un sistema que comprende un
códec HE-AAC (HE-AAC = códec de
audio avanzado de alta eficacia). La salida del sistema basado en
el HE-AAC convencional se ilustra en la figura 19b.
Una comparación directa de las dos señales, la señal de tiempo
original y la señal de salida del códec HE-AAC
muestra que antes de comenzar el sonido de las castañuelas en la
zona ilustrada por una flecha 880 la señal de salida del códec
HE-AAC comprende efectos de eco previo
perceptibles.
La figura 19c ilustra una señal de salida de un
sistema que comprende un HE-AAC basado en bancos de
filtros que comprenden ventanas de CMLDFB según una realización de
la presente invención. Las mismas señales de tiempo originales
indicadas en la figura 19a y procesadas usando bancos de filtros
según una realización de la presente invención muestran una
aparición significativamente reducida de efectos de eco previo justo
antes de comenzar una señal de castañuelas tal como se indica por
una flecha 890 en la figura 19c. Debido al efecto de enmascaramiento
previo como se describe en el contexto de la figura 18, el efecto
de eco previo indicado por la flecha 890 de la figura 19c se
enmascarará mucho mejor que los efectos de eco previo indicados por
la flecha 880 en caso del códec HE-AAC
convencional. Por lo tanto, el comportamiento de eco previo de
bancos de filtros según la presente invención, que también es un
resultado del retardo significativamente reducido en comparación con
los bancos de filtros convencionales, hace que la salida se ajuste
mucho mejor a las propiedades de enmascaramiento temporal y la
psicoacústica del oído humano. En consecuencia, como ya se indicó
cuando se describieron las pruebas de escucha, el empleo de bancos
de filtros según una realización de la presente invención puede
llevar incluso a una mejora con respecto a la calidad producida por
el retardo reducido.
Las realizaciones según la presente invención no
aumentan la complejidad computacional en comparación con los bancos
de filtros convencionales. Los bancos de filtros de retardo bajo
usan la misma longitud de filtro y el mismo modo de modulación que,
por ejemplo, los bancos de filtros QMF en el caso de sistemas de SBR
de modo que la complejidad computacional no aumenta. En cuanto a
requisitos de memoria debidos a la naturaleza asimétrica de los
filtros prototipo, el requisito de memoria ROM (memoria de sólo
lectura) para el banco de filtros de síntesis aumenta
aproximadamente 320 palabras en el caso de un banco de filtros
basado en N = 64 muestras por bloque y T = 10 bloques por trama.
Además, en el caso de un sistema relacionado con SBR, el requisito
de memoria aumenta adicionalmente otras 320 palabras si el filtro de
análisis se almacena por separado.
Sin embargo, como los requisitos de ROM actuales
para un núcleo de AAC-ELD son de aproximadamente 2,5
k palabras (kilo palabras) y para la implementación de SBR otras
2,5 k palabras, el requisito de ROM sólo se aumenta de forma
moderada en aproximadamente el 10%. Como un posible equilibrio entre
memoria y complejidad, si es primordial un consumo bajo de memoria,
puede usarse una interpolación lineal para generar el filtro de
análisis a partir del filtro de síntesis como se explica en el
contexto de la figura 3 y la ecuación (15). Esta operación de
interpolación aumenta el número de instrucciones necesarias en sólo
aproximadamente el 3,6%. Por lo tanto, una sustitución de los
bancos de filtros convencionales de QMF en el marco de módulos de
SBR por bancos de filtros de retardo bajo según realizaciones de la
presente invención, el retardo puede reducirse en algunas
realizaciones en más de 10 ms sin una degradación de calidad de
audio o un aumento perceptible de la complejidad.
Las realizaciones según la presente invención se
refieren, por lo tanto, a una ventana de análisis o síntesis o a un
aparato o un método para dividir en ventanas. Además, se describe un
banco de filtros de análisis o síntesis o un método para analizar o
sintetizar una señal usando una ventana. Naturalmente, también se da
a conocer el programa informático que implementa uno de los métodos
anteriores.
La implementación según realizaciones de la
presente invención puede llevarse a cabo como implementaciones de
hardware, implementaciones de software o una combinación de ambos.
Los datos, vectores y variables generados, recibidos o almacenados
de otro modo que van a procesarse pueden almacenarse en diferentes
tipos de memorias tales como memorias de acceso aleatorio, memorias
intermedias, memorias de sólo lectura, memorias no volátiles (por
ejemplo EEPROM, memorias tipo flash) u otras memorias tales como
memorias magnéticas u ópticas. Una posición de almacenamiento puede
ser, por ejemplo, una o más unidades de memoria requeridas para
almacenar o guardar las cantidades de datos respectivas, tales como
variables, parámetros, vectores, matrices, coeficientes de ventana
u otros fragmentos de información y datos.
Las implementaciones de software pueden hacerse
funcionar en diferentes ordenadores, sistemas similares a un
ordenador, procesadores, ASIC (circuitos integrados para
aplicaciones específicas) u otros circuitos integrados (IC).
Dependiendo de ciertos requisitos de
implementación de realizaciones de los métodos de la invención, las
realizaciones de los métodos de la invención pueden implementarse
en hardware, software o en una combinación de ambos. La
implementación puede realizarse usando un medio de almacenamiento
digital, en particular un disco CD, un DVD u otro disco que tenga
una señal de control legible electrónicamente almacenada en el mismo
que funcione conjuntamente con un sistema de ordenador programable,
procesador o circuito integrado de modo que se realice una
realización del método de la invención. En general, una realización
de la presente invención es, por lo tanto, un producto de programa
informático con un código de programa almacenado en un soporte
legible por máquina, haciéndose funcionar el código de programa
para llevar a cabo una realización de los métodos de la invención
cuando el producto de programa informático se ejecuta en un
ordenador, procesador o circuito integrado. En otras palabras, las
realizaciones de los métodos de la invención son, por lo tanto, un
programa informático que tiene un código de programa para llevar a
cabo al menos una realización de los métodos de la invención cuando
el programa informático se ejecuta en un ordenador, procesador o
circuito integrado.
Un aparato para generar valores de subbanda de
audio en canales de subbanda de audio según una realización de la
presente invención comprende un divisor (110) en ventanas de
análisis para dividir en ventanas una trama (120) de muestras de
entrada de audio de dominio de tiempo que están en una secuencia de
tiempo que se extiende desde una muestra temprana hasta una muestra
posterior usando una función (190) de ventana de análisis que
comprende una secuencia de coeficientes de ventana para obtener
muestras divididas en ventanas, comprendiendo la función (190) de
ventana de análisis un primer grupo (200) de coeficientes de ventana
que comprende una primera parte de la secuencia de coeficientes de
ventana y un segundo grupo (210) de coeficientes de ventana que
comprende una segunda parte de la secuencia de coeficientes de
ventana, comprendiendo la primera parte menos coeficientes de
ventana que la segunda parte, en el que un valor de energía de los
coeficientes de ventana en la primera parte es mayor que un valor
de energía de los coeficientes de ventana de la segunda parte, en
el que se usa el primer grupo de coeficientes de ventana para
dividir en ventanas muestras de dominio de tiempo posteriores y se
usa el segundo grupo de coeficientes de ventana para dividir en
ventanas muestras de dominio de tiempo más tempranas, y una
calculadora (170) para calcular los valores de subbanda de audio
usando las muestras divididas en ventanas.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la función (190) de ventana de análisis es
asimétrica con respecto a la secuencia de coeficientes de
ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que un valor de energía de los coeficientes de
ventana de la primera parte es igual a o mayor que 2/3 de un valor
de energía de todos los coeficientes de ventana de la secuencia de
coeficientes de ventana y un valor de energía de los coeficientes
de ventana de la segunda parte de coeficientes de ventana es menor
que o igual a 1/3 de un valor de energía de todos los coeficientes
de ventana de la secuencia de coeficientes de ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la primera parte de coeficientes de ventana
comprende 1/3 o menos de 1/3 de un número total de coeficientes de
ventana de la secuencia de coeficientes de ventana y la segunda
parte comprende 2/3 o más de 2/3 del número total de coeficientes
de ventana de la secuencia de coeficientes de ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que un punto central de los coeficientes de
ventana de la función (190) de ventana de análisis corresponde a un
valor real en un intervalo de índices de la primera parte de
coeficientes de ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la función (190) de ventana de análisis
comprende un decrecimiento estrictamente monótono a partir del
coeficiente de ventana que comprende el valor absoluto más alto de
todos los coeficientes de ventana de la función (190) de ventana de
análisis hasta un coeficiente de ventana de la secuencia de
coeficientes de ventana usados para dividir en ventanas la muestra
de audio de dominio de tiempo más reciente.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la función (190) de ventana de análisis
comprende un comportamiento oscilante.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que el coeficiente de ventana correspondiente a un
índice n = (T-1) - N comprende un valor absoluto en
el intervalo de 0,9 a 1,1, en el que un índice de la secuencia de
coeficientes de ventana es un número entero en el intervalo de 0 a
N \cdot T- 1, en el que el coeficiente de ventana usado para
dividir en ventanas la muestra de entrada de audio de dominio de
tiempo más reciente de la trama 120 es el coeficiente de ventana
correspondiente al índice N - T - 1, en el que el divisor (110) en
ventanas de análisis está adaptado de modo que la trama (120) de
muestras de entrada de audio de dominio de tiempo comprende una
secuencia de T bloques (130) de muestras de entrada de audio de
dominio de tiempo que se extienden desde las muestras de entrada de
audio de dominio de tiempo más tempranas hasta las más recientes de
la trama (120), comprendiendo cada bloque N muestras de entrada de
audio de dominio de tiempo, y en el que T y N son números enteros
positivos y T es mayor que 9.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que el coeficiente de ventana correspondiente al
índice de los coeficientes de ventana n - N \cdot T - 1 comprende
un valor absoluto de menos de 0,02.
\newpage
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la ventana (110) de análisis está adaptada de
modo que dividir en ventanas comprende multiplicar las muestras de
entrada de audio de dominio de tiempo x(n) de la trama (120)
para obtener las muestras divididas en ventanas z(n) de la
trama dividida en ventanas basándose en la ecuación
donde n es un número entero que
indica un índice de la secuencia de coeficientes de ventana en el
intervalo de 0 a
T \cdot N-1, donde c(n) es el coeficiente de ventana de la función de ventana de análisis correspondiente al índice n, donde x(N T-1) es la muestra de entrada de audio de dominio de tiempo más reciente de una trama (120) de muestras de entrada de audio de dominio de tiempo, donde el divisor (110) en ventanas de análisis está adaptado de modo que la trama (120) de muestras de entrada de audio de dominio de tiempo comprende una secuencia de T bloques (130) de muestras de entrada de audio de dominio de tiempo que se extienden desde las muestras de entrada de audio de dominio de tiempo más tempranas hasta las más recientes de la trama (120), comprendiendo cada bloque N muestras de entrada de audio de dominio de tiempo, y en el que T y N son números enteros positivos y T es mayor que 4.
T \cdot N-1, donde c(n) es el coeficiente de ventana de la función de ventana de análisis correspondiente al índice n, donde x(N T-1) es la muestra de entrada de audio de dominio de tiempo más reciente de una trama (120) de muestras de entrada de audio de dominio de tiempo, donde el divisor (110) en ventanas de análisis está adaptado de modo que la trama (120) de muestras de entrada de audio de dominio de tiempo comprende una secuencia de T bloques (130) de muestras de entrada de audio de dominio de tiempo que se extienden desde las muestras de entrada de audio de dominio de tiempo más tempranas hasta las más recientes de la trama (120), comprendiendo cada bloque N muestras de entrada de audio de dominio de tiempo, y en el que T y N son números enteros positivos y T es mayor que 4.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que los coeficientes de ventana
c(n) obedecen a las relaciones dadas en la tabla en el anexo 4.
c(n) obedecen a las relaciones dadas en la tabla en el anexo 4.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el aparato (100) está adaptado para usar una
función (190) de ventana de análisis que es una versión invertida
en tiempo o invertida en índice de una función (370) de ventana de
síntesis que va a usarse para los valores de subbanda de audio.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la primera parte de la función de ventana de
análisis comprende un coeficiente de ventana que tiene un valor
máximo absoluto que es mayor que 1.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que todos los coeficientes de ventana de la
secuencia de coeficientes de ventana son coeficientes de ventana de
valor real.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la trama (120) de muestras de entrada de audio
de dominio de tiempo comprende una secuencia de T bloques (130) de
muestras de entrada de audio de dominio de tiempo que se extienden
desde las muestras de entrada de audio de dominio de tiempo más
tempranas hasta las más recientes de la trama (120), comprendiendo
cada bloque N muestras de entrada de audio de dominio de tiempo, en
el que T y N son números enteros positivos y T es mayor que 4.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la división en ventanas comprende una
multiplicación elemento a elemento de las muestras de entrada de
audio de dominio de tiempo de la trama (120) con los coeficientes
de ventana de la secuencia de coeficientes de ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que cada muestra de entrada de audio de dominio de
tiempo se multiplica elemento a elemento con un coeficiente de
ventana de la función de ventana de análisis según una secuencia de
muestras de entrada de audio de dominio de tiempo y la secuencia de
coeficientes de ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que para cada muestra de entrada de audio de
dominio de tiempo de la trama (120) de muestras de entrada de audio
de dominio de tiempo se genera exactamente una muestra dividida en
ventanas.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que el coeficiente de ventana correspondiente a un
índice de los coeficientes de ventana n = (T-3) . N
comprende un valor de menos de -0,1, en el que el índice de la
secuencia de coeficientes de ventana es un número entero en el
intervalo de 0 a N T-1, y en el que el coeficiente
de ventana usado para dividir en ventanas la muestra de entrada de
audio de dominio de tiempo más reciente es el coeficiente de ventana
correspondiente al índice N \cdot T-1.
\newpage
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que la primera parte de coeficientes de ventana
comprende 3/2 \cdot N coeficientes de ventana y la segunda parte
de coeficientes de ventana comprende (T-3/2)
\cdot N coeficientes de ventana de la secuencia de coeficientes de
ventana.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que los coeficientes de ventana
c(n) cumplen las relaciones dadas en la tabla en el anexo 3.
c(n) cumplen las relaciones dadas en la tabla en el anexo 3.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que los coeficientes de ventana
c(n) cumplen las relaciones dadas en la tabla en el anexo 2.
c(n) cumplen las relaciones dadas en la tabla en el anexo 2.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el divisor (110) en ventanas de análisis está
adaptado de modo que los coeficientes de ventana
c(n) comprenden los valores dados en la tabla en el anexo 1.
c(n) comprenden los valores dados en la tabla en el anexo 1.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el aparato (100) está adaptado de modo que la
trama (120) actual de muestras de entrada de audio de dominio de
tiempo que va a procesarse se genera desplazando
(T-1) bloques posteriores de una trama (120)
directamente precedente de muestras de entrada de audio de dominio
de tiempo un bloque hacia las muestras de entrada de audio de
dominio de tiempo más tempranas y añadiendo un bloque (220) de
muestras de audio de dominio de tiempo recientes como el bloque que
comprende las muestras de entrada de audio de dominio de tiempo más
recientes de la trama (120) actual.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el aparato (100) está adaptado de modo que la
trama (120) actual de muestras de entrada de audio de dominio de
tiempo x(n) que va a procesarse se genera basándose en un
desplazamiento de las muestras de entrada de audio de dominio de
tiempo x_{prev}(n) de la trama (120) directamente
precedente de muestras de entrada de audio de dominio de tiempo
basándose en la ecuación
durante un tiempo o índice de
muestra n = 32, ..., 319, y en el que el aparato (100) está adaptado
además para generar las muestras de entrada de audio de dominio de
tiempo x(n) de la trama (120) actual de muestras de entrada
de audio de dominio de tiempo incluyendo 32 muestras de entrada de
dominio de tiempo entrantes siguientes según un orden de las
muestras de entrada de audio de dominio de tiempo entrantes de
tiempo decreciente o índices de muestra n para las muestras de
entrada de audio de dominio de tiempo x(n) de la trama (120)
actual comenzando en el momento o índice de muestra n =
31.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) comprende un convertidor
de tiempo/frecuencia adaptado para generar los valores de subbanda
de audio de modo que todos los valores de subbanda basados en una
trama (150) de muestras divididas en ventanas representan una
representación espectral de las muestras divididas en ventanas de
la trama (150) de muestras divididas en ventanas.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el convertidor de tiempo/frecuencia está
adaptado para generar los valores de subbanda de audio de valor
complejo o valor real.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) está adaptada para
calcular un valor de subbanda de audio para cada muestra de entrada
de audio de dominio de tiempo de un bloque (130) de muestras de
entrada de audio de dominio de tiempo, en el que el cálculo de cada
valor de subbanda de audio o cada una de las muestras de entrada de
audio de dominio de tiempo de un bloque (130) de muestras de entrada
de audio de dominio de tiempo se basa en las muestras divididas en
ventanas de la trama (150) dividida en ventanas.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) está adaptada para
calcular los valores de subbanda de audio basándose en multiplicar
las muestras (150) divididas en ventanas con una función
armónicamente oscilante para cada valor de subbanda y sumar las
muestras divididas en ventanas multiplicadas, en el que una
frecuencia de la función armónicamente oscilante se basa en una
frecuencia central de una subbanda correspondiente de los valores
de subbanda.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) está adaptada de modo
que la función armónicamente oscilante es una función exponencial
compleja, una función seno o una función coseno.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) está adaptada para
calcular los valores de subbanda de audio w_{k1} basándose en la
ecuación
para n = 0, ..., 63
y
para k = 0, ..., 31, donde
z(n) es una muestra dividida en ventanas correspondiente a un
índice n, donde k es un índice de subbanda, donde 1 es un índice de
un bloque (180) de valores de subbanda de audio y donde
f_{osc}(x) es una función oscilante que depende de una
variable x de valor
real.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, la calculadora (170) está adaptada de modo
que la función oscilante f_{osc}(x) es
o
o
donde i es la unidad
imaginaria.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el aparato (100) está adaptado para procesar
una trama (120) de muestras de entrada de audio de dominio de
tiempo de valor real.
En un aparato para generar valores de subbanda
de audio en canales de subbanda de audio según una realización de
la presente invención, el aparato (100) está adaptado para
proporcionar una señal indicativa de una función (370) de ventana
de síntesis que va a usarse con los valores de subbanda de audio o
indicativa de la función (190) de ventana de análisis usada para
generar los valores de subbanda de audio.
Un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención
comprende una calculadora (310) para calcular una secuencia (330) de
muestras de dominio de tiempo intermedias a partir de valores de
subbanda de audio en canales de subbanda de audio, comprendiendo la
secuencia muestras de dominio de tiempo intermedias más tempranas y
muestras de dominio de tiempo más recientes, un divisor (360) en
ventanas de síntesis para dividir en ventanas la secuencia (330) de
muestras de dominio de tiempo intermedias usando una función (370)
de ventana de síntesis que comprende una secuencia de coeficientes
de ventana para obtener muestras de dominio de tiempo intermedias
divididas en ventanas, comprendiendo la función (370) de ventana de
síntesis un primer grupo (420) de coeficientes de ventana que
comprende una primera parte de la secuencia de coeficientes de
ventana y un segundo grupo (430) de coeficientes de ventana que
comprende una segunda parte de la secuencia de coeficientes de
ventana, comprendiendo la primera parte menos coeficientes de
ventana que la segunda parte, en el que un valor de energía de los
coeficientes de ventana en la primera parte es mayor que un valor
de energía de los coeficientes de ventana de la segunda parte, en el
que se usa el primer grupo de coeficientes de ventana para dividir
en ventanas muestras de dominio de tiempo intermedias posteriores y
se usa el segundo grupo de coeficientes de ventana para dividir en
ventanas muestras de dominio de tiempo intermedias más tempranas, y
una fase (400) de salida de sumador-solapamiento
para procesar las muestras de dominio de tiempo intermedias
divididas en ventanas para obtener las muestras de dominio de
tiempo.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
un valor de energía de los coeficientes de ventana de la primera
parte de coeficientes de ventana es mayor que o igual a 2/3 de un
valor de energía de todos los coeficientes de ventana de la función
(370) de ventana de síntesis y un valor de energía de la segunda
parte de coeficientes de ventana es menor que, o igual a 1/3 del
valor de energía de todos los coeficientes de ventana de la función
de ventana de síntesis.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la primera parte de coeficientes de ventana comprende 1/3 o menos
de 1/3 del número total de todos los coeficientes de ventana de la
secuencia de coeficientes de ventana y la segunda parte de
coeficientes de ventana comprende 2/3 o más de 2/3 del número total
de coeficientes de ventana de la secuencia de coeficientes de
ventana.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
un punto central de los coeficientes de ventana de la función (370)
de ventana de síntesis corresponde a un valor real en un intervalo
de índices de la primera parte de coeficientes de ventana.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la función de ventana de síntesis comprende un aumento
estrictamente monótono desde el coeficiente de ventana de la
secuencia de coeficientes de ventana usada para dividir en ventanas
la muestra de dominio de tiempo intermedia más reciente hasta el
coeficiente de ventana que comprende el valor absoluto más alto de
todos los coeficientes de ventana de la función de ventana de
síntesis.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la función (370) de ventana de síntesis comprende un comportamiento
oscilante.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el coeficiente de ventana correspondiente a un índice n = N
comprende un valor absoluto en el intervalo entre 0,9 y 1,1, en el
que el índice n de la secuencia de coeficientes de ventana es un
número entero en el intervalo de 0 a T \cdot N-1,
en el que el coeficiente de ventana usado para dividir en ventanas
la muestra de dominio de tiempo intermedia más reciente es el
coeficiente de ventana correspondiente al índice n = 0, en el que T
es un número entero mayor que 4 que indica el número de bloques
comprendido en la trama (330) de muestras de dominio de tiempo
intermedias, en el que el aparato (300) está adaptado para generar
un bloque (410) de muestras de audio de dominio de tiempo,
comprendiendo el bloque (410) de muestras de audio de dominio de
tiempo N muestras de audio de dominio de tiempo, en el que N es un
número entero positivo.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
el coeficiente de ventana correspondiente al índice n=0 comprende
un valor absoluto menor que o igual a 0,02.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
el coeficiente de ventana correspondiente a un índice n = 3N es
menor que -0,1, en el que el aparato (300) está adaptado para
generar un bloque (410) de muestras de audio de dominio de tiempo,
comprendiendo el bloque (410) de muestras de audio de dominio de
tiempo N muestras de audio de dominio de tiempo, en el que N es un
número entero positivo. En un aparato para generar muestras de
audio de dominio de tiempo según una realización de la presente
invención, la ventana (360) de síntesis está adaptada de modo que
la división en ventanas comprende multiplicar las muestras de
dominio de tiempo intermedias g(n) de la secuencia de
muestras de dominio de tiempo intermedias para obtener las muestras
divididas en ventanas z(n) de la trama (380) dividida en
ventanas basándose en la ecuación
para n = 0, ..., T \cdot N -
1.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
el coeficiente de ventana c(n) cumple las relaciones dadas
en la tabla en el anexo 4.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el aparato (300) está adaptado para usar la función (370) de ventana
de síntesis que es una versión con inversión en tiempo o invertida
en índice de una función (190) de ventana de análisis usada para
generar los valores de subbanda de audio.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el aparato (300) está adaptado para generar un bloque (410) de
muestras de audio de dominio de tiempo, comprendiendo el bloque
(410) de muestras de audio de dominio de tiempo N muestras de audio
de dominio de tiempo, en el que N es un número entero positivo.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el aparato (300) está adaptado para generar el bloque (410) de
muestras de audio de dominio de tiempo, basándose en un bloque
(320) de valores de subbanda de audio que comprende N valores de
subbanda de audio y en el que la calculadora (310) está adaptada
para calcular la secuencia (330) de muestras de audio de dominio de
tiempo intermedias que comprenden T \cdot N muestras de audio de
dominio de tiempo intermedias, en el que T es un número entero
positivo.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la función de ventana de síntesis es asimétrica con respecto al
coeficiente de ventana de secuencia.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la primera parte comprende un valor máximo de todos los
coeficientes de ventana de la función de ventana de síntesis con un
valor absoluto mayor que 1.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la primera parte comprende 3/2\cdotN coeficientes de ventana y la
segunda parte de coeficientes de ventana comprende
(T-3/2)\cdotN coeficientes de ventana, en
el que T es un índice mayor o igual a 4 que indica un número de
bloques 340 comprendidos en la trama (330) de muestras de dominio
de tiempo intermedias.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
la división en ventanas de la secuencia de muestras de dominio de
tiempo intermedias comprende una multiplicación elemento a elemento
de las muestras de dominio de tiempo intermedias con un coeficiente
de ventana.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
cada muestra de dominio de tiempo intermedia se multiplica elemento
a elemento con el coeficiente de ventana de la función (370) de
ventana de síntesis según la secuencia de muestras de dominio de
tiempo intermedias y la secuencia de coeficientes de ventana.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la ventana (360) de síntesis está adaptada de modo que los
coeficientes de ventana de la función (370) de ventana de síntesis
son valores de valor real.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
el coeficiente de ventana c(n) cumple las relaciones dadas
en la tabla en el anexo 3.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
los coeficientes de ventana c(n) cumplen las relaciones
dadas en la tabla en el anexo 2.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el divisor (360) en ventanas de síntesis está adaptado de modo que
los coeficientes de ventana c(n) comprenden los valores
dados en la tabla en el anexo 1.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada para calcular las muestras de
dominio de tiempo intermedias de la secuencia de muestras de
dominio de tiempo intermedias basándose en multiplicar los valores
de subbanda de audio con una función oscilante armónica y sumar los
valores de subbanda de audio multiplicados, en el que la frecuencia
de la función armónicamente oscilante se basa en una frecuencia
central de la subbanda correspondiente.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada de modo que la función
armónicamente oscilante es una función exponencial compleja, una
función seno o una función coseno.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada para calcular muestras de dominio
de tiempo intermedias de valor real basándose en los valores de
subbanda de audio de valor complejo o valor real.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada para calcular la secuencia de
muestras de dominio de tiempo intermedias de valor real
z(i,n) basándose en la ecuación
para un número entero n en el
intervalo de 0 a N \cdot T-1, donde Re(x)
es la parte real del número de valor complejo x, n = 3,14... es el
número circular y f_{osc}(x) es una función armónicamente
oscilante,
donde
cuando los valores de subbanda de
audio proporcionados a la calculadora son valores complejos, donde I
es la unidad imaginaria, y
donde
cuando los valores de subbanda de
audio proporcionados a la calculadora (310) son valores
reales.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) comprende un convertidor de frecuencia/tiempo
adaptado para generar la secuencia de muestras de dominio de tiempo
intermedias, de modo que los valores de subbanda de audio
proporcionados a la calculadora (310) representan una
representación espectral de la secuencia de muestras de dominio de
tiempo intermedias.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el convertidor de frecuencia/tiempo está adaptado para generar la
secuencia de muestras de tiempo/dominio intermedias basándose en
valores de subbanda de audio de valor complejo o valor real.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada para calcular la secuencia de
muestras de dominio de tiempo intermedias g(n) a partir de
los valores de subbanda de audio X(k) basándose en la
ecuación
para un número entero n en el
intervalo de 20N - 1 y
2N,
para el número entero n en el
intervalo de 0 y 2N-1
y
para un número entero j en el
intervalo de 0 y 4 y para un número entero k en el intervalo de 0 y
N-1, donde N es un número entero que indica el
número de valores de subbanda de audio y el número de las muestras
de audio de dominio de tiempo, donde v es un vector de valor real,
donde v_{prev} es un vector v de valor real de la generación
directamente previa de muestras de audio de dominio de tiempo, donde
i es la unidad imaginaria y \pi es el número
circular.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la calculadora (310) está adaptada para calcular la secuencia de
muestras de dominio de tiempo intermedias g(n) a partir de
los valores de subbanda de audio X(k) basándose en la
ecuación
para un número entero n en el
intervalo de 20N - 1 y
2N,
para el número entero n en el
intervalo de 0 y 2N-1
y
para un número entero j en el
intervalo de 0 y 4 y para un número entero k en el intervalo de 0 y
N-1, donde N es un número entero que indica el
número de valores de subbanda de audio y el número de las muestras
de audio de dominio de tiempo, donde v es un vector de valor real,
donde v_{prev} es un vector de valor real v de la generación
directamente previa de muestras de audio de dominio de tiempo y
donde n es el número
circular.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la fase (400) de salida de solapamiento-suma está
adaptada para procesar las muestras de dominio de tiempo
intermedias divididas en ventanas de manera solapante, basándose en
T bloques (320) proporcionados consecutivamente de valores de
subbanda de audio.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la fase (400) de salida de solapamiento-suma está
adaptada para proporcionar las muestras de dominio de tiempo
out_{1}(n), donde n es un número entero que indica un índice de muestra basándose en la ecuación
out_{1}(n), donde n es un número entero que indica un índice de muestra basándose en la ecuación
donde z_{l,n} es una muestra de
dominio de tiempo intermedia dividida en ventanas correspondiente a
un índice de muestra n y un índice 1 de secuencia o trama en el
intervalo desde 0 hasta T - 1, donde 1 = 0 corresponde a la
secuencia o trama más reciente y valores menores de 1 a tramas o
secuencias generadas
previamente.
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
la fase (400) de salida de solapamiento-suma está
adaptada para proporcionar las muestras de dominio de tiempo
out(k) basándose en la ecuación
out(k) basándose en la ecuación
donde w es un vector que comprende
las muestras de dominio de tiempo intermedias divididas en ventanas
y k es un número entero que indica un índice en el intervalo entre
0 y
(N-1).
En un aparato para generar muestras de audio de
dominio de tiempo según una realización de la presente invención,
el aparato (300) está adaptado para recibir una señal indicativa de
la función (190) de ventana de análisis usada para generar los
valores de subbanda de audio, o indicativa de la función (370) de
ventana de síntesis que va a usarse para generar las muestras de
audio de dominio de tiempo.
Según una realización de la presente invención,
un codificador (510) comprende un aparato (560) para generar
valores de subbanda de audio en canales de subbanda de audio según
una realización de la presente invención.
Según una realización de la presente invención,
un codificador (510) comprende además un cuantificador y un
codificador (570) acoplados al aparato (560) para generar valores de
subbanda de audio y adaptados para cuantificar y codificar la
salida de valores de subbanda de audio mediante el aparato (560) y
emitir los valores de subbanda de audio codificados
cuantificados.
Según una realización de la presente invención,
un decodificador (580) comprende un aparato (600) para generar
muestras de audio de dominio de tiempo según una realización de la
presente invención.
Según una realización de la presente invención,
un decodificador (580) comprende además un decodificador y un
decuantificador (590) adaptados para recibir valores de subbanda de
audio codificados y cuantificados, acoplados al aparato (600) para
generar muestras de audio de dominio de tiempo y adaptados para
proporcionar los valores de subbanda de audio decodificados y
decuantificados como los valores de subbanda de audio al aparato
(600).
Según una realización de la presente invención,
un codificador (520) de SBR comprende un aparato (530) para generar
valores de subbanda de audio en canales de subbanda de audio,
basándose en una trama de muestras de entrada de audio de dominio
de tiempo proporcionadas al codificador (520) de SBR y un módulo
(540) de extracción de parámetros de SBR acoplado al aparato (530)
para generar valores de subbanda de audio y adaptado para extraer y
emitir parámetros de SBR basándose en los valores de subbanda de
audio.
Según una realización de la presente invención,
un sistema (610) comprende un aparato (620) para generar valores de
subbanda de audio a partir de una trama de muestras de entrada de
audio de dominio de tiempo proporcionadas al sistema (610); y un
aparato (640) para generar muestras de audio de dominio de tiempo
basándose en los valores de subbanda de audio generados por el
aparato (640) para generar valores de subbanda de audio.
Según una realización de la presente invención,
un sistema (610) es un decodificador de SBR.
Según una realización de la presente invención,
un sistema comprende además un generador (630) de HF interconectado
entre el aparato (620) para generar valores de subbanda de audio y
el aparato (640) para generar muestras de audio de dominio de
tiempo y adaptado para recibir datos de SBR adaptados para modificar
o añadir valores de subbanda de audio basándose en los datos de SBR
y los valores de subbanda de audio desde el aparato (620) para
generar valores de subbanda de audio.
Con respecto a todos los aparatos y métodos
según realizaciones de la presente invención, dependiendo de los
detalles de implementación, para obtener los coeficientes de ventana
basándose en los valores dados en la tablas en los anexos 1 y 3,
puede implementarse un cambio de signo adicional con respecto a los
coeficientes de ventana correspondientes a los índices 128 a 255 y
384 a 511 (multiplicación con factor (-1)). En otras palabras, los
coeficientes de ventana de la función de ventana se basan en los
coeficientes de ventana dados en la tabla en el anexo 1. Para
obtener los coeficientes de ventana de la función de ventana
mostrada en las figuras, los coeficientes de ventana en la tabla
correspondientes a los índices 0 a 127, 256 a 383 y 512 a 639 deben
multiplicarse por (+1) (es decir sin cambio de signo) y los
coeficientes de ventana correspondientes a los índices 128 a 255 y
384 a 511 deben multiplicarse por (-1) (es decir, un cambio de
signo) para obtener los coeficientes de ventana de la función de
ventana mostrada. Por consiguiente las relaciones dadas en la tabla
en el anexo 3 deben tratarse en consecuencia.
Un aparato para generar valores de subbanda de
audio en canales de subbanda de audio según una realización de la
presente invención comprende un divisor 110 en ventanas de análisis
para dividir en ventanas una trama 120 de muestras de entrada de
audio de dominio de tiempo que están en una secuencia de tiempo que
se extiende desde una muestra temprana hasta una muestra posterior
usando una función 190 de ventana de análisis que comprende una
secuencia de coeficientes de ventana para obtener muestras divididas
en ventanas, comprendiendo la función de ventana de análisis un
primer número de coeficientes de ventana derivados de una función de
ventana más grande que comprende una secuencia de un segundo número
de coeficientes de ventana más grande, en el que los coeficientes
de ventana de la función de ventana se derivan mediante una
interpolación de coeficientes de ventana de la función de ventana
más grande, y en el que el segundo número es un número par.
Comprende además una calculadora 170 para calcular los valores de
subbanda de audio usando las muestras divididas en ventanas.
Opcionalmente una realización de este tipo de la
presente invención en forma de un aparato 100 puede adaptarse para
interpolar los coeficientes de ventana de la función de ventana más
grande para obtener los coeficientes de ventana de la función de
ventana.
Algunas realizaciones de la presente invención
en forma de un aparato 100 pueden adaptarse de modo que el divisor
110 en ventanas de análisis esté adaptado de modo que la división en
ventanas comprenda multiplicar las muestras de entrada de audio de
dominio de tiempo x (n) de la trama (120) para obtener las muestras
divididas en ventanas z(n) de la trama dividida en ventanas
basándose en la ecuación
donde n es un número entero que
indica un índice de la secuencia de coeficientes de ventana en el
intervalo de 0 a T \cdot N-1, donde c(n)
es el coeficiente de ventana de la función de ventana de análisis
correspondientes al índice n, donde x(N T-1)
es la muestra de entrada de audio de dominio de tiempo más reciente
de una trama (120) de muestras de entrada de audio de dominio de
tiempo, donde el divisor (110) en ventanas de análisis está
adaptado de modo que la trama (120) de muestras de entrada de audio
de dominio de tiempo comprende una secuencia de T bloques (130) de
muestras de entrada de audio de dominio de tiempo que se extienden
desde las muestras de entrada de audio de dominio de tiempo más
tempranas hasta las más recientes de la trama (120), comprendiendo
cada bloque N muestras de entrada de audio de dominio de tiempo, y
donde T y N son números enteros positivos y T es mayor que
4.
\global\parskip0.850000\baselineskip
Algunas realizaciones de la presente invención
en forma de un aparato 100 pueden adaptarse además de modo que el
divisor 110 en ventanas de análisis esté adaptado de modo que la
función 190 de ventana de análisis comprenda un primer grupo 200 de
coeficientes de ventana que comprenda una primera parte de la
secuencia de coeficientes de ventana y un segundo grupo 210 de
coeficientes de ventana que comprenda una segunda parte de la
secuencia de coeficientes de ventana, en el que la primera parte
comprenda menos coeficientes de ventana que la segunda parte, en el
que un valor de energía de los coeficientes de ventana en la primera
parte sea mayor que un valor de energía de los coeficientes de
ventana de la segunda parte, y en el que se use el primer grupo de
coeficientes de ventana para dividir en ventanas muestras de dominio
de tiempo posteriores y se use el segundo grupo de coeficientes de
ventana para dividir en ventanas muestras de dominio de tiempo más
tempranas.
Algunas realizaciones de la presente invención
en forma de un aparato 100 también pueden adaptarse para usar una
función (190) de ventana de análisis que sea una versión invertida
en tiempo o invertida en índice de una función (370) de ventana de
síntesis que va a usarse para los valores de subbanda de audio.
Un aparato 300 según una realización de la
presente invención para generar muestras de audio de dominio de
tiempo comprende una calculadora 310 para calcular una secuencia 330
de muestras de dominio de tiempo intermedias a partir de valores de
subbanda de audio en canales de subbanda de audio, comprendiendo la
secuencia muestras de dominio de tiempo intermedias más tempranas y
muestras de dominio de tiempo posteriores, y un divisor 360 en
ventanas de síntesis para dividir en ventanas la secuencia 330 de
muestras de dominio de tiempo intermedias usando una función 370 de
ventana de síntesis que comprende una secuencia de coeficientes de
ventana para obtener muestras de dominio de tiempo intermedias
divididas en ventanas, comprendiendo la función de ventana de
síntesis un primer número de coeficientes de ventana derivados de
una función de ventana más grande que comprende una secuencia de un
segundo número de coeficientes de ventana más grande, en el que los
coeficientes de ventana de la función de ventana se derivan
mediante una interpolación de coeficientes de ventana de la función
de ventana más grande, y en el que el segundo número es par.
Comprende además una fase 400 de salida de
sumador-solapamiento para procesar las muestras de
dominio de tiempo intermedias divididas en ventanas para obtener
las muestras de dominio de tiempo.
Algunas realizaciones de la presente invención
en forma de un aparato 300 pueden adaptarse para interpolar los
coeficientes de ventana de la función de ventana más grande para
obtener los coeficientes de ventana de la función de ventana.
Algunas realizaciones de la presente invención
en forma de un aparato 300 pueden adaptarse de modo que el divisor
360 en ventanas de síntesis esté adaptado de modo que la división en
ventanas comprenda multiplicar las muestras de dominio de tiempo
intermedias g(n) de la secuencia de muestras de dominio de
tiempo intermedias para obtener las muestras divididas en ventanas
z(n) de la trama 380 dividida en ventanas basándose en la
ecuación
para n = 0, ..., T \cdot N -
1.
Algunas realizaciones de la presente invención
en forma de un aparato 300 pueden adaptarse de modo que el divisor
360 en ventanas de síntesis esté adaptado de modo que la función 370
de ventana de síntesis comprenda un primer grupo 420 de
coeficientes de ventana que comprenda una primera parte de la
secuencia de coeficientes de ventana y un segundo grupo 430 de
coeficientes de ventana que comprenda una segunda parte de la
secuencia de coeficientes de ventana, comprendiendo la primera
parte menos coeficientes de ventana que la segunda parte, en el que
un valor de energía de los coeficientes de ventana en la primera
parte sea mayor que un valor de energía de los coeficientes de
ventana de la segunda parte, y en el que se use el primer grupo de
coeficientes de ventana para dividir en ventanas muestras de
dominio de tiempo intermedias posteriores y se use el segundo grupo
de coeficientes de ventana para dividir en ventanas muestras de
dominio de tiempo intermedias más tempranas.
Algunas realizaciones de la presente invención
en forma de un aparato 300 pueden adaptarse para usar la función
370 de ventana de síntesis que es una versión con inversión en
tiempo o invertida en índice de una función 190 de ventana de
análisis usada para generar los valores de subbanda de audio.
Debe observarse, que en el marco de la presente
solicitud se entiende en una ecuación que se basa en una ecuación
una introducción de retardos adicionales, factores, coeficientes
adicionales y una introducción de otra función simple. Además,
pueden omitirse constantes simples, sumandos constantes, etc.
Además, también se incluyen transformaciones algebraicas,
transformaciones de equivalencia y aproximaciones (por ejemplo una
aproximación de Taylor) que no cambian en absoluto o de una manera
significativa el resultado de la ecuación. En otras palabras, se
incluyen, tanto ligeras modificaciones como transformaciones que
lleven esencialmente a un resultado idéntico, en el caso de que una
ecuación o expresión esté basada en una ecuación o expresión.
Aunque lo anterior se ha mostrado y descrito en
particular con referencia a realizaciones particulares de ello, los
expertos en la técnica entenderán que pueden realizarse diversos
otros cambios en la forma y los detalles sin apartarse del alcance
de ello. Debe entenderse que pueden realizarse diversos cambios en
la adaptación a diferentes realizaciones sin apartarse del concepto
más amplio dado a conocer en el presente documento y abarcado por
las reivindicaciones que siguen.
\global\parskip1.000000\baselineskip
Anexo
1
Anexo
2
\vskip1.000000\baselineskip
Anexo
3
Anexo
4
Claims (15)
1. Aparato para generar valores de subbanda de
audio en canales de subbanda de audio, que comprende:
- \quad
- un divisor (110) en ventanas de análisis para dividir en ventanas una trama (120) de muestras de entrada de audio de dominio de tiempo que están en una secuencia de tiempo que se extiende desde una muestra temprana hasta una muestra posterior usando una función (190) de ventana de análisis que comprende una secuencia de coeficientes de ventana para obtener muestras divididas en ventanas, comprendiendo la función de ventana de análisis un primer número de coeficientes de ventana derivados de una función de ventana más grande que comprende una secuencia de un segundo número de coeficientes de ventana más grande,
en el que los coeficientes de ventana de la
función de ventana se derivan mediante una interpolación de
coeficientes de ventana de la función de ventana más grande; y
en el que el segundo número es un número par;
y
una calculadora (170) para calcular los valores
de subbanda de audio usando las muestras divididas en ventanas.
2. Aparato (100) según la reivindicación 1, en
el que el aparato (100) o el divisor (110) en ventanas de análisis
está adaptado de modo que los coeficientes de ventana de la función
de ventana se interpolan de manera lineal.
3. Aparato (100) según cualquiera de las
reivindicaciones anteriores, en el que el aparato (100) o el divisor
(110) en ventanas de análisis está adaptado de modo que los
coeficientes de ventana de la función de ventana de análisis se
interpolan basándose en dos coeficientes de ventana consecutivos de
la función de ventana más grande según la secuencia de los
coeficientes de ventana de la función de ventana más grande para
obtener un coeficiente de ventana de la función de ventana.
4. Aparato (100) según cualquiera de las
reivindicaciones anteriores, en el que el aparato (100) o el divisor
(110) en ventanas de análisis está adaptado para obtener los
coeficientes de ventana c(n) de la función de ventana de
análisis basándose en la ecuación
en la que n es un número entero que
indica un índice de los coeficientes de ventana c(n), y
c_{2}(n) es un coeficiente de ventana de la función de
ventana más
grande.
5. Aparato (100) según la reivindicación 4, en
el que el aparato (100) o el divisor (110) en ventanas de análisis
está adaptado de modo que los coeficientes de ventana
c_{2}(n) de la función de ventana más grande obedecen a
las relaciones dadas en la tabla en el anexo 4.
6. Aparato (100) según cualquiera de las
reivindicaciones anteriores, en el que el divisor (110) en ventanas
de análisis está adaptado de modo que la función de ventana más
grande es asimétrica con respecto a la secuencia de coeficientes de
ventana.
7. Aparato (300) para generar muestras de audio
de dominio de tiempo, que comprende:
- \quad
- una calculadora (310) para calcular una secuencia (330) de muestras de dominio de tiempo intermedias a partir de valores de subbanda de audio en canales de subbanda de audio, comprendiendo la secuencia muestras de dominio de tiempo intermedias más tempranas y muestras de dominio de tiempo posteriores;
- \quad
- un divisor (360) en ventanas de síntesis para dividir en ventanas la secuencia (330) de muestras de dominio de tiempo intermedias usando una función (370) de ventana de síntesis que comprende una secuencia de coeficientes de ventana para obtener muestras de dominio de tiempo intermedias divididas en ventanas, comprendiendo la función de ventana de síntesis un primer número de coeficientes de ventana derivados de una función de ventana más grande que comprende una secuencia de un segundo número de coeficientes de ventana más grande,
en el que los coeficientes de ventana de la
función de ventana se derivan mediante una interpolación de
coeficientes de ventana de la función de ventana más grande; y
en el que el segundo número es par; y
una fase (400) de salida de
sumador-solapamiento para procesar las muestras de
dominio de tiempo intermedias divididas en ventanas para obtener
las muestras de dominio de tiempo.
8. Aparato (300) según la reivindicación 7, en
el que el aparato (300) está adaptado de modo que los coeficientes
de ventana de la función de ventana de síntesis se interpolan de
manera lineal.
9. Aparato (300) según cualquiera de las
reivindicaciones 7 u 8, en el que el aparato (300) está adaptado de
modo que los coeficientes de ventana de la función de ventana de
síntesis se interpolan basándose en dos coeficientes de ventana
consecutivos de la función de ventana más grande según la secuencia
de coeficientes de ventana de la función de ventana más grande para
obtener un coeficiente de ventana de la función de ventana.
10. Aparato (300) según cualquiera de las
reivindicaciones 7 a 9, en el que el aparato (300) está adaptado
para obtener los coeficientes de ventana c(n) de la función
de ventana de síntesis basándose en la ecuación
en la que c_{2}(n) son
coeficientes de ventana de una función de ventana más grande
correspondientes al índice
n.
11. Aparato (300) según la reivindicación 10,
en el que el aparato (300) está adaptado de modo que el coeficiente
de ventana c_{2} (n) cumple las relaciones dadas en la tabla en el
anexo 4.
12. Aparato (300) según cualquiera de las
reivindicaciones 7 a 11, en el que el divisor (360) en ventanas de
síntesis está adaptado de modo que la función de ventana más grande
es asimétrica con respecto a una secuencia de coeficientes de
ventana.
13. Método para generar valores de subbanda de
audio en canales de subbanda de audio, que comprende:
- \quad
- dividir en ventanas una trama de muestras de entrada de audio de dominio de tiempo que están en una secuencia de tiempo que se extiende desde una muestra temprana hasta una muestra posterior usando una función de ventana de análisis para obtener muestras divididas en ventanas, comprendiendo la función de ventana de análisis un primer número de coeficientes de ventana derivados de una función de ventana más grande que comprende una secuencia de un segundo número de coeficientes de ventana más grande,
en el que los coeficientes de ventana de la
función de ventana se derivan mediante una interpolación mediante
coeficientes de ventana de la función de ventana más grande; y
en el que el segundo número es un número par;
y
se calculan los valores de subbanda de audio
usando las muestras divididas en ventanas.
14. Método para generar muestras de audio de
dominio de tiempo, que comprende:
- \quad
- calcular una secuencia de muestras de dominio de tiempo intermedias a partir de valores de subbanda de audio en canales de subbanda de audio, comprendiendo la secuencia muestras de dominio de tiempo intermedias más tempranas y muestras de dominio de tiempo intermedias posteriores;
- \quad
- dividir en ventanas la secuencia de muestras de dominio de tiempo intermedias usando una función de ventana de síntesis para obtener muestras de dominio de tiempo divididas en ventanas, comprendiendo la función de ventana de síntesis un primer número de coeficientes de ventana derivados de una función de ventana más grande que comprende una secuencia de un segundo número de coeficientes de ventana más grande,
en el que los coeficientes de ventana de la
función de ventana se derivan mediante una interpolación de
coeficientes de ventana de la función de ventana más grande; y
en el que el segundo número es par; y
se solapa-suma las muestras de
dominio de tiempo divididas en ventanas para obtener las muestras de
dominio de tiempo.
15. Programa con un código de programa para
llevar a cabo, cuando se ejecuta en un procesador, un método según
la reivindicación 13 o según la reivindicación 14.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US86295406P | 2006-10-25 | 2006-10-25 | |
US862954P | 2006-10-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2328187T3 true ES2328187T3 (es) | 2009-11-10 |
Family
ID=39048961
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES07819260T Active ES2328187T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y metodo para generar valores de subbanda de audio y aparato ymetodo para generar muestras de audio de dominio de tiempo. |
ES17169583T Active ES2873254T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio de valor complejo |
ES23157260T Active ES2966657T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de muestras de audio de dominio de tiempo |
ES09010010T Active ES2834024T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de muestras de audio en el dominio temporal |
ES07819259T Active ES2631906T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio, aparato y procedimiento para la generación de muestras de audio en el dominio temporal |
ES21160250T Active ES2947516T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio de valor complejo |
Family Applications After (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES17169583T Active ES2873254T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio de valor complejo |
ES23157260T Active ES2966657T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de muestras de audio de dominio de tiempo |
ES09010010T Active ES2834024T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de muestras de audio en el dominio temporal |
ES07819259T Active ES2631906T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio, aparato y procedimiento para la generación de muestras de audio en el dominio temporal |
ES21160250T Active ES2947516T3 (es) | 2006-10-25 | 2007-10-23 | Aparato y procedimiento para la generación de valores de subbanda de audio de valor complejo |
Country Status (26)
Country | Link |
---|---|
US (3) | US8452605B2 (es) |
EP (10) | EP4325723A3 (es) |
JP (2) | JP5083779B2 (es) |
KR (2) | KR101056253B1 (es) |
CN (2) | CN101405791B (es) |
AR (2) | AR063400A1 (es) |
AT (1) | ATE435480T1 (es) |
AU (2) | AU2007308416B2 (es) |
BR (2) | BRPI0716315A2 (es) |
CA (2) | CA2667505C (es) |
DE (1) | DE602007001460D1 (es) |
DK (2) | DK3848928T3 (es) |
ES (6) | ES2328187T3 (es) |
FI (1) | FI3848928T3 (es) |
HK (2) | HK1119824A1 (es) |
HU (1) | HUE064482T2 (es) |
IL (2) | IL193786A (es) |
MX (2) | MX2009004477A (es) |
MY (2) | MY148715A (es) |
NO (3) | NO341567B1 (es) |
PL (6) | PL4207189T3 (es) |
PT (5) | PT2109098T (es) |
RU (2) | RU2420815C2 (es) |
TW (2) | TWI355649B (es) |
WO (2) | WO2008049590A1 (es) |
ZA (2) | ZA200810308B (es) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10770084B2 (en) | 2015-09-25 | 2020-09-08 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder, decoder and methods for signal-adaptive switching of the overlap ratio in audio transform coding |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
PT2109098T (pt) | 2006-10-25 | 2020-12-18 | Fraunhofer Ges Forschung | Aparelho e método para gerar amostras de áudio de domínio de tempo |
JP5238512B2 (ja) * | 2006-12-13 | 2013-07-17 | パナソニック株式会社 | オーディオ信号符号化方法及び復号化方法 |
US8214200B2 (en) * | 2007-03-14 | 2012-07-03 | Xfrm, Inc. | Fast MDCT (modified discrete cosine transform) approximation of a windowed sinusoid |
EP2077551B1 (en) * | 2008-01-04 | 2011-03-02 | Dolby Sweden AB | Audio encoder and decoder |
US8697975B2 (en) * | 2008-07-29 | 2014-04-15 | Yamaha Corporation | Musical performance-related information output device, system including musical performance-related information output device, and electronic musical instrument |
WO2010013754A1 (ja) * | 2008-07-30 | 2010-02-04 | ヤマハ株式会社 | オーディオ信号処理装置、オーディオ信号処理システム、およびオーディオ信号処理方法 |
US9384748B2 (en) | 2008-11-26 | 2016-07-05 | Electronics And Telecommunications Research Institute | Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching |
EP4224474B1 (en) * | 2008-12-15 | 2023-11-01 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio bandwidth extension decoder, corresponding method and computer program |
CA3107567C (en) | 2009-01-28 | 2022-08-02 | Dolby International Ab | Improved harmonic transposition |
PL3751570T3 (pl) | 2009-01-28 | 2022-03-07 | Dolby International Ab | Ulepszona transpozycja harmonicznych |
TWI597939B (zh) | 2009-02-18 | 2017-09-01 | 杜比國際公司 | 具相位偏移之複數值合成濾波器組 |
US8392200B2 (en) | 2009-04-14 | 2013-03-05 | Qualcomm Incorporated | Low complexity spectral band replication (SBR) filterbanks |
CN102422531B (zh) * | 2009-06-29 | 2014-09-03 | 三菱电机株式会社 | 音频信号处理装置 |
CN101958119B (zh) * | 2009-07-16 | 2012-02-29 | 中兴通讯股份有限公司 | 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法 |
FR2949582B1 (fr) * | 2009-09-02 | 2011-08-26 | Alcatel Lucent | Procede pour rendre un signal musical compatible avec un codec a transmission discontinue ; et dispositif pour la mise en ?uvre de ce procede |
KR101701759B1 (ko) | 2009-09-18 | 2017-02-03 | 돌비 인터네셔널 에이비 | 입력 신호를 전위시키기 위한 시스템 및 방법, 및 상기 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 저장 매체 |
BR122020007866B1 (pt) | 2009-10-21 | 2021-06-01 | Dolby International Ab | Sistema configurado para gerar um componente de alta frequência de um sinal de áudio, método para gerar um componente de alta frequência de um sinal de áudio e método para projetar um transpositor de harmônicos |
JP5575149B2 (ja) * | 2009-11-30 | 2014-08-20 | 三菱電機株式会社 | 分波装置、合波装置および中継装置 |
ES2836756T3 (es) | 2010-01-19 | 2021-06-28 | Dolby Int Ab | Transposición armónica basada en bloque de sub bandas mejorada |
JP5782677B2 (ja) | 2010-03-31 | 2015-09-24 | ヤマハ株式会社 | コンテンツ再生装置および音声処理システム |
CN102971788B (zh) * | 2010-04-13 | 2017-05-31 | 弗劳恩霍夫应用研究促进协会 | 音频信号的样本精确表示的方法及编码器和解码器 |
US9443534B2 (en) | 2010-04-14 | 2016-09-13 | Huawei Technologies Co., Ltd. | Bandwidth extension system and approach |
CA3203400C (en) | 2010-07-19 | 2023-09-26 | Dolby International Ab | Processing of audio signals during high frequency reconstruction |
CN101908342B (zh) * | 2010-07-23 | 2012-09-26 | 北京理工大学 | 利用频域滤波后处理进行音频暂态信号预回声抑制的方法 |
US8755460B2 (en) * | 2010-07-30 | 2014-06-17 | National Instruments Corporation | Phase aligned sampling of multiple data channels using a successive approximation register converter |
US8762158B2 (en) * | 2010-08-06 | 2014-06-24 | Samsung Electronics Co., Ltd. | Decoding method and decoding apparatus therefor |
FR2969804A1 (fr) * | 2010-12-23 | 2012-06-29 | France Telecom | Filtrage perfectionne dans le domaine transforme. |
BR112012029132B1 (pt) | 2011-02-14 | 2021-10-05 | Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E.V | Representação de sinal de informações utilizando transformada sobreposta |
CA2827249C (en) * | 2011-02-14 | 2016-08-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for processing a decoded audio signal in a spectral domain |
JP5849106B2 (ja) | 2011-02-14 | 2016-01-27 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 低遅延の統合されたスピーチ及びオーディオ符号化におけるエラー隠しのための装置及び方法 |
JP5625126B2 (ja) | 2011-02-14 | 2014-11-12 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム |
PL3239978T3 (pl) | 2011-02-14 | 2019-07-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio |
KR101525185B1 (ko) | 2011-02-14 | 2015-06-02 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법 |
FR2977439A1 (fr) * | 2011-06-28 | 2013-01-04 | France Telecom | Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard. |
FR2977969A1 (fr) * | 2011-07-12 | 2013-01-18 | France Telecom | Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee |
EP2573761B1 (en) | 2011-09-25 | 2018-02-14 | Yamaha Corporation | Displaying content in relation to music reproduction by means of information processing apparatus independent of music reproduction apparatus |
JP6155274B2 (ja) | 2011-11-11 | 2017-06-28 | ドルビー・インターナショナル・アーベー | 過剰サンプリングされたsbrを使ったアップサンプリング |
JP5494677B2 (ja) | 2012-01-06 | 2014-05-21 | ヤマハ株式会社 | 演奏装置及び演奏プログラム |
EP2717262A1 (en) * | 2012-10-05 | 2014-04-09 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder, decoder and methods for signal-dependent zoom-transform in spatial audio object coding |
KR102238376B1 (ko) | 2013-02-05 | 2021-04-08 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 오디오 프레임 손실 은폐를 제어하기 위한 방법 및 장치 |
BR122020020698B1 (pt) | 2013-04-05 | 2022-05-31 | Dolby International Ab | Método para decodificação, meio legível por computador não transitório para decodificação, decodificador, e método de codificação de áudio para codificação em forma de onda intercalada |
TWI557727B (zh) * | 2013-04-05 | 2016-11-11 | 杜比國際公司 | 音訊處理系統、多媒體處理系統、處理音訊位元流的方法以及電腦程式產品 |
CA2997882C (en) | 2013-04-05 | 2020-06-30 | Dolby International Ab | Audio encoder and decoder |
US10893488B2 (en) | 2013-06-14 | 2021-01-12 | Microsoft Technology Licensing, Llc | Radio frequency (RF) power back-off optimization for specific absorption rate (SAR) compliance |
EP2830065A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for decoding an encoded audio signal using a cross-over filter around a transition frequency |
CN111292757A (zh) | 2013-09-12 | 2020-06-16 | 杜比国际公司 | 基于qmf的处理数据的时间对齐 |
EP3806498B1 (en) * | 2013-09-17 | 2023-08-30 | Wilus Institute of Standards and Technology Inc. | Method and apparatus for processing audio signal |
CN105874819B (zh) | 2013-10-22 | 2018-04-10 | 韩国电子通信研究院 | 生成用于音频信号的滤波器的方法及其参数化装置 |
KR102244613B1 (ko) * | 2013-10-28 | 2021-04-26 | 삼성전자주식회사 | Qmf 필터링 방법 및 이를 수행하는 장치 |
KR101627661B1 (ko) | 2013-12-23 | 2016-06-07 | 주식회사 윌러스표준기술연구소 | 오디오 신호 처리 방법, 이를 위한 파라메터화 장치 및 오디오 신호 처리 장치 |
CN106105269B (zh) | 2014-03-19 | 2018-06-19 | 韦勒斯标准与技术协会公司 | 音频信号处理方法和设备 |
CN108307272B (zh) | 2014-04-02 | 2021-02-02 | 韦勒斯标准与技术协会公司 | 音频信号处理方法和设备 |
EP3998605A1 (en) * | 2014-06-10 | 2022-05-18 | MQA Limited | Digital encapsulation of audio signals |
TWI758146B (zh) * | 2015-03-13 | 2022-03-11 | 瑞典商杜比國際公司 | 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流 |
EP3107096A1 (en) | 2015-06-16 | 2016-12-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Downscaled decoding |
US10847170B2 (en) | 2015-06-18 | 2020-11-24 | Qualcomm Incorporated | Device and method for generating a high-band signal from non-linearly processed sub-ranges |
WO2017153300A1 (en) * | 2016-03-07 | 2017-09-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Error concealment unit, audio decoder, and related method and computer program using characteristics of a decoded representation of a properly decoded audio frame |
EP3475944B1 (en) * | 2016-06-22 | 2020-07-15 | Dolby International AB | Audio decoder and method for transforming a digital audio signal from a first to a second frequency domain |
EP3276620A1 (en) | 2016-07-29 | 2018-01-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Time domain aliasing reduction for non-uniform filterbanks which use spectral analysis followed by partial synthesis |
US10224974B2 (en) | 2017-03-31 | 2019-03-05 | Microsoft Technology Licensing, Llc | Proximity-independent SAR mitigation |
TWI681384B (zh) * | 2018-08-01 | 2020-01-01 | 瑞昱半導體股份有限公司 | 音訊處理方法與音訊等化器 |
WO2020178322A1 (en) * | 2019-03-06 | 2020-09-10 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for converting a spectral resolution |
CN112447166A (zh) * | 2019-08-16 | 2021-03-05 | 阿里巴巴集团控股有限公司 | 一种针对目标频谱矩阵的处理方法及装置 |
CN111402917B (zh) * | 2020-03-13 | 2023-08-04 | 北京小米松果电子有限公司 | 音频信号处理方法及装置、存储介质 |
US11632147B2 (en) * | 2020-08-13 | 2023-04-18 | Marvell Asia Pte, Ltd. | Simplified frequency-domain filter adaptation window |
CN114007176B (zh) * | 2020-10-09 | 2023-12-19 | 上海又为智能科技有限公司 | 用于降低信号延时的音频信号处理方法、装置及存储介质 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3666543A (en) * | 1969-11-24 | 1972-05-30 | Ludwig Maier | Tris-(2-hydroxyalkyl)-phosphine oxide flame retardant articles |
ATE92690T1 (de) * | 1989-05-17 | 1993-08-15 | Telefunken Fernseh & Rundfunk | Verfahren zur uebertragung eines signals. |
CN1062963C (zh) * | 1990-04-12 | 2001-03-07 | 多尔拜实验特许公司 | 用于产生高质量声音信号的解码器和编码器 |
JP3277682B2 (ja) * | 1994-04-22 | 2002-04-22 | ソニー株式会社 | 情報符号化方法及び装置、情報復号化方法及び装置、並びに情報記録媒体及び情報伝送方法 |
KR100346734B1 (ko) * | 1995-09-22 | 2002-11-23 | 삼성전자 주식회사 | 고속분석필터및합성필터를구비한오디오부호화기및복호화기 |
US5819215A (en) | 1995-10-13 | 1998-10-06 | Dobson; Kurt | Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data |
WO1998035339A2 (en) * | 1997-01-27 | 1998-08-13 | Entropic Research Laboratory, Inc. | A system and methodology for prosody modification |
CN1144357C (zh) * | 1998-03-04 | 2004-03-31 | 韩国电气通信公社 | 音频多声道处理用等间隔子带分析和合成滤波器 |
FI114833B (fi) * | 1999-01-08 | 2004-12-31 | Nokia Corp | Menetelmä, puhekooderi ja matkaviestin puheenkoodauskehysten muodostamiseksi |
US6226608B1 (en) | 1999-01-28 | 2001-05-01 | Dolby Laboratories Licensing Corporation | Data framing for adaptive-block-length coding system |
US6510407B1 (en) | 1999-10-19 | 2003-01-21 | Atmel Corporation | Method and apparatus for variable rate coding of speech |
SE0001926D0 (sv) | 2000-05-23 | 2000-05-23 | Lars Liljeryd | Improved spectral translation/folding in the subband domain |
US6718300B1 (en) | 2000-06-02 | 2004-04-06 | Agere Systems Inc. | Method and apparatus for reducing aliasing in cascaded filter banks |
US6748363B1 (en) * | 2000-06-28 | 2004-06-08 | Texas Instruments Incorporated | TI window compression/expansion method |
JP2002091499A (ja) * | 2000-06-14 | 2002-03-27 | Texas Instruments Inc | ウインドウ圧縮/伸張方法 |
EP1199711A1 (en) * | 2000-10-20 | 2002-04-24 | Telefonaktiebolaget Lm Ericsson | Encoding of audio signal using bandwidth expansion |
US6996198B2 (en) * | 2000-10-27 | 2006-02-07 | At&T Corp. | Nonuniform oversampled filter banks for audio signal processing |
US6707869B1 (en) | 2000-12-28 | 2004-03-16 | Nortel Networks Limited | Signal-processing apparatus with a filter of flexible window design |
SE0101175D0 (sv) * | 2001-04-02 | 2001-04-02 | Coding Technologies Sweden Ab | Aliasing reduction using complex-exponential-modulated filterbanks |
US7136418B2 (en) | 2001-05-03 | 2006-11-14 | University Of Washington | Scalable and perceptually ranked signal coding and decoding |
JP4106624B2 (ja) | 2001-06-29 | 2008-06-25 | 株式会社ケンウッド | 信号の周波数成分を補間するための装置および方法 |
JP4012506B2 (ja) * | 2001-08-24 | 2007-11-21 | 株式会社ケンウッド | 信号の周波数成分を適応的に補間するための装置および方法 |
DE10228103A1 (de) | 2002-06-24 | 2004-01-15 | Bayer Cropscience Ag | Fungizide Wirkstoffkombinationen |
US7069212B2 (en) * | 2002-09-19 | 2006-06-27 | Matsushita Elecric Industrial Co., Ltd. | Audio decoding apparatus and method for band expansion with aliasing adjustment |
SE0301273D0 (sv) * | 2003-04-30 | 2003-04-30 | Coding Technologies Sweden Ab | Advanced processing based on a complex-exponential-modulated filterbank and adaptive time signalling methods |
US7563748B2 (en) | 2003-06-23 | 2009-07-21 | Cognis Ip Management Gmbh | Alcohol alkoxylate carriers for pesticide active ingredients |
EP1513137A1 (en) | 2003-08-22 | 2005-03-09 | MicronasNIT LCC, Novi Sad Institute of Information Technologies | Speech processing system and method with multi-pulse excitation |
TWI227866B (en) | 2003-11-07 | 2005-02-11 | Mediatek Inc | Subband analysis/synthesis filtering method |
CN1270290C (zh) * | 2003-11-26 | 2006-08-16 | 联发科技股份有限公司 | 子带分析/合成滤波方法 |
CN100573666C (zh) * | 2003-11-26 | 2009-12-23 | 联发科技股份有限公司 | 子带分析/合成滤波方法 |
WO2005073959A1 (en) * | 2004-01-28 | 2005-08-11 | Koninklijke Philips Electronics N.V. | Audio signal decoding using complex-valued data |
CA2457988A1 (en) * | 2004-02-18 | 2005-08-18 | Voiceage Corporation | Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization |
WO2006000020A1 (en) | 2004-06-29 | 2006-01-05 | European Nickel Plc | Improved leaching of base metals |
MX2007012187A (es) | 2005-04-01 | 2007-12-11 | Qualcomm Inc | Sistemas, metodos y aparatos para deformacion en tiempo de banda alta. |
US7774396B2 (en) * | 2005-11-18 | 2010-08-10 | Dynamic Hearing Pty Ltd | Method and device for low delay processing |
US7953604B2 (en) * | 2006-01-20 | 2011-05-31 | Microsoft Corporation | Shape and scale parameters for extended-band frequency coding |
US8036903B2 (en) * | 2006-10-18 | 2011-10-11 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system |
PT2109098T (pt) | 2006-10-25 | 2020-12-18 | Fraunhofer Ges Forschung | Aparelho e método para gerar amostras de áudio de domínio de tempo |
TW200922334A (en) | 2007-11-02 | 2009-05-16 | Univ Nat Chunghsing | Low complexity frequency field motion estimation method adapted to wavelet video coding |
-
2007
- 2007-10-23 PT PT90100108T patent/PT2109098T/pt unknown
- 2007-10-23 PL PL23157260.3T patent/PL4207189T3/pl unknown
- 2007-10-23 ES ES07819260T patent/ES2328187T3/es active Active
- 2007-10-23 DK DK21160250.3T patent/DK3848928T3/da active
- 2007-10-23 CN CN2007800097359A patent/CN101405791B/zh active Active
- 2007-10-23 JP JP2009500788A patent/JP5083779B2/ja active Active
- 2007-10-23 MX MX2009004477A patent/MX2009004477A/es active IP Right Grant
- 2007-10-23 EP EP23210951.2A patent/EP4325723A3/en active Pending
- 2007-10-23 US US12/447,126 patent/US8452605B2/en active Active
- 2007-10-23 PL PL09010010T patent/PL2109098T3/pl unknown
- 2007-10-23 AU AU2007308416A patent/AU2007308416B2/en active Active
- 2007-10-23 BR BRPI0716315A patent/BRPI0716315A2/pt not_active Application Discontinuation
- 2007-10-23 ES ES17169583T patent/ES2873254T3/es active Active
- 2007-10-23 EP EP23157260.3A patent/EP4207189B1/en active Active
- 2007-10-23 EP EP23210953.8A patent/EP4300824A3/en active Pending
- 2007-10-23 EP EP23210978.5A patent/EP4300825A3/en active Pending
- 2007-10-23 ES ES23157260T patent/ES2966657T3/es active Active
- 2007-10-23 EP EP17169583.6A patent/EP3288027B1/en active Active
- 2007-10-23 AU AU2007308415A patent/AU2007308415B2/en active Active
- 2007-10-23 PT PT07819260T patent/PT1994530E/pt unknown
- 2007-10-23 MY MYPI20083406A patent/MY148715A/en unknown
- 2007-10-23 ES ES09010010T patent/ES2834024T3/es active Active
- 2007-10-23 PT PT211602503T patent/PT3848928T/pt unknown
- 2007-10-23 PL PL07819260T patent/PL1994530T3/pl unknown
- 2007-10-23 JP JP2009533722A patent/JP4936569B2/ja active Active
- 2007-10-23 KR KR1020097008382A patent/KR101056253B1/ko active IP Right Grant
- 2007-10-23 KR KR1020087023021A patent/KR100957711B1/ko active IP Right Grant
- 2007-10-23 RU RU2009119456/09A patent/RU2420815C2/ru active
- 2007-10-23 DK DK07819260T patent/DK1994530T3/da active
- 2007-10-23 RU RU2008137468/09A patent/RU2411645C2/ru active
- 2007-10-23 US US12/293,532 patent/US8438015B2/en active Active
- 2007-10-23 PL PL17169583T patent/PL3288027T3/pl unknown
- 2007-10-23 EP EP21160250.3A patent/EP3848928B1/en active Active
- 2007-10-23 CN CN2007800398996A patent/CN101606194B/zh active Active
- 2007-10-23 PL PL07819259T patent/PL2076901T3/pl unknown
- 2007-10-23 PT PT78192598T patent/PT2076901T/pt unknown
- 2007-10-23 FI FIEP21160250.3T patent/FI3848928T3/fi active
- 2007-10-23 ES ES07819259T patent/ES2631906T3/es active Active
- 2007-10-23 PL PL21160250.3T patent/PL3848928T3/pl unknown
- 2007-10-23 WO PCT/EP2007/009200 patent/WO2008049590A1/en active Application Filing
- 2007-10-23 MY MYPI20091422A patent/MY142520A/en unknown
- 2007-10-23 MX MX2008011898A patent/MX2008011898A/es active IP Right Grant
- 2007-10-23 WO PCT/EP2007/009199 patent/WO2008049589A1/en active Application Filing
- 2007-10-23 HU HUE23157260A patent/HUE064482T2/hu unknown
- 2007-10-23 AT AT07819260T patent/ATE435480T1/de active
- 2007-10-23 CA CA2667505A patent/CA2667505C/en active Active
- 2007-10-23 BR BRPI0709310-1A patent/BRPI0709310B1/pt active IP Right Grant
- 2007-10-23 PT PT171695836T patent/PT3288027T/pt unknown
- 2007-10-23 EP EP09010010.8A patent/EP2109098B1/en active Active
- 2007-10-23 CA CA2645618A patent/CA2645618C/en active Active
- 2007-10-23 EP EP07819260A patent/EP1994530B1/en active Active
- 2007-10-23 EP EP07819259.8A patent/EP2076901B8/en active Active
- 2007-10-23 DE DE602007001460T patent/DE602007001460D1/de active Active
- 2007-10-23 EP EP23210959.5A patent/EP4325724A3/en active Pending
- 2007-10-23 ES ES21160250T patent/ES2947516T3/es active Active
- 2007-10-25 TW TW096140030A patent/TWI355649B/zh active
- 2007-10-25 TW TW096140028A patent/TWI357065B/zh active
- 2007-10-25 AR ARP070104739A patent/AR063400A1/es active IP Right Grant
- 2007-10-25 AR ARP070104728A patent/AR063394A1/es active IP Right Grant
-
2008
- 2008-08-31 IL IL193786A patent/IL193786A/en active IP Right Grant
- 2008-09-19 NO NO20084012A patent/NO341567B1/no unknown
- 2008-11-27 HK HK08112967.6A patent/HK1119824A1/xx unknown
- 2008-12-04 ZA ZA200810308A patent/ZA200810308B/xx unknown
-
2009
- 2009-03-30 ZA ZA200902199A patent/ZA200902199B/xx unknown
- 2009-04-05 IL IL197976A patent/IL197976A/en active IP Right Grant
- 2009-05-19 NO NO20091951A patent/NO341610B1/no unknown
-
2013
- 2013-01-15 US US13/742,246 patent/US8775193B2/en active Active
-
2017
- 2017-03-23 NO NO20170452A patent/NO342691B1/no unknown
-
2018
- 2018-08-10 HK HK18110291.5A patent/HK1251073A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10770084B2 (en) | 2015-09-25 | 2020-09-08 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder, decoder and methods for signal-adaptive switching of the overlap ratio in audio transform coding |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2328187T3 (es) | Aparato y metodo para generar valores de subbanda de audio y aparato ymetodo para generar muestras de audio de dominio de tiempo. | |
ES2374014T3 (es) | Banco de filtros de análisis, banco de filtros de síntesis, codificador, descodificador, mezclador y sistema de conferencia. | |
ES2278338T3 (es) | Dispositivo y procedimiento para procesar una señal. |