QUANTIFICATION AND ENTROPIC CODING OF PARAMETERS FOR A LOW-LATENCY AUDIO CODEC

MX435412BActive Publication Date: 2026-06-12DOLBY LABORATORIES LICENSING CORP

Patent Information

Authority / Receiving Office
MX · MX
Patent Type
Patents
Current Assignee / Owner
DOLBY LABORATORIES LICENSING CORP
Filing Date
2022-12-08
Publication Date
2026-06-12

AI Technical Summary

Technical Problem

In low latency audio codecs with frame periods of 20 milliseconds or less, existing methods oversample additional information parameters, leading to inefficiencies and potential packet loss artifacts due to frequent updates.

Method used

An iterative and stepwise approach is employed to select an optimal parameter quantization scheme, minimizing parameter bit rate while mitigating state loss and packet loss artifacts through differential and non-differential encoding strategies, including frequency interleaving and time differential coding.

Benefits of technology

The solution effectively reduces parameter bit rate while maintaining high frame update rates for audio essence, minimizing artifacts and ensuring robustness against packet loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure MX435412B0
    Figure MX435412B0
Patent Text Reader

Abstract

A method for encoding metadata by frames is described for an input signal, the metadata comprising a plurality of at least partially interrelated parameters that can be computed from the input signal. The method comprises, for each frame: iteratively performing, using a looping process, the steps of: determining a processing strategy from a plurality of processing strategies to compute and quantize the parameters; computing and quantizing the parameters based on the determined processing strategy to obtain quantized parameters; and encoding the quantized parameters. In particular, each of the plurality of processing strategies comprises a respective first indication indicative of an ordering related to the computing and quantization of individual parameters; and the processing strategy is determined based on at least one bit rate threshold.
Need to check novelty before this filing date? Find Prior Art

Description

