Skip to content

Commit ed89796

Browse files
committed
Decimation instead of averaging.
1 parent f46d7f1 commit ed89796

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

usermods/audioreactive/audio_source.h

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -382,14 +382,15 @@ class I2SSource : public AudioSource {
382382
}
383383

384384
if (_sampleRate == 96000) {
385-
int final_samples = num_samples/4;
386-
for (int i = 0; i < final_samples; i++) {
387-
newSamples[i] = 0;
388-
for (int x = 0; x < 4; x++) {
389-
newSamples[i] += newSamples4x[(i*4)+x]/4;
390-
}
385+
for (int i = 0; i < num_samples/4; i++) {
386+
// Code for averaging. Decimation seems fine too.
387+
// newSamples[i] = 0;
388+
// for (int x = 0; x < 4; x++) {
389+
// newSamples[i] += newSamples4x[(i*4)+x]/4;
390+
// }
391+
newSamples[i] = newSamples4x[(i*4)]; // every 4th sample, skip the rest.
391392
}
392-
num_samples = final_samples;
393+
num_samples /= 4; // back to 512 samples
393394
}
394395

395396
// Store samples in sample buffer and update DC offset

0 commit comments

Comments
 (0)