EP2867893B1 - Effective pre-echo attenuation in a digital audio signal - Google Patents
Effective pre-echo attenuation in a digital audio signal Download PDFInfo
- Publication number
- EP2867893B1 EP2867893B1 EP13744654.8A EP13744654A EP2867893B1 EP 2867893 B1 EP2867893 B1 EP 2867893B1 EP 13744654 A EP13744654 A EP 13744654A EP 2867893 B1 EP2867893 B1 EP 2867893B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- echo
- attack
- signal
- filtering
- attenuation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000005236 sound signal Effects 0.000 title claims description 21
- 238000001914 filtration Methods 0.000 claims description 80
- 238000000034 method Methods 0.000 claims description 40
- 230000003595 spectral effect Effects 0.000 claims description 26
- 238000007493 shaping process Methods 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 20
- 230000006978 adaptation Effects 0.000 claims description 13
- 238000002592 echocardiography Methods 0.000 claims description 12
- 230000003044 adaptive effect Effects 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 26
- 230000007704 transition Effects 0.000 description 17
- 230000015654 memory Effects 0.000 description 14
- 238000009499 grossing Methods 0.000 description 11
- 230000009467 reduction Effects 0.000 description 9
- 238000003786 synthesis reaction Methods 0.000 description 6
- 230000002238 attenuated effect Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 5
- 230000000116 mitigating effect Effects 0.000 description 5
- 230000000750 progressive effect Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000015556 catabolic process Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000006731 degradation reaction Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 101100412102 Haemophilus influenzae (strain ATCC 51907 / DSM 11121 / KW20 / Rd) rec2 gene Proteins 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000003071 parasitic effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 101100356020 Haemophilus influenzae (strain ATCC 51907 / DSM 11121 / KW20 / Rd) recA gene Proteins 0.000 description 2
- 101100042680 Mus musculus Slc7a1 gene Proteins 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012885 constant function Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000002401 inhibitory effect Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241000287107 Passer Species 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229940082150 encore Drugs 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000009527 percussion Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
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/03—Spectral prediction for preventing pre-echo; Temporary noise shaping [TNS], e.g. in MPEG2 or MPEG4
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
- G10L21/0364—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude for improving intelligibility
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/26—Pre-filtering or post-filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
-
- 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
Definitions
- the invention relates to a pre-echo attenuation processing method and device for decoding a digital audio signal.
- compression processes for the transport of digital audio signals on the transmission networks, whether for example fixed or mobile networks, or for the storage of signals, compression processes (or source coding) using coding systems of the time coding type or frequency coding by transform.
- the method and the device which are the subject of the invention, thus have as their field of application the compression of sound signals, in particular frequency-coded digital audio signals.
- the figure 1 represents for illustrative purposes, a block diagram of the coding and decoding of a digital audio signal by transform including an addition / overlap synthesis analysis according to the prior art.
- Certain musical sequences such as percussion and certain segments of speech like the plosives (/ k /, / t /, ...), are characterized by extremely sudden attacks which result in very fast transitions and a very strong variation signal dynamics in a few samples.
- An example of a transition is given to the figure 1 from sample 410.
- the input signal is cut into blocks of samples of length L, represented on the figure 1 by dotted vertical lines.
- the input signal is denoted x ( n ), where n is the index of the sample.
- L 160 samples.
- the division in blocks, also called frames, operated by the transform coding is totally independent of the sound signal and the transitions can therefore appear at any point in the analysis window. But after transform decoding, the reconstructed signal is tainted by "noise” (or distortion) generated by the quantization (Q) -quantization inverse (Q -1 ) operation.
- This coding noise is temporally distributed relatively uniformly over the entire temporal support of the transformed block, that is to say on any the length of the window of length 2L of samples (with overlap of L samples).
- the energy of the coding noise is generally proportional to the energy of the block and is a function of the coding / decoding rate.
- the level of the coding noise is typically lower than that of the signal for the high energy segments that immediately follow the transition, but the level is higher than that of the signal for the lower energy segments, especially on the part preceding the transition (samples 160 - 410 of the figure 1 ).
- the signal-to-noise ratio is negative and the resulting degradation can appear very troublesome to listen.
- Pre-echo is the coding noise prior to the transition and post-echo the noise after the transition.
- 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 inconvenience acceptable for post-echoes is therefore greater than for pre-echoes.
- MPEG AAC Advanced Audio Coding
- MPEG AAC Advanced Audio Coding
- Transform encoders used for conversational applications such as ITU-T G.722.1, G.722.1C or G.719 often use a window of 40 ms duration at 16, 32 or 48 kHz (respectively) and a frame length of 20 ms . It should be noted that the ITU-T G.719 encoder incorporates a window switch mechanism with transient detection, however the pre-echo is not completely reduced at low bit rate (typically at 32 kbit / s).
- the aforementioned filtering process does not allow to find the original signal, but provides a strong reduction of pre-echoes. However, it requires transmitting the additional parameters to the decoder.
- Other definitions of the factor g ( k ) are possible, for example as a function of the energy En ( k ) in the current sub-block and the energy En ( k -1) in the preceding sub-block.
- the factor g ( k ) is then set to an attenuation-inhibiting attenuation value, i.e. 1. Otherwise, the attenuation factor is between 0 and 1.
- the frame that precedes the pre-echo frame has a homogeneous energy that corresponds to the energy of a low energy segment (typically a background noise).
- a background noise typically a background noise
- the attenuation factors (or gains) g ( k ) determined by sub-blocks are then smoothed by an applied smoothing function sample by sample to avoid abrupt changes in the attenuation factor at the block boundaries.
- L ' represents the length of a sub-block.
- g pre (-1) is the last attenuation factor obtained for the last sample of the previous sub-block
- the signal is sampled at 32 kHz
- part a) of the figure 2 a frame of an original signal sampled at 32 kHz is shown.
- An attack (or transition) in the signal is located in the sub-block beginning at the index 320.
- This signal has been coded by a low rate (24 kbit / s) MDCT type transform coder.
- part (b) of the figure 2 the result of the decoding without pre-echo processing is illustrated.
- the pre-echo can be observed from sample 160, in the preceding sub-blocks the one containing the attack.
- Part c) shows the evolution of the pre-echo attenuation factor (solid line) obtained by the method described in the aforementioned prior art patent application.
- the dashed line represents the factor before smoothing. Note here that the position of the attack is estimated around the sample 380 (in the block delimited by the samples 320 and 400).
- the value of factor 1 has been assigned to the last 16 samples of the sub-block preceding the attack, starting from the index 364.
- the smoothing function progressively increases the factor to have a value close to 1 at the moment. of the attack.
- the amplitude of the attack is then preserved, as illustrated in part d) of the figure 3 however, some pre-echo samples are not attenuated.
- Attenuation pre-echo reduction does not reduce the pre-echo to the attack level because of gain smoothing.
- FIG 4 Another example with the same setting as that of the figure 3 is illustrated on the figure 4 .
- This figure represents 2 frames to better show the nature of the signal before the attack.
- the energy of the original signal before the attack is stronger (part a) than in the case illustrated by the figure 3 , and the signal before the attack is audible (samples 0 - 850).
- part b) we can observe the pre-echo on the decoded signal without pre-echo processing in the 700-850 area.
- the signal energy of the pre-echo zone is attenuated to the average energy of the signal preceding the treatment zone.
- part c) the attenuation factor calculated taking into account the energy limitation is close to 1 and that the pre-echo is always present on part d) after application of the pre-echo treatment ( multiplication of the signal b) with the signal c)), despite the good leveling of the signal in the pre-echo zone.
- the pre-echo treatment multiplication of the signal b) with the signal c)
- the present invention improves the state of the art.
- the spectral shaping applied improves the pre-echo attenuation.
- the treatment makes it possible to attenuate the pre-echo components that could remain during the implementation of the pre-echo attenuation as described in the state of the art.
- the filtering being applied to the detected position of the attack, it makes it possible to process the attenuation of the pre-echo up to the nearest attack. This therefore offsets the disadvantage of temporal attenuation echo control which is limited to a zone not going to the attack position (margin of 16 samples for example).
- This pre-echo attenuation processing technique can be implemented with or without knowledge of a signal derived from a time decoding and for coding a monophonic signal or a stereophonic signal.
- the adaptation of the filtering makes it possible to adapt to the signal and to remove only the disturbing parasitic components.
- the method further comprises calculating at least one decision parameter on the filtering to be applied to the pre-echo zone and the adaptation of the filtering coefficients according to said at least one parameter of decision.
- the treatment is then applied only when necessary to a suitable level of filtering.
- the at least one decision parameter is a measure of the strength of the detected attack.
- the force of the attack determines the presence of audible high-frequency components in the pre-echo zone.
- the attack is abrupt, the risk of having an annoying parasitic component in the pre-echo zone is large and the filtering to be carried out according to the invention is then to be expected.
- This calculation is of less complexity and makes it possible to define well the strength of the detected attack.
- the said at least one decision parameter may also be the value of the attenuation factor in the sub-block preceding that containing the position of the attack.
- said at least one decision parameter is based on a spectral distribution analysis of the signal of the pre-echo zone and / or of the signal preceding the pre-echo zone.
- the adaptation of the filtering coefficients can be done in a discrete manner as a function of the comparison of at least one decision parameter with a predetermined threshold.
- the filter coefficients can take predetermined values according to a set of values.
- the smallest set of values being one where only two values are possible, it is a saying for example the choice between a filtering and no filtering.
- the adaptation of the filtering coefficients is carried out continuously according to said at least one decision parameter.
- the attenuation step is performed at the same time as the spectral shaping filtering by integrating the attenuation factors with the coefficients defining the filtering.
- the invention relates to a decoder of a digital audio signal comprising a device as described above.
- the invention is directed to a computer program comprising code instructions for implementing the steps of the attenuation processing method as described, when these instructions are executed by a processor.
- the invention relates to a storage medium, readable by a processor, integrated or not to the processing device, optionally removable, storing a computer program implementing a method of treatment as described above.
- a pre-echo attenuation processing device 600 is described.
- this device implements a pre-echo attenuation method in the decoded signal, for example that described in the patent application.
- FR 08 56248 It furthermore implements spectral shaping filtering of the pre-echo zone.
- the device 600 comprises a detection module 601 able to implement a step of detecting (Detect.) The position of an attack in a decoded audio signal.
- An onset is a rapid transition and a sudden change in the dynamics (or amplitude) of the signal.
- This type of signal may be referred to by the more general term "transient”.
- transient we will use only the terms of attack or transition to designate also transients.
- the synthesis window MDCT contains only 415 non-zero samples, unlike the 640 samples in the case of using conventional sinusoidal windows.
- other analysis / synthesis windows may be used, or switches between long and short windows may be used.
- the MDCT x MDCT ( n ) memory is used which gives a time-folding version ("folding") of the future signal.
- the figure 1 shows that the pre-echo influences the frame preceding the one where the attack is located, and it is desirable to detect an attack in the future frame which is partially contained in the MDCT memory.
- the signal contained in the MDCT memory includes time folding (which is compensated when the next frame is received).
- the MDCT memory serves essentially to estimate the energy by sub-blocks of the signal in the next (future) frame, and it is considered that this estimate is sufficiently precise for the purposes of the detection and reduction of pre- echo when performed with the available MDCT memory at the current frame instead of the fully decoded signal at the future frame.
- the current frame and the MDCT memory can be seen as concatenated signals forming a signal of length (K + K ') L' cut into (K + K ') consecutive sub-blocks.
- the ' - 1 x rec not 2 , k 0 ... , K - 1 when the k-th sub-block is in the current frame and, like:
- the ' - 1 x MDCT not 2 , k K , ...
- Other pre-echo detection criteria are possible without changing the nature of the invention.
- the device 600 also comprises a determination module 602 implementing a determination step (ZPE) of a pre-echo zone preceding the detected attack position.
- ZPE determination step
- the energies En ( k ) are concatenated in chronological order, with the time envelope of the decoded signal first, then the envelope of the signal of the next frame estimated from the memory of the MDCT transform. According to this envelope concatenated temporal and mean energies In and In' of the previous frame, the presence of pre-echo is detected if the ratio R ( k ) is sufficiently strong.
- the pre-echo zone does not necessarily start at the beginning of the frame, and may involve an estimate of the length of the pre-echo. If window switching is used, the pre-echo zone must be defined to take into account the windows used.
- a module 603 of the device 600 implements a sub-block attenuation factor calculation step of the determined pre-echo area, depending on the frame in which the attack was detected and the previous frame.
- Other definitions of the factor g ( k ) are possible, for example as a function of En ( k ) and En ( k -1).
- the factor is then set to an attenuation-inhibiting attenuation value, i.e. 1. Otherwise, the attenuation factor is between 0 and 1.
- the attenuation factors g ( k ) determined by sub-blocks are then smoothed by an applied smoothing function sample by sample to avoid abrupt changes in the attenuation factor at the boundaries of the blocks.
- the module 604 of the device 600 of the figure 6 implements the attenuation (Att.) in the sub-blocks of the pre-echo zone, by the attenuation factors obtained.
- the spectral shaping filter used is a linear filter. Since the gain multiplication operation is also a linear operation, their order can be inverted: you can also do the formatting filtering first. Spectrum of the pre-echo area then the pre-echo attenuation by multiplying each sample of the pre-echo area by the corresponding factor.
- c (n) 0.05, 0.1, 0.15, 0.2 and 0.25.
- the motivation for using this filter is its low complexity, its null phase and therefore its zero delay (possible because the processing stops before the end of the current frame) but also its frequency response which corresponds well to the desired low-pass characteristics for this filter.
- this filter can compensate for the fact that the temporal attenuation of the pre-echo is typically limited to a zone not going to the position of the attack (with a margin of, for example, 16 samples), then that the spectral shaping filtering as defined by the transfer function c ( n ) z -1 + (1 - 2c ( n )) + c ( n ) z can be applied up to the position of the attack , possibly with some interpolation samples of the filter coefficients.
- the proposed FIR filter makes it easy to smoothly move from the unfiltered domain to the filtered domain and vice versa, by interpolation or slow variation of its coefficients.
- the filter c ( n ) z -1 + (1-2c ( n )) + c ( n ) z can attenuate the high frequencies before the attack without modifying the attack itself. even.
- Part d) of the figure 8 An exemplary digital audio signal, for which the processing as described herein is performed, is illustrated in part d) of the figure 8 .
- Parts a), b) and c) of this figure show the same signals as those described with reference to the figure 4 previously.
- Part d) differs by the implementation of filtering according to the invention. It can thus be noted that the troublesome high-frequency component is greatly reduced, so that the signal decoded after filtering has a better quality than that described in part d) of FIG. figure 4 .
- An order 1 filter of the form c ( n ) z -1 + (1- c ( n )) can also be used in an embodiment which does not form part of the invention.
- the filtering implemented according to the described method is an adaptive filtering. It can thus be adapted to the characteristics of the decoded audio signal.
- a step of calculating a decision parameter (P) on the filtering to be applied to the pre-echo zone is implemented in the calculation module 605 of FIG. figure 6 .
- this decision parameter is representative of the presence of high frequency components in the pre-echo zone.
- the spectral shaping filter is applied, according to the invention, from the beginning of the current frame to the position pos position of the attack.
- the spectral shaping of the pre-echo zone by filtering according to the invention is adaptive as a function of the parameter P and the attenuation values.
- the filtering is either applied with coefficients [0.25, 0.5, 0.25], or deactivated with coefficients [0, 1, 0].
- the filter coefficients are then adapted in a discrete manner limited to a predefined set of values.
- the adaptation of the filter coefficients (making it possible to adapt the attenuation level of the high frequencies) is thus determined by decision parameters which measure the force of the attack, such as the parameters P and g ( k -1).
- a progressive transition between these two filters can be carried out using also for example the intermediate filters of coefficient [0.05, 0.9, 0.05], [0.1, 0.8, 0.1], [0.15, 0.7, 0.15] and [0.2, 0.6, 0.2 ].
- decision parameters can also be used in the decision of the choice and the adaptation of the filter, such as for example the zero crossing rate of the decoded signal of the pre-echo zone. the current frame and / or the previous frame.
- sgn x rec boy Wut not - 1 - sgn x rec , boy Wut not
- or sgn x ⁇ 1 i f x ⁇ 0 - 1 i f x ⁇ 0
- a high rate of zero crossing zc in the previous frame signals the presence of high frequencies in the signal.
- zc > L / 2 on the previous frame it is better not to apply filtering vs not z - 1 + 1 - 2 vs not + vs not z .
- a pre-filtering of the decoded signal is also possible before calculating the zero crossing rate, or the number of zero crossings of the estimated derivative x rec , g ( n ) -x rec , g ( n -1) can be used.
- a spectral analysis of the signal can also be made to assist the decision.
- the spectral envelope in the MDCT domain resulting from the MDCT coding / decoding can be exploited in the choice of the filter to be used, however this variant assumes that the analysis / synthesis windows MDCT are sufficiently short for the local statistics of the MDCT to be used. signal before the attack remain stable over the length of a window.
- one may filter the signal in the pre-echo region and the frame passed by an additional high pass filter as - c (n) z -1 + (1-2 c (n)) - c (n) z , with for example c ( n ) 0.25, and then we will choose the value of c ( n ) so that the average energy of the filtered signals in the pre-echo zone and on the past frame are as close as possible ; the choice of c ( n ) can be made on a limited set of possible values shown in figure 7 or from the ratio of energy (or an equivalent quantity such as the square root of the energy) of the signal after high-pass filtering in the pre-echo zone and in the past frame.
- the value of c ( n ) can be fixed according to the prediction coefficient r (1) / r (0) from a linear prediction analysis (LPC) for the order 1 of the signal in the pre-echo zone and the signal in the past frame.
- LPC linear prediction analysis
- the decision parameter on the filtering to be applied to the pre-echo zone is based on a spectral distribution analysis of the signal the pre-echo zone and / or the preceding signal of the pre-echo zone; if the signal preceding the pre-echo zone already contains many high frequencies or if the amount of the high frequencies of the signal in the pre-echo zone and the signal preceding the pre-echo zone is substantially identical, the filtering according to the invention is not necessary and may even cause slight degradation. In these cases, the filtering according to the invention must be deactivated or attenuated by setting c (n) to 0 or to a low value close to 0.
- the order between the attenuation and filtering step may be reversed.
- the spectral shaping filtering (F) is done before the attenuation (Att.).
- the attenuation of the amplitudes can also be combined (or integrated) by defining a set of "conjoint" filter coefficients, for example if for the sample n the filter has coefficients [c ( n ), 1-2 c ( n ), c ( n )] and the attenuation factor is g ( n ), we can directly use the filter [ g pre ( n ) c ( n ), g pre ( n ) 2g pre ( n ) c ( n) ), g pre ( n ) c ( n )].
- the figure 11 illustrates the benefit of making adaptive filtering. It uses the same signals parts a), b) and c) that the figure 10 and illustrates the fact that the implementation of the nonadaptive filtering shown in part d), unnecessarily modifies the signal in the case where the high-frequency components are already present in the signal to be encoded. It is observed that from sample 640 the high frequencies are unnecessarily attenuated, which could lead to a slight deterioration in quality.
- the use of an adaptive filtering as described above makes it possible to inhibit or attenuate the filtering under these conditions, to not remove high frequencies already present in the signal to be coded and thus to avoid possible degradation due to the filtering.
- the attenuation processing device 600 as described is here included in a decoder comprising a reverse quantization module 610 (Q -1 ) receiving a signal S, a reverse transformation module 620 (MDCT -1 ), a module 630 signal reconstruction by addition / recovery (add / rec) as described with reference to the figure 1 and delivering a reconstructed signal to the attenuation processing device according to the invention.
- a decoder comprising a reverse quantization module 610 (Q -1 ) receiving a signal S, a reverse transformation module 620 (MDCT -1 ), a module 630 signal reconstruction by addition / recovery (add / rec) as described with reference to the figure 1 and delivering a reconstructed signal to the attenuation processing device according to the invention.
- a processed signal Sa is provided in which a pre-echo attenuation has been performed.
- the processing performed improved the pre-echo attenuation by attenuating, if necessary, the high frequency components in the pre-echo area.
- the memory block BM may comprise a computer program comprising the code instructions for implementing the steps of the method according to the invention when these instructions are executed by a ⁇ P processor of the device and in particular a step of detecting a position of etching in the decoded signal, of determining a pre-echo zone preceding the detected attack position in the decoded signal, of calculating sub-block attenuation factors of the pre-echo zone, as a function of the frame in which the attack was detected and the previous frame, pre-echo attenuation in the sub-blocks of the pre-echo area by the corresponding attenuation factors and further, a a step of applying a spectral shaping filtering of the pre-echo zone on the current frame to the detected position of the attack, the filtering having a finite impulse response to a zero transfer function phase: vs not z - 1 + 1 - 2 vs not + vs not z with c (n) a coefficient between 0 and 0.25.
- This attenuation device can be independent or integrated into a digital signal decoder.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Quality & Reliability (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Description
L'invention concerne un procédé et un dispositif de traitement d'atténuation des pré-échos lors du décodage d'un signal audionumérique.The invention relates to a pre-echo attenuation processing method and device for decoding a digital audio signal.
Pour le transport des signaux audionumériques sur les réseaux de transmission, qu'il s'agisse par exemple de réseaux fixes ou mobiles, ou pour le stockage des signaux, on fait appel à des processus de compression (ou codage source) mettant en oeuvre des systèmes de codage du type codage temporel ou codage fréquentiel par transformée.For the transport of digital audio signals on the transmission networks, whether for example fixed or mobile networks, or for the storage of signals, compression processes (or source coding) using coding systems of the time coding type or frequency coding by transform.
Le procédé et le dispositif, objets de l'invention, ont ainsi comme domaine d'application la compression des signaux sonores, en particulier les signaux audionumériques codés par transformée fréquentielle.The method and the device, which are the subject of the invention, thus have as their field of application the compression of sound signals, in particular frequency-coded digital audio signals.
La
Certaines séquences musicales, telles que les percussions et certains segments de parole comme les plosives (/k/, /t/, ...), sont caractérisées par des attaques extrêmement brusques qui se traduisent par des transitions très rapides et une variation très forte de la dynamique du signal en l'espace de quelques échantillons. Un exemple de transition est donné à la
Pour le traitement de codage/décodage, le signal d'entrée est découpé en blocs d'échantillons de longueur L, représentés sur la
La division en blocs, aussi appelés trames, opérée par le codage par transformée est totalement indépendante du signal sonore et les transitions peuvent donc apparaître en un point quelconque de la fenêtre d'analyse. Or après décodage par transformée, le signal reconstruit est entaché de "bruit" (ou distorsion) engendré par l'opération quantification (Q)-quantification inverse (Q-1). Ce bruit de codage est réparti temporellement de façon relativement uniforme sur tout le support temporel du bloc transformé, c'est-à-dire sur toute la longueur de la fenêtre de longueur 2L d'échantillons (avec recouvrement de L échantillons). L'énergie du bruit de codage est en général proportionnelle à l'énergie du bloc et est fonction du débit de codage/décodage.The division in blocks, also called frames, operated by the transform coding is totally independent of the sound signal and the transitions can therefore appear at any point in the analysis window. But after transform decoding, the reconstructed signal is tainted by "noise" (or distortion) generated by the quantization (Q) -quantization inverse (Q -1 ) operation. This coding noise is temporally distributed relatively uniformly over the entire temporal support of the transformed block, that is to say on any the length of the window of length 2L of samples (with overlap of L samples). The energy of the coding noise is generally proportional to the energy of the block and is a function of the coding / decoding rate.
Pour un bloc comportant une attaque (comme le bloc 320-480 de la
En codage par transformée, le niveau du bruit de codage est typiquement inférieur à celui du signal pour les segments de forte énergie qui suivent immédiatement la transition, mais le niveau est supérieur à celui du signal pour les segments d'énergie plus faible, notamment sur la partie précédant la transition (échantillons 160 - 410 de la
On peut observer sur la
Les expériences psycho-acoustiques ont montré que l'oreille humaine effectue un pré-masquage temporel des sons assez limité, de l'ordre de quelques millisecondes. Le bruit précédant l'attaque, ou pré-écho, est audible lorsque la durée du pré-écho est supérieure à la durée du pré-masquage.Psychoacoustic experiments have shown that the human ear performs a rather limited temporal pre-masking of sounds, of the order of a few milliseconds. The noise preceding the attack, or pre-echo, is audible when the duration of the pre-echo is greater than the duration of the pre-masking.
L'oreille humaine effectue également un post-masquage d'une durée plus longue, de 5 à 60 millisecondes, lors du passage de séquences de forte énergie à des séquences de faible énergie. Le taux ou niveau de gêne acceptable pour les post-échos est donc plus important que pour les pré-échos.The human ear also performs a post-masking of a longer duration, from 5 to 60 milliseconds, during the passage of high energy sequences to low energy sequences. The rate or level of inconvenience acceptable for post-echoes is therefore greater than for pre-echoes.
Le phénomène des pré-échos, plus critique, est d'autant plus gênant que la longueur des blocs en nombre d'échantillons est importante. Or, en codage par transformée, il est bien connu que pour les signaux stationnaires plus la longueur de la transformée augmente, plus le gain de codage est important. A fréquence d'échantillonnage fixée et à débit fixé, si on augmente le nombre de points de la fenêtre (donc la longueur de la transformée) on disposera de plus de bits par trame pour coder les raies fréquentielles jugées utiles par le modèle psychoacoustique, d'où l'avantage d'utiliser des blocs de grande longueur. Le codage MPEG AAC (Advanced Audio Coding), par exemple, utilise une fenêtre de grande longueur qui contient un nombre fixe d'échantillons, 2048, soit sur une durée de 64 ms à une fréquence d'échantillonnage de 32 kHz; le problème des pré-échos y est géré en permettant de commuter de ces fenêtres longues à 8 fenêtres courtes par le biais de fenêtres intermédiaires (de transition), ce qui nécessite un certain retard au codage pour détecter la présence d'une transition et adapter les fenêtres. La longueur de ces fenêtres courtes est donc de 8 ms. A bas débit on peut toujours avoir un pré-écho audible de quelques ms. La commutation des fenêtres permet d'atténuer le pré-écho mais pas de le supprimer. Les codeurs par transformée utilisés pour les applications conversationnelles comme UIT-T G.722.1, G.722.1C ou G.719 utilisent souvent une fenêtre de durée 40 ms à 16, 32 ou 48 kHz (respectivement) et une longueur de trame de 20ms. On peut noter que le codeur UIT-T G.719 intègre un mécanisme de commutation de fenêtres avec détection de transitoire, cependant le pré-écho n'est pas complètement réduit à bas débit (typiquement à 32 kbit/s).The phenomenon of pre-echoes, more critical, is even more troublesome as the length of the blocks in number of samples is important. However, in transform coding, it is well known that for stationary signals plus the length of the transform increases, the higher the coding gain. At a fixed sampling rate and fixed rate, if we increase the number of points of the window (hence the length of the transform) we will have more bits per frame to code the frequency lines found useful by the psychoacoustic model, d where the advantage of using blocks of great length. MPEG AAC (Advanced Audio Coding) coding, for example, uses a long window that contains a fixed number of samples, 2048, over a period of 64 ms at a sample rate of 32 kHz; the problem of pre-echoes is managed by switching from these long windows to 8 short windows through intermediate windows (transition), which requires some delay in coding to detect the presence of a transition and adapt the windows. The length of these short windows is 8 ms. At low speed you can always have an audible pre-echo of a few ms. The switching of the windows makes it possible to attenuate the pre-echo but not to suppress it. Transform encoders used for conversational applications such as ITU-T G.722.1, G.722.1C or G.719 often use a window of 40 ms duration at 16, 32 or 48 kHz (respectively) and a frame length of 20 ms . It should be noted that the ITU-T G.719 encoder incorporates a window switch mechanism with transient detection, however the pre-echo is not completely reduced at low bit rate (typically at 32 kbit / s).
Dans le but de réduire l'effet gênant précité du phénomène des pré-échos, différentes solutions ont été proposées au niveau du codeur et/ou du décodeur.In order to reduce the aforementioned annoying effect of the pre-echo phenomenon, various solutions have been proposed at the encoder and / or the decoder.
La commutation de fenêtres a été citée précédemment. Une autre solution consiste à appliquer un filtrage adaptatif. Dans la zone précédant l'attaque, le signal reconstruit est vu comme la somme du signal original et du bruit de quantification.Window switching has been mentioned previously. Another solution is to apply adaptive filtering. In the area preceding the attack, the reconstructed signal is seen as the sum of the original signal and the quantization noise.
Une technique de filtrage correspondante a été décrite dans l'article intitulé
La mise en oeuvre d'un tel filtrage nécessite la connaissance de paramètres dont certains, comme les coefficients de prédiction et la variance du signal corrompu par le pré-écho, 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. Ceci nécessite de transmettre des informations supplémentaires, ce qui à débit contraint diminue le budget relatif alloué au codage par transformée. Lorsque le bloc reçu contient une variation brusque de dynamique, le traitement de filtrage lui est appliqué.The implementation of such a filtering requires the knowledge of parameters some of which, like the prediction coefficients and the variance of the signal corrupted by the pre-echo, are estimated at the decoder from the noisy samples. On the other hand, information such as the energy of the original signal can only be known to the encoder and must therefore be transmitted. This requires additional information to be transmitted, which constrains the relative budget allocated to the transform coding. When the received block contains a sudden variation of dynamics, the filtering treatment is applied to it.
Le processus de filtrage précité ne permet pas de retrouver le signal d'origine, mais procure une forte réduction des pré-échos. Il nécessite toutefois de transmettre les paramètres supplémentaires au décodeur.The aforementioned filtering process does not allow to find the original signal, but provides a strong reduction of pre-echoes. However, it requires transmitting the additional parameters to the decoder.
Différentes techniques de réduction de pré-écho sans transmission spécifique de l'information ont été proposées. Par exemple, une revue de la réduction de pré-échos dans le contexte du codage hiérarchique est présentée dans l'article
Un exemple typique de procédé d'atténuation de pré-échos est décrit dans la demande de brevet français
Le facteur d'atténuation par sous-bloc g(k) est calculé par exemple en fonction du rapport R(k) entre l'énergie du sous-bloc de plus forte énergie et l'énergie du k-ième sous-bloc en question :
Si la variation de l'énergie par rapport à l'énergie maximale est faible, aucune atténuation n'est alors nécessaire. Le facteur g(k) est alors fixé à une valeur d'atténuation inhibant l'atténuation, c'est-à-dire 1. Sinon, le facteur d'atténuation est compris entre 0 et 1.If the variation of the energy with respect to the maximum energy is small, then no attenuation is necessary. The factor g ( k ) is then set to an attenuation-inhibiting attenuation value, i.e. 1. Otherwise, the attenuation factor is between 0 and 1.
Dans la plupart des cas, surtout quand le pré-écho est gênant, la trame qui précède la trame de pré-écho a une énergie homogène qui correspond à l'énergie d'un segment de faible énergie (typiquement un bruit de fond). Selon l'expérience il n'est pas utile ni même souhaitable qu'après le traitement d'atténuation de pré-écho l'énergie du signal devienne inférieure à l'énergie moyenne par sous-bloc du signal précédant la zone de traitement (typiquement celle de la trame précédente
Pour le sous-bloc k à traiter on peut calculer la valeur limite du facteur lim g (k) afin d'obtenir exactement la même énergie que l'énergie moyenne par sous-bloc du segment précédant le sous-bloc à traiter. Cette valeur est bien sûr limitée à un maximum de 1 puisqu'on s'intéresse ici aux valeurs d'atténuation. Plus précisément :
La valeur lim g (k) ainsi obtenue sert de limite inférieure dans le calcul final du facteur d'atténuation du sous-bloc :
Les facteurs d'atténuation (ou gains) g(k) déterminés par sous-blocs sont ensuite lissés par une fonction de lissage appliquée échantillon par échantillon pour éviter des variations brusques du facteur d'atténuation aux frontières des blocs.The attenuation factors (or gains) g ( k ) determined by sub-blocks are then smoothed by an applied smoothing function sample by sample to avoid abrupt changes in the attenuation factor at the block boundaries.
Par exemple, on peut d'abord définir le gain par échantillon comme une fonction constante par morceaux :
La fonction est ensuite lissée suivant l'équation suivante:
The function is then smoothed according to the following equation:
D'autres fonctions de lissage sont également possibles. Une fois les facteurs gpre (n) ainsi calculés, l'atténuation de pré-écho est faite sur le signal reconstruit de la trame courante, xrec (n), en multipliant chaque échantillon par le facteur correspondant :
Les
Dans ces exemples le signal est échantillonné à 32 kHz, la longueur de la trame est L=640 échantillons et chaque trame est divisée en 8 sous-blocs de K=80 échantillons.In these examples the signal is sampled at 32 kHz, the length of the frame is L = 640 samples and each frame is divided into 8 sub-blocks of K = 80 samples.
Dans la partie a) de la
Dans la partie b) de la
La partie c) montre l'évolution du facteur d'atténuation de pré-écho (ligne continue) obtenu par le procédé décrit dans la demande de brevet de l'état de l'art précitée. La ligne pointillée représente le facteur avant lissage. On remarque ici que la position de l'attaque est estimée autour de l'échantillon 380 (dans le bloc délimité par les échantillons 320 et 400).Part c) shows the evolution of the pre-echo attenuation factor (solid line) obtained by the method described in the aforementioned prior art patent application. The dashed line represents the factor before smoothing. Note here that the position of the attack is estimated around the sample 380 (in the block delimited by the
La partie d) illustre le résultat du décodage après application du traitement de pré-écho (multiplication du signal b) avec le signal c)). On voit que le pré-écho a bien été atténué. La
Dans cet exemple on a affecté la valeur de facteur 1 aux 16 derniers échantillons du sous-bloc précédant l'attaque, à partir de l'indice 364. Ainsi la fonction de lissage accroît progressivement le facteur pour avoir une valeur proche de 1 au moment de l'attaque. L'amplitude de l'attaque est alors préservée, comme illustré dans la partie d) de la
Dans l'exemple de la
Un autre exemple avec le même réglage que celui de la
Cette composante haute fréquence est bien audible et gênante, et l'attaque est moins nette (partie d)
L'explication de ce phénomène est la suivante : dans le cas d'une attaque très brusque, impulsive (comme illustrée sur la
Ce phénomène est à nouveau représenté sur les
On remarque bien un pré-écho encore audible dans la partie encadrée à la
Il existe donc un besoin d'une technique d'atténuation améliorée de pré-échos au décodage, qui permet d'atténuer également les hautes fréquences indésirables ou pré-échos parasites et sans qu'aucune information auxiliaire ne soit transmise par le codeur.There is therefore a need for an improved pre-echo decoding mitigation technique, which also attenuates unwanted high frequencies or spurious pre-echoes and without any auxiliary information being transmitted by the encoder.
La présente invention améliore la situation de l'état de l'art.The present invention improves the state of the art.
A cet effet, la présente invention traite d'un procédé de traitement d'atténuation de pré-écho dans un signal audionumérique engendré à partir d'un codage par transformée, dans lequel, au décodage, le procédé comporte les étapes suivantes:
- détection d'une position d'attaque dans le signal décodé;
- détermination d'une zone de pré-écho précédant la position d'attaque détectée dans le signal décodé;
- calcul de facteurs d'atténuations par sous-bloc de la zone de pré-écho, en fonction au moins de la trame dans laquelle l'attaque a été détectée et de la trame précédente;
- atténuation de pré-écho dans les sous-blocs de la zone de pré-écho par les facteurs d'atténuation correspondants. Le procédé est tel qu'il comporte en outre:
- l'application d'un filtrage adaptatif de mise en forme spectrale de la zone de pré-écho sur la trame courante jusqu'à la position détectée de l'attaque le filtrage étant à réponse impulsionnelle finie à phase nulle de fonction de transfert:
entre 0 et 0.25. Ce type de filtrage est de faible complexité et permet de plus un traitement sans retard (le traitement s'arrêtant avant la fin de la trame courante). Grâce à son retard nul, le filtrage peut atténuer les hautes fréquences avant l'attaque sans modifier l'attaque elle-même. Ce type de filtrage permet d'éviter les discontinuités et permet de passer d'un signal non-filtré à un signal filtré de façon progressive.
- detecting a driving position in the decoded signal;
- determining a pre-echo area preceding the detected driving position in the decoded signal;
- calculating sub-block attenuation factors of the pre-echo area, based at least on the frame in which the attack was detected and the previous frame;
- pre-echo attenuation in the sub-blocks of the pre-echo area by the corresponding attenuation factors. The method is such that it further comprises:
- applying adaptive spectral shaping filtering of the pre-echo area on the current frame to the detected position of the filtering attack being a finite impulse response to a zero transfer function phase:
Ainsi, la mise en forme spectrale appliquée, permet d'améliorer l'atténuation de pré-écho. Le traitement permet d'atténuer les composantes de pré-écho qui pourraient subsister à la mise en oeuvre de l'atténuation de pré-écho telle que décrite dans l'état de l'art.Thus, the spectral shaping applied, improves the pre-echo attenuation. The treatment makes it possible to attenuate the pre-echo components that could remain during the implementation of the pre-echo attenuation as described in the state of the art.
Le filtrage étant appliqué jusqu'à la position détectée de l'attaque, il permet de traiter l'atténuation du pré-écho jusqu'au plus près de l'attaque. Cela compense donc le désavantage de la réduction d'écho par atténuation temporelle qui est limitée à une zone n'allant pas jusqu'à la position de l'attaque (marge de 16 échantillons par exemple).The filtering being applied to the detected position of the attack, it makes it possible to process the attenuation of the pre-echo up to the nearest attack. This therefore offsets the disadvantage of temporal attenuation echo control which is limited to a zone not going to the attack position (margin of 16 samples for example).
Ce filtrage ne nécessite pas d'informations en provenance du codeur.This filtering does not require information from the encoder.
Cette technique de traitement d'atténuation de pré-écho peut être mise en oeuvre avec ou sans connaissance d'un signal issu d'un décodage temporel et pour le codage d'un signal monophonique ou d'un signal stéréophonique.This pre-echo attenuation processing technique can be implemented with or without knowledge of a signal derived from a time decoding and for coding a monophonic signal or a stereophonic signal.
L'adaptation du filtrage permet de s'adapter au signal et de n'enlever que les composantes parasites gênantes.The adaptation of the filtering makes it possible to adapt to the signal and to remove only the disturbing parasitic components.
Les différents modes particuliers de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé défini ci-dessus.The various particular embodiments mentioned below may be added independently or in combination with each other, to the steps of the method defined above.
Dans un mode de réalisation particulier, le procédé comporte en outre le calcul d'au moins un paramètre de décision sur le filtrage à appliquer à la zone de pré-écho et l'adaptation des coefficients du filtrage en fonction dudit au moins un paramètre de décision.In a particular embodiment, the method further comprises calculating at least one decision parameter on the filtering to be applied to the pre-echo zone and the adaptation of the filtering coefficients according to said at least one parameter of decision.
Ainsi, le traitement n'est alors appliqué que quand cela est nécessaire à un niveau de filtrage adapté.Thus, the treatment is then applied only when necessary to a suitable level of filtering.
Dans un mode de réalisation, ledit au moins un paramètre de décision est une mesure de la force de l'attaque détectée.In one embodiment, the at least one decision parameter is a measure of the strength of the detected attack.
La force de l'attaque détermine en effet la présence de composantes hautes fréquences audibles dans la zone de pré-écho. Lorsque l'attaque est brusque, le risque d'avoir une composante parasite gênante dans la zone de pré-écho est grand et le filtrage à mettre en oeuvre selon l'invention est alors à prévoir.The force of the attack determines the presence of audible high-frequency components in the pre-echo zone. When the attack is abrupt, the risk of having an annoying parasitic component in the pre-echo zone is large and the filtering to be carried out according to the invention is then to be expected.
Dans un mode de calcul possible de ce paramètre, la mesure de la force de l'attaque détectée est de la forme:
P=max (EN(k), EN (k+1)/min(EN(k-1),EN(k-2)) avec k, le numéro du sous-bloc dans lequel l'attaque a été détectée et EN(k) l'énergie du kième sous-bloc.In a possible calculation mode of this parameter, the measurement of the force of the detected attack is of the form:
P = max (EN (k), EN (k + 1) / min (EN (k-1), EN (k-2)) with k, the number of the sub-block in which the attack was detected and EN (k) the energy of the k th sub-block.
Ce calcul est de moindre complexité et permet de bien définir la force de l'attaque détectée.This calculation is of less complexity and makes it possible to define well the strength of the detected attack.
Le dit au moins un paramètre de décision peut aussi être la valeur du facteur d'atténuation dans le sous-bloc précédant celui contenant la position de l'attaque.The said at least one decision parameter may also be the value of the attenuation factor in the sub-block preceding that containing the position of the attack.
En effet, une attaque peut être considérée comme brusque si cette atténuation est significative.Indeed, an attack can be considered abrupt if this attenuation is significant.
Dans un autre mode de réalisation, ledit au moins un paramètre de décision est basé sur une analyse de répartition spectrale du signal de la zone de pré-écho et/ou du signal précédant la zone de pré-écho.In another embodiment, said at least one decision parameter is based on a spectral distribution analysis of the signal of the pre-echo zone and / or of the signal preceding the pre-echo zone.
Ceci permet par exemple de déterminer l'importance des composantes hautes fréquences dans le signal de pré-écho et de savoir également si ces composantes hautes fréquences étaient déjà présentes dans le signal avant la zone de pré-écho.This makes it possible, for example, to determine the importance of the high frequency components in the pre-echo signal and also to know if these high frequency components were already present in the signal before the pre-echo zone.
Ainsi, dans le cas où des composantes hautes fréquences étaient déjà présentes avant la zone de pré-écho, il n'est alors pas nécessaire d'effectuer un filtrage pour atténuer ces composantes hautes fréquences, l'adaptation des coefficients de filtrage s'effectue alors par la mise à 0 ou à une valeur proche de 0 des coefficients de filtrage.Thus, in the case where high-frequency components were already present before the pre-echo zone, it is then not necessary to perform a filtering to attenuate these high-frequency components, the adaptation of the filtering coefficients is carried out then by setting 0 or a value close to 0 of the filter coefficients.
Ainsi, l'adaptation des coefficients du filtrage peut s'effectuer de façon discrète en fonction de la comparaison d'au moins un paramètre de décision à un seuil prédéterminé.Thus, the adaptation of the filtering coefficients can be done in a discrete manner as a function of the comparison of at least one decision parameter with a predetermined threshold.
Les coefficients de filtrage peuvent prendre des valeurs prédéterminées selon un jeu de valeurs. Le jeu de valeurs le plus petit étant celui où seulement deux valeurs sont possibles, c'est un dire par exemple le choix entre un filtrage et pas de filtrage.The filter coefficients can take predetermined values according to a set of values. The smallest set of values being one where only two values are possible, it is a saying for example the choice between a filtering and no filtering.
Dans une variante de réalisation, l'adaptation des coefficients du filtrage s'effectue de façon continue en fonction dudit au moins un paramètre de décision.In an alternative embodiment, the adaptation of the filtering coefficients is carried out continuously according to said at least one decision parameter.
L'adaptation est alors plus précise et plus progressive.The adaptation is then more precise and more progressive.
Selon un mode de réalisation, l'étape d'atténuation est effectuée en même temps que le filtrage de mise en forme spectrale en intégrant les facteurs d'atténuation aux coefficients définissant le filtrage.According to one embodiment, the attenuation step is performed at the same time as the spectral shaping filtering by integrating the attenuation factors with the coefficients defining the filtering.
La présente invention vise également un dispositif de traitement d'atténuation de pré-échos dans un signal audionumérique engendré à partir d'un codeur par transformée, dans lequel, le dispositif associé à un décodeur comprend:
- un module de détection pour détecter une position d'attaque dans le signal décodé;
- un module de détermination pour déterminer une zone de pré-écho précédant la position d'attaque détectée dans le signal décodé;
- un module de calcul de facteurs d'atténuations par sous-bloc de la zone de pré-écho, en fonction au moins de la trame dans laquelle l'attaque a été détectée et de la trame précédente;
- un module d'atténuation pour atténuer les pré-échos dans les sous-blocs de la zone de pré-écho par les facteurs d'atténuation correspondants. Le dispositif est tel qu'il comprend en outre:
- un module de filtrage adaptatif pour effectuer une mise en forme spectrale de la zone de pré-écho sur la trame courante jusqu'à la position détectée de l'attaque, le filtrage étant à réponse impulsionnelle finie à phase nulle de fonction de transfert:
entre 0 et 0.25.
- a detection module for detecting a driving position in the decoded signal;
- a determination module for determining a pre-echo area preceding the detected driving position in the decoded signal;
- a module for calculating sub-block attenuation factors of the pre-echo area, as a function of at least the frame in which the attack has been detected and the previous frame;
- an attenuation module for attenuating the pre-echoes in the sub-blocks of the pre-echo area by the corresponding attenuation factors. The device is such that it further comprises:
- an adaptive filtering module for effecting spectral shaping of the pre-echo area on the current frame to the detected position of the attack, the filter being a zero-phase finite impulse response transfer function:
L'invention vise un décodeur d'un signal audionumérique comportant un dispositif tel que décrit précédemment.The invention relates to a decoder of a digital audio signal comprising a device as described above.
Enfin, l'invention vise un programme informatique comportant des instructions de code pour la mise en oeuvre des étapes du procédé de traitement d'atténuation tel que décrit, lorsque ces instructions sont exécutées par un processeur.Finally, the invention is directed to a computer program comprising code instructions for implementing the steps of the attenuation processing method as described, when these instructions are executed by a processor.
Enfin l'invention se rapporte à un support de stockage, lisible par un processeur, intégré ou non au dispositif de traitement, éventuellement amovible, mémorisant un programme informatique mettant en oeuvre un procédé de traitement tel que décrit précédemment.Finally, the invention relates to a storage medium, readable by a processor, integrated or not to the processing device, optionally removable, storing a computer program implementing a method of treatment as described above.
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels:
- la
figure 1 décrite précédemment illustre un système de codage-décodage par transformée selon l'état de l'art; - la
figure 2 décrite précédemment illustre un exemple de signal audionumérique pour lequel une méthode d'atténuation selon l'état de l'art est effectuée; - la
figure 3 décrite précédemment illustre un autre exemple de signal audionumérique pour lequel une méthode d'atténuation selon l'état de l'art est effectuée; - la
figure 4 décrite précédemment illustre encore un autre un exemple de signal audionumérique pour lequel une méthode d'atténuation selon l'état de l'art est effectuée; - les
figures 5a et 5b illustrent respectivement le spectrogramme du signal original et le spectrogramme du signal avec atténuation de pré-échos selon l'état de l'art (correspondant respectivement aux parties a) et d) de lafigure 4 ); - la
figure 6 illustre un dispositif de traitement d'atténuation de pré-échos dans un décodeur de signal audionumérique, ainsi que les étapes mises en oeuvre par le procédé de traitement selon un mode de réalisation de l'invention; - la
figure 7 illustre la réponse fréquentielle d'un filtre de mise en forme spectrale mis en oeuvre selon un mode de réalisation de l'invention, en fonction du paramètre du filtre; - la
figure 8 illustre un exemple de signal audionumérique pour lequel le traitement selon l'invention a été mis en oeuvre; - la
figure 9 illustre le spectrogramme du signal correspondant au signal d) de lafigure 4 , pour lequel le traitement selon l'invention est mis en oeuvre; - la
figure 10 illustre un exemple de signal présentant des composantes hautes fréquences à l'origine pour lequel une méthode d'atténuation des pré-échos selon l'état de l'art est mise en oeuvre; - La
figure 11 illustre le même signal que lafigure 11 , présentant des composantes hautes fréquences à l'origine pour lequel le traitement selon l'invention a été mis en oeuvre sans la prise en compte d'un critère de décision du niveau de filtrage à appliquer; - la
figure 12 illustre un exemple matériel de dispositif de traitement d'atténuation selon l'invention.
- the
figure 1 previously described illustrates a state-of-the-art transform coding-decoding system; - the
figure 2 described above illustrates an example of a digital audio signal for which a mitigation method according to the state of the art is performed; - the
figure 3 described above illustrates another example of a digital audio signal for which a mitigation method according to the state of the art is performed; - the
figure 4 described above illustrates yet another example of a digital audio signal for which a mitigation method according to the state of the art is performed; - the
Figures 5a and 5b respectively illustrate the spectrogram of the original signal and the spectrogram of the signal with attenuation of pre-echoes according to the state of the art (corresponding to parts a) and d) respectively of thefigure 4 ); - the
figure 6 illustrates a pre-echo attenuation processing device in a digital audio signal decoder, as well as the steps implemented by the processing method according to an embodiment of the invention; - the
figure 7 illustrates the frequency response of a spectral shaping filter implemented according to one embodiment of the invention, as a function of the parameter of the filter; - the
figure 8 illustrates an exemplary digital audio signal for which the treatment according to the invention has been implemented; - the
figure 9 illustrates the spectrogram of the signal corresponding to the signal d) of thefigure 4 for which the treatment according to the invention is carried out; - the
figure 10 illustrates an example of a signal having initially high frequency components for which a pre-echo mitigation method according to the state of the art is implemented; - The
figure 11 illustrates the same signal as thefigure 11 , having high frequency components at the origin for which the treatment according to the invention has been implemented without taking into account a decision criterion of the level of filtering to be applied; - the
figure 12 illustrates a hardware example of attenuation processing device according to the invention.
En référence à la
Ainsi, le dispositif 600 comporte un module de détection 601 apte à mettre en oeuvre une étape de détection (Detect.) de la position d'une attaque dans un signal audio décodé.Thus, the
Une attaque (ou onset en anglais) est une transition rapide et une variation brusque de la dynamique (ou amplitude) du signal. On peut désigner ce type de signaux par le terme plus général de "transitoire". Dans la suite et sans perte de généralité, on utilisera uniquement les termes d'attaque ou de transition pour désigner également des transitoires.An onset (or onset ) is a rapid transition and a sudden change in the dynamics (or amplitude) of the signal. This type of signal may be referred to by the more general term "transient". In the following and without loss of generality, we will use only the terms of attack or transition to designate also transients.
Dans un mode de réalisation, chaque trame de L échantillons du signal décodé xrec (n) est divisée en K sous-blocs de longueur L', avec par exemple L = 640 échantillons (20 ms) à 32 kHz, L' = 80 échantillons (2.5 ms) et K = 8.In one embodiment, each frame of L samples of the decoded signal x rec ( n ) is divided into K sub-blocks of length L ', with for example L = 640 samples (20 ms) at 32 kHz, L' = 80 samples (2.5 ms) and K = 8.
Des fenêtres d'analyse-synthèse spéciales à bas retard similaires à celles décrites dans la norme UIT-T G.718 sont utilisées pour la partie analyse et pour la partie synthèse de la transformation MDCT. Ainsi la fenêtre de synthèse MDCT ne contient que 415 échantillons non nuls contrairement aux 640 échantillons dans le cas d'utilisation des fenêtres sinusoïdales classiques. Dans une variante de ce mode de réalisation, d'autres fenêtres d'analyse/synthèse peuvent être utilisées, ou des commutations entre fenêtres longues et courtes peuvent être utilisées.Special low-delay analysis-synthesis windows similar to those described in ITU-T G.718 are used for the analysis part and for the synthesis part of the MDCT transformation. Thus, the synthesis window MDCT contains only 415 non-zero samples, unlike the 640 samples in the case of using conventional sinusoidal windows. In a variation of this embodiment, other analysis / synthesis windows may be used, or switches between long and short windows may be used.
Par ailleurs, on utilise la mémoire MDCT xMDCT (n) qui donne une version avec repliement temporel ("folding" en anglais) du signal futur. Cette mémoire est aussi divisée en sous-blocs de longueur L' et on ne retient - en fonction de la fenêtre MDCT utilisée - que les K' premiers sous-blocs, où K' dépend de la fenêtre utilisée - par exemple K' = 4 pour une fenêtre sinusoïdale. En effet, la
La réduction de pré-échos dépend ici de plusieurs paramètres:
- ∘ Le signal décodé dans la trame courante (qui contient potentiellement des pré-échos) de longueur L,
- ∘ La mémoire de la transformation inverse MDCT qui correspond au signal partiellement décodé dans la trame suivante avant addition-recouvrement.
- ∘ Le niveau moyen d'énergie dans la trame (ou demi-trame) précédente.
- ∘ The decoded signal in the current frame (which potentially contains pre-echoes) of length L,
- ∘ The memory of the inverse transform MDCT which corresponds to the partially decoded signal in the following frame before addition-overlap.
- ∘ The average energy level in the previous frame (or half-frame).
On peut noter que le signal contenu dans la mémoire MDCT inclut un repliement temporel (qui est compensé lorsque la trame suivante est reçue). Comme expliqué ci-dessous, la mémoire MDCT sert ici essentiellement à estimer l'énergie par sous-blocs du signal dans la trame suivante (future) et on considère que cette estimation est suffisamment précise pour les besoins de la détection et réduction de pré-écho lorsqu'elle est réalisée avec la mémoire MDCT disponible à la trame courante au lieu du signal complètement décodé à la trame future.It can be noted that the signal contained in the MDCT memory includes time folding (which is compensated when the next frame is received). As explained below, the MDCT memory here serves essentially to estimate the energy by sub-blocks of the signal in the next (future) frame, and it is considered that this estimate is sufficiently precise for the purposes of the detection and reduction of pre- echo when performed with the available MDCT memory at the current frame instead of the fully decoded signal at the future frame.
La trame courante et la mémoire MDCT peuvent être vues comme des signaux concaténés formant un signal de longueur (K + K')L' découpé en (K+K') sous-blocs consécutifs. Dans ces conditions, on définit l'énergie dans le k-ième sous-bloc comme :
L'énergie moyenne des sous-blocs dans la trame courante s'obtient donc comme :
The average energy of the sub-blocks in the current frame is thus obtained as:
Une transition associée à un pré-écho est détectée si le rapport
Par ailleurs, on considère que la position de l'attaque est définie comme
Moreover, we consider that the position of the attack is defined as
Dans des variantes de réalisation avec commutation des fenêtres, d'autres méthodes donnant la position de l'attaque peuvent être utilisées avec une précision allant de l'échelle d'un sous-bloc jusqu'à une position à l'échantillon près.In alternative embodiments with window switching, other methods giving the position of the attack can be used with a precision ranging from the scale of a sub-block to a position with the sample.
Le dispositif 600 comporte également un module 602 de détermination mettant en oeuvre une l'étape de détermination (ZPE) d'une zone de pré-écho précédant la position d'attaque détectée.The
Les énergies En(k) sont concaténées en ordre chronologique, avec d'abord l'enveloppe temporelle du signal décodé, puis l'enveloppe du signal de la trame suivante estimée à partir de la mémoire de la transformée MDCT. En fonction de cette enveloppe temporelle concaténée et des énergies moyennes
Les sous-blocs dans lequel un pré-écho a été détecté constituent ainsi une zone de pré-écho, qui en général couvre les échantillons n = 0,..., pos-1, soit du début de la trame courante à la position de l'attaque (pos).The sub-blocks in which a pre-echo has been detected thus constitute a pre-echo zone, which in general covers the samples n = 0, ..., pos -1, ie from the beginning of the current frame to the position of the attack ( pos ).
Dans des variantes de réalisation, la zone de pré-écho ne commence pas nécessairement au début de la trame, et peut faire intervenir une estimation de la longueur du pré-écho. Si une commutation de fenêtres est utilisée, la zone de pré-écho devra être définie pour prendre en compte les fenêtres utilisées.In alternative embodiments, the pre-echo zone does not necessarily start at the beginning of the frame, and may involve an estimate of the length of the pre-echo. If window switching is used, the pre-echo zone must be defined to take into account the windows used.
Un module 603 du dispositif 600 met en oeuvre une étape de calcul de facteurs d'atténuation par sous-blocs de la zone de pré-écho déterminée, en fonction de la trame dans laquelle l'attaque a été détectée et de la trame précédente.A
Conformément à la description de la demande de brevet
Le facteur d'atténuation par sous-bloc g(k) est calculé par exemple, en fonction du rapport R(k) entre l'énergie du sous-bloc de plus forte énergie et l'énergie du k-ième sous-bloc en question :
Si la variation de l'énergie par rapport à l'énergie maximale est faible, aucune atténuation n'est alors nécessaire. Le facteur est alors fixé à une valeur d'atténuation inhibant l'atténuation, c'est-à-dire 1. Sinon, le facteur d'atténuation est compris entre 0 et 1.If the variation of the energy with respect to the maximum energy is small, then no attenuation is necessary. The factor is then set to an attenuation-inhibiting attenuation value, i.e. 1. Otherwise, the attenuation factor is between 0 and 1.
Ces atténuations sont limitées en fonction de l'énergie moyenne de la trame précédente.These attenuations are limited according to the average energy of the previous frame.
Pour le sous-bloc à traiter on peut calculer la valeur limite du facteur lim g (k) afin d'obtenir exactement la même énergie que l'énergie moyenne du segment précédant le sous-bloc à traiter. Cette valeur est bien sûr limitée à un maximum de 1 puisqu'on s'intéresse ici aux valeurs d'atténuation. Plus précisément :
La valeur lim g (k) ainsi obtenue sert de limite inférieure dans le calcul final du facteur d'atténuation du sous-bloc :
Les facteurs d'atténuation g(k) déterminés par sous-blocs sont ensuite lissés par une fonction de lissage appliquée échantillon par échantillon pour éviter des variations brusques du facteur d'atténuation aux frontières des blocs.The attenuation factors g ( k ) determined by sub-blocks are then smoothed by an applied smoothing function sample by sample to avoid abrupt changes in the attenuation factor at the boundaries of the blocks.
Le gain par échantillon est d'abord défini comme une fonction constante par morceaux :
D'autres fonctions de lissage sont possibles.Other smoothing functions are possible.
Le module 604 du dispositif 600 de la
Ainsi, une fois les facteurs gpre (n) calculés, l'atténuation de pré-écho est faite sur le signal reconstruit de la trame courante, xrec (n), en multipliant chaque échantillon par le facteur correspondant :
Le dispositif 600 comporte un module de filtrage 606 apte à effectuer l'étape (F) d'application d'un filtrage de mise en forme spectrale de la zone de pré-écho sur la trame courante du signal décodé, jusqu'à la position détectée de l'attaque.The
Typiquement, le filtre de mise en forme spectrale utilisé est un filtre linéaire. Comme l'opération de multiplication par un gain est également une opération linéaire leur ordre peut être inversé : on peut également faire d'abord le filtrage de mise en forme spectrale de la zone de pré-écho puis l'atténuation de pré-écho en multipliant chaque échantillon de la zone de pré-écho par le facteur correspondant.Typically, the spectral shaping filter used is a linear filter. Since the gain multiplication operation is also a linear operation, their order can be inverted: you can also do the formatting filtering first. Spectrum of the pre-echo area then the pre-echo attenuation by multiplying each sample of the pre-echo area by the corresponding factor.
Le filtre utilisé pour atténuer les hautes fréquences dans la zone de pré-écho est un filtre FIR (filtre à réponse impulsionnelle finie) à 3 coefficients et à phase nulle de fonction de transfert c(n)z -1+(1-2c(n))+c(n)z avec c(n) une valeur comprise entre 0 et 0.25, où [c(n),1-2c(n),c(n)] sont les coefficients du filtre de mise en forme spectrale ; ce filtre est mis en oeuvre avec l'équation aux différences :
La réponse fréquentielle de ce filtre est illustrée sur la
L'application de ce filtre peut compenser le fait que l'atténuation temporelle du pré-écho est typiquement limitée à une zone n'allant pas jusqu'à la position de l'attaque (avec une marge de par exemple 16 échantillons), alors que le filtrage de mise en forme spectrale tel que défini par la fonction de transfert c(n)z -1+(1-2c(n))+c(n)z peut être appliqué jusqu'à la position de l'attaque, avec éventuellement quelques échantillons d'interpolation des coefficients du filtre.The application of this filter can compensate for the fact that the temporal attenuation of the pre-echo is typically limited to a zone not going to the position of the attack (with a margin of, for example, 16 samples), then that the spectral shaping filtering as defined by the transfer function c ( n ) z -1 + (1 - 2c ( n )) + c ( n ) z can be applied up to the position of the attack , possibly with some interpolation samples of the filter coefficients.
Pour passer d'un signal non-filtré à un signal filtré et éviter des discontinuités il est préférable d'introduire le filtrage de façon progressive. Le filtre FIR proposé permet facilement de passer en douceur du domaine non-filtré vers le domaine filtré et vice-versa, par interpolation ou variation lente de ses coefficients. Par exemple, si la position de l'attaque est pos = 16, le filtrage des 16 échantillons dans la zone de pré-écho n = 0,.., pos -1 peut être effectué de la façon suivante :
On observe, que grâce à son retard nul, le filtre c(n)z -1+(1-2c(n))+c(n)z peut atténuer les hautes fréquences avant l'attaque sans modifier l'attaque elle-même.It can be observed that, thanks to its zero delay, the filter c ( n ) z -1 + (1-2c ( n )) + c ( n ) z can attenuate the high frequencies before the attack without modifying the attack itself. even.
Un exemple de signal audionumérique, pour lequel le traitement tel que décrit ici est effectué, est illustré en partie d) de la
Le spectrogramme représentant ce signal filtré est représenté en
Bien entendu, d'autres types de filtre de mise en forme spectrale peuvent être envisagés pour remplacer le filtre c(n)z -1+(1-2c(n))+c(n)z. Par exemple, il est possible d'utiliser un filtre FIR d'ordre différent ou avec des coefficients différents. Alternativement le filtre de mise en forme spectrale peut être à réponse impulsionnelle infinie (IIR). De plus, la mise en forme spectrale peut être différente d'un filtrage passe-bas, par exemple un filtre passe-bande pourrait être mis en oeuvre. Ces modes de réalisation ne font pas partie de l'invention qui est définie par les revendications.Of course, other types of spectral shaping filters may be envisaged to replace the filter c ( n ) z -1 + ( 1-2c ( n )) + c ( n ) z . For example, it is possible to use a FIR filter of different order or with different coefficients. Alternatively the spectral shaping filter can be infinite impulse response (IIR). In addition, the spectral shaping may be different from a low-pass filtering, for example a bandpass filter could be implemented. These embodiments are not part of the invention which is defined by the claims.
Un filtre d'ordre 1, de la forme c(n)z -1+(1-c(n)) peut également être utilisé dans un mode de réalisation qui ne fait pas partie de l'invention.An
Dans un mode de réalisation particulier, le filtrage mis en oeuvre selon le procédé décrit, est un filtrage adaptatif. Il peut ainsi être adapté aux caractéristiques du signal audio décodé.In a particular embodiment, the filtering implemented according to the described method is an adaptive filtering. It can thus be adapted to the characteristics of the decoded audio signal.
Dans ce mode de réalisation, une étape de calcul d'un paramètre (P) de décision sur le filtrage à appliquer à la zone de pré-écho est mise en oeuvre dans le module de calcul 605 de la
En effet, il existe des cas comme celui illustré par exemple à la
En effet, dans le cas, plus rare, illustré à la
Il est alors intéressant de déterminer au moins un paramètre qui permet de décider s'il faut mettre en forme spectralement la zone du signal contenant un pré-écho, en atténuant (ou non) les hautes fréquences.It is then interesting to determine at least one parameter which makes it possible to decide whether to spectrally shape the zone of the signal containing a pre-echo, by attenuating (or not) the high frequencies.
Dans un exemple de réalisation, ce paramètre de décision est représentatif de la présence de composantes hautes fréquences dans la zone de pré-écho.In an exemplary embodiment, this decision parameter is representative of the presence of high frequency components in the pre-echo zone.
Ce paramètre peut être par exemple une mesure de la force de l'attaque (brusque ou non). Si l'attaque est localisée dans le sous-bloc numéro k, le paramètre peut-être calculé comme :
Selon un réglage expérimental, dans cet exemple de réalisation, P >= 32 indique une attaque brusque (très impulsive).According to an experimental setting, in this exemplary embodiment, P > = 32 indicates a sudden attack (very impulsive).
La mesure de force de l'attaque peut être complétée en tenant en compte également de l'atténuation déterminée pour le sous-bloc précédant l'attaque g(k-1). Une attaque peut être considérée comme brusque si cette atténuation est significative, par exemple si g(k-1) ≤ 0.5. Ceci montre que l'énergie dans la zone de pré-écho est considérablement augmentée (plus que doublée) à cause du pré-écho, ce qui signale également une attaque brusque.The force measurement of the attack can be completed by also taking into account the attenuation determined for the sub-block preceding the attack g ( k -1). An attack can be considered abrupt if this attenuation is significant, for example if g ( k -1) ≤ 0.5. This shows that the energy in the pre-echo zone is considerably increased (more than doubled) because of the pre-echo, which also signals a sudden attack.
Si P < 32 et g(k-1) >0.5, où k est l'indice du sous-bloc contenant le début de l'attaque, le filtrage n'est pas nécessaire. En effet, si g(k-1) >0.5, lim g (k)>0.5, ce qui signifie que la zone de pré-écho a une énergie comparable avec celle de la trame précédente et comme l'attaque qui génère le pré-écho n'est pas brusque, le risque d'avoir une composante parasite gênante est faible.If P <32 and g (k -1)> 0.5, where k is the index of the sub-block containing the beginning of the attack, the filtering is not necessary. Indeed, if g ( k -1)> 0.5, lim g ( k )> 0.5, which means that the pre-echo zone has energy comparable to that of the previous frame and as the attack that generates the pre Echo is not abrupt, the risk of having an annoying parasitic component is low.
Ainsi, dans ce mode de réalisation avec les conditions (P < 32 et g(k-1) >0.5), aucun filtrage ne sera fait sur la zone de pré-écho.Thus, in this embodiment with the conditions (P <32 and g ( k -1)> 0.5), no filtering will be done on the pre-echo area.
Dans les autres cas (g(k-1) ≤ 0.5 ou P > 32) le filtre de mise en forme spectrale est appliqué, selon l'invention, du début de la trame courante jusqu'à la position pos de position de l'attaque.In the other cases ( g ( k -1) ≤ 0.5 or P> 32) the spectral shaping filter is applied, according to the invention, from the beginning of the current frame to the position pos position of the attack.
Dans l'exemple de réalisation décrit ci-dessus la mise en forme spectrale de la zone de pré-écho par filtrage selon l'invention est adaptative en fonction du paramètre P et des valeurs d'atténuation. Ainsi, le filtrage est soit appliqué avec des coefficients [0.25, 0.5, 0.25], soit désactivé avec des coefficients [0, 1, 0].In the exemplary embodiment described above, the spectral shaping of the pre-echo zone by filtering according to the invention is adaptive as a function of the parameter P and the attenuation values. Thus, the filtering is either applied with coefficients [0.25, 0.5, 0.25], or deactivated with coefficients [0, 1, 0].
L'adaptation des coefficients de filtrage s'effectue alors de façon discrète limitée à un jeu de valeurs prédéfini.The filter coefficients are then adapted in a discrete manner limited to a predefined set of values.
L'adaptation des coefficients de filtrage (permettant d'adapter le niveau d'atténuation des hautes fréquences) est déterminé donc par des paramètres de décision qui mesurent la force de l'attaque comme les paramètres P et g(k-1)The adaptation of the filter coefficients (making it possible to adapt the attenuation level of the high frequencies) is thus determined by decision parameters which measure the force of the attack, such as the parameters P and g ( k -1).
Il s'agit dans ce cas d'une d'adaptation des coefficients du filtre de façon discrète suivant deux jeux de valeurs possibles ([0.25, 0.5, 0.25] ou [0, 1, 0]). On peut noter que le jeu de coefficients [0, 1, 0] correspond à une désactivation du filtrage.In this case, it is a matter of adapting the coefficients of the filter discretely according to two sets of possible values ([0.25, 0.5, 0.25] or [0, 1, 0]). It can be noted that the set of coefficients [0, 1, 0] corresponds to a deactivation of the filtering.
Une transition progressive entre ces deux filtres peut être effectuée en utilisant également par exemple les filtres intermédiaires de coefficient [0.05, 0.9, 0.05], [0.1, 0.8, 0.1], [0.15, 0.7, 0.15] et [0.2, 0.6, 0.2].A progressive transition between these two filters can be carried out using also for example the intermediate filters of coefficient [0.05, 0.9, 0.05], [0.1, 0.8, 0.1], [0.15, 0.7, 0.15] and [0.2, 0.6, 0.2 ].
Il s'agit dans ce cas d'une adaptation des coefficients du filtre de façon discrète suivant plusieurs jeux de valeurs possibles, si on tient compte de la variation lente (ou interpolation).In this case, it is an adaptation of the coefficients of the filter discretely according to several sets of possible values, if one takes into account the slow variation (or interpolation).
Dans des variantes de réalisations, d'autres méthodes d'interpolation peuvent être utilisées.In alternative embodiments, other interpolation methods may be used.
Par exemple, le filtrage peut être encore plus finement adaptatif avec c(n) = f(P) par exemple en utilisant un filtre intermédiaire avec c(n) = [0.15, 0.7, 0.15] si 16 < P <32. c(n) peut être également calculé de façon continue en fonction de P, par exemple avec le formule
Il s'agit dans ce cas d'une d'adaptation des coefficients du filtre de façon continue suivant des valeurs possibles où c(n) est dans l'intervalle [0, 0.25].It is in this case an adaptation of the filter coefficients continuously according to possible values where c ( n ) is in the interval [0, 0.25].
D'autres paramètres de décision peuvent être également utilisés dans la décision du choix et de l'adaptation du filtre, comme par exemple le taux de passage à zéro ("zero crossing rate" en anglais) du signal décodé de la zone pré-écho de la trame courante et/ou de la trame précédente. Le taux de passage par zéro peut être calculé de la façon suivante si on considère la zone n = 0,..., L -1 à titre d'exemple :
En effet, un taux élevé de passage à zéro zc dans la trame précédente (donc sans pré-écho) signale la présence de hautes fréquences dans le signal. Dans ce cas, par exemple quand zc > L/2 sur la trame précédente, il est préférable de ne pas appliquer le filtrage
Afin d'éliminer le biais de la composante continue, un préfiltrage du signal décodé est également possible avant calcul du taux de passage par zéro, ou bien le nombre de passage par zéro de la dérivée estimée x rec,g (n) -x rec,g (n-1) peut être utilisé.In order to eliminate the bias of the DC component, a pre-filtering of the decoded signal is also possible before calculating the zero crossing rate, or the number of zero crossings of the estimated derivative x rec , g ( n ) -x rec , g ( n -1) can be used.
Dans une variante, une analyse spectrale du signal peut être également faite pour aider à la décision. Par exemple, l'enveloppe spectrale dans le domaine MDCT issue du codage/décodage MDCT peut être exploitée dans le choix du filtre à utiliser, cependant cette variante suppose que les fenêtres d'analyse/synthèse MDCT sont suffisamment courtes pour que les statistiques locales du signal avant l'attaque restent stables sur la longueur d'une fenêtre.In a variant, a spectral analysis of the signal can also be made to assist the decision. For example, the spectral envelope in the MDCT domain resulting from the MDCT coding / decoding can be exploited in the choice of the filter to be used, however this variant assumes that the analysis / synthesis windows MDCT are sufficiently short for the local statistics of the MDCT to be used. signal before the attack remain stable over the length of a window.
Alternativement, on pourra filtrer le signal dans la zone de pré-écho et dans la trame passée par un filtre complémentaire passe-haut comme -c(n)z -1+(1-2c(n))-c(n)z, avec par exemple c(n) = 0.25, et ensuite on choisira la valeur de c(n) de sorte que l'énergie moyenne des signaux filtrés dans la zone de pré-écho et sur la trame passée soient les plus proches possibles; le choix de c(n) pourra se faire sur un jeu limité de valeurs possibles montrées à la
A noter que le filtrage passe-haut peut également être mis en oeuvre de façon alternative en calculant la différence entre le signal x rec,g (n) et le signal filtré par le filtre passe-bas c(n)z -1+(1-2c(n))+c(n)z quand c(n) =0.25.Note that the high-pass filtering can also be implemented alternately by calculating the difference between the signal x rec , g ( n ) and the signal filtered by the low-pass filter c ( n ) z -1 + ( 1-2 c ( n )) + c ( n ) z when c ( n ) = 0.25.
Dans une autre variante, quand le filtrage de mise en forme est de type c(n)z -1+(1-c(n)), on pourra fixer le valeur de c(n) en fonction du coefficient de prédiction -r(1)/r(0) issu d'une analyse par prédiction linéaire (LPC pour "Linear Predictive Coding" en anglais) à l'ordre 1 du signal dans la zone de pré-écho et du signal dans la trame passée.In another variant, when the shaping filtering is of type c ( n ) z -1 + (1- c ( n )), the value of c ( n ) can be fixed according to the prediction coefficient r (1) / r (0) from a linear prediction analysis (LPC) for the
Dans toutes ces dernières variantes (taux de passage à zéro, enveloppe spectrale MDCT, filtrage passe haut, analyse LPC), le paramètre de décision sur le filtrage à appliquer à la zone de pré-écho est basé sur une analyse de répartition spectrale du signal de la zone pré-écho et/ou du signal précédant de la zone pré-écho ; si le signal précédant la zone pré-écho contient déjà beaucoup de hautes fréquences ou si la quantité des hautes fréquences du signal dans la zone pré-écho et du signal précédant la zone pré-écho est sensiblement identique, le filtrage selon l'invention n'est pas nécessaire et peut même causer une légère dégradation. Dans ces cas il faut désactiver ou atténuer le filtrage selon l'invention en fixant c(n) à 0 ou à une faible valeur proche de 0.In all these latter variants (zero crossing rate, MDCT spectral envelope, high pass filtering, LPC analysis), the decision parameter on the filtering to be applied to the pre-echo zone is based on a spectral distribution analysis of the signal the pre-echo zone and / or the preceding signal of the pre-echo zone; if the signal preceding the pre-echo zone already contains many high frequencies or if the amount of the high frequencies of the signal in the pre-echo zone and the signal preceding the pre-echo zone is substantially identical, the filtering according to the invention is not necessary and may even cause slight degradation. In these cases, the filtering according to the invention must be deactivated or attenuated by setting c (n) to 0 or to a low value close to 0.
Dans une variante de l'invention l'ordre entre l'étape d'atténuation et de filtrage pourra être inversé.In a variant of the invention the order between the attenuation and filtering step may be reversed.
Il se peut en effet que le filtrage (F) de mise en forme spectrale se fasse avant l'atténuation (Att.). Ainsi, après avoir effectué le filtrage adaptatif des échantillons de la zone de pré-écho du signal reconstruit de la trame courante, ces échantillons sont alors pondérés en multipliant chaque échantillon par le facteur d'atténuation correspondant calculé précédemment :
L'atténuation des amplitudes peut également être combinée (ou intégrée) en définissant un jeu de coefficients de filtre "conjoint", par exemple si pour l'échantillon n le filtre a des coefficients [c(n), 1-2c(n), c(n)] et le facteur d'atténuation est g(n), on peut directement utiliser le filtre [gpre (n)c(n), gpre (n)2gpre (n) c(n), gpre (n) c(n)].The attenuation of the amplitudes can also be combined (or integrated) by defining a set of "conjoint" filter coefficients, for example if for the sample n the filter has coefficients [c ( n ), 1-2 c ( n ), c ( n )] and the attenuation factor is g ( n ), we can directly use the filter [ g pre ( n ) c ( n ), g pre ( n ) 2g pre ( n ) c ( n) ), g pre ( n ) c ( n )].
La
Pour revenir à la
En sortie du dispositif 600, un signal traité Sa est fourni dans lequel une atténuation de pré-écho a été effectué. Le traitement effectué a permis d'améliorer l'atténuation de pré-écho par l'atténuation, le cas échant, des composantes hautes fréquences, dans la zone de pré-écho.At the output of the
Un exemple de réalisation d'un dispositif de traitement d'atténuation selon l'invention est maintenant décrit en référence à la
Matériellement, ce dispositif 100 au sens de l'invention comporte typiquement, un processeur µP coopérant avec un bloc mémoire BM incluant une mémoire de stockage et/ou de travail, ainsi qu'une mémoire tampon MEM précitée en tant que moyen pour mémoriser toutes données nécessaire à la mise en oeuvre du procédé de traitement d'atténuation tel que décrit en référence à la
Le bloc mémoire BM peut comporter un programme informatique comportant les instructions de code pour la mise en oeuvre des étapes du procédé selon l'invention lorsque ces instructions sont exécutées par un processeur µP du dispositif et notamment une étape de détection d'une position d'attaque dans le signal décodé, de détermination d'une zone de pré-écho précédant la position d'attaque détectée dans le signal décodé, de calcul de facteurs d'atténuations par sous-bloc de la zone de pré-écho, en fonction de la trame dans laquelle l'attaque a été détectée et de la trame précédente, d'atténuation de pré-écho dans les sous-blocs de la zone de pré-écho par les facteurs d'atténuation correspondants et en outre, une étape d'application d'un filtrage de mise en forme spectrale de la zone de pré-écho sur la trame courante jusqu'à la position détectée de l'attaque, le filtrage étant à réponse impulsionnelle finie à phase nulle de fonction de transfert:
Ce dispositif d'atténuation selon l'invention peut être indépendant ou intégré dans un décodeur de signal numérique.This attenuation device according to the invention can be independent or integrated into a digital signal decoder.
Claims (12)
- Method of processing attenuation of pre-echo in a digital audio signal engendered on the basis of a transform-based coding, in which, on decoding, the method comprises the following steps:- detection (601, Detect.) of an attack position in the decoded signal;- determination (602, ZPE) of a pre-echo zone preceding the attack position detected in the decoded signal;- calculation (603, F. Att.) of attenuation factors per sub-block of the pre-echo zone, as a function at least of the frame in which the attack has been detected and of the previous frame;- attenuation (604, Att.) of pre-echo in the sub-blocks of the pre-echo zone by the corresponding attenuation factors;the method being characterized in that it furthermore comprises:- the application of an adaptive filtering (606, F) of spectral shaping of the pre-echo zone on the current frame until as far as the detected position of the attack, the filtering being zero-phase finite impulse response filtering with transfer function:
- Method according to Claim 1, characterized in that it furthermore comprises the calculation of at least one decision parameter regarding the filtering to be applied to the pre-echo zone and the adaptation of the coefficients of the filtering as a function of said at least one decision parameter.
- Method according to Claim 2, characterized in that said at least one decision parameter is a measurement of the strength of the detected attack.
- Method according to Claim 2, characterized in that said at least one decision parameter is the value of the attenuation factor in the sub-block preceding that containing the position of the attack.
- Method according to Claim 2, characterized in that said at least one decision parameter is based on a spectral distribution analysis of the signal of the pre-echo zone and/or of the signal preceding the pre-echo zone.
- Method according to Claim 3, characterized in that the measurement of the strength of the detected attack is of the form:
P=max (EN(k), EN (k+1)/min(EN(k-1), EN(k-2)) with k, the number of the sub-block in which the attack has been detected and EN (k) the energy of the kth sub-block. - Method according to Claim 2, characterized in that the adaptation of the coefficients of the filtering is performed in a discrete manner as a function of the comparison of at least one decision parameter with a predetermined threshold.
- Method according to Claim 2, characterized in that the adaptation of the coefficients of the filtering is performed in a continuous manner as a function of said at least one decision parameter.
- Method according to Claim 1, characterized in that the attenuation step is performed at the same time as the spectral shaping filtering by integrating the attenuation factors into the coefficients defining the filtering.
- Device for processing attenuation of pre-echo in a digital audio signal engendered on the basis of a transform-based coder, in which, the device associated with a decoder comprises:- a detection module (601) for detecting an attack position in the decoded signal;- a determination module (602) for determining a pre-echo zone preceding the attack position detected in the decoded signal;- a calculation module (603) for calculating attenuation factors per sub-block of the pre-echo zone, as a function at least of the frame in which the attack has been detected and of the previous frame;- an attenuation module (604) for attenuating the pre-echoes in the sub-blocks of the pre-echo zone by the corresponding attenuation factors;the device being characterized as furthermore comprising:- an adaptive filtering module (606) for performing a spectral shaping of the pre-echo zone on the current frame until as far as the detected position of the attack the filtering being zero-phase finite impulse response filtering with transfer function:
- Decoder of a digital audio signal comprising a device according to Claim 10.
- Computational program comprising code instructions for implementing the steps of the method according to one of Claims 1 to 9, when these instructions are executed by a processor.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1256285A FR2992766A1 (en) | 2012-06-29 | 2012-06-29 | EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
PCT/FR2013/051517 WO2014001730A1 (en) | 2012-06-29 | 2013-06-28 | Effective pre-echo attenuation in a digital audio signal |
Publications (2)
Publication Number | Publication Date |
---|---|
EP2867893A1 EP2867893A1 (en) | 2015-05-06 |
EP2867893B1 true EP2867893B1 (en) | 2018-11-28 |
Family
ID=47191858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP13744654.8A Active EP2867893B1 (en) | 2012-06-29 | 2013-06-28 | Effective pre-echo attenuation in a digital audio signal |
Country Status (12)
Country | Link |
---|---|
US (1) | US9489964B2 (en) |
EP (1) | EP2867893B1 (en) |
JP (1) | JP6271531B2 (en) |
KR (1) | KR102082156B1 (en) |
CN (1) | CN104395958B (en) |
BR (1) | BR112014032587B1 (en) |
CA (1) | CA2874965C (en) |
ES (1) | ES2711132T3 (en) |
FR (1) | FR2992766A1 (en) |
MX (1) | MX349600B (en) |
RU (1) | RU2607418C2 (en) |
WO (1) | WO2014001730A1 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2992766A1 (en) * | 2012-06-29 | 2014-01-03 | France Telecom | EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
FR3023646A1 (en) * | 2014-07-11 | 2016-01-15 | Orange | UPDATING STATES FROM POST-PROCESSING TO A VARIABLE SAMPLING FREQUENCY ACCORDING TO THE FRAMEWORK |
FR3025923A1 (en) * | 2014-09-12 | 2016-03-18 | Orange | DISCRIMINATION AND ATTENUATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
EP3382700A1 (en) | 2017-03-31 | 2018-10-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using a transient location detection |
EP3382701A1 (en) | 2017-03-31 | 2018-10-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using prediction based shaping |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
EP3483880A1 (en) * | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Temporal noise shaping |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
WO2019091573A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters |
WO2019091576A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483883A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio coding and decoding with selective postfiltering |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2674710B1 (en) * | 1991-03-27 | 1994-11-04 | France Telecom | METHOD AND SYSTEM FOR PROCESSING PREECHOS OF AN AUDIO-DIGITAL SIGNAL ENCODED BY FREQUENTIAL TRANSFORM. |
US5731767A (en) * | 1994-02-04 | 1998-03-24 | Sony Corporation | Information encoding method and apparatus, information decoding method and apparatus, information recording medium, and information transmission method |
JP3186412B2 (en) * | 1994-04-01 | 2001-07-11 | ソニー株式会社 | Information encoding method, information decoding method, and information transmission method |
JPH08223049A (en) * | 1995-02-14 | 1996-08-30 | Sony Corp | Signal coding method and device, signal decoding method and device, information recording medium and information transmission method |
JP3307138B2 (en) * | 1995-02-27 | 2002-07-24 | ソニー株式会社 | Signal encoding method and apparatus, and signal decoding method and apparatus |
JP4581190B2 (en) * | 2000-06-19 | 2010-11-17 | ヤマハ株式会社 | Music signal time axis companding method and apparatus |
WO2002049001A1 (en) * | 2000-12-14 | 2002-06-20 | Sony Corporation | Information extracting device |
WO2003042978A1 (en) * | 2001-11-16 | 2003-05-22 | Koninklijke Philips Electronics N.V. | Embedding supplementary data in an information signal |
US7876966B2 (en) * | 2003-03-11 | 2011-01-25 | Spyder Navigations L.L.C. | Switching between coding schemes |
US7443978B2 (en) * | 2003-09-04 | 2008-10-28 | Kabushiki Kaisha Toshiba | Method and apparatus for audio coding with noise suppression |
EP1542226A1 (en) * | 2003-12-11 | 2005-06-15 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for transmitting watermark data bits using a spread spectrum, and for regaining watermark data bits embedded in a spread spectrum |
FR2897733A1 (en) * | 2006-02-20 | 2007-08-24 | France Telecom | Echo discriminating and attenuating method for hierarchical coder-decoder, involves attenuating echoes based on initial processing in discriminated low energy zone, and inhibiting attenuation of echoes in false alarm zone |
DE102006047197B3 (en) * | 2006-07-31 | 2008-01-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Device for processing realistic sub-band signal of multiple realistic sub-band signals, has weigher for weighing sub-band signal with weighing factor that is specified for sub-band signal around subband-signal to hold weight |
US8463603B2 (en) * | 2008-09-06 | 2013-06-11 | Huawei Technologies Co., Ltd. | Spectral envelope coding of energy attack signal |
JP5295372B2 (en) * | 2008-09-17 | 2013-09-18 | フランス・テレコム | Pre-echo attenuation in digital audio signals |
FR2936898A1 (en) * | 2008-10-08 | 2010-04-09 | France Telecom | CRITICAL SAMPLING CODING WITH PREDICTIVE ENCODER |
CN101826327B (en) * | 2009-03-03 | 2013-06-05 | 中兴通讯股份有限公司 | Method and system for judging transient state based on time domain masking |
JP5287546B2 (en) * | 2009-06-29 | 2013-09-11 | 富士通株式会社 | Information processing apparatus and program |
EP2772909B1 (en) * | 2011-10-27 | 2018-02-21 | LG Electronics Inc. | Method for encoding voice signal |
FR2992766A1 (en) * | 2012-06-29 | 2014-01-03 | France Telecom | EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
FR3000328A1 (en) * | 2012-12-21 | 2014-06-27 | France Telecom | EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL |
-
2012
- 2012-06-29 FR FR1256285A patent/FR2992766A1/en active Pending
-
2013
- 2013-06-28 KR KR1020147036551A patent/KR102082156B1/en active IP Right Grant
- 2013-06-28 MX MX2014015065A patent/MX349600B/en active IP Right Grant
- 2013-06-28 JP JP2015519300A patent/JP6271531B2/en active Active
- 2013-06-28 ES ES13744654T patent/ES2711132T3/en active Active
- 2013-06-28 RU RU2015102814A patent/RU2607418C2/en active
- 2013-06-28 CA CA2874965A patent/CA2874965C/en active Active
- 2013-06-28 WO PCT/FR2013/051517 patent/WO2014001730A1/en active Application Filing
- 2013-06-28 CN CN201380034828.2A patent/CN104395958B/en active Active
- 2013-06-28 EP EP13744654.8A patent/EP2867893B1/en active Active
- 2013-06-28 BR BR112014032587-1A patent/BR112014032587B1/en active IP Right Grant
- 2013-06-28 US US14/411,790 patent/US9489964B2/en active Active
Non-Patent Citations (1)
Title |
---|
None * |
Also Published As
Publication number | Publication date |
---|---|
WO2014001730A1 (en) | 2014-01-03 |
JP6271531B2 (en) | 2018-01-31 |
ES2711132T3 (en) | 2019-04-30 |
CA2874965A1 (en) | 2014-01-03 |
KR102082156B1 (en) | 2020-04-14 |
CN104395958B (en) | 2017-09-05 |
US20150170668A1 (en) | 2015-06-18 |
BR112014032587A2 (en) | 2017-06-27 |
BR112014032587B1 (en) | 2022-08-09 |
JP2015522847A (en) | 2015-08-06 |
MX349600B (en) | 2017-08-03 |
MX2014015065A (en) | 2015-02-17 |
CN104395958A (en) | 2015-03-04 |
RU2015102814A (en) | 2016-08-20 |
KR20150052812A (en) | 2015-05-14 |
CA2874965C (en) | 2021-01-19 |
FR2992766A1 (en) | 2014-01-03 |
US9489964B2 (en) | 2016-11-08 |
RU2607418C2 (en) | 2017-01-10 |
EP2867893A1 (en) | 2015-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2867893B1 (en) | Effective pre-echo attenuation in a digital audio signal | |
EP2936488B1 (en) | Effective attenuation of pre-echos in a digital audio signal | |
EP2002428B1 (en) | Method for trained discrimination and attenuation of echoes of a digital signal in a decoder and corresponding device | |
EP2104936B1 (en) | Low-delay transform coding using weighting windows | |
EP2586133B1 (en) | Controlling a noise-shaping feedback loop in a digital audio signal encoder | |
FR2820227A1 (en) | NOISE REDUCTION METHOD AND DEVICE | |
FR2907586A1 (en) | Digital audio signal e.g. speech signal, synthesizing method for adaptive differential pulse code modulation type decoder, involves correcting samples of repetition period to limit amplitude of signal, and copying samples in replacing block | |
EP3084959B1 (en) | Resampling of an audio signal interrupted with a variable sampling frequency according to the frame | |
EP2153438A1 (en) | Post-processing for reducing quantification noise of an encoder during decoding | |
FR2977439A1 (en) | WINDOW WINDOWS IN ENCODING / DECODING BY TRANSFORMATION WITH RECOVERY, OPTIMIZED IN DELAY. | |
FR3007563A1 (en) | ENHANCED FREQUENCY BAND EXTENSION IN AUDIO FREQUENCY SIGNAL DECODER | |
EP2347411B1 (en) | Pre-echo attenuation in a digital audio signal | |
EP3192073B1 (en) | Discrimination and attenuation of pre-echoes in a digital audio signal | |
EP3167447B1 (en) | Update of post-processing states with variable sampling frequency according to the frame | |
EP2652735B1 (en) | Improved encoding of an improvement stage in a hierarchical encoder | |
WO2014009657A1 (en) | Processing method for improving the quality of audio frequency signals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20150127 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20171020 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20180727 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1071154 Country of ref document: AT Kind code of ref document: T Effective date: 20181215 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602013047454 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: LANGUAGE OF EP DOCUMENT: FRENCH |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20181128 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1071154 Country of ref document: AT Kind code of ref document: T Effective date: 20181128 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190328 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190228 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190228 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
REG | Reference to a national code |
Ref country code: ES Ref legal event code: FG2A Ref document number: 2711132 Country of ref document: ES Kind code of ref document: T3 Effective date: 20190430 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190328 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190301 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602013047454 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
26N | No opposition filed |
Effective date: 20190829 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20190630 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190628 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190630 Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190628 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190630 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190630 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20130628 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20181128 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IT Payment date: 20230523 Year of fee payment: 11 Ref country code: FR Payment date: 20230523 Year of fee payment: 11 Ref country code: DE Payment date: 20230523 Year of fee payment: 11 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20230523 Year of fee payment: 11 Ref country code: ES Payment date: 20230703 Year of fee payment: 11 |