The Advanced Linux Sound Architecture (ALSA) - library
Find a file
Takashi Iwai fd84adc63e pcm: route: Use get32 for multi-source route calculation
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>
2014-07-22 14:06:12 +02:00
alsalisp autotools: update style 2014-02-26 08:16:22 +01:00
aserver autotools: update style 2014-02-26 08:16:22 +01:00
doc autotools: update style 2014-02-26 08:16:22 +01:00
include pcm: Fill sw_params proto field 2014-07-22 12:14:49 +02:00
m4 Add the attributes.m4 macro file from xine/lscube. 2008-11-21 13:04:19 +01:00
modules autotools: update style 2014-02-26 08:16:22 +01:00
src pcm: route: Use get32 for multi-source route calculation 2014-07-22 14:06:12 +02:00
test test/audio_time: Set timestamp type explicitly 2014-07-14 18:12:49 +02:00
utils autotools: update style 2014-02-26 08:16:22 +01:00
.gitignore Update .gitignore 2012-09-22 09:39:12 +02:00
acinclude.m4 fixed for the recent autoconf. 2004-01-26 15:52:17 +00:00
ChangeLog * update to libtool 1.3.3 1999-07-22 12:18:42 +00:00
configure.ac Release v1.0.28 2014-06-17 14:34:19 +02:00
COPYING Updated GNU GPL license (address). 2001-12-30 09:22:54 +00:00
gitcompile Introduce --with-pkgconfdir, add 64-bit defaults to gitcompile 2012-01-20 16:14:44 +01:00
INSTALL Add hgcompile script and fix INSTALL document 2006-05-12 15:33:44 +02:00
Makefile.am autotools: update style 2014-02-26 08:16:22 +01:00
MEMORY-LEAK Initial version 2003-02-04 14:56:07 +00:00
NOTES Change assert condition in error message handler 2007-10-24 12:53:08 +02:00
TODO Added snd_config_load_override(). 2002-01-09 21:28:15 +00:00