diff options
Diffstat (limited to 'Core/Inc/Effects/retain.h')
| -rwxr-xr-x | Core/Inc/Effects/retain.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Core/Inc/Effects/retain.h b/Core/Inc/Effects/retain.h new file mode 100755 index 0000000..4700493 --- /dev/null +++ b/Core/Inc/Effects/retain.h @@ -0,0 +1,34 @@ +/*
+ * retain.h
+ *
+ * Created on: Aug 23, 2026
+ * Author: ozpv
+ */
+
+#ifndef INC_EFFECTS_RETAIN_H_
+#define INC_EFFECTS_RETAIN_H_
+
+#include <stddef.h>
+#include <stdint.h>
+#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_ */
|
