![]() METHOD AND ENCODER FOR ENCODING A PARAMETER VECTOR IN AN AUDIO ENCODING SYSTEM, METHOD AND DECODER F
专利摘要:
"AUDIO ENCODER AND DECODER". The present description refers to methods, devices and computer program products for encoding and decoding a vector of parameters in an audio coding system. The description also refers to a method and apparatus for reconstructing an audio object in an audio decoding system. According to the description, a differential approach to encoding and decoding audio of a non-periodic amount can improve encoding efficiency and provide encoders and decoders with less memory requirements. In addition, an efficient method for encoding and decoding a sparse matrix is provided. 公开号:BR112015029031B1 申请号:R112015029031-0 申请日:2014-05-23 公开日:2021-02-23 发明作者:Leif Jonas Samuelsson;Heiko Purnhagen 申请人:Dolby International Ab; IPC主号:
专利说明:
Cross Reference to Related Orders [001] This application claims the benefit of the filing date of Provisional Patent Application No. 61 / 827.264, filed on May 24, 2013, incorporated herein by reference. Technical Field [002] This description refers, in general, to audio coding. In particular, it refers to the encoding and decoding of a vector of parameters in an audio encoding system. The description also refers to a method and apparatus for reconstructing an audio object in an audio decoding system. Prior Art [003] In conventional audio systems, a channel-based approach is employed. Each channel can, for example, represent the content of a speaker or a set of speakers. Possible encoding schemes for such systems include encoding of multiple distinct channels or parametric encoding, such as MPEG Surround. [004] More recently, a new approach has been developed. This approach is object-based. In the system that employs the object-based approach, a three-dimensional audio scene is represented by audio objects with their associated positional metadata. These audio objects move in the three-dimensional audio scene while playing the audio signal. The system can also include so-called bed channels, which can be described as stationary audio objects that are mapped directly to the speaker positions of, for example, a conventional audio system, as described above. [005] A problem that can arise in an object-based audio system is how to efficiently encode and decode the audio signal and preserve the quality of the encoded signal. A possible coding scheme includes, on one side of the encoder, the creation of a downmix signal comprising a number of channels of audio objects and bed channels, and side information that allows the re-creation of audio objects and bed channels on one side of the decoder. [006] MPEG Spatial Audio Object Coding (MPEG SAOC) describes a system for parametric coding, c. Upmix matrix, describing the properties of the objects by means of parameters, such as the level difference and the cross correlation of the objects. These parameters are used to control the recreation of audio objects on one side of the decoder. This process can be mathematically complex and often has to rely on assumptions about the properties of audio objects that are not explicitly described by the parameters. The method presented in MPEG SAOC can reduce the bit rate required for an object-based audio system, but further improvements may be needed to further increase efficiency and quality, as described above. Brief Description of Drawings [007] Exemplary modalities will now be described with reference to the attached drawings, in which: [008] Figure 1 is a generalized block diagram of an audio coding system according to an exemplary modality; [009] Figure 2 is a generalized block diagram of an exemplary sparse matrix encoder shown in figure 1; [0010] Figure 3 shows an example of probability distribution for a first element of a parameter vector corresponding to an element of an upmix matrix determined by the audio coding system of Figure 1; [0011] Figure 4 shows an exemplary probability distribution for at least a second encoded element of module differential in a parameter vector corresponding to an element in an upmix matrix determined by the audio coding system of Figure 1; [0012] Figure 5 is a generalized block diagram of an audio decoding system according to an example modality; [0013] Figure 6 is a generalized block diagram of an upmix matrix decoder one shown in figure 5; [0014] Figure 7 describes a method of coding for the second elements in a vector of parameters corresponding to an element of an upmix matrix determined by the audio coding system of Figure 1; [0015] Figure 8 describes an encoding method for a first element of a parameter vector corresponding to an element of an upmix matrix determined by the audio coding system of Figure 1; [0016] Figure 9 describes the parts of the encoding method of figure 7, for the second elements in an exemplary parameter vector; [0017] Figure 10 describes the parts of the figure 8 encoding method for the first element in a parameter vector; [0018] Figure 11 is a generalized block diagram of a second example upmix matrix encoder shown in figure 1; [0019] Figure 12 is a generalized block diagram of an audio decoding system according to an exemplary modality; [0020] Figure 13 describes a coding method for the sparse codification of a row of an upmix matrix; [0021] Figure 14 describes parts of the encoding method of Figure 10 for an exemplary row of an upmix matrix; [0022] Figure 15 describes parts of the Figure 10 encoding method for an exemplary row of an upmix matrix. [0023] All figures are schematic and generally only show the parts that are necessary in order to elucidate the description, while other parts can be omitted or just suggested. Unless otherwise indicated, the same reference numbers refer to similar parts in different figures. Detailed Description [0024] In view of the above, it is an objective to provide encoders and decoders and associated methods, which provide increased efficiency and quality of the encoded audio signal. I. Overview - Encoder [0025] According to a first aspect, example modalities propose methods of encoding, encoders and computer program products for encoding. The proposed methods, encoders and computer program products can, in general, have the same features and advantages. [0026] According to exemplary modalities, a method is provided for encoding a vector of parameters in an audio coding system, each parameter corresponding to a non-periodic quantity, the vector that has a first element and at least one second element, the method comprising: representation of each parameter in the vector by an index value that can assume the values of N; association of each of the at least second elements with a symbol, the symbol being calculated by: calculating a difference between the index value of the second element and the index value of its preceding element in the vector; application of Module N to the difference. The method further comprises the step of coding each of at least one second element through entropy coding of the symbol associated with the at least one second element based on a table of probabilities comprising probabilities of the symbols. [0027] An advantage of this method is that the number of possible symbols is reduced by approximately a factor of two compared to conventional difference coding strategies where the N module is not applied to the difference. Therefore, the size of the probability table is reduced by approximately a factor of two. As a result, less memory is required to store the probability table, and since the probability table is often stored in expensive memory in the encoder, the encoder can therefore be made more economical. In addition, the speed of searching for the symbol in the probability table can be increased. Another advantage is that the coding efficiency can increase since all symbols in the probability table are possible candidates to be associated with a specific second element. This can be compared with conventional difference coding strategies in which only about half of the symbols in the probability table are candidates for being associated with a second specific element. [0028] According to modalities, the method also includes the association of the first element in the vector with a symbol, the symbol being calculated by: changing the index value that represents the first element in the vector by a compensation value; application of Module N to the value of the offset index. The method further comprises the step of coding the first coding element through entropy of the symbol associated with the first element using the same probability table used to encode the at least one second element. [0029] This modality uses the fact that the probability distribution of the index value of the first element and the probability distribution of the symbols of at least a second element are similar, although being shifted in relation to each other by a value of compensation. As a consequence, the same probability table can be used for the first element in the vector, instead of a dedicated probability table. This can result in reduced memory requirements and a cheaper encoder according to the above. According to one modality, the compensation value is equal to the difference between a most likely index value for the first element and the most likely symbol for at least a second element in the probability table. This means that the peaks of the probability distributions are aligned. Therefore, substantially the same coding efficiency is maintained for the first compared element, if a dedicated probability table for the first element is used. [0030] According to modalities, the first element and at least a second element of the parameter vector correspond to different frequency bands used in the audio coding system in a specific period of time. This means that the data corresponding to a plurality of frequency bands can be encoded in the same operation. For example, the parameter vector may correspond to an upmix or reconstruction coefficient, which varies over a plurality of frequency bands. [0031] According to one embodiment, the first element and at least a second parameter vector element correspond to different time intervals used in the audio coding system in a specific frequency band. This means that the data corresponding to a plurality of time slots can be encoded in the same operation. For example, the parameter vector can correspond to an upmix or reconstruction coefficient, which varies through a plurality of time frames. [0032] According to one modality, the probability table is translated into a Huffman coding table, in which the symbol associated with an element in the vector is used as an index of the coding table, and in which the coding step it comprises the coding of each of at least one second element, by representing the second element with a codeword in the codebook which is indexed by the codebook index associated with the second element. By using the symbol as an index of the codebook, the search speed of the codeword to represent the element can be increased. [0033] According to modalities, the encoding step comprises the encoding of the first element in the vector using the same Huffman code book that is used to encode at least a second element, representing the first element with a codeword in Huffman's codebook which is indexed by the codebook index related to the first element. Therefore, only one Huffman coding table needs to be stored in the encoder's memory, which can lead to a more economical encoder according to the above. [0034] According to another modality, the parameter vector corresponds to an element of an upmix matrix determined by the audio coding system. This can decrease the bit rate required in an audio encoding / decoding system since the matrix can be efficiently encoded. [0035] According to exemplary modalities, a computer-readable medium is provided which comprises instructions of computer code adapted to execute any method of the first aspect when executed on a device that has the processing capacity. [0036] According to exemplary modalities, an encoder is provided to encode a vector of parameters in an audio coding system, each parameter corresponding to a non-periodic quantity, the vector that has a first element and at least a second element , the encoder comprising: a receiving component adapted to receive the vector; an indexing component adapted to represent each parameter in the vector by an index value that can assume values of N; an association component adapted to associate each of at least one second element with a symbol, the symbol being calculated by: calculating a difference between the index value of the second element and the index value of its previous element in the vector ; application of Module N to the difference. The encoder further comprises an encoding component for encoding each of the at least a second element through entropy encoding of the symbol associated with the at least a second element based on a probability table comprising probabilities of the symbols. II. Overview - Decoder [0037] According to a second aspect, the exemplary modalities propose decoding methods, decoders, and computer program products for decoding. The proposed methods, decoders and computer program products can generally have the same characteristics and advantages. [0038] Related advantages, characteristics and configurations, as presented in the encoder overview above can generally be valid for the corresponding features and configurations for the decoder. [0039] According to the exemplary modalities, a method is provided for decoding an entropy-encoded vector of symbols in an audio decoding system into a vector of parameters related to a non-periodic quantity, the entropy-encoded vector of symbols , comprising a first entropy-encoded symbol and at least a second entropy-encoded symbol and the parameter vector comprising a first element and at least a second element, the method comprising: representing each entropy-encoded symbol in the vector of encoded symbols by entropy by a symbol that can take the integer values of N, using a table of probabilities; association of the first entropy-encoded symbol with an index value; association of each of at least one second entropy-encoded symbol with an index value, the index value of at least one second entropy-encoded symbol being calculated by: calculating the sum of the index value associated with the entropy-encoded symbol which precedes the second entropy-encoded symbol in the entropy-encoded vector of symbols and the symbol representing the second entropy-encoded symbol; application of Module N to the sum. The method further comprises the step of representing at least a second element of the parameter vector, by a parameter value corresponding to the index value associated with at least one second symbol encoded by entropy. [0040] In accordance with exemplary modalities, the step of representing each symbol encoded by entropy in the vector of symbols encoded by entropy by a symbol is performed using the same table of probabilities for all symbols encoded by entropy in the vector of symbols encoded by entropy, where the index value associated with the first entropy-encoded symbol is calculated by: changing the symbol that represents the first entropy-encoded symbol in the entropy-encoded vector by a compensation value; application of Module N to the displaced symbol. The method further comprising the step of: representing the first element of the parameter vector by a value of the parameter corresponding to the index value associated with the first symbol encoded by entropy. [0041] According to one modality, the probability table is translated into a Huffman code book and each symbol encoded by entropy corresponds to a code word in the Huffman code book. [0042] According to other modalities, each codeword in the Huffman codebook is associated with a codebook index, and the step of representing each entropy-encoded symbol in the entropy-encoded symbol vector by a symbol comprises the representation of the entropy-encoded symbol by the codebook index being associated with the codeword that corresponds to the entropy-encoded symbol. [0043] According to modalities, each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different frequency bands used in the audio decoding system at a specific time interval. [0044] According to a modality, each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different time intervals used in the audio decoding system in a specific frequency band. [0045] According to the modalities, the vector of color parameters responds to an element of an upmix matrix used by the audio decoding system. [0046] According to the exemplary modalities, a computer-readable medium is provided comprising computer code instructions adapted to perform any method of the second aspect when executed on a device that has processing capacity. [0047] According to the exemplary modalities, a decoder is provided to decode an entropy-encoded vector of symbols in an audio decoding system into a vector of parameters relating to a non-periodic quantity, the entropy-encoded vector of symbols comprises a first entropy-encoded symbol and at least a second entropy-encoded symbol and the parameter vector comprising a first element and at least a second element, the decoder comprising: a receiving component, configured to receive the entropy-encoded vector of symbols ; an indexing component configured to represent each symbol encoded by entropy in the vector of symbols encoded by entropy by a symbol that can take the integer values of N, using a table of probabilities; an association component configured to associate the first entropy-encoded symbol with an index value; the association component further configured to associate each of at least one second entropy-encoded symbol with an index value, the index value of at least one second entropy-encoded symbol being calculated by: calculating the sum of the associated index value with the entropy-encoded symbol preceding the second entropy-encoded symbol in the entropy-encoded vector of symbols and the symbol representing the second entropy-encoded symbol; application of Module N to the sum. The decoder further comprises a decoding component configured to represent at least a second element of the parameter vector, by a parameter value corresponding to the index value associated with the at least one second entropy-encoded symbol. III. Overview - Sparse Matrix Encoder [0048] According to a third aspect, exemplary modalities propose methods of encoding, encoders and computer program products for encoding. Computer program methods, encoders and products can generally have the same features and benefits. [0049] According to the exemplary modalities, a method is proposed for encoding an upmix matrix in an audio coding system, each line of the upmix matrix comprising M elements, allowing the reconstruction of a time tile / frequency of an audio object of a downmix signal comprising M channels, the method comprising: for each line in the upmix matrix: selection of a subset of elements of the M elements of the line in the upmix matrix; representing each element in the selected subset of the elements by a value and a position in the upmix matrix; which encodes the value and position in the upmix matrix of each element in the selected subset of the elements. [0050] As used herein, the term downmix signal comprises of M channels, that is, a signal comprising M signals or channels, where each channel is a combination of a plurality of audio objects, including audio objects. audio to be reconstructed. The number of channels is typically greater than one and, in many cases, the number of channels is five or more. [0051] As used herein, the term upmix matrix refers to a matrix having N rows and M columns which allows N audio objects to be reconstructed from a downmix signal comprising M channels. The elements of each line of the upmix matrix correspond to an audio object, and provide coefficients to be multiplied with M's M downmix channels in order to reconstruct the audio object. [0052] As used herein, a position in the upmix matrix generally means a row and a column index that indicates the row and column of the matrix element. The term position can also mean a column index on a given row in the upmix matrix. [0053] In some cases, sending all the elements of an upmix matrix per time / frequency tile requires an undesirably high bit rate in an audio encoding / decoding system. An advantage of the method is that only a subset of the elements of the upmix matrix needs to be encoded and transmitted to a decoder. This can decrease the required bit rate of an audio encoding / decoding system as long as less data is transmitted and the data can be encoded more efficiently. [0054] Audio coding / decoding systems typically divide the time-frequency space into time / frequency tiles, for example, by applying suitable filter banks for the incoming audio signals. A time / frequency tile usually means a portion of the time-frequency space that corresponds to a time interval and a frequency sub-band. The time interval can typically correspond to the length of a period of time used in the audio encoding / decoding audio system. The frequency sub-band can typically correspond to one or more sub-bands of neighboring frequency defined by the filter bank used in the coding / decoding system. In this case, the frequency sub-band corresponds to several neighboring frequency sub-bands defined by the filter bank, this allows to have non-uniform frequency sub-bands in the audio signal decoding process, for example, more sub-frequency bands for higher frequencies of the audio signal. In a broadband case, where the audio coding / decoding system operates over the entire frequency range, the time / frequency tile subband can correspond to the entire frequency range. The above method describes the encoding steps for encoding an upmix matrix in an audio encoding system to allow the reconstruction of an audio object during a time / frequency tile. However, it is to be understood that the method can be repeated for each time / frequency tile in the audio coding / decoding system. It should also be understood that several time / frequency tiles can be coded at the same time. Typically, neighboring time / frequency tiles may overlap slightly with time and / or frequency. For example, an overlap in time can be equivalent to a linear interpolation of the elements of the reconstruction matrix in time, that is, from one time interval to the next. However, this description targets other parts of the encoding / decoding system and any overlap in time and / or frequency between neighboring time / frequency tiles is left to the skilled person to implement. [0055] According to modalities, for each line of the upmix matrix, the positions in the upmix matrix of the selected subset of elements vary between a plurality of frequency bands and / or across a plurality of time intervals. Therefore, the selection of elements can depend on the particular time / frequency tile, so that different elements can be selected for different time / frequency tiles. This provides a more flexible encoding method which increases the quality of the encoded signal. [0056] According to the modalities, the selected subset of elements comprises the same number of elements for each line of the upmix matrix. In other modalities, the number of elements selected can be exactly one. This reduces the complexity of the encoder. since the algorithm only needs to select the same number of elements for each line, that is, the elements that are most important when performing an upmix on one decoder side. [0057] According to modalities, for each line in the upmix matrix and for a plurality of frequency bands or a plurality of time intervals, the values of the elements of the selected subsets of elements form one or more parameter vectors, each parameter in the parameter vector corresponding to one of the plurality of frequency bands or the plurality of time intervals and in which one or more of the parameter vectors are encoded using the method according to the first aspect. In other words, the values of the selected elements can be coded efficiently. Advantages regarding the features and configurations as presented in the overview of the first aspect above may be valid, in general, for this modality. [0058] According to modalities, for each line of the upmix matrix and for a plurality of frequency bands or a plurality of time intervals, the positions of the elements of the selected subsets of elements form one or more vector of parameters, each parameter in the parameter vector corresponding to one of the plurality of frequency bands or plurality of time frames, in which the one or more parameter vector is encoded using the method according to the first aspect. In other words, the positions of the selected elements can be efficiently coded. Advantages regarding the features and configurations as presented in the overview of the first aspect above may be valid, in general, for this modality. [0059] In accordance with the exemplary modalities, a computer-readable medium is provided that comprises computer code instructions adapted to execute any method of the third aspect, when executed on a device that has the processing capacity. [0060] According to the exemplary modalities, an encoder is provided to encode an upmix matrix in an audio coding system, each line of the upmix matrix comprising M elements, allowing the reconstruction of a time / frequency tile from one to one audio object of a downmix signal comprising M channels, the encoder comprising: a receiving component adapted to receive each line in the upmix matrix; a selection component, adapted to select a subset of the elements of the M elements of the line in the upmix matrix; a coding component adapted to represent each element of the selected subset of the elements by a value and a position in the upmix matrix, a coding component still adapted to encode the value and position in the upmix matrix of each element in the selected subset of elements . IV. Overview - Sparse Matrix Decoder [0061] According to a fourth aspect, exemplary modalities propose methods of decoding, decoders and products of computer programs for decoding. The proposed methods, decoders and computer program products can generally have the same characteristics and advantages. [0062] Advantages regarding the characteristics and configurations as presented in the sparse matrix decoder overview above can generally be valid for the corresponding resources and configurations for the decoder. [0063] According to the exemplary modalities, a method is proposed for the reconstruction of the time / frequency tile of an audio object from an audio decoding system, which comprises: receiving a downmix signal comprising M channels; receiving at least one coded element representing a subset of M elements of a line in an upmix matrix, each coded element comprising a value and a position on the line in the upmix matrix, the position indicating one of the M channels of the downmix signal to which the coded element corresponds; and reconstruction of the time / frequency tile of the audio object of the downmix signal by forming a linear combination of the downmix channels, which correspond to at least one coded element, in which, in said linear combination, each downmix channel is multiplied by value of its corresponding encoded element. [0064] Thus, according to this method, a tile time / frequency of a time object is reconstructed through the formation of a linear combination of a subset of downmix channels. The subset of downmix channels corresponds to those channels for which the encoded upmix coefficients were received. Thus, the method allows the reconstruction of an audio object, despite the fact that only a subset, such as a sparse subset, of the upmix matrix is received. By forming a linear combination of only the downmix channels, which correspond to at least one coded element, the complexity of the decoding process can be reduced. An alternative would be to form a linear combination of all downmix signals and then multiply some of them (those that do not correspond to at least one coded element) with a value of zero. [0065] According to the modalities, the positions of at least one coded element vary across a plurality of time intervals. In other words, different elements of the upmix matrix can be coded for different time / frequency tiles. [0066] According to modalities, the number of elements of at least one coded element is equal to one. This means that the audio object is reconstructed from a downmix channel, on each time / frequency tile. However, the channel a downmix used to reconstruct the audio object can vary between different time / frequency tiles. [0067] According to modalities, for a plurality of frequency bands or a plurality of time intervals, the values of at least one coded element form one or more vectors, where each value is represented by a coded symbol entropy, where each symbol in each entropy-encoded vector of symbols corresponds to one of the plurality of frequency bands or one of the plurality of time intervals, and where the one or more vector of entropy-encoded symbols is decoded using the method according to the second aspect. In this way, the values of the elements of the upmix matrix can be efficiently coded. [0068] According to modalities, for a plurality of frequency bands or a plurality of time intervals, the positions of at least one element encoded by one or more vectors, where each position is represented by a symbol encoded by entropy , where each symbol in each entropy-encoded symbol vector corresponds to one of the plurality of frequency bands or the plurality of time intervals, and where the one or more entropy-encoded symbol vectors are decoded using the method according to the second aspect. In this way, the positions of the elements of the upmix matrix can be efficiently coded. [0069] According to exemplary modalities, a computer-readable medium is provided which comprises instructions of computer code adapted to carry out any method of the third aspect when executed on a device that has the processing capacity. According to exemplary modalities, a decoder is provided for the reconstruction of a time / frequency tile of an audio object comprising: a receiving component, configured to receive a downmix signal comprising M channels and at least one element encoded representing a subset of M elements of a line in an upmix matrix, each encoded element comprising a value and a position in the upmix matrix line, the position indicating one of the M channels of the downmix signal to which the encoded element corresponds; and a reconstruction component configured to reconstruct the time / frequency tile of the audio object of the time / frequency downmix signal by forming a linear combination of the downmix channels that correspond to at least one coded element, in which at said linear combination each downmix channel is multiplied by the value of its corresponding coded element. V. Exemplary modalities [0070] Figure 1 shows a generalized block diagram of an audio coding system 100 for encoding audio objects 104. The audio coding system comprises a downmixing component106, which creates a downmix signal 110 of audio objects 104. The downmix signal 110 can, for example, be a 5.1 or 7.1 surround signal, which is compatible with established sound decoding systems, such as Dolby Digital Plus or MPEG standards, such as AAC, USAC or MP3. In other modalities, the downmix signal is not compatible. For example, the upmix parameters can correspond to elements of an upmix matrix, which allows the reconstruction of the audio objects 104 from the downmix signal 110. The upmix parameter analysis component 112 processes the downmix signal 110 and the audio objects 104 in the concerns the individual time / frequency tiles. Thus, the upmix parameters are determined for each time / frequency tile. For example, an upmix matrix can be determined for each time / frequency tile. For example, the upmix 112 parameter analysis component can operate in a frequency domain, such as a Quadrature Mirror Filters (QMF) domain that allows selective frequency processing. For this reason, the downmix signal 110 and audio objects 104 can be transformed into the frequency domain by subjecting the downmix signal 110 and audio objects 104 to a filter bank 108. This can, for example, be done by applying a QMF transformation or any other suitable transformation. [0071] The upmix 114 parameters can be organized in a vector format. A vector can represent an upmix parameter to reconstruct a specific audio object from the audio objects 104, in different frequency bands at a specific time interval. For example, a vector can correspond to a given element of the matrix in the upmix matrix, where the vector comprises the values of the given matrix element for the subsequent frequency bands. In other embodiments, the vector can represent upmix parameters to reconstruct a specific audio object from the audio objects 104 at different time intervals in a specific frequency band. For example, a vector can correspond to a given matrix element in the upmix matrix, where the vector comprises the values of the given matrix element for subsequent time intervals, but in the same frequency band. [0072] Each parameter in the vector corresponds to a non-periodic quantity, for example, a quantity that takes a value between - 9.6 and 9.4. By a non-periodic quantity, it is generally meant a quantity where there is no periodicity of the values that the quantity can take. This is in contrast to a periodic quantity, such as an angle, in which there is a clear periodic correspondence between the values that the quantity may take. For example, for an angle, there is a periodicity of 2n, so that, for example, the zero angle corresponds to the 2n angle. [0073] The upmix parameters 114 are then received by an upmix array encoder 102 in vector format. The upmix matrix encoder will now be explained in detail in conjunction with figure 2. The vector is received by a receiving component 202 and has a first element and at least a second element. The number of elements depends, for example, on the number of frequency bands in the audio signal. The number of elements can also depend on the number of time intervals of the audio signal to be encoded in a coding operation. [0074] The vector is then indexed by an indexing component 204. The indexing component is adapted to represent each parameter in the vector by an index value that can assume a predetermined number of values. This representation can be done in two stages. First, the parameter is quantized and then the quantized value is indexed by an index value. As an example, in the case where each parameter in the vector can have a value between -9.6 and 9.4, this can be done through steps of quantification of 0.2. The quantified values can then be indexed by indexes from 0-95, that is, 96 different values. In the following examples, the index value is in the range of 0-95, but this is, of course, just an example, other ranges of index values are also possible, for example, 0-191 or 0-63. Smaller quantization steps can result in a distorted mens decoded audio signal on one side of the decoder, but it can also produce a higher bit rate required for data transmission between the audio coding system 100 and the decoder. [0075] The indexed values are subsequently sent to an association component 206, which associates each of at least one second element with a symbol using a module differential encoding strategy. Association component 206 is adapted to calculate a difference between the index value of the second element and the index value of the preceding element in the vector. Just using a conventional differential encoding strategy, the difference can be anywhere in the range of -95 to 95, that is, it has 191 possible values. This means that when the difference is encoded using entropy coding, a probability table comprising 191 probabilities, that is, a probability for each of the 191 possible values of the differences, is required. In addition, the efficiency of the coding would be reduced since, for each difference, about half of the 191 probabilities are impossible. For example, if the second element to be coded differential has an index value of 90, the possible differences are in the range of -5 to +90. Typically, having an entropy coding strategy, where some of the probabilities are impossible for each value to be coded, will decrease the coding efficiency. The differential encoding strategy in the present description can overcome this problem and, at the same time, reduce the number of codes required to 96 by applying a 96-module operation to the difference. The association algorithm can thus be expressed as: where b is the element in the vector being encoded by differential, NQ is the number of possible index values and Δidx (b) is the symbol associated with element b. [0076] According to some modalities, the probability table is translated into a Huffman coding table. In this case, the symbol associated with an element in the vector is used as an index of the codebook. The coding component 208 can then encode each of the at least one second element, representing the second element with a codeword in the Huffman codebook that is indexed by the codebook index associated with the second element. [0077] Any other entropy coding strategy can be implemented in the coding component 208. As an example, this coding strategy can be a band coding strategy or a mathematical coding strategy. In the following it is shown that the interwoven module approach is always less than or equal to some example modalities of the conventional differential approach. The Ep entropy of the conventional differential approach is: where (p (n) p (n) is the probability of the flat differential index value n. [0078] The entropy, Eq of the module approach is: where q (n) is the probability of the differential index value of module n as given by: q (0) = p (0) (Equation 4) [0079] Thus, we have to: [0080] Substituting n = j - NQ in the last summation results Yet, [0081] Comparing sums, term by term, since and similarly: [0082] We have to Ep> Eq. [0083] As shown above, the entropy for the module approach is always less than or equal to the entropy of the conventional differential approach. The case in which the entropy is the same is a rare case in which the data to be encoded are pathological data, that is, data not well behaved, which in most cases do not apply, for example, to an upmix matrix. [0084] Since the entropy for the module approach is always less than or equal to the entropy of the conventional differential approach, the entropy encoding of the symbols calculated by the module approach will produce, in a smaller or, at least, the same bit rate compared to the entropy encoding of symbols calculated by the conventional differential approach. In other words, the entropy coding of symbols calculated by the module approach is, in most cases, more efficient than the entropy coding of symbols calculated by the conventional differential approach. [0085] Another advantage is, as mentioned above, that the number of probabilities required in the probability table in the module approach are approximately half the number of probabilities required in the conventional non-module approach. [0086] The above described a module approach to encode at least a second element in the parameter vector. The first element can be encoded using the indexed value by which the first element is represented. Since the probability distribution of the index value of the first element and the module differential value of at least a second element can be very different, (see figure 3 for a probability distribution of the first indexed element and Figure 4 for a probability distribution of the module differential value, that is, the symbol, for at least a second element) a dedicated probability table for the first element may be required. This requires that the audio coding system 100 and a corresponding decoder have this dedicated table of probabilities in its memory. [0087] However, the inventors observed that the form of the probability distributions can, in some cases, be quite similar, although they are displaced in relation to each other. This observation can be used to approximate the probability distribution of the first indexed element by an offset version of the symbol's probability distribution for at least a second element. This displacement can be implemented by adapting the component associating 206 to associate the first element in the vector with a symbol, displacing the index value that represents the first element in the vector by an displacement value and, subsequently, applying Module 96 (or corresponding value) to the displaced index value. [0088] The calculation of the symbol associated with the first element can thus be expressed as [0089] The symbol thus obtained is used by the coding component 208 which encodes the first element through entropy coding of the symbol associated with the first element using the same probability table used to encode the at least a second element. The offset value can be equal to, or at least close to, the difference between a most likely index value for the first element and the most likely symbol for at least a second element in the probability table. In figure 3, the most likely index value for the first element is indicated by the arrow 302. Assuming that the most likely symbol for the at least one second element is zero, the value indicated by the arrow 302 will be the displaced value used. When using the displacement approach, the peaks of the distributions in Figure 3 and 4 are aligned. This approach avoids the need for a dedicated probability table for the first element and, consequently, saves memory in the audio coding system 100 and the corresponding decoder, while often maintaining almost the same coding efficiency as a dedicated probability table. will provide. [0090] In case the entropy coding of at least one second element is done using a Huffman codebook, coding component 208 can encode the first element in the vector using the same Huffman codebook, which is used to code the at least one second element, representing the first element with a code word in the Huffman codebook that is indexed by the codebook index associated with the first element. [0091] Since the query speed can be important when encoding a parameter in an audio decoding system, the memory in which the codebook is stored is advantageously a fast, and therefore expensive, memory. Using only one table of probabilities, the encoder can thus be more economical than in the case where two tables of probabilities are used. [0092] It can be noted that the probability distributions shown in figure 3 and figure 4 are often calculated over a set of training data and, therefore, not previously calculated during vector coding, but it is clear that it is possible to calculate distributions "in real time" during encoding. [0093] It can also be noted that the above description of an audio coding system 100, using a vector of an upmix matrix as the vector of parameters to be encoded is just one example of application. The method for encoding a vector of parameters, according to the present description, can be used in other applications in an audio encoding system, for example, when encoding other internal parameters in the downmix encoding system, such as the parameters used in a parametric bandwidth extension system, such as spectral bandwidth replication (SBR). [0094] Figure 5 is a generalized block diagram of an audio decoding system 500 for recreating encoded audio objects from an encoded downmix signal 510 and an encoded upmix matrix 512. The encoded downmix signal 510 is received by a downmix receiving component 506, where the signal is decoded and, if not already in the appropriate frequency domain, transformed into a frequency domain. The decoded downmx signal 516 is then sent to the upmix component 508. [0095] In the upmix component 508, the encoded audio objects are recreated using the decoded downmix signal 516 and a decoded upmix matrix 504. More specifically, the upmix component 508 can perform a matrix operation in which the decoded upmix matrix 504 is multiplied by a vector that comprises the decoded downmix signals 516. The process of decoding the upmix matrix is described below. The audio decoding system 500 further comprises a rendering component 514 that produces an audio signal based on the reconstructed audio objects 518, depending on what type of playback unit is connected to the audio decoding system 500. [0096] An encoded upmix matrix 512 is received by an upmix matrix decoder 502, which will now be explained in detail in conjunction with figure 6. The upmix matrix decoder 502 is configured to decode a vector of encoded symbols by en -tropy in an audio decoding system in a vector of parameters related to a non-periodic quantity. The entropy-encoded symbol vector comprises a first entropy-encoded symbol and at least a second entropy-encoded symbol, and the parameter vector includes a first element and at least a second element. The encoded upmix matrix 512 is therefore received by a receiving component 602 in a vector format. The decoder 502 further comprises an indexing component 604 configured to represent each symbol encoded by entropy in the vector by a symbol that can take N values, using a table of probabilities. N can be, for example, 96. An association component 606 is configured to associate the first entropy code symbol with an index value by any suitable means, depending on the encoding method used to encode the first element in the parameter vector . The symbol for each of the second codes and the index value for the first code is then used by the association component 606 that associates each of the at least one entropy-encoded second symbol with an index value. The index value of at least one second entropy-encoded symbol is calculated by first calculating the sum of the index value associated with the entropy-encoded symbol that precedes the second entropy-encoded symbol in the entropy-encoded symbol vector and the symbol representing the second entropy-encoded symbol. Subsequently, the module N is applied to the sum. Assuming that, without loss of generality, the minimum index value is 0 and the maximum index value is N-1, for example, 95. [0097] The algorithm The association algorithm can thus be expressed as: where b is the element in the vector being decoded and NQMS the number of possible index values. [0098] The upmix matrix decoder 502 further comprises a decoding component 60, which is configured to represent at least a second element of the parameter vector by a parameter value that corresponds to the index value associated with at least one second entropy-encoded symbol. [0099] This representation is thus the decoded version of the encoded parameter, for example, by the audio coding system 100 shown in figure 1. In other words, this representation is equal to the quantized parameter encoded by the audio coding system 100 shown in figure 1. According to one embodiment of the present invention, each entropy-encoded symbol in the entropy-encoded symbol vector is represented by a symbol using the same probability table for all entropy-encoded symbols. An advantage of this is that only one table of probabilities needs to be stored in the memory of the decoder. [00100] According to this modality, the association component 606 can be configured to associate the first symbol encoded by entropy with an index value by the first displacement of the symbol that represents the first symbol encoded by entropy. In the vector of the symbols encoded by entropy by a displacement value. The N module is then applied to the displaced symbol. The algorithm can therefore be expressed as: [00101] The decoding component 608 is configured to represent the first element of the parameter vector by a parameter value corresponding to the index value associated with the first entropy-encoded symbol. [00102] This representation is, therefore, the decoded version of the encoded parameter, for example, by the audio coding system 100 shown in figure 1. [00103] The method of encoding the differential of a non-periodic quantity will now be explained together with figures 7 - 10 [00104] Figures 7 and 9 describe a coding method for four (4) second elements in a parameter vector. The input vector 902 thus comprises five parameters. The parameters can assume any value between a minimum value and a maximum value. In this example, the minimum value is -9.6 and the maximum value is 9.4. [00105] The first step S702 in the coding method is to represent each parameter in the vector 902 by an index value that can take the values N. In this case, N is chosen to be 96, which means that the size of the quantization step is 0.2. This gives the vector 904. The next step S704 is to calculate the difference between each of the second elements, that is, the four upper parameters in the vector 904, and its previous element. The resulting vector 906 thus comprises four differential values - The top four values in vector 906. As can be seen in figure 9, the differential values can be negative, zero and positive. As explained above, it is advantageous to have differential values that can only take N values, in this case 96 values. To achieve this, in the next step S706 of that method, module 96 is applied to the second elements in the vector 906. The resulting vector 908 does not contain any negative values. The symbol thus achieved shown in vector 908 is then used to encode the second elements of the vector in the last step S708 of the method shown in figure 7 through entropy coding of the symbol associated with at least a second element based on a table of probabilities comprising probabilities of the symbols shown in vector 908. [00106] As seen in Figure 9, the first element is not manipulated after the indexing step S702. In Figures 8 and 10, a method for encoding the first element in the input vector is described. The same assumption made in the description above of figures 7 and 9 in relation to the minimum and maximum value of the parameters and the number of possible index values are valid when describing figures 8 and 10. The first element 1002 is received by the encoder. In the first step S802 of the coding method, the parameter of the first element is represented by an index value of 1004. In the next step S804, the indexed value 1004 is shifted by a value of t. In this example, the offset value is 49. This value is calculated as described above. In the next step S806, module 96 is applied to the displaced index value 1006. The resulting value 1008 can then be used in a coding step S802 to encode the first element through entropy coding of the symbol 1008 using the same table of probabilities used to code for at least one second in figure 7. [00107] Figure 11 shows an embodiment 102 of the upmix matrix encoding component 102 in figure 1. The upmix matrix encoder 102 'can be used for encoding an upmix matrix in an audio encoding system, for example, the audio coding system 100 illustrated in figure 1. As described above, each line of the upmix matrix comprises M elements that allow the reconstruction of an audio object from a downmix signal comprising M downmix channels. At low global target bit rates, encoding and sending all M elements of the upmix matrix per object and T / F tile, one for each downmix channel, may require an undesirably high bit rate. This can be reduced by "sparsening" the upmix matrix, that is, trying to reduce the number of non-zero elements. In some cases, four of the five elements are zero and only a single downmix channel is used as the basis for the reconstruction of the audio object. Sparse matrices have other probability distributions of the coded indices (absolute or differential) than non-sparse matrices. In cases where the upmix matrix comprises a large portion of zeros, such that the zero value becomes more likely than 0.5 and Huffman coding is used, the coding efficiency will decrease once the algorithm of Huffman coding is inefficient when a specific value, for example, zero, has a probability of more than 0.5. In addition, since many of the elements of the upmix array have a value of zero, they do not contain any information. One strategy can therefore be to select a subset of the elements of the upmix matrix and just encode and transmit those to a decoder. This can decrease the required bit rate of an audio encoding / decoding system since less data is transmitted. [00108] To increase the efficiency of the encoding of the upmix matrix, a specific encoding mode for sparse matrices can be used which will be explained in detail below. [00109] Encoder 102 'comprises a receiving component 1102 adapted to receive each line in the upmix matrix. The encoder 10 'further comprises a component selection 1104 adapted to select a subset of elements from the M elements of the line in the upmix matrix. In most cases, the subset comprises all elements that do not have a zero value. However, according to some modalities, the selection component may choose not to select an element that has a value other than zero, for example, an element that has a value close to zero. According to the modalities, the selected subset of the elements can comprise the same number of elements of each line of the upmix matrix. To further reduce the required bit rate, the number of elements selected can be one (1). [00110] The encoder 102 'further comprises an encoding component 1106 is adapted to represent each element of the selected subset of the elements by a value and a position in the upmix matrix. The coding component 1106 is further adapted to encode the value and position in the upmix matrix of each element in the selected subset of the elements. It can, for example, be adapted to encode the value using module differential encoding as described above. In this case, for each line of an upmix matrix and for a plurality of frequency bands or a plurality of time intervals, the values of the elements of one of the selected subsets of elements form one or more parameter vectors. Each parameter in the parameter vector corresponds to one of the plurality of frequency bands or the plurality of time intervals. The parameter vector can thus be encoded using the module differential encoding as described above. In other embodiments, the parameter vector can be encoded using regular differential encoding. In still other embodiments, the encoding component 1106 is adapted to encode each value separately, using a fixed rate encoding of the true quantification value, that is, non-differential encoding, of each value. [00111] The examples below of average bit rates were typically observed for content. Bit rates were measured for the case where m = 5, the number of audio objects to be reconstituted on one side of the decoder is 11, the number of frequency bands is 12, and the step size of the parameter quantizer is 0.1 and has 192 levels. [00112] For the case where all five elements per line in the upmix matrix have been encoded, the following average bit rates have been observed: [00113] Fixed rate coding: 165 kb / s, [00114] Differential encoding: 51 kb / s, [00115] Differential module coding: 51 kb / s, but half the size of the probability table or code book, as described above. [00116] For the case where only one of the elements is chosen for each line in the upmix matrix, ie sparse coding, by the selection component 1104, the following average bit rates were observed [00117] The fixed rate encoding (using 8 bits for the value and 3 bits for the position): 45 kb / s, [00118] Module differential coding for both the element value and the element position: 20 kb / s. [00119] The coding component of 1106 can be adapted to encode the position in the upmix matrix of each element of the subset of elements, in the same way as the value. The encoding component 1106 can also be adapted to encode the position in the upmix matrix of each element in the subset of elements in a different way compared to encoding the value. In the case of position coding using differential coding or differential module coding, for each line of the upmix matrix and for a plurality of frequency bands or a plurality of time intervals, the positions of the elements of the selected subsets of elements form one or more of the parameter vector. Each parameter in the parameter vector corresponds to one of the plurality of frequency bands or plurality of time intervals. The parameter vector is thus encoded using differential encoding or module differential encoding as described above. [00120] It can be noted that encoder 102 'can be combined with encoder 102 in figure 2 to achieve module differential encoding of a sparse upmix matrix according to the above. [00121] It can further be noted that the method of encoding a line in a sparse matrix 30 was exemplified above to encode a line in the sparse upmix matrix, but the method can be used for encoding other types of sparse matrices well known for the person skilled in the art. [00122] The method for encoding a sparse upmix matrix will now be further explained in conjunction with figures 13-15. [00123] An upmix matrix is received, for example, by the receiving component 1102 in Figure 11. For each reference line 1402, 1502 in the upmix matrix, the method comprising selecting a subset S1302 from the M, for example, 5, line elements in the upmix matrix. Each element of the selected subset of the elements is then represented by an S1304 value and a position in the upmix matrix. In figure 14, an element is selected S1302 as the subset, for example, element number, having a value of 2.34. The representation can, therefore, be a vector of 1404, having two fields. The first field in vector 1404 represents the value, for example, 2.34, and the second field in vector 1404 represents the position, for example, 3. In figure 15, two elements are selected S1302 as the subset, for example, element number 3 has a value of 2.34 and element number 5 has a value of -1.81. The representation can, therefore, be a vector of 1504 having four fields. The first field in the 1504 vector represents the value of the first element, for example, 2.34, and the second field in the 1504 vector represents the position of the first element, for example, 3. The third field in the 1504 vector represents the value of the second element, for example, -1.81, and the fourth field in the vector of 1504 represents the position of the second element, for example, 5. Representations 1404, 1504 are then encoded S1306 according to the above. [00124] Figure 12 is a generalized block diagram of an audio decoding system in 1200, according to an example embodiment. The decoder 1200 comprises a receiving component 1206 configured to receive a downmix signal 1210 comprising M channels and at least one encoded element 1204, representing a subset of M elements of a line in an upmix matrix. Each of the coded elements comprises a value and a position in line in the upmix matrix, indicating the position of one of the M channels of the downmix signal 1210 to which the coded element corresponds. The at least one encoded element 1204 is decoded by an upmix array element decoding component 1202. The upmix array element decoding component 1202 is configured to decode at least one element 1204 according to the encoding strategy used for encode at least one encoded element 1204. Examples of such encoding strategies are disclosed above. The at least one decoded element 1214 is then sent to the reconstruction component 1208 which is configured to reconstruct a time / frequency tile of the audio object from the downmix signal 1210 by forming a linear combination of the downmix channel that corresponds at least an encoded element 1204. When forming the linear combination, each downmix channel is multiplied by the value of its corresponding encoded element 1204. [00125] For example, if the decoded element 1214 comprises the value 1.1 and position 2, the time / frequency tile of the second downmix channel is multiplied by 1.1 and this is then used to reconstruct the audio object. The audio decoding system 500 further comprises a rendering component 1216 that outputs an audio signal based on the reconstructed audio object 1218. The type of audio signal depends on which type of playback unit is connected to the audio system. 1200 audio decoding, a stereo signal can be sent by the 1216 rendering component. For example, if a pair of headphones is connected to the 1200 audio decoding system, a stereo signal can be transmitted by the 1216 rendering component. , alternatives and Miscellaneous [00126] Other embodiments of the present invention will be apparent to a person skilled in the art after studying the previous description. Although the present description and the drawings describe exemplary embodiments, the description is not limited to these specific examples. Numerous modifications and variations can be made without departing from the scope of the present description, which is defined by the appended claims. Any reference signs that appear in the claims are not to be understood as limiting its scope. In addition, variations in the described embodiments can be understood and made by the person skilled in the art in the practical realization of the description, from a study of the drawings, the description, and the attached claims. [00127] In the claims, the word "comprising" does not exclude other elements or stages and the indefinite article "one" or "one" does not exclude a plurality. The mere fact that certain measures are recited in the mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. [00128] The systems and methods described above can be implemented as software, firmware, hardware or a combination thereof. In a hardware implementation, the division of tasks between functional units referred to in the description above does not necessarily correspond to the division into physical units; on the contrary, a physical component can have multiple functionalities, and a task can be carried out by several physical components in cooperation. Certain components or all components can be implemented as software executed by a digital signal processor or a microprocessor, or implemented as hardware or as an application-specific integrated circuit. This type of software can be distributed on computer-readable media, which can include computer storage media (or non-transitory media) and communication media (or transitory media). [00129] As is well known to a person skilled in the art, the term computer storage media includes both volatile and non-volatile, removable and non-removable media applied in any method or technology for storing information, such as computer-readable instructions, data structures, program modules or other data. Computer storage medium includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile discs (DVD) or other storage on optical disc, magnetic tapes, magnetic tape , magnetic disk storage or other magnetic storage devices, or any other means that can be used to store the desired information and that can be accessed by a computer. [00130] Furthermore, it is well known to the person skilled in the art that the media typically incorporates computer-readable instructions, data structures, program modules or other data into a modulated data signal, such as a carrier wave or other transport mechanism and includes any information on means of distribution.
权利要求:
Claims (20) [0001] 1. Method for encoding a vector of parameters in an audio coding system, each parameter corresponding to a non-periodic quantity, the vector having a first element and at least a second element characterized by the fact that it comprises: representing each parameter in the vector by an index value that can take N values; associate each of the at least one second element with a symbol, the symbol being calculated by: calculating the difference between the index value of the second element and the index value of its preceding element in the vector; apply Module N to the difference; encoding each of the at least one second element through entropy coding of the symbol associated with the at least one second element based on a table of probabilities, comprising probabilities of the symbols; wherein the method further comprising: associating the first element in the vector to a symbol, the symbol being calculated by: displacing the index value that represents the first element in the vector by subtracting an offset value from the index value; apply module N to the displaced index value; encode the first element by entropy encoding the symbol associated with the first element using the same probability table that is used to encode the at least one second element. [0002] 2. Method according to claim 1, characterized by the fact that the displacement value is equal to the difference between a most likely index value for the first element and the most likely symbol for at least a second element in the table. probabilities. [0003] 3. Method according to claim 1, characterized by the fact that the first element and at least a second element of the parameter vector correspond to different bands of different frequencies used in the audio coding system in a specific time interval . [0004] 4. Method according to claim 1, characterized by the fact that the first element and at least a second element of the parameter vector correspond to different time intervals used in the audio coding system in a specific frequency band. [0005] 5. Method, according to claim 1, characterized by the fact that the table of probabilities is translated into a Huffman coding book, in which the symbol associated with an element in the vector is used as an index of the coding book, and wherein the coding step comprises the coding of each of at least one second element, representing the second element with a codeword in the codebook, which is indexed by the codebook index associated with the second element. [0006] 6. Method according to claim 5, characterized by the fact that the encoding step comprises the encoding of the first element in the vector using the same Huffman codebook, which is used to encode the at least one second element, representing the first element with a code word in the Huffman code book that is indexed by the code book index associated with the first element. [0007] 7. Method, according to claim 1, characterized by the fact that the parameter vector corresponds to an element in an upmix matrix determined by the audio coding system. [0008] 8. Encoder to encode a vector of parameters in an audio coding system, each parameter corresponding to a non-periodic quantity, the vector having a first element and at least a second element, characterized by the fact that it comprises: an adapted receiving component to receive the vector; an indexing component adapted to represent each parameter in the vector by an index value that can take N values; an association component adapted to associate each of at least one second element with a symbol, the symbol being calculated by: calculating a difference between the index value of the second element and the index value of its preceding element in the vector; apply module N to the difference; a coding component for encoding each of the at least a second element through entropy coding of the symbol associated with the at least a second element based on a table of probabilities comprising probabilities of the symbols, in which the association component is adapted associated to the first element in the vector with a symbol, the symbol being calculated by: displacing the index value that represents the first element in the vector by subtracting an offset value from the index value; apply module N to the displaced index value; wherein the coding component is adapted to encode the first element by entropy encoding the symbol associated with the first element using the same probability table that is used to encode the at least a second element. [0009] 9. Non-transitory computer-readable storage medium, characterized by the fact that it comprises instructions, in which, when executed by a device, the instructions cause the device to execute the method of claim 1 [0010] 10. Method for decoding an entropy-encoded vector of symbols in an audio decoding system into a vector of parameters relating to a non-periodic quantity, the entropy-encoded vector of symbols comprising a first entropy-encoded symbol and at least one second entropy-encoded symbol and the parameter vector comprising a first element and at least a second element characterized by the fact that it comprises the steps of: representing each entropy-encoded symbol in the entropy-encoded vector by a symbol that can take N values integers, using a table of probabilities; associating the first entropy-encoded symbol with an index value; associate each of at least one second entropy-encoded symbol with an index value, the index value of at least one second entropy-encoded symbol being calculated by: calculating the sum of the index value associated with the entropy-encoded symbol preceding the second entropy-encoded symbol in the entropy-encoded vector and the symbol that represents the second entropy-encoded symbol; apply module N to the sum; represent at least a second element of the parameter vector by a parameter value corresponding to the index value associated with at least one second entropy-encoded symbol in which the step of representing each entropy-encoded symbol in the entropy-encoded symbol vector by a symbol is performed using the same probability table for all entropy-encoded symbols in the entropy-encoded vector, where the index value associated with the first entropy-encoded symbol is calculated by: displacing the symbol that represents the first symbol entropy-encoded in the entropy-encoded vector of symbols by adding a compensated value to the symbol; applying module N to the displaced symbol; where the method still comprises the step of: representing the first element of the parameter vector by a parameter value corresponding to the index value associated with the first entropy-encoded symbol. [0011] 11. Method, according to claim 1, characterized by the fact that the probability table is translated into a Huffman codebook and each entropy-encoded symbol corresponds to a codeword in the Huffman codebook. [0012] 12. Method, according to claim 11, characterized by the fact that each codeword in Huffman's codebook is associated with a codebook index and the step of representing each symbol encoded by entropy in the symbol vector entropy-encoded by a symbol comprises the representation of the entropy-encoded symbol by the codebook index that is associated with the codeword corresponding to the entropy-encoded symbol. [0013] 13. Method according to claim 10, characterized by the fact that each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different frequency bands used in the audio decoding system at a specific time interval [0014] 14. Method according to claim 10, characterized by the fact that each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different time intervals used in the audio decoding system in a specific frequency band. [0015] 15. Method, according to claim 10, characterized by the fact that the parameter vector corresponds to an element in an upmix matrix used by the audio decoding system. [0016] 16. Non-transitory computer-readable storage medium characterized by the fact that it comprises instructions that, when executed by a device, the instructions cause the device to execute the method of claim 10. [0017] 17. Decoder to decode an entropy-encoded vector of symbols in an audio decoding system into a vector of parameters referring to a non-periodic quantity, the entropy-encoded vector of symbols comprising a first entropy-encoded symbol and at least one second entropy-encoded symbol and the parameter vector comprising a first element and at least a second element, characterized by the fact that it comprises: a receiving component, configured to receive the entropy-encoded vector of symbols; an indexing component configured to represent each entropy-encoded symbol in the entropy-encoded vector of symbols that can take N integer values using a probability table; an association component configured to associate the first entropy-encoded symbol with an index value; the association component further configured to associate each of the at least one second entropy-encoded symbol with an index value, the index value of the at least one second entropy-encoded symbol being calculated by: calculating the sum of the associated index value the entropy-encoded symbol preceding the second entropy-encoded symbol in the entropy-encoded vector and the symbol representing the second entropy-encoded symbol; applying module N to the sum; a decoding component configured to represent at least a second element of the parameter vector by a parameter value corresponding to the index value associated with at least one second entropy-encoded symbol, where the indexing component is configured to represent each symbol entropy-encoded in the entropy-encoded symbol vector by a symbol using the same probability table for all entropy-encoded symbols in the entropy-encoded symbol vector, where the index value associated with the first entropy-encoded symbol is calculated by: move the symbol that represents the first entropy-encoded symbol in the entropy-encoded vector of symbols by adding a displaced value to the symbol; applying module N to the displaced symbol; wherein the decoding component is configured to represent the first element of the parameter vector by a parameter value corresponding to the index value associated with the first entropy-encoded symbol. [0018] 18. Decoder according to claim 17, characterized by the fact that each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different frequency bands used in the audio decoding system at a specific time interval. [0019] 19. Decoder according to claim 17, characterized by the fact that each entropy-encoded symbol in the entropy-encoded vector of symbols corresponds to different time intervals used in the audio decoding system in a specific frequency band. [0020] 20. Decoder, according to claim 17, characterized by the fact that the parameter vector corresponds to an element in an upmix matrix used by the audio decoding system.
类似技术:
公开号 | 公开日 | 专利标题 BR112015029031B1|2021-02-23|METHOD AND ENCODER FOR ENCODING A PARAMETER VECTOR IN AN AUDIO ENCODING SYSTEM, METHOD AND DECODER FOR DECODING A VECTOR OF SYMBOLS ENCODED BY ENTROPY IN A AUDIO DECODING SYSTEM, AND A LOT OF DRAINAGE IN DRAINAGE.
同族专利:
公开号 | 公开日 JP2017102484A|2017-06-08| RU2019141091A|2021-06-15| CN105229729A|2016-01-06| HK1217246A1|2016-12-30| US11024320B2|2021-06-01| EP3605532A1|2020-02-05| US20170309279A1|2017-10-26| KR20160013154A|2016-02-03| EP3252757A1|2017-12-06| JP6105159B2|2017-03-29| RU2015155311A|2017-06-30| SG11201509001YA|2015-12-30| KR102280461B1|2021-07-22| RU2643489C2|2018-02-01| KR20200145837A|2020-12-30| KR101763131B1|2017-07-31| US10418038B2|2019-09-17| KR20200013091A|2020-02-05| US9704493B2|2017-07-11| CA2911746A1|2014-11-27| US20210390963A1|2021-12-16| CA3077876A1|2014-11-27| JP2016526186A|2016-09-01| EP3005350B1|2017-05-10| JP2020016884A|2020-01-30| ES2629025T3|2017-08-07| MX350117B|2017-08-28| WO2014187988A3|2015-02-05| US20200411017A1|2020-12-31| US9940939B2|2018-04-10| MX2015015926A|2016-04-06| US10714104B2|2020-07-14| DK3005350T3|2017-07-17| PL3005350T3|2017-09-29| KR20170087971A|2017-07-31| JP2021179627A|2021-11-18| CA2990261A1|2014-11-27| KR101895198B1|2018-09-07| IL242410A|2018-11-29| EP3005350A2|2016-04-13| US20200013415A1|2020-01-09| CA2911746C|2018-02-13| UA112833C2|2016-10-25| EP3961622A1|2022-03-02| CA2990261C|2020-06-16| RU2676041C1|2018-12-25| US20180240465A1|2018-08-23| RU2710909C1|2020-01-14| BR112015029031A2|2017-07-25| WO2014187988A2|2014-11-27| SG10201710019SA|2018-01-30| KR102192245B1|2020-12-17| KR102072777B1|2020-02-03| JP6573640B2|2019-09-11| CN105229729B|2019-03-19| EP3605532B1|2021-09-29| KR20180099942A|2018-09-05| JP6920382B2|2021-08-18| MY173644A|2020-02-13| CN110085238A|2019-08-02| AU2014270301A1|2015-11-19| EP3252757B1|2019-12-25| US20160111098A1|2016-04-21| KR20210060660A|2021-05-26| AU2014270301B2|2017-08-03|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 JPS615159B2|1977-11-16|1986-02-15|Mitsubishi Monsanto Chem| JPH0474495B2|1984-06-16|1992-11-26| DE4423612A1|1994-07-06|1996-01-11|Basf Ag|2 - [ pyrazolyl-3'-oxymethylene] anilides, process for their preparation and their use| KR100844810B1|2000-12-22|2008-07-09|소니 가부시끼 가이샤|Encoder and decoder| SE0202159D0|2001-07-10|2002-07-09|Coding Technologies Sweden Ab|Efficientand scalable parametric stereo coding for low bitrate applications| JP2003110429A|2001-09-28|2003-04-11|Sony Corp|Coding method and device, decoding method and device, transmission method and device, and storage medium| JP3982397B2|2001-11-28|2007-09-26|日本ビクター株式会社|Program for decoding variable length encoded data and program for receiving variable length encoded data| US7263692B2|2003-06-30|2007-08-28|Intel Corporation|System and method for software-pipelining of loops with sparse matrix routines| US7895034B2|2004-09-17|2011-02-22|Digital Rise Technology Co., Ltd.|Audio encoding system| US20060080090A1|2004-10-07|2006-04-13|Nokia Corporation|Reusing codebooks in parameter quantization| US20070055510A1|2005-07-19|2007-03-08|Johannes Hilpert|Concept for bridging the gap between parametric multi-channel audio coding and matrixed-surround multi-channel coding| TWI396188B|2005-08-02|2013-05-11|Dolby Lab Licensing Corp|Controlling spatial audio coding parameters as a function of auditory events| KR100857113B1|2005-10-05|2008-09-08|엘지전자 주식회사|Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor| US8271274B2|2006-02-22|2012-09-18|France Telecom|Coding/decoding of a digital audio signal, in CELP technique| MX2008010836A|2006-02-24|2008-11-26|France Telecom|Method for binary coding of quantization indices of a signal envelope, method for decoding a signal envelope and corresponding coding and decoding modules.| EP2054875B1|2006-10-16|2011-03-23|Dolby Sweden AB|Enhanced coding and parameter representation of multichannel downmixed object coding| US7953595B2|2006-10-18|2011-05-31|Polycom, Inc.|Dual-transform coding of audio signals| JP2011527442A|2008-07-10|2011-10-27|ヴォイスエイジ・コーポレーション|Multi-reference LPC filter quantization and inverse quantization device and method| EP3640941A1|2008-10-08|2020-04-22|Fraunhofer Gesellschaft zur Förderung der Angewand|Multi-resolution switched audio encoding/decoding scheme| KR101706009B1|2008-07-11|2017-02-22|프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베.|Audio encoder, audio decoder, method for encoding and decoding an audio signal. audio stream and computer program| EP2214161A1|2009-01-28|2010-08-04|Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.|Apparatus, method and computer program for upmixing a downmix audio signal| US8194862B2|2009-07-31|2012-06-05|Activevideo Networks, Inc.|Video game system with mixing of independent pre-encoded digital audio bitstreams| UA48138U|2009-08-31|2010-03-10|Винницкий Национальный Технический Университет|Method for directed search of vectors at compacting language signals| US9117458B2|2009-11-12|2015-08-25|Lg Electronics Inc.|Apparatus for processing an audio signal and method thereof| US8505001B2|2009-12-17|2013-08-06|Broadcom Corporation|Method and system for utilizing data flow graphs to compile shaders| CA3105050C|2010-04-09|2021-08-31|Dolby International Ab|Audio upmixer operable in prediction or non-prediction mode| US9112591B2|2010-04-16|2015-08-18|Samsung Electronics Co., Ltd.|Apparatus for encoding/decoding multichannel signal and method thereof| KR101798079B1|2010-05-10|2017-11-16|삼성전자주식회사|Method and apparatus for encoding video frame using difference between pixels| US8660195B2|2010-08-10|2014-02-25|Qualcomm Incorporated|Using quantized prediction memory during fast recovery coding| US9111526B2|2010-10-25|2015-08-18|Qualcomm Incorporated|Systems, method, apparatus, and computer-readable media for decomposition of a multichannel music signal| CA2832032C|2011-04-20|2019-09-24|Panasonic Corporation|Device and method for execution of huffman coding| WO2013064957A1|2011-11-01|2013-05-10|Koninklijke Philips Electronics N.V.|Audio object encoding and decoding| EP2870603B1|2012-07-09|2020-09-30|Koninklijke Philips N.V.|Encoding and decoding of audio signals| KR102192245B1|2013-05-24|2020-12-17|돌비 인터네셔널 에이비|Audio encoder and decoder|AU2014270299B2|2013-05-24|2017-08-10|Dolby International Ab|Coding of audio scenes| KR102192245B1|2013-05-24|2020-12-17|돌비 인터네셔널 에이비|Audio encoder and decoder| EP2973551B1|2013-05-24|2017-05-03|Dolby International AB|Reconstruction of audio scenes from a downmix| CN110085240A|2013-05-24|2019-08-02|杜比国际公司|The high efficient coding of audio scene including audio object| CN105229732B|2013-05-24|2018-09-04|杜比国际公司|The high efficient coding of audio scene including audio object| CN105659320B|2013-10-21|2019-07-12|杜比国际公司|Audio coder and decoder| WO2015150384A1|2014-04-01|2015-10-08|Dolby International Ab|Efficient coding of audio scenes comprising audio objects| GB2528460B|2014-07-21|2018-05-30|Gurulogic Microsystems Oy|Encoder, decoder and method| KR20180026528A|2015-07-06|2018-03-12|노키아 테크놀로지스 오와이|A bit error detector for an audio signal decoder| US9961475B2|2015-10-08|2018-05-01|Qualcomm Incorporated|Conversion from object-based audio to HOA| US10249312B2|2015-10-08|2019-04-02|Qualcomm Incorporated|Quantization of spatial vectors| KR20170109456A|2016-03-21|2017-09-29|한국전자통신연구원|Apparatus and method for encoding / decoding audio based on block| CN107886960B|2016-09-30|2020-12-01|华为技术有限公司|Audio signal reconstruction method and device|
法律状态:
2018-11-06| B06F| Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]| 2020-06-02| B06U| Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]| 2020-12-08| B09A| Decision: intention to grant [chapter 9.1 patent gazette]| 2021-02-23| B16A| Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]|Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 23/05/2014, OBSERVADAS AS CONDICOES LEGAIS. |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 US201361827264P| true| 2013-05-24|2013-05-24| US61/827,264|2013-05-24| PCT/EP2014/060731|WO2014187988A2|2013-05-24|2014-05-23|Audio encoder and decoder| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|