From d716fc789d3374493feddad2f4e3e0e82139888a Mon Sep 17 00:00:00 2001 From: Weird Constructor Date: Sun, 8 Sep 2019 19:51:14 +0200 Subject: [PATCH] made audio send inputs behave nicer --- src/ops/audio_send.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ops/audio_send.rs b/src/ops/audio_send.rs index 4be5f77..8185184 100644 --- a/src/ops/audio_send.rs +++ b/src/ops/audio_send.rs @@ -65,11 +65,12 @@ impl Op for AudioSend { self.cur_vol_r = self.volume_r.calc(regs); } - fn render(&mut self, num_samples: usize, offs: usize, input_idx: usize, bufs: &mut Vec>) - { + fn render(&mut self, num_samples: usize, offs: usize, input_idx: usize, bufs: &mut Vec>) { + let vl = (self.cur_vol_l as f64) * (self.cur_vol_l as f64); + let vr = (self.cur_vol_r as f64) * (self.cur_vol_r as f64); for i in 0..num_samples { - bufs[self.out][offs + (i * 2)] += self.cur_vol_l * bufs[input_idx][i * 2]; - bufs[self.out][offs + (i * 2) + 1] += self.cur_vol_r * bufs[input_idx][i * 2 + 1]; + bufs[self.out][offs + (i * 2)] += (vl * (bufs[input_idx][i * 2] as f64)) as f32; + bufs[self.out][offs + (i * 2) + 1] += (vr * (bufs[input_idx][i * 2 + 1] as f64)) as f32; } } }