diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/pcm_sw_volume.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/firmware/pcm_sw_volume.c b/firmware/pcm_sw_volume.c index 29049059e6..7322269f44 100644 --- a/firmware/pcm_sw_volume.c +++ b/firmware/pcm_sw_volume.c | |||
@@ -51,10 +51,10 @@ static typeof (memcpy) *pcm_scaling_fn = NULL; | |||
51 | #define PCM_F_T int64_t /* Requires large integer math */ | 51 | #define PCM_F_T int64_t /* Requires large integer math */ |
52 | #endif /* PCM_SW_VOLUME_FRACBITS */ | 52 | #endif /* PCM_SW_VOLUME_FRACBITS */ |
53 | 53 | ||
54 | /* Scale and round sample by PCM factor */ | 54 | /* Scale sample by PCM factor */ |
55 | static inline int32_t pcm_scale_sample(PCM_F_T f, int32_t s) | 55 | static inline int32_t pcm_scale_sample(PCM_F_T f, int32_t s) |
56 | { | 56 | { |
57 | return (f * s + (PCM_F_T)PCM_FACTOR_UNITY/2) >> PCM_SW_VOLUME_FRACBITS; | 57 | return (f * s) >> PCM_SW_VOLUME_FRACBITS; |
58 | } | 58 | } |
59 | 59 | ||
60 | /* Both UNITY, use direct copy */ | 60 | /* Both UNITY, use direct copy */ |