ES2967508T3 - Aparato y procedimiento de codificación de extensión de ancho de banda de alta frecuencia - Google Patents
Aparato y procedimiento de codificación de extensión de ancho de banda de alta frecuencia Download PDFInfo
- Publication number
- ES2967508T3 ES2967508T3 ES17179600T ES17179600T ES2967508T3 ES 2967508 T3 ES2967508 T3 ES 2967508T3 ES 17179600 T ES17179600 T ES 17179600T ES 17179600 T ES17179600 T ES 17179600T ES 2967508 T3 ES2967508 T3 ES 2967508T3
- Authority
- ES
- Spain
- Prior art keywords
- signal
- coding
- frequency
- input signal
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 105
- 230000005284 excitation Effects 0.000 claims abstract description 35
- 239000013598 vector Substances 0.000 claims description 62
- 239000000284 extract Substances 0.000 claims description 14
- 238000011002 quantification Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 238000013139 quantization Methods 0.000 description 79
- 238000001228 spectrum Methods 0.000 description 62
- 238000010586 diagram Methods 0.000 description 54
- 230000009466 transformation Effects 0.000 description 28
- 238000010606 normalization Methods 0.000 description 23
- 238000005070 sampling Methods 0.000 description 20
- 230000001052 transient effect Effects 0.000 description 15
- 230000002087 whitening effect Effects 0.000 description 15
- 230000002441 reversible effect Effects 0.000 description 12
- 238000004061 bleaching Methods 0.000 description 8
- 238000009499 grossing Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 230000003595 spectral effect Effects 0.000 description 4
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/038—Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
Se divulgan un aparato y un método para codificar/decodificar para la extensión del ancho de banda de alta frecuencia. El método de codificación comprende determinar un modo de codificación central de una señal de baja frecuencia de una señal de entrada, basándose en las características de la señal de baja frecuencia de la señal de entrada, cuantificar un coeficiente de predicción lineal (LPC) a partir de la señal de baja frecuencia de la señal de entrada. El método incluye realizar codificación de predicción lineal excitada por código (CELP) en una señal de excitación LPC de la señal de baja frecuencia de la señal de entrada cuando se determina que el modo de codificación central de la señal de baja frecuencia de la señal de entrada es un modo de codificación CELP. . El método incluye realizar codificación de extensión en el dominio del tiempo (TD) en una señal de alta frecuencia de la señal de entrada cuando la codificación CELP se realiza en la señal de excitación LPC. El método incluye realizar codificación de audio en la señal de excitación LPC cuando se determina que el modo de codificación central de la señal de baja frecuencia de la señal de entrada es un modo de codificación de audio. El método incluye realizar codificación de extensión en el dominio de frecuencia (FD) en la señal de alta frecuencia de la señal de entrada cuando la codificación de audio se realiza en la señal de excitación LPC. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Aparato y procedimiento de codificación de extensión de ancho de banda de alta frecuencia
Campo técnico
Uno o más aspectos de la presente invención se refieren a un procedimiento y aparato para codificar una señal de audio, por ejemplo, una señal vocal o una señal de música, y más particularmente, a un procedimiento y aparato para codificar una señal correspondiente a una banda de alta frecuencia de una señal de audio
Técnica anterior
Una señal correspondiente a una banda de alta frecuencia es menos sensible a una estructura fina de frecuencia que una señal correspondiente a una banda de baja frecuencia. Por lo tanto, cuando se aumenta la eficiencia de codificación para eliminar restricciones en relación con los bits disponibles para codificar una señal de audio, se asigna un gran número de bits a la señal correspondiente a la banda de baja frecuencia y se asigna un número relativamente pequeño de bits a la señal correspondiente a la banda de alta frecuencia.
Una tecnología que emplea el procedimiento anterior es la replicación de banda espectral (SBR). En la SBR, la eficacia de la codificación aumenta expresando una señal de alta frecuencia con una envolvente y sintetizando la envolvente durante un procedimiento de decodificación. La SBR es en base a las características auditivas de los humanos, que tiene una resolución relativamente baja con respecto a una señal de alta frecuencia. El documento US 2010/0305956 A1 divulga un codificador de audio que comprende una unidad de codificación multicanal, una unidad de codificación de señal de extensión de ancho de banda, una primera unidad de codificación de esquema de codificación y una segunda unidad de codificación de esquema de codificación.
Descripción detallada de la invención
Problema Técnico
La presente invención proporciona procedimientos para extender un ancho de banda de una banda de alta frecuencia, en base a la Replicación de Banda Espectral (SBR).
Solución Técnica
De acuerdo con la presente invención, se proporciona un procedimiento de codificación como se establece en la reivindicación 1, un aparato de codificación como se establece en la reivindicación 4 y un medio de registro no transitorio legible por ordenador como se establece en la reivindicación 5. Las realizaciones preferentes se establecen en las reivindicaciones dependientes.
Breve descripción de los dibujos
La Figura 1 es un diagrama de bloques de un aparato de codificación y un aparato de decodificación. La Figura 2A es un diagrama de bloques de toda la estructura del aparato de codificación.
La Figura 2B es un diagrama de bloques de toda la estructura del aparato de codificación.
La Figura 2C es un diagrama de bloques de un codificador de dominio de frecuencia (FD) incluido en un aparato de codificación.
La Figura 2D es un diagrama de bloques de toda la estructura de un aparato de codificación de acuerdo con la presente invención.
La Figura 3 es un diagrama de bloques de un codificador de núcleo incluido en un aparato de codificación. La Figura 4 es un diagrama de bloques de un codificador de extensión incluido en un aparato de codificación. La Figura 5 es un diagrama de bloques de un codificador de extensión incluido en un aparato de codificación. La Figura 6 es un diagrama de bloques de un generador de señal base incluido en el codificador de extensión. La Figura 7 es un diagrama de bloques de un estimador de factor incluido en el codificador de extensión. La Figura 8 es un diagrama de flujo que ilustra una operación de un cuantificador de energía.
La Figura 9 es un diagrama que ilustra un procedimiento de cuantificación de energía.
La Figura 10 es un diagrama que ilustra un procedimiento de generación de una señal artificial.
Las Figuras 11A y 11B ilustran, respectivamente, ventanas para estimar una envolvente.
La Figura 12A es un diagrama de bloques de una decodificación.
La Figura 12B es un diagrama de bloques de un aparato de decodificación.
La Figura 12C es un diagrama de bloques de un decodificador FD incluido en un aparato de decodificación. La Figura 12D es un diagrama de bloques de un aparato de decodificación.
La Figura 13 es un diagrama de bloques de un decodificador de extensión incluido en un aparato de decodificación.
La Figura 14 es un diagrama de flujo que ilustra una operación de un cuantificador inverso incluido en el decodificador de extensión.
La Figura 15A es un diagrama de flujo que ilustra un procedimiento de codificación.
La Figura 15B es un diagrama de flujo que ilustra un procedimiento de codificación.
La Figura 15C es un diagrama de flujo que ilustra un procedimiento de codificación.
La Figura 16A es un diagrama de flujo que ilustra un procedimiento de decodificación.
La Figura 16B es un diagrama de flujo que ilustra un procedimiento de decodificación.
La Figura 16C es un diagrama de flujo que ilustra un procedimiento de decodificación.
La Figura 17 es un diagrama de bloques de toda la estructura de un aparato de codificación.
La Figura 18 es un diagrama de flujo que ilustra una operación de un cuantificador de energía incluido en un aparato de codificación.
La Figura 19 es un diagrama que ilustra un procedimiento de cuantificación de energía utilizando un procedimiento de asignación desigual de bits.
La Figura 20 es un diagrama que ilustra la cuantificación vectorial utilizando la predicción intra-trama.
La Figura 21 es un diagrama que ilustra un procedimiento de cuantificación de energía utilizando un procedimiento de ponderación de frecuencias.
La Figura 22 es un diagrama que ilustra la cuantificación vectorial utilizando cuantificación vectorial dividida en múltiples etapas y predicción intra-trama.
La Figura 23 es un diagrama que ilustra una operación de un cuantificador inverso incluido en un aparato de decodificación.
La Figura 24 es un diagrama de bloques de toda la estructura de un aparato de codificación.
La Figura 25 es un diagrama que ilustra los flujos de bits.
La Figura 26 es un diagrama que ilustra un procedimiento de realización de la asignación de frecuencias para cada banda de frecuencia.
La Figura 27 es un diagrama que ilustra las bandas de frecuencia utilizadas en un codificador FD o un descodificador FD.
Modo de la invención
De aquí en adelante, la presente invención se describirá en detalle con referencia a las Figuras 2D y 15C. Las figuras restantes proporcionan información contextual útil.
La Figura 1 es un diagrama de bloques de un aparato 101 de codificación y un aparato 102 de decodificación de acuerdo con una realización.
El aparato 101 de codificación puede generar una señal base (o una señal básica) de una señal de entrada y transmitir la señal base al aparato 102 de decodificación. La señal de base se genera en base a una señal de baja frecuencia de la señal de entrada. La señal base puede ser una señal de excitación para la extensión de ancho de banda de alta frecuencia, ya que la señal base se obtiene blanqueando la información de envolvente de la señal de baja frecuencia. El aparato 102 de decodificación puede reconstruir la señal de entrada a partir de la señal base. En otras palabras, el aparato 101 de codificación y el aparato 102 de decodificación realizan una extensión del ancho de banda superancha (SWB BWE). En detalle, a través del SWB BWE, se puede generar una señal correspondiente a una banda de alta frecuencia de 6,4 a 16 KHz correspondiente a un SWB en base a una señal decodificada de banda ancha (WB) correspondiente a una banda de baja frecuencia de 0 a 6,4 KHz. En este caso, los 16 KHz pueden variar de acuerdo con las circunstancias. La señal WB decodificada puede generarse utilizando un códec de voz de acuerdo con la predicción lineal excitada por código (CELP) en base a un dominio de predicción lineal (LPD) o realizando la cuantificación en un dominio de frecuencia. Un ejemplo de un procedimiento de realización de cuantificación en un dominio de frecuencia puede incluir la codificación avanzada de audio (AAC) en base a la transformación discreta del coseno modificada (MDCT).
Las operaciones del aparato 101 de codificación y del aparato 102 de decodificación se describirán ahora en detalle.
La Figura 2A es un diagrama de bloques de toda la estructura de un aparato 101 de codificación.
Con referencia a la Figura 2A, el aparato 101 de codificación puede incluir un muestreador 201 descendente, un codificador 202 de núcleo, un transformador 203 de frecuencia, y un codificador 204 de extensión.
Para la codificación de banda ancha (WB), el muestreador 201 descendente puede muestrear de manera descendente una señal de entrada. En general, la señal de entrada, por ejemplo, una señal de banda superancha (SWB) tiene una tasa de muestreo de 32 KHz, y se convierte en una señal que tiene una tasa de muestreo adecuada para la codificación WB. Por ejemplo, el muestreador 201 descendente puede muestrear de manera descendente la señal de entrada que tiene, por ejemplo, una tasa de muestreo de 32 KHz a una señal que tiene, por ejemplo, una tasa de muestreo de 12,8 KHz.
El codificador 202 de núcleo puede realizar la codificación de núcleo en la señal de entrada de muestreo descendente. En otras palabras, el codificador 202 de núcleo puede realizar la codificación WB. Por ejemplo, el codificador 202 de núcleo puede realizar la codificación WB en base a un procedimiento CELP.
El transformador 203 de frecuencia puede realizar una transformación de frecuencia en la señal de entrada. Por ejemplo, el transformador 203 de frecuencia puede realizar la Transformación Rápida de Fourier (FFT) o MDCT para realizar la transformación de frecuencia en la señal de entrada. De aquí en adelante se supone que se utiliza la MDCT.
El codificador 204 de extensión puede realizar la codificación de extensión de ancho de banda utilizando una señal base de la señal de entrada en un dominio de frecuencia. Es decir, el codificador 204 de extensión puede realizar la codificación SWB BWE en base a la señal de entrada en el dominio de frecuencia. En este caso, el codificador 204 de extensión no recibe información de codificación, como se describirá con referencia a la Figura 4 a continuación.
Además, el codificador 204 de extensión puede realizar la codificación de extensión de ancho de banda, en base a las características de la señal de entrada y una señal base de la señal de entrada en el dominio de frecuencia. En este caso, el codificador 204 de extensión puede ser incorporado como se ilustra en la Figura 4 o 5 de acuerdo con una fuente de las características de la señal de entrada.
Se describirá en detalle una operación del codificador 204 de extensión con referencia a la Figura 4 y la Figura 5 a continuación.
Por lo tanto, un trayecto superior y un trayecto inferior de la Figura 2A denotan un procedimiento de codificación de núcleo y un procedimiento de codificación de extensión de ancho de banda, respectivamente. La información de energía de la señal de entrada puede transmitirse al aparato 102 de decodificación a través de la codificación SWB BWE.
La Figura 2B es un diagrama de bloques de toda la estructura de un aparato 101 de codificación.
Con referencia a la Figura 2B, el aparato 101 de codificación puede incluir una unidad 205 de clasificación de señal, un codificador 206 CELP, un codificador 207 de extensión de dominio de tiempo (TD), un transformador 208 de frecuencia, y un codificador 209 de dominio de frecuencia (FD).
La unidad 205 de clasificación de señal determina un modo de codificación de una señal de entrada, en base a las características de la señal de entrada. El modo de codificación puede ser un procedimiento de codificación.
Por ejemplo, la unidad 205 de clasificación de señal puede determinar un modo de codificación de la señal de entrada teniendo en cuenta las características de dominio de tiempo y de dominio de frecuencia de la señal de entrada. Además, la unidad 205 de clasificación de señal determina la codificación CELP que debe realizarse en la señal de entrada cuando las características de la señal de entrada son una señal de voz y determina la codificación FD que debe realizarse en la señal de entrada cuando las características de la señal de entrada son una señal de audio.
Sin embargo, la señal de entrada suministrada a la unidad 205 de clasificación de señal puede ser una señal muestreada de manera descendente por un muestreador descendente (no se muestra). Por ejemplo, una señal de entrada puede ser una señal con una tasa de muestreo de 12,8 kHz o 16 kHz mediante el remuestreo de una señal que tiene una tasa de muestreo de 32 kHz o 48 kHz. El remuestreo puede ser un muestreo descendente.
Como se describe más arriba con referencia a la Figura 2A, una señal que tiene una tasa de muestreo de 32 kHz puede ser una señal de banda superancha (SWB). La señal SWB puede ser una señal de banda completa (FB). Una señal que tiene una tasa de muestreo de 16 kHz puede ser una señal WB.
La unidad 205 de clasificación de señal puede determinar un modo de codificación de una señal de baja frecuencia correspondiente a una banda de baja frecuencia de la señal de entrada para que sea un modo CELP o un modo FD, en base a las características de la señal de baja frecuencia.
Si el modo de codificación de la señal de entrada se determina como el modo CELP, el codificador 206 CELP realiza la codificación CELP en la señal de baja frecuencia de la señal de entrada. Por ejemplo, el codificador 206 CELP puede extraer una señal de excitación a partir de la señal de baja frecuencia de la señal de entrada, y cuantificar la señal de excitación extraída en base a la contribución fija del libro de códigos y la contribución adaptativa del libro de códigos correspondiente a la información de tono.
Sin embargo, el codificador 206 CELP puede además extraer un coeficiente de predicción lineal (LPC) a partir de la señal de baja frecuencia de la señal de entrada, cuantificar el LPC extraído, y extraer una señal de excitación utilizando el LPC cuantificado.
Además, el codificador 206 CELP puede realizar la codificación CELP en la señal de baja frecuencia de la señal de entrada de acuerdo con diversos modos de codificación de acuerdo con las características de la señal de baja frecuencia de la señal de entrada. Por ejemplo, el codificador 206 CELP puede realizar la codificación CELP en la señal de baja frecuencia de la señal de entrada de acuerdo con uno de, por ejemplo, un modo de codificación con voz, un modo de codificación sin voz, un modo de codificación de transición, y un modo de codificación genérico.
Cuando se realiza la codificación CELP en la señal de baja frecuencia de la señal de entrada, el codificador 207 de extensión TD realiza la codificación de extensión en una señal de alta frecuencia de la señal de entrada. Por ejemplo, el codificador 207 de extensión TD cuantifica un LPC de una señal de alta frecuencia correspondiente a una banda de alta frecuencia de la señal de entrada. En este caso, el codificador 207 de extensión TD puede extraer un LPC de la señal de alta frecuencia de la señal de entrada, y cuantificar el LPC extraído. De lo contrario, el codificador 207 de extensión TD puede generar un LPC de la señal de alta frecuencia de la señal de entrada utilizando la señal de excitación de la señal de baja frecuencia de la señal de entrada.
Por lo tanto, el codificador 207 de extensión TD puede ser un codificador de extensión TD de alta frecuencia.
Si el modo de codificación de la señal de entrada se determina como el modo de codificación FD, el transformador 208 de frecuencia realiza una transformación de frecuencia en la señal de entrada. Por ejemplo, el transformador 208 de frecuencia puede realizar una transformación de frecuencia la cual incluya tramas superpuestas, por ejemplo, MDCT, en la señal de entrada, pero la presente invención no se limita a ello.
El codificador 209 FD realiza la codificación FD en la señal de entrada transformada de frecuencia. Por ejemplo, el codificador 209 FD puede realizar la codificación FD en un espectro de frecuencia transformado por el transformador 208 de frecuencia. El codificador 209 FD se describirá en detalle con referencia a la Figura 2C a continuación.
El aparato 101 de codificación puede emitir un flujo de bits codificando la señal de entrada como se ha descrito más arriba. Por ejemplo, el flujo de bits puede incluir una cabecera y una carga útil.
La cabecera puede incluir información del modo de codificación que indica el modo de codificación utilizado para codificar la señal de entrada. La carga útil puede incluir información de acuerdo con el modo de codificación utilizado para codificar la señal de entrada. Si la señal de entrada se codifica de acuerdo con el modo CELP, la carga útil puede incluir información CELP e información de extensión de alta frecuencia TD. Si la señal de entrada se codifica de acuerdo con el modo FD, la carga útil puede incluir datos de predicción e información FD.
Sin embargo, en el flujo de bits, la cabecera puede incluir además información del modo de trama anterior para corregir un error de trama que pueda producirse. Por ejemplo, si el modo de codificación de la señal de entrada se determina como el modo FD, la cabecera puede incluir además la información del modo de trama anterior, como se describirá en detalle con referencia a la Figura 25 a continuación.
Por lo tanto, el aparato 101 de codificación es conmutado para utilizar el modo CELP o el modo FD de acuerdo con las características de la señal de entrada, codificando así adecuadamente la señal de entrada de acuerdo con las características de la señal de entrada. Además, el aparato 101 de codificación utiliza el modo FD de acuerdo con la determinación de la unidad 205 de clasificación de señal, realizando así adecuadamente la codificación en un entorno de alta tasa de bits.
La Figura 2C es un diagrama de bloques del codificador 209 FD.
Con referencia a la Figura 2C, el codificador 209 FD puede incluir un codificador 2091 de normalización, un codificador 2092 de pulso factorial, un generador 2093 de información de ruido adicional, y un codificador 2094 de extensión FD.
El codificador 2091 de normalización extrae energía a partir de cada banda de frecuencia de una señal de entrada transformada por el transformador 208 de frecuencia, y cuantifica la energía extraída. Además, el codificador 2091 de normalización puede realizar un escalado en base a la energía extraída. En este caso, el valor de energía escalado puede cuantificarse. Por ejemplo, el valor de energía puede obtenerse utilizando un procedimiento de medición para medir energía o potencia que tenga una relación de proporción con la energía de una banda de frecuencia.
La información normalizada que es resultado de la cuantificación realizada por el codificador 2091 de normalización puede incluirse en un flujo de bits y transmitirse junto con el flujo de bits al aparato 102 de decodificación.
Por ejemplo, el codificador 2091 de normalización divide un espectro de frecuencia correspondiente a la señal de entrada en un número predeterminado de bandas de frecuencia, extrae energía a partir del espectro de frecuencia para cada banda de frecuencia, y cuantifica las energías extraídas. El valor cuantificado puede utilizarse para normalizar el espectro de frecuencia.
El codificador 2091 de normalización puede codificar además el valor cuantificado.
El codificador 2092 de pulso factorial puede realizar la codificación de pulso factorial (FPC) en un valor obtenido escalando la señal de entrada transformada utilizando un valor de normalización cuantificado. En otras palabras, el codificador 2092 de pulso factorial puede realizar el FPC en un valor de espectro normalizado por el codificador 2091 de normalización.
Por ejemplo, el codificador 2092 de pulso factorial asigna un número de bits disponibles a cada banda de frecuencia, y realiza el FPC en el valor de espectro normalizado de acuerdo con el número de bits asignado. En este caso, el número de bits asignados a cada banda de frecuencia puede determinarse de acuerdo con una tasa de bits objetivo. Además, el codificador 2092 de pulso factorial puede calcular el número de bits que se asignarán a cada banda de frecuencia utilizando un valor de codificación de normalización cuantificado por el codificador 2091 de normalización. En este caso, el codificador 2092 de pulso factorial puede realizar el FPC en un espectro transformado de frecuencia distinto de un espectro normalizado.
El generador 2093 de información de ruido adicional genera información de ruido adicional de acuerdo con la realización del FPC. Por ejemplo, el generador 2093 de información de ruido adicional genera un nivel de ruido adecuado, en base a un resultado de realización del FPC en un espectro de frecuencia por el codificador 2092 de pulso factorial.
En este caso, la información de ruido adicional generada por el generador 2093 de información de ruido adicional puede incluirse en un flujo de bits de modo que un lado de decodificación pueda referirse a la información de ruido adicional para realizar el relleno de ruido.
El codificador 2094 de extensión FD realiza la codificación de extensión en una señal de alta frecuencia de la señal de entrada. Más específicamente, el codificador 2094 de extensión FD realiza la extensión de alta frecuencia utilizando un espectro de baja frecuencia.
Por ejemplo, el codificador 2094 de extensión FD cuantifica la información de energía de dominio de frecuencia de una señal de alta frecuencia correspondiente a una banda de alta frecuencia de la señal de entrada. En este caso, el codificador 2094 de extensión FD puede dividir un espectro de frecuencia correspondiente a la señal de entrada en un número predeterminado de bandas de frecuencia, obtener un valor de energía a partir del espectro de frecuencia para cada banda de frecuencia, y realizar una cuantificación vectorial de múltiples etapas (MSVQ) utilizando el valor de energía. La MSVQ puede ser una cuantificación vectorial de múltiples etapas.
Más específicamente, el codificador 2094 de extensión FD puede realizar la cuantificación vectorial (VQ) recopilando información de energía de bandas de frecuencia impares de entre el número predeterminado de bandas de frecuencia, obtener un error predicho en una banda de frecuencia par, en base a un valor cuantificado de acuerdo con un resultado de la cuantificación vectorial, y realizar la cuantificación vectorial sobre el error predicho obtenido en una etapa siguiente.
Sin embargo, el codificador 2094 de extensión FD puede realizar la cuantificación vectorial recopilando información de energía de bandas de frecuencia pares de entre el número predeterminado de bandas de frecuencia y obtener un error predicho en una banda de frecuencia impar utilizando un valor cuantificado de acuerdo con un resultado de la cuantificación vectorial.
Es decir, el codificador 2094 de extensión FD obtiene un error predicho en una (n+1)ésima banda de frecuencia a partir de un valor cuantificado obtenido mediante la realización de la cuantificación vectorial en una enésima banda de frecuencia y un valor cuantificado obtenido mediante la realización de la cuantificación vectorial en una (n+2)ésima banda de frecuencia. En este caso, “n” denota un número natural.
Además, con el fin de realizar la cuantificación vectorial recopilando información de energía, el codificador 2094 de extensión FD puede simular un procedimiento de generación de una señal de excitación en una banda de frecuencia predeterminada, y puede controlar la energía cuando las características de la señal de excitación de acuerdo con un resultado de la simulación son diferentes de las características de la señal original en la banda de frecuencia predeterminada. En este caso, las características de la señal de excitación de acuerdo con el resultado de la simulación y las características de la señal original pueden incluir al menos una de una tonalidad y un factor de ruido. Por lo tanto, es posible evitar que aumente el ruido cuando un lado de decodificación decodifica la energía real.
El codificador 2094 de extensión FD puede utilizar la extensión de ancho de banda de múltiple modo que utiliza diversos procedimientos de generación de una señal de excitación de acuerdo con las características de una señal de alta frecuencia de la señal de entrada. Por ejemplo, el codificador 2094 de extensión FD puede utilizar uno de un modo normal, un modo armónico, y un modo de ruido para cada trama para generar una señal de excitación, de acuerdo con las características de la señal de entrada.
Además, el codificador 2094 de extensión FD puede generar una señal de una banda de frecuencia que varía de acuerdo con una tasa de bits. Es decir, una banda de alta frecuencia correspondiente a una señal de alta frecuencia en la cual el codificador 2094 de extensión FD realiza la codificación de extensión puede establecerse de manera diferente de acuerdo con una tasa de bits.
Por ejemplo, el codificador 2094 de extensión FD puede utilizarse para generar una señal correspondiente a una banda de frecuencia de aproximadamente 6,4 a 14,4 kHz a una tasa de bits de 16 kbps, y para generar una señal correspondiente a una banda de frecuencia de aproximadamente 8 a 16 kHz a una tasa de bits igual o mayor que 16 kbps. Además, el codificador 2094 de extensión FD realiza la codificación de extensión en una señal de alta frecuencia correspondiente a una banda de frecuencia de aproximadamente 6,4 a 14,4 kHz a una tasa de bits de 16 kbps, y realiza la codificación de extensión en una señal de alta frecuencia correspondiente a una banda de frecuencia de aproximadamente 8 a 16 kHz a una tasa de bits que es igual o mayor que 16 kbps.
En este caso, el codificador 2094 de extensión FD puede realizar la cuantificación de energía compartiendo el mismo libro de códigos a diferentes tasas de bits, como se describirá en detalle con referencia a la Figura 26 a continuación.
Si una trama estacionaria es introducida en el codificador 209 FD, el codificador 2091 de normalización, el codificador 2092 de pulso factorial, el generador 2093 de información de ruido adicional, y el codificador 2094 de extensión FD del codificador 209 FD pueden operar.
Sin embargo, cuando se introduce una trama transitoria, el codificador 2094 de extensión FD no puede operar. En este caso, el codificador 2091 de normalización y el codificador 2092 de pulso factorial pueden establecer un valor de banda superior Fcore más alto de una banda de frecuencia en la cual se va a realizar el FPC que cuando se introduce una trama estacionaria. El valor de banda superior Fcore se describirá en detalle con referencia a la Figura 27 a continuación.
La Figura 2D es un diagrama de bloques de toda la estructura de un aparato 101 de codificación de acuerdo con la presente invención.
Con referencia a la Figura 2D, el aparato 101 de codificación incluye una unidad 210 de clasificación de señal, un codificador 211 LPC, un codificador 212 CELP, un codificador 213 de extensión TD, un codificador 214 de audio, y una extensión FD
La unidad 210 de clasificación de señal determina un modo de codificación de una señal de entrada de acuerdo con las características de la señal de entrada. El modo de codificación puede ser un procedimiento de codificación. Por ejemplo, la unidad 210 de clasificación de señal determina un modo de codificación de la señal de entrada en base a las características de dominio de tiempo y de dominio de frecuencia de la señal de entrada. Además, la unidad 205 de clasificación de señal puede determinar la codificación CELP que se va a realizar en la señal de entrada cuando las características de la señal de entrada son una señal de voz, y determinar la codificación de audio que se va a realizar en la señal de entrada cuando las características de la señal de entrada son una señal de audio.
El codificador 211 LPC extrae un LPC a partir de una señal de baja frecuencia de la señal de entrada, y cuantifica el LPC. Por ejemplo, el codificador 211 LPC puede utilizar, por ejemplo, cuantificación codificada Trellis (TCQ), MSVQ, o cuantificación vectorial de enrejado (LVQ) para cuantificar el LPC, pero la presente invención no se limita a ello. Más específicamente, el codificador 211 LPC puede remuestrear, por ejemplo, una señal de entrada que tiene una tasa de muestreo de 32 kHz o 48 kHz para extraer un LPC a partir de una señal de baja frecuencia de la señal de entrada que tiene una tasa de muestreo de 12,8 kHz o 16 kHz.
Como se describe más arriba con referencia a las Figuras 2A y 2B, una señal que tenga una tasa de muestreo de 32 kHz puede ser una señal SWB. La señal SWB puede ser una señal FB. Además, una señal que tenga una tasa de muestreo de 16 kHz puede ser una señal WB.
El codificador 211 LPC extrae una señal de excitación LPC utilizando el LPC cuantificado.
Si el modo de codificación de la señal de entrada se determina como el modo CELP, el codificador 212 CELP realiza la codificación CELP en la señal de excitación LPC extraída utilizando el LPC. Por ejemplo, el codificador 212 CELP puede cuantificar la señal de excitación LPC en base a la contribución fija del libro de códigos y la contribución adaptativa del libro de códigos correspondiente a la información de tono. En este caso, la señal de excitación LPC puede ser generada por al menos uno del codificador 212 CELP y el codificador 211 LPC.
El codificador 212 CELP también puede realizar la codificación CELP de acuerdo con diversos modos de codificación de acuerdo con las características de la señal de baja frecuencia de la señal de entrada. Por ejemplo, el codificador 206 CELP puede realizar la codificación CELP en la señal de baja frecuencia de la señal de entrada utilizando uno del modo de codificación con voz, el modo de codificación sin voz, el modo de codificación de transición, o el modo de codificación genérico.
El codificador 213 de extensión TD realiza la codificación de extensión en la señal de alta frecuencia de la señal de entrada cuando la codificación CELP se realiza en la señal de excitación LPC de la señal de baja frecuencia de la señal de entrada.
Por ejemplo, el codificador 213 de extensión TD cuantifica un LPC de la señal de alta frecuencia de la señal de entrada. En este caso, el codificador 213 de extensión TD puede extraer un LPC de la señal de alta frecuencia de la señal de entrada utilizando la señal de excitación LPC de la señal de baja frecuencia de la señal de entrada.
Por lo tanto, el codificador 213 de extensión TD puede ser un codificador de extensión de alta frecuencia TD, pero la presente invención no está limitada a ello.
Si el modo de codificación de la señal de entrada se determina como un modo de codificación de audio, el codificador 214 de audio realiza la codificación de audio en la señal de excitación LPC extraída utilizando el LPC.
Por ejemplo, el codificador 214 de audio puede realizar una transformación de frecuencia en la señal de excitación LPC y cuantificar la señal de excitación LPC transformada.
En este caso, cuando el codificador 214 de audio realiza la transformación de frecuencia, el codificador 214 de audio puede utilizar un procedimiento de transformación de frecuencia el cual no incluya tramas superpuestas, por ejemplo, transformación discreta del coseno (DCT). Además, el codificador 214 de audio puede realizar la cuantificación en un espectro de señal de excitación transformado de frecuencia de acuerdo con FPC o de enrejado VQ (LVQ).
Además, si el codificador 214 de audio tiene bits de reserva para realizar la cuantificación en la señal de excitación LPC, el codificador 214 de audio puede cuantificar más en base a la información de codificación TD de la contribución fija del libro de códigos y la contribución adaptativa del libro de códigos.
Cuando la codificación de audio se realiza en la señal de excitación LPC de la señal de baja frecuencia de la señal de entrada, el codificador 215 de extensión FD realiza la codificación de extensión en la señal de alta frecuencia de la señal de entrada. En otras palabras, el codificador 215 de extensión FD puede realizar una extensión de alta frecuencia utilizando un espectro de baja frecuencia,
Por ejemplo, el codificador 215 de extensión FD realiza la cuantificación sobre la información de energía de dominio de frecuencia de una señal de alta frecuencia correspondiente a una banda de alta frecuencia de la señal de entrada. En este caso, el codificador 215 de extensión FD puede generar un espectro de frecuencia utilizando un procedimiento de transformación de frecuencia, por ejemplo, MDCT, dividir el espectro de frecuencia en un número predeterminado de bandas de frecuencia, obtener la energía del espectro de frecuencia para cada banda de frecuencia, y realizar MSVQ utilizando la energía. En este caso, MSVQ puede ser la cuantificación vectorial de múltiples etapas.
Más específicamente, el codificador 215 de extensión FD puede realizar la cuantificación vectorial recopilando información de energía de bandas de frecuencia impares de entre el número predeterminado de bandas de frecuencia, obtener un error predicho en una banda de frecuencia par, en base a un valor cuantificado de acuerdo con un resultado de la cuantificación vectorial, y realizar la cuantificación vectorial sobre un error predicho en una etapa siguiente.
Sin embargo, la presente invención no se limita a ello, y el codificador 215 de extensión FD puede realizar la cuantificación vectorial recopilando información de energía de bandas de frecuencia pares de entre el número predeterminado de bandas de frecuencia y obtener un error predicho en una banda de frecuencia impar utilizando un valor cuantificado de acuerdo con un resultado de la cuantificación vectorial.
Es decir, el codificador 215 de extensión FD obtiene un error predicho en una (n+1)ésima banda de frecuencia utilizando un valor cuantificado obtenido mediante la realización de la cuantificación vectorial en una enésima banda de frecuencia y un valor cuantificado obtenido mediante la realización de la cuantificación vectorial en una (n+2)ésima banda de frecuencia. En este caso, “n” denota un número natural.
Además, con el fin de realizar la cuantificación vectorial recopilando información de energía, el codificador 215 de extensión FD puede simular un procedimiento de generación de una señal de excitación en una banda de frecuencia predeterminada, y puede controlar la energía cuando las características de la señal de excitación de acuerdo con un resultado de la simulación son diferentes de las características de la señal original en la banda de frecuencia predeterminada. En este caso, las características de la señal de excitación de acuerdo con el resultado de la simulación y las características de la señal original pueden incluir al menos una de una tonalidad y un factor de ruido, pero la presente invención no se limita a ello. Por lo tanto, es posible evitar que aumente el ruido cuando un lado de decodificación decodifica la energía real.
El codificador 215 de extensión FD puede utilizar extensión de ancho de banda de múltiple modo que utiliza diversos procedimientos para generar una señal de excitación de acuerdo con las características de la señal de alta frecuencia de la señal de entrada. Por ejemplo, el codificador 215 de extensión FD puede generar una señal de excitación utilizando uno del modo normal, el modo armónico, el modo transitorio, o el modo de ruido para cada trama de acuerdo con las características de la señal de entrada. En el modo transitorio, la información de envolvente temporal también puede cuantificarse.
Además, de acuerdo con la realización actual, el codificador 215 de extensión FD puede generar una señal de una banda de frecuencia que varía de acuerdo con una tasa de bits. En otras palabras, una banda de alta frecuencia correspondiente a una señal de alta frecuencia sobre la cual el codificador 215 de extensión FD realiza la codificación de extensión puede establecerse de manera diferente de acuerdo con una tasa de bits.
Por ejemplo, el codificador 215 de extensión FD puede utilizarse para generar una señal correspondiente a una banda de frecuencia de aproximadamente 6,4 a 14,4 kHz a una tasa de bits de 16 kbps, y para generar una señal correspondiente a una banda de frecuencia de aproximadamente 8 a 16 kHz a una tasa de bits igual o mayor que 16 kbps. Además, el codificador 215 de extensión FD puede realizar la codificación de extensión en una señal de alta frecuencia correspondiente a una banda de frecuencia de aproximadamente 6,4 a 14,4 kHz a una tasa de bits de 16 kbps, y realizar la codificación de extensión en una señal de alta frecuencia correspondiente a una banda de frecuencia de aproximadamente 8 a 16 kHz a una tasa de bits igual o mayor que 16 kbps.
En este caso, de acuerdo con la realización actual, el codificador 215 de extensión FD puede realizar la cuantificación de energía compartiendo el mismo libro de códigos a diferentes tasas de bits, como se describirá en detalle con referencia a la Figura 26 a continuación.
En la realización actual, el aparato 101 de codificación puede codificar la señal de entrada como se ha descrito más arriba y emitirla en forma de un flujo de bits codificado. Por ejemplo, el flujo de bits incluye una cabecera y una carga útil.
En este caso, la cabecera puede incluir información de modo de codificación indicando un modo de codificación utilizado para codificar la señal de entrada. La carga útil puede incluir información CELP e información de extensión de alta frecuencia TD cuando la señal de entrada se codifica utilizando el modo CELP, y puede incluir datos de predicción, información de codificación de audio, e información de extensión de alta frecuencia FD cuando la señal de entrada se codifica utilizando el modo de codificación de audio.
El aparato 101 de codificación puede conmutarse para utilizar el modo CELP o el modo de codificación de audio de acuerdo con las características de la señal de entrada. Por lo tanto, se puede realizar un modo de codificación adecuado de acuerdo con las características de la señal de entrada. Además, el aparato 101 de codificación puede utilizar el modo FD de acuerdo con la determinación de la unidad 210 de clasificación de señal, realizando así adecuadamente la codificación en un entorno de baja tasa de bits.
La Figura 3 es un diagrama de bloques del codificador 202 de núcleo del aparato 101 de codificación.
Con referencia a la Figura 3, codificador 202 de núcleo puede incluir una unidad 301 de clasificación de señal y codificador 302.
La unidad 301 de clasificación de señal puede clasificar características de una señal de entrada de muestreo descendente, por ejemplo, 12,8 KHz. En otras palabras, la unidad 301 de clasificación de señal puede clasificar los modos de codificación de una señal de entrada como diversos modos de codificación, de acuerdo con las características de la señal de entrada. Por ejemplo, de acuerdo con un códec ITU-T G.718, la unidad 301 de clasificación de señal puede clasificar los modos de codificación de la señal de voz como modo de codificación con voz, modo de codificación sin voz, modo de codificación de transición, y modo de codificación genérica. El modo de codificación sin voz está diseñado para codificar tramas sin voz y la mayoría de las tramas inactivas.
El codificador 302 puede realizar la codificación optimizada a las características de la señal de entrada clasificada por la unidad 301 de clasificación de señal.
La Figura 4 es un diagrama de bloques del codificador 204 de extensión del aparato 101 de codificación.
Con referencia a la Figura 4, el codificador 204 de extensión puede incluir un generador 401 de señal base, un estimador 402 de factor, un extractor 403 de energía, un controlador 404 de energía, y un cuantificador 405 de energía. Por ejemplo, el codificador 204 de extensión puede estimar un factor de control de energía sin recibir información sobre un modo de codificación. Como otro ejemplo, el codificador 204 de extensión puede estimar un factor de control de energía utilizando un modo de codificación. La información sobre el modo de codificación puede recibirse a partir del codificador 202 de núcleo.
El generador 401 de señal base puede generar una señal base de una señal de entrada utilizando un espectro de frecuencia de la señal de entrada en un dominio de frecuencia. La señal base indica una señal para realizar SWB BWE, en base a una señal WB. En otras palabras, la señal de base indica una señal que constituye una estructura fina de una banda de baja frecuencia. Se describirá en detalle un procedimiento de generación de la señal base con referencia a la Figura 6 a continuación.
Por ejemplo, el estimador 402 de factor puede estimar un factor de control de energía utilizando la señal base. Es decir, el aparato 101 de codificación transmite información de energía de la señal de entrada para generar una señal de una región SWB en el aparato 102 de decodificación. En este caso, el estimador 402 de factor puede estimar un factor de control de energía el cual es un parámetro para controlar la energía para controlar la información de energía desde un punto de vista perceptual. Se describirá en detalle un procedimiento de estimación del factor de control de energía con referencia a la Figura 7 a continuación.
Como otro ejemplo, el estimador 402 de factor puede estimar el factor de control de energía utilizando las características de la señal base y la señal de entrada. En este caso, las características de la señal de entrada pueden recibirse a partir del codificador 202 de núcleo.
El extractor 403 de energía puede extraer energía a partir de una señal de entrada en una banda de frecuencia. La energía extraída se transmite al aparato 102 de decodificación. Se puede extraer energía en cada banda de frecuencia.
El controlador 404 de energía puede controlar la energía extraída a partir de la señal de entrada, utilizando el factor de control de energía. En otras palabras, el controlador 404 de energía puede controlar la energía aplicando el factor de control de energía a la energía extraída en cada banda de frecuencia.
El cuantificador 405 de energía puede cuantificar la energía controlada. La energía puede convertirse a una escala de dB y luego cuantificarse. Específicamente, el cuantificador 405 de energía puede calcular la energía global, la cual es la energía total, y cuantificar de manera escalar la energía global y las diferencias entre la energía global y la energía extraída en cada banda de frecuencia. De lo contrario, la energía extraída a partir de una primera banda de frecuencia se cuantifica directamente y, a continuación, se puede cuantificar la diferencia entre la energía extraída en cada una de las bandas de frecuencias, distintas de la primera banda de frecuencia, y la energía extraída en una banda de frecuencia anterior. De lo contrario, el cuantificador 405 de energía puede cuantificar directamente la energía extraída en cada banda de frecuencia sin utilizar las diferencias entre las energías extraídas en las bandas de frecuencia. Se puede utilizar la cuantificación escalar o vectorial, cuando la energía extraída en cada banda de frecuencia se cuantifica directamente. El cuantificador 405 de energía se describirá en detalle con referencia a las Figuras 8 y 9, a continuación.
La Figura 5 es un diagrama de bloques del codificador 204 de extensión del aparato 101 de codificación.
Con referencia a la Figura 5, el codificador 204 de extensión puede incluir además una unidad 501 de clasificación de señal, en comparación con el codificador 204 de extensión de la Figura 4. Por ejemplo, un estimador 402 de factor puede estimar un factor de control de energía utilizando características de una señal base y una señal de entrada. En este caso, las características de la señal de entrada pueden recibirse a partir de la unidad 501 de clasificación de señal en lugar de recibirse a partir del codificador 202 de núcleo.
La unidad 501 de clasificación de señal puede clasificar una señal de entrada, por ejemplo, 32 KHz y un espectro MDCT, de acuerdo con las características de la señal de entrada. En detalle, la unidad 501 de clasificación de señal puede clasificar los modos de codificación de la señal de entrada como diversos modos de codificación, en base a las características de las señales de entrada.
Clasificando la señal de entrada de acuerdo con las características de la señal de entrada, el factor de control de energía puede estimarse sólo a partir de señales adecuadas para realizar el procedimiento de estimación del factor de control de energía, y puede controlar la energía. Por ejemplo, puede no ser adecuado realizar el procedimiento de estimación del factor de control de energía en una señal que no contenga ningún componente tonal, por ejemplo, una señal de ruido o una señal sin voz. En este caso, si un modo de codificación de una señal de entrada se clasifica como el modo de codificación sin voz, el codificador 204 de extensión puede realizar la codificación de extensión de ancho de banda sin realizar la estimación del factor de control de energía.
El generador 401 de señal base, el estimador 402 de factor, el extractor 403 de energía, el controlador 404 de energía, y el cuantificador 405 de energía ilustrados en la Figura 5 son como se ha descrito anteriormente con referencia a la Figura 4.
La Figura 6 es un diagrama de bloques del generador 401 de señal base incluido en el codificador 204 de extensión.
Con referencia a la Figura 6, el generador 401 de señal base puede incluir un generador 601 de señal artificial, un estimador 602 de envolvente, y una unidad 603 de aplicación de envolvente.
El generador 601 de señal artificial puede generar una señal artificial correspondiente a una banda de alta frecuencia copiando y plegando una banda de baja frecuencia de una señal de entrada en una banda de frecuencia. En otras palabras, el generador 601 de señal artificial puede generar una señal artificial en una región de dominio SWB copiando un espectro de baja frecuencia de la señal de entrada en el dominio de frecuencia. Se describirá en detalle un procedimiento de generación de la señal artificial con referencia a la Figura 6 a continuación.
El estimador 602 de envolvente puede estimar una envolvente de una señal base utilizando una ventana. La envolvente de la señal base puede utilizarse para eliminar información de envolvente sobre una banda de baja frecuencia incluida en un espectro de frecuencia de la señal artificial en la región SWB. Una envolvente de un índice de frecuencia particular puede determinarse utilizando espectros de frecuencia antes y después de la frecuencia particular. La envolvente de la señal base también puede estimarse a través de un promedio móvil. Por ejemplo, si se utiliza MDCT para la transformación de frecuencia, la envolvente de la señal base puede estimarse a través de un valor absoluto del espectro de frecuencia el cual es transformado mediante MDCT.
En este caso, el estimador 602 de envolvente puede formar bandas de blanqueamiento, calcular el promedio de la magnitud de frecuencia en cada una de las bandas de blanqueamiento, y estimar el promedio de la magnitud de frecuencia de una banda de blanqueamiento como una envolvente de frecuencias pertenecientes a la banda de blanqueamiento. El número de espectros de frecuencia pertenecientes a la banda de blanqueamiento se puede establecer menor que un número de bandas a partir de las cuales se extrae la energía.
Si el promedio de la magnitud de frecuencia calculado en cada una de las bandas de blanqueamiento se estima como una envolvente de una frecuencia perteneciente a la banda de blanqueamiento, el estimador 602 de envolvente puede transmitir información indicando si el número de espectros de frecuencia pertenecientes a las bandas de blanqueamiento es grande o pequeño de modo que controle un grado de planitud de la señal base. Por ejemplo, el estimador 602 de envolvente puede transmitir tal información dependiendo de dos tipos de que el número de espectros de frecuencia sea ocho o tres. Si el número de espectros de frecuencia es tres, el grado de planitud de la señal base puede ser mayor que cuando el número de espectros de frecuencia es ocho.
De lo contrario, el estimador 602 de envolvente puede no transmitir la información que indica si el número de espectros de frecuencia pertenecientes a las bandas de blanqueamiento es grande o pequeño, y puede determinar el grado de planitud de la señal base de acuerdo con un modo de codificación empleado por el codificador 202 de núcleo. El codificador 202 de núcleo puede clasificar un modo de codificación de una señal de entrada como el modo de codificación con voz, el modo de codificación sin voz, el modo de codificación transitorio o el modo de codificación genérico en base a las características de la señal de entrada, y puede codificar la señal de entrada.
En este caso, el estimador 602 de envolvente puede controlar un número de espectros de frecuencia pertenecientes a las bandas de blanqueamiento, en base a un modo de codificación de acuerdo con las características de la señal de entrada. Por ejemplo, si la señal de entrada se codifica de acuerdo con el modo de codificación de voz, el estimador 602 de envolvente puede estimar una envolvente de la señal base formando tres espectros de frecuencia en banda de blanqueamiento. Si la señal de entrada se codifica de acuerdo con un modo de codificación distinto del modo de codificación de voz, el estimador 602 de envolvente puede estimar una envolvente de la señal base formando tres espectros de frecuencia en banda de blanqueamiento.
La unidad 603 de aplicación de envolvente puede aplicar la envolvente estimada a la señal artificial. Un tal procedimiento corresponde a un procedimiento de blanqueamiento. La señal artificial puede ser aplanada por la envolvente. La unidad 603 de aplicación de envolvente puede generar una señal base dividiendo la señal artificial de acuerdo con la envolvente de cada uno de los índices de frecuencia.
La Figura 7 es un diagrama de bloques del estimador 402 de factor incluido en el codificador 204 de extensión.
Con referencia a la Figura 7, el estimador 402 de factor puede incluir un primer calculador 701 de tonalidad, un segundo calculador 702 de tonalidad, y un calculador 703 de factor.
El primer calculador 701 de tonalidad puede calcular una tonalidad de una banda de alta frecuencia de una señal de entrada en un dominio de frecuencia. En otras palabras, el primer calculador 701 de tonalidad puede calcular una tonalidad de una región SWB la cual es una banda de alta frecuencia de una señal de entrada en un dominio de frecuencia.
El segundo calculador 702 de tonalidad puede calcular una tonalidad de una señal base.
Las tonalidades pueden calcularse midiendo la planitud espectral. En detalle, las tonalidades pueden calcularse utilizando la siguiente Ecuación (1). La planitud espectral puede medirse utilizando la relación entre una media geométrica y una media aritmética del espectro de frecuencia.
El calculador 703 de factor puede calcular un factor de control de energía utilizando la tonalidad de la banda de alta frecuencia de la señal de entrada y la tonalidad de la señal base. En este caso, el factor de control de la energía puede calcularse mediante:
g _ A ín _ q - r j
o - ?;)
7: tonalidad do ospoctro 009 n al To tonalidad do ospoctro baso
9 o
: (actor de ruido de espectro orig inal. No (actor de ruido de espectro base
<(>2<) .>
donde 'a' denota el factor de control de energía, 'To' denota la tonalidad de la señal de entrada, y 'Tb' denota la tonalidad de la señal base. Asimismo, 'Nb' denota un factor de ruido que indica el grado de contención de un componente de ruido en una señal.
El factor de control de energía puede calcularse mediante:
T j ,
T .
... (3)
El calculador 703 de factor puede calcular un factor de control de energía para cada banda de frecuencia. El factor de control de energía calculado puede aplicarse a la energía de la señal de entrada. En este caso, el factor de control de energía puede aplicarse a la energía de la señal de entrada cuando el factor de control de energía es menor que un factor de control de energía umbral predeterminado.
La Figura 8 es un diagrama de flujo que ilustra una operación del cuantificador 405 de energía.
En la operación S801, el cuantificador 405 de energía puede preprocesar los vectores de energía utilizando un factor de control de energía y seleccionar un subvector del vector de energía preprocesado. Por ejemplo, el cuantificador 405 de energía puede restar un promedio de los vectores de energía a partir de cada uno de los vectores de energía o calcular una ponderación con respecto a la importancia de cada uno de los vectores de energía. En este caso, la ponderación puede calcularse de tal manera que se maximice la calidad del sonido sintético.
Además, el cuantificador 405 de energía puede seleccionar adecuadamente un subvector del vector de energía en base a la eficiencia de codificación. Además, el cuantificador 405 de energía puede seleccionar un subvector en el mismo intervalo de tiempo para mejorar la eficiencia de interpolación.
Por ejemplo, el cuantificador 405 de energía puede seleccionar el subvector de acuerdo con la siguiente Ecuación (4).
k> n (n = 0, .... N ). k>2, N denota un entero más grande que es menor que una dimensión vectorial
- (4)
En este caso, si k=2, entonces solo se seleccionan los números pares.
En la operación S802, el cuantificador 405 de energía cuantifica y cuantifica inversamente el subvector seleccionado. El cuantificador 405 de energía puede cuantificar el subvector seleccionando un índice de cuantificación para minimizar un error cuadrático medio (MSE) calculado utilizando la siguiente Ecuación (5).
El cuantificador 405 de energía puede cuantificar el subvector utilizando la cuantificación escalar, la cuantificación vectorial, TCQ, o LVQ. En la cuantificación vectorial, se puede realizar MSVQ o VQ dividido, o se pueden realizar simultáneamente VQ dividido y VQ de múltiples etapas. El índice de cuantificación se transmite al aparato 102 de decodificación.
Cuando las ponderaciones son calculadas durante el preprocesamiento, el cuantificador 405 de energía puede calcular un índice de cuantificación optimizado utilizando un MSE ponderado (WMSE). En este caso, el WMSE puede calcularse mediante:
En la operación S803, el cuantificador 405 de energía puede interpolar los subvectores restantes los cuales no son seleccionados.
En la operación S804, el cuantificador 405 de energía puede calcular errores de interpolación que son las diferencias entre los subvectores restantes interpolados y los subvectores originales que coinciden con los vectores de energía.
En la operación S805, el cuantificador 405 de energía cuantifica y cuantifica inversamente el error de interpolación. En este caso, el cuantificador 405 de energía puede cuantificar el error de interpolación utilizando el índice de cuantificación para minimizar el MSE. El cuantificador 405 de energía puede cuantificar el error de interpolación utilizando la cuantificación escalar, la cuantificación vectorial, TCQ, o LVQ. En este caso, en la cuantificación vectorial, se puede realizar MSVQ o VQ dividido, o se pueden realizar simultáneamente VQ dividido y MSVQ. Si las ponderaciones se calculan durante el preprocesamiento, el cuantificador 405 de energía puede calcular un índice de cuantificación optimizado utilizando un WMSE.
En la operación S806, el cuantificador 405 de energía puede calcular los subvectores restantes los cuales no son seleccionados interpolando los subvectores cuantificados que son seleccionados, y calcular un valor de energía cuantificado sumando los errores de interpolación cuantificados calculados en la operación S805. Y, el cuantificador 405 de energía puede calcular una energía cuantificada final volviendo a sumar el promedio, el cual se resta en el preprocesamiento, durante el preprocesamiento.
En MSVQ, el cuantificador 405 de energía realiza la cuantificación utilizando K subvectores candidatos para mejorar el rendimiento de la cuantificación en base al mismo libro de códigos. Si 'K ' es igual a o mayor que '2', el cuantificador 405 de energía puede determinar los subvectores candidatos óptimos realizando una medición de distorsión. En este caso, la medición de distorsión puede determinarse de acuerdo con uno de los dos procedimientos siguientes.
En primer lugar, el cuantificador 405 de energía puede generar un conjunto de índices para minimizar los MSEs o WMSEs para cada uno de los subvectores candidatos en cada una de las etapas, y seleccionar un subvector candidato que tenga la suma más pequeña de MSEs o WMSEs en todas las etapas de entre los subvectores candidatos. En este caso, la cantidad de cálculo es pequeña.
En segundo lugar, el cuantificador 405 de energía puede generar un conjunto de índices para minimizar MSEs o WMSEs para cada uno de los subvectores candidatos en cada una de las etapas, reconstruir un vector de energía a través de la cuantificación inversa, y seleccionar un subvector candidato para minimizar MSE o WMSE entre el vector de energía reconstruido y el vector de energía original. En este caso, la cantidad de cálculos se aumenta debido a la reconstrucción del vector de energía, pero el rendimiento es mejor ya que los MSEs se calculan utilizando valores realmente cuantificados.
La Figura 9 es un diagrama que ilustra un procedimiento de cuantificación de energía.
Con referencia a la Figura 9, un vector de energía representa 14 dimensiones. En una primera etapa, el cuantificador 405 de energía selecciona los subvectores correspondientes a la dimensión 7 seleccionando los subvectores pares del vector de energía. En la primera etapa, el cuantificador 405 de energía utiliza la cuantificación vectorial de segunda etapa dividida en dos, para mejorar el rendimiento.
El cuantificador 405 de energía realiza la cuantificación en la segunda etapa utilizando una señal de error de la primera etapa. El cuantificador 405 de energía calcula un error de interpolación mediante la cuantificación inversa de los subvectores seleccionados, y cuantifica el error de interpolación a través de una tercera etapa de cuantificación vectorial dividida en dos.
La Figura 10 es un diagrama que ilustra un procedimiento de generación de una señal artificial.
Con referencia a la Figura 10, el generador 601 de señal artificial puede copiar un espectro 1001 de frecuencia correspondiente a una banda de baja frecuencia de fi_. a 6,4 KHz de toda una banda de frecuencia. El espectro 1001 de frecuencia copiado se desplaza a una banda de frecuencia de 6,4 a 12,8-fL KHz. Un espectro de frecuencia correspondiente a la banda de frecuencia de 12,8-fL a 16 KHz puede generarse plegando un espectro de frecuencia correspondiente a la banda de frecuencias de 6,4 a 12,8-fL KHz. En otras palabras, se genera una señal artificial correspondiente a una región SWB la cual es una banda de alta frecuencia de 6,4 a 16 KHz.
Si se realiza MDCT para generar el espectro de frecuencia, entonces se presenta una correlación entre fL y 6,4 kHz. En detalle, cuando un índice de frecuencia MDCT correspondiente a 6,4 kHz es un número par, un índice de frecuencia de fL. también es un número par. Por el contrario, si el índice de frecuencia MDCT correspondiente a 4 kHz es un número impar, el índice de frecuencia de fL. también es un número impar.
Por ejemplo, cuando se aplica MDCT para extraer 640 espectros de frecuencia a partir de la señal de entrada original, un índice correspondiente a 6,4 kHz es un índice enésimo (es decir, 6400/16000*640), es decir, un número par. En este caso, fL también se selecciona como número par. En otras palabras, se puede utilizar 2(50Hz) o 4(100Hz) para fL. Este procedimiento también se puede utilizar durante un procedimiento de decodificación.
Las Figuras 11A y 11B ilustran respectivamente las ventanas 1101 y 1102 para estimar una envolvente.
Con referencia a las Figuras 11A y 11B, un punto de pico en cada una de las ventanas 1101 y 1102 denota un índice de frecuencia para estimar una envolvente actual. La envolvente actual de la señal base puede estimarse mediante: m
¿ M ") = ¿
ft-5 i v ( f l ) ; Envolvente. • ventana. s p > : Espectro, n : índice de frecuencia.
2d + 1 longitud de ventana /y \
Con referencia a las Figuras 11A y 11B, las ventanas 1101 y 1102 se pueden utilizar de manera fija, y en este caso no es necesario transmitir bits adicionales. Si la ventana 1101 o 1102 se utiliza selectivamente, la información que indica si la ventana 1101 o 1102 se ha utilizado para estimar la envolvente debe expresarse con bits y transmitirse adicionalmente al aparato 102 de decodificación. Los bits pueden transmitirse para cada banda de frecuencia o pueden transmitirse a la vez en una trama.
Se añade además un peso a un espectro de frecuencia correspondiente a un índice de frecuencia actual para estimar una envolvente cuando se utiliza la ventana 1102, en comparación con cuando se utiliza la ventana 1101. Por lo tanto, la señal base generada utilizando la ventana 1102 es más plana que la generada utilizando la ventana 1101. El tipo de ventana de entre las ventanas 1101 y 1102 puede seleccionarse comparando cada una de las señales base generadas por la ventana 1101 y la ventana 1102 con un espectro de frecuencia de una señal de entrada. De lo contrario, una ventana que tiene una tonalidad que es más aproximada a una tonalidad de una banda de alta frecuencia puede ser seleccionada de entre las ventanas 1101 y 1102 a través de la comparación de la tonalidad de la banda de alta frecuencia. De lo contrario, una ventana que tiene una correlación más alta con la banda de alta frecuencia puede ser seleccionada de entre las ventanas 1101 y 1102 a través de la comparación de la correlación.
La Figura 12A es un diagrama de bloques de un aparato 102 de decodificación.
Un procedimiento de decodificación realizado por el aparato 102 de decodificación de la Figura 12A es un procedimiento inverso del procedimiento realizado por el aparato 101 de decodificación de la Figura 2A. Con referencia a la Figura 12A, el aparato 102 de decodificación puede incluir un decodificador 1201 de núcleo, un muestreador 1202 ascendente, un transformador 1203 de frecuencia, un decodificador 1204 de extensión, y un transformador 1205 de frecuencia inverso.
El decodificador 1201 de núcleo puede realizar la decodificación de núcleo en una señal de entrada codificada por núcleo contenida en un flujo de bits. A través de la decodificación de núcleo, se puede extraer una señal que tenga una tasa de muestreo de 12,8 KHz.
El muestreador 1202 ascendente puede muestrear de manera ascendente la señal de entrada decodificada por el núcleo. A través del muestreo ascendente, se puede extraer una señal que tenga una tasa de muestreo de 32 KHz.
El transformador 1204 de frecuencia puede realizar una transformación de frecuencia en la señal de entrada muestreada de manera ascendente. En este caso, se puede utilizar la misma transformación de frecuencia que se utilizó en el aparato 101 de codificación. Por ejemplo, se puede utilizar MDCT.
El decodificador 1204 de extensión puede realizar la decodificación de extensión de ancho de banda utilizando la señal de entrada en la banda de frecuencia y energía de la señal de entrada contenida en el flujo de bits. Se describirá en detalle una operación del decodificador 1204 de extensión con referencia a las Figura 9 a continuación.
El transformador 1205 de frecuencia inverso puede realizar una transformación de frecuencia inversa sobre un resultado de realización de la decodificación de extensión de ancho de banda. En otras palabras, la transformación de frecuencia inversa puede ser una operación inversa de la transformación de frecuencia realizada por el transformador 1204 de frecuencia. Por ejemplo, la transformación de frecuencia inversa puede ser la Transformación de Coseno Discreta Modificada Inversa (IMDCT).
La Figura 12B es un diagrama de bloques de un aparato 102 de decodificación.
Un procedimiento de decodificación realizado por el aparato 102 de decodificación de la Figura 12B es un procedimiento inverso del procedimiento de la Figura 12A. Con referencia a la Figura 12B, el aparato 102 de decodificación puede incluir una unidad 1206 de comprobación de información de modo, un decodificador 1207 CELP, un decodificador 1208 de extensión TD, un decodificador 1209 FD, y un transformador 1210 de frecuencia inversa.
La unidad 1206 de comprobación de información de modo comprueba la información de modo de cada una de las tramas incluidas en un flujo de bits. El flujo de bits puede ser una señal correspondiente a un flujo de bits de acuerdo con un resultado de codificación realizado por el aparato 101 de codificación transmitido al aparato 102 de decodificación.
Por ejemplo, la unidad 1206 de comprobación de información de modo analiza la información de modo del flujo de bits, y realiza una operación de conmutación a uno de un modo de decodificación CELP o un modo de decodificación FD de acuerdo con el modo de codificación de una trama actual de acuerdo con el resultado del análisis.
Más específicamente, la unidad 1206 de comprobación de información de modo puede conmutar, con respecto a cada una de las tramas incluidas en el flujo de bits, de tal manera que una trama codificada de acuerdo con el modo CELP puede ser decodificada CELP y una trama codificada de acuerdo con el modo FD puede ser decodificada FD.
El decodificador 1207 CELP realiza la decodificación CELP en la trama codificada de acuerdo con el modo CELP, en base al resultado de la comprobación. Por ejemplo, el decodificador 1207 CELP decodifica un LPC incluido en el flujo de bits, decodifica las contribuciones adaptativas y fijas del libro de códigos, combina los resultados de la decodificación, y genera una señal de baja frecuencia correspondiente a una señal descodificada para la banda de baja frecuencia.
El decodificador 1208 de extensión TD genera una señal decodificada para la banda de alta frecuencia utilizando al menos uno de los resultados de realizar la decodificación CELP y una señal de excitación de la señal de baja frecuencia. En este caso, la señal de excitación de la señal de baja frecuencia puede incluirse en el flujo de bits. Además, el decodificador 1208 de extensión TD puede utilizar información LPC sobre la señal de alta frecuencia incluida en el flujo de bits para generar la señal de alta frecuencia correspondiente a una señal decodificada para la banda de alta frecuencia.
Además, el decodificador 1208 de extensión TD puede generar una señal decodificada combinando la señal de alta frecuencia con la señal de baja frecuencia generada por el decodificador 1207 CELP. Para generar la señal decodificada, el decodificador 1208 de extensión TD puede además convertir las tasas de muestreo de la señal de baja frecuencia y la señal de alta frecuencia para que sean iguales.
El decodificador 1209 FD realiza la decodificación FD en la trama codificada FD. El decodificador 1209 FD puede generar un espectro de frecuencia decodificando el flujo de bits. Además, el decodificador 1209 FD puede realizar la decodificación en el flujo de bits, en base a la información de modo de una trama anterior incluida en el flujo de bits. En otras palabras, el decodificador 1209 FD puede realizar la decodificación FD en las tramas codificadas FD, en base a la información de modo de la trama anterior incluida en el flujo de bits, como se describirá en detalle con referencia a la Figura 25 a continuación. El decodificador 1209 FD se describirá en detalle con referencia a la Figura 12C a continuación.
El transformador 1210 de frecuencia inversa realiza una transformación de frecuencia inversa sobre el resultado de realización de la decodificación FD. El transformador 1210 de frecuencia inversa genera una señal decodificada realizando una transformación de frecuencia inversa en un espectro de frecuencia decodificado FD. Por ejemplo, el transformador 1210 de frecuencia inversa puede realizar MDCT Inversa, pero la presente invención no se limita a ello.
En consecuencia, el aparato 102 de decodificación puede realizar la decodificación en el flujo de bits, en base a los modos de codificación de cada una de las tramas del flujo de bits.
La Figura 12C es un diagrama de bloques del decodificador 1209 FD incluido en el aparato 102 de decodificación.
Un procedimiento de decodificación realizado por el decodificador 1209 FD de la Figura 12C es un procedimiento inverso del procedimiento de la Figura 12B. Con referencia a la Figura 12C, el decodificador 1209 FD puede incluir un decodificador 12091 de normalización, un decodificador 12092 FPC, una unidad 12093 de realización de relleno de ruido, y un decodificador 12094 de extensión FD. El decodificador 12094 de extensión FD puede incluir un decodificador 12095 de extensión de baja frecuencia FD y un decodificador 12096 de extensión de alta frecuencia FD.
El decodificador 12091 de normalización realiza la decodificación de normalización en base a la información de normalización de un flujo de bits. La información de normalización puede ser información de acuerdo con un resultado de codificación por el codificador 2091 de normalización de la Figura 2C.
El decodificador 12092 FPC realiza la decodificación FPC en base a la información FPC del flujo de bits. La información FPC puede ser información de acuerdo con un resultado de codificación por el codificador 209 de pulso factorial de la Figura 2C.
Por ejemplo, el decodificador 12092 FPC realiza la decodificación FPC asignando un número de bits disponibles en cada banda de frecuencia, similar a la codificación realizada por el codificador 2092 de pulso factorial de la Figura 2C.
La unidad 12093 de relleno de ruido realiza el relleno de ruido en un resultado de realización de la decodificación FPC. Por ejemplo, la unidad 12093 de relleno de ruido añade ruido a las bandas de frecuencia en las cuales se realiza la decodificación FPC. En este caso, la unidad 12093 de relleno de ruido añade ruido hasta las últimas bandas de frecuencia de las bandas de frecuencia en las cuales se realiza la decodificación FPC, como se describirá con referencia a la Figura 27 a continuación.
El decodificador 12094 de extensión FD puede incluir un decodificador 12095 de extensión de baja frecuencia FD y un decodificador 12096 de extensión de alta frecuencia FD.
Si un valor de banda superior Ffpc de bandas de frecuencia que realizan la decodificación FPC es menor que un valor de banda superior Fcore de bandas de frecuencia que realizan la codificación FPC, el decodificador 12095 de extensión de baja frecuencia FD realiza la codificación de extensión sobre un resultado de realización de la decodificación FPC y un resultado de realización de relleno de ruido.
Por lo tanto, el decodificador 12095 de extensión de baja frecuencia FD genera espectros de frecuencia hasta el valor de banda superior Fcore de bandas de frecuencia realizando la codificación FPC, utilizando espectros de frecuencia generados por la decodificación FPC y el relleno de ruido.
Como se describió anteriormente, los espectros de baja frecuencia decodificados pueden ser generados multiplicando los espectros de frecuencia generados por el decodificador 12095 de extensión de baja frecuencia FD por un valor de normalización decodificado por el decodificador 12091 de normalización.
Sin embargo, cuando el decodificador 12095 de extensión de baja frecuencia FD no opera, los espectros de baja frecuencia decodificados pueden ser generados multiplicando los espectros de frecuencia generados mediante la realización de la decodificación FPC y la realización del relleno de ruido por el valor de normalización decodificado por el decodificador 12091 de normalización.
El decodificador 12096 de extensión de alta frecuencia FD realiza la decodificación de extensión de alta frecuencia utilizando los resultados de realización de la decodificación FPC y realización del relleno de ruido. El decodificador 12096 de extensión de alta frecuencia FD opera para corresponder al codificador 2094 de extensión FD de la Figura 2C.
Por ejemplo, el decodificador 12096 de extensión de alta frecuencia FD puede cuantificar inversamente la energía de alta frecuencia en base a la información de energía de alta frecuencia del flujo de bits, generar una señal de excitación de una señal de alta frecuencia utilizando una señal de baja frecuencia de acuerdo con diversos modos de extensión de ancho de banda de alta frecuencia, y generar una señal de alta frecuencia decodificada de acuerdo con la aplicación de una ganancia de modo que la energía de la señal de excitación pueda ser simétrica a la energía cuantificada inversamente. Por ejemplo, los diversos modos de extensión de ancho de banda de alta frecuencia pueden incluir el modo normal, el modo armónico, o el modo de ruido.
En este caso, el decodificador 12096 de extensión de alta frecuencia FD puede realizar la cuantificación inversa de energía compartiendo el mismo libro de códigos con respecto a diferentes tasas de bits, como se describirá en detalle con referencia a la Figura 26 a continuación.
Si una trama que va a ser decodificada es una trama estacionaria, el decodificador 12091 de normalización, el decodificador 12092 FPC, la unidad 12093 de realización de relleno de ruido, y el decodificador 12094 de extensión FD incluido en el decodificador 1209 FD pueden operar.
Sin embargo, si una trama que va a ser decodificada es una trama transitoria, el decodificador 12094 de extensión FD no puede operar.
La Figura 12D es un diagrama de bloques de un aparato 102 de decodificación.
Un procedimiento de decodificación realizado por el aparato 102 de decodificación de la Figura 12D es un procedimiento inverso del procedimiento de la Figura 2D. Con referencia a la Figura 12D, el aparato 102 de decodificación puede incluir una unidad 1211 de comprobación de información de modo, un decodificador 1212 LPC, un decodificador 1213 CELP, un decodificador 1214 de extensión TD, un decodificador 1215 de audio, y un decodificador 1216 de extensión FD.
La unidad 1211 de comprobación de información de modo comprueba la información de modo de cada una de las tramas incluidas en un flujo de bits. El flujo de bits puede ser una señal correspondiente a un flujo de bits de acuerdo con un resultado de codificación realizado por el aparato 101 de codificación transmitido al aparato 102 de decodificación.
Por ejemplo, la unidad 1211 de comprobación de información de modo analiza la información de modo del flujo de bits, y realiza una operación de conmutación a uno de un modo de decodificación CELP o un modo de decodificación FD de acuerdo con el modo de codificación de una trama actual de acuerdo con el resultado del análisis.
Más específicamente, la unidad 1211 de comprobación de información de modo puede conmutar, con respecto a cada una de las tramas incluidas en el flujo de bits, de tal manera que una trama codificada de acuerdo con el modo CELP puede ser decodificada CELP y una trama codificada de acuerdo con el modo FD puede ser decodificada FD.
El decodificador 1212 LPC realiza la decodificación LPC de las tramas incluidas en el flujo de bits.
El decodificador 1213 CELP realiza la decodificación CELP de la trama codificada de acuerdo con el modo CELP, en base al resultado de la comprobación. Por ejemplo, el decodificador 1213 CELP decodifica las contribuciones fijas y adaptativas del libro de códigos, combina los resultados de la decodificación, y genera una señal de baja frecuencia correspondiente a una señal decodificada para la banda de baja frecuencia.
El decodificador 1214 de extensión TD genera una señal decodificada para la banda de alta frecuencia utilizando al menos uno de los resultados de realización de la decodificación CELP y una señal de excitación de la señal de baja frecuencia. La señal de excitación de la señal de baja frecuencia puede incluirse en el flujo de bits. Además, el decodificador 1208 de extensión TD puede utilizar información LPC decodificada por el decodificador 1212 LPC para generar la señal de alta frecuencia correspondiente a una señal decodificada para la banda de alta frecuencia. Además, el decodificador 1214 de extensión TD puede generar una señal decodificada combinando la señal de alta frecuencia con la señal de baja frecuencia generada por el decodificador 1214 CELP. Para generar la señal decodificada, el decodificador 1214 de extensión TD puede realizar además una operación de conversión de las tasas de muestreo de la señal de baja frecuencia y de la señal de alta frecuencia para que sean iguales.
El decodificador 1215 de audio realiza la decodificación de audio sobre la trama de audio codificada, en base al resultado de la comprobación. Por ejemplo, el decodificador 1215 de audio se refiere al flujo de bits, y realiza la decodificación en base a una contribución del dominio de tiempo y una contribución del dominio de frecuencia cuando la contribución del dominio de tiempo está presente o realiza la decodificación en base a la contribución del dominio de frecuencia cuando la contribución del dominio de tiempo no está presente.
También, el decodificador 1215 de audio puede generar una señal de excitación de baja frecuencia decodificada realizando una transformación de frecuencia inversa, por ejemplo, IDCT, en una señal cuantificada de acuerdo con FPC o LVQ, y generar una señal de baja frecuencia decodificada combinando la señal de excitación con un LPC inversamente cuantificado.
El decodificador 1216 FD realiza la decodificación de extensión utilizando un resultado de realización de la decodificación de audio. Por ejemplo, el decodificador 1216 FD convierte la señal de baja frecuencia decodificada a una tasa de muestreo adecuada para realizar la decodificación de extensión de alta frecuencia, y realiza la transformación de frecuencia, por ejemplo, MDCT, en la señal convertida. El decodificador 1216 de extensión FD puede cuantificar inversamente la energía de alta frecuencia cuantificada, generar una señal de excitación de una señal de alta frecuencia utilizando la señal de baja frecuencia de acuerdo con diversos modos de extensión de ancho de banda de alta frecuencia, y generar una señal de alta frecuencia decodificada de acuerdo con la aplicación de una ganancia de tal manera que la energía de la señal de excitación pueda ser simétrica a la energía cuantificada inversamente. Por ejemplo, los diversos modos de extensión de ancho de banda de alta frecuencia pueden incluir el modo normal, el modo armónico, el modo transitorio, o el modo de ruido.
También, el decodificador 1216 de extensión FD genera una señal decodificada realizando una transformación de frecuencia inversa, por ejemplo, MDCT inversa, en la señal de alta frecuencia decodificada y la señal de baja frecuencia.
Además, si el modo transitorio se utiliza para la extensión de ancho de banda de alta frecuencia, el decodificador 1216 de extensión FD puede aplicar una ganancia calculada en un dominio de tiempo de modo que la señal decodificada después dela realización de la transformación de frecuencia inversa pueda coincidir con una envolvente temporal decodificada, y combinar la señal a la cual se aplica la ganancia.
En consecuencia, el aparato 102 de decodificación puede realizar la decodificación en el flujo de bits, en base al modo de codificación de cada una de las tramas incluidas en el flujo de bits.
La Figura 13 es un diagrama de bloques de un decodificador 1304 de extensión incluido en el aparato 102 de decodificación.
Con referencia a la Figura 13, el decodificador 1204 de extensión puede incluir un cuantificador 1301 inverso, un calculador 1302 de ganancia, una unidad 1303 de aplicación de ganancia, un generador 1304 de señal artificial, un estimador 1305 de envolvente, y una unidad 1306 de aplicación de envolvente.
El cuantificador 1301 inverso puede cuantificar inversamente la energía de una señal de entrada. Un procedimiento de cuantificación inversa de la energía de la señal de entrada se describirá en detalle con referencia a la Figura 14 a continuación.
El calculador 1302 de ganancia puede calcular una ganancia que va a ser aplicada a una señal base, en base a la energía inversamente cuantificada y la energía de la señal base. En detalle, la ganancia puede determinarse por una relación entre la energía cuantificada inversamente y la energía de la señal base. En general, la energía se determina utilizando la suma de los cuadrados de amplitud del espectro de frecuencia. Por lo tanto, puede utilizarse una raíz cuadrada de la relación entre la energía cuantificada inversamente y la energía de la señal base.
La unidad 1303 de aplicación de ganancia puede aplicar la ganancia para cada banda de frecuencia para determinar un espectro de frecuencia de un SWB.
Por ejemplo, el cálculo de ganancia y la aplicación de ganancia pueden realizarse ecualizando una banda con una banda de frecuencia utilizada para transmitir energía como se ha descrito anteriormente. El cálculo y la aplicación de la ganancia pueden realizarse dividiendo bandas de frecuencia enteras en subbandas para evitar un cambio drástico de energía. En este caso, las energías en los bordes de las bandas pueden suavizarse interpolando las energías cuantificadas inversamente de las bandas vecinas. Por ejemplo, el cálculo y la aplicación de la ganancia pueden realizarse dividiendo cada banda en tres subbandas, asignando la energía cuantificada inversamente de una banda actual a la subbanda central de entre las tres subbandas de cada banda, y utilizando la energía asignada a una banda central de una banda anterior o posterior y la nueva energía suavizada a través de la interpolación. Es decir, la ganancia puede calcularse y aplicarse en unidades de subbandas.
Un tal procedimiento de suavizado de energía puede aplicarse como un tipo fijo. Además, el procedimiento de suavizado de energía puede aplicarse sólo a las tramas requeridas mediante la transmisión de información que indique que se requiere el suavizado de energía a partir del codificador 204 de extensión. En este caso, la información que indica que se requiere el suavizado de energía puede establecerse como un error de cuantificación en toda la energía cuando se realiza el suavizado de energía es menor que un error de cuantificación en toda la energía cuando no se realiza el suavizado de energía.
La señal base puede generarse utilizando una señal de entrada en un dominio de frecuencia. El procedimiento de generación de la señal base puede realizarse como se describe a continuación.
El generador 1304 de señal artificial puede generar una señal artificial correspondiente a una banda de alta frecuencia copiando y plegando una banda de baja frecuencia de la señal de entrada en el dominio de frecuencia. La señal de entrada en el dominio de frecuencia puede ser una señal decodificada de banda ancha (WB) que tiene una tasa de muestreo de 32 KHz.
El estimador 1305 de envolvente puede estimar una envolvente de la señal base utilizando una ventana incluida en el flujo de bits. La ventana fue utilizada por el aparato 101 de codificación para estimar una envolvente, y la información sobre el tipo de ventana puede incluirse en el flujo de bits como un tipo de bit y transmitirse al aparato 102 de decodificación.
La unidad 1306 de aplicación de envolvente puede generar la señal base aplicando la envolvente estimada a la señal artificial.
Cuando el estimador 602 de envolvente incluido en el aparato 101 de codificación estima que un promedio de una magnitud de frecuencia para cada banda de blanqueamiento es una envolvente de una frecuencia perteneciente a la banda de blanqueamiento, si la información que indica si un número de espectros de frecuencia pertenecientes a la banda de blanqueamiento es grande o pequeño se transmite al aparato 102 de decodificación, entonces el estimador 1305 de envolvente del aparato 102 de decodificación puede estimar la envolvente en base al procedimiento transmitido. Luego, la unidad 1306 de aplicación de envolvente puede aplicar la envolvente estimada a la señal artificial. De lo contrario, la envolvente puede determinarse de acuerdo con un modo de codificación de núcleo utilizado por un descodificador de núcleo de banda ancha (WB) sin tener que transmitir la información.
El decodificador 1201 de núcleo puede decodificar señales clasificando los modos de codificación de las señales como el modo de codificación con voz, el modo de codificación sin voz, el modo de codificación transitorio, y modo de codificación genérico, en base a las características de las señales. En este caso, el estimador 602 de envolvente puede controlar un número de espectros de frecuencia pertenecientes a la banda de blanqueamiento, en base a un modo de decodificación de acuerdo con las características de una señal de entrada. Por ejemplo, si la señal de entrada se decodifica de acuerdo con el modo de decodificación con voz, el estimador 1305 de envolvente puede estimar la envolvente formando tres espectros de frecuencia en la banda de blanqueamiento. Si la señal de entrada se decodifica en un modo de decodificación distinto del modo de decodificación con voz, el estimador 1306 de envolvente puede estimar la envolvente formando tres espectros de frecuencia en la banda de blanqueamiento.
La Figura 14 es un diagrama de flujo que ilustra una operación del cuantificador 1301 inverso incluido en el decodificador 1304 de extensión.
En la operación S1401, el cuantificador 1301 inverso puede cuantificar inversamente un subvector seleccionado del vector de energía, en base a un índice recibido a partir del aparato 101 de codificación.
En la operación S1402, el cuantificador 1301 inverso puede cuantificar inversamente los errores de interpolación correspondientes a los subvectores restantes no seleccionados, en base al índice recibido.
En la operación S1403, el cuantificador 1301 inverso puede calcular los subvectores restantes interpolando el subvector cuantificado inversamente. Luego, el cuantificador 1301 inverso puede añadir los errores de interpolación cuantificados inversamente a los subvectores restantes. Además, el cuantificador 1301 inverso puede calcular una energía cuantificada inversamente sumando un promedio el cual se restó durante una operación de preprocesamiento, a través de una operación de postprocesamiento.
La Figura 15A es un diagrama de flujo que ilustra un procedimiento de codificación.
En la operación S1501, el aparato 101 de codificación puede muestrear de manera descendente una señal de entrada.
En la operación S1502, el aparato 101 de codificación puede codificar el núcleo de la señal de entrada muestreada de manera descendente.
En la operación S1503, el aparato 101 de codificación puede realizar una transformación de frecuencia en la señal de entrada.
En la operación S1504, el aparato 101 de codificación puede realizar la codificación de extensión de ancho de banda en la señal de entrada en un dominio de frecuencia. Por ejemplo, el aparato 101 de codificación puede realizar la codificación de extensión de ancho de banda, utilizando la información de codificación determinada a través de la codificación de núcleo. En este caso, la información de codificación puede incluir un modo de codificación clasificado de acuerdo con las características de la señal de entrada cuando se realiza la codificación de núcleo.
Por ejemplo, el aparato 101 de codificación puede realizar la codificación de extensión de ancho de banda como se describe a continuación.
El aparato 101 de codificación puede generar una señal base de la señal de entrada en el dominio de frecuencia utilizando espectros de frecuencia de la señal de entrada en el dominio de frecuencia. Como otro ejemplo, el aparato 101 de codificación puede generar una señal pf base de la señal de entrada en el dominio de frecuencia, en base a las características y los espectros de frecuencia de la señal de entrada. En este caso, las características de la señal de entrada pueden derivarse a través de la codificación de núcleo o a través de una clasificación adicional de señal. El aparato 101 de codificación puede estimar un factor de control de energía utilizando la señal base. El aparato 101 de codificación puede extraer energía a partir de la señal de entrada en el dominio de frecuencia. A continuación, el aparato 101 de codificación puede controlar la energía extraída utilizando el factor de control de energía. El aparato 101 de codificación puede cuantificar la energía controlada.
La señal base puede generarse como se describe a continuación.
El aparato 101 de codificación puede generar una señal artificial correspondiente a una banda de alta frecuencia copiando y plegando una banda de baja frecuencia de la señal de entrada en el dominio de frecuencia. Luego, el aparato 101 de codificación puede estimar una envolvente de la señal base utilizando una ventana. En este caso, el aparato 101 de codificación puede estimar una envolvente de la señal base seleccionando una ventana a través de una comparación de tonalidad o correlación. Por ejemplo, el aparato 101 de codificación puede estimar un promedio de las magnitudes de frecuencia de cada una de las bandas de blanqueamiento como una envolvente de una frecuencia perteneciente a cada una de las bandas de blanqueamiento. En detalle, el aparato 101 de codificación puede estimar la envolvente de la señal base controlando un número de espectros de frecuencia pertenecientes a la banda de blanqueamiento de acuerdo con un modo de codificación de núcleo.
Luego, el aparato 101 de codificación puede aplicar la envolvente estimada a la señal artificial de modo que genere la señal base.
El factor de control de energía puede estimarse como se describe a continuación.
El aparato 101 de codificación puede calcular una tonalidad de la banda de alta frecuencia de la señal de entrada en el dominio de frecuencia. El aparato 101 de codificación puede calcular una tonalidad de la señal base. Luego, el aparato 101 de codificación puede calcular el factor de control de energía utilizando la tonalidad de la banda de alta frecuencia de la señal de entrada y la tonalidad de la señal base.
La cuantificación de la energía controlada puede realizarse como se describe a continuación.
El aparato 101 de codificación puede seleccionar y cuantificar un subvector, y cuantificar los subvectores restantes utilizando un error de interpolación. En este caso, el aparato 101 de codificación puede seleccionar un subvector en el mismo intervalo de tiempo.
Por ejemplo, el aparato 101 de codificación puede realizar MSVQ utilizando al menos dos etapas seleccionando los subvectores candidatos. En este caso, el aparato 101 de codificación puede generar un conjunto de índices para minimizar los MSEs o WMSEs para cada uno de los subvectores candidatos en cada una de las etapas, y seleccionar un subvector candidato que tenga la menor suma de MSEs o WMSEs en todas las etapas de entre los subvectores candidatos. De lo contrario, el aparato 101 de codificación puede generar un conjunto de índices para minimizar los MSEs o WMSEs para cada uno de los subvectores candidatos en cada una de las etapas, reconstruir el vector de energía a través de la cuantificación inversa, y seleccionar un subvector candidato para satisfacer el MSE o WMSE entre el vector de energía reconstruido y el vector de energía original.
La Figura 15B es un diagrama de flujo que ilustra un procedimiento de codificación. El procedimiento de codificación de la Figura 15B puede incluir operaciones que son secuencialmente realizadas por el aparato 101 de codificación de una de las Figuras 2A a 2C. Por lo tanto, aunque no se describen en este caso, las descripciones anteriores del aparato 101 de codificación con referencia a las Figuras 2A a 2C también pueden aplicarse al procedimiento de codificación de la Figura 15B.
En la operación S1505, la unidad 205 de clasificación de señal determina un modo de codificación de una señal de entrada, en base a las características de la señal de entrada.
En la operación S1506, si el modo de codificación de una señal de entrada se determina como el modo CELP, el codificador 206 CELP realiza la codificación CELP en una señal de baja frecuencia de la señal de entrada.
En la operación S1507, si se realiza la codificación CELP en la señal de baja frecuencia de la señal de entrada, el codificador 207 de extensión TD realiza la codificación de extensión TD en una señal de alta frecuencia de la señal de entrada.
En la operación S1508, si el modo de codificación de una señal de entrada se determina como el modo FD, el transformador 208 de frecuencia realiza una transformación de frecuencia en la señal de entrada.
En la operación S1509, el codificador 209 FD realiza la codificación FD en la señal de entrada transformada de frecuencia.
La Figura 15C es un diagrama de flujo que ilustra un procedimiento de codificación de acuerdo con la presente invención. El procedimiento de codificación de la Figura 15C puede incluir operaciones que son secuencialmente realizadas por el aparato 101 de codificación de una de las Figuras 2A a 2C. Por lo tanto, aunque no se describen en este caso, las descripciones anteriores del aparato 101 de codificación con referencia a las Figuras 2A a 2C también pueden aplicarse al procedimiento de codificación de la Figura 15C.
En la operación S1510, la unidad 210 de clasificación de señal determina un modo de codificación de una señal de entrada, en base a las características de la señal de entrada.
En la operación S1511, el codificador 211 LPC extrae un LPC a partir de una señal de baja frecuencia de la señal de entrada, y cuantifica el LPC.
En la operación S1512, si el modo de codificación de una señal de entrada se determina como el modo CELP, el codificador 212 CELP realiza la codificación CELP en una señal de excitación LPC extraída utilizando el LPC.
En la operación S1513, si se realiza codificación CELP en la señal de excitación LPC de la señal de baja frecuencia de la señal de entrada, el codificador 213 de extensión TD realiza la codificación de extensión TD en una señal de alta frecuencia de la señal de entrada.
En la operación S1514, si el modo de codificación de una señal de entrada se determina como el modo FD, el codificador 214 de audio realiza la codificación de audio en la señal de excitación LPC extraída utilizando el LPC.
En la operación S1515, si se realiza la codificación FD en la señal de excitación LPC de la señal de baja frecuencia de la señal de entrada, el codificador 215 de extensión FD realiza la codificación de extensión FD en la señal de alta frecuencia de la señal de entrada.
La Figura 16 es un diagrama de flujo que ilustra el funcionamiento de un procedimiento de decodificación.
En la operación S1601, el aparato 102 de decodificación puede realizar la decodificación de núcleo en una señal de entrada codificada de núcleo incluida en un flujo de bits.
En la operación S1602, el aparato 102 de decodificación puede muestrear de manera ascendente la señal de entrada decodificada de núcleo.
En la operación S1603, el aparato 102 de decodificación puede realizar una transformación de frecuencia en la señal de entrada muestreada de manera ascendente.
En la operación S1604, el aparato 102 de decodificación puede realizar la decodificación de extensión de ancho de banda utilizando una señal de entrada en un dominio de frecuencia e información sobre la energía de la señal de entrada incluida en el flujo de bits.
Más específicamente, la extensión de ancho de banda puede realizarse como se describe a continuación.
El aparato 102 de decodificación puede cuantificar inversamente la energía de la señal de entrada. En este caso, el aparato 101 de decodificación puede seleccionar y cuantificar inversamente un subvector, interpolar el subvector cuantificado inversamente, y añadir un error de interpolación al subvector interpolado, cuantificando así inversamente la energía.
Además, el aparato 102 de decodificación puede generar una señal base de la señal de entrada en el dominio de frecuencia. A continuación, el aparato 102 de decodificación puede calcular una ganancia que se va a aplicar a la señal base utilizando la energía cuantificada inversamente y la energía de la señal base. A continuación, el aparato 102 de decodificación puede aplicar la ganancia para cada banda de frecuencia.
La señal base puede generarse como se describe a continuación.
El aparato 102 de decodificación puede generar una señal artificial correspondiente a una banda de alta frecuencia de la señal de entrada copiando y plegando una banda de baja frecuencia de la señal de entrada en el dominio de frecuencia. Luego, el aparato 102 de decodificación puede estimar una envolvente de la señal base utilizando la información de ventana incluida en el flujo de bits. En este caso, si se establece que la información de ventana sea la misma, no se incluye información de ventana en el flujo de bits. A continuación, el aparato 102 de decodificación puede aplicar la envolvente estimada a la señal artificial.
La Figura 16B es un diagrama de flujo que ilustra un procedimiento de decodificación. El procedimiento de codificación de la Figura 16B puede incluir operaciones que son secuencialmente realizadas por el aparato 102 de decodificación de una de las Figuras 12A a 12C. Por lo tanto, aunque no se describan en este caso, las descripciones anteriores del aparato 102 de decodificación con referencia a las Figuras 12A a 12C también pueden aplicarse al procedimiento de decodificación de la Figura 16B.
En la operación S1606, la unidad 1206 de comprobación de información de modo comprueba la información de modo de cada una de las tramas incluidas en un flujo de bits.
En la operación S1607, el decodificador 1207 CELP realiza la decodificación CELP en la trama codificada CELP, en base a un resultado de la comprobación.
En la operación S1608, el decodificador 1208 de extensión TD genera una señal decodificada de una banda de alta frecuencia utilizando al menos uno de los resultados de realización de la decodificación CELP y una señal de excitación de una señal de baja frecuencia.
En la operación S1609, el decodificador 1209 FD realiza la decodificación FD en la trama codificada FD, en base a un resultado de la comprobación.
El transformador 1210 de frecuencia inversa realiza una transformación de frecuencia inversa sobre un resultado de la decodificación FD.
La Figura 16C es un diagrama de flujo que ilustra un procedimiento de decodificación. El procedimiento de codificación de la Figura 16C puede incluir operaciones que son secuencialmente realizadas por el aparato 102 de decodificación de una de las Figuras 12A a 12C. Por lo tanto, aunque no se describan en este caso, las descripciones anteriores del aparato 102 de decodificación con referencia a las Figuras 12A a 12C también pueden aplicarse al procedimiento de decodificación de la Figura 16C.
En la operación S1611, la unidad 1211 de comprobación de información de modo comprueba la información de modo de cada una de las tramas incluidas en un flujo de bits.
En la operación S1612, el decodificador 1212 LPC realiza la decodificación LPC en las tramas incluidas en el flujo de bits.
En la operación S1613, el decodificador 1213 CELP realiza la decodificación CELP en la trama codificada CELP, en base a un resultado de la comprobación.
En la operación S1614, el decodificador 1214 de extensión TD genera una señal decodificada de una banda de alta frecuencia utilizando al menos uno de los resultados de realización de la decodificación CELP y una señal de excitación de una señal de baja frecuencia.
En la operación S1615, el decodificador 1215 de audio realiza la decodificación de audio en la trama codificada de audio, en base al resultado de la comprobación.
En la operación S1616, el decodificador 1216 de extensión FD realiza la decodificación de extensión FD utilizando un resultado de realización de la decodificación de audio.
Con respecto a otros asuntos sobre los procedimientos de codificación y decodificación, los cuales no se describen con referencia a las Figuras 15 a 16, se debe hacer referencia a las descripciones con referencia a las Figuras 1 a 14.
La Figura 17 es un diagrama de bloques de toda la estructura de un aparato 1702 de codificación.
Con referencia a la Figura 17, el aparato 100 de codificación puede incluir un selector 1701 de modo de codificación y un codificador 1702 de extensión.
El selector 1701 de modo de codificación puede determinar un modo de codificación de extensión de ancho de banda utilizando una señal de entrada en un dominio de frecuencia y una señal de entrada en un dominio de tiempo.
Más específicamente, el selector 1701 de modo de codificación puede clasificar la señal de entrada en el dominio de frecuencia utilizando la señal de entrada en el dominio de frecuencia y la señal de entrada en el dominio de tiempo, y determinar el modo de codificación de codificación de extensión de ancho de banda y un número de bandas de frecuencia de acuerdo con el modo de codificación, en base a un resultado de la clasificación. En este caso, el modo de codificación puede establecerse como un nuevo conjunto de modos de codificación que son diferentes de un modo de codificación determinado cuando se realiza la codificación de núcleo, para mejorar el rendimiento del codificador 1702 de extensión.
Por ejemplo, los modos de codificación pueden clasificarse en modo normal, el modo armónico, el modo transitorio, y modo de ruido. En primer lugar, el selector 1701 de modo de codificación determina si una trama actual es una trama transitoria, en base a una relación entre la energía a largo plazo de la señal de entrada en el dominio de tiempo y la energía de una banda de alta frecuencia de la trama actual. Una sección de una señal transitoria es una sección en la que se produce un cambio drástico de energía en el dominio de tiempo y, por lo tanto, puede ser una sección en la cual la energía de una banda de alta frecuencia cambia drásticamente.
A continuación, se describirá un procedimiento de determinación de los otros tres modos de codificación. En primer lugar, se obtienen las energías globales de una trama anterior y una trama actual, la relación entre las energías globales y una señal en un dominio de frecuencia se dividen en bandas de frecuencia predeterminadas y, luego, se determinan los tres modos de codificación en base a la energía promedio y la energía pico de cada una de las bandas de frecuencia. En general, en el modo armónico, la diferencia entre la energía de pico y la energía promedio de una señal en un dominio de frecuencia es la mayor. En el modo de ruido, el grado de cambio de energía de una señal es pequeño en general. Los modos de codificación de otras señales, excepto las dos señales, se determinan como el modo normal.
Un número de bandas de frecuencia puede determinarse como dieciséis en el modo normal y el modo armónico, puede determinarse como cinco en el modo transitorio, y puede determinarse como doce en el modo normal.
El codificador 1702 de extensión puede seleccionar el modo de codificación de extensión de ancho de banda utilizando la señal de entrada en el dominio de frecuencia y la señal de entrada en el dominio de tiempo. Con referencia a la Figura 17, el codificador 1702 de extensión puede incluir un generador 1703 de señal base, un estimador 1704 de factor, un extractor 1705 de energía, un controlador 1706 de energía, y un cuantificador 1707 de energía. El generador 1703 de señal base y el estimador 1704 de factor son como se describió anteriormente con referencia a la Figura 5.
El extractor 1705 de energía puede extraer la energía correspondiente a cada una de las bandas de frecuencia de acuerdo con el número de bandas de frecuencia determinado de acuerdo con los modos de codificación. El generador 1703 de señal base, el estimador 1704 de factor y el controlador 1706 de energía pueden determinarse para ser utilizados o no, de acuerdo con el modo de codificación. Por ejemplo, estos elementos pueden utilizarse en el modo normal y en el modo armónico, pero no en el modo transitorio ni en el modo de ruido. El generador 1703 de señal base, el estimador 1704 de factor, y el controlador 1706 de energía son como se describió anteriormente con referencia a la Figura 5. La energía de banda sobre la cual se realiza el control de energía puede ser cuantificada por el cuantificador 1707 de energía.
La Figura 18 es un diagrama de flujo que ilustra una operación del cuantificador 1710 de energía.
El cuantificador 1707 de energía puede cuantificar la energía extraída a partir de una señal de entrada de acuerdo con un modo de codificación. En este caso, el cuantificador 1707 de energía puede cuantificar la energía de banda que se va a optimizar para la señal de entrada en base a un número de energía de banda y en las características perceptivas de la señal de entrada de acuerdo con el modo de codificación.
Por ejemplo, si el modo de codificación es el modo transitorio, el cuantificador 1707 de energía puede cuantificar, con respecto a cinco energías de banda, la energía de banda utilizando un procedimiento de ponderación de frecuencia en base a las características perceptivas de una señal de entrada. Si el modo de codificación es el modo normal o el modo armónico, el cuantificador 1707 de energía puede cuantificar, con respecto a dieciséis energías de banda, la energía de banda utilizando un procedimiento de asignación desigual de bits en base a las características perceptivas de una señal de entrada. Si las características de la señal de entrada no son definidas, el cuantificador 1707 de energía puede realizar la cuantificación de acuerdo con un procedimiento general, en lugar de en consideración de las características perceptivas de la señal de entrada.
La Figura 19 es un diagrama que ilustra un procedimiento de cuantificación de energía utilizando el procedimiento de asignación desigual de bits.
En el procedimiento de asignación desigual de bits, se consideran las características perceptivas de una señal de entrada la cual es el objetivo de la codificación de extensión. Por lo tanto, las bandas de frecuencia relativamente bajas de alta importancia perceptiva pueden cuantificarse con mayor precisión de acuerdo con el procedimiento de asignación desigual de bits. Con este fin, el cuantificador 1707 de energía puede clasificar la importancia perceptual asignando el mismo número de bits o un número mayor de bits a las bandas de frecuencia relativamente bajas, en comparación con los números de bits asignados a las otras bandas de frecuencia.
Por ejemplo, el cuantificador 1707 de energía asigna un mayor número de bits a bandas de frecuencia relativamente bajas a las que se asignan los números "0” a "5” . Los números de bits asignados a las bandas de frecuencia relativamente bajas que asignan los números "0” a "5” pueden ser los mismos. Cuanto más grande sea una banda de frecuencia, más pequeño será el número de bits asignados a la banda de frecuencia por el cuantificador 1707 de energía. En consecuencia, las bandas de frecuencia asignadas a los números "0” a "13” pueden ser cuantificadas como se ilustra en la Figura 19, de acuerdo con la asignación de bits descrita anteriormente. Otras bandas de frecuencia asignadas con los números '14' y '15' pueden ser cuantificadas como se ilustra en la Figura 20.
La Figura 20 es un diagrama que ilustra la cuantificación vectorial utilizando la predicción intra-trama.
El cuantificador 1707 de energía predice un valor representativo de un vector objetivo de cuantificación que tiene al menos dos elementos, y puede entonces realizar la cuantificación vectorial en una señal de error entre cada uno de los elementos del vector objetivo de cuantificación y el valor representativo predicho.
La Figura 20 ilustra un tal procedimiento de predicción intra-trama. Un procedimiento de predicción del valor representativo del vector objetivo de cuantificación y la derivación de la señal de error son los siguientes:
p=0A*QEnv(\2) 0.6*QEnv(\3)
e(\4) = Env(\4)-p
e(\5 ) = A //v’( l 5 ) -p(g)
en el que "Env(n)” denota la energía de banda no cuantificada, "QEnv(n)” denota la energía de banda que está cuantificada, "p” denota el valor representativo predicho del vector objetivo de cuantificación, "e(n)” denota la energía de error. En la Ecuación (8), 'e(14)' y 'e(15)' están cuantificados vectorialmente.PR
La Figura 21 es un diagrama que ilustra un procedimiento de cuantificación de energía utilizando un procedimiento de ponderación de frecuencia.
En el procedimiento de ponderación de frecuencia, las bandas de frecuencias relativamente bajas de alta importancia perceptiva pueden cuantificarse de manera más precisa considerando las características perceptivas de una señal de entrada que es el objetivo de la codificación de extensión, como en el procedimiento de asignación desigual de bits. Con este fin, la importancia perceptiva se clasifica asignando el mismo peso o un peso mayor a las bandas de frecuencia relativamente bajas, en comparación con los asignados a las otras bandas de frecuencia.
Por ejemplo, con referencia a la Figura 21, el cuantificador 1707 de energía puede realizar la cuantificación asignando un peso mayor, por ejemplo, 1,0, a bandas de frecuencia relativamente bajas a las que se han asignado los números "0” a "3” y asignando un peso menor, por ejemplo, 0,7, a una banda de frecuencia a la que se ha asignado el número "15”. Para utilizar los pesos asignados, el cuantificador 1707 de energía puede calcular un índice óptimo utilizando un WMSE.
La Figura 22 es un diagrama que ilustra la cuantificación vectorial de la división de múltiples etapas y la cuantificación vectorial utilizando la predicción intra-trama.
El cuantificador 1707 de energía puede realizar la cuantificación vectorial en el modo normal en el cual un número de energía de banda es dieciséis, como se ilustra en la Figura 22. En este caso, el cuantificador 1707 de energía puede realizar la cuantificación vectorial utilizando el procedimiento de asignación desigual de bits, la predicción intra-trama, y el VQ dividido en múltiples etapas con interpolación de energía.
La Figura 23 es un diagrama que ilustra una operación de un cuantificador 1301 inverso incluido en el aparato 102 de decodificación.
La operación de un cuantificador 1301 inverso de la Figura 23 puede ser una operación inversa de la operación del cuantificador 1710 de energía de la Figura 18. Cuando los modos de codificación se utilizan para realizar la codificación de extensión como se ha descrito anteriormente con referencia a la Figura 17, el cuantificador 1301 inverso puede decodificar información de los modos de codificación.
En primer lugar, el cuantificador 1301 inverso decodifica la información de los modos de codificación utilizando un índice recibido. Luego, el cuantificador 1301 inverso realiza la cuantificación inversa de acuerdo con la información decodificada del modo de codificación. Con referencia a la Figura 23, de acuerdo con los modos de codificación, los bloques que son objeto de la cuantificación inversa se cuantifican inversamente en un orden inverso al cual se realiza la cuantificación.
Una parte la cual fue cuantificada de acuerdo con el VQ dividido en múltiples etapas con interpolación de energía puede ser cuantificada inversamente como se ilustra en la Figura 14. El cuantificador 1301 inverso puede realizar la cuantificación inversa utilizando la predicción intra-trama mediante el uso de la siguiente ecuación:
p<=>0A*QEnv(\2) 0.6*QEnv(l3)
QEnv( 14<) =>e(14) p
QEnv(l5) = e(l5) p<(g)>
en la que "Env(n)” denota la energía de banda no cuantificada y "QEnv(n)” denota la energía de banda que está cuantificada. También, 'p ' denota un valor representativo de un vector objetivo de cuantificación, y 'e A(n)' denota la energía de error cuantificada.
La Figura 24 es un diagrama de bloques de un aparato 101 de codificación.
Las operaciones básicas de los elementos del aparato 101 de codificación ilustrado en la Figura 24 son los mismas que las de los elementos del aparato 101 de decodificación ilustrado en la Figura 2A, excepto que un codificador 2404 de extensión no recibe ninguna información a partir de un codificador 2404 de núcleo y puede recibir directamente una señal de entrada en un dominio de tiempo.
La Figura 25 es un diagrama que ilustra los flujos de bits.
Con referencia a la Figura 25, un flujo 251 de bits, un flujo 252 de bits, y un flujo 253 de bits corresponden a una trama Nenésima, una trama (N+1)enésima, y una trama (N+2)enésima respectivamente.
Con referencia a la Figura 25, los flujos 251,252 y 253 de bits incluyen una cabecera 254 y una carga 255 útil.
La cabecera 254 puede incluir información 2511,2521 y 2531 de modo. La información 2511,2521 y 2531 de modo es información de modo de codificación de la trama Nenésima, una trama (N+1)enésima, y una trama (N+2)enésima respectivamente. Por ejemplo, la información 2511 de modo representa un modo de codificación utilizado para codificar la trama Nenésima, la información 2512 de modo representa un modo de codificación utilizado para codificar la trama (N+1)enésima, y la información 2513 de modo representa un modo de codificación utilizado para codificar la trama (N+2)enésima. Por ejemplo, los modos de codificación pueden incluir al menos uno de entre el modo CELP, el modo FD, y el modo de codificación de audio.
La carga 255 útil incluye información sobre los datos de núcleo de acuerdo con los modos de codificación de estas tramas.
Por ejemplo, en el caso de la trama Nenésima codificada en el modo CELP, la carga 255 útil puede incluir información 2512 CELP e información 2513 de extensión TD.
En el caso de la trama (N+1)enésima codificada en el modo FD, la carga 255 útil puede incluir información 2523 FD. En el caso de la trama (N+2)enésima codificada en el modo FD, la carga 255 útil puede incluir información 2532 FD.
La carga 255 útil del flujo 252 de bits correspondiente a la trama (N+1)enésima puede incluir además datos 2522 de predicción. En otras palabras, el modo de codificación entre tramas adyacentes se conmuta a partir del modo CELP al modo FD, el flujo 252 de bits de acuerdo con un resultado de la realización de la codificación de acuerdo con el modo FD puede incluir los datos 2522 de predicción.
Más específicamente, como se ilustra en la Figura 2B, cuando el aparato 101 de codificación que es capaz de conmutar entre el modo CELP y el modo FD realiza la codificación de acuerdo con el modo FD, se utiliza la transformación de frecuencia, por ejemplo, MDCT, la cual incluye tramas superpuestas.
Por lo tanto, si la trama Nenésima y la trama (N+1)enésima de la señal de entrada se codifican de acuerdo con el modo CELP y el modo FD, respectivamente, entonces la trama (N+1)enésima no puede decodificarse utilizando sólo el resultado de la codificación de acuerdo con el modo FD. Por esta razón, si el modo de codificación entre las tramas adyacentes se conmuta a partir del modo CELP al modo FD, el flujo 252 de bits de acuerdo con el resultado de realización de la codificación de acuerdo con el modo FD puede incluir los datos 2522 de predicción que representan la información correspondiente a la predicción.
En consecuencia, un lado de decodificación puede decodificar el flujo 252 de bits codificado de acuerdo con el modo FD a través de una predicción utilizando información decodificada de dominio de tiempo de una trama actual, por ejemplo, la trama (N+1)enésima y un resultado de decodificación de una trama anterior, por ejemplo, la trama Nenésima, en base a los datos 2522 de predicción incluidos en el flujo 252 de bits. Por ejemplo, la información de dominio de tiempo puede ser el solapamiento del dominio de tiempo.
Además, la carga 255 útil del flujo 252 de bits correspondiente a la trama (N+1)enésima puede incluir además información 2524 de modo de trama anterior, y la carga 255 útil del flujo 253 de bits correspondiente a la trama (N+2)enésima puede incluir además información de modo 2533 de trama anterior.
Más específicamente, los flujos 252 y 253 de bits codificados de acuerdo con el modo FD pueden incluir además la información 2524 y 2533 de modo de trama anterior, respectivamente.
Por ejemplo, la información 2524 de modo de trama anterior incluida en el flujo 252 de bits correspondiente a la trama (N+1 )enésima puede incluir información sobre la información 2511 de modo de la trama Nenésima, y la información 2533 de modo de trama anterior incluida en el flujo 253 de bits correspondiente a la trama (N+2)enésima puede incluir información sobre la información 2524 de modo de la trama (N+1)enésima.
Por lo tanto, incluso si se produce un error en una de una pluralidad de tramas, el lado de decodificación puede detectar exactamente un modo transitorio.
La Figura 26 es un diagrama que ilustra un procedimiento de realización de la asignación de frecuencias para cada banda de frecuencia.
Como se ha descrito anteriormente, el codificador 2094 de extensión FD de la Figura 2C o el codificador 215 de extensión FD de la Figura 2D puede realizar la cuantificación de energía compartiendo el mismo libro de códigos incluso a diferentes tasas de bits. Por lo tanto, cuando un espectro de frecuencia correspondiente a una señal de entrada se divide en un número predeterminado de bandas de frecuencia, el codificador 2094 de extensión FD o el codificador 215 de extensión FD pueden asignar el mismo ancho de banda a cada una de las bandas de frecuencia, incluso a diferentes tasas de bits.
Ahora se describirá un caso 261 en el que una banda de frecuencia de aproximadamente 6,4 a 14,4 kHz se divide a una tasa de bits de 16 kbps y un caso 262 en el que una banda de frecuencia de aproximadamente 8 a 16 kHz se divide a una tasa de bits igual a o mayor que 16 kbps. En estos casos, el ancho de banda de cada una de las bandas de frecuencia es el mismo, incluso a tasas de bits diferentes.
Es decir, un ancho 263 de banda de una primera banda de frecuencia puede ser de 0,4 kHz tanto a una tasa de bits de 16kbps como a una tasa de bits que es igual a o mayor que 16 kbps, y un ancho 264 de banda de una segunda banda de frecuencia puede ser de 0,6 kHz tanto a una tasa de bits de 16kbps como a una tasa de bits igual a o mayor que 16 kbps.
Como se ha descrito anteriormente, dado que el ancho de banda de cada una de las bandas de frecuencia está establecido para ser el mismo incluso a diferentes tasas de bits, el codificador 2094 de extensión FD o el codificador 215 de extensión FD pueden realizar la cuantificación de energía compartiendo el mismo libro de códigos a diferentes tasas de bits.
Por lo tanto, en una configuración en la cual la conmutación se realiza entre el modo CELP y el modo FD o entre el modo CELP y el modo de codificación de audio, la extensión del ancho de banda de múltiple modo puede realizarse y se puede compartir el libro de códigos para soportar diversas tasas de bits, reduciendo así el tamaño de, por ejemplo, una memoria de sólo lectura (ROM) y simplificando una implementación.
La Figura 27 es un diagrama que ilustra una banda 271 de frecuencia utilizada en un codificador FD o un decodificador FD.
Con referencia a la Figura 27, la banda 271 de frecuencia puede ser un ejemplo de una banda de frecuencia que puede utilizarse, por ejemplo, en el codificador 209 FD de la Figura 2B y el decodificador 1209 FD de la Figura 12B de acuerdo con cada una de las herramientas.
Más específicamente, el codificador 2092 de pulso factorial del codificador 209 FD limita una banda de frecuencia para realizar la codificación FPC, de acuerdo con la tasa de bits. Por ejemplo, una banda Fcore de frecuencia para realizar la codificación FPC puede ser de 6,4 kHz, 8 kHz, o 9,6 kHz de acuerdo con una tasa de bits.
Una banda 272 de frecuencia codificada de pulso factorial Ffpc puede determinarse realizando FPC en la banda de frecuencia limitada por el codificador 2092 de pulso factorial. En este caso, la unidad 12093 de realización de relleno de ruido del decodificador 1209 FD realiza el relleno de ruido en la banda 272 de frecuencia codificada de pulso factorial Ffpc.
En este caso, si un valor de banda superior de la banda 272 de frecuencia codificada de pulso factorial Ffpc es menor que el valor de banda superior de la banda Fcore de frecuencia para realizar el FPC, el decodificador 12095 de extensión de baja frecuencia FD del decodificador 1209 FD puede realizar la decodificación de extensión de baja frecuencia.
Con referencia a la Figura 27, el decodificador 12095 de extensión de baja frecuencia FD puede realizar la decodificación de extensión de baja frecuencia FD en una banda 273 de frecuencia restante de la banda Fcore de frecuencia, excluyendo la banda de frecuencia codificada de pulso factorial Ffpc. Sin embargo, si la banda Fcore de frecuencia es la misma que la banda 272 de frecuencia codificada de pulso factorial Ffpc, es posible que no se realice la decodificación de extensión de baja frecuencia FD.
El decodificador 12096 de extensión de alta frecuencia FD del decodificador 1209 FD puede realizar la codificación de extensión de alta frecuencia FD en una banda 274 de frecuencia entre un valor de banda superior de la banda Fcore de frecuencia y un valor de banda superior de una banda Fend de frecuencia de acuerdo con una tasa de bits. Por ejemplo, el valor de banda superior de la banda Fend de frecuencia puede ser 14 kHz, 14,4 kHz, o 16 kHz. Por lo tanto, utilizando el aparato 101 de codificación y el aparato 102 de decodificación, la voz y la música pueden codificarse eficientemente a diversas tasas de bits a través de diversos sistemas de conmutación. Además, la codificación de extensión FD y la decodificación de extensión FD pueden realizarse compartiendo un libro de códigos. Por lo tanto, el audio de alta calidad puede implementarse de forma menos complicada incluso cuando existen diversas configuraciones. Además, dado que la información de modo sobre una trama anterior se incluye en un flujo de bits cuando se realiza la codificación FD, la decodificación puede realizarse con exactitud incluso cuando se produce un error de trama. En consecuencia, con el aparato 101 de codificación y el aparato 102 de decodificación, es posible realizar la codificación y decodificación con baja complejidad y bajo retardo.
En consecuencia, una señal de voz y una señal de música de acuerdo con un servicio de voz mejorado (EVS) 3GPP pueden ser codificadas y decodificadas adecuadamente.
Los procedimientos anteriores pueden ser incorporados como un programa de ordenador que puede ser ejecutado por diversos tipos de medios de ordenador y ser registrado en un medio de registro legible por ordenador. Los medios de almacenamiento legibles por ordenador pueden almacenar instrucciones de programa, archivos de datos, estructuras de datos, o una combinación de los mismos. Los comandos del programa pueden estar especialmente diseñados o construidos de acuerdo con la presente invención o pueden ser bien conocidos en el campo del software de ordenador.
Aunque se ha mostrado y descrito particularmente la presente invención con referencia a realizaciones ejemplares de la misma, se entenderá por los expertos en la técnica que se pueden realizar diversos cambios en forma y detalles en la misma sin alejarse del ámbito de la presente invención como se define mediante las reivindicaciones adjuntas.
Claims (5)
1. Un procedimiento de codificación que comprende:
determinar un modo de codificación de una señal de entrada, en base a las características de la señal de entrada;
extraer un coeficiente de predicción lineal, LPC, a partir de una señal de baja frecuencia de la señal de entrada;
cuantificar el LPC;
realizar una codificación de predicción lineal excitada por código, CELP, en una señal de excitación LPC de la señal de baja frecuencia de la señal de entrada, cuando el modo de codificación de la señal de entrada es un modo de codificación CELP, extrayéndose la señal de excitación LPC utilizando el LPC cuantificado; realizar la codificación de extensión de dominio de tiempo, TD, en una señal de alta frecuencia de la señal de entrada, cuando la codificación CELP se realiza en la señal de excitación LPC;
realizar la codificación de audio en la señal de excitación LPC, cuando el modo de codificación de la señal de entrada es un modo de codificación de audio; y
realizar la codificación de extensión de dominio de frecuencia, FD, en la señal de alta frecuencia de la señal de entrada, cuando la codificación de audio se realiza en la señal de excitación LPC.
2. El procedimiento de la reivindicación 1, en el que la realización de la codificación de extensión FD comprende:
obtener energía a partir de cada banda de frecuencia de una trama en la señal de alta frecuencia; y cuantificación vectorial de múltiples etapas de la energía obtenida.
3. Un aparato de codificación que comprende:
una unidad (210) de clasificación de señal configurada para determinar un modo de codificación de una señal de entrada, en base a las características de la señal de entrada;
un codificador (211) de coeficiente de predicción lineal, LPC configurado para extraer un LPC a partir de la señal de baja frecuencia de la señal de entrada, y para cuantificar el LPC;
un codificador (211) de predicción lineal excitada por código, CELP (212), configurado para realizar la codificación CELP en una señal de excitación LPC de la señal de baja frecuencia de la señal de entrada, cuando el modo de codificación de la señal de entrada es un modo de codificación CELP, extrayéndose la señal de excitación LPC utilizando el LPC cuantificado;
un codificador (213) de extensión TD de dominio del tiempo configurado para realizar la codificación de extensión TD en una señal de alta frecuencia de la señal de entrada, cuando la codificación CELP se realiza en la señal de excitación LPC;
un codificador (214) de audio configurado para realizar la codificación de audio en la señal de excitación LPC, cuando el modo de codificación de la señal de entrada es un modo de codificación de audio; y
un codificador (215) de extensión de dominio de frecuencia, FD configurado para realizar la codificación de extensión FD en la señal de alta frecuencia de la señal de entrada, cuando la codificación de audio se realiza en la señal de excitación LPC.
4. El aparato de la reivindicación 3, en el que el codificador de extensión FD está configurado para:
obtener energía a partir de cada banda de frecuencia de una trama en la señal de alta frecuencia; y cuantificación vectorial de múltiples etapas de la energía obtenida.
5. Un medio de registro no transitorio legible por ordenador que tenga registrado en el mismo un programa de ordenador para ejecutar el procedimiento de una cualquiera de las reivindicaciones 1 a 2.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100138045A KR101826331B1 (ko) | 2010-09-15 | 2010-12-29 | 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법 |
US201161495017P | 2011-06-09 | 2011-06-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2967508T3 true ES2967508T3 (es) | 2024-04-30 |
Family
ID=47904455
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES11853939.4T Active ES2564504T3 (es) | 2010-12-29 | 2011-12-28 | Aparato de codificación y aparato de descodificación con una ampliación de ancho de banda |
ES17179600T Active ES2967508T3 (es) | 2010-12-29 | 2011-12-28 | Aparato y procedimiento de codificación de extensión de ancho de banda de alta frecuencia |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES11853939.4T Active ES2564504T3 (es) | 2010-12-29 | 2011-12-28 | Aparato de codificación y aparato de descodificación con una ampliación de ancho de banda |
Country Status (14)
Country | Link |
---|---|
US (2) | US10453466B2 (es) |
EP (3) | EP3023985B1 (es) |
JP (3) | JP6148983B2 (es) |
KR (2) | KR102022664B1 (es) |
CN (3) | CN103493131B (es) |
AU (1) | AU2011350143B9 (es) |
BR (2) | BR122021007425B1 (es) |
CA (3) | CA2981539C (es) |
ES (2) | ES2564504T3 (es) |
MX (1) | MX2013007489A (es) |
MY (2) | MY186055A (es) |
RU (1) | RU2672133C1 (es) |
SG (1) | SG191771A1 (es) |
WO (1) | WO2012091464A1 (es) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MY186055A (en) * | 2010-12-29 | 2021-06-17 | Samsung Electronics Co Ltd | Coding apparatus and decoding apparatus with bandwidth extension |
US9418651B2 (en) | 2013-07-31 | 2016-08-16 | Google Technology Holdings LLC | Method and apparatus for mitigating false accepts of trigger phrases |
CN105745703B (zh) | 2013-09-16 | 2019-12-10 | 三星电子株式会社 | 信号编码方法和装置以及信号解码方法和装置 |
JP6319753B2 (ja) | 2013-12-02 | 2018-05-09 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 符号化方法および装置 |
CN111312277B (zh) * | 2014-03-03 | 2023-08-15 | 三星电子株式会社 | 用于带宽扩展的高频解码的方法及设备 |
CN111105806B (zh) * | 2014-03-24 | 2024-04-26 | 三星电子株式会社 | 高频带编码方法和装置,以及高频带解码方法和装置 |
EP2980795A1 (en) | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor |
EP2980798A1 (en) | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Harmonicity-dependent controlling of a harmonic filter tool |
CN111968655B (zh) | 2014-07-28 | 2023-11-10 | 三星电子株式会社 | 信号编码方法和装置以及信号解码方法和装置 |
EP2980794A1 (en) | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder using a frequency domain processor and a time domain processor |
WO2016024853A1 (ko) * | 2014-08-15 | 2016-02-18 | 삼성전자 주식회사 | 음질 향상 방법 및 장치, 음성 복호화방법 및 장치와 이를 채용한 멀티미디어 기기 |
KR102398124B1 (ko) | 2015-08-11 | 2022-05-17 | 삼성전자주식회사 | 음향 데이터의 적응적 처리 |
CN107545900B (zh) * | 2017-08-16 | 2020-12-01 | 广州广晟数码技术有限公司 | 带宽扩展编码和解码中高频弦信号生成的方法和装置 |
CN108630212B (zh) * | 2018-04-03 | 2021-05-07 | 湖南商学院 | 非盲带宽扩展中高频激励信号的感知重建方法与装置 |
CN109448741B (zh) * | 2018-11-22 | 2021-05-11 | 广州广晟数码技术有限公司 | 一种3d音频编码、解码方法及装置 |
JP6693551B1 (ja) * | 2018-11-30 | 2020-05-13 | 株式会社ソシオネクスト | 信号処理装置および信号処理方法 |
CN112086102B (zh) * | 2020-08-31 | 2024-04-16 | 腾讯音乐娱乐科技(深圳)有限公司 | 扩展音频频带的方法、装置、设备以及存储介质 |
CN113299313B (zh) * | 2021-01-28 | 2024-03-26 | 维沃移动通信有限公司 | 音频处理方法、装置及电子设备 |
CN113938749B (zh) * | 2021-11-30 | 2023-05-05 | 北京百度网讯科技有限公司 | 音频数据处理方法、装置、电子设备和存储介质 |
CN114550732B (zh) * | 2022-04-15 | 2022-07-08 | 腾讯科技(深圳)有限公司 | 一种高频音频信号的编解码方法和相关装置 |
Family Cites Families (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE501305C2 (sv) * | 1993-05-26 | 1995-01-09 | Ericsson Telefon Ab L M | Förfarande och anordning för diskriminering mellan stationära och icke stationära signaler |
JPH08179796A (ja) * | 1994-12-21 | 1996-07-12 | Sony Corp | 音声符号化方法 |
JP3317470B2 (ja) * | 1995-03-28 | 2002-08-26 | 日本電信電話株式会社 | 音響信号符号化方法、音響信号復号化方法 |
JP3707116B2 (ja) * | 1995-10-26 | 2005-10-19 | ソニー株式会社 | 音声復号化方法及び装置 |
DE19729494C2 (de) * | 1997-07-10 | 1999-11-04 | Grundig Ag | Verfahren und Anordnung zur Codierung und/oder Decodierung von Sprachsignalen, insbesondere für digitale Diktiergeräte |
JP3235543B2 (ja) * | 1997-10-22 | 2001-12-04 | 松下電器産業株式会社 | 音声符号化/復号化装置 |
SE521225C2 (sv) * | 1998-09-16 | 2003-10-14 | Ericsson Telefon Ab L M | Förfarande och anordning för CELP-kodning/avkodning |
US6377915B1 (en) * | 1999-03-17 | 2002-04-23 | Yrp Advanced Mobile Communication Systems Research Laboratories Co., Ltd. | Speech decoding using mix ratio table |
US7117149B1 (en) | 1999-08-30 | 2006-10-03 | Harman Becker Automotive Systems-Wavemakers, Inc. | Sound source classification |
JP2000132199A (ja) * | 1999-12-02 | 2000-05-12 | Matsushita Electric Ind Co Ltd | 音声符号化装置/復号化装置 |
US6947888B1 (en) | 2000-10-17 | 2005-09-20 | Qualcomm Incorporated | Method and apparatus for high performance low bit-rate coding of unvoiced speech |
JP2002202799A (ja) | 2000-10-30 | 2002-07-19 | Fujitsu Ltd | 音声符号変換装置 |
DE60214027T2 (de) * | 2001-11-14 | 2007-02-15 | Matsushita Electric Industrial Co., Ltd., Kadoma | Kodiervorrichtung und dekodiervorrichtung |
JP2003304238A (ja) * | 2002-04-09 | 2003-10-24 | Sony Corp | 信号再生方法及び装置、信号記録方法及び装置、並びに符号列生成方法及び装置 |
US7218251B2 (en) | 2002-03-12 | 2007-05-15 | Sony Corporation | Signal reproducing method and device, signal recording method and device, and code sequence generating method and device |
US20050004793A1 (en) * | 2003-07-03 | 2005-01-06 | Pasi Ojala | Signal adaptation for higher band coding in a codec utilizing band split coding |
US7619995B1 (en) * | 2003-07-18 | 2009-11-17 | Nortel Networks Limited | Transcoders and mixers for voice-over-IP conferencing |
CA2457988A1 (en) * | 2004-02-18 | 2005-08-18 | Voiceage Corporation | Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization |
FI119533B (fi) * | 2004-04-15 | 2008-12-15 | Nokia Corp | Audiosignaalien koodaus |
WO2005104094A1 (ja) * | 2004-04-23 | 2005-11-03 | Matsushita Electric Industrial Co., Ltd. | 符号化装置 |
ATE515883T1 (de) * | 2004-04-28 | 2011-07-15 | Panasonic Corp | Stream-erzeugungsvorrichtung, stream- erzeugungsverfahren, codierungsvorrichtung, codierungsverfahren, aufzeichnungsmedium und programm dafür |
EP1742202B1 (en) * | 2004-05-19 | 2008-05-07 | Matsushita Electric Industrial Co., Ltd. | Encoding device, decoding device, and method thereof |
ES2791001T3 (es) * | 2004-11-02 | 2020-10-30 | Koninklijke Philips Nv | Codificación y decodificación de señales de audio mediante el uso de bancos de filtros de valor complejo |
KR100707174B1 (ko) | 2004-12-31 | 2007-04-13 | 삼성전자주식회사 | 광대역 음성 부호화 및 복호화 시스템에서 고대역 음성부호화 및 복호화 장치와 그 방법 |
US7805314B2 (en) * | 2005-07-13 | 2010-09-28 | Samsung Electronics Co., Ltd. | Method and apparatus to quantize/dequantize frequency amplitude data and method and apparatus to audio encode/decode using the method and apparatus to quantize/dequantize frequency amplitude data |
US7587314B2 (en) * | 2005-08-29 | 2009-09-08 | Nokia Corporation | Single-codebook vector quantization for multiple-rate applications |
KR20070026939A (ko) * | 2005-08-29 | 2007-03-09 | 주식회사 아이캐시 | 한 개의 카드번호를 이용한 마일리지 포인트, 전자화폐,전자상품권, 선불카드, 직불카드 및 타 신용카드의통합결제 시스템 및 방법 |
KR100795727B1 (ko) * | 2005-12-08 | 2008-01-21 | 한국전자통신연구원 | Celp기반의 음성 코더에서 고정 코드북 검색 장치 및방법 |
KR20070115637A (ko) * | 2006-06-03 | 2007-12-06 | 삼성전자주식회사 | 대역폭 확장 부호화 및 복호화 방법 및 장치 |
US9159333B2 (en) | 2006-06-21 | 2015-10-13 | Samsung Electronics Co., Ltd. | Method and apparatus for adaptively encoding and decoding high frequency band |
KR101390188B1 (ko) * | 2006-06-21 | 2014-04-30 | 삼성전자주식회사 | 적응적 고주파수영역 부호화 및 복호화 방법 및 장치 |
WO2007148925A1 (en) * | 2006-06-21 | 2007-12-27 | Samsung Electronics Co., Ltd. | Method and apparatus for adaptively encoding and decoding high frequency band |
KR101393298B1 (ko) | 2006-07-08 | 2014-05-12 | 삼성전자주식회사 | 적응적 부호화/복호화 방법 및 장치 |
US7873514B2 (en) * | 2006-08-11 | 2011-01-18 | Ntt Docomo, Inc. | Method for quantizing speech and audio through an efficient perceptually relevant search of multiple quantization patterns |
DE602006013359D1 (de) * | 2006-09-13 | 2010-05-12 | Ericsson Telefon Ab L M | Ender und empfänger |
US8639500B2 (en) * | 2006-11-17 | 2014-01-28 | Samsung Electronics Co., Ltd. | Method, medium, and apparatus with bandwidth extension encoding and/or decoding |
KR101565919B1 (ko) * | 2006-11-17 | 2015-11-05 | 삼성전자주식회사 | 고주파수 신호 부호화 및 복호화 방법 및 장치 |
CN101589623B (zh) * | 2006-12-12 | 2013-03-13 | 弗劳恩霍夫应用研究促进协会 | 对表示时域数据流的数据段进行编码和解码的编码器、解码器以及方法 |
KR101379263B1 (ko) * | 2007-01-12 | 2014-03-28 | 삼성전자주식회사 | 대역폭 확장 복호화 방법 및 장치 |
CN101231850B (zh) * | 2007-01-23 | 2012-02-29 | 华为技术有限公司 | 编解码方法及装置 |
FR2912249A1 (fr) * | 2007-02-02 | 2008-08-08 | France Telecom | Codage/decodage perfectionnes de signaux audionumeriques. |
CN101542596B (zh) * | 2007-02-14 | 2016-05-18 | Lg电子株式会社 | 用于编码和解码基于对象的音频信号的方法和装置 |
US8032359B2 (en) * | 2007-02-14 | 2011-10-04 | Mindspeed Technologies, Inc. | Embedded silence and background noise compression |
JP4871894B2 (ja) | 2007-03-02 | 2012-02-08 | パナソニック株式会社 | 符号化装置、復号装置、符号化方法および復号方法 |
KR101373004B1 (ko) | 2007-10-30 | 2014-03-26 | 삼성전자주식회사 | 고주파수 신호 부호화 및 복호화 장치 및 방법 |
CN101430880A (zh) * | 2007-11-07 | 2009-05-13 | 华为技术有限公司 | 一种背景噪声的编解码方法和装置 |
MX2010002629A (es) | 2007-11-21 | 2010-06-02 | Lg Electronics Inc | Metodo y aparato para procesar una señal. |
JP5448850B2 (ja) | 2008-01-25 | 2014-03-19 | パナソニック株式会社 | 符号化装置、復号装置およびこれらの方法 |
ES2464722T3 (es) * | 2008-03-04 | 2014-06-03 | Lg Electronics Inc. | Método y aparato para procesar una señal de audio |
EP2144230A1 (en) * | 2008-07-11 | 2010-01-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Low bitrate audio encoding/decoding scheme having cascaded switches |
WO2010036061A2 (en) * | 2008-09-25 | 2010-04-01 | Lg Electronics Inc. | An apparatus for processing an audio signal and method thereof |
WO2010047566A2 (en) * | 2008-10-24 | 2010-04-29 | Lg Electronics Inc. | An apparatus for processing an audio signal and method thereof |
US8457975B2 (en) * | 2009-01-28 | 2013-06-04 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program |
CA3076203C (en) * | 2009-01-28 | 2021-03-16 | Dolby International Ab | Improved harmonic transposition |
JP4892021B2 (ja) * | 2009-02-26 | 2012-03-07 | 株式会社東芝 | 信号帯域拡張装置 |
JP4932917B2 (ja) * | 2009-04-03 | 2012-05-16 | 株式会社エヌ・ティ・ティ・ドコモ | 音声復号装置、音声復号方法、及び音声復号プログラム |
US8311843B2 (en) * | 2009-08-24 | 2012-11-13 | Sling Media Pvt. Ltd. | Frequency band scale factor determination in audio encoding based upon frequency band signal energy |
WO2011044700A1 (en) * | 2009-10-15 | 2011-04-21 | Voiceage Corporation | Simultaneous time-domain and frequency-domain noise shaping for tdac transforms |
KR101508819B1 (ko) | 2009-10-20 | 2015-04-07 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 멀티 모드 오디오 코덱 및 이를 위해 적응된 celp 코딩 |
US9443534B2 (en) | 2010-04-14 | 2016-09-13 | Huawei Technologies Co., Ltd. | Bandwidth extension system and approach |
CN102436820B (zh) | 2010-09-29 | 2013-08-28 | 华为技术有限公司 | 高频带信号编码方法及装置、高频带信号解码方法及装置 |
MY186055A (en) * | 2010-12-29 | 2021-06-17 | Samsung Electronics Co Ltd | Coding apparatus and decoding apparatus with bandwidth extension |
-
2011
- 2011-12-28 MY MYPI2017000646A patent/MY186055A/en unknown
- 2011-12-28 CA CA2981539A patent/CA2981539C/en active Active
- 2011-12-28 ES ES11853939.4T patent/ES2564504T3/es active Active
- 2011-12-28 AU AU2011350143A patent/AU2011350143B9/en active Active
- 2011-12-28 EP EP15199906.7A patent/EP3023985B1/en active Active
- 2011-12-28 BR BR122021007425-9A patent/BR122021007425B1/pt active IP Right Grant
- 2011-12-28 EP EP11853939.4A patent/EP2657933B1/en active Active
- 2011-12-28 CN CN201180068757.9A patent/CN103493131B/zh active Active
- 2011-12-28 EP EP17179600.6A patent/EP3249647B1/en active Active
- 2011-12-28 CA CA2823175A patent/CA2823175C/en active Active
- 2011-12-28 JP JP2013547347A patent/JP6148983B2/ja active Active
- 2011-12-28 SG SG2013050422A patent/SG191771A1/en unknown
- 2011-12-28 MX MX2013007489A patent/MX2013007489A/es active IP Right Grant
- 2011-12-28 ES ES17179600T patent/ES2967508T3/es active Active
- 2011-12-28 WO PCT/KR2011/010258 patent/WO2012091464A1/ko active Application Filing
- 2011-12-28 BR BR112013016438-7A patent/BR112013016438B1/pt active IP Right Grant
- 2011-12-28 CN CN201610903714.2A patent/CN106228992B/zh active Active
- 2011-12-28 CN CN201610903549.0A patent/CN106409305B/zh active Active
- 2011-12-28 CA CA2929800A patent/CA2929800C/en active Active
- 2011-12-28 MY MYPI2017000645A patent/MY185753A/en unknown
-
2012
- 2012-06-11 KR KR1020120062356A patent/KR102022664B1/ko active IP Right Grant
-
2015
- 2015-12-11 JP JP2015242633A patent/JP6240145B2/ja active Active
-
2017
- 2017-11-02 JP JP2017213145A patent/JP6599417B2/ja active Active
- 2017-12-11 RU RU2017143135A patent/RU2672133C1/ru active
-
2018
- 2018-12-10 US US16/215,079 patent/US10453466B2/en active Active
-
2019
- 2019-09-10 KR KR1020190112363A patent/KR102109938B1/ko active IP Right Grant
- 2019-10-18 US US16/657,631 patent/US10811022B2/en active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2967508T3 (es) | Aparato y procedimiento de codificación de extensión de ancho de banda de alta frecuencia | |
KR102013242B1 (ko) | 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법 | |
AU2016222488B2 (en) | Apparatus and method for encoding/decoding for high-frequency bandwidth extension | |
AU2015202393B2 (en) | Apparatus and method for encoding/decoding for high-frequency bandwidth extension |