effectiveFrequency property

double get effectiveFrequency

Effective frequency sent to the audio engine (base * 2^octave). Positive octaves multiply (2x, 4x, 8x, 16x). Negative octaves divide (/2, /4, /8, /16).

Implementation

double get effectiveFrequency {
  final oct = currentOctave.value;
  if (oct >= 0) {
    return currentFreq.value * (1 << oct); // base * 2^oct
  }
  return currentFreq.value / (1 << oct.abs()); // base / 2^|oct|
}