AUDIO ENCODER AND DECODER
FIG12 is a generalized block diagram of an audio decoding system in accordance with an example embodiment
FIG12 is a generalized block diagram of an audio decoding system 1200 in accordance with 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 row in an upmix matrix. Each of the encoded elements comprises a value and a position in the row in the upmix matrix, the position indicating one of the M channels of the downmix signal 1210 to which the encoded element corresponds. The at least one encoded element 1204 is decoded by an upmix matrix element decoding component 1202. The upmix matrix element decoding component 1202 is configured to decode the at least one encoded element 1204 according to the encoding strategy used for encoding the at least one encoded element 1204. Examples on such encoding strategies are disclosed above. The at least one decoded element 1214 is then sent to the reconstructing 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 channels that correspond to the at least one encoded element 1204. When forming the linear combination each downmix channel is multiplied by the value of its corresponding encoded element 1204.
block diagram
1104
selection component
1204
encoded element
12
frequency bands are
1216
rendering component
11
decoder side is EEE
1210
downmix signal
1218
reconstructed audio object
1214
decoded element
1208
reconstructing component
1202
matrix element decoding component
1106
encoding component
1102
receiving component
1206
receiving component
1200
audio decoding system
['1. A method for encoding an upmix matrix in an audio encoding system (100), each row of the upmix matrix comprising M elements allowing reconstruction of a time/frequency tile of an audio object from a downmix signal comprising M channels, the method comprising: for each row in the upmix matrix: selecting a subset of elements from the M elements of the row in the upmix matrix, wherein the selected subset of elements comprises the same number of elements for each row of the upmix matrix; representing each element in the selected subset of elements by a value and a position in the upmix matrix; encoding the value and the position in the upmix matrix of each element in the selected subset of elements, wherein, for each row in the upmix matrix and for a plurality of frequency bands or a plurality of time frames, the values of the elements and/or the positions of the elements of the selected subsets of elements form one or more vectors (114, 902, 1002) of parameters, each parameter in the vector of parameters corresponding to one of the plurality of frequency bands or the plurality of time frames, wherein each vector of the one or more vectors of parameters has a first element (1002) and at least one second element (902), and wherein the one or more vectors of parameters are encoded by: representing (S702, S802) each parameter in the vector by an index value which takes one of N possible values; associating each of the at least one second element with a symbol, the symbol being calculated by: calculating (S704) a difference between the index value of the second element and the index value of its preceding element in the vector; and applying (S706) modulo N to the difference; encoding (S708) each of the at least one second element by entropy coding of the symbol associated with the at least one second element based on a probability table comprising probabilities of the symbols; associating the first element in the vector with a symbol, the symbol being calculated by: shifting (S804) the index value representing the first element in the vector by subtracting an off-set value from the index value; and applying (S806) modulo N to the shifted index value; and encoding the first element by entropy coding of the symbol associated with the first element using the same probability table that is used to encode the at least one second element.', '4. An encoder (100) for encoding an upmix matrix in an audio encoding system (100), each row of the upmix matrix comprising M elements allowing reconstruction of a time/frequency tile of an audio object from a downmix signal comprising M channels, the encoder comprising: a receiving component adapted to receive each row in the upmix matrix; a selection component adapted to select a subset of elements from the M elements of the row in the upmix matrix, wherein the selected subset of elements comprises the same number of elements for each row of the upmix matrix; an encoding component adapted to represent each element in the selected subset of elements by a value and a position in the upmix matrix, the encoding component further adapted to encode the value and the position in the upmix matrix of each element in the selected subset of elements wherein, for each row in the upmix matrix and for a plurality of frequency bands or a plurality of time frames, the values of the elements and/or the positions of the elements of the selected subsets of elements form one or more vectors (114, 902, 1002) of parameters, each parameter in the vector of parameters corresponding to one of the plurality of  frequency bands or the plurality of time frames, the vector of parameters having a first element (1002) and at least one second element (902), wherein the encoding component is adapted to encode the one or more vectors of parameters by for each vector: representing (S702, S802) each parameter in the vector by an index value which takes one of N possible values; associating each of the at least one second element with a symbol, the symbol being calculated by: calculating (S704) a difference between the index value of the second element and the index value of its preceding element in the vector; applying (S706) modulo N to the difference; encoding (S708) each of the at least one second element by entropy coding of the symbol associated with the at least one second element based on a probability table comprising probabilities of the symbols associating the first element in the vector with a symbol, the symbol being calculated by: shifting (S804) the index value representing the first element in the vector by subtracting an off-set value from the index value; applying (S806) modulo N to the shifted index value; encoding the first element by entropy coding of the symbol associated with the first element using the same probability table that is used to encode the at least one second element.', '5. A method for reconstructing a time/frequency tile of an audio object in an audio decoding system (1200), comprising: receiving a downmix signal (1210) comprising M channels; receiving at least one encoded element (1204) representing a subset of M elements of a row in an upmix matrix, each encoded element comprising a value and a position in the row in the upmix matrix, the position indicating one of the M channels of the downmix signal to which the encoded element corresponds; and reconstructing (1208) the time/frequency tile of the audio object from the downmix signal by forming a linear combination of the downmix channels that correspond to the at least one encoded element, wherein in said linear combination  each downmix channel is multiplied by the value of its corresponding encoded element wherein, for a plurality of frequency bands or a plurality of time frames, the values and/or the positions of the at least one encoded element form one or more vectors (1214), wherein the positions of the at least one encoded element vary across a plurality of frequency bands and/or across a plurality of time frames, wherein each position is represented by an entropy coded symbol, wherein each symbol in each vector of entropy coded symbols corresponds to one of the plurality of frequency bands or the plurality of time frames, and wherein the one or more vectors of entropy coded symbols are decoded into one or more vectors of parameters, wherein each vector of entropy coded symbols comprises a first entropy coded symbol and at least one second entropy coded symbol and wherein each vector of parameters comprises a first element and at least one second element, wherein the decoding of each of the one or more vectors of entropy coded symbols comprises: representing each entropy coded symbol in the vector of entropy coded symbols by a symbol which may take N integer values by using a probability table; associating the first entropy coded symbol with an index value; associating each of the at least one second entropy coded symbol with an index value, the index value of the at least one second entropy coded symbol being calculated by: calculating the sum of the index value associated with the of entropy coded symbol preceding the second entropy coded symbol in the vector of entropy coded symbols and the symbol representing the second entropy coded symbol; and applying modulo N to the sum; and representing the at least one second element of the vector of parameters by a parameter value corresponding to the index value associated with the at least one second entropy coded symbol, wherein the step of representing each entropy coded symbol in the vector of entropy coded symbols by a symbol is performed using the same probability table for all  entropy coded symbols in the vector of entropy coded symbols, wherein the index value associated with the first entropy coded symbol is calculated by: shifting the symbol representing the first entropy coded symbol in the vector of entropy coded symbols by adding an off-set value to the symbol; and applying modulo N to the shifted symbol, wherein the method further comprises the step of: representing the first element of the vector of parameters by a parameter value corresponding to the index value associated with the first entropy coded symbol.', '7. A decoder (1200) for reconstructing a time/frequency tile of an audio object, comprising: 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 row in an upmix matrix, each encoded element comprising a value and a position in the row in the upmix matrix, the position indicating one of the M channels of the downmix signal to which the encoded element corresponds; and a reconstructing component (1208) configured to reconstruct the time/frequency tile of the audio object from the downmix signal by forming a linear combination of the downmix channels that correspond to the at least one encoded element, wherein in said linear combination each downmix channel is multiplied by the value of its corresponding encoded element, wherein, for a plurality of frequency bands or a plurality of time frames, the values and/or the positions of the at least one encoded element form one or more vectors (1214), wherein the positions of the at least one encoded element vary across a plurality of frequency bands and/or across a plurality of time frames, wherein each position is represented by an entropy coded symbol, wherein each  symbol in each vector of entropy coded symbols corresponds to one of the plurality of frequency bands or the plurality of time frames, and wherein the decoder further comprises a decoding component (1202) configured to decode the one or more vectors of entropy coded symbols into one or more vectors of parameters, wherein each vector of entropy coded symbols comprises a first entropy coded symbol and at least one second entropy coded symbol and wherein each vector of parameters comprises a first element and at least one second element, wherein the decoding component is configured to decode each of the one or more vectors of entropy coded symbols by: representing each entropy coded symbol in the vector of entropy coded symbols by a symbol which may take N integer values by using a probability table; associating the first entropy coded symbol with an index value; associating each of the at least one second entropy coded symbol with an index value, the index value of the at least one second entropy coded symbol being calculated by: calculating the sum of the index value associated with the of entropy coded symbol preceding the second entropy coded symbol in the vector of entropy coded symbols and the symbol representing the second entropy coded symbol; applying modulo N to the sum; representing the at least one second element of the vector of parameters by a parameter value corresponding to the index value associated with the at least one second entropy coded symbol, wherein the step of representing each entropy coded symbol in the vector of entropy coded symbols by a symbol is performed using the same probability table for all entropy coded symbols in the vector of entropy coded symbols, wherein the index value associated with the first entropy coded symbol is calculated by: shifting the symbol representing the first entropy coded symbol in the vector of entropy coded symbols by adding an off-set value to the symbol; applying modulo N to the shifted symbol; and representing the first element of the vector of parameters by a parameter value corresponding to the index value associated with the first entropy coded symbol.']