diff options
author | hselasky <hselasky@FreeBSD.org> | 2017-05-27 08:27:11 +0000 |
---|---|---|
committer | hselasky <hselasky@FreeBSD.org> | 2017-05-27 08:27:11 +0000 |
commit | 1e7bc3c6b32c8d7e3075345b8978c84fb2f80eaa (patch) | |
tree | a466621177e834216fb0a4db375e6d66ff2e0da2 /sys/tools | |
parent | 26562331dda7348a78ba1632a67e7b2eb328cb73 (diff) | |
download | FreeBSD-src-1e7bc3c6b32c8d7e3075345b8978c84fb2f80eaa.zip FreeBSD-src-1e7bc3c6b32c8d7e3075345b8978c84fb2f80eaa.tar.gz |
MFC r318820:
Increase the allowed maximum number of audio channels from 31 to 127
in the PCM feeder mixer. Without this change a value of 32 channels is
treated like zero, due to using a mask of 0x1f, causing a kernel
assert when trying to playback bitperfect 32-channel audio. Also
update the AWK script which is generating the division tables to
handle more than 18 channels. This commit complements r282650.
Diffstat (limited to 'sys/tools')
-rw-r--r-- | sys/tools/sound/snd_fxdiv_gen.awk | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/tools/sound/snd_fxdiv_gen.awk b/sys/tools/sound/snd_fxdiv_gen.awk index 5828062..2e1d3a5 100644 --- a/sys/tools/sound/snd_fxdiv_gen.awk +++ b/sys/tools/sound/snd_fxdiv_gen.awk @@ -74,7 +74,7 @@ BEGIN { FXSHIFT = 16; FXONE = shl(1, FXSHIFT); - SND_CHN_MAX = 18; + SND_CHN_MAX = 127; PCM_8_BPS = 1; PCM_16_BPS = 2; @@ -103,9 +103,9 @@ BEGIN { printf("/*\n"); printf(" * Fast unsigned 32bit integer division and rounding, accurate for\n"); printf(" * x = 1 - %d. This table should be enough to handle possible\n", FXONE); - printf(" * division for 1 - 72 (more can be generated though..).\n"); + printf(" * division for 1 - 508 (more can be generated though..).\n"); printf(" *\n"); - printf(" * 72 = SND_CHN_MAX * PCM_32_BPS, which is why....\n"); + printf(" * 508 = SND_CHN_MAX * PCM_32_BPS, which is why....\n"); printf(" */\n\n"); printf("static const uint32_t snd_fxdiv_table[][2] = {\n"); |