WO2007006958A2 - Procédé et dispositif d'atténuation des échos d'un signal audionumérioue issu d'un codeur multicouches - Google Patents
Procédé et dispositif d'atténuation des échos d'un signal audionumérioue issu d'un codeur multicouches Download PDFInfo
- Publication number
- WO2007006958A2 WO2007006958A2 PCT/FR2006/001659 FR2006001659W WO2007006958A2 WO 2007006958 A2 WO2007006958 A2 WO 2007006958A2 FR 2006001659 W FR2006001659 W FR 2006001659W WO 2007006958 A2 WO2007006958 A2 WO 2007006958A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- echo
- signal
- current frame
- predictive
- value
- Prior art date
Links
- 238000002592 echocardiography Methods 0.000 title claims abstract description 83
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000005236 sound signal Effects 0.000 title claims abstract description 47
- 230000009466 transformation Effects 0.000 claims abstract description 25
- 238000001514 detection method Methods 0.000 claims abstract description 17
- 230000003595 spectral effect Effects 0.000 claims description 60
- 230000011664 signaling Effects 0.000 claims description 30
- 238000001914 filtration Methods 0.000 claims description 17
- 230000002123 temporal effect Effects 0.000 claims description 15
- 238000011084 recovery Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 230000002238 attenuated effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims description 5
- 230000017105 transposition Effects 0.000 claims description 5
- 230000002441 reversible effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000002401 inhibitory effect Effects 0.000 claims description 2
- 230000003213 activating effect Effects 0.000 claims 1
- 230000001419 dependent effect Effects 0.000 abstract 1
- 230000008030 elimination Effects 0.000 abstract 1
- 238000003379 elimination reaction Methods 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 45
- 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 19
- 239000010410 layer Substances 0.000 description 12
- 238000013139 quantization Methods 0.000 description 9
- 230000009467 reduction Effects 0.000 description 6
- 230000000670 limiting effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005070 sampling 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
- 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
- 238000001228 spectrum Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm 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
- 230000036961 partial effect Effects 0.000 description 1
- 238000009527 percussion Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 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
- 238000012795 verification 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
Definitions
- the digitization of the source signals into a digital audio signal requires a higher rate of the higher the quality of the returned signal.
- compression processes are used through the implementation of coding systems of the CELP coding or transformation coding type.
- 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.
- 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.
- 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.
- audible signals with strong attacks or decays are the seat, on decoding, of noise from quantization in the form of pre- or post-echoes.
- the aforementioned encoders can operate at a fixed or variable rate, the flow rate being adaptable.
- 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 quality of correct coding.
- the bit frame is then structured by ordering the bits from the essential bits to the least significant bits.
- 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.
- the quality of signal reproduction is a function of the number of decoded bits.
- 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.
- FIG. 1 describes an example of coding by transposition in the frequency domain and of decoding. corresponding.
- the transposition of a time-domain signal block in the frequency domain is performed by an MDCT transform applied to the window 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.
- 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 entropy coding, Hufman type or another, which takes into account the non-uniform probability densities of the spectral coefficients.
- 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.
- the reconstituted signal is of the form:
- h (n) denotes the window of the inverse MDCT transform applied to the current frame
- h (n + -) denotes the window of the inverse MDCT transform applied to
- 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. 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.
- 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.
- 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.
- 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.
- the signal-to-noise ratio is largely negative and the resulting degradation, designated pre-echoes, can appear very troublesome. Indeed, the human ear performs a fairly limited pre-masking, of the order of a few milliseconds, before the physiological transmission of the attack.
- the noise produced, or pre-echo is audible when the duration of the pre-echo is greater than the duration of the pre-masking.
- 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.
- 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.
- the encoders used for Conversational applications use a window of 40 ms duration and a frame renewal duration of 20 ms.
- a first solution is to apply filtering.
- the reconstituted signal consists in fact of the original signal and the quantization noise superimposed on the signal.
- filtering operating at the decoder on the reconstructed samples after addition / recovery reduces the power of the spurious signal.
- the aforementioned filtering is an adaptive filtering so as to follow any non-stationary signaling 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.
- the aforementioned filtering process does not allow to find the original signal, but provides a strong reduction of pre-echoes.
- a second solution is to reduce pre-echoes by a dynamic concentration of windows.
- the procedure described by the aforementioned patent application consists in detecting the pre-echoes exclusively from the decoded base CELP signal. Such a procedure does not ensure, for this reason, a joint and synchronous pre-echo reduction processing of the reconstructed frames.
- 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.
- 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, a representative value of a variable resulting from a characteristic of the temporal envelope of the signal coming from an echo generator decoding and a variable derived from a corresponding characteristic of the signal from a non-echo decoding to a threshold value. Depending on the result of the comparison with this threshold value, it consists in concluding that there is an existence or non-existence of an echo resulting from transform coding in the current frame.
- the method which is the subject of the invention is furthermore remarkable in that, for each frame received from the coding, it furthermore consists in jointly receiving a false echo signaling message obtained at the coding by comparison of a representative value of a variable resulting from a characteristic of the time envelope of the input signal of an echo generator coding and of a variable resulting from a corresponding characteristic of the signal resulting from a non-echo generator coding-decoding to a threshold value, and to conclude whether or not an echo exists conditional on the existence or non-existence of false echo in the coding.
- the invention furthermore covers a method for detecting the existence of false echoes in a signal to be encoded by multilayer hierarchical coding comprising a transform coding, an echo generator, and a predictive, non-echo generator coding, remarkable in that that it consists, for coding, for each current frame of the signal to be coded, to compare in real time a value representative of a variable resulting from a characteristic of the time envelope of the input signal of a generator coding echo and a variable from a corresponding characteristic of the signal from a non-echo-encoding-decoding signal to a threshold value, and, depending on the result of the comparison to this threshold value, to be concluded to existence or the non-existence of a false echo, to transmit together with the current frame at decoding a false echo signaling message.
- the invention also covers a device for discriminating and attenuating the echoes of a digital audio signal generated by a multilayer hierarchical coder comprising at least one transform coder capable of revealing echoes, and at least one predictive encoder, which is not a generator.
- echoes remarkable in that it comprises means for comparing a value representative of a variable resulting from a characteristic of the time envelope of the signal resulting from an echo generator decoding and a variable resulting from a corresponding characteristic of the signal derived from a non-echo decoding at a threshold value, applied to each current frame, and means of conclusion about the existence or non-existence of an echo resulting from the coding by transformed in the current frame, depending on the result of the comparison.
- the device for discriminating and attenuating the echoes of a digital audio signal 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.
- the invention also covers a device for detecting the existence of false echoes in a signal to be encoded by a multilayer hierarchical coder comprising a transform coder, an echo generator, and a predictive coding, which is not echo-generating, which is remarkable in that it comprises means for comparing a value representative of a variable resulting from a characteristic of the time envelope of the input signal of an echo generator coder and of a variable resulting from a corresponding characteristic of the signal from a non-echo generator decoder to a threshold value, means for concluding the existence or non-existence of false echoes and means for transmitting a signaling signal for existence of false echoes to the decoder together with the transmission of the current frame.
- the aforementioned detection device is furthermore remarkable in that, for a multilayer encoder comprising at least one rank i predictive coder and a rank transformation coder j, the means for calculating a signaling message comprise at least means of calculating a difference signal between a reconstructed auxiliary decoded signal obtained by coding-decoding of the digital audio signal by means of this predictive coder of rank i and a predictive decoder and the delayed audio-digital signal of a duration equal to the algorithmic delay of the predictive coding-decoding part, means for calculating the values of the time envelope of the reconstituted auxiliary decoded signal and the time envelope of the difference signal and means for calculating the ratio of the envelope values.
- the method and the device which are the subject of the invention, are applied to the processing of sound signals, in particular coded digital audio signals whose frames are the seat of attack and / or decay transition generated by musical instruments, speech signals having 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.
- sound signals in particular coded digital audio signals whose frames are the seat of attack and / or decay transition generated by musical instruments, speech signals having 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.
- 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, a detailed implementation of a module for calculating an existence discrimination signal, an echo origin position and an attenuation value applicable to a signal. current frame incorporated in the device object of the invention shown in Figure 3b;
- FIG. 3d 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
- 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 calculation process being rendered conditional upon 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 implementation variant 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, for illustrative purposes, 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 forming the subject 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 overlap addition module is omitted in FIG. a goal 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 and an attenuation value applicable to a signal. current frame more particularly adapted to the module 1 of the second embodiment of the device of the invention shown in Figure 5a;
- FIG. 6a and FIG. 6b represent, by way of illustration, modules for calculating a false echo presence signaling message in a current frame that can be implanted in a multilayer hierarchical type coder, in order to allow the implementation of the method and device objects of the invention;
- FIG. 7 represents, by way of illustration, an implementation variant 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 originating 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 implementation variant 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, by virtue of which the detection and the attenuation of the echo are carried out on a first channel in a low frequency band and on at least one other channel in a different frequency band.
- FIG. 11 represents, by way of illustration, an improvement in the implementation mode of FIG. 10, whereby detection and attenuation of the echo are performed on a first channel in a low frequency band and on least another channel in a separate frequency band, the predictive signal being filtered into a plurality of subbands.
- 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
- 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).
- 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.
- 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.
- the expression "sign delivered by inverse transform decoding delivered by a layer transform decoder" of a multilayer hierarchical decoder is denoted by: - Tj (ri);
- the signal x P a ⁇ (") can 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.
- the method which is the subject of the invention consists of a step A to compare the value of the report in real time. from the amplitude of the signal resulting from an echo generator decoding to the amplitude of the signal resulting from a non-echo generator decoding to a threshold value S.
- FIG. 2b shows that the amplitude of the signal coming from an echo generator decoding is denoted Env ⁇ , (k) and the amplitude of the signal coming from a non-echo generator decoding and denoted Env p , ⁇ k).
- 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 Tj (n) respectively of the signal resulting from a non-echo generator decoding x P " 1 (n).
- obtaining the amplitude signal is represented by the equations: x Tj (n) - + Env Tj (k) ⁇ P ⁇ l ⁇ n) ⁇ Envpjtk).
- 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.
- the ratio of the amplitude of the signal resulting from an echo generator decoding to the amplitude of the signal resulting from the non-echo generator decoding is represented by the relation:
- 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.
- step A 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 to the existence of an echo resulting from transform coding in the current frame, this echo being then revealed during decoding.
- step B The existence of the echo is represented in step B by the relation:
- 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.
- step B 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.
- 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.
- FIG. 2c denotes by C x T] ⁇ ri) and C x Pl (ri) the digital audio signal coded from a transform coding, an echo generator, respectively from a predictive, non-generating coding echo, this signal being transmitted in the form of successive current frames, as mentioned previously in the description.
- 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.
- the step OA is then followed, as represented in FIG. 2c, by a step OB of joint transmission, of the decoding coding, of the current frame, that is to say of the coded signals Cx Tj (ri) and Cx P a l (ri) and the variable Ec as an echo existence signaling message.
- 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 x Tj ( r 1 ) and x P a 1 ( r 1 ) according to the relations: C x Tj ⁇ ri) ⁇ x Tj ⁇ ri)
- the above-mentioned 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.
- the method which is the subject of the invention can consist, in a step A 0 executed at decoding, into a true value verification of the Ec variable of existence of echo a priori.
- step C of absence of echo in the current frame as represented in FIG. Figure 2a is referred to in Figure 2c.
- the false echo signaling message is a false alarm message M (Ec) echo presence in the current frame.
- the ec echo signaling ec variable can 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.
- 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.
- the method according to the invention consists in detecting the existence of false echoes in a signal to be encoded. For this, the method performs the following steps:
- the method, object of the invention then advantageously consists in transmitting the false alarm message as described previously in the description.
- 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.
- 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 noted
- the predictive decoders of layer 1 to i comprise a second auxiliary output delivering an auxiliary signal noted x p " ⁇ (ri) to x P a l (ri).
- the decoded output signals of the predictive decoders and the transform decoders are delivered to a somer S0 which delivers the reconstructed decoded signal x s (n).
- 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 version filtered from this signal is an auxiliary signal representative of the energy of the decoded digital audio signal, this auxiliary signal being the output signal of the CELP decoder, the excitation signal of the CELP decoder or the envelope of these signals, or finally any another signal representative of the energy of the decoded predictive signal delivered by the predictive coder.
- 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 Figure 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.
- Each transform decoder receives the aforementioned auxiliary signal.
- 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 X p , (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 Tj ( ⁇ ) delivered by the output of a reverse-transform decoder of rank j of the plurality of decoders by inverse transform.
- the above-mentioned calculation module 1 delivers a presence signal, an echo position and an echo attenuation value applicable in the current frame, this signal being noted
- 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 transform decoder. of rank j and, of course, the presence signal, the echo source position and the echo attenuation value applicable in the current frame, that is to say the DPG signal delivered by the module 1.
- 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.
- 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 method 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.
- 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.
- the module 1 advantageously comprises a module Io for calculating the time envelope of the decoded signals Xp t (n) and x Tj (ri) delivered by the stages i and j respectively of the predictive decoders, respectively reverse transform decoders.
- the module 1 further comprises a module I 1 for calculating the envelope ratio from the signals Env Pl (k) and Env rj (k) delivered by the module I 0 for calculating the time envelope.
- the module I 1 then delivers the value R (k) of the aforementioned ratio to a decision and position calculation module I 2 and the attenuation value to finally deliver the aforementioned DPG signal.
- the temporal envelope calculation module I 0 may advantageously comprise a first specific calculation module for calculating the envelope of the auxiliary signal x P1 (n) according to the relation:
- n is the rank of the sample
- N is the length of the sub-block on which is calculated an envelope point
- the first specific module may furthermore consist of a digital module making it possible to calculate the envelope of the aforementioned auxiliary signal x Pi (n):
- the module I 0 may comprise a second specific calculation module of the envelope of the output signal of the inverse transform decoding module according to the relation:
- n, N and K designate the same elements as in the previous relation.
- the second specific module can also be constituted by a digital module making it possible to calculate the envelope of the aforementioned signal according to the relation for the signal decoded by inverse transform:
- Env Tj (n) the envelope is in fact calculated by performing a first-order low-pass filtering on the absolute value of the decoded signal.
- 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.
- Module 1 1 calculating the envelope ratio is now described when the envelope is calculated by sub-blocks of N samples.
- the aforementioned module 1 1 then advantageously comprises a specific calculation module directly delivering the ratio R (k) according to the following relationship:
- a smoothed envelope ratio calculation can be performed via a specific module given in each successive sample by the value
- the module 1 comprises a module I 2 for calculating the echo presence decision, the echo origin position and the attenuation value applicable to the current frame, by comparing the value of the ratio R ⁇ k) of the time envelope values at the threshold value S.
- 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.
- the above-mentioned module may consist of a software module which, as shown in FIG. 3d, comprises an initialization step 100 of initializing the rank k to the value 0, rank of the sample of the current frame for example. Step 100 is followed by a step 101 of comparing the value of the envelope ratio R (Jc) with the threshold value S by comparison of superiority or equality.
- a step 102 is called comparing the rank of the sample k to the maximum value K-I 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.
- step 102 When on the contrary, in step 102, the answer is negative, that is to say when the calculation, on the one hand, of the value of the ratio R (k) and 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.
- 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.
- Step 104 is then followed by step 106 of end of echo discrimination.
- 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 represented in FIG. 3e .
- the above-mentioned software calculation module can be implemented as described previously in the module I 2 shown in FIG. 3e or, where appropriate, in the attenuation module 2 itself described previously in the description in connection with FIG. depart from the scope of the subject of the present invention.
- 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 .
- 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 the temporal envelope values, in the presence of echo, according to the relation:
- 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.
- Step 201 is in fact followed by a step 202 which consists of initializing the value of n rank of the sample at the value 0, that is to say the value of the effective sample rank from from which the attenuation is applied in the current frame.
- Step 203 is then followed by step 204 of comparing the value of n by inferiority comparison to the value NI designating the rank of the penultimate sample of the current frame.
- step 204 On a positive response at 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 NI.
- a step 206 is called, which consists in comparing the value of the rank k of the sample with the value KI penultimate value the rank of the sub-blocks in a frame of length KN.
- a step 207 is called consisting of incrementing the value of k to the value of k + 1 and then returning to step 201 for the call of the attenuation value g (k) and tracking process until the rank of the last block is reached.
- FIG. 3e this is advantageously carried out 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 I 2 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 present invention.
- 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.
- 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. Such a circuit is known as such and, for this reason, will not be described in detail.
- the device 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.
- 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.
- 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 they are implemented in accordance with FIG. 2c and FIG. 3f, allow a saving in calculation cost at the decoding taking into account the the inhibition of the original position echo and the attenuation value presence calculation process implemented, thanks to the determination priori of the existence of an echo in the current frame at the level of the coding and the original encoder.
- 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.
- 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 that one wants to eliminate from such a fate as the signal reconstituted time X s (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.
- the pseudo code for performing the operation "spectral coefficient decoding" of Figure 3b is given below.
- Coeff coefficients P j (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.
- the aforementioned implementation variant is implemented for a reverse-conversion decoder of rank j comprising an inverse frequency decoding module designated decoding inverse MDCT stage spectral coefficients in the aforementioned figure connected in cascade with a recovery addition module.
- 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.
- an auxiliary overlay add-on module bearing the reference
- auxiliary decoded signal which is none other than the signal x Tj (ri) previously described in the description.
- 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.
- FIG. 4a 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.
- 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.
- x m r (n) denotes the decoded signal resulting from the inverse transform decoding for the current frame of rank m
- - B c denotes the current block of the current frame T 0 including samples between 0 and N / 2.
- FIG. 4b further shows a transition S1 as well as the noise level of the current frame of rank m.
- Figure 4c shows the value of the smoothed envelope signal ratio R, is (ri) calculated as previously mentioned in the description.
- 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. In the latter case, it is found that the echo persists half a window after the transition.
- the implementation of the device according to the invention according to the first embodiment of Figure 4a involves an adaptation of the calculation modules I 0 , I 2 and I 3 shown in Figure 3c in the manner below.
- the echo decision calculation module 1, the echo origin position and the applicable attenuation value in the current frame are implemented to calculate a signal ratio of smoothed envelope from the auxiliary signal x P "i ( ⁇ ) of the stage i of the predictive decoding CELP together with inverse transform decoded signal x Tj ( ⁇ ) at the output of stage j of the MDCT transform decoding of rank j and the corresponding smoothed envelope ratio.
- Env Tj ( ⁇ ) Max ( ⁇ x Tl (n) ⁇ , Env Tj (n-1) ⁇ a + ( 1 - a) x Tj (").
- 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 Env ⁇ / n-1) by the choice of the maximum between this value and the absolute value of the decoded signal x Tj (n) by inverse transform of the current frame, by linear combination with the absolute value mentioned above. assigned an experimental weighting coefficient designated ⁇ .
- the module I 1 of the calculation of the envelope ratio makes it possible to calculate the smoothed envelope ratio according to the preceding relation from the envelope signals delivered by the module I 0 delivering the signals. envelope mentioned above.
- 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.
- 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, where N is the length of the sub-block in number of samples on which is calculated a point of the envelope.
- the aforementioned calculation module is a software module which is adapted to allow the application of the value attenuation considering the existence of pre- or post-echoes as will be described below in connection with Figure 4e.
- the implementation of the calculation of the attenuation value 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.
- the existence decision module, echo original position and applicable attenuation value and, in particular, the module I 3 of the latter can advantageously comprise as shown in Figure 4 e a discrimination module of pre- or respectively of postechos in the previous frame respectively in the current frame by comparison of the energy of the decoded samples of the preceding frame to the energy of the decoded samples of the current frame.
- 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.
- 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 relates to the values E _cur and E _prev.
- a test step 402 which consists in comparing the value of the ratio of the smoothed envelope signal R tli (ri) by comparison with the threshold value S.
- step 403 On negative test response 402, that is to say in the absence of a validly detected transition, a step 403 is called which maintains the attenuation value for the current frame and the previous frame, attenuation value noted g m - ⁇ j (n) for the previous frame and g mj ( ⁇ ) for the current frame to the value 1, no attenuation being introduced. Step 403 is followed by step 404 back to step 402 to continue testing and incrementing the rank of sample n to the value n + 1.
- a step 405 which consists in comparing the rank of the sample n with the value N / 2 end value of the current block B 0 of the current frame T c .
- a step 407 is called, which consists in assigning to the attenuation value for the previous frame g m - ⁇ j (n) and in the value the attenuation values for the current frame g mj (ri) the specific values Ci and respectively C 2 .
- the values C 1 and C 2 are specific experimental values taking into account the windowing applied to the decoding.
- Step 407 is followed by step 408 of comparing the rank value of sample n to a maximum value N max by comparison of superiority in step 408.
- 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 aforementioned value N max .
- a step 410 of end of calculation of the gain is called on a positive response to the test 408, a step 410 of end of calculation of the gain is called.
- a step 406 is called which consists in keeping the attenuation value of the preceding frame g m -i j (f ⁇ equal to the value 1, no attenuation being applied to the latter, and applying to the current frame the attenuation value g mj ( ⁇ ) taken for example at a value C 3 .
- 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.
- the process of calculating the attenuation value applied to the current frame respectively to the previous frame is substantially identical to the process described relative to the detection of pre-echoes.
- a test step 411 is called which substantially corresponds to the test step 402 previously described.
- a step 412 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.
- 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 is reversed with respect to the test of step 405. Indeed, on negative response to the test 414, one is in the presence of post-echoes for the current frame and the previous frame.
- the values of C4 and C5 are specific experimental values.
- Step 416 is then followed by a step 417 of comparing the rank of the sample n by comparing superiority to the maximum value N max in step 417.
- step 419 is called on positive test response 417 the end of the current frame has been reached, so an end of process step 419 is called.
- a step 415 which consists of keeping the attenuation value of the current frame g mj (ri) equal to the value 1, no attenuation being applied to the latter and to apply to the previous frame, the attenuation value g m -i j (n) taken for example at a value C 6 .
- 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.
- the attenuation module 2 can advantageously be constituted, when the latter is implemented upstream of the overlap addition module, by direct application of the attenuation values, that is to say say the values g m r j (n) and g m r Xj (n) by means of multipliers 2i respectively 2 2 directly applied to the decoded signal by inverse transform, that is to say to the signals x m r J ⁇ n) and respectively x m r _ Xj ⁇ n) as shown in Figure 4f.
- the multipliers 2 1 and 2 respectively deliver a cut-off signal in which the echoes have been attenuated, each corresponding signal being delivered being noted.
- x m r Dj ⁇ n) respectively x m r ⁇ Dj (n) which are directly delivered to the overlap adding module to reconstruct the reconstructed signal x TM d (ri).
- 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 X s (n) can be obtained by adding the output signal of the predictive coder and the output signal of the frequency-time transformation after attenuation.
- 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.
- FIG. 5a A second variant of implementation of the device, object of the present invention, of simplified design compared to the embodiment of the device object of the invention shown in FIG. 4a, will now be described with reference to FIG. 5a and FIG. Figure 5b.
- FIG. 5a considers a reverse-transform decoder of rank j in which the auxiliary addition / overlap module is represented in FIG. 4a is deleted.
- the inverse MDTC decoding module directly delivers the decoded signals x m r j (n) for the current frame and X ⁇ 1J (ri) of the preceding frame to the attenuation module of the echo 2, such 4f, for example, which, in turn, delivers the aforementioned signals to the addition / overlap module.
- the module 1 for calculating the existence of the original position of the echo and the attenuation value delivering the signal DPG receives also a current frame and a previous frame successively inverse transform decoded spectral coefficients in the absence of auxiliary addition / overlap.
- the calculation module 1 is adapted to comprise, as shown in FIG. 5b, the time envelope calculation module I 0 , the envelope ratio calculation module I j and the I 2 calculation module of FIG. discrimination of the pre- and post-echoes and the calculation of the envelope ratio under the conditions below.
- the I 0 of temporal envelope calculation receives the auxiliary signal decoded by predictive decoder signal x P ⁇ (ri), the decoded signal representative of the current frame x m r j (n) and the decoded signal representative of the preceding frame, x m j -i (n) - Io module then allows to consider jointly the previous frame m -i x j (n) and has above-mentioned current frame x m r j (n) which is assessed as shown in FIG. 4b. It delivers the envelope signals Envp, ( ⁇ ), Env mj ( ⁇ ) for the current frame respectively, Env m . ⁇ j ( ⁇ ) to the calculation module of the envelope ratio I 1 .
- Module 1 ⁇ for calculating the envelope ratio is then used to calculate values of relative first envelope R m r _ ⁇ j (n) between the decoded signal representative of the previous frame x ⁇ _ ly ( ") and auxiliary decoded signal x p a ⁇ (ri), on the one hand, and second envelope ratio R m r j (n) between the decoded signal of the current frame x m r J (ri) and the decoded auxiliary signal delivered by the predictive decoder x p a ⁇ (ri), on the other hand.
- the attenuation values applicable to the current frame and to the previous frame values g m r j ( r 1 ) respectively g m r _ ⁇ j ( r 1 ) are then deduced from the ratios of envelope R m r j ( r 1 ) and i 1, I; (") respectively.
- the attenuation values can be constituted by the inverse of the values of the aforementioned envelope ratios.
- a pre-echo and respectively post-echo presence discrimination calculation module 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 respectively post-echo presence discrimination calculation module from the aforementioned first and second envelope ratio ratios then makes it possible to execute a process similar to that described with reference to FIG. respectively post-echoes.
- the transition signal SI corresponding to an attack transition or a decline transition is located in the corresponding current frame.
- pre- and post-echoes can be performed in a manner similar to that carried out and described in connection with FIG.
- 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.
- the attenuation values are then directed to the multipliers 2 1 and 2 2 of Figure 4f to perform the echo reduction operation.
- 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.
- 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.
- one solution consists in carrying out a transformation time-frequency of the output signal of the predictive encoder and then to deduct decoded spectral coefficients, the spectral components of the predictive signal that it is desired to eliminate from such a fate that the reconstituted temporal signal X s (n) can be obtained by adding the signal at the output of the predictive coder and the signal at the output of the frequency-time transformation after attenuation.
- 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.
- 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.
- the calculation module of a signaling message comprises at least, as represented in FIG. 6a, a module for calculating a signal. the difference between a reconstituted auxiliary decoded signal denoted x P " 1 (n), as represented in FIG.
- 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 X p1 (n) and the envelope time of the signal difference x DlJfJ (n). It is understood, in particular, that the module Io inserted in the encoder substantially corresponds to the module I 0 previously described in the description in connection with Figure 3b for example.
- the module I 0 inserted in the encoder delivers the envelope of corresponding signals denoted Env Pl (k) corresponding to the time envelope signal of the reconstituted auxiliary decoded signal and the time envelope signal of the difference signal denoted Env Dff (k).
- the calculation module of the signaling message furthermore comprises a module 1 1 for calculating the envelope ratio comparable to that previously described in the description with reference to FIG. 3b.
- the module I 3 calculates the value of the ec ec ec ec presence variable, this module being comparable to that described previously in the description for echo presence detection from the comparison of the envelope ratio value. to the threshold value S in connection with FIG. 3b, 3c and 3d for example.
- 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.
- the transformation enhancement layers 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.
- the reconstituted signal X s (n) is obtained by means of a frequency-time transformation.
- the echo attenuation device processes the echoes generated by this transformation.
- 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 the high frequencies, some of the zones are not modeled with sufficiently accurate by the predictive encoder, in these areas it is more interesting to encode by the transform encoder the original signal in place of the difference signal.
- Figure 7 shows a variant of Figure 3b.
- the signal coming from the predictive decoder is passed in the frequency domain, here the Transformed Time / Frequency operation MDCT delivering the coefficients Coeffpj (k), then combined with the spectral coefficients Coeff ⁇ j (k) and finally passed in the domain temporal by inverse transform and addition / overlap operations.
- the echo attenuation is performed after the addition / overlap.
- Figure 8 shows a variant of Figure 4a.
- 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 then the echo decision device;
- Figure 9 shows a variant of Figure 5a.
- 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
- the echo decision device - 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.
- Coeff Rj (k) Coeffp (k) + Coeff ⁇ j (k) end
- Coeff Rj (k) Coeffp (k) endif end
- 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.
- the subband filtering is performed in the present case by an inverse MDCT and an addition / overlap respectively from the spectral coefficients of the low band Coeff Rj Bb (k) and the high band Coeff R j Bh (k).
- This sub-band filtering can also be carried out in a nonlimiting and alternative way directly on the time signal resulting from a frequency / time transposition operation and addition recovery of the recombined spectral coefficients Coeff R j (k).
- 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.
- 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.
- the number of attenuation path processing subbands can be arbitrary.
- the pseudo code for carrying out the "combination of the spectral coefficients" operation of FIG. 10 is given below.
- Coeff Rj Bb (k) Coeff ⁇ j (k)
- Coeff Rj Bh (k) 0 end
- FIG. 11 represents a variant of FIG. 10 where the predictive signal added by the summator S 0 is not filtered contrary to the configuration of FIG. 10 and where the predictive signal is filtered in a plurality of sub-bands by digital filters to power the echo detection device.
- the predictive signal is not filtered but directly added in the summator S 0 to the signals derived from the transform decoding after filtering in the frequency domain.
- the pseudo code of the operation "combination of the spectral coefficients" is modified as follows:
- Coeff Rj Bh (k) Coeff ⁇ j (k) - Coeff Pi (k) else
- 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. 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.
- 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 signal that is different from the signal x Dlffj ⁇ ) 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 .
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
Un procédé de discrimination et d'atténuation d'échos lors du décodage d'un signal audionumérique engendré par codage multicouches comprenant un codage par transformée, générateur d'écho, et un codage prédictif, non générateur d'écho. Il consiste au moins au décodage, à comparer la valeur du rapport d'une représentation de l'enveloppe temporelle du signal décodé par transformée à celle du signal décodé de manière prédictive; si la valeur dudit rapport est supérieure ou égale à une valeur de seuil, conclure à l'existence d'un écho issu du codage par transformée; sinon, si la valeur du rapport est inférieure à ladite valeur de seuil, conclure à l'absence d'un écho, et à atténuer conditionnellement à l'existence d'un écho, les signaux issus du décodage par transformée . Un autre aspect concerne la génération lors du codage d'un signal audionumêrique d'un message de fausse alarme afin de conditionner au décodage l'exécution d'une étape de détection d'écho.
Description
PROCÉDÉ ET DISPOSITIF D'ATTÉNUATION DES ÉCHOS D'UN SIGNAL AUDIONUMÉRIOUE 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.
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 œuvre de systèmes de codage du type codage CELP ou codage par transformation.
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.
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.
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.
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.
Les codeurs précités peuvent fonctionner à débit fixe ou variable, le débit pouvant être adapté.
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.
Les codeurs précités peuvent avantageusement être utilisés pour les communications personnelles sur I'INTERNET par exemple où le débit disponible pour la transmission peut diminuer fortement en un point du réseau.
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 du nombre de bits décodés.
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.
Préalablement à l'exposé de l'invention, un rappel du principe de codage- décodage par transformée sera introduit ci-après, en référence à la figure 1. 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être 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.
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 psychoacoustique. 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.
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.
Le signal reconstitué est de la forme :
N . r , N χKc(n) = h(n + ~~))xxpp r rreevv((nn++——) + hfnjx^ (n) pour n ≡ αf.1.
Dans la relation précédente, dans l'intervalle des échantillons de rang compris entre 0 et N/2-1 :
- x^/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 ;
N
- xp r κv(n+ — ) désigne l'échantillon de la trame précédente de rang m-1,
échantillon décalé de N/2 pour assurer le recouvrement ;
N
- h(n + — ) 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.
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.
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.
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. 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. En effet, l'oreille humaine effectue un pré-masquage assez limité, de l'ordre de quelques millisecondes, avant la transmission physiologique de l'attaque.
Le bruit produit, ou pré-écho, est audible lorsque la durée du pré-écho est supérieure à la durée du pré-masquage.
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.
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, I1AAC (Advanced Audio Coding) par exemple, est mis en œuvre, 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.
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. 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.
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.
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 stationnantes é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.
La mise en œuvre 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é.
Le processus de filtrage précité ne permet pas de retrouver le signal d'origine, mais procure une forte réduction des pré-échos.
Une deuxième solution consiste à réduire les pré-échos par une concentration dynamique des fenêtres.
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.
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.
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.
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 cœur de base ("core layer" en anglais ou étage de cœur) 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 cœur de base CELP décodé. 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. La présente invention a pour objet la mise en œuvre 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.
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, une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal issu d'un décodage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un décodage non générateur d'échos à une valeur de seuil. En fonction du résultat de la comparaison à cette valeur de seuil, il consiste à conclure à l'existence ou à la non existence d'un écho issu du codage par transformée dans la trame courante.
Le procédé objet de l'invention est en outre remarquable en ce que pour chaque trame reçue du codage, il consiste en outre à recevoir conjointement un message de signalisation d'existence de faux écho obtenue au codage par comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codage- décodage non générateur d'échos à une valeur de seuil, et à conclure à l'existence ou à la non existence d'un écho conditionnellement à l'existence ou à la non existence de faux écho au codage.
L'invention couvre en outre un procédé de détection d'existence de faux échos dans un signal à coder par codage hiérarchique multicouches comportant un codage par transformée, générateur d'échos, et un codage prédictif, non générateur d'échos, remarquable en ce qu'il consiste, au codage, pour chaque trame courante du signal à coder, à comparer en temps réel une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codage-décodage non générateur d'échos à une valeur de seuil, et, en fonction du résultat de la comparaison à cette valeur de seuil, à conclure à l'existence
ou à la non existence d'un faux écho, à transmettre conjointement à la trame courante au décodage un message de signalisation d'existence de faux écho.
L'invention couvre également un dispositif de discrimination et d'atténuation des échos d'un signal audionumérique engendré par un codeur hiérarchique multicouches comportant au moins un codeur par transformée susceptible de révéler des échos, et au moins un codeur prédictif, non générateur d'échos, remarquable en ce qu'il comporte des moyens de comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal issu d'un décodage générateur d'échos et d'une variable issue d'une caractéristique correspondante du signal issu d'un décodage non générateur d'échos à une valeur de seuil, appliqués à chaque trame courante, et des moyens de conclusion sur l'existence ou sur la non existence d'un écho issu du codage par transformée dans la trame courante, en fonction du résultat de la comparaison.
Le dispositif de discrimination et d'atténuation des échos d'un signal audionumérique, objet de l'invention, précité 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.
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.
L'invention couvre également un dispositif de détection d'existence de faux échos dans un signal à coder par un codeur hiérarchique multicouches comportant un codeur par transformée, générateur d'échos, et un codage prédictif, non générateur d'échos remarquable en ce qu'il comporte des moyens de comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codeur générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codeur-décodeur non générateur d'échos à une valeur de seuil, des moyens de conclusion sur l'existence ou la non existence de faux échos et des moyens de transmission d'un message de signalisation d'existence de faux échos au décodeur conjointement à la transmission de la trame courante.
Le dispositif de détection précité est en outre remarquable en ce que, pour un codeur multicouches comportant au moins un codeur prédictif de rang i et un codeur par transformée de rang j, les moyens de calcul d'un message de signalisation comportent au moins des moyens de calcul d'un signal différence entre un signal décodé auxiliaire reconstitué obtenu par codage-décodage du signal audionumérique au moyen de ce codeur prédictif de rang i et d'un décodeur prédictif et le signal audionumérique retardé d'une durée égale au retard algorithmique de la partie codage-décodage prédictif, des moyens de calcul des valeurs de l'enveloppe temporelle du signal décodé auxiliaire reconstitué et de l'enveloppe temporelle du signal différence et des moyens de calcul du rapport des valeurs d'enveloppe.
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. 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 œuvre 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 œuvre 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 3 a 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre du dispositif objet de l'invention comparable à celui de la figure 4a, dans lequel la mise en œuvre 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 œuvre 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 de faux échos dans une trame courante implantables dans un codeur de type hiérarchique multicouches, afin de permettre la mise en œuvre du procédé et du dispositif objets de l'invention ; - la figure 7 représente, à titre illustratif, une variante de mise en œuvre de la figure 3 b, 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 œuvre 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 œuvre 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 œuvre 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.
- la figure 11 représente, à titre illustratif, un perfectionnement au mode de mise en œuvre 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.
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.
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.
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).
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.
L'observation expérimentale représentée en figure 2a permet de justifier de la mise en œuvre du procédé objet de l'invention, tel que représenté en figure 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.
En référence à la figure 2b on désigne par : - xTj(ri) 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 ;
- xP a,(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 signal xP a ι («) 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.
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 Envτ,(k) et l'amplitude du signal issu d'un décodage non générateur d'écho et notée 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 xTj (n) respectivement du signal issu d'un décodage non générateur d'écho xP"l (n) .
Sur la figure 2b, l'obtention du signal d'amplitude est représentée par les relations : xTj(n)—+ EnvTj(k) xP β l{n)→ Envpjtk). 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. 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 :
R{k) = Eϋ^l . EnvPl(k)
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é.
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.
L'existence de l'écho est représentée à l'étape B par la relation :
5 écho xTj (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.
D'une manière particulièrement avantageuse, conformément à la mise en œuvre 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=k|R(k)=S.
D'une manière générale, en ce qui concerne la mise en œuvre 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 plus détaillée ultérieurement dans la description.
Le procédé objet de l'invention peut en outre être mis en œuvre de 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 œuvre est représentée à la figure 2c et sera décrite en référence à la figure précitée.
Sur la figure 2c on désigne par C xT] {ri) et C xPl {ri) 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. 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 œuvre 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 œuvre 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.
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 CxTj{ri) et CxP a l{ri) et de la variable Ec sous forme d'un message de signalisation d'existence d'écho.
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 xTj {ri) et xP a l {ri) selon les relations : C xTj{ri)→xTj{ri)
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.
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 A0 exécutée au
décodage, en une vérification à la valeur vraie de la variable Ec d'existence d'écho a priori.
Sur réponse négative au test A0 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.
Au contraire, sur réponse positive au test A0, 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 œuvre de manière semblable.
De préférence, et selon un aspect remarquable du procédé, objet de l'invention, le message de signalisation d'existence de faux é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 de faux é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.
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. Ainsi, au codage le procédé selon l'invention consiste à détecter l'existence de faux échos dans un signal à coder. Pour cela, le procédé effectue les étapes suivantes:
- comparer en temps réel une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codage générateur d'écho (signal référencé xoiffj(n) sur la figure 6a) et d'une variable issue d'une
caractéristique correspondante du signal issu d'un codage non générateur d'échos à une valeur de seuil ; et, en fonction du résultat de la comparaison à la valeur de seuil,
- conclure à l'existence ou à la non existence d'un faux écho;
- transmettre conjointement à la trame courante au décodage, un message de signalisation d'existence de faux écho.
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. La mise en œuvre 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. 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.
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é
Xp1 (ri) à xPι(n) et xn(n) à xTj (ri) respectivement.
En outre, les décodeurs prédictifs de couche 1 à i comportent une deuxième sortie auxiliaire délivrant un signal auxiliaire noté xp"ι (ri) à xP a l (ri) .
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).
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.
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 3 a. 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.
Chaque décodeur par transformée reçoit le signal auxiliaire précité.
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é xTj(ή) 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.
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.
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.
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 œuvre 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.
La figure 3c représente un mode de mise en œuvre 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.
Ainsi que représenté sur la figure 3c précitée, le module 1 comprend avantageusement un module Io de calcul d'enveloppe temporelle des signaux décodés Xpt(n) et xTj(ri) délivré par les étages i et j respectifs des décodeurs prédictifs, respectivement des décodeurs par transformée inverse.
Le module 1 comporte en outre un module I1 de calcul du rapport d'enveloppe à partir des signaux EnvPl(k) et Envrj(k) délivrés par le module I0 de calcul d'enveloppe temporelle.
Le module I1 délivre alors la valeur R(k) du rapport précité à un module I2 de calcul de décision et de position ainsi que la valeur d'atténuation pour finalement délivrer le signal DPG précité.
Le module I0 de calcul d'enveloppe temporelle peut comprendre, avantageusement, un premier module de calcul spécifique permettant le calcul de l'enveloppe du signal auxiliaire xPl (n) selon la relation :
N-I
EnvPl(k) = ∑xP a l(kN + n)2 ,k = 0, ..., K-l .
H=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é xPi (n) :
EnvPι (n) = α • MaxψPι a (« J, EnvPl {n - l)J+ (l - α) • xPl a (rn . En outre, le module I0 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-I
EnvTj(k) = ∑xTj(kN + n)2 ,k = 0, ..., K-l .
/1=0
Dans la relation précédente, n, N et K désignent les mêmes éléments que dans la relation antérieure.
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 :
EnvTj (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é.
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.
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. Le module 11 précité comporte alors avantageusement un module de calcul spécifique délivrant directement le rapport R{k) selon la relation suivante :
EnvPl(k)
En outre, dans un mode de mise en œuvre 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
EnvPι{ή)
On comprend que le rapport d'enveloppe lissée est calculé alors sur une trame de longueur K N sensiblement.
Enfin, le module 1 comprend un module I2 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 I2 délivre le signal DPG dans les conditions ci-après, lesquelles seront explicitées et décrites en liaison avec les figures 3 d, 3 e et 3 f. La figure 3d représente un organigramme des étapes essentielles mises en œuvre par un module de calcul de décision de présence écho et de détermination de la position d'origine de l'écho.
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 exemple.
L'étape 100 est suivie d'une étape 101 consistant à comparer la valeur du rapport d'enveloppe R(Jc) à la valeur de seuil S par comparaison de supériorité ou d'égalité.
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-I 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+1 pour un retour au test 101 de comparaison de la valeur du rapport à la valeur de seuil S.
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.
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é.
L'étape 104 est alors suivie de l'étape 106 de fin de discrimination d'écho. Un exemple de mise en œuvre 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.
Le module de calcul logiciel précité peut être implanté ainsi que décrit précédemment dans le module I2 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.
En référence à la figure 3e, on dispose en 1er 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.
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.
Selon un aspect remarquable de mise en œuvre 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 :
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.
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. 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.
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.
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 Sjn(It N + n) pour engendrer le signal de sortie Soul(kN + n) selon la relation : S0M{k N + ή) = Cte g{k) Sm(k 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-I désignant en fait le rang de l'avant dernier échantillon de la trame courante.
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+1 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-I . 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 à comparer la valeur du rang k de l'échantillon à la valeur K-I 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+1 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.
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 comprend, en particulier, qu'en ce qui concerne la mise en œuvre 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 I2 représenté en figure 3c et transmis directement au module d'atténuation 2 par exemple. Un tel mode de mise en œuvre n'est pas limitatif et ne sort pas du cadre de l'objet de la présente 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.
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.
Un tel circuit est connu en tant que tel et, pour cette raison, ne sera pas décrit de manière détaillée.
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 é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.
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=I 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 œuvre 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. 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=O dans l'exemple donné, correspond à une présence a priori d'écho sur la trame courante.
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 œuvre 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 œuvre, 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.
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 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. Le pseudo code permettant de réaliser l'opération "décodage coefficients spectraux" de la figure 3b est donné ci-après.
Pseudo Code
for k = 0, ..., Kb-I CoeffRj(k) = Coeffτj(k) end
for k = Kb, ..., Kf-I if (flag(k) ≈ dispo) CoeffRj(k) = Coeffτj(k) - CoeffPi(k) else
CoeffRj(k) = 0 endif end
Les coefficients CoeffPj(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.
Une première variante de mise en œuvre du dispositif objet de l'invention, sera maintenant décrite en liaison avec la figure 4a et les figures suivantes.
La variante de mise en œuvre précitée est mise en œuvre 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.
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. 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 xTj (ri) 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.
Le mode de mise en œuvre 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. 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. Sur la figure 4b précitée : xm r(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.
- Bc désigne le bloc courant de la trame courante T0 comprenant les échantillons compris entre 0 et N/2.
- Bs désigne B5 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. - Xm-ι(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. 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.
La figure 4c représente la valeur du rapport de signaux d'enveloppe lissé R,is(ri) calculé ainsi que mentionné précédemment dans la 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. Dans ce dernier cas, on constate que l'écho persiste une demi fenêtre après la transition.
La mise en œuvre 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 I0, I2 et I3 représentés en figure 3c de la manière ci-après. 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 œuvre de façon à calculer un rapport de signaux d'enveloppe lissée à partir du signal auxiliaire xP"i(η) de l'étage i du décodage prédictif CELP conjointement au
signal décodé par transformée inverse xTj (ή) en sortie de l'étage j du décodage par transformée MDCT de rang j et du rapport d'enveloppe lissée correspondant.
A titre d'exemple non limitatif, on indique que le signal d'enveloppe lissée est donné par la relation : EnvTj (ή) = Max(\xTl (n)\ , EnvTj (n - 1) \ a + (1 - a) xTj («) .
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 Envτ/n-1) par le choix du maximum entre cette valeur et la valeur absolue du signal décodé xTj(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é α.
En outre, ainsi que représenté en figure 4d, le module I 1 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 I0 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.
La valeur du rapport des signaux d'enveloppe lissée vérifie la relation :
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 sous-bloc en nombre d'échantillons sur lequel est calculé un point de l'enveloppe. 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.
La mise en œuvre 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.
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 I3 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.
Pour des énergies E _cur et E_prev des signaux en recouvrement xm r j(n) de la trame courante respectivement xm r_X j(n) de la trame précédente les énergies correspondantes sont calculées par la relation suivante :
-V/2-1 E_cur = ∑ xjr (n)
et
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.
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.
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 .
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é Rtli (ri) 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 gm-\j(n) pour la trame précédente et gmj(ή) 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+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 B0 de la trame courante 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 gm-\j(n) et à la valeur les valeurs d'atténuation pour la trame courante gmj(ri) les valeurs spécifiques Ci et respectivement C2. Les valeurs C1 et C2 sont des valeurs spécifiques expérimentales tenant compte du fenêtrage appliqué au décodage.
L'étape 407 est suivie d'une l'étape 408 consistant à comparer la valeur du rang de l'échantillon n à une valeur maximale Nmax par comparaison de supériorité à l'étape 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.
Au contraire, sur réponse positive au test 408, une étape 410 de fin de calcul du gain est appelée. 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 gm-ij(fή égale à la valeur 1, aucune atténuation n'étant appliquée à cette dernière, et à appliquer à la trame courante la valeur d'atténuation gmj(ή) prise par exemple à une valeur 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.
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.
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+1 de l'étape 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 gOT-ly(«)=C4 respectivement gmj(ri)-Cs. Les valeurs de C4 et C5 sont des valeurs spécifiques expérimentales. 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+l 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é. 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.
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(ri) é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.
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.
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.
Enfin, en référence à la figure 4f, le module d'atténuation 2 peut avantageusement être constitué, lorsque ce dernier est mis en œuvre en amont du module d'addition recouvrement, par application directe des valeurs d'atténuation, c'est-à-dire les valeurs gm r j{n) et gm r_Xj(n) par l'intermédiaire de multiplicateurs 2i respectivement 22 directement appliquées au signal décodé par transformée inverse, c'est-à-dire aux signaux xm r J{n) et respectivement xm r_Xj{n) ainsi que représenté à la figure 4f.
Les multiplicateurs 21 respectivement 2% délivrent un signal découpé dans lequel les échos ont été atténués, chaque signal correspondant délivré étant noté
xm r Dj{n) respectivement xm r^Dj(n) lesquels sont directement délivrés au module d'addition recouvrement pour reconstituer le signal reconstruit x™d (ri) .
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 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.
Une deuxième variante de mise en œuvre du dispositif, objet de la présente invention, de conception simplifiée par rapport au mode de mise en œuvre 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.
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 directement les signaux décodés xm r j(n) pour la trame courante et X^1J (ri) 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 lui-même les signaux précités au module d'addition/recouvrement.
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 .
Ainsi, le module 1 de calcul est adapté de façon à comporter, ainsi que représenté en figure 5b, le module I0 de calcul d'enveloppe temporelle, le module Ij de calcul du rapport d'enveloppe et le module I2 de calcul de discrimination des pré- et post-échos et du calcul du rapport d'enveloppe dans les conditions ci-après.
Le module I0 de calcul d'enveloppe temporelle reçoit le signal auxiliaire décodé par le décodeur prédictif signal xP a ι(ri) , le signal décodé représentatif de la trame courante xm r j(n) et le signal décodé représentatif de la trame précédente, x m-ij(n) - Le module Io permet alors d'examiner conjointement la trame précédente x m-ij(n) et la trame courante précitée xm r j(n) qui se trouve en recouvrement, ainsi que représenté en figure 4b. Il délivre les signaux d'enveloppe Envp,(ή), Envmj(ή) pour la trame courante respectivement, Envm.\j(ή) au module de calcul du rapport d'enveloppe I1.
Le module 1 \ de calcul du rapport d'enveloppe permet alors de calculer des valeurs de premier rapport d'enveloppe Rm r_λ j(ri) entre le signal décodé représentatif de la trame précédente x^_ly(«) et le signal décodé auxiliaire xp a ι(ri) , d'une part, et de deuxième rapport d'enveloppe Rm r j(n) entre le signal décodé de la trame courante xm r J (ri) et le signal décodé auxiliaire délivré par le décodeur prédictif xp a ι (ri) , d'autre part.
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 r j(ri) respectivement gm r_λj(ri) se déduisent alors des rapports d'enveloppe Rm r j(ri) et iζ,_I ;(«) respectivement. En particulier, les valeurs d'atténuation peuvent être constituées par l'inverse des valeurs des rapports d'enveloppe précitées.
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 semblable à celui décrit en liaison avec la figure 4e après discrimination des pré- respectivement des post-échos.
A titre d'exemple non limitatif, si le deuxième rapport d'enveloppe Rm r j{ή) 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^1 y(«) est faible, la présence de pré-échos est alors détectée. Si le premier et le deuxième rapport d'enveloppe Rm r j{n) et Rm r_Xj(ή) 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.
Si le premier rapport d'enveloppe temporelle Rι r n_λJ(n) est supérieur à une valeur de seuil et que le deuxième rapport Rm r j («) présente une valeur faible, alors on est en présence de post-échos.
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.
Toutefois, dans le cas de la mise en œuvre 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. Les valeurs d'atténuation sont alors dirigées vers les multiplicateurs 2\ et 22 de la figure 4f pour effectuer l'exécution de la réduction des échos.
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"j(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 (ή) = xm r (») + *;_,(«) .
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 xP"ι (ή) . Dans la trame où 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 : xm r (n) = h(n) x(n) - h(N /2-1-n) x(N /2-l-n) n = 0, ..., N/2-l et
3N 3N x[ι(n) = h(n) x(ή) + h(—-\-n) x(—-\-ή) n = N I2, ..., N -\
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é'.
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=[O5I]) 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é. 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
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.
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. 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"l (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'τ. Le signal retardé x(n-T) est délivré à un circuit soustracteur lequel délivre le signal différence xDlffJ («) .
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 xDlJfJ(n) . On comprend, en particulier, que le module
Io inséré au codeur correspond sensiblement au module I0 décrit précédemment dans la description en liaison avec la figure 3b par exemple.
Le module I0 inséré au codeur délivre l'enveloppe des signaux correspondants notée EnvPl(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 EnvDιffj(k) .
Le module de calcul du message de signalisation comporte en outre un module 11 du calcul du rapport d'enveloppe comparable à celui précédemment décrit dans la description en liaison avec la figure 3b. Enfin, le module I3 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. 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. 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 Coeffpj(k), puis combiné avec les coefficients spectraux Coeffχj(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.
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. 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.
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.
Pseudo Code
for k = O3 ... , Kb-I
CoeffRj(k) = Coeffpi(k) + Coeffτj(k) end
for k = Kb, ..., Kf-I if (flag(k) == dispo)
CoeffRj(k) = Coeffτj(k) else
CoeffRj(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.
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 sous-bandes 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 des coefficients spectraux de la bande basse CoeffRj Bb(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. En outre, selon le mode de réalisation de la figure 10, le nombre de sous-bandes de traitement de voies d'atténuation peut être quelconque.
Le pseudo code permettant de réaliser l'opération "combinaison des coefficients spectraux" de la figure 10 est donné ci-après.
Pseudo Code for k = 0, ..., Kb-I
CoeffRj Bb(k) = Coeffτj(k) CoeffRj Bh(k) = 0 end
for k = Kb, ..., Kf-I if (flag(k) == dispo)
CoeffRj Bh(k) ≈ Coeffτj(k) else
CoeffRj Bh(k) = Coeffpi(k) endif
CoeffRj Bb(k) = 0 end
La Figure 11 représente une variante de la Figure 10 où le signal prédictif additionné par le sommateur S0 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 S0 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 ≈ O, ..., Kb-I CoeffRj Bb(k) = Coeffτj(k)
CoeffRj Bh(k) = 0 end
for k = Kb, ..., Kf-I if (flag(k) == dispo)
CoeffRj Bh(k) = Coeffτj(k) - CoeffPi(k) else
CoeffRj Bh(k) = 0
endif
CoeffRj Bb(k) ≈ 0 end Un avantage de cette façon de procéder est que les signaux sommés par S0 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 à phase linéaire ou par des filtres à réponse impulsionnelle infinie éventuellement à déphasage minimal. Dans le mode de mise en œuvre 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. 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. II 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 œuvre du procédé tel que décrit précédemment dans la description en liaison avec les figures 2a, 2b et 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
xDlffj{ή) à 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.
Claims
1. 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, caractérisé en ce que ledit procédé consiste au moins au décodage, pour chaque trame courante dudit signal audionumérique, à :
- comparer, en temps réel, une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal issu d'un décodage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un décodage non générateur d'échos à une valeur de seuil ; et, en fonction du résultat de la comparaison à la valeur de seuil,
- conclure à l'existence ou à la non existence d'un écho issu du codage par transformée dans ladite trame courante
2. Procédé selon la revendication 1, caractérisé en ce que la position d'origine dudit écho dans ladite trame courante est donnée par la position dans ladite trame courante de ladite variable sensiblement égale à ladite valeur de seuil.
3. Procédé selon l'une des revendications 1 ou 2, caractérisé en ce que celui-ci consiste en outre, pour chaque trame reçue du codage, à : - recevoir conjointement un message de signalisation d'existence de faux écho obtenue au codage par comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codage-décodage non générateur d'échos à une valeur de seuil ; - conclure à l'existence ou à la non existence d'un écho conditionnellement à l'existence ou à la non existence de faux écho au codage.
4. Procédé selon la revendication 3, caractérisé en ce que ledit message de signalisation d'existence de faux écho est un message de fausse alarme de présence d'échos dans ladite trame courante.
5. Procédé de détection d'existence de faux échos dans un signal à coder par codage hiérarchique multicouches comportant un codage par transformée, générateur d'échos, et un codage prédictif, non générateur d'échos, caractérisé en ce que le procédé consiste, au codage, pour chaque trame courante du signal à coder, à: - comparer en temps réel une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codage-décodage non générateur d'échos à une valeur de seuil ; et, en fonction du résultat de la comparaison à la valeur de seuil, - conclure à l'existence ou à la non existence d'un faux écho;
- transmettre conjointement à la trame courante au décodage, un message de signalisation d' existence de faux écho.
6. Procédé selon la revendication 5, caractérisé en ce que ledit message de signalisation d'existence de faux échos est un message de fausse alarme de présence d'échos dans la dite trame courante.
7. Dispositif de discrimination et d'atténuation des échos d'un signal audionumérique engendré par un codeur hiérarchique multicouches comportant au moins un codeur par transformée, susceptible de révéler des échos, et au moins un codeur prédictif, non générateur d'échos, caractérisé en ce qu'il comporte: - des moyens de comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal issu d'un décodage générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un décodage non générateur d'échos à une valeur de seuil , appliqués à chaque trame courante; et - des moyens de conclusion sur l'existence ou sur la non existence d'un écho issu du codage par transformée dans ladite trame courante en fonction du résultat de la comparaison.
8. Dispositif de discrimination et d'atténuation des échos selon la revendication 7, ledit codeur hiérarchique 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 comportant au moins une sortie délivrant un signal audionumérique prédictif décodé qui peut être soit ledit signal audionumérique décodé soit ledit signal audionumérique décodé et filtré soit un signal représentatif de l'énergie dudit signal audionumérique décodé, chaque décodeur par transformée délivrant, après décodage par transformée inverse et addition recouvrement un signal décodé succession de trames courantes, caractérisé en ce que ledit dispositif comporte au moins au niveau d'un décodeur :
- un moyen de calcul de l'existence et de la position d'origine d'écho dans la trame courante recevant, d'une part, le signal prédictif décodé délivré par la 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 et délivrant un signal de présence, de position d'écho et de valeur d'atténuation d'écho applicable dans ladite trame courante ; et,
- des moyens d'atténuation de l'écho recevant ledit signal décodé succession de trames courantes délivré par ledit décodeur par transformée inverse de rang j et ledit signal de présence, de position d'origine d'écho et de valeur d'atténuation d'écho applicable dans ladite 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 de l'écho.
9. Dispositif selon la revendication 8, caractérisé en ce que ledit signal décodé, en trames successives avec un écho atténué, est suivi d'un filtrage perceptuel inverse.
10. Dispositif selon la revendication 8, caractérisé en ce que ledit moyen de calcul de l'existence et de la position d'origine de l'écho dans la trame courante comporte au moins :
- un moyen de calcul de l'enveloppe temporelle dudit signal prédictif décodé délivré par la sortie dudit décodeur prédictif de rang i et de l'enveloppe temporelle du signal décodé délivré par la sortie du décodeur par transformée de rang j ;
- des moyens de calcul du rapport desdites valeurs d'enveloppe temporelle ; - des moyens de calcul de décision d'existence, de position d'origine d'écho et de valeur d'atténuation applicable auxdits échos par comparaison de la valeur dudit rapport desdites valeurs d'enveloppe temporelle à une valeur de seuil.
11. Dispositif selon la revendication 10, caractérisé en ce que ladite valeur d'atténuation est soit la valeur 1, en l'absence d'existence d'écho, soit la valeur de l'inverse du rapport desdites valeurs d'enveloppe temporelle.
12. Dispositif selon l'une des revendications 7 à 11, caractérisé en ce que celui-ci comporte en outre au niveau dudit décodeur, des moyens de réception et de traitement d'un message de signalisation d'existence de faux écho transmis conjointement avec chaque trame courante du codeur audit décodeur.
13. Dispositif selon la revendication 12, caractérisé en ce que, pour un message de signalisation d'existence de faux échos de type message de fausse alarme de présence d'échos dans ladite trame courante, ledit dispositif comprend associés auxdits moyens de calcul de décision d'existence de position d'origine d'écho et de valeur d'atténuation applicable auxdits échos : — des moyens de lecture dudit message de fausse alarme ; et, sur lecture d'un message de fausse alarme à la valeur vraie, l'information délivrée par ledit message correspondant à une absence a priori d'écho sur ladite trame courante,
- des moyens d'inhibition desdits moyens de calcul de décision d'existence, de position d'origine d'écho et de valeur d'atténuation applicable ; sinon, l'information délivrée par ledit message correspondant à une présence a priori d'écho sur la trame courante,
- des moyens d'activation desdits moyens de calcul de décision d'existence de position d'origine d'écho et de valeur d'atténuation applicable.
14. Dispositif selon l'une des revendications 8 à 13, caractérisé en ce que pour un décodeur par transformée inverse de rang j comportant un module de décodage fréquentiel inverse des coefficients spectraux connecté en cascade avec un module d'addition/recouvrement, ledit décodeur comporte :
- lesdits moyens d'atténuation d'écho intercalés entre ledit module de décodage inverse des coefficients spectraux et ledit module d'addition/recouvrement ;
- un module d'addition/recouvrement auxiliaire recevant deux trames successives de coefficients spectraux décodés délivrées par ledit module de décodage inverse et délivrant un signal décodé auxiliaire dans lequel les échos ne sont pas atténués audit moyen de calcul de l'existence, de la position d'origine de l'écho dans la trame courante, ledit moyen de calcul de l'existence, de la position d'origine de l'écho et de la valeur d'atténuation dans la trame courante délivrant ledit signal de présence de position d'écho et de valeur d'atténuation dans la trame courante auxdits moyens d'atténuation d'écho.
15. Dispositif selon la revendication 14, caractérisé en ce que pour un signal décodé délivré par ledit module de décodage fréquentiel inverse des coefficients spectraux formé par une trame courante et une trame précédente en recouvrement, ledit moyen de calcul de décision d'existence de position d'origine d'écho et de la valeur d'atténuation applicable comporte en outre des moyens 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, ladite trame courante étant le siège de pré-échos pour une énergie des échantillons décodés de la trame courante supérieure à l'énergie des échantillons décodés de la trame précédente, lorsque le rapport des valeurs desdits signaux d'enveloppe est supérieur à ladite valeur de seuil, ladite trame courante étant le siège de post-échos, sinon.
16. Dispositif selon la revendication 14, caractérisé en ce que pour un décodeur par transformée inverse de rang j dans lequel ledit module d'addition/recouvrement auxiliaire est supprimé, ledit moyen 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 reçoit une trame courante et une trame précédente de coefficients spectraux décodés par transformée inverse, en l'absence d'addition, ledit moyen de calcul comporte :
- des moyens de calcul de l'enveloppe temporelle de la trame précédente, de la trame courante et du signal auxiliaire délivré par la deuxième sortie du décodeur prédictif de rang i ;
- des moyens de calcul d'un premier rapport d'enveloppe temporelle de la trame précédente à l'enveloppe temporelle du signal auxiliaire et d'un deuxième rapport d'enveloppe temporelle de la trame courante à l'enveloppe temporelle du signal auxiliaire,
- des moyens de discrimination de présence de pré-échos respectivement de post-échos à partir desdits rapports et de calcul de valeurs d'atténuation, compte tenu de la présence de pré- respectivement de post-échos et de la valeur dudit premier et du deuxième rapport.
17. Dispositif selon l'une des revendications 8 à 16 précédentes, caractérisé en ce que ledit dispositif comporte en outre, au niveau du décodeur, des moyens de reconstitution des coefficients spectraux du décodeur par transformée inverse de rang j, à partir d'une partie au moins du signal de sortie délivré par ledit décodeur prédictif de rang i.
18. Dispositif selon la revendication 17, caractérisé en ce que lesdits moyens de reconstitution des coefficients spectraux comportent au moins :
- des moyens de transformation temps-fréquence du signal de sortie du décodeur prédictif délivrant les composantes spectrales du signal prédictif ;
- des moyens de combinaison des composantes spectrales du signal prédictif aux coefficients spectraux décodés.
- des moyens de séparation desdits coefficients spectraux décodés en une pluralité de sous-bandes par une transposition fréquence/temps et addition/recouvrement.
- des moyens de séparation du signal prédictif en une pluralité de sous-bandes
19. Dispositif selon la revendication 18, caractérisé en ce que lesdits moyens de combinaison des composantes spectrales du signal prédictif aux coefficients spectraux décodés délivrent au moins :
- des premiers coefficients spectraux combinés dans une bande de fréquence déterminée et un signal temporel correspondant à ladite bande de fréquence déterminée;
- des deuxièmes coefficients spectraux combinés dans au moins une autre bande de fréquences déterminée et les signaux temporels correspondants auxdites bandes de fréquence déterminées; ledit dispositif comportant une voie de détection et d'atténuation de l'écho dans ladite bande de fréquences respectivement au moins une autre voie de détection et d'atténuation de l'écho dans chaque autre bande de fréquences.
20. Dispositif suivant l'une des revendications 17, 18, 19 précédentes, caractérisé en ce que le signal prédictif est directement ajouté aux signaux des sous- bandes issues du décodage par transformée et en ce que 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.
21. Dispositif de détection d'existence de faux échos dans un signal à coder par un codeur hiérarchique multicouches comportant un codeur par transformée, générateur d'échos, et un codage prédictif, non générateur d'échos, caractérisé en ce qu'il comporte:
- des moyens de comparaison d'une valeur représentative d'une variable issue d'une caractéristique de l'enveloppe temporelle du signal d'entrée d'un codeur générateur d'écho et d'une variable issue d'une caractéristique correspondante du signal issu d'un codeur-décodeur non générateur d'échos à une valeur de seuil ; et,
- des moyens de conclusion sur l'existence ou la non existence d'un faux échos; - des moyens de transmission d'un message de signalisation d'existence de faux écho au décodeur conjointement à la transmission de la trame courante.
22. Dispositif selon la revendication 21, caractérisé en ce que, pour un codeur multicouches comportant au moins un codeur prédictif de rang i et un codeur par transformée de rang j, lesdits moyens de calcul d'un message de signalisation comportent au moins :
- des moyens de calcul d'un signal différence entre un signal décodé auxiliaire reconstitué, obtenu par codage-décodage du signal audionumérique au moyen dudit codeur prédictif de rang i et d'un décodeur prédictif, et le signal audionumérique retardé d'une durée égale au retard algorithmique de la partie codage-décodage prédictif ;
- des moyens de calcul des valeurs de l'enveloppe temporelle dudit signal décodé auxiliaire reconstitué et de l'enveloppe temporelle dudit signal différence ; - des moyens de calcul du rapport desdites valeurs d'enveloppe.
23. Message de signalisation de présence de faux écho dans une trame courante de signal audionumérique codé par transformée fréquentielle, caractérisé en ce que ledit message constitue un message de signalisation de fausse alarme, ledit message comportant au moins un champ comportant un bit de valeur binaire déterminée pour indiquer une absence a priori d'écho sur une trame courante de signal audionumérique codé respectivement de valeur binaire complémentée pour indiquer une présence a priori d'écho sur une trame courante de signal audio numérique codé.
24. Produit de programme d'ordinateur enregistré sur un support de mémorisation, 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, caractérisé en ce que ledit produit de programme lorsqu'il est exécuté par un ordinateur permet la mise en œuvre du procédé selon l'une des revendications 1 à 4.
25. Produit de programme d'ordinateur enregistré sur un support de mémorisation, exécutable par un ordinateur, selon la revendication 24, caractérisé en ce qu'il est implanté dans un 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, intégré à un décodeur hiérarchique multicouches, ledit module recevant, d'une part, un signal décodé représentatif de l'énergie du signal délivré par un décodeur prédictif de rang i, et, d'autre part, au moins un signal décodé délivré par un décodeur par transformée inverse de rang j.
26. Produit de programme d'ordinateur enregistré sur un support de mémorisation, exécutable par un ordinateur, selon la revendication 24, caractérisé en ce qu'il est implanté dans un module de discrimination d'existence d'écho intégré à un codeur hiérarchique multicouches, d'un signal audionumérique, ledit module permettant d'engendrer un signal différence à 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.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0507471A FR2888704A1 (fr) | 2005-07-12 | 2005-07-12 | |
FR0507471 | 2005-07-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007006958A2 true WO2007006958A2 (fr) | 2007-01-18 |
WO2007006958A3 WO2007006958A3 (fr) | 2007-03-22 |
Family
ID=36127469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2006/001659 WO2007006958A2 (fr) | 2005-07-12 | 2006-07-07 | Procédé et dispositif d'atténuation des échos d'un signal audionumérioue issu d'un codeur multicouches |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2888704A1 (fr) |
WO (1) | WO2007006958A2 (fr) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009527773A (ja) * | 2006-02-20 | 2009-07-30 | フランス テレコム | デコーダおよび対応するデバイス中のディジタル信号のエコーの訓練された弁別および減衰のための方法 |
US10170126B2 (en) | 2012-12-21 | 2019-01-01 | Orange | Effective attenuation of pre-echoes in a digital audio signal |
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 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1335353A2 (fr) * | 2002-02-08 | 2003-08-13 | NTT DoCoMo, Inc. | Appareil de décodage, appareil de codage, méthode de décodage et méthode de codage |
-
2005
- 2005-07-12 FR FR0507471A patent/FR2888704A1/fr active Pending
-
2006
- 2006-07-07 WO PCT/FR2006/001659 patent/WO2007006958A2/fr active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1335353A2 (fr) * | 2002-02-08 | 2003-08-13 | NTT DoCoMo, Inc. | Appareil de décodage, appareil de codage, méthode de décodage et méthode de codage |
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 novembre 1994 (1994-11-01), pages 3010-3019, XP000475155 ISSN: 0090-6778 cité dans la demande * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009527773A (ja) * | 2006-02-20 | 2009-07-30 | フランス テレコム | デコーダおよび対応するデバイス中のディジタル信号のエコーの訓練された弁別および減衰のための方法 |
US10170126B2 (en) | 2012-12-21 | 2019-01-01 | Orange | Effective attenuation of pre-echoes in a digital audio signal |
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 |
---|---|
FR2888704A1 (fr) | 2007-01-19 |
WO2007006958A3 (fr) | 2007-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2277172B1 (fr) | Dissimulation d'erreur de transmission dans un signal audionumerique dans une structure de decodage hierarchique | |
EP2002428B1 (fr) | Procede de discrimination et d'attenuation fiabilisees des echos d'un signal numerique dans un decodeur et dispositif correspondant | |
EP2080195B1 (fr) | Synthèse de blocs perdus d'un signal audionumérique | |
RU2658128C2 (ru) | Устройство и способ для генерации адаптивной формы спектра комфотного шума | |
EP1316087B1 (fr) | Dissimulation d'erreurs de transmission dans un signal audio | |
EP1905010A2 (fr) | Dispositif de codage/decodage hierarchique | |
EP2727107B1 (fr) | Fenêtres de pondération en codage/décodage par transformée avec recouvrement, optimisées en retard | |
EP2936488B1 (fr) | Atténuation efficace de pré-échos dans un signal audionumérique | |
EP2347411B1 (fr) | Attenuation de pre-echos dans un signal audionumerique | |
WO2007006958A2 (fr) | Procédé et dispositif d'atténuation des échos d'un signal audionumérioue issu d'un codeur multicouches | |
EP2005424A2 (fr) | Procede de post-traitement d'un signal dans un decodeur audio | |
CN106716529B (zh) | 对数字音频信号中的前回声进行辨别和衰减 | |
Taori et al. | Hi-BIN: An alternative approach to wideband speech coding | |
EP2203915B1 (fr) | Dissimulation d'erreur de transmission dans un signal numerique avec repartition de la complexite | |
EP0891617B1 (fr) | Systeme de codage et systeme de decodage d'un signal, notamment d'un signal audionumerique | |
Ofir et al. | Packet loss concealment for audio streaming based on the GAPES and MAPES algorithms | |
FR2885462A1 (fr) | Procede d'attenuation des pre-et post-echos d'un signal numerique audio et dispositif correspondant | |
Ofir | Packet loss concealment for audio streaming | |
FR2830970A1 (fr) | Procede et dispositif de synthese de trames de substitution, dans une succession de trames representant un signal de parole | |
FR2980620A1 (fr) | Traitement d'amelioration de la qualite des signaux audiofrequences decodes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 06778832 Country of ref document: EP Kind code of ref document: A2 |