]> git.alsa-project.org Git - alsa-lib.git/commit
pcm: dmix: fix wrong scaling in 32bits pcm mixing
authorKatsuhiro Suzuki <katsuhiro@katsuster.net>
Thu, 28 Apr 2022 16:17:27 +0000 (01:17 +0900)
committerJaroslav Kysela <perex@perex.cz>
Fri, 20 May 2022 08:01:10 +0000 (10:01 +0200)
commitb62fc061e4833b12286a5f9b2e78894b614ce3fb
tree2328669da017b1f77ee4b69e4971aa643aaad32f
parenta513e65e1919d9cd4df5e43f595414e5cf16270e
pcm: dmix: fix wrong scaling in 32bits pcm mixing

Generic mixing function for 32bits pcm has used 8bits right shift for
pre-scaling. But this is generating wrong result if pcm data is
negative value because return value type of bswap_32() is unsigned int.

This patch adds type cast bswap_32() result to signed int.

Fixes: https://github.com/alsa-project/alsa-lib/pull/222
Signed-off-by: Katsuhiro Suzuki <katsuhiro@katsuster.net>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
src/pcm/pcm_dmix_generic.c