Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3, and AAC files on I2S DACs or with a software emulated delta-sigma DAC on the ESP8266 and ESP32
GNU General Public License v3.0
2.01k
stars
432
forks
source link
Performance improvement: ~13% faster on ESP32 and ~21% faster on ESP8266 (empirically tested) #554
Please consider this PR trying to improve performance with these changes:
new tsf_note_on_fast returning playIndex and removing lowpass filter setup since it is not being processed in tsf_voice_render_fast anyway but is consuming a lot of cpu
new tsf_note_off_fast using playIndex to stop voices faster
Removing lowpass filter setup from tsf_voice_render_fast since it is not being processed
Math tweaks trying to avoid complex math operations (specially conversions) at voice render stage
Precalculating *F32P32 values to avoid doing them at voice render stage
Please consider this PR trying to improve performance with these changes: