mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-08 13:29:59 -05:00
SSE/MMX/ARM: Fix high frequency noise with unusual number of channels
In the assembly optimized versions of SSE, a noise could occur when the number of channels were 3,5,6 or 7. For MMX and ARM, this could occur when the number of channels were 3. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
This commit is contained in:
parent
489f50e2f4
commit
4d84a00b49
3 changed files with 25 additions and 13 deletions
|
|
@ -47,7 +47,10 @@ pa_volume_s16ne_arm (int16_t *samples, int32_t *volumes, unsigned channels, unsi
|
|||
{
|
||||
int32_t *ve;
|
||||
|
||||
channels = PA_MAX (4U, channels);
|
||||
/* Channels must be at least 4, and always a multiple of the original number.
|
||||
* This is also the max amount we overread the volume array, which should
|
||||
* have enough padding. */
|
||||
channels = channels == 3 ? 6 : PA_MAX (4U, channels);
|
||||
ve = volumes + channels;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue