EP2145167B1 - Procédé de codage audio, codeur audio, signal codé et programme d'ordinateur associés - Google Patents

Procédé de codage audio, codeur audio, signal codé et programme d'ordinateur associés Download PDF

Info

Publication number
EP2145167B1
EP2145167B1 EP08788186A EP08788186A EP2145167B1 EP 2145167 B1 EP2145167 B1 EP 2145167B1 EP 08788186 A EP08788186 A EP 08788186A EP 08788186 A EP08788186 A EP 08788186A EP 2145167 B1 EP2145167 B1 EP 2145167B1
Authority
EP
European Patent Office
Prior art keywords
spectral
elements
coded
function
signals
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP08788186A
Other languages
German (de)
English (en)
Other versions
EP2145167A2 (fr
Inventor
Adil Mouhssine
Abdellatif Benjelloun Touimi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
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 SA filed Critical France Telecom SA
Publication of EP2145167A2 publication Critical patent/EP2145167A2/fr
Application granted granted Critical
Publication of EP2145167B1 publication Critical patent/EP2145167B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing

Definitions

  • the present invention relates to audio signal coding devices, intended in particular to take place in applications for transmission or storage of digitized and compressed audio signals.
  • the invention relates more specifically to audio hierarchical coding systems, having the capacity to provide varied bit rates, by distributing the information relating to an audio signal to be coded in hierarchical subsets, so that they can be used in order of importance in terms of audio quality.
  • the criterion taken into account for determining the order is a criterion for optimizing (or rather reducing) the quality of the coded audio signal.
  • Hierarchical coding is particularly suited to transmission over heterogeneous networks or having variable available rates over time, or to transmission to terminals having different or variable characteristics.
  • the invention more particularly relates to the hierarchical coding of a 3D sound stage.
  • a 3D sound scene comprises a plurality of audio channels corresponding to monophonic audio signals and is still referred to as its spatialized sound.
  • a coded sound stage is intended to be reproduced on a sound rendering system, which may include a simple headset, two speakers of a computer or a home theater system 5.1 (Home Cinema) with five loudspeakers (a loudspeaker on the screen and on the front of the intended listener: a speaker on the left and a speaker on the right, on the back of the theoretical listener a speaker on the left and a speaker on the right), etc.
  • a sound rendering system may include a simple headset, two speakers of a computer or a home theater system 5.1 (Home Cinema) with five loudspeakers (a loudspeaker on the screen and on the front of the intended listener: a speaker on the left and a speaker on the right, on the back of the theoretical listener a speaker on the left and a speaker on the right), etc.
  • a technique used includes the determination of elements of description of the sound stage, then compression operations of each of the monophonic signals. The data resulting from these compressions and the description elements are then supplied to the decoder.
  • Scalability also known as scalability
  • Scalability is therefore achievable, by adapting the bit rate during compression operations, but it is performed according to criteria for optimizing the quality of each signal considered individually.
  • Another coding technique which is used in the "MPEG Audio Surround” encoder (see “Text of ISO / IEC FDIS 23003-1, MPEG Surround”, ISO / IEC JTC1 / SC29 / WG11 N8324, July 2006, Klagenfurt, Austria), includes the extraction and coding of spatial parameters from all monophonic audio signals on the different channels. These signals are then mixed to obtain a monophonic or stereophonic signal, which is then compressed by a conventional mono or stereo encoder (for example of the MPEG-4 AAC, HE-AAC type, etc.). At the level of the decoder, the synthesis of the 3D sound scene is made from the spatial parameters and the decoded mono or stereo signal.
  • a conventional mono or stereo encoder for example of the MPEG-4 AAC, HE-AAC type, etc.
  • Adaptability in flow with this other technique is thus achievable using a mono or hierarchical stereo encoder, but it is performed according to a criterion of optimizing the quality of the monophonic or stereophonic signal.
  • the PSMAC Progressive Syntax-Rich Multichannel Audio Codec
  • KLT Kerhunen Loeve Transform
  • the adaptability in flow is based on a cancellation of the least energy components. However, these components can sometimes be of great importance to overall audio quality.
  • none of the known 3D sound stage coding techniques makes it possible to adapt to the bit rate on the basis of a criterion for optimizing the spatial resolution, during the rendering of the 3D sound scene. This adaptability makes it possible to guarantee that each reduction in flow rate will degrade as little as possible the accuracy of the location of the sound sources in the space, as well as the size of the restitution area, which must be as wide as possible around the head of the room. 'auditor.
  • none of the known 3D sound stage coding techniques allows rate adaptability that directly guarantees optimal quality regardless of the sound rendering system used for the rendering of the 3D sound stage.
  • the current coding algorithms are defined to optimize the quality with respect to a particular configuration of the sound rendering system. Indeed, for example in the case of the encoder "MPEG Audio Surround” described above implemented with a hierarchical coding, a direct listening on headphones or two speakers, or monophonic is possible. If it is desired to use the compressed bit stream with a sound rendering system of 5.1 or 7.1 type, it is necessary to implement additional processing at the decoder, for example using OTT boxes (in English "One-To-One"). Two ”) to generate the five signals from the two decoded signals.
  • the present invention improves the situation.
  • the present invention aims at providing, according to a first aspect as defined in claim 1, a method for scheduling spectral components of elements to be coded from an audio scene comprising N signals with N> 1, a element to be encoded comprising spectral components relating to respective spectral bands.
  • a method according to the invention thus makes it possible to order in order of importance as to the overall audio quality of the element components to be coded.
  • a binary sequence is constituted after comparison between them of the different spectral components of the different elements to be encoded in the global scene compared with each other in terms of their contribution to the overall perceived audio quality.
  • the interaction between signals is thus taken into account to compress them together.
  • the bit stream can thus be ordered in such a way that each rate reduction degrades as little as possible the perceived overall audio quality of the 3D sound scene, since the least important elements in terms of their contribution to overall audio quality are detected, so that they can not be inserted (when the bit rate allocated for transmission is insufficient to transmit all the components of the elements to be coded) or end of binary sequence (to minimize the defects generated by a subsequent truncation).
  • Such a process thus makes it possible to determine at least one component of an element to be coded which is the least important in terms of the contribution to overall audio quality, compared to all the other components of elements to be coded to be ordered. .
  • steps a to g are repeated with a set of spectral components of elements to be coded to be restricted by deleting the spectral components for which an order of priority has been assigned.
  • steps a to g are repeated with a set of spectral components of elements to be coded to be ordered in which the spectral components for which an order of priority has been assigned are assigned a lower quantization rate when using a nested quantizer.
  • the elements to be encoded comprise the spectral parameters calculated for the N channels. These are then, for example, the spectral components of the signals that are coded directly.
  • the elements to be encoded comprise elements obtained by spatial transformation, for example of the ambisonic type, called in English "ambisonic", spectral parameters calculated for the N signals.
  • This arrangement makes it possible on the one hand to reduce the number of data to be transmitted since, in general, the N signals can be very satisfactorily described by a reduced number of surround components (for example, a number equal to 3 or 5 ), less than N.
  • This provision also allows adaptability to any type of sound rendering system, since it is sufficient at the decoder, to apply a reverse surround transform of size Q'x (2p '+ 1), (where Q 'is equal to the number of loudspeakers of the sound rendering system used at the output of the decoder and 2p' + 1 the number of received surround components), to determine the signals to be supplied to the sound rendering system, while preserving the overall audio quality.
  • the mask-to-noise ratios are determined as a function of the errors due to the coding and relating to elements to be encoded and in addition according to a spatial transformation matrix and a matrix determined according to the transpose of said spatial transformation matrix.
  • a method according to the invention thus makes it possible to order at least some spectral parameters of ambiophonic components of the set to be ordered, according to their relative importance in terms of contribution to spatial accuracy.
  • Spatial resolution or spatial precision measures the fineness of the location of sound sources in space. An increased spatial resolution allows a finer localization of the sound objects in the room and allows for a wider playback area around the listener's head.
  • the bit stream can thus be ordered in such a way that each rate reduction degrades as little as possible the perceived spatial accuracy of the 3D sound scene, since the least important elements in terms of their input are detected, in order to be at the end of the binary sequence (to minimize the defects generated by a subsequent truncation).
  • the angles ⁇ V and ⁇ E associated with the velocity vectors are exploited as indicated below.
  • V and energy E Gerzon's criteria for identifying elements to be coded that are least relevant in terms of contribution, in terms of spatial accuracy, to the 3D sound scene. Thus, contrary to usual usage, velocity vectors V and energy E are not used to optimize a sound rendering system considered.
  • This arrangement makes it possible, in a limited number of calculations, to determine the spectral parameter of the component to be determined whose contribution to the spatial accuracy is minimum.
  • steps a to g are repeated with a set of spectral parameters of components to be coded to be restricted by deleting the spectral parameters for which an order of priority has been assigned.
  • steps a to g are repeated with a set of spectral parameters of components to be coded to be ordered in which the spectral parameters for which an order of priority has been assigned are assigned a lower quantization rate. when using a nested quantizer.
  • a first coordinate of the energy vector is a function of the formula ⁇ 1 ⁇ i ⁇ Q ⁇ Ti 2 ⁇ cos ⁇ i ⁇ 1 ⁇ i ⁇ Q ⁇ Ti 2
  • a second coordinate of the energy vector is a function of the formula ⁇ 1 ⁇ i ⁇ Q ⁇ Ti 2 ⁇ sin ⁇ i ⁇ 1 ⁇ i ⁇ Q ⁇ Ti 2
  • a first coordinate of the velocity vector is a function of the formula ⁇ 1 ⁇ i ⁇ Q ⁇ Ti ⁇ cos ⁇ i ⁇ 1 ⁇ i ⁇ Q ⁇ Ti
  • a first coordinate of an angle vector indicates an angle depending on the sign of the second coordinate of the velocity vector and the arccosinus of the first coordinate of the velocity vector and that a second coordinate of the velocity vector an angle vector indicates an angle depending on the sign of the second coordinate of the energy vector and the arccosinus of the first coordinate of the energy vector.
  • the invention proposes a computer program to be installed in a scheduling module, said program comprising instructions for implementing the steps of a method according to the first aspect of the invention during a program execution by processing means of said module.
  • the invention proposes a signal comprising spectral components relating to respective spectral bands of elements to be coded coming from an audio scene comprising N signals with N> 1, in this respect. in that said spectral components are ordered for the implementation of the scheduling method according to the first aspect of the invention.
  • the figure 1 represents an audio coder 1 in one embodiment of the invention.
  • the encoder 1 comprises a time / frequency transformation module 3, a masking curve calculation module 7, a spatial transformation module 4, a module 5 for defining the least relevant coding elements combined with a quantization module 10, a module 6 for scheduling elements, a module 8 for constituting a binary sequence, for the transmission of a bit stream ⁇ .
  • a 3D sound scene comprises N channels on each respective signal S1, ..., SN is delivered.
  • the figure 2 represents an audio decoder 100 in one embodiment of the invention.
  • the decoder 100 comprises a bit sequence reading module 104, an inverse quantization module 105, a reverse surround conversion module 101, a frequency / time transformation module 102.
  • the decoder 100 is adapted to receive as input the bitstream ⁇ transmitted by the encoder 1 and to output Q 'signals S'1, S'2,..., S'Q' intended to feed the Q 'loudspeakers. respective speakers H1, H2 ..., HQ 'of a sound rendering system 103.
  • the time / frequency conversion module 3 of the encoder 1 receives as input the N signals S1,..., SN of the 3D sound scene to be encoded.
  • the time / frequency transformation module 3 On each time frame of each of these signals indicating the different values taken over time by the acoustic pressure Pi, the time / frequency transformation module 3 performs a time / frequency transformation, in this case a modified discrete cosine transform. (MDCT).
  • MDCT modified discrete cosine transform.
  • the definition elements of these masking curves are delivered to the module 5 for defining the least relevant coding elements.
  • the spatial transformation module 4 is adapted to perform a spatial transformation of the input signals provided, that is to say to determine the spatial components of these signals resulting from the projection on a spatial repository depending on the order of the transformation. .
  • the order of a spatial transformation is related to the angular frequency according to which it "scans" the sound field.
  • the spatial transformation module 4 performs an ambiophonic transformation, which gives a compact spatial representation of a 3D sound scene, by making projections of the sound field on the associated spherical or cylindrical harmonic functions.
  • (J m ) represent the functions of Bessel, r the distance between the center of the marker and the position of a listener placed at a point M, Pi the acoustic pressure of the signal Si, ⁇ i the angle of propagation of the wave acoustic signal corresponding to the signal Si and ⁇ the angle between the position of the listener and the axis of the marker.
  • This module 5 for defining the least relevant elements is adapted to implement operations, following the execution on the processing means of the module 5, of a first algorithm and / or a second algorithm, with a view to defining elements to code the least relevant and to order the elements to be coded between them.
  • This scheduling of the elements to be coded is used later when constituting a binary sequence to be transmitted.
  • the first algorithm comprises instructions adapted to implement, when executed on the processing means of the module 5, the steps of the Proc1 process described below with reference to FIG. figure 4 .
  • the principle of the Proc1 process is as follows: the respective influence of at least some computable spectral components is calculated as a function of spectral parameters derived from at least some of the N signals, on mask-to-noise ratios determined on the spectral bands in question. function of a coding of said spectral components. Then, an order of priority is assigned to at least one spectral component as a function of the calculated influence for said spectral component compared to the other calculated influences.
  • the detailed Proc1 process is as follows:
  • d k, j be the rate attributed to the element to be coded A (k, j), ( k, j ) ⁇ E 0 , during this allocation (the sum of these flows d k, j
  • the elements to be coded A (k, j), ( k , j ) ⁇ E 0 are quantized by the quantization module 10 as a function of the allocation defined for the bit rate D 0 .
  • the figure 8 represents a processing chain 200 comprising a p-order ambiophonic transformation module 201 (similar to the p-order ambiophonic transformation module 4 of the figure 1 ) followed by a module 202 of p-type inverse ambiophonic transformation.
  • the p-order ambiophonic transformation module 201 receives as input the spectral representations X1,..., XN of the signals S1,..., SN, performs on these signals a p-order ambiophonic transformation, delivers the ambiophonic signals obtained.
  • the figure 9 represents a processing chain 210 comprising the p-order ambiophonic transformation module 201 followed by a quantization module 203, then an inverse quantization module 204, and a p-order inverse ambiophonic transformation module 202.
  • the p-channel ambiophonic transformation module 201 at the input of the processing chain 210 receives as input the spectral representations X1,..., XN of the signals S1,..., SN and delivers the ambiophonic signals obtained A1 to AQ. which are provided at the input of the quantization module 203.
  • Signals AT 1, ..., AT Q are the signals delivered to the inverse ambiophonic transformation module 202 by the inverse quantization module 204, resulting from the inverse quantization performed on the signals delivered by the quantization module 203.
  • the processing chain 210 of the figure 9 provides the same acoustic pressures ⁇ 'i output that the processing chain 211 shown in figure 10 wherein the p-order ambiophonic transformation module 201 is located between the inverse quantization module 204 and the p-order inverse ambiophonic transformation module 202.
  • the quantization module 203 at the input of the processing chain 211 receives as input the spectral representations X1, ..., XN, quantizes them and then delivers the result of this quantization to the inverse quantization module 204, which delivers the N signals X 1, ..., X N.
  • These signals X 1, ..., X N are then provided to the cascaded surround back-up and surround-back transform modules 201 and 202.
  • the element to be encoded A (i 1 , j 1 ) is thus identified as the least relevant element as to the overall audio quality among the set of elements to be coded A (i, j) with ( i , j ) ⁇ E 0 .
  • the identifier of the pair (i 1 , j 1 ) is delivered to the scheduling module 6 as a result of the first iteration of the process Proc1.
  • Priority indices are then allocated by the scheduling module 6 to the different frequency bands, for the purpose of inserting the coding data into a binary sequence.
  • the scheduling module 6 on the sole basis of the results successively provided by the successive iterations of the process Proc1 implemented by the module 5 for defining the elements to be coded least relevant to the exclusion of the results provided by the Proc2 process, this last defines an order of said elements to be encoded, reflecting the importance of the elements to be coded in terms of overall audio quality.
  • the element to be encoded A (i 1 , j 1 ) corresponding to the pair (i 1 , j 1 ) determined during the first iteration of Proc1 is considered the least relevant in terms of overall audio quality. It is therefore assigned a minimum priority index Prio1 by the module 5.
  • the element to be encoded A (i 2 , j 2 ) corresponding to the pair (i 2 , j 2 ) determined during the second iteration of Proc1, is considered as the element to be coded the least relevant in terms of audio quality. overall, after the one assigned to priority Prio1. It is therefore assigned a minimum priority index Prio2, with Prio2> Prio1.
  • the scheduling module 6 thus successively orders r elements to be coded, each assigned to increasing priority indices Prio1, Prio2 to Prio r.
  • the elements to be coded that have not been assigned to an order of priority during an iteration of the process Proc1 are more important in terms of the overall audio quality than the elements to be coded to which priority orders have been assigned.
  • the priority order assigned to an element to be encoded A (k, j) is also assigned to the encoded element AT ( k , j ) resulting from a quantization of this element to be coded.
  • the binary sequence thus consists of spectral components relating to respective spectral bands, elements to be coded from of an audio scene comprising N signals with N> 1, and which are ordered according to their influence on determined mask-to-noise ratios on the spectral bands.
  • the spectral components of the binary sequence are, for example, ordered according to the method of the invention.
  • only some of the spectral components included in the constituted binary sequence are ordered using a method according to the invention.
  • a nested quantizer is used for the quantization operations.
  • the spectral component of an element to be encoded A (i 0 , j 0 ) identified is not suppressed, but a reduced bit rate is assigned to the coding of this component with respect to the coding of the other spectral components of elements to be coded to be ordered.
  • the encoder 1 is thus an encoder allowing a rate adaptability taking into account the interactions between the different monophonic signals. It allows to define compressed data optimizing the overall perceived audio quality.
  • the first iteration of the process 1 is assigned, for example, a minimum priority index (minimum of the elements remaining to be ordered) to the element to be encoded X (i 1 , j 1 ) such that the suppression of the spectral component X (i 1 , j 1 ) gives rise to a minimum variation of mask to noise ratio. Then we repeat the Proc1 process.
  • a minimum priority index minimum of the elements remaining to be ordered
  • Gerzon's criteria are generally used to characterize the location of virtual sound sources synthesized by the reproduction of signals from the loudspeakers of a given sound rendering system.
  • V ⁇ ⁇ x
  • V ⁇ 1 ⁇ i ⁇
  • the Ti cos ⁇ i ⁇ 1 ⁇ i ⁇
  • the Ti there V ⁇ 1 ⁇ i ⁇
  • the operations described below in one embodiment of the invention use the Gerzon vectors in an application other than that of seeking the best angles ⁇ i , characterizing the position of the speakers of the sound rendering system under consideration.
  • Gerzon's criteria are based on the study of the velocity and energy vectors of the acoustic pressures generated by a sound rendering system used.
  • the second algorithm comprises instructions adapted to implement, when executed on processing means of the module 5, the steps of the Proc2 process described below with reference to FIG. figure 6 .
  • the principle of the Proc2 process is as follows: the influence of each spectral parameter, among a set of spectral parameters to be ordered, on an angle vector defined as a function of energy and velocity vectors associated with Gerzon and calculated according to an inverse surround transformation on said quantized surround components. And an order of priority is assigned to at least one spectral parameter according to the calculated influence for said spectral parameter compared to the other calculated influences.
  • the detailed Proc2 process is as follows:
  • d k, j be the rate attributed to the element to be coded A (k, j), (k, j) e E o , during this initial allocation (the sum of these flows d k, j
  • each element to be coded A (k, j), (k, j) ⁇ E o is quantized by the quantization module 10 as a function of the flow rate d k, j which has been allocated to it in step 2a.
  • Each element AT ( k, j ) is the result of quantization, with the rate d k, j , of the parameter A (k, j), relative to the spectral band F j , of the ambiophonic component A (k).
  • the element AT ( k, j ) therefore defines the quantized value of the spectral representation for the frequency band F j , of the ambiophonic component Ak considered.
  • AT ⁇ AT ⁇ 1 0 AT ⁇ 1 1 1 . . . AT ⁇ ⁇ 1 , M - 1 AT ⁇ 2 0 AT ⁇ ⁇ 2 , M - 1 . . . AT ⁇ Q 0 AT ⁇ Q 1 . . . AT ⁇ ⁇ Q , M - 1 ,
  • each quantified element AT ( k , j ) is the sum of the spectral parameter A (k, j) of the ambiophonic component to be quantized and the quantization noise relative to said parameter).
  • an ambiophonic decoding matrix has been considered for a regular sound reproduction device and which comprises a number of loudspeakers equal to the number of input signals, which simplifies the calculation of the ambiophonic decoding matrix. Nevertheless, this step can be implemented by considering an ambiophonic decoding matrix corresponding to non-regular sound rendering devices and also for a number of speakers different from the number of input signals.
  • each element to be coded A (k, j), (k, j) e E 0 is quantized by the quantization module 10 as a function of the bit rate that has been allocated to it in step 2d.
  • AT is now the updated matrix of quantified elements AT (k, j), (k, j) e E 0 each resulting from the latter quantization according to the overall flow D 1 , parameters A (k, j).
  • step 2c After calculating a new p-order ambiophonic decoding performed as a function of the elements quantized with the overall bit rate D 1 , it is calculated, for the iteration n ° 1 of the process.
  • This standard represents the variation of the generalized Gerzon angle vector following the reduction of the rate of D 0 to D 1 in each frequency band F j .
  • This standard represents the variation of the generalized Gerzon angle vector in the frequency band F j 1 when for a rate D1, the frequency surround component A (i, j 1 ) is suppressed.
  • the component A (i 1 , j 1 ) is thus identified as the element to be coded of smaller importance in terms of spatial accuracy, compared to the other elements to be coded A (k, j), (k, j) e eo.
  • This redefined generalized Gerzon angle vector established for a quantization rate equal to D 1 , takes into account the deletion of the element to be encoded A (i 1 , j 1 ) and will be used for the next iteration of the process. Proc2.
  • the identifier of the pair (i 1, j 1) is supplied to the sequencing module 6 as a result of one iteration of the process Proc2 era.
  • the element to be encoded A (i 1 , j 1 ) is then removed from all the elements to be coded in the following process Proc2.
  • ⁇ 1 min d k, j , for (k, j) e E 1 .
  • the process Proc2 is repeated as many times as desired to order between them some or all of the elements to be coded A (k, j), (k, j) e E 1 remaining to be ordered.
  • E not - 1 E 0 ⁇ i 1 j 1 ... i not - 1 j not - 1 .
  • each element to be coded A (k, j), (k, j) ⁇ E n-1 is quantized by the quantization module 10 as a function of the bit rate allocated in step 2d above.
  • the result of this quantization of the element to be coded A (k, j) is AT (k, j), ( k , j ) ⁇ E n-1 .
  • This standard represents the variation of the vector of Gerzon angles generalized in each frequency band F j , following the reduction of flow rate from D n to D n-1 (the parameters A ( i 1 , j 1 ), ..., A ( i n -1 , j n -1 ) and AT ( i 1 , j 1 ), ..., AT (i n -1 , j n -1 ) being deleted).
  • This standard represents the variation, in the frequency band F j not , of the generalized Gerzon angle vector and for a rate D n , due to the removal of the ambiophonic component A (i, j n ) during the nth iteration of the Proc2 process.
  • the component A (i n , j n ) is thus identified as the element to be coded of smaller importance in terms of spatial accuracy, compared to the other elements to be coded A (k, j), (k, j) e E n-1 .
  • This redefined generalized Gerzon angle, established for a quantization rate equal to D n takes into account the deletion of the element to be encoded A (i n , j n ) and will be used for the next iteration.
  • the identifier of the pair (i n , j n ) is delivered to the scheduling module 6 as a result of the nth iteration of the process Proc2.
  • the band (i n , j n ) of the set of elements to be coded is then eliminated in the rest of the process Proc2, that is, the element to be coded A (i n , j n ).
  • the Proc2 process is repeated once and at most Q * M-1 times.
  • Priority indices are thus assigned by the scheduling module 6 to the different elements to be encoded, for the purpose of inserting the coding data into a binary sequence.
  • the scheduling module 6 defines an order of said elements to be encoded, reflecting the importance of the elements to be coded in terms of spatial accuracy.
  • the element to be encoded A (i 1 , j 1 ) corresponding to the pair (i 1 , j 1 ) determined during the first iteration of the process Proc2 is considered the least relevant in terms of spatial accuracy. It is therefore assigned a minimum priority index Prio1 by the module 5.
  • the element to be encoded A (i 2 , j 2 ) corresponding to the pair (i 2 , j 2 ) determined during the second iteration of the process Proc2, is considered as the element to be coded that is the least relevant in terms of precision. space, after the one assigned to priority Prio1. It is therefore assigned a minimum priority index Prio2, with Prio2> Prio1.
  • the scheduling module 6 thus successively orders r elements to be coded each assigned to increasing priority indices Prio1, Prio2 to Prio r.
  • the elements to be coded that have not been assigned to an order of priority during an iteration of the process Proc2 are more important in terms of spatial accuracy than the elements to be coded to which an order of priority has been assigned.
  • the priority order assigned to an element to be encoded A (k, j) is also assigned to the coded element according to the result AT (k, y) of the quantification of this element to code.
  • AT (k, j ) the coded element corresponding to the element to be coded A (k, j).
  • the binary sequence Seq is ordered in accordance with the scheduling performed by the module 6.
  • a nested quantizer is used for the quantization operations.
  • the spectral component of an element to be coded A (i, j) identified as the least important in terms of spatial precision during an iteration of the Proc2 process is not suppressed, but a reduced flow rate. is assigned to the coding of this component with respect to the coding of the other spectral components of elements to be coded to be ordered.
  • the encoder 1 is thus an encoder allowing a rate adaptability taking into account the interactions between the different monophonic signals. It allows to define compressed data optimizing perceived spatial precision.
  • the least important coding elements are defined using a Proc process combining the Proc1 and Proc2 processes described above, according to criteria taking into account the overall audio quality and the spatial relevance. .
  • the initialization of the Proc process includes the initializations of Proc1 and Proc2 processes as described above.
  • This rate and set of elements to be coded are determined during previous iterations of the Proc process on the basis of previous iterations of the Proc process using Proc1 and Proc2 processes.
  • the previous iterations made it possible to determine elements of coding determined the least important according to defined criteria.
  • step 300 selects in step 300, only one of the two elements to be coded identified or the two elements to be coded identified.
  • a (i n , j n ) that or each element to be coded.
  • the identifier or identifiers of the pair (i n , j n ) are provided to the scheduling module 6 as a result of the nth iteration of the process Proc2, which assigns it a priority Prion in view of the criteria defined.
  • the assigned Prion priority is greater than the priority of the elements to be coded during the previous iterations of the Proc process according to the defined criteria. This step replaces steps 1f of process Proc1 and 2k of process Proc2 as previously described.
  • the element or elements to be encoded A (i n , j n ) selected are then inserted in the binary sequence to be transmitted before the elements to be coded selected during the previous iterations of the Proc process (because the element to be coded A (i n , j n ) is more important in terms of the defined criteria than the elements to be coded previously selected by the process Proc).
  • the element or elements to be encoded A (i n , j n ) selected are inserted in the binary sequence to be transmitted after the other elements to be coded from the set E n-1 (because the element to be coded A (i n , j n ) is less important in terms of the defined criteria than those other elements to be coded).
  • This step 301 replaces steps 1g of process Proc1 and 2m of process Proc2 as described above.
  • the defined criteria make it possible to select the one or the least relevant elements identified respectively in step 300 of the Proc process.
  • the element identified by the process Proc1 is deleted at each iteration n, with n even and the element identified by the process Proc2 is deleted at each iteration n with n odd, which makes it possible to preserve the best overall audio quality and spatial accuracy.
  • An encoding implementing such a Proc process thus makes it possible to obtain an adaptable bitstream in terms of audio quality and in terms of spatial accuracy.
  • the decoder 100 comprises a bit sequence reading module 104, an inverse quantization module 105, a reverse surround conversion module 101 and a frequency / time transformation module 102.
  • the decoder 100 is adapted to receive as input the bitstream ⁇ transmitted by the encoder 1 and to output Q 'signals S'1, S'2,..., S'Q' intended to feed the Q 'loudspeakers. respective speakers H1, ..., HQ 'of a sound rendering system 103.
  • the number of speakers Q' may in one embodiment be different from the number Q of transmitted surround components.
  • FIG. figure 7 the configuration of a sound rendering system comprising 8 loudspeakers h1, h2, ..., h8 is represented in FIG. figure 7 .
  • the inverse quantization module 105 performs an inverse quantization operation.
  • At least some of the operations performed by the decoder are in one embodiment implemented following the execution on decoder processing means of computer program instructions.
  • An advantage of the coding of the components resulting from the ambiophonic transformation of the signals S1,..., SN as described is that in the case where the number of signals N of the sound scene is large, it is possible to represent them by a number Q of ambiophonic components much lower than N, degrading very little the spatial quality of the signals. The volume of data to be transmitted is reduced and this without significant degradation of the audio quality of the sound scene.
  • Another advantage of coding according to the invention is that such coding allows adaptability to the different types of sound rendering systems, regardless of the number, arrangement and type of loudspeakers including the sound rendering system. is equipped.
  • a decoder receiving a binary sequence comprising Q ambiophonic components operates on them an inverse surround transformation of any order p 'and corresponding to the number Q' of loudspeakers of the sound rendering system for which the signals are intended once. decoded.
  • Coding as performed by the coder 1 makes it possible to order the elements to be coded according to their respective contribution to the audio quality using the first process Proc1 and / or according to their respective contribution to the spatial accuracy and respect for the reproduction of the directions contained in the sound scene, using the second Proc2 process.
  • Proc1 and Proc2 can be implemented, according to the embodiments, in combination or else alone, independently of one another to define a binary sequence.

Landscapes

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

Description

  • La présente invention concerne les dispositifs de codage de signaux audio, destinés notamment à prendre place dans des applications de transmission ou de stockage de signaux audio numérisés et compressés.
  • L'invention est relative plus précisément aux systèmes de codage hiérarchique audio, ayant la capacité de fournir des débits variés, en répartissant les informations relatives à un signal audio à coder dans des sous-ensembles hiérarchisés, de telle sorte qu'elles puissent être utilisées par ordre d'importance sur le plan de la qualité audio. Le critère pris en compte pour déterminer l'ordre est un critère d'optimisation (ou plutôt de moindre dégradation) de la qualité du signal audio codé. Le codage hiérarchique est particulièrement adapté à la transmission sur des réseaux hétérogènes ou présentant des débits disponibles variables au cours du temps, ou encore à la transmission à destination de terminaux présentant des caractéristiques différentes ou variables.
  • L'invention concerne plus particulièrement le codage hiérarchique de scène sonore 3D. Une scène sonore 3D comprend une pluralité de canaux audio correspondant à des signaux monophoniques audio et est encore appelée son spatialisé.
  • Une scène sonore codée est destinée à être reproduite sur un système de rendu sonore, qui peut comprendre un simple casque, deux haut-parleurs d'un ordinateur ou encore un système de type Cinéma maison 5.1 (en anglais « Home Cinema ») avec cinq haut-parleurs (un haut-parleur au niveau de l'écran et à l'avant de l'auditeur théorique : un haut-parleur à gauche et un haut-parleur à droite ; à l'arrière de l'auditeur théorique : un haut-parleur à gauche et un haut-parleur à droite), etc.
  • Par exemple, considérons une scène sonore d'origine comportant trois sources sonores distinctes, localisées à différents endroits dans l'espace. Les signaux de description de cette scène sonore sont codés. Les données issues de ce codage sont transmises au décodeur, puis sont décodées. Les données décodées sont exploitées afin de générer cinq signaux destinés aux cinq haut-parleurs du système de rendu sonore. Chacun des cinq haut-parleurs diffusent un des signaux, l'ensemble des signaux diffusés par les haut-parleurs synthétisant la scène sonore 3D et donc positionnant dans l'espace trois sources sonores virtuelles.
  • Il existe différentes techniques de codage de scènes sonores.
  • Par exemple, une technique utilisée comprend la détermination d'éléments de description de la scène sonore, puis des opérations de compression de chacun des signaux monophoniques. Les données issues de ces compressions et les éléments de description sont alors fournis au décodeur.
  • L'adaptabilité (encore appelée scalabilité) en débit selon cette première technique est donc réalisable, en adaptant le débit lors des opérations de compression, mais elle est réalisée selon des critères d'optimisation de la qualité de chaque signal considéré individuellement.
  • Une autre technique de codage, qui est utilisée dans le codeur « MPEG Audio Surround » (cf. « Text of ISO/IEC FDIS 23003-1, MPEG Surround », ISO/IEC JTC1 / SC29 / WG11 N8324, July 2006, Klagenfurt, Austria), comprend l'extraction et le codage de paramètres spatiaux à partir de l'ensemble des signaux audio monophoniques sur les différents canaux. Ces signaux sont ensuite mélangés pour obtenir un signal monophonique ou stéréophonique, qui est alors comprimé par un codeur mono ou stéréo classique (par exemple de type MPEG-4 AAC, HE-AAC, etc). Au niveau du décodeur, la synthèse de la scène sonore 3D se fait à partir des paramètres spatiaux et du signal mono ou stéréo décodé.
  • L'adaptabilité en débit avec cette autre technique est ainsi réalisable en utilisant un codeur mono ou stéréo hiérarchique, mais elle est réalisée selon un critère d'optimisation de la qualité du signal monophonique ou stérophonique.
  • Par ailleurs, la méthode PSMAC (en anglais « Progressive Syntax-rich Multichannel Audio Codec ») permet de coder les signaux de différents canaux en utilisant la transformée KLT (en anglais « Karhunen Loeve Transform »), utile principalement pour la décorrélation des signaux et qui correspond à une décomposition sur des composantes principales dans un espace représentant les statistiques des signaux. Elle permet de distinguer les composantes les plus énergétiques des composantes les moins énergétiques.
  • L'adaptabilité en débit est basée sur une annulation des composantes les moins énergétiques. Toutefois, ces composantes peuvent parfois avoir une grande importance quant à la qualité audio globale.
  • Ainsi, si les techniques connues donnent de bons résultats en termes d'adaptabilité en débit, aucune ne propose une méthode d'adaptabilité en débit pleinement satisfaisante sur la base d'un critère d'optimisation de la qualité audio globale, en vue de définir des données compressées optimisant la qualité audio globale perçue, lors de la restitution de la scène sonore 3D décodée.
  • Par ailleurs, aucune des techniques de codage de scène sonore 3D connues ne permet d'adaptabilité en débit sur la base d'un critère d'optimisation de la résolution spatiale, lors de la restitution de la scène sonore 3D. Cette adaptabilité permet de garantir que chaque réduction de débit dégradera le moins possible la précision de la localisation des sources sonores dans l'espace, ainsi que la dimension de la zone de restitution, qui doit être la plus large possible autour de la tête de l'auditeur.
  • En outre, aucune des techniques de codage de scène sonore 3D connues ne permet d'adaptabilité en débit qui permette de garantir directement une qualité optimale quel que soit le système de rendu sonore utilisé pour la restitution de la scène sonore 3D. Les algorithmes de codage actuels sont définis pour optimiser la qualité par rapport à une configuration particulière du système de rendu sonore. En effet, par exemple dans le cas du codeur « MPEG Audio Surround » décrit ci-dessus mis en oeuvre avec un codage hiérarchique, une écoute directe sur casque ou deux haut-parleurs, ou encore en monophonique est possible. Si on souhaite exploiter le flux binaire compressé avec un système de rendu sonore de type 5.1 ou 7.1, il faut mettre en oeuvre des traitements supplémentaires au niveau du décodeur, par exemple à l'aide de boîtiers OTT (en anglais « One-To-Two ») pour générer les cinq signaux à partir des deux signaux décodés. Ces boîtiers permettent d'obtenir le nombre désiré de signaux dans le cas d'un système de rendu sonore de type 5.1 ou 7.1, mais ne permettent pas de reproduire l'aspect spatial réel. En outre, ces boîtiers ne garantissent pas l'adaptabilité à des systèmes de rendu sonores autres que ceux du type 5.1 et 7.1.
  • La présente invention vient améliorer la situation.
  • A cet effet la présente invention vise à proposer, suivant un premier aspect tel que défini dans la revendication 1, un procédé d'ordonnancement de composantes spectrales d'éléments à coder provenant d'une scène audio comprenant N signaux avec N>1, un élément à coder comportant des composantes spectrales se rapportant à des bandes spectrales respectives.
  • Le procédé comporte les étapes suivantes :
    • calcul de l'influence respective d'au moins certaines composantes spectrales calculables en fonction de paramètres spectraux issus de certains au moins des N signaux, sur des rapports masque à bruit déterminés sur les bandes spectrales en fonction d'un codage desdites composantes spectrales ;
    • attribution d'un ordre de priorité à au moins une composante spectrale en fonction de l'influence calculée pour ladite composante spectrale comparée aux autres influences calculées.
  • Un procédé selon l'invention permet ainsi d'ordonner par ordre d'importance quant à la qualité audio globale des composantes d'élément à coder.
  • Une séquence binaire est constituée après comparaison entre elles des différentes composantes spectrales des différents éléments à coder de la scène globale comparées entre elles sur le plan de leur apport quant à la qualité audio globale perçue. L'interaction entre signaux est ainsi prise en compte pour les comprimer de façon conjointe.
  • Le flux binaire peut ainsi être ordonné de manière à ce que chaque réduction de débit dégrade le moins possible la qualité audio globale perçue de la scène sonore 3D, puisque les éléments les moins importants sur le plan de leur apport au niveau de la qualité audio globale sont détectés, afin de pouvoir ne pas être insérés (lorsque le débit alloué pour la transmission est insuffisant pour transmettre toutes les composantes des éléments à coder) ou être mis en fin de séquence binaire (permettant de minimiser les défauts générés par une troncature ultérieure).
  • Dans un mode de réalisation, le calcul de l'influence d'une composante spectrale s'effectue selon les étapes :
    • a- codage d'un premier ensemble de composantes spectrales d'éléments à coder selon un premier débit;
    • b- détermination d'un premier rapport masque à bruit par bande spectrale;
    • c- détermination d'un second débit inférieur au dit premier;
    • d- suppression de ladite composante spectrale courante des éléments à coder et codage des composantes spectrales restantes des éléments à coder selon le second débit;
    • e- détermination d'un second rapport masque à bruit par bande spectrale;
    • f- calcul d'une variation de rapport masque à bruit en fonction des écarts déterminés entre les premier et second rapports masque à bruit pour le premier et le second débit par bande spectrale;
    • g- itération des étapes d à f pour chacune des composantes spectrales de l'ensemble de composantes spectrales d'éléments à coder à ordonner et détermination d'une variation de rapport masque à bruit minimum; l'ordre de priorité attribué à la composante spectrale correspondant à la variation minimum étant un ordre de priorité minimum.
  • Un tel processus permet ainsi de déterminer au moins une composante d'un élément à coder qui est la moins importante sur le plan de l'apport à la qualité audio globale, comparée à l'ensemble des autres composantes d'éléments à coder à ordonner.
  • Dans un mode de réalisation, on réitère les étapes a à g avec un ensemble de composantes spectrales d'éléments à coder à ordonner restreint par suppression des composantes spectrales pour lesquelles un ordre de priorité a été attribué.
  • Dans un autre mode de réalisation, on réitère les étapes a à g avec un ensemble de composantes spectrales d'éléments à coder à ordonner dans lequel les composantes spectrales pour lesquelles un ordre de priorité a été attribué sont affectées d'un débit de quantification plus réduit lors de l'utilisation d'un quantificateur imbriqué.
  • Dans un mode de réalisation, les éléments à coder comprennent les paramètres spectraux calculés pour les N canaux. Ce sont alors, par exemple, les composantes spectrales des signaux qui sont codées directement.
  • Dans un autre mode de réalisation, les éléments à coder comprennent des éléments obtenus par transformation spatiale, par exemple de type ambiophonique, appelé en anglais « ambisonic », des paramètres spectraux calculés pour les N signaux. Cette disposition permet d'une part de réduire le nombre de données à transmettre puisque, en général, les N signaux peuvent être décrits d'une manière très satisfaisante par un nombre de composantes ambiophoniques réduit (par exemple, un nombre égal à 3 ou 5), inférieur à N. Cette disposition permet en outre une adaptabilité à tout type de système de rendu sonore, puisqu'il suffit au niveau du décodeur, d'appliquer une transformée ambiophonique inverse de taille Q'x(2p'+1), (où Q' est égal au nombre de haut-parleurs du système de rendu sonore utilisé en sortie du décodeur et 2p'+1 le nombre de composantes ambiophoniques reçues), pour déterminer les signaux à fournir au système de rendu sonore, tout en préservant la qualité audio globale.
  • Dans un mode de réalisation, on utilise à la place de la transformée spatiale d'autres transformées linéaires telles que KLT etc.
  • Dans un mode de réalisation, on détermine les rapports masque à bruit en fonction des erreurs due au codage et relatives à des éléments à coder et en fonction en outre d'une matrice de transformation spatiale et d'une matrice déterminée en fonction de la transposée de ladite matrice de transformation spatiale.
  • Dans un mode de réalisation, des éléments à coder sont des composantes ambiophoniques, certaines des composantes spectrales étant alors des paramètres spectraux de composantes ambiophoniques. Le procédé comporte les étapes suivantes:
    1. a. calcul de l'influence de certaines au moins desdites composantes spectrales, sur un vecteur d'angle défini en fonction de vecteurs d'énergie et de vélocité associés à des critères de Gerzon et calculés en fonction d'une transformation ambiophonique inverse sur lesdits composantes ambiophoniques quantifiés;
    2. b. attribution d'un ordre de priorité à au moins une composante spectrale en fonction de l'influence calculée pour ladite composante spectrale comparée aux autres influences calculées.
  • Un procédé selon l'invention permet ainsi d'ordonner certains au moins des paramètres spectraux de composantes ambiophoniques de l'ensemble à ordonner, en fonction de leur importance relative sur le plan de l'apport à la précision spatiale.
  • La résolution spatiale ou précision spatiale mesure la finesse de la localisation des sources sonores dans l'espace. Une résolution spatiale accrue permet une localisation plus fine des objets sonores dans la pièce et permet d'avoir une zone de restitution plus large autour de la tête de l'auditeur.
  • Les interactions entre signaux et leur conséquence sur le plan de la précision spatiale sont prises en compte pour les comprimer de façon conjointe.
  • Le flux binaire peut ainsi être ordonné de manière à ce que chaque réduction de débit dégrade le moins possible la précision spatiale perçue de la scène sonore 3D, puisque les éléments les moins importants sur le plan de leur apport sont détectés, afin d'être mis en fin de séquence binaire (permettant de minimiser les défauts générés par une troncature ultérieure).
  • Dans un mode de réalisation d'un tel procédé, on exploite, de la façon indiquée ci-dessous, les angles ξ V et ξ E associés aux vecteurs vélocité V et énergie E des critères de Gerzon pour identifier des éléments à coder les moins pertinents sur le plan de l'apport, en termes de précision spatiale, à la scène sonore 3D. Ainsi contrairement à l'usage habituel, les vecteurs vélocité V et énergie E ne sont pas utilisés pour optimiser un système de rendu sonore considéré.
  • Dans un mode de réalisation, le calcul de l'influence d'un paramètre spectral s'effectue selon les étapes suivantes :
    • a- codage d'un premier ensemble de paramètres spectraux de composantes ambiophoniques à coder selon un premier débit;
    • b- détermination d'un premier vecteur d'angle par bande spectrale;
    • c- détermination d'un second débit inférieur au dit premier;
    • d- suppression dudit paramètre spectral courant des composantes à coder et codage des paramètres spectraux restants des composantes à coder selon le second débit;
    • e- détermination d'un second vecteur d'angle par bande spectrale;
    • f- calcul d'une variation de vecteur d'angle en fonction des écarts déterminés entre les premier et second vecteurs d'angle pour le premier et le second débit par bande spectrale;
    • g- itération des étapes d à f pour chacun des paramètres spectraux de l'ensemble de paramètres spectraux de composantes à coder à ordonner et détermination d'une variation de vecteur d'angle minimum; l'ordre de priorité attribué au paramètre spectral correspondant à la variation minimum étant un ordre de priorité minimum.
  • Cette disposition permet, en un nombre limité de calculs, de déterminer le paramètre spectral de la composante à déterminer dont l'apport à la précision spatiale est minimum.
  • Dans un mode de réalisation, on réitère les étapes a à g avec un ensemble de paramètres spectraux de composantes à coder à ordonner restreint par suppression des paramètres spectraux pour lesquelles un ordre de priorité a été attribué.
  • Dans un autre mode de réalisation, on réitère les étapes a à g avec un ensemble de paramètres spectraux de composantes à coder à ordonner dans lequel les paramètres spectraux pour lesquels un ordre de priorité a été attribué sont affecté d'un débit de quantification plus réduit lors de l'utilisation d'un quantificateur imbriqué.
  • De tels processus itératifs permettent d'identifier successivement, parmi les paramètres spectraux des composantes ambiophoniques auxquels n'ont pas encore été affectés des ordres de priorité, ceux qui apportent le moins sur le plan de la précision spatiale.
  • Dans un mode de réalisation, une première coordonnée du vecteur d'énergie est fonction de la formule 1 i Q Ti 2 cos ξ i 1 i Q Ti 2 ,
    Figure imgb0001
    une seconde coordonnée du vecteur d'énergie est fonction de la formule 1 i Q Ti 2 sin ξ i 1 i Q Ti 2 ,
    Figure imgb0002
    une première coordonnée du vecteur de vélocité est fonction de la formule 1 i Q Ti cos ξ i 1 i Q Ti
    Figure imgb0003
    et une seconde coordonnée du vecteur de vélocité est fonction de la formule 1 i Q Ti sin ξ i 1 i Q Ti ,
    Figure imgb0004
    dans lesquelles les Ti, i=1 à Q, représentent les signaux déterminés en fonction de la transformation ambiophonique inverse sur lesdits paramètres spectraux quantifiés selon le débit considéré et les ξ i i=1 à Q, sont des angles déterminés.
  • Dans un mode de réalisation, une première coordonnée d'un vecteur d'angle indique un angle fonction du signe de la deuxième coordonnée du vecteur de vélocité et de l'arccosinus de la première coordonnée du vecteur de vélocité et selon lequel une deuxième coordonnée d'un vecteur d'angle indique un angle fonction du signe de la deuxième coordonnée du vecteur d'énergie et de l'arccosinus de la première coordonnée du vecteur d'énergie.
  • Suivant un second aspect tel que défini dans la revendication 10, l'invention propose un codeur audio adapté pour coder une scène audio 3D comprenant N signaux respectifs en un flux binaire de sortie, avec N>1, comprenant :
    • un module de transformation adapté pour déterminer, en fonction des N signaux, des composantes spectrales se rapportant à des bandes spectrales respectives;
    • un module d'ordonnancement suivant le deuxième aspect de l'invention, adapté pour ordonner au moins certaines des composantes spectrales se rapportant à des bandes spectrales respectives;
    • un module de constitution d'une séquence binaire adapté pour constituer une séquence binaire comportant des données indiquant des composantes spectrales se rapportant à des bandes spectrales respectives en fonction de l'ordonnancement effectué par le module d'ordonnancement.
  • Suivant un troisième aspect tel que défini dans la revendication 11, l'invention propose un programme d'ordinateur à installer dans un module d'ordonnancement, ledit programme comprenant des instructions pour mettre en oeuvre les étapes d'un procédé suivant le premier aspect de l'invention lors d'une exécution du programme par des moyens de traitement dudit module.
  • Suivant un quatrième aspect tel que défini dans la revendication 12, l'invention propose un signal comportant des composantes spectrales se rapportant à des bandes spectrales respectives d'éléments à coder provenant d'une scène audio comprenant N signaux avec N>1, en ce en que lesdites composantes spectrales sont ordonnées pour la mise en oeuvre du procédé d'ordonnancement suivant le premier aspect de l'invention.
  • D'autres caractéristiques et avantages de l'invention apparaîtront encore à la lecture de la description qui va suivre. Celle-ci est purement illustrative et doit être lue en regard des dessins annexés sur lesquels :
    • la figure 1 représente un codeur dans un mode de réalisation de l'invention ;
    • la figure 2 représente un décodeur dans un mode de réalisation de l'invention ;
    • la figure 3 illustre la propagation d'une onde plane dans l'espace ;
    • la figure 4 est un organigramme représentant des étapes d'un premier processus Proc1 dans un mode de réalisation de l'invention ;
    • la figure 5a représente une séquence binaire construite dans un mode de réalisation de l'invention ;
    • la figure 5b représente une séquence binaire Seq construite dans un autre mode de réalisation de l'invention ;
    • la figure 6 est un organigramme représentant des étapes d'un second processus Proc2 dans un mode de réalisation de l'invention ;
    • la figure 7 représente un exemple de configuration d'un système de rendu sonore comprenant 8 haut-parleurs h1, h2,..., h8 ;
    • la figure 8 représente une chaîne de traitement ;
    • la figure 9 comporte une deuxième chaîne de traitement ;
    • la figure 10 représente une troisième chaîne de traitement ;
    • la figure 11 est un organigramme représentant des étapes d'un processus Proc dans un mode de réalisation de l'invention.
  • La figure 1 représente un codeur audio 1 dans un mode de réalisation de l'invention.
  • Le codeur 1 comprend un module 3 de transformation temps/fréquence, un module 7 de calcul de courbe de masquage, un module 4 de transformation spatiale, un module 5 de définition des éléments à coder les moins pertinents combiné avec un module 10 de quantification, un module 6 d'ordonnancement des éléments, un module 8 de constitution d'une séquence binaire, en vue de la transmission d'un flux binaire Φ.
  • Une scène sonore 3D comprend N canaux sur chacun un signal respectif S1, ..., SN est délivré.
  • La figure 2 représente un décodeur audio 100 dans un mode de réalisation de l'invention.
  • Le décodeur 100 comprend un module 104 de lecture de séquence binaire, un module 105 de quantification inverse, un module 101 de transformation ambiophonique inverse, un module 102 de transformation fréquence/temps.
  • Le décodeur 100 est adapté pour recevoir en entrée le flux binaire Φ transmis par le codeur 1 et pour délivrer en sortie Q' signaux S'1, S'2, ..., S'Q' destinés à alimenter les Q' haut-parleurs H1, H2 ..., HQ' respectifs d'un système de rendu sonore 103.
  • A chaque haut-parleur Hi, i=1 à Q', est associé un angle βi indiquant l'angle de propagation acoustique depuis le haut-parleur.
  • Opérations réalisées au niveau du codeur :
  • Le module 3 de transformation temps/fréquence du codeur 1 reçoit en entrée les N signaux S1,..., SN de la scène sonore 3D à coder.
  • Chaque signal Si, i = 1 à N, est représenté par la variation de sa pression omnidirectionnelle acoustique Pi et l'angle θi de propagation de l'onde acoustique dans l'espace de la scène 3D.
  • Sur chaque trame temporelle de chacun de ces signaux indiquant les différentes valeurs prises au cours du temps par la pression acoustique Pi, le module 3 de transformation temps/fréquence effectue une transformation temps/fréquence, dans le cas présent, une transformée en cosinus discrète modifiée (MDCT).
  • Ainsi il détermine, pour chacun des signaux Si, i=1 à N, sa représentation spectrale Xi, caractérisée par M coefficients MDCT X(i, j), avec j= 0 à M-1. Un coefficient MDCT X(i,j) représente ainsi le spectre du signal Si pour la bande de fréquence Fj.
  • Les représentations spectrales Xi des signaux Si, i= 1 à N, sont fournies en entrée du module 4 de transformation spatiale, qui reçoit en outre en entrée les angles θi de propagation acoustique caractérisant les signaux d'entrée Si.
  • Les représentations spectrales Xi des signaux Si, i= 1 à N, sont en outre fournies en entrée du module 7 de calcul des courbes de masquage.
  • Le module 7 de calcul de courbe de masquage est adapté pour déterminer la courbe de masquage spectrale de chaque signal Si considéré individuellement, à l'aide de sa représentation spectrale Xi et d'un modèle psychoacoustique, ce qui fournit un niveau de masquage pour chaque bande de fréquence Fj, j=0 à M-1 de chaque représentation spectrale Xi. Les éléments de définition de ces courbes de masquages sont délivrés au module 5 de définition des éléments à coder les moins pertinents.
  • Le module 4 de transformation spatiale est adapté pour effectuer une transformation spatiale des signaux d'entrée fournies, c'est-à-dire déterminer les composantes spatiales de ces signaux résultant de la projection sur un référentiel spatial dépendant de l'ordre de la transformation. L'ordre d'une transformation spatiale se rattache à la fréquence angulaire selon laquelle elle « scrute » le champ sonore.
  • Dans un mode de réalisation, le module 4 de transformation spatiale effectue une transformation ambiophonique, qui donne une représentation spatiale compacte d'une scène sonore 3D, en réalisant des projections du champ sonore sur les fonctions harmoniques sphériques ou cylindriques associées.
  • Pour plus d'information sur les transformations ambiophoniques, on pourra se référer aux documents suivants : « Représentation de champs acoustiques, application à la transmission et à la reproduction de scènes sonores complexes dans un contexte multimédia », Thèse de doctorat de l'université Paris 6, Jérôme DANIEL, 31 juillet 2001, « A highly scalable spherical microphone array based on an orthonormal décomposition of the sound field », Jens Meyer - Gary Elko, Vol. Il - pp. 1781-1784 in Proc. ICASSP 2002.
  • En référence à la figure 3, la formule suivante donne la décomposition en harmoniques cylindriques à un ordre infini d'un signal Si de la scène sonore : Si r ϕ = Pi . J 0 kr + 1 m 2. j m J m kr . cos m . θi . cos m . ϕ + sin m . θi . sin m . ϕ
    Figure imgb0005

    où (Jm) représentent les fonctions de Bessel, r la distance entre le centre du repère et la position d'un auditeur placé en un point M, Pi la pression acoustique du signal Si, θi l'angle de propagation de l'onde acoustique correspondant au signal Si et ϕ l'angle entre la position de l'auditeur et l'axe du repère.
  • Si la transformation ambiophonique est d'ordre p (p entier positif quelconque), pour une transformation ambiophonique 2D (selon le plan horizontal), la transformée ambiophonique d'un signal Si exprimée dans le domaine temporel comprend alors les 2p+1 composantes suivantes :
    • (Pi, Pi.cosθi, Pi.sinθi, Pi.cos2θi, Pi.sin2θi, Pi.cos3θi, Pi.sin3θi, ..., Pi.cospθi, Pi.sinpθi).
  • Dans ce qui suit, il a été considéré une transformation ambiophonique 2D. Néanmoins l'invention peut être mise en oeuvre avec une transformation ambiophonique 3D (dans un tel cas, on considère que les haut-parleurs sont disposés sur une sphère).
  • Les composantes ambiophoniques Ak, k=1 à Q = 2p + 1, considérées dans le domaine fréquentiel, comportent chacune M paramètres spectraux A(k,j), j= 0 à M-1 se rapportant respectivement aux bandes Fj telles que :
    • si A est la matrice comportant les composantes Ak, k=1 à Q issues de la transformation ambiophonique d'ordre p des signaux Si, i= 1 à N, Amb(p) est la matrice de transformation ambiophonique d'ordre p pour la scène sonore spatiale, et X est la matrice des composantes fréquentielles des signaux Si, i= 1 à N, alors : A ̲ = A 1 0 A 1 1 . . . A 1 , M - 1 A 2 0 A 2 , M - 1 . . . . A Q 0 A Q 1 . . . A Q , M - 1 ,
      Figure imgb0006
    Amb(p)=[Amb(p)(i,j)], avec i=1 à Q et j=1 à N, avec : Amb(p)(1,j)= 1, Amb p i j = 2 cos i 2 θ j
    Figure imgb0007
    si i pair et Amb p i j = 2 sin i - 1 2 θ j
    Figure imgb0008
    si i impair, soit Amb p ̲ = 1 1 . . 1 2 cos θ 1 2 cos θ 2 . . 2 cos θ N 2 sin θ 1 2 sin θ 2 . . 2 sin θ N 2 cos 2 θ 1 2 cos 2 θ 2 . . 2 cos 2 θ N 2 sin 2 θ 1 2 sin 2 θ 2 . . 2 sin 2 θ N . . . . 2 cos p θ 1 2 cos p θ 2 . . 2 cos p θ N 2 sin p θ 1 2 sin p θ 2 . . 2 sin p θ N
    Figure imgb0009
    et X ̲ = X 1 0 X 1 1 . . . X 1 , M - 1 X 2 0 X 2 1 . . . X 2 , M - 1 . . . . . . X N 0 . . . . X N , M - 1
    Figure imgb0010

    et on a A ̲ = Amb p ̲ x X ̲
    Figure imgb0011
  • Le module 4 de transformation spatiale est adapté pour déterminer la matrice A, à l'aide de l'équation (1) en fonction des données X(i, j) et θi (i=1 à N, j= 0 à M-1) qui lui sont fournies en entrée.
  • Dans le cas particulier considéré, les composantes ambiophoniques Ak, k=1 à Q, soit les paramètres A(k, j), k=1 à Q et j=0 à M-1, de cette matrice A, sont les éléments à coder par le codeur 1 dans une séquence binaire.
  • Les composantes ambiophoniques Ak, k=1 à Q, sont délivrées au module 5 de définition des éléments les moins pertinents pour quantification et détermination d'un ordonnancement des composantes ambiophoniques.
  • Ce module 5 de définition des éléments les moins pertinents est adapté pour mettre en oeuvre des opérations, suite à l'exécution sur des moyens de traitement du module 5, d'un premier algorithme et/ou un second algorithme, en vue de définir des éléments à coder les moins pertinents et d'ordonner les éléments à coder entre eux.
  • Cet ordonnancement des éléments à coder est utilisé ultérieurement lors de la constitution d'une séquence binaire à transmettre.
  • Le premier algorithme comprend des instructions adaptées pour mettre en oeuvre, lorsqu'elles sont exécutées sur les moyens de traitement du module 5, les étapes du processus Proc1 décrit ci-dessous en référence à la figure 4.
  • Processus Proc1
  • Le principe du processus Proc1 est le suivant : on calcule l'influence respective d'au moins certaines composantes spectrales calculables en fonction de paramètres spectraux issus de certains au moins des N signaux, sur des rapports masque à bruit déterminés sur les bandes spectrales en fonction d'un codage desdites composantes spectrales. Puis on attribue un ordre de priorité à au moins une composante spectrale en fonction de l'influence calculée pour ladite composante spectrale comparée aux autres influences calculées.
  • Dans un mode de réalisation, le processus Proc1 détaillé est le suivant:
  • Initialisation Etape 1a:
  • Dans cette étape, on définit un premier débit D0=Dmax et une allocation de parties de ce débit D0 entre les éléments à coder A(k,j), (k,j) ∈ E0={(k,j) tel que k=1 à Q et j=0 à M-1}. On nomme dk,j le débit attribué à l'élément à coder A(k,j), (k, j) ∈ E0, lors de cette allocation (la somme de ces débits dk,j| k =1 à Q, j=0 à M-1 est égale à D0) et δ0 = min dk,j pour (k, j) ∈ E0 .
  • Puis les éléments à coder A(k,j), (k,j) ∈ E0, sont quantifiés par le module 10 de quantification en fonction de l'allocation définie pour le débit D0.
  • Etape 1b :
  • Ensuite, on calcule le rapport entre le masque et l'erreur (ou bruit) de quantification (« Mask to noise Ratio » en anglais ou MNR) pour chaque signal Si et pour chaque sous-bande Fj, avec i= 1 à N et j = 0 à M-1, qui est égal à la puissance du masque du signal Si dans la bande Fj divisée par la puissance du bruit de quantification (E(i,j)) relative au signal Si dans cette bande Fj.
  • Pour ce faire, on détermine d'abord l'erreur de quantification b(k,j) dans chaque bande Fj des éléments à coder A(k,j), (k,j) ∈ Eo, de la façon suivante :
    • b(k,j) = A(k,j) - A (k,j), avec A (k,j) le résultat de la quantification, puis quantification inverse de l'élément A(k,j) (en général la quantification fournit un indice de quantification indiquant la valeur de l'élément quantifié dans un dictionnaire, le quantificateur inverse fournit la valeur de l'élément quantifié en fonction de l'indice).
  • Puis on détermine l'erreur de quantification E(i,j) dans chaque bande Fj pour chaque signal Si avec i= 1 à N et j = 0 à M-1, due à la quantification des éléments à coder selon le débit Do, en calculant la matrice E comportant les éléments E (i,j) : E ̲ = 1 Q 2 Amb p . Amb p t - 1 . Amb p ̲ t . B ̲ ,
    Figure imgb0012

    où Q= 2p+1, Amb(p) est la matrice de transformation ambiophonique d'ordre p et E ̲ = E 1 0 E 1 1 . . . E 1 , M - 1 E 2 0 E 2 1 . . . E 2 , M - 1 . . . . . . E N 0 . . . . E N , M - 1 = E i j i = 1 à N , j = 0 à M - 1
    Figure imgb0013

    et B ̲ = b 1 0 b 1 1 . . . b 1 , M - 1 b 2 0 b 2 , M - 1 . . . . b Q 0 b Q 1 . . . b Q , M - 1 , = b k j k = 1 à Q , j = 0 à M - 1 .
    Figure imgb0014
  • Puis le rapport entre le masque et l'erreur de quantification pour chaque signal Si et pour chaque bande Fj, avec i= 1 à N et j = 0 à M-1 est déterminé en fonction du bruit de quantification E(i,j) ainsi calculé relatif au signal Si dans cette bande Fj et du masque du signal Si dans la bande Fj fourni par le module 7 de calcul de masque.
  • On appelle MNR(0,D0) la matrice telle que l'élément (i,j) de la matrice MNR(0,D0), i= 1 à N et j = 0 à M-1, indique le rapport entre le masque et l'erreur de quantification pour le signal Si et pour la bande Fj pour la quantification précédemment effectuée.
  • Avant de décrire l'itération n°1 du processus Proc1, on indique ci-dessous comment l'équation (2) a été déterminée.
  • La figure 8 représente une chaîne de traitement 200 comportant un module 201 de transformation ambiophonique d'ordre p (similaire au module 4 de transformation ambiophonique d'ordre p de la figure 1) suivi d'un module 202 de transformation ambiophonique inverse d'ordre p. Le module 201 de transformation ambiophonique d'ordre p reçoit en entrée les représentations spectrales X1,..., XN des signaux S1, ..., SN, effectue sur ces signaux une transformation ambiophonique d'ordre p, délivre les signaux ambiophoniques obtenus A1 à AQ au module 202 de transformation ambiophonique inverse d'ordre Q, lequel délivre N signaux de pressions acoustiques respectives Πi, i=1 à N.
  • On a alors Π 1 Π 2 Π N = AmbInv p × Amb p × X 1 X 2 X N ,
    Figure imgb0015
    où Amb(p) est la matrice de transformation ambiophonique d'ordre p et Amblnv(p) est la matrice de transformation ambiophonique inverse d'ordre p (encore appelée matrice de décodage ambiophonique).
  • La figure 9 représente une chaîne de traitement 210 comportant le module 201 de transformation ambiophonique d'ordre p suivi d'un module 203 de quantification, puis un module 204 de quantification inverse, et d'un module 202 de transformation ambiophonique inverse d'ordre p. Le module 201 de transformation ambiophonique d'ordre p en entrée de la chaîne de traitement 210 reçoit en entrée les représentations spectrales X1,..., XN des signaux S1, ..., SN et délivre les signaux ambiophoniques obtenus A1 à AQ, qui sont fournis en entrée du module 203 de quantification. Les signaux A 1, ..., AQ sont les signaux délivrés au module 202 de transformation ambiophonique inverse par le module 204 de quantification inverse, résultant de la quantification inverse effectuées sur les signaux délivrés par le module 203 de quantification. Le module 202 de transformation ambiophonique inverse d'ordre Q délivre N signaux de pressions acoustiques respectives Π'i, i=1 à N.
  • La chaîne de traitement 210 de la figure 9 fournit les mêmes pressions acoustiques Π'i de sortie que la chaîne de traitement 211 représentée en figure 10, dans laquelle le module 201 de transformation ambiophonique d'ordre p se situe entre le module de quantification inverse 204 et le module 202 de transformation ambiophonique inverse d'ordre p. Dans la chaîne de traitement 211, le module 203 de quantification en entrée de la chaîne de traitement 211 reçoit en entrée les représentations spectrales X1, ..., XN, les quantifie puis délivre le résultat de cette quantification au module 204 de quantification inverse, qui délivre les N signaux X 1, ..., XN. Ces signaux X 1, ..., XN sont ensuite fournis aux modules 201 et 202 de transformation ambiophonique et de transformation ambiophonique inverse mis en cascade. Le module 202 de transformation ambiophonique inverse d'ordre p délivre les N signaux de pressions acoustiques respectives Π'i, i=1 à N.
  • On peut alors écrire : Πʹ 1 Πʹ 2 Πʹ N = AmbInv p × Amb p × X 1 X 2 X N
    Figure imgb0016
    Πʹ 1 Πʹ 2 Πʹ N - Π 1 Π 2 Π N = AmbInv p × Amb p × X 1 X 2 X N - X 1 X 2 X N = AmbInv p × Amb p × E . ̲
    Figure imgb0017
    Soit E ̲ = AmbInv p × Amb p - 1 Πʹ 1 Πʹ 2 Πʹ N - Π 1 Π 2 Π N .
    Figure imgb0018
    Par ailleurs, Πʹ 1 Πʹ 2 Πʹ N - Π 1 Π 2 Π N = AmbInv p × A 1 A 2 A Q - A 1 A 2 AQ = AmbInv p × B ̲ .
    Figure imgb0019
  • Donc on en déduit : E = (AmbInv(p) × Amb(p))-1 AmbInv(p) × B.
    Dans le cas où la matrice de décodage ambiophonique correspond à un système à haut-parleurs réguliers, on a AmbInv p = 1 N Amb p t
    Figure imgb0020
    (en fait, les erreurs de quantification E ou B ne dépendent que du codage effectué et non du décodage. Ce qui changera au niveau du décodage, en fonction de la matrice de décodage utilisée correspondant au système de haut-parleurs utilisé, c'est la façon dont l'erreur sera répartie entre les haut-parleurs. Cela est dû au fait que la psychoacoustique utilisée ne prend pas en compte les interactions entre les signaux. Donc si le calcul est fait pour une matrice de décodage bien définie et que le module de quantification optimise l'erreur pour cette matrice, alors pour les autres matrices de décodage l'erreur sera sous-optimale).
    On en déduit donc l'équation (2).
  • Revenons à la description de la figure 4.
  • Itération n°1 : Etape 1c :
  • On définit maintenant un deuxième débit D1 de codage, avec D1=D00, et une répartition de ce débit D1 bits de codage entre les éléments à coder A(k,j), k=1 à Q et j=0 à M-1.
  • Etape 1d :
  • Ensuite, pour chaque couple (k,j) ∈ E0, considéré successivement depuis le couple (1,0) jusqu'au couple (Q,M-1) selon l'ordre de lecture lexicographique des couples de E0, on réitère les opérations a1 à a7 suivantes :
    • a1- on considère que la sous-bande (k,j) est supprimée pour les opérations a2 à a5 ;
    • a2- les éléments à coder A(i,n), avec (i,n) ∈ E0 \(k,j) (c'est-à-dire (i,n) égal à chacun des couples de E0 à l'exception du couple (k,j)) sont quantifiés par le module 10 de quantification en fonction d'une répartition définie du débit D1 entre lesdits éléments à coder A(i,n), avec (i,n) ∈ E0 \(k, j);
    • a3- de la même façon qu'indiquée à l'étape 1b, on calcule à partir des éléments A (i,n), (i,n) ∈ E0 / (k,j) issus des opérations de quantification effectuées à l'étape a2, la matrice MNRk,j(1,D1) = [MNRk,j(1,D1) (i, t)] i=1 à N et = 0 à M-1 telle que chaque élément MNRk,j(1,D1) (i, t) de la matrice indique le rapport entre le masque et l'erreur (ou bruit) de quantification pour chaque signal Si et pour chaque sous-bande Ft, avec i=1 à N et t = 0 à M-1 suite à la quantification effectuée à l'étape a2 (la sous-bande (k,j) étant considérée comme supprimée, le bruit de quantification b(k,j) a été considéré nul dans les calculs). On mémorise les valeurs prises par les éléments de cette matrice MNRk,j(1,D1);
    • a4- puis, on calcule et on mémorise la matrice ΔMNRk,j(1) de variation de rapport entre le masque et l'erreur de quantification ΔMNR k,j (1)=|MNR k,j (1,D1) - MNR k,j(0,D0)|; avec MNR k,j(0,D0) est la matrice MNR(0,D0) dont on a supprimé l'élément d'indice (k,j)
    • a5- on calcule une norme ∥ΔMNRk,j(1)∥ de cette matrice ΔMNRk,j(1). La valeur de cette norme évalue l'impact, sur l'ensemble des rapports signal à bruit des signaux Si, de la suppression de la composante A(k,j) parmi les éléments à coder A(i,n), avec (i,n) ∈ E0.
      La norme calculée permet de mesurer l'écart entre MNRk,j(1,D1) et MNR k,j (0,D0) et est par exemple égale à la racine carrée de la somme de chaque élément de la matrice ΔMNRk,j(1) élevé au carré.
    • a6- on considère que la sous-bande (k,j) n'est plus supprimée ;
    • a7- si (k,j) ≠ max E0 = (Q,M-1), on incrémente le couple (k,j) dans E0 et on réitère les étapes a1 à a7 jusqu'à atteindre max E0.
    Etape 1e :
  • On détermine (i1,j1) correspondant à la valeur la plus petite parmi les valeurs ∥ΔMNRk,j(1)∥, obtenues pour (k,j) ∈ E0, soit :
  • L'élément à coder A(i1,j1) est ainsi identifié comme l'élément le moins pertinent quant à la qualité audio globale parmi l'ensemble des éléments à coder A(i,j) avec (i,j) ∈ E0.
  • Etape 1f :
  • L'identifiant du couple (i1,j1) est délivrée au module d'ordonnancement 6 en tant que résultat de la première itération du processus Proc1.
  • Etape 1g:
  • On supprime alors la bande (i1,j1), de l'ensemble des éléments à coder dans la suite du processus Proc1. On définit l'ensemble E1 = E0 \{(i 1,j 1)}.
  • Itération 2 et suivantes :
  • Des étapes similaires aux étapes 1c à 1g sont effectuées pour chaque itération n, n≥2, comme décrit ci-après.
    • ■ Etape 1c : on définit maintenant un (n+1)ième débit Dn de codage, avec Dn = Dn-1 n-1 tel que δ n-1 = min (dij ), pour (i,j) ∈ E n-1.
    • ■ Etape 1d : ensuite, pour chaque couple (k,j) ∈ E n-1 et considéré successivement selon l'ordre lexicographique, on réitère les opérations suivantes a1 à a7 :
      • a1- on considère que la sous-bande (k,j) est supprimée dans les opérations a2 à a5 ;
      • a2- les éléments à coder A(i,n), avec (i,n) ∈ E n-1/{(k,j)} sont quantifiés par le module 10 de quantification en fonction d'une répartition du débit Dn entre les éléments à coder A(i,n), avec (i,n) ∈ E n-1 \{(k,j)} ;
      • a3- on calcule à partir des éléments A (i,n), (i,n) ∈ E n-1\{(k,j)} déterminés en fonction de la quantification à l'étape a2, la matrice MNRk,j(n, Dn) indiquant le rapport entre le masque et l'erreur (ou bruit) de quantification pour chaque signal Si et pour chaque sous-bande Fj, avec i= 1 à N et j = 0 à M-1, suite à la quantification effectuée à l'étape a2 ;
      • a4- puis on calcule et on mémorise la matrice de variation de rapport entre le masque et l'erreur de quantification ΔMNR k,j (n)=|MNR k,j (n,Dn) - MNR k,j (n-1,Dn-1)|, avec MNR k,j (n-1,Dn-1) correspond à la matrice MNR (n-1,Dn-1) dont on a supprimé l'élément d'indice (k,j), et une norme ∥ΔMNRk,j(n)∥ de cette matrice ΔMNRk,j(n). La valeur de cette norme évalue l'impact, sur l'ensemble des rapports signal à bruit des signaux Si, de la suppression de la composante A(k,j) parmi les éléments à coder A(i,n), avec (i,n) ∈ E n-1 \{(k,j)}.
      • a5- on considère que la sous-bande (k,j) n'est plus supprimée ;
      • a6-- si (k,j) ≠ max E n-1, on incrémente le couple (k,j) dans E n-1 et on réitère les étapes a1 à a6 jusqu'à atteindre max E n-1.
    • ■ Etape 1e : on détermine (in,jn) correspondant à la valeur la plus petite parmi les valeurs obtenues ∥ΔMNRk,j(n)∥, pour (k, j) ∈ E n-1, soit i n j n = arg min k j E n - 1 Δ MNR k , j n .
      Figure imgb0021
      On mémorise aussi la matrice MNR n D n = MNR i n , j n n D n .
      Figure imgb0022

      L'élément à coder A(in,jn) est ainsi identifié comme l'élément le moins pertinent quant à la qualité audio globale parmi l'ensemble des éléments à coder A(i,j), tels que (i,j) ∈ E n-1.
    • ■ Etape 1f : l'identifiant du couple (in,jn) est délivrée au module d'ordonnancement 6 en tant que résultat de la nième itération du processus Proc1.
    • ■ Etape 1g : on supprime alors la bande (in,jn), de l'ensemble des éléments à coder dans la suite du processus Proc1. On définit l'ensemble E n = E n-1 \ {(in ,jn )}.
  • On réitère le processus Proc1 r fois et au maximum Q*M-1 fois.
  • Des indices de priorité sont ainsi ensuite attribués par le module 6 d'ordonnancement aux différentes bandes de fréquence, en vue de l'insertion des données de codage dans une séquence binaire.
  • Ordonnancement des éléments à coder et constitution d'une séquence binaire sur la base des résultats successivement fournies par les itérations successives du processus Proc1 :
  • Dans un mode de réalisation où l'ordonnancement des éléments à coder est réalisé par le module 6 d'ordonnancement sur la seule base des résultats successivement fournies par les itérations successives du processus Proc1 mis en oeuvre par le module 5 de définition des éléments à coder les moins pertinents à l'exclusion des résultats fournis par le processus Proc2, ce dernier définit un ordre desdits éléments à coder, traduisant l'importance des éléments à coder sur le plan de la qualité audio globale.
  • En référence à la figure 5a, l'élément à coder A(i1,j1) correspondant au couple (i1,j1) déterminé lors de la première itération de Proc1 est considéré le moins pertinent sur le plan de la qualité audio globale. Il lui est donc affecté un indice de priorité minimale Prio1 par le module 5.
  • L'élément à coder A(i2,j2) correspondant au couple (i2,j2) déterminé lors de la deuxième itération de Proc1, est considéré comme l'élément à coder le moins pertinent sur le plan de la qualité audio globale, après celui affecté à la priorité Prio1. Il lui est donc affecté un indice de priorité minimale Prio2, avec Prio2 > Prio1. Lorsque le nombre r d'itération du processus est strictement inférieur à Q*M-1, le module 6 d'ordonnancement ordonne ainsi successivement r éléments à coder affectés chacun à des indices de priorité croissants Prio1, Prio2 à Prio r. Les éléments à coder n'ayant pas été affectés à un ordre de priorité au cours d'une itération du processus Proc1 sont plus importants sur le plan de la qualité audio globale que les éléments à coder auxquels ont été affectés des ordres de priorité.
  • Lorsque r est égal à Q*M -1 fois, tous les éléments à coder sont ordonnées un à un.
  • Dans ce qui suit, on considère que le nombre d'itérations r du processus Proc1 effectuées est égal à Q*M -1 fois.
  • L'ordre de priorité affecté à un élément à coder A(k,j) est également affecté à l'élément codé A (k,j) résultant d'une quantification de cet élément à coder.
  • Le module 8 de constitution de la séquence binaire constitue une séquence binaire correspondant à une trame de chacun des signaux Si, i=1 à N en y intégrant successivement des éléments codés A (k,j) par ordre décroissant d'indices de priorité attribués, la séquence binaire étant à transmettre dans le flux binaire Φ.
  • Ainsi la séquence binaire constituée est ordonnée conformément à l'ordonnancement effectué par le module 6.
  • La séquence binaire est ainsi constituée de composantes spectrales se rapportant à des bandes spectrales respectives, d'éléments à coder provenant d'une scène audio comprenant N signaux avec N>1, et qui sont ordonnés en fonction de leur influence sur des rapports masque à bruit déterminés sur les bandes spectrales.
  • Les composantes spectrales de la séquence binaire sont par exemple ordonnées selon le procédé de l'invention.
  • Dans un mode de réalisation, seules certaines des composantes spectrales comprises dans la séquence binaire constituée sont ordonnées à l'aide d'un procédé selon l'invention.
  • Dans le mode de réalisation considéré ci-dessus, une suppression d'une composante spectrale d'un élément à coder A(i,j) a lieu à chaque itération de l'algorithme Proc1.
  • Dans un autre mode de réalisation, on utilise un quantificateur imbriqué pour les opérations de quantification. Dans un tel cas, la composante spectrale d'un élément à coder A(i0,j0) identifié n'est pas supprimé, mais un débit réduit est affecté au codage de cette composante par rapport au codage des autres composantes spectrales d'éléments à coder restant à ordonner.
  • Le codeur 1 est ainsi un codeur permettant une adaptabilité en débit prenant en compte les interactions entre les différents signaux monophoniques. Il permet de définir des données compressées optimisant la qualité audio globale perçue.
  • Les opérations d'ordonnancement des éléments de la séquence binaire et de constitution de la séquence binaire à l'aide du processus Proc1 ont été décrites ci-dessus pour un mode de réalisation de l'invention dans lequel les éléments à coder comprennent les composantes ambiophoniques des signaux.
  • Dans un autre mode de réalisation, un codeur selon l'invention ne code pas ces composantes ambiophoniques, mais les coefficients spectraux X(i,j), j= 0 à M, des signaux Si.
  • Dans un tel cas, on affecte à la première itération du processus 1 par exemple, un indice de priorité minimum (minimum parmi les éléments restant à ordonner) à l'élément à coder X(i1, j1) tel que la suppression de la composante spectrale X(i1, j1) donne lieu à une variation minimale de rapport masque à bruit. Puis on réitère le processus Proc1.
  • Processus Proc2
  • Les critères de Gerzon sont généralement utilisés pour caractériser la localisation des sources sonores virtuelles synthétisées par la restitution de signaux depuis les haut-parleurs d'un système de rendu sonore donné.
  • Ces critères reposent sur l'étude des vecteurs de vélocité et d'énergie des pressions acoustiques générées par un système de rendu sonore utilisé.
  • Lorsqu'un système de rendu sonore comprend L haut-parleurs, les signaux, i=1 à L, générés par ces haut-parleurs, sont définies par une pression acoustique Ti et un angle de propagation acoustique ξ i .
  • Le vecteur de vélocité V est alors défini ainsi : V = { x V = 1 i L Ti cos ξ i 1 i L Ti y V = 1 i L Ti sin ξ i 1 i L Ti
    Figure imgb0023
  • Il existe un couple de coordonnées polaires (rv, ξ v ) tel que : V = { x V = 1 i L Ti cos ξ i 1 i L Ti = r V cos ξ V y V = 1 i L Ti sin ξ i 1 i L Ti = r V sin ξ V
    Figure imgb0024
  • Le vecteur d'énergie E est défini ainsi : E = { x E = 1 i L Ti 2 cos ξ i 1 i L Ti 2 y E = 1 i L Ti 2 sin ξ i 1 i L Ti 2
    Figure imgb0025
  • Il existe un couple de coordonnées polaires (rE, ξ E ) tel que : E = { x E = 1 i L Ti 2 cos ξ i 1 i L Ti 2 = r E cos ξ E y E = 1 i L Ti 2 sin ξ i 1 i L Ti 2 = r E sin ξ E
    Figure imgb0026
  • Les conditions nécessaires pour que la localisation des sources sonores virtuelles soit optimale se définissent en cherchant les angles ξ i , caractérisant la position des haut-parleurs du système de rendu sonore considéré, vérifiant les critères ci-dessous, dits critères de Gerzon, qui sont :
    • critère 1, relatif à la précision de l'image sonore de la source S en basses fréquences : ξ v = ξ ; où est ξ l'angle de propagation de la source S réelle qu'on cherche à atteindre.
    • critère 2, relatif à la stabilité de l'image sonore de la source S en basses fréquences : rv = 1 ;
    • critère 3, relatif à la précision de l'image sonore de la source S en hautes fréquences : ξ E = ξ ;
    • critère 4, relatif à la stabilité de l'image sonore de la source S en hautes fréquences: r E = 1.
  • Les opérations décrites ci-dessous dans un mode de réalisation de l'invention utilisent les vecteurs de Gerzon dans une application autre que celle consistant à rechercher les meilleurs angles ξ i , caractérisant la position des haut-parleurs du système de rendu sonore considéré.
  • Les critères de Gerzon reposent sur l'étude des vecteurs de vélocité et d'énergie des pressions acoustiques générées par un système de rendu sonore utilisé.
  • Chacune des coordonnées xv, yv, xE, yE indiquées dans les équations 3 et 4 relatives aux vecteurs d'énergie et vélocité associés aux critères de Gerzon est élément de [-1,1]. Donc il existe un unique couple (ξV , ξE) vérifiant les équations suivantes, correspondant au cas parfait (rV, rE) = (1,1) : 1 i L Ti cos ξ i 1 i L Ti = cos ξ V , 1 i L Ti sin ξ i 1 i L Ti = sin ξ V ,
    Figure imgb0027
    1 i L Ti 2 cos ξ i 1 i L Ti 2 = cos ξ E et 1 i L Ti 2 sin ξ i 1 i L Ti 2 = sin ξ E .
    Figure imgb0028
  • Les angles ξ V et ξ E de ce couple unique sont donc définis par les équations suivantes (équations (5)): ξ V = sign 1 i L Ti sin ξ i 1 i L Ti . arccos 1 i L Ti cos ξ i 1 i L Ti
    Figure imgb0029
    ξ E = sign 1 i L Ti 2 sin ξ i 1 i L Ti 2 . arccos 1 i L Ti 2 cos ξ i 1 i L Ti 2
    Figure imgb0030
  • On appellera par la suite vecteur d'angles de Gerzon généralisé le vecteur ξ tel que ξ = ξ V ξ E .
    Figure imgb0031
  • Le deuxième algorithme comprend des instructions adaptées pour mettre en oeuvre, lorsqu'elles sont exécutées sur des moyens de traitement du module 5, les étapes du processus Proc2 décrit ci-dessous en référence à la figure 6.
  • Le principe du processus Proc2 est le suivant : on calcule l'influence de chaque paramètre spectral, parmi un ensemble de paramètres spectraux à ordonner, sur un vecteur d'angle défini en fonction de vecteurs d'énergie et de vélocité associés à des critères de Gerzon et calculés en fonction d'une transformation ambiophonique inverse sur lesdits composantes ambiophoniques quantifiés. Et on attribue un ordre de priorité à au moins un paramètre spectral en fonction de l'influence calculée pour ledit paramètre spectral comparé aux autres influences calculées.
  • Dans un mode de réalisation, le processus Proc2 détaillé est le suivant:
  • Initialisation (n=0) Etape 2a :
  • On définit un débit D0=Dmax et une allocation de ce débit entre les éléments à coder A(k,j), pour (k,j) ∈ E0= {(k,j) tel que k=1 à Q et j=0 à M-1}.
  • On nomme dk,j le débit attribué à l'élément à coder A(k,j), (k,j) e Eo, lors de cette allocation initiale (la somme de ces débits dk,j| i =1 à Q, j=0 à M-1 est égale à D0) et δ0 = min dk,j, pour (k,j) e E0.
  • Etape 2b :
  • Puis chaque élément à coder A(k,j), (k,j) ∈ Eo est quantifié par le module 10 de quantification en fonction du débit dk,j qui lui a été alloué à l'étape 2a.
  • A est la matrice des éléments A (k,j), k=1 à Q et j=0 à M-1. Chaque élément A (k,j) est le résultat de la quantification, avec le débit dk,j, du paramètre A(k,j), relative à la bande spectrale Fj, de la composante ambiophonique A(k). L'élément A (k,j) définit donc la valeur quantifiée de la représentation spectrale pour la bande de fréquence Fj, de la composante ambiophonique Ak considérée. A ̲ = A 1 0 A 1 1 . . . A 1 , M - 1 A 2 0 A 2 , M - 1 . . . . A Q 0 A Q 1 . . . A Q , M - 1 ,
    Figure imgb0032
  • Etape 2c :
  • Ensuite, on effectue sur ces composantes ambiophoniques quantifiées A (k, j), k=1 à Q et j=0 à M-1, un décodage ambiophonique d'ordre p tel que 2p+1=Q et qui correspond à un système régulier de N haut-parleurs, pour déterminer les pressions acoustiques T1i, i = 1 à N, des N signaux sonores obtenus en résultat de ce décodage ambiophonique.
  • Dans le cas considéré, AmbInv(p) est la matrice de transformation ambiophonique inverse d'ordre p (ou décodage ambiophonique d'ordre p) délivrant N signaux T11, ..., T1N correspondant à N haut-parleurs H'1, ..., H'N respectifs, disposés régulièrement autour d'un point. Par conséquent, la matrice AmbInv(p) se déduit de la transposition de la matrice Amb(p,N) qui est la matrice d'encodage ambiophonique résultante de l'encodage de la scène sonore définie par les N sources correspondant aux N haut-parleurs H'1, ..., H'N et disposés respectivement dans les positions ξ1, ..., ξ N . Ainsi on peut écrire que : AmbInv p = 1 N Amb p N t .
    Figure imgb0033
  • T1 est la matrice des composants spectraux T1(i,j) des signaux T1i, i=1 à N relatifs aux bandes de fréquences Fj, j= 0 à M-1. Ces composants spectraux sont issus de la transformation ambiophonique inverse d'ordre p appliquée sur les composantes ambiophonique quantifiées A (k, j), k=1 à Q et j=0 à M-1. T 1 ̲ = T 1 1 0 T 1 1 1 . . . T 1 1 , M - 1 T 1 2 0 T 1 2 1 . . . T 1 2 , M - 1 . . . . . . T 1 N 0 . . . . T 1 N , M - 1
    Figure imgb0034

    et on a T 1 ̲ = Amb ̲ lnv p ̲ x A ̲ = 1 N Amb p N t x A ̲
    Figure imgb0035
  • Ainsi les composants T1(i,j), i=1 à N, dépendent de l'erreur de quantification relative à la quantification considérée des composantes ambiophoniques A(k,j), k=1 à Q et j=0 à M-1 (en effet, chaque élément quantifié A (k,j) est la somme du paramètre spectral A(k,j) de composante ambiophonique à quantifier et du bruit de quantification relatif audit paramètre).
  • Pour chaque bande de fréquence Fj, j= 0 à M-1, on calcule alors, à l'aide des équations (5), le vecteur d'angles de Gerzon généralisé ξ j (0) à l'initialisation du processus Proc2 (n=0), en fonction des composantes spectrales T1(i,j), i =1 à N et j=0 à M-1 déterminées suite au décodage ambiophonique : ξ j 0 = ξ Vj ξ Ej ,
    Figure imgb0036
    avec ξ i = 2 π i - 1 N ,
    Figure imgb0037
    i =1 à N : ξ Vj = sign 1 i N T 1 i j sin ξ i 1 i N T 1 i j . arccos 1 i N T 1 i j cos ξ i 1 i N T 1 i j
    Figure imgb0038
    ξ Ej = sign 1 i Q ( T 1 i j 2 sin ξ i 1 i Q T 1 i j 2 . arccos 1 i Q T 1 i j 2 cos ξ i 1 i Q T 1 i j 2 .
    Figure imgb0039
  • Et on définit ξ̃ j (0) = ξ j (0).
  • On notera qu'ici a été considérée une matrice de décodage ambiophonique pour un dispositif de rendu sonore régulier et qui comporte un nombre de haut-parleurs égal au nombre des signaux d'entrées, ce qui simplifie le calcul de la matrice de décodage ambiophonique. Néanmoins, cette étape peut être mise en oeuvre en considérant une matrice de décodage ambiophonique correspondant à des dispositifs de rendu sonore non réguliers et aussi pour un nombre de haut-parleurs différents du nombre des signaux d'entrée.
  • Itération n°1 (n=1) Etape 2d :
  • On définit un débit D1=D00 et une allocation de ce débit D1 entre les éléments à coder A(k,j), pour (k,j) e E0.
  • Etape 2e :
  • Puis chaque élément à coder A(k,j), (k,j) e E0 est quantifié par le module 10 de quantification en fonction du débit qui lui a été alloué à l'étape 2d.
  • A est maintenant la matrice actualisée des éléments quantifiés A(k,j), (k,j) e E0 résultant chacun de cette dernière quantification selon le débit global D1, des paramètres A(k,j).
  • Etape 2f :
  • De façon similaire à celle décrite précédemment dans l'étape 2c, après calcul d'un nouveau décodage ambiophonique d'ordre p effectué en fonction des éléments quantifiés avec le débit global D1, on calcule, pour l'itération n°1 du processus Proc2, un premier vecteur d'angles de Gerzon généralisé ξ j (1) dans chaque bande fréquentielle Fj, en fonction des composantes spectrales T1(i,j), i =1 à N, j=0 à M-1 déterminées suite au nouveau décodage ambiophonique, à l'aide de l'équation (6).
  • On calcule ensuite le vecteur Δξ j (1) égal à la différence entre le vecteur d'angles de Gerzon ξ ˜ j 0
    Figure imgb0040
    calculé à l'étape 2c de l'initialisation et le vecteur d'angles de Gerzon généralisé ξ j (1) calculé à l'étape 2f de l'itération n°1 : Δξ j(1)=ξ j(1) - ξ̃j (0), j=0 à M-1.
  • Etape 2g :
  • On calcule la norme ∥Δξ j (1)∥, dans chaque bande fréquentielle Fj, de la variation Δξ j (1), j=0 à M-1.
  • Cette norme représente la variation du vecteur d'angles de Gerzon généralisé suite à la réduction du débit de D0 à D1 dans chaque bande fréquentielle Fj.
  • On détermine j1 l'indice de la bande fréquentielle F j 1
    Figure imgb0041
    telle que la norme Δ ξ j 1 1
    Figure imgb0042
    de la variation d'angle de Gerzon calculée dans la bande fréquentielle F j 1
    Figure imgb0043
    soit inférieure ou égale à chaque norme ∥Δξ j(1)∥, calculée pour chaque bande fréquentielle Fj, j=0 à M-1. On a donc j 1 = arg min j = 0 M - 1 Δ ξ j 1 .
    Figure imgb0044
  • Etape 2h :
  • On considère maintenant les paramètres spectraux des composantes ambiophoniques relatifs à la bande spectrale F j 1 ,
    Figure imgb0045
    soit les paramètres A(k, j1), avec k ∈ F0=[1,Q].
  • Et on réitère les étapes 2h1 à 2h5 suivantes pour tout i e F0 considéré alternativement depuis 1 jusqu'à Q :
    • 2h1- on considère que la sous-bande (i,j1) est supprimée pour les opérations 2h2 à 2h4 : on considère donc que A(i,j1) est nul et que l'élément quantifié correspondant A (i, ji ) est aussi nul ;
    • 2h2- De façon similaire à celle décrite précédemment dans l'étape 2c, après calcul d'un décodage ambiophonique d'ordre p effectué en fonction des éléments quantifiés avec le débit global D1 ( A (i,ji ) étant nul), on détermine le vecteur d'angles de Gerzon généralisé ξ j1(A(i,j1) = 0, 1) dans la bande fréquentielle F j 1
      Figure imgb0046
      en fonction des composantes spectrales T1(i,j), i = 1 à N et j = 0 à M-1 déterminées suite audit décodage ambiophonique à l'aide de l'équation (6).
    • 2h3- On calcule ensuite le vecteur Δξ ij1(1) représentant la différence dans la bande fréquentielle F j 1
      Figure imgb0047
      entre le vecteur d'angles de Gerzon généralisé ξ j1 (A(i,1) = 0, 1) calculé ci-dessus et le vecteur d'angles de Gerzon généralisé ξ j1(1) calculé à l'étape 2f de l'itération n°1 ci-dessus : Δξ ij1(1) = ξ j1 (A(i,j1,) =0, 1) - ξ j1(1). Puis on calcule la norme ||Δ ξ ij1 (1) || du vecteur Δ ξ ij1 (1) : ||Δ ξ ij1 (1) || = || ξ j1(A(i,j1) = 0,1) - ξ j1 (1) ||.
  • Cette norme représente la variation du vecteur d'angles de Gerzon généralisé dans la bande fréquentielle F j 1
    Figure imgb0048
    lorsque pour un débit D1, on supprime la composante ambiophonique fréquentielle A(i,j1).
  • 2h4- Si i ≠ max F0, on considère que la sous-bande (i,j1) n'est plus supprimée et on passe à l'étape 2h5. Si i = max F0, on considère que la sous-bande (i,j1) n'est plus supprimée et on passe à l'étape 2i.
  • 2h5- On incrémente i dans l'ensemble F0 et on réitère les étapes 2h1 à 2h4 pour la valeur de i ainsi mise à jour jusqu'à i = max F0.
  • On obtient ainsi Q valeurs de variation d'angle de Gerzon généralisé ||Δξ ij1(1)||, pour chaque i e F0=[1, Q].
  • Etape 2i :
  • On compare entre elles les valeurs ||Δξ ij1 (1)||, pour chaque i e F0=[1, Q], on identifie la valeur minimale parmi ces valeurs et on détermine l'indice i1 e F0 correspondant à la valeur minimale, soit i 1 = arg min i F 0 Δ ξ i j 1 1 .
    Figure imgb0049
  • La composante A(i1, j1) est ainsi identifiée comme l'élément à coder de plus faible importance sur le plan de la précision spatiale, comparé aux autres éléments à coder A(k,j), (k,j) e Eo.
  • Etape 2j :
  • On redéfinit, pour chaque bande spectrale Fj, le vecteur d'angles de Gerzon généralisé ξ ˜ j 1
    Figure imgb0050
    issu de l'itération 1, calculé pour un débit D1 : ξ ˜ j 1 = ξ j 1 si j 0 , M - 1 j 1 ;
    Figure imgb0051
    ξ ˜ j 1 1 = ξ j 1 A i 1 j 1 = 0 , 1 si j = j 1 .
    Figure imgb0052
  • Ce vecteur redéfini d'angles de Gerzon généralisé, établi pour un débit de quantification égal à D1, prend en compte la suppression de l'élément à coder A(i1, j1) et sera utilisé pour l'itération suivante du processus Proc2.
  • Etape 2k :
  • L'identifiant du couple (i1,j1) est délivré au module d'ordonnancement 6 en tant que résultat de la 1ère itération du processus Proc2.
  • Etape 2m :
  • On supprime alors l'élément à coder A(i1,j1) de l'ensemble des éléments à coder dans la suite du processus Proc2.
  • On définit l'ensemble E1= E0\(i1,j1).
  • On définit δ1 =min dk,j, pour (k,j) e E1.
  • Dans une itération n°2 du processus Proc2, on réitère des étapes similaires aux étapes 2d à 2n indiquées ci-dessus.
  • Le processus Proc2 est réitéré autant de fois que souhaité pour ordonner entre eux certains ou la totalité des éléments à coder A(k,j), (k,j) e E1 restant à ordonner.
  • Ainsi les étapes 2d à 2n décrites ci-dessus sont réitérées pour une nième itération :
  • Itération n (n>1) :
  • E n - 1 = E 0 i 1 j 1 i n - 1 j n - 1 .
    Figure imgb0053
  • Les éléments à coder A(k,j), pour (k,j) e E0\En-1 ont été supprimés au cours des étapes 2m des itérations précédentes.
  • Etape 2d :
  • On définit un débit Dn = Dn-1 n-1 et une allocation de ce débit Dn entre les éléments à coder A(k,j), pour (k,j) e En-1.
  • Lors du calcul des décodages ambiophoniques effectués ci-après, on considère donc que les éléments quantifiés A (k,j), pour (k,j) e E0\En-1 sont nuls
  • Etape 2e :
  • Puis chaque élément à coder A(k,j), (k,j) ∈ En-1, est quantifié par le module 10 de quantification en fonction du débit alloué à l'étape 2d ci-dessus.
  • Le résultat de cette quantification de l'élément à coder A(k,j) est A(k, j), (k,j) ∈ En-1.
  • Etape 2f :
  • De façon similaire à celle décrite précédemment pour l'itération 1, après calcul d'un décodage ambiophonique d'ordre p effectué en fonction des éléments quantifiés avec le débit global Dn (on a donc considéré lors de ce décodage ambiophonique que les composantes A (i 1,j 1),..., A (i n-1, j n-1) sont nulles), on calcule, pour l'itération n du processus Proc2, un premier vecteur d'angles de Gerzon généralisé ξ j (n) dans chaque bande fréquentielle Fj en fonction des composantes spectrales T1i, i =1 à N déterminées suite audit décodage ambiophonique, à l'aide de l'équation (6).
  • On calcule ensuite le vecteur Δξ j (n) égal à la différence entre le vecteur d'angles de Gerzon ξ ˜ j n - 1
    Figure imgb0054
    calculé à l'étape 2j de l'itération n-1 et le vecteur d'angles de Gerzon généralisé ξ j(n) calculé à la présente étape : Δ ξ j n = ξ j n - ξ ˜ j n - 1 , j = 0 à M - 1.
    Figure imgb0055
  • Etape 2g :
  • On calcule la norme ∥Δξ j (n)∥, dans chaque bande fréquentielle Fj, de la variation Δξ j (n), j=0 à M-1.
  • Cette norme représente la variation du vecteur d'angles de Gerzon généralisé dans chaque bande fréquentielle Fj, suite à la réduction de débit de Dn à Dn-1 (les paramètres A(i 1,j 1), ..., A(i n-1, j n-1) et A (i 1, j 1), ..., A (i n-1, j n-1) étant supprimés).
  • On détermine jn l'indice de la bande fréquentielle F j n
    Figure imgb0056
    telle que la norme ∥Δξ jn (n)∥ de la variation du vecteur d'angles de Gerzon calculée dans la bande fréquentielle F j n
    Figure imgb0057
    est inférieure ou égale à chaque norme ∥Δξ j (n)∥, calculée pour chaque bande fréquentielle Fj, j=0 à M-1. On a donc j n = arg min j = 0 M - 1 Δ ξ j n .
    Figure imgb0058
  • Etape 2h :
  • On considère maintenant les paramètres spectraux des composantes ambiophoniques relatifs à la bande spectrale F j n ,
    Figure imgb0059
    soit les paramètres A(k, jn), avec k e Fn-1= {i e [1,...,Q] tel que (i, jn) e En-1}.
  • Et on réitère les étapes 2h1 à 2h5 suivantes pour tout i e Fn-1 considéré alternativement depuis l'élément le plus petit de l'ensemble Fn-1 (min Fn-1) jusqu'à l'élément le plus grand de l'ensemble Fn-1 (max Fn-1) :
    • 2h1- on considère que la sous-bande (i,jn) est supprimée pour les opérations 2h2 à 2h4 : on considère donc que A(i,jn) est nul et que l'élément quantifié correspondant A (i,jn ) est aussi nul ;
    • 2h2- De façon similaire à celle décrite précédemment dans l'étape 2c, après calcul d'un décodage ambiophonique d'ordre p effectué en fonction des éléments quantifiés avec le débit global Dn ( A (i, jn ) étant nul), on calcule, le vecteur d'angles de Gerzon généralisé nommé ξ jn (A(i,jn) = 0 ,n) dans la bande fréquentielle F j n
      Figure imgb0060
      en fonction des composantes spectrales T1(i,j) i =1 à N et j=0 à M-1 déterminées suite audit décodage ambiophonique, à l'aide de l'équation (6).
    • 2h3- On calcule ensuite le vecteur Δξ ijn (n) égal à la différence, dans la bande fréquentielle F j n ,
      Figure imgb0061
      entre le vecteur d'angles de Gerzon généralisé ξ jn (A(i,jn ) = 0, n) calculé ci-dessus en 2h2 et le vecteur d'angles de Gerzon généralisé ξ jn (n) calculé à l'étape 2f de l'itération n ci-dessus : Δξ ijn (n) = ξ jn (A(i,jn 0, n) - ξ jn (n).
  • Puis on calcule la norme ∥Δξ ijn (n) || du vecteur Δ ξ ijn (n) : ∥Δξ ijn (n) ∥ = ∥ξ jn (A(i,jn) = 0, n) - ξ jn (n) ||.
  • Cette norme représente la variation, dans la bande fréquentielle F j n ,
    Figure imgb0062
    du vecteur d'angles de Gerzon généralisé et pour un débit Dn, due à la suppression de la composante ambiophonique A(i,jn) lors de la nième itération du processus Proc2.
  • 2h4- Si i ≠ max Fn-1, on considère que la sous-bande (i,jn) n'est plus supprimée et on va à l'étape 2h5. Si i = max Fn-1, on considère que la sous-bande (i,jn) n'est plus supprimée et on va à l'étape 2i.
  • 2h5- On incrémente i dans l'ensemble Fn-1 et on réitère les étapes 2h1 à 2h4 pour la valeur de i ainsi mise à jour jusqu'à i = max Fn-1.
  • On obtient ainsi, pour chaque i e Fn-1, une valeur ∥Δξ ijn (n)∥, représentant la variation du vecteur d'angles de Gerzon généralisé dans la bande fréquentielle F j n
    Figure imgb0063
    due à la suppression de la composante A(i,jn).
  • Etape 2i :
  • On compare entre elles les valeurs ∥Δξ ij n (n) ∥, pour chaque i e Fn-1, on identifie la valeur minimale parmi ces valeurs et on détermine l'indice in e Fn correspondant à la valeur minimale, soit i n = arg min i F n Δ ξ i j n n .
    Figure imgb0064
  • La composante A(in,jn) est ainsi identifiée comme l'élément à coder de plus faible importance sur le plan de la précision spatiale, comparé aux autres éléments à coder A(k,j), (k,j) e En-1.
  • Etape 2j :
  • On redéfinit, pour chaque bande spectrale Fj, un vecteur d'angles de Gerzon généralisé ξ ˜ j n
    Figure imgb0065
    issu de l'itération n : ξ ˜ j n = ξ j n si j 0 , M - 1 j n ;
    Figure imgb0066
    ξ ˜ j n n = ξ j n A i n j n = 0 , n si j = j n .
    Figure imgb0067
  • Cet angle de Gerzon généralisé redéfini, établi pour un débit de quantification égal à Dn, prend en compte la suppression de l'élément à coder A(in, jn) et sera utilisé pour l'itération suivante.
  • Etape 2k :
  • L'identifiant du couple (in,jn) est délivré au module d'ordonnancement 6 en tant que résultat de la nième itération du processus Proc2.
  • Etape 2m :
  • On supprime alors la bande (in,jn) de l'ensemble des éléments à coder dans la suite du processus Proc2, c'est-à-dire qu'on supprime l'élément à coder A(in,jn).
  • On définit l'ensemble En= En-1\(in,jn). Les éléments à coder A(i,j), avec (i,j) e En restent à ordonner. Les éléments à coder A(i,j), avec (i,j) e {(i1,j1),..., (in,jn)} ont déjà été ordonnés lors des itérations 1 à n.
  • On réitère le processus Proc2 r fois et au maximum Q*M-1 fois.
  • Des indices de priorité sont ainsi ensuite attribués par le module 6 d'ordonnancement aux différents éléments à coder, en vue de l'insertion des données de codage dans une séquence binaire.
  • Ordonnancement des éléments à coder et constitution d'une séquence binaire sur la base des résultats successivement fournies par les itérations successives du processus Proc2 :
  • Dans un mode de réalisation où l'ordonnancement des éléments à coder est réalisé par le module 6 d'ordonnancement sur la base des résultats successivement fournies par les itérations successives du processus Proc2 mis en oeuvre par le module 5 de définition des éléments à coder les moins pertinents (à l'exclusion des résultats fournis par le processus Proc1), le module 6 d'ordonnancement définit un ordre desdits éléments à coder, traduisant l'importance des éléments à coder sur le plan de la précision spatiale.
  • En référence à la figure 5b, l'élément à coder A(i1,j1) correspondant au couple (i1,j1) déterminé lors de la première itération du processus Proc2 est considéré comme le moins pertinent sur le plan de la précision spatiale. Il lui est donc affecté un indice de priorité minimale Prio1 par le module 5.
  • L'élément à coder A(i2,j2) correspondant au couple (i2,j2) déterminé lors de la deuxième itération du processus Proc2, est considéré comme l'élément à coder le moins pertinent sur le plan de la précision spatiale, après celui affecté à la priorité Prio1. Il lui est donc affecté un indice de priorité minimale Prio2, avec Prio2 > Prio1. Le module 6 d'ordonnancement ordonne ainsi successivement r éléments à coder affectés chacun à des indices de priorité croissants Prio1, Prio2 à Prio r.
  • Les éléments à coder n'ayant pas été affectés à un ordre de priorité au cours d'une itération du processus Proc2 sont plus importants sur le plan de la précision spatiale que les éléments à coder auxquels à été affecté un ordre de priorité.
  • Lorsque r est égal à Q*M -1 fois, l'ensemble des éléments à coder sont ordonnées un à un.
  • Dans ce qui suit, on considère que le nombre d'itérations r du processus Proc2 effectuées est égal à Q*M -1 fois.
  • L'ordre de priorité affecté à un élément à coder A(k,j) est également affecté à l'élément codé en fonction du résultat A(k,y) de la quantification de cet élément à coder. On note ci-dessous également A(k,j) l'élément codé correspondant à l'élément à coder A(k,j).
  • Le module 8 de constitution de la séquence binaire constitue une séquence binaire Seq correspondant à une trame de chacun des signaux Si, i=1 à N en y intégrant successivement des éléments codés A (k,j) par ordre décroissant d'indices de priorité attribués, la séquence binaire Seq étant à transmettre dans le flux binaire Φ.
  • Ainsi la séquence binaire constituée Seq est ordonnée conformément à l'ordonnancement effectué par le module 6.
  • Dans le mode de réalisation considéré ci-dessus, une suppression d'une composante spectrale d'un élément à coder A(i,j) a lieu à chaque itération du processus Proc2.
  • Dans un autre mode de réalisation, on utilise un quantificateur imbriqué pour les opérations de quantification. Dans un tel cas, la composante spectrale d'un élément à coder A(i,j) identifiée comme la moins importante sur le plan de la précision spatiale lors d'une itération du processus Proc2 n'est pas supprimée, mais un débit réduit est affecté au codage de cette composante par rapport au codage des autres composantes spectrales d'éléments à coder restant à ordonner.
  • Le codeur 1 est ainsi un codeur permettant une adaptabilité en débit prenant en compte les interactions entre les différents signaux monophoniques. Il permet de définir des données compressées optimisant la précision spatiale perçue.
  • Combinaison des processus Proc1 et Proc2
  • Dans un mode de réalisation, on définit les éléments à coder les moins importants à l'aide d'un processus Proc combinant les processus Proc1 et Proc2 décrits ci-dessus, en fonction de critères prenant en compte la qualité audio globale et la pertinence spatiale.
  • L'initialisation du processus Proc comporte les initialisations des processus Proc1 et Proc2 comment décrits plus haut.
  • Une itération n (n>1 ) d'un tel processus Proc va être maintenant décrite en référence à la figure 11, en considérant un (n+1)ième débit Dn de codage et un ensemble d'éléments à coder A(k,j) avec (k,j) e En-1 avec à ordonner.
  • Ces débit et ensemble d'éléments à coder sont déterminés lors d'itérations précédentes du processus Proc sur la base d'itérations précédentes du processus Proc à l'aide des processus Proc1 et Proc2. Les itérations précédentes ont permis la détermination d'éléments à coder déterminés les moins importants en fonction de critères définis.
  • Ces critères définis ont été établis en fonction de la qualité audio globale et de la précision spatiale souhaitées.
  • On met en oeuvre sur cet ensemble d'éléments à ordonner en parallèle une itération des étapes 1d et 1e du processus Proc1, identifiant l'élément à coder A(in1, jn1) le moins pertinent sur le plan de la qualité audio globale et une itération des étapes 2e à 2i du processus Proc2, identifiant l'élément à coder A(in2, jn2) le moins pertinent sur le plan de la précision spatiale.
  • En fonction des critères définis, on sélectionne à l'étape 300, un seul des deux éléments à coder identifiés ou encore les deux éléments à coder identifiés. On repère par A(in, jn) celui ou chaque élément à coder sélectionné.
  • Puis, d'une part, on fournit le ou les identifiants du couple (in,jn) au module d'ordonnancement 6 en tant que résultat de la nième itération du processus Proc2, qui lui attribue une priorité Prion au vu des critères définis. La priorité Prion affectée est supérieure à la priorité des éléments à coder sélectionnés au cours des itérations précédentes du processus Proc en fonction des critères définis. Cette étape remplace les étapes 1f du processus Proc1 et 2k du processus Proc2 tels que décrits précédemment.
  • Le ou les éléments à coder A(in,jn) sélectionnés sont ensuite insérés dans la séquence binaire à transmettre avant les éléments à coder sélectionnés au cours des itérations précédentes du processus Proc (car l'élément à coder A(in,jn) est plus important sur le plan des critères définis que les éléments à coder sélectionnés précédemment par le processus Proc). Le ou les éléments à coder A(in,jn) sélectionnés sont insérés dans la séquence binaire à transmettre après les autres éléments à coder de l'ensemble En-1 (car l'élément à coder A(in,jn) est moins important sur le plan des critères définis que ces autres éléments à coder).
  • D'autre part, dans une étape 301, on supprime le ou les éléments à coder A(in,jn) sélectionné pour l'itération suivante (itération n+1 ) du processus Proc (comprenant une itération n+1 pour les processus Proc1 et Proc2), qui s'appliqueront alors à l'ensemble des éléments à coder En = En-1 \ (A(in,jn), sur la base d'un débit réduit comme défini dans l'étape 1c du processus Proc1 et l'étape 2n du processus Proc2.
  • Cette étape 301 remplace les étapes 1g du processus Proc1 et 2m du processus Proc2 tels que décrits précédemment.
  • Les critères définis permettent de sélectionner celui ou ceux des éléments les moins pertinents identifiés respectivement lors de l'étape 300 du processus Proc.
  • Par exemple, dans un mode de réalisation, on supprime l'élément identifié par le processus Proc1 à chaque itération n, avec n pair et on supprime l'élément identifié par le processus Proc2 à chaque itération n avec n impair, ce qui permet de préserver au mieux la qualité audio globale et la précision spatiale.
  • D'autres critères peuvent être utilisés. Un codage mettant en oeuvre un tel processus Proc permet ainsi d'obtenir un flux binaire adaptable en débit sur le plan de la qualité audio et sur la plan de la précision spatiale.
  • Opérations réalisées au niveau du décodeur
  • Le décodeur 100 comprend un module de lecture de séquence binaire 104, un module de quantification inverse 105, un module 101 de transformation ambiophonique inverse et un module 102 de transformation fréquence/temps.
  • Le décodeur 100 est adapté pour recevoir en entrée le flux binaire Φ transmis par le codeur 1 et pour délivrer en sortie Q' signaux S'1, S'2, ..., S'Q' destinés à alimenter les Q' haut-parleurs H1, ..., HQ' respectifs d'un système de rendu sonore 103. Le nombre de haut-parleurs Q' peut dans un mode de réalisation être différent du nombre Q de composantes ambiophoniques transmises.
  • A titre d'exemple, la configuration d'un système de rendu sonore comprenant 8 haut-parleurs h1, h2,..., h8 est représentée en figure 7.
  • Le module 104 de lecture de séquence binaire extrait de la séquence binaire Φ reçue des données indiquant les indices de quantification déterminés pour des éléments A (k, j), k=1 à Q et j=0 à M-1 et les fournit en entrée du module 105 de quantification inverse.
  • Le module 105 de quantification inverse effectue une opération de quantification inverse.
  • Les éléments de la matrice A ' des éléments A'(k, j), k=1 à Q et j=0 à M-1, sont déterminés, tels que A '(k, j) = A (k, j) lorsque la séquence reçue comportait des données indiquant l'indice de quantification de l'élément A (k, j) issu du codage des paramètres A(k,j) des composantes ambiophoniques par le décodeur 100 et A '(k, j) = 0 lorsque la séquence reçue ne comportait pas de données indiquant l'indice de quantification de l'élément A (k, j) (par exemple ces données ont été coupés lors de la transmission de la séquence au niveau d'un serveur de streaming pour s'adapter au débit disponible dans le réseau et/ou aux caractéristiques du terminal).
  • Le module 101 de transformation spatiale inverse est adapté pour déterminer les éléments X'(i, j), i=1 à Q', j= 0 à M-1, de la matrice X' définissant les M coefficients spectraux X'(i, j), i=1 à Q', j= 0 à M-1, de chacun des Q'i signaux S'i, à partir des composantes ambiophoniques A'(k, j), k=1 à Q et j=0 à M-1, déterminées par le module 105 de quantification inverse..
  • Amblnv(p',Q') est la matrice de transformation ambiophonique inverse d'ordre p' pour la scène 3D adaptée pour déterminer les Q' signaux S'i, i= 1 à Q', destinés aux Q' haut-parleurs du système de rendu sonore associé au décodeur 100, à partir des Q composantes ambiophoniques reçues. Les angles pi, pour i=1 à Q', indiquent l'angle de propagation acoustique depuis le haut-parleur Hi. Dans l'exemple représenté en figure 7, ces angles correspondent aux angles entre l'axe de propagation d'un son émis par un haut-parleur et l'axe XX.
  • X' est la matrice des composants spectraux X'(i,j) des signaux Si', i=1 à Q' relatifs aux bandes de fréquences Fj, j= 0 à M-1. Ainsi : A ʹ ̲ = A ʹ 1 0 A ʹ 1 1 . . . A ʹ 1 , M - 1 A ʹ 2 0 A ʹ 2 , M - 1 . . . . A ʹ Q 0 A ʹ Q 1 . . . A ʹ Q , M - 1 ,
    Figure imgb0068
    Amblnv ̲ = 1 1 2 . cos β 1 . 1 2 . sin β 1 . . 1 2 . sin β 1 1 1 2 . cos β 2 . . . 1 2 . sin β 2 . . . . . . . . . . . . 1 1 2 . cos βQʹ . . . 1 2 . sin βQʹ
    Figure imgb0069

    et ̲ = 1 0 1 1 . . . 1 , M - 1 2 0 2 1 . . . ( 2 , M - 1 . . . . . . 0 . . . . , M - 1
    Figure imgb0070

    et on a ̲ = Amblnv ̲ x A ʹ ̲
    Figure imgb0071
  • Le module 101 de transformation spatiale inverse est adapté pour déterminer les coefficients spectraux X'(i, j), i=1 à Q', j= 0 à M-1, éléments de la matrice X', à l'aide de l'équation (7).
  • Ces éléments X'(i, j), i=1 à Q', j= 0 à M-1, une fois déterminés, sont délivrées en entrée du module 102 de transformation fréquence/temps.
  • Le module 102 de transformation fréquence/temps du décodeur 100 effectue une transformation de l'espace de représentation fréquentielle vers l'espace de représentation temporelle sur la base des coefficients spectraux reçus X'(i, j), i=1 à Q', j= 0 à M-1 (cette transformation est dans le cas présent, une MDCT inverse), et il détermine ainsi une trame temporelle de chacun des Q' signaux S'1,..., S'Q'.
  • Chaque signal S'i, i = 1 à Q', est destiné au haut-parleur Hi du système de rendu sonore 103.
  • Certaines au moins des opérations effectuées par le décodeur sont dans un mode de réalisation mises en oeuvre suite à l'exécution sur des moyens de traitement du décodeur, d'instructions de programme d'ordinateur.
  • Un avantage du codage des composantes issues de la transformation ambiophonique des signaux S1, ..., SN tel que décrit est que dans le cas où le nombre de signaux N de la scène sonore est grand, il est possible de les représenter par un nombre Q de composantes ambiophoniques bien inférieur à N, en dégradant très peu la qualité spatiale des signaux. Le volume de données à transmettre est donc réduit et ceci sans dégradation importante de la qualité audio de la scène sonore.
  • Un autre avantage d'un codage selon l'invention est qu'un tel codage permet une adaptabilité aux différents types de systèmes de rendu sonores, quels que soient le nombre, la disposition et le type de haut-parleurs dont le système de rendu sonore est muni.
  • En effet, un décodeur recevant une séquence binaire comprenant Q composantes ambiophoniques opère sur celles-ci une transformation ambiophonique inverse d'ordre p' quelconque et correspondant au nombre Q' de haut-parleurs du système de rendu sonore auquel sont destinés les signaux une fois décodés.
  • Un codage tel qu'effectué par le codeur 1 permet d'ordonner les éléments à coder en fonction de leur apport respectif sur la qualité audio à l'aide du premier processus Proc1 et/ou en fonction de leur apport respectif sur la précision spatiale et le respect de la reproduction des directions contenus dans la scène sonore, à l'aide du deuxième processus Proc2.
  • Pour s'adapter aux contraintes de débit imposées, il suffit de tronquer la séquence des éléments de priorités inférieures disposés dans la séquence. Il est garanti qu'alors la meilleure qualité audio globale (quand le processus Proc1 est mis en oeuvre) et/ou la meilleure précision spatiale (quand le processus Proc2 est mis en oeuvre) est fournie. En effet l'ordonnancement des éléments à été fait de façon à ce que les éléments qui apportent le moins à la qualité audio globale et/ou la précision spatiale soient mis à la fin de la séquence.
  • Les processus Proc1 et Proc 2 peuvent être mis en oeuvre, suivant les modes de réalisations, en combinaison ou alors seuls, indépendamment l'un de l'autre pour définir une séquence binaire.

Claims (12)

  1. Procédé d'ordonnancement de composantes spectrales d'éléments à coder (A1,..., AQ) provenant d'une scène audio comprenant N signaux (Sii=1 à N), avec N>1, un élément à coder comportant des composantes spectrales se rapportant à des bandes spectrales respectives, caractérisé en ce qu'il comporte les étapes suivantes :
    - calcul de l'influence respective d'au moins certaines composantes spectrales calculables en fonction de paramètres spectraux issus de certains au moins des N signaux, sur des rapports masque à bruit déterminés sur les bandes spectrales en fonction d'un codage desdites composantes spectrales ;
    - attribution d'un ordre de priorité à au moins une composante spectrale en fonction de l'influence calculée pour ladite composante spectrale comparée aux autres influences calculées,
    l'influence d'une composante donnée étant calculée par estimation d'une variation entre :
    - un premier rapport masque à bruit déterminé en fonction d'un codage desdites composantes spectrales selon un premier débit, et
    - un second rapport masque à bruit déterminé en fonction d'un codage de composantes spectrales desquelles est supprimée ladite composante donnée, selon un second débit inférieur au premier débit.
  2. Procédé selon la revendication 1, caractérisé en ce que le calcul de l'influence d'une composante spectrale s'effectue selon les étapes :
    a- codage d'un premier ensemble de composantes spectrales d'éléments à coder selon un premier débit;
    b- détermination d'un premier rapport masque à bruit par bande spectrale;
    c- détermination d'un second débit inférieur au dit premier;
    d- suppression de ladite composante spectrale courante des éléments à coder et codage des composantes spectrales restantes des éléments à coder selon le second débit;
    e- détermination d'un second rapport masque à bruit par bande spectrale;
    f- calcul d'une variation de rapport masque à bruit en fonction des écarts déterminés entre les premier et second rapports masque à bruit pour le premier et le second débit par bande spectrale;
    g- itération des étapes d à f pour chacune des composantes spectrales de l'ensemble de composantes spectrales d'éléments à coder à ordonner et détermination d'une variation de rapport masque à bruit minimum; l'ordre de priorité attribué à la composante spectrale correspondant à la variation minimum étant un ordre de priorité minimum.
  3. Procédé selon la revendication 2, caractérisé en ce que on réitère les étapes a à g avec un ensemble de composantes spectrales d'éléments à coder à ordonner restreint par suppression des composantes spectrales pour lesquelles un ordre de priorité a été attribué.
  4. Procédé selon la revendication 2, caractérisé en ce que on réitère les étapes a à g avec un ensemble de composantes spectrales d'éléments à coder à ordonner dans lequel les composantes spectrales pour lesquelles un ordre de priorité a été attribué sont affectées d'un débit de quantification plus réduit lors de l'utilisation d'un quantificateur imbriqué.
  5. Procédé selon l'une quelconque des revendications précédentes, selon lequel les éléments à coder comprennent les paramètres spectraux calculés pour les N signaux.
  6. Procédé selon l'une quelconque des revendications précédentes, selon lequel les éléments à coder comprennent des éléments (A1,..., AQ) obtenus par transformation spatiale des paramètres spectraux calculés pour les N signaux.
  7. Procédé selon la revendication 6, selon lequel la transformation spatiale est une transformation ambiophonique.
  8. Procédé selon la revendication 6 ou 7, selon lequel on détermine les rapports masque à bruit en fonction des erreurs due au codage et relatives à des éléments à coder, d'une matrice de transformation spatiale et d'une matrice déterminée en fonction de la transposée de ladite matrice de transformation spatiale.
  9. Procédé selon l'une quelconque des revendications précédentes et la revendication 6, certaines des composantes spectrales étant alors des paramètres spectraux de composantes ambiophoniques, ledit procédé comportant en outre les étapes suivantes :
    a. calcul de l'influence respective d'au moins certains desdits paramètres spectraux, sur un vecteur d'angle défini en fonction de vecteurs d'énergie et de vélocité associés à des critères de Gerzon et calculés en fonction d'une transformation ambiophonique inverse sur lesdits composantes ambiophoniques quantifiés;
    b. attribution d'un ordre de priorité (Prio0) à au moins un paramètre spectral en fonction de l'influence calculée pour ledit paramètre spectral comparé aux autres influences calculées.
  10. Codeur audio (1) adapté pour coder une scène audio 3D comprenant N signaux respectifs en un flux binaire de sortie, avec N>1, comprenant :
    - un module (3,4) de transformation adapté pour déterminer, en fonction des N signaux, des composantes spectrales se rapportant à des bandes spectrales respectives;
    - un module (6) d'ordonnancement, adapté pour ordonner au moins certaines des composantes spectrales se rapportant à des bandes spectrales respectives, par la mise en oeuvre du procédé selon l'une des revendications 1 à 9;
    - un module (8) de constitution d'une séquence binaire adapté pour constituer une séquence binaire comportant des données indiquant des composantes spectrales se rapportant à des bandes spectrales respectives en fonction de l'ordonnancement effectué par le module d'ordonnancement.
  11. Programme d'ordinateur à installer dans un module d'ordonnancement (6), ledit programme comprenant des instructions pour mettre en oeuvre les étapes d'un procédé selon l'une quelconque des revendications 1 à 9 lors d'une exécution du programme par des moyens de traitement dudit module.
  12. Signal comportant des composantes spectrales se rapportant à des bandes spectrales respectives d'éléments à coder provenant d'une scène audio comprenant N signaux avec N>1, caractérisé en ce que lesdites composantes spectrales sont ordonnées par la mise en oeuvre du procédé d'ordonnancement selon l'une des revendications 1 à 9.
EP08788186A 2007-05-10 2008-04-16 Procédé de codage audio, codeur audio, signal codé et programme d'ordinateur associés Active EP2145167B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0703349A FR2916079A1 (fr) 2007-05-10 2007-05-10 Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes
PCT/FR2008/050671 WO2008145893A2 (fr) 2007-05-10 2008-04-16 Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes

Publications (2)

Publication Number Publication Date
EP2145167A2 EP2145167A2 (fr) 2010-01-20
EP2145167B1 true EP2145167B1 (fr) 2011-12-21

Family

ID=38858968

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08788186A Active EP2145167B1 (fr) 2007-05-10 2008-04-16 Procédé de codage audio, codeur audio, signal codé et programme d'ordinateur associés

Country Status (6)

Country Link
US (1) US8488824B2 (fr)
EP (1) EP2145167B1 (fr)
CN (1) CN101730832B (fr)
AT (1) ATE538369T1 (fr)
FR (1) FR2916079A1 (fr)
WO (1) WO2008145893A2 (fr)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2688066A1 (fr) * 2012-07-16 2014-01-22 Thomson Licensing Procédé et appareil de codage de signaux audio HOA multicanaux pour la réduction du bruit, et procédé et appareil de décodage de signaux audio HOA multicanaux pour la réduction du bruit
EP2901667B1 (fr) 2012-09-27 2018-06-27 Dolby Laboratories Licensing Corporation Multiplexage spatial dans un système de téléconférence
US9959875B2 (en) * 2013-03-01 2018-05-01 Qualcomm Incorporated Specifying spherical harmonic and/or higher order ambisonics coefficients in bitstreams
US10020000B2 (en) 2014-01-03 2018-07-10 Samsung Electronics Co., Ltd. Method and apparatus for improved ambisonic decoding
EP3090574B1 (fr) * 2014-01-03 2019-06-26 Samsung Electronics Co., Ltd. Procédé et appareil de décodage ambiophonique amélioré
US10405126B2 (en) * 2017-06-30 2019-09-03 Qualcomm Incorporated Mixed-order ambisonics (MOA) audio data for computer-mediated reality systems
EP4085660A4 (fr) 2019-12-30 2024-05-22 Comhear Inc. Procédé pour fournir un champ sonore spatialisé
US11743670B2 (en) 2020-12-18 2023-08-29 Qualcomm Incorporated Correlation-based rendering with multiple distributed streams accounting for an occlusion for six degree of freedom applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE519985C2 (sv) * 2000-09-15 2003-05-06 Ericsson Telefon Ab L M Kodning och avkodning av signaler från flera kanaler
US7277765B1 (en) * 2000-10-12 2007-10-02 Bose Corporation Interactive sound reproducing
FR2820573B1 (fr) * 2001-02-02 2003-03-28 France Telecom Methode et dispositif de traitement d'une pluralite de flux binaires audio
CA2437927A1 (fr) * 2003-08-14 2005-02-14 Ramesh Mantha Codage adaptatif pour canal partage de transmission de donnees
AU2004320207A1 (en) * 2004-05-25 2005-12-08 Huonlabs Pty Ltd Audio apparatus and method
WO2007098258A1 (fr) * 2006-02-24 2007-08-30 Neural Audio Corporation Système et procédé de conditionnement pour un codec audio
US8379868B2 (en) * 2006-05-17 2013-02-19 Creative Technology Ltd Spatial audio coding based on universal spatial cues
CN100458788C (zh) * 2006-09-25 2009-02-04 北京搜狗科技发展有限公司 一种互联网音频文件的聚类方法、搜索方法及系统

Also Published As

Publication number Publication date
US8488824B2 (en) 2013-07-16
ATE538369T1 (de) 2012-01-15
CN101730832B (zh) 2014-05-28
CN101730832A (zh) 2010-06-09
FR2916079A1 (fr) 2008-11-14
EP2145167A2 (fr) 2010-01-20
WO2008145893A2 (fr) 2008-12-04
US20100305952A1 (en) 2010-12-02
WO2008145893A3 (fr) 2009-12-03

Similar Documents

Publication Publication Date Title
EP2143102B1 (fr) Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes
EP2145167B1 (fr) Procédé de codage audio, codeur audio, signal codé et programme d'ordinateur associés
EP2374123B1 (fr) Codage perfectionne de signaux audionumeriques multicanaux
EP2002424B1 (fr) Dispositif et procede de codage scalable d'un signal audio multi-canal selon une analyse en composante principale
EP2374124B1 (fr) Codage perfectionne de signaux audionumériques multicanaux
EP1600042B1 (fr) Procede de traitement de donnees sonores compressees, pour spatialisation
EP2168121B1 (fr) Quantification apres transformation lineaire combinant les signaux audio d'une scene sonore, codeur associe
US8054981B2 (en) Energy dependent quantization for efficient coding of spatial audio parameters
EP2304721B1 (fr) Synthese spatiale de signaux audio multicanaux
EP2042001B1 (fr) Spatialisation binaurale de donnees sonores encodees en compression
EP2005420A1 (fr) Dispositif et procede de codage par analyse en composante principale d'un signal audio multi-canal
EP3935629A1 (fr) Codage audio spatialisé avec interpolation et quantification de rotations
FR3049084A1 (fr)
EP2198425A1 (fr) Procede, module et programme d'ordinateur avec quantification en fonction des vecteurs de gerzon
EP4042418B1 (fr) Détermination de corrections à appliquer a un signal audio multicanal, codage et décodage associés
WO2023232823A1 (fr) Titre: codage audio spatialisé avec adaptation d'un traitement de décorrélation
WO2022003275A1 (fr) Codage optimise d'une information representative d'une image spatiale d'un signal audio multicanal

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20091022

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA MK RS

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20110315

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RTI1 Title (correction)

Free format text: AUDIO ENCODING METHOD, AUDIO ENCODER, CODED SIGNAL AND ASSOCIATED COMPUTER PROGRAM

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 538369

Country of ref document: AT

Kind code of ref document: T

Effective date: 20120115

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602008012219

Country of ref document: DE

Effective date: 20120308

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120321

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

LTIE Lt: invalidation of european patent or patent extension

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120322

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

REG Reference to a national code

Ref country code: IE

Ref legal event code: FD4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120321

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120421

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120423

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 538369

Country of ref document: AT

Kind code of ref document: T

Effective date: 20111221

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

BERE Be: lapsed

Owner name: FRANCE TELECOM

Effective date: 20120430

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

26N No opposition filed

Effective date: 20120924

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120430

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602008012219

Country of ref document: DE

Effective date: 20120924

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120430

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120430

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120430

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120401

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20111221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120416

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20080416

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20240320

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240320

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240320

Year of fee payment: 17