In #61, I modified how the spectrogram features were transferred from the preprocessor task to the inference task, where it uses a queue instead of a ring buffer. I mistakenly sent the newest features to the front of the queue. If the inference task ever fell even slightly behind, then this would result in the spectrogram features being processed out of order. This explains the sudden decrease in wake word performance! This PR sends the newest features to the back of the queue so everything is processed in the correct order.
In #61, I modified how the spectrogram features were transferred from the preprocessor task to the inference task, where it uses a queue instead of a ring buffer. I mistakenly sent the newest features to the front of the queue. If the inference task ever fell even slightly behind, then this would result in the spectrogram features being processed out of order. This explains the sudden decrease in wake word performance! This PR sends the newest features to the back of the queue so everything is processed in the correct order.