ES2896016T3 - Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales - Google Patents

Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales Download PDF

Info

Publication number
ES2896016T3
ES2896016T3 ES13766036T ES13766036T ES2896016T3 ES 2896016 T3 ES2896016 T3 ES 2896016T3 ES 13766036 T ES13766036 T ES 13766036T ES 13766036 T ES13766036 T ES 13766036T ES 2896016 T3 ES2896016 T3 ES 2896016T3
Authority
ES
Spain
Prior art keywords
spectral
coefficients
pattern
spectrum
value
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
Application number
ES13766036T
Other languages
English (en)
Inventor
Sascha Disch
Benjamin Schubert
Ralf Geiger
Bernd Edler
Martin Dietz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Application granted granted Critical
Publication of ES2896016T3 publication Critical patent/ES2896016T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech 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 orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Un aparato para generar una señal de salida de audio basado en un espectro de la señal de audio codificada, en el que el aparato comprende: una unidad de procesamiento (115) para procesar el espectro de la señal de audio codificada para obtener un espectro de la señal de audio decodificada que comprende una pluralidad de coeficientes espectrales, en el que cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro de la señal de audio codificada y un valor espectral, en el que los coeficientes espectrales están ordenados secuencialmente según sus ubicaciones espectrales dentro del espectro de la señal de audio codificada de tal manera que los coeficientes espectrales forman una secuencia de coeficientes espectrales, un determinador de pseudo-coeficientes (125) para determinar uno o más pseudo-coeficientes del espectro de la señal de audio decodificada, en el que cada coeficiente determinado del uno o más coeficientes determinados es uno de la pluralidad de coeficientes espectrales que tienen u valor espectral, en el que el determinador de pseudo- coeficientes (120) está configurado para determinar el uno o más coeficientes determinados determinando al menos un coeficiente espectral de la pluralidad de coeficientes espectrales, que tiene un valor espectral que es diferente de un valor predefinido, que tiene un predecesor inmediato cuyo valor espectral es igual al valor predefinido, y que tiene un sucesor inmediato cuyo valor espectral es igual al valor predefinido, una unidad de reemplazo (135) para reemplazar al menos uno de los uno o más coeficientes determinados y al menos uno de un predecesor y un sucesor de cada uno de los al menos uno o más coeficientes determinados, mediante un patrón espectral determinado para obtener un espectro de señal de audio modificado, en el que el patrón espectral determinado comprende al menos dos coeficientes de patrón, en el que cada uno de los al menos dos coeficientes de patrón tiene un valor espectral y una unidad de conversión de tiempo de espectro (145) para convertir el espectro de señal de audio modificado a un dominio de tiempo para obtener la señal de salida de audio.

Description

