/* * retain.h * * Created on: Aug 23, 2026 * Author: ozpv */ #ifndef INC_EFFECTS_RETAIN_H_ #define INC_EFFECTS_RETAIN_H_ #include #include #include "cs4272.h" /* must be a power of two higher values give better frequency resolution and must be paired with a higher BUFFER_SIZE */ #define WINDOW_SIZE 4096 /* change based on necessary overlap */ #define HOP_SIZE (WINDOW_SIZE / 4) #define OVERLAP_SIZE (WINDOW_SIZE - HOP_SIZE) #define NUM_OVERLAPS (WINDOW_SIZE / HOP_SIZE) #define COMPLEX_BIN_COUNT (WINDOW_SIZE / 2 - 1) void retain_init(void); void retain( const int32_t *samples_in, int32_t *samples_out, const size_t range_min, const size_t range_max, const enum Channel channel ); #endif /* INC_EFFECTS_RETAIN_H_ */