diff options
Diffstat (limited to 'src/decoder/plugins/MadDecoderPlugin.cxx')
-rw-r--r-- | src/decoder/plugins/MadDecoderPlugin.cxx | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/decoder/plugins/MadDecoderPlugin.cxx b/src/decoder/plugins/MadDecoderPlugin.cxx index bc7ed3e39..5a9490bcb 100644 --- a/src/decoder/plugins/MadDecoderPlugin.cxx +++ b/src/decoder/plugins/MadDecoderPlugin.cxx @@ -79,14 +79,12 @@ static inline int32_t mad_fixed_to_24_sample(mad_fixed_t sample) { static constexpr unsigned bits = 24; - static constexpr mad_fixed_t MIN = -MAD_F_ONE; - static constexpr mad_fixed_t MAX = MAD_F_ONE - 1; /* round */ sample = sample + (1L << (MAD_F_FRACBITS - bits)); /* quantize */ - return Clamp(sample, MIN, MAX) + return Clamp(sample, MAD_F_MIN, MAD_F_MAX) >> (MAD_F_FRACBITS + 1 - bits); } |