namespace FluidSim.Core
{
///
/// Mixes multiple audio samples and applies a soft‑clipping tanh.
///
public static class SoundProcessor
{
/// Overall gain applied after mixing (before tanh).
public static float MasterGain { get; set; } = 0.01f;
///
/// Mixes an array of raw audio samples and returns a single sample in [‑1, 1].
///
public static float MixAndClip(params float[] samples)
{
float sum = 0f;
foreach (float s in samples)
sum += s;
sum *= MasterGain;
return sum;
}
}
}