From 4aa0064f8238c7bded92a72bcce4b03084d2fe12 Mon Sep 17 00:00:00 2001 From: Christopher Landschoot Date: Thu, 14 Dec 2023 17:08:28 -0600 Subject: [PATCH 1/2] Added .min() to support stereo IR rotation. --- audiotools/core/effects.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/audiotools/core/effects.py b/audiotools/core/effects.py index fb534cbc..8a129f15 100644 --- a/audiotools/core/effects.py +++ b/audiotools/core/effects.py @@ -96,7 +96,7 @@ def convolve(self, other, start_at_max: bool = True): idx = other.audio_data.abs().argmax(axis=-1) irs = torch.zeros_like(other.audio_data) for i in range(other.batch_size): - irs[i] = torch.roll(other.audio_data[i], -idx[i].item(), -1) + irs[i] = torch.roll(other.audio_data[i], -idx[i].min().item(), -1) other = AudioSignal(irs, other.sample_rate) delta = torch.zeros_like(other.audio_data) From a83388ba7eed3488ffbee2b6974f8b55f3d78c7c Mon Sep 17 00:00:00 2001 From: Christopher Landschoot Date: Wed, 20 Dec 2023 13:24:23 -0600 Subject: [PATCH 2/2] Refactor window_idx assignment in ImpulseResponseMixin to support stereo/multi-channel IRs --- audiotools/core/effects.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/audiotools/core/effects.py b/audiotools/core/effects.py index 8a129f15..b444fbd6 100644 --- a/audiotools/core/effects.py +++ b/audiotools/core/effects.py @@ -567,7 +567,7 @@ def decompose_ir(self): window = torch.zeros_like(self.audio_data, device=self.device) for idx in range(self.batch_size): - window_idx = early_idx[idx, 0].nonzero() + window_idx = early_idx[idx, :].nonzero() window[idx, ..., window_idx] = self.get_window( "hann", window_idx.shape[-1], self.device )