Get the mean of the middle N values in the sample buffer. The trimmed mean excludes noise from outliers.
get-trimmed-mean
@/get-trimmed-mean
Get the mean of the middle N values in the sample buffer. The trimmed mean excludes noise from outliers.
Buffer@/sample-buffer
Sample buffer.
Nnumber
Number of values to use when calculating mean.
UPDpulse
Update.
Donepulse
Pulse on completion.
tMeannumber
Trimmed mean.
To use the node in your project you should have the wayland/running-median library installed. Use the “File → Add Library” menu item in XOD IDE if you don’t have it yet. See Using libraries for more info.
C++ implementation
#pragma XOD evaluate_on_pin disable
#pragma XOD evaluate_on_pin enable input_UPD
node {
void evaluate(Context ctx) {
if (isInputDirty<input_UPD>(ctx)) {
auto samples = getValue<input_Buffer>(ctx);
auto N = getValue<input_N>(ctx);
emitValue<output_tMean>(ctx, samples -> getAverage(N));
emitValue<output_Done>(ctx, 1);
}
}
}