aboutsummaryrefslogtreecommitdiffstats
path: root/src/pcm/PcmChannels.cxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2013-12-02 11:45:03 +0100
committerMax Kellermann <max@duempel.org>2013-12-02 11:48:10 +0100
commitc6ef0e88879d2cd203a74cfda2a574e949486877 (patch)
tree8c20019846a355f23c3a6bf9d7c0e48e1fdb5ea3 /src/pcm/PcmChannels.cxx
parentf761d583b579e4bdfe3013b52a46a76a8f31abf8 (diff)
downloadmpd-c6ef0e88879d2cd203a74cfda2a574e949486877.tar.gz
mpd-c6ef0e88879d2cd203a74cfda2a574e949486877.tar.xz
mpd-c6ef0e88879d2cd203a74cfda2a574e949486877.zip
pcm/Traits: add typedef "sum_type"
Allow 32 bit platforms to use 32 bit instead of 64 bit for summing 24 bit samples.
Diffstat (limited to 'src/pcm/PcmChannels.cxx')
-rw-r--r--src/pcm/PcmChannels.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/pcm/PcmChannels.cxx b/src/pcm/PcmChannels.cxx
index b90e48580..2e433e611 100644
--- a/src/pcm/PcmChannels.cxx
+++ b/src/pcm/PcmChannels.cxx
@@ -44,8 +44,8 @@ static typename Traits::value_type
StereoToMono(typename Traits::value_type _a,
typename Traits::value_type _b)
{
- typename Traits::long_type a(_a);
- typename Traits::long_type b(_b);
+ typename Traits::sum_type a(_a);
+ typename Traits::sum_type b(_b);
return typename Traits::value_type((a + b) / 2);
}
@@ -76,7 +76,7 @@ NToStereo(typename Traits::pointer_type dest,
assert((end - src) % src_channels == 0);
while (src != end) {
- typename Traits::long_type sum = *src++;
+ typename Traits::sum_type sum = *src++;
for (unsigned c = 1; c < src_channels; ++c)
sum += *src++;
@@ -101,7 +101,7 @@ NToM(typename Traits::pointer_type dest,
assert((end - src) % src_channels == 0);
while (src != end) {
- typename Traits::long_type sum = *src++;
+ typename Traits::sum_type sum = *src++;
for (unsigned c = 1; c < src_channels; ++c)
sum += *src++;