WO2012085451A1 - Codage de son à bas retard alternant codage prédictif et codage par transformée - Google Patents

Codage de son à bas retard alternant codage prédictif et codage par transformée Download PDF

Info

Publication number
WO2012085451A1
WO2012085451A1 PCT/FR2011/053097 FR2011053097W WO2012085451A1 WO 2012085451 A1 WO2012085451 A1 WO 2012085451A1 FR 2011053097 W FR2011053097 W FR 2011053097W WO 2012085451 A1 WO2012085451 A1 WO 2012085451A1
Authority
WO
WIPO (PCT)
Prior art keywords
coding
frame
predictive
decoding
mdct
Prior art date
Application number
PCT/FR2011/053097
Other languages
English (en)
Inventor
Stéphane RAGOT
Balazs Kovesi
Pierre Berthet
Original Assignee
France Telecom
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by France Telecom filed Critical France Telecom
Priority to CN201180068351.0A priority Critical patent/CN103384900B/zh
Priority to RU2013134227/08A priority patent/RU2584463C2/ru
Priority to EP11815474.9A priority patent/EP2656343B1/fr
Priority to JP2013545471A priority patent/JP5978227B2/ja
Priority to US13/997,446 priority patent/US9218817B2/en
Priority to KR1020137019387A priority patent/KR101869395B1/ko
Priority to BR112013016267-8A priority patent/BR112013016267B1/pt
Priority to ES11815474.9T priority patent/ES2529221T3/es
Publication of WO2012085451A1 publication Critical patent/WO2012085451A1/fr

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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