DESCRIPCIÓN
Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales
[0001] La presente invención se refiere a la codificación, decodificación y procesamiento de señales de audio, y, en particular, con la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales.
[0002] El procesamiento de señales de audio se vuelve cada vez más importante. Los desafíos aumentan en la medida en que se requieren códecs de audio modernos para la percepción con el fin de proporcionar una calidad de audio satisfactoria con tasas de bits cada vez más bajas. Adicionalmente, a menudo la latencia permitida también es muy baja, por ejemplo, para aplicaciones de comunicación bidireccional o juegos distribuidos, etc.
[0003] Los modernos codificadores de audio por transformada que preservan la forma de onda vienen a menudo con mejoras paramétricamente codificadas, tales como sustitución de ruido o extensión del ancho de banda. Además de estas herramientas paramétricas bien conocidas, también puede ser deseable sintetizar tonos sinusoidales en tal decodificador a partir de información paramétrica secundaria. La complejidad computacional siempre es un criterio importante en el desarrollo de códecs dado que una baja complejidad es esencial para una amplia aceptación e implementación de un códec. Por lo tanto, se necesitan formas eficaces para generar estos tonos.
[0004] Por ejemplo, los códecs de audio MPEG-D USAC (MPEG-D = Grupo de Expertos de Imágenes en Movimiento-D; USAC = Codificación Unificada de Voz y Audio) a menudo alternan entre codificación predictiva de dominio de tiempo y codificación de dominio de transformada, no obstante, el contenido musical aún se codifica predominantemente en el dominio de transformada. Con tasas de bits bajas, por ejemplo, < 14 kbits/s, los componentes tonales en artículos musicales a menudo suenan mal cuando se codifican mediante codificadores por transformada, lo que torna aún más desafiante la tarea de codificar audio con la calidad suficiente.
[0005] Adicionalmente, las restricciones en cuanto a bajo retardo generalmente conducen a una respuesta de frecuencia sub-óptima del banco de filtro del codificador por transformada (debido a la forma de ventana de bajo retardo optimizada y/o a la longitud de la transformada) y por lo tanto compromete aún más la calidad de percepción de tales códecs.
[0006] Según el modelo psicoacústico clásico, se definen requisitos previos de transparencia con respecto al ruido de cuantificación. Con altas tasas de bits, esto se relaciona con una distribución óptima de tiempo/frecuencia perceptivamente adaptada del ruido de cuantificación que obedece a los niveles de enmascaramiento auditivo humano. Sin embargo, con tasas de bits bajas no puede alcanzarse la transparencia. Por lo tanto, con tasas de bits bajas puede emplearse una estrategia de reducción de los requisitos de nivel de enmascaramiento.
[0007] Ya se han proporcionado códecs de óptima calidad para contenido musical, en particular, codificadores por transformada sobre la base de la Transformada Discreta del Coseno Modificada (MDCT, por sus siglas en inglés), que cuantifican y transmiten coeficientes espectrales en el dominio de frecuencia. No obstante, con tasas de bits muy bajas, solo se pueden codificar muy pocas líneas espectrales de cada marco de tiempo mediante los bits disponibles para ese marco. En consecuencia, inevitablemente se introducen en la señal codificada artefactos de modulación temporal y los así llamados artefactos ululados.
[0008] Esta clase de artefactos se percibe de forma más notoria en los componentes tonales cuasiestacionarios. Esto ocurre especialmente si, debido a las restricciones de retardo, se debe elegir una forma de ventana de transformada que induce diafonía significativa entre coeficientes espectrales adyacentes (ensanchamiento espectral) debido al bien conocido efecto de pérdida. No obstante, usualmente solo uno o unos pocos de estos coeficientes espectrales adyacentes permanecen con valor distinto de cero después de la cuantificación aproximada mediante el codificador con baja tasa de bits.
[0009] Como se señaló anteriormente, en la técnica conocida, según una estrategia, se utilizan codificadores por transformada. Todos los códecs de audio contemporáneos con alta tasa de compresión que resultan adecuados para codificar contenidos musicales se basan en la codificación por transformada. Los ejemplos más prominentes son la Codificación de Audio Avanzada MPEG2/4 (AAC) y la Codificación Unificada de Voz y Audio MPEG-D (USAC). La USAC tiene un núcleo conmutado que consiste en un módulo de Predicción Lineal Excitado por Código Algebraico (ACELP) más un módulo con Excitación Codificada por Transformada (TCX) (ver [5]) destinados principalmente para codificación de voz y, por otra parte, AAC destinado principalmente a codificación de música. Tal como AAC, también TCX es un procedimiento de codificación basado en la transformada. Ante configuraciones con baja tasa de bits, estos esquemas de codificación son propensos a exhibir artefactos ululados, especialmente si los esquemas subyacentes de codificación están basados en la Transformada Discreta del Coseno Modificada (MDCT) (véase [1]).
[0010] Para la reproducción de música, los codificadores por transformada son la técnica preferida para la compresión de datos de audio. No obstante, con tasas de bits bajas, los codificadores por transformada tradicionales exhiben fuertes artefactos ululados y disonancias. La mayoría de los artefactos se origina en componentes del espectro tonal codificados de manera muy diseminada. Esto ocurre especialmente si están espectralmente borrosos por una función de transferencia espectral sub-óptima (efecto de pérdida) diseñada principalmente para ajustarse a estrictas restricciones de retardo.
[0011] Según otra estrategia de la técnica anterior, los esquemas de codificación son totalmente paramétricos para componentes transitorios, sinusoides y ruidos. En particular, se han estandarizado códecs de audio totalmente paramétricos para tasas de bits medianas y bajas, las más prominentes son MPEG-4 Parte 3, Líneas Individuales y Armónicas más Ruido (HILN) Subparte 7 (véase [2]) y Mp Eg -4 Parte 3, Codificación Sinusoidal Subparte 8 (SSC) (véase [3]). Los codificadores paramétricos, no obstante, se ven afectados por un sonido artificial desagradable y, con la tasa de bits aumentada, no escalan bien hacia la transparencia perceptiva.
[0012] Un procedimiento adicional proporciona una forma de onda híbrida y codificación paramétrica. En [4], se proporciona un híbrido de codificación de forma de onda basado en transformada y MPEG 4-SSC (solo la parte sinusoidal). En un procedimiento iterativo, se extraen y sustraen las sinusoides de la señal para formar una señal residual que se va a codificar mediante técnicas de codificación por transformada. Las sinusoides extraídas se codifican mediante un conjunto de parámetros y se transmiten junto con la residual. En [6], se proporciona un procedimiento de codificación híbrida que codifica sinusoides y residual por separado. En [7], en el así denominado códec por Transformada Solapada con Energía Restringida (CELT,)/página Web fantasma, se describe la idea de utilizar un banco de osciladores para codificación híbrida. No obstante, generar tonos artificiales mediante un banco de osciladores que se ejecuta en paralelo con el decodificador y cuya salida se mezcla con la salida del banco de filtros de síntesis del decodificador en el dominio de tiempo, significa una enorme carga computacional, dado que tienen que computarse muchos osciladores en paralelo a una alta tasa de muestreo. La complejidad computacional es siempre un criterio importante en el desarrollo e implementación de códecs, por lo cual se necesitan maneras más eficaces para generar estos tonos.
[0013] Con tasas de bits medianas o elevadas, los codificadores por transformada son adecuados para codificar música debido a su sonido natural. Aquí, los requisitos de transparencia del modelo psicoacústico subyacente se satisfacen plenamente o casi plenamente. Sin embargo, con tasas de bits bajas, los codificadores tienen que violar seriamente los requisitos del modelo psicoacústico y en tal situación los codificadores por transformada son propensos a presentar artefactos ululados, desiguales y de ruido musical.
[0014] Aunque los códecs de audio totalmente paramétricos son los más adecuados para tasas de bits bajas, se sabe, sin embargo, que suenan desagradablemente artificiales. Además, estos códecs no escalan hacia la transparencia perceptiva sin transiciones, dado que no es factible el refinamiento gradual del modelo paramétrico más bien aproximado.
[0015] La codificación híbrida de forma de onda y paramétrica podría potencialmente superar los límites de los procedimientos individuales y potencialmente beneficiarse de las propiedades ortogonales recíprocas de ambas técnicas. No obstante, en el estado actual de la tecnología de última generación, esto se ve impedido por la falta de interacción entre la parte de codificación por transformada y la parte paramétrica del códec híbrido. Los problemas se relacionan con la división de la señal entre la parte paramétrica y la parte de códec por transformada, la dirección de presupuesto de bits entre la parte paramétrica y transformada, las técnicas de señalización de parámetros y fusión sin interrupciones de la salida paramétrica y de códec por transformada.
[0016] Las publicaciones previas adicionales en la materia se relacionan con la síntesis de tonos sinusoidales directamente en el dominio de tiempo, o tonos constantes definidos por tramos en el dominio de frecuencia de DFT [13], y con la optimización de SNR de patrones truncados en el dominio de DFT [12]. Ya se ha descrito la inserción de tonos de frecuencia constante definidos en tramos sobre la base de los espectros de MDCT en un entorno de códec perceptivo [10] o en un escenario de extensión de ancho de banda [11]. Sin embargo, aparentemente no se ha proporcionado todavía la generación eficaz de barridos y su enlace con pistas continuas en el dominio de MDCT como tampoco la definición de restricciones prácticas en los niveles disponibles de libertad en el espacio paramétrico.
[0017] El documento EP 0713295 A1 describe un procedimiento de codificación de información y un aparato para la información de codificación, en el que las señales de entrada se convierten en componentes de frecuencia, los componentes de frecuencia se separan en las primeras señales compuestas de componentes tonales y segundas señales compuestas de otros componentes. Las primeras y segundas señales se codifican respectivamente y se genera una cadena de código que se va a transmitir o grabar. Por ejemplo, solo se codifican las primeras señales, y se incluye una subcadena de información generada para, por ejemplo, cada información de precisión de cuantificación que tiene un valor común y un parámetro relacionado con la codificación de las primeras señales se incluye en la cadena de código, usando al menos, por ejemplo, el número de componentes del espectro que constituyen los componentes tonales que es el parámetro relacionado con la separación o, por ejemplo, la información de precisión de cuantificación que es el parámetro relacionado con la codificación de las primeras señales como parámetro de referencia.
[0018] El objeto de la presente invención es proporcionar conceptos mejorados para decodificación de audio híbrida. El objeto de la presente invención se resuelve mediante un aparato según la reivindicación 1, mediante un procedimiento según la reivindicación 14, y mediante un programa informático según la reivindicación 15.
[0019] Debido a que los códecs contemporáneos como AAC o USAC están basados en la representación de audio en el dominio de MDCT, las realizaciones proporcionan conceptos para generar tonos sintéticos al interconectar patrones tonales en el espectro de MDCT en el decodificador. Se demuestra cómo se pueden derivar y adaptar patrones espectrales apropiados a su ubicación objetivo en (y entre) la rejilla de tiempo/frecuencia (t/f) de la MDCT para sintetizar continuamente los tonos sinusoidales de alta calidad que incluyen barridos.
[0020] Los códecs contemporáneos como Codificación de Audio Avanzada (AAC) o Codificación Unificada de Voz y Audio (USAC) se basan en la representación de audio en el dominio de Transformada Discreta del Coseno Modificada (MDCT). Las realizaciones generan tonos sintéticos al interconectar directamente patrones tonales en el espectro de MDCT en el decodificador. Solo por esto, se puede realizar una implementación con complejidad ultra baja.
[0021] En las realizaciones, los patrones apropiados se derivan y se adaptan a sus ubicaciones objetivo en (y entre) la rejilla (t/f) de la MDCT para sintetizar tonos sinusoidales de alta calidad que incluyen barridos.
[0022] Según las realizaciones, se proporciona codificación de audio con bajo retardo y baja tasa de bits. Algunas realizaciones se basan en un novedoso e inventivo concepto denominado ToneFilling (TF). El término ToneFilling denota una técnica de codificación, en la que tonos naturales de otra forma mal codificados se reemplazan por tonos sinusoidales perceptivamente similares pero puros. Por lo cual, se evitan los artefactos de modulación de amplitud a una cierta tasa, dependientes de la posición espectral de la sinusoide con respecto a la ubicación espectral del depósito de MDCT más cercano (conocido como “ululado”).
[0023] En las realizaciones, se promedia el grado de incomodidad de todos los artefactos concebibles. Esto se relaciona con aspectos perceptivos tales como, por ejemplo, tono, armonía, modulación y con artefactos estacionarios. Todos los aspectos se evalúan en un Modelo de Incomodidad de Percepción de Sonido (SPAM).
[0024] Dirigido por tal modelo, ToneFilling proporciona importantes ventajas. El error de tono y modulación que se introduce por el reemplazo de un tono natural con un tono sinusoidal puro, se sopesa contra el impacto del ruido adicional y la pobre estacionalidad (“ululado”) provocado por un tono natural escasamente cuantificado.
[0025] ToneFilling proporciona importantes diferencias a los códecs de sinusoides más ruido. Por ejemplo, TF sustituye tonos por sinusoides y barridos sinusoidales lineales con pendientes predefinidas, en lugar de la sustracción de sinusoides. Tonos perceptivamente similares tienen los mismos Centros de Gravedad (COG, por sus siglas en inglés) locales que el componente original de sonido que se va a sustituir. Según las realizaciones, los tonos originales se borran del espectro de audio (de izquierda a derecha al pie de la función COG). Generalmente, la resolución de frecuencia de la sinusoide utilizada para la sustitución es tan aproximada como es posible para minimizar la información secundaria, mientras que, al mismo tiempo, se satisfacen los requisitos perceptivos para evitar la sensación de desafinación.
[0026] En algunas realizaciones, ToneFilling puede aplicarse por encima de una frecuencia de corte más baja debido a dichos requisitos perceptivos, pero no por debajo de la frecuencia de corte más baja. Cuando se aplica ToneFilling, los tonos se representan mediante líneas pseudo-espectrales dentro de un codificador por transformada. No obstante, en un codificador equipado con ToneFilling, las pseudo-líneas se someten a un procedimiento regular controlado mediante el modelo psicoacústico clásico. Por lo tanto, cuando se aplica ToneFilling, no es necesario realizar restricciones a priori de la parte paramétrica (a una tasa de bits x, y se sustituyen los componentes tonales). Así, se logra una integración estrecha en el códec por transformada.
[0027] En el codificador se puede emplear la funcionalidad ToneFilling, para detectar COG locales (estimados suavizados; medición de picos de calidad), para eliminar componentes tonales, para generar pseudo-líneas sustituidas (por ejemplo, pseudo-coeficientes) que transportan un nivel de información mediante la amplitud de las pseudo-líneas, una información de frecuencia mediante la posición espectral de las pseudo-líneas y una información de frecuencia fina (compensación de medio depósito) mediante el signo de las pseudo-líneas. Los pseudo-coeficientes (pseudolíneas) se manejan con una unidad cuantificadora siguiente del códec tal como cualquier coeficiente espectral ordinario (línea espectral).
[0028] ToneFilling puede emplearse además en el decodificador para detectar líneas espectrales aisladas, donde los pseudo-coeficientes verdaderos (pseudo-líneas) pueden marcarse con un conjunto de banderas (por ejemplo, un campo de bits). El decodificador puede unir información sobre pseudo-líneas para construir pistas sinusoidales. Puede emplearse un esquema de inicio/continuación/final para sintetizar pistas continuas.
[0029] Para decodificar, se pueden marcar pseudo-coeficientes (pseudo-líneas) como tales mediante un conjunto de banderas transmitido dentro de la información secundaria. Se puede señalar una resolución de frecuencia de medio depósito de las pseudo-líneas mediante el signo de pseudo-coeficientes (pseudo-líneas).
[0030] Los conceptos proporcionados se integran correctamente y sin esfuerzo en los esquemas codificadores por transformada existentes, tales como AAC, TCX o configuraciones similares. El mando de la precisión de la cuantificación paramétrica puede realizarse implícitamente mediante el control de tasa existente del códec.
[0031] En algunas realizaciones, el cuantificador existente del códec puede manejar las pseudo-líneas (pseudo-coeficientes) tal como cualquier línea espectral ordinaria; en contraposición con la señalización separada de parámetros sinusoidales.
[0032] En algunas realizaciones, puede emplearse una fase inicial medida opcionalmente de una pista sinusoidal obtenida de la extrapolación de espectros precedentes.
[0033] Según algunas realizaciones, puede emplearse una técnica opcional Cancelación de Alias de Dominio de Tiempo (TDAC) modelando el alias en el inicio/compensación de una pista sinusoidal.
[0034] A continuación se describen con más detalle realizaciones de la presente invención haciendo referencia a las figuras, en las que:
La Figura 1a ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según una realización,
La Figura 1b ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según otra realización,
La Figura 1c ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según una realización adicional,
La Figura 1d ilustra un aparato para generar una pluralidad de patrones espectrales, que no forma parte de la invención,
La Figura 2 ilustra la alineación paramétrica de un patrón de barrido con respecto a un bloque de tiempo de la MDCT, La Figura 3 muestra el procedimiento de aplicación de parches de un patrón tonal, donde (a-b) ilustran la generación del patrón prototípico, donde (c) ilustra el truncamiento del patrón, donde (d) ilustra la adaptación del patrón a la ubicación y fase objetivo y donde (e-f) ilustran la aplicación de parches del patrón,
La Figura 4 ilustra patrones tonales espectrales normalizados: sinusoide en depósito, sinusoide entre depósitos, barrido en depósito, barrido entre depósitos (desde el panel superior hasta el inferior),
La Figura 5 ilustra la relación de señal a ruido (SNR) de un patrón tonal truncado como función de la longitud patrón para una ventana sinusoidal,
La Figura 6a muestra la frecuencia instantánea de un barrido sinusoidal en puntos en el tiempo para superponer bloques,
La Figura 6b ilustra el progreso de una fase para las funciones base DCT y DCT IV,
La Figura 6c ilustra un espectro de energía, un espectro de MDCT sustituido, un espectro de MDCT cuantificado y un espectro de MDCT con patrones según una realización,
La Figura 7 ilustra un aparato para codificar un espectro de entrada de una señal de audio, que no forma parte de la invención,
La Figura 8 ilustra un espectro de entrada de una señal de audio, un espectro de energía correspondiente y un espectro modificado (sustituido) de la señal de audio,
La Figura 9 ilustra otro espectro de energía, otro espectro modificado (sustituido) de la señal de audio, y un espectro cuantificado de la señal de audio, donde el espectro cuantificado de la señal de audio generado en el lado del codificador, puede, en algunas realizaciones, corresponder al espectro decodificado de la señal de audio en el lado de decodificación,
La Figura 10 ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según un ejemplo que no forma parte de la invención,
La Figura 11 ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según otro ejemplo que no forma parte de la invención, y
La Figura 12 muestra dos diagramas que comparan sinusoides originales y sinusoides después de procesarlas mediante una cadena de MDCT / MDCT inversa.
[0035] La Figura 7 ilustra un aparato para codificar un espectro de entrada de una señal de audio que no forma parte de la invención. El aparato para codificar comprende un determinador de extremos 410, un modificador de espectro 420, una unidad de procesamiento 430 y un generador de información secundaria 440. Antes de considerar el aparato de la Figura 7 con mayor detalle, se considerará con mayor detalle el espectro de entrada de la señal de audio que se codifica con el aparato de la Figura 7.
[0036] En principio, cualquier clase de espectro de señal de audio puede codificarse con el aparato de la Figura 7. El espectro de entrada de la señal de audio puede ser, por ejemplo, un espectro de MDCT (Transformada Discreta del Coseno Modificada), un espectro de magnitud de DFT (Transformada Discreta de Fourier) o un espectro de MDST (Transformada Discreta del Seno Modificada).
[0037] La Figura 8 ilustra un ejemplo de un espectro de entrada de la señal de audio 510. En la Figura 8, el espectro de entrada de la señal de audio 510 es un espectro de MDCT.
[0038] El espectro de entrada de la señal de audio comprende una pluralidad de coeficientes espectrales. Cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro de entrada de la señal de audio y un valor espectral.
[0039] Considerando el ejemplo de la Figura 8, donde el espectro de entrada de la señal de audio resulta de una transformada MDCT de la señal de audio, por ejemplo, un banco de filtro que ha transformado la señal de audio para obtener el espectro de entrada de la señal de audio, puede usar, por ejemplo, 1.024 canales. A continuación, se asocia cada uno de los coeficientes espectrales con uno de los 1.024 canales y el número del canal (por ejemplo, un número entre 0 y 1.023) puede considerarse como la ubicación espectral de dichos coeficientes espectrales. En la Figura 8, la abscisa 511 se refiere a la ubicación espectral de los coeficientes espectrales. Para una mejor ilustración, solamente se ilustran los coeficientes con ubicaciones espectrales entre 52 y 148 en la Figura 8.
[0040] En la Figura 8, la ordenada 512 ayuda a determinar el valor espectral de los coeficientes espectrales. En el ejemplo de la Figura 8 que ilustra un espectro de MDCT, allí, los valores espectrales de los coeficientes espectrales del espectro de entrada de la señal de audio, la abscisa 512 se refiere a los valores espectrales de los coeficientes espectrales. Cabe destacar que los coeficientes espectrales de un espectro de entrada de la señal de audio de MDCT pueden tener como valores espectrales números reales tanto positivos como negativos.
[0041] Otros espectros de entrada de la señal de audio, sin embargo, pueden tener solamente coeficientes espectrales con valores espectrales que son positivos o cero. Por ejemplo, el espectro de entrada de la señal de audio puede ser un espectro de magnitud de DFT, con coeficientes espectrales que tienen valores espectrales que representan las magnitudes de los coeficientes resultantes de la Transformada Discreta de Fourier. Esos valores espectrales solo pueden ser positivos o cero.
[0042] En ejemplos adicionales, el espectro de entrada de la señal de audio comprende coeficientes espectrales con valores espectrales que son números complejos. Por ejemplo, un espectro de DFT que indica información de magnitud y fase puede comprender coeficientes espectrales que tienen valores espectrales que son números complejos.
[0043] Como se muestra a modo de ejemplo en la Figura 8, los coeficientes espectrales están ordenados secuencialmente según su ubicación espectral dentro del espectro de entrada de la señal de audio de modo que los coeficientes espectrales forman una secuencia de coeficientes espectrales. Cada uno de los coeficientes espectrales tiene al menos uno entre uno o más predecesores y uno o más sucesores, donde cada predecesor de dicho coeficiente espectral es uno de los coeficientes espectrales que precede a dicho coeficiente espectral dentro de la secuencia. Cada sucesor de dicho coeficiente espectral es uno de los coeficientes espectrales que sucede a dicho coeficiente espectral dentro de la secuencia. Por ejemplo, en la Figura 8, un coeficiente espectral que tiene la ubicación espectral 81, 82 u 83 (y así sucesivamente) es un sucesor para el coeficiente espectral con la ubicación espectral 80. Un coeficiente espectral que tiene la ubicación espectral 79, 78 o 77 (y así sucesivamente) es un predecesor para el coeficiente espectral con la ubicación espectral 80. Para el ejemplo de un espectro de MDCT, la ubicación espectral de un coeficiente espectral puede ser el canal de la transformada MDCT, con el que se relaciona el coeficiente espectral (por ejemplo, un número de canal entre, por ejemplo, 0 y 1.023). De nuevo, cabe destacar que, para fines ilustrativos, el espectro de MDCT 510 de la Figura 8 solamente ilustra coeficientes espectrales con ubicaciones espectrales entre 52 y 148.
[0044] Volviendo a la Figura 7, el determinador de extremos 410 se describe ahora con mayor detalle. El determinador de extremos 410 está configurado para determinar uno o más coeficientes extremos.
[0045] En general, el determinador de extremos 410 examina el espectro de entrada de la señal de audio o un espectro que está relacionado con el espectro de entrada de la señal de audio para hallar coeficientes extremos. El propósito de determinar coeficientes extremos es que, más adelante, una o varias regiones tonales locales se sustituirán en el espectro de señal de audio por pseudo-coeficientes, por ejemplo, por un único pseudo-coeficiente para cada región tonal.
[0046] En general, las áreas de picos en el espectro de energía de la señal de audio, con las que se relaciona el espectro de entrada de la señal de audio, indican regiones tonales. Por lo tanto, se puede preferir identificar las áreas de picos en el espectro de energía de la señal de audio, con las que se relaciona el espectro de entrada de la señal de audio. El determinador de extremos 410 puede, por ejemplo, examinar un espectro de energía, que comprende coeficientes, que pueden denominarse coeficientes de comparación (ya que el determinador de extremos compara por pares sus valores espectrales), de tal forma que cada uno de los coeficientes espectrales del espectro de entrada de la señal de audio tiene un valor de comparación asociado con éste.
[0047] En la Figura 8, se ilustra un espectro de energía 520. El espectro de energía 520 y el espectro de entrada de la señal de audio de MDCT 510 se relacionan con la misma señal de audio. El espectro de energía 520 comprende coeficientes designados como coeficientes de comparación. Cada coeficiente espectral comprende una ubicación espectral que se relaciona con la abscisa 521 y un valor de comparación. Cada coeficiente espectral del espectro de entrada de la señal de audio tiene un coeficiente de comparación asociado con este y así, además tiene el valor de comparación de su coeficiente de comparación asociado con éste. Por ejemplo, el valor de comparación asociado con un valor espectral del espectro de entrada de la señal de audio puede ser el valor de comparación del coeficiente de comparación con la misma ubicación espectral que la del coeficiente espectral considerado del espectro de entrada de la señal de audio. La asociación entre tres de los coeficientes espectrales del espectro de entrada de la señal de audio 510 y tres de los coeficientes de comparación (y de ese modo la asociación con los valores de comparación de estos coeficientes de comparación) del espectro de energía 520 se indica por las líneas punteadas 513, 514, 515, que indican una asociación de los respectivos coeficientes de comparación (o sus valores de comparación) y los respectivos coeficientes espectrales del espectro de entrada de la señal de audio 510.
[0048] El determinador de extremos 410 puede configurarse para determinar uno o más coeficientes extremos, de modo que cada uno de los coeficientes extremos es uno de los coeficientes espectrales cuyo valor de comparación es mayor que el valor de comparación de uno de sus predecesores y el valor de comparación del cual es mayor que el valor de comparación de uno de sus sucesores.
[0049] Por ejemplo, el determinador de extremos 410 puede determinar los valores locales máximos del espectro de energía. En otras palabras, el determinador de extremos 410 puede configurarse para determinar uno o más coeficientes extremos, de modo que cada uno de los coeficientes extremos es uno de los coeficientes espectrales cuyo valor de comparación es mayor que el valor de comparación de su predecesor inmediato y el valor de comparación del cual es mayor que el valor de comparación de su sucesor inmediato. Aquí, el predecesor inmediato de un coeficiente espectral es uno de los coeficientes espectrales que precede inmediatamente a dicho coeficiente espectral en el espectro de energía. El sucesor inmediato de dicho coeficiente espectral es uno de los coeficientes espectrales que sucede inmediatamente a dicho coeficiente espectral en el espectro de energía.
[0050] No obstante, otros ejemplos no requieren que el determinador de extremos 410 determine la totalidad de los máximos locales. Por ejemplo, en algunos ejemplos, el determinador de extremos puede examinar solamente ciertas porciones del espectro de energía, por ejemplo, relacionadas con cierto intervalo de frecuencia, únicamente.
[0051] En otros ejemplos, el determinador de extremos 410 está configurado para determinar únicamente aquellos coeficientes como coeficientes extremos, donde la diferencia entre el valor de comparación del considerado máximo local y el valor de comparación del mínimo local subsiguiente y/o el mínimo local precedente es mayor que un valor de umbral.
[0052] El determinador de extremos 410 puede determinar el extremo o los extremos en un espectro de comparación, donde el valor de comparación de un coeficiente del espectro de comparación se asigna a cada uno de los coeficientes de MDCT del espectro de MDCT. No obstante, el espectro de comparación puede tener una resolución espectral más elevada que el espectro de entrada de la señal de audio. Por ejemplo, el espectro de comparación puede ser un espectro de DFT que tiene dos veces la resolución espectral del espectro de entrada de la señal de audio de MDCT. Así, solamente cada segundo valor espectral del espectro de DFT se asigna a continuación a un valor espectral del espectro de MDCT. No obstante, pueden tomarse en consideración los otros coeficientes del espectro de comparación cuando se determina el extremo o los extremos del espectro de comparación. Así, puede determinarse un coeficiente del espectro de comparación como un extremo que no se asigna a un coeficiente espectral del espectro de entrada de la señal de audio, pero que tiene un predecesor inmediato y un sucesor inmediato, que se asignan a un coeficiente espectral del espectro de entrada de la señal de audio y al sucesor inmediato de ese coeficiente espectral del espectro de entrada de la señal de audio, respectivamente. Por lo tanto, puede considerarse que dicho extremo del espectro de comparación (por ejemplo del espectro de DFT de alta resolución) se asigna a una ubicación espectral dentro del espectro de entrada de la señal de audio (MDCT) que está ubicado entre dicho coeficiente espectral del espectro de entrada de la señal de audio (MDCT) y dicho sucesor inmediato de dicho coeficiente espectral del espectro de entrada de la señal de audio (MDCT). Dicha situación puede codificarse mediante la elección de un valor de signo apropiado del pseudo-coeficiente como se explica más adelante. De esta forma, se logra la resolución sub-depósito.
[0053] Cabe destacar que en algunos ejemplos, un coeficiente extremo no tiene que reunir los requisitos para que su valor de comparación sea mayor que el valor de comparación de su inmediato predecesor y que el valor de su inmediato sucesor. En tales ejemplos, en cambio, podría resultar suficiente que el valor de comparación del coeficiente extremo sea mayor que uno de sus predecesores y uno de sus sucesores. Considérese, por ejemplo, el caso en que:
Tabla 1
Figure imgf000007_0001
[0054] En la situación descrita en la Tabla 1, el determinador de extremos 410 puede considerar razonablemente al coeficiente espectral en la ubicación espectral 214 como un coeficiente extremo. El valor de comparación del coeficiente espectral 214 no es mayor que el de su predecesor inmediato 213 (0,83 < 0,84) ni mayor que el de su sucesor inmediato 215 (0,83 < 0,85), pero es (significativamente) mayor que el valor de comparación de otro de sus predecesores, el predecesor 212 (0,83 > 0,02), y es (significativamente) mayor que el valor de comparación de otro de sus sucesores, el sucesor 216 (0,83 > 0,01). Asimismo, parece razonable considerar el coeficiente espectral 214 como el extremo de esta “área de picos”, ya que el coeficiente espectral está ubicado en el medio de los tres coeficientes 213, 214, 125 que tienen valores de comparación relativamente grandes en comparación con los valores de comparación de los coeficientes 212 y 216.
[0055] Por ejemplo, el determinador de extremos 410 puede estar configurado para determinar a partir de algunos o todos los coeficientes de comparación, si el valor de comparación de dicho coeficiente de comparación es mayor que al menos uno de los valores de comparación de los tres predecesores que están más próximos a la ubicación espectral de dicho coeficiente de comparación. Y/o, el determinador de extremos 410 puede estar configurado para determinar a partir de algunos o todos los coeficientes de comparación, si el valor de comparación de dicho coeficiente de comparación es mayor que al menos uno de los valores de comparación de los tres sucesores que están más próximos a la ubicación espectral de dicho coeficiente de comparación. El determinador de extremos 410 puede decidir entonces si selecciona dicho coeficiente de comparación según el resultado de dichas determinaciones.
[0056] En algunos ejemplos, el valor de comparación de cada coeficiente espectral es un valor cuadrado de un coeficiente adicional de un espectro adicional (un espectro de comparación) que resulta de una transformación preservadora de energía de la señal de audio.
[0057] En ejemplos adicionales, el valor de comparación de cada coeficiente espectral es un valor de amplitud de un coeficiente adicional de un espectro adicional que resulta de una transformación preservadora de energía de la señal de audio.
[0058] Según un ejemplo, el espectro adicional es un espectro de la T ransformada Discreta de Fourier y donde la transformación que preserva la energía es una Transformada Discreta de Fourier.
[0059] Según un ejemplo adicional, el espectro adicional es un espectro de la Transformada Discreta del Coseno Modificada Compleja (CMDCT), y donde la transformación que preserva la energía es una CMDCT.
[0060] En otro ejemplo, es posible que el determinador de extremos 410 no examine un espectro de comparación, sino que, en cambio, pueda examinar el propio espectro de entrada de la señal de audio. Esto puede ser razonable, por ejemplo, cuando el propio espectro de entrada de la señal de audio resulta de una transformación que preserva energía, por ejemplo, cuando el espectro de entrada de la señal de audio es un espectro de magnitud de la Transformada Discreta de Fourier.
[0061] Por ejemplo, el determinador de extremos 410 puede configurarse para determinar uno o más coeficientes extremos, de modo que cada uno de los coeficientes extremos sea uno de los coeficientes espectrales cuyo valor espectral es mayor que el valor espectral de uno de sus predecesores y cuyo valor espectral es mayor que el valor espectral de uno de sus sucesores.
[0062] En un ejemplo, el determinador de extremos 410 puede configurarse para determinar uno o más coeficientes extremos, de modo que cada uno de los coeficientes extremos sea uno de los coeficientes espectrales cuyo valor espectral es mayor que el valor espectral de su predecesor inmediato y cuyo valor espectral es mayor que el valor espectral de su sucesor inmediato.
[0063] Además, el aparato comprende un modificador de espectro 420 para modificar el espectro de entrada de la señal de audio para obtener un espectro de señal de audio modificado al establecer el valor espectral del predecesor o del sucesor de al menos uno de los coeficientes extremos en un valor predefinido. El modificador de espectro 420 está configurado para no establecer los valores espectrales de uno o más coeficientes extremos en el valor predefinido, o está configurado para reemplazar al menos uno de uno o más coeficientes extremos por un pseudo-coeficiente, donde el valor espectral del pseudo-coeficiente es diferente del valor predefinido.
[0064] Preferentemente, el valor predefinido puede ser cero. Por ejemplo, en el espectro modificado (sustituido) de la señal de audio 530 de la Figura 8, los valores espectrales de muchos de los coeficientes espectrales se establecieron en cero mediante el modificador de espectro 420.
[0065] En otras palabras, para obtener el espectro modificado de la señal de audio, el modificador de espectro 420 establecerá al menos el valor espectral de un predecesor o un sucesor de uno de los coeficientes extremos en un valor predefinido. El valor predefinido puede ser, por ejemplo, cero. El valor de comparación de dicho predecesor o sucesor es menor que el valor de comparación de dicho valor extremo.
[0066] Asimismo, con respecto a los propios coeficientes extremos, el modificador de espectro 420 procederá del siguiente modo:
- El modificador de espectro 420 no establecerá los coeficientes extremos en un valor predefinido, o:
- El modificador de espectro 420 reemplazará al menos uno de los coeficientes extremos por un pseudo-coeficiente, donde el valor espectral del pseudo-coeficiente es diferente del valor predefinido. Esto significa que el valor espectral de al menos uno de los coeficientes extremos se establece en un valor predefinido, y el valor espectral de otro de los coeficientes espectrales se establece en un valor que es diferente del valor predefinido. Tal valor puede derivarse, por ejemplo, del valor espectral de dicho coeficiente extremo, de uno de los predecesores de dicho coeficiente extremo o de uno de los sucesores de dicho coeficiente extremo. O, tal valor puede derivarse, por ejemplo, del valor de comparación de dicho coeficiente extremo, de uno de los predecesores de dicho coeficiente extremo o de uno de los sucesores de dicho coeficiente extremo.
[0067] El modificador de espectro 420 puede, por ejemplo, configurarse para reemplazar uno de los coeficientes extremos por un pseudo-coeficiente que tenga un valor espectral derivado del valor espectral o del valor de comparación de dicho coeficiente extremo, del valor espectral o del valor de comparación de uno de los predecesores de dicho coeficiente extremo o del valor espectral o del valor de comparación de uno de los sucesores de dicho coeficiente extremo.
[0068] Asimismo, el aparato comprende una unidad de procesamiento 430 para procesar el espectro modificado de la señal de audio para obtener un espectro codificado de la señal de audio.
[0069] Por ejemplo, la unidad de procesamiento 430 puede ser cualquier clase de codificador de audio, por ejemplo, un codificador de audio MP3 (MPEG-1 Capa de Audio III o MPEG-2 Capa de Audio III; MPEG = Grupo de Expertos de Imágenes en Movimiento), un codificador de audio para WMA (Windows Media Audio), un codificador de audio para archivos WAVE o un codificador de audio MPEG-2/4 AAC (Codificación de Audio Avanzada) o un codificador MPEG-D USAC (Codificación Unificada de Voz y Audio).
[0070] La unidad de procesamiento 430 puede ser, por ejemplo, un codificador de audio como el descrito en [8] (ISO/IEC 14496-3:2005 - Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio -Subparte 4) o como el descrito en [9] (ISO/IEC 14496-3:2005 -----Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio, Subparte 4). Por ejemplo, la unidad de procesamiento 430 puede comprender un cuantificador, y/o una herramienta para modelado de ruido de tiempo, como se describe, por ejemplo, en [8] y/o la unidad de procesamiento 430 puede comprender una herramienta para sustitución de ruido perceptible, como se describe, por ejemplo, en [8].
[0071] Asimismo, el aparato comprende un generador de información secundaria 440 para generar y transmitir información secundaria. El generador de información secundaria 440 está configurado para ubicar uno o más candidatos a pseudo-coeficientes dentro del espectro modificado de la señal de audio de entrada generado por el modificador de espectro 420. Además, el generador de información secundaria 440 está configurado para seleccionar al menos uno de los candidatos a pseudo-coeficientes como candidatos seleccionados. Asimismo, el generador de información secundaria 440 está configurado para generar información secundaria de modo que la información secundaria indica los candidatos seleccionados como pseudo-coeficientes.
[0072] En el ejemplo que se muestra en la Figura 7, el generador de información secundaria 440 está configurado para recibir las posiciones de los pseudo-coeficientes (por ejemplo, la posición de cada uno de los pseudocoeficientes) mediante el modificador de espectro 420. Además, en la realización de la Figura 7, el generador de información secundaria 440 está configurado para recibir las posiciones de los candidatos a pseudo-coeficientes (por ejemplo, la posición de cada uno de los candidatos a pseudo-coeficientes).
[0073] Por ejemplo, en algunos ejemplos, la unidad de procesamiento 430 puede configurarse para determinar los candidatos a pseudo-coeficientes sobre la base de un espectro cuantificado de la señal de audio. En una realización, la unidad de procesamiento 430 puede haber generado el espectro cuantificado de la señal de audio mediante la cuantificación del espectro modificado de la señal de audio. Por ejemplo, la unidad de procesamiento 430 puede determinar al menos un coeficiente espectral del espectro cuantificado de la señal de audio como candidato a pseudo-coeficiente, el que tiene un predecesor inmediato, cuyo valor espectral es igual al valor predefinido (por ejemplo, igual a 0), y el que tiene un sucesor inmediato, cuyo valor espectral es igual al valor predefinido.
[0074] Alternativamente, en otros ejemplos, la unidad de procesamiento 430 puede pasar el espectro cuantificado de la señal de audio al generador de información secundaria 440 y el propio generador de información secundaria 440 puede determinar los candidatos a pseudo-coeficientes sobre la base del espectro cuantificado de la señal de audio. Según otros ejemplos, los candidatos a pseudo-coeficientes se determinan de una forma alternativa sobre la base del espectro modificado de la señal de audio.
[0075] La información secundaria generada por el generador de información secundaria puede tener un tamaño estático, predeterminado, o su tamaño se puede estimar iterativamente en una forma adaptable a la señal. En este caso, el tamaño real de la información secundaria se transmite también al decodificador. Así, de acuerdo con una realización, el generador de información secundaria 440 está configurado para transmitir el tamaño de la información secundaria.
[0076] Según un ejemplo, el determinador de extremos 410 está configurado para examinar los coeficientes de comparación, por ejemplo, los coeficientes del espectro de energía 520 en la Figura 8, y está configurado para determinar uno o más coeficientes mínimos, de modo que cada uno de los coeficientes mínimos es uno de los coeficientes espectrales cuyo valor de comparación es menor que el valor de comparación de uno de sus predecesores y el valor de comparación del cual es menor que el valor de comparación de uno de sus sucesores. En tal ejemplo, el modificador de espectro 420 puede estar configurado para determinar un valor de representación sobre la base de los valores de comparación de uno o más de los coeficientes extremos y de uno o más de los coeficientes mínimos, de modo que el valor de representación es diferente del valor predefinido. Asimismo, el modificador de espectro 420 puede estar configurado para cambiar el valor espectral de uno de los coeficientes del espectro de entrada de la señal de audio al establecer dicho valor espectral en el valor de representación.
[0077] En un ejemplo específico, el determinador de extremos está configurado para examinar los coeficientes de comparación, por ejemplo, los coeficientes del espectro de energía 520 en la Figura 8, y está configurado para determinar uno o más coeficientes mínimos, de modo que cada uno de los coeficientes mínimos es uno de los coeficientes espectrales cuyo valor de comparación es menor que el valor de comparación de su predecesor inmediato y cuyo valor de comparación es menor que el valor de comparación de su sucesor inmediato.
[0078] Alternativamente, el determinador de extremos 410 está configurado para examinar el propio espectro de entrada de la señal de audio 510 y está configurado para determinar uno o más coeficientes mínimos, de modo que cada uno de uno o más coeficientes mínimos es uno de los coeficientes espectrales cuyo valor espectral es menor que el valor espectral de uno de sus predecesores y cuyo valor espectral es menor que el valor espectral de uno de sus sucesores. En tal realización, el modificador de espectro 420 puede estar configurado para determinar un valor de representación sobre la base de los valores espectrales de uno o más de los coeficientes extremos y de uno o más de los coeficientes mínimos, de modo que el valor de representación es diferente del valor predefinido. Asimismo, el modificador de espectro 420 puede estar configurado para cambiar el valor espectral de uno de los coeficientes del espectro de entrada de la señal de audio al establecer dicho valor espectral en el valor de representación.
[0079] En un ejemplo específico, el determinador de extremos 410 está configurado para examinar el propio espectro de entrada de la señal de audio 510 y está configurado para determinar uno o más coeficientes mínimos, de modo que cada uno de uno o más coeficientes mínimos es uno de los coeficientes espectrales cuyo valor espectral es menor que el valor espectral de su predecesor inmediato y cuyo valor espectral es menor que el valor espectral de su sucesor inmediato.
[0080] En ambos ejemplos, el modificador de espectro 420 toma en cuenta el coeficiente extremo y uno o más de los coeficientes mínimos, en particular sus valores de comparación o sus valores espectrales asociados, para determinar el valor de representación. A continuación, el valor espectral de uno de los coeficientes espectrales del espectro de entrada de la señal de audio se establece en el valor de representación. Para, el coeficiente espectral, cuyo valor espectral se establece en el valor de representación puede ser, por ejemplo, el propio coeficiente extremo, o el coeficiente espectral, cuyo valor espectral se establece en el valor de representación, puede ser el pseudocoeficiente que reemplaza al coeficiente extremo.
[0081] En un ejemplo, el determinador de extremos 410 puede estar configurado para determinar una o varias sub-secuencias de la secuencia de valores espectrales, de modo que cada una de las sub-secuencias comprende una pluralidad de coeficientes espectrales subsiguientes del espectro de entrada de la señal de audio. Los coeficientes espectrales subsiguientes se ordenan secuencialmente dentro de la sub-secuencia según sus posiciones espectrales. Cada una de las sub-secuencias tiene un primer elemento que es el primero en dicha sub-secuencia secuencialmente ordenada y un último elemento que es el último en dicha sub-secuencia secuencialmente ordenada.
[0082] En un ejemplo específico, cada una de las sub-secuencias puede comprender, por ejemplo, exactamente dos de los coeficientes mínimos y exactamente uno de los coeficientes extremos, uno de los coeficientes mínimos es el primer elemento de la sub-secuencia, el otro de los coeficientes mínimos es el último elemento de la sub-secuencia.
[0083] En un ejemplo, el modificador de espectro 420 puede estar configurado para determinar el valor de representación sobre la base de los valores espectrales o los valores de comparación de los coeficientes de una de las sub-secuencias. Por ejemplo, si el determinador de extremos 410 examinó los coeficientes de comparación del espectro de comparación, por ejemplo, del espectro de energía 520, el modificador de espectro 420 puede estar configurado para determinar el valor de representación sobre la base de los valores de comparación de los coeficientes de una de las sub-secuencias. No obstante, si el determinador de extremos 410 examinó los coeficientes espectrales del espectro de la señal de audio de entrada 510, el modificador de espectro 420 puede estar configurado para determinar el valor de representación sobre la base de los valores espectrales de los coeficientes de una de las sub­ secuencias.
[0084] El modificador de espectro 420 está configurado para cambiar el valor espectral de uno de los coeficientes de dicha sub-secuencia al establecer dicho valor espectral en el valor de representación.
[0085] La Tabla 2 proporciona un ejemplo con cinco coeficientes espectrales en las ubicaciones espectrales 252 a 258.
Tabla 2
Figure imgf000011_0001
[0086] El determinador de extremos 410 puede determinar que el coeficiente espectral 255 (el coeficiente espectral con la ubicación espectral 255) es un coeficiente extremo, ya que su valor de comparación (0,73) es mayor que el valor de comparación (0,48) de su predecesor 254 (aquí: inmediato), y ya que su valor de comparación (0,73) es mayor que el valor de comparación (0,45) de su sucesor 256 (aquí: inmediato).
[0087] Asimismo, el determinador de extremos 410 puede determinar que el coeficiente espectral 253 es un coeficiente mínimo, ya que su valor de comparación (0,05) es menor que el valor de comparación (0,12) de su predecesor 252 (aquí: inmediato), y ya que su valor de comparación (0,05) es menor que el valor de comparación (0,48) de su sucesor 254 (aquí: inmediato).
[0088] Asimismo, el determinador de extremos 410 puede determinar que el coeficiente espectral 257 es un coeficiente mínimo, ya que su valor de comparación (0,03) es menor que el valor de comparación (0,45) de su predecesor 256 (aquí: inmediato), y ya que su valor de comparación (0,03) es menor que el valor de comparación (0,18) de su sucesor 258 (aquí: inmediato).
[0089] El determinador de extremos 410 puede determinar de este modo una sub-secuencia que comprende los coeficientes espectrales 253 a 257, al determinar que el coeficiente espectral 255 es un coeficiente extremo, al determinar el coeficiente espectral 253 como el coeficiente mínimo que es el coeficiente mínimo precedente más próximo al coeficiente extremo 255, y al determinar el coeficiente espectral 257 como el coeficiente mínimo que es el coeficiente mínimo sucesivo más próximo al coeficiente extremo 255.
[0090] El modificador de espectro 420 puede determinar ahora un valor de representación para la sub­ secuencia 253 - 257 sobre la base de los valores de comparación de todos los coeficientes espectrales 253 - 257.
[0091] Por ejemplo, el modificador de espectro 420 puede estar configurado para sumar los valores de comparación de todos los coeficientes espectrales de la sub-secuencia. (Por ejemplo, para la Tabla 2 entonces, el valor de representación para la sub-secuencia 253 - 257 totaliza: 0,05 0,48 0,73 0,45 0,03 = 1,74).
[0092] O, por ejemplo, el modificador de espectro 420 puede estar configurado para sumar los cuadrados de los valores de comparación de todos los coeficientes espectrales de la sub-secuencia. (Por ejemplo, para la Tabla 2 entonces, el valor de representación para la sub-secuencia 253 - 257 totaliza: (0,05)2 (0,48)2 (0,73)2 (0,45)2 (0,03)2 = 0,9692).
[0093] O, por ejemplo, el modificador de espectro 420 puede estar configurado para extraer la raíz cuadrada de la suma de los cuadrados de los valores de comparación de todos los coeficientes espectrales de la sub-secuencia 253 - 257. (Por ejemplo, para la Tabla 2, el valor de representación es entonces, 0,98448).
[0094] Según algunas realizaciones, el modificador de espectro 420 establecerá el valor espectral del coeficiente extremo (en la Tabla 2, el valor espectral del coeficiente espectral 253) en el valor predefinido.
[0095] Otros ejemplos, no obstante, utilizan un procedimiento basado en el centro de gravedad. La Tabla 3 ilustra una sub-secuencia que comprende los coeficientes espectrales 282 - 288:
Tabla 3
Figure imgf000011_0002
[0096] Aunque el coeficiente extremo está ubicado en la ubicación espectral 285, según el procedimiento del centro de gravedad, el centro de gravedad está ubicado en una ubicación espectral diferente.
[0097] Para determinar la ubicación espectral del centro de gravedad, el determinador de extremos 410 suma las ubicaciones espectrales ponderadas de todos los coeficientes espectrales de la sub-secuencia y divide el resultado por la suma de los valores de comparación de los coeficientes espectrales de la sub-secuencia. Entonces puede utilizarse un redondeo comercial en el resultado de la división para determinar el centro de gravedad. La ubicación espectral ponderada de un coeficiente espectral es el producto de su ubicación espectral y sus valores de comparación.
[0098] Brevemente: el determinador de extremos puede obtener el centro de gravedad así:
1) Determina el producto del valor de comparación y la ubicación espectral de cada coeficiente espectral de la sub­ secuencia.
2) Suma los productos determinados en 1) para obtener un primer total.
3) Suma los valores de comparación de todos los coeficientes espectrales de la sub-secuencia para obtener un segundo total.
4) Divide el primer total por el segundo total para generar un resultado intermedio; y
5) Aplica un redondeo en el resultado intermedio para obtener el centro de gravedad (redondeo al valor más próximo: 8,49 se redondea a 8; 8,5 se redondea a 9)
[0099] Así, para el ejemplo de la Tabla 3, el centro de gravedad se obtiene mediante:
(0,04 • 282 0,10 • 283 0,20 • 284 0,93 • 285 0,92 • 286 0,90 • 287 0,05 • 288) /
/ (0,04 0,10 0,20 0,93 0,92 0,90 0,05) = 897,25 / 3,14 = 285,75 = 286.
[0100] Así, en el ejemplo de la Tabla 3, el determinador de extremos 410 estaría configurado para determinar la ubicación espectral 286 como el centro de gravedad.
[0101] En algunas realizaciones, el determinador de extremos 410 no examina el espectro de comparación completo (por ejemplo, el espectro de energía 520) o no examina el espectro de la señal de audio de entrada completo. En cambio, el determinador de extremos 410 puede examinar solo parcialmente el espectro de comparación del espectro de la señal de audio de entrada.
[0102] La Figura 9 ilustra tal ejemplo. Allí, el espectro de energía 620 (como espectro de comparación) fue analizado por un determinador de extremos 410 comenzando por el coeficiente 55. Los coeficientes en ubicaciones espectrales menores que 55 no se examinaron. Por lo tanto, los coeficientes espectrales en ubicaciones espectrales menores que 55 permanecen sin modificar en el espectro sustituido de MDCT 630. Por el contrario, la Figura 8 ilustra un espectro de MDCT sustituido 530 donde todas las líneas espectrales de MDCT se modificaron mediante el modificador de espectro 420.
[0103] Así, el modificador de espectro 420 puede estar configurado para modificar el espectro de la señal de audio de entrada de modo que los valores espectrales de al menos algunos coeficientes espectrales del espectro de la señal de audio de entrada se dejan sin modificar.
[0104] En algunos ejemplos, el modificador de espectro 420 está configurado para determinar, si una diferencia de valor con uno entre el valor de comparación o el valor espectral de uno de los coeficientes extremos es menor que un valor de umbral. En tales ejemplos, el modificador de espectro 420 está configurado para modificar el espectro de la señal de audio de entrada de modo que los valores espectrales de al menos algunos de los coeficientes espectrales del espectro de la señal de audio de entrada se dejan sin modificar en el espectro modificado de señal de audio, según la diferencia de valor sea menor que el valor de umbral.
[0105] Por ejemplo, en una realización, el modificador de espectro 420 puede estar configurado para no modificar o reemplazar todos, pero en cambio modificar o reemplazar solo algunos de los coeficientes extremos. Por ejemplo, cuando la diferencia entre el valor de comparación del coeficiente extremo (por ejemplo, un máximo local) y el valor de comparación del valor mínimo subsiguiente y/o precedente es menor que un valor de umbral, se puede determinar que el modificador de espectro no modifique estos valores espectrales (ni, por ejemplo, los valores de coeficientes espectrales intermedios), pero que en cambio deje estos valores espectrales sin modificar en el espectro de MDCT modificado (sustituido) 630. En el espectro de MDCT modificado 630 de la Figura 9, los valores espectrales de los coeficientes espectrales 100 a 112 y los valores espectrales de los coeficientes espectrales 124 a 136 se dejaron sin modificar por el modificador espectral en el espectro sin modificar (sustituido) 630.
[0106] La unidad de procesamiento puede estar configurada además para cuantificar los coeficientes del espectro de MDCT modificado (sustituido) 630 para obtener un espectro de MDCt cuantificado 635.
[0107] Según un ejemplo, el modificador de espectro 420 puede estar configurado para recibir información de sintonización fina. Los valores espectrales de los coeficientes espectrales del espectro de entrada de la señal de audio pueden ser valores con signo, cada uno de los cuales comprende un componente de signo. El modificador de espectro puede estar configurado para establecer el componente de signo de uno del uno o más coeficientes extremos o del pseudo-coeficiente en un primer valor de signo, cuando la información de sintonización fina está en un primer estado de sintonización fina. Y el modificador de espectro puede estar configurado para establecer el componente de signo del valor espectral de uno de uno o más coeficientes extremos o del pseudo-coeficiente en un segundo valor de signo diferente, cuando la información de sintonización fina está en un segundo estado de sintonización fina diferente.
[0108] Por ejemplo, en la Tabla 4,
Tabla 4
Figure imgf000013_0001
Los valores espectrales de los coeficientes espectrales indican que el coeficiente espectral 291 está en un primer estado de sintonización fina, el coeficiente espectral 301 está en un segundo estado de sintonización fina, el coeficiente espectral 321 está en un primer estado de sintonización fina, etc.
[0109] Por ejemplo, volviendo a la determinación del centro de gravedad explicada anteriormente, si el centro de gravedad está (por ejemplo, aproximadamente en el medio) entre dos ubicaciones espectrales, el modificador espectral puede establecer el signo de modo que se indica el segundo estado de sintonización fina.
[0110] Según un ejemplo, la unidad de procesamiento 430 puede estar configurada para cuantificar el espectro modificado de la señal de audio para obtener un espectro cuantificado de la señal de audio. La unidad de procesamiento 430 puede estar configurada además para procesar el espectro cuantificado de la señal de audio para obtener un espectro codificado de la señal de audio.
[0111] Asimismo, la unidad de procesamiento 430 puede estar configurada además para generar información secundaria que indique solamente para aquellos coeficientes espectrales del espectro cuantificado de la señal de audio que tienen un predecesor inmediato cuyo valor espectral es igual que el valor predefinido y un sucesor inmediato, cuyo valor espectral es igual que el valor predefinido, si dicho coeficiente es uno de los coeficientes extremos.
[0112] Tal información puede suministrarla el determinador de extremos 410 a la unidad de procesamiento 430.
[0113] Por ejemplo, tal información puede ser almacenada por la unidad de procesamiento 430 en un campo de bits, indicando para cada uno de los coeficientes espectrales del espectro cuantificado de la señal de audio que tienen un predecesor inmediato cuyo valor espectral es igual que el valor predefinido y un sucesor inmediato, cuyo valor espectral es igual que el valor predefinido, si dicho coeficiente es uno de los coeficientes extremos (por ejemplo, mediante un valor de bit 1) o si dicho coeficiente no es uno de los coeficientes extremos (por ejemplo, mediante un valor de bit 0). En una realización, un decodificador puede utilizar posteriormente esta información para restaurar el espectro de entrada de la señal de audio. El campo de bits puede tener una longitud fija o una longitud seleccionada de forma adaptada a la señal. En el último caso, la longitud del campo de bits podría transmitirse adicionalmente al decodificador.
[0114] Por ejemplo, un campo de bits [000111111] generado por la unidad de procesamiento 430 podría indicar, que los primeros tres coeficientes “autónomos” (su valor espectral no es igual que el valor predefinido, pero los valores espectrales de su predecesor y de su sucesor son iguales que el valor predefinido) que aparecen en el espectro de la señal de audio (ordenado secuencialmente) (cuantificado) no son coeficientes extremos, pero los siguientes seis coeficientes “autónomos” son coeficientes extremos. Este campo de bits describe la situación que puede observarse en el espectro de MDCT cuantificado 635 en la Figura 9, donde los primeros tres coeficientes “autónomos” 5, 8, 25 no son coeficientes extremos, pero donde los seis coeficientes “autónomos” siguientes 59, 71, 83, 94, 116, 141 son coeficientes extremos.
[0115] De nuevo, el predecesor inmediato de dicho coeficiente espectral es otro coeficiente espectral que precede inmediatamente dicho coeficiente espectral dentro del espectro de señal de audio cuantificado, y el sucesor inmediato de dicho coeficiente espectral es otro coeficiente espectral que inmediatamente sucede a dicho coeficiente espectral dentro del espectro de señal de audio cuantificado.
[0116] Los conceptos propuestos mejoran la calidad perceptiva de los códecs por transformada basados en bloques convencionales con tasas de bits bajas. Se propone sustituir regiones tonales locales en espectros de señales de audio, expandiendo los mínimos locales vecinos, abarcando un máximo local, mediante pseudo-líneas (también denominadas pseudo-coeficientes) que tienen, en algunas realizaciones, un nivel o energía similar a dichas regiones que se van a sustituir.
[0117] Con tasas de bits bajas, las realizaciones proporcionan conceptos sobre cómo integrar estrechamente la codificación de forma de onda y la codificación paramétrica para obtener una calidad perceptiva mejorada y un escalamiento mejorado de la calidad perceptiva versus la tasa de bits sobre las técnicas individuales.
[0118] En algunos ejemplos, las áreas de picos de los espectros (expandiendo los mínimos locales vecinos, abarcando un máximo local) pueden sustituirse completamente mediante una única sinusoide para cada uno; en contraposición con los codificadores sinusoidales que sustraen iterativamente sinusoides sintetizadas del residual. Las áreas de picos se extraen sobre una representación espectral ligeramente blanqueada y suavizada y se seleccionan con respecto a ciertas características (altura del pico, forma del pico).
[0119] Según algunos ejemplos, estas sinusoides de sustitución pueden representarse como pseudo-líneas (pseudo-coeficientes) dentro del espectro que se va a codificar y reflejan la energía o la amplitud total de la sinusoide (en contraposición, por ejemplo, con líneas MDCT regulares que corresponden a la proyección real del valor verdadero).
[0120] Según algunos ejemplos, las pseudo-líneas (pseudo-coeficientes) pueden marcarse como tales mediante un conjunto de banderas de información secundaria.
[0121] En algunos ejemplos, la elección del signo de las pseudo-líneas puede denotar resolución en semisubbanda de frecuencia.
[0122] Según algunos ejemplos, puede resultar aconsejable una baja frecuencia de corte para la sustitución sinusoidal debido a la limitada resolución de frecuencia (por ejemplo, semi-subbanda).
[0123] En lo sucesivo, se proporcionan conceptos para generar una señal de salida de audio sobre la base de una señal de audio codificada. Estos conceptos implementan una síntesis eficaz de sinusoides y barridos en el dominio de MDCT.
[0124] La Figura 1a ilustra un aparato para generar una señal de salida de audio basada en un espectro de señal de audio codificado según una realización.
[0125] El aparato comprende una unidad de procesamiento 115 para procesar el espectro codificado de la señal de audio para obtener un espectro de la señal de audio decodificado que comprende una pluralidad de coeficientes espectrales, donde cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro codificado de la señal de audio y un valor espectral, donde los coeficientes espectrales están ordenados secuencialmente según sus ubicaciones espectrales dentro del espectro codificado de la señal de audio de tal manera que los coeficientes espectrales forman una secuencia de coeficientes espectrales.
[0126] Asimismo, el aparato comprende un determinador de pseudo-coeficientes 125 para determinar uno o más pseudo-coeficientes del espectro decodificado de la señal de audio, donde cada uno de los pseudo-coeficientes es uno de los coeficientes espectrales (como cada uno de los pseudo-coeficientes es uno de los coeficientes espectrales, cada uno de los pseudo-coeficientes tiene una ubicación espectral y un valor espectral).
[0127] Además, el aparato comprende una unidad de reemplazo 135 para reemplazar al menos uno o más pseudo-coeficientes por un patrón espectral determinado para obtener un espectro modificado de la señal de audio, donde el patrón espectral determinado comprende al menos dos coeficientes de patrón, donde cada uno de al menos dos coeficientes de patrón tiene un valor espectral.
[0128] Por ejemplo, en algunas realizaciones, el reemplazo de la unidad 135 puede obtener un patrón espectral como un patrón espectral obtenido de una unidad de almacenamiento, donde la unidad de almacenamiento está comprendida por el aparato, y donde la unidad de almacenamiento comprende una base de datos o una memoria. En otras realizaciones, la unidad de reemplazo 135 puede obtener un patrón espectral de una unidad remota, por ejemplo, una base de datos remota, por ejemplo, ubicada en un lugar alejado del aparato. En realizaciones adicionales, el patrón se generará analíticamente al vuelo (en el momento en que se ejecute, cuando sea necesario). El patrón espectral obtenido puede emplearse a continuación como el patrón espectral determinado. O, el patrón espectral determinado puede derivarse del patrón espectral obtenido, por ejemplo, al modificar el patrón espectral obtenido.
[0129] Asimismo, el aparato comprende una unidad de conversión de espectro-tiempo 145 para convertir el espectro modificado de la señal de audio al dominio de tiempo para obtener la señal de salida de audio.
[0130] La Figura 1b ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio según otra realización. El aparato de la Figura 1b difiere del aparato de la realización de la Figura 1a en que este además comprende una unidad de almacenamiento 155 que comprende en sí misma una base de datos o una memoria.
[0131] En particular, el aparato de la realización de la Figura 1b comprende además una unidad de almacenamiento 155 que comprende una base de datos o una memoria que tiene almacenada dentro de la base de datos o dentro de la memoria una pluralidad de patrones espectrales almacenados. Cada uno de los patrones espectrales almacenados tiene una propiedad espectral (por ejemplo, frecuencia constante, frecuencia de barrido cada una en una versión ubicada en depósito o entre depósitos - etc.). La unidad de reemplazo 135 está configurada para solicitar uno de los patrones espectrales almacenados como un patrón espectral solicitado a la unidad de almacenamiento 155. La unidad de almacenamiento 155 está configurada para proporcionar dicho patrón espectral solicitado. Asimismo, la unidad de reemplazo 135 está configurada para reemplazar al menos uno o más pseudocoeficientes por el patrón espectral determinado sobre la base del patrón espectral solicitado.
[0132] En realizaciones preferidas, los patrones espectrales almacenados no se almacenaron por frecuencias específicas. Esto exigiría masivas cantidades de memoria. Así, cada patrón (por ejemplo, un patrón constante en depósito, un patrón constante entre depósitos y algunos patrones para varios barridos) se almacena solamente una vez. Este patrón general se solicita entonces desde, por ejemplo, una base de datos, se adapta a la frecuencia objetivo, por ejemplo, a una frecuencia objetivo de 8.200 Hz, se adapta a la fase requerida (por ejemplo, 0 rad) y, a continuación, se interconecta con la ubicación espectral en el objetivo.
[0133] En una realización, la unidad de reemplazo 135 está configurada para solicitar uno de los patrones espectrales almacenados a la unidad de almacenamiento 155 según una primera ubicación espectral derivada, derivada de al menos uno del uno o más pseudo-coeficientes determinados por el determinador de pseudocoeficientes 125. Por ejemplo, la solicitud depende de la naturaleza del patrón (constante, barrido, etc.) y la adaptación del patrón depende de la ubicación espectral y el predecesor dentro de una pista sinusoidal o una fase de inicio determinada de forma adaptada a la señal.
[0134] En una realización, la primera ubicación espectral derivada, derivada de al menos uno del uno o más pseudo-coeficientes puede ser la ubicación espectral de uno de los pseudo-coeficientes.
[0135] En otra realización, uno o más pseudo-coeficientes son valores con signo, cada uno comprende un componente de signo, y la unidad de reemplazo está configurada para determinar la primera ubicación espectral derivada sobre la base de la ubicación espectral de un pseudo-coeficiente entre uno o más pseudo-coeficientes y sobre la base del componente de signo de dicho pseudo-coeficiente, de modo que la primera ubicación espectral derivada es igual que la ubicación espectral de dicho pseudo-coeficiente cuando el componente de signo tiene un primer valor de signo, y de modo que la primera ubicación espectral derivada es igual que una ubicación modificada, la ubicación modificada resultante del cambio de la ubicación espectral de dicho pseudo-coeficiente por un valor predefinido cuando el componente de signo tiene un segundo valor diferente.
[0136] Por ejemplo, una resolución de frecuencia de medio depósito de las pseudo-líneas se puede señalar mediante el signo de dicho pseudo-coeficiente. El valor predefinido por el cual se cambia la ubicación espectral de dicho pseudo-coeficiente puede corresponder entonces a la mitad de la diferencia de la frecuencia, por ejemplo, de dos depósitos sucesivos, por ejemplo, cuando se considera un dominio de tiempo-frecuencia, cuando el componente del signo del pseudo-coeficiente tiene el segundo valor del signo.
[0137] En una realización específica, el determinador de pseudo-coeficientes 125 está configurado para determinar dos o más pseudo-coeficientes temporalmente consecutivos del espectro decodificado de la señal de audio. La unidad de reemplazo 135 está configurada para asignar un primer pseudo-coeficiente y un segundo pseudocoeficiente de los dos o más pseudo-coeficientes temporalmente consecutivos a una pista dependiendo de si una diferencia absoluta entre la primera ubicación espectral derivada, derivada del primer pseudo-coeficiente y una segunda ubicación espectral derivada, derivada del segundo pseudo-coeficiente es menor que un valor de umbral. La pluralidad de patrones espectrales almacenados que se almacenan dentro de la base de datos o la memoria de la unidad de almacenamiento pueden ser tanto patrones tonales estacionarios como patrones del barrido de frecuencia. La unidad de reemplazo 135 puede estar configurada a continuación para solicitar uno de los patrones tonales estacionarios a la unidad de almacenamiento 155 cuando la primera ubicación espectral derivada, derivada del primer pseudo-coeficiente de la pista es igual a la segunda ubicación espectral derivada del segundo pseudo-coeficiente de la pista. Asimismo, la unidad de reemplazo 135 puede estar configurada para solicitar uno de los patrones del barrido de frecuencia a la unidad de almacenamiento cuando la primera ubicación espectral derivada, derivada del primer pseudo-coeficiente de la pista es distinta de la segunda ubicación espectral derivada, derivada del segundo pseudocoeficiente de la pista.
[0138] Por ejemplo, la primera ubicación espectral derivada, derivada del primer pseudo-coeficiente de la pista puede ser la ubicación espectral del primer pseudo-coeficiente. Por ejemplo, la segunda ubicación espectral derivada, derivada del segundo pseudo-coeficiente de la pista puede ser la ubicación espectral del segundo pseudo-coeficiente.
[0139] Por ejemplo, un pseudo-coeficiente puede asignarse a uno de una pluralidad de depósitos de tiempofrecuencia o a una ubicación de frecuencia intermedia entre dos depósitos de tiempo-frecuencia, por ejemplo, al depósito de tiempo-frecuencia (n, k), donde n denota tiempo, y donde k denota frecuencia. La frecuencia del depósito de tiempo-frecuencia del pseudo-coeficiente o la ubicación de la frecuencia entre los dos depósitos de tiempofrecuencia puede indicar entonces la ubicación espectral del pseudo-coeficiente. Cuando recibe el depósito de tiempofrecuencia (n, k) la unidad de reemplazo 135 verificará, si ya recibió un pseudo-coeficiente que se asigna a un depósito de tiempo-frecuencia que precede inmediatamente al depósito de tiempo-frecuencia del pseudo-coeficiente actual en tiempo (n-1) y que es igual o cercano a la frecuencia del depósito de tiempo-frecuencia del pseudo-coeficiente actual (igual o cercano a k). La unidad de reemplazo 135 asignará a continuación ambos pseudo-coeficientes a una pista.
[0140] Por ejemplo, el pseudo-coeficiente que tiene un depósito de tiempo-frecuencia que precede inmediatamente al depósito de tiempo-frecuencia actual en el tiempo podría considerarse próximo a la frecuencia del depósito de tiempo-frecuencia actual, si la diferencia absoluta de las frecuencias de ambas frecuencias es menor que un valor de umbral. (Por ejemplo, si los índices de frecuencia se consideran como frecuencias, si la diferencia absoluta es menor que 2).
[0141] Si ambos pseudo-coeficientes de la pista tienen la misma ubicación espectral, la unidad de reemplazo 135 considera esto como una indicación de que está presente un tono estacionario y solicita un patrón de tono estacionario que tenga la frecuencia correspondiente.
[0142] No obstante, si las ubicaciones espectrales de los coeficientes espectrales de una pista difieren, la unidad de reemplazo 135 considera esto como una indicación de que está presente un barrido y solicita un patrón del barrido de frecuencia de la unidad de almacenamiento 155. La frecuencia indicada por la ubicación de la frecuencia del pseudo-coeficiente precedente dentro de la pista puede indicar entonces una frecuencia inicial del patrón de barrido y la frecuencia indicada por la ubicación de la frecuencia del pseudo-coeficiente actual dentro de la pista puede indicar entonces una frecuencia objetivo del patrón de barrido.
[0143] Según una realización, la unidad de reemplazo 135 puede estar configurada para solicitar un primer patrón del barrido de frecuencia de los patrones del barrido de frecuencia a la unidad de almacenamiento cuando la diferencia de frecuencia entre el segundo pseudo-coeficiente de la pista y el primer pseudo-coeficiente de la pista es igual a la mitad de un valor predefinido.
[0144] Además, la unidad de reemplazo 135 puede estar configurada para solicitar un segundo patrón de barrido de frecuencia, que es distinto del primer patrón de barrido de frecuencia, de los patrones de barrido de frecuencia de la unidad de almacenamiento cuando la diferencia de frecuencia entre el segundo pseudo-coeficiente de la pista y el primer pseudo-coeficiente de la pista es igual que un valor predefinido.
[0145] Además, la unidad de reemplazo 135 puede estar configurada para solicitar un tercer patrón de barrido de frecuencia, que es distinto del primer patrón de barrido de frecuencia y del segundo patrón de barrido de frecuencia, de los patrones de barrido de frecuencia de la unidad de almacenamiento cuando la diferencia de frecuencia entre el segundo pseudo-coeficiente de la pista y el primer pseudo-coeficiente de la pista es igual que una vez y media veces el valor predefinido.
[0146] Por ejemplo, el valor predefinido puede ser una diferencia de frecuencia entre dos depósitos de tiempofrecuencia temporalmente subsiguientes. Por lo tanto, en tal realización, se proporcionan patrones de barrido donde la diferencia de frecuencia entre una frecuencia inicial y una frecuencia objetivo difiere en 1/2 depósito de frecuencia de diferencia, en 1,0 depósito de frecuencia de diferencia y en 3/2 depósitos de frecuencia de diferencia.
[0147] La Figura 1c ilustra un aparato según una realización, donde la unidad de reemplazo 135 comprende una unidad de adaptación de patrón 138 configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento 155 para obtener el patrón espectral determinado.
[0148] En una realización, la unidad de adaptación de patrón 138 puede estar configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento 155 re-escalando los valores espectrales de los coeficientes de patrón de los patrones espectrales solicitados según el valor espectral de uno de uno o más pseudo-coeficientes para obtener el patrón espectral determinado. La unidad de reemplazo espectral 135 está entonces configurada para reemplazar al menos uno o más pseudo-coeficientes por el patrón espectral determinado para obtener el espectro modificado de la señal de audio. Así, de acuerdo con esta realización, el tamaño de los valores espectrales de los coeficientes de patrón de los patrones espectrales solicitados puede ajustarse según el valor espectral del pseudo-coeficiente.
[0149] Según una realización, la unidad de adaptación de patrón 138 puede estar configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento según una fase inicial de modo que el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado se modifica en una primera forma, cuando la fase inicial tiene un primer valor de fase inicial, y de modo que el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado se modifica en una segunda forma diferente, cuando la fase inicial tiene un segundo valor de fase inicial diferente. Al ajustar la fase de los patrones de una pista se puede lograr la transición sin solución de continuidad desde un patrón de una pista hacia el patrón siguiente.
[0150] Según una realización, el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado es un coeficiente complejo que comprende una parte real y una parte imaginaria. La unidad de adaptación de patrón 138 puede configurarse para modificar el patrón espectral solicitado al modificar la parte real y la parte imaginaria de cada uno de los coeficientes de patrón del patrón espectral solicitado suministrado por la unidad de almacenamiento 155, de modo que por cada uno de los coeficientes complejos se gira un vector que representa dicho coeficiente complejo en un plano complejo en el mismo ángulo para cada uno de los coeficientes complejos. Por otra parte, la fase de un patrón almacenado se puede rotar mediante la aplicación de un factor complejo de rotación ej9, con 9 que es un ángulo de fase arbitraria.
[0151] En una realización particular, el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado comprende una parte real y una parte imaginaria. En tal realización, la unidad de adaptación de patrón 138 puede estar configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento 155 mediante la negación de la parte real y la imaginaria del valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado, o cambiando la parte real o la parte real negada y la parte imaginaria o la parte imaginaria negada del valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado.
[0152] En una realización, la unidad de adaptación de patrón 138 puede configurarse para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento 155 realizando una réplica de tiempo del patrón. Generalmente, esto puede obtenerse en el dominio de frecuencia computando los conjugados complejos (multiplicando la parte imaginaria por -1) del patrón y aplicando un término de fase compleja (factor twiddle).
[0153] Según una realización, el espectro decodificado de la señal de audio se representa en el dominio de MDCT. En tal realización, la unidad de adaptación de patrón 138 se configura a continuación para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento 155 mediante la modificación de los valores espectrales de los coeficientes de patrón del patrón espectral solicitado para obtener un patrón espectral modificado, donde los valores espectrales se representan en el dominio de una Transformada Discreta de Fourier de Apilado Impar. Asimismo, en tal realización, la unidad de adaptación de patrón 138 está configurada para transformar los valores espectrales de los coeficientes de patrón del patrón espectral modificado del dominio de Transformada Discreta de Fourier de Apilado Impar al dominio de MDCT para obtener el patrón espectral determinado. Asimismo, en tal realización, la unidad de reemplazo 135 está configurada para reemplazar al menos uno o más pseudocoeficientes al representar el patrón espectral determinado en el dominio de MDCT para obtener el espectro modificado de la señal de audio que se representa en el dominio de MDCT. Por otra parte, en algunas realizaciones los valores espectrales pueden representarse en el dominio de Transformada Discreta del Coseno Modificada Compleja (CMDCT). Asimismo, en estas realizaciones la unidad de adaptación de patrón 138 puede estar configurada para transformar los valores espectrales de los coeficientes de patrón del patrón espectral modificado del dominio de CMDCT al dominio de MDCT para obtener el patrón espectral determinado simplemente mediante la extracción de la parte real del patrón modificado complejo.
[0154] La Figura 1d ilustra un aparato para generar una pluralidad de patrones espectrales que no forma parte de la invención.
[0155] El aparato comprende un generador de señal 165 para generar una pluralidad de señales en un primer dominio.
[0156] Asimismo, el aparato comprende una unidad de transformación de señal 175 para transformar cada señal de la pluralidad de señales del primer dominio al segundo dominio para obtener una pluralidad de patrones espectrales, comprendiendo cada patrón de la pluralidad de patrones espectrales transformados una pluralidad de coeficientes.
[0157] Además el aparato comprende una unidad de post-procesamiento 185 para truncar los patrones espectrales transformados al eliminar uno o más de los coeficientes de los patrones espectrales transformados para obtener una pluralidad de patrones procesados.
[0158] Asimismo, el aparato comprende una unidad de almacenamiento 195 que comprende una base de datos o una memoria, donde la unidad de almacenamiento 195 está configurada para almacenar cada patrón procesado de la pluralidad de patrones procesados en la base de datos o la memoria.
[0159] El generador de señal 165 está configurado para generar cada señal de la pluralidad de señales sobre la base de las fórmulas
x ( í ) = COS ( 2mp (t))
y
y?(í) = p(0) f 2ií/(r)rJr
donde t y t indican tiempo, donde 9(t) es una fase instantánea en t, y donde / ( i ) es una frecuencia instantánea en t, donde cada señal de la pluralidad de señales tiene una frecuencia inicial (/0), que es una frecuencia instantánea de dicha señal en un primer punto en el tiempo, y una frecuencia objetivo (/1), que es una frecuencia instantánea de dicha señal en un segundo punto distinto en el tiempo.
[0160] El generador de señal 165 está configurado para generar una primera señal de la pluralidad de señales de modo que la frecuencia objetivo (/1) de la primera señal es igual a la frecuencia inicial (/0). Además, el generador de señal 165 está configurado para generar una segunda señal diferente de la pluralidad de señales de modo que la frecuencia objetivo (/1) de la primera señal es diferente de la frecuencia inicial (/0).
[0161] Según un ejemplo, la unidad de transformación de señal 175 está configurada para transformar cada señal de la pluralidad de señales del primer dominio, que es un dominio de tiempo, en un segundo dominio, que es un dominio espectral. La unidad de transformación de señal 175 está configurada para generar el primero de una pluralidad de bloques de tiempo para transformar dicha señal, donde cada bloque de tiempo de la pluralidad de bloques de tiempo comprende una pluralidad de muestras ponderadas, donde cada una de dichas muestras ponderadas es una muestra de señal de dicha señal que se pondera con un ponderador de una pluralidad de ponderadores, donde la pluralidad de ponderadores se asignan a dicho bloque de tiempo, y donde cada ponderador de la pluralidad de ponderadores se asigna a un punto en el tiempo. La frecuencia inicial (/0) de cada señal de la pluralidad de señales es una frecuencia instantánea de dicha señal en el primer punto en el tiempo, donde el primero de los ponderadores del primero de los bloques de tiempo se asigna al primer punto en el tiempo, donde el segundo de los ponderadores de un segundo bloque de tiempo diferente se asigna al primer punto en el tiempo, donde el primero de los bloques de tiempo y el segundo de los bloques de tiempo se superponen, y donde el primero de los ponderadores es igual al segundo de los ponderadores. La frecuencia objetivo (/1) de cada señal de la pluralidad de señales es una frecuencia instantánea de dicha señal en el segundo punto en el tiempo, donde un tercer ponderador del primero de los bloques de tiempo se asigna al segundo punto en el tiempo, donde el cuarto de los ponderadores de un tercer bloque de tiempo diferente se asigna al segundo punto en el tiempo, donde el primero de los bloques de tiempo y el tercero de los bloques de tiempo se superponen, y donde el tercero de los ponderadores es igual al cuarto de los ponderadores.
[0162] Por ejemplo, en la Figura 6a se ilustra un ejemplo, donde, el primer punto en el tiempo se indica mediante n0 y el segundo punto en el tiempo se indica mediante m. Los bloques superpuestos se ilustran mediante los bloques L y L+1. Los ponderadores se ilustran mediante la curva en el bloque L y la curva en el bloque L+1, respectivamente.
[0163] Cabe destacar que, por ejemplo, es suficiente generar solo un bloque de tiempo (por ejemplo, el primero de los bloques de tiempo) para generar un patrón.
[0164] Según un ejemplo, cada señal de la pluralidad de señales tiene una fase inicial (90), que es una fase de dicha señal en un primer punto en el tiempo, y una fase objetivo (91), que es una fase de dicha señal en un segundo punto en el tiempo diferente, donde el generador de señal (165) está configurado para generar la pluralidad de señales de tal forma que la fase inicial (90) de la primera de la pluralidad de señales es igual que la fase inicial (90) de una segunda pluralidad de señales diferente.
[0165] La fase inicial (e implícitamente, por elección de la frecuencia inicial y final, la fase objetivo (final)) de cada señal de la pluralidad de señales se ajusta en dichos puntos en el tiempo de inicio y final.
[0166] Mediante esta elección especial del primer (inicial) y del segundo (final) punto en el tiempo, se pueden reducir los artefactos superpuestos-añadidos que pueden aparecer, si se encadenan patrones con diferentes propiedades espectrales.
[0167] En un ejemplo , la unidad de post-procesamiento 185 puede configurarse además para realizar una rotación ft/4 en los coeficientes espectrales de cada uno de los patrones espectrales transformados para obtener una pluralidad de patrones espectrales rotados.
[0168] Según un ejemplo adicional, el generador de señal 165 puede configurarse para generar la primera señal, la segunda señal y una o varias señales adicionales como la pluralidad de señales, de modo que cada diferencia entre la frecuencia objetivo y la frecuencia inicial de cada una de las señales adicionales es un múltiplo entero de la diferencia de la frecuencia objetivo y la frecuencia inicial de la segunda señal.
[0169] Por ejemplo, la diferencia de frecuencia de la frecuencia objetivo y la frecuencia inicial de la segunda señal puede corresponder a una diferencia de frecuencia de medio depósito, por ejemplo, una diferencia de frecuencia de la mitad de la diferencia de frecuencia de dos depósitos sucesivos cuando se consideran depósitos en tiempofrecuencia. La diferencia de frecuencia de la frecuencia objetivo y la frecuencia inicial de una tercera señal adicional puede corresponder a una diferencia de frecuencia de un depósito, por ejemplo, una diferencia de frecuencia correspondiente a la diferencia de frecuencia de dos depósitos sucesivos cuando se consideran depósitos en tiempofrecuencia. La diferencia de frecuencia de la frecuencia objetivo y la frecuencia inicial de una cuarta señal adicional puede corresponder a una diferencia de frecuencia de un depósito y medio, por ejemplo, una diferencia de frecuencia correspondiente a una y media veces la diferencia de frecuencia de dos depósitos sucesivos cuando se consideran depósitos en tiempo-frecuencia. Así, la relación de la diferencia de la frecuencia objetivo y la frecuencia inicial de la tercera señal en relación con la diferencia de la frecuencia objetivo y la frecuencia inicial de la segunda señal es 2,0 (un valor entero). La relación de la diferencia de la frecuencia objetivo y la frecuencia inicial de la cuarta señal en relación con la diferencia de la frecuencia objetivo y la frecuencia inicial de la segunda señal es 3,0 (un valor entero).
[0170] Antes de proporcionar las descripciones de realizaciones específicas con mayor detalle, para una mejor explicación, se describen los conceptos básicos de la MDCT.
[0171] La MDCT de una señal real x(n) se define para segmentos de señal formados en ventana con w(n) en el momento /, que es wa(l, n) ■ x(l, n) £ K , de longitud N del siguiente modo:
Figure imgf000019_0003
[0172] El 1/2 en (m 1/2) representa el cambio de frecuencia. El (n 1/2 M/2) representa el cambio de tiempo.
[0173] La transformada inversa se escribe como
Figure imgf000019_0001
[0174] La MDCT puede verse como la parte real de la Transformada Discreta del Coseno Modificada Compleja (CMDCT) que se define como
Figure imgf000019_0002
[0175] Además, la CMDCT puede expresarse como una Transformada Discreta de Fourier de Apilado Impar (ODFT) o una Transformada Discreta de Fourier (DFT) y términos de fase exponencial pre y post-factor twiddle.
Figure imgf000020_0001
[0176] La e - Ó T r i m ^ a f ) representa el cambio de tiempo por post-factor twiddle.
[0177] A continuación se describe la extracción y la aplicación de parches de patrones tonales en el dominio de MDCT. Ahora, se proporcionan algunas explicaciones con respecto a las peculiaridades de la MDCT. En particular, en primer lugar, se consideran las provisiones para la MDCT.
[0178] Como puede observarse de las Ecuaciones 4, que comprenden un exponencial así llamado término post-twiddle, la CMDCT tiene funciones bases con cambio de tiempo en comparación con la DFT o la ODFT. Así, si se desea desacoplar la compensación de fase absoluta 90 de las sinusoides interconectadas de la posición espectral real de la aplicación de parches, se deberá tener en consideración este twiddle.
[0179] Las realizaciones llevan a cabo la extracción de patrones y la aplicación de parches en el dominio de la ODFT y procesan posteriormente la superposición de todos los patrones mediante la aplicación de dicho twiddle antes de la mezcla con los coeficientes de la MDCT.
[0180] Cada aplicación de parches se obtiene al extraer espectros complejos de la ODFT truncada de sinusoides prototípicas o barridos generados según las siguientes ecuaciones. Una sinusoide con frecuencia instantánea variable (IF) /( t) puede sintetizarse como
con la fase instantánea
Figure imgf000020_0002
Figure imgf000020_0003
[0181] Para simplificar la relación entre la descripción de la MDCT de tiempo discreta y la sinusoide en tiempo continuo, a continuación se asume una tasa de muestreo normalizada fs = 1. La frecuencia instantánea (IF) / ( t) de las plantillas de barrido se selecciona de tal modo que la IF de inicio y objetivo se alcanzan exactamente en los puntos de simetría de la cancelación de alias en el dominio de tiempo (TDAC) fe= N/4 0,5 y t1 = 3N/4 0,5 de cada bloque de tiempo de la MDCT de longitud N, respectivamente. Un barrido lineal desde la frecuencia / 0 a / 1 expandiendo un intervalo de frecuencia Af = / 1- / 0 en un depósito de tiempo de longitud M = N/2 tiene una frecuencia instantánea (IF)
Figure imgf000020_0004
que conduce a una fase instantánea
Figure imgf000020_0005
[0182] Las sinusoides con frecuencias de inicio y fin de resolución doble (en comparación con la MDCT que se
va a emplear para la síntesis del patrón) pueden generarse al seleccionar /o = y fi ~(k m) , con compensación de frecuencia medido en índices de depósitos de la transformada. Los índices impares corresponden a frecuencias “en el depósito” y los índices pares dan frecuencias “entre depósitos”. Este progreso de fases entre tramas consecutivas se puede computar como
Figure imgf000021_0001
[0183] Esto significa que para el encadenamiento de tiempo de patrones sin solución de continuidad la fase de 7T
cada aplicación de parches deberá ajustarse mediante un múltiple entero de 4 dependiente del índice de la frecuencia de inicio k y del índice de la compensación de frecuencia m del patrón anterior. La variable m también puede verse como la tasa de barrido, donde, por ejemplo, m = 1 denota un barrido de medio depósito sobre la duración de un bloque de tiempo.
[0184] Asimismo, puede llevarse a cabo la compensación del cambio de depósito espectral entero. La posición espectral de estas sinusoides o barridos prototípicos se selecciona beneficiosamente para ubicarlos en el medio del espectro con el fin de minimizar los errores de convolución cíclica. Según la distancia espectral d de la sinusoide prototípica y la ubicación objetivo de aplicación de parches, la aplicación de parches se adapta mediante rotaciones post-procesamiento de d% / 2 para obtener siempre una fase fija predeterminada independiente de ubicación objetivo de aplicación de parches. En otras palabras, una rotación post-procesamiento compensa la rotación de fase no deseada inherente del cambio espectral.
[0185] A continuación se proporcionan consideraciones acerca de eficacia y exactitud. En primer lugar, se considera la eficacia computacional:
La Tabla I proporciona operaciones para realizar diferentes post-twiddles. Con el fin de mantener razonablemente pequeña la cantidad de patrones que se va a almacenar y, aun más importante, para poder explotar el hecho de que las rotaciones en ciertas fracciones simples de % pueden obtenerse mediante las operaciones mencionadas en la Tabla I, deberán restringirse los barridos y las frecuencias posibles.
Figure imgf000021_0002
Tabla I
(OPERACIONES PARA ROTACIONES SIMPLES)
[0186] A continuación, se considera la resolución de frecuencia. Estas restricciones se requieren, a su vez, para permitir una reproducción perceptivamente satisfactoria de las partes de la señal codificadas paramétricamente. Dado que dicha parte de la señal puede comprender una secuencia de tiempo arbitraria de patrones tonales, cada grado de libertad adicional multiplica la cantidad de patrones que se va a almacenar o, por otra parte, el coste computacional para adaptar los patrones. Entonces, tiene sentido seleccionar la resolución espectral de modo que el oyente promedio no perciba ningún efecto de desalineación en el intervalo espectral objetivo buscado.
[0187] Los músicos y los oyentes entrenados son capaces de percibir desalineaciones por debajo de 5 centésimas, el oyente promedio podría aceptar desviaciones de aproximadamente 10 centésimas (una décima de semitono). Por lo tanto, el reemplazo espectral de tonos sinusoidales solo debería realizarse por encima de cierta frecuencia de corte que corresponda al peor escenario de desviaciones permitidas. Por ejemplo en una MDCT de 512 bandas, con una frecuencia de muestreo de 12,8 kHz, la resolución espectral por banda es 12,5 Hz. Seleccionando una resolución de media banda para los patrones tonales, la frecuencia máxima de desviación alcanza a 3,125 Hz, igual o por debajo 10 centésimas por encima de una frecuencia de corte de aproximadamente 540 Hz.
[0188] A continuación se considera el tamaño del patrón. Según los ejemplos, los patrones que se van a almacenar están truncados. El tamaño real de los patrones depende del tipo de ventana que usualmente ya está determinado por el codificador por transformada (por ejemplo, una ventana sinusoidal o Kaiser-Bessel derivada (KBD) para AAC) y la relación de señal a ruido permitida (SNR). Aunque se almacenan patrones valuados complejos, la aplicación de parches verdadera se realiza utilizando solo la parte real del patrón adecuadamente rotado.
[0189] A continuación, se consideran patrones tonales. En primer lugar, se describen patrones tonales estacionarios.
[0190] Por las razones mencionadas, deberá seleccionarse la resolución espectral como dos veces la resolución nominal de la MDCT. En consecuencia, es necesario almacenar dos versiones de todo el patrón, una para sinusoides con frecuencias que coinciden con una posición de depósito (patrón en el depósito) y otra para frecuencias que se ubican en posiciones entre depósitos (patrón entre depósitos). Para los requisitos de memoria más pequeños posibles, podría explotarse la simetría de los patrones almacenando solamente la mitad de los coeficientes del patrón real.
[0191] Según la Ecuación 9 (dado que m = 0), en cualquier secuencia de tiempo de estos patrones tonales estacionarios, el progreso de la fase envolvente es igual a A9 = % / 2 o A9 = -% / 2 para patrones en el depósito, y A9 = 0 o A9 = % para patrones entre depósitos. Esto se debe al Apilado Impar de frecuencia de la MDCT.
[0192] La fase envolvente absoluta se puede calcular mediante 90+ n 71 / 2 con n como un número entero éE {1, 3} para patrones en el depósito y £ {2, 4} para patrones entre depósitos. La elección del número entero real depende de la paridad del número de depósitos (par/impar). 90 denota un valor de compensación de fase arbitrario. Por lo tanto, para un patrón tonal puramente estacionario, se necesita un procesamiento posterior mediante cuatro rotaciones alternativas a fin de ajustar los patrones a su posición pretendida en la rejilla t/f de una secuencia de espectros MDCT. La elección de 90+ n / 2, n E N hace que estas rotaciones se vuelvan triviales.
[0193] Ahora se consideran los patrones de barrido de frecuencia.
[0194] Debido a que la resolución espectral es el doble de la resolución nominal de la MDCT, también es necesario almacenar dos versiones de cada patrón de barrido, una para barridos con una frecuencia de inicio que coincide con una posición en depósito y una para frecuencias de inicio que están ubicadas en posiciones entre depósitos. Asimismo, los barridos permitidos se definen como lineales y para cubrir medio depósito, un depósito y un depósito y medio MDCT por bloque de tiempo, cada uno en una versión con dirección descendente y con dirección ascendente, lo que resulta en 12 patrones que se van a almacenar adicionalmente. Para los requisitos de memoria más pequeños posibles, las frecuencias de barrido podrían almacenarse solo en una dirección; la dirección opuesta podría derivarse mediante la replicación de tiempo del patrón. Según la Ecuación 9 (dado {1,3, 5...}), los patrones que suponen distancias de barrido de medio depósito requieren rotaciones post-procesamiento mediante 90+ n % / 4.
[0195] A continuación, se considera el cambio de patrones. Para este propósito, se hace referencia a la Figura 2. La Figura 2 ilustra la alineación paramétrica de un patrón sinusoidal con respecto a un bloque de tiempo de la MDCT. Si los patrones se encadenan en una secuencia de tiempo, se ha de elegir una fase de inicio para el patrón real en el punto n0 de la Figura 2 (usando las rotaciones antes mencionadas) y tiene que almacenarse la fase objetivo (fase final) en el punto ni para una continuación sin interrupciones con el patrón subsiguiente.
[0196] Los barridos que abarcan distancias de barrido de medio depósito se procesan posteriormente mediante rotaciones de post-procesamiento mediante 90+ n % / 4, para ambos patrones de barrido y patrones estacionarios, dado que las partes de barrido y estacionarias podrían encadenarse arbitrariamente en una secuencia de tiempo. La elección de 90+ n / 4, n £ N da como resultado una rotación que es también bastante fácil de computar por 2/2 suma/diferencia de la parte real e imaginaria del patrón y el posterior escalamiento mediante 2 . Por otra parte, todos los patrones podrían almacenarse además en una versión previamente rotada n / 4 y puede aplicarse conjuntamente con una rotación trivial post-procesamiento mediante n % / 2, n = 1,2, 3 (véase la Tabla 1).
[0197] La Figura 3 muestra un procedimiento ejemplar de aplicación de parches de patrones tonales, donde (a-b) ilustran la generación del patrón prototípico, donde (c) ilustra el truncamiento del patrón, donde (d) ilustra la adaptación del patrón a la ubicación y fase objetivo y donde (e-f) ilustran la aplicación de parches del patrón.
[0198] En particular, en la Figura 3 panel (a) - (f), se ilustra el procedimiento completo, como se describió anteriormente con respecto a las peculiaridades de la MDCT, desde la medición del patrón hasta la adaptación del patrón y la aplicación de parches. En primer lugar, se construye un patrón mediante la generación de una sinusoide o un barrido según las Ecuaciones 5 y 6. A continuación, la señal generada se transforma al dominio de frecuencia ODFT (a) para obtener un espectro complejo (b). Seguidamente, el patrón complejo se trunca hasta su longitud pretendida (c) y se almacena en la tabla.
[0199] Siempre que se necesita el patrón para sintetizar una porción tonal de la señal, este se adapta a su fase objetivo como se describió anteriormente, con respecto al encadenamiento de patrones, y además, se le compensa la rotación de fase inducida por el cambio espectral como se describió anteriormente con respecto a la compensación por el cambio espectral del depósito entero. Asimismo, el cambio de tiempo presente en la CMDCT con respecto a la ODFT se implementa aplicando un post-twiddle como se describió anteriormente. La aplicación del post-twiddle puede realizarse de manera eficaz después de sumar la contribución de todos los patrones que se van a interconectar con el espectro (e). Finalmente, tiene lugar la aplicación de parches real en el dominio de MDCT utilizando únicamente la parte real del patrón adaptado. Una IMDCT produce la señal deseada en el dominio de tiempo, cuyo espectro se ilustra en el panel (f).
[0200] La Figura 4 ilustra patrones tonales espectrales normalizados según una realización, en particular, sinusoide en depósito, sinusoide entre depósitos, barrido en depósito, barrido entre depósitos (desde el panel superior hasta el inferior). Más particularmente, en la Figura 4 se ilustra ejemplarmente una selección de patrones tonales diferentes para un escenario típico de códec por transformada con baja tasa de bits usando una MDCT de 512 bandas, con ventana sinusoidal, con una frecuencia de muestreo de 12,8 kHz, y una resolución de medio depósito para los patrones tonales. Desde el panel superior hasta el inferior, se grafican varios patrones tonales espectrales de la ODFT normalizados: sinusoide en depósito, sinusoide entre depósitos, barrido en depósito, barrido entre depósitos. Diversos patrones como estos se han de almacenar en una tabla.
[0201] Todos los tipos de patrones se almacenan en 4 variantes:
• en el depósito y entre depósitos
• fase inicial 0 y fase inicial n / 4 (pre-rotada, como se describió anteriormente con respecto al encadenamiento de patrones)
[0202] Los patrones de barrido tienen 6 variantes adicionales:
• barrido de medio depósito, depósito completo y un depósito y medio.
• dirección de barrido ascendente y descendente
[0203] La cantidad total de patrones que se va a almacenar es 4 veces (1 estacionaria 6 barridos) y totaliza 28 patrones complejos.
[0204] Para los requisitos de memoria más pequeños posibles, las frecuencias de barrido pueden almacenarse alternativamente solo en una dirección; la dirección opuesta puede derivarse mediante el procesamiento espectral que es dual en relación con la replicación de tiempo del patrón. Generalmente, esto puede obtenerse en el dominio de frecuencia computando los conjugados complejos (multiplicando la parte imaginaria por -1) del patrón y aplicando un término de fase compleja (factor twiddle) que depende del dominio real (ODFT, CMDCT, etc.).
[0205] La calidad de la señal que puede obtenerse mediante la sintetización truncada de patrones espectrales depende del tipo de ventana, que usualmente ya está determinado por el códec por transformada, y de la elección real de la longitud del patrón, que puede adaptarse a la calidad perceptiva general del códec y a los recursos disponibles (memoria, complejidad computacional).
[0206] La Figura 5 ilustra la relación de señal a ruido (SNR) de un patrón tonal truncado como función de la longitud del patrón para una ventana sinusoidal. En particular, la Figura 5 muestra la SNR media como función de la longitud del patrón para la ventana sinusoidal. En el escenario descrito con respecto a la Figura 3, el truncamiento de los patrones en, por ejemplo, 19 depósitos produce una SNR promedio de aproximadamente 65 dB. Si es aceptable una SNR más baja, por ejemplo, en un códec con muy baja tasa de bits, ya podría ser suficiente una longitud de patrón de 5 depósitos.
[0207] La Figura 6a ilustra una variación de la ilustración de la Figura 2, donde la Figura 6a ilustra una frecuencia instantánea en puntos en el tiempo para superponer bloques según las realizaciones.
[0208] La Figura 6b ilustra un progreso de fase para funciones base de la DCT y la DCT IV según las realizaciones con respecto a los diagramas proporcionados en la Figura 6a.
[0209] La Figura 6c ilustra un espectro de energía 670. un espectro de MDCT sustituido 675, un espectro de MDCT cuantificado 680 y un espectro de MDCT con patrones 685 según una realización.
[0210] El espectro cuantificado de la MDCT 680 se generó en el lado del codificador cuantificando el espectro sustituido de la MDCT 675. El espectro sustituido de la MDCT 675 se generó sobre la base del espectro de entrada de la señal de audio (no se muestra) como se describió desde el codificador anterior y sobre la base del espectro de energía 670.
[0211] El espectro cuantificado de la MDCT 680 se obtendrá del lado del decodificador mediante el procesamiento de un espectro codificado de la señal de audio (no se muestra) para obtener el espectro cuantificado de la MDCT 680 como un espectro decodificado de la señal de audio.
[0212] Tal como se aprecia en la Figura 6c, los pseudo-coeficientes 691, 692, 693, 694, 695 y 696 en el espectro decodificado de la señal de audio 680 se reemplazan con los patrones espectrales 651, 652, 653, 654, 655 y 656, respectivamente.
[0213] Para el mismo escenario de códec con baja tasa de bits mencionado anteriormente, se comparó la complejidad computacional de la novedosa síntesis de patrones tonales propuesta con la complejidad computacional de un banco plano de osciladores en el dominio de tiempo. Se asumió que un máximo de 20 pistas sinusoidales están activas durante la codificación de un artículo monofónico en una configuración completa del códec perceptivo con una tasa más bien baja de bits de 13,2 kbps. En la implementación C del códec se midió la carga de trabajo computacional. Cada uno de los artículos usados para las mediciones contenía al menos un instrumento tonal dominante con rico contenido de sobretonos (por ejemplo, afinador, violín, clave, saxofón pop, ensamble de metales). En promedio, la complejidad computacional de la síntesis basada en patrones tonales es sólo el 10 % de la implementación directa utilizando un banco de osciladores en el dominio de tiempo.
[0214] Las realizaciones descritas proporcionan conceptos para mejorar los codificadores de audio basados en la MDCT con baja tasa de bits mediante la generación de sinusoides paramétricas y barridos sinusoidales. Al aplicar los conceptos proporcionados, tales señales pueden generarse muy eficazmente en el decodificador utilizando patrones tonales que se adaptan mediante rotaciones de fase posteriores al procesamiento. Para la síntesis real de estos patrones tonales, puede co-utilizarse el banco de filtros IMDCT del codificador. Como se describió anteriormente, la elección inicial de la resolución espectral determina una frecuencia de corte baja para la generación tonal perceptivamente adecuada, la demanda de memoria de almacenamiento y la complejidad computacional del procesamiento posterior requerido del patrón. En un escenario ejemplar de códec de audio con baja tasa de bits, se logró una reducción de la complejidad computacional del 90 % con SNR de 65 dB en comparación con la implementación de un banco de osciladores en el dominio de tiempo.
[0215] Mientras una solución emplearía un banco de osciladores en el dominio de tiempo con una velocidad de muestreo completa, dicha solución posibilitaría una interpolación sin solución de continuidad entre parámetros subsiguientes. No obstante, esta solución es pesada desde el punto de vista computacional.
[0216] Para una baja complejidad computacional resulta ventajoso emplear patrones espectrales ToneFilling (TF) de la MDCT. Allí, los espectros pueden interconectarse con patrones TF a la velocidad de muestreo del bloque. Los patrones espectrales truncados pueden almacenarse, por ejemplo, en una tabla, por ejemplo, la tabla de una base de datos o una memoria.
[0217] En las realizaciones se proporciona una “interpolación” de pistas sinusoidales con una amplitud del 50 % de solapamiento de la ventana de síntesis y de una frecuencia por elección de patrones de barrido con el solapamiento adecuado, que es muy eficaz desde el punto de vista computacional.
[0218] Los ejemplos proporcionan el diseño de patrones en el dominio de tiempo para un mínimo enmascaramiento. La fase y la frecuencia instantánea (IF) coinciden exactamente en puntos en el tiempo donde los bloques solapados tienen los mismos ponderadores.
[0219] Tal como se aprecia en la Figura 6a, los puntos de simetría están ubicados en
n0: %*b_longitud+0,5; y
m: %* b_longitud+0,5.
[0220] A fin de adaptar sin solución de continuidad una pista sinusoidal, según una realización, los patrones se seleccionan de un patrón de depósito entero (“posición en el depósito”), patrón de depósito fraccional (“posición entre depósitos”) y barridos lineales: barrido de medio depósito, depósito completo y un depósito y medio.
[0221] Los patrones elegidos se adaptan a la ubicación pretendida en la rejilla t/f de la MDCT al realizar el escalamiento en amplitud, y, con respecto a la fase, al realizar una rotación compleja (factor twiddle) como función de la ubicación de la fuente del patrón, la ubicación objetivo, la fase predecesora de tiempo.
[0222] Debido a la limitada resolución de frecuencia, solo se necesita un conjunto discreto de rotaciones predeterminadas, en particular:
- N*rc/2 rotaciones mediante la permutación de la parte real e imaginaria y signo; y
- N* rc/4 rotaciones implementadas mediante rc/4 patrones rotados previamente.
[0223] La implementación de un cambio de tiempo en la MDCT requiere patrones/aplicación de parches en el dominio de la ODFT. La resolución de medio depósito se realiza mediante una granularidad de fase ft/2, y dos tipos de patrones diferentes.
[0224] El cambio de frecuencia ODFT/DCT-IV se realiza mediante una fase de progreso de patrones de depósitos enteros mediante ft/2 o -ft/2 , mediante una fase de progreso de patrones de depósitos fraccionados mediante 0 o %, y depende de la paridad del número de depósito (par/impar). Esto se ilustra en la Figura 6b.
[0225] En las realizaciones, todos los patrones se almacenan en 4 variantes, que abarcan las combinaciones de las alternativas:
- depósitos enteros o depósitos fraccionados;
- 9 = 0 o 9 = rc/4 (previamente rotado, necesario para gestionar barridos de medio depósito)
[0226] En las realizaciones, los patrones de barrido tienen 6 variantes adicionales que abarcan las combinaciones de las alternativas:
- barrido de medio depósito, depósito completo y un depósito y medio; y
- arriba o abajo
[0227] Esto da como resultado una cantidad total de: 4*(1 estacionario 6 barridos) = 28 patrones complejos. La aplicación de parches real es la parte real del patrón final (rotado).
[0228] Los conceptos proporcionados pueden emplearse, por ejemplo, en la codificación USAC, en particular en la trayectoria de la señal codificada por transformada.
[0229] Resumiendo lo anterior, la MDCT es crucial para codificar señales tonales con tasas de bits bajas debido a la aparición de artefactos ululados. No obstante, aquí no cuenta el modelo psicoacústico clásico. Así, se necesita un modelo con menos molestias. Las herramientas de codificación paramétrica pueden ayudar con tasas de bits bajas. Los artefactos ToneFilling podrían ser menos molestos que los artefactos ululados.
[0230] Se puede lograr la implementación eficaz de los osciladores ToneFilling al interconectar los patrones adaptados t/f de la MDCT. Al emplear ToneFilling, se obtiene una calidad aceptable de música tonal con tasas de bits bajas y codificación con bajo retardo.
[0231] A continuación, se proporciona una descripción con respecto a algunas realizaciones adicionales.
[0232] La Figura 10 ilustra un aparato para generar una señal de salida de audio basada en un espectro codificado de la señal de audio.
[0233] El aparato comprende una unidad de procesamiento 110 para procesar el espectro de la señal de audio codificada para obtener un espectro de la señal de audio decodificada. El espectro de la señal de audio decodificada comprende una pluralidad de coeficientes espectrales, donde cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro de la señal de audio codificada y un valor espectral, donde los coeficientes espectrales se ordenan secuencialmente según su ubicación espectral dentro del espectro codificado de la señal de audio de modo que los coeficientes espectrales forman una secuencia de coeficientes espectrales.
[0234] Asimismo, el aparato comprende un determinador de pseudo-coeficientes 120 para determinar uno o más pseudo-coeficientes del espectro decodificado de la señal de audio usando información secundaria (info secundaria), teniendo cada uno de los pseudo-coeficientes una ubicación espectral y un valor espectral.
[0235] Asimismo, el aparato comprende una unidad de modificación de espectro 130 para establecer uno o más pseudo-coeficientes en un valor predefinido para obtener un espectro modificado de la señal de audio.
[0236] Asimismo, el aparato comprende una unidad de conversión de espectro-tiempo 140 para convertir el espectro modificado de la señal de audio al dominio de tiempo para obtener la señal de conversión en el dominio de tiempo.
[0237] Asimismo, el aparato comprende un oscilador controlable 150 para generar una señal del oscilador en el dominio de tiempo, el oscilador controlable está controlado por la ubicación espectral y el valor espectral de al menos uno de uno o más pseudo-coeficientes. Asimismo, el aparato comprende un mezclador 160 para mezclar la señal de conversión en el dominio de tiempo y la señal del oscilador en el dominio de tiempo para obtener la señal de salida de audio.
[0238] En un ejemplo, el mezclador puede estar configurado para mezclar la señal de conversión en el dominio de tiempo y la señal del oscilador en el dominio de tiempo mediante el agregado de la señal de conversión en el dominio de tiempo a la señal del oscilador en el dominio de tiempo en el dominio de tiempo.
[0239] La unidad de procesamiento 110 puede ser, por ejemplo, cualquier clase de decodificador de audio, por ejemplo, un decodificador de audio MP3, un decodificador de audio para WMA, un decodificador de audio para archivos WAVE, un decodificador de audio AAC o un decodificador de audio USAC.
[0240] La unidad de procesamiento 110 puede ser, por ejemplo, un codificador de audio como el descrito en [8] (ISO/IEC 14496-3:2005 - Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio -Subparte 4) o como el descrito en [9] (ISO/IEC 14496-3:2005 -----Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio, Subparte 4). Por ejemplo, la unidad de procesamiento 430 puede comprender un re-escalamiento de valores cuantificados (“de-cuantificación”), y/o una herramienta para modelado de ruido de tiempo, como se describe, por ejemplo, en [8] y/o la unidad de procesamiento 430 puede comprender una herramienta para sustitución de ruido perceptible, como se describe, por ejemplo, en [8].
[0241] Según un ejemplo, cada uno de los coeficientes espectrales puede tener al menos uno entre un predecesor inmediato y un sucesor inmediato, donde el predecesor inmediato de dicho coeficiente espectral puede ser uno de los coeficientes espectrales que precede inmediatamente dicho coeficiente espectral dentro de la secuencia, donde el sucesor inmediato de dicho coeficiente espectral puede ser uno de los coeficientes espectrales que sucede inmediatamente a dicho coeficiente espectral dentro de la secuencia.
[0242] El determinador de pseudo-coeficientes 120 puede estar configurado para determinar uno o más pseudo-coeficientes del espectro de la señal de audio decodificada al determinar al menos un coeficiente espectral de la secuencia, que tiene un valor espectral que es diferente del valor predefinido, que tiene un predecesor inmediato cuyo valor espectral es igual que el valor predefinido, y que tiene un sucesor inmediato cuyo valor espectral es igual al valor predefinido. En un ejemplo, el valor predefinido puede ser cero y el valor predefinido puede ser cero.
[0243] En otras palabras: el determinador de pseudo-coeficientes 120 determina para algunos o todos los coeficientes del espectro de la señal de audio decodificada si el coeficiente respectivamente considerado es diferente del valor predefinido (preferentemente: distinto de 0), si el valor espectral del coeficiente precedente es igual que el valor predefinido (preferentemente: igual a 0) y si el valor espectral del coeficiente sucesor es igual que el valor predefinido (preferentemente: igual a 0).
[0244] En algunos ejemplos, tal coeficiente determinado es (siempre) un pseudo-coeficiente.
[0245] En otros ejemplos, no obstante, tal coeficiente determinado es (únicamente) un pseudo-coeficiente candidato y puede ser o no un pseudo-coeficiente. En aquellas realizaciones, el determinador de pseudo-coeficientes 120 está configurado para determinar al menos un pseudo-coeficiente candidato, que tiene un valor espectral que es diferente del valor predefinido, que tiene un predecesor inmediato cuyo valor espectral es igual que el valor predefinido, y que puede tener un sucesor inmediato cuyo valor espectral es igual al valor predefinido.
[0246] A continuación, el determinador de pseudo-coeficientes 120 se configura para determinar si el pseudocoeficiente candidato es un pseudo-coeficiente al determinar si la información secundaria indica que dicho pseudocoeficiente es un pseudo-coeficiente.
[0247] Por ejemplo, tal información secundaria puede ser recibida por el determinador de pseudo-coeficientes 120 en un campo de bits, que indica para cada uno de los coeficientes espectrales del espectro cuantificado de la señal de audio que tiene un predecesor inmediato cuyo valor espectral es igual que el valor predefinido y un sucesor inmediato, cuyo valor espectral es igual que el valor predefinido, si dicho coeficiente es uno de los coeficientes extremos (por ejemplo, mediante un valor de bit 1) o si dicho coeficiente no es uno de los coeficientes extremos (por ejemplo, mediante un valor de bit 0).
[0248] Por ejemplo, un campo de bits [000111111] puede indicar, que los primeros tres coeficientes “autónomos” (su valor espectral no es igual que el valor predefinido, pero los valores espectrales de su predecesor y de su sucesor son iguales que el valor predefinido) que aparecen en el espectro de la señal de audio (ordenado secuencialmente) (cuantificado) no son coeficientes extremos, pero los siguientes seis coeficientes “autónomos” son coeficientes extremos. Este campo de bits describe la situación que puede observarse en el espectro de MDCT cuantificado 635 en la Figura 9, donde los primeros tres coeficientes “autónomos” 5, 8, 25 no son coeficientes extremos, pero donde los seis coeficientes “autónomos” siguientes 59, 71, 83, 94, 116, 141 son coeficientes extremos.
[0249] La unidad de modificación de espectro 130 puede estar configurada para “borrar” los pseudocoeficientes del espectro de la señal de audio decodificada. De hecho, la unidad de modificación de espectro establece el valor espectral de los pseudo-coeficientes del espectro de la señal de audio decodificada en el valor predefinido (preferentemente en 0). Esto es razonable, ya que los pseudo-coeficientes (al menos uno) solo se necesitarán para controlar el (al menos uno) oscilador controlable 150. Así, cabe considerar, por ejemplo, el espectro cuantificado MDCT 635 en la Figura 9. Si el espectro 635 se considera como el espectro de la señal de audio decodificada, la unidad de modificación de espectro 130 establecería los valores espectrales de los coeficientes extremos 59, 71, 83, 94, 116 y 141 para obtener el espectro modificado de la señal de audio y dejaría los otros coeficientes del espectro sin modificar.
[0250] La unidad de conversión de espectro-tiempo 140 convierte el espectro modificado de la señal de audio del dominio espectral al dominio de tiempo. Por ejemplo, el espectro modificado de la señal de audio puede ser un espectro de MDCT, y la unidad de conversión de espectro-tiempo 140 puede ser un banco de filtros de la Transformada Discreta del Coseno Modificada inversa (IMDCT). En otras realizaciones, el espectro puede ser un espectro MDST, y la unidad de conversión de espectro-tiempo 140 puede ser un banco de filtros de la Transformada Discreta del Coseno Modificada Inversa (IMDCT). O, en otras realizaciones, el espectro puede ser un espectro de DFT, y la unidad de conversión de espectro-tiempo 140 puede ser un banco de filtros de la Transformada Discreta de Fourier Inversa (IDFT).
[0251] El oscilador controlable 150 puede estar configurado para generar una señal del oscilador en el dominio de tiempo que tiene una frecuencia de la señal del oscilador de modo que la frecuencia de la señal del oscilador de la señal del oscilador puede depender de la ubicación espectral de uno del uno o más pseudo-coeficientes. La señal del oscilador generada por el oscilador puede ser una señal sinusoidal en el dominio de tiempo. El oscilador controlable 150 puede estar configurado para controlar la amplitud de la señal sinusoidal en el dominio de tiempo según el valor espectral de uno del uno o más pseudo-coeficientes.
[0252] Según un ejemplo, los pseudo-coeficientes son valores con signo, cada uno de ellos comprende un componente de signo. El controlador oscilable 150 puede estar configurado para generar la señal del oscilador en el dominio de tiempo de modo que la frecuencia de la señal del oscilador de la señal del oscilador puede depender además del componente de signo de uno del uno o más pseudo-coeficientes de modo que la frecuencia de la señal del oscilador puede tener un primer valor de frecuencia, cuando el componente de signo tiene un primer valor de signo, y de modo que la frecuencia de la señal del oscilador puede tener un segundo valor de frecuencia diferente, cuando el componente de signo tiene un segundo valor diferente.
[0253] Por ejemplo, cabe considerar el pseudo-coeficiente en la ubicación espectral 59 en el espectro de MDCT 635 de la Figura 9. Si la frecuencia 8.200 Hz se asignaría a la ubicación espectral 59 y si la frecuencia 8.400 Hz se asignaría a la ubicación espectral 60, entonces, el oscilador controlable puede, por ejemplo, configurarse para establecer la frecuencia del oscilador en 8.200 Hz, si el signo del valor espectral del pseudo-coeficiente es positivo, y puede, por ejemplo, estar configurado para establecer la frecuencia del oscilador en 8.300 Hz, si el signo del valor espectral del pseudo-coeficiente es negativo.
[0254] Así, el signo del valor espectral del pseudo-coeficiente puede utilizarse para controlar, si el oscilador controlable establece la frecuencia del oscilador en una frecuencia (por ejemplo, 8.200 Hz) asignada a la ubicación espectral derivada del pseudo-coeficiente (por ejemplo, la ubicación espectral 59) o a una frecuencia (por ejemplo, 8.300 Hz) entre la frecuencia (por ejemplo, 8.200 Hz) asignada a la ubicación espectral derivada del pseudo-coeficiente (por ejemplo, la ubicación espectral 59) y la frecuencia (por ejemplo, 8.400 Hz) asignada a la ubicación espectral que sigue inmediatamente a la ubicación espectral derivada del pseudo-coeficiente (por ejemplo, la ubicación espectral 60).
[0255] La Figura 11 ilustra un ejemplo que no forma parte de la invención, donde el aparato comprende osciladores controlables adicionales 252, 254, 256 para generar señales adicionales del oscilador en el dominio de tiempo controladas por los valores espectrales de pseudo-coeficientes adicionales del único o de los varios pseudocoeficientes. Cada uno de los osciladores controlables adicionales 252, 254, 256 genera una de las señales adicionales del oscilador en el dominio de tiempo. Cada uno de los osciladores controlables adicionales 252, 254, 256 está configurado para dirigir la frecuencia de la señal del oscilador sobre la base de la ubicación espectral derivada de uno de los pseudo-coeficientes. Y/o cada uno de los osciladores controlables 252, 254, 256 está configurado para dirigir la amplitud de la señal del oscilador sobre la base del valor espectral de uno de los pseudo-coeficientes.
[0256] Cada uno de los osciladores controlables adicionales 252, 254, 256 genera una de las señales adicionales del oscilador en el dominio de tiempo. Cada uno de los osciladores controlables 252, 254, 256 está configurado para dirigir la frecuencia de la señal del oscilador sobre la base de la ubicación espectral de uno de los pseudo-coeficientes. Y/o cada uno de los osciladores controlables 252, 254, 256 está configurado para dirigir la amplitud de la señal del oscilador sobre la base del valor espectral de uno de los pseudo-coeficientes.
[0257] El mezclador 160 de la Figura 10 y la Figura 11 está configurado para mezclar la señal de conversión en el dominio de tiempo generada por la unidad de conversión de espectro-tiempo 140 y la única o las varias señales del oscilador en el dominio de tiempo generadas por uno o más osciladores controlables 150, 252, 254, 256 para obtener la señal de salida de audio. El mezclador 160 puede generar la señal de salida de audio mediante la superposición de la señal de conversión en el dominio de tiempo y la única o las varias señales del oscilador en el dominio de tiempo.
[0258] La Figura 12 ilustra dos diagramas que comparan las sinusoides originales (izquierda) y las sinusoides después de que se procesaran mediante una cadena MDCT/IMDCT (derecha). Después de ser procesadas mediante la cadena MDCT/IMDCT, la sinusoide comprende artefactos ululados. Los conceptos proporcionados anteriormente no consideran que las sinusoides se procesan mediante la cadena MDCT/IMDCT, sino en cambio, la información sinusoidal se codifica mediante un pseudo-coeficiente y/o la sinusoide se reproduce mediante un oscilador controlable.
[0259] Aunque se han descrito algunos aspectos en el contexto de un aparato, está claro que estos aspectos también representan una descripción del procedimiento correspondiente, donde un bloque o dispositivo corresponde a una etapa del procedimiento o a una característica de una etapa del procedimiento. De manera análoga, los aspectos descritos en el contexto de una etapa del procedimiento representan también la descripción de un bloque o artículo correspondiente o la característica de un aparato correspondiente.
[0260] La señal descompuesta de la invención se puede almacenar en un medio de almacenamiento digital o se puede transmitir por un medio de transmisión tal como un medio de transmisión inalámbrica o un medio de transmisión por cable tal como Internet.
[0261] Según ciertos requisitos de implementación, las realizaciones de la invención se pueden implementar en hardware o en software. La implementación se puede realizar utilizando un medio de almacenamiento digital, por ejemplo, un disco flexible, DVD, Cd , PROM, EPr Om , EEPROM o una memoria FLASH, con señales de control de lectura electrónica almacenadas en su interior, que cooperan (o son capaces de cooperar) con un sistema informático programable de tal forma que se lleve a cabo el procedimiento respectivo.
[0262] Algunas realizaciones según la invención comprenden un soporte de datos no transitorios con señales de control de lectura electrónica, que son capaces de cooperar con un sistema informático programable, de tal forma que se lleve a cabo uno de los procedimientos descritos en esta invención.
[0263] Generalmente, las realizaciones de la presente invención se pueden implementar como un producto de programa informático con un código de programa, siendo el código de programa operativo para llevar a cabo uno de los procedimientos cuando se ejecuta en un ordenador el producto de programa informático. El código de programa puede almacenarse, por ejemplo, en un soporte legible por una máquina.
[0264] Otras realizaciones comprenden el programa informático para realizar uno de los procedimientos reivindicados, almacenados en un soporte legible por una máquina.
[0265] En otras palabras, una realización del procedimiento de la invención es, por lo tanto, un programa informático que tiene un código de programa para realizar uno de los procedimientos reivindicados, cuando se ejecuta el programa informático en un ordenador.
[0266] Una realización adicional de los procedimientos de la invención es, por lo tanto, un soporte de datos (o un medio de almacenamiento digital o un medio legible por ordenador) que contiene, registrado en él, el programa informático para llevar a cabo uno de los procedimientos reivindicados.
[0267] Una realización adicional de los procedimientos de la invención es, por lo tanto, un flujo de datos o una secuencia de señales que representan el programa informático para llevar a cabo uno de los procedimientos reivindicados. El flujo de datos o la secuencia de señales puede configurarse, por ejemplo, para ser transferido mediante una conexión de comunicación de datos, por ejemplo, a través de Internet.
[0268] Una realización adicional comprende un medio de procesamiento, por ejemplo, un ordenador o un dispositivo lógico programable, configurado o adaptado para llevar a cabo uno de los procedimientos reivindicados.
[0269] Una realización adicional comprende un ordenador que tiene instalado el programa informático para llevar a cabo uno de los procedimientos reivindicados.
[0270] En algunas realizaciones, se puede utilizar un dispositivo lógico programable (por ejemplo, una matriz de puertas programables por campos) para llevar a cabo algunas o todas las funcionalidades de los procedimientos reivindicados. En algunas realizaciones, una matriz de puertas programables por campos puede cooperar con un microprocesador con el fin de llevar a cabo uno de los procedimientos reivindicados. Generalmente, los procedimientos se llevan a cabo mediante cualquier aparato de hardware.
[0271] Las realizaciones descritas en lo anterior son meramente ilustrativas de los principios de la presente invención. Se entiende que modificaciones y variaciones de las disposiciones y los detalles descritos en esta invención serán evidentes para los expertos en la técnica. Por lo tanto, la intención es estar limitados únicamente por el alcance de las reivindicaciones de la patente adjunta y no por los detalles específicos presentados a modo de descripción y explicación de las realizaciones de esta invención.
Referencias
[0272]
[1] Daudet, L.; Sandler, M.; “MDCT analysis of sinusoids: exact results and applications to coding artifacts reduction” Speech and Audio Processing, IEEE Transactions, vol.12, nro.3, pp. 302-312, mayo de 2004
[2] Purnhagen, H.; Meine, N.; “HILN-the MPEG-4 parametric audio coding tools”Circuits and Systems, 2000. Procedimientos ISCAS 2000 Génova. The 2000 IEe E International Symposium, vol.3, nro., pp.201-204 vol.3,2000 [3] Oomen, Werner; Schuijers, Erik; den Brinker, Bert; Breebaart, Jeroen: “Advances in Parametric Coding for High-Quality Audio,” Audio Engineering Society Convention 114, preimpresión, Amsterdam/NL, marzo de 2003
[4] van Schijndel, N.H.; van de Par, S.; “Rate-distortion optimized hybrid sound coding”, Applications of Signal Processing to Audio and Acoustics, 2005. IEEE Workshop, vol., nro., pp. 235-238, 16-19 oct. de 2005
[5] Bessette, 8.; Lefebvre, R.; Salami, R. ;”Universal speech/audio coding using hybrid ACELP/TCX techniques”, Acoustics, Speech, and Signal Processing, 2005. Procedimientos (ICASSP '05). IEEE International Conference, vol.3, nro., pp. iii/301-iii/304 Val. 3, 18-23 marzo de 2005
[6] Ferreira, A.J.S. “Combined spectral envelope normalization and subtraction of sinusoidal components in the ODFT and MDCT frequency domains”, Applications of Signal Processing to Audio and Acoustics, 2001 IEEE Workshop, vol., nro., pp.51-54, 2001
[7] http://people.xiph.org/~xiphmont/demo/ghost/demo.html
El correspondiente archive.org-website está almacenado en: http://people.xiph.org/~xiphmont/demo/ghost/demo.html
[8] ISO/IEC 14496-3:2005(E) - Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio, Subparte 4
[9] ISO/IEC 14496-3:2009(E) - Tecnología de la información - Codificación de objetos audiovisuales - Parte 3: Audio, Subparte 4
[10] Anibal J. S. Ferreira. Perceptual coding using sinusoidal modeling in the MDCT domain. EnAudio Engineering Society Convention ll2, 42002.
[11] Deepen Ferreira, Anibal J. S.; Sinha. Accurate spectral replacement. En Audio Engineering Society Convention JJ 8, 52005.
[12] Rade Kutil. Optimized sinusoid synthesis via inverse truncated Fourier transform.Trans. Audio. Speech and Lang. Proc., 17(2):221-230. febrero de 2009.
[13] Nikolaus Meine y Heiko Purnhagen. Fast sinusoid synthesis for MPEG-4 hiln parametric audio decoding. Proc. of the 5 th Int. Conference on Digital Audio Effects (DAFx-02), Hamburgo, Alemania, septiembre 26-28, 2002, 0(0), 2002.

Claims (15)

REIVINDICACIONES
1. Un aparato para generar una señal de salida de audio basado en un espectro de la señal de audio codificada, en el que el aparato comprende:
una unidad de procesamiento (115) para procesar el espectro de la señal de audio codificada para obtener un espectro de la señal de audio decodificada que comprende una pluralidad de coeficientes espectrales, en el que cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro de la señal de audio codificada y un valor espectral, en el que los coeficientes espectrales están ordenados secuencialmente según sus ubicaciones espectrales dentro del espectro de la señal de audio codificada de tal manera que los coeficientes espectrales forman una secuencia de coeficientes espectrales,
un determinador de pseudo-coeficientes (125) para determinar uno o más pseudo-coeficientes del espectro de la señal de audio decodificada, en el que cada coeficiente determinado del uno o más coeficientes determinados es uno de la pluralidad de coeficientes espectrales que tienen u valor espectral, en el que el determinador de pseudocoeficientes (120) está configurado para determinar el uno o más coeficientes determinados determinando al menos un coeficiente espectral de la pluralidad de coeficientes espectrales, que tiene un valor espectral que es diferente de un valor predefinido, que tiene un predecesor inmediato cuyo valor espectral es igual al valor predefinido, y que tiene un sucesor inmediato cuyo valor espectral es igual al valor predefinido, una unidad de reemplazo (135) para reemplazar al menos uno de los uno o más coeficientes determinados y al menos uno de un predecesor y un sucesor de cada uno de los al menos uno o más coeficientes determinados, mediante un patrón espectral determinado para obtener un espectro de señal de audio modificado, en el que el patrón espectral determinado comprende al menos dos coeficientes de patrón, en el que cada uno de los al menos dos coeficientes de patrón tiene un valor espectral y una unidad de conversión de tiempo de espectro (145) para convertir el espectro de señal de audio modificado a un dominio de tiempo para obtener la señal de salida de audio.
2. Un aparato según la reivindicación 1,
en el que el aparato comprende además una unidad de almacenamiento (155) que comprende una base de datos o una memoria que tiene almacenada dentro de la base de datos o dentro de la memoria una pluralidad de patrones espectrales almacenados, en el que cada uno de los patrones espectrales almacenados tiene una propiedad espectral,
en el que la unidad de reemplazo (135) está configurada para solicitar uno de los patrones espectrales almacenados de la unidad de almacenamiento (155) como un patrón espectral solicitado,
en el que la unidad de almacenamiento (155) está configurada para proporcionar el patrón espectral solicitado, y en el que la unidad de reemplazo (135) está configurada para reemplazar al menos uno o más coeficientes determinados y al menos uno de un predecesor y un sucesor de cada uno de al menos uno o más coeficientes determinados, por el patrón espectral determinado sobre la base del patrón espectral solicitado.
3. Un aparato según la reivindicación 2, en el que la unidad de reemplazo (135) está configurada para solicitar uno de los patrones espectrales almacenados en la unidad de almacenamiento (155) según una primera ubicación espectral derivada de uno del uno o más coeficientes determinados, determinados por el determinador de pseudo-coeficientes (125), siendo dicha primera ubicación espectral derivada una ubicación espectral de una pluralidad de ubicaciones espectrales temporalmente consecutivas.
4. Un aparato según la reivindicación 3,
en el que los uno o más coeficientes determinados son valores con signo, comprendiendo cada uno de los cuales un componente de signo, y
en el que la unidad de reemplazo (135) está configurada para determinar la primera ubicación espectral derivada basada en la ubicación espectral de un coeficiente determinado de uno o más coeficientes determinados y en función del componente de signo de dicho coeficiente determinado, de modo que la primera ubicación espectral derivada es igual a la ubicación espectral de dicho coeficiente determinado cuando el componente de signo tiene un primer valor de signo, y de modo que la primera ubicación espectral derivada es igual a una ubicación modificada, resultando la ubicación modificada de cambiar la ubicación espectral de dicho coeficiente determinado mediante un valor definido cuando el componente de signo tiene un segundo valor diferente.
5. Un aparato según la reivindicación 3 o 4,
en el que la pluralidad de patrones espectrales almacenados que se almacenan dentro de la base de datos o la memoria de la unidad de almacenamiento (155) pueden ser tanto patrones tonales estacionarios como patrones de barrido de frecuencia,
en el que el determinador de pseudo-coeficientes (125) está configurado para determinar dos o más coeficientes temporalmente consecutivos del espectro de la señal de audio decodificada,
en el que la unidad de reemplazo (135) está configurada para asignar un primer coeficiente determinado y un segundo coeficiente determinado de los dos o más coeficientes temporalmente consecutivos a una pista dependiendo de si una diferencia absoluta entre la primera ubicación espectral derivada, derivada del primer coeficiente determinado y una segunda ubicación espectral derivada, derivada del segundo coeficiente determinado es menor que un valor de umbral, y
en el que la unidad de reemplazo (135) está configurada para solicitar uno de los patrones tonales estacionarios a la unidad de almacenamiento (155) cuando la primera ubicación espectral derivada, derivada del primer coeficiente determinado de la pista es igual a la segunda ubicación espectral derivada, derivada del segundo coeficiente determinado de la pista, y en el que la unidad de reemplazo (135) está configurada para solicitar uno de los patrones de la frecuencia de barrido de la unidad de almacenamiento (155) cuando la primera ubicación espectral derivada, derivada del primer coeficiente determinado de la pista es diferente de la segunda ubicación espectral derivada, derivada del segundo coeficiente determinado de la pista.
6. Un aparato según la reivindicación 5,
en el que la unidad de reemplazo (135) está configurada para solicitar un primer patrón de barrido de frecuencia de los patrones de barrido de frecuencia a la unidad de almacenamiento (155) cuando la diferencia de frecuencia entre la segunda ubicación espectral derivada, derivada del segundo coeficiente determinado de la pista y la primera ubicación espectral derivada, derivada del primer coeficiente determinado de la pista es igual a la mitad de un valor definido,
en el que la unidad de reemplazo (135) está configurada para solicitar un segundo patrón de barrido de frecuencia, que es distinto del primer patrón de barrido de frecuencia, de los patrones de barrido de frecuencia de la unidad de almacenamiento (155) cuando la diferencia de frecuencia entre la segunda ubicación espectral derivada, derivada del segundo coeficiente determinado de la pista y la primera ubicación espectral derivada, derivada del primer coeficiente determinado de la pista es igual que un valor predefinido, y
en el que la unidad de reemplazo (135) está configurada para solicitar un tercer patrón de barrido de frecuencia, que es distinto del primer patrón de barrido de frecuencia y del segundo patrón de barrido de frecuencia, de los patrones de barrido de frecuencia de la unidad de almacenamiento (155) cuando la diferencia de frecuencia entre la segunda ubicación espectral derivada, derivada del segundo coeficiente determinado de la pista y la primera ubicación espectral derivada, derivada del primer coeficiente determinado de la pista es igual que una vez y media veces el valor definido.
7. Un aparato según una de las reivindicaciones 2 a 6, en el que la unidad de reemplazo (135) comprende una unidad de adaptación de patrón (138) configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento (155) para obtener el patrón espectral determinado.
8. Un aparato según la reivindicación 7, en el que la unidad de adaptación de patrón (138) está configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento (155) re-escalando los valores espectrales de los coeficientes de patrón de los patrones espectrales solicitados según el valor espectral de uno de uno del uno o más coeficientes determinados.
9. Un aparato según la reivindicación 7 u 8, en el que la unidad de adaptación de patrón (138) está configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento (155) según un valor de fase inicial.
10. Un aparato según una de las reivindicaciones 7 a 9,
en el que el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado es un coeficiente complejo que comprende una parte real y una parte imaginaria, y
en el que la unidad de adaptación de patrón (138) está configurada para modificar el patrón espectral solicitado al modificar la parte real y la parte imaginaria de cada uno de los coeficientes de patrón del patrón espectral solicitado suministrado por la unidad de almacenamiento (155), mediante la aplicación de un factor complejo de rotación ej9 ' en el que 9 es un valor angular.
11. Un aparato según una de las reivindicaciones 7 a 9, en el que el valor espectral de cada uno de los coeficientes de patrón del patrón espectral solicitado es un coeficiente complejo que comprende una parte real y una parte imaginaria.
12. Un aparato según una de las reivindicaciones 7 a 11, en el que la unidad de adaptación de patrón (138) está configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento (155) al computar el conjugado complejo del patrón espectral solicitado.
13. Un aparato según una de las reivindicaciones 7 a 12,
en el que el espectro de la señal de audio decodificada se representa en el dominio de MDCT,
en el que la unidad de adaptación de patrón (138) está configurada para modificar el patrón espectral solicitado suministrado por la unidad de almacenamiento (155) mediante la modificación de los valores espectrales de los coeficientes de patrón del patrón espectral solicitado para obtener un patrón espectral modificado, en el que los valores espectrales están representados en el dominio de una Transformada Discreta de Fourier de Apilado Impar, en el que la unidad de adaptación de patrón (138) está configurada para transformar los valores espectrales de los coeficientes de patrón del patrón espectral modificado del dominio de Transformada Discreta de Fourier de Apilado Impar al dominio de MDCT para obtener el patrón espectral determinado, y
en el que la unidad de reemplazo (135) está configurada para reemplazar al menos uno o más coeficientes determinados por el patrón espectral determinado que se representa en el dominio de MDCT para obtener el espectro modificado de la señal de audio que se representa en el dominio de MDCT.
14. Un procedimiento para generar una señal de salida de audio basado en un espectro de la señal de audio codificada, en el que el procedimiento comprende:
procesar el espectro de la señal de audio codificada para obtener un espectro de la señal de audio decodificada que comprende una pluralidad de coeficientes espectrales, en el que cada uno de los coeficientes espectrales tiene una ubicación espectral dentro del espectro de la señal de audio codificada y un valor espectral, en el que los coeficientes espectrales están ordenados secuencialmente según sus ubicaciones espectrales dentro del espectro de la señal de audio codificada de tal manera que los coeficientes espectrales forman una secuencia de coeficientes espectrales,
determinar uno o más coeficientes determinados del espectro de la señal de audio decodificada, en el que cada uno de los coeficientes determinados es una de la pluralidad de coeficientes espectrales, en el que la determinación de uno o más coeficientes determinados se realiza determinando al menos un coeficiente espectral de la pluralidad de coeficientes espectrales, que tiene un valor espectral que es diferente de un valor predefinido, que tiene un predecesor inmediato al valor espectral cuyo valor es igual al valor predefinido, y que tiene un sucesor inmediato cuyo valor espectral es igual al valor predefinido,
reemplazar al menos uno de los uno o más coeficientes determinados y al menos uno de un predecesor y un sucesor de cada uno de los al menos uno o más coeficientes determinados, mediante un patrón espectral determinado para obtener un espectro de señal de audio modificado, en el que el patrón espectral determinado comprende al menos dos coeficientes de patrón, en los que cada uno de los al menos dos coeficientes de patrón tiene un valor espectral, y
convertir el espectro de señal de audio modificado a un dominio de tiempo para obtener la señal de salida de audio.
15. Un programa informático para implementar el procedimiento de la reivindicación 14 cuando se ejecuta en un ordenador o procesador de señal.
ES13766036T 2012-10-10 2013-09-20 Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales Active ES2896016T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261712013P 2012-10-10 2012-10-10
EP12199266.3A EP2720222A1 (en) 2012-10-10 2012-12-21 Apparatus and method for efficient synthesis of sinusoids and sweeps by employing spectral patterns
PCT/EP2013/069592 WO2014056705A1 (en) 2012-10-10 2013-09-20 Apparatus and method for efficient synthesis of sinusoids and sweeps by employing spectral patterns

Publications (1)

Publication Number Publication Date
ES2896016T3 true ES2896016T3 (es) 2022-02-23

Family

ID=47715790

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13766036T Active ES2896016T3 (es) 2012-10-10 2013-09-20 Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales

Country Status (18)

Country Link
US (1) US9570085B2 (es)
EP (3) EP2720222A1 (es)
JP (3) JP6563338B2 (es)
KR (1) KR101777485B1 (es)
CN (1) CN104903956B (es)
AR (1) AR092958A1 (es)
AU (3) AU2013329734B2 (es)
BR (1) BR112015008114B1 (es)
CA (2) CA2887188C (es)
ES (1) ES2896016T3 (es)
HK (1) HK1213688A1 (es)
MX (1) MX344955B (es)
MY (1) MY193732A (es)
RU (1) RU2633136C2 (es)
SG (2) SG10201702285QA (es)
TW (1) TWI543152B (es)
WO (1) WO2014056705A1 (es)
ZA (1) ZA201503152B (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2963649A1 (en) * 2014-07-01 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio processor and method for processing an audio signal using horizontal phase correction
EP2980791A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
CN107004417B (zh) * 2014-12-09 2021-05-07 杜比国际公司 Mdct域错误掩盖
EP3107096A1 (en) 2015-06-16 2016-12-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Downscaled decoding
US10146500B2 (en) 2016-08-31 2018-12-04 Dts, Inc. Transform-based audio codec and method with subband energy smoothing
US10362423B2 (en) 2016-10-13 2019-07-23 Qualcomm Incorporated Parametric audio decoding
CN108074588B (zh) * 2016-11-15 2020-12-01 北京唱吧科技股份有限公司 一种音高计算方法及装置
US10638227B2 (en) 2016-12-02 2020-04-28 Dirac Research Ab Processing of an audio input signal
CN116631416A (zh) * 2017-01-10 2023-08-22 弗劳恩霍夫应用研究促进协会 音频解码器、提供解码的音频信号的方法、和计算机程序
CN106847294B (zh) * 2017-01-17 2018-11-30 百度在线网络技术(北京)有限公司 基于人工智能的音频处理方法和装置
US10210874B2 (en) * 2017-02-03 2019-02-19 Qualcomm Incorporated Multi channel coding
CN110867194B (zh) * 2019-11-05 2022-05-17 腾讯音乐娱乐科技(深圳)有限公司 音频的评分方法、装置、设备及存储介质

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL173718B1 (pl) * 1993-06-30 1998-04-30 Sony Corp Sposób i urządzenie do kodowania sygnałów cyfrowych
JP3203657B2 (ja) * 1994-04-01 2001-08-27 ソニー株式会社 情報符号化方法及び装置,情報復化方法及び装置,情報伝送方法,並びに情報記録媒体
TW384434B (en) * 1997-03-31 2000-03-11 Sony Corp Encoding method, device therefor, decoding method, device therefor and recording medium
DE60017825T2 (de) * 1999-03-23 2006-01-12 Nippon Telegraph And Telephone Corp. Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür
WO2001052241A1 (en) * 2000-01-11 2001-07-19 Matsushita Electric Industrial Co., Ltd. Multi-mode voice encoding device and decoding device
JP3997522B2 (ja) * 2000-12-14 2007-10-24 ソニー株式会社 符号化装置および方法、復号装置および方法、並びに記録媒体
JP2002311996A (ja) * 2001-02-09 2002-10-25 Sony Corp コンテンツ供給システム
JP4534382B2 (ja) * 2001-02-09 2010-09-01 ソニー株式会社 符号列生成装置及び方法、信号再生装置及び方法、並びにコンテンツ供給システム
JP2003029797A (ja) * 2001-05-11 2003-01-31 Matsushita Electric Ind Co Ltd 符号化装置、復号化装置および放送システム
JP4012506B2 (ja) 2001-08-24 2007-11-21 株式会社ケンウッド 信号の周波数成分を適応的に補間するための装置および方法
JP4322207B2 (ja) * 2002-07-12 2009-08-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオ符号化方法
ATE427623T1 (de) * 2002-12-20 2009-04-15 Nokia Corp Verfahren und vorrichtung zur organisation von benutzerseitiger information mit meta-information
US7318035B2 (en) * 2003-05-08 2008-01-08 Dolby Laboratories Licensing Corporation Audio coding systems and methods using spectral component coupling and spectral component regeneration
ATE452401T1 (de) 2003-10-13 2010-01-15 Koninkl Philips Electronics Nv Audiocodierung
US7693709B2 (en) * 2005-07-15 2010-04-06 Microsoft Corporation Reordering coefficients for waveform coding or decoding
KR100986957B1 (ko) * 2005-12-05 2010-10-12 퀄컴 인코포레이티드 토널 컴포넌트들을 감지하는 시스템들, 방법들, 및 장치들
KR101346358B1 (ko) * 2006-09-18 2013-12-31 삼성전자주식회사 대역폭 확장 기법을 이용한 오디오 신호의 부호화/복호화방법 및 장치
US8041578B2 (en) * 2006-10-18 2011-10-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoding an information signal
JP2008268384A (ja) * 2007-04-17 2008-11-06 Nec Lcd Technologies Ltd 液晶表示装置
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US20100324708A1 (en) * 2007-11-27 2010-12-23 Nokia Corporation encoder
EP2107556A1 (en) * 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
DK2320416T3 (da) * 2008-08-08 2014-05-26 Panasonic Corp Indretning til spektral udglatning, kodningsindretning, afkodningsindretning, kommunikationsterminalindretning, basisstationsindretning og fremgangsmåde til spektral udglatning
JP5459688B2 (ja) 2009-03-31 2014-04-02 ▲ホア▼▲ウェイ▼技術有限公司 復号信号のスペクトルを調整する方法、装置、および音声復号システム
EP2237266A1 (en) * 2009-04-03 2010-10-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for determining a plurality of local center of gravity frequencies of a spectrum of an audio signal
ES2400661T3 (es) * 2009-06-29 2013-04-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación y decodificación de extensión de ancho de banda
ES2441069T3 (es) * 2009-10-08 2014-01-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador multimodo para señal de audio, codificador multimodo para señal de audio, procedimiento y programa de computación que usan un modelado de ruido en base a linealidad-predicción-codificación
PL2676268T3 (pl) * 2011-02-14 2015-05-29 Fraunhofer Ges Forschung Urządzenie i sposób przetwarzania zdekodowanego sygnału audio w domenie widmowej
EP2702589B1 (en) * 2011-04-28 2017-04-05 Dolby International AB Efficient content classification and loudness estimation
FR2996047B1 (fr) * 2012-09-27 2014-09-05 Renault Sa Dispositif inductif limitant les oscillations acoustiques

Also Published As

Publication number Publication date
RU2015117432A (ru) 2016-12-10
CA2887188C (en) 2017-11-28
CN104903956A (zh) 2015-09-09
AU2018250490A1 (en) 2018-11-15
CN104903956B (zh) 2018-11-16
MX2015004506A (es) 2015-12-01
JP7005564B2 (ja) 2022-01-21
KR20150066570A (ko) 2015-06-16
HK1213688A1 (zh) 2016-07-08
CA2944927A1 (en) 2014-04-17
CA2887188A1 (en) 2014-04-17
AR092958A1 (es) 2015-05-06
EP3133598A1 (en) 2017-02-22
ZA201503152B (en) 2016-01-27
AU2018250490B2 (en) 2020-10-22
AU2013329734A1 (en) 2015-04-23
BR112015008114A2 (es) 2017-08-22
JP2016500839A (ja) 2016-01-14
CA2944927C (en) 2018-11-27
EP2720222A1 (en) 2014-04-16
MY193732A (en) 2022-10-27
US9570085B2 (en) 2017-02-14
BR112015008114B1 (pt) 2022-05-17
AU2013329734B2 (en) 2017-01-05
JP2018036668A (ja) 2018-03-08
EP2907132B1 (en) 2021-09-29
RU2633136C2 (ru) 2017-10-11
MX344955B (es) 2017-01-12
EP2907132A1 (en) 2015-08-19
SG11201502744YA (en) 2015-05-28
TWI543152B (zh) 2016-07-21
AU2016277636A1 (en) 2017-02-02
JP6563338B2 (ja) 2019-08-21
JP6789915B2 (ja) 2020-11-25
SG10201702285QA (en) 2017-04-27
KR101777485B1 (ko) 2017-09-26
TW201419268A (zh) 2014-05-16
WO2014056705A1 (en) 2014-04-17
JP2019219676A (ja) 2019-12-26
US20150213808A1 (en) 2015-07-30

Similar Documents

Publication Publication Date Title
ES2896016T3 (es) Aparato y procedimiento para la síntesis eficaz de sinusoides y barridos mediante el empleo de patrones espectrales
RU2562383C2 (ru) Устройство и способ для кодирования и декодирования аудио, применяющие синусоидальную замену
ES2827774T3 (es) Codificador de audio y método relacionado usando procesamiento de dos canales dentro de un marco de referencia de relleno inteligente de espacios
ES2693051T3 (es) Aparato y procedimiento para generar una señal mejorada mediante el uso de relleno de ruido independiente
Disch et al. Sinusoidal substitution—An integrated parametric tool for enhancement of transform-based perceptual audio coders
Disch et al. Cheap beeps-efficient synthesis of sinusoids and sweeps in the MDCT domain