setBinauralBeat method
void
setBinauralBeat(
{ - double beat = 0,
})
override
Implementation
@override
void setBinauralBeat({double beat = 0}) {
final clampedBeat = beat.clamp(
-NeomGeneratorConstants.binauralBeatMax,
NeomGeneratorConstants.binauralBeatMax,
);
currentBeat.value = clampedBeat;
_sineEngine.beat = clampedBeat.abs();
// Record user-driven beat change
if (inciensoRecorder.isRecording) {
inciensoRecorder.captureUserAction(
rightHz: currentFreq.value + clampedBeat,
);
}
if (clampedBeat != 0) {
final secondFreq = currentFreq.value + clampedBeat;
chamberPreset.binauralFrequency = NeomFrequency(
frequency: secondFreq,
description: clampedBeat > 0
? "Binaural +${clampedBeat.toStringAsFixed(0)}"
: "Binaural ${clampedBeat.toStringAsFixed(0)}",
);
} else {
chamberPreset.binauralFrequency = null;
}
update([AppPageIdConstants.generator]);
}