Ryujinx-uplift/Ryujinx.Audio/Renderer/Dsp/Effect/ExponentialMovingAverage.cs

27 lines
497 B
C#
Raw Normal View History

using System.Runtime.CompilerServices;
namespace Ryujinx.Audio.Renderer.Dsp.Effect
{
public struct ExponentialMovingAverage
{
private float _mean;
public ExponentialMovingAverage(float mean)
{
_mean = mean;
}
public float Read()
{
return _mean;
}
public float Update(float value, float alpha)
{
_mean += alpha * (value - _mean);
return _mean;
}
}
}