QUANTIFICATION AND ENTROPIC CODING OF PARAMETERS FOR A LOW-LATENCY AUDIO COPEC Cross-reference to Related Applications This application claims priority over U.S. Provisional Applications Nos. 63 / 037,784 and 63 / 194,010, filed on June 11, 2020 and May 27, 2021, respectively, each of which is incorporated by reference in its entirety. Field of Invention The present description refers to the general area of ​​entropic parameter coding (additional information) for low-latency audio codecs (encoders / decoders) and mechanisms for achieving parameter bit rate targets by iteratively refining the parameter bit rate using a range of entropic quantization and coding techniques. Background of the Invention When the frame period (frame size) of an audio codec (encoder / decoder) approaches 20 milliseconds (ms) or less, the audio essence is updated in short frame sizes. If the approach of updating both the audio essence and parameters in each frame were followed, the additional information for each frame would also be embedded and transmitted at the same rate. However, it is generally known in the field that additional information does not need to be updated so frequently. For example, spatial parameters could generally be calculated and updated, say, every 40 ms. For codecs with frame periods of 40 ms or more, this generally means that the parameter update rate is in line with the frame rate, and therefore the parameters could be encoded in each frame independently. However, in codecs with short frame periods, for example, below 40 ms, this means that the parameters would effectively be oversampled if they were all included in every single frame. Therefore, in general terms, the focus of this present description is to propose mechanisms to minimize additional information (or, sometimes, also referred to as parameters) as much as possible, but retain a high frame update rate for the essence of the audio. Brief Description of the Invention In view of the foregoing, the present description generally provides a frame-encoding metadata method for an input signal, as well as a corresponding program, computer-readable storage medium, and apparatus, having the characteristics of the respective independent claims. According to one aspect of the description, a method for encoding metadata frames for an input signal is provided. Specifically, the metadata can be computed (e.g., extracted) from the input signal (audio or video) using a suitable codec (encoder / decoder). Generally speaking, the metadata can be used to regenerate the input signal at the decoder end. The metadata can comprise a plurality of at least partially interrelated parameters that can be calculated from the input signal. That is, at least some of the input signal parameters can be calculated (e.g., generated or regenerated) based on at least some of the other parameters, so that, depending on various circumstances, not all parameters need to be transmitted in a straightforward manner. In particular, the method may comprise / involve, for each frame, iteratively performing, using a looping process, the steps of: determining a processing strategy from a plurality of processing strategies to compute and quantize the parameters; computing and quantizing the parameters based on the determined processing strategy to obtain quantized parameters; and encoding the quantized parameters. Since the looping process is generally directed at (among other things) quantization-related processing, in some cases the looping process may also be referred to as a quantization loop (or simply a loop for short).Similarly, since the processing strategy also generally addresses (among other things) quantization-related processing, in some cases, the processing strategy may also be referred to as a quantization strategy (or, in some other cases, interchangeably as a quantization scheme). Furthermore, it should be noted that the encoding process can use any suitable encoding procedure, including but not limited to entropic encoding (e.g., Huffman or arithmetic encoding) or non-entropic encoding (e.g., base2 encoding). Any other suitable encoding mechanism may be adopted, depending on various implementations and / or requirements. As an expert can understand and appreciate, the plurality of processing strategies for calculating and quantizing parameters can be provided in any suitable manner, such as predefined or preconfigured. Consequently, the processing strategy can also be determined from this plurality of processing strategies in any suitable manner. For example, depending on a (current) bit rate requirement, a suitable processing strategy can be selected from the plurality of processing strategies, such that the resulting bit rate after performing the calculation, quantization, and encoding (e.g., with or without entropic encoding) based on the selected processing strategy meets the (current) bit rate requirement.In particular, since the bit rate requirement may change from time to time (e.g., from frame to frame), the processing strategy thus determined may also be different for each or some frames. In particular, each of the plurality of processing strategies may comprise a respective first cue that is indicative of an ordering (or sequence) related to the calculation and quantification of individual parameters. That is, the first cue may comprise sequence information indicating when and in what order the individual parameters are calculated and quantified. As an example (but not as a limitation), the first cue may comprise information indicating that all parameters are calculated first before any of them are quantified. ML / t / ZUZÓ / Ui υυυυ More specifically, the processing strategy is determined based on at least one bit rate threshold. As the expert can understand and appreciate, bit rate thresholds can be, for example, predefined or preconfigured, depending on various implementations and / or requirements. Configured as described above, the proposed method can generally be seen as introducing the concept of an iterative and stepwise approach to selecting an optimal parameter quantization scheme / strategy. This approach typically seeks a better (or optimal) quantization scheme from among multiple alternatives. However, it should be noted that, in this case, "best" may not necessarily refer to the quantization scheme with the lowest (resulting) parameter bit rate (i.e., after quantization and possible encoding), but rather to one that mitigates state loss for the decoder. As those skilled in the art will understand, decoder state generally refers to the historical information the decoder retains from previous frames to correctly decode the current frame.For example (but not as a limitation), in some cases, the encoder side may adopt what is called differential time coding. However, the use of differential time coding can generally exhibit the drawback that it typically introduces a frame-by-frame state that can present problems when, during transmission, the audio stream might suffer packet loss. In this case, both the audio and audio-related parameters can be lost during transmission, so any parameter that was updated using differential time coding may experience multiple subsequent frames of potential artifacts.In this sense, the state-loss mitigation mentioned above refers to an attempt to avoid differential-time coding where possible, so that the decoder does not need to rely on metadata received in previous frames to decode the metadata of the current frame. And when differential-time coding is required, it is done in such a way that the system recovers quickly from packet loss. Specifically, by carefully choosing an appropriate quantization scheme as described herein, the undesirable behavior illustrated above related to packet loss can be limited (mitigated) as much as possible.In other words, the present description generally proposes an encoding mitigation (encoder side) that involves an iterative selection process for quantization and encoding (with or without entropy) that attempts to minimize the degree to which packet loss artifacts can be introduced, e.g., due to the time differential coding being used. In some examples, the processing strategy can be determined so that the resulting bit rate of the encoded quantized parameters is equal to or less than the bit rate threshold (metadata / parameter). As such, the resulting bit rate after quantization and encoding using the determined (e.g., selected) processing strategy is within (at least one) bit rate threshold, thus meeting the bit rate requirement, for example, agreed upon beforehand or predetermined by a normalization specification. In some examples, each of the plurality of processing strategies may also include a second respective indication indicative of information to perform the quantification of the parameters. In some examples, the information for quantifying parameters includes respective quantification ranges and / or quantification levels for multiple parameters. For example, the information might relate to the maximum value, minimum value, number of quantification levels, or any other suitable value desired for each of the respective parameters (e.g., one per parameter type). Generally speaking, as can be understood and appreciated by an expert, these quantification-related values / parameters provide or define a coarser or finer overall quantification and, correspondingly, result in better or worse spatial reproduction.As can be understood and appreciated by the expert, in general terms, some (quantification) parameters are generally considered more sensitive to quantification than others, and there is generally no absolute fine / coarse quantification methodology for all parameters. Configured as described above, the plurality of processing strategies can be viewed as each comprising a first indication regarding the ordering / sequence related to computation and quantization, and a second indication regarding the actual quantization process. By carefully designing the processing strategy (e.g., different combinations of the first and second indications), various bit rate configurations / requirements can be addressed efficiently and flexibly, for example, for different use cases or scenarios. Specifically, in some cases, there may be a processing strategy (e.g., the coarsest quantization strategy among the plurality of quantization strategies) that can be considered to ensure it is less than (or equal to) the target bit rate threshold. In some examples, parameter encoding may involve differential encoding in time and / or frequency. Generally speaking, a single metadata parameter can be quantized from a continuous numerical value to an index representing a discrete value. In non-differential encoding, the information encoded for that metadata parameter corresponds directly to that index. Specifically, the term "non-differential encoding" used herein may refer to non-differential encoding in time, non-differential encoding in frequency, or non-differential encoding of all types, as appropriate, and as understood and appreciated by the person skilled in the art. In differential encoding in time, the information encoded is the difference between the index of that metadata parameter in the current frame and the index of the same metadata parameter in the previous frame.As will be understood and appreciated by the expert, the general concept illustrated above of differential time coding can be further extended, for example, to a plurality of frequency bands. Consequently, the metadata parameter can be similarly extended, for example, to a plurality of parameters corresponding respectively to (each of) the plurality of frequency bands, as appropriate. Differential frequency coding follows a similar principle, but the encoded difference is between the metadata of one frequency band of the current frame and the metadata of another frequency band of the current frame (difference). (ML / t / ZUZÓ / UΊ uauu of the current frame minus the previous frame in time-differential coding). As a simple example (but not as a limitation), assuming that aO, a1, a2, and a3 denote parameter indices in 4 frequency bands of a particular frame, then, in an example implementation, the frequency-differential indices might be aO, a0-a1, a1a2, a2-a3. As will be appreciated by the knowledgeable person, the general idea behind differential coding (in time and / or frequency) is that metadata can typically change slowly from frame to frame, or from frequency band to frequency band, so that even if the original value of the metadata were large, the difference between it and the metadata of the previous frame, or the difference between it and the metadata of another frequency band, would probably be small.This is advantageous because, in general, parameters with statistical distributions that tend towards zero can be encoded using fewer bits. In some examples, the processing strategy determined for a current frame may differ from the processing strategy determined for a previous frame, and consequently, parameter encoding may involve differential time-encoding across the different processing strategies. That is, in certain cases where different processing strategies are determined (for example, for different frames of the input signal), the method described here can still encode the parameters, for example, by employing differential time-encoding across those different processing strategies. As previously stated, the plurality of processing strategies may each comprise a respective first indication that is indicative of an ordering (or a sequence) related to the calculation and quantification of individual parameters. In some examples, the first indication may include information indicating that all parameters are calculated before they are quantified. In some examples, the first indication may include information stating that the parameters are calculated individually and then quantized sequentially. In particular, at least one parameter of the plurality of parameters can be calculated based on another quantized parameter of the plurality of parameters. As an example, but not as a limitation, assuming a total of three parameters to be calculated and quantized, the first parameter can be calculated first (from the input signal) and then quantized; the second parameter can be calculated based on the first (quantized) parameter, and then the second parameter itself can be quantized; and finally, the third parameter can be calculated based on the first (quantized) parameter and / or the second (quantized) parameter, and then quantized. In one example, the third parameter is calculated based on the first and second quantized parameters. According to the invention, the first indication comprises information indicating that all parameters are calculated before any parameter is quantified; and, in particular, at least one of the parameters is recalculated, based on another quantized parameter, and the recalculated parameter is quantified. Still taking the above assumption of three parameters as an example, all parameters are calculated first, and then the first and second parameters are quantized; then, the third parameter is recalculated, for example, based on the second quantized parameters, and then the third parameter is quantified based on the recalculated value. In some examples, the method may also involve, before encoding the quantized parameters, mapping the indices of the quantized parameters from the previous frame to those of the current frame. In other words, if a different processing strategy (quantization scheme, for example, in terms of different quantization levels and / or sequences) is determined (e.g., selected / chosen), the (quantization) indices of the previous frame that were quantized with a different quantization scheme are mapped to those of the current frame. In particular, this allows differential encoding in time between frames without having to send a non-differential frame each time the quantization scheme changes, thus improving overall coding efficiency and flexibility. In some possible implementations, the mapping of the indices can be done based on a formula: indexcur= round(tndexprevx (quant_lvlcur— 1) / (quant_lvlprev— 1)), where indexcures is the index of the current frame after mapping, indexpreves is the index of the previous frame, quant_lvlcures is the quantization level of the current frame, and quant_lvlpreves is the quantization level of the previous frame. As a simple illustrative example, the quantization range should be from 0 to 2, and the previous quantization levels should be 11. In the case of uniform quantization, this would generally mean that each quantization step would be 0.2. Furthermore, let's say the current quantization levels are 21, which means that each quantization step is 0.1 with uniform quantization. Based on these assumptions, if a quantized value in the previous frame was 0.4, then with 11 uniform quantization levels, the previous index would be indexprev = 2. The mapping provides the quantized indices of the metadata in the previous frame as if they were quantized using the quantization levels of the current frame. Therefore, in this example, if the quantization levels in the current frame are 21, then the quantized value 0.4 would be mapped to indexcurr = 4.Once the mapped indices are calculated, the difference between the current frame indices and the previous frame indices is calculated, and this difference is encoded. Analogous or similar approaches to differential frequency coding can also be applied, if necessary, as will be understood and appreciated by the expert. It should be noted that the above formulas and the respective example are provided simply for illustrative purposes only; any other suitable mechanism (e.g., a lookup table, etc.) may be adopted to perform the index mapping, as will be understood and appreciated by the expert. In some examples, at least one bit rate threshold may include a target bit rate threshold. Therefore, the loop process may involve the steps of: quantizing and encoding the parameters non-differentially and / or frequency-differentially with an entropy encoder according to the (determined) processing strategy; estimating (e.g., calculating) a first parameter bit rate for the encoded parameters; and if the first parameter bit rate is less than or equal to the target bit rate threshold, exiting the loop process. In particular, in some possible implementations, the first parameter bit rate can be estimated (calculated) from the minimum of the non-differential and frequency-differential encoding schemes. ML / t / ZUZÓ / Ui υυυυ frequency encoded with entropy encoders (trained). As will be understood and appreciated by the expert, entropy encoders can be trained in any suitable way, for example, to suit individual encoding schemes. For instance, in some possible implementations, training the entropy encoders may involve developing probability models based on metadata calculated from a large set of input signals. The particular signals chosen to develop these models are expected to be representative of the types of signals that are expected to be passed through the system in everyday use. As such, the metadata of other similar signals should be encoded as efficiently as possible.In summary, in general terms, this training is about adapting the entropy encoders to have maximum efficiency with the expected probability distribution of the parameters. In some examples, the looping process may further involve the following steps: if the first parameter bit rate is greater than the target bit rate threshold, quantize and encode the parameters in a non-differential, entropy-free manner according to the processing strategy; estimate a second parameter bit rate for the encoded parameters; and if the second parameter bit rate is less than or equal to the target bit rate threshold, exit the looping process. In some examples, the looping process may further involve the steps of: if the second parameter bit rate is greater than the target bit rate threshold, quantize and encode the parameters differentially in time with the (trained) entropy encoder according to the processing strategy; estimate a third parameter bit rate for the encoded parameters; and if the third parameter bit rate is less than or equal to the target bit rate threshold, exit the looping process. In some examples, time-differential quantization and encoding can be performed on a subset of the parameters in a frequency-interleaved manner relative to a previous frame. Specifically, as can be understood and appreciated by someone knowledgeable, the frequency-interleaved manner generally refers to cases where different frequency bands (corresponding to different subsets of parameters) are processed (e.g., quantized and encoded) for different frames. In other words, the time-differential quantization and encoding of (at least a subset of) the parameters for the current frame can be performed in a different frequency band (corresponding to the currently processed parameters) than that of the previous frame. In some examples, differential time quantization and coding can be performed by cycling through several frequency-interleaved differential time coding schemes, such that, for each cycle, a different subset of the parameters (corresponding to a different set of frequency bands) is differentially quantized and encoded in time, while the remaining parameters are non-differentially quantized and encoded. In some examples, the determined processing strategy can be considered a first processing strategy, and consequently, the looping process may further involve the following steps: if the third parameter bit rate is greater than the target bit rate threshold, determine, from the plurality of processing strategies, a second processing strategy such that the (resulting) bit rate applying the second processing strategy would be expected to be lower than that of using the first processing strategy; and repeat the previous steps of the looping process. As can be understood and appreciated by the expert, in these cases, the second processing strategy thus determined (e.g., selected) can be considered simply as a processing strategy that is coarser than the first processing strategy previously determined (e.g., selected).As such, the set of possible quantized values / indices can be reduced in size, resulting (typically) in a correspondingly reduced bit rate. In some examples, the parameters can be represented in a first number of frequency bands, and the looping process may further involve steps of: if the third parameter bit rate is greater than the target bit rate threshold, reducing the number of frequency bands representing the parameters to a second number less than the first number, so that the total number of parameters to be quantized and encoded is reduced; and repeating the previous steps of the looping process. In some examples, parameters are represented in a first number of frequency bands, and the looping process may further involve the following steps: if the third parameter bit rate is greater than the target bit rate threshold: reusing (or, in some cases, called freezing) parameters in one or more frequency bands from the previous frame into the current frame; and repeating the previous looping process steps. As an example, when encoding with a specific encoding scheme, parameters may be frozen in certain frequency bands (e.g., frequency bands 2, 6, and 10).As a further illustrative example, if all frequency bands are frozen for a period of two frames, the encoder can send half the bands (e.g., the even-numbered bands) in frame N and the remaining half (e.g., the odd-numbered bands) in frame N+1 (thus reducing the total number of parameters to be sent). This generally means that the decoder will receive all (e.g., 12) frequency bands updated every two frames. In these cases, if a frame is lost, there is usually the option of extrapolating from the last two good frames. When recovering from packet loss, it is possible to interpolate between the bands received with a given frame. Generally speaking, the result of the freezing process described above would be reduced entropy, requiring no changes to the decoder or the entropic coding scheme, with only a slight impact on quality. In summary, when it comes to reducing the total number of bands, this can be done in at least two ways. The first way is to reduce the frequency resolution, where instead of using N bands, only M bands are used (where M < N), and the bandwidth of one or more bands in the M-band configuration is greater than in the N-band configuration. These M bands can be derived from N bands; for example, adjacent bands could be grouped in pairs, trios, etc., or any other grouping that has perceptual relevance. The second way is to reduce the time resolution, where the bandwidths of all N bands can remain exactly the same in the frequency domain, but the bands are frozen for a period of x frames (where x > 1).This means that N-band updates can be sent over a period of x frames, or in other words, only N / x bands of N bands need to be updated and sent to the decoder with each frame. In some examples, at least one bit rate threshold may additionally comprise, besides the target bit rate threshold illustrated above, a maximum bit rate threshold greater than the target bit rate threshold. Therefore, the looping process may further involve the following steps: before determining the second processing strategy, or reducing the number of frequency bands, or reusing parameters, obtaining a minimum of the first, second, and third parameter bit rates; and if the minimum is less than or equal to the maximum bit rate threshold, exiting the looping process. It may be worth noting that if the processing loop exits at a specific step, as illustrated above, this would generally mean that the final parameter's bit rate is the bit rate calculated at that step (i.e., when it exits the processing loop). Furthermore, as noted earlier, to be on the safe side, there may be a certain quantization strategy (e.g., the coarsest) among the available quantization strategies for quantizing parameters that ensures they are less than (or equal to) the target bit rate threshold or the maximum bit rate threshold. As such, it can be ensured that there is always a solution for adjusting the parameter's bit rate within the target bit rate threshold or the maximum bit rate threshold. In some examples, the parameters may comprise one or more prediction parameters (sometimes simply called PR parameters), cross-prediction parameters (sometimes simply called C parameters), and decorrelation parameters (sometimes simply called P parameters). As noted earlier, at least some of the parameters are at least partially interrelated, so they can be calculated based on the others. Of course, as the knowledgeable person will understand and appreciate, any other suitable parameter types may exist, depending on various implementations and / or requirements (e.g., the specific coding being used). As previously stated, the ordering (or sequence) of the calculation and quantification of the parameters can be indicated by the first indication of the processing strategies. In some examples, the prediction parameters can be calculated and quantified first, the cross-prediction parameters are calculated from the quantified prediction parameters and then quantified, and the decorrelation parameters are calculated first from the quantified cross-prediction parameters and the quantified prediction parameters, and then quantified. In some examples, the parameters (i.e., prediction parameters, cross-prediction parameters, and decorrelation parameters) can be calculated first, then the decorrelation parameters and prediction parameters are quantified, and from the quantified prediction parameters, the cross-prediction parameters are recalculated and then quantified. ivia / t / zuzó / u ι υυυυ In some examples, the method can be applied to the metadata encoding of an Immersive Voice and Audio Services (IVAS) codec or an ambisonic codec. The ambisonic codec can be a first-order ambisonic codec (FOA) or even a higher-order ambisonic codec (HOA). Of course, as the expert will understand and appreciate, any other suitable codec can be applied, depending on the specific implementation. In some examples, the frame size is less than 40 ms, and in particular, it is equal to or less than 20 ms. According to another aspect of the description, an apparatus is provided that includes a processor and processor-coupled memory. The processor can be adapted to enable the apparatus to perform all the steps of the example methods described throughout the description. According to an additional aspect of the description, a computer program is provided. The computer program may include instructions that, when executed by a processor, cause the processor to carry out all the steps of the example methods described throughout the description. In addition, a computer-readable storage medium is provided. This computer-readable storage medium can store the aforementioned computer program. It will be appreciated that the characteristics of the apparatus and the steps of the method can be interchanged in many ways. In particular, the details of the disclosed methods can be carried out using the corresponding apparatus (or system), and vice versa, as anyone skilled in the art will appreciate. Furthermore, it is understood that any of the above statements made with respect to the methods apply equally to the corresponding apparatus (or system), and vice versa. Brief Description of the Figures The example modalities of the description are explained later with reference to the attached figures, where Figure 1 is a schematic illustration of a block diagram of an encoder / decoder (codec) for encoding and decoding signals (bit streams) according to one modality of the present description. Figure 2 is a flowchart that illustrates an example of a metadata frame encoding method for an input signal according to a description modality. Figure 3 is a flowchart that illustrates an example of a processing loop according to one modality of the description, and Figure 4 is a flowchart that illustrates an example of a processing loop according to another modality of the description. Detailed Description of the Invention The figures and the following description refer to preferred modalities for illustrative purposes only. It should be noted that, based on the following analysis, alternative modalities of the structures and methods disclosed herein will be readily recognized as viable alternatives that can be employed without deviating from the principles claimed. Several embodiments will now be discussed in detail, examples of which are illustrated in the accompanying figures. It should be noted that, where possible, similar or identical reference numbers may be used in the figures and may indicate similar or comparable functionality. The figures represent embodiments of the disclosed system (or method) for illustrative purposes only. A person skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein. Furthermore, in the figures, where connecting elements, such as solid or dashed lines or arrows, are used to illustrate a connection, relationship, or association between two or more schematic elements, the absence of these connecting elements is not intended to imply that no connection, relationship, or association can exist. In other words, some connections, relationships, or associations between elements are not shown in the drawings to avoid complicating the description. Additionally, for ease of illustration, a single connecting element is used to represent multiple connections, relationships, or associations between elements. For example, where a connecting element represents communication of signals, data, or instructions, it should be understood by those skilled in the art that this element represents one or more signal paths, as necessary, to affect the communication. As mentioned earlier, when the frame period of an audio codec (encoder / decoder) approaches 40 ms, or even 20 ms or less, the audio signal can be updated at short intervals. However, it is generally understood that additional information (or metadata / parameters) does not need to be updated as frequently. In other words, in codecs with short frame periods, it can often mean that parameters would be oversampled if they were all included in every frame (as is the case with the audio signal). In some implementations, it may be possible not to send metadata in every frame, and only update it every M-th frame (for example, up to M = 4 in some cases). This would generally reduce the average metadata bit rate. In light of the foregoing, the application of the technique as described in this application can generally be applied to any parameter or additional information in audio coding where the temporal correlation of parameters exceeds the codec spacing. For example (but not as a limitation), time-interleaved frequency-differential entropic coding procedures could be applied to parameters in the Immersive Voice and Audio Services (IVAS) codec as normalized by the Third Generation Partnership Project (3GPP) that models spatial interactions, or any parametric stereo coding technique that attempts to minimize the codec spacing below 40 ms.However, as will be understood and appreciated by the expert, insofar as the modalities of the present description can be applied to a first-order ambisonic (FOA) immersive codec, the approach described herein is generally applicable to any other suitable audio codec (e.g., higher-order ambisonic, HOA, codecs) where the spacing or frame size is small, which would generally present some specific challenges in encoding additional information in a timely manner, as mentioned above. With reference to Figure 1, a schematic block diagram (simplified) of an encoder / decoder (codec) 100 for encoding and decoding signals (bitstreams) according to one modality of the present description is shown. Specifically, as can be understood by a person skilled in the field, the illustrative example in Figure 1 shows a spatial reconstructor (SPAR) first-order ambisonics (FOA) codec 100 for encoding and decoding IVAS bitstreams in FOA format. More specifically, as indicated in the figure, the FOA codec 100 in Figure 1 involves both passive and active prediction, as can be understood and appreciated by a person skilled in the field. In general terms, for encoding purposes, an IVAS encoder may include spatial analysis and a downmixing unit that receives audio data, including but not limited to: monophonic signals, stereo signals, binaural signals, spatial audio signals (e.g., multichannel spatial audio objects), FOA, higher-order ambisonics (HOA), and any other suitable audio data. In some implementations, the spatial analysis and downmixing unit may implement complex advanced coupling (CACPL) for downmixing stereo audio / FOA signals and / or SPAR for downmixing FOA audio signals. In other implementations, the spatial analysis and downmixing unit may also implement any other suitable format. Returning to Figure 1, the FOA 100 codec may include a SPAR FOA 101 encoder, an Enhanced Voice Services (EVS) 105 encoder, a SPAR FOA 106 decoder, and an EVS 107 decoder. The SPAR FOA 101 encoder can be configured to convert an FOA input signal into a set of downmix channels and parameters used to regenerate the input signal in the SPAR FOA 106 decoder. Depending on the implementation, the downmix signals may range from 1 to 4 channels, and the parameters (sometimes also referred to as coefficients) may include, but are not limited to, prediction coefficients (PR), cross-prediction coefficients (C), and decorrelation coefficients (P). It should be noted that SPAR is a process used to reconstruct an audio signal from a downmixed version of the audio signal using the PR, C, and P parameters, as will be described in further detail later. Depending on the number of downmix channels, one of the FOA inputs can always be sent intact (e.g., channel W as shown in the present example in Figure 1), and 1 to 3 other channels (e.g., channels Y, Z and X as shown in the present example in Figure 1) can be sent as waste, or completely parametrically. In particular, the prediction parameters can remain the same regardless of the number of downmix channels and can be used to minimize the predictable energy in the residual downmix channels. On the other hand, cross-prediction parameters can be used to further assist in regenerating fully parameterized channels from the residuals. As such, these parameters would not be required in the 1- and 4-channel downmix cases, where there are no residual channels to predict in the first case, and no parameterized channels to predict in the latter. Furthermore, decorrelation parameters can be used to fill in the remaining energy not accounted for by prediction and cross-prediction. Again, the number of decorrelation parameters can depend on the number of downmix channels in each band. The example in Figure 1 generally shows an illustrative modality of such a system and how these parameters fit on the decoder side. In particular, the example implementation shown in Figure 1 represents a nominal 2-channel downmix, where the representation of channel W (which is W for passive prediction or W' for active prediction) is sent unchanged with a single predicted channel Y to decoder 106. The cross-prediction coefficients (C) allow at least some portion of the parametric channels to be reconstructed from the residual channels, in cases where at least one channel is sent as a residual and at least one is sent parametrically, i.e., for 2- and 3-channel downmixes.Therefore, in general terms, for two-channel downmixing, the C parameters allow some of the X and Z channels to be reconstructed from Y', and the remaining channels are reconstructed using uncorrelated versions of the W channel, as described in further detail later. In the case of three-channel downmixing, the residual Y' and X' channels are used to reconstruct Z only. In particular, the expert in the technique will also understand and appreciate that, in some example implementations, W can be an active channel (or in other words, with active prediction, hereafter referred to as Wj). As an example (but not as a limitation), an active channel W that allows some kind of mixing of the X, Y, Z channels into channel W can be defined as follows: W' = W + f * pry* Y + f * prz* Z + f * prx* X (1) where f is a suitable constant (e.g., 0.5) that allows mixing of at least some of the X, Y, Z channels in the W channel; and pry, prxy, prz are the prediction coefficients (PR). Consequently, in passive W cases, f = 0 so that there is no mixing of the X, Y, Z channels in the W channel. In the example implementation of Figure 1, the SPAR PDA 101 encoder may include a predictor unit (passive or active) 102, a remix unit 103, and a downmix / extraction selection unit 104. In particular, the predictor 102 may receive the FOA channels in a 4-channel B format (W, Y, Z, X) and calculate the downmix channels (representation of W, Y', Z', Xj). The downmixing / extraction selection unit 104 can extract SPAR FOA metadata, for example, from a metadata payload section of the IVAS bitstream. The predictor unit 102 and the remixing unit 103 can then use the SPAR FOA metadata to generate the remixed FOA channels (representing W, Si', S2', and S3'), which can then be fed into the EVS encoder 105 to be encoded into an EVS bitstream, which can subsequently be encapsulated in the IVAS bitstream sent to the decoder 106. With reference to the SPAR FOA 106 decoder, the EVS bitstream is decoded by the EVS 107 decoder, resulting in a number of downmix channels (for example, N_dmx = 2, where N_dmx denotes the number of downmix channels). In some implementations, the SPAR FOA 106 decoder can be configured to reverse the operations performed by the SPAR101 encoder. For example, in the example in Figure 1, the remixed FOA channels (representing W, Y', S2', and S3j) can be recovered from the two downmix channels using the SPAR FOA spatial metadata. The remixed SPAR FOA channels can then be fed into the reverse mixer 111 to recover the downmixed SPAR FOA channels (representing W, Y', Z', and Xj).Subsequently, the predicted SPAR FOA channels can then be fed into the inverse predictor 112 to recover the original unmixed SPAR FOA channels (W, Y, Z and X). It is noted that in this two-channel example, decorrelator blocks 109-1 (deci) and 109-2 (dec2) can be used to generate decorrelated versions of channel W using either a time-domain or frequency-domain decorrelator. The downmixed and decorrelated channels can then be used in conjunction with SPAR FOA metadata to parametrically reconstruct channels X and Z. Block C 108 can be interpreted as multiplying the residual channel by the 2x1 coefficient matrix C, thereby creating two cross-prediction signals that can be summed into the parametrically reconstructed channels, as shown in the example in Figure 1.Furthermore, the Pi 110-1 block and the P2110-2 block can be referred to as the multiplication of the decorrelator outputs by columns of the 2x2 coefficient matrix P, thus creating four outputs that can be summed into the parametrically reconstructed channels, as shown in the example in Figure 1. As noted earlier, in some implementations, depending on the number of downmix channels, one of the FOA inputs can be sent to the SPAR FOA 106 decoder intact (e.g., the example W channel), and one to three of the other channels (Y, Z, and X) can be sent as waste or fully parametrically to the SPAR FOA 106 decoder. The PR coefficients, which remain the same regardless of the number of downmix channels N_dmx, can be used to minimize the predictable energy in the residual downmix channels. The C coefficients can be used to further assist in regenerating fully parameterized channels from the waste. As such, the C coefficients may not be required in one- and four-channel downmix cases, where there would be no waste channels or parameterized channels to predict.The P coefficients are used to fill in the remaining energy not accounted for by the PR and C coefficients. The number of P coefficients generally depends on the number of downmix channels N in each band. In some implementations, the SPAR PR coefficients (passive W only) are calculated as follows: Step 1. Predict all side signals (Y, Z, X) of the main signal W using a prediction matrix ivia / t / zuzó / u ι υυυυ comprised of the prediction coefficients as follows: (2) where, as an example, the prediction parameter for the predicted channel Y' can be calculated as: _ Ryw__1_____________ρTγmax (Rww, e)max (1,( ) where RAB= cov(A, B) are elements of the input covariance matrix corresponding to the signals A and B, and can be calculated per band. Similarly, the residual channels Z' and X' have corresponding prediction parameters, i.e. przy prx. The above matrix is ​​known as the prediction matrix. Step 2. Remix the W and predicted signals (Y', Z', X') from highest to lowest acoustic relevance, where remixing means rearranging or recombining the signal based on some methodology, iv5 / S2' W' Y' Z' X. ML / t / ZUZÓ / UΊ uauu One possible implementation of the remix is ​​the rearrangement of the input signals to W, Y', X', and Z', given the assumption that the left and right audio signals are more acoustically relevant or important than the front-back signals, and the front-back signals are more acoustically relevant / important than the top-bottom signals. Step 3. Calculate the covariance of the 4-channel remix and post-prediction downmix as: / ?pr= [remix][prediction]. R. [prediction^[remix]H, (5) where the matrices [prediction] and [remix] refer to those used in equations (2) and (4) respectively. The final remix and post-prediction downmix matrix can be written as ^pr — ^ww ^dW Ruw ^Wd Rdd ^udRWu Rdu Ruu (6) where d represents the residual channels (i.e., the 2oa N_dmx channels, where N_dmx denotes the number of downmix channels), yu represents the parametric channels that need to be fully regenerated (i.e., the (N_dmx+1)th to 4th channels). For the example of a WS1S2S3 downmix with 1 to 4 channels, dyu can represent the following channels shown in Table 1: Table 1. dvu channel representations N channels or channels 1 — Yes, S2', S3' 2 Yes S2', Yes 3 Yes, S2' S3' 4 Yes, S2', S3' — Of primary interest for the calculation of SPAR FOA metadata are the quantities Rdd, Rud and Ruu. Step 4. From the quantities Rdd, Rud, and Ruu, codec 100 can determine whether it is possible to cross-predict any remaining portion of the fully parametric channels from the residual channels sent to the decoder. In some possible implementations, the additional C coefficients required can be calculated as: C = Rud^dd+ I max( e, tr(Rdd) * 0.005)) T (7) Therefore, the parameter C would generally have the form (1 x2) for a 3-channel downmix, and (2^1) for a 2-channel downmix. Step 5. Calculate the remaining energy in parameterized channels that must be reconstructed by decorrelators 109-1 and 109-2 as: Re9uu—CRddC Resuu— Ruu—Re9uu / ?pc (8) (9) (W) max(e, Rww, a * tr(|Resuu|)) where 0 < a < 1 is a constant scaling factor. In particular, the residual energy in the upmix channels Resuues is the difference between the actual energy Ruu(post-prediction) and the regenerated cross-prediction energy Reguu. In some possible implementations, the square root of the matrix can be taken after the normalized matrix Resuuhaya has had its off-diagonal elements set to zero. P can also be a covariance matrix and, therefore, can be Hermitian symmetric. Thus, only the upper or lower triangle parameters need to be sent to the decoder 106. The diagonal entries can be real, while the off-diagonal elements can be complex. In some further possible implementations, the coefficients P can be further separated into diagonal and off-diagonal elements Pd and Po, respectively. In some implementations, only the diagonal elements of P are computed and sent to the decoder, and these can be computed as follows: =_______diag(Resuu)_______dJmax(e, Rww, a * tr(.\Resuu\)) Now, on the encoder side, quantizing these parameters may become necessary. In particular, given the dependencies between the three types of parameters (i.e., PR, C, and P) as previously mentioned, the order (or sequence) of their calculation and quantization can generally be considered important for audio quality. Based on this description, three possible methods for achieving this are as follows: 1. All in one In this mode, decorrelators are generally not allowed to compensate for quantified prediction errors. To be more specific, in a first step, the parameters PR, then C, and then P are calculated as illustrated above without quantification. Then, all parameters PR, C, and P are quantified, according to a quantification strategy or scheme (for example, based on appropriate quantification ranges and / or levels, as understood by the expert). 2. Waterfall In general terms, this particular modality allows for accurate prediction and cross-prediction, and decorrelators can fill in the errors of quantification. To be more specific, in the first step, the PR parameter is calculated and then quantified. Subsequently, from the quantified PR parameters, the C parameter is calculated and then quantified. Finally, from the quantified C parameters, the P parameter is also calculated and then quantified. 3. Partial waterfall In general terms, this particular modality would minimize the P coefficients, thus allowing accurate cross-prediction but without allowing decorrelators to compensate for prediction errors. To be more precise, in the first step, the PR, C, and P parameters are calculated without quantization, as in the previous all-in-one approach. Then, the P parameters are quantized. Subsequently, the PR parameters are also quantized. And finally, based on the quantified PR parameters, the C parameter is recalculated and then quantified. In each of the modalities illustrated above, the downmixture (including residues) can always be calculated using quantified prediction coefficients. As an expert can understand and appreciate, the quantization process itself can be defined by an appropriate range (quantization). For example, a range of [-a, a] can be defined for some parameters (e.g., the parameters PR, C, and the off-diagonal elements of P), while another range of [0, a] can be defined for others. Furthermore, a number of quantization levels can be defined, which should be evenly spaced between these endpoints. That is, various limits and step sizes can be configured or defined for each parameter type (e.g., PR, C, Pd, Po). Additionally, in some implementations, if the parameters are complex values, the real and imaginary parts can be quantized with equal or different ranges and step sizes, depending on the parameter distribution. A possible implementation of the quantization process can be defined as: q(x) = max(—a, min(a, x)) / (2a / (qlvl — 1)) (11) or q(x) = max(0, min(a, x)) / (a / (qlvl — 1)) (12) where x denotes the quantization indices, a denotes the quantization range and qlvl denotes the quantization level. In some possible implementations, it may be desirable to select odd values ​​for the quantization levels (i.e., qlvl) to ensure that a quantization point is available at 0, for example, for two-sided parameters, as the knowledgeable person will appreciate. ML / t / ZUZÓ / UΊ U3UU It may be worth noting that, as previously mentioned, the example in Figure 1 generally shows a passive prediction implementation (i.e., the W channel). However, as the knowledgeable person will understand and appreciate, active prediction can be applied in some other possible implementations. Generally speaking, an active W channel can allow some mixing of at least some of the X, Y, and Z channels into the W channel, and active prediction is typically used in the case of one-channel downmixing. Consequently, in passive prediction cases, there would generally be no mixing of the X, Y, and Z channels into the W channel. Figure 2 is a flowchart illustrating an example of a metadata frame encoding method 200 for an input signal according to one modality of the description. Method 200 as described herein can be applied, for example, to codec 100 as shown in Figure 1 (or any other suitable codec). The metadata can be computed (e.g., extracted) from the input signal (audio or video) using a suitable codec (encoder / decoder). Generally speaking, the metadata can be used to aid in the regeneration of the input signal on the decoder side. The metadata can comprise a plurality of at least partially interrelated parameters that can be calculated from the input signal.That is, at least some of the input signal parameters can be calculated (e.g., generated or regenerated) based on at least some of the other parameters, so that, depending on various circumstances, not all parameters have to be transmitted in a straightforward manner. Method 200 can be performed iteratively, for example, by using a loop process (which will be described in detail later) for each frame of the input signal. In particular, Method 200 (or more precisely, the loop process) begins with step S210 by determining a processing strategy from a plurality of processing strategies to compute and quantize the parameters. Once the processing strategy has been determined (e.g., selected) in step S210, the loop process advances to step S220 of calculating and quantifying the parameters based on the determined processing strategy to obtain quantified parameters. Subsequently, in step S230, the (quantized) parameters are encoded accordingly, and then a (resultant) bit rate is estimated (e.g., calculated) from the encoded parameters, and a decision is made based on the estimated bit rate together with at least one target bit rate threshold (e.g., predefined or preconfigured) in step S240. If the bit rate threshold is met—for example, if the estimated bit rate is equal to or less than the bit rate threshold—method 200 exits the processing loop. Otherwise, the loop returns to step S210 and continues with steps S210 through S240. Specifically, upon re-entering the loop, a new processing strategy can be determined to meet the bit rate threshold target. As an expert can understand and appreciate, the plurality of processing strategies for calculating and quantifying parameters can be provided in any suitable way, such as predefined or preconfigured. Therefore, the processing strategy can also be determined from the plurality. MA / t / ZUZÓ / Uί υυυυ of processing strategies, in any suitable way. For example, depending on a (actual) bit rate requirement, a suitable processing strategy can be selected from the plurality of processing strategies, such that a resulting bit rate after performing the calculation, quantization, and encoding (e.g., with or without entropic encoding) based on the processing strategy thus selected meets the (actual) bit rate requirement. Since the looping process is generally directed at (among other things) quantization-related processing, in some cases, the looping process may also be referred to as a quantization loop (or simply a loop for short). Similarly, since the processing strategy is also generally directed at (among other things) quantization-related processing, in some cases, the processing strategy may also be referred to as a quantization strategy (or, in some other cases, interchangeably as a quantization scheme). Furthermore, it should be noted that the encoding process can use any suitable encoding procedure, including but not limited to entropic encoding or entropy-free encoding (e.g., base2 encoding). Of course, any other suitable encoding mechanism may be adopted depending on various implementations and / or requirements. Specifically, each of the plurality of processing strategies may comprise a respective first cue that is indicative of an ordering (or sequence) related to the calculation and quantification of individual parameters. That is, the first cue may comprise sequence information indicating when and in what order the individual parameters are calculated and quantified. As an example (but not as a limitation), the first cue may comprise information indicating that all parameters are calculated first before any of them are quantified. The looping process will now be described in more detail with reference to the examples as shown in Figures 3 and 4. As mentioned earlier, in codecs with short spacing or frame updates, parameters can be oversampled if they are all included in each frame. Therefore, the primary focus of this description is to propose mechanisms to minimize extraneous information as much as possible while maintaining a short frame update rate for the audio essence and parameters. To address the aforementioned problem, particularly regarding the evaluation of secondary information expansion, the inventor of this description generally proposes a mechanism for incorporating time-differential estimates for parameters of some frequency bands alongside non-differential estimates for parameters of other frequency bands. The proposed approach alternates between bands that are time-differentially encoded and those that are non-differentially encoded, so that each band is regularly refreshed with a non-differential calculation without requiring a complete parameter update. The central concept is that as the frame size decreases, the frame-to-frame correlation of the parameters increases, and therefore, increased coding gains can be achieved through time-differential encoding parameters. In addition to frequency interleaving for differential time coding, the concept of an iterative and stepwise approach to selecting an optimal parameter quantization scheme is also introduced, seeking a better (or optimal) quantization scheme from multiple alternatives. In this case, the term "best" or "optimal" may not necessarily refer to the quantization scheme with the lowest bit rate, but rather one that mitigates the state for the decoder. For example, the use of differential time-coding can generally have the drawback of introducing a frame-by-frame state that can cause problems when, during transmission, the audio stream experiences packet loss. In this case, both the audio and parameters can be lost, and any parameter being updated with differential time-coding may experience multiple subsequent frames of potential artifacts. This description generally does not address decoder mitigations of this problem. Instead, the problem is usually addressed (mitigated) by choosing an appropriate quantization scheme that limits this behavior as much as possible.In general terms, coding mitigation (encoder side) usually involves an iterative selection process for quantization and entropic coding that attempts to minimize the degree to which artifacts arising from packet loss due to the use of time-differential coding can be introduced. Referring again to the figures, Figure 3 is a flowchart that schematically illustrates an example of a 300 processing loop according to one modality of the description. The processing loop 300 begins with step S310, where a first bit rate (hereafter referred to as b1) is calculated (or estimated). In some possible implementations, the entropy of the non-differentially and / or differentially frequency-quantized parameters is estimated for each frame. In some other possible implementations, the first bit rate b1 can be calculated as the minimum of non-differential and differential-frequency-quantized encoding schemes encoded with (trained) entropy encoders (e.g., Huffman or Arithmetic coding). In step S320, the initial bit rate b1 is compared to a target bit rate (hereafter referred to as t). If the bit rate estimate for parameter b1 is within (equal to or less than) the target bit rate t, then the processing loop exits. As a result, the parameters are encoded in such a way that any additional available bits are supplied to the audio encoder to increase the bit rate of the audio scene. If step S320 fails (i.e., the estimated bit rate b1 is greater than the target bit rate t), then in step S330 a second bit rate (hereafter referred to as b2) is calculated from the quantized parameters. In some possible implementations, the second bit rate b2 can be calculated in a non-differential manner without entropic encoding (e.g., by using base2 encoding). Then, in step S340, the second bit rate b2 is compared to the target bit rate t. If the second bit rate b2 is within (equal to or less than) the target bit rate t, the loop exits. ΜΛ / t / ZUZÓ / Uί υυυυ processing. Otherwise, a third bit rate (hereafter referred to as b3) of the parameters is calculated in step S350. In some possible implementations, the third bit rate b3 can be calculated using differential time-coding with the (trained) entropy encoders. In some additional possible implementations, a subset of parameter values ​​in the current frame can be quantized and then subtracted from the quantized parameter values ​​in the previous frame, and the differentially quantized parameter value and entropy can be calculated. In step S360, if the calculated bit rate b3 is equal to or less than the threshold t, then the processing loop exits, and the parameters are encoded with the supplied bit rate and additional bits are supplied to encode the audio. Otherwise, several measures can be implemented in step S370 in order to eventually meet the target bit rate threshold t. For example, in some possible implementations, a second, coarser processing strategy (quantization strategy) can be selected from the plurality of processing strategies. In these cases, as will be understood and appreciated by the expert, the quantization process can include several levels of increasingly coarser quantization, such as, for example, fine, moderate, coarse, and extra-coarse quantization strategies. Then, after determining (for example, selecting) the coarsest quantization strategy, the processing loop repeats steps S310 through S360. In some other possible implementations, a frequency band reduction step can be performed in S370. Then, the steps (i.e., steps S310 to S360) mentioned above can be repeated with the reduced band configuration. This would generally reduce the total number of parameters to be quantized and can often result in a low bit rate for (at least) some frames. Alternatively, or additionally, in some further implementations, it may also be possible to perform a freezing (i.e., reuse) step of the parameters in a band of the previous frame. This would essentially prevent a parameter from changing over time, resulting in reduced entropy for the time-differential entropic coding. For example, as shown in Table 2 (which will be described in detail later), when encoding with the coding scheme 4a, the parameters can then be frozen in frequency bands 2, 6, and 10. This would typically result in reduced entropy, no change in the decoder or the entropic coding scheme, and a slight impact on quality.It should be noted that the previous example of 2, 6, and 10 is merely illustrative, and many band configurations can be frozen across multiple frames, as will be understood and appreciated by the expert. For example, if all frequency bands are frozen for a period of two frames, the encoder can send half the bands in frame N and the remaining half in frame N+1 (thus reducing the total number of parameters to be sent). This generally means that the decoder will receive all (e.g., 12) frequency bands updated every two frames. In such cases, if a frame is lost, there is usually the option of extrapolating from the last two good frames. When recovering from packet loss, it is possible to interpolate between the bands received with a given frame. Specifically, if the loop exits at step x, then the final parameter bit rate is the bit rate calculated at that step x. Furthermore, in some implementations, it may be possible (or even desirable) to consider designing the bit rate b3 with the coarsest quantization strategy (among the given plurality of quantization strategies available for quantizing the parameters) as it is guaranteed to be less than the target bit rate threshold t. In these cases, it can be guaranteed that there will always be a solution to adjust the parameter's bit rate within the target bit rate t. Figure 4 is a flowchart that schematically illustrates an example of a 400 processing loop according to another modality of the description. In particular, identical or similar reference numbers in the 400 loop of Figure 4 generally indicate identical or similar elements in the 300 loop as shown in Figure 3, so their repeated description can be omitted for the sake of brevity. In particular, the processing loop in Figure 4 may be specifically suited for cases where two bit rate thresholds are used (represented as a target bit rate threshold t1 and a maximum bit rate threshold t2), as opposed to the single target bit rate threshold scenario as shown in Figure 3. Generally speaking, the target bit rate threshold t1 can be considered as a goal or target that is good to achieve, while the maximum bit rate threshold t2 can be seen simply as the hard threshold that should not be exceeded. More specifically, steps S410 to S470 are the same as those (i.e., steps S310 to S370) in Figure 3, so that their repeated description can be omitted for the sake of brevity. However, instead of switching directly to step S470 if the condition in S460 is not met, an additional step S461 is inserted, calculating a fourth bit rate (b4) as the minimum of the bit rates b1, b2, and b3. Then, the fourth bit rate b4 is compared to the maximum bit rate threshold t2 in step S462. If the fourth bit rate b4 is equal to or less than the maximum bit rate threshold t2, processing loop 400 exits; otherwise, processing loop 400 continues with step S470 (which is essentially the same as step S370 in Figure 4) and repeats steps S410 to S462. Similar to Figure 3, if the loop exits at step x, then the final parameter bit rate is the bit rate calculated at that step x. Furthermore, in some implementations, it may also be possible (or even desirable) to consider designing the bit rate b3 with the coarsest quantization strategy (among the given plurality of quantization strategies available for quantizing the parameters) as it is guaranteed to be less than the maximum bit rate threshold t2. In these cases, it can be guaranteed that there is always a solution to adjust the parameter bit rate within the maximum bit rate t2. In summary, steps S310, S330, and S350 in Figure 3, and correspondingly steps S410, S430, and S450 in Figure 4, generally have no impact on audio quality. However, step S461 in Figure 4 would reduce quality by impacting both the audio bitrate and the parameter bitrate. Furthermore, any of the techniques mentioned above in steps S370 in Figure 3 and S470 in Figure 4 (e.g., switching to coarser quantization, bandwidth reduction by lowering frequency resolution, bandwidth reduction by lowering time resolution, etc.) would essentially have a negative impact on quality. Therefore, the steps in the examples in Figures 3 and 4 are ordered to minimize quality degradation or address constraints in other areas.In general terms, the method as described in the present description tends to choose one or more of the techniques illustrated above to maintain a balance between reducing metadata bit rate and perceptual quality. There are also additional considerations that come into play in the specific order of the previous steps and the reason for possibly two target parameter bit rates (i.e., t1 and t2). In particular, stepwise ordering allows the procedure to terminate if the constraints are met. This generally reduces the computational load when calculations are performed serially, because not all available steps will typically be executed. Furthermore, the order also allows for an implicit preference of alternatives. For example, ordering non-differential entropic coding as the first step would generally mean that this alternative is preferred if it meets the constraints. This is an encoder mitigation to minimize state and improve quality during packet loss conditions. In addition, the ability to use two targets (t1 and t2) would generally allow the ability to swap audio bit rate and parameter bit rate with greater control. Now, the description of the interleaving to achieve differential time coding will be described in more detail. Some possible implementations for handling the interleaving of differential entropic coding over time are shown in Table 2. ivia / t / zuzó / u ι υυυυ Table 2. Interleaved differential time coding schemes Encoding scheme Differential time encoding, bands 1-12 base 000000000000 4a 011101110111 4b 101110111011 4c 110111011101 4d 111011101110 In this specific example, five configurations are generally proposed for metadata bitstream encoding, each consisting of 12 frequency bands. More specifically, the band specified by 0 is non-differentially encoded, and the band specified by 1 is differentially encoded in time (i.e., quantizing the parameter and subtracting it from the quantized parameter in the previous frame). As described in the example, the parameter bit rate of each frame is first evaluated by non-differentially (i.e., base) encoding the parameters (e.g., see step S410 or S510). Then, in step S450 or S550, the time-differential encoding scheme is chosen (if required) based on the previous frame encoding scheme. ML / t / ZUZÓ / UΊ uauu An example of mapping the previous frame coding scheme to the current frame's differential time coding scheme is shown later in Table 3: Table 3. Mapping of differential coding schemes over time previous frame encoding scheme current frame differential time encoding scheme base 4a 4a 4b 4b 4c 4c 4d 4d 4a In this particular example, the base term used in Table 3 generally refers to the non-differential encoding scheme. Therefore, as can be seen in Table 3, time-differential encoding always cycles from 4a to 4d (and vice versa). It is possible to continue the cycle without ever requiring non-differential encoding. And in this particular example, the maximum memory or 'state' of the codec is the current frame and three previous frames (i.e., four frames in total). Of course, as will be understood and appreciated by the knowledgeable user, the numbers 5 configurations and 12 frequency bands, etc., are used simply as examples for illustrative purposes; any other suitable number can be used, depending on various implementations and / or requirements.Analogous or similar arguments apply to switching between coding schemes as shown in Table 3, which can also adopt any suitable technique. In particular, if a different quantization scheme is chosen, then the indices of the previous frame, quantized with a different quantization scheme, can first be mapped to the indices of the current frame. Generally speaking, this mapping step may be necessary to allow time-differential encoding of parameters, for example, when the number of quantization levels changes from one frame to the next, thus enabling time-differential encoding between frames without having to send a non-differential frame each time the quantization scheme changes. As a possible example, the mapping of the indices can be done based on the following formulas: indexcur= round(indexprevx (quant_lvlcur— 1) / (quant_lvlprev— 1)) (13) where IndexClir denotes the indices of the current frame after mapping, indexprev denotes the indices of the previous frame, quant_lvlcur denotes the quantization level of the current frame and quant_lvlprev denotes the quantization level of the previous frame. As a simple illustrative example, the quantization range should be from 0 to 2, and the previous quantization levels should be 11. In the case of uniform quantization, this would generally mean that each quantization step would be 0.2. Furthermore, let's say the current quantization levels are 21, which means that each quantization step is 0.1 with uniform quantization. Based on these assumptions, if a quantized value in the previous frame was 0.4, then with 11 uniform quantization levels, the previous index would be indexprev = 2. The mapping provides the quantized indices of the metadata in the previous frame as if they were quantized using the quantization levels of the current frame. Therefore, in this example, if the quantization levels in the current frame are 21, then the quantized value 0.4 would be mapped to indexcurr = 4.Once the mapped indices are calculated, the difference between the current frame indices and the previous frame indices is calculated, and this difference is encoded. Analogous or similar approaches to differential frequency coding can also be applied, if necessary, as will be understood and appreciated by the expert. Of course, any other suitable mapping scheme can be adopted (e.g., by using a lookup table or similar), depending on various implementations and / or requirements. Furthermore, as previously stated, a single metadata parameter can be quantized from a continuous numerical value to an index representing a discrete value. In non-differential encoding, the information encoded for that metadata parameter corresponds directly to that index. In time-differential encoding, the information encoded is the difference between the index of that metadata parameter in the current frame and the index of the same metadata parameter in the previous frame. As will be understood and appreciated by the expert, the general concept of time-differential encoding illustrated above can be further extended, for example, to a plurality of frequency bands. Consequently, the metadata parameter can be similarly extended, for example, to a plurality of parameters corresponding respectively to the plurality of frequency bands, as appropriate.Differential frequency coding follows a similar principle, but the encoded difference is between the metadata of one frequency band of the current frame and the metadata of the other frequency band of the current frame (as opposed to the current frame minus the previous frame in differential time coding). As a simple example (but not as a limitation), assuming that a0, a1, a2, and a3 denote parameter indices in four frequency bands of a particular frame, then, in an example implementation, the frequency difference indices might be a0, a0-a1, a1-a2, a2-a3. As the knowledgeable person will appreciate, the general idea behind differential coding (in time and / or frequency) is that metadata can typically change slowly from frame to frame, or from frequency band to frequency band, so that even if the original value of a parameter changes, the encoded metadata may not change. MA / t / ZUZÓ / Ui υυυυ the metadata were large, the difference between it and the metadata of the previous frame, or the difference between it and the metadata of another frequency band, would probably be small. This is advantageous because, in general, parameters with statistical distributions that tend to zero can be encoded using fewer bits. Therefore, even if some of the example implementations might briefly or simply refer to differential time-encoding, the knowledgeable person would appreciate that differential frequency-encoding can also be applied to the same (possibly with a less suitable adaptation). Some additional possible examples of the present description may refer to a process of processing an input audio signal, represented in subbands, to produce a downmix signal and associated metadata. This process may be performed by one or more processors. For each subband, the process may include determining a downmix matrix and associated metadata, and remixing each subband according to the downmix matrix to produce the downmix signal. One or more quantization strategies and one or more encoding strategies may be used to encode the metadata, given a target and / or maximum metadata bitrate limitation. In some implementations, the process may include non-differential entropic coding of all subbands. The process may also include differential entropic frequency coding of all subbands. Furthermore, the process may combine frequency interleaving with differential time coding of the quantized parameters corresponding to the selected subbands for a low-latency audio codec, as described in detail above. The process may also include non-entropy encoding of subband metadata. This involves iterating through steps to find an appropriate encoding strategy that meets the bitrate and audio quality requirements and reduces decoder state. The process may also include reducing frequency resolution by decreasing the number of subbands in which the spatial metadata is encoded, for example, from 12 bands to 6 bands. Finally, the process may include reducing time resolution by time-fixing (or freezing) one or more subband metadata, so that the metadata for a subband does not need to be sent.The process may involve using multiple quantization strategies, each combining different quantization levels for various spatial metadata parameters. It may also involve selecting among these quantization strategies to ensure bitrate targets are met. The process may iterate through steps to find an appropriate quantization scheme that satisfies both bitrate and audio quality requirements. The iterative method focuses on achieving the desired metadata bitrate with the desired quantization scheme, minimal computational complexity, and reduced decoder state. If the desired quantization level falls outside the desired bitrate range, a different (e.g., coarser) quantization scheme is selected, ensuring minimal impact on audio quality. In some implementations, mapping the indices of previous quantized frames to a different number of levels than the current frame allows differential time coding between frames without having to send a non-differential frame each time a different quantization level is needed. In various implementations, quantization (conversion of continuous values ​​into discrete indices for coding) may include determining the best value for the coefficients according to current needs, by manipulating the order of calculation and quantification of successive metadata coefficients. A computing device that implements the techniques described above might have the following example architecture. Other architectures are possible, including those with more or fewer components. In some implementations, the example architecture includes one or more processors (e.g., dual-core Intel® Xeon® processors), one or more output devices (e.g., LCD), one or more network interfaces, one or more input devices (e.g., mouse, keyboard, touchscreen), and one or more computer-readable media (e.g., RAM, ROM, SDRAM, hard drive, optical disc, flash memory, etc.). These components can exchange communications and data through one or more communication channels (e.g., buses), which may utilize various hardware and software to facilitate the transfer of data and control signals between components. The term “computer-readable medium” refers to any medium that participates in providing instructions to the processor for execution, including, but not limited to, non-volatile media (e.g., optical or magnetic disks), volatile media (e.g., memory), and transmission media. Transmission media include, but are not limited to, coaxial cables, copper wires, and fiber optic cables. The computer-readable media may also include an operating system (e.g., a Linux® operating system), a network communication module, an audio interface manager, an audio processing manager, and a live content distributor. The operating system may be multi-user, multi-processing, multitasking, multi-threaded, real-time, etc. The operating system performs basic tasks, including, but not limited to: recognizing input and providing output to 706 network interfaces and / or 708 devices; tracking and managing files and directories on computer-readable media (e.g., memory or a storage device); controlling peripheral devices; and managing traffic on one or more communication channels. The network communication module includes various components for establishing and maintaining network connections (e.g., software for implementing communication protocols such as TCP / IP, HTTP, etc.). The architecture can be implemented on a parallel or peer processing infrastructure or on a single device with one or more processors. The software can include multiple software components or can be a single body of code. The described features can be advantageously implemented in one or more computer programs that are executable on a programmable system that includes at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. A computer program is a set of instructions that can be used, directly or indirectly, in a computer to perform a specific activity or achieve a specific result. A computer program can be written in any programming language. MA / t / ZUZÓ / Uί υυυυ (for example, Objective-C, Java), which includes compiled or interpreted languages, and can be implemented in any form, including as a standalone program or as a module, component, subroutine, a browser-based web application, or other unit suitable for use in a computing environment. Processors suitable for executing a program of instructions include, for example, general-purpose and special-purpose microprocessors, and the single processor or one of multiple processors or cores, of any type of computer. Generally, a processor will receive instructions and data from read-only memory, random-access memory, or both. The essential elements of a computer are a processor to execute instructions and one or more memories to store instructions and data. Generally, a computer will also include, or be operationally coupled to for communication with, one or more mass storage devices to store data files; such devices include magnetic disks, such as internal hard drives and removable disks; magneto-optical disks; and optical disks.Suitable storage devices for tangibly incorporating computer program instructions and data include all forms of non-volatile memory, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard drives and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM discs. The processor and memory can be supplemented with, or incorporated into, ASIO (Application-Specific Integrated Circuits). To provide user interaction, features can be implemented on a computer that has a display device such as a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, or a retinal display device to show information to the user. The computer may have a touch surface input device (e.g., a touchscreen) or a keyboard and a pointing device such as a mouse or trackball through which the user can provide input to the computer. The computer may have a voice input device to receive voice commands from the user. The features can be implemented in a computer system that includes a back-end component, such as a data server, or a middleware component, such as an application server or an internet server, or a front-end component, such as a client computer with a graphical user interface or an internet browser, or any combination thereof. The system components can be connected by any form or medium of digital data communication, such as a communication network. Examples of communication networks include, for instance, a LAN, a WAN, and the computers and networks that make up the internet. A computer system can include clients and servers. A client and a server are usually geographically dispersed and typically interact through a communication network. The client-server relationship arises from computer programs running on their respective computers, which have a client-server relationship with each other. In some configurations, a server transmits data (for example, an HTML page) to a client device (for example, to display data and receive user input from a user interacting with the device). MA / t / ZUZÓ / Uί υυυυ client). Data generated on the client device (for example, a result of user interaction) can be received from the client device on the server. A system of one or more computers can be configured to perform particular actions by virtue of having software, firmware, hardware, or a combination thereof installed in the system that, in operation, causes the system to perform the actions. One or more computer programs can be configured to perform particular actions by virtue of including instructions that, when executed by the data processing apparatus, cause the apparatus to perform the actions. While this specification contains many specific implementation details, these should not be interpreted as limitations on the scope of any invention or what may be claimed, but rather as descriptions of specific features for particular embodiments of particular inventions. Certain features described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, several features described in the context of a single embodiment may also be implemented in multiple separate embodiments or in any suitable subcombination.Furthermore, although the features may be described above as acting in certain combinations and even initially claimed as such, one or more features of a claimed combination may in some cases be removed from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination. Similarly, while the operations are illustrated in the diagrams in a specific order, this should not be interpreted as requiring that these operations be carried out in the particular order shown or in a sequential order, or that all the illustrated operations be performed, in order to achieve the desired results. In certain circumstances, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system components in the modalities described above should not be interpreted as requiring this separation in all modalities, and it should be understood that the program components and systems described can generally be integrated together into a single software product or packaged into multiple software products. Unless specifically stated otherwise, as is evident from the following analyses, it is clear that throughout the descriptive analyses that use terms such as processing, computation, calculation, determination, analysis or similar, they refer to the action and / or processes of a computer or computer system, or similar electronic computing devices, that manipulate and / or transform data represented as physical quantities, such as electronic quantities, into other data similarly represented as physical quantities. References throughout this description to an example modality, some example modalities, or an example modality mean that a particular feature, structure, or characteristic described in conjunction with the example modality is included in at least one example modality of the present description. Therefore, occurrences of the phrases “in an example modality,” “in some example modalities,” or “in an example modality” in various places throughout this description do not necessarily all refer to the same example modality. Furthermore, the particular features, structures, or characteristics may be combined in any appropriate way, as would be evident to someone skilled in the technique of this description, in one or more example modalities. As used herein, unless otherwise specified, the use of the ordinal adjectives “first”, “second”, “third”, etc., to describe a common object, merely indicates that different instances of similar objects are being referred to and is not intended to imply that the objects described in this way must be in any given sequence, whether temporally, spatially, in ranking, or in any other way. In the claims below and the description herein, any of the terms comprising, comprising of, or comprising is an open term meaning that it includes at least the elements / features that follow, but does not exclude others. Therefore, the term comprising, when used in the claims, should not be construed as limiting the means, elements, or steps enumerated thereafter. For example, the scope of the expression a device comprising A and B should not be limited to devices consisting only of elements A and B. Any of the terms including, comprising, or comprising as used herein is also an open term meaning that it includes at least the elements / features that follow the term, but does not exclude others. Therefore, comprising is synonymous with and means comprising. It should be noted that in the preceding description of exemplary embodiments, several features of the description are sometimes grouped together into a single exemplary embodiment, figure, or description thereof for the purpose of simplifying the description and aiding in the understanding of one or more of the various inventive aspects. This method of description, however, should not be construed as reflecting an intention that the claims require more features than those expressly stated in each claim. On the contrary, as reflected in the following claims, the inventive aspects fall within fewer than all the features of only one exemplary embodiment disclosed above. Therefore, the claims following the Description are expressly incorporated into this Description, with each claim on its own being a separate exemplary embodiment from this Description. Furthermore, since some exemplary embodiments described herein include some but not others features included in other exemplary embodiments, it is intended that combinations of features from different exemplary embodiments are within the scope of the description and constitute different exemplary embodiments, as understood by those skilled in the art. For example, in the following claims, any of the claimed exemplary embodiments may be used in any combination. The description provided herein sets out numerous specific details. However, it is understood that the example methods described can be practiced without these specific details. In other cases, well-known methods, structures, and techniques have not been shown in detail so as not to complicate the understanding of this description. Therefore, insofar as what are believed to be the best modes of description have been described, those MA / t / ZUZÓ / Ui υυυυ Experts in the technique will recognize that further modifications can be made to these without deviating from the spirit of the description, and it is intended to claim all changes and modifications that fall within the scope of the description. For example, any formula given above is merely representative of the procedures that can be used. Functionality can be added to or removed from the block diagrams, and operations can be exchanged between functional blocks. Steps can be added to or removed from the methods described within the scope of this description. Various aspects and implementations of the present description can also be seen from the following enumerated example modalities (EEE), which are not claims. EEE 1. A method of processing an input audio signal, represented in subbands, to produce a downmix signal and associated metadata, the method including: For each subband, determine a downmix matrix and associated metadata; and; Remix each of the subbands according to the downmix matrix to produce the downmix signal. EEE 2. The EEE 1 method wherein the metadata is encoded using one or more quantization strategies and one or more encoding strategies given a target and / or maximum metadata bit rate limitation. EEE 3. The EEE 2 method, comprising non-differential entropic coding in the time of all sub-bands. EEE 4. The EEE 3 method, comprising combining frequency interleaving with differential time coding of the quantized parameters corresponding to the selected subbands for a low-latency audio codec. EEE5. The EEE 4 method, comprising non-entropy encoding of subband metadata. EEE 6. The method of EEE 5, wherein iteration through steps 3) to 5) is used to find an appropriate encoding strategy to meet the requirements of bit rate and audio quality, and to reduce the decoder state. EEE 7. The EEE 6 method, which involves reducing the number of bands sent by combining metadata into sub-bands. EEE 8. The method of EEE 7, comprising: fixing in time one or more sub-band metadata, so that it is not necessary to send the metadata of a sub-band. EEE 9. The method of EEE 8, comprising: using multiple levels of quantization for given metadata to ensure that bit rate targets are met. EEE 10. The method of EEE 9, in which one iterates through steps EEE 3 to 9 to find an appropriate quantization scheme to meet the requirements of bit rate and audio quality. EEE 11. The EEE 3 or EEE 9 method, where a mapping of quantized previous frame indices to a different number of levels than the current frame, allows differential time coding between frames without having MA / t / ZUZÓ / Ui υυυυ that resort to having to send a non-differential frame in time every time a different quantization level is needed. EEE 12. The method of any of the above EEEs where quantification includes determining the best value for the coefficients according to current needs, by manipulating the order of calculation and quantification of successive metadata coefficients. EEE 13. A system, comprising: one or more processors; and a non-transient, computer-readable medium that stores instructions that, when executed by the one or more processors, cause the one or more processors to perform operations of any of the EEE 1-12. EEE 14. A non-transient, computer-readable medium that stores instructions that, when executed by means of one or more processors, cause the one or more processors to perform operations of any of the EEE 1-12.

Claims

1. A method of encoding metadata frames for an input signal, the metadata comprising a plurality of at least partially interrelated parameters that can be computed from the input signal, the method comprising, for each frame: iteratively performing, by means of a looping process, the steps of: determining a quantization and encoding strategy from a plurality of quantization and encoding strategies to compute and quantize the parameters; compute and quantize the parameters based on the determined quantization and encoding strategy to obtain quantized parameters; and encoding the quantized parameters, wherein each of the plurality of quantization and encoding strategies comprises a respective first indication indicative of an ordering related to the computed and quantized parameters;and wherein the quantization and encoding strategy is determined based on a target bit rate threshold and / or a maximum bit rate threshold greater than the target bit rate threshold, wherein the quantization and encoding strategy determined for a current frame is different from the quantization and encoding strategy determined for a previous frame; and wherein the encoding of the parameters involves differential time-encoding through the different quantization and encoding strategies.

2. The method according to claim 1, wherein the quantization and encoding strategy is determined such that a bit rate of the encoded quantized parameters is equal to or less than the target bit rate threshold and / or the maximum bit rate threshold.

3. The method according to claim 1 or 2, wherein each of the plurality of quantification and coding strategies further comprises a second respective indication indicative of information for performing the quantification of the parameters.

4. The method according to claim 3, wherein the information for performing the quantification of the parameters comprises respective quantification ranges and / or quantification levels for the plurality of parameters.

5. The method according to any of the preceding claims, wherein the encoding of the parameters involves differential encoding in time and / or frequency.

6. The method according to any of the preceding claims, wherein the first indication comprises information indicating that all parameters are calculated before they are quantified.

7. The method according to any of claims 1 to 5, wherein the first indication comprises information indicating that the parameters are calculated individually and then quantified one after the other in sequence, and wherein at least one parameter of the plurality of parameters is calculated on the basis of one or more other quantified parameters of the plurality of parameters.

8. The method according to any one of claims 1 to 5, wherein the first indication comprises information indicating that all parameters are calculated before any parameter is quantified; and wherein at least one of the parameters is recalculated, based on another quantified parameter, and the recalculated parameter is quantified.

9. The method according to any of the preceding claims, wherein the method further comprises, before encoding the quantized parameters: mapping indices of the quantized parameters of the previous frame to that of the current frame.

10. A method according to any of the preceding claims, wherein the looping process comprises the steps of: quantizing and encoding the parameters in a non-differential and / or frequency-differential manner with an entropy encoder according to the quantization and encoding strategy; estimating a first parameter bit rate for the encoded parameters; and if the first parameter bit rate is less than or equal to the target bit rate threshold, exiting the looping process.

11. The method according to claim 10, wherein the looping process further comprises the steps of: if the first parameter bit rate is greater than the target bit rate threshold: quantize and encode the parameters in a non-differential, entropy-free manner according to the quantization and encoding strategy; estimate a second parameter bit rate for the encoded parameters; and if the second parameter bit rate is less than or equal to the target bit rate threshold, exit the looping process.

12. The method according to claim 11, wherein the looping process further comprises the steps of: if the second parameter bit rate is greater than the target bit rate threshold: quantizing and encoding the parameters differentially in time with the entropy encoder according to the quantization and encoding strategy; estimating a third parameter bit rate for the encoded parameters; and if the third parameter bit rate is less than or equal to the target bit rate threshold, exiting the looping process.

13. The method according to claim 12, wherein the time-differential quantization and coding are performed on a subset of the parameters in a frequency-interleaved manner with respect to a previous frame.

14. The method according to claim 12 or 13, wherein the time-differential quantization and encoding are performed by cycles through several interleaved time-differential encoding schemes MA / t / ZUZÓ / Uί υυυυ in frequency, such that, for each cycle, a different subset of the parameters is time-differentially quantized and encoded while the remaining parameters are non-differentially quantized and encoded.

15. The method according to any of claims 12 to 14, wherein the determined quantization and encoding strategy is a first quantization and encoding strategy, and wherein the looping process further comprises: if the third parameter bit rate is greater than the target bit rate threshold: determining, from the plurality of quantization and encoding strategies, a second quantization and encoding strategy, such that a bit rate when applying the second quantization and encoding strategy is expected to be lower than that when using the first quantization and encoding strategy; and repeating the looping process steps of claims 10 to 12.

16. The method according to any of claims 12 to 14, wherein the parameters are represented in a first number of frequency bands, and wherein the looping process further comprises the steps of: if the third parameter bit rate is greater than the target bit rate threshold: reducing the number of frequency bands representing the parameters to a second number less than the first number, so as to reduce the total number of parameters to be quantized and encoded; and repeating the looping process steps of claims 10 to 12.

17. The method according to any of claims 12 to 14, wherein the parameters are represented in a first number of frequency bands, and wherein the looping process further involves the steps of: if the third parameter bit rate is greater than the target bit rate threshold: reusing parameters in one or more frequency bands from the previous frame in the current frame; and repeating the looping process steps of claims 10 to 12.

18. The method according to any of claims 15 to 17, wherein the looping process further involves the steps of: before determining the second quantization and encoding strategy, or reducing the number of frequency bands, or reusing parameters: obtaining a minimum of the first, second, and third parameter bit rates; and if the minimum is less than or equal to the maximum bit rate threshold, exiting the looping process.

19. The method according to any of the preceding claims, wherein the parameters comprise one or more prediction parameters, cross-prediction parameters, and decorrelation parameters.

20. The method according to claim 19 when dependent on claim 7, wherein the prediction parameters are first calculated and quantified, the cross-prediction parameters are calculated from the quantified prediction parameters and then quantified, and the decorrelation parameters are calculated from the quantified cross-prediction parameters and the quantified prediction parameters, and then quantified.

21. The method according to claim 19 when dependent on claim 8, wherein the parameters are first calculated, then the decorrelation parameters and the prediction parameters are quantified, and from the quantified prediction parameters, the cross-prediction parameters are recalculated and then quantified.

22. The method according to any of the preceding claims, wherein the method is applied to the metadata encoding of an immersive voice and audio service, IVAS, codec or an ambisonic codec.

23. The method according to any of the preceding claims, wherein the frame size is less than 40 ms, in particular equal to or less than 20 ms.

24. An apparatus comprising a processor and a memory coupled to the processor, wherein the processor is adapted to cause the apparatus to carry out the method according to any of the preceding claims.

25. A program comprising instructions that, when executed by a processor, cause the processor to carry out the method according to any one of claims 1 to 23.

26. A computer-readable storage medium that stores the program according to claim 25.