The energy ratios may be output and may also be passed to an energy ratio analyser (quantization resolution determiner) wherein a similar analysis to that performed within the metadata encoder energy ratio analyser (quantization resolution determiner) generates an initial bit allocation for the directional information. This is passed to the direction index decoder 405. The direction index decoder 405 may furthermore receive from the demultiplexer encoded direction indices. The direction index decoder 405 may be configured to determine a reduced bit allocation for directional values in a manner similar to that performed within the encoder. The direction index decoder 405 may then furthermore be configured to read one bit to determine whether all of the elevation data is 0 (in other words the directional values are 2D). Where the direction values are 3D then a count value for the last sub-band allocation nbjast is determined. If the value nbjast is 0 then the last sub-band to be decoded is N-1 otherwise the last sub-band to be decoded is N. The on a sub-band by sub-band basis from the first sub-band to the last sub- band (either N or N-1 according to the previous determination) then the direction index decoder 405 is configured to determine whether the encoding of the current sub-band was encoded using a fixed rate or variable rate code. Where there was a fixed rate code used at the encoder then the spherical index (or other index distribution) is read and decoded obtaining the elevation and azimuth values and the allocation of bits for the next sub-band is reduced by 1. Where there was a variable rate code used at the encoder then the entropy encoded index is read and decoded to generate the elevation and azimuth values. Then the number of bits used in the entropy encoded information counted and the difference between the allowed bits for the current sub-band and the bits used in the entropy encoding determined. After this the difference bits are distributed for the succeeding sub-band(s). Then the last sub-band is decoded based on the fixed rate code.