Definitions

  • the present invention relates to the field of coding digital signals.
  • the invention is advantageously applied to the coding of sounds with alternating speech and music.
  • CELP Code Excited Linear Prediction
  • transform coding techniques are preferred.
  • CELP coders are predictive coders. They aim to model the production of speech from various elements: a short-term linear prediction to model the vocal tract, a long-term prediction to model the vibration of vocal cords in voiced period, and an excitation derived from a fixed dictionary (white noise, algebraic excitation) to represent ⁇ "innovation" which could not be modeled.
  • critical-sampling transform is a transform for which the number of coefficients in the transformed domain is equal to the number of time samples analyzed.
  • This technique is based on a CELP technology of the AMR-WB type, more specifically of the ACELP type (for "Algebraic Code Excited Linear Prediction") and a transform coding based on an overlapping Fourier transform in a TCX type model. (for "Transform Coded eXcitation").
  • ACELP coding and TCX coding are both linear predictive type techniques.
  • AMR-WB + codec has been developed for 3GPP PSS (for "Packet Switched Streaming" in English), MBMS (for "Multimedia Broadcast / Multicast Service” in English) and MMS (for "Multimedia Messaging Service”). "in English), in other words for broadcast and storage services, without strong constraints on algorithmic delay.
  • This solution suffers from insufficient quality on the music.
  • This deficiency comes particularly from transform coding.
  • the overlapping Fourier transform is not a critical sampling transformation, and therefore, it is suboptimal.
  • the windows used in this encoder are not optimal vis-à-vis the concentration of energy: the frequency forms of these quasi-rectangular windows are sub-optimal.
  • RMO Model 0 Reference
  • LPD Linear Predictive Domain
  • wLPT weighted Linear Predictive Transform
  • MDCT-type transform unlike the AMR-WB + code
  • FD mode for "Frequency Domain” in English
  • MDCT for "Modified Discrete Cosine Transform” in English
  • MPEG AAC for "Advanced Audio Coding" out of 1024 samples.
  • the major differences brought by the USAC RMO coding for the mono part are the use of a MDCT type critical decimation transform for transform coding and quantization of the MDCT spectrum by scalar quantization with arithmetic coding.
  • the acoustic band coded by the different modes depends on the selected mode, which is not the case in the AMR-WB + codec where the ACELP and TCX modes operate at the same time. internal sampling frequency.
  • the mode decision in the USAC RMO codec is performed in open loop (or "open-loop" in English) for each frame of 1024 samples.
  • a closed loop decision is made by executing the different coding modes in parallel and choosing a posteriori the mode that gives the best result according to a predefined criterion.
  • the decision is made a priori based on available data and observations but without testing whether this decision is optimal or not.
  • the MDCT window is divided into 4 adjacent portions of equal lengths M / 2, called "quarters".
  • the signal is multiplied by the analysis window and folds are made: the first quarter (windowed) is folded (ie inverted in time and overlapped) on the second quarter and the fourth quarter is folded on the third. Specifically, folding from one quarter to another is done in the following way: The first sample of the first quarter is added (or subtracted) to the last sample of the second quarter, the second sample of the first quarter is added (or subtracted) the second-last sample in the second quarter, and so on until the last sample of the first quarter that is added (or subtracted) to the first sample of the second quarter.
  • the third and fourth quarters of the previous frame then become the first and second quarter of the current frame.
  • the decoded version of these folded signals is thus obtained.
  • Two consecutive frames contain the result of 2 different folds of the same quarters, that is to say for each pair of samples one has the result of 2 linear combinations with different but known weights: an equation system is thus solved to obtain the decoded version of the input signal, the time folding can be thus removed using 2 consecutive decoded frames.
  • the resolution of the systems of equations mentioned is generally made by unfolding, multiplication by a wisely selected synthesis window then addition-recovery of the common parts.
  • This overlap addition ensures at the same time the smooth transition (without discontinuity due to quantization errors) between two consecutive decoded frames, in fact this operation behaves like a crossfade.
  • the window for the first quarter or fourth quarter is zero for each sample, we are talking about an MDCT transformation without time folding in this part of the window.
  • the smooth transition is not ensured by the MDCT transformation, it must be done by other means such as for example an external crossfade.
  • implementation variants of the MDCT transformation exist, in particular on the definition of the DCT transform, on how to temporally fold the block to be transformed (for example, we can reverse the applied signs to the quarters folded to the left and right, or to fold the second and third quarter on respectively the first and fourth quarters), etc. These variants do not change the principle of the MDCT analysis-synthesis with the reduction of the sample block by windowing, temporal folding then transformation and finally windowing, folding and addition-recovery.
  • a transition window for the FD mode is used with a left overlap of 128 samples, as shown in Figure 1.
  • the temporal folding on this overlap area is canceled by introducing an "artificial" time folding to the right of the ACELP frame rebuilt.
  • the MDCT window used for the transition has a size of 2304 samples and the DCT transformation operates on 1152 samples whereas normally FD mode frames are coded with a window size of 2048 samples and a DCT transformation of 1024 samples.
  • the MDCT transformation of the normal FD mode is not directly usable for the transition window, the encoder must also integrate a modified version of this transformation which complicates the implementation of the transition for the FD mode.
  • the present invention improves the situation.
  • the present invention proposes a method for encoding a digital sound signal, comprising the steps of:
  • the method is such that a first part of the current frame is coded by a predictive coding restricted with respect to the predictive coding of the preceding frame by reusing at least one parameter of the predictive coding of the preceding frame and coding only the non-predictive parameters. reused from this first part of the current frame.
  • a transition frame is thus provided.
  • the fact that the first part of the current frame is also coded by predictive coding makes it possible to recover folding terms that it would not be possible to recover solely by transform coding since the transform coding memory for this frame of transition is not available, the previous frame has not been transformed-encoded.
  • this frame part does not induce additional delay since this first part is at the beginning of the transition frame.
  • this type of coding makes it possible to remain with a weighting window size of identical length for the transform coding whether for the coding of the transition frame or for the coding of the other frames coded by transform. The complexity of the coding method is therefore reduced.
  • the restricted predictive coding uses a prediction filter copied from the preceding predictive coding frame.
  • transform coding is generally selected when the coded segments are quasi-stationary.
  • the spectral envelope parameter of the signal can be reused from one frame to another for a duration of a part of the frame, for example, a sub-frame, without having a significant impact on the quality of the coding.
  • the use of the prediction filter used for the previous frame does not, therefore, affect the quality of the coding and makes it possible to dispense with additional bits for the transmission of its parameters.
  • the restricted predictive coding further uses a decoded value of the pitch and / or its associated gain of the previous predictive coding frame.
  • certain predictive coding parameters used for the restricted predictive coding are quantized in differential mode with respect to decoded parameters of the preceding predictive coding frame.
  • the method comprises a step of obtaining the reconstructed signals resulting from predictive local codings and decodings and by transforming the first sub-frame of the current and combination frame by a cross-fading of these reconstructed signals.
  • the coding transition in the current frame is smooth and does not induce troublesome artifacts.
  • said crossfade of the reconstructed signals is performed on a portion of the first part of the current frame as a function of the shape of the transform coding weighting window.
  • said crossfade of the reconstructed signals is performed on a portion of the first part of the current frame, said portion not containing temporal folding.
  • the transform coding uses a weighting window comprising a chosen number of successive weighting coefficients of zero value at the end and at the beginning of the window.
  • the transform coding uses an asymmetric weighting window comprising a chosen number of successive weighting coefficients of zero value in at least one end of the window.
  • the present invention also relates to a method for decoding a digital sound signal, comprising the steps of:
  • the method is such that it further comprises a step of decoding by a predictive decoding restricted with respect to the predictive decoding of the previous frame of a first part of the current frame.
  • the decoding method is the counterpart of the coding method and provides the same advantages as those described for the coding method.
  • the decoding method comprises a step of combining by crossfading the decoded signals by inverse transform and by restricted predictive decoding for at least a portion of the first part of the current frame received and encoded according to a restricted predictive coding, reusing at least one parameter of the predictive decoding of the previous frame and decoding only the parameters received for this first part of the current frame.
  • the restricted predictive decoding uses a prediction filter decoded and used by the predictive decoding of the previous frame.
  • the restricted predictive decoding furthermore uses a decoded value of the pitch and / or its associated gain of the predictive decoding of the preceding frame.
  • the present invention also relates to a digital sound signal encoder, comprising:
  • a predictive coding module for coding a previous frame of samples of the digital signal
  • the encoder further comprises a predictive coding module which is restricted in relation to the predictive coding of the preceding frame for coding a first part of the current frame, by reusing at least one parameter of the coding predictive of the previous frame and only coding the non-reused parameters of this first part of the current frame.
  • the invention relates to a digital sound signal decoder, comprising:
  • a predictive decoding module for decoding a previous frame of samples of the digital signal received and coded according to a predictive coding
  • an inverse transform decoding module for decoding a current frame of samples of the digital signal received and coded according to transform coding.
  • the decoder is such that it further comprises a predictive decoding module which is restricted compared with the predictive decoding of the preceding frame in order to decode a first part of the current frame received and coded according to a restricted predictive coding, by reusing at least one parameter of the predictive decoding of the previous frame and decoding only the parameters received for this first part of the current frame.
  • the invention relates to a computer program comprising code instructions for implementing the steps of the encoding method as described above and / or decoding as described above, when these instructions are executed by a processor.
  • the invention also relates to a storage means, readable by a processor, integrated or not integrated with the encoder or the decoder, possibly removable, storing a computer program implementing an encoding method and / or a decoding method as described. previously.
  • FIG. 1 illustrates an exemplary transition window of the state of the art for the transition between the CELP coding and the FD coding of the MPEG codec USAC, previously described;
  • FIG. 2 illustrates in the form of a block diagram, an encoder and a coding method according to one embodiment of the invention
  • FIG. 3a illustrates an example of a weighting window used for the transform coding of the invention
  • FIG. 3b illustrates the method of transform coding used by the invention
  • FIG. 4a illustrates the transition between a coded frame with a predictive coding and a transform coded frame according to an embodiment of the method of the invention
  • FIGS. 4b, 4c and 4d illustrate the transition between a coded frame with a predictive coding and a transform coded frame according to two variant embodiments of the method of the invention
  • FIG. 4e illustrates the transition between a coded frame with a predictive coding and a transform coded frame according to one of the variant embodiments of the method of the invention for the case where the MDCT transform uses asymmetric windows;
  • FIG. 5 illustrates a decoder and a decoding method according to one embodiment of the invention
  • FIGS. 6a and 6b illustrate in flowchart form the main steps of the coding method, respectively of the decoding method according to the invention.
  • FIG. 7 illustrates a possible embodiment of a hardware encoder and a decoder according to the invention.
  • FIG. 2 represents a multi-mode encoder CELP / MDCT in which the coding method according to the invention is implemented.
  • This figure shows the coding steps performed for each signal frame.
  • the input signal noted ⁇ ( ⁇ ')
  • the frame length is 20 ms.
  • the invention is generalized to cases where other sampling frequencies are used, for example for super-wide band signals sampled at 32 kHz, possibly with a split into two subbands to apply the invention in the band. low.
  • the frame length is here chosen to correspond to that of the mobile encoders such as 3GPP AMR and AMR-WB, however other lengths are also possible (example: 10 ms).
  • This input signal is first filtered by a high-pass filter (block 200), in order to attenuate frequencies below 50 Hz and eliminate the DC component, and then downsampled to the internal frequency of 12.8 kHz (block 201) to obtain a frame of the signal, s (n) of 256 samples.
  • the decimation filter (block 201) is produced at a low delay by means of a finite impulse response filter (typically of order 60).
  • the current frame, s (ri) of 256 samples is encoded according to the preferred embodiment of the invention by a CELP coder inspired by multi-rate ACELP coding (from 6.6 to 23.05 kbit / s) at 12.8 kHz described in 3GPP TS 26.190 or equivalent ITU-T G.722.2 - this algorithm is called AMR-WB (for "Adaptive MultiRate - WideBand").
  • AMR-WB for "Adaptive MultiRate - WideBand"
  • the successive frames of 20 ms contain 256 temporal samples at 12.8 kHz.
  • the CELP coding (block 211) comprises several steps implemented in a manner similar to the ACELP coding of the AMR-WB standard; the main steps are given here as an example of embodiment:
  • the CELP coder divides each 20 ms frame into 4 subframes of the 5 ms and the quantized LPC filter corresponds to the last (fourth) subframe.
  • This signal is finally de-emphasized (block 212) by the transfer function filter l / l-CXz 1 to obtain the decoded signal CELP
  • the block 211 corresponds to the CELP coding at 8 kbit / s described in the ITU-T G.718 standard according to one of the four possible CELP coding modes: unvoiced mode (UC), voiced mode (VC), transition mode (TC) or generic mode (GC).
  • UC unvoiced mode
  • VC voiced mode
  • TC transition mode
  • GC generic mode
  • another embodiment of the CELP coding is chosen, for example the ACELP coding in the mode interoperable with the AMR-WB coding of the ITU-T G.718 standard.
  • the representation of the LPC coefficients in the form of ISF can be replaced by the spectral line pairs (LSF) or other equivalent representations.
  • the block 211 delivers the CELP indices coded I C ELP to be multiplexed in the bitstream.
  • the window w (n) is chosen in the preferred embodiment as a "low delay" window symmetrical with the form:
  • This window applies to the current frame of 20 ms as well as to a future signal
  • the MDCT coding is thus synchronized with the CELP coding insofar as the MDCT decoder can reconstruct the entire current frame by addition-overlap, thanks to the overlap on the left and the intermediate “flat” of the MDCT window, and it also has an overlap on the future 5 ms frame. It is noted here for this window that the current MDCT frame induces a temporal folding on the first part of the frame (in fact on the first 5 ms) where the recovery takes place.
  • B tot the total bit budget allocated in each frame to the MDCT coding.
  • the discrete spectrum S (k) is divided into subbands, then a spectral envelope, corresponding to the rms (for "root mean square” in English, that is to say the square root of the average energy ) per subband, is quantized in the logarithmic domain in steps of 3 dB and coded by entropy coding.
  • the bit budget used by this envelope coding is noted here B env ; it is variable because of entropy coding.
  • a predetermined number of bits denoted B inJ (budget function B tot ) is reserved for the coding of noise injection levels in order to "fill" the coded coefficients. at a value of zero by noise and hide artifacts of "musical noise” that would otherwise be audible.
  • the S (k) spectrum subbands are encoded by spherical vector quantization with the remaining budget of B tot - B env - B inJ bits. This quantization is not detailed, as is the adaptive allocation of the bits by sub-bands, since these details go beyond the scope of the invention.
  • the block 221 delivers the MDCT indices encoded IMDCT to be multiplexed in the bit stream.
  • the previous frame was coded by an MDCT mode.
  • the memory (or states) necessary for the MDCT synthesis in the local (and remote) decoder is available and the addition / recovery operation used by the MDCT to cancel the temporal folding is possible.
  • the MDCT frame is correctly decoded throughout the frame. This is the "normal" operation of the MDCT coding / decoding.
  • the previous frame was coded by a CELP mode.
  • the reconstruction of the frame at the decoder (local and remote) is not complete.
  • the MDCT uses for the reconstruction an addition / overlap operation between the current frame and the previous frame (with states stored in memory) to eliminate the temporal folding of the frame to be decoded and also to avoid the effects of blocks. and increase the frequency resolution by using windows longer than a frame.
  • MDCT windows sinusoidal type
  • signal distortion due to time folding is stronger at the end of the window and near zero in the middle of the window.
  • the previous frame is of CELP type, the MDCT memory is not available because the last frame was not coded by MDCT transform.
  • the folded area of the start of the frame corresponds to the area of the signal in the MDCT frame which is disturbed by the time folding inherent in the MDCT transformation.
  • the current frame is coded by the MDCT mode (block 220 to 223) and the previous frame has been coded by the CELP mode (blocks 210 to 212), a specific transition processing from CELP to MDCT is necessary.
  • the first frame is coded by the CELP mode and can be completely reconstructed by the CELP decoder (local or remote).
  • the second frame is coded by the MDCT mode; this second frame is considered to be the current frame.
  • the overlap area on the left side of the MDCT window is problematic because the complementary part (with time folding) of this window is not available since the previous frame has not been coded by MDCT. Folding in this left part of the MDCT window can not be deleted.
  • the coding method comprises a step of encoding a block of samples of length less than or equal to the length of the frame, chosen for example as an additional subframe of 5 ms, in the transform coded current frame (MDCT), representing the left folding area of the current frame, by a transition predictive coder or restricted predictive coding.
  • MDCT transform coded current frame
  • the type of coding in the frame preceding the transition MDCT frame could be another type of coding than the CELP coding, for example an ADPCM or a TCX coding.
  • the invention applies in the general case where the previous frame has been coded by a coding not updating the MDCT memories in the signal domain and the invention involves coding a block of samples corresponding to a portion of the signal. the current frame by a transition coding using the information of the coding of the previous frame.
  • the transition predictive coding is restricted compared to the predictive coding of the previous frame; It consists in using the stable parameters of the previous frame coded by a predictive coding and coding only a few minimal parameters for the additional subframe in the current transition frame.
  • this restricted predictive coding reuses at least one parameter of the predictive coding of the preceding frame and therefore encodes only the parameters that are not reused. In this sense, one can speak of a restricted coding (by the restriction of the coded parameters).
  • the mixed line (lines alternating dots and lines) correspond to the MDCT coding folding lines and the lines of unfolding. MDCT decoding.
  • the bold lines separate the frames at the arrival of the encoder, it is possible to start the encoding of a new frame when a frame thus defined is entirely available. It is important to note that these bold lines in the encoder do not correspond to the current frame but to the block of new samples arriving for each frame; the current frame is in fact delayed by 5 ms. At the bottom, the bold lines separate the decoded frames at the output of the decoder.
  • the specific processing of the transition frame corresponds to the blocks 230 to 232 and to the block 240 of FIG. 2. This processing is performed when the previous mode, noted pre mode, that is to say the type of coding of the frame. previous (CELP or MDCT), is of CELP type.
  • the coding of the current transition frame between CELP coding and MDCT is based on several steps implemented by block 231:
  • the window chosen for this coding is the window w (n) defined above, with an effective length of 25ms.
  • FIGS. 4b, 4c, 4d and 4e Other forms of windows for replacing w (n) in the transition MDCT frame (first MDCT frame following a CELP frame) are illustrated in FIGS. 4b, 4c, 4d and 4e with the same effective length which may be different from 25 ms. .
  • the 20ms of the current frame are placed at the beginning of the non-zero portion of the window, while the remaining 5 ms are the first 5 milliseconds of the future frame ("lookahead").
  • This restricted predictive coding has the following steps.
  • the filter A (z) of the first subframe is for example obtained by copying the filter A (z) of the fourth subframe of the previous frame. This saves the calculation of this filter and saves the number of bits associated with its coding in the bit stream.
  • the MDCT mode is generally selected in quasi-stationary segments where the coding in the frequency domain is more efficient than in the time domain.
  • this stationarity is normally already established, it can be assumed that some parameters such as the spectral envelope evolve very little frame to frame.
  • the quantized synthesis filter 1 / A (z) transmitted during the previous frame, representing the spectral envelope of the signal, can be reused effectively.
  • a bit is allocated to indicate whether the adaptive excitation v (n) was filtered or not by a coefficient low-pass filter (0.18, 0.64, 0.18). However, the value of this bit could be taken from the last previous CELP frame.
  • the search for the algebraic excitation of the sub-frame is performed in a closed loop only for this transition sub-frame, and the coding of the positions and signs of the excitation pulsations are coded in the bit stream, again with a number of bits depending on the encoder rate.
  • the gains g p , g c respectively associated with the adaptive and algebraic excitation are coded in the bit stream. The number of bits allocated to this coding depends on the rate of the encoder.
  • Block 231 also provides the parameters of the restricted predictive coding, I TR , to be multiplexed in the bitstream. It is important to note that block 231 uses information, noted Mem. in the figure, the coding (block 211) carried out in the frame preceding the transition frame. For example, the information includes the LPC and pitch parameters of the last subframe.
  • cross-fade in English
  • this cross-fade is performed on the first 5 ms in the following manner as illustrated in FIG. 4a:
  • the fade-in between the two signals is here 5 ms, but it can be smaller.
  • the CELP coder and the MDCT encoder are perfect or almost perfect reconstruction, we can even do without cross-fade, in fact the first 5 milliseconds of the frame are coded perfectly (by the restricted CELP), and the next 15ms are also coded perfectly (by the MDCT encoder). Artifact attenuation by dissolving is theoretically no longer necessary. In this case, the signal s MDCT (”) is written more simply:
  • the window is replaced by a window identical to the analysis and synthesis with a rectangular shape without folding to the left
  • n ⁇ 0 and n> 255 we do not specify here for n ⁇ 0 and n> 255.
  • n ⁇ 0 the value of w (n) is zero and for n> 255 the windows are determined by the analysis and synthesis windows MDCT used for the MDCT coding "Normal".
  • the crossfade in FIG. 4b is performed as follows:
  • the window is replaced by a window identical to analysis and synthesis with a form including a first part of zero value over 1.25 ms, then a sinusoidal rising edge over 2.5 ms, and a dish of unit value over 1.25 ms:
  • n ⁇ 0 and n> 255 we do not specify here for n ⁇ 0 and n> 255.
  • n ⁇ 0 the value of w (n) is zero and for n> 255 the windows are determined by the analysis and synthesis windows MDCT used for the MDCT coding "Normal".
  • the fade-out in FIG. 4c is carried out as follows:
  • n ⁇ 0 and n> 255 the values are determined by the analysis and synthesis windows MDCT used for "normal" MDCT coding.
  • MDCT (n) cos - ⁇ °TR (n) + ⁇ MDCT ( h ⁇ n-32, ..., 63
  • crossfade of Figures 4b to 4d could be used in the configuration of Figure 4a also.
  • the advantage of doing so is that the cross-fade is performed on the decoded part MDCT where the folding error is the weakest. With the structure shown in Figure 4a is closer to the perfect reconstruction.
  • the encoder operates with a closed-loop mode decision.
  • the operation of the closed-loop decision (Block 254) is not described in greater detail.
  • the decision of block 554 is encoded (I S EL) and multiplexed in the bitstream.
  • the multiplexer 260 combines the coded decision I SEL and the different bits coming from the coding modules in the bit stream bst as a function of the decision of the module 254:
  • the bits I CELP> are sent for a purely MDCT frame the bits I MDCT and for a transition frame CELP to MDCT the bits I ⁇ R and I MDCT - II it should be noted that the mode decision could also be made in open loop or specified externally to the encoder, without changing the nature of the 'invention.
  • the decoder according to one embodiment of the invention is illustrated in FIG. 5.
  • the demultiplexer (block 511) receives the bit stream bst and first extracts the mode index I SEL - This index controls the operation of the modules the decoder and the switch 509. If the I SEL index indicates a CELP frame the CELP decoder 501 is activated and decodes the CELP I indices CELP - The reconstructed signal s CELP (n) by the decoder
  • the indices I TR are also decoded by the module 505. It is important to note that the block 505 uses information, noted Mem. in the figure, the decoding (block 501) carried out in the frame preceding the transition frame. For example, the information includes the LPC and pitch parameters of the last subframe.
  • the decoder reuses at least one predictive decoding parameter of the previous frame to decode a first portion of the transition frame. It also uses the only parameters received for this first part which correspond to the parameters not reused.
  • This processing (block 505 to 507) is performed when the previous mode, noted pre mode, that is to say the type of decoding of the previous frame (CELP or MDCT), is of CELP type.
  • a transition frame the signals s TR (n) and s MDCT (n) are combined by the block 507, typically a cross- fading operation, as previously described for the encoder implementing the invention, is carried out in the first part of the frame to obtain the signal s MDCT (n).
  • MDCT (n) s MDCT (n).
  • the reconstructed signal x (n) at 16 kHz is obtained by oversampling from 12.8 kHz to 16 kHz (block 510). This change of rate is considered to be performed using a finite impulse response filter in polyphase (order 60).
  • the samples corresponding to the first subframe of the current frame coded by transform coding are coded by a restricted predictive coder to the detriment of the bits available to transform coding (case of constant flow rate) or by increasing the transmitted flow rate (variable flow rate).
  • the folded area is used only for cross-linking which ensures a smooth and seamless transition between CELP reconstruction and MDCT reconstruction.
  • this cross-fade can be performed on the second part of the folded area or the folding effect is less strong.
  • this variant illustrated in FIG. 4a by increasing the flow rate, it does not converge towards the perfect reconstruction because a part of the signal used for the crossfade is disturbed by the time folding.
  • This variant can not be transparent even if this low-rate disturbance is quite acceptable and generally almost inaudible compared to the intrinsic degradation of the low-rate coding.
  • CELP transition frame
  • an MDCT transformation can be used without folding to the left, with a rectangular window starting in the middle of the subframe on the folding line.
  • the output is identical to the decoded signal of the restricted predictive coding and then the transition is made during the second 2.5 ms following gradually decreasing the weight of the CELP component and increasing the weight of the MDCT component depending on the exact definition of the MDCT window.
  • the transition is therefore made using the decoded signal MDCT without folding.
  • rectangular windowing can cause block effects in the presence of MDCT coding noise.
  • FIG. 4c illustrates another variant where the upward portion of the window (with time folding) on the left is shortened (for example to 2.5 ms) and thus the first 5 milliseconds of the signal reconstructed by the MDCT mode contain a portion (1.25 ms) without folding right in this first 5 ms subframe.
  • the "flat" (i.e. constant value at 1 without folding) of the MDCT window is extended to the left in the sub-frame encoded by the restricted predictive coding by comparing with the configuration of Fig. 4a.
  • the fade-in of these reconstructed signals is performed on the part of the window where the reconstructed signal resulting from the transform coding of the first part of the current frame has no time folding.
  • the advantage of this variant over that illustrated in FIG. 4b is the best spectral property of the window used and the reduction of the block effects, without the rectangular part.
  • the variant of Figure 4b is an extreme case of the variant of Figure 4c where the rising portion of the window (with time folding) to the left is shortened to 0.
  • the length of the rising part of the window (with time folding) on the left depends on the flow rate: for example it is shortened with the increase of the flow rate.
  • the weights of the crossfade used in this case can be adapted to the chosen window.
  • low delay MDCT windows have been represented, these include a chosen number of successive weighting coefficients of zero value at the end and at the beginning of the window.
  • the invention is also applicable for the case where conventional MDCT (sinusoidal) weighting windows are used.
  • the fade-in has been presented in the examples given above with linear weights. Obviously other functions of variation of the weights can also be used as the rising edge of a sinusoidal function for example. In general, the weight of the other component is always chosen so that the sum of the two weights is always equal to one.
  • the weight of the cross-fading of the MDCT component can be integrated in the MDCT synthesis weighting window of the transition frame for all the variants presented, by multiplying the synthesis weighting window MDCT by the fade-in weights , which reduces the complexity of calculation.
  • the transition between the restricted predictive coding component and the transform coding component is done by adding on the one hand the predictive coding component multiplied by the crossfade weights and on the other hand the transform coding component. thus obtained, without additional weighting by the weights.
  • the integration of the weights of the crossfade can be done in the analysis weighting window. This can advantageously be done in the variant of FIG. 4b since the cross-fade zone is entirely in the non-folding portion of the frame and the initial analysis weighting window was zero for the samples preceding the zone of folding.
  • the rising portion of the analysis / transition synthesis weighting window is in the non-folding zone (after the folding line).
  • This rising part is here defined as a quarter of sinusoidal cycle, so that the combined effect of the analysis / synthesis windows implicitly gives fade weights in the form of a sine squared.
  • This rising part is used for both MDCT windowing and cross fading.
  • the fade-in weights for the restricted predictive coding component are complementary to the rising portion of the combined analysis / synthesis weighting windows, so that the sum of the two weights always gives 1 on the cross-fade area. is done.
  • the weights of the crossfade for the restricted predictive coding component are therefore in the form of a cosine squared (1 minus Sine squared)
  • the weights of the crossfade are integrated into both the analysis and synthesis weighting window of the transition frame.
  • the variant illustrated in FIG. 4d makes it possible to achieve the perfect high-throughput reconstruction because the cross-fade is performed on an area without time folding. .
  • the invention is also applicable to the case where MDCT windows are asymmetrical and in case the MDCT analysis and synthesis windows are not identical as in the ITU-T G.718 standard.
  • MDCT windows are asymmetrical and in case the MDCT analysis and synthesis windows are not identical as in the ITU-T G.718 standard.
  • Figure 4e Such an example is given in Figure 4e.
  • the left side of the transition MDCT window (in bold lines in the figure) and the weights of the crossfade are identical to those of FIG. 4d.
  • the window and the crossfade corresponding to the other embodiments already presented could also be used in the left part of the transition window.
  • the right part of the transition analysis window is identical to the right part of the analysis window MDCT normally used and that at the decoder , the right part of the transition synthesis window MDCT is identical with the right part of the synthesis window MDCT normally used.
  • the left side of the transition MDCT weighting window the left part of one of the MDCT transition windows already presented in FIGS. 4a to 4d is used (in the example of FIG. 4e, that of FIG. 4d is used) .
  • the weights of the crossfade are chosen according to the window used, as detailed in the embodiments of the invention described above (for example in FIGS. 4a to 4d).
  • the left half of the MDCT analysis weighting window used is chosen such that the right part of the zone corresponding to this half of the window comprises no time folding (for example according to one of the examples of FIGS. 4a to 4e) and the left half of the corresponding MDCT synthesis weighting window is chosen in such a way that after the combined effect of the analysis and synthesis windows this zone without folding has a weight 1 at least on the right side (without any attenuation).
  • Figures 4a to 4e show examples of analysis and synthesis window pairs that verify these criteria.
  • the left half of the transition MDCT weighting window is identical to the analysis and the synthesis, but this is not necessarily the case in all embodiments of the invention.
  • the synthesis window shape in the area where the weight of the MDCT component in the crossfade is zero is not important because these samples will not be used, it must not even be calculated.
  • the contribution of the analysis and synthesis windows in the weights of the crossfade can be equally unequally distributed, which would give different analysis and synthesis windows in the left half of the MDCT weighting window. transition.
  • the right half of the transition analysis and synthesis windows they are identical with those of the MDCT weighting windows normally used in the only areas encoded by transform coding.
  • the cross-fade between the signal reconstructed by the restricted predictive decoder and the signal reconstructed by the transform decoder must be performed on a zone without temporal folding. .
  • the combined effect of the analysis and synthesis windows can implicitly integrate the weights of the cross-fade of the component reconstructed by the transform decoder.
  • the MDCT mode is generally selected in quasi-stationary segments where the frequency domain coding is more efficient than in the time domain.
  • the mode decision is taken in open loop or driven externally to the encoder, without guarantee that the hypothesis of stationarity is verified.
  • the quantized synthesis filter 1 / A (z) transmitted during the previous frame, representing the spectral envelope of the signal can be reused in order to save bits for the MDCT coding.
  • the last synthesis filter transmitted in the CELP mode (the closest to the signal to be coded) is used.
  • the information used to code the signal in the transition frame is: the pitch (associated with the long-term excitation), the excitation vector (or innovation) as well as the associated gain (s) to excitement.
  • the decoded value of the pitch and / or its gain associated with the last sub-frame can also be reused because these parameters are also changing slowly in the stationary zones. This further reduces the amount of information to be transmitted during a transition from CELP to MDCT.
  • One of the desired properties of the transition from CELP to MDCT is that at asymptotically high rate, when the CELP and MDCT coders are almost perfect reconstruction, the coding performed in the transition frame (MDCT frame following a CELP frame) must be himself with almost perfect reconstruction.
  • the variants illustrated in FIGS. 4b and 4c ensure almost perfect reconstruction at very high speed.
  • the number of bits allocated to these parameters of the restricted predictive coding may be variable and proportional to the total bit rate.
  • the MDCT coding principle is modified so that no time-folding on the left is used in the MDCT window of the frame of transition.
  • This variant involves using a modified version of the DCT transformation at the heart of the MDCT transformation because the length of the folded signal is different, since the time folding (reducing the size of the block) is only performed on the right.
  • the invention is described in FIGS. 4a to 4d for the simplified case of identical analysis and synthesis windows MDCT in each frame (except the transition frame) coded by the MDCT mode.
  • the MDCT window may be asymmetrical as shown in Figure 4e.
  • the MDCT coding may use a window switching between at least one "long" window of typically 20-40 ms and a series of short windows of typically 5-10 ms ("window switching" in English).
  • the invention provides for the transmission of at least one bit to indicate a transition mode different from the method described above, in order to keep more CELP parameters and / or CELP subframes to be coded in the frame of transition from CELP to MDCT.
  • a first bit may indicate whether in the remainder of the bit stream the LPC filter is coded or the last received version may be used at the decoder, and another bit may signal the same for the pitch value. In the case where the encoding of a parameter is deemed necessary this can be done in differential with respect to the value transmitted in the last frame.
  • the coding method according to the invention can be illustrated in flowchart form as shown in FIG. 6a.
  • the current frame is a transition frame between predictive coding and transform coding.
  • step E602 a restricted predictive coding is applied to a first part of the current frame. This predictive coding is restricted compared to the predictive coding used for the previous frame.
  • the MDCT coding of the current frame is performed in step E603, in parallel for the entire current frame. At the end of this transform coding step, the signal s MDCT (n) is obtained.
  • the method comprises a step of cross-fading in step E604, after reconstruction of the signals, making it possible to perform a smooth transition between the predictive coding and the transform coding in the transition frame.
  • a reconstructed signal s MDCT ⁇ n) is obtained.
  • the decoding method When at the decoding, a previous frame has been decoded according to a predictive type decoding method and the current frame is to be decoded according to a transform type decoding method (verification in E605), the decoding method includes a decoding step by a restricted predictive decoding of a first part of the current frame, in E606. It also comprises a step of decoding by transforming the current frame into E607.
  • a step E608 is then performed, according to the embodiments described above, for effecting a combination of the decoded signals obtained, respectively s TR (n) and s MDCT (n), by cross- fading all or part of the current frame and thus obtain the decoded signal s MDCT ⁇ n) of the current frame.
  • the invention has been presented in the specific case of a transition from CELP to MDCT. It is obvious that this invention also applies in the case where the CELP coding is replaced by another type of coding, such as ADPCM, TCX, and where a transition coding on a part of the transition frame is performed using the encoding information of the frame preceding the transition MDCT frame.
  • CELP coding is replaced by another type of coding, such as ADPCM, TCX, and where a transition coding on a part of the transition frame is performed using the encoding information of the frame preceding the transition MDCT frame.
  • This device DISP comprises an input for receiving a digital signal SIG which in the case of the encoder is an input signal x (n ') and in the case of the decoder, the bit stream bst.
  • the device also comprises a processor PROC of digital signals adapted to perform coding / decoding operations in particular on a signal from the input E.
  • This processor is connected to one or more memory units MEM adapted to store information necessary for controlling the device for the device.
  • coding / decoding include instructions for implementing the coding method described above and in particular for implementing the steps of coding a previous frame of samples of the digital signal according to a predictive coding, coding of a current frame of samples of the digital signal according to a transform coding, such that a first part of the current frame is coded by a predictive coding restricted with respect to the predictive coding of the preceding frame, when the device is encoder type.
  • these memory units include instructions for implementing the decoding method described above and in particular for implementing the steps of predictive decoding of a previous frame of samples of the digital signal. received and coded according to a predictive coding, inverse transform decoding of a current frame of samples of the received digital signal and encoded by transform coding, and further a decoding step by a predictive decoding restricted with respect to the predictive decoding of the previous frame of a first part of the current frame.
  • These memory units may also include calculation parameters or other information.
  • a storage means readable by a processor, whether or not integrated into the encoder or decoder, possibly removable, stores a computer program implementing an encoding method and / or a decoding method according to the invention.
  • Figures 6a and 6b may for example illustrate the algorithm of such a computer program.
  • the processor is also adapted to store results in these memory units.
  • the device comprises an output S connected to the processor for providing an output signal SIG * which in the case of the encoder is a signal in the form of a bit stream bst and in the case of the decoder, an output signal x (n ' ).

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

L'invention se rapporte à un procédé de codage d'un signal numérique, comportant les étapes de codage (E601) d'une trame précédente d'échantillons du signal numérique selon un codage prédictif, de codage (E603) d'une trame courante d'échantillons du signal numérique selon un codage par transformée. Le procédé est tel qu'une première partie de la trame courante est en outre codée (E602) par un codage prédictif restreint par rapport au codage prédictif de la trame précédente en réutilisant au moins un paramètre du codage prédictif de la trame précédente et en ne codant que les paramètres non réutilisés de cette première partie de la trame courante. L'invention se rapporte également à procédé de décodage correspondant au procédé de codage décrit. Elle se rapporte à un codeur et à un décodeur mettant en œuvre respectivement les procédés de codage et décodage décrits.

Description

CODAGE DE SON À BAS RETARD ALTERNANT
CODAGE PRÉDICTIF ET CODAGE PAR TRANSFORMÉE
La présente invention concerne le domaine du codage des signaux numériques.
L'invention s'applique avantageusement au codage de sons présentant des alternances de parole et de musique.
Pour coder efficacement les sons de parole, les techniques de type CELP (« Code Excited Linear Prédiction ») sont préconisées. Pour coder efficacement les sons musicaux, on préconise plutôt les techniques de codage par transformée.
Les codeurs de type CELP sont des codeurs prédictifs. Ils ont pour but de modéliser la production de la parole à partir de divers éléments : une prédiction linéaire à court-terme pour modéliser le conduit vocal, une prédiction à long-terme pour modéliser la vibration des cordes vocales en période voisée, et une excitation dérivée d'un dictionnaire fixe (bruit blanc, excitation algébrique) pour représenter Γ "innovation" qui n'a pas pu être modélisée.
Les codeurs par transformée les plus utilisés (codeur MPEG AAC ou ITU-T G.722.1 Annexe C par exemple) utilisent des transformées à échantillonnage critique afin de compacter le signal dans le domaine transformé. On appelle « transformée à échantillonnage critique », une transformée pour laquelle le nombre de coefficients dans le domaine transformé est égal au nombre d'échantillons temporels analysés.
Une solution pour coder efficacement un signal contenant ces deux types de contenu, consiste à sélectionner au cours du temps la meilleure technique. Cette solution a notamment été préconisée par l'organisme de standardisation 3GPP (« 3rd Génération Partnership Project »), et une technique nommée AMR WB+ a été proposée.
Cette technique est basée sur une technologie CELP de type AMR-WB, plus spécifiquement de type ACELP (pour " Algebraic Code Excited Linear Prédiction" en Anglais) et un codage par transformée basé sur une transformée de Fourier à recouvrement dans un modèle de type TCX (pour " Transform Coded eXcitation" en anglais).
Le codage ACELP et le codage TCX sont tous les deux des techniques de type linéaire prédictif. Il est à noter que le codée AMR-WB+ a été développé pour les services 3GPP PSS (pour "Packet Switched Streaming" en anglais), MBMS ( pour "Multimedia Broadcast/Multicast Service" en anglais) et MMS (pour "Multimedia Messaging Service" en anglais), autrement dit pour des services de diffusion et stockage, sans contraintes fortes sur le retard algorithmique. Cette solution souffre d'une qualité insuffisante sur la musique. Cette insuffisance vient particulièrement du codage par transformée. En particulier, la transformée de Fourier à recouvrement n'est pas une transformation à échantillonnage critique, et de ce fait, elle est sous optimale.
De plus, les fenêtres utilisées dans ce codeur ne sont pas optimales vis-à-vis de la concentration d'énergie : les formes fréquentielles de ces fenêtres quasi-rectangulaires sont sous-optimales.
Une amélioration du codage AMR-WB+ combinée avec les principes du codage MPEG AAC (pour "Advanced Audio Coding" en anglais) est donnée par le codée MPEG USAC (pour "Unified Speech Audio Coding" en anglais), qui est encore en cours de développement à l'ISO/MPEG. Les applications visées par MPEG USAC ne sont pas conversationnelles, mais correspondent à des services de diffusion et stockage, sans contraintes fortes sur le retard algorithmique.
La version initiale du codée USAC, appelée RMO (Référence Model 0), est décrite dans l'article de M. Neuendorf et al., A Novel Scheme for Low Bitrate Unified Speech and Audio Coding - MPEG RMO, 7-10 May 2009, 126th AES Convention. Ce codée RMO alterne entre plusieurs modes de codage:
• Pour les signaux de type parole: modes LPD (pour "Linear Prédictive Domain" en anglais) comprenant deux modes différents dérivés du codage AMR-WB+:
- Un mode ACELP
- Un mode TCX appelé wLPT (pour "weighted Linear Prédictive Transform" en anglais) utilisant une transformée de type MDCT (contrairement au codée AMR-WB+).
· Pour les signaux de type musique: mode FD (pour "Frequency Domain" en anglais) utilisant un codage par transformée MDCT (pour "Modified Discrète Cosine Transform" en anglais) de type MPEG AAC (pour "Advanced Audio Coding" en anglais) sur 1024 échantillons.
Comparativement au codée AMR-WB+ les différences majeures apportées par le codage USAC RMO pour la partie mono sont l'utilisation d'une transformée à décimation critique de type MDCT pour le codage par transformée et la quantification du spectre MDCT par quantification scalaire avec codage arithmétique. Il est à noter que la bande acoustique codée par les différents modes (LPD, FD) dépend du mode sélectionné, ce qui n'est pas le cas dans le codée AMR-WB+ où les modes ACELP et TCX opèrent à la même fréquence d'échantillonnage interne. De plus, la décision de mode dans le codée USAC RMO est réalisée en boucle ouverte (ou "open-loop" en anglais) pour chaque trame de 1024 échantillons. On rappelle qu'on appelle une décision en boucle fermée ("closed loop" en anglais) est effectuée en exécutant les différents modes de codage en parallèle et en choisissant a posteriori le mode qui donne le meilleur résultat selon un critère prédéfini. Dans le cas d'une décision en boucle ouverte la décision est prise a priori en fonction des données et des observations disponibles mais sans tester si cette décision est optimale ou non.
Dans le codée USAC, les transitions entre modes LPD et FD sont cruciales pour assurer une qualité suffisante sans défaut de commutation, sachant que chaque mode (ACELP, TCX, FD) a une "signature" spécifique (en termes d'artefacts) et que les modes FD et LPD sont de nature différentes - le mode FD repose sur un codage par transformée dans le domaine du signal, tandis que les modes LPD utilisent un codage linéaire prédictif dans le domaine perceptuellement pondéré avec des mémoires de filtre à gérer correctement. La gestion des commutations intermodes dans le codée USAC RMO est détaillée dans l'article de J. Lecomte et al., "Efficient cross-fade Windows for transitions between LPC-based and non-LPC based audio coding", 7-10 May 2009, 126th AES Convention. Comme expliqué dans cet article, la difficulté principale réside dans les transitions entre modes LPD vers FD et vice versa. On ne retient ici que le cas des transitions d' ACELP vers FD.
Pour bien comprendre le fonctionnement, on rappelle ici le principe du codage par transformée MDCT au travers d'un exemple typique de réalisation.
Au codeur la transformation MDCT se divise entre trois étapes:
• Pondération du signal par une fenêtre appelé ici "fenêtre MDCT" de longueur 2M
• Repliement temporel (ou "time-domain aliasing" en anglais) pour former un bloc de longueur M
• Transformation DCT (pour "Discrète Cosine Transform" en anglais) de longueur M
La fenêtre MDCT est divisée en 4 portions adjacentes de longueurs égales M/2, appelées "quarts".
Le signal est multiplié par la fenêtre d'analyse puis les repliements sont effectués : le premier quart (fenêtré) est replié (c'est-à-dire inversé dans le temps et mis en recouvrement) sur le deuxième quart et le quatrième quart est replié sur le troisième. Plus précisément, le repliement d'un quart sur un autre est effectué de la façon suivante : Le premier échantillon du premier quart est additionné (ou soustrait) au dernier échantillon du deuxième quart, le deuxième échantillon du premier quart est additionné (ou soustrait) au avant-dernier échantillon du deuxième quart, et ainsi de suite jusqu'au dernier échantillon du premier quart qui est additionné (ou soustrait) au premier échantillon du deuxième quart.
On obtient donc, à partir de 4 quarts, 2 quarts repliés où chaque échantillon est le résultat d'une combinaison linéaire de 2 échantillons du signal à coder. Cette combinaison linéaire est appelée repliement temporel.
Ces 2 quarts repliés sont ensuite codés conjointement après transformation DCT.
Pour la trame suivante on se décale d'une moitié de fenêtre (soit 50% de recouvrement), les troisième et quatrième quarts de la trame précédente deviennent alors le premier et deuxième quart de la trame courante. Après repliement, on envoie une deuxième combinaison linéaire des mêmes paires d'échantillons comme dans la trame précédente, mais avec des poids différents.
Au décodeur, après transformation DCT inverse on obtient donc la version décodée de ces signaux repliés. Deux trames consécutives contiennent le résultat de 2 repliements différents des mêmes quarts, c'est à dire pour chaque paire d'échantillons on a le résultat de 2 combinaisons linéaires avec des poids différents mais connus : un système d'équation est donc résolu pour obtenir la version décodée du signal d'entrée, le repliement temporel peut être ainsi supprimé en utilisant 2 trames décodées consécutives.
La résolution des systèmes d'équations mentionnées est en général faite par dépliement, multiplication par une fenêtre de synthèse judicieusement choisie puis addition-recouvrement des parties communes. Cette addition-recouvrement assure en même temps la transition douce (sans discontinuité due aux erreurs de quantification) entre 2 trames décodées consécutives, en effet cette opération se comporte comme un fondu enchaîné. Quand la fenêtre pour le premier quart ou le quatrième quart est à zéro pour chaque échantillon, on parle d'une transformation MDCT sans repliement temporel dans cette partie de la fenêtre. Dans ce cas la transition douce n'est pas assurée par la transformation MDCT, elle doit être faite par d'autres moyens comme par exemple un fondu enchaîné extérieur.
Il est à noter que des variantes de mise en œuvre de la transformation MDCT existent, en particulier sur la définition de la transformée DCT, sur la façon de replier temporellement le bloc à transformer (par exemple, on peut inverser les signes appliqués aux quarts repliés à gauche et droite, ou replier les deuxième et troisième quart sur respectivement les premiers et quatrième quarts), etc. Ces variantes ne changent pas le principe de l'analyse-synthèse MDCT avec la réduction du bloc d'échantillons par fenêtrage, repliement temporel puis transformation et enfin fenêtrage, repliement et addition-recouvrement.
Dans le cas du codeur USAC RMO décrit dans l'article de Lecomte et al., la transition entre une trame codée par un codage ACELP et une trame codée par un codage FD, s'effectue de la façon suivante:
Une fenêtre de transition pour le mode FD est utilisée avec un recouvrement à gauche de 128 échantillons, comme illustrée à la figure 1. Le repliement temporel sur cette zone de recouvrement est annulé en introduisant un repliement temporel "artificiel" à droite de la trame ACELP reconstruite. La fenêtre MDCT servant à la transition, a une taille de 2304 échantillons et la transformation DCT opère sur 1152 échantillons alors que normalement les trames du mode FD sont codées avec une fenêtre de taille de 2048 échantillons et une transformation DCT de 1024 échantillons. Ainsi la transformation MDCT du mode FD normal n'est pas directement utilisable pour la fenêtre de transition, le codeur doit intégrer également une version modifiée de cette transformation ce qui complexifie la mise en œuvre de la transition pour le mode FD.
Ces techniques de codage de l'état de l'art AMR-WB+ ou USAC ont des retards algorithmiques de l'ordre de 100 à 200 ms. Ces retards sont incompatibles avec des applications conversationnelles pour lesquelles le retard de codage est en général de l'ordre de 20-25 ms pour les codeurs de parole pour les applications mobiles (ex: GSM EFR, 3GPP AMR et AMR-WB) et de l'ordre de 40 ms pour les codeurs par transformée conversationnels pour la vidéoconférence (ex: UIT-T G.722.1 Annexe C et G.719).
II existe donc un besoin d'un codage alternant les techniques de codage prédictif et par transformée pour des applications de codage de sons présentant des alternances de parole et de musique avec une bonne qualité de codage à la fois de la parole et de la musique et un retard algorithmique compatible avec des applications conversationnelles, typiquement de l'ordre de 20 à 40 ms pour des trames de 20 ms.
La présente invention vient améliorer la situation.
A cet effet, la présente invention propose un procédé de codage d'un signal son numérique, comportant les étapes de :
- codage d'une trame précédente d'échantillons du signal numérique selon un codage prédictif ; - codage d'une trame courante d'échantillons du signal numérique selon un codage par transformée.
Le procédé est tel qu'une première partie de la trame courante est codée par un codage prédictif restreint par rapport au codage prédictif de la trame précédente en réutilisant au moins un paramètre du codage prédictif de la trame précédente et en ne codant que les paramètres non réutilisés de cette première partie de la trame courante.
Ainsi, pour un codage alternant des codages de type prédictif et des codages par transformée, lors du passage d'une trame codée selon un codage prédictif et une trame codée selon un codage par transformée, une trame de transition est ainsi prévue. Le fait que la première partie de la trame courante est également codée par un codage prédictif permet de récupérer des termes de repliement qu'il ne serait pas possible de récupérer uniquement par un codage par transformée puisque la mémoire du codage par transformée pour cette trame de transition n'est pas disponible, la trame précédente n'ayant pas été codée par transformée.
Le fait d'utiliser de plus un codage prédictif restreint, permet de limiter l'impact sur le débit de codage de cette partie. En effet, seuls les paramètres non réutilisés de la trame précédente, sont codés pour la partie de la trame courante codée par le codage prédictif restreint.
De plus, le codage de cette partie de trame n'induit pas de retard supplémentaire puisque cette première partie se situe au début de la trame de transition.
Enfin, ce type de codage permet de rester avec une taille de fenêtre de pondération de longueur identique pour le codage par transformée que ce soit pour le codage de la trame de transition ou pour le codage des autres trames codées par transformée. La complexité du procédé de codage en est donc réduite.
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.
Dans un mode de réalisation particulier, le codage prédictif restreint utilise un filtre de prédiction recopié de la trame précédente de codage prédictif.
L'utilisation du codage par transformée est généralement sélectionné lorsque les segments codés sont quasi-stationnaires. Ainsi, le paramètre d'enveloppe spectrale du signal peut être réutilisé d'une trame à l'autre pour une durée d'une partie de la trame, par exemple, une sous-trame, sans qu'il y ait un impact important sur la qualité du codage. L'utilisation du filtre de prédiction utilisé pour la trame précédente n'impacte donc pas la qualité du codage et permet de s'affranchir de bits supplémentaires pour la transmission de ses paramètres.
Dans une variante de réalisation, le codage prédictif restreint utilise en outre une valeur décodée du pitch et/ou de son gain associé de la trame précédente de codage prédictif.
Ces paramètres évoluent peu d'une trame à l'autre. L'utilisation de ces mêmes paramètres d'une trame à l'autre impactera peu la qualité de codage et simplifiera d'autant plus le codage prédictif de la sous-trame.
Dans une autre variante de réalisation, certains paramètres de codage prédictif utilisé pour le codage prédictif restreint sont quantifiés en mode différentiel par rapport à des paramètres décodés de la trame précédente de codage prédictif.
Ainsi, ceci permet de simplifier encore le codage prédictif de la sous-trame de transition.
Selon un mode de réalisation particulier, le procédé comporte une étape d'obtention des signaux reconstruits issus des codages et décodages locaux prédictif et par transformée de la première sous-trame de la trame courante et de combinaison par un fondu enchaîné de ces signaux reconstruits.
Ainsi, la transition de codage dans la trame courante est douce et n'induit pas d'artefacts gênants.
Selon un mode de réalisation particulier, ledit fondu enchaîné des signaux reconstruits est réalisé sur une portion de la première partie de la trame courante en fonction de la forme de la fenêtre de pondération du codage par transformée.
Ceci, pour une meilleure adaptation du codage par transformée.
Selon un mode de réalisation particulier, ledit fondu enchaîné des signaux reconstruits est réalisé sur une portion de la première partie de la trame courante, ladite portion ne contenant pas de repliement temporel.
Ceci permet de réaliser une reconstruction parfaite des signaux en l'absence d'erreur de quantification, dans le cas où le signal reconstruit issus du codage par transformée de la première partie de la trame courante ne comporte pas de repliement temporel.
Dans un mode particulier de réalisation, pour un codage à faible retard, le codage par transformée utilise une fenêtre de pondération comportant un nombre choisi de coefficients de pondération successifs de valeur nulle en fin et en début de fenêtre. Dans un autre mode particulier de réalisation, pour améliorer le codage à faible retard, le codage par transformée utilise une fenêtre de pondération asymétrique comportant un nombre choisi de coefficients de pondération successifs de valeur nulle en au moins une extrémité de la fenêtre.
La présente invention se rapporte également à un procédé de décodage d'un signal son numérique, comportant les étapes de :
- décodage prédictif d'une trame précédente d'échantillons du signal numérique reçue et codée selon un codage prédictif ;
- décodage par transformée inverse d'une trame courante d'échantillons du signal numérique reçue et codée selon un codage par transformée ;
le procédé est tel qu'il comporte en outre une étape de décodage par un décodage prédictif restreint par rapport au décodage prédictif de la trame précédente d'une première partie de la trame courante.
Le procédé de décodage est le pendant du procédé de codage et apporte les mêmes avantages que ceux décrits pour le procédé de codage.
Ainsi, dans un mode particulier de réalisation, le procédé de décodage comporte une étape de combinaison par un fondu enchaîné des signaux décodés par transformée inverse et par décodage prédictif restreint pour au moins une portion de la première partie de la trame courante reçue et codée selon un codage prédictif restreint, en réutilisant au moins un paramètre du décodage prédictif de la trame précédente et en ne décodant que les paramètres reçus pour cette première partie de la trame courante.
Selon un mode privilégié, le décodage prédictif restreint utilise un filtre de prédiction décodé et utilisé par le décodage prédictif de la trame précédente.
Dans une variante de réalisation, le décodage prédictif restreint utilise en outre une valeur décodée du pitch et/ou de son gain associé du décodage prédictif de la trame précédente.
La présente invention se rapporte également à un codeur de signal son numérique, comportant:
- un module de codage prédictif pour coder une trame précédente d'échantillons du signal numérique;
- un module de codage par transformée pour coder une trame courante d'échantillons du signal numérique. Le codeur comporte en outre un module de codage prédictif restreint par rapport au codage prédictif de la trame précédente pour coder une première partie de la trame courante, en réutilisant au moins un paramètre du codage prédictif de la trame précédente et en ne codant que les paramètres non réutilisés de cette première partie de la trame courante.
De même l'invention se rapporte à un décodeur de signal son numérique, comportant:
- un module de décodage prédictif pour décoder une trame précédente d'échantillons du signal numérique reçue et codée selon un codage prédictif ;
- un module de décodage par transformée inverse pour décoder une trame courante d'échantillons du signal numérique reçue et codée selon un codage par transformée. Le décodeur est tel qu'il comporte en outre un module de décodage prédictif restreint par rapport au décodage prédictif de la trame précédente pour décoder une première partie de la trame courante reçue et codée selon un codage prédictif restreint, en réutilisant au moins un paramètre du décodage prédictif de la trame précédente et en ne décodant que les paramètres reçus pour cette première partie de la trame courante.
Enfin l'invention se rapporte à un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé de codage tel que décrit précédemment et/ou de décodage tel que décrit précédemment, lorsque ces instructions sont exécutées par un processeur.
L'invention se rapporte aussi à un moyen de stockage, lisible par un processeur, intégré ou non au codeur ou au décodeur, éventuellement amovible, mémorisant un programme informatique mettant en œuvre un procédé de codage et/ou un procédé de décodage tels que décrits précédemment.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des figures annexées parmi lesquelles :
- la figure 1 illustre un exemple de fenêtre de transition de l'état de l'art pour la transition entre le codage CELP et le codage FD du codée MPEG USAC, décrit précédemment;
- la figure 2 illustre sous forme de schéma bloc, un codeur et un procédé de codage selon un mode de réalisation de l'invention;
- la figure 3 a illustre un exemple de fenêtre de pondération utilisé pour le codage par transformée de l'invention;
- la figure 3b illustre le mode de codage par transformée à recouvrement utilisé par l'invention; - la figure 4a illustre la transition entre une trame codée avec un codage prédictif et une trame codée par transformée selon un mode de réalisation du procédé de l'invention;
- les figures 4b, 4c et 4d illustrent la transition entre une trame codée avec un codage prédictif et une trame codée par transformée selon deux variantes de réalisation du procédé de l'invention;
- la figure 4e illustre la transition entre une trame codée avec un codage prédictif et une trame codée par transformée selon une des variantes de réalisation du procédé de l'invention pour le cas où la transformation MDCT utilise des fenêtres asymétriques;
- la figure 5 illustre un décodeur et un procédé de décodage selon un mode de réalisation de l'invention;
- les figures 6a et 6b illustrent sous forme d'organigramme les principales étapes du procédé de codage, respectivement du procédé de décodage selon l'invention; et
- la figure 7 illustre un mode possible de réalisation matérielle d'un codeur et d'un décodeur selon l'invention.
La figure 2 représente un codeur multi-modes CELP/MDCT dans lequel le procédé de codage selon l'invention est mis en œuvre.
Cette figure représente les étapes de codage effectuées pour chaque trame de signal. Le signal d'entrée, noté χ(η ') , est échantillonné à 16 kHz et la longueur de trame est de 20 ms. L'invention se généralise aux cas où d'autres fréquences d'échantillonnage sont utilisés, par exemple pour des signaux en bande super-élargie échantillonnés à 32 kHz, avec éventuellement une découpe en deux sous-bandes pour appliquer l'invention dans la bande basse. La longueur de trame est ici choisie pour correspondre à celle des codeurs mobiles tels que 3GPP AMR et AMR-WB, cependant d'autres longueurs sont également possibles (exemple: 10 ms).
Par convention les échantillons de la trame courante correspondent à x(n ') , n ' = 0, ..., 319 . Ce signal d'entrée est d'abord filtré par un filtre passe-haut (bloc 200), afin d'atténuer les fréquences inférieures à 50 Hz et éliminer la composante continue, puis sous-échantillonné à la fréquence interne de 12,8 kHz (bloc 201) pour obtenir une trame du signal, s(n) de 256 échantillons. On considère que le filtre de décimation (bloc 201) est réalisé à faible retard au moyen d'un filtre à réponse impulsionnelle finie (typiquement d'ordre 60). Dans le mode de codage CELP, la trame courante, s (ri) de 256 échantillons est codée selon le mode de réalisation privilégié de l'invention par un codeur CELP inspiré du codage ACELP multi-débits (de 6,6 à 23,05 kbit/s) à 12,8 kHz décrit dans la norme 3GPP TS 26.190 ou de façon équivalente UIT-T G.722.2 - cet algorithme est appelé AMR-WB (pour "Adaptive MultiRate - WideBand" en anglais).
Le signal s (ri) est d'abord pré-accentué (bloc 210) par 1— Xz~l avec ££ =0,68, puis codé (bloc 211) par l'algorithme ACELP (tel que décrit à la section 5 de la norme 3GPP TS 26.190).
Les trames successives de 20 ms contiennent 256 échantillons temporels à 12,8 kHz. Le codage CELP utilise une mémoire (ou buffer) buf (ri) , n =—64, ..., 319 , de 30 ms de signal: 5 ms de signal passé ("lookback" en anglais), 20 ms de trame courante et 5 ms de signal futur ("lookahead" en anglais).
Le signal obtenu après pré-accentuation de s (ri) est copié dans ce buffer aux positions n = 64, ..., 319 de sorte que la trame courante correspondant aux positions n = 0, ..., 255 inclut 5 ms de signal passé ( n = 0, ..., 63 ) et 15 ms du "nouveau" signal à coder ( n = 64, ..., 255 ) - c'est dans la définition du buffer que le codage CELP appliqué ici se différencie du codage ACELP de la norme AMR-WB car le "lookahead" est ici exactement de 5 ms sans compensation du retard de filtre de sous-échantillonnage (bloc 201).
A partir de ce buffer, le codage CELP (bloc 211) comprend plusieurs étapes mises en œuvre de façon similaire au codage ACELP de la norme AMR-WB ; les principales étapes sont données ici à titre d'exemple de réalisation:
a) Analyse LPC : Une fenêtre asymétrique de 30ms pondère le buffer buf (ri) , puis une autocorrélation est calculée. Les coefficients de prédiction linéaire (pour un ordre 16) sont ensuite calculés via l'algorithme de Levinson-Durbin. On obtient ainsi le filtre de prédiction linéaire LPC A(z)■
Une conversion des coefficients LPC en coefficients spectraux ISP ("Immittance spectral pairs" en anglais) est effectuée ainsi qu'une quantification (qui donne le filtre quantifié Â(z) ).
Finalement un filtre LPC pour chaque sous-trame est calculé par interpolation par sous-trame entre le filtre de la trame courante et le filtre de la trame précédente. Dans cette étape d'interpolation on suppose ici que la trame passée a été codée par le mode CELP, dans le cas contraire on suppose que les états du codeur CELP ont été mis à jour. b) Pondération perceptuelle du signal : le signal pré-accentué est ensuite pondéré par le filtre défini par ψ(ζ) = Α(ζ / γ) /(1 - ζ~1 ) ού a =0,68 et ^=0,92.
c) Calcul du pitch en boucle ouverte en cherchant le maximum de la fonction d'autocorrélation du signal pondéré (éventuellement sous-échantillonné pour réduire la complexité).
d) Recherche de Γ "excitation adaptative" en boucle fermée par analyse par synthèse parmi les valeurs en voisinage du pitch obtenu en boucle ouverte pour chacune des sous-trames de la trame courante. Un filtrage passe-bas de l'excitation adaptative est également effectué ou non. Un bit est donc produit pour indiquer l'application ou non du filtre. Cette recherche donne la composante notée v(n) . Le pitch et le bit associé au filtre de pitch sont codés dans le train binaire.
e) Recherche de l'innovation ou excitation fixe notée c(n) , en boucle fermée également par analyse par synthèse. Cette excitation est composée des zéros et d'impulsions signées, les positions et signes de ces impulsions sont codés dans le train binaire.
f) Les gains de l'excitation adaptative et de l'excitation algébrique, gp , gc respectivement, sont codés conjointement dans le train binaire.
Dans cet exemple de réalisation, le codeur CELP divise chaque trame de 20 ms en 4 sous-trames des 5 ms et le filtre LPC quantifié correspond à la dernière (quatrième) sous-trame.
Le signal reconstruit sCELP (n) est obtenu par le décodeur local inclut dans le bloc 211, par reconstruction de l'excitation u(n) = gpv(n) + gcc(n) , éventuellement post- traitement de u(n) , et filtrage par le filtre de synthèse quantifié 1/ (z) (comme décrit en Section 5.10 de la norme 3GPP TS 26.190). Ce signal est enfin désaccentué (bloc 212) par le filtre de fonction de transfert l/ l— CXz 1 pour obtenir le signal décodé CELP
SCELP (n ■■
Bien évidemment, d'autres variantes du codage CELP que le mode de réalisation décrit précédemment peuvent être utilisées sans affecter la nature de l'invention.
Dans une variante le bloc 211 correspond au codage CELP à 8kbit/s décrit dans la norme UIT-T G.718 selon un des 4 modes de codage CELP possibles: mode non voisé (UC), mode voisé (VC), mode transition (TC) ou mode générique (GC). Dans une autre variante une autre réalisation du codage CELP est choisie, par exemple le codage ACELP dans le mode interopérable avec le codage AMR-WB de la norme UIT-T G.718. La représentation des coefficients LPC sous forme d'ISF peut être remplacée par les paires de raies spectrales (LSF) ou d'autres représentations équivalentes.
En cas de sélection du mode CELP le bloc 211 livre les indices CELP codées ICELP à multiplexer dans le train binaire.
Dans le mode de codage MDCT de la figure 2, la trame courante, s(n) , n = 0, ..., 255 , est d'abord transformée (bloc 220) selon un mode de réalisation privilégié pour obtenir les coefficients transformés suivants: - l
Figure imgf000015_0001
où M = 256 est la longueur de trame et Mz = 96 est le nombre de zéros à gauche et à droite dans la fenêtre w(n) . La fenêtre w(n) est choisie dans le mode de réalisation privilégié comme une fenêtre "bas retard" symétrique de la forme:
0 0 < m < ^ -^
Figure imgf000015_0002
Figure imgf000015_0003
0 3— + ^≤m < 2M
2 2
Cette fenêtre bas retard wshift (m) , m = 0, ..., 511 , pour =256 et Lov=64, s'applique à la trame courante correspondant aux indices n = 0, ..., 255 en prenant w(n) = w {n + 96) , ce qui suppose un recouvrement de 64 échantillons (5 ms). Cette fenêtre est illustrée à la figure 3a. On remarque que la fenêtre a 2(M- Mz)=320 échantillons non nuls, soit 25 ms à 12,8 kHz. La figure 3b illustre comment la fenêtre w(n) s'applique à chaque trame temporelle de 20 ms, en prenant w(n) = wshift (n + 96) .
Cette fenêtre s'applique à la trame courante de 20 ms ainsi qu'à un signal futur
"lookahead" de 5 ms. On remarquera que le codage MDCT est donc synchronisé au codage CELP dans la mesure où le décodeur MDCT peut reconstruire par addition- recouvrement l'intégralité de la trame courante, grâce au recouvrement à gauche et au "plat" intermédiaire de la fenêtre MDCT, et il dispose également d'un recouvrement sur la trame future de 5 ms. On note ici pour cette fenêtre que la trame MDCT courante induit un repliement temporel sur la première partie de la trame (en fait sur les 5 premières ms) où s'effectue le recouvrement.
Il est important de remarquer que les trames reconstruites par les codeurs/décodeurs CELP et MDCT ont des supports temporels coïncidents. Cette synchronisation temporelle des reconstructions facilite la commutation de modèles de codage.
Dans des variantes de l'invention, d'autres fenêtres MDCT que w(n) sont également possibles. On ne détaille pas ici la mise en œuvre du bloc 220. Un exemple est donné dans la norme UIT-T G.718 (Clauses 6.11.2 et 7.10.6).
Les coefficients S(k) , k = 0, ..., 255 , sont codés par le bloc 221 qui est inspiré, dans un mode de réalisation privilégié, du codage "TDAC" (pour "Time Domain Aliasing Cancellation" en anglais) de la norme UIT-T G.729.1. On note ici Btot le budget de bits total alloué dans chaque trame au codage MDCT. Le spectre discret S(k) est divisé en sous-bandes, puis une enveloppe spectrale, correspondant à la r.m.s (pour "root mean square" en anglais, c'est-à-dire la racine carrée de la moyenne de l'énergie) par sous-bande, est quantifiée dans le domaine logarithmique par pas de 3 dB et codée par un codage de entropique. Le budget de bits utilisé par ce codage d'enveloppe est noté ici Benv ; il est variable à cause du codage entropique.
A la différence du codage "TDAC" de la norme G.729.1, un nombre de bits prédéterminé noté BinJ (fonction du budget Btot ) est réservé pour le codage de niveaux d'injection de bruit afin de "remplir" les coefficients codés à une valeur nulle par du bruit et masquer les artefacts de "bruit musical" qui seraient autrement audibles. Ensuite les sous-bandes du spectre S (k) sont codées par quantification vectorielle sphérique avec le budget restant de Btot— Benv— BinJ bits. Cette quantification n'est pas détaillée, tout comme l'allocation adaptative des bits par sous-bandes, car ces détails dépasse le cadre de l'invention. En cas de sélection du mode MDCT ou du mode transition, le bloc 221 livre les indices MDCT codées IMDCT à multiplexer dans le train binaire.
Le bloc 222 décode le train binaire produit par le bloc 221 afin de reconstruire le spectre décodé S(k) , k = 0, ..., 255 . Enfin le bloc 223 reconstruit la trame courante pour trouver le signal sMDCT («) , « = 0, ..., 255 .
Du fait de la nature du codage par transformée MDCT (recouvrement entre les trames), deux cas de figure sont à envisager dans le codage MDCT d'une trame courante:
- Premier cas: La trame précédente a été codée par un mode MDCT. Dans ce cas, la mémoire (ou états) nécessaire à la synthèse MDCT dans le décodeur local (et distant) est disponible et l'opération d'addition/recouvrement utilisée par la MDCT pour annuler le repliement temporel est possible. La trame MDCT est correctement décodée sur toute la trame. Il s'agit ici du fonctionnement "normal" du codage/décodage MDCT.
- Deuxième cas: La trame précédente a été codée par un mode CELP. Dans ce cas, la reconstruction de la trame au décodeur (local et distant) n'est pas complète. Comme expliqué précédemment, la MDCT utilise pour la reconstruction une opération d'addition/recouvrement entre la trame courante et la trame précédente (avec des états stockés en mémoire) pour supprimer le repliement temporel de la trame à décoder et aussi éviter les effets de blocs et augmenter la résolution fréquentielle par l'utilisation de fenêtres plus longues qu'une trame. Avec les fenêtres MDCT les plus couramment utilisées (type sinusoïdal) la distorsion du signal due au repliement temporel est plus forte à l'extrémité de la fenêtre et quasi nulle au milieu de la fenêtre. Dans ce cas précis, si la trame précédente est de type CELP, la mémoire MDCT n'est pas disponible car la dernière trame n'a pas été codée par transformée MDCT.
La zone repliée du début de la trame correspond à la zone du signal dans la trame MDCT qui est perturbée par le repliement temporel inhérent à la transformation MDCT.
Ainsi, lorsque la trame courante est codée par le mode MDCT (bloc 220 à 223) et que la trame précédente a été codée par le mode CELP (blocs 210 à 212), un traitement spécifique de transition de CELP à MDCT est nécessaire. Dans ce cas, comme l'indique la figure 4a, la première trame est codée par le mode CELP et peut être intégralement reconstruite par le décodeur CELP (local ou distant). Par contre, la deuxième trame est codée par le mode MDCT ; on considère cette deuxième trame comme étant la trame courante. La zone de recouvrement à gauche de la fenêtre MDCT pose problème car la partie complémentaire (avec repliement temporel) de cette fenêtre n'est pas disponible puisque la trame précédente n'a pas été codée par MDCT. Le repliement dans cette partie gauche de la fenêtre MDCT ne peut donc pas être supprimé.
Pour cette transition, le procédé de codage selon l'invention comporte une étape de codage d'un bloc d'échantillons de longueur inférieure ou égale à la longueur de la trame, choisi par exemple comme une sous-trame supplémentaire de 5ms, dans la trame courante codée par transformée (MDCT), représentant la zone de repliement à gauche de la trame courante, par un codeur prédictif de transition ou codage prédictif restreint. Il est à noter que le type de codage dans la trame précédent la trame MDCT de transition pourrait être un autre type de codage que le codage CELP, par exemple un codage MICDA ou un codage TCX. L'invention s'applique dans le cas général où la trame précédente a été codée par un codage ne mettant pas à jour les mémoires MDCT dans le domaine du signal et l'invention implique de coder un bloc d'échantillons correspondant à une partie de la trame courante par un codage de transition utilisant les informations du codage de la trame précédente.
Le codage prédictif de transition est restreint par rapport au codage prédictif de la trame précédente; Il consiste à utiliser les paramètres stables de la trame précédente codée par un codage prédictif et de ne coder que quelques paramètres minimaux pour la sous-trame supplémentaire dans la trame courante de transition.
Ainsi, ce codage prédictif restreint réutilise au moins un paramètre du codage prédictif de la trame précédente et ne code donc que les paramètres non réutilisés. En ce sens, on peut parler d'un codage restreint (par la restriction des paramètres codés).
Les modes de réalisation illustrés sur les figures 4a à 4e, supposent que le recouvrement à gauche de la première fenêtre MDCT est inférieur ou égal à la longueur de la sous-trame (5 ms). Dans le cas contraire une ou plusieurs sous-trame(s) CELP supplémentaire(s) doit (doivent) être également codée(s), des dictionnaires d'excitation adaptatifs et/ou fixes de taille adaptée à la longueur de recouvrement doivent être utilisés.
Sur les figures 4a à 4e le trait mixte (lignes alternant des points et traits) correspondent aux lignes de repliement de codage MDCT et aux lignes de dépliement de décodage MDCT. En haut sur ces figures les lignes en gras séparent les trames à l'arrivée de l'encodeur, on peut commencer l'encodage d'une nouvelle trame quand une trame ainsi définie est entièrement disponible. Il est important de remarquer que ces lignes en gras au codeur ne correspondent pas à la trame courante mais au bloc de nouveaux échantillons arrivant pour chaque trame ; la trame courante est en fait retardée de 5 ms. En bas, les lignes en gras séparent les trames décodées à la sortie du décodeur.
Le traitement spécifique de la trame de transition correspond aux blocs 230 à 232 et au bloc 240 de la figure 2. Ce traitement est effectué lorsque le mode précédent, noté modepre, c'est-à-dire le type de codage de la trame précédente (CELP ou MDCT), est de type CELP.
Le codage de la trame courante de transition entre codage CELP et MDCT (seconde trame des figures 4a à 4e), repose sur plusieurs étapes mises en œuvre par le bloc 231 :
- Codage MDCT de la trame : dans l'exemple de réalisation illustrée en haut à la figure 4a, la fenêtre choisie pour ce codage est la fenêtre w(n) définie précédemment, avec une longueur effective de 25ms. D'autres formes de fenêtres pour remplacer w(n) dans la trame MDCT de transition (première trame MDCT suivant une trame CELP) sont illustrées en figures 4b, 4c, 4d et 4e avec une même longueur effective qui peut être différente de 25 ms. Pour le cas de la figure 4a, les 20ms de la trame courante sont placés au début de la portion non nulle de la fenêtre, tandis que les 5 ms restantes sont les 5 premières millisecondes de la future trame (« lookahead »). Après le calcul de la MDCT (par repliement et transformée en cosinus discret (DCT)), on obtient donc les 256 échantillons du spectre MDCT. La quantification de ces coefficients est ici faite par transmission de l'enveloppe spectrale et quantification vectorielle sphérique pour chaque sous-bande normalisée de l'enveloppe. La différence avec la description précédente du codage MDCT "normal" est que le budget alloué à la quantification vectorielle dans la trame de transition n'est plus de Btot - Benv - Binj mais de Btot - Benv - Binj - Btram , Btrans représentant le nombre de bits nécessaires à la transmission des informations manquantes pour générer l'excitation d'entrée du filtre 1/ À(z) dans le codeur de transition. Ce nombre de bits, Btram , est variable en fonction du débit total du codeur.
- Décodage du spectre quantifié (en bas sur les figures 4a à 4e) : après reconstruction du spectre quantifié et l'opération de transformation MDCT inverse partielle (par dépliement et multiplication par la fenêtre de synthèse mais sans addition- recouvrement car les mémoires MDCT ne sont pas disponibles à partir de la trame précédente), on obtient le signal temporel dans lequel les 5 premières millisecondes (première sous-trame) contiennent du repliement temporel, puis 15ms du signal reconstruit, les 5 dernières millisecondes servant enfin à alimenter la mémoire MDCT nécessaire à la reconstruction de la prochaine trame, si celle-ci est de type MDCT ; dans le cas où la prochaine trame est de type CELP, cette mémoire est en général inutile.
- Codage de la première sous-trame (zone grisée marquée « TR » des figures 4a à 4e) par le codage de transition comportant un codage prédictif restreint.
Ce codage prédictif restreint comporte les étapes suivantes.
Le filtre A(z) de la première sous-trame est par exemple obtenu par recopie du filtre A(z) de la quatrième sous-trame de la trame précédente. On économise ainsi le calcul de ce filtre et on économise le nombre de bits associé à son codage dans le train binaire.
Ce choix est justifié car dans un codée alternant CELP et MDCT, le mode MDCT est en général sélectionné dans les segments quasi-stationnaires où le codage dans le domaine fréquentiel est plus performant que dans le domaine temporel. Au moment de la commutation entre les modes ACELP et MDCT cette stationnarité est normalement déjà établie, on peut supposer que certains paramètres comme l'enveloppe spectrale évolue très peu de trame à trame. Ainsi le filtre de synthèse quantifié 1 / À(z) transmis lors de la trame précédente, représentant l'enveloppe spectrale du signal, peut être réutilisé de façon efficace.
Le pitch (permettant de reconstruire l'excitation adaptative par utilisation de l'excitation passée) est calculé en boucle fermée pour cette première sous trame de transition. Celui-ci est codé dans le train binaire, éventuellement de façon différentielle par rapport au pitch de la dernière sous trame CELP. L'excitation adaptative v(n) (n=0,.. . ,63) en est déduite. Dans une variante la valeur de pitch de la dernière trame CELP peut être également réutilisée, sans la transmettre.
Un bit est alloué pour indiquer si l'excitation adaptative v(n) a été filtrée ou non par un filtre passe-bas de coefficients (0.18, 0.64, 0.18). Cependant, la valeur de ce bit pourrait être reprise de la dernière trame CELP précédente.
La recherche de l'excitation algébrique de la sous-trame est effectuée en boucle fermée uniquement pour cette sous-trame de transition, et le codage des positions et signes des pulsations de l'excitation sont codés dans le train binaire, là encore avec un nombre de bits dépendant du débit du codeur. Les gains gp , gc respectivement associés à l'excitation adaptative et algébrique sont codés dans le train binaire. Le nombre de bits alloués à ce codage dépend du débit du codeur.
A titre d'exemple, pour un débit total de 12,65 kbit/s, 9 bits sont réservés au codage en absolu du pitch de la sous-trame, 6 bits sont réservés au codage du gain, 52 bits sont réservés au codage de l'excitation fixe, et un bit indique si l'excitation adaptative a été filtrée ou non. On réserve donc Btr =6& bits (3.4 kbit/s) pour le codage de cette sous- trame de transition, il reste donc 9.25 kbit/s pour le codage MDCT dans la trame de transition.
Une fois tous les paramètres obtenus et codés, on peut générer la sous-trame manquante par excitation du filtre 1/A(z) avec l'excitation obtenue. Le bloc 231 fournit également les paramètres du codage prédictif restreint, ITR, à multiplexer dans le train binaire. Il est important de noter que le bloc 231 utilise des informations, notée Mem. sur la figure, du codage (bloc 211) effectué dans la trame précédant la trame de transition. Par exemple, les informations incluent les paramètres LPC et de pitch de la dernière sous- trame.
Le signal obtenu est ensuite dé-accentué (bloc 232) par le filtre l/ (l— C z_1 ) , pour obtenir le signal reconstruit sTR (n) , n = 0, ..., 63 , dans la première sous-trame de la trame courante de transition CELP à MDCT.
II reste enfin à combiner les signaux reconstruits sTR (n) , « = 0, ..., 63 , et sMDCT (n) , n = 0, ..., 255 Pour cela, un mélange progressif linéaire (fondu enchaîné ou
"cross-fade" en anglais) entre les deux signaux est effectué et donne le signal de sortie suivant (bloc 240). Par exemple dans un premier mode de réalisation, ce fondu enchaîné est effectué sur les premiers 5 ms de la façon suivante comme illustré à la figure 4a:
Figure imgf000021_0001
Il est à noter que le fondu enchaîné entre les deux signaux est ici de 5 ms, mais il peut être de taille inférieure. Dans l'hypothèse où le codeur CELP et le codeur MDCT sont à reconstruction parfaite ou quasi-parfaite, on peut même se passer de fondu enchaîné, en effet les 5 premières millisecondes de la trame sont codées parfaitement (par le CELP restreint), et les 15ms suivantes sont également codées parfaitement (par le codeur MDCT). L'atténuation des artefacts par le fondu enchaîné n'est en théorie plus nécessaire. Dans ce cas, le signal sMDCT («) s'écrit plus simplement :
^ MDCT ¾ ' n=0,...,63
(«) n=64,...,255
Dans la variante de la figure 4b la fenêtre est remplacée par une fenêtre identique à l'analyse et à la synthèse avec une forme rectangulaire sans repliement à gauche
Figure imgf000022_0001
On ne spécifie pas ici pour n<0 et n > 255. Pour n < 0 la valeur de w(n) est nulle et pour n>255 les fenêtres sont déterminées par les fenêtres d'analyse et synthèse MDCT utilisées pour le codage MDCT « normal ».
Le fondu enchaîné à la figure 4b est effectué de la façon suivante :
sTR(n) « = 0,...,31
«-32 «-32„
'MDCT («) 1- sTR(n) + 'MDCT («) « = 32,...,63
32 32
An) « = 64,...,255
Dans la variante des figures 4c la fenêtre est remplacée par une fenêtre identique à l'analyse et à la synthèse avec une forme incluant une première partie de valeur nulle sur 1,25 ms, puis un front montant sinusoïdal sur 2,5 ms, et un plat de valeur unitaire sur 1,25 ms :
0 « = 0,...,15
«-15.5
w(n) Mil -π « = 16,...,47
32
1 « = 48,...,255
On ne spécifie pas ici pour n<0 et n > 255. Pour n < 0 la valeur de w(n) est nulle et pour n>255 les fenêtres sont déterminées par les fenêtres d'analyse et synthèse MDCT utilisées pour le codage MDCT « normal ».
Le fondu enchaîné à la figure 4c est effectué de la façon suivante :
sTR(n) « = 0,...,37
«-48 «-48
,(«) 1- sTR(n) + ,(«) « = 48,...,63
16 16
« = 64,...,255 ce qui montre que la zone où le fondu enchaîné est effectué est exempte de repliement temporel.
Dans la variante des figures 4d et 4e, on suppose que la fenêtre de pondération MDCT d'analyse et synthèse dans la trame courante de transition (n= 0,...,255) est donnée par :
Figure imgf000023_0001
A noter ici , qu'on ne spécifie pas pour n<0 et n > 255. Pour n < 0 la valeur de w(n) est nulle et pour n>255 les fenêtres sont déterminées par les fenêtres d'analyse et synthèse MDCT utilisées pour le codage MDCT « normal ».
Le fondu enchaîné est effectué de la façon suivante, supposant que :
sTR (ri) /i = 0, ..., 31
M - 31.5
MDCT (n) = cos -π °TR (n) + ^MDCT (h^ n— 32, ..., 63
64
½Dcr (") " = 64, ..., 255
A noter que le fondu enchaîné des figures 4b à 4d pourrait être utilisé dans la configuration de la figure 4a également. L'avantage de procéder ainsi est que le fondu enchaîné est effectué sur la partie décodée MDCT où l'erreur due au repliement est la moins forte. Avec la structure représentée sur la figure 4a on se rapproche plus de la reconstruction parfaite.
On considère dans l'exemple de réalisation que le codeur fonctionne avec une décision de mode en boucle fermée.
A partir du signal original à 12,8 kHz, s (ri) , n = 0, ..., 255 , et des signaux reconstruits par chacun des deux modes, CELP et MDCT, sCELP (n) et sMDCT (n) , n = 0, ..., 255 , la décision de mode pour la trame courante est prise (bloc 254) en calculant (blocs 250, 252) les erreurs de codage s(ri)— sCELP (n) et s (ri)— sMDCT (n) , puis en appliquant par sous-trames de 64 échantillons (5 ms) une pondération perceptuelle par le filtre W(z) = A(z l f) /(l— O Z~l ) avec ^=0,92 dont les coefficients sont tirés des états du codage CELP (bloc 211), et enfin en calculant un critère de rapport signal à bruit par segmentai (avec 5 ms d'unité temporelle). On ne décrit pas plus en détails le fonctionnement de la décision en boucle fermée (bloc 254). La décision du bloc 554 est codée (ISEL) et multiplexée dans le train binaire. Le multiplexeur 260 combine la décision codée ISEL et les différents bits venant des modules de codage dans le train binaire bst en fonction de la décision du module 254 : Pour une trame CELP on envoie les bits ICELP> pour une trame purement MDCT les bits IMDCT et pour une trame de transition CELP vers MDCT les bits I^R et IMDCT- II est à noter que la décision de mode pourrait également être réalisée en boucle ouverte ou spécifiée de façon externe au codeur, sans changer la nature de l'invention.
Le décodeur selon un mode de réalisation de l'invention, est illustré sur la figure 5. Le démultiplexeur (bloc 511) reçoit le train binaire bst et extrait d'abord l'indice de mode ISEL- Cet indice commande le fonctionnement des modules de décodage et le commutateur 509. Si l'indice ISEL indique une trame CELP le décodeur CELP 501 est activé et décode les indices CELP ICELP- Le signal reconstruit sCELP (n) par le décodeur
CELP 501 par reconstruction de l'excitation u(n) = g pv(n) + g cc(n) , éventuellement post-traitement de u(n) , et filtrage le filtre de synthèse quantifié 1/ (z) est dé-accentué par le filtre de fonction de transfert l/ l— C z~l ) (bloc 502) pour obtenir le signal décodé CELP sCELP (n) . Le commutateur 509 choisit ce signal sCELP (n) comme signal de sortie à 12.8 kHz s(n) = sCELP (n) . Si l'indice ISEL indique une trame "purement" MDCT ou trame de transition le décodeur MDCT 503 est activé ; celui-ci décode les indices MDCT IMDCT- A partir des indices IMDCT transmis le bloc 503 reconstruit le spectre décodé S (k) , k = 0, ..., 255 , ensuite le bloc 504 reconstruit la trame courante pour trouver le signal sMDCT (n) , n = 0, ..., 255 . Dans une trame de transition les indices ITR sont également décodés par le module 505. Il est important de noter que le bloc 505 utilise des informations, notée Mem. sur la figure, du décodage (bloc 501) effectué dans la trame précédant la trame de transition. Par exemple, les informations incluent les paramètres LPC et de pitch de la dernière sous-trame.
Ainsi, le décodeur réutilise au moins un paramètre de décodage prédictif de la trame précédente pour décoder une première partie de la trame de transition. Il utilise également les seuls paramètres reçus pour cette première partie qui correspondent aux paramètres non réutilisés.
La sortie du bloc 505 est désaccentuée par le filtre de fonction de transfert
(bloc 506) pour obtenir le signal reconstruit par le codage prédictif restreint sTR (n) . Ce traitement (bloc 505 à 507) est effectué lorsque le mode précédent, noté modepre, c'est-à-dire le type de décodage de la trame précédente (CELP ou MDCT), est de type CELP.
Dans une trame de transition les signaux sTR (n) et sMDCT (n) sont combinés par le bloc 507, typiquement une opération de fondu enchaîné, telle que décrite précédemment pour le codeur mettant en œuvre l'invention, est effectuée dans la première partie de la- trame pour obtenir le signal sMDCT (n) . Dans le cas d'une trame "purement" MDCT, c'est- à-dire si les trames courante et précédente sont codées par MDCT, sMDCT {n) = sMDCT (n) . Le commutateur 509 choisit ce signal sMDCT (n) comme signal de sortie à 12.8 kHz s(n) = sMDCT (n) . Puis le signal reconstruit x(n) à 16 kHz est obtenu par suréchantillonnage de 12,8 kHz à 16 kHz (bloc 510). On considère que ce changement de cadence est réalisé à l'aide d'un filtre à réponse impulsionnelle finie en polyphasé (d'ordre 60).
Ainsi, selon le procédé de codage de l'invention, les échantillons correspondants à la première sous-trame de la trame courante codée par codage par transformée, sont codés par un codeur prédictif restreint au détriment des bits disponibles au codage par transformée (cas de débit constant) ou en augmentant le débit transmis (cas de débit variable).
Dans un mode de réalisation de l'invention illustré sur la figure 4a, la zone repliée est utilisée uniquement pour faire un fondu enchaîné qui assure une transition douce et sans discontinuité entre la reconstruction CELP et la reconstruction MDCT.
A noter que dans une variante, ce fondu enchaîné peut être réalisé sur la deuxième partie de la zone repliée ou l'effet de repliement est moins fort. Dans cette variante illustrée sur la figure 4a en augmentant le débit on ne converge pas vers la reconstruction parfaite car une partie du signal utilisé pour le fondu enchaîne est perturbé par le repliement temporel.
Cette variante ne peut pas être transparente même si cette perturbation à bas débit est tout à fait acceptable et en générale quasi inaudible par rapport à la dégradation intrinsèque du codage à bas débit.
Dans une autre variante, dans la trame MDCT suivant immédiatement une trame
CELP (trame de transition) (cas illustré sur la figure 4b) on peut utiliser une transformation MDCT sans repliement à gauche, avec une fenêtre rectangulaire commençant au milieu de la sous trame sur la ligne de repliement. Dans la partie encadrée et grisée de la figure on peut observer l'évolution des poids des composantes CELP et MDCT dans le fondu enchaîné. Pendant les premiers 2.5 ms de la trame de transition la sortie est identique au signal décodé du codage prédictif restreint puis la transition est faite durant les deuxième 2.5 ms suivants en diminuant progressivement le poids de la composante CELP et en augmentant le poids de la composante MDCT en fonction de la définition exacte de la fenêtre MDCT. La transition est donc faite en utilisant le signal décodé MDCT sans repliement. Ainsi on peut obtenir un codage transparent en augmentant le débit. Cependant le fenêtrage rectangulaire peut occasionner des effets de bloc en présence de bruit de codage MDCT.
La figure 4c illustre une autre variante où la partie montante de la fenêtre (avec repliement temporel) à gauche est raccourcie (par exemple à 2.5 ms) et ainsi les 5 premières millisecondes du signal reconstruit par le mode MDCT contiennent une partie (1.25 ms) sans repliement à droite dans cette première sous-trame de 5 ms. Ainsi le "plat" (c'est-à-dire la valeur constante à 1 sans repliement) de la fenêtre MDCT est étendu à gauche dans la sous-trame codée par le codage prédictif restreint en comparant avec la configuration de la figure 4a.
De nouveau, dans la partie encadrée et grisée de la figure 4c on peut observer l'évolution des poids des composantes CELP et MDCT dans le fondu enchaîné pour cette variante. Selon l'exemple donné, pendant les 3.75 premières millisecondes, la sortie est identique au signal reconstruit par le décodage prédictif restreint. Pour cette zone là, la composante MDCT ne doit pas être décodée car non utilisée. Par conséquent, la forme de la fenêtre de pondération n'a pas d'importance pour cette zone. La transition est faite durant les dernières 1.25 ms en diminuant progressivement le poids de la composante CELP et en augmentant le poids de la composante MDCT. En procédant ainsi la reconstruction parfaite à haut débit - donc en l'absence d'erreur de quantification - est assurée car la zone perturbée par le repliement n'intervient pas dans le fondu enchaîné. Le fondu enchaîné de ces signaux reconstruits est réalisé sur la partie de la fenêtre où le signal reconstruit issu du codage par transformée de la première partie de la trame courante ne comporte pas de repliement temporel. L' avantage de cette variante par rapport à celle illustrée sur la figure 4b est la meilleure propriété spectrale de la fenêtre utilisée et la diminution des effets de bloc, sans la partie rectangulaire.
A noter que la variante de la figure 4b est un cas extrême de la variante de la figure 4c où la partie montante de la fenêtre (avec repliement temporel) à gauche est raccourcie à 0. Dans une autre variante de l'invention la longueur de la partie montante de la fenêtre (avec repliement temporel) à gauche dépend du débit : par exemple elle se raccourcie avec l'augmentation du débit. Les poids du fondu enchaîné utilisés dans ce cas peuvent être adaptés à la fenêtre choisie.
Sur les figures 4a, 4b et 4c des fenêtres MDCT à bas retard (« low delay ») ont été représentées, celles-ci comportent un nombre choisi de coefficients de pondération successifs de valeur nulle en fin et en début de fenêtre. L'invention s'applique également pour le cas où les fenêtres de pondération MDCT classique (sinusoïdal) sont utilisées.
Le fondu enchaîné à été présenté dans les exemples donnés précédemment avec des poids linéaires. Evidemment d'autres fonctions de variation des poids peuvent être également utilisées comme le front montant d'une fonction sinusoïdale par exemple. En général le poids de l'autre composante est choisi toujours de telle sorte que la somme des 2 poids soit toujours égale à un.
A noter également que le poids du fondu enchaîné de la composante MDCT peut être intégrée dans la fenêtre de pondération de synthèse MDCT de la trame de transition pour toutes les variantes présentées, en multipliant la fenêtre de pondération de synthèse MDCT par les poids de fondu enchaîné, ce qui réduit ainsi la complexité de calcul.
Dans ce cas la transition entre la composante de codage prédictif restreint et la composante de codage par transformée est faite en additionnant d'une part la composante de codage prédictif multipliée par les poids de fondu enchaîné et d'autre part la composante de codage par transformée ainsi obtenue, sans pondération supplémentaires par les poids. De plus, dans le cas de la variante présentée sur la figure 4b l'intégration des poids du fondu enchaîné peut être faite dans la fenêtre de pondération d' analyse. On peut avantageusement faire cela dans la variante de la figure 4b car la zone du fondu enchaîné est entièrement dans la partie sans repliement de la trame et la fenêtre de pondération d'analyse d'origine était de valeur nulle pour les échantillons précédents la zone de repliement.
Cette approche est de plus encore plus intéressante si on utilise les poids du fondu enchaîné sinusoïdal car ainsi on améliore sensiblement les propriétés spectrale de la fenêtre de pondération d'analyse par rapport à la fenêtre rectangulaire (coté gauche) de la figure 4b ou par rapport à une fenêtre triangulaire avec des poids linéaire. De manière encore plus avantageuse la même fenêtre peut être utilisée comme fenêtre d'analyse et de synthèse MDCT, ce qui réduit le stockage. Cette variante est illustrée sur la figure 4d.
On y observe que la partie montante de la fenêtre de pondération d'analyse / synthèse de transition est dans la zone sans repliement (après la ligne de repliement). Cette partie montante est ici définie comme un quart de cycle sinusoïdal, si bien que l'effet combiné des fenêtres d'analyse / synthèse donne implicitement des poids de fondu enchaîné sous la forme d'un sinus au carré. Cette partie montante sert à la fois pour le fenêtrage MDCT et pour le fondu enchaîné. Les poids du fondu enchaîné pour la composante de codage prédictif restreint sont complémentaires par rapport à la partie montante des fenêtres de pondération d'analyse / synthèse combinées, de telle sorte que la somme des deux poids donne toujours 1 sur la zone où le fondu enchaîné est effectué. Pour l'exemple des fenêtres d'analyse / synthèse MDCT avec une partie montante définie comme un quart de cycle sinusoïdal, les poids du fondu enchaîné pour la composante de codage prédictif restreint sont donc sous la forme d'un cosinus au carré (1 moins sinus au carré) Ainsi les poids du fondu enchaîné sont intégrés à la fois dans la fenêtre de pondération d'analyse et de synthèse de la trame de transition. La variante illustrée à la figure 4d permet d'atteindre la reconstruction parfaite à haut débit parce que le fondu enchaîné est effectué sur une zone sans repliement temporel. .
L'invention s'applique également au cas où des fenêtres MDCT sont asymétriques et au cas où les fenêtres MDCT d'analyse et de synthèse ne sont pas identiques comme dans la norme UIT-T G.718. Un tel exemple est donné sur la figure 4e. Dans cet exemple le coté gauche de la fenêtre MDCT de transition (en trait gras sur la figure) et les poids du fondu enchaîné sont identiques à ceux de la figure 4d. Bien évidemment la fenêtre et le fondu enchaîné correspondant aux autres modes de réalisations déjà présentés (par exemple ceux des figures 4a à 4c) pourraient être également utilisés dans la partie gauche de la fenêtre de transition.
On observe sur la figure 4e, pour des fenêtres MDCT asymétriques, qu'au codeur, la partie droite de la fenêtre d'analyse de transition est identique à la partie droite de la fenêtre d' analyse MDCT normalement utilisée et, qu'au décodeur, la partie droite de la fenêtre de synthèse MDCT de transition est identique avec la partie droite de la fenêtre de synthèse MDCT normalement utilisée. Quant au coté gauche de la fenêtre de pondération MDCT de transition, on utilise la partie gauche d'une des fenêtres de transition MDCT déjà présentées aux figures 4a à 4d (dans l'exemple de la figure 4e on utilise celle de la figure 4d).
Les poids du fondu enchaîné sont choisis en fonction de la fenêtre utilisée, comme détaillé dans les variantes de réalisation de l'invention décrites précédemment (par exemple sur les figures 4a à 4d). En généralisant, selon l'invention, pour la composante MDCT dans la trame de transition la moitié gauche de la fenêtre de pondération d'analyse MDCT utilisée est choisie de telle façon que la partie droite de la zone correspondante à cette moitié de fenêtre ne comporte pas de repliement temporel (par exemple selon un des exemples des figures 4a à 4e) et la moitié gauche de la fenêtre de pondération de synthèse MDCT correspondante est choisie d'une telle façon que après l'effet combiné des fenêtres d'analyse et synthèse cette zone sans repliement a un poids 1 au moins du coté droit (sans aucune atténuation). Les figures 4a à 4e montrent des exemples de paires de fenêtres d'analyse et de synthèse qui vérifient ces critères. Selon ces exemples la moitié gauche de la fenêtre de pondération MDCT de transition est identique à l'analyse et à la synthèse mais cela n'est pas nécessairement le cas dans toutes les réalisations de l'invention. A noter par exemple que la forme de fenêtre de synthèse dans la zone où le poids de la composante MDCT dans le fondu enchaîné est nul n'est pas d'importance car ces échantillons ne seront pas utilisés, elle ne doit même pas être calculée. D'autre part la contribution des fenêtres d'analyse et synthèse dans les poids du fondu enchaîné peut être également répartie de façon non équilibrée ce qui donnerait des fenêtre d'analyse et de synthèse différentes dans la moitié gauche de la fenêtre de pondération MDCT de transition. Quant à la moitié droite des fenêtres d'analyse et de synthèse de transition, elles sont identiques avec celles des fenêtres de pondération MDCT normalement utilisées dans les zones uniquement codées par codage de transformée. Pour assurer une reconstruction parfaite en l'absence d'erreur de quantification (à très haut débit) le fondu enchaîné entre le signal reconstruit par le décodeur prédictif restreint et le signal reconstruit par le décodeur par transformée doit être réalisé sur une zone sans repliement temporel. L'effet combiné des fenêtres d'analyse et synthèse peut intégrer implicitement les poids du fondu enchaîné de la composante reconstruite par le décodeur par transformée.
Pour limiter l'impact sur le débit alloué au codage MDCT, il est intéressant d'utiliser le moins de bits possible pour ce codage prédictif restreint tout en garantissant une bonne qualité. Dans un codée alternant CELP et MDCT, le mode MDCT est en général sélectionné dans les segments quasi-stationnaires où le codage dans le domaine fréquentiel est plus performant que dans le domaine temporel. Cependant on peut considérer aussi des cas où la décision de mode est prise en boucle ouverte ou pilotée de façon externe au codeur, sans garantie que l'hypothèse de stationnarité soit vérifiée.
Au moment de la commutation entre les modes ACELP et MDCT cette stationnarité est normalement déjà établie, on peut supposer que certains paramètres comme l'enveloppe spectrale évolue très peu de trame à trame. Ainsi le filtre de synthèse quantifié 1/ A(z) transmis lors de la trame précédente, représentant l'enveloppe spectrale du signal, peut être réutilisé afin d'économiser des bits pour le codage MDCT. On utilise le dernier filtre de synthèse transmis dans le mode CELP (le plus proche du signal à coder).
Les informations utilisées pour coder le signal dans la trame de transition sont: le pitch (associé à l'excitation à long terme), le vecteur d'excitation (ou innovation) ainsi que le(s) gain(s) associé(s) à l'excitation.
Dans un autre mode de réalisation de l'invention la valeur décodée du pitch et/ou son gain associé à la dernière sous-trame peuvent être également réutilisés car ces paramètres évoluent aussi lentement dans les zones stationnaires. On diminue ainsi encore plus la quantité d'information à transmettre lors d'une transition de CELP à MDCT.
Il est également possible, dans une variante de réalisation, de quantifier ces paramètres en différentiel sur peu de bits par rapport aux paramètres décodés dans la dernière sous-trame de la trame CELP précédente. Dans ce cas, on code ainsi uniquement la correction qui représente l'évolution lente de ces paramètres.
L'une des propriétés désirées de la transition de CELP à MDCT est qu'à débit asymptotiquement élevé, lorsque les codeurs CELP et MDCT sont quasiment à reconstruction parfaite, le codage effectué dans la trame transition (trame MDCT suivante une trame CELP) doit être lui-même à reconstruction quasi-parfaite. Les variantes illustrées sur les figures 4b et 4c assure à reconstruction quasi-parfaite à très haut débit.
Dans un souci d'homogénéité de qualité, le nombre de bits alloué à ces paramètres du codage prédictif restreint peut être variable et proportionnel au débit total.
Afin de limiter les effets de transition d'un type de codage à l'autre, une transition progressive entre la partie du signal codée par le codage prédictif et le reste de la trame codée par transformée (fondu enchaîné, "fade-in" pour la composante par transformée, "fade-out" pour la composante prédictive) est effectuée. Pour atteindre la qualité transparente, ce fondu enchaîné doit être réalisé sur un signal décodé MDCT sans repliement.
En plus des variantes des figures 4b et 4c dans une variante supplémentaire, pour assurer la transparence possible à haut débit, le principe du codage MDCT est modifié de sorte qu'aucun repliement temporel à gauche n'est utilisé dans la fenêtre MDCT de la trame de transition. Cette variante implique d'utiliser une version modifiée de la transformation DCT au cœur de la transformation MDCT car la longueur du signal replié est différente, étant donné que le repliement temporel (réduisant la taille du bloc) n'est effectué qu'à droite.
Il est à noter que l'invention est décrite aux figures 4a à 4d pour le cas simplifié de fenêtres d' analyse et synthèse MDCT identiques dans chaque trame (exceptée la trame de transition) codée par le mode MDCT. Dans des variantes de l'invention, la fenêtre MDCT pourra être asymétrique comme illustré à la figure 4e. De plus, le codage MDCT pourra utiliser une commutation de fenêtres entre au moins une fenêtre "longue" de typiquement 20-40 ms et une série de fenêtres courtes de typiquement 5-10 ms ("window switching" en anglais).
Par ailleurs, d'autres variantes sont également définies dans le cas où la sélection de modes CELP / MDCT n'est pas optimale et l'hypothèse de stationnarité du signal dans la trame de transition n'est pas vérifiée et la réutilisation des paramètres de la dernière trame CELP (LPC, pitch) peut causer des dégradations audibles. Pour de tels cas, l'invention prévoit la transmission d'au moins un bit pour indiquer un mode de transition différent du procédé décrit précédemment, afin de garder plus de paramètres CELP et/ou de sous-trames CELP à coder dans la trame de transition de CELP à MDCT. Par exemple un premier bit peut signaler si dans la suite du train binaire le filtre LPC est codé ou la dernière version reçue peut être utilisée au décodeur, et un autre bit pourrait signaler la même chose pour la valeur du pitch. Dans le cas où l'encodage d'un paramètre est jugé nécessaire ceci peut être fait en différentiel par rapport à la valeur transmise dans la dernière trame.
Ainsi, d'une façon générale, en accord avec les modes de réalisation décrits précédemment, le procédé de codage selon l'invention peut être illustré sous forme d'organigramme comme représenté en figure 6a.
Pour le signal à coder s(n), on vérifie à l'étape E601 que l'on se trouve dans le cas où la trame courante est à codée selon un codage par transformée et où la trame précédente a été codée selon un codage de type prédictif. Ainsi, la trame courante est une trame de transition entre le codage prédictif et le codage par transformée.
A l'étape E602, un codage prédictif restreint, est appliqué sur une première partie de la trame courante. Ce codage prédictif est restreint par rapport au codage prédictif utilisé pour la trame précédente.
A l'issue de cette étape de codage prédictif restreint, le signal sTR (n) est obtenu.
Le codage MDCT de la trame courante est effectué à l'étape E603, parallèlement pour toute la trame courante. A l'issue de cette étape de codage par transformée, le signal sMDCT (n) est obtenu.
Selon les modes de réalisation décrits pour l'invention, le procédé comporte une étape de combinaison par fondu enchaîné à l'étape E604, après reconstruction des signaux, permettant d'effectuer une transition douce entre le codage prédictif et le codage par transformée dans la trame de transition. A l'issue de cette étape, un signal reconstruit sMDCT {n) est obtenu.
De même, de façon générale, le procédé de décodage selon l'invention est illustré en référence à la figure 6b.
Lorsqu'au décodage, une trame précédente à été décodée selon une méthode de décodage de type prédictif et que la trame courante est à décoder selon une méthode de décodage de type transformée (vérification en E605), le procédé de décodage comporte une étape de décodage par un décodage prédictif restreint d'une première partie de la trame courante, en E606. Il comporte également une étape de décodage par transformée en E607 de la trame courante.
Une étape E608 est ensuite effectuée, selon les modes de réalisation décrits précédemment, pour effectuer une combinaison des signaux décodés obtenus, respectivement sTR {n) et sMDCT {n) , par fondu enchaîné sur tout ou partie de la trame courante et ainsi obtenir le signal décodé sMDCT {n) de la trame courante.
Enfin, l'invention a été présentée dans le cas spécifique d'une transition de CELP à MDCT. Il est évident que cette invention s'applique également au cas où le codage CELP est remplacé par un autre type de codage, tel que MICDA, TCX, et où un codage de transition sur une partie de la trame de transition est effectué en utilisant les informations du codage de la trame précédent la trame MDCT de transition.
En référence à la figure 7, on décrit un dispositif matériel adapté pour réaliser un codeur ou un décodeur selon un mode de réalisation de la présente invention.
Ce dispositif DISP comporte une entrée pour recevoir un signal numérique SIG qui dans le cas du codeur est un signal d'entrée x(n') et dans le cas du décodeur, le train binaire bst.
Le dispositif comporte également un processeur PROC de signaux numériques adapté pour réaliser des opérations de codage/décodage notamment sur un signal provenant de l'entrée E.
Ce processeur est relié à une ou plusieurs unités de mémoire MEM adaptées pour stocker des informations nécessaires au pilotage du dispositif pour le codage/décodage. Par exemple, ces unités de mémoire comportent des instructions pour la mise en œuvre du procédé de codage décrit ci-avant et notamment pour mettre en œuvre les étapes de codage d'une trame précédente d'échantillons du signal numérique selon un codage prédictif , codage d'une trame courante d'échantillons du signal numérique selon un codage par transformée, de telle sorte qu'une première partie de la trame courante est codée par un codage prédictif restreint par rapport au codage prédictif de la trame précédente, lorsque le dispositif est de type codeur.
Lorsque le dispositif est de type décodeur, ces unités de mémoire comportent des instructions pour la mise en œuvre du procédé de décodage décrit ci-avant et notamment pour mettre en œuvre les étapes de décodage prédictif d'une trame précédente d'échantillons du signal numérique reçue et codée selon un codage prédictif, décodage par transformée inverse d'une trame courante d'échantillons du signal numérique reçue et codée selon un codage par transformée , et en outre une étape de décodage par un décodage prédictif restreint par rapport au décodage prédictif de la trame précédente d'une première partie de la trame courante.
Ces unités de mémoire peuvent également comporter des paramètres de calcul ou d'autres informations.
De manière plus générale, un moyen de stockage, lisible par un processeur, intégré ou non au codeur ou au décodeur, éventuellement amovible, mémorise un programme informatique mettant en œuvre un procédé de codage et/ou un procédé de décodage selon l'invention. Les figures 6a et 6b peuvent par exemple illustrer l'algorithme d'un tel programme informatique.
Le processeur est également adapté pour stocker des résultats dans ces unités de mémoire. Enfin, le dispositif comporte une sortie S reliée au processeur pour fournir un signal de sortie SIG* qui dans le cas du codeur est un signal sous forme de train binaire bst et dans 1 e cas du décodeur, un signal de sortie x(n' ) .

Claims

REVENDICATIONS
1. Procédé de codage d'un signal son numérique, comportant les étapes de :
- codage (E601) d'une trame précédente d'échantillons du signal numérique selon un codage prédictif ;
- codage (E603) d'une trame courante d'échantillons du signal numérique selon un codage par transformée,
le procédé étant caractérisé en ce qu'une première partie de la trame courante est codée (E602) par un codage prédictif restreint par rapport au codage prédictif de la trame précédente en réutilisant au moins un paramètre du codage prédictif de la trame précédente et en ne codant que les paramètres non réutilisés de cette première partie de la trame courante.
2. Procédé selon la revendication 1, caractérisé en ce que le codage prédictif restreint utilise un filtre de prédiction recopié de la trame précédente de codage prédictif.
3. Procédé selon la revendication 2, caractérisé en ce que le codage prédictif restreint utilise en outre une valeur décodée du pitch et/ou de son gain associé de la trame précédente de codage prédictif.
4. Procédé selon la revendication 1 , caractérisé en ce que certains paramètres de codage prédictif utilisé pour le codage prédictif restreint sont quantifiés en mode différentiel par rapport à des paramètres décodés de la trame précédente de codage prédictif.
5. Procédé selon la revendication 1, caractérisé en ce qu'il comporte une étape d'obtention des signaux reconstruits issus des codages et décodages locaux prédictif et par transformée de la première partie de la trame courante et de combinaison (E604) par un fondu enchaîné de ces signaux reconstruits.
6. Procédé selon la revendication 5, caractérisé en ce que ledit fondu enchaîné des signaux reconstruits est réalisé sur une portion de la première partie de la trame courante en fonction de la forme de la fenêtre du codage par transformée.
7. Procédé selon la revendication 5, caractérisé en ce que ledit fondu enchaîné des signaux reconstruits est réalisé sur une portion de la première partie de la trame courante, ladite portion ne contenant pas de repliement temporel.
8. Procédé selon la revendication 1, caractérisé en ce que le codage par transformée utilise une fenêtre de pondération comportant un nombre choisi de coefficients de pondération successifs de valeur nulle en fin et en début de fenêtre.
9. Procédé selon la revendication 1, caractérisé en ce que le codage par transformée utilise une fenêtre de pondération asymétrique comportant un nombre choisi de coefficients de pondération successifs de valeur nulle en au moins une extrémité de la fenêtre.
10. Procédé de décodage d'un signal son numérique, comportant les étapes de :
- décodage (E605) prédictif d'une trame précédente d'échantillons du signal numérique reçue et codée selon un codage prédictif ;
- décodage (E607) par transformée inverse d'une trame courante d'échantillons du signal numérique reçue et codée selon un codage par transformée ;
le procédé étant caractérisé en ce qu'il comporte en outre une étape de décodage (E606) par un décodage prédictif restreint par rapport au décodage prédictif de la trame précédente d'une première partie de la trame courante reçue et codée selon un codage prédictif restreint, en réutilisant au moins un paramètre du décodage prédictif de la trame précédente et en ne décodant que les paramètres reçus pour cette première partie de la trame courante.
11. Procédé selon la revendication 10, caractérisé en ce qu'il comporte une étape de combinaison (E608) par un fondu enchaîné des signaux décodés par transformée inverse et par décodage prédictif restreint pour au moins une portion de la première partie de la trame courante.
12. Procédé selon la revendication 10, caractérisé en ce que le décodage prédictif restreint utilise un filtre de prédiction décodé et utilisé par le décodage prédictif de la trame précédente.
13. Procédé selon la revendication 12, caractérisé en ce que le décodage prédictif restreint utilise en outre une valeur décodée du pitch et/ou de son gain associé du décodage prédictif de la trame précédente.
14. Codeur de signal son numérique, comportant:
- un module (211) de codage prédictif pour coder une trame précédente d'échantillons du signal numérique;
- un module (221) de codage par transformée pour coder une trame courante d'échantillons du signal numérique,
caractérisé en ce qu'il comporte en outre un module (231) de codage prédictif restreint par rapport au codage prédictif de la trame précédente pour coder une première partie de la trame courante, en réutilisant au moins un paramètre du codage prédictif de la trame précédente et en ne codant que les paramètres non réutilisés de cette première partie de la trame courante.
15. Décodeur de signal son numérique, comportant:
- un module (501) de décodage prédictif pour décoder une trame précédente d'échantillons du signal numérique reçue et codée selon un codage prédictif ;
- un module (503) de décodage par transformée inverse pour décoder une trame courante d'échantillons du signal numérique reçue et codée selon un codage par transformée ;
caractérisé en ce qu'il comporte en outre un module (505) de décodage prédictif restreint par rapport au décodage prédictif de la trame précédente pour décoder une première partie de la trame courante reçue et codée selon un codage prédictif restreint, en réutilisant au moins un paramètre du décodage prédictif de la trame précédente et en ne décodant que les paramètres reçus pour cette première partie de la trame courante.
16. Programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé de codage selon l'une des revendications 1 à 9 et/ou de décodage selon l'une des revendications 10 à 13, lorsque ces instructions sont exécutées par un processeur.
PCT/FR2011/053097 2010-12-23 2011-12-20 Codage de son à bas retard alternant codage prédictif et codage par transformée WO2012085451A1 (fr)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201180068351.0A CN103384900B (zh) 2010-12-23 2011-12-20 在预测编码与变换编码之间交替的低延迟声音编码
RU2013134227/08A RU2584463C2 (ru) 2010-12-23 2011-12-20 Кодирование звука с малой задержкой, содержащее чередующиеся предсказательное кодирование и кодирование с преобразованием
EP11815474.9A EP2656343B1 (fr) 2010-12-23 2011-12-20 Codage de son à bas retard alternant codage prédictif et codage par transformée
JP2013545471A JP5978227B2 (ja) 2010-12-23 2011-12-20 予測符号化と変換符号化を繰り返す低遅延音響符号化
US13/997,446 US9218817B2 (en) 2010-12-23 2011-12-20 Low-delay sound-encoding alternating between predictive encoding and transform encoding
KR1020137019387A KR101869395B1 (ko) 2010-12-23 2011-12-20 예측 인코딩 및 변환 인코딩 사이에서 교번하는 낮은―지연 사운드―인코딩
BR112013016267-8A BR112013016267B1 (pt) 2010-12-23 2011-12-20 processos de codificação e decodificação de um sinal não numérico, codificador e decodificador de sinal som numérico
ES11815474.9T ES2529221T3 (es) 2010-12-23 2011-12-20 Codificación de sonido con bajo retardo que alterna codificación predictiva y codificación por transformada

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1061203A FR2969805A1 (fr) 2010-12-23 2010-12-23 Codage bas retard alternant codage predictif et codage par transformee
FR1061203 2010-12-23

Publications (1)

Publication Number Publication Date
WO2012085451A1 true WO2012085451A1 (fr) 2012-06-28

Family

ID=44059261

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2011/053097 WO2012085451A1 (fr) 2010-12-23 2011-12-20 Codage de son à bas retard alternant codage prédictif et codage par transformée

Country Status (10)

Country Link
US (1) US9218817B2 (fr)
EP (1) EP2656343B1 (fr)
JP (1) JP5978227B2 (fr)
KR (1) KR101869395B1 (fr)
CN (1) CN103384900B (fr)
BR (1) BR112013016267B1 (fr)
ES (1) ES2529221T3 (fr)
FR (1) FR2969805A1 (fr)
RU (1) RU2584463C2 (fr)
WO (1) WO2012085451A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015197989A1 (fr) * 2014-06-27 2015-12-30 Orange Ré-échantillonnage par interpolation d'un signal audio pour un codage /décodage à bas retard
WO2016016566A1 (fr) 2014-07-29 2016-02-04 Orange Détermination d'un budget de codage d'une trame de transition lpd/fd
US10600424B2 (en) 2014-07-29 2020-03-24 Orange Frame loss management in an FD/LPD transition context

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4977157B2 (ja) 2009-03-06 2012-07-18 株式会社エヌ・ティ・ティ・ドコモ 音信号符号化方法、音信号復号方法、符号化装置、復号装置、音信号処理システム、音信号符号化プログラム、及び、音信号復号プログラム
KR102053900B1 (ko) 2011-05-13 2019-12-09 삼성전자주식회사 노이즈 필링방법, 오디오 복호화방법 및 장치, 그 기록매체 및 이를 채용하는 멀티미디어 기기
CN103548080B (zh) * 2012-05-11 2017-03-08 松下电器产业株式会社 声音信号混合编码器、声音信号混合解码器、声音信号编码方法以及声音信号解码方法
KR101498113B1 (ko) * 2013-10-23 2015-03-04 광주과학기술원 사운드 신호의 대역폭 확장 장치 및 방법
FR3013496A1 (fr) * 2013-11-15 2015-05-22 Orange Transition d'un codage/decodage par transformee vers un codage/decodage predictif
US9489955B2 (en) * 2014-01-30 2016-11-08 Qualcomm Incorporated Indicating frame parameter reusability for coding vectors
US10134403B2 (en) * 2014-05-16 2018-11-20 Qualcomm Incorporated Crossfading between higher order ambisonic signals
EP2980795A1 (fr) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codage et décodage audio à l'aide d'un processeur de domaine fréquentiel, processeur de domaine temporel et processeur transversal pour l'initialisation du processeur de domaine temporel
EP2980796A1 (fr) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Procédé et appareil de traitement d'un signal audio, décodeur audio et codeur audio
EP2980797A1 (fr) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Décodeur audio, procédé et programme d'ordinateur utilisant une réponse d'entrée zéro afin d'obtenir une transition lisse
EP2980794A1 (fr) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codeur et décodeur audio utilisant un processeur du domaine fréquentiel et processeur de domaine temporel
WO2016142002A1 (fr) * 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Codeur audio, décodeur audio, procédé de codage de signal audio et procédé de décodage de signal audio codé
CN114898761A (zh) * 2017-08-10 2022-08-12 华为技术有限公司 立体声信号编解码方法及装置
CN110556118B (zh) * 2018-05-31 2022-05-10 华为技术有限公司 立体声信号的编码方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2936898A1 (fr) * 2008-10-08 2010-04-09 France Telecom Codage a echantillonnage critique avec codeur predictif

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787387A (en) * 1994-07-11 1998-07-28 Voxware, Inc. Harmonic adaptive speech coding method and system
JP3317470B2 (ja) * 1995-03-28 2002-08-26 日本電信電話株式会社 音響信号符号化方法、音響信号復号化方法
JP3653826B2 (ja) * 1995-10-26 2005-06-02 ソニー株式会社 音声復号化方法及び装置
US6134518A (en) * 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
DE69926821T2 (de) * 1998-01-22 2007-12-06 Deutsche Telekom Ag Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
US6959274B1 (en) * 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
US7171355B1 (en) * 2000-10-25 2007-01-30 Broadcom Corporation Method and apparatus for one-stage and two-stage noise feedback coding of speech and audio signals
US6658383B2 (en) * 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
JP3881943B2 (ja) * 2002-09-06 2007-02-14 松下電器産業株式会社 音響符号化装置及び音響符号化方法
US7596486B2 (en) * 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes
CN101308656A (zh) * 2007-05-17 2008-11-19 展讯通信(上海)有限公司 音频暂态信号的编解码方法
PL2311034T3 (pl) * 2008-07-11 2016-04-29 Fraunhofer Ges Forschung Koder i dekoder audio do kodowania ramek próbkowanego sygnału audio
RU2393548C1 (ru) * 2008-11-28 2010-06-27 Общество с ограниченной ответственностью "Конвент Люкс" Устройство для изменения входящего голосового сигнала в выходящий голосовой сигнал в соответствии с целевым голосовым сигналом
JP4977157B2 (ja) * 2009-03-06 2012-07-18 株式会社エヌ・ティ・ティ・ドコモ 音信号符号化方法、音信号復号方法、符号化装置、復号装置、音信号処理システム、音信号符号化プログラム、及び、音信号復号プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2936898A1 (fr) * 2008-10-08 2010-04-09 France Telecom Codage a echantillonnage critique avec codeur predictif

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LECOMTE J ET AL: "Efficient Cross-Fade Windows for Transitions between LPC-Based and Non-LPC Based Audio Coding", AES CONVENTION 126; MAY 2009, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, 1 May 2009 (2009-05-01), XP040508994 *
NEUENDORF M ET AL: "Completion of Core Experiment on unification of USAC Windowing and Frame Transitions", 91. MPEG MEETING; KYOTO; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, 16 January 2010 (2010-01-16), XP030045757 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10510357B2 (en) 2014-06-27 2019-12-17 Orange Resampling of an audio signal by interpolation for low-delay encoding/decoding
FR3023036A1 (fr) * 2014-06-27 2016-01-01 Orange Re-echantillonnage par interpolation d'un signal audio pour un codage / decodage a bas retard
EP4047492A1 (fr) * 2014-06-27 2022-08-24 Orange Ré-échantillonnage par interpolation d'un signal audio pour un codage /décodage à bas retard
WO2015197989A1 (fr) * 2014-06-27 2015-12-30 Orange Ré-échantillonnage par interpolation d'un signal audio pour un codage /décodage à bas retard
FR3024581A1 (fr) * 2014-07-29 2016-02-05 Orange Determination d'un budget de codage d'une trame de transition lpd/fd
US20180182408A1 (en) * 2014-07-29 2018-06-28 Orange Determining a budget for lpd/fd transition frame encoding
CN106605263A (zh) * 2014-07-29 2017-04-26 奥兰吉公司 确定用于编码lpd/fd过渡帧的预算
US10586549B2 (en) 2014-07-29 2020-03-10 Orange Determining a budget for LPD/FD transition frame encoding
US10600424B2 (en) 2014-07-29 2020-03-24 Orange Frame loss management in an FD/LPD transition context
US11158332B2 (en) 2014-07-29 2021-10-26 Orange Determining a budget for LPD/FD transition frame encoding
CN113571070A (zh) * 2014-07-29 2021-10-29 奥兰吉公司 Fd/lpd转换环境中的帧丢失管理
WO2016016566A1 (fr) 2014-07-29 2016-02-04 Orange Détermination d'un budget de codage d'une trame de transition lpd/fd
US11475901B2 (en) 2014-07-29 2022-10-18 Orange Frame loss management in an FD/LPD transition context
CN113571070B (zh) * 2014-07-29 2023-09-29 奥兰吉公司 Fd/lpd转换环境中的帧丢失管理

Also Published As

Publication number Publication date
US9218817B2 (en) 2015-12-22
CN103384900B (zh) 2015-06-10
BR112013016267B1 (pt) 2021-02-02
JP5978227B2 (ja) 2016-08-24
RU2584463C2 (ru) 2016-05-20
CN103384900A (zh) 2013-11-06
RU2013134227A (ru) 2015-01-27
US20130289981A1 (en) 2013-10-31
BR112013016267A2 (pt) 2018-07-03
EP2656343B1 (fr) 2014-11-19
ES2529221T3 (es) 2015-02-18
KR20130133816A (ko) 2013-12-09
JP2014505272A (ja) 2014-02-27
KR101869395B1 (ko) 2018-06-20
FR2969805A1 (fr) 2012-06-29
EP2656343A1 (fr) 2013-10-30

Similar Documents

Publication Publication Date Title
EP2656343B1 (fr) Codage de son à bas retard alternant codage prédictif et codage par transformée
EP1907812B1 (fr) Procede de commutation de debit en decodage audio scalable en debit et largeur de bande
EP1905010B1 (fr) Codage/décodage audio hiérarchique
EP2277172B1 (fr) Dissimulation d&#39;erreur de transmission dans un signal audionumerique dans une structure de decodage hierarchique
EP1989706B1 (fr) Dispositif de ponderation perceptuelle en codage/decodage audio
EP3014611B1 (fr) Extension améliorée de bande de fréquence dans un décodeur de signaux audiofréquences
EP2080195A1 (fr) Synthèse de blocs perdus d&#39;un signal audionumérique, avec correction de période de pitch
EP3103116B1 (fr) Extension ameliorée de bande de fréquence dans un décodeur de signaux audiofréquences
EP3175444B1 (fr) Gestion de la perte de trame dans un contexte de transition fd/lpd
EP3069340B1 (fr) Transition d&#39;un codage/décodage par transformée vers un codage/décodage prédictif
WO2009089700A1 (fr) Procédé et appareil de mise à jour de l&#39;état d&#39;un filtre de synthèse
EP3175443B1 (fr) Détermination d&#39;un budget de codage d&#39;une trame de transition lpd/fd
WO2007107670A2 (fr) Procede de post-traitement d&#39;un signal dans un decodeur audio
Jax Backwards Compatible Wideband Telephony

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11815474

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013545471

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13997446

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2011815474

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20137019387

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2013134227

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013016267

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112013016267

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20130624