FR2888704A1 - - Google Patents
Download PDFInfo
- Publication number
- FR2888704A1 FR2888704A1 FR0507471A FR0507471A FR2888704A1 FR 2888704 A1 FR2888704 A1 FR 2888704A1 FR 0507471 A FR0507471 A FR 0507471A FR 0507471 A FR0507471 A FR 0507471A FR 2888704 A1 FR2888704 A1 FR 2888704A1
- Authority
- FR
- France
- Prior art keywords
- echo
- signal
- current frame
- predictive
- decoded
- 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.)
- Pending
Links
- 238000002592 echocardiography Methods 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 64
- 230000005236 sound signal Effects 0.000 claims abstract description 46
- 230000002123 temporal effect Effects 0.000 claims abstract description 15
- 230000002238 attenuated effect Effects 0.000 claims abstract description 10
- 230000003595 spectral effect Effects 0.000 claims description 60
- 238000004364 calculation method Methods 0.000 claims description 43
- 230000011664 signaling Effects 0.000 claims description 22
- 230000009466 transformation Effects 0.000 claims description 20
- 238000001914 filtration Methods 0.000 claims description 17
- 238000011084 recovery Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 230000017105 transposition Effects 0.000 claims description 5
- 230000003111 delayed effect Effects 0.000 claims description 4
- 230000002401 inhibitory effect Effects 0.000 claims description 2
- 230000002441 reversible effect Effects 0.000 claims description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 claims 1
- 230000004913 activation Effects 0.000 claims 1
- 230000001131 transforming effect Effects 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 39
- 230000004044 response Effects 0.000 description 30
- 230000007704 transition Effects 0.000 description 30
- 230000008569 process Effects 0.000 description 20
- 239000010410 layer Substances 0.000 description 12
- 238000013139 quantization Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000000670 limiting effect Effects 0.000 description 8
- 230000009467 reduction Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000012850 discrimination method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000005764 inhibitory process Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 241001362574 Decodes Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- MOXZPMYMMBOUJY-UHFFFAOYSA-N n-[2-(2-aminoethylsulfanyl)ethyl]-5-(dimethylamino)naphthalene-1-sulfonamide Chemical compound C1=CC=C2C(N(C)C)=CC=CC2=C1S(=O)(=O)NCCSCCN MOXZPMYMMBOUJY-UHFFFAOYSA-N 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000009527 percussion Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 229910052717 sulfur Inorganic materials 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000011144 upstream manufacturing 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/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
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
L'invention concerne un procédé de discrimination et atténuation des échos d'un signal audionumérique engendré par codage hiérarchique multicouches à partir d'un codage par transformée, générateur d'échos, et d'un codage prédictif, non générateur d'échos, consistant au moins au décodage, pour chaque trame courante du signal audionumérique, à comparer (A), en temps réel, la valeur du rapport d'une représentation de l'enveloppe temporelle du signal issu d'un décodage générateur d'écho à celle du signal issu d'un décodage non générateur d'échos ; et, si la valeur dudit rapport est supérieure ou égale à une valeur de seuil, conclure (B) à l'existence d'un écho issu du codage par transformée dans la trame courante ; sinon, si la valeur du rapport est inférieur à ladite valeur de seuil, conclure (C) à la non existence d'un écho issu du codage par transformée dans la trame courante, à atténuer (D), conditionnellement à l'existence d'écho, les signaux issus du décodage par transformée générateur d'écho afin de réduire l'audibilité des échos.Application à la mise en oeuvre de dispositifs d'atténuation des échos d'un signal audionumérique et de codeurs hiérarchiques incorporant de tels dispositifs.Disclosed is a method for discriminating and attenuating echoes of a multi-layered hierarchical encoded digital audio signal from transform coding, echo generator, and predictive, non-echo generator coding, comprising: at least at decoding, for each current frame of the digital audio signal, to compare (A), in real time, the value of the ratio of a representation of the temporal envelope of the signal resulting from an echo generator decoding to that of the signal from non-echo generator decoding; and if the value of said ratio is greater than or equal to a threshold value, concluding (B) the existence of an echo from the transform coding in the current frame; otherwise, if the value of the ratio is smaller than said threshold value, to conclude (C) that there is no echo resulting from transform coding in the current frame, to be attenuated (D), conditionally to the existence of echo, the signals from the echo generator transform decoding to reduce the audibility of the echoes.Application to the implementation of echo sound attenuation devices of a digital audio signal and hierarchical coders incorporating such devices.
Description
PROCÉDÉ ET DISPOSITIF D'ATTÉNUATION DES ÉCHOS D'UN SIGNALMETHOD AND DEVICE FOR MITIGATING THE ECHO OF A SIGNAL
AUDIONUMÉRIQUE ISSU D'UN CODEUR MULTICOUCHES La numérisation des signaux sources en signal audionumérique réclame un débit d'autant plus élevé que la qualité du signal restitué est élevée. AUDIONUMERIC ISSUANCE FROM A MULTILAYER ENCODER The digitization of the source signals into a digital audio signal requires a higher rate of flow as the quality of the returned signal is high.
Pour adapter le débit de transmission des signaux audionumériques précités, on fait appel à des processus de compression grâce à la mise en oeuvre de systèmes de codage du type codage CELP ou codage par transformation. To adapt the transmission rate of the above-mentioned digital audio signals, compression processes are used by virtue of the implementation of coding systems of the CELP coding or transformation coding type.
Les codeurs de la famille de codage CELP sont basés sur des techniques de codage prédictif à analyse par synthèse pour des débits de l'ordre de 4 à 32 kbits/s, essentiellement dans le domaine du codage de la parole. Encoders in the CELP coding family are based on synthetic analysis predictive coding techniques for bit rates in the range of 4 to 32 kbps, essentially in the field of speech coding.
Le signal est découpé en tranches de 10 à 30 ms sur lesquelles les paramètres représentatifs de ce dernier sont codés. Les codeurs CELP précités induisent, sur le signal audionumérique obtenu, essentiellement des dégradations du type effet de granularité issu du bruit de quantification, en l'absence de phénomène de pré- ou post-échos notable. The signal is divided into 10 to 30 ms slices on which the representative parameters of the latter are coded. The aforementioned CELP coders induce, on the obtained digital audio signal, essentially degradations of the type of granularity effect resulting from the quantization noise, in the absence of significant pre- or post-echo phenomenon.
Les codeurs de la famille codage par transformée exécutent une transposition temps-fréquence du signal dans un domaine transformé, Fourier, MDCT ou autre, une quantification des coefficients du domaine transformé compte tenu d'un modèle psycho-acoustique, puis une transmission des coefficients codés à un décodeur sous forme de trame binaire. The coders of the transform coding family perform a time-frequency transposition of the signal in a transformed domain, Fourier, MDCT or other, a quantization of the transformed domain coefficients taking into account a psycho-acoustic model, and then a transmission of the coded coefficients. to a decoder in the form of a binary frame.
Utilisés pour une grande variété de signaux sonores à des débits compris entre 24 à 64 kbits/s par canal, les signaux sonores présentant de fortes attaques ou déclins sont le siège, au décodage, d'un bruit issu de la quantification sous la forme de pré- ou post-échos. Used for a wide variety of audible signals at 24 to 64 kbit / s per channel, audible signals with strong attacks or decays are the seat, on decoding, of noise from quantization in the form of pre- or post-echoes.
Les codeurs précités peuvent fonctionner à débit fixe ou variable, le débit pouvant être adapté. The aforementioned encoders can operate at a fixed or variable rate, the flow rate being adaptable.
Certains des codeurs précités, désignés codeurs hiérarchiques, possèdent enfin la capacité de produire un train binaire, dit imbriqué ou hiérarchique, dont les bits les moins significatifs peuvent être ignorés tout en conservant une qualité de codage correcte. La trame binaire est alors structurée en ordonnant les bits à partir des bits essentiels vers les bits les moins significatifs. Some of the aforementioned coders, designated hierarchical coders, finally have the capacity to produce a binary train, said nested or hierarchical, whose least significant bits can be ignored while maintaining a correct coding quality. The bit frame is then structured by ordering the bits from the essential bits to the least significant bits.
Les codeurs précités peuvent avantageusement être utilisés pour les communications personnelles sur l'INTERNET par exemple où le débit disponible pour la transmission peut diminuer fortement en un point du réseau. The above-mentioned coders can advantageously be used for personal communications on the INTERNET, for example where the bit rate available for transmission can decrease significantly at one point in the network.
Pendant la transmission, il est alors possible d'ignorer les bits les moins significatifs, tout en gardant un train binaire significatif. La qualité de restitution du signal est fonction de nombre de bits décodés. During transmission, it is then possible to ignore the least significant bits, while keeping a significant bit stream. The quality of signal reproduction is a function of the number of decoded bits.
La présente invention a pour objet la réduction de l'audibilité des bruits dus aux échos inhérents aux systèmes de compression audio comportant une pluralité de couches de codage, tels que les codeurs hiérarchiques, dont l'un au moins n'est pas le siège du phénomène de pré- ou post-échos. The object of the present invention is to reduce the audibility of echo noise inherent in audio compression systems having a plurality of coding layers, such as hierarchical coders, at least one of which is not the seat of the encoder. pre- or post-echo phenomenon.
Préalablement à l'exposé de l'invention, un rappel du principe de codagedécodage par transformée sera introduit ci-après, en référence à la figure 1. Prior to the presentation of the invention, a reminder of the principle of encodingecoding by transform will be introduced hereinafter, with reference to FIG.
La figure 1 décrit un exemple de codage par transposition dans le domaine fréquence et de décodage correspondant. Dans cet exemple, au codage, la transposition d'un bloc de signal temporel dans le domaine fréquence est effectuée par une transformée MDCT appliquée au signal fenêtré par une fonction sinusoïdale qui permet à la fois d'accroître la résolution fréquentielle et de satisfaire aux conditions de reconstruction parfaite d'un banc de filtre d'analyse-synthèse MDCT à recouvrement. D'autres types de fenêtres peuvent être utilisés. La quantification des coefficients spectraux fait appel à différentes méthodes telles que la quantification par une méthode d'analyse par synthèse ou par un algorithme interactif de quantification. Ces méthodes sont connues de l'état de la technique et ne seront pas décrites en détail pour cette raison. Figure 1 depicts an example of transposition encoding in the frequency domain and corresponding decoding. In this example, in coding, the transposition of a time domain signal block in the frequency domain is performed by an MDCT transform applied to the windowed signal by a sinusoidal function which makes it possible both to increase the frequency resolution and to satisfy the conditions perfect reconstruction of an MDCT overlay analysis-filter bench. Other types of windows can be used. Quantification of spectral coefficients uses different methods such as quantization by a synthesis analysis method or an interactive quantization algorithm. These methods are known in the state of the art and will not be described in detail for this reason.
Dans les méthodes de quantification précitées, l'opération de quantification des coefficients spectraux est effectuée compte tenu d'une contrainte de minimisation du bruit de quantification audible, grâce à la prise en compte d'un modèle psycho-acoustique. La quantification est suivie d'un codage entropique, de type Hufman ou autre, lequel permet de tenir compte des densités de probabilité non uniformes des coefficients spectraux. In the aforementioned quantization methods, the quantization operation of the spectral coefficients is performed taking into account a minimization constraint of the audible quantization noise, by taking into account a psychoacoustic model. Quantification is followed by Hufman or other entropic coding, which takes into account the non-uniform probability densities of the spectral coefficients.
Au décodage, les coefficients spectraux sont décodés par un décodeur entropique, déquantifiés puis transposés dans le domaine temporel par transformée MDCT inverse, notée MDCT INV sur la figure 1. Un traitement par addition-recouvrement, "add-overlap" en anglais, permet d'obtenir le signal reconstitué à partir de deux trames successives en recouvrement partiel, trame courante de rang m et trame précédente, de rang m-1. At decoding, the spectral coefficients are decoded by an entropic decoder, dequantized and then transposed into the time domain by inverse MDCT transform, denoted MDCT INV in FIG. 1. An overlay processing, "add-overlap" in English, allows obtain the reconstituted signal from two successive partial recovery frames, current frame of rank m and previous frame, of rank m-1.
Le signal reconstitué est de la forme: xrec(n)=h(n+ 2)xprev(n+ 2)+h(n)x, r(n)pournE[0, 2 -1]. The reconstituted signal is of the form: xrec (n) = h (n + 2) xprev (n + 2) + h (n) x, r (n) for n [0, 2 -1].
Dans la relation précédente, dans l'intervalle des échantillons de rang compris entre 0 et N/2-1: xc r(n) désigne l'échantillon de la trame courante de rang m; - h(n) désigne la fenêtre de la transformée MDCT inverse appliquée à la trame courante; - xprev(n+ Y) désigne l'échantillon de la trame précédente de rang m-1, échantillon décalé de N/2 pour assurer le recouvrement; h(n + 2) désigne la fenêtre de la transformée MDCT inverse appliquée à la trame précédente, fenêtre décalée de N/2 pour assurer le recouvrement; xrec(n) désigne l'échantillon de signal reconstitué dans le domaine temporel. In the preceding relation, in the range of the samples of rank between 0 and N / 2-1: xc r (n) designates the sample of the current frame of rank m; h (n) denotes the window of the inverse MDCT transform applied to the current frame; - xprev (n + Y) denotes the sample of the previous frame of rank m-1, sample shifted by N / 2 to ensure recovery; h (n + 2) denotes the window of the inverse MDCT transform applied to the previous frame, window shifted by N / 2 to ensure recovery; xrec (n) is the time-domain reconstituted signal sample.
Certains sons musicaux, tels que les percussions, et pour certaines séquences de paroles, notamment les syllabes plosives, sont caractérisés par des attaques extrêmement brusques qui se traduisent par des transitions très rapides et de grande amplitude des signaux sonores dans le domaine temporel. Certain musical sounds, such as percussion, and for certain sequences of words, especially plosive syllables, are characterized by extremely abrupt attacks that result in very rapid and wide-ranging transitions of sound signals in the time domain.
Dans cette situation, l'échantillonnage du signal sonore se traduit par une variation très forte de la dynamique du signal échantillonné en l'espace de quelques échantillons. In this situation, the sampling of the sound signal results in a very strong variation in the dynamics of the signal sampled over a few samples.
La découpe en blocs successifs d'échantillons opérée par le codage par transformée est totalement indépendante du signal sonore et les transitions apparaissent donc en un point quelconque de la fenêtre d'analyse. Or en codage par transformée, le bruit est réparti temporellement de façon uniforme sur toute la durée du bloc d'échantillons. Ceci se traduit par l'apparition de pré-échos antérieurement à la transition et de post-échos postérieurement à la transition. The cutting into successive blocks of samples carried out by the transform coding is totally independent of the sound signal and the transitions therefore appear at any point in the analysis window. In transform coding, the noise is distributed temporally evenly over the entire duration of the sample block. This results in the appearance of pre-echoes prior to the transition and post-echoes after the transition.
Le niveau de bruit est inférieur à celui du signal pour les échantillons de forte énergie, suivant immédiatement la transition, mais il est supérieur à celui du signal pour les échantillons d'énergie plus faible, notamment sur la partie précédant la transition. Pour la partie précitée, le rapport signal à bruit est largement négatif et la dégradation résultante, désignée pré-échos, peut apparaître très gênante. The noise level is lower than that of the signal for the high energy samples, immediately following the transition, but it is higher than that of the signal for the lower energy samples, especially on the part preceding the transition. For the aforementioned part, the signal-to-noise ratio is largely negative and the resulting degradation, designated pre-echoes, can appear very troublesome.
En effet, l'oreille humaine effectue un pré-masquage assez limité, de l'ordre de quelques millisecondes, avant la transmission physiologique de l'attaque. Indeed, the human ear performs a fairly limited pre-masking, of the order of a few milliseconds, before the physiological transmission of the attack.
Le bruit produit, ou pré-écho, est audible lorsque la durée du pré-écho est supérieure à la durée du pré-masquage. The noise produced, or pre-echo, is audible when the duration of the pre-echo is greater than the duration of the pre-masking.
L'oreille humaine effectue également un post-masquage d'une durée plus longue, de 5 à 60 millisecondes, lors du passage de séquences de forte énergie à des séquences de faible énergie. Le taux ou niveau de gêne acceptable pour les post-échos est donc plus important que pour les prééchos. The human ear also performs a post-masking of a longer duration, from 5 to 60 milliseconds, during the passage of high energy sequences to low energy sequences. The rate or level of discomfort acceptable for post-echoes is therefore greater than for pre-echoes.
Le phénomène des pré-échos, plus critique, est d'autant plus gênant que la longueur des blocs en nombre d'échantillons est importante. Or, en codage par transformée, il est nécessaire d'avoir une bonne résolution fréquentielle pour permettre l'attribution des bits sur les zones pertinentes, d'un spectre du signal, d'où l'avantage d'utiliser des blocs de grande longueur. Lorsqu'un processus de codage, l'AAC (Advanced Audio Coding) par exemple, est mis en oeuvre, une fenêtre de grande longueur contient un nombre fixe d'échantillons, 2048, soit sur une durée de 64 ms à une fréquence d'échantillonnage de 32 kHz. Les codeurs utilisés pour les applications conversationnelles utilisent une fenêtre de durée 40 ms et une durée de renouvellement de trame de 20 ms. The phenomenon of pre-echoes, more critical, is even more troublesome as the length of the blocks in number of samples is important. However, in transform coding, it is necessary to have a good frequency resolution to allow the allocation of bits on the relevant areas of a signal spectrum, hence the advantage of using very long blocks. . When a coding process, AAC (Advanced Audio Coding) for example, is implemented, a window of great length contains a fixed number of samples, 2048, or over a period of 64 ms at a frequency of sampling of 32 kHz. Encoders used for conversational applications use a window of 40 ms duration and a frame renewal duration of 20 ms.
Pour réduire l'effet gênant précité du phénomène des pré-échos, et dans une moindre mesure des post-échos, différentes solutions ont jusqu'ici été proposées. To reduce the aforementioned annoying effect of the pre-echo phenomenon, and to a lesser extent post-echo, various solutions have heretofore been proposed.
Une première solution consiste à appliquer un filtrage. Dans la zone précédant la transmission due à l'attaque, le signal reconstitué est en fait constitué du signal original et du bruit de quantification superposé au signal. A first solution is to apply filtering. In the zone preceding the transmission due to the attack, the reconstituted signal consists in fact of the original signal and the quantization noise superimposed on the signal.
Une technique de filtrage correspondante a été décrite dans l'article intitulé High Quality Audio Transform Coding at 64 kbits, IEEE Trans on Communications Vol 42 No. 11, November 1994, publié par Y. Mahieux et J. P. Petit. A corresponding filtering technique has been described in the article High Quality Audio Transform Coding at 64 kbits, IEEE Trans on Communications Vol 42 No. 11, November 1994, published by Y. Mahieux and J. P. Petit.
Par un tel processus, lorsqu'un bloc d'échantillons est affecté de prééchos, le filtrage opérant au décodeur sur les échantillons reconstruits après addition/recouvrement réduit la puissance du signal parasite. Basé sur le principe de filtrage de Kalman le filtrage précité est un filtrage adaptatif de façon à suivre les non stationnarités éventuelles du signal dans la partie du bloc d'échantillons précédant l'attaque. Le filtrage de Kalman est appliqué aux échantillons situés avant la transmission et délivre le signal débruité qui remplace, pour la partie correspondante du bloc, les échantillons issus de l'addition/recouvrement. By such a process, when a sample block is assigned pre-taps, filtering operating at the decoder on the reconstructed samples after addition / overlap reduces the power of the spurious signal. Based on the Kalman filtering principle, the aforementioned filtering is an adaptive filtering so as to follow any non-stationarity of the signal in the part of the sample block preceding the attack. Kalman filtering is applied to the samples located before the transmission and delivers the denoised signal which replaces, for the corresponding part of the block, the samples resulting from the addition / recovery.
La mise en oeuvre d'un tel filtrage nécessite la connaissance de paramètres dont certains sont estimés au décodeur à partir des échantillons bruités. Par contre, des informations telles que l'énergie du signal d'origine ne peuvent être connues qu'au codeur et doivent par conséquent être transmises. Lorsque le bloc reçu contient une variation brusque de dynamique, le traitement de filtrage lui est appliqué. The implementation of such a filtering requires the knowledge of parameters some of which are estimated at the decoder from the noisy samples. On the other hand, information such as the energy of the original signal can only be known to the encoder and must therefore be transmitted. When the received block contains a sudden variation of dynamics, the filtering treatment is applied to it.
Le processus de filtrage précité ne permet pas de retrouver le signal d'origine, mais procure une forte réduction des pré-échos. The aforementioned filtering process does not allow to find the original signal, but provides a strong reduction of pre-echoes.
Une deuxième solution consiste à réduire les pré-échos par une concentration dynamique des fenêtres. A second solution is to reduce pre-echoes by a dynamic concentration of windows.
Une telle technique a été décrite par le brevet US 5214742 délivré à B. Edler. Cette solution a fait l'objet d'applications dans différentes solutions de codage audio selon des normes internationales. Such a technique has been described by US Pat. No. 5,214,742 issued to B. Edler. This solution has been the subject of applications in different audio coding solutions according to international standards.
Selon cette solution, en raison du fait que la résolution temporelle et fréquentielle des signaux dépendent fortement de la longueur de la fenêtre de codage, les codeurs fréquentiels commutent entre des fenêtres longues, de 2048 échantillons, pour les signaux stationnaires, et des fenêtres courtes 256 échantillons pour des signaux à grande variation de dynamique ou transitoires. Cette adaptation est exécutée dans le module AAC, la décision étant prise trame par trame au codeur. En fait, pour conserver la propriété de reconstruction parfaite, une séquence de fenêtres courtes est précédée et suivie d'une fenêtre transitoire. La sélection est valable pour la deuxième partie de la fenêtre seulement car la forme de la première partie dépend de la décision prise à la trame précédente. According to this solution, due to the fact that the temporal and frequency resolution of the signals strongly depends on the length of the coding window, the frequency coders switch between long windows, of 2048 samples, for the stationary signals, and short windows 256 samples for signals with large variation of dynamics or transients. This adaptation is performed in the AAC module, the decision being taken frame by frame to the encoder. In fact, to preserve the perfect reconstruction property, a sequence of short windows is preceded and followed by a transient window. The selection is valid for the second part of the window only because the shape of the first part depends on the decision made at the previous frame.
Un des inconvénients de cette deuxième solution est qu'elle induit un retard supplémentaire de l'ordre de N/2 échantillons en raison du fait que si une transition commence dans la fenêtre suivante il faut être en mesure de préparer la transition et de commuter sur une fenêtre de transition permettant de conserver la reconstruction parfaite. One of the disadvantages of this second solution is that it induces an additional delay of the order of N / 2 samples due to the fact that if a transition begins in the next window, it must be possible to prepare the transition and to switch to a transition window to keep the perfect reconstruction.
La réduction des échos peut toutefois être facilitée lorsque le décodeur est constitué de plusieurs étages de transformée, comme c'est le cas pour les codeurs hiérarchiques. Dans ce cas, les étages de codage prédictif qui sont souvent codeur coeur de base ("core layer" en anglais ou étage de coeur) peuvent être utilisés pour la détection de l'écho. Un exemple de décodage de ce type est décrit par la demande de brevet US 2003/0154074 de K. Kikuiri et al. Le mode opératoire décrit par la demande de brevet précitée consiste à effectuer une détection des pré- échos exclusivement à partir du signal du coeur de base CELP décodé. The reduction of echoes can, however, be facilitated when the decoder consists of several stages of transformation, as is the case for hierarchical coders. In this case, the predictive coding stages which are often core core or core layer can be used for the detection of the echo. An example of decoding of this type is described in US Patent Application No. 2003/0154074 to K. Kikuiri et al. The procedure described by the aforementioned patent application consists in detecting pre-echoes exclusively from the decoded base CELP signal.
Un tel mode opératoire ne permet pas d'assurer, pour cette raison, un traitement de réduction des pré-échos conjoint et synchrone des trames reconstruites. Such a procedure does not ensure, for this reason, a joint and synchronous pre-echo reduction processing of the reconstructed frames.
La présente invention a pour objet la mise en oeuvre d'un procédé de discrimination et d'un dispositif de discrimination et d'atténuation des échos d'un signal audionumérique issu d'un codeur multicouches ou hiérarchique. The present invention relates to the implementation of a discrimination method and a device for discriminating and attenuating the echoes of a digital audio signal from a multilayer or hierarchical encoder.
Le procédé de discrimination des échos d'un signal audionumérique engendré par codage hiérarchique multicouches à partir d'un codage par transformée, générateur d'échos, et d'un codage prédictif, non générateur d'échos, objet de l'invention, est remarquable en ce qu'il consiste au moins, au décodage, pour chaque trame courante du signal audionumérique, à comparer, en temps réel, la valeur du rapport de l'amplitude du signal issu d'un décodage générateur d'écho à l'amplitude du signal issu d'un décodage non générateur d'échos à une valeur de seuil. Si la valeur de ce rapport est supérieure ou égale à cette valeur de seuil, il consiste à conclure à l'existence d'un écho issu du codage par transformée dans la trame courante. Sinon, la valeur de ce rapport étant inférieure à cette valeur de seuil, il consiste à conclure à la non existence d'un écho issu du codage par transformée dans cette trame courante. The method for discriminating the echoes of a digital audio signal generated by multilayer hierarchical coding from a transform coding, an echo generator, and a non-echo generator predictive coding object of the invention is remarkable in that it consists at least, in the decoding, for each current frame of the digital audio signal, to compare, in real time, the value of the ratio of the amplitude of the signal resulting from an echo generator decoding to the amplitude of the signal from a non-echo-decoding decode to a threshold value. If the value of this ratio is greater than or equal to this threshold value, it consists in concluding that there is an echo resulting from transform coding in the current frame. Otherwise, the value of this ratio being lower than this threshold value, it consists in concluding that there is no echo resulting from transform coding in this current frame.
Le dispositif de discrimination et d'atténuation des échos d'un signal audionumérique, objet de l'invention, opère sur un tel signal engendré par un codeur hiérarchique multicouches, ce codeur comportant une première pluralité de décodeurs prédictifs, non générateurs d'échos, et une deuxième pluralité de décodeurs par transformée, susceptibles de révéler des échos. Chaque codeur prédictif comporte une première sortie délivrant un signal audionumérique décodé et une deuxième sortie délivrant un signal auxiliaire représentatif de l'énergie du signal audionumérique décodé. Chaque décodeur par transformée délivre, après décodage par transformée inverse et addition recouvrement, un signal décodé succession de trames courantes. The device for discriminating and attenuating the echoes of a digital audio signal, which is the subject of the invention, operates on such a signal generated by a multilayer hierarchical coder, this encoder comprising a first plurality of predictive, non-echo-generating decoders. and a second plurality of transform decoders capable of revealing echoes. Each predictive encoder has a first output providing a decoded digital audio signal and a second output providing an auxiliary signal representative of the decoded digital audio signal energy. Each decoder per transform delivers, after decoding by inverse transform and overlap addition, a decoded signal succession of current frames.
Il est remarquable en ce qu'il comporte au moins au niveau d'un décodeur, un module de calcul de l'existence, de la position d'origine de l'écho et de la valeur d'atténuation d'écho applicable dans la trame courante recevant, d'une part, le signal auxiliaire délivré par la deuxième sortie d'un décodeur prédictif de rang i de cette pluralité de décodeurs prédictifs, et, d'autre part, le signal décodé délivré par la sortie d'un décodeur par transformée inverse de rang j de cette pluralité de décodeurs par transformée inverse, ce module de calcul délivrant un signal de présence, de position d'écho et de valeur d'atténuation d'écho applicable dans la trame courante et un module d'atténuation de l'écho recevant le signal décodé succession de trames courantes délivré par le décodeur par transformée inverse de rang j et le signal de présence, de position d'origine d'écho et de valeur d'atténuation d'écho applicable dans la trame courante et délivrant un signal décodé succession de trames courantes dans lequel l'écho est atténué à partir de la position d'origine d'écho. It is remarkable in that it comprises at least at the level of a decoder, a module for calculating the existence, the origin position of the echo and the echo attenuation value applicable in the decoder. current frame receiving, on the one hand, the auxiliary signal delivered by the second output of a predictive decoder of rank i of this plurality of predictive decoders, and, on the other hand, the decoded signal delivered by the output of a decoder by inverse transform of rank j of this plurality of decoders by inverse transform, this calculation module delivering a presence signal, echo position and echo attenuation value applicable in the current frame and an attenuation module of the echo receiving the decoded current frame succession signal delivered by the row-j inverse transform decoder and the presence, echo origin position and echo attenuation value applicable signal in the current frame and delivering a decoded signal succession of current frames in which the echo is attenuated from the original echo position.
Le procédé et le dispositif, objets de l'invention, trouvent application au traitement de signaux sonores, en particulier de signaux audionumériques codés dont les trames sont le siège de transition d'attaque et/ou de déclin engendrées par des instruments de musique, de signaux vocaux comportant des syllabes plosives, et, plus généralement, aux dispositifs codeurs et décodeurs multicouches incluant des codeurs prédictifs et des codeurs par transformée fréquentielle respectivement des décodeurs prédictifs et des décodeurs par transformée fréquentielle inverse. The method and the device, objects of the invention, are applicable to the processing of sound signals, in particular coded digital audio signals whose frames are the seat of transition of attack and / or decline generated by musical instruments, voice signals comprising plosive syllables, and, more generally, multilayer encoder and decoder devices including predictive coders and frequency transform coders respectively of predictive decoders and inverse frequency transform decoders.
Ils seront mieux compris à la lecture de la description et à l'observation des dessins ci-après dans lesquels, outre la figure 1 relative à l'art antérieur: la figure 2a représente, à titre illustratif, un chronogramme expérimental des signaux issus d'un codeur multicouches hiérarchique permettant de justifier de la mise en oeuvre du procédé objet de l'invention; la figure 2b représente, à titre illustratif, un organigramme des étapes essentielles du procédé objet de la présente invention mis en oeuvre au décodage, à partir des justifications apportées en référence à la figure 2a; - la figure 2c représente, à titre illustratif, un organigramme des étapes essentielles du procédé objet de la présente invention représenté en figure 2b, rendu conditionnel à la détection au codage de l'existence d'échos dans une trame courante, une signalisation de cette existence étant transmise au décodage conjointement avec la trame courante; - la figure 3a illustre le schéma général d'un décodeur hiérarchique multicouche; la figure 3b représente, à titre illustratif, un schéma synoptique fonctionnel d'un dispositif de discrimination et d'atténuation d'échos, objet de l'invention, implanté dans un décodeur hiérarchique multicouches; la figure 3c représente, à titre illustratif, un détail de mise en oeuvre zq d'un module de calcul d'un signal de discrimination d'existence, de position d'origine d'un écho et de valeur d'atténuation applicable à une trame courante incorporé dans le dispositif objet de l'invention représenté en figure 3b; la figure 3d représente un organigramme fonctionnel de calcul de l'existence d'écho et de la position d'origine de l'écho dans la trame courante mis en oeuvre dans le module de calcul représenté en figure 3c; la figure 3e représente un organigramme fonctionnel de calcul de la valeur d'atténuation applicable à la trame courante mis en oeuvre dans le module de calcul représenté en figure 3c; la figure 3f représente un organigramme fonctionnel de calcul de l'existence d'écho et de la positon d'origine de l'écho dans la trame courante mis en oeuvre dans le module de calcul représenté en figure 3c, ce processus de calcul étant rendu conditionnel à la détection au codage de l'existence d'échos dans la trame courante, conformément au procédé objet de l'invention; - la figure 4a représente une première variante de mise en oeuvre du dispositif objet de l'invention, l'atténuation de l'écho étant appliquée directement en sortie du module de décodage par transformée inverse, avant le processus d'addition recouvrement; la figure 4b représente, à titre illustratif, le recouvrement d'une trame courante siège d'une transition SI et d'une trame précédente, siège de pré-échos; la figure 4c représente un chronogramme de la variation du rapport d'enveloppe de signaux, compte tenu de l'existence de la transition représentée en figure 4b; la figure 4d représente, à titre illustratif, un détail de mise en oeuvre d'un module de calcul d'un signal de discrimination d'existence et de position d'un écho incorporé dans le dispositif objet de l'invention représenté en figure 4a; la figure 4e représente, à titre illustratif, un organigramme fonctionnel de calcul de la valeur d'atténuation applicable à la trame courante mis en oeuvre dans le module de calcul représenté en figure 4a, compte tenu d'une discrimination des pré- et post-échos; la figure 4f représente un détail de mise en oeuvre d'un module d'atténuation, à titre d'exemple non limitatif; la figure 5a représente, à titre illustratif, une deuxième variante de mise en oeuvre du dispositif objet de l'invention comparable à celui de la figure 4a, dans lequel la mise en oeuvre d'un module d'addition recouvrement auxiliaire est supprimée dans un but de simplification et de diminution des coûts; la figure 5b représente, à titre illustratif, un détail de mise en oeuvre d'un module de calcul d'un signal de discrimination d'existence, de position d'origine d'un écho et de valeur d'atténuation applicable à une trame courante plus particulièrement adaptée au module 1 du deuxième mode de réalisation du dispositif objet de l'invention représenté en figure 5a; la figure 6a et la figure 6b représentent, à titre illustratif, des modules de calcul d'un message de signalisation de présence d'échos dans une trame courante implantables dans un codeur de type hiérarchique multicouches, afin de permettre la mise en oeuvre du procédé et du dispositif objets de l'invention; la figure 7 représente, à titre illustratif, une variante de mise en oeuvre de la figure 3b, dans laquelle le signal issu du décodeur prédictif de rang i est transmis au décodeur par transformée de rang j dans le domaine fréquentiel; - la figure 8 représente, à titre illustratif, une variante de mise en oeuvre de la figure 4a, dans laquelle le signal issu du décodeur prédictif de rang i est transmis au décodeur par transformée de rang j dans le domaine fréquentiel; la figure 9 représente, à titre illustratif, une variante de mise en oeuvre de la figure 5a, dans laquelle le signal issu du décodeur prédictif de rang i est transmis au décodeur par transformée de rang j dans le domaine fréquentiel; la figure 10 représente, à titre illustratif, un perfectionnement aux modes de mise en oeuvre des figures 3b et 7, grâce auquel la détection et l'atténuation de l'écho sont effectuées sur une première voie dans une bande basse de fréquences et sur au moins une autre voie en bande de fréquences distinctes. They will be better understood on reading the description and on the observation of the drawings below, in which, in addition to FIG. 1 relating to the prior art: FIG. 2a represents, by way of illustration, an experimental chronogram of the signals coming from a hierarchical multilayer coder making it possible to justify the implementation of the method which is the subject of the invention; FIG. 2b represents, by way of illustration, a flowchart of the essential steps of the method that is the subject of the present invention implemented during decoding, based on the justifications made with reference to FIG. 2a; FIG. 2c represents, by way of illustration, a flowchart of the essential steps of the method that is the subject of the present invention represented in FIG. 2b, made conditional on the detection of the existence of echoes in a current frame, a signaling of this existence being transmitted to the decode together with the current frame; FIG. 3a illustrates the general diagram of a multilayer hierarchical decoder; FIG. 3b represents, by way of illustration, a functional block diagram of an echo discrimination and attenuation device, object of the invention, implanted in a multilayer hierarchical decoder; FIG. 3c represents, by way of illustration, an implementation detail z.sub.q of a module for calculating an existence discrimination signal, an echo origin position signal, and an attenuation value signal applicable to a current frame incorporated in the device object of the invention shown in Figure 3b; FIG. 3d represents a functional flowchart for calculating the echo existence and the origin position of the echo in the current frame implemented in the calculation module represented in FIG. 3c; FIG. 3e represents a functional flowchart for calculating the attenuation value applicable to the current frame implemented in the calculation module represented in FIG. 3c; FIG. 3f represents a functional flowchart for calculating the existence of echo and the original position of the echo in the current frame implemented in the calculation module represented in FIG. 3c, this computation process being rendered conditional on the detection at the coding of the existence of echoes in the current frame, in accordance with the method which is the subject of the invention; FIG. 4a represents a first alternative embodiment of the device that is the subject of the invention, the attenuation of the echo being applied directly at the output of the inverse transform decoding module, before the recovery addition process; FIG. 4b represents, by way of illustration, the overlap of a current frame seated with a transition SI and a preceding frame, seat of pre-echoes; FIG. 4c represents a timing diagram of the variation of the signal envelope ratio, taking into account the existence of the transition shown in FIG. 4b; FIG. 4d represents, by way of illustration, a detailed implementation of a module for calculating an existence and position discrimination signal of an echo incorporated in the device of the invention represented in FIG. 4a. ; FIG. 4e represents, by way of illustration, a functional flowchart for calculating the attenuation value applicable to the current frame implemented in the calculation module represented in FIG. 4a, taking into account discrimination of the pre- and post- echoes; FIG. 4f represents a detail of implementation of an attenuation module, by way of non-limiting example; FIG. 5a represents, by way of illustration, a second alternative embodiment of the device of the invention comparable to that of FIG. 4a, in which the implementation of an auxiliary overlay add module is suppressed in a purpose of simplification and cost reduction; FIG. 5b represents, by way of illustration, a detail of implementation of a module for calculating an existence discrimination signal, an echo origin position signal and an attenuation value signal applicable to a frame. current more particularly adapted to the module 1 of the second embodiment of the device object of the invention shown in Figure 5a; FIG. 6a and FIG. 6b represent, by way of illustration, modules for calculating an echo presence signaling message in a current frame that can be implanted in a multilayer hierarchical type coder, in order to enable the method to be implemented. and the device objects of the invention; FIG. 7 represents, by way of illustration, an alternative embodiment of FIG. 3b, in which the signal originating from the predictive decoder of rank i is transmitted to the decoder by rank transformation j in the frequency domain; FIG. 8 represents, by way of illustration, an alternative embodiment of FIG. 4a, in which the signal coming from the predictive decoder of rank i is transmitted to the decoder by rank transformation j in the frequency domain; FIG. 9 represents, by way of illustration, an alternative embodiment of FIG. 5a, in which the signal originating from the predictive decoder of rank i is transmitted to the decoder by rank transformation j in the frequency domain; FIG. 10 represents, by way of illustration, an improvement to the modes of implementation of FIGS. 3b and 7, whereby echo detection and attenuation are performed on a first channel in a low frequency band and on a least another channel in separate frequency bands.
- la figure 11 représente, à titre illustratif, un perfectionnement au mode de mise en oeuvre de la figure 10, grâce auquel la détection et l'atténuation de l'écho sont effectuées sur une première voie dans une bande basse de fréquences et sur au moins une autre voie en bande de fréquences distinctes, le signal prédictif étant filtré en une pluralité de sous-bandes. FIG. 11 represents, by way of illustration, an improvement in the embodiment of FIG. 10, whereby the detection and the attenuation of the echo are performed on a first channel in a low frequency band and on a least another channel in a separate frequency band, the predictive signal being filtered into a plurality of subbands.
Une description du procédé de discrimination d'échos d'un signal audionumérique engendré par codage hiérarchique multicouches à partir d'un codage par transformée, générateur d'échos, et d'un codage prédictif, non générateur d'échos, conforme à l'objet de la présente invention sera maintenant donnée en liaison avec les figures 2a et 2b. A description of the echo discrimination method of a digital audio signal generated by multilayer hierarchical coding from transform coding, echo generator, and predictive, non-echo generator encoding, in accordance with The object of the present invention will now be given with reference to FIGS. 2a and 2b.
La figure 2a représente un enregistrement (amplitude, nombre d'échantillons) sur une trame d'une première courbe 1 représentative du rapport calculé au codage entre le signal de différence entre le signal original retardé et le signal codé et décodé par un codage prédictif non générateur d'échos (signal résiduel), vis-à-vis du signal de sortie délivré par le décodeur prédictif. FIG. 2a represents a recording (amplitude, number of samples) on a frame of a first curve 1 representative of the calculated ratio to the coding between the difference signal between the delayed original signal and the coded and decoded signal by a non-predictive coding. echo generator (residual signal), vis-à-vis the output signal delivered by the predictive decoder.
La deuxième courbe 2 représente le rapport entre le signal de différence précité codé et décodé par codage par transformée générateur d'échos et la sortie après décodage par un décodeur prédictif (par exemple un décodeur CELP). The second curve 2 represents the ratio between the aforementioned difference signal encoded and decoded by echo generator transform coding and the output after decoding by a predictive decoder (for example a CELP decoder).
Les courbes 1 et 2 précitées permettent de déduire que le rapport est nettement plus important en présence de pré-échos. The above-mentioned curves 1 and 2 make it possible to deduce that the ratio is much greater in the presence of pre-echoes.
L'observation expérimentale représentée en figure 2a permet de justifier de la mise en oeuvre du procédé objet de l'invention, tel que représenté en figure 2b. The experimental observation shown in FIG. 2a makes it possible to justify the implementation of the method that is the subject of the invention, as represented in FIG. 2b.
Le procédé objet de l'invention permet de discriminer les échos d'un signal audionumérique au décodage, lorsque ce signal audionumérique est engendré par codage hiérarchique multicouches à partir d'un codage par transformée et d'un codage prédictif. The method according to the invention makes it possible to discriminate the echoes of a digital audio signal during decoding, when this digital audio signal is generated by multilayer hierarchical coding from a transform coding and a predictive coding.
En référence à la figure 2b on désigne par: x.(n) le signal délivré par un décodage par transformée inverse délivré par un décodeur par transformée de couche j d'un décodeur hiérarchique multicouches; x,%(n) le signal délivré par un décodage prédictif exécuté par un décodeur prédictif de couche i dans le décodeur hiérarchique correspondant. Le - 12 - signal 4(n) peut être soit le signal de sortie du décodeur prédictif non générateur d'écho soit une version filtrée de ce signal soit une représentation de l'énergie à court terme de ce signal. With reference to FIG. 2b, the signal delivered by an inverse transform decoding delivered by a layer transform decoder of a multilayer hierarchical decoder is denoted by: x. x,% (n) the signal delivered by a predictive decoding executed by a predictive decoder of layer i in the corresponding hierarchical decoder. The signal 4 (n) may be either the output signal of the non-echo generating predictive decoder or a filtered version of this signal or a representation of the short-term energy of this signal.
En référence à la figure 2a et à la figure 2b, on indique que le procédé, objet de l'invention, consiste en une étape A à comparer en temps réel la valeur du rapport de l'amplitude du signal issu d'un décodage générateur d'échos à l'amplitude du signal issu d'un décodage non générateur d'écho à une valeur de seuil S. Sur la figure 2b on indique que l'amplitude du signal issu d'un décodage générateur d'écho est notée EnvTj(k) et l'amplitude du signal issu d'un décodage non générateur d'écho et notée Envp,(k). With reference to FIG. 2a and FIG. 2b, it is indicated that the method which is the subject of the invention consists of a step A to compare in real time the value of the ratio of the amplitude of the signal resulting from a generator decoding. echoes the amplitude of the signal from a non-echo generator decoding to a threshold value S. In FIG. 2b it is indicated that the amplitude of the signal resulting from an echo generator decoding is denoted EnvTj (k) and the amplitude of the signal from a non-echo-generating decod and denoted Envp, (k).
En référence à la notation indiquée, on comprend en particulier que l'amplitude du signal issu d'un décodage générateur d'écho et l'amplitude du signal issu d'un décodage non générateur d'écho peut être avantageusement représentée par le signal enveloppe du signal de décodage générateurs d'échos x,.,(n) respectivement du signal issu d'un décodage non générateur d'écho xP1(n) . Sur la figure 2b, l'obtention du signal d'amplitude est représentée par les relations: xTi (n) -+ EnvTj(k) xP; ( n) -+ Envp,(k). With reference to the notation indicated, it is understood in particular that the amplitude of the signal resulting from an echo generator decoding and the amplitude of the signal coming from a non-echo generator decoding can advantageously be represented by the envelope signal. of the echo generator decoding signal x,., (n) respectively of the signal resulting from a non-echo generator decoding xP1 (n). In FIG. 2b, the obtaining of the amplitude signal is represented by the relations: xTi (n) - + EnvTj (k) xP; (n) - + Envp, (k).
D'une manière générale, on indique que le signal d'amplitude du signal issu d'un décodage générateur d'écho respectivement du signal issu d'un décodage non générateur d'écho peut être représenté non seulement par le signal d'enveloppe précité mais également par tout signal tel que la valeur absolue, ou autre, représentative de l'amplitude précitée. In general, it is indicated that the amplitude signal signal from an echo generator decoding respectively the signal from a non-echo generator decoding can be represented not only by the aforementioned envelope signal but also by any signal such as the absolute value, or other, representative of the aforementioned amplitude.
En référence à la même figure 2b on indique que le rapport de l'amplitude du signal issu d'un décodage générateur d'écho à l'amplitude du signal issu du décodage non générateur d'écho est représenté par la relation: EnvT (k) R(k) = Envp; (k) - 13 - En référence aux notations précédentes, on indique que l'étape de comparaison A de la figure 2b consiste à comparer la valeur du rapport R(k) à la valeur de seuil S par comparaison de supériorité et d'égalité. With reference to the same FIG. 2b, it is indicated that the ratio of the amplitude of the signal resulting from an echo generator decoding to the amplitude of the signal coming from the non-echo generator decoding is represented by the relation: EnvT (k ) R (k) = Envp; (k) - 13 - Referring to the preceding notations, it is indicated that the comparison step A of FIG. 2b consists of comparing the value of the ratio R (k) with the threshold value S by comparison of superiority and equality .
Si la valeur du rapport précité est supérieure ou égale à la valeur de seuil S, en réponse positive à l'étape A, le test précité permet alors de conclure à l'étape B à l'existence d'un écho issu du codage par transformée dans la trame courante, cet écho étant alors révélé au décodage. If the value of the aforementioned ratio is greater than or equal to the threshold value S, in positive response to step A, the aforementioned test then makes it possible to conclude in step B that an echo resulting from the coding by transformed in the current frame, this echo being then revealed at the decoding.
L'existence de l'écho est représentée à l'étape B par la relation: 3 écho xri (n) . Sinon, en réponse négative au test de l'étape A, si la valeur du rapport précité est inférieure à la valeur de seuil S le test de l'étape A permet alors de conclure à l'étape C à la non existence d'un écho issu du codage par transformée dans la trame courante. The existence of the echo is represented in step B by the relation: 3 echo xri (n). Otherwise, in a negative response to the test of step A, if the value of the aforementioned ratio is less than the threshold value S, the test of step A then makes it possible to conclude in step C that there is no echo from the transform coding in the current frame.
Cette relation est notée à l'étape C par: ZI écho x7i (n) . D'une manière particulièrement avantageuse, conformément à la mise en oeuvre du procédé objet de l'invention, on indique que la position d'origine de l'écho dans la trame courante est donnée en fait par la position, dans la trame courante, de la valeur du rapport sensiblement égale à la valeur de seuil S. La valeur précitée est donnée à l'étape B de la figure 2b par la relation: Pos=k1R(k)=S. This relation is noted in step C by: ZI echo x7i (n). In a particularly advantageous manner, in accordance with the implementation of the method which is the subject of the invention, it is indicated that the original position of the echo in the current frame is actually given by the position, in the current frame, the value of the ratio substantially equal to the threshold value S. The value mentioned above is given in step B of FIG. 2b by the relation: Pos = k1R (k) = S.
D'une manière générale, en ce qui concerne la mise en oeuvre du test de l'étape A et finalement des test C et B de la figure 2b, en particulier de l'étape B consécutivement à l'étape A, on comprend que le calcul de la valeur du rapport R(k) peut être effectué comme une valeur lissée sur la trame courante, de façon à comparer en temps réel la valeur du rapport précité à la valeur de seuil S. Lorsque la valeur du rapport précité est égale à la valeur de S, alors la position d'origine de l'écho est donnée par la valeur particulière du rang k de l'échantillon correspondant du signal décodé dans la trame courante. Le processus de calcul précité sera décrit de manière In general, with regard to the implementation of the test of step A and finally tests C and B of FIG. 2b, in particular of step B following step A, it will be understood that the calculation of the value of the ratio R (k) can be carried out as a smoothed value on the current frame, so as to compare in real time the value of the aforementioned ratio with the threshold value S. When the value of the aforementioned ratio is equal at the value of S, then the original position of the echo is given by the particular value of the rank k of the corresponding sample of the signal decoded in the current frame. The above calculation process will be described in such a way
plus détaillée ultérieurement dans la description. - 14 - Le procédé objet de l'invention peut en outre être mis en oeuvre de more detailed later in the description. The method which is the subject of the invention can moreover be implemented by means of
manière non limitative grâce à un prétraitement exécuté au codage sur chaque trame courante de façon à détecter l'existence d'un écho dans la trame courante considérée. Une telle mise en oeuvre est représentée à la figure 2c et sera décrite en référence à la figure précitée. non-limiting manner by preprocessing performed coding on each current frame so as to detect the existence of an echo in the current frame considered. Such an implementation is shown in Figure 2c and will be described with reference to the aforementioned figure.
Sur la figure 2c on désigne par C x,) (n) et C 4(n) le signal audionumérique codé à partir d'un codage par transformée, générateur d'écho, respectivement à partir d'un codage prédictif, non générateur d'écho, ce signal étant transmis sous forme de trames courantes successives, ainsi que mentionné précédemment dans la description. FIG. 2c denotes by C x,) (n) and C 4 (n) the digital audio signal coded from a transform coding, an echo generator, respectively from a predictive coding, which is not a generator. echo, this signal being transmitted in the form of successive current frames, as mentioned previously in the description.
Ainsi, le procédé, objet de la présente invention, consiste au codage pour chaque trame émise, en une étape OA, à effectuer la détection de l'existence d'écho dans la trame courante, la détection d'existence d'échos pouvant, bien entendu, être mise en oeuvre conformément au processus opératoire de la figure 2a, ainsi qu'il sera décrit ultérieurement dans la description. Cette opération correspond à la mise en oeuvre de l'étape OA de la figure 2c et permet d'engendrer une variable de présence d'écho Ec laquelle peut consister en une variable binaire de valeur 1 ou 0 constituant en fait un drapeau représentatif de l'existence ou de la non-existence d'échos. Thus, the method, which is the subject of the present invention, consists in coding for each transmitted frame, in a step OA, to perform the detection of the existence of echo in the current frame, the detection of the existence of echoes being able to of course, be implemented according to the operating process of Figure 2a, as will be described later in the description. This operation corresponds to the implementation of step OA of FIG. 2c and makes it possible to generate an echo presence variable Ec which can consist of a binary variable of value 1 or 0 constituting in fact a flag representative of the existence or non-existence of echoes.
L'étape OA est alors suivie, ainsi que représenté sur la figure 2c, par une étape OB de transmission conjointe, du codage au décodage, de la trame courante, c'est-à-dire des signaux codés C (n) et C xp; (n) et de la variable Ec sous forme d'un message de signalisation d'existence d'écho. The step OA is then followed, as represented in FIG. 2c, by a joint transmission step OB, of decoding coding, of the current frame, that is to say signals coded C (n) and C xp; (n) and the variable Ec as an echo existence signaling message.
Au décodage, ainsi que représenté en figure 2c les opérations de décodage des trames reçues sont bien entendu effectuées pour l'obtention des signaux décodés c'est-à-dire des signaux xi) (n) et xP; (n) selon les relations: C xT(n)-*xi,(n) C xp; (n) xP (n) et bien entendu le calcul du rapport R(k) tel que décrit précédemment en liaison avec la figure 2b. At decoding, as shown in FIG. 2c, the decoding operations of the received frames are of course carried out in order to obtain the decoded signals, that is to say the signals xi) (n) and xP; (n) according to the relations: C xT (n) - * xi, (n) C xp; (n) xP (n) and of course the calculation of the ratio R (k) as described previously with reference to FIG. 2b.
- 15 - L'étape de décodage précitée permet alors d'exécuter la discrimination des échos au décodage conditionnellement à l'existence ou à la non existence a priori d'échos discriminée au codage. The aforementioned decoding step then makes it possible to perform echo discrimination on decoding conditionally on the existence or non-existence, a priori, of discriminated echoes in the encoding.
Ainsi, suite à l'opération de décodage proprement dite et de calcul du rapport R(k) le procédé, objet de l'invention, peut consister, en une étape Ao exécutée au décodage, en une vérification à la valeur vraie de la variable Ec d'existence d'écho a priori. Thus, following the actual decoding operation and the calculation of the ratio R (k), the method, which is the subject of the invention, can consist, in a step Ao executed at decoding, in verifying the true value of the variable Ec echo existence a priori.
Sur réponse négative au test Ao de la figure 2c, c'est-à-dire lorsque la trame courante ne comporte pas d'écho a priori, l'étape C d'absence d'écho dans la trame courante telle que représentée en figure 2a est appelée en figure 2c. On negative response to test Ao of FIG. 2c, that is to say when the current frame has no prior echo, step C of absence of echo in the current frame as represented in FIG. 2a is called in Figure 2c.
Au contraire, sur réponse positive au test Ao, c'est-à-dire en présence d'écho a priori, les étapes A et B telles que représentées en figure 2b sont alors mises en oeuvre de manière semblable. On the contrary, on a positive response to the Ao test, that is to say in the presence of a priori echo, the steps A and B as represented in FIG. 2b are then implemented in a similar manner.
De préférence, et selon un aspect remarquable du procédé, objet de l'invention, le message de signalisation d'existence d'écho est un message de fausse alarme M (Ec) de présence d'écho dans la trame courante. Dans ces conditions, la variable Ec de signalisation d'existence d'écho peut avantageusement prendre la valeur 0 lorsqu'il existe un écho dans la trame courante et, au contraire, la valeur 1 lorsqu'il n'existe pas d'écho dans la trame courante. Les valeurs précitées sont bien entendu données à titre d'exemple non limitatif, compte tenu de la discrimination de présence respectivement d'absence d'écho en logique négative de fausse alarme. Preferably, and according to a remarkable aspect of the method, object of the invention, the echo existence signaling message is a false alarm message M (Ec) echo presence in the current frame. Under these conditions, the Ec echo signaling variable Ec may advantageously take the value 0 when there is an echo in the current frame and, conversely, the value 1 when there is no echo in the echo. the current frame. The aforementioned values are of course given by way of non-limiting example, taking into account the presence discrimination respectively absence of echo in negative logic of false alarm.
D'une manière générale, on rappelle que la notion de détection d'écho dans la trame courante au codage concerne plus particulièrement l'information trame avec ou sans faux écho, l'écho étant simplement révélé au décodage. En effet, il n'existe pas d'échos au codage proprement dit, puisque les calculs sont effectués sur les signaux non quantifiés. Ceci implique que si l'écho est détecté au codeur et qu'il est également détecté au décodeur il s'agit en fait d'une fausse alarme. Il est alors détecté à tort au décodeur et il ne faut pas appliquer la procédure de réduction des échos. In general, it is recalled that the notion of echo detection in the current frame coding relates more particularly the frame information with or without false echo, the echo being simply revealed at decoding. Indeed, there are no echoes to the coding itself, since the calculations are performed on the unquantized signals. This implies that if the echo is detected at the encoder and is also detected at the decoder it is in fact a false alarm. It is then incorrectly detected at the decoder and the echo control procedure should not be applied.
- 16 - Le procédé, objet de l'invention, consiste alors avantageusement à transmettre le message de fausse alarme ainsi que décrit précédemment dans la description. The method, object of the invention, then advantageously consists in transmitting the false alarm message as described previously in the description.
La mise en oeuvre du procédé, objet de l'invention, avec calcul et établissement d'un message de fausse alarme, peut alors être implantée au codeur dans des cas spécifiques et seulement pour certaines configurations de codeurs CELP employées en première couche de codeurs hiérarchiques et codant une bande restreinte de signal comprise entre 0 et 4 kHz par exemple. The implementation of the method, object of the invention, with calculation and establishment of a false alarm message, can then be implemented in the encoder in specific cases and only for certain configurations of CELP coders used in the first layer of hierarchical coders. and coding a restricted signal band between 0 and 4 kHz for example.
Une description plus détaillée d'un dispositif de discrimination et d'atténuation des échos d'un signal audionumérique engendré par un codeur hiérarchique multicouches, conforme à l'objet de la présente invention, sera maintenant donnée en liaison avec la figure 3a et les figures suivantes. A more detailed description of a device for discriminating and attenuating echoes of a digital audio signal generated by a multilayer hierarchical coder, in accordance with the subject of the present invention, will now be given in connection with FIG. 3a and FIGS. following.
Sur la figure 3a on a représenté un codeur hiérarchique multicouches comportant des étages de décodage par décodeur prédictif, notées couche 1 à couche i, et des étages de décodage par décodeur par transformée, notées couche 1 à couche j. Chacun des décodeurs précités délivre respectivement un signal audio décodé noté xpi (n) à xp, (n) et xn (n) à x7 (n) respectivement. FIG. 3a shows a multilayer hierarchical coder comprising predictive decoder decoding stages, denoted layer 1 to layer i, and transform decoder decoding stages, denoted layer 1 to layer j. Each of the aforementioned decoders respectively delivers a decoded audio signal denoted xpi (n) to xp, (n) and xn (n) to x7 (n) respectively.
En outre, les décodeurs prédictifs de couche 1 à i comportent une deuxième sortie auxiliaire délivrant un signal auxiliaire noté x,1(n) à 4(n) . Les signaux de sortie décodés des décodeurs prédictifs et des décodeurs par transformée sont délivrés à un somateur So lequel délivre le signal décodé reconstruit xs(n). In addition, the predictive decoders of layer 1 to i comprise a second auxiliary output delivering an auxiliary signal denoted x, 1 (n) to 4 (n). The decoded output signals of the predictive decoders and the transform decoders are delivered to a somer So which delivers the reconstructed decoded signal xs (n).
Le signal auxiliaire précité délivré par chacun des décodeurs prédictifs est soit le signal de sortie du décodeur prédictif non générateur d'écho soit une version filtrée de ce signal soit un signal auxiliaire représentatif de l'énergie du signal audionumérique décodé, ce signal auxiliaire pouvant être le signal en sortie du décodeur CELP, le signal d'excitation du décodeur CELP ou l'enveloppe de ces signaux, ou finalement tout autre signal représentatif de l'énergie du signal prédictif décodé délivré par le codeur prédictif. The aforementioned auxiliary signal delivered by each of the predictive decoders is either the output signal of the non-echo-generating predictive decoder or a filtered version of this signal or an auxiliary signal representative of the energy of the decoded digital audio signal, this auxiliary signal being able to be the output signal of the CELP decoder, the excitation signal of the CELP decoder or the envelope of these signals, or finally any other signal representative of the energy of the decoded predictive signal delivered by the predictive coder.
Chaque décodeur par transformée délivre, après décodage par transformée inverse et addition recouvrement, un signal décodé succession de trames courantes. Dans certaines configurations ce signal peut être ensuite filtré par un filtre perceptuel inverse 1/W(z). Ce filtre est nécessaire dans les configurations où le codeur par transformée encode une version du signal filtrée par un filtre perceptuel W'(z). Les coefficients de ce filtre sont extraits du train binaire reçu. Ces filtres sont représentés en pointillés sur la figure 3a. Dans les tous les cas de figure traités par la suite, le signal décodé par un décodeur par transformée dans lequel l'écho est atténué sera éventuellement suivi d'un tel filtrage perceptuel inverse, notamment dans le cas où un filtrage perceptuel a été introduit dans le codeur. Dans la suite, ces filtres ne seront plus mentionnés dans le but d'alléger les figures. Each decoder per transform delivers, after decoding by inverse transform and overlap addition, a decoded signal succession of current frames. In some configurations this signal can then be filtered by an inverse perceptual filter 1 / W (z). This filter is necessary in configurations where the transform coder encodes a version of the filtered signal by a perceptual filter W '(z). The coefficients of this filter are extracted from the received bitstream. These filters are shown in dashed lines in FIG. 3a. In all the cases discussed below, the signal decoded by a transform decoder in which the echo is attenuated will possibly be followed by such inverse perceptual filtering, especially in the case where perceptual filtering has been introduced into the encoder. In the following, these filters will no longer be mentioned in order to lighten the figures.
Chaque décodeur par transformée reçoit le signal auxiliaire précité. Each transform decoder receives the aforementioned auxiliary signal.
En référence à la figure 3b, le dispositif objet de l'invention, comporte alors, de manière particulièrement avantageuse, un module 1 de calcul de l'existence, de la position d'origine de l'écho et de valeur d'atténuation applicable dans la trame courante, ce module recevant, d'une part, le signal auxiliaire xP; (n) délivré par la deuxième sortie du décodeur prédictif de rang i de la pluralité de décodeur prédictif et, d'autre part, le signal décodé x,j(n) délivré par la sortie d'un décodeur par transformée inverse de rang j de la pluralité de décodeurs par transformée inverse. Le module de calcul 1 précité délivre un signal de présence, de position d'écho et de valeur d'atténuation d'écho applicable dans la trame courante, ce signal étant noté DPG sur la figure 3b. With reference to FIG. 3b, the device that is the subject of the invention then has, in a particularly advantageous manner, a module 1 for calculating the existence, the original position of the echo and the applicable attenuation value. in the current frame, this module receiving, on the one hand, the auxiliary signal xP; (n) delivered by the second output of the predictive decoder of rank i of the plurality of predictive decoder and, on the other hand, the decoded signal x, j (n) delivered by the output of a decoder by inverse transform of rank j of the plurality of decoders by inverse transform. The calculation module 1 above provides a presence signal, echo position and echo attenuation value applicable in the current frame, this signal being noted DPG in Figure 3b.
En outre, afin d'assurer l'atténuation des échos indésirables, le dispositif, objet de l'invention, comporte un module 2 d'atténuation de l'écho recevant le signal décodé succession de trames courantes délivré par le décodeur par transformée inverse de rang j et, bien entendu, le signal de présence, de position d'origine d'écho et de valeur d'atténuation d'écho applicable dans la trame courante, c'est-à-dire le signal DPG délivré par le module 1. In addition, in order to ensure the attenuation of undesirable echoes, the device which is the subject of the invention comprises an echo attenuation module 2 receiving the decoded signal common frame succession delivered by the inverse transform decoder. rank j and, of course, the presence signal, the echo origin position and the echo attenuation value applicable in the current frame, that is to say the DPG signal delivered by the module 1 .
De manière non limitative, le module 2 d'atténuation de l'écho est représenté sur la figure 3b connecté en sortie du module d'addition recouvrement d'étage j, lequel est lui-même connecté en sortie du module de décodage des coefficients spectraux par transformée inverse de rang correspondant. Le module 2 d'atténuation d'écho délivre un signal décodé succession de trames courantes dans lequel l'écho est atténué ou sensiblement supprimé, à partir de la position d'origine de l'écho. Ce signal est bien entendu délivré au somateur So représenté sur la figure 3b, lequel joue le même rôle que dans le cas de la figure 3a. In a nonlimiting manner, the echo attenuation module 2 is represented in FIG. 3b connected at the output of the floor covering addition module j, which is itself connected at the output of the spectral coefficients decoding module. by inverse transform of corresponding rank. The echo attenuation module 2 delivers a decoded current frame succession signal in which the echo is attenuated or substantially suppressed, from the original position of the echo. This signal is of course delivered to the somer So shown in Figure 3b, which plays the same role as in the case of Figure 3a.
On comprend, en particulier, que le module 1 de calcul de l'existence et de la position d'origine et de la valeur d'atténuation applicable dans la trame courante permet de délivrer le signal DPG conformément à la mise en oeuvre du procédé objet de l'invention tel que représenté en figure 2b lorsque le rapport des enveloppes est supérieur à la valeur du seuil S, la valeur d'atténuation de l'écho applicable dans la trame courante étant en outre communiqué au module 2 d'atténuation d'écho, ainsi qu'il sera décrit ci-après en liaison avec la figure 3c. It is understood, in particular, that the module 1 for calculating the existence and the original position and the attenuation value applicable in the current frame makes it possible to deliver the signal DPG in accordance with the implementation of the object process of the invention as represented in FIG. 2b when the ratio of the envelopes is greater than the value of the threshold S, the attenuation value of the echo applicable in the current frame being further communicated to the attenuation module 2 of echo, as will be described hereinafter with reference to FIG. 3c.
La figure 3c représente un mode de mise en oeuvre particulier non limitatif du module 1 de calcul de l'existence de la position d'origine d'écho ainsi que de la valeur d'atténuation d'écho applicable dans la trame courante. FIG. 3c represents a particular nonlimiting embodiment of the module 1 for calculating the existence of the echo origin position as well as the echo attenuation value applicable in the current frame.
Ainsi que représenté sur la figure 3c précitée, le module 1 comprend avantageusement un module 1 o de calcul d'enveloppe temporelle des signaux décodés xa, (n) et x,.,(n) délivré par les étages i et j respectifs des décodeurs prédictifs, respectivement des décodeurs par transformée inverse. As represented in FIG. 3c above, the module 1 advantageously comprises a module 1 o for calculating the time envelope of the decoded signals xa, (n) and x,., (N) delivered by the respective stages i and j of the decoders predictive or inverse transform decoders, respectively.
Le module 1 comporte en outre un module 11 de calcul du rapport d'enveloppe à partir des signaux Envp, (k) et Env,i(k) délivrés par le module 10 de calcul d'enveloppe temporelle. The module 1 further comprises a module 11 for calculating the envelope ratio from the signals Envp, (k) and Env, i (k) delivered by the temporal envelope calculation module 10.
Le module 11 délivre alors la valeur R(k) du rapport précité à un module 12 de calcul de décision et de position ainsi que la valeur d'atténuation pour finalement délivrer le signal DPG précité. The module 11 then delivers the value R (k) of the aforementioned ratio to a decision and position calculation module 12 and the attenuation value to finally deliver the aforementioned DPG signal.
Le module 1 o de calcul d'enveloppe temporelle peut comprendre, avantageusement, un premier module de calcul spécifique permettant le calcul de l'enveloppe du signal auxiliaire 4(n) selon la relation: N 1 Env p, (k) = xP1(kN + n)2,k = 0, ..., K 1. =o The temporal envelope calculation module 1 o can advantageously comprise a first specific calculation module that makes it possible to calculate the envelope of the auxiliary signal 4 (n) according to the relation: N 1 Env p, (k) = xP1 ( kN + n) 2, k = 0, ..., K 1. = o
Dans la relation précédente: n est le rang de l'échantillon, N est la longueur du sous-bloc sur lequel est calculé un point d'enveloppe, K est le nombre total de sous-blocs dans une trame de longueur K N. Le premier module spécifique peut en outre être constitué par un module numérique permettant de calculer l'enveloppe du signal auxiliaire précité xP1(n) Envp,(n)=aÉMaxuxP1Envp,(n 1))+(1 a)ÉIxP,a(n. In the previous relation: n is the rank of the sample, N is the length of the sub-block on which is calculated an envelope point, K is the total number of sub-blocks in a frame of length K N. the first specific module may also be constituted by a digital module for calculating the envelope of the aforementioned auxiliary signal xP1 (n) Envp, (n) = aEMaxuxP1Envp, (n 1)) + (1 a) ÉIxP, a (n.
En outre, le module 10 peut comporter un deuxième module spécifique de calcul de l'enveloppe du signal de sortie du module de décodage par transformée inverse selon la relation: N 1 Envr,(k)=xTJ(kN+n)2,k=0,..., K 1. n=o In addition, the module 10 may comprise a second specific module for calculating the envelope of the output signal of the inverse transform decoding module according to the equation: N 1 Envr, (k) = xTJ (kN + n) 2, k = 0, ..., K 1. n = o
Dans la relation précédente, n, N et K désignent les mêmes éléments que dans la relation antérieure. In the previous relation, n, N and K designate the same elements as in the previous relation.
Le deuxième module spécifique peut en outre être constitué par un module numérique permettant de calculer l'enveloppe du signal précité selon la relation pour le signal décodé par transformée inverse: Env,i (n) = aÉMax(JxTi(nl,EnvT, (n 1))+(1 a)ÉIxTj (n). The second specific module can also be constituted by a digital module for calculating the envelope of the aforementioned signal according to the relationship for the decoded signal by inverse transform: Env, i (n) = aEmax (JxTi (nl, EnvT, (n 1)) + (1 a) ÉIxTj (n).
Dans le mode de calcul correspondant précité on calcule en fait l'enveloppe en effectuant un filtrage passe-bas du premier ordre sur la valeur absolue du signal décodé. In the above-mentioned corresponding calculation mode, the envelope is in fact calculated by performing a first-order low-pass filtering on the absolute value of the decoded signal.
Les deux modes de calcul de la valeur d'enveloppe du signal décodé par transformée inverse sont, bien entendu, donnés à titre d'exemple non limitatif. The two modes of calculating the envelope value of the decoded signal by inverse transform are, of course, given by way of non-limiting example.
Le module 11 de calcul du rapport d'enveloppe est maintenant décrit lorsque l'enveloppe est calculée par sous-blocs de N échantillons. The module 11 for calculating the envelope ratio is now described when the envelope is calculated by sub-blocks of N samples.
Le module 1 l précité comporte alors avantageusement un module de calcul spécifique délivrant directement le rapport R(k) selon la relation suivante: Envi. (k) R(k) = k=O,K 1. EnvP; (k) En outre, dans un mode de mise en oeuvre préférentiel non limitatif, un calcul de rapport d'enveloppe lissée peut être effectué par l'intermédiaire d'un module spécifique donné dans chaque échantillon successif par la valeur Env, (n) Rrs(n)= n = 0, ...,KN -1. EnvP; (n) On comprend que le rapport d'enveloppe lissée est calculé alors sur une trame de longueur K N sensiblement. The above-mentioned module 1 1 then advantageously comprises a specific calculation module directly delivering the ratio R (k) according to the following relationship: Envi. (k) R (k) = k = O, K 1. EnvP; (k) In addition, in a nonlimiting preferred mode of implementation, a smoothed envelope ratio calculation can be carried out by means of a specific module given in each successive sample by the value Env, (n) Rrs (n) = n = 0, ..., KN -1. eNVP; (n) It is understood that the smoothed envelope ratio is then calculated on a frame of length K N substantially.
Enfin, le module 1 comprend un module 12 de calcul de décision de présence écho, de position d'origine d'écho et de valeur d'atténuation applicable à la trame courante, par comparaison de la valeur du rapport R(k) des valeurs d'enveloppe temporelle à la valeur de seuil S. Le module 12 délivre le signal DPG dans les conditions ci-après, lesquelles seront explicitées et décrites en liaison avec les figures 3d, 3e et 3f. Finally, the module 1 comprises a module 12 for calculating echo presence decision, echo origin position and attenuation value applicable to the current frame, by comparing the value of the ratio R (k) of the values. The module 12 delivers the signal DPG under the following conditions, which will be explained and described in connection with Figures 3d, 3e and 3f.
La figure 3d représente un organigramme des étapes essentielles mises en oeuvre par un module de calcul de décision de présence écho et de détermination de la position d'origine de l'écho. FIG. 3d represents a flowchart of the essential steps implemented by an echo presence decision calculating module and determining the origin position of the echo.
Le module précité peut être constitué par un module logiciel lequel, ainsi que représenté en figure 3d, comprend une étape d'initialisation 100 consistant à initialiser le rang k à la valeur 0, rang de l'échantillon de la trame courante par The aforementioned module may consist of a software module which, as shown in FIG. 3d, comprises an initialization step 100 consisting of initializing the rank k at the value 0, rank of the sample of the current frame by
exemple.example.
L'étape 100 est suivie d'une étape 101 consistant à comparer la valeur du rapport d'enveloppe R(k) à la valeur de seuil S par comparaison de supériorité ou d'égalité. Step 100 is followed by a step 101 of comparing the value of the envelope ratio R (k) with the threshold value S by comparison of superiority or equality.
Sur réponse négative à l'étape 101, une étape 102 est appelée consistant à comparer le rang de l'échantillon k à la valeur maximale K-1 par comparaison d'infériorité stricte. La réponse positive au test 102 précité, permet, en une étape 103, d'incrémenter la valeur k du rang de l'échantillon à la valeur k+l pour un retour au test 101 de comparaison de la valeur du rapport à la valeur de seuil S. - 21 - Lorsqu'au contraire, à l'étape 102, la réponse est négative, c'est-à-dire lorsque le calcul, d'une part, de la valeur du rapport R(k) et de comparaison, d'autre part, de cette valeur à la valeur de seuil S a été effectuée pour tous les échantillons, une étape 105 est appelée laquelle consiste à constater l'absence d'écho et à retourner à une étape de fin 106. On a negative response in step 101, a step 102 is called comparing the rank of the sample k to the maximum value K-1 by comparison of strict inferiority. The positive response to the above-mentioned test 102 makes it possible, in a step 103, to increment the value k of the rank of the sample to the value k + 1 for a return to the test 101 for comparing the value of the ratio with the value of threshold S. - 21 - When on the contrary, in step 102, the answer is negative, that is to say when the computation, on the one hand, of the value of the ratio R (k) and of comparison on the other hand, from this value to the threshold value S has been made for all the samples, a step 105 is called which consists of noting the absence of echo and returning to an end step 106.
Au contraire, sur réponse positive au test 101, une étape 104 et appelée laquelle consiste à constater la présence d'écho et à instancier la valeur de position de l'origine de l'écho, valeur notée Pos, à la valeur k correspondante du rang du sous-bloc, la position d'origine de l'écho correspondant dans ce cas au rang de l'échantillon considéré. On the contrary, on a positive response to the test 101, a step 104 and called which is to note the presence of echo and to instantiate the position value of the origin of the echo, noted value Pos, to the corresponding value k of the rank of the sub-block, the original position of the echo corresponding in this case to the rank of the sample considered.
L'étape 104 est alors suivie de l'étape 106 de fin de discrimination d'écho. Step 104 is then followed by step 106 of end of echo discrimination.
Un exemple de mise en oeuvre d'un module spécifique de calcul constitué par exemple par un module logiciel de calcul numérique de la valeur d'atténuation applicable à la trame courante pour exécuter la suppression ou l'atténuation des échos indésirables est représentée en figure 3e. An example of implementation of a specific calculation module constituted for example by a digital software calculation module of the attenuation value applicable to the current frame to perform the suppression or attenuation of unwanted echoes is shown in FIG. .
Le module de calcul logiciel précité peut être implanté ainsi que décrit précédemment dans le module 12 représenté en figure 3e ou, le cas échéant, dans le module d'atténuation 2 lui-même décrit précédemment dans la description en liaison avec la figure 3b sans sortir du cadre de l'objet de la présente invention. The above-mentioned software calculation module can be implemented as previously described in the module 12 shown in FIG. 3e or, if appropriate, in the attenuation module 2 itself described previously in the description in conjunction with FIG. of the scope of the subject of the present invention.
En référence à la figure 3e, on dispose en 1 er lieu de la position de l'écho à l'étape 200 k=Pos. Cette position a été déterminée précédemment ainsi que décrit en liaison avec la figure 3d. With reference to FIG. 3e, the position of the echo in step 200 k = Pos. This position has been determined previously as described in connection with FIG. 3d.
L'étape 200 est suivie d'une l'étape 201 de calcul de la valeur d'atténuation, c'est-à-dire finalement d'un gain applicable pour chaque échantillon à partir de la position d'origine de l'écho. Step 200 is followed by a step 201 of calculating the attenuation value, that is to say finally an applicable gain for each sample from the original position of the echo .
Selon un aspect remarquable de mise en oeuvre du procédé et du dispositif objet de l'invention, on indique que la valeur d'atténuation est soit la valeur 1 en l'absence d'existence d'écho, soit la valeur de l'inverse du rapport des valeurs d'enveloppe temporelles, en présence d'écho, selon la relation: - 22 - g(k) min( EnvPj (k) ,l. According to a remarkable aspect of implementation of the method and the device which is the subject of the invention, it is indicated that the attenuation value is either the value 1 in the absence of the existence of an echo, or the value of the inverse the ratio of temporal envelope values, in the presence of echo, according to the relation: g (k) min (EnvPj (k), l.
EnvTi(k) La valeur finalement retenue correspond à la valeur minimale entre la valeur 1 et la valeur de l'inverse du rapport des valeurs d'enveloppe temporelles précitées. EnvTi (k) The value finally retained corresponds to the minimum value between the value 1 and the value of the inverse of the ratio of the aforementioned temporal envelope values.
On comprend ainsi, qu'en l'absence d'écho, la valeur 1 est appliquée mais qu'en présence d'écho, l'application d'une valeur d'atténuation, ou valeur de gain, permet alors de rétablir une situation comparable à celle de l'absence d'écho, en raison de l'application de la valeur inverse du rapport des signaux d'enveloppe. It is thus understood that, in the absence of an echo, the value 1 is applied but that in the presence of echo, the application of an attenuation value, or gain value, then makes it possible to restore a situation comparable to that of the absence of echo, due to the application of the inverse value of the ratio of the envelope signals.
On comprend ainsi, que le procédé et le dispositif, objets de l'invention, apparaissent particulièrement remarquables dans la mesure où l'atténuation d'échos correspond sensiblement à une correction automatique de gain appliquée en fonction et à partir de la position d'origine des échos. It is thus understood that the method and the device which are the subject of the invention appear particularly remarkable insofar as the echo attenuation corresponds substantially to an automatic gain correction applied as a function of and from the original position. echoes.
L'étape 201 est en effet suivie d'une l'étape 202 laquelle consiste à initialiser la valeur de n rang de l'échantillon à la valeur 0, c'est-àdire la valeur du rang d'échantillon effectif à partir de laquelle l'atténuation est appliquée dans la trame courante. Step 201 is in fact followed by a step 202 which consists in initializing the value of n rank of the sample at the value 0, ie the value of the effective sample rank from which the attenuation is applied in the current frame.
L'étape 202 est suivie de l'étape 203 laquelle consiste à appliquer effectivement la valeur de l'atténuation g(k) au signal d'entrée Si (k N + n) pour engendrer le signal de sortie So 1(k N + n) selon la relation: So (k N + n) = Cte g(k) S,,,(k N + n) . L'étape 203 est alors suivie de l'étape 204 consistant à comparer la valeur de n par comparaison d'infériorité à la valeur N-1 désignant en fait le rang de l'avant dernier échantillon de la trame courante. Step 202 is followed by step 203 which consists in actually applying the value of the attenuation g (k) to the input signal Si (k N + n) to generate the output signal So 1 (k N + n) according to the relation: So (k N + n) = Cte g (k) S ,,, (k N + n). Step 203 is then followed by step 204 of comparing the value of n by inferiority comparison to the N-1 value, which is in fact the rank of the penultimate sample of the current frame.
Sur réponse positive à l'étape 204 une étape 205 est appelée consistant à incrémenter le rang de l'échantillon n à la valeur n+l suivie d'un retour à l'application de la valeur d'atténuation g(k) à l'étape 203. Ce processus est poursuivi tant que le rang n de l'échantillon est inférieur à N-1. On a positive response in step 204 a step 205 is called to increment the rank of the sample n to the value n + 1 followed by a return to the application of the attenuation value g (k) to the Step 203. This process is continued as long as the rank n of the sample is less than N-1.
Au contraire, sur réponse négative à l'étape 204, le dernier échantillon de la trame courante ayant été traité, une étape 206 est appelée, laquelle consiste à - 23 - comparer la valeur du rang k de l'échantillon à la valeur K-1 avant-dernière valeur du rang des sous-blocs dans une trame de longueur K N. Sur réponse positive au test 206, une étape 207 est appelée consistant à incrémenter la valeur de k à la valeur de k+l puis de retour à l'étape 201 pour l'appel de la valeur d'atténuation g(k) et poursuite du processus tant que le rang du dernier bloc n'est pas atteint. On the contrary, on a negative response at step 204, the last sample of the current frame having been processed, a step 206 is called, which consists in comparing the value of the rank k of the sample with the value K- 1 second to last value of the rank of the sub-blocks in a frame of length K N. On positive response to the test 206, a step 207 is called consisting in incrementing the value of k to the value of k + 1 and then returning to the step 201 for calling the attenuation value g (k) and continuing the process as long as the rank of the last block is not reached.
Au contraire, sur réponse négative au test 206, le dernier sous-bloc ayant été atteint, une étape 208 de fin est appelée, la trame courante ayant ainsi été traitée et les échos atténués sur cette dernière. On the contrary, on a negative response to the test 206, the last sub-block having been reached, an end step 208 is called, the current frame having thus been processed and the echoes attenuated on the latter.
On comprend, en particulier, qu'en ce qui concerne la mise en oeuvre de la figure 3e celle-ci est avantageusement exécutée au niveau du module d'atténuation 2 représenté en figure 3b, mais que, le cas échéant, la valeur d'atténuation g(k) telle que décrite au bloc 201, peut être calculée dans le module 12 représenté en figure 3c et transmis directement au module d'atténuation 2 par exemple. Un tel mode de mise en oeuvre n'est pas limitatif et ne sort pas du cadre de l'objet de la présente invention. It will be understood, in particular, that with regard to the implementation of FIG. 3e, this is advantageously performed at the attenuation module 2 represented in FIG. 3b, but that, if necessary, the value of FIG. attenuation g (k) as described in block 201, can be calculated in the module 12 shown in Figure 3c and transmitted directly to the attenuation module 2 for example. Such a mode of implementation is not limiting and does not go beyond the scope of the subject of the present invention.
Enfin, ainsi que représenté en figure 3b, le dispositif objet de l'invention, comprend en outre au niveau du décodeur, un circuit de réception et de traitement du message de signalisation d'existence d'écho transmis conjointement avec chaque trame courante du codeur au décodeur. Finally, as shown in FIG. 3b, the device that is the subject of the invention further comprises, at the level of the decoder, a reception and processing circuit of the echo-existence signaling message transmitted together with each current frame of the encoder. to the decoder.
Sur la figure 3b précitée, le circuit de réception et de traitement est représenté en pointillés noté Ec et est réputé permettre le traitement et la lecture de la valeur de la variable Ec représentative de la présence ou de l'absence d'écho dans la trame courante transmise. Un tel circuit peut correspondre à la lecture de la valeur d'un bit de drapeau dans le message de signalisation de fausse alarme par exemple. In the above-mentioned FIG. 3b, the reception and processing circuit is represented in dotted lines denoted by Ec and is deemed to allow the processing and reading of the value of the variable Ec representative of the presence or absence of echo in the frame. current transmitted. Such a circuit may correspond to the reading of the value of a flag bit in the false alarm signaling message for example.
Un tel circuit est connu en tant que tel et, pour cette raison, ne sera pas décrit de manière détaillée. Such a circuit is known as such and, for this reason, will not be described in detail.
Ainsi que représenté en outre en figure 3f, pour un message de signalisation du type message de fausse alarme de présence d'échos dans la trame courante, le dispositif selon l'invention comprend associé au module 1 de calcul de décision d'existence de position d'origine d'écho et de la valeur d'atténuation applicable aux - 24 - échos dans la trame courante, un module logiciel de lecture de la valeur de la variable Ec, c'est-à-dire du message de fausse alarme. As further represented in FIG. 3f, for a signaling message of the false alarm message type of presence of echoes in the current frame, the device according to the invention comprises associated with the positional decision calculation module 1 echo origin and the attenuation value applicable to the echoes in the current frame, a software module for reading the value of the variable Ec, that is to say the false alarm message.
Sur lecture à l'étape 300 de la figure 3f du message de fausse alarme et de la variable Ec à la valeur vraie, l'information délivrée par le message correspond à une absence a priori d'écho sur la trame courante, c'est-à-dire Ec=1 par exemple, c'est-à-dire sur réponse négative au test 300, la présence écho est mise à la valeur 0 à l'étape 301, ECHO=O par inhibition du module de calcul de décision d'existence de position d'origine d'écho et de valeur d'atténuation applicable, aucune des étapes 100, 101 à 106 de la figure 3d et correspondant à la figure 3f n'étant alors mise en oeuvre pour déterminer la position d'écho. L'étape 301 est alors suivie d'une étape d'appel de l'étape 106 de fin de détermination de la position d'écho. On comprend que, l'étape 301 permet d'exécuter une inhibition du processus de calcul de décision d'existence de position d'origine d'écho et de valeur d'atténuation applicable. On reading in step 300 of FIG. 3f of the false alarm message and of the variable Ec at the true value, the information delivered by the message corresponds to an a priori echo absence on the current frame, it is ie Ec = 1 for example, that is to say on negative response to the test 300, the echo presence is set to 0 in step 301, ECHO = O by inhibiting the decision calculation module of existence of echo origin position and applicable attenuation value, none of the steps 100, 101 to 106 of Figure 3d and corresponding to Figure 3f being then used to determine the position of echo. Step 301 is then followed by a call step of step 106 of end of determination of the echo position. It will be understood that step 301 performs an inhibition of the echo origin position and applicable attenuation value decision calculation process.
Au contraire, sur réponse positive au test 300 de la figure 3f, l'information délivrée par le message et en particulier par la variable Ec, Ec=0 dans l'exemple donné, correspond à une présence a priori d'écho sur la trame courante. On the contrary, on a positive response to the test 300 of FIG. 3f, the information delivered by the message and in particular by the variable Ec, Ec = 0 in the example given, corresponds to a presence a priori of echo on the frame common.
Dans cette situation, la réponse positive au test 300 précité permet d'activer le processus de calcul de décision d'existence, de position d'origine d'écho et de valeur d'atténuation applicable selon les étapes 100 à 106 de la figure 3d et de la figure 3f correspondante. On comprend, en particulier, que le procédé, et le dispositif objets de l'invention, permettent, lorsque ces derniers sont mis en oeuvre conformément à la figure 2c et à la figure 3f, une économie en coût de calcul au décodage compte tenu de l'inhibition du processus de calcul de présence écho de position d'origine et de valeur d'atténuation mis en oeuvre, grâce à la détermination a priori de l'existence d'un écho dans la trame courante au niveau du codage et du codeur d'origine. In this situation, the positive response to the above-mentioned test 300 makes it possible to activate the decision-making process of existence, echo origin position and attenuation value applicable according to steps 100 to 106 of FIG. 3d. and corresponding FIG. 3f. It is understood, in particular, that the method, and the device objects of the invention, when these are implemented in accordance with FIG. 2c and FIG. 3f, allow a saving in calculation cost at decoding taking into account the the inhibition of the original position echo and attenuation value presence calculation process implemented, thanks to the a priori determination of the existence of an echo in the current frame at the coding and the encoder level original.
Sur la figure 3b, la flèche en pointillé allant de la partie codage prédictif à la partie décodage des coefficients spectraux représente la possibilité de reconstitution des coefficients spectraux en utilisant partiellement la sortie de décodeur prédictif. A titre d'exemple non limitatif une solution consiste à effectuer une transformation - 25 temps-fréquence du signal de sortie du décodeur prédictif puis à retrancher des coefficients spectraux décodés, les composantes spectrales du signal prédictif que l'on veut éliminer de telle sort que le signal temporel reconstitué XS(n) puisse être obtenu en ajoutant le signal en sortie du décodeur prédictif et le signal en sortie de la transformation fréquence-temps après atténuation. En effet, cette façon de procéder est efficace du fait que les coefficients par transformées reçus représentent le signal et qu'ils peuvent remplacer avantageusement les coefficients spectraux du signal prédictif dans certaines zones de fréquence. In FIG. 3b, the dotted arrow from the predictive coding part to the decoding part of the spectral coefficients represents the possibility of reconstituting the spectral coefficients by partially using the predictive decoder output. By way of nonlimiting example, a solution consists in performing a time-frequency transformation of the output signal of the predictive decoder and then in subtracting decoded spectral coefficients, the spectral components of the predictive signal which it is desired to eliminate from such a fate that the reconstituted time signal XS (n) can be obtained by adding the output signal of the predictive decoder and the output signal of the frequency-time transformation after attenuation. Indeed, this procedure is effective because the received transform coefficients represent the signal and they can advantageously replace the spectral coefficients of the predictive signal in certain frequency areas.
Le pseudo code permettant de réaliser l'opération "décodage coefficients spectraux" de la figure 3b est donné ci-après. The pseudo code for performing the operation "spectral coefficient decoding" of Figure 3b is given below.
Pseudo Code for k = 0, ..., Kb-1 CoeffRi(k) = CoeffTj(k) end for k = Kb, . .., Kf-1 if (flag(k) == dispo) CoeffRi(k) = CoeffTj(k) - Coeffp,(k) else CoeffRR(k) = 0 endif end Les coefficients Coeffp;(k) sont obtenus par transformation temps-fréquence du signal issu du décodeur prédictif de la couche i. Cette opération est réalisée dans le boite "décodage coefficients spectraux" de la figure 3b. Pseudo Code for k = 0, ..., Kb-1 CoeffRi (k) = CoeffTj (k) end for k = Kb,. .., Kf-1 if (flag (k) == dispo) CoeffRi (k) = CoeffTj (k) - Coeffp, (k) else CoeffRR (k) = 0 endif end The coefficients Coeffp; (k) are obtained by time-frequency transformation of the signal from the predictive decoder of the layer i. This operation is performed in the "spectral coefficients decoding" box of FIG. 3b.
Une première variante de mise en oeuvre du dispositif objet de l'invention, sera maintenant décrite en liaison avec la figure 4a et les figures suivantes. A first variant embodiment of the device that is the subject of the invention will now be described with reference to FIG. 4a and the following figures.
La variante de mise en oeuvre précitée est mise en oeuvre pour un décodeur par transformée inverse de rang j comportant un module de décodage fréquentiel inverse désigné décodage coefficients spectraux étage MDCT inverse sur la figure précitée connecté en cascade avec un module d'addition recouvrement. The above implementation variant is implemented for a reverse-conversion decoder of rank j comprising an inverse frequency decoding module designated decoding spectral coefficients inverse MDCT stage in the aforementioned figure connected in cascade with a recovery addition module.
- 26 - Toutefois, ainsi que représenté sur la figure 4a, le dispositif objet de l'invention comprend un module 2 d'atténuation d'écho intercalé entre le module de décodage inverse des coefficients spectraux et le module d'addition recouvrement. However, as shown in FIG. 4a, the device that is the subject of the invention comprises an echo attenuation module 2 interposed between the inverse decoding module of the spectral coefficients and the overlay adding module.
En outre, un module d'addition recouvrement auxiliaire portant la référence 3 est prévu, lequel reçoit deux trames successives de coefficients spectraux décodés délivrés par le module de décodage inverse de la couche j et délivre un signal décodé auxiliaire qui n'est autre que le signal (n) précédemment décrit dans la description. Dans le signal précité correspondant à la trame courante, les échos ne sont pas atténués. Ce signal est délivré au module 1 de calcul de l'existence de la position d'origine de l'écho et de la valeur d'atténuation dans la trame courante. Le module 1 de calcul de l'existence de la position d'origine de l'écho et de la valeur d'atténuation applicable dans la trame courante délivre alors le signal de présence de position d'écho et de valeur d'atténuation DPG dans la trame courante au module d'atténuation d'écho 2. In addition, an auxiliary overlap adding module with the reference 3 is provided, which receives two successive frames of decoded spectral coefficients delivered by the inverse decoding module of the layer j and delivers an auxiliary decoded signal which is none other than the signal (n) previously described in the description. In the aforementioned signal corresponding to the current frame, the echoes are not attenuated. This signal is delivered to module 1 for calculating the existence of the original position of the echo and the attenuation value in the current frame. The module 1 for calculating the existence of the original position of the echo and the attenuation value applicable in the current frame then delivers the presence signal of echo position and attenuation value DPG in the current frame at the echo attenuation module 2.
Le mode de mise en oeuvre du dispositif objet de l'invention, tel que représenté en figure 4a, implique une opération directe du module 2 d'atténuation de l'écho sur une trame courante et une trame précédente ainsi qu'il sera décrit ci-après en liaison avec les figures 4b et 4c. The mode of implementation of the device according to the invention, as represented in FIG. 4a, involves a direct operation of the echo attenuation module 2 on a current frame and a previous frame as will be described here. -after in connection with Figures 4b and 4c.
La figure 4b représente, de manière schématique, le phénomène d'apparition de pré- et/ou de post-échos qui se produit dans deux fenêtres en recouvrement dans un décodeur par transformée inverse. Figure 4b schematically shows the phenomenon of occurrence of pre- and / or post-echoes that occurs in two overlapping windows in a reverse transform decoder.
Sur la figure 4b précitée: xm(n) désigne le signal décodé issu du décodage par transformée inverse pour la trame courante de rang m, trame courante notée Tc. In the aforementioned FIG. 4b: xm (n) denotes the decoded signal resulting from the inverse transform decoding for the current frame of rank m, current frame denoted Tc.
Be désigne le bloc courant de la trame courante Tc comprenant les échantillons compris entre 0 et N/2. Be denotes the current block of the current frame Tc comprising the samples between 0 and N / 2.
Bs désigne Bs le bloc suivant d'échantillons, c'est-à-dire le bloc d'échantillons compris entre les échantillons N/2 et N de la trame courante Tc. Bs denotes Bs the following block of samples, i.e., the block of samples between the N / 2 and N samples of the current frame Tc.
- 27 - x,_,(n) désigne le signal décodé par transformée inverse pour la trame précédente Tp comprenant les échantillons de rang N/2 à N/2, la trame précédente et la trame courante étant en recouvrement entre les échantillons 0, N/2 formant le bloc précédent de la trame précédente, bloc Bp en recouvrement avec le bloc courant Bc de la trame courante Tc. X, _, (n) denotes the inverse transformed decoded signal for the previous frame Tp comprising the samples of rank N / 2 to N / 2, the previous frame and the current frame being overlapped between the samples 0, N / 2 forming the previous block of the previous frame, block Bp overlapping with the current block Bc of the current frame Tc.
Sur la figure 4b on a en outre représenté une transition SI ainsi que le niveau de bruit de la trame courante de rang m. FIG. 4b further shows a transition S1 as well as the noise level of the current frame of rank m.
La figure 4c représente la valeur du rapport de signaux d'enveloppe lissé Rs (n) calculé ainsi que mentionné précédemment dans la description. Figure 4c shows the value of the smoothed envelope signal ratio Rs (n) calculated as previously mentioned in the description.
On constate à l'observation de la figure 4c et de la figure 4b que le pré-écho apparaît une demie fenêtre avant la transition de montée du signal de transition SI. Les signaux des fenêtres en recouvrement peuvent alors être découpées ou affaiblies avant la transition montante dans le cas du pré-écho. Elles sont alors découpées ou affaiblies après la transition descendante du signal de transition SI dans le cas du post-écho. It can be seen from the observation of FIG. 4c and FIG. 4b that the pre-echo appears a half-window before the transition transition of the transition signal SI. The signals of the overlapping windows can then be cut or weakened before the rising transition in the case of the pre-echo. They are then cut off or weakened after the downward transition of the IF transition signal in the case of the post-echo.
Dans ce dernier cas, on constate que l'écho persiste une demi fenêtre après la transition. In the latter case, it is found that the echo persists half a window after the transition.
La mise en oeuvre du dispositif objet de l'invention conformément à la première variante de réalisation de la figure 4a implique une adaptation des modules de calcul 10, 12 et 13 représentés en figure 3c de la manière ci-après. The implementation of the device according to the invention according to the first embodiment of Figure 4a involves an adaptation of the calculation modules 10, 12 and 13 shown in Figure 3c in the manner below.
Le module 1 de calcul de la décision d'existence d'écho, de la position d'origine de l'écho et de la valeur d'atténuation applicable dans la trame courante est mis en oeuvre de façon à calculer un rapport de signaux d'enveloppe lissée à partir du signal auxiliaire 4(n) de l'étage i du décodage prédictif CELP conjointement au signal décodé par transformée inverse xTi (n) en sortie de l'étage j du décodage par transformée MDCT de rang j et du rapport d'enveloppe lissée correspondant. The module 1 for calculating the echo decision, the echo origin position and the applicable attenuation value in the current frame is implemented so as to calculate a signal ratio of the echo. envelope smoothed from the auxiliary signal 4 (n) of the prediction decoder stage CELP together with the inverse transform decoded signal xTi (n) at the output of the stage MDCT transform decoding stage j and the ratio corresponding smoothed envelope.
A titre d'exemple non limitatif, on indique que le signal d'enveloppe lissée est donné par la relation: EnvTj (n) = [Max(x(n), EnvTi (n -1)] a + (1 a) ['cri (n)l. By way of nonlimiting example, it is indicated that the smoothed envelope signal is given by the relation: EnvTj (n) = [Max (x (n), EnvTi (n -1)] a + (1 a) [ 'cry (n) l.
Dans la relation précédente, on indique que le signal d'enveloppe du signal décodé par transformée fréquentielle inverse est calculé de manière récursive par rapport à la valeur du signal d'enveloppe pour le rang d'échantillon précédent n-1, c'est-à-dire à partir de la valeur EnvTj(n-1) par le choix du maximum entre cette valeur et la valeur absolue du signal décodé x,:j (n) par transformée inverse de la trame courante, par combinaison linéaire à la valeur absolue précitée affectée d'un coefficient de pondération expérimental désigné a. In the previous relation, it is indicated that the envelope signal of the inverse frequency transform decoded signal is computed recursively with respect to the value of the envelope signal for the preceding sample rank n-1, ie that is to say from the value EnvTj (n-1) by the choice of the maximum between this value and the absolute value of the decoded signal x,: j (n) by inverse transform of the current frame, by linear combination with the value aforementioned absolute with a designated experimental weighting factor a.
En outre, ainsi que représenté en figure 4d, le module 11 du calcul du rapport d'enveloppe permet de calculer le rapport d'enveloppe lissée selon la relation précédente à partir des signaux d'enveloppe délivrés par le module 10 délivrant les signaux d'enveloppe précités. La valeur du signal d'enveloppe du signal auxiliaire délivré par le décodeur prédictif de rang i est calculée de la même manière que dans le cas de la figure 3c. In addition, as represented in FIG. 4d, the module 11 of the envelope ratio calculation makes it possible to calculate the smoothed envelope ratio according to the preceding relation from the envelope signals delivered by the module 10 delivering the signals of FIG. aforementioned envelope. The value of the envelope signal of the auxiliary signal delivered by the predictive decoder of rank i is calculated in the same manner as in the case of FIG. 3c.
La valeur du rapport des signaux d'enveloppe lissée vérifie la relation: EnvT (n) R15(n)= n = 0, ...,KN -1. Env,, (n) La valeur précitée est calculée pour une trame de longueur K N où K désigne le nombre total de sous-blocs dans une trame de longueur K N, N étant la longueur du sousbloc en nombre d'échantillons sur lequel est calculé un point de l'enveloppe. The value of the smoothed envelope signal ratio satisfies the relationship: EnvT (n) R15 (n) = n = 0, ..., KN -1. Env ,, (n) The aforesaid value is calculated for a frame of length KN where K denotes the total number of sub-blocks in a frame of length KN, N being the length of the subblock in number of samples on which is calculated a point of the envelope.
En ce qui concerne le module de calcul spécifique de la valeur d'atténuation applicable dans la trame courante, on indique que le module de calcul précité est un module logiciel lequel est adapté de façon à permettre l'application de la valeur d'atténuation compte tenu de l'existence de pré- ou de post-échos ainsi qu'il sera décrit ci-après en liaison avec la figure 4e. As regards the calculation module specific for the attenuation value applicable in the current frame, it is indicated that the aforementioned calculation module is a software module which is adapted so as to allow the application of the attenuation value. given the existence of pre- or post-echoes as will be described below in connection with Figure 4e.
La mise en oeuvre du calcul de la valeur d'atténuation, ainsi que décrit précédemment dans la description, peut être effectuée soit dans le module 1 de calcul de décision d'existence d'écho et de position d'origine d'écho, soit, le cas échéant, dans le module 2 d'atténuation de l'écho de manière non limitative. The implementation of the calculation of the attenuation value, as described previously in the description, can be carried out either in the echo and echo origin decision decision module 1 or , if necessary, in the echo attenuation module 2 in a non-limiting manner.
- 29 - D'une manière générale, en référence à la figure 4e, on indique que pour un signal décodé délivré par le module de décodage par transformée inverse des coefficients spectraux formés par une trame courante et une trame précédente en recouvrement, ainsi que représenté en figure 4b, le module de calcul de décision d'existence, de position d'origine d'écho et de la valeur d'atténuation applicable et, en particulier, le module 13 de ce dernier peut comporter avantageusement ainsi que représenté en figure 4e un module de discrimination de pré-, respectivement de post-échos dans la trame précédente respectivement dans la trame courante par comparaison de l'énergie des échantillons décodés de la trame précédente à l'énergie des échantillons décodés de la trame courante. In general, with reference to FIG. 4e, it is indicated that for a decoded signal delivered by the inverse transform decoding module spectral coefficients formed by a current frame and a previous frame in recovery, as represented in FIG. 4b, the existence decision calculation module, the echo origin position module and the applicable attenuation value and, in particular, the module 13 of the latter may advantageously comprise as shown in FIG. a pre- or post-echo discrimination module in the preceding frame respectively in the current frame by comparison of the energy of the decoded samples of the preceding frame with the energy of the decoded samples of the current frame.
Pour des énergies E _cur et E _ prev des signaux en recouvrement xm j(n) de la trame courante respectivement xn,_1 j(n) de la trame précédente les énergies correspondantes sont calculées par la relation suivante: N! 2 1 E_cur = E x;22(n) n=0 et N!2 1 E _ prev = E x;,Z 1(n) . n=o Si l'énergie de la trame courante E _ cur est supérieure à l'énergie de la trame précédente E _ prev, alors l'existence de pré-échos est détectée lorsque la valeur du rapport des signaux d'enveloppe et, en particulier, la valeur du rapport des signaux d'enveloppe lissé devient supérieure à la valeur de seuil S. Dans le cas contraire, on se trouve alors en situation de post-échos étant précisé en référence à la figure 4b que la transition SI intervenant sur la trame courante de rang m le post-écho concerne en particulier le bloc d'échantillons N à 3N/2-1 de la trame suivante non représentée au dessin. For energies E _cur and E _ prev, signals in overlap xm j (n) of the current frame respectively xn, _1 j (n) of the previous frame the corresponding energies are calculated by the following relation: N! 2 1 E_cur = E x; 22 (n) n = 0 and N! 2 1 E _ prev = E x;, Z 1 (n). n = o If the energy of the current frame E_cur is greater than the energy of the previous frame E _ prev, then the existence of pre-echoes is detected when the value of the ratio of the envelope signals and, in particular, the value of the ratio of the smoothed envelope signals becomes greater than the threshold value S. In the opposite case, it is then in a post-echo situation being specified with reference to FIG. 4b that the transition SI intervening on the current frame of rank m the post-echo concerns in particular the sample block N to 3N / 2-1 of the following frame not shown in the drawing.
Un mode opératoire spécifique particulièrement avantageux non limitatif pour effectuer le calcul des valeurs d'atténuation applicables à la trame courante est explicité ci-après en référence à la figure 4e. A specific, particularly advantageous, nonlimiting procedure for calculating the attenuation values applicable to the current frame is explained below with reference to FIG. 4e.
Suite à une étape 400 d'initialisation à la valeur du rang d'échantillon n=0 comparable à l'étape 202 de la figure 3e, l'étape d'initialisation précitée est suivie d'une étape 401 consistant à discriminer la présence de pré- respectivement de post-échos. L'étape 401 peut avantageusement être exécutée ainsi que mentionné précédemment dans la description, par comparaison des énergies de la trame courante et de la trame précédente. La comparaison porte sur les valeurs E _ cur et E _ prev. Following an initialization step 400 at the value of the sample rank n = 0 comparable to the step 202 of FIG. 3e, the aforementioned initialization step is followed by a step 401 of discriminating the presence of pre- and post-echo respectively. Step 401 can advantageously be performed as mentioned previously in the description, by comparing the energies of the current frame and the previous frame. The comparison deals with the values E _ cur and E _ prev.
Sur discrimination de l'existence de pré-échos, l'énergie de la trame courante étant supérieure à l'énergie de la trame précédente, une étape de test 402 est appelée laquelle consiste à comparer la valeur du rapport du signal d'enveloppe lissé R1;5 (n) par comparaison à la valeur de seuil S. Sur réponse négative au test 402, c'est-à-dire en l'absence de transition valablement détectée, une étape 403 est appelée laquelle maintien la valeur des atténuations pour la trame courante et la trame précédente, valeur d'atténuation notée gnij(n) pour la trame précédente et gnj(n) pour la trame courante à la valeur 1, aucune atténuation n'étant introduite. L'étape 403 est suivie d'une l'étape 404 de retour à l'étape 402 pour continuer le test et incrémentation du rang de l'échantillon n à la valeur n+l. On discrimination of the existence of pre-echoes, the energy of the current frame being greater than the energy of the preceding frame, a test step 402 is called which consists in comparing the value of the ratio of the smoothed envelope signal R1; 5 (n) compared to the threshold value S. On negative response to the test 402, that is to say in the absence of a validly detected transition, a step 403 is called which maintains the value of the attenuations for the current frame and the previous frame, the attenuation value denoted gnij (n) for the previous frame and gnj (n) for the current frame at the value 1, no attenuation being introduced. Step 403 is followed by step 404 returning to step 402 to continue the test and incrementing the rank of sample n to the value n + 1.
Au contraire, sur réponse positive au test 402 une étape 405 est appelée laquelle consiste à comparer le rang de l'échantillon n à la valeur N/2 valeur d'extrémité du bloc courant B, de la trame courante Tc. On the contrary, on a positive response to the test 402 a step 405 is called which consists in comparing the rank of the sample n with the value N / 2 end value of the current block B, of the current frame Tc.
Sur réponse positive au test 405, une étape 407 est appelée, laquelle consiste à affecter à la valeur d'atténuation pour la trame précédente g, n_lj(n) et à la valeur les valeurs d'atténuation pour la trame courante gnj(n) les valeurs spécifiques C1 et respectivement C2. Les valeurs Cl et C2 sont des valeurs spécifiques expérimentales tenant compte du fenêtrage appliqué au décodage. On a positive response to the test 405, a step 407 is called, which consists in assigning to the attenuation value for the previous frame g, n_lj (n) and in the value the attenuation values for the current frame gnj (n). the specific values C1 and C2, respectively. The values C1 and C2 are experimental specific values taking into account the windowing applied to the decoding.
L'étape 407 est suivie d'une l'étape 408 consistant à comparer la valeur du rang de l'échantillon n à une valeur maximale N,,,ax par comparaison de supériorité à l'étape 408. Step 407 is followed by step 408 of comparing the rank value of sample n with a maximum value N ,,, ax by comparison of superiority at step 408.
Sur réponse négative au test 408, une étape 409 est appelée, laquelle consiste à incrémenter la valeur du rang d'échantillon n=n+l. L'étape 409 précité est suivie d'un retour à l'étape 402 pour poursuite de la procédure tant que le rang de l'échantillon n n'est pas supérieur à la valeur Nmax précitée. On a negative response to the test 408, a step 409 is called which increments the value of the sample rank n = n + 1. The aforementioned step 409 is followed by a return to step 402 for further processing as long as the rank of the sample n is not greater than the value Nmax above.
Au contraire, sur réponse positive au test 408, une étape 410 de fin de calcul du gain est appelée. On the contrary, on a positive response to the test 408, a step 410 of end of calculation of the gain is called.
Sur réponse négative au test 405, une étape 406 est appelée laquelle consiste à maintenir la valeur d'atténuation de la trame précédente gn_4(n) égale à la valeur 1, aucune atténuation n'étant appliquée à cette dernière, et à appliquer à la trame courante la valeur d'atténuation g, ni(n) prise par exemple à une valeur C3. On a negative response to the test 405, a step 406 is called which consists in keeping the attenuation value of the previous frame gn_4 (n) equal to the value 1, no attenuation being applied to the latter, and to apply to the current frame the attenuation value g, ni (n) taken for example at a value C3.
L'étape 406 est alors suivie d'un retour à l'étape 408 pour une poursuite du processus conformément au test réalisé à l'étape 408 précédemment décrit. Step 406 is then followed by a return to step 408 for a continuation of the process according to the test performed in step 408 previously described.
Sur discrimination de la présence de post-échos au réponse au test 401, l'énergie de la trame courante E _ cur étant inférieure à l'énergie de la tram précédente E_ prev, le processus de calcul de la valeur d'atténuation appliqué à la trame courante respectivement à la trame précédente, est sensiblement identique au processus décrit relativement à la détection des pré-échos. On the discrimination of the presence of post-echoes in response to test 401, the energy of the current frame E_cur being lower than the energy of the preceding tram E_ prev, the process of calculating the attenuation value applied to the current frame respectively to the previous frame, is substantially identical to the described process relative to the detection of pre-echoes.
Ainsi, sur réponse positive au test 401 de présence de post échos, une étape de test 411 est appelée laquelle correspond sensiblement à l'étape de test 402 précédemment décrite. Sur réponse négative au test 411 une étape 412 et appelée laquelle consiste à maintenir la valeur d'atténuation de la trame courante et de la trame précédente à la valeur 1, c'est-à-dire en l'absence d'atténuation, de manière semblable à l'étape 403 précédemment décrite. L'étape 413 est également semblable à l'incrémentation du rang de l'échantillon n à la valeur n+l de l'étape 404. Thus, on a positive response to the post-echo presence test 401, a test step 411 is called which substantially corresponds to the test step 402 previously described. On a negative response to the test 411 a step 412 and called which is to maintain the attenuation value of the current frame and the previous frame to the value 1, that is to say in the absence of attenuation, similar manner to step 403 previously described. Step 413 is also similar to incrementing the rank of sample n to the value n + 1 of step 404.
Au contraire, sur réponse positive au test 411, une étape 414 est appelée de comparaison du rang d'échantillon n à la valeur N/2 semblable à l'étape 405 précédemment décrite. Le test de l'étape 414 est toutefois inversé par rapport au test de l'étape 405. En effet, sur réponse négative au test 414, on se trouve en présence de post-échos pour la trame courante et la trame précédente. L'étape 416 appelée permet, dans ce cas, d'affecter une valeur d'atténuation notée gii*(n)=C4 respectivement gnu(n)=C5. Les valeurs de C4 et C5 sont des valeurs spécifiques expérimentales. On the contrary, on a positive response to the test 411, a step 414 is called to compare the sample rank n with the N / 2 value similar to the step 405 previously described. The test of step 414, however, is inverted with respect to the test of step 405. In fact, on negative response to test 414, there are post-echoes for the current frame and the previous frame. The step 416 called allows, in this case, to assign an attenuation value denoted gii * (n) = C4 respectively gnu (n) = C5. The values of C4 and C5 are specific experimental values.
- 32 - L'étape 416 est alors suivie d'une étape 417 consistant à comparer le rang de l'échantillon n par comparaison de supériorité à la valeur maximale Nmax à l'étape 417. Sur réponse négative au test de l'étape 417 une étape 418 d'incrémentation n=n+1 du rang de l'échantillon est appelée puis, suivie d'un retour au test de l'étape 411 pour poursuite du test et du processus précité. Step 416 is then followed by a step 417 of comparing the rank of the sample n by comparison of superiority with the maximum value Nmax at step 417. On a negative response to the test of step 417 a step 418 of incrementation n = n + 1 of the rank of the sample is called then followed by a return to the test of step 411 for continuation of the test and the aforementioned process.
Au contraire, sur réponse positive au test 417 la fin de la trame courante ayant été atteinte, alors une étape de fin de processus 419 est appelée. On the contrary, on positive test response 417 the end of the current frame has been reached, so an end of process step 419 is called.
Sur réponse positive au test 414, une étape 415 est appelée laquelle consiste à maintenir la valeur d'atténuation de la trame courante gmj(n) égale à la valeur 1, aucune atténuation n'étant appliquée à cette dernière et à appliquer à la trame précédente, la valeur d'atténuation gm_ij(n) prise par exemple à une valeur C6. On a positive response to the test 414, a step 415 is called which consists of keeping the attenuation value of the current frame gmj (n) equal to the value 1, no attenuation being applied to the latter and to apply to the frame previous, the attenuation value gm_ij (n) taken for example at a value C6.
L'étape 415 est alors suivie d'un retour à l'étape 417 pour une poursuite du processus conformément au test réalisé à l'étape 417 précédemment décrit. Step 415 is then followed by a return to step 417 for a continuation of the process according to the test performed in step 417 previously described.
Pour Une description plus détaillée du choix de la valeur du coefficient d'atténuation C1, C2, C3, C4, C5 et C6, on pourra utilement se reporter à la demande de brevet français n FR 05 04572 déposée au nom de la demanderesse le 4 mai 2005. For a more detailed description of the choice of the value of the attenuation coefficient C1, C2, C3, C4, C5 and C6, it is useful to refer to the French patent application FR 05 04572 filed in the name of the applicant on 4 May 2005.
Enfin, en référence à la figure 4f, le module d'atténuation 2 peut avantageusement être constitué, lorsque ce dernier est mis en oeuvre en amont du module d'addition recouvrement, par application directe des valeurs d'atténuation, c'est-à-dire les valeurs g, 1 (n) et g (n) par l'intermédiaire de multiplicateurs 21 respectivement 22 directement appliquées au signal décodé par transformée inverse, c'est-à-dire aux signaux xn, 1 (n) et respectivement x11 (n) ainsi que représenté à la figure 4f. Finally, with reference to FIG. 4f, the attenuation module 2 may advantageously be constituted, when the latter is implemented upstream of the overlap addition module, by direct application of the attenuation values, ie say the values g, 1 (n) and g (n) by means of multipliers 21 and 22 respectively directly applied to the decoded signal by inverse transform, that is to say to the signals xn, 1 (n) and respectively x11 (n) as shown in Figure 4f.
Les multiplicateurs 21 respectivement 22 délivrent un signal découpé dans lequel les échos ont été atténués, chaque signal correspondant délivré étant noté xrmD j (n) respectivement xn,_, D j (n) lesquels sont directement délivrés au module d'addition recouvrement pour reconstituer le signal reconstruit x; d (n) . Sur la figure 4a, la flèche en pointillé allant de la partie codage prédictif à la partie décodage des coefficients spectraux représente la possibilité de reconstitution - 33 - des coefficients spectraux en utilisant partiellement la sortie de décodeur prédictif. A titre d'exemple non limitatif une solution consiste à effectuer une transformation temps-fréquence du signal de sortie du codeur prédictif puis à retrancher des coefficients spectraux décodés, les composantes spectrales du signal prédictif que l'on veut éliminer de telle sort que le signal temporel reconstitué XS(n) puisse être obtenu en ajoutant le signal en sortie du codeur prédictif et le signal en sortie de la transformation fréquence-temps après atténuation. En effet, cette façon de procéder est efficace du fait que les coefficients par transformées reçus représentent le signal et qu'ils peuvent remplacer avantageusement les coefficients spectraux du signal prédictif dans certaines zones de fréquence. Le pseudo code permettant de réaliser l'opération "décodage coefficients spectraux" est identique à celui décrit pour la figure 3b. The multipliers 21 and 22 respectively deliver a cut signal in which the echoes have been attenuated, each corresponding signal delivered being denoted xrmD j (n) respectively xn, _, D j (n) which are directly delivered to the overlap adding module to reconstitute the reconstructed signal x; d (n). In Fig. 4a, the dashed arrow from the predictive coding portion to the decoding portion of the spectral coefficients represents the possibility of reconstructing the spectral coefficients using partially the predictive decoder output. By way of nonlimiting example, a solution consists in performing a time-frequency transformation of the output signal of the predictive coder and then in subtracting decoded spectral coefficients, the spectral components of the predictive signal that it is desired to eliminate from such a fate that the signal reconstituted time XS (n) can be obtained by adding the output signal of the predictive encoder and the output signal of the frequency-time transformation after attenuation. Indeed, this procedure is effective because the received transform coefficients represent the signal and they can advantageously replace the spectral coefficients of the predictive signal in certain frequency areas. The pseudo code for performing the operation "decoding spectral coefficients" is identical to that described for Figure 3b.
Une deuxième variante de mise en oeuvre du dispositif, objet de la présente invention, de conception simplifiée par rapport au mode de mise en oeuvre du dispositif objet de l'invention représentée en figure 4a, sera maintenant décrite en liaison avec la figure 5a et la figure 5b. A second alternative embodiment of the device, object of the present invention, of simplified design compared to the embodiment of the device object of the invention shown in Figure 4a, will now be described in connection with Figure 5a and the Figure 5b.
Sur la figure 5a on considère un décodeur par transformée inverse de rang j dans lequel le module d'addition/recouvrement auxiliaire est représenté en figure 4a est supprimé. Dans ces conditions, le module de décodage par MDTC inverse délivre ?0 directement les signaux décodés xn, j (n) pour la trame courante et x13(n) de la trame précédente au module d'atténuation de l'écho 2, tel que décrit en figure 4f par exemple, lequel délivre luimême les signaux précités au module d'addition/recouvrement. FIG. 5a considers a reverse-transform decoder of rank j in which the auxiliary addition / overlap module is represented in FIG. 4a is deleted. Under these conditions, the inverse MDTC decoding module directly delivers the decoded signals xn, j (n) for the current frame and x13 (n) of the previous frame to the attenuation module of the echo 2, such as 4f, for example, which delivers the aforementioned signals itself to the addition / overlap module.
Dans ces conditions, le module 1 de calcul de l'existence de la position d'origine de l'écho et de la valeur d'atténuation délivrant le signal DPG reçoit également une trame courante et une trame précédente successivement de coefficients spectraux décodés par transformée inverse en l'absence d'addition/recouvrement auxiliaire. Under these conditions, the module 1 for calculating the existence of the original position of the echo and the attenuation value delivering the signal DPG also receives a current frame and a previous frame successively of transform-decoded spectral coefficients. inverse in the absence of auxiliary addition / recovery.
Ainsi, le module 1 de calcul est adapté de façon à comporter, ainsi que représenté en figure 5b, le module 1 o de calcul d'enveloppe temporelle, le module 11 - 34 - de calcul du rapport d'enveloppe et le module 12 de calcul de discrimination des pré-et post-échos et du calcul du rapport d'enveloppe dans les conditions ci-après. Thus, the calculation module 1 is adapted to include, as shown in FIG. 5b, the temporal envelope calculation module 1 o, the envelope ratio calculation module 11 and the module 12. calculation of pre-and post-echo discrimination and calculation of the envelope ratio under the conditions below.
Le module lo de calcul d'enveloppe temporelle reçoit le signal auxiliaire décodé par le décodeur prédictif signal 4(n), le signal décodé représentatif de la trame courante xm j (n) et le signal décodé représentatif de la trame précédente, xm_, j (n) . Le module 1 o permet alors d'examiner conjointement la trame précédente xm_1 j (n) et la trame courante précitée xm](n) qui se trouve en recouvrement, ainsi que représenté en figure 4b. Il délivre les signaux d'enveloppe Envp,(n), Envmj(n) pour la trame courante respectivement, Envm_lj(n) au module de calcul du rapport d'enveloppe 11. The temporal envelope calculation module 10 receives the auxiliary signal decoded by the signal predictive decoder 4 (n), the decoded signal representative of the current frame xm j (n) and the decoded signal representative of the preceding frame, xm_, j (not) . The module 1 o then makes it possible to jointly examine the previous frame xm_1 j (n) and the aforementioned current frame xm] (n) which is in overlap, as represented in FIG. 4b. It delivers the envelope signals Envp, (n), Envmj (n) for the current frame respectively, Envm_lj (n) to the calculation module of the envelope ratio 11.
Le module 11 de calcul du rapport d'enveloppe permet alors de calculer des valeurs de premier rapport d'enveloppe Rm_1 j (n) entre le signal décodé représentatif de la trame précédente xrn_1 (n) et le signal décodé auxiliaire xp, (n) , d'une part, et de deuxième rapport d'enveloppe Rn, (n) entre le signal décodé de la trame courante x, j (n) et le signal décodé auxiliaire délivré par le décodeur prédictif xp; (n) , d'autre part. The module 11 for calculating the envelope ratio then makes it possible to calculate values of first envelope ratio Rm_1 j (n) between the decoded signal representative of the previous frame xrn_1 (n) and the decoded auxiliary signal xp, (n) on the one hand, and second envelope ratio Rn, (n) between the decoded signal of the current frame x, j (n) and the auxiliary decoded signal delivered by the predictive decoder xp; (n) on the other hand.
Comme dans le cas de la figure 3e par exemple, les valeurs d'atténuation applicables à la trame courante et à la trame précédente, valeurs gm i (n) respectivement g_11 (n) se déduisent alors des rapports d'enveloppe R;,, i (n) et R,,;_, j (n) respectivement. En particulier, les valeurs d'atténuation peuvent être constituées par l'inverse des valeurs des rapports d'enveloppe précitées. As in the case of FIG. 3e for example, the attenuation values applicable to the current frame and to the previous frame, values gm i (n) respectively g_11 (n) are then deduced from the envelope ratios R i ,, i (n) and R ,,; _, j (n) respectively. In particular, the attenuation values can be constituted by the inverse of the values of the aforementioned envelope ratios.
A partir des valeurs des rapports d'enveloppe précitées, premier rapport d'enveloppe temporelle de la trame précédente à l'enveloppe temporelle du signal auxiliaire et deuxième rapport d'enveloppe temporelle de la trame courante à l'enveloppe temporelle du signal auxiliaire, un module de calcul de discrimination de présence des pré-échos respectivement des post-échos à partir des rapports premier et deuxième rapports d'enveloppe précités permet alors d'exécuter un processus - 35 -semblable à celui décrit en liaison avec la figure 4e après discrimination des prérespectivement des post-échos. From the aforementioned envelope ratio values, the first time envelope ratio of the previous frame to the time envelope of the auxiliary signal and the second time envelope ratio of the current frame to the time envelope of the auxiliary signal, a pre-echo and / or post-echo presence discrimination calculation module from the abovementioned first and second envelope ratio ratios then makes it possible to execute a process similar to that described with reference to FIG. pre-purposely post-echoes.
A titre d'exemple non limitatif, si le deuxième rapport d'enveloppe R1 (n) de la trame courante à l'enveloppe temporelle du signal auxiliaire est supérieur à une valeur de seuil et que la valeur du premier rapport d'enveloppe temporelle R,_11 (n) est faible, la présence de pré-échos est alors détectée. Si le premier et le deuxième rapport d'enveloppe Rn, j(n) et i (n) sont tous deux supérieurs à une valeur de seuil, alors le signal de transition SI correspondant à une transition d'attaque ou à une transition de déclin est située dans la trame courante correspondante. By way of nonlimiting example, if the second envelope ratio R1 (n) of the current frame to the time envelope of the auxiliary signal is greater than a threshold value and the value of the first time envelope ratio R , _11 (n) is weak, the presence of pre-echoes is then detected. If the first and second envelope ratios Rn, j (n) and i (n) are both greater than a threshold value, then the transition signal SI corresponding to an attack transition or a decay transition is located in the corresponding current frame.
Si le premier rapport d'enveloppe temporelle t"_1 j(n) est supérieur à une valeur de seuil et que le deuxième rapport R i (n) présente une valeur faible, alors on est en présence de post-échos. If the first time envelope ratio t "_1 j (n) is greater than a threshold value and the second ratio R i (n) has a low value, then there are post-echoes.
La réduction des pré et post-échos peut être exécutée de manière semblable à celle réalisée et décrite en liaison avec la figure 4e. The reduction of pre- and post-echoes can be performed in a manner similar to that carried out and described in connection with FIG.
Toutefois, dans le cas de la mise en oeuvre de la figure 5a du dispositif objet de l'invention, on remplace le rapport d'enveloppe lissée par la valeur Rc j(n) compte tenu de la discrimination des pré- et post-échos tel que décrit précédemment. However, in the case of the implementation of FIG. 5a of the device that is the subject of the invention, the smoothed envelope ratio is replaced by the value Rc j (n) taking into account the discrimination of the pre- and post-echoes as previously described.
Les valeurs d'atténuation sont alors dirigées vers les multiplicateurs 21 et 22 de la figure 4f pour effectuer l'exécution de la réduction des échos. The attenuation values are then directed to the multipliers 21 and 22 of Figure 4f to perform the reduction of echoes.
Le découpage dans la fenêtre où se produit la transition SI d'attaque ou de déclin peut toutefois être affinée de la façon ci-après: Dans la trame où se produit la transition d'attaque ou de déclin, il est possible de calculer le rapport d'enveloppe entre le signal auxiliaire xP; (n) et le signal somme du signal décodé représentatif de la trame courante et de la trame précédente, le signal somme précitée vérifiant la relation: xsTJ(n) =x,,,(n)+x, 1(n)É Le mode opératoire précité est justifié par le fait que l'enveloppe de cette somme de signaux est comparée à celle du signal auxiliaire xP1(n) . Dans la trame où - 36 - se produit la transition SI telle que représentée en figure 4c, avant la transition précitée, les termes de repliement s'annulent du fait qu'ils sont en opposition de phase conformément à la relation: xn,(n) = h(n) x(n) h(N/2 1 n) x(N/2 1 n) n =0,...,N/2 1 et xn(n)=h(n)x(n)+h(3N 1 n)x(3N 1 n) n=N/2,..., N 1 Lorsque la transition apparaît les termes non repliés sont alors très grands devant les termes repliés et l'écho peut ainsi être détecté. The slicing in the window where the attack or decay SI transition occurs can, however, be refined as follows: In the frame where the attack or decay transition occurs, it is possible to calculate the ratio envelope between the auxiliary signal xP; (n) and the signal sum of the decoded signal representative of the current frame and the preceding frame, the aforementioned sum signal satisfying the relation: xsTJ (n) = x ,,, (n) + x, 1 (n) É Le The above procedure is justified by the fact that the envelope of this sum of signals is compared with that of the auxiliary signal x P1 (n). In the frame where the transition S1 as shown in FIG. 4c occurs, before the aforementioned transition, the folding terms cancel each other out because they are in phase opposition in accordance with the relation: xn, (n ) = h (n) x (n) h (N / 2 1 n) x (N / 2 1 n) n = 0, ..., N / 2 1 and xn (n) = h (n) x ( n) + h (3N 1 n) x (3N 1 n) n = N / 2, ..., N 1 When the transition occurs, the non-folded terms are then very large in front of the folded terms and the echo can thus be detected.
L'invention couvre également un message de signalisation de présence ou d'absence d'échos dans une trame courante de signal audionumérique message M(Ec=[0,1]) tel que décrit notamment en figure 2c. Le message peut être intégré dans une trame courante de signal audionumérique codé par transformée fréquentielle et il constitue un message de signalisation de fausse alarme. Il comporte au moins un champ comportant un bit à la valeur 0 ou 1 déterminé pour indiquer une absence a priori d'écho sur une trame courante de signal audionumérique codé respectivement à une valeur complémentée pour indiquer une présence a priori d'écho sur une trame courante de signal audionumérique codé. The invention also covers a message indicating presence or absence of echoes in a current frame of digital audio signal message M (Ec = [0,1]) as described in particular in Figure 2c. The message may be embedded in a current frequency-coded digital audio signal frame and is a false alarm signaling message. It comprises at least one field comprising a bit at the value 0 or 1 determined to indicate an a priori echo absence on a current frame of digital audio signal coded respectively to a complemented value to indicate an a priori presence of echo on a frame current of coded digital audio signal.
Sur la figure 5a, la flèche en pointillé allant de la partie codage prédictif à la partie décodage des coefficients spectraux représente la possibilité de reconstitution des coefficients spectraux en utilisant partiellement la sortie de décodeur prédictif. A titre d'exemple non limitatif une solution consiste à effectuer une transformation tempsfréquence du signal de sortie du codeur prédictif puis à retrancher des coefficients spectraux décodés, les composantes spectrales du signal prédictif que l'on veut éliminer de telle sort que le signal temporel reconstitué XS(n) puisse être obtenu en ajoutant le signal en sortie du codeur prédictif et le signal en sortie de la transformation fréquencetemps après atténuation. En effet, cette façon de procéder est efficace du fait que les coefficients par transformées reçus représentent le signal et qu'ils peuvent remplacer avantageusement les coefficients spectraux du signal prédictif dans certaines zones de fréquence. Le pseudo code permettant de réaliser - 37 - l'opération "décodage coefficients spectraux" est identique à celui décrit pour la figure 3b. In Fig. 5a, the dashed arrow from the predictive coding portion to the decoding portion of the spectral coefficients represents the possibility of reconstructing the spectral coefficients using partially the predictive decoder output. By way of non-limiting example, one solution consists in performing a time-frequency transformation of the output signal of the predictive coder and then in subtracting decoded spectral coefficients, the spectral components of the predictive signal that it is desired to eliminate from such a fate as the reconstituted temporal signal. XS (n) can be obtained by adding the signal at the output of the predictive coder and the signal at the output of the transformation frequency and time after attenuation. Indeed, this procedure is effective because the received transform coefficients represent the signal and they can advantageously replace the spectral coefficients of the predictive signal in certain frequency areas. The pseudo code for performing the "decoding spectral coefficients" operation is identical to that described for FIG. 3b.
Enfin, ainsi que représenté en figure 6a et 6b, le dispositif objet de l'invention, comporte en outre au niveau du codeur, un module de calcul d'un message de signalisation M(Ec) d'existence d'écho dans la trame courante. Le message de signalisation est transmis conjointement avec la trame courante. Finally, as represented in FIGS. 6a and 6b, the device that is the subject of the invention further comprises, at the level of the coder, a module for calculating an echo signaling message M (Ec) in the frame common. The signaling message is transmitted together with the current frame.
En particulier pour un codeur multicouches comportant au moins un codeur prédictif et un codeur par transformée de rang j, le module de calcul d'un message de signalisation comporte au moins, ainsi que représenté en figure 6a, un module de calcul d'un signal différence entre un signal décodé auxiliaire reconstitué noté xP; (n) ce signal, ainsi que représenté sur la figure 6a précitée, étant obtenu par codage prédictif, puis décodage prédictif du signal audionumérique avant codage x(n) et le signal audionumérique avant codage retardé d'une durée égale au retard algorithmique de la partie codage-décodage prédictif (anticipation ou look-ahead en anglais et retard des filtres de sous- et suréchantillonnage) par l'intermédiaire d'un circuit retardateur Z-T. Le signal retardé x(n T) est délivré à un circuit soustracteur lequel délivre le signal différence xD,e (n) . En outre, le module de calcul du message de signalisation comporte au moins, ainsi que représenté en figure 6b, un module de calcul des valeurs d'enveloppe temporelles du signal décodé auxiliaire reconstitué, le signal xP1(n) et de l'enveloppe temporelle du signal différence xo.j (n) . On comprend, en particulier, que le module inséré au codeur correspond sensiblement au module lo décrit précédemment dans la description en liaison avec la figure 3b par exemple. In particular, for a multilayer encoder comprising at least one predictive encoder and a rank transformation encoder j, the calculation module of a signaling message comprises at least, as represented in FIG. 6a, a module for calculating a signal. difference between a reconstituted auxiliary decoded signal noted xP; (n) this signal, as represented in FIG. 6a above, being obtained by predictive coding, then predictive decoding of the digital audio signal before encoding x (n) and the digital audio signal before coding delayed by a duration equal to the algorithmic delay of the predictive coding-decoding part (anticipation or look-ahead in English and delay of the under- and oversampling filters) via a delay circuit ZT. The delayed signal x (n T) is delivered to a subtracter circuit which outputs the difference signal x D, e (n). In addition, the module for calculating the signaling message comprises at least, as represented in FIG. 6b, a module for calculating the time envelope values of the reconstituted auxiliary decoded signal, the signal xP1 (n) and the temporal envelope. the difference signal xo.j (n). It is understood, in particular, that the module inserted in the encoder substantially corresponds to the module lo described above in the description in connection with Figure 3b for example.
Le module 1 o inséré au codeur délivre l'enveloppe des signaux correspondants notée Envp, (k) correspondant au signal d'enveloppe temporelle du signal décodé auxiliaire reconstitué et le signal d'enveloppe temporelle du signal différence notée Envo;f j (k) . - 38 - Le module de calcul du message de signalisation comporte en outre un module 1 I du calcul du rapport d'enveloppe comparable à celui précédemment décrit dans la description en liaison avec la figure 3b. The module 1 o inserted in the encoder delivers the envelope of corresponding signals denoted Envp, (k) corresponding to the time envelope signal of the reconstituted auxiliary decoded signal and the time envelope signal of the difference signal denoted Envo; f j (k). The module for calculating the signaling message further comprises a module 1 I for calculating the envelope ratio comparable to that previously described in the description in conjunction with FIG. 3b.
Enfin, le module 13 permet de calculer la valeur de la variable Ec de présence écho Ec, ce module étant comparable à celui décrit précédemment dans la description pour la détection de présence écho à partir de la comparaison de la valeur du rapport d'enveloppe à la valeur de seuil S en liaison avec la figure 3b, 3c et 3d par exemple. Finally, the module 13 makes it possible to calculate the value of the ec ec ec ecence presence variable Ec, this module being comparable to that described above in the description for the echo presence detection from the comparison of the value of the envelope envelope ratio. the threshold value S in connection with FIG. 3b, 3c and 3d, for example.
Dans la configuration selon la figure 3a, il se peut que dans certaines zones de fréquence le codeur prédictif ne conduise pas à un codage suffisamment précis. Dans ce cas, il est possible de coder directement par les étages de codage par transformée ces zones du spectre. Au décodeur, lorsque les couches d'améliorations par transformée sont reçues, elles remplacent les zones correspondantes des coefficients spectraux issus de la transformation temps-fréquence du signal en sortie du décodeur prédictif. Dans ce cas, le signal reconstitué XS(n) est obtenu au moyen d'une transformation fréquence-temps. Le dispositif d'atténuation des échos traite les échos générés par cette transformation. En relation avec les cas précédents, plusieurs variantes de réalisation ont été considérées, en référence aux figures 7 à 10, les mêmes références désignent les mêmes éléments que dans les figures précédentes lesquels pour cette raison ne seront pas décrits en détail. Dans les figures 7 à 10, les coefficients spectraux reçus au décodeur peuvent représenter dans certaines zones de fréquence (typiquement dans les fréquences hautes) le signal original à coder et non le signal de différence comme cela est typiquement le cas dans les basses fréquences. En effet, dans les hautes fréquences, certaines de zones ne sont pas modélisées avec suffisamment de précision par le codeur prédictif, dans ces zones il est plus intéressant de coder par le codeur par transformée le signal original à la place du signal de différence. Au décodeur, lorsque ces coefficients par transformées sont reçus, ils remplacent les coefficients issus de décodeur prédictif. In the configuration according to FIG. 3a, it is possible that in certain frequency zones the predictive coder does not lead to a sufficiently precise coding. In this case, it is possible to directly code these areas of the spectrum by the transform coding stages. At the decoder, when the transformation enhancement layers are received, they replace the corresponding areas of the spectral coefficients resulting from the time-frequency transformation of the output signal of the predictive decoder. In this case, the reconstituted signal XS (n) is obtained by means of a frequency-time transformation. The echo attenuation device processes the echoes generated by this transformation. In relation to the preceding cases, several variants have been considered, with reference to FIGS. 7 to 10, the same references designate the same elements as in the preceding figures, which for this reason will not be described in detail. In FIGS. 7 to 10, the spectral coefficients received at the decoder may represent in certain frequency zones (typically in the high frequencies) the original signal to be coded and not the difference signal as is typically the case in the low frequencies. Indeed, in high frequencies, some areas are not modeled with sufficient accuracy by the predictive coder, in these areas it is more interesting to encode by the transform encoder the original signal instead of the difference signal. At the decoder, when these transform coefficients are received, they replace the coefficients from the predictive decoder.
La figure 7 représente une variante de la figure 3b. Dans cette figure le signal issu du décodeur prédictif est passé dans le domaine fréquentiel, ici l'opération Transformée Temps/Fréquence MDCT délivrant les coefficients Coeffpi(k), puis combiné avec les coefficients spectraux CoeffTi(k) et enfin passés dans le domaine temporel par les opérations de transformée inverse et d'addition/recouvrement. L'atténuation des échos est effectuée après l'addition/recouvrement. Figure 7 shows a variant of Figure 3b. In this figure, the signal coming from the predictive decoder is passed in the frequency domain, here the Transformed Time / Frequency operation MDCT delivering the Coeffpi coefficients (k), then combined with the CoeffTi (k) spectral coefficients and finally passed in the time domain. by inverse transform and addition / recovery operations. The echo attenuation is performed after the addition / overlap.
La figure 8 représente une variante de la figure 4a. Dans cette figure le signal issu du décodeur prédictif est passé dans le domaine fréquentiel, ici l'opération MDCT, puis combiné avec les coefficients spectraux. Une transformation Fréquence/Temps est effectuée. La sortie est utilisée d'une part pour alimenter l'addition/recouvrement puis le dispositif de décision d'écho; d'autre part pour alimenter le dispositif d'atténuation d'écho dont la sortie produit le signal décodé après addition recouvrement. L'atténuation des échos est effectuée juste avant l'addition/recouvrement. Figure 8 shows a variant of Figure 4a. In this figure the signal from the predictive decoder is passed in the frequency domain, here the MDCT operation, and then combined with the spectral coefficients. A Frequency / Time transformation is performed. The output is used on the one hand to supply the addition / recovery and then the echo decision device; on the other hand to supply the echo attenuation device whose output produces the decoded signal after recovery. The echo attenuation is performed just before the addition / overlap.
La figure 9 représente une variante de la figure 5a. Dans cette figure le signal issu du décodeur prédictif est passé dans le domaine fréquentiel, ici l'opération MDCT, puis combiné avec les coefficients spectraux. Une transformation Fréquence/Temps est effectuée. La sortie est utilisée d'une part pour alimenter le dispositif de décision d'écho d'autre part pour alimenter le dispositif d'atténuation d'écho dont la sortie produit le signal décodé après addition recouvrement. L'atténuation des échos est effectuée juste avant l'addition/recouvrement, avec la décision prise sur les signaux en sortie de l'étage de décodage des coefficients spectraux et MDCT inverse. Figure 9 shows a variant of Figure 5a. In this figure the signal from the predictive decoder is passed in the frequency domain, here the MDCT operation, and then combined with the spectral coefficients. A Frequency / Time transformation is performed. The output is used on the one hand to supply the echo decision device on the other hand to supply the echo attenuation device whose output produces the decoded signal after recovery. The attenuation of the echoes is carried out just before the addition / overlap, with the decision taken on the output signals of the decoding stage of the spectral coefficients and inverse MDCT.
Le pseudo code permettant de réaliser l'opération "combinaison des coefficients spectraux" des figures 7, 8 et 9 est donné ci-après. The pseudo code for performing the operation "combination of spectral coefficients" of Figures 7, 8 and 9 is given below.
Pseudo Code for k = 0, ..., Kb-1 CoeffRi(k) = Coeffp;(k) + CoeffTT(k) end for k = Kb, ..., Kf-1 if (flag(k) == dispo) - 40 -CoeffRR(k) = CoeffTi(k) else CoeffRR(k) = Coeffpi(k) endif end Dans le mode de réalisation représenté aux figures 7, 8 et 9, on note que le somateur So des figures 3b, 4a et 5a correspondantes n'est plus nécessaire, le traitement correspondant pouvant être effectué sur les coefficients spectraux. Nickname Code for k = 0, ..., Kb-1 CoeffRi (k) = Coeffp; (k) + CoeffTT (k) end for k = Kb, ..., Kf-1 if (flag (k) == available) - 40 -CoeffRR (k) = CoeffTi (k) else CoeffRR (k) = Coeffp (k) endif end In the embodiment represented in FIGS. 7, 8 and 9, it is noted that the somerator So of FIGS. 3b, 4a and 5a are no longer necessary, the corresponding processing can be performed on the spectral coefficients.
La figure 10 représente une variante de la figure 3b et 7 où la détection et l'atténuation d'écho se font séparément sur une pluralité de sousbandes du signal codé par transformée et décodée. On peut noter que le filtrage en sous-bandes est effectué dans le cas présent par une MDCT Inverse et une addition/recouvrement à partir respectivement descoefficients spectraux de la bande basse Coeffeb(k) et de la bande haute CoeffRJBh(k). Ce filtrage en sous bandes peut aussi être effectué de façon non limitative et alternative directement sur le signal temporel issu d'une opération de transposition fréquence/temps et addition recouvrement des coefficients spectraux recombinés CoeffRj(k). Ici, la sortie des étages prédictifs a été séparée en deux bandes, bande basse et bande haute, afin d'alimenter le dispositif de décision et d'atténuation d'écho respectivement de la bande basse et de la bande haute du signal de transformée décodé. Sur la figure 10, le dispositif objet de l'invention comporte ainsi une première voie d'atténuation de l'écho en bande basse et une voie d'atténuation de l'écho par sous-bande. Les modules constitutifs des voies précitées sont semblables mais dédiés aux fréquences respectivement de chaque sous-bande. Fig. 10 shows a variant of Fig. 3b and 7 where echo detection and attenuation are separately on a plurality of sub-bands of the transform and decoded signal. It may be noted that the subband filtering is carried out in the present case by an inverse MDCT and an addition / overlap respectively from the spectral coefficients of the low band Coeffeb (k) and the high band CoeffRJBh (k). This subband filtering can also be carried out in a non-limiting and alternative manner directly on the time signal resulting from a frequency / time transposition operation and addition recovery of the recombined spectral coefficients CoeffRj (k). Here, the output of the predictive stages has been separated into two bands, low band and high band, in order to feed the decision and echo attenuation device respectively of the low band and the high band of the decoded transform signal. . In FIG. 10, the device that is the subject of the invention thus comprises a first low-band echo attenuation channel and a sub-band echo attenuation channel. The constituent modules of the aforementioned channels are similar but dedicated to the respective frequencies of each sub-band.
En outre, selon le mode de réalisation de la figure 10, le nombre de sousbandes de traitement de voies d'atténuation peut être quelconque. In addition, according to the embodiment of FIG. 10, the number of attenuation channel processing subbands can be arbitrary.
Le pseudo code permettant de réaliser l'opération "combinaison des coefficients spectraux" de la figure 10 est donné ci-après. The pseudo code for carrying out the "combination of the spectral coefficients" operation of FIG. 10 is given below.
Pseudo Code for k = 0, ..., Kb-1 CoeffRiBb(k) = CoeffTi(k) Coeffeh(k) = 0 -41 - end for k = Kb, ..., Kf-1 if (flag(k) == dispo) Coeffeh(k) = CoeffTT(k) else Coeffeh(k) = Coeffpi(k) endif Coeffeb(k) = 0 end La Figure 11 représente une variante de la Figure 10 où le signal prédictif additionné par le sommateur So n'est pas filtré contrairement à la configuration de la figure 10 et où le signal prédictif est filtré en une pluralité de sous bandes par des filtres numériques pour alimenter le dispositif de détection des échos. Ainsi, le signal prédictif n'est pas filtré mais directement ajouté dans le sommateur So aux signaux issus du décodage par transformée après filtrage dans le domaine fréquentiel. En contre partie le pseudo code de l'opération "combinaison des coefficients spectraux" est modifié de la façon suivante: Pseudo Code for k = 0, ..., Kb-1 Coeffeb(k) = CoeffTi(k) CoeffRJBh(k) = 0 end for k = Kb, ..., Kf-1 if (flag(k) == dispo) CoeffRiBh(k) = CoeffTJ(k) - Coeffp;(k) else CoeffRiBh(k) = 0 endif Coeffeb(k) = 0 end Un avantage de cette façon de procéder est que les signaux sommés par So sont en phase et que les filtres passe-bas et passe-haut de commande des détecteurs d'échos peuvent être réalisés indifféremment par des filtres à réponse impulsionnelle - 42 - à phase linéaire ou par des filtres à réponse impulsionnelle infinie éventuellement à déphasage minimal. Pseudo Code for k = 0, ..., Kb-1 CoeffRiBb (k) = CoeffTi (k) Coeffeh (k) = 0 -41 - end for k = Kb, ..., Kf-1 if (flag (k ) == dispo) Coeffeh (k) = CoeffTT (k) else Coeffeh (k) = Coeffp (k) endif Coeffeb (k) = 0 end Figure 11 represents a variant of Figure 10 where the predictive signal summed by the summator So is not filtered contrary to the configuration of Figure 10 and where the predictive signal is filtered into a plurality of sub-bands by digital filters to power the echo detection device. Thus, the predictive signal is not filtered but directly added in the So adder to the signals derived from the transform decoding after filtering in the frequency domain. In counter part the pseudo code of the operation "combination of the spectral coefficients" is modified as follows: Pseudo Code for k = 0, ..., Kb-1 Coeffeb (k) = CoeffTi (k) CoeffRJBh (k) = 0 end for k = Kb, ..., Kf-1 if (flag (k) == dispo) CoeffRiBh (k) = CoeffTJ (k) - Coeffp; (k) else CoeffRiBh (k) = 0 endif Coeffeb ( k) = 0 end An advantage of this way of proceeding is that the signals summed by So are in phase and that the low-pass and high-pass filters of the echo detectors can be carried out indifferently by impulse response filters. - 42 - linear phase or infinite impulse response filters possibly with minimal phase shift.
Dans le mode de mise en oeuvre précédemment décrit, le signal prédictif est directement ajouté aux signaux des sous-bandes issues du décodage par transformée et la combinaison des coefficients spectraux réalise une soustraction des composantes spectrales du signal prédictif que l'on désire remplacer par celles du signal issues du décodage par transformée. In the embodiment described above, the predictive signal is directly added to the signals of the sub-bands resulting from the transform decoding and the combination of the spectral coefficients subtracts the spectral components of the predictive signal that it is desired to replace by those signal from transform decoding.
L'invention couvre également un produit de programme d'ordinateur enregistré sur un support de mémorisation et exécutable par un ordinateur, pour la discrimination des échos d'un signal audionumérique engendré par codage hiérarchique multicouches à partir d'un codage par transformée générateur d'échos, et d'un codage prédictif non générateur d'échos. The invention also encompasses a computer program product recorded on a storage medium and executable by a computer, for echo discrimination of a multi-layered hierarchical coded digital audio signal from a generator-generated transform coding. echoes, and non-echo-generating predictive coding.
Il est remarquable en ce que le produit de programme, objet de l'invention, lorsqu'il est exécuté par un ordinateur permet la mise en oeuvre du procédé tel que décrit précédemment dans la description en liaison avec les figures 2a, 2b et 2c. It is remarkable that the program product, object of the invention, when executed by a computer allows the implementation of the method as described above in the description in conjunction with Figures 2a, 2b and 2c.
Le produit de programme d'ordinateur, objet de l'invention, est en outre remarquable en ce qu'il est implanté dans le module de calcul de présence d'écho, de position d'origine de l'écho et de valeur d'atténuation d'écho applicable à la trame courante, tel que décrit et référencé 1 relativement au dispositif objet de l'invention précédemment décrit en liaison avec les figures 3b, 3c à 3f, 4a à 4e et 5a, 5b et/ou 7 à 10. Le produit de programme d'ordinateur, objet de l'invention, est intégré à un décodeur hiérarchique multicouches, d'un signal audionumérique, ainsi que décrit précédemment dans la description en liaison avec les figures 6a et 6b. Le module de discrimination d'existence d'écho permet d'engendrer un signal différence le signal xD i (n) à partir d'un codage décodage prédictif de ce signal numérique et une variable de présence respectivement d'absence d'écho sous forme d'un message de fausse alarme transmis avec la trame courante, ainsi décrit précédemment dans la description. The computer program product, which is the subject of the invention, is furthermore remarkable in that it is implanted in the echo presence calculation module, the echo origin position module and the value value module. echo attenuation applicable to the current frame, as described and referenced 1 relative to the device object of the invention previously described in connection with FIGS. 3b, 3c to 3f, 4a to 4e and 5a, 5b and / or 7 to 10 The computer program product, object of the invention, is integrated in a multilayer hierarchical decoder, a digital audio signal, as described previously in the description in conjunction with FIGS. 6a and 6b. The echo existence discrimination module makes it possible to generate a difference signal the signal xD i (n) from a predictive decoding coding of this digital signal and a presence variable respectively of absence of echo in the form of a false alarm message transmitted with the current frame, as previously described in the description.
- 43 -- 43 -
Claims (23)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0507471A FR2888704A1 (en) | 2005-07-12 | 2005-07-12 | |
PCT/FR2006/001659 WO2007006958A2 (en) | 2005-07-12 | 2006-07-07 | Method and device for attenuating echoes of a digital audio signal derived from a multilayer encoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0507471A FR2888704A1 (en) | 2005-07-12 | 2005-07-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2888704A1 true FR2888704A1 (en) | 2007-01-19 |
Family
ID=36127469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0507471A Pending FR2888704A1 (en) | 2005-07-12 | 2005-07-12 |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2888704A1 (en) |
WO (1) | WO2007006958A2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014096733A1 (en) * | 2012-12-21 | 2014-06-26 | Orange | Effective attenuation of pre-echos in a digital audio signal |
RU2734781C1 (en) * | 2017-03-31 | 2020-10-23 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Device for post-processing of audio signal using burst location detection |
US11562756B2 (en) | 2017-03-31 | 2023-01-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using prediction based shaping |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2897733A1 (en) * | 2006-02-20 | 2007-08-24 | France Telecom | Echo discriminating and attenuating method for hierarchical coder-decoder, involves attenuating echoes based on initial processing in discriminated low energy zone, and inhibiting attenuation of echoes in false alarm zone |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1335353A2 (en) * | 2002-02-08 | 2003-08-13 | NTT DoCoMo, Inc. | Decoding apparatus, encoding apparatus, decoding method and encoding method |
-
2005
- 2005-07-12 FR FR0507471A patent/FR2888704A1/fr active Pending
-
2006
- 2006-07-07 WO PCT/FR2006/001659 patent/WO2007006958A2/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1335353A2 (en) * | 2002-02-08 | 2003-08-13 | NTT DoCoMo, Inc. | Decoding apparatus, encoding apparatus, decoding method and encoding method |
Non-Patent Citations (1)
Title |
---|
MAHIEUX Y ET AL: "HIGH-QUALITY AUDIO TRANSFORM CODING AT 64 KBPS", IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 42, no. 11, 1 November 1994 (1994-11-01), pages 3010 - 3019, XP000475155, ISSN: 0090-6778 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014096733A1 (en) * | 2012-12-21 | 2014-06-26 | Orange | Effective attenuation of pre-echos in a digital audio signal |
FR3000328A1 (en) * | 2012-12-21 | 2014-06-27 | France Telecom | EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
CN104981981A (en) * | 2012-12-21 | 2015-10-14 | 奥林奇公司 | Effective attenuation of pre-echos in digital audio signal |
RU2622863C2 (en) * | 2012-12-21 | 2017-06-20 | Оранж | Effective pre-echo attenuation in digital audio signal |
CN104981981B (en) * | 2012-12-21 | 2018-03-27 | 奥林奇公司 | The effective attenuation of pre-echo in digital audio and video signals |
US10170126B2 (en) | 2012-12-21 | 2019-01-01 | Orange | Effective attenuation of pre-echoes in a digital audio signal |
RU2734781C1 (en) * | 2017-03-31 | 2020-10-23 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Device for post-processing of audio signal using burst location detection |
US11373666B2 (en) | 2017-03-31 | 2022-06-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus for post-processing an audio signal using a transient location detection |
US11562756B2 (en) | 2017-03-31 | 2023-01-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using prediction based shaping |
Also Published As
Publication number | Publication date |
---|---|
WO2007006958A3 (en) | 2007-03-22 |
WO2007006958A2 (en) | 2007-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2002428B1 (en) | Method for trained discrimination and attenuation of echoes of a digital signal in a decoder and corresponding device | |
EP2277172B1 (en) | Concealment of transmission error in a digital signal in a hierarchical decoding structure | |
EP2080195B1 (en) | Synthesis of lost blocks of a digital audio signal | |
EP1316087B1 (en) | Transmission error concealment in an audio signal | |
EP1905010B1 (en) | Hierarchical audio encoding/decoding | |
EP1016072B1 (en) | Method and apparatus for suppressing noise in a digital speech signal | |
CA2512179C (en) | Method for encoding and decoding audio at a variable rate | |
EP2586133B1 (en) | Controlling a noise-shaping feedback loop in a digital audio signal encoder | |
EP2936488B1 (en) | Effective attenuation of pre-echos in a digital audio signal | |
EP2347411B1 (en) | Pre-echo attenuation in a digital audio signal | |
EP1356455B1 (en) | Method and device for processing numerous audio binary streams | |
WO1998047134A1 (en) | Method and device for coding an audio signal by 'forward' and 'backward' lpc analysis | |
FR2888704A1 (en) | ||
WO2007107670A2 (en) | Method for post-processing a signal in an audio decoder | |
FR2984580A1 (en) | METHOD FOR DETECTING A PREDETERMINED FREQUENCY BAND IN AN AUDIO DATA SIGNAL, DETECTION DEVICE AND CORRESPONDING COMPUTER PROGRAM | |
EP2203915B1 (en) | Transmission error dissimulation in a digital signal with complexity distribution | |
EP0891617B1 (en) | Signal coding and decoding system, particularly for a digital audio signal | |
EP1021805A1 (en) | Method for conditioning a digital speech signal | |
FR2885462A1 (en) | METHOD FOR ATTENUATING THE PRE- AND POST-ECHOS OF AN AUDIO DIGITAL SIGNAL AND CORRESPONDING DEVICE | |
FR2830970A1 (en) | Telephone channel transmission speech signal error sample processing has errors identified and preceding/succeeding valid frames found/samples formed following speech signal period and part blocks forming synthesised frame. | |
FR2737360A1 (en) | Audio digital signal coding method of successive sample blocks - using spectral analysis to select vector dictionary for each sample block and allocating vector and scalar quantisation bits | |
FR3018942A1 (en) | ESTIMATING CODING NOISE INTRODUCED BY COMPRESSION CODING OF ADPCM TYPE | |
FR3007184A1 (en) | MONITORING THE QUENTIFICATION NOISE ATTENUATION TREATMENT INTRODUCED BY COMPRESSIVE CODING |