You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Feature Request] Quantise to altered/harmonic series #7
A module that snaps the partials to fundamental * a. The way i would do it is:
mod = (fundamental * a * somebignumber) % (fundamental * somebignumber) / somebignumber;
freq = freq - mod;
Except for the first partial for obvious reasons. a is a slider the user can control. Hope that makes sense.
This has 3 great use cases i found.
1: Changing the partial frequencies can be used as more of a harmonic timbre control if you quantize them with a = 1.
2: Using custom scales and stretching the harmonic series accordingly can bring things back in harmony since the harmonics overlap.
3: Better controllable dissonance.
On Jun 17, 2022, at 6:16 AM, odsfgolfdjng ***@***.*** ***@***.***>> wrote:
A module that snaps the partials to fundamental * a. The way i would do it is:
mod = (fundamental * a * somebignumber) % (fundamental * somebignumber) / somebignumber;
freq = freq - mod;
In Flow, all "frequencies" are relative to the fundamental, which is at frequency = 1.0. Then they're pitch-shifted based on the actual pitch of the note. So wouldn't it be easier to just do
freq = (int) round(freq)
Or if you don't mind rounding down, then just
freq = (int) freq
?
Sean
Activity
eclab commentedon Jun 17, 2022
odsfgolfdjng commentedon Jun 17, 2022
I may be missing something but wouldn't your method shift the frequencies differently then mine?
example1:
f = 1;
a = 2.5
freq = 3.3
mod = (f * a * 10) % (f * 10) / 10;
freq = freq - mod // 2.5 = 3.3 - 0.8
example2:
freq = a * round(freq) // 7.5 = 2.5 * 3