ES2588483T3 - Audio decoder comprising a background noise estimator - Google Patents
Audio decoder comprising a background noise estimator Download PDFInfo
- Publication number
- ES2588483T3 ES2588483T3 ES14196262.1T ES14196262T ES2588483T3 ES 2588483 T3 ES2588483 T3 ES 2588483T3 ES 14196262 T ES14196262 T ES 14196262T ES 2588483 T3 ES2588483 T3 ES 2588483T3
- Authority
- ES
- Spain
- Prior art keywords
- background noise
- audio signal
- data stream
- decoder
- audio
- 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
- 230000005236 sound signal Effects 0.000 claims abstract description 78
- 239000012073 inactive phase Substances 0.000 claims abstract description 76
- 239000012071 phase Substances 0.000 claims abstract description 76
- 230000005284 excitation Effects 0.000 claims abstract description 18
- 230000003595 spectral effect Effects 0.000 claims description 114
- 238000000034 method Methods 0.000 claims description 34
- 230000015572 biosynthetic process Effects 0.000 claims description 22
- 238000003786 synthesis reaction Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims description 8
- 230000002441 reversible effect Effects 0.000 claims description 6
- 238000007619 statistical method Methods 0.000 claims description 2
- 238000001228 spectrum Methods 0.000 description 42
- 238000004458 analytical method Methods 0.000 description 34
- 230000010076 replication Effects 0.000 description 21
- 239000012072 active phase Substances 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 14
- 238000012546 transfer Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000009499 grossing Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 238000012937 correction Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 239000006185 dispersion Substances 0.000 description 6
- 238000011002 quantification Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000002194 synthesizing effect Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000695 excitation spectrum Methods 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
- 238000005303 weighing 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/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/028—Noise substitution, i.e. substituting non-tonal spectral components by noisy source
-
- 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
- G10L19/025—Detection of transients or attacks for time/frequency resolution switching
-
- 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
-
- 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/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
-
- 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10K—SOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
- G10K11/00—Methods or devices for transmitting, conducting or directing sound in general; Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
- G10K11/16—Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
-
- 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
-
- 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- 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/012—Comfort noise or silence coding
-
- 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/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- 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/03—Spectral prediction for preventing pre-echo; Temporary noise shaping [TNS], e.g. in MPEG2 or MPEG4
-
- 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/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
- G10L19/07—Line spectrum pair [LSP] 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
- G10L19/107—Sparse pulse excitation, e.g. by using algebraic codebook
-
- 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/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
- G10L19/13—Residual excited linear prediction [RELP]
-
- 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
-
- 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/22—Mode decision, i.e. based on audio signal content versus external parameters
-
- 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/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/06—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- 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/26—Pre-filtering or post-filtering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Quality & Reliability (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Soundproofing, Sound Blocking, And Sound Damping (AREA)
Abstract
Un decodificador de audio para decodificar una secuencia de datos para reconstruir una señal de audio a partir de la misma, en el que la secuencia de datos comprende al menos una fase activa (86) seguida por una fase 5 inactiva (88), donde el decodificador de audio comprende: un estimador de ruido de fondo (90) configurado para actualizar continuamente una estimación de ruido de fondo paramétrica a partir de la secuencia de datos (104) durante la fase activa (86); un decodificador (92) configurado para reconstruir la señal de audio a partir de la secuencia de datos durante la fase activa; un generador aleatorio paramétrico (94); un generador de ruido de fondo (96) configurado para sintetizar la señal de audio durante la fase inactiva (88) controlando el generador aleatorio paramétrico (94) durante la fase inactiva (88) dependiendo de la estimación de ruido de fondo paramétrica; donde el decodificador (92) está configurado para, al reconstruir la señal de audio a partir de la secuencia de datos, conformar una señal de excitación codificada por transformada en la secuencia de datos, de acuerdo a coeficientes de predicción lineal también codificados en la secuencia de datos; y donde el estimador de ruido de fondo (90) está configurado para actualizar la estimación de ruido de fondo paramétrica utilizando la señal de excitación.An audio decoder for decoding a data stream to reconstruct an audio signal therefrom, in which the data stream comprises at least one active phase (86) followed by an inactive phase 5 (88), where the Audio decoder comprises: a background noise estimator (90) configured to continuously update a parametric background noise estimate from the data stream (104) during the active phase (86); a decoder (92) configured to reconstruct the audio signal from the data stream during the active phase; a parametric random generator (94); a background noise generator (96) configured to synthesize the audio signal during the inactive phase (88) by controlling the parametric random generator (94) during the inactive phase (88) depending on the estimation of parametric background noise; where the decoder (92) is configured to, when reconstructing the audio signal from the data stream, form an excitation signal encoded by transformed in the data stream, according to linear prediction coefficients also encoded in the sequence of data; and where the background noise estimator (90) is configured to update the parametric background noise estimate using the excitation signal.
Description
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
DESCRIPCIONDESCRIPTION
Decodificador de audio que comprende un estimador de ruido de fondoAudio decoder comprising a background noise estimator
La presente invencion concierne a un codec de audio que soporta smtesis de ruido durante fases inactivas.The present invention concerns an audio codec that supports noise synthesis during inactive phases.
En la tecnica se conoce la posibilidad de reducir el ancho de banda de transmision aprovechando los penodos inactivos de voz o de otras fuentes de ruido. Tales esquemas generalmente usan alguna forma de deteccion para distinguir entre fases inactivas (de silencio) y activas (de no silencio). Durante fases inactivas, se logra una menor frecuencia de bits parando la transmision de la secuencia de datos ordinaria codificando precisamente la senal grabada, y enviando en cambio solo actualizaciones de descripcion de insercion de silencio (SID). Las actualizaciones de SID pueden ser transmitidas a intervalos regulares o cuando se detectan cambios en las caractensticas del ruido de fondo. Entonces se pueden usar los cuadros de SID en el lado de decodificacion para generar un ruido de fondo con caractensticas similares al ruido de fondo durante las fases activas de modo que el freno de la transmision de la secuencia de datos ordinaria que codifica la senal grabada no conduce a una transicion desagradable desde la fase activa a la fase inactiva en el lado del receptor.It is known in the art the possibility of reducing the transmission bandwidth by taking advantage of inactive voice nodes or other noise sources. Such schemes generally use some form of detection to distinguish between inactive (silent) and active (non-silent) phases. During inactive phases, a lower bit rate is achieved by stopping the transmission of the ordinary data sequence by encoding precisely the recorded signal, and instead sending only silence insertion description (SID) updates. SID updates can be transmitted at regular intervals or when changes in background noise characteristics are detected. The SID frames on the decoding side can then be used to generate a background noise with characteristics similar to the background noise during the active phases so that the transmission brake of the ordinary data sequence encoding the recorded signal does not leads to an unpleasant transition from the active phase to the inactive phase on the receiver side.
Sin embargo, todavfa hay una necesidad de reducir mas el ritmo de transmision. Un creciente numero de consumidores de cantidad de bits transmitidos (bitrate), tal como un creciente numero de telefonos moviles, y un creciente numero de aplicaciones que hacen uso mas o menos intensivo en cuando a cantidad de bits transmitidos, requieren una permanente reduccion de la cantidad de bits transmitidos consumidos.However, there is still a need to reduce the transmission rate further. A growing number of consumers of the amount of bits transmitted (bitrate), such as a growing number of mobile phones, and a growing number of applications that make more or less intensive use in terms of the amount of bits transmitted, require a permanent reduction of the number of transmitted bits consumed.
Por el otro lado, el ruido sintetizado debe emular estrechamente el ruido real de modo que la smtesis sea transparente para los usuarios.On the other hand, the synthesized noise should closely emulate the actual noise so that the synthesis is transparent to users.
La solicitud WO 02/101722 A1 describe, entre otras cosas, un sistema para generar ruido de confort coloreado. En particular, el ruido de confort se genera coloreando o conformando espectralmente una senal de ruido blanco. La informacion de filtro se estima basandose en pausas o intervalos durante una senal vocal.Application WO 02/101722 A1 describes, among other things, a system for generating colored comfort noise. In particular, comfort noise is generated by spectrally coloring or shaping a white noise signal. Filter information is estimated based on pauses or intervals during a vocal signal.
Consiguientemente, es un objetivo de la presente invencion proveer un esquema de codec de audio que soporta generacion de ruido durante fases inactivas, el cual permite reducir la cantidad de bits transmitidos de transmision mientras se mantiene la calidad de generacion de ruido alcanzable.Accordingly, it is an objective of the present invention to provide an audio codec scheme that supports noise generation during inactive phases, which allows reducing the amount of transmitted transmission bits while maintaining the attainable noise generation quality.
Este objetivo se alcanza mediante la materia de las reivindicaciones independientes.This objective is achieved by the subject of independent claims.
La idea basica de la presente invencion es que se puede ahorrar valiosa cantidad de bits transmitidos manteniendo la calidad de generacion de ruido dentro de las fases inactivas, si se actualiza continuamente una estimacion de ruido de fondo parametrico durante una fase activa de modo que la generacion de ruido puede ser iniciada inmediatamente luego de la entrada de la fase inactiva que sigue a la fase activa. Por ejemplo, la actualizacion continua puede ser realizada en el lado de decodificacion, y no hay necesidad de proveer en forma preliminar el lado de decodificacion, con una representacion codificada del ruido de fondo durante una fase de calentamiento inmediatamente a continuacion de la deteccion de la fase inactiva cuya provision consumina valiosa cantidad de bits transmitidos, ya que el lado de decodificacion tiene la estimacion de ruido de fondo parametrica continuamente actualizada durante la fase activa y por ende, esta preparada en todo momento para entrar inmediatamente a la fase activa con una generacion de ruido apropiada. De manera similar se puede evitar una fase de calentamiento asf si la estimacion de ruido de fondo parametrica se hace en el lado de codificacion. En lugar de continuar en forma preliminar con proveer al lado de decodificacion una representacion convencionalmente codificada del ruido de fondo al detectar la entrada de la fase inactiva para aprender el ruido de fondo e informar consiguientemente al lado de decodificacion despues de la fase de aprendizaje, el codificador puede proveer al decodificador la necesaria estimacion de ruido de fondo parametrica inmediatamente al detectar la entrada de la fase inactiva recurriendo a la estimacion de ruido ambiente parametrica continuamente actualizada durante la fase activa parada, evitando de ese modo la prosecucion adicional preliminar que consume cantidad de bits transmitidos de la muy trabajosa codificacion del ruido de fondo.The basic idea of the present invention is that valuable amount of transmitted bits can be saved by maintaining the quality of noise generation within the inactive phases, if an estimation of parametric background noise is continuously updated during an active phase so that the generation Noise can be initiated immediately after the input of the inactive phase that follows the active phase. For example, continuous updating can be performed on the decoding side, and there is no need to provide a preliminary decoding side, with a coded representation of the background noise during a warm-up phase immediately following the detection of the inactive phase whose provision consumes valuable amount of transmitted bits, since the decoding side has the estimation of parametric background noise continuously updated during the active phase and therefore, is prepared at all times to immediately enter the active phase with a generation of appropriate noise. Similarly, a heating phase can be avoided as well if the estimation of parametric background noise is made on the coding side. Instead of continuing in a preliminary way with providing the decoding side with a conventionally coded representation of the background noise by detecting the input of the inactive phase to learn the background noise and consequently informing the decoding side after the learning phase, the The encoder can provide the decoder with the necessary estimation of parametric background noise immediately upon detecting the input of the inactive phase by resorting to the estimation of parametric ambient noise continuously updated during the active phase stopped, thereby avoiding the additional preliminary prosecution that consumes amount of bits transmitted from the very laborious background noise coding.
De acuerdo con realizaciones espedficas de la presente invencion, se alcanza una generacion de ruido mas realista con moderado factor que rebaja el rendimiento en terminos de, por ejemplo, cantidad de bits transmitidos y complejidad computacional. En particular, de acuerdo con estas realizaciones, se usa el dominio espectral para parametrizar el ruido de fondo produciendo de ese modo una smtesis de ruido de fondo que es mas realista y por ende conduce a una mas transparente conmutacion de fase activa a inactiva. Asimismo, se ha descubierto que parametrizar el ruido de fondo en el dominio espectral permite separar ruido de la senal util y por consiguiente, parametrizar el ruido de fondo en el dominio espectral tiene ventaja cuando se combina con la actualizacion continua mencionada antes de la estimacion de ruido de fondo parametrica durante las fases activas ya que se puede lograr una mejor separacion entre ruido y senal util en el dominio espectral de modo que no es necesaria transicion adicional desde un dominio a otro cuando se combinan ambos aspectos ventajosos de la presente solicitud.According to specific embodiments of the present invention, a more realistic noise generation is achieved with a moderate factor that lowers the performance in terms of, for example, number of transmitted bits and computational complexity. In particular, according to these embodiments, the spectral domain is used to parameterize the background noise thereby producing a background noise synthesis that is more realistic and therefore leads to a more transparent switching from active to inactive phase. Likewise, it has been found that parameterizing the background noise in the spectral domain allows separation of noise from the useful signal and therefore, parameterizing the background noise in the spectral domain has an advantage when combined with the continuous update mentioned before the estimation of parametric background noise during active phases since a better separation between noise and useful signal can be achieved in the spectral domain so that no additional transition from one domain to another is necessary when both advantageous aspects of the present application are combined.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
Otros detalles ventajosos de realizaciones de la presente invencion son tema de las reivindicaciones dependientes.Other advantageous details of embodiments of the present invention are the subject of the dependent claims.
Abajo se describen realizaciones preferidas de la presente solicitud con respecto a las Figuras entre las cuales:Preferred embodiments of the present application are described below with respect to the Figures among which:
la Figura 1 muestra un diagrama de bloques de un codificador de audio, de acuerdo con una realizacion de comparacion;Figure 1 shows a block diagram of an audio encoder, in accordance with a comparison embodiment;
la Figura 2 muestra una implementacion posible del motor de codificacion 14;Figure 2 shows a possible implementation of the coding engine 14;
la Figura 3 muestra un diagrama de bloques de un decodificador de audio de acuerdo con una realizacion;Figure 3 shows a block diagram of an audio decoder according to an embodiment;
la Figura 4 muestra una posible implementacion del motor de decodificacion de la Figura 3 de acuerdo con una realizacion;Figure 4 shows a possible implementation of the decoding engine of Figure 3 according to one embodiment;
la Figura 5 muestra un diagrama de bloques de un codificador de audio de acuerdo con otra realizacion de comparacion mas detallada;Figure 5 shows a block diagram of an audio encoder according to another more detailed comparison embodiment;
la Figura 6 muestra un diagrama de bloques de un decodificador que podna ser usado en conexion con el codificador de la Figura 5;Figure 6 shows a block diagram of a decoder that could be used in connection with the encoder of Figure 5;
la Figura 7 muestra un diagrama de bloques de un decodificador de audio de acuerdo con otra realizacion mas detallada;Figure 7 shows a block diagram of an audio decoder according to another more detailed embodiment;
la Figura 8 muestra un diagrama de bloques de una parte de extension de ancho de banda espectral de un codificador de audio;Figure 8 shows a block diagram of a spectral bandwidth extension part of an audio encoder;
la Figura 9 muestra una implementacion del codificador de extension de ancho de banda espectral CNG de la FiguraFigure 9 shows an implementation of the CNG spectral bandwidth extension encoder of Figure
8;8;
la Figura 10 muestra un diagrama de bloques de un decodificador de audio de acuerdo con un ejemplo de realizacion que usa extension de ancho de banda espectral;Figure 10 shows a block diagram of an audio decoder according to an exemplary embodiment using spectral bandwidth extension;
la Figura 11 muestra un diagrama de bloques de una posible descripcion mas detallada de una realizacion para un decodificador de audio que usa replicacion de ancho de banda espectral;Figure 11 shows a block diagram of a possible more detailed description of an embodiment for an audio decoder using spectral bandwidth replication;
la Figura 12 muestra un diagrama de bloques de un codificador de audio que usa extension de ancho de banda espectral; yFigure 12 shows a block diagram of an audio encoder using spectral bandwidth extension; Y
la Figura 13 muestra un diagrama de bloque de otra realizacion de un decodificador de audio.Figure 13 shows a block diagram of another embodiment of an audio decoder.
La Figura 1 ilustra un codificador de audio 100 de acuerdo con una realizacion de comparacion. El codificador de audio de la Figura 1 comprende un estimador de ruido de fondo 12, un motor de codificacion 14, un detector 16, una entrada de senal de audio 18 y una salida de secuencia de datos 20. El proveedor 12, el motor de codificacion 14 y el detector 16 tienen una entrada conectada a la entrada de senal de audio 18, respectivamente. Las salidas del estimador 12 y del motor de codificacion 14 estan respectivamente conectadas a la salida de secuencia de datos 20 a traves de un conmutador 22. El conmutador 22, el estimador 12 y el motor de codificacion 14 tienen una entrada de control conectada a una salida del detector 16, respectivamente.Figure 1 illustrates an audio encoder 100 according to a comparison embodiment. The audio encoder of Figure 1 comprises a background noise estimator 12, an encoding engine 14, a detector 16, an audio signal input 18 and a data stream output 20. Supplier 12, the motor encoding 14 and the detector 16 have an input connected to the audio signal input 18, respectively. The outputs of the estimator 12 and the coding motor 14 are respectively connected to the data sequence output 20 through a switch 22. The switch 22, the estimator 12 and the coding motor 14 have a control input connected to a detector output 16, respectively.
El estimador de ruido de fondo 12 esta configurado para actualizar continuamente una estimacion de ruido de fondo parametrica durante una fase activa 24 basado en una senal de audio de entrada que ingresa al codificador de audio 10 en la entrada 18. A pesar de que la Figura 1 sugiere que el estimador de ruido de fondo 12 puede establecer la actualizacion continua de la estimacion de ruido de fondo parametrica basado en la senal de audio como entrada en la entrada 18, no necesariamente es este el caso. Alternativamente o adicionalmente, el estimador de ruido de fondo 12 puede obtener una version de la senal de audio del motor de codificacion 14 como se ilustra mediante la lmea de trazos 26. En ese caso, el estimador de ruido de fondo 12, alternativamente o adicionalmente, sena conectado a la entrada 18 indirectamente via la lmea de conexion 26 y el motor de codificacion 14, respectivamente. En particular, existen diferentes posibilidades para que el estimador de ruido de fondo 12 actualice continuamente la estimacion de ruido de fondo y abajo se describen algunas de esas posibilidades.The background noise estimator 12 is configured to continuously update a parametric background noise estimate during an active phase 24 based on an input audio signal that enters the audio encoder 10 at input 18. Although the Figure 1 suggests that the background noise estimator 12 may establish continuous updating of the parametric background noise estimate based on the audio signal as input at input 18, this is not necessarily the case. Alternatively or additionally, the background noise estimator 12 may obtain a version of the audio signal of the encoding engine 14 as illustrated by the dashed line 26. In that case, the background noise estimator 12, alternatively or additionally , will be connected to the input 18 indirectly via the connection line 26 and the coding motor 14, respectively. In particular, there are different possibilities for the background noise estimator 12 to continually update the background noise estimate and some of those possibilities are described below.
El motor de codificacion 14 esta configurado para codificar la senal de audio de entrada que llega a la entrada 18 en una secuencia de datos durante la fase activa 24. La fase activa abarcara todo tiempo en que una informacion util esta contenida dentro de la senal de audio como voz u otro sonido util de una fuente de ruido. Por el otro lado, los sonidos con una caractenstica casi invariable en el tiempo tales como un espectro con invariancia temporal como el causado por ejemplo por lluvia o trafico en el fondo de un locutor, sera clasificado como ruido de fondo y siempreThe encoding engine 14 is configured to encode the input audio signal that arrives at the input 18 in a sequence of data during the active phase 24. The active phase will cover any time when useful information is contained within the signal of Audio such as voice or other useful sound from a noise source. On the other hand, sounds with a characteristic almost invariable in time such as a spectrum with temporary invariance such as that caused by rain or traffic at the bottom of a speaker, will be classified as background noise and always
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
que este presente meramente este ruido de fondo, el respectivo penodo de tiempo sera clasificado como una fase inactiva 28. El detector 16 es responsable de detectar la entrada de una fase inactiva 28 a continuacion de la fase activa 24 basado en la senal de audio de entrada en la entrada 18. En otras palabras, el detector 16 distingue entre dos fases, a saber la fase activa y la fase inactiva en donde el detector 16 decide en cuanto a que fase esta presente actualmente. El detector 16 informa al motor de codificacion 14 acerca de la fase actualmente presente y como ya se menciono, el motor de codificacion 14 realiza la codificacion de la senal de audio de entrada en la secuencia de datos durante las fases activas 24. El detector 16 controla el conmutador 22 consiguientemente de modo que la secuencia de datos entregada por el motor de codificacion 14 sea entregada en la salida 20. Durante las fases inactivas, el motor de codificacion 14 puede dejar de codificar la senal de audio de entrada. Por lo menos, la secuencia de datos entregada en la salida 20 ya no es alimentada por ninguna secuencia de datos posiblemente entregada por el motor de codificacion 14. Ademas de eso, el motor de codificacion 14 puede solo realizar mmimo procesamiento para dar soporte al estimador 12 con algunas actualizaciones de estado variables. Esta accion reducira mucho la potencia computacional. Por ejemplo, se pone el conmutador 22 tal que la salida del estimador 12 este conectada a la salida 20 en lugar de a la salida del motor de codificacion. De esta manera se reduce valiosa cantidad de bits transmitidos para transmitir la serie de bits en el tiempo entregada en la salida 20.If this background noise is present, the respective time period will be classified as an inactive phase 28. The detector 16 is responsible for detecting the input of an inactive phase 28 following the active phase 24 based on the audio signal of input at input 18. In other words, the detector 16 distinguishes between two phases, namely the active phase and the inactive phase where the detector 16 decides as to which phase is currently present. The detector 16 informs the encoding engine 14 about the currently present phase and as already mentioned, the encoding engine 14 performs the encoding of the input audio signal in the data stream during the active phases 24. The detector 16 controls the switch 22 accordingly so that the sequence of data delivered by the encoding engine 14 is delivered at the output 20. During the inactive phases, the encoding engine 14 may stop encoding the input audio signal. At least, the data stream delivered at output 20 is no longer fed by any data stream possibly delivered by the encoding engine 14. In addition to that, the encoding engine 14 can only perform a minimum processing to support the estimator 12 with some variable status updates. This action will greatly reduce computing power. For example, switch 22 is set such that the output of the estimator 12 is connected to the output 20 instead of the output of the coding motor. In this way valuable amount of transmitted bits is reduced to transmit the series of bits in the time delivered at the output 20.
El estimador de ruido de fondo 12 esta configurado para actualizar continuamente una estimacion de ruido de fondo parametrica durante la fase activa 24 basado en la senal de audio de entrada 18 como ya menciono arriba, y debido a esto, el estimador 12 puede insertar en la secuencia de datos 30 entregada en la salida 20, la estimacion de ruido de fondo parametrica como esta actualizada continuamente durante la fase activa 24, inmediatamente a continuacion de la transicion desde la fase activa 24 a la fase inactiva 28, esto es, inmediatamente luego de la entrada en la fase inactiva 28. Por ejemplo, el estimador de ruido de fondo 12 puede insertar un cuadro descriptor de insercion de silencio 32 en la secuencia de datos 30 inmediatamente siguiente a la finalizacion de la fase activa 24 e inmediatamente siguiente al instante de tiempo 34 en el cual el detector 16 detecto la entrada de la fase inactiva 28. En otras palabras, no hay espacio de tiempo entre la deteccion de la entrada de la fase inactiva 28 en los detectores y la insercion del SID 32 necesaria debido a la actualizacion continua del estimador de ruido de fondo de la estimacion de ruido de fondo parametrica durante la fase activa 24.The background noise estimator 12 is configured to continuously update a parametric background noise estimate during the active phase 24 based on the input audio signal 18 as already mentioned above, and because of this, the estimator 12 can insert into the data sequence 30 delivered at output 20, the estimation of parametric background noise as continuously updated during active phase 24, immediately following the transition from active phase 24 to inactive phase 28, that is, immediately after the entry into the inactive phase 28. For example, the background noise estimator 12 may insert a silence insertion descriptor box 32 in the data sequence 30 immediately following the completion of the active phase 24 and immediately following the instant of time 34 in which the detector 16 detected the input of the inactive phase 28. In other words, there is no time between detection of the input of the fa 28 is deactivated in the detectors and the insertion of the SID 32 necessary due to the continuous updating of the background noise estimator of the parametric background noise estimation during the active phase 24.
Asf, sintetizando la descripcion de arriba, el codificador de audio 10 de la Figura 1 puede funcionar como sigue. Imagine, con propositos de ilustracion, que actualmente esta presente una fase activa 24. En este caso, el motor de codificacion 14 actualmente codifica la senal de audio de entrada en la entrada 18, formando la secuencia de datos 20. El conmutador 22 conecta la salida del motor de codifica 14 a la salida 20. El motor de codificacion 14 puede usar codificacion parametrica y/codificacion por transformada para codificar la senal de audio de entrada 18 formando la secuencia de datos. En particular, el motor de codificacion 14 puede codificar la senal de audio de entrada en unidades de cuadros con cada cuadro que codifica uno de los intervalos de tiempo consecutivos — que se superponen parcialmente entre sf — de la senal de audio de entrada. El motor de codificacion 14 puede tener adicionalmente la capacidad de conmutar entre diferentes modos de codificacion entre cuadros consecutivos de la secuencia de datos. Por ejemplo, algunos cuadros pueden ser codificados usando codificacion predictiva tal como codificacion CELP, y algunos otros cuadros pueden ser codificados usando codificacion por transformada tal como codificacion TCX o AaC. Se hace referencia, por ejemplo, a USAC y sus modos de codificacion segun se describen en ISO/IEC CD 23003—3 fechado el 24 de septiembre de 2010.Thus, by synthesizing the description above, the audio encoder 10 of Figure 1 can function as follows. Imagine, for the purpose of illustration, that an active phase 24 is currently present. In this case, the encoding engine 14 currently encodes the input audio signal at input 18, forming data sequence 20. Switch 22 connects the coding motor output 14 to output 20. The coding engine 14 can use parametric coding and / / transform coding to encode the input audio signal 18 forming the data stream. In particular, the encoding engine 14 can encode the input audio signal in frame units with each frame encoding one of the consecutive time intervals - which partially overlap each other between sf - of the input audio signal. The coding engine 14 may additionally have the ability to switch between different coding modes between consecutive frames of the data stream. For example, some frames may be encoded using predictive coding such as CELP coding, and some other frames may be encoded using transform coding such as TCX or AaC coding. Reference is made, for example, to USAC and its coding modes as described in ISO / IEC CD 23003-3 dated September 24, 2010.
El estimador de ruido de fondo 12 actualiza continuamente la estimacion de ruido de fondo parametrica durante la fase activa 24. Consiguientemente, el estimador de ruido de fondo 12 puede estar configurado para distinguir entre un componente de ruido y un componente de senal util dentro de la senal de audio de entrada para determinar la estimacion de ruido de fondo parametrica meramente del componente de ruido. Tal y como se describe adicionalmente abajo, el estimador de ruido de fondo 12 puede realizar esta actualizacion en un dominio espectral tal como un dominio espectral tambien usado para codificacion por transformada dentro del motor de codificacion 14. Sin embargo, tambien hay disponibles otras alternativas, tal como el dominio del tiempo. Si es en el dominio espectral, el mismo puede ser un dominio de la transformada lapped tal como un dominio de MDCT (Modified Discrete Cosine Transform), o un dominio de banco de filtros tal como un dominio de banco de filtros de valor complejo tal como un dominio QMF (Quadrature Mirror Filters).The background noise estimator 12 continuously updates the estimation of parametric background noise during the active phase 24. Accordingly, the background noise estimator 12 may be configured to distinguish between a noise component and a useful signal component within the Input audio signal to determine the estimation of parametric background noise merely from the noise component. As described further below, the background noise estimator 12 can perform this update in a spectral domain such as a spectral domain also used for transform coding within the encoding engine 14. However, other alternatives are also available, Just like time domain. If it is in the spectral domain, it may be a lapped transform domain such as an MDCT (Modified Discrete Cosine Transform) domain, or a filter bank domain such as a complex value filter bank domain such as a QMF domain (Quadrature Mirror Filters).
Asimismo, el estimador de ruido de fondo 12 puede realizar la actualizacion basado en una excitacion o senal residual obtenida como un resultado intermedio dentro del motor de codificacion 14, por ejemplo, durante la codificacion predictivo y/o por transformada mas que la senal de audio segun entra a la entrada 18 o un codificada con perdida de datos (lossy) formando la secuencia de datos. Haciendolo esto, una gran cantidad del componente util de senal dentro de la senal de audio ya habna sido quitado de modo que la deteccion del componente de ruido es mas facil para el estimador de ruido de fondo 12.Likewise, the background noise estimator 12 can perform the update based on an excitation or residual signal obtained as an intermediate result within the coding engine 14, for example, during predictive coding and / or by transforming more than the audio signal. as it enters the entry 18 or an encoded with loss of data (lossy) forming the sequence of data. By doing so, a large amount of the useful signal component within the audio signal has already been removed so that the detection of the noise component is easier for the background noise estimator 12.
Durante la fase activa 24, el detector 16 tambien esta funcionando continuamente para detectar una entrada de la fase inactiva 28. El detector 16 puede ser puesto en practica como un detector de actividad de voz/sonido (VAD/SAD) o algun otro mecanismo que decida si hay un componente de senal util presente actualmente dentro de la senal de audio o no. Un criterio de base para el detector 16 para decidir si continua o no una fase activa 24, podnaDuring the active phase 24, the detector 16 is also continuously operating to detect an input of the inactive phase 28. The detector 16 can be implemented as a voice / sound activity detector (VAD / SAD) or some other mechanism that Decide if there is a useful signal component currently present within the audio signal or not. A basic criterion for the detector 16 to decide whether or not to continue an active phase 24, could
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
ser verificar si una potencia filtrada por pasa bajos de la senal de audio, queda por debajo de un cierto umbral, suponiendo que se ingresa a una fase inactiva tan pronto como se excede el umbral.be to verify if a power filtered by low pass of the audio signal, falls below a certain threshold, assuming that it enters an inactive phase as soon as the threshold is exceeded.
Independientemente de la forma exacta en que el detector 16 realiza la deteccion de la entrada de la fase inactiva 28 a continuacion de la fase activa 24, el detector 16 informa inmediatamente a las otras entidades 12, 14 y 22, de la entrada de la fase inactiva 28. Debido a la actualizacion continua del estimador de ruido de fondo de la estimacion de ruido de fondo parametrica durante la fase activa 24, se puede impedir inmediatamente que la secuencia de datos 30 entregada en la salida 20 siga siendo alimentada desde el motor de codificacion 14. En cambio, el estimador de ruido de fondo 12 insertana, inmediatamente luego de ser informado de la entrada de la fase inactiva 28, insertana la informacion sobre la ultima actualizacion de la estimacion de ruido de fondo parametrica en la secuencia de datos 30, en la forma del cuadro SID 32. Eso es, el cuadro SID 32 podna seguir inmediatamente al ultimo cuadro del motor de codificacion que codifica el cuadro de la senal de audio concerniente al intervalo de tiempo dentro del cual el detector 16 detecto la entrada de fase inactiva.Regardless of the exact way in which the detector 16 detects the input of the inactive phase 28 following the active phase 24, the detector 16 immediately informs the other entities 12, 14 and 22, of the phase input inactive 28. Due to the continuous updating of the background noise estimator of the parametric background noise estimation during the active phase 24, it is immediately possible to prevent the data stream 30 delivered at the output 20 from being still fed from the motor coding 14. Instead, the background noise estimator 12 inserts, immediately after being informed of the input of the inactive phase 28, inserts the information on the last update of the parametric background noise estimate in the data stream 30 , in the form of SID frame 32. That is, SID frame 32 could immediately follow the last frame of the encoding engine encoding the frame of the audio signal concerning The time interval within which the detector 16 detected the inactive phase input.
Normalmente, el ruido de fondo no cambia con mucha frecuencia. En la mayona de los casos, el ruido de fondo tiende a ser algo invariante con el tiempo. Por consiguiente, despues que el estimador de ruido de fondo 12 inserto el cuadro de SID 32 inmediatamente despues que el detector 16 que detecta el comienzo de la fase inactiva 28, toda transmision de secuencia de datos puede ser interrumpida de modo que en esta fase de interrupcion 34, la secuencia de datos 30 no consume cantidad de bits transmitidos o meramente un mmimo de cantidad de bits transmitidos requerida para algun proposito de transmision. Para mantener una minima cantidad de bits transmitidos, el estimador de ruido de fondo 12 puede repetir en forma intermitente la salida de SID 32.Normally, the background noise does not change very often. In most cases, background noise tends to be somewhat invariant over time. Therefore, after the background noise estimator 12 inserted the SID frame 32 immediately after the detector 16 detecting the start of the inactive phase 28, any data stream transmission can be interrupted so that in this phase of interruption 34, the data stream 30 does not consume the amount of transmitted bits or merely a minimum of the quantity of transmitted bits required for some transmission purpose. To maintain a minimum amount of transmitted bits, the background noise estimator 12 can intermittently repeat the output of SID 32.
Sin embargo, a pesar de la tendencia del ruido de fondo a no cambiar con el tiempo, de todos modos puede ocurrir que el ruido de fondo cambie. Por ejemplo, imagine un usuario de telefono movil saliendo del auto de modo que el ruido de fondo cambia del ruido de motor al ruido del trafico afuera del auto durante la llamada del usuario. Para rastrear tales cambios del ruido de fondo, el estimador de ruido de fondo 12 puede ser configurado para escrutar continuamente el ruido de fondo durante la fase inactiva 28. Siempre que el estimador de ruido de fondo 12 determina que la estimacion de ruido de fondo parametrica cambia en una magnitud que excede algun umbral, el estimador de fondo 12 puede insertar una version actualizada de la estimacion de ruido de fondo parametrica dentro de la secuencia de datos 20 via otro SID 38, despues de lo cual puede seguir otra fase de interrupcion 40, por ejemplo, empieza otra fase activa 42 segun lo detectado por el detector 16, y asf de seguido. Naturalmente, los cuadros de SID que revelan la estimacion de ruido de fondo parametrica actualizada actualmente pueden, adicionalmente o alternativamente, pueden ser intercalados dentro de las fases inactivas de una manera intermedia dependiente de los cambios en la estimacion de ruido de fondo parametrica.However, despite the tendency of the background noise not to change over time, it may still happen that the background noise changes. For example, imagine a mobile phone user leaving the car so that background noise changes from engine noise to traffic noise outside the car during the user's call. To track such changes in the background noise, the background noise estimator 12 may be configured to continuously scan the background noise during the inactive phase 28. Whenever the background noise estimator 12 determines that the parametric background noise estimate changes in a magnitude that exceeds some threshold, the background estimator 12 can insert an updated version of the parameterized background noise estimate into the data stream 20 via another SID 38, after which another interrupt phase 40 can follow , for example, another active phase 42 begins as detected by the detector 16, and so on. Naturally, the SID tables that reveal the currently updated parametric background noise estimate can, additionally or alternatively, be interleaved into the inactive phases in an intermediate manner dependent on the changes in the parametric background noise estimate.
Obviamente, la secuencia de datos 44 entregada por el motor de codificacion 14 e indicada en la Figura 1 mediante el uso de sombreado, consume mas cantidad de bits transmitidos de transmision que los fragmentos de secuencia de datos 32 y 38 a ser transmitidos durante las fases inactivas 28 y por consiguiente los ahorros de cantidad de bits transmitidos son considerables. Asimismo, como el estimador de ruido de fondo 12 puede empezar inmediatamente con proceder a alimentar adicionalmente la secuencia de datos 30, no es necesario continuar en forma preliminar transmitiendo la secuencia de datos 44 del motor de codifica 14 mas alla del punto de tiempo de deteccion de fase inactiva 34, reduciendo de ese modo todavfa mas la cantidad de bits transmitidos consumidos en total.Obviously, the data stream 44 delivered by the encoding engine 14 and indicated in Figure 1 through the use of shading, consumes more transmitted transmission bits than the data stream fragments 32 and 38 to be transmitted during the phases inactive 28 and consequently the savings in the amount of bits transmitted are considerable. Also, since the background noise estimator 12 can immediately begin with further feeding the data stream 30, it is not necessary to continue preliminary transmitting the data stream 44 of the encoding engine 14 beyond the detection time point. of inactive phase 34, thereby reducing even more the amount of transmitted bits consumed in total.
Como se explicara en mas detalle abajo, el motor de codificacion 14 puede ser configurado para, al codificar la senal de audio de entrada, codificar predictivamente la senal de audio de entrada en coeficientes de prediccion lineal y un senal de excitacion con codificar por transformada la senal de excitacion y codificar los coeficientes de prediccion lineal en la secuencia de datos 30 y 44, respectivamente. En la Figura 2 se muestra una posible implementacion. De acuerdo con la Figura 2, el motor de codificacion 14 comprende un transformador 50, un corrector (shaper) de ruido del dominio de la frecuencia 52 y un cuantificador 54 los cuales estan conectados en serie en el orden en que se mencionan entre una entrada de senal de audio 56 y una salida de secuencia de datos 58 del motor de codificacion 14. Ademas, el motor de codificacion 14 de la Figura 2 comprende un modulo de analisis de prediccion lineal 60 el cual esta configurado para determinar coeficientes de prediccion lineal a partir de la senal de audio 56 mediante respectivo ventaneo de analisis de porciones de la senal de audio y aplicando una autocorrelacion a las porciones ventaneadas, o determinar una autocorrelacion sobre la base de las transformadas en el dominio de la transformada de la senal de audio de entrada como salida mediante el transformador 50 usando su espectro de potencia y aplicando una DFT inversa a ello de modo de determinar la autocorrelacion, realizar subsiguientemente estimacion LPC en base a la autocorrelacion tal como usando un algoritmo de (Wiener—) Levinson—Durbi.As will be explained in more detail below, the encoding engine 14 can be configured to, when encoding the input audio signal, predictively encode the input audio signal in linear prediction coefficients and an excitation signal with transform coding. excitation signal and encode the linear prediction coefficients in the sequence of data 30 and 44, respectively. A possible implementation is shown in Figure 2. According to Figure 2, the encoding motor 14 comprises a transformer 50, a noise domain corrector (shaper) of the frequency domain 52 and a quantizer 54 which are connected in series in the order in which they are mentioned between an input of audio signal 56 and a data sequence output 58 of the encoding engine 14. In addition, the encoding engine 14 of Figure 2 comprises a linear prediction analysis module 60 which is configured to determine linear prediction coefficients a starting from the audio signal 56 by respective window of analysis of portions of the audio signal and applying an autocorrelation to the sold portions, or determining an autocorrelation on the basis of the transformed ones in the transformed domain of the audio signal of input as output via transformer 50 using its power spectrum and applying a reverse DFT to it in order to determine autocorrelation, perform subsequent LPC estimate based on autocorrelation such as using an algorithm of (Wiener—) Levinson — Durbi.
En base a los coeficientes de prediccion lineal determinados por el modulo de analisis de prediccion lineal 60, la secuencia de datos entregada en la salida 58 es alimentada con respectiva informacion sobre los LPCs, y el corrector de ruido del dominio de la frecuencia es controlado de modo que corregir espectralmente el espectrograma de la senal de audio en concordancia con una funcion transferencia correspondiente a la funcion transferencia de un filtro de analisis de prediccion lineal determinado por los coeficientes de prediccion lineal entregados por el modulo 60. Se puede realizar una cuantificacion de los LPCs para transmitirlos en la secuencia de datos, en el dominio LSP/LSF usando interpolacion de modo de reducir la tasa de trasmision comparado con la tasa de analisis en elBased on the linear prediction coefficients determined by the linear prediction analysis module 60, the data stream delivered at output 58 is fed with respective information about the LPCs, and the frequency domain noise corrector is controlled by so that spectrally correct the spectrogram of the audio signal in accordance with a transfer function corresponding to the transfer function of a linear prediction analysis filter determined by the linear prediction coefficients delivered by module 60. A quantification of the LPCs to transmit them in the data sequence, in the LSP / LSF domain using interpolation so as to reduce the transmission rate compared to the analysis rate in the
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
analizador 60. Ademas, la conversion de LPC a ponderacion espectral realizada en el FDNS puede involucrar aplicar una ODFT sobre los LPCs y aplicar los valores de ponderacion resultantes a los espectros del transformador como divisor.parser 60. In addition, the conversion of LPC to spectral weighting performed in the FDNS may involve applying an ODFT on the LPCs and applying the resulting weighting values to the transformer spectra as a divisor.
El cuantificador 54 entonces cuantifica los coeficientes de transformacion del espectrograma espectralmente formado (aplanado). Por ejemplo, el transformador 50 usa una transformada lapped tal como una MDCT para transferir la senal de audio desde el dominio del tiempo al dominio espectral, obteniendo de ese modo transformadas consecutivas correspondientes a porciones ventaneadas que se superponen de la senal de audio, las cuales luego son formadas espectralmente mediante el corrector de ruido del dominio de la frecuencia 52 ponderando estas transformadas de acuerdo con la funcion de transferencia del filtro de analisis de LP.The quantifier 54 then quantifies the transformation coefficients of the spectrally formed (flattened) spectrogram. For example, the transformer 50 uses a lapped transform such as an MDCT to transfer the audio signal from the time domain to the spectral domain, thereby obtaining consecutive transforms corresponding to overlaid sold portions of the audio signal, which they are then spectrally formed by the frequency domain noise corrector 52 by weighing these transformed according to the transfer function of the LP analysis filter.
El espectrograma corregido puede ser interpretado como una senal de excitacion y como tal se ilustra mediante la flecha de trazos 62, el estimador de ruido de fondo 12 puede estar configurado para actualizar la estimacion de ruido parametrica usando esta senal de excitacion. Alternativamente, como esta indicado mediante la flecha de trazos 62, el estimador de ruido de fondo 12 puede usar la representacion de transformada lapped como salida mediante el transformador 50 como base para la actualizacion directamente, esto es, sin la correccion de ruido del dominio de la frecuencia mediante el corrector de ruido 52.The corrected spectrogram can be interpreted as an excitation signal and as such is illustrated by the dashed arrow 62, the background noise estimator 12 may be configured to update the parametric noise estimate using this excitation signal. Alternatively, as indicated by the dashed arrow 62, the background noise estimator 12 can use the lapped transform representation as output by means of the transformer 50 as the basis for the update directly, that is, without the noise correction of the domain of the frequency using the noise corrector 52.
Mas detalles relacionados con posibles implementaciones de los elementos mostrados en las Figuras 1 a 2 se pueden establecer a partir de la descripcion subsiguiente mas detallada y se hace notar que todos estos detalles son individualmente transferibles a los elementos de las Figuras 1 y 2.More details related to possible implementations of the elements shown in Figures 1 to 2 can be established from the subsequent more detailed description and it is noted that all these details are individually transferable to the elements of Figures 1 and 2.
Sin embargo, antes de esta descripcion mas detallada, se hace referencia a la Figura 3, la cual muestra que, adicionalmente o alternativamente, la actualizacion de estimacion de ruido de fondo parametrica se puede hacer del lado del decodificador.However, before this more detailed description, reference is made to Figure 3, which shows that, additionally or alternatively, the updating of parametric background noise estimation can be done on the decoder side.
El decodificador de audio 80 de la Figura 3 esta configurado para decodificar una secuencia de datos que entra en la entrada 82 del decodificador 80 de modo de reconstruir a partir de ella una senal de audio a ser entregada en una salida 84 del decodificador 80. La secuencia de datos comprende por lo menos una fase activa 86 seguida por una fase inactiva 88. Internamente, el decodificador de audio 80 comprende un estimador de ruido de fondo 90, un motor de decodificacion 92, un generador aleatorio parametrico 94 y un generador de ruido de fondo 96. El motor de decodificacion 92 esta conectado entre la entrada 82 y la salida 84 y de manera similar, la conexion en serie del proveedor 90, el generador de ruido de fondo 96 y el generador aleatorio parametrico 94 estan conectados entre la entrada 82 y la salida 84. El decodificador 92 esta configurado para reconstruir la senal de audio a partir de la secuencia de datos durante la fase activa, de modo que la senal de audio 98 como se entrega en la salida 84 comprende ruido y sonido util en una calidad apropiada. El estimador de ruido de fondo 90 esta configurado para actualizar continuamente una estimacion de ruido de fondo parametrica a partir de la secuencia de datos durante la fase activa. Con este fin, el estimador de ruido de fondo 90 puede no estar conectado a la entrada 82 directamente sino via el motor de decodificacion 92 como se ilustra mediante la lmea de trazos 100 de modo de obtener del motor de decodificacion 92 alguna version reconstruida de la senal de audio. En principio, el estimador de ruido de fondo 90 puede estar configurado para funcionar en modo muy similar al estimador de ruido de fondo 12, ademas del hecho de que el estimador de ruido de fondo 90 solo tiene acceso a la version reconstruible de la senal de audio, esto es, que incluye la perdida causada por cuantificacion en el lado de codificacion.The audio decoder 80 of Figure 3 is configured to decode a sequence of data that enters the input 82 of the decoder 80 so as to reconstruct from it an audio signal to be delivered to an output 84 of the decoder 80. The The data sequence comprises at least one active phase 86 followed by an inactive phase 88. Internally, the audio decoder 80 comprises a background noise estimator 90, a decoding engine 92, a parametric random generator 94 and a noise generator in the background 96. The decoding engine 92 is connected between input 82 and output 84 and similarly, the provider's serial connection 90, the background noise generator 96 and the parametric random generator 94 are connected between the input 82 and output 84. Decoder 92 is configured to reconstruct the audio signal from the data stream during the active phase, so that the audio signal 98 as delivered at output 84 it comprises noise and sound useful in an appropriate quality. The background noise estimator 90 is configured to continuously update a parametric background noise estimate from the data stream during the active phase. To this end, the background noise estimator 90 may not be connected to the input 82 directly but via the decoding engine 92 as illustrated by the dashed line 100 so as to obtain from the decoding engine 92 some reconstructed version of the audio signal In principle, the background noise estimator 90 may be configured to operate in a manner very similar to the background noise estimator 12, in addition to the fact that the background noise estimator 90 only has access to the rebuildable version of the signal of audio, that is, that includes the loss caused by quantification on the coding side.
El generador aleatorio parametrico 94 puede comprender uno o mas generadores o pseudogeneradores de numeros aleatorios, la secuencia de valores entregada por el cual puede conformarse a una distribucion estadfstica que puede ser fijada en forma parametrica via el generador de ruido de fondo 96.The parametric random generator 94 may comprise one or more random number generators or pseudogenerators, the sequence of values delivered by which it can conform to a statistical distribution that can be parameterically set via the background noise generator 96.
El generador de ruido de fondo 96 esta configurado para sintetizar la senal de audio 98 durante la fase inactiva 88 controlando el generador aleatorio parametrico 94 durante la fase inactiva 88 dependiendo de la estimacion de ruido de fondo parametrica segun se obtuvo del estimador de ruido de fondo 90. A pesar de que ambas entidades, 96 y 94, se muestran conectadas en serie, la conexion en serie no debe ser interpretada como limitacion. Los generadores 96 y 94 podnan estar interconectados. De hecho, el generador 94 podna ser interpretado como siendo parte del generador 96.The background noise generator 96 is configured to synthesize the audio signal 98 during the inactive phase 88 by controlling the parametric random generator 94 during the inactive phase 88 depending on the estimation of the parametric background noise as obtained from the background noise estimator 90. Although both entities, 96 and 94, are shown connected in series, the serial connection should not be construed as limiting. Generators 96 and 94 may be interconnected. In fact, generator 94 could be interpreted as being part of generator 96.
Asf, el modo de funcionamiento del decodificador de audio 80 de la Figura 3 puede ser como sigue. Durante una fase activa 86, la entrada 82 es provista continuamente con una porcion de secuencia de datos 102 la cual ha de ser procesada por el motor de decodificacion 92 durante la fase activa 86. La secuencia de datos 104 que entra en la entrada 82 entonces frena la transmision de la porcion de secuencia de datos 102 dedicada para el motor de decodificacion 92 en algun instante de tiempo 106. Eso es, no hay otro cuadro de la porcion de secuencia de datos en ese instante de tiempo 106 para decodificacion por el motor 92. La senalizacion de la entrada de la fase inactiva 88 puede ser la perturbacion de la transmision de la porcion de secuencia de datos 102, o bien puede ser senalizada mediante alguna informacion 108 dispuesta inmediatamente en el inicio de la fase inactiva 88.Thus, the operation mode of the audio decoder 80 of Figure 3 can be as follows. During an active phase 86, input 82 is continuously provided with a portion of data sequence 102 which is to be processed by the decoding engine 92 during active phase 86. The data sequence 104 entering input 82 then slows down the transmission of the data sequence portion 102 dedicated to the decoding engine 92 at some point in time 106. That is, there is no other frame of the data sequence portion at that time point 106 for decoding by the engine. 92. The signaling of the input of the inactive phase 88 may be the disturbance of the transmission of the data sequence portion 102, or it may be signaled by some information 108 arranged immediately at the start of the inactive phase 88.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
En cualquier caso, la entrada de la fase inactiva 88 ocurre muy repentinamente, pero esto no es un problema ya que el estimador de ruido de fondo 90 tiene actualizada continuamente la estimacion de ruido de fondo parametrica durante la fase activa 86 sobre la base de la porcion de secuencia de datos 102. Debido a esto, el estimador de ruido de fondo 90 puede proveer al generador de ruido de fondo 96 la version mas nueva de la estimacion de ruido de fondo parametrica tan pronto como empieza en 106, la fase inactiva 88. Consiguientemente, a partir del instante 106 en adelante, el motor de decodificacion 92 deja de entregar reconstruccion de senal de audio ya que el motor de decodificacion 92 ya no es alimentado con una porcion de secuencia de datos 102, pero el generador aleatorio parametrico 94 es controlado por el generador de ruido de fondo 96 de acuerdo con una estimacion de ruido de fondo parametrica tal que puede entregar una emulacion del ruido de fondo en la salida 84 inmediatamente a continuacion del instante de tiempo 106 de modo seguir sin interrupcion la senal de audio reconstruida segun lo entregado por el motor de decodificacion 92 hasta el instante de tiempo 106. Se puede usar desvanecimiento cruzado para transitar desde el ultimo cuadro reconstruido de la fase activa segun lo entregado por el motor 92 al ruido de fondo segun esta determinado por la version recientemente actualizada de la estimacion de ruido de fondo parametrica.In any case, the input of the inactive phase 88 occurs very suddenly, but this is not a problem since the background noise estimator 90 has continuously updated the estimation of parametric background noise during the active phase 86 on the basis of the portion of data sequence 102. Because of this, the background noise estimator 90 can provide the background noise generator 96 with the newest version of the parametric background noise estimate as soon as it starts at 106, the inactive phase 88 Consequently, from the moment 106 onwards, the decoding engine 92 stops delivering audio signal reconstruction since the decoding engine 92 is no longer fed with a portion of data sequence 102, but the parametric random generator 94 it is controlled by the background noise generator 96 in accordance with a parametric background noise estimate such that it can deliver an emulation of the background noise at output 84 immediately. Next to the instant of time 106 so as to continuously follow the reconstructed audio signal as delivered by the decoding engine 92 until the instant of time 106. Cross-fade can be used to transit from the last reconstructed frame of the active phase. as delivered by the engine 92 to the background noise as determined by the recently updated version of the parametric background noise estimate.
Como el estimador de ruido de fondo 90 esta configurado para actualizar continuamente la estimacion de ruido de fondo parametrica a partir de la secuencia de datos 104 durante la fase activa 86, el mismo puede ser configurado para distinguir entre un componente de ruido y un componente de senal util dentro de la version de la senal de audio segun lo reconstruido a partir de la secuencia de datos 104 en la fase activa 86 y para determinar la estimacion de ruido de fondo parametrica meramente a partir del componente de ruido en lugar del componente de sena util. La manera en que el estimador de ruido de fondo 90 realizar esta distincion/separacion corresponde a la manera delineada arriba con respecto al estimador de ruido de fondo 12. Por ejemplo, se puede usar la excitacion o senal residual interna reconstruida a partir de la secuencia de datos 104 dentro del motor de decodificacion 92.Since the background noise estimator 90 is configured to continually update the estimation of parametric background noise from the data stream 104 during the active phase 86, it can be configured to distinguish between a noise component and a component of Useful signal within the version of the audio signal as reconstructed from the data sequence 104 in the active phase 86 and to determine the estimation of parametric background noise merely from the noise component instead of the signal component Useful. The way in which the background noise estimator 90 make this distinction / separation corresponds to the manner outlined above with respect to the background noise estimator 12. For example, the internal residual excitation or signal reconstructed from the sequence can be used of data 104 within the decoding engine 92.
Similar a la Figura 2, la Figura 4 muestra una posible implementacion para el motor de decodificacion 92. De acuerdo con la Figura 4, el motor de decodificacion 92 comprende una entrada 110 para recibir la porcion de secuencia de datos 102 y una salida 112 para entregar la senal reconstruida dentro de la fase activa 86. Conectados en serie entre ellos, el motor de decodificacion 92 comprende un descuantificador 114, un corrector de ruido del dominio de la frecuencia 116 y una transformador inverso 118, los cuales estan conectados entre la entrada 110 y la salida 112 en el orden en que se mencionan. La porcion de secuencia de datos 102 que llega a la entrada 110 comprende una version codificada de transformada de la senal de excitacion, esto es, niveles de coeficientes de transformada que la representan, los cuales son alimentados a la entrada del descuantificador 114, asf como tambien informacion sobre coeficientes de prediccion lineal, cuya informacion es alimentada al corrector de ruido del dominio de la frecuencia 116. El descuantificador 114 descuantifica la representacion espectral de la senal de excitacion y la remite al corrector de ruido del dominio de la frecuencia 116 el cual, a su vez, forma espectralmente el espectrograma de la senal de excitacion (junto con el ruido de cuantificacion plano) de acuerdo con una funcion transferencia que corresponde a un filtro de smtesis de prediccion lineal, formando de ese modo ruido de cuantificacion. En principio, el FDNS 116 de la Figura 4 actua similar al FDNS de la Figura 2: Se extraen los LPCs de la secuencia de datos y luego son sometidos a conversion de LPC a peso espectral, por ejemplo, aplicando una ODFT sobre los LPCs extrafdos, aplicando luego las ponderaciones espectrales resultantes a los espectros descuantificados entrantes desde el descuantificador 114 como multiplicadores. El transformador 118 entonces transfiere la reconstruccion de senal de audio asf obtenida desde el dominio espectral al dominio del tiempo y entre la senal de audio reconstruida asf obtenida en la salida 112. El transformador inverso 118 puede usar una transformada lapped tal como una IMDCT. Como se ilustra mediante la flecha de trazos 120, el espectrograma de la senal de excitacion puede ser usado por el estimador de ruido de fondo 90 para la actualizacion de ruido de fondo parametrica. Alternativamente, pero no de acuerdo con la invencion, el espectrograma de la senal de audio en sf mismo puede ser usado como se indica mediante la flecha de trazos 122.Similar to Figure 2, Figure 4 shows a possible implementation for the decoding engine 92. According to Figure 4, the decoding engine 92 comprises an input 110 for receiving the data sequence portion 102 and an output 112 for deliver the reconstructed signal within the active phase 86. Connected in series with each other, the decoding engine 92 comprises a quantizer 114, a frequency domain corrector 116 and a reverse transformer 118, which are connected between the input 110 and exit 112 in the order in which they are mentioned. The data sequence portion 102 that arrives at the input 110 comprises an encoded version of the excitation signal transform, that is, levels of transform coefficients that represent it, which are fed to the input of the quantifier 114, as well as also information on linear prediction coefficients, whose information is fed to the noise corrector of the frequency domain 116. The quantifier 114 decrypts the spectral representation of the excitation signal and sends it to the noise corrector of the frequency domain 116 which , in turn, spectrally forms the spectrogram of the excitation signal (together with the flat quantification noise) according to a transfer function corresponding to a linear prediction synthesis filter, thereby forming quantization noise. In principle, the FDNS 116 of Figure 4 acts similar to the FDNS of Figure 2: LPCs are extracted from the data stream and then subjected to spectral weight LPC conversion, for example, by applying an ODFT on the extracted LPCs , then applying the resulting spectral weights to the incoming quantified spectra from the quantifier 114 as multipliers. Transformer 118 then transfers the reconstruction of audio signal thus obtained from the spectral domain to the time domain and between the reconstructed audio signal thus obtained at output 112. The reverse transformer 118 can use a lapped transform such as an IMDCT. As illustrated by the dashed arrow 120, the spectrogram of the excitation signal can be used by the background noise estimator 90 for the updating of parametric background noise. Alternatively, but not according to the invention, the spectrogram of the audio signal itself can be used as indicated by dashed arrow 122.
Con respecto a la Figura 2 y a la Figura 4, se debe notar que las implementaciones de los motores de codificacion/decodificacion descritas con respecto a los mismos no han de ser interpretadas como restrictivas. Tambien son factibles ejemplos alternativos. Asimismo, los motores de codificacion/decodificacion pueden ser un tipo codec multimodal donde las partes de las Figuras 2 y 4 meramente asumen responsabilidad para codificar/decodificar cuadros que tiene un modo de codificacion de cuadro espedfico asociado con el mismo, mientras que otros cuadros son sometidos a otras partes de los motores de codificacion/decodificacion no mostrados en las Figuras 2 y 4. Tal otro modo de codificacion de cuadro podna tambien ser un modo de codificacion predictivo que usa codificacion de prediccion lineal por ejemplo, pero con codificacion en el dominio del tiempo en lugar de usar codificacion de transformada.With respect to Figure 2 and Figure 4, it should be noted that the implementations of the encoding / decoding engines described with respect thereto should not be construed as restrictive. Alternative examples are also feasible. Also, the encoding / decoding engines may be a multimodal codec type where the parts of Figures 2 and 4 merely assume responsibility for encoding / decoding frames having a specific frame coding mode associated therewith, while other frames are subjected to other parts of the encoding / decoding engines not shown in Figures 2 and 4. Such another mode of frame coding could also be a predictive coding mode that uses linear prediction coding for example, but with domain coding of time instead of using transform coding.
La Figura 5 muestra un ejemplo mas detallado del codificador de la Figura 1. En particular, el estimador de ruido de fondo 12 se muestra en mas detalle en la Figura 5.Figure 5 shows a more detailed example of the encoder of Figure 1. In particular, the background noise estimator 12 is shown in more detail in Figure 5.
De acuerdo con la Figura 5, el estimador de ruido de fondo 12 comprende un transformador 140, un FDNS 142, un modulo de analisis de LP 144, un estimador de ruido 146, un estimador de parametros 148, un medidor de estacionariedad 150, y un cuantificador 152. Algunos de los componentes recien mencionados pueden estar total o parcialmente en el motor de codificacion 14. Por ejemplo, el transformador 140 y el transformador 50 de la Figura 2According to Figure 5, the background noise estimator 12 comprises a transformer 140, an FDNS 142, an LP analysis module 144, a noise estimator 146, a parameter estimator 148, a stationarity meter 150, and a quantifier 152. Some of the components just mentioned may be totally or partially in the encoding motor 14. For example, the transformer 140 and the transformer 50 of Figure 2
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
pueden ser iguales, los modulos de analisis de LP 60 y 144 pueden ser iguales, los FDNSs 52 y 142 pueden ser iguales y/o los cuantificadores 54 y 152 pueden ser implementados en un modulo.they can be the same, the analysis modules of LP 60 and 144 can be the same, the FDNSs 52 and 142 can be the same and / or the quantifiers 54 and 152 can be implemented in a module.
La Figura 5 tambien muestra un empaquetador de serie de bits en el tiempo (bitstream packager) 154 el cual asume una responsabilidad pasiva para la operacion del conmutador 22 en la Figura 1. En particular, el VAD como el detector 16 del codificador de la Figura 5 es llamado en forma ejemplar, simplemente decide en lo que hace a cual camino se debe tomar, ya sea el camino de la codificacion de audio 14 o el camino del estimador de ruido de fondo 12. Para ser mas preciso, el motor de codificacion 14 y el estimador de ruido de fondo 12 estan ambos conectados en paralelo entre la entrada 18 y el empaquetador 154, en donde adentro del estimador de ruido de fondo 12, el transformador 140, el FDNS 142, el modulo de analisis de LP 144, el estimador de ruido 146, el estimador de parametros 148, y el cuantificador 152, estan conectados en serie entre la entrada 18 y el empaquetador 154 (en el orden en que se mencionan), mientras el modulo de analisis de LP 144 esta conectado entre la entrada 18 y una entrada de LPC del modulo FDNS 142 y una entrada adicional del cuantificador 153, respectivamente, y un medidor de estacionariedad 150 esta conectado adicionalmente entre el modulo de analisis de LP 144 y una entrada de control del cuantificador 152. El empaquetador de serie de bits en el tiempo 154 simplemente realizar el empaquetado si recibe una entrada proveniente de cualquiera de las entidades conectadas a sus entradas.Figure 5 also shows a time-series bit packer (bitstream packager) 154 which assumes a passive responsibility for the operation of switch 22 in Figure 1. In particular, the VAD as the detector 16 of the encoder of Figure 5 is called in an exemplary form, it simply decides on what path it should be taken, either the path of the audio coding 14 or the path of the background noise estimator 12. To be more precise, the coding engine 14 and the background noise estimator 12 are both connected in parallel between the input 18 and the packer 154, where inside the background noise estimator 12, the transformer 140, the FDNS 142, the analysis module of LP 144, noise estimator 146, parameter estimator 148, and quantifier 152, are connected in series between input 18 and packer 154 (in the order in which they are mentioned), while LP analysis module 144 is connected between entry 18 and an LPC input of the FDNS module 142 and an additional input of the quantizer 153, respectively, and a stationarity meter 150 is additionally connected between the analysis module of LP 144 and a control input of the quantizer 152. The series packer of bits in time 154 simply perform the packaging if you receive an input from any of the entities connected to your inputs.
En el caso de transmitir cuadros cero, esto es, durante la fase de interrupcion de la fase inactiva, el detector 16 informa al estimador de ruido de fondo 12, en particular al cuantificador 152, que pare de procesar y que no envie nada al empaquetador de serie de bits en el tiempo 154.In the case of transmitting zero frames, that is, during the interruption phase of the inactive phase, the detector 16 informs the background noise estimator 12, in particular the quantifier 152, to stop processing and not send anything to the packer. bit string at time 154.
De acuerdo con la Figura 5, el detector 16 puede funcionar en el dominio del tiempo y/o de la transformada/espectral de modo de detectar fases activas/inactivas.According to Figure 5, the detector 16 can operate in the time and / or the transform / spectral domain so as to detect active / inactive phases.
El modo de funcionamiento del codificador de la Figura 5 es como sigue. Como se ira aclarando, el codificador de la Figura 5 puede mejorar la calidad de ruido de comodidad tal como ruido estacionario en general, tal como ruido de auto, ruido de charla con muchos participates, algunos instrumentos musicales, y en particular aquellos que tienen muchos armonicos tales como gotas de lluvia.The operation mode of the encoder of Figure 5 is as follows. As will be clarified, the encoder of Figure 5 can improve the quality of comfort noise such as stationary noise in general, such as car noise, talk noise with many participants, some musical instruments, and in particular those that have many harmonics such as raindrops.
En particular, el codificador de la Figura 5 es para controlar un generador aleatorio en el lado de decodificacion de modo de excitar coeficientes de transformada tal que sea emulado el ruido detectado del lado de codificacion. Consiguientemente, antes de discutir la funcionalidad del codificador de la Figura 5 adicionalmente, se hace una breve referencia a la Figura 6 que muestra un posible decodificador el cual podna emular el ruido de comodidad en el lado de decodificacion segun instruccion del codificador de la Figura 5. Mas en general, la Figura 6 muestra una posible implementacion de un decodificador que se ajusta al codificador de la Figura 1.In particular, the encoder of Figure 5 is for controlling a random generator on the decoding side so as to excite transform coefficients such that the noise detected from the coding side is emulated. Accordingly, before discussing the functionality of the encoder of Figure 5 additionally, a brief reference is made to Figure 6 which shows a possible decoder which could emulate comfort noise on the decoding side according to the instruction of the encoder of Figure 5 More generally, Figure 6 shows a possible implementation of a decoder that fits the encoder of Figure 1.
En particular, el decodificador de la Figura 6 comprende un motor de decodificacion 160 como para decodificar la porcion de secuencia de datos 44 durante las fases activas y una parte generadora de ruido de comodidad 162 para generar el ruido de comodidad en base a la informacion 32 y 38 provista en la secuencia de datos concerniente a las fases inactivas 28. La parte generadora de ruido de comodidad 162 comprende un generador aleatorio parametrico 164, un FDNS 166 y un transformador (o sintetizador) inverso 168. Los modulos 164 y 168 estan conectados en serie entre sf de modo que en la salida del sintetizador 168 resulta el ruido de comodidad, el cual llena el espacio entre la senal de audio reconstruida como es entregada por el motor de decodificacion 160 durante las fases inactivas 28, como se discutio con respecto a la Figura 1. Los procesadores FDNS 166 y transformador inverso 168 pueden ser parte del motor de decodificacion 160. En particular, pueden ser iguales al FDNS 116 y 118 de la Figura 4, por ejemplo.In particular, the decoder of Figure 6 comprises a decoding engine 160 as to decode the data stream portion 44 during the active phases and a comfort noise generating part 162 to generate the comfort noise based on the information 32 and 38 provided in the data sequence concerning the inactive phases 28. The comfort noise generating part 162 comprises a parametric random generator 164, an FDNS 166 and a reverse transformer (or synthesizer) 168. Modules 164 and 168 are connected in series with each other so that at the output of the synthesizer 168 the comfort noise results, which fills the space between the reconstructed audio signal as delivered by the decoding engine 160 during the idle phases 28, as discussed with respect to to Figure 1. FDNS 166 processors and reverse transformer 168 may be part of decoding motor 160. In particular, they may be equal to FDNS 116 and 118 of Figure 4, for example.
El modo de funcionamiento y la funcionalidad de los modulos individuales de las Figuras 5 y 6 resultaran mas claro a partir de la siguiente discusion.The mode of operation and functionality of the individual modules of Figures 5 and 6 will be clearer from the following discussion.
En particular, el transformador 140 descompone espectralmente la senal de entrada en un espectrograma tal como usando una transformada lapped. Un estimador de ruido 146 esta configurado para determinar parametros de ruido a partir de ello. En forma concurrente, del detector de actividad de voz o sonido 16 evalua los rasgos establecidos a partir de la senal de entrada de modo de detectar si tiene lugar una transicion desde una fase activa a una fase inactiva o vice versa. Estos rasgos usados por el detector 16 pueden ser en forma de detector de componente transitorio/arranque, medicion de tonalidad, y medicion residual de LPC. El detector de componente transitorio/arranque puede ser usado para detectar ataque (aumento repentino de energfa) o el comienzo de voz activa en una ambiente limpio o senal limpia de ruido; la medicion de tonalidad puede ser usada para distinguir ruido de fondo util tal como una sirena, telefono sonando o musica; residual LPC puede ser usado para obtener una indicacion de la presencia de voz en la senal. Basado en estos rasgos, el detector 16 puede dar aproximadamente una informacion sobre si el cuadro actual puede ser clasificado, por ejemplo, como voz, silencio, musica o ruido.In particular, transformer 140 spectrally decomposes the input signal into a spectrogram such as using a lapped transform. A noise estimator 146 is configured to determine noise parameters from it. Concurrently, the voice or sound activity detector 16 evaluates the traits established from the input signal so as to detect if a transition takes place from an active phase to an inactive phase or vice versa. These features used by the detector 16 may be in the form of a transient component / start-up detector, hue measurement, and residual LPC measurement. The transient component / start detector can be used to detect attack (sudden increase in energy) or active voice start in a clean environment or clean signal of noise; Tone measurement can be used to distinguish useful background noise such as a siren, telephone ringing or music; Residual LPC can be used to obtain an indication of the presence of voice in the signal. Based on these features, the detector 16 can give approximately information about whether the current frame can be classified, for example, as voice, silence, music or noise.
Mientras el estimador de ruido 146 puede ser responsable de distinguir el ruido de dentro del espectrograma del componente de senal util allf dentro, tal como se propuso [R. Martin, Estimacion de Densidad Espectral de Potencia de Ruido Basada en Alisamiento Optimo y Estadfstica de Mmimos (Noise Power Spectral Density Estimation BasedWhile noise estimator 146 may be responsible for distinguishing noise from within the spectrogram of the signal component useful therein as proposed [R. Martin, Noise Power Spectral Density Estimation Based Noise Power Spectral Density Estimation Based on Optimal Smoothing and Statistics
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
on Optimal Smoothing and Minimum Statistics), 2001], el estimador de parametros 148 puede ser responsable de analizar estad^sticamente los componentes de ruido y determinar parametros para cada componente espectral, por ejemplo, basado en el componente de ruido.on Optimal Smoothing and Minimum Statistics), 2001], parameter estimator 148 may be responsible for statistically analyzing noise components and determining parameters for each spectral component, for example, based on the noise component.
El estimador de ruido 146 puede estar configurado, por ejemplo, para buscar mmimos locales en el espectrograma y el estimador de parametros 148 puede estar configurado para determinar la estadfstica de ruido en estas porciones suponiendo que los mmimos del espectrograma son principalmente un atributo de ruido de fondo mas que sonido de primer plano.The noise estimator 146 may be configured, for example, to search for local millimeters in the spectrogram and the parameter estimator 148 may be configured to determine the noise statistics in these portions assuming that the specimens of the spectrogram are primarily a noise attribute of background more than foreground sound.
Como una nota intermedia se pone enfasis en que tambien es posible realizar la estimacion mediante el estimador de ruido sin el FDNS 142 ya que los mmimos sf ocurren en el espectro no corregido. La mayor parte de la descripcion de la Figuras 5 quedana igual.As an intermediate note, it is emphasized that it is also possible to estimate using the noise estimator without the FDNS 142 since the mmf sf occur in the uncorrected spectrum. Most of the description in Figures 5 will remain the same.
El cuantificador de parametros 152 a su vez puede ser configurado para parametrizar los parametros estimados por el estimador de parametros 148. Por ejemplo, los parametros pueden describir una amplitud media y un momento de primero orden, u orden mas alto, de una distribucion de valores espectrales de dentro del espectrograma de la senal de entrada en tanto se refiere al componente de ruido. Para ahorrar cantidad de bits transmitidos, los parametros pueden ser remitidos a la secuencia de datos para insercion dentro de la misma dentro de cuadros SID en una resolucion espectral mas baja que la resolucion espectral provista por el transformador 140.The parameter quantifier 152 in turn can be configured to parameterize the parameters estimated by the parameter estimator 148. For example, the parameters can describe a mean amplitude and a first order moment, or higher order, of a distribution of values spectral within the spectrogram of the input signal while referring to the noise component. To save the amount of bits transmitted, the parameters can be sent to the sequence of data for insertion into the same within SID frames at a lower spectral resolution than the spectral resolution provided by the transformer 140.
El medidor de estacionariedad 150 puede estar configurado para establecer una medida de estacionariedad para la senal de ruido. El estimador de parametros 148 a su vez puede usar la medida de estacionariedad de modo de decidir si una actualizacion de parametro debe ser iniciada o no enviando otro cuadro SID tal como el cuadro 38 de la Figura 1 o para influenciar la manera en que se estiman los parametros.The stationarity meter 150 may be configured to establish a stationarity measurement for the noise signal. Parameter estimator 148 in turn can use the stationarity measurement to decide whether or not a parameter update should be initiated by sending another SID table such as table 38 in Figure 1 or to influence the way in which they are estimated The parameters
El modulo 152 cuantifica los parametros calculados por el estimador de parametros 148 y el analisis de LP 144 y envfa las senales al lado de decodificacion. En particular, antes de cuantificar, los componentes espectrales pueden ser agrupados en grupos. Tal agrupamiento puede ser seleccionado de acuerdo con aspectos psicoacusticos tal como conformando la escala de Bark o algo similar. El detector 16 informa al cuantificador 152 si se necesita hacer la cuantificacion o no. En el caso de no ser necesaria la cuantificacion, deben seguir cuadros cero.Module 152 quantifies the parameters calculated by parameter estimator 148 and the analysis of LP 144 and sends the signals to the decoding side. In particular, before quantifying, the spectral components can be grouped into groups. Such grouping can be selected according to psychoacoustic aspects such as shaping the Bark scale or something similar. The detector 16 informs the quantifier 152 if the quantification needs to be done or not. In case the quantification is not necessary, zero tables must be followed.
Cuando se transfiere la descripcion a un escenario concreto de conmutacion desde una fase activa a una fase inactiva, entonces los modulos de la Figura 5 actuan como sigue.When the description is transferred to a particular switching scenario from an active phase to an inactive phase, then the modules in Figure 5 act as follows.
Durante una fase activa, el motor de codificacion 14 sigue codificando la senal de audio via el empaquetador en series de bits en el tiempo. La codificacion puede realizarse a modo de cuadros. Cada cuadro de la secuencia de datos puede representar una porcion/intervalo de tiempo de la senal de audio. El codificador de audio 14 puede estar configurado para codificar todos los cuadros que usan codificacion LPC. El codificador de audio 14 puede estar configurado para codificar algunos cuadros como se describe con respecto a la Figura 2, llamado modo de codificacion de cuadro TCX, por ejemplo. Los remanentes pueden ser codificados usando codificacion de prediccion lineal codigo—excitado (code—excited linear prediction) (CELP) tal como modo de codificacion ACELP (algebraic— code—excited linear prediction), por ejemplo. Eso es, la porcion 44 de la secuencia de datos puede comprender una actualizacion continua de coeficientes de LPC usando alguna tasa de transmision de LPC que puede ser igual o mayor que la tasa de cuadro.During an active phase, the encoding engine 14 continues to encode the audio signal via the packet in series of bits in time. The coding can be done as pictures. Each frame of the data stream can represent a portion / time slot of the audio signal. The audio encoder 14 may be configured to encode all frames that use LPC encoding. Audio encoder 14 may be configured to encode some frames as described with respect to Figure 2, called TCX frame coding mode, for example. Remnants can be encoded using code-excited linear prediction (CELP) linear coding such as ACELP (algebraic code-excited linear prediction) coding mode, for example. That is, the portion 44 of the data stream may comprise a continuous update of LPC coefficients using some LPC transmission rate that may be equal to or greater than the frame rate.
En paralelo, el estimador de ruido 146 inspecciona los espectros aplanados LPC (filtrado por analisis de LPC) de modo de identificar los mmimos kmin de dentro del espectrograma TCX representado por la secuencia de estos espectros. Por supuesto, estos mmimos pueden variar con el tiempo t, esto es kmin(t). En todo caso, los mmimos pueden formar trazas en la salida del espectrograma mediante FDNS 142 y por ende, para cada espectro consecutivo i en el instante ti, el mmimo puede ser asociable con los mmimos en espectro precedente y siguiente, respectivamente.In parallel, the noise estimator 146 inspects the LPC flattened spectra (filtered by LPC analysis) so as to identify the mmmins within the TCX spectrogram represented by the sequence of these spectra. Of course, these millimos can vary with time t, this is kmin (t). In any case, the mmimos can form traces in the output of the spectrogram by means of FDNS 142 and therefore, for each consecutive spectrum and at the instant you, the mmimo can be associable with the mmimos in preceding and following spectrum, respectively.
El estimador de parametros entonces establece parametros de estimacion de ruido de fondo a partir de eso tal como, por ejemplo, una tendencia central (valor medio, mediana o similar) m y/o dispersion (desviacion estandar, varianza o similar) d para diferentes componentes o bandas espectrales. La derivacion puede involucrar analisis estadfstico de los coeficientes espectrales consecutivos de los espectros del espectrograma en los mmimos, produciendo de ese modo m y d para cada mmimo en kmin. La interpolacion a lo largo de la dimension espectral entre los mmimos de espectro antedichos puede realizarse de modo de obtener m y d para otros componentes o bandas espectrales predeterminados. La resolucion espectral para la derivacion y/o interpolacion de la tendencia central (promedio medio) y la derivacion de la dispersion (desviacion estandar, varianza o similar) puede diferir.The parameter estimator then establishes parameters for estimating background noise thereafter such as, for example, a central tendency (mean, median or similar value) m / or dispersion (standard deviation, variance or similar) d for different components or spectral bands. The derivation may involve statistical analysis of the consecutive spectral coefficients of the spectrogram spectra in the mm, thereby producing m and d for each mm in kmin. Interpolation along the spectral dimension between the aforementioned mm of spectrum can be performed in order to obtain m and d for other predetermined spectral bands or components. The spectral resolution for the derivation and / or interpolation of the central tendency (average average) and the derivation of the dispersion (standard deviation, variance or similar) may differ.
Los parametros recien mencionados son actualizados continuamente para cada salida de espectro por el FDNS 142, por ejemplo.The parameters just mentioned are continuously updated for each spectrum output by FDNS 142, for example.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
Tan pronto como el detector 16 detecta la entrada de una fase inactiva, el detector 16 puede informar al motor 14 consiguientemente para que no sean remitidos mas cuadros activos al empaquetador 154. Sin embargo, el cuantificador 152 entrega los parametros de ruido estadfsticos recien mencionados en un primer cuadro SID dentro de la fase inactiva, en cambio. El primer cuadro SID puede comprender o no, una actualizacion de los LPCs. Si hay una actualizacion de LPC presente, la misma puede ser conducida adentro de la secuencia de datos en el cuadro SID 32 en el formato usado en la porcion 44, esto es, durante la fase activa, tal como usando cuantificacion en el dominio LSF/LSP, o en forma diferente, tal como usando ponderaciones espectrales correspondientes al analisis de LPC o a la funcion transferencia del filtro de smtesis de LPC tal como los que hubieran sido aplicados por el FDNS 142 dentro del marco de trabajo del motor de codificacion 14 al proceder con una fase activa.As soon as the detector 16 detects the entry of an inactive phase, the detector 16 can inform the motor 14 accordingly so that no more active frames are sent to the packer 154. However, the quantifier 152 delivers the statistical noise parameters just mentioned in a first SID box within the inactive phase, instead. The first SID table may or may not include an update of the LPCs. If an LPC update is present, it can be conducted within the sequence of data in SID table 32 in the format used in portion 44, that is, during the active phase, such as using quantification in the LSF domain / LSP, or in a different way, such as using spectral weights corresponding to the LPC analysis or to the transfer function of the LPC synthesis filter such as those that would have been applied by the FDNS 142 within the framework of the coding engine 14 when proceeding With an active phase.
Durante la fase inactiva, el estimador de ruido 146, el estimador de parametros 148 y el medidor de estacionariedad 150 sigue cooperando de modo de mantener actualizado el lado de decodificacion sobre cambios en el ruido de fondo. En particular, el medidor 150 verifica la ponderacion espectral definida por los LPCs, de modo de identificar cambios e informar al estimador 148 cuando un cuadro SID debe ser enviado al decodificador. Por ejemplo, el medidor 150 podna activar el estimador consiguientemente siempre que la medida antedicha de estacionariedad indique un grado de fluctuacion en los LPCs que excede una cierta magnitud. Adicionalmente o alternativamente, el estimador podna ser disparado para enviar los parametros actualizados regularmente. Entre estos cuadros de actualizacion SID 40 no se enviana nada en las secuencias de datos, esto es, "cuadros cero".During the inactive phase, the noise estimator 146, the parameter estimator 148 and the stationarity meter 150 continue to cooperate in order to keep the decoding side updated on changes in the background noise. In particular, the meter 150 verifies the spectral weighting defined by the LPCs, so as to identify changes and inform the estimator 148 when an SID frame must be sent to the decoder. For example, the meter 150 could activate the estimator accordingly as long as the above-mentioned stationarity measure indicates a degree of fluctuation in the LPCs that exceeds a certain magnitude. Additionally or alternatively, the estimator could be triggered to send the updated parameters regularly. Among these SID 40 update boxes nothing is sent in the data streams, that is, "zero frames".
En el lado del decodificador, durante la fase activa, el motor de decodificacion 160 asume la responsabilidad de reconstruir la senal de audio. Tan pronto como empieza la fase inactiva, el generador aleatorio de parametros adaptivos 164 usa los parametros del generador aleatorio descuantificados enviados durante la fase inactiva adentro de la secuencia de datos desde el cuantificador de parametros 150, para generar componentes espectrales aleatorios, formando de ese modo un espectrograma aleatorio el cual es formado espectralmente adentro del procesador de energfa espectral 166 con el sintetizador 168 realizando entonces una retransformacion desde el dominio espectral al dominio del tiempo. Para la formacion espectral adentro del FDNS 166, se puede usar, ya sea los coeficientes LPC mas recientes provenientes de los cuadros activos mas recientes, o bien la ponderacion espectral a ser aplicada por el FDNS 166 puede ser derivada de allf mediante extrapolacion, o bien el cuadro SID 32 en sf mismo puede conducir la informacion. Mediante esta medida, en el inicio de la fase inactiva, el FDNS 166 continua ponderando espectralmente el espectro entrante de acuerdo con una funcion de trasferencia de un filtro de smtesis de LPC, con el LPS que define el filtro de smtesis de LPC que se deriva de la porcion da datos activos 44 o del cuadro SID 32. Sin embargo, con el inicio de la fase inactiva, el espectro a ser corregido por el FDNS 166 es el espectro generado aleatoriamente en lugar de una transformacion codificada como en caso del modo de codificacion de cuadro TCX. Asimismo, la correccion espectral aplicada en 166 es actualizada meramente en forma discontinua mediante el uso de los cuadros SID 38. Se podna realizar una interpolacion o un debilitamiento para conmutar gradualmente desde una definicion de correccion espectral a la siguiente durante las fases de interrupcion 36.On the decoder side, during the active phase, the decoding engine 160 assumes responsibility for reconstructing the audio signal. As soon as the inactive phase begins, the random generator of adaptive parameters 164 uses the unquantified random generator parameters sent during the inactive phase within the data stream from the parameter quantizer 150, to generate random spectral components, thereby forming a random spectrogram which is spectrally formed inside the spectral energy processor 166 with the synthesizer 168 then performing a retransformation from the spectral domain to the time domain. For spectral formation within FDNS 166, either the most recent LPC coefficients from the most recent active tables can be used, or the spectral weighting to be applied by FDNS 166 can be derived therefrom by extrapolation, or the SID 32 box itself can drive the information. By this measure, at the beginning of the inactive phase, the FDNS 166 continues to spectrally weigh the incoming spectrum according to a transfer function of an LPC synthesis filter, with the LPS defining the LPC synthesis filter that is derived of the portion of active data 44 or of the SID table 32. However, with the beginning of the inactive phase, the spectrum to be corrected by the FDNS 166 is the randomly generated spectrum instead of a coded transformation as in the case of the mode of TCX frame coding. Likewise, the spectral correction applied in 166 is merely updated discontinuously through the use of SID frames 38. Interpolation or weakening may be performed to gradually switch from one spectral correction definition to the next during the interruption phases 36.
Como se muestra en la Figura 6, el generador aleatorio parametrico adaptivo 164 adicionalmente puede, opcionalmente, usar los coeficientes de transformada descuantificados como estan contenidos dentro de las porciones mas recientes de la ultima fase activa en la secuencia de datos, a saber, adentro de la porcion de secuencia de datos 44 inmediatamente antes de la entrada de la fase inactiva. Por ejemplo, el significado puede ser entonces que se realiza una transicion suave desde el espectrograma dentro de la fase activa al espectrograma aleatorio dentro de la fase inactiva.As shown in Figure 6, the adaptive parametric random generator 164 can additionally, optionally, use the quantized transform coefficients as contained within the most recent portions of the last active phase in the data sequence, namely, within the data sequence portion 44 immediately before the input of the inactive phase. For example, the meaning may then be that a smooth transition is made from the spectrogram within the active phase to the random spectrogram within the inactive phase.
Con referencia brevemente de nuevo a las Figuras 1 y 3, se deduce de las Figuras 5 y 6 (y la explicada subsiguientemente Figura 7) que la estimacion de ruido de fondo parametrica como es generada dentro del codificador y/o decodificador, puede comprender informacion estadfstica sobre una distribucion de valores espectrales temporalmente consecutivos para distintas porciones espectrales tal como bandas de Bark o diferentes componentes espectrales. Para cada tal porcion espectral, por ejemplo, la informacion estadfstica puede contener una medida de dispersion. La medida de dispersion, consiguientemente, sena definida en la informacion espectral de una manera resuelta espectralmente, a saber, muestreada en/para las porciones espectrales. La resolucion espectral, esto es, el numero de medidas para dispersion y tendencia central se desparramas a lo largo del eje espectral, pueden diferir entre, por ejemplo, medida de dispersion y la opcionalmente presente media o medida de tendencia central. La informacion estadfstica esta contenida dentro de los cuadros SID. Se puede referir a un espectro corregido tal como el espectro filtrado de analisis LPC (esto es, LPC aplanado) tal como un espectro de MDCT corregido el cual permite smtesis sintetizando un espectro aleatorio de acuerdo con el espectro estadfstico y des—corrigiendo el mismo de acuerdo con una funcion transferencia del filtro de smtesis de LPC. En ese caso, la informacion de correccion espectral puede estar presente dentro de los cuadros SID, a pesar de que puede no utilizarse en el primer cuadro SID 32, por ejemplo. Sin embargo, como se mostrara luego, esta informacion estadfstica, alternativamente, puede referir a un espectro no corregido. Asimismo, en lugar de usar una representacion del espectro de valores reales tal como una MDCT, se puede usar un espectro de banco de filtros de valores complejos tal como espectro QMF de la senal de audio. Por ejemplo, se puede usar el espectro QMF de la senal de audio en forma no corregida y puede describirse en forma estadfstica mediante la informacion estadfstica en cuyo caso no hay correccion espectral mas que la contenida dentro de la informacion estadfstica en sf misma.With brief reference again to Figures 1 and 3, it follows from Figures 5 and 6 (and subsequently explained Figure 7) that the estimation of parametric background noise as generated within the encoder and / or decoder, may comprise information statistics on a distribution of temporarily consecutive spectral values for different spectral portions such as Bark bands or different spectral components. For each such spectral portion, for example, the statistical information may contain a measure of dispersion. The measure of dispersion, therefore, will be defined in the spectral information in a spectrally resolved manner, namely, sampled in / for the spectral portions. The spectral resolution, that is, the number of measures for dispersion and central tendency spreads along the spectral axis, may differ between, for example, measure of dispersion and the optionally present mean or measure of central tendency. The statistical information is contained within the SID tables. It can refer to a corrected spectrum such as the filtered spectrum of LPC analysis (that is, flattened LPC) such as a corrected MDCT spectrum which allows synthesis by synthesizing a random spectrum according to the statistical spectrum and correcting it from according to a transfer function of the LPC synthesis filter. In that case, the spectral correction information may be present within the SID frames, although it may not be used in the first SID frame 32, for example. However, as will be shown later, this statistical information may alternatively refer to an uncorrected spectrum. Also, instead of using a representation of the real value spectrum such as an MDCT, a complex spectrum filter bank spectrum such as QMF spectrum of the audio signal can be used. For example, the QMF spectrum of the audio signal can be used in an uncorrected form and can be described statistically by means of statistical information in which case there is no spectral correction other than that contained within the statistical information itself.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
En forma similar a la relacion entre la Figura 3 con respecto a la Figura 1, la Figura 7 muestra una posible implementacion del decodificador de la Figura 3. Como se muestra mediante el uso de los mismos signos de referencia que en la Figura 5, el decodificador de la Figura 7 puede comprender un estimador de ruido 146, un estimador de parametros 148 y un medidor de estacionariedad 150, los cuales funcionan de manera similar a los mismos elementos que estan en la Figura 5, con el estimador de ruido 146 de la Figura 7 que sin embargo, opera sobre el espectrograma transmitido y descuantificado tal como 120 o 122 de la Figura 4. El estimador de parametros 146 entonces opera como el discutido en la Figura 5. Lo mismo vale con respecto al medidor de estacionariedad 148, el cual opera sobre la energfa y los valores espectrales o datos de LPC revelando el desarrollo temporal del espectro del filtro de analisis de LpC (o del filtro de smtesis de LPC) segun es transmitido y descuantificado vfa/desde la secuencia de datos durante la fase activa.Similar to the relationship between Figure 3 with respect to Figure 1, Figure 7 shows a possible implementation of the decoder of Figure 3. As shown by using the same reference signs as in Figure 5, the The decoder of Figure 7 may comprise a noise estimator 146, a parameter estimator 148 and a stationarity meter 150, which function similarly to the same elements as in Figure 5, with the noise estimator 146 of the Figure 7 which, however, operates on the transmitted and unquantified spectrogram such as 120 or 122 of Figure 4. The parameter estimator 146 then operates as discussed in Figure 5. The same applies with respect to the stationarity meter 148, the which operates on the energy and spectral values or LPC data revealing the temporal development of the spectrum of the LpC analysis filter (or the LPC synthesis filter) as transmitted and quantified vfa / d This is the sequence of data during the active phase.
Mientras los elementos 146, 148 y 150 actuan como el estimador de ruido de fondo 90 de la Figura 3, el decodificador de la Figura 7 tambien comprende un generador aleatorio parametrico adaptivo 164 y un FDNS 166 asf como tambien un transformador inverso 168 y ellos estan conectados en serie entre sf como en la Figura 6, de modo de entregar el ruido de comodidad en la salida del sintetizador 168. Los modulos 164, 166, y 168 actuan como el generador de ruido de fondo 96 de la Figura 3 con el modulo 164 que asume la responsabilidad de la funcionalidad del generador aleatorio parametrico 94. El generador aleatorio parametrico adaptivo 94 o 164 entre componentes espectrales generadas aleatoriamente del espectrograma de acuerdo con los parametros determinados por el estimador de parametros 148 el cual a su vez es disparado usando la medida de estacionariedad entregada por el medidor de estacionariedad 150. El procesador 166 entonces corrige espectralmente el espectrograma asf generado con el transformador inverso 168, realizando luego la transicion desde el dominio espectral al dominio del tiempo. Notar que cuando durante la fase inactiva 88 el decodificador esta recibiendo la informacion 108, el estimador de ruido de fondo 90 esta realizando una actualizacion de las estimaciones de ruido seguida por algun medio de interpolacion. Por lo demas, si se reciben cuadros cero, simplemente hace el procesamiento tal como interpolacion y/o desvanecimiento.While elements 146, 148 and 150 act as the background noise estimator 90 of Figure 3, the decoder of Figure 7 also comprises an adaptive parametric random generator 164 and an FDNS 166 as well as an inverse transformer 168 and they are connected in series with each other as in Figure 6, so as to deliver the comfort noise at the output of the synthesizer 168. Modules 164, 166, and 168 act as the background noise generator 96 of Figure 3 with the module 164 assuming responsibility for the functionality of the parametric random generator 94. The adaptive parametric random generator 94 or 164 between spectral components generated randomly from the spectrogram according to the parameters determined by the parameter estimator 148 which in turn is triggered using the measurement of stationarity delivered by the stationarity meter 150. The processor 166 then spectrally corrects the spectrogram asf generated with the inverse transformer 168, then making the transition from the spectral domain to the time domain. Note that when during the inactive phase 88 the decoder is receiving information 108, the background noise estimator 90 is updating the noise estimates followed by some means of interpolation. Otherwise, if zero frames are received, it simply does the processing such as interpolation and / or fading.
Sintetizando las Figuras 5 a 7, estas muestran que es tecnicamente posible aplicar un generador aleatorio controlado 164 para excitar los coeficientes TCX, lo cuales pueden ser valores reales tal como en MDCT o valores complejos como en FFT. Tambien podna ser ventajoso aplicar el generador aleatorio 164 sobre grupos de coeficientes usualmente conseguidos a traves de bancos de filtros.Synthesizing Figures 5 to 7, these show that it is technically possible to apply a randomized controlled generator 164 to excite the TCX coefficients, which may be real values such as in MDCT or complex values as in FFT. It may also be advantageous to apply random generator 164 on groups of coefficients usually achieved through filter banks.
El generador aleatorio 164 preferiblemente es controlado tal que el mismo modela el tipo de ruido lo mas fielmente posible. Esto se podna llevar a cabo si el ruido blando es conocido de antemano. Algunas aplicaciones pueden permitirlo. En muchas aplicaciones realistas donde un sujeto puede encontrar diferentes tipos de ruido, se requiere un metodo adaptivo como se muestra en las Figuras 5 a 7. Por consiguiente, se usa un generador aleatorio de parametros adaptivo 164, el cual podna ser definido brevemente como g = f (x), donde x = (x-i, X2, ...) es un conjunto de parametros de generador aleatorio provisto por los estimadores de parametros 146 y 150, respectivamente.The random generator 164 is preferably controlled such that it models the type of noise as faithfully as possible. This could be done if soft noise is known in advance. Some applications may allow it. In many realistic applications where a subject can find different types of noise, an adaptive method is required as shown in Figures 5 to 7. Therefore, a random generator of adaptive parameters 164 is used, which can be briefly defined as g = f (x), where x = (xi, X2, ...) is a set of random generator parameters provided by parameter estimators 146 and 150, respectively.
Para hacer el generador aleatorio de parametros adaptivo, el estimador de parametros de generador aleatorio 146 controla adecuadamente el generador aleatorio. Se puede incluir compensacion de deslizamiento para compensar los casos donde se consideran que los datos son estadfsticamente insuficientes. Esto se hace para generar un modelo estadfsticamente apareado del ruido basado en los cuadros pasados y siempre actualizara los parametros estimados. Un ejemplo se da cuando se supone que el generador aleatorio 164 genera un ruido Gaussiano. En este caso, por ejemplo, solo se pueden necesitar los parametros media y varianza y se puede calcular un deslizamiento y aplicarlo a esos parametros. Un metodo mas avanzado puede manejar cualquier tipo de ruido o distribucion y los parametros no son necesariamente los momentos de una distribucion.To make the random parameter generator adaptive, the random generator parameter estimator 146 adequately controls the random generator. Slip compensation can be included to compensate for cases where the data is considered statistically insufficient. This is done to generate a statistically matched noise model based on the past tables and will always update the estimated parameters. An example is when it is assumed that random generator 164 generates a Gaussian noise. In this case, for example, only the average and variance parameters can be needed and a slip can be calculated and applied to those parameters. A more advanced method can handle any type of noise or distribution and the parameters are not necessarily the moments of a distribution.
Para el ruido no estacionario, se necesita tener una medida de estacionariedad y entonces se puede usar un generador aleatorio parametrico menos adaptivo. La medida de estacionariedad determinada por el medidor 148 puede ser derivada de la forma espectral de la senal de entrada usando diversos metodos como por ejemplo, la medida de distancia de Itakura, la medida de distancia de Kullback—Leibler, etc.For non-stationary noise, it is necessary to have a measure of stationarity and then a less adaptive parametric random generator can be used. The stationarity measurement determined by the meter 148 can be derived from the spectral shape of the input signal using various methods such as, for example, the Itakura distance measurement, the Kullback-Leibler distance measurement, etc.
Para manejar la naturaleza discontinua de actualizaciones de ruido enviadas a traves de cuadros SID tal como se ilustra mediante 38 en la Figura 1, usualmente se envfa informacion adicional tal como la energfa y la forma espectral del ruido. Esta informacion es util para generar el ruido en el decodificador teniendo una transicion suave incluso durante un penodo de discontinuidad dentro de la fase inactiva. Finalmente, se pueden aplicar diversas tecnicas de alisamiento o filtrado para ayudar a mejorar la calidad del emulador de ruido de comodidad.To handle the discontinuous nature of noise updates sent through SID frames as illustrated by 38 in Figure 1, additional information such as energy and spectral noise form is usually sent. This information is useful for generating noise in the decoder having a smooth transition even during a period of discontinuity within the inactive phase. Finally, various smoothing or filtering techniques can be applied to help improve the quality of the comfort noise emulator.
Como ya se noto arriba, las Figuras 5 y 6 por un lado, y la Figura 7 por otro, pertenecen a diferentes escenarios. En un escenario que corresponde a las Figuras 5 y 6, la estimacion de ruido de fondo parametrica se hace en el codificador basado en la senal de entrada procesada y despues los parametros son transmitidos al decodificador. La Figura 7 corresponde al otro escenario donde el decodificador puede ocuparse de la estimacion de ruido de fondo parametrica basado en los cuadros pasados recibidos dentro de la fase activa. El uso de un detector de actividad de voz/senal o estimador de ruido puede ser beneficioso para ayudar a extraer componentes de ruido incluso durante voz activa, por ejemplo.As noted above, Figures 5 and 6 on the one hand, and Figure 7 on the other, belong to different scenarios. In a scenario corresponding to Figures 5 and 6, the estimation of parametric background noise is made in the encoder based on the processed input signal and then the parameters are transmitted to the decoder. Figure 7 corresponds to the other scenario where the decoder can deal with the estimation of parametric background noise based on the past frames received within the active phase. The use of a voice / signal activity detector or noise estimator may be beneficial to help extract noise components even during active voice, for example.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
Entre los escenarios mostrados en las Figuras 5 a 7, el escenario de la Figura 7 puede ser preferido ya que este escenario resulta en que se transmite una menor cantidad de bits transmitidos. El escenario de las Figuras 5 y 6 sin embargo, tiene la ventaja de tener a disposicion mas precisa estimacion de ruido.Among the scenarios shown in Figures 5 to 7, the scenario of Figure 7 may be preferred since this scenario results in a smaller amount of transmitted bits being transmitted. The scenario of Figures 5 and 6, however, has the advantage of having more accurate noise estimation available.
Todas las realizaciones de arriba podnan ser combinadas con tecnicas de extension de ancho de banda tal como replicacion de banda espectral (SBR), a pesar de que en general se puede usar extension de ancho de banda.All of the above embodiments could be combined with bandwidth extension techniques such as spectral band replication (SBR), although in general bandwidth extension can be used.
Para ilustrar esto, ver la Figura 8. La Figura 8 muestra modulos mediante los cuales los codificadores de las Figuras 1 y 5 podnas se extendidos para realizar codificacion parametrica con relacion a una porcion de mas alta frecuencia de la senal de entrada. En particular, de acuerdo con la Figura 8, una senal de audio de entrada del dominio del tiempo es descompuesta espectralmente mediante un banco de filtros de analisis 200 tal como un banco de filtros de analisis QMF como se muestra en la Figura 8. Las r tecnicas de arriba de las Figuras 1 y 5 entonces solo senan aplicadas a una porcion de frecuencia mas baja de la descomposicion espectral generada por el banco de filtros 200. Para llevar informacion sobre la porcion de frecuencia mas alta al lado del decodificador, tambien se usa codificacion parametrica. Con este fin, un codificador de replicacion de banda espectral regular 202 esta configurado para parametrizar la porcion de frecuencia mas alta durante fases activas y alimentar informacion sobre ello en la forma de informacion de replicacion de banda espectral dentro de la secuencia de datos al lado de decodificacion. Un conmutador 204 puede estar provisto entre la salida del banco de filtros QMF 200 y la entrada del codificador de replicacion de banda espectral 202 para conectar la salida del banco de filtros 200 con una entrada de un codificador de replicacion de banda espectral 206 conectado en paralelo con el codificador 202 de modo de asumir la responsabilidad de la extension de ancho de banda durante fases inactivas. Eso es, el conmutador 204 puede ser controlado como el conmutador 22 de la Figura 1. Como se describira en mas detalle abajo, el modulo de codificador de replicacion de banda espectral 206 puede estar configurado para funcionar de manera similar al codificador de replicacion de banda espectral 202: ambos pueden estar configurados para parametrizar la envolvente espectral de la senal de audio de entrada dentro de la porcion de frecuencia mas alta, esto es, la porcion de frecuencia mas alta remanente no sometida a codificacion central por el motor de codificacion, por ejemplo. Sin embargo, el modulo de codificador de replicacion de banda espectral 206 puede usar una minima resolucion de tiempo/frecuencia a la cual la envolvente espectral es parametrizada y conducida adentro de la secuencia de datos, mientras el codificador de replicacion de banda espectral 202 puede estar configurado para adaptar la resolucion de tiempo/frecuencia a la senal de audio de entrada dependiendo de las ocurrencias de transitorios dentro de la senal de audio.To illustrate this, see Figure 8. Figure 8 shows modules by which the encoders of Figures 1 and 5 could be extended to perform parametric coding in relation to a higher frequency portion of the input signal. In particular, according to Figure 8, an input signal of the time domain is spectrally decomposed by an analysis filter bank 200 such as a QMF analysis filter bank as shown in Figure 8. The r The techniques above in Figures 1 and 5 are then only applied to a lower frequency portion of the spectral decomposition generated by the filter bank 200. To carry information on the higher frequency portion next to the decoder, it is also used parametric coding. To this end, a regular spectral band replication encoder 202 is configured to parameterize the highest frequency portion during active phases and to feed information about it in the form of spectral band replication information within the data sequence next to decoding A switch 204 may be provided between the output of the filter bank QMF 200 and the input of the spectral band replication encoder 202 to connect the output of the filter bank 200 with an input of a spectral band replication encoder 206 connected in parallel with encoder 202 so as to assume responsibility for bandwidth extension during inactive phases. That is, switch 204 can be controlled like switch 22 of Figure 1. As will be described in more detail below, the spectral band replication encoder module 206 may be configured to operate similarly to the band replication encoder. spectral 202: both can be configured to parameterize the spectral envelope of the input audio signal within the highest frequency portion, that is, the highest remaining frequency portion not subject to central coding by the encoding motor, by example. However, the spectral band replication encoder module 206 may use a minimum time / frequency resolution at which the spectral envelope is parameterized and conducted within the data stream, while the spectral band replication encoder 202 may be configured to adapt the time / frequency resolution to the input audio signal depending on the occurrences of transients within the audio signal.
La Figura 9 muestra una implementacion posible del modulo de codificacion de extension de ancho de banda 206. Un fijador de rejilla tiempo/frecuencia 208, un calculador de energfa 210 y un codificador de energfa 212 estan conectados en serie entre sf entre una entrada y una salida del modulo de codificacion 206. El fijador de rejilla de tiempo/frecuencia 208 puede estar configurado para fijar la resolucion de tiempo/frecuencia en la cual se determina la envolvente de la porcion de frecuencia mas alta. Por ejemplo, una minima resolucion de tiempo/frecuencia permitida es usada continuamente por el modulo de codificacion 206. El calculador de energfa 210 entonces puede determinar la energfa de la porcion de frecuencia mas alta del espectrograma entregado por el banco de filtros 2'00 dentro de la porcion de frecuencia mas alta en baldosas de tiempo/frecuencia correspondientes a la resolucion de tiempo/frecuencia, y el codificador de energfa 212 puede usar codificacion de entropfa, por ejemplo, para insertar las energfas calculadas por el calculador 210 en la secuencia de datos 40 (ver Figura 1) durante las fases inactivas tal como dentro de cuadros SID, tal como el cuadro SID 38.Figure 9 shows a possible implementation of the bandwidth extension coding module 206. A time / frequency grid fixator 208, an energy calculator 210 and an energy encoder 212 are connected in series with each other between an input and a output of the coding module 206. The time / frequency grid fixator 208 may be configured to set the time / frequency resolution at which the envelope of the highest frequency portion is determined. For example, a minimum resolution of time / frequency allowed is continuously used by the encoding module 206. The energy calculator 210 can then determine the energy of the highest frequency portion of the spectrogram delivered by the filter bank 2'00 within of the highest frequency portion in time / frequency tiles corresponding to the time / frequency resolution, and the energy encoder 212 may use entropy coding, for example, to insert the energies calculated by the calculator 210 into the sequence of data 40 (see Figure 1) during inactive phases such as within SID boxes, such as SID table 38.
Se debe notar que la informacion de extension de ancho de banda generada de acuerdo con las Figuras 8 y 9 tambien puede ser usada en conexion con usar un decodificador de acuerdo con cualquiera de los ejemplos de realizacion descritos arriba, tal como los de las Figuras 3, 4 y 7.It should be noted that the bandwidth extension information generated in accordance with Figures 8 and 9 can also be used in connection with using a decoder according to any of the embodiments described above, such as those in Figures 3 , 4 and 7.
Asf, las Figuras 8 y 9 aclaran que la generacion de ruido de comodidad como se explico con respecto a las Figuras 1 a 7, tambien puede ser usada en conexion con replicacion de banda espectral. Por ejemplo, los codificadores y decodificadores de audio descritos arriba pueden operar en diferentes modos de operacion, entre los cuales algunos comprenden replicacion de banda espectral y algunos no. Los modos de operacion de banda super ancha por ejemplo, podnan involucrar replicacion de banda espectral. En cualquier caso, los ejemplos de las Figuras 1 a 7 que muestran ejemplos para generar ruido de comodidad pueden ser combinadas con tecnicas de extension de ancho de banda de la manera descrita con respecto a las Figuras 8 y 9. El modulo de codificacion de replicacion de banda espectral 206 que es responsable de la extension de ancho de banda durante las fases inactivas puede estar configurado para operar sobre una muy baja resolucion de tiempo y frecuencia. Comparado con el procesamiento de replicacion de banda espectral regular, el codificador 206 puede operar en una resolucion de frecuencia diferente lo cual acarrea una tabla de banda de frecuencia adicional con resolucion de muy baja frecuencia junto con filtros de alisamiento IIR en el decodificador para toda banda de factor de escala de generacion de ruido de comodidad que interpola los factores de escala de energfa aplicados en el ajustador de envolvente durante las fases inactivas. Como se menciono recien, la rejilla de tiempo/frecuencia puede estar configurada para corresponder a una resolucion temporal lo mas baja posible.Thus, Figures 8 and 9 clarify that the generation of comfort noise as explained with respect to Figures 1 to 7, can also be used in connection with spectral band replication. For example, the audio encoders and decoders described above may operate in different modes of operation, among which some comprise spectral band replication and some do not. Super broadband modes of operation, for example, could involve spectral band replication. In any case, the examples of Figures 1 to 7 showing examples for generating comfort noise can be combined with bandwidth extension techniques in the manner described with respect to Figures 8 and 9. The replication coding module Spectral band 206 which is responsible for bandwidth extension during inactive phases may be configured to operate over a very low resolution of time and frequency. Compared to regular spectral band replication processing, encoder 206 can operate in a different frequency resolution which results in an additional frequency band table with very low frequency resolution along with IIR smoothing filters in the decoder for all bands. of comfort noise generation scale factor that interpolates the energy scale factors applied to the envelope adjuster during the inactive phases. As mentioned earlier, the time / frequency grid can be set to correspond to a temporary resolution as low as possible.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
Eso es, la codificacion de extension de ancho de banda puede ser realizada de modo diferente en QMF o dominio espectral dependiendo del silencio o fase activo que este presente. En la fase activa, esto es, durante cuadros activos, se lleva a cabo codificacion SBR regular por medio del codificador 202, dando por resultado una secuencia de datos SBR normal que acompana a las secuencias de datos 44 102, respectivamente. En las fases inactivas o durante cuadros clasificados como cuadros SID, solo se puede extraer informacion acerca de la envolvente espectral, representada como factores de escala de energfa, mediante la aplicacion de una rejilla de tiempo/frecuencia que exhibe una muy baja resolucion de frecuencia, y por ejemplo, la resolucion de tiempo mas baja posible. Los factores de escala resultantes podnan ser codificados eficientemente mediante el codificador 212 y escritos a la secuencia de datos. En cuadros cero o durante fases de interrupcion 36, no se puede escribir informacion lateral a la secuencia de datos mediante el modulo de codificacion de replicacion de banda espectral 206 y por lo tanto no se puede llevar a cabo ningun calculo de energfa mediante el calculador 210.That is, the bandwidth extension encoding can be performed differently in QMF or spectral domain depending on the silence or active phase that is present. In the active phase, that is, during active frames, regular SBR encoding is carried out by means of encoder 202, resulting in a normal SBR data sequence that accompanies data sequences 44 102, respectively. In the inactive phases or during frames classified as SID frames, only information about the spectral envelope, represented as energy scale factors, can be extracted by applying a time / frequency grid that exhibits a very low frequency resolution, and for example, the lowest possible resolution of time. The resulting scale factors can be efficiently encoded by encoder 212 and written to the data stream. In zero frames or during interruption phases 36, lateral information cannot be written to the data sequence by means of the spectral band replication coding module 206 and therefore no energy calculation can be carried out by means of the calculator 210 .
En conformidad con la Figura 8, la Figura 10 muestra una posible extension de los ejemplos de realizacion del decodificador de las Figuras 3 y 7 a tecnicas de codificacion de extension de ancho de banda. Para ser mas precisos, la Figura 10 muestra un posible ejemplo de realizacion de un decodificador de audio de acuerdo con la presente invencion. Un decodificador por nucleo 92 esta conectado en paralelo con un generador de ruido de comodidad, estando indicado el generador de ruido de comodidad con el signo de referencia 220 y comprendiendo, por ejemplo, el modulo de generacion de ruido 162 o los modulos 90, 94 y 96 de la Figura 3. Un conmutador 222 se muestra como distribuyendo los cuadros dentro de la secuencia de datos 104 y 30 respectivamente, sobre el decodificador por nucleo 92 o el generador de ruido de comodidad 220 dependiendo del tipo de cuadro, a saber, si el cuadro concierne o pertenece a una fase activa, o concierne o pertenece a una fase inactiva tal como cuadros SID o cuadros cero que conciernen a fases de interrupcion. Las salidas del decodificador por nucleo 92 y del generador de ruido de comodidad 220 se conectan a una entrada de un decodificador de extension de ancho de banda 224, la salida del cual revela la senal de audio reconstruida.In accordance with Figure 8, Figure 10 shows a possible extension of the exemplary embodiments of the decoder of Figures 3 and 7 to bandwidth extension coding techniques. To be more precise, Figure 10 shows a possible example of realization of an audio decoder according to the present invention. A decoder per core 92 is connected in parallel with a comfort noise generator, the comfort noise generator being indicated with the reference sign 220 and comprising, for example, the noise generation module 162 or the modules 90, 94 and 96 of Figure 3. A switch 222 is shown as distributing the frames within the data stream 104 and 30 respectively, over the decoder per core 92 or the comfort noise generator 220 depending on the type of frame, namely, if the frame concerns or belongs to an active phase, or concerns or belongs to an inactive phase such as SID frames or zero frames that concern interrupt phases. The outputs of the core decoder 92 and the comfort noise generator 220 are connected to an input of a bandwidth extension decoder 224, the output of which reveals the reconstructed audio signal.
La Figura 11 muestra una realizacion mas detallada de una posible implementacion de un decodificador de extension de ancho de banda 224.Figure 11 shows a more detailed embodiment of a possible implementation of a bandwidth extension decoder 224.
Como se muestra en la Figura 11, el decodificador de extension de ancho de banda 224 de acuerdo con la realizacion de la Figura 11 comprende un entrada 226 para recibir la reconstruccion del dominio del tiempo de la porcion de baja frecuencia de la senal de audio completa a ser reconstruida. Es la entrada 226 que conecta el decodificador de extension de ancho de banda 224 con las salidas del decodificador por nucleo 92 y el generador de ruido de comodidad 220 de modo que la entrada del dominio del tiempo en el entrada 226 pueda ser reconstruida la porcion de baja frecuencia de una senal de audio que comprende tanto ruido como componente util, o bien el ruido de comodidad generado para puentear el tiempo entre fases activas.As shown in Figure 11, the bandwidth extension decoder 224 according to the embodiment of Figure 11 comprises an input 226 for receiving the time domain reconstruction of the low frequency portion of the complete audio signal To be rebuilt. It is the input 226 that connects the bandwidth extension decoder 224 with the outputs of the core decoder 92 and the comfort noise generator 220 so that the time domain input at the input 226 can be rebuilt the portion of low frequency of an audio signal comprising both noise and useful component, or the comfort noise generated to bridge the time between active phases.
Como de acuerdo con la realizacion de la Figura 11, el decodificador de extension de ancho de banda 224 esta construido para realizar una replicacion de ancho de banda espectral, el decodificador se llama decodificador SBR en lo que sigue. Con respecto a las Figuras 8 a 10, sin embargo, se enfatiza que estos ejemplos no estan restringidos a replicacion de ancho de banda espectral. Mas bien, tambien se puede usar una manera alternativa, mas general, de extension de ancho de banda, con relacion a estos ejemplos.As in accordance with the embodiment of Figure 11, the bandwidth extension decoder 224 is constructed to perform a spectral bandwidth replication, the decoder is called SBR decoder in the following. With respect to Figures 8 to 10, however, it is emphasized that these examples are not restricted to spectral bandwidth replication. Rather, an alternative, more general, way of bandwidth extension can also be used, in relation to these examples.
Ademas, el decodificador SBR 224 de la Figura 11 comprende una salida del dominio del tiempo 228 para entregar la senal de audio reconstruida, esto es, o bien en fases activas o bien en fases inactivas. Entre la entrada 226 y la salida 228 del decodificador SBR 224, estan, conectados en serie en el orden en que se mencionan, un descomponedor espectral 230 el cual puede ser, como se muestra en la Figura 11, un banco de filtros de analisis tal como un banco de filtros de analisis QMF, un generador de HF 232, un ajustador de envolvente 234, y un convertidor del dominio espectral al tiempo 236 el cual puede estar, como se muestra en la Figura 11, realizado como un banco de filtros de smtesis tal como un banco de filtros de smtesis QMF.In addition, the decoder SBR 224 of Figure 11 comprises an output of the time domain 228 to deliver the reconstructed audio signal, that is, either in active phases or in inactive phases. Between the input 226 and the output 228 of the decoder SBR 224, they are connected in series in the order in which they are mentioned, a spectral decomposer 230 which can be, as shown in Figure 11, a bank of analysis filters such as a bank of QMF analysis filters, an HF generator 232, an envelope adjuster 234, and a converter of the spectral domain at time 236 which can be, as shown in Figure 11, made as a filter bank of synthesis such as a bank of QMF synthesis filters.
Los modulos 230 a 236 operan como sigue. El descomponedor espectral 230 descompone espectralmente la senal de entrada del dominio del tiempo de modo de obtener una porcion de baja frecuencia reconstruida. El generador de HF 232 genera una porcion de replica de alta frecuencia basado en porcion de baja frecuencia reconstruida y el ajustador de envolvente 234 forma o corrige espectralmente la replica de alta frecuencia usando una representacion de una envolvente espectral de la porcion de alta frecuencia como es llevada por medio de la secuencia de datos SBR y provista por modulos todavfa no discutidos pero mostrados en la Figura 11 arriba del ajustador de envolvente 234. Asf, el ajustador de envolvente 234 ajusta la envolvente de la porcion de replica de alta frecuencia de acuerdo con la representacion de rejilla de tiempo/frecuencia de la envolvente de alta frecuencia transmitida, y remite la porcion de alta frecuencia asf obtenida al convertidor del dominio espectral a temporal 236 para una conversion del espectro de frecuencia completo, esto es, porcion de alta frecuencia formada espectralmente junto con la porcion de baja frecuencia reconstruida, a la senal del dominio del tiempo reconstruida en la salida 228.Modules 230 to 236 operate as follows. The spectral decomposer 230 spectrally decomposes the input signal of the time domain so as to obtain a reconstructed low frequency portion. The HF generator 232 generates a high frequency replica portion based on reconstructed low frequency portion and envelope adjuster 234 spectrally forms or corrects the high frequency replica using a representation of a spectral envelope of the high frequency portion as is carried by means of the SBR data sequence and provided by modules not yet discussed but shown in Figure 11 above the envelope adjuster 234. Thus, the envelope adjuster 234 adjusts the envelope of the high frequency replica portion according to the time / frequency grid representation of the transmitted high frequency envelope, and forwards the high frequency portion thus obtained to the spectral to temporal domain converter 236 for a complete frequency spectrum conversion, that is, high frequency portion formed spectrally along with the reconstructed low frequency portion, at the signal of the time domain rec built at exit 228.
Como ya se menciono arriba con respecto a las Figuras 8 a 10, la envolvente espectral de porcion de alta frecuencia puede ser llevada adentro de la secuencia de datos en la forma de factores de escala de energfa y el decodificador SBR 224 comprende una entrada 238 para recibir esta informacion sobre la envolvente espectral de porciones deAs already mentioned above with respect to Figures 8 to 10, the high frequency portion spectral envelope can be carried within the sequence of data in the form of energy scale factors and the decoder SBR 224 comprises an input 238 for receive this information about the spectral envelope of portions of
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
alta frecuencia. Como se muestra en la Figura 11, en el caso de fases activas, esto es, cuadros activos presentes en la secuencia de datos durante fases activas, las entradas 238 pueden estar conectadas directamente a la entrada de envolvente espectral del ajustador de envolvente 234 via un respectivo conmutador 240. Sin embargo, el decodificador SBR 224 comprende adicionalmente un combinador de factor de escala 242, un almacenamiento de datos de factor de escala 244, una unidad filtradora de interpolacion 246, tal como una unidad filtradora IIR, y un ajustador de ganancia 248. Los modulos 242, 244, 246 y 248 estan conectados en serie entre sf entre 238 y la entrada de envolvente espectral del ajustador de envolvente 234 con el conmutador 240 que estan conectado entre el ajustador de ganancia 248 y el ajustador de envolvente 234 y un conmutador adicional 250 que esta conectado entre el almacenamiento de datos de factor de escala 244 y la unidad filtradora 246. El conmutador 250 esta configurado para conectar este almacenamiento de datos de factor de escala 244 con la entrada de la unidad filtradora 246, o bien un restaurador de datos de factor de escala 252. En el caso de cuadros SID durante fases inactivas — y opcionalmente en casos de cuadros activos para los cuales es aceptable una representacion muy grosera de la envolvente espectral de porcion de alta frecuencia — los conmutadores 250 y 240 conectan la secuencia de los modulos 242 a 248 entre la entrada 238 y el ajustador de envolvente 234. El combinador de factor de escala 242 adapta la resolucion de frecuencia en la cual ha sido transmitida la envolvente espectral de porciones de alta frecuencia via la secuencia de datos a la resolucion, la cual espera recibir el ajustador de envolvente 234 y un almacenamiento de datos de factor de escala 244 almacena la envolvente espectral hasta una siguiente actualizacion. La unidad filtradora 246 filtra la envolvente espectral en dimension temporal y/o espectral y el ajustador de ganancia 248 adapta la ganancia de la envolvente espectral de la porcion de alta frecuencia. Con ese fin, el ajustador de ganancia puede combinar los datos de envolvente segun fueron obtenidos por la unidad 246 con la envolvente real como se puede derivar de la salida del banco de filtros QMF. El restaurador de datos de factor de escala 252 reproduce los datos de factor de escala que representan la envolvente espectral dentro de fases de interrupcion o cuadros cero segun lo almacenado por el almacenamiento de factor de escala 244.high frequency. As shown in Figure 11, in the case of active phases, that is, active frames present in the data sequence during active phases, the inputs 238 can be connected directly to the spectral envelope input of the envelope adjuster 234 via a respective switch 240. However, the decoder SBR 224 further comprises a scale factor combiner 242, a scale factor data storage 244, an interpolation filter unit 246, such as a IIR filter unit, and a gain adjuster 248. Modules 242, 244, 246 and 248 are connected in series between sf between 238 and the spectral envelope input of envelope adjuster 234 with switch 240 which are connected between gain adjuster 248 and envelope adjuster 234 and an additional switch 250 that is connected between the scale factor data storage 244 and the filter unit 246. The switch 250 is configured to co nectar this storage of scale factor data 244 with the input of the filter unit 246, or a restorer of scale factor data 252. In the case of SID frames during inactive phases - and optionally in cases of active frames for the which a very gross representation of the high frequency portion spectral envelope is acceptable - switches 250 and 240 connect the sequence of modules 242 to 248 between input 238 and envelope adjuster 234. The scale factor combiner 242 adapts the frequency resolution in which the spectral envelope of high frequency portions has been transmitted via the data sequence to the resolution, which expects to receive the envelope adjuster 234 and a scale factor data storage 244 stores the spectral envelope until a next update. The filter unit 246 filters the spectral envelope in temporal and / or spectral dimension and the gain adjuster 248 adapts the gain of the spectral envelope of the high frequency portion. To that end, the gain adjuster can combine the envelope data as obtained by the unit 246 with the actual envelope as can be derived from the output of the QMF filter bank. The scale factor data restorer 252 reproduces the scale factor data representing the spectral envelope within interrupt phases or zero frames as stored by the scale factor storage 244.
Asf, en el lado del decodificador, se puede llevar a cabo el siguiente procesamiento. En los cuadros activos o durante fases activas, se puede aplicar procesamiento de replicacion de banda espectral regular. Durante estos penodos, los factores de escala provenientes de la secuencia de datos, los cuales tipicamente estan disponibles para un mayor numero de bandas de factor de escala comparado con procesamiento de generacion de ruido de comodidad, son convertidos a la resolucion de frecuencia de generacion de ruido de comodidad por el combinador de factor de escala 242. El combinador de factor de escala combina los factores de escala para la resolucion de frecuencia mas alta para resultar en un numero de factores de escala conforme con CNG aprovechando bordes de banda de frecuencia comunes de las diferentes tablas de banda de frecuencia. Los valores de factor de escala resultantes en la salida de la unidad combinadora de factor de escala 242 son almacenados para la reutilizacion en cuadros cero y posterior reproduccion por el recuperador 252 y son usados subsiguientemente para actualizar la unidad filtradora 246 para el modo de operacion cNg. En los cuadros SID se aplica un lector de secuencia de datos SBR modificado el cual extrae la informacion de factor de escala de la secuencia de datos. La configuracion restante del procesamiento SBR es inicializada con valores predefinidos, se inicializa la rejilla de tiempo/frecuencia a la misma resolucion de tiempo/frecuencia usada en el codificador. Los factores de escala extrafdos son alimentados a la unidad filtradora 246 donde, por ejemplo, un filtro de alisamiento IIR interpola la progresion de la energfa para una banda de factor de escala de baja resolucion a lo largo del tiempo. En caso de caso cuadros cero, no hay carga util para leer desde la serie de bits en el tiempo y la configuracion SBR que incluye la rejilla de tiempo/frecuencia es la misma que la usada en los cuadros SID. En cuadros cero, los filtros de alisamiento de la unidad filtradora 246 son alimentados con un valor de factor de escala entregado desde la unidad combinadora de factores de escala 242 que han sido almacenados en el ultimo cuadro que contiene informacion de factores de escala valida. En el caso que el cuadro actual es clasificado como un cuadro inactivo o cuadro SID, el ruido de comodidad es generado en el dominio TCX y se vuelve a transformar al dominio del tiempo. Subsiguientemente, la senal del dominio del tiempo que contiene el ruido de comodidad es alimentada al banco de filtros de analisis QMF 230 del modulo SBR 224. En el dominio de QMF, la extension de ancho de banda del ruido de comodidad se realiza por medio de transposicion de copy—up dentro del generador de HF 232 y finalmente la envolvente espectral de la parte de alta frecuencia creada artificialmente, es ajustada mediante aplicacion de informacion de factores de escala de energfa en el ajustador de envolvente 234. Estos factores de escala de energfa se obtienen mediante la salida de la unidad filtradora 246 y son puestos en escala mediante la unidad de ajuste de ganancia 248 antes de la aplicacion en el ajustador de envolvente 234. En esta unidad de ajuste de ganancia 248 se calcula un valor de ganancia para ajustar los factores de escala y se aplica para compensar grandes diferencias de energfa en el borde entre la porcion de baja frecuencia y el contenido de alta frecuencia de la senal.Thus, on the decoder side, the following processing can be carried out. In active frames or during active phases, regular spectral band replication processing can be applied. During these periods, the scale factors from the data stream, which are typically available for a larger number of scale factor bands compared to comfort noise generation processing, are converted to the frequency generation resolution of comfort noise by the scale factor combiner 242. The scale factor combiner combines the scale factors for the highest frequency resolution to result in a number of CNG compliant scale factors taking advantage of common frequency band edges of The different frequency band tables. The resulting scale factor values at the output of the scale factor combination unit 242 are stored for reuse in zero frames and subsequent reproduction by the recuperator 252 and are subsequently used to update the filter unit 246 for the cNg mode of operation. . In the SID tables, a modified SBR data sequence reader is applied which extracts the scale factor information from the data sequence. The remaining configuration of the SBR processing is initialized with predefined values, the time / frequency grid is initialized to the same time / frequency resolution used in the encoder. Extracted scale factors are fed to the filter unit 246 where, for example, a smoothing filter IIR interpolates the progression of energy for a low resolution scale factor band over time. In the case of zero frames, there is no payload to read from the series of bits in time and the SBR configuration that includes the time / frequency grid is the same as that used in the SID boxes. In zero frames, the smoothing filters of the filter unit 246 are fed with a scale factor value delivered from the scale factor combination unit 242 that have been stored in the last frame containing information of valid scale factors. In the case that the current frame is classified as an inactive frame or SID frame, the comfort noise is generated in the TCX domain and is transformed back to the time domain. Subsequently, the time domain signal containing the comfort noise is fed to the analysis filter bank QMF 230 of module SBR 224. In the QMF domain, the bandwidth extension of the comfort noise is performed by means of Copy-up transposition within the HF 232 generator and finally the spectral envelope of the artificially created high frequency part is adjusted by applying information of energy scale factors in envelope adjuster 234. These energy scale factors they are obtained by the output of the filter unit 246 and are scaled by the gain adjustment unit 248 before application in the envelope adjuster 234. In this gain adjustment unit 248 a gain value is calculated to adjust the scale factors and applied to compensate for large differences in energy at the edge between the low frequency portion and the high frequency content of l to signal.
Las realizaciones descritas arriba se usan en comun en las Figuras 12 y 13. La Figura 12 muestra un codificador de audio de acuerdo con una realizacion de comparacion, y la Figura 13 muestra una realizacion de un decodificador de audio. Los detalles revelados con respecto a estas figuras se aplican igual a los elementos mencionados previamente en forma individual.The embodiments described above are used in common in Figures 12 and 13. Figure 12 shows an audio encoder according to a comparison embodiment, and Figure 13 shows an embodiment of an audio decoder. The details revealed with respect to these figures apply equally to the previously mentioned elements individually.
El codificador de audio de la Figura 12 comprende un banco de filtros de analisis QMF 200 para descomponer espectralmente una senal de audio de entrada. Un detector 270 y un estimador de ruido 262 estan conectados a una salida del banco de filtros de analisis QMF 200. El estimador de ruido 262 asume la responsabilidad de la funcionalidad del estimador de ruido de fondo 12. Durante las fases activas, los espectros QMF provenientes delThe audio encoder of Figure 12 comprises a bank of QMF 200 analysis filters to spectrally decompose an input audio signal. A detector 270 and a noise estimator 262 are connected to an output of the QMF analysis filter bank 200. The noise estimator 262 assumes responsibility for the functionality of the background noise estimator 12. During the active phases, the QMF spectra coming from
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
banco de filtros de analisis QMF son procesador por una conexion en paralelo de un estimador de parametros de replicacion de banda espectral 260 seguido por algun codificador SBR 264 por un lado, y una concatenacion de una banco de filtros de smtesis QMF 272 seguido por un codificador por nucleo 14 por el otro lado. Ambos caminos paralelos se conectan a una respectiva salida del empaquetador de serie de bits en el tiempo 266. En el caso de cuadros SID salientes, el codificador de cuadro SID 274 recibe los datos desde el estimador de ruido 262 y entrega los cuadros SID al empaquetador de serie de bits en el tiempo 266.QMF analysis filter bank are processor by a parallel connection of an estimator of spectral band replication parameters 260 followed by some SBR 264 encoder on the one hand, and a concatenation of a QMF 272 synthesis filter bank followed by an encoder by core 14 on the other side. Both parallel paths are connected to a respective output of the serial bit packer at time 266. In the case of outgoing SID frames, the SID frame encoder 274 receives the data from the noise estimator 262 and delivers the SID frames to the packer Serial bit time 266.
Los datos de extension de ancho de banda espectral entregados por el estimador 260 describen la envolvente espectral de la porcion de alta frecuencia del espectrograma o espectro entregado por el banco de filtros de analisis QMF 200, los cuales luego son codificados, tal como mediante codificacion por entropfa, por el codificador SBR 264. El multiplexador de secuencia de datos 266 inserta los datos de extension de ancho de banda espectral de fases activas en la secuencia de datos entregada en una salida 268 del multiplexador 266.The spectral bandwidth extension data delivered by estimator 260 describes the spectral envelope of the high frequency portion of the spectrogram or spectrum delivered by the QMF 200 analysis filter bank, which are then encoded, such as by coding by Entropy, by the SBR encoder 264. The data sequence multiplexer 266 inserts the spectral bandwidth extension data of active phases into the data sequence delivered at an output 268 of the multiplexer 266.
El detector 270 detecta si actualmente esta activa una fase activa o inactiva. En base a esta deteccion, un cuadro activo, un cuadro SID o un cuadro cero, esto cuadro inactivo, se ha de entregar actualmente. En otras palabras, el modulo 270 decide si una fase activa o una fase inactiva esta activa y si la fase inactiva esta activa, si se ha de entregar o no un cuadro SID. Las decisiones estan indicadas en la Figura 12 usando I para cuadros cero, A para cuadros activos, y S para cuadros SID. Los cuadros que corresponden a intervalos de tiempo de la senal de entrada donde la fase activa esta presente, tambien son remitidos a la concatenacion del banco de filtros de smtesis QMF 272 y al codificador por nucleo 14. El banco de filtros de smtesis QMF 272 tiene una resolucion de menor frecuencia u opera a un menor numero de sub-bandas QMF cuando se compara con el banco de filtros de analisis QMF 200 de modo de lograr por medio del cociente de numero de sub-bandas una reduccion de la tasa de muestreo para transferir las porciones de cuadro activas de la senal de entrada al dominio del tiempo nuevamente. En particular, el banco de filtros de smtesis QMF 272 es aplicado a las porciones de menor frecuencia o sub-bandas de menor frecuencia del espectrograma de banco de filtros de analisis QMF dentro de los cuadros activos. El codificador por nucleo 14 recibe asf una version de tasa de muestreo reducida de la senal de entrada, la cual convierte asf meramente una porcion de menor frecuencia de la senal de entrada original ingresada al banco de filtros de analisis QMF 200. La restante porcion de frecuencia mas alta es codificada parametricamente por los modulos 260 y 264.Detector 270 detects whether an active or inactive phase is currently active. Based on this detection, an active frame, an SID frame or a zero frame, this inactive frame, is currently to be delivered. In other words, module 270 decides whether an active phase or an inactive phase is active and if the inactive phase is active, whether or not an SID box is to be delivered. The decisions are indicated in Figure 12 using I for zero frames, A for active frames, and S for SID frames. The tables corresponding to time intervals of the input signal where the active phase is present are also sent to the concatenation of the QMF 272 filter bank and the core 14 encoder. The QMF 272 filter bank has a lower frequency resolution or operates at a lower number of QMF subbands when compared to the QMF 200 analysis filter bank so as to achieve a reduction in the sampling rate by means of the number of subbands transfer the active frame portions of the input signal to the time domain again. In particular, the QMF 272 synthesis filter bank is applied to the lower frequency portions or lower frequency subbands of the QMF analysis filter bank spectrogram within the active frames. The coder per core 14 thus receives a reduced sampling rate version of the input signal, which thus converts merely a lower frequency portion of the original input signal entered into the QMF 200 analysis filter bank. The remaining portion of the Higher frequency is parameterically coded by modules 260 and 264.
Los cuadros SID (o, para ser mas precisos, la informacion a ser llevada por los mismos) son remitidos al codificador SID 274 el cual asume la responsabilidad de las funcionalidades del modulo 152 de la Figura 5, por ejemplo. La unica diferencia: el modulo 262 opera sobre el espectro de la senal de entrada directamente — sin correccion por LPC. Asimismo, como se usa el filtrado de analisis QMF, la operacion del modulo 262 es independiente del modo de cuadro elegido por el codificador por nucleo o la opcion de extension de ancho de banda espectral que se aplique o no. Las funcionalidades del modulo 148 y 150 de la Figura 5 pueden ser implementadas dentro del modulo 274.The SID tables (or, to be more precise, the information to be carried by them) are sent to the SID 274 encoder which assumes responsibility for the functionalities of module 152 of Figure 5, for example. The only difference: module 262 operates on the spectrum of the input signal directly - without correction by LPC. Also, as the QMF analysis filtering is used, the operation of module 262 is independent of the frame mode chosen by the coder per core or the spectral bandwidth extension option that is applied or not. The functionalities of module 148 and 150 of Figure 5 can be implemented within module 274.
El multiplexador 266 multiplexa la respectiva informacion codificada formando la secuencia de datos en la salida 268.The multiplexer 266 multiplexes the respective encoded information forming the data sequence at the output 268.
El decodificador de audio de la Figura 13 puede operar sobre una secuencia de datos como la entregada por el codificador de la Figura 12. Eso es, un modulo 280 esta configurado para recibir la secuencia de datos y para clasificar los cuadros dentro de la secuencia de datos en cuadros activos, cuadros SID y cuadros cero, esto es, una carencia de cuadro en la secuencia de datos, por ejemplo. Los cuadros activos son remitidos a una concatenacion de un decodificador por nucleo 92, un banco de filtros de analisis QMF 282 y un modulo de extension de ancho de banda espectral 284. Opcionalmente, un estimador de ruido 286 esta conectado a la salida del banco de filtros de analisis QMF. El estimador de ruido 286 puede operar en forma similar, y puede asumir la responsabilidad de las funcionalidades de, el estimador de ruido de fondo 90 de la Figura 3, por ejemplo, con la excepcion de que el estimador de ruido opera sobre el espectro no corregido en lugar de sobre los espectros de excitacion. La concatenacion de modulos 92, 282 y 284 se conecta a una entrada del banco de filtros de smtesis QMF 288. Los cuadros SID son remitidos a un decodificador de cuadros SID 290 el cual asume la responsabilidad de la funcionalidad del generador de ruido de fondo 96 de la Figura 3, por ejemplo. Un actualizador de parametros de generacion de ruido de comodidad 292 es alimentado por la informacion proveniente del decodificador 290 y el estimador de ruido 286 con este actualizador 292 que gobierna el generador aleatorio 294 el cual asume la responsabilidad de la funcionalidad de los generadores aleatorios parametricos de la Figura 3. Como faltan cuadros inactivos o cero, no tiene que ser remitidos a ningun lado, pero ellos disparan otro ciclo de generacion aleatoria del generador aleatorio 294. La salida del generador aleatorio 294 esta conectada al banco de filtros de smtesis QMF 288, la salida del cual revela la senal de audio reconstruida en silencio y fases activas en el dominio del tiempo.The audio decoder of Figure 13 can operate on a sequence of data such as that delivered by the encoder of Figure 12. That is, a module 280 is configured to receive the sequence of data and to classify the frames within the sequence of data in active boxes, SID boxes and zero boxes, that is, a lack of frame in the data stream, for example. The active frames are sent to a concatenation of a decoder per core 92, a bank of QMF analysis filters 282 and an extension module of spectral bandwidth 284. Optionally, a noise estimator 286 is connected to the output of the bank of QMF analysis filters. The noise estimator 286 may operate in a similar manner, and may assume responsibility for the functionalities of the background noise estimator 90 of Figure 3, for example, with the exception that the noise estimator operates on the non-spectrum corrected instead of over excitation spectra. The concatenation of modules 92, 282 and 284 is connected to an input of the QMF 288 synthesis filter bank. The SID frames are sent to a SID 290 frame decoder which assumes responsibility for the functionality of the background noise generator 96 of Figure 3, for example. A comfort noise generation parameter updater 292 is fed by the information from the decoder 290 and the noise estimator 286 with this updater 292 that governs the random generator 294 which assumes responsibility for the functionality of the parametric random generators of Figure 3. As inactive or zero frames are missing, it does not have to be sent anywhere, but they trigger another random generation cycle of the random generator 294. The output of the random generator 294 is connected to the QMF 288 synthesis filter bank, the output of which reveals the audio signal reconstructed in silence and active phases in the time domain.
Asf, durante las fases activas, el decodificador por nucleo 92 reconstruye la porcion de baja frecuencia de la senal de audio incluyendo tanto ruido como componentes de senal utiles. El banco de filtros de analisis QMF 282 descompone espectralmente la senal reconstruida y el modulo de extension de ancho de banda espectral 284 usa la informacion de extension de ancho de banda espectral dentro de la secuencia de datos y cuadros activos, respectivamente, para agregar la porcion de alta frecuencia. El estimador de ruido 286, si esta presente, realiza la estimacion de ruido basado en una porcion de espectro segun lo reconstruido por el decodificador por nucleo, esto es, la porcion de baja frecuencia. En las fases inactivas, los cuadros SID llevan informacion que describeThus, during active phases, the decoder per core 92 reconstructs the low frequency portion of the audio signal including both noise and useful signal components. The QMF analysis filter bank 282 spectrally decomposes the reconstructed signal and the spectral bandwidth extension module 284 uses the spectral bandwidth extension information within the sequence of data and active frames, respectively, to add the portion high frequency The noise estimator 286, if present, performs noise estimation based on a spectrum portion as reconstructed by the decoder per core, that is, the low frequency portion. In the inactive phases, the SID tables carry information that describes
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
parametricamente la estimacion de ruido de fondo derivada por la estimacion de ruido 262 en el lado del codificador. El actualizador de parametros 292 puede usar principalmente la informacion del codificador para actualizar su estimacion de ruido de fondo parametrica, usando la informacion provista por el estimador de ruido 286 principalmente como una posicion de soporte de informacion para caso de perdida de transmision concerniente a cuadros SID. El banco de filtros de smtesis QMF 288 convierte la senal espectralmente descompuesta como salida mediante el modulo de replicacion de banda espectral 284 en fases activas y el espectro de senal generada de ruido de comodidad en el dominio del tiempo. Asf, las Figuras 12 y 13 ponen en claro que se puede usar un marco de trabajo de banco de filtros QMF como una base para generacion de ruido de comodidad basado en QMF. El marco de trabajo QMF provee una manera conveniente para reducir la tasa de muestreo de la senal de entrada a la tasa de muestreo del codificador por nucleo, para aumentar la tasa de muestreo de la senal de salida del codificador por nucleo del decodificador por nucleo 92 en el lado del decodificador usando el banco de filtros de smtesis QMF 288. Al mismo tiempo, el marco de trabajo QMF tambien puede ser usado en combinacion con extension de ancho de banda para extraer y procesar los componentes de alta frecuencia de la senal los cuales son postergados por los modulos de codificador por nucleo y decodificador por nucleo 14 y 92. Consiguientemente, el banco de filtros QMF puede ofrecer un marco de trabajo comun para diversas herramientas de procesamiento de senal. De acuerdo con las Figuras 12 y 13, la generacion de ruido de comodidad se incluye exitosamente dentro de este marco de trabajo.parametrically the background noise estimate derived by the noise estimate 262 on the encoder side. Parameter updater 292 can mainly use the encoder information to update its estimation of parametric background noise, using the information provided by the noise estimator 286 primarily as an information support position in case of transmission loss relative to SID frames. . The QMF 288 synthesis filter bank converts the spectrally decomposed signal as output by means of the spectral band replication module 284 in active phases and the signal spectrum generated from comfort noise in the time domain. Thus, Figures 12 and 13 make it clear that a QMF filter bank framework can be used as a basis for comfort noise generation based on QMF. The QMF framework provides a convenient way to reduce the sampling rate of the input signal to the sampling rate of the coder per core, to increase the sampling rate of the output signal of the coder per core of the decoder per core 92 on the decoder side using the QMF 288 synthesis filter bank. At the same time, the QMF framework can also be used in combination with bandwidth extension to extract and process the high frequency components of the signal which they are postponed by the core encoder and core decoder modules 14 and 92. Consequently, the QMF filter bank can offer a common framework for various signal processing tools. According to Figures 12 and 13, the generation of comfort noise is successfully included within this framework.
En particular, de acuerdo con las Figuras 12 y 13, se puede ver que es posible generar ruido de comodidad en el lado del decodificador despues del analisis QMF, pero antes de la smtesis QMF aplicando un generador aleatorio 294 para excitar las partes real e imaginaria de cada coeficiente QMF del banco de filtros de smtesis QMF 288, por ejemplo. La amplitud de las secuencias aleatorias, por ejemplo, son computadas individualmente en cada banda QMF tal que el espectro del ruido de comodidad generado se parezca al espectro de la senal de ruido de fondo de entrada real. Esto se puede lograr en cada banda QMF usando un estimador de ruido despues del analisis QMF en el lado de codificacion. Estos parametros entonces pueden ser transmitidos a traves de los cuadros SID para actualizar la amplitud de las secuencias aleatorias aplicada en cada banda QMF en el lado del decodificador.In particular, according to Figures 12 and 13, it can be seen that it is possible to generate comfort noise on the decoder side after the QMF analysis, but before the QMF synthesis by applying a random generator 294 to excite the real and imaginary parts of each QMF coefficient of the QMF 288 synthesis filter bank, for example. The amplitude of the random sequences, for example, are computed individually in each QMF band such that the spectrum of the generated comfort noise resembles the spectrum of the actual input background noise signal. This can be achieved in each QMF band using a noise estimator after the QMF analysis on the coding side. These parameters can then be transmitted through the SID frames to update the amplitude of the random sequences applied in each QMF band on the decoder side.
Idealmente, notar que la estimacion de ruido 262 aplicada en el lado del codificador debe poder operar tanto durante penodos inactivos (esto es, solo ruido) como activos (que tipicamente contienen voz ruidos) de modo que los parametros de ruido de comodidad puedan ser actualizados inmediatamente al final de cada penodo activo. Ademas, la estimacion de ruido podna ser usada tambien del lado del decodificador. Como se descartan los cuadros de solo ruido en un sistema de codificacion/decodificacion basado en DTX, la estimacion de ruido en el lado del decodificador puede, favorablemente, operar sobre contenidos de voz ruidosos. La ventaja de realizar la estimacion de ruido en el lado de decodificador, ademas de en el lado de codificador, es que la forma espectral del ruido de comodidad puede ser actualizada incluso cuando la transmision de paquete desde el codificador al decodificador falla para el(los) primer(os) cuadro(s) SID siguientes a un penodo de actividad.Ideally, note that the noise estimate 262 applied on the encoder side should be able to operate both during inactive periods (that is, only noise) and active (which typically contain voice noises) so that comfort noise parameters can be updated immediately at the end of each active period. In addition, noise estimation could also be used on the decoder side. Since only noise frames are discarded in a coding / decoding system based on DTX, noise estimation on the decoder side can favorably operate on noisy voice contents. The advantage of performing noise estimation on the decoder side, in addition to the encoder side, is that the spectral form of comfort noise can be updated even when the packet transmission from the encoder to the decoder fails for the (the ) first SID table (s) following a period of activity.
La estimacion de ruido debe poder seguir, precisa y rapidamente, variaciones del contenido espectral del ruido de fondo e idealmente lo debe poder realizar durante ambos, cuadros, activo e inactivo, como se expreso arriba. Una manera de lograr estos objetivos es rastrear los mmimos tomados en cada banda por el espectro de potencia usando una venta deslizante de longitud finita, como se propone en [R. Martin, Estimacion de Densidad Espectral de Potencia de Ruido Basada en Alisamiento Optimo y Estadfstica de Mmimos (Noise Power Spectral Density Estimation Based on Optimal Smoothing and Minimum Statistics), 2001]. La idea detras de esto es que la potencia de un espectro de voz ruidosa frecuentemente decae a la potencia del ruido de fondo, por ejemplo, entre palabras o sflabas. Rastrear el mmimo del espectro de potencia, por lo tanto, provee una estimacion del piso de ruido en cada banda, incluso durante actividad de voz. Sin embargo, estos pisos de ruido son subestimados en general. Asimismo, ellos no permiten capturar rapidas fluctuaciones de las potencias espectrales, especialmente repentinos incrementos de energfa.The noise estimation should be able to follow, precisely and quickly, variations of the spectral content of the background noise and ideally it should be able to be carried out during both frames, active and inactive, as expressed above. One way to achieve these objectives is to track the millimeters taken in each band by the power spectrum using a sliding sale of finite length, as proposed in [R. Martin, Noise Power Spectral Density Estimation Based on Optimal Smoothing and Minimum Statistics), 2001]. The idea behind this is that the power of a loud voice spectrum often decays to the power of the background noise, for example, between words or syllables. Tracking the minimum of the power spectrum, therefore, provides an estimate of the noise floor in each band, even during voice activity. However, these noise floors are generally underestimated. Likewise, they do not allow to capture rapid fluctuations of the spectral powers, especially sudden increases in energy.
De todos modos, el piso de ruido computado como se describe arriba en cada banda provee informacion lateral muy util para aplicar una segunda etapa de estimacion de ruido. De hecho, podemos esperar que la potencia de un espectro ruidoso este cerca del piso de ruido estimado durante inactividad, mientras que la potencia espectral estara muy por arriba del piso de ruido durante la actividad. Los pisos de ruido computados separadamente en cada banda pueden ser usados entonces como detectores groseros de actividad para cada banda. En base a este conocimiento, se puede estimar facilmente la potencia de ruido de fondo como una version recursivamente alisada del espectro de potencia como sigue:However, the computed noise floor as described above in each band provides very useful lateral information for applying a second stage of noise estimation. In fact, we can expect that the power of a noisy spectrum is close to the estimated noise floor during inactivity, while the spectral power will be well above the noise floor during activity. Noise floors computed separately in each band can then be used as gross activity detectors for each band. Based on this knowledge, the background noise power can be easily estimated as a recursively smoothed version of the power spectrum as follows:
donde ^ uiV2(mJwhere ^ uiV2 (mJ
l(mJl (mJ
denota la densidad espectral de potencia de la senal de entrada en el cuadro m y banda ^denotes the spectral power density of the input signal in frame m and band ^
refiere a la estimacion de potencia de ruido, yJrefers to the estimation of noise power, and J
es un factor de olvido (necesariamente entre 0 yIt is a forgetting factor (necessarily between 0 and
1) que controla la magnitud del alisamiento para cada banda y cada cuadro separadamente. Usar la informacion de piso de ruido para reflejar el estado de actividad, debe tomar un pequeno valor durante penodos inactivos (esto es, cuando el espectro de potencia esta cerca del piso de ruido), mientras se debe elegir un valor alto para aplicar mas1) which controls the magnitude of smoothing for each band and each frame separately. Using the noise floor information to reflect the state of activity, it should take a small value during inactive periods (that is, when the power spectrum is close to the noise floor), while a high value must be chosen to apply more
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
l(mJl (mJ
alisamiento (idealmente manteniendo J'1' '■"‘’"'S constante) durante cuadros activos. Para lograr esto se puede tomar una decision debil calculando los factores de olvido como sigue:smoothing (ideally keeping J'1 '' ■ "‘ ’" S constant) during active frames. To achieve this, a weak decision can be made by calculating the forgetting factors as follows:
= i _ e Wr'tWf)= i _ e Wr'tWf)
donde 0flF es la potencia de piso de ruido y a es un parametro de control. Un valor mas alto para a da por resultado factores de olvido mas grandes y por ende mas alisamiento global.where 0flF is the noise floor power and a is a control parameter. A higher value for a results in larger forgetting factors and therefore more overall smoothing.
Asf, se ha descrito un concepto de Generacion de Ruido de Comodidad (CNG) donde se produce ruido artificial en el lado del decodificador en un dominio de transformada. Las realizaciones de arriba pueden ser aplicadas en combinacion con virtualmente cualquier tipo de herramienta de analisis espectro—temporal (esto es, una transformacion o un banco de filtros) que descompone una senal del dominio del tiempo en multiples bandas espectrales.Thus, a concept of Comfort Noise Generation (CNG) has been described where artificial noise is produced on the decoder side in a transform domain. The above embodiments can be applied in combination with virtually any type of spectrum-temporal analysis tool (that is, a transformation or a bank of filters) that breaks down a time domain signal into multiple spectral bands.
Por ende, las realizaciones de arriba, inter alias, describieron un CNG basado en TCX donde un generador de ruido de comodidad emplea pulsos aleatorio para modelar lo residual.Thus, the above, inter alias, embodiments described a CNG based on TCX where a comfort noise generator employs random pulses to model the residual.
A pesar de que se han descrito algunos aspectos en el contexto de un aparato, es claro que estos aspectos tambien representan una descripcion del metodo correspondiente, donde un bloque o dispositivo corresponde a una etapa de metodo o a una caractenstica de una etapa de metodo. Analogamente, los aspectos descritos en el contexto de una etapa de metodo tambien representan una descripcion de un correspondiente bloque o componente o caractenstica de un correspondiente aparato. Algunos o todas las etapas de metodo pueden ser ejecutadas por (o usando) un aparato de hardware, como por ejemplo, un microprocesador, un ordenador programable o un circuito electronico. En algunas realizaciones, alguno o mas de los pasos de metodo mas importantes pueden ser ejecutados mediante un aparato tal.Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method stage or a characteristic of a method stage. Similarly, the aspects described in the context of a method step also represent a description of a corresponding block or component or feature of a corresponding apparatus. Some or all of the method steps can be executed by (or using) a hardware device, such as a microprocessor, a programmable computer or an electronic circuit. In some embodiments, some or more of the most important method steps can be performed by such an apparatus.
Dependiendo de ciertos requerimientos de implementacion, las realizaciones de la invencion pueden ser implementadas en hardware o en software. La implementacion puede ser realizada usando un medio de almacenamiento digital, por ejemplo, un disco flexible, un DVD, un CD, un Blu—Ray, una memoria de solo lectura (ROM), una PROM, una EPROM, una EEPROM o una memoria FLASH, teniendo senales de control legibles electronicamente almacenadas en las mismas, las cuales cooperan (o son capaces de cooperar) con un sistema de ordenador programable tal que se ejecute el respectivo metodo. Por lo tanto, el medio de almacenamiento digital puede ser legible por ordenador.Depending on certain implementation requirements, embodiments of the invention can be implemented in hardware or software. The implementation can be performed using a digital storage medium, for example, a floppy disk, a DVD, a CD, a Blu-Ray, a read-only memory (ROM), a PROM, an EPROM, an EEPROM or a memory FLASH, having electronically readable control signals stored therein, which cooperate (or are able to cooperate) with a programmable computer system such that the respective method is executed. Therefore, the digital storage medium can be computer readable.
Algunas realizaciones de acuerdo con la invencion comprenden un portador de datos que tiene senales de control legibles electronicamente, las cuales son capaces de cooperar con un sistema de ordenador programable, tal que uno de los metodos descritos en la presente sea ejecutado.Some embodiments according to the invention comprise a data carrier that has electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is executed.
Generalmente, realizaciones de la presente invencion pueden ser implementadas como un producto de programa de ordenador con un codigo de programa, siendo codigo de programa operativo para ejecutar uno de los metodos cuando el producto de programa de ordenador se ejecuta en un ordenador. El codigo de programa puede ser almacenado, por ejemplo, sobre un portador legible por una maquina.Generally, embodiments of the present invention can be implemented as a computer program product with a program code, the operating program code being used to execute one of the methods when the computer program product is run on a computer. The program code can be stored, for example, on a carrier readable by a machine.
Otras realizaciones comprenden el programa de ordenador para ejecutar uno de los metodos descritos en la presente, almacenado en un portador legible por una maquina.Other embodiments comprise the computer program for executing one of the methods described herein, stored in a carrier readable by a machine.
En otras palabras, una realizacion del metodo inventivo es, por lo tanto, un programa de ordenador con un codigo de programa para ejecutar uno de los metodos descritos en la presente, cuando el programa de ordenador se ejecuta en un ordenador.In other words, an embodiment of the inventive method is, therefore, a computer program with a program code to execute one of the methods described herein, when the computer program is run on a computer.
Una realizacion adicional de los metodos inventivos es, por lo tanto, un portador de datos (o un medio de almacenamiento digital, o un medio legible por ordenador) que comprende, grabado en el mismo, el programa de ordenador para ejecutar uno de los metodos descritos en la presente. El portador de datos, el medio de almacenamiento digital o el medio de registro tipicamente son tangibles y/o no transitorios.A further embodiment of the inventive methods is, therefore, a data carrier (or a digital storage medium, or a computer readable medium) comprising, recorded therein, the computer program for executing one of the methods described herein. The data carrier, the digital storage medium or the recording medium are typically tangible and / or non-transient.
Una realizacion adicional del metodo inventivo es, por lo tanto, un flujo de datos o una secuencia de senales que representan el programa de ordenador para ejecutar uno de los metodos descritos en la presente. El flujo de datos o la secuencia de senales pueden ser configurados, por ejemplo, para ser transferidos via una conexion de comunicacion de datos, por ejemplo, via Internet.A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for executing one of the methods described herein. The data stream or the signal sequence can be configured, for example, to be transferred via a data communication connection, for example, via the Internet.
Una realizacion adicional comprende un medio de procesamiento, por ejemplo, un ordenador, o un dispositivo logico programable, configurado para o adaptado para ejecutar uno de los metodos descritos en la presente.A further embodiment comprises a processing means, for example, a computer, or a programmable logic device, configured for or adapted to execute one of the methods described herein.
Una realizacion adicional comprende un ordenador que tiene instalado en el el programa de ordenador para ejecutar 5 uno de los metodos descritos aqm.A further embodiment comprises a computer that has one of the methods described here installed in the computer program.
Otra realizacion de acuerdo con la invencion comprende un aparato o un sistema configurado para transferir (por ejemplo, electronicamente u opticamente) un programa de ordenador para ejecutar uno de los metodos descritos aqm, a un receptor. El receptor puede ser, por ejemplo, un ordenador, un dispositivo movil, un dispositivo de 10 memoria o similar. El aparato o sistema puede comprender, por ejemplo, un servidor de archivos para transferir el programa de ordenador al receptor.Another embodiment according to the invention comprises an apparatus or a system configured to transfer (for example, electronically or optically) a computer program to execute one of the methods described here, to a receiver. The receiver can be, for example, a computer, a mobile device, a memory device or the like. The apparatus or system may comprise, for example, a file server to transfer the computer program to the receiver.
En algunas realizaciones se puede usar un dispositivo de logica programable (por ejemplo un arreglo de compuesta programable de campo) para realizar algunas o todas las funcionalidades de los metodos descritos en la presente. 15 En algunas realizaciones, el arreglo de compuerta programable de campo puede cooperar con un microprocesador para realizar uno de los metodos descritos en la presente. Generalmente, los metodos preferiblemente son realizados mediante algun aparato de hardware.In some embodiments, a programmable logic device (for example a field programmable composite arrangement) can be used to perform some or all of the functionalities of the methods described herein. In some embodiments, the field programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. Generally, the methods are preferably performed by some hardware apparatus.
Las realizaciones que se describieron mas arriba son puramente ilustrativas para los principios de la presente 20 invencion. Se entiende que las modificaciones y variaciones posibles de las disposiciones y de los detalles descritos en la presente seran evidentes para los expertos en la materia. Por lo tanto, es la intencion que la invencion este limitada solo por el alcance de las siguientes reivindicaciones de patente y no por los detalles espedficos presentados por la descripcion y la explicacion de las realizaciones en la presente.The embodiments described above are purely illustrative for the principles of the present invention. It is understood that the possible modifications and variations of the provisions and details described herein will be apparent to those skilled in the art. Therefore, it is the intention that the invention is limited only by the scope of the following patent claims and not by the specific details presented by the description and explanation of the embodiments herein.
Claims (10)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161442632P | 2011-02-14 | 2011-02-14 | |
US201161442632P | 2011-02-14 | ||
EP12706002.8A EP2676264B1 (en) | 2011-02-14 | 2012-02-14 | Audio encoder estimating background noise during active phases |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2588483T3 true ES2588483T3 (en) | 2016-11-03 |
Family
ID=71947407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14196262.1T Active ES2588483T3 (en) | 2011-02-14 | 2012-02-14 | Audio decoder comprising a background noise estimator |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2866228B1 (en) |
ES (1) | ES2588483T3 (en) |
PL (1) | PL2866228T3 (en) |
PT (1) | PT2866228T (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11340863B2 (en) | 2019-03-29 | 2022-05-24 | Tata Consultancy Services Limited | Systems and methods for muting audio information in multimedia files and retrieval thereof |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3324406A1 (en) * | 2016-11-17 | 2018-05-23 | Fraunhofer Gesellschaft zur Förderung der Angewand | Apparatus and method for decomposing an audio signal using a variable threshold |
CN110648680B (en) * | 2019-09-23 | 2024-05-14 | 腾讯科技(深圳)有限公司 | Voice data processing method and device, electronic equipment and readable storage medium |
GB2596138A (en) * | 2020-06-19 | 2021-12-22 | Nokia Technologies Oy | Decoder spatial comfort noise generation for discontinuous transmission operation |
CN116320176B (en) * | 2023-05-16 | 2023-08-15 | 泰坦(天津)能源技术有限公司 | Processing method and system for improving underground voice recognition accuracy |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960389A (en) * | 1996-11-15 | 1999-09-28 | Nokia Mobile Phones Limited | Methods for generating comfort noise during discontinuous transmission |
US20030120484A1 (en) * | 2001-06-12 | 2003-06-26 | David Wong | Method and system for generating colored comfort noise in the absence of silence insertion description packets |
US7649988B2 (en) * | 2004-06-15 | 2010-01-19 | Acoustic Technologies, Inc. | Comfort noise generator using modified Doblinger noise estimate |
US7610197B2 (en) * | 2005-08-31 | 2009-10-27 | Motorola, Inc. | Method and apparatus for comfort noise generation in speech communication systems |
-
2012
- 2012-02-14 ES ES14196262.1T patent/ES2588483T3/en active Active
- 2012-02-14 PL PL14196262.1T patent/PL2866228T3/en unknown
- 2012-02-14 PT PT141962621T patent/PT2866228T/en unknown
- 2012-02-14 EP EP14196262.1A patent/EP2866228B1/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11340863B2 (en) | 2019-03-29 | 2022-05-24 | Tata Consultancy Services Limited | Systems and methods for muting audio information in multimedia files and retrieval thereof |
Also Published As
Publication number | Publication date |
---|---|
EP2866228A1 (en) | 2015-04-29 |
PT2866228T (en) | 2016-08-31 |
PL2866228T3 (en) | 2016-11-30 |
EP2866228B1 (en) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2535609T3 (en) | Audio encoder with background noise estimation during active phases | |
ES2681429T3 (en) | Noise generation in audio codecs | |
BR112013020592B1 (en) | AUDIO CODEC USING NOISE SYNTHESIS DURING INACTIVE PHASES | |
ES2588483T3 (en) | Audio decoder comprising a background noise estimator | |
CN105264596B (en) | The noise filling without side information for Code Excited Linear Prediction class encoder | |
CN106575505A (en) | Frame loss management in an fd/lpd transition context | |
AU2012217161B9 (en) | Audio codec using noise synthesis during inactive phases |