From 5acf5a9745d392f72b71209908148ff0533e54eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Mu=C3=B1oz?= Date: Thu, 21 Mar 2024 16:34:59 +0100 Subject: [PATCH] =?UTF-8?q?Bugfix=20-=20Auditioned=20arp=20notes=20don?= =?UTF-8?q?=E2=80=99t=20reflect=20triplet=20and=20dotted=20sync=20rates=20?= =?UTF-8?q?(#1543)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/deluge/modulation/arpeggiator.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/deluge/modulation/arpeggiator.cpp b/src/deluge/modulation/arpeggiator.cpp index 0ef4db7f7b..613df6ce62 100644 --- a/src/deluge/modulation/arpeggiator.cpp +++ b/src/deluge/modulation/arpeggiator.cpp @@ -881,6 +881,13 @@ uint32_t ArpeggiatorSettings::getPhaseIncrement(int32_t arpRate) { .getTimePerInternalTickInverse(); // multiply_32x32_rshift32(playbackHandler.getTimePerInternalTickInverse(), // arpRate); phaseIncrement >>= rightShiftAmount; + + if (syncType == SYNC_TYPE_TRIPLET) { + phaseIncrement = phaseIncrement * 3 / 2; + } + else if (syncType == SYNC_TYPE_DOTTED) { + phaseIncrement = phaseIncrement * 2 / 3; + } } return phaseIncrement; }