forked from eden-emu/eden
The current code inserts and deletes elements from the beginning of the audio buffer, which is very inefficient in an std::vector. Profiling was done using VisualStudio2017's Performance Analyzer in Super Mario 3D Land. Before this change: AudioInterp::Linear had 14.14% of the runtime (inclusive) and most of that time was spent in std::vector's insert implementation. After this change: AudioInterp::Linear has 0.36% of the runtime (inclusive) |
||
|---|---|---|
| .. | ||
| hle | ||
| audio_core.cpp | ||
| audio_core.h | ||
| CMakeLists.txt | ||
| codec.cpp | ||
| codec.h | ||
| interpolate.cpp | ||
| interpolate.h | ||
| null_sink.h | ||
| sdl2_sink.cpp | ||
| sdl2_sink.h | ||
| sink.h | ||
| sink_details.cpp | ||
| sink_details.h | ||
| time_stretch.cpp | ||
| time_stretch.h | ||