mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-31 22:25:35 -04:00
The Advanced Linux Sound Architecture (ALSA) - library
The PCM route plugin can assign the destination value from average of multiple sources with attenuation. This requires the read of each channel value, sums and writes the resultant value in the requested format. Currently, get_labels is used for reading source values while put32_labels is used for writing the dest value. This is, however, a buggy implementation; get_labels gives the value as is only with endianness and signedness conversions, but put32_labels assumes that the value is normalized to 32bit int and it shifts down to the dest format. In addition, the current code lacks get_labels entries for the 24bit formats, as Shengjiu Wang spotted out. For fixing these bugs, this patch replaces the read with get32_labels and use always 64bit int for sum. This simplifies the code a lot and drops many lines. Signed-off-by: Takashi Iwai <tiwai@suse.de> |
||
|---|---|---|
| alsalisp | ||
| aserver | ||
| doc | ||
| include | ||
| m4 | ||
| modules | ||
| src | ||
| test | ||
| utils | ||
| .gitignore | ||
| acinclude.m4 | ||
| ChangeLog | ||
| configure.ac | ||
| COPYING | ||
| gitcompile | ||
| INSTALL | ||
| Makefile.am | ||
| MEMORY-LEAK | ||
| NOTES | ||
| TODO | ||