summaryrefslogtreecommitdiff
path: root/plugins/alsa
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2010-11-20 23:46:50 +0100
committerGravatar waker <wakeroid@gmail.com>2010-11-20 23:48:50 +0100
commit05a3f0a6fc4c3ca2776d55e36b38c8c07e0d3184 (patch)
tree63f62eabcfd105fb60a033e177107b04347a46cf /plugins/alsa
parentba64cb98eb826e2fb91a47a09854dac8aac52f71 (diff)
softvolume works for 16bit output;
replaygain works for 16bit and float output
Diffstat (limited to 'plugins/alsa')
-rw-r--r--plugins/alsa/alsa.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/plugins/alsa/alsa.c b/plugins/alsa/alsa.c
index 887bc205..1032f585 100644
--- a/plugins/alsa/alsa.c
+++ b/plugins/alsa/alsa.c
@@ -623,10 +623,12 @@ palsa_callback (char *stream, int len) {
);
#else
-// int16_t ivolume = deadbeef->volume_get_amp () * 1000;
-// for (int i = 0; i < bytesread/2; i++) {
-// ((int16_t*)stream)[i] = (int16_t)(((int32_t)(((int16_t*)stream)[i])) * ivolume / 1000);
-// }
+ if (plugin.fmt.bps == 16) {
+ int16_t ivolume = deadbeef->volume_get_amp () * 1000;
+ for (int i = 0; i < bytesread/2; i++) {
+ ((int16_t*)stream)[i] = (int16_t)(((int32_t)(((int16_t*)stream)[i])) * ivolume / 1000);
+ }
+ }
#endif
return bytesread;
}