diff options
| author | bunnei <bunneidev@gmail.com> | 2020-02-28 16:07:10 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-28 16:07:10 -0500 |
| commit | ca7618684ce4be87673653e31631cafd487d7176 (patch) | |
| tree | 9bdfe64cea8daf6debcbaee53425e3f07e26502b /src/audio_core/algorithm/interpolate.h | |
| parent | c7db1ef5653b783980ebea8e65b175e36cc5f870 (diff) | |
| parent | 1989e1b9acab221718e10e1d4aecc6e9cd2acae1 (diff) | |
Merge pull request #3448 from bunnei/fix-audio-interp-2
audio_core: interpolate: Improvements to fix audio crackling.
Diffstat (limited to 'src/audio_core/algorithm/interpolate.h')
| -rw-r--r-- | src/audio_core/algorithm/interpolate.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/audio_core/algorithm/interpolate.h b/src/audio_core/algorithm/interpolate.h index 1b9831a75..ab1a31754 100644 --- a/src/audio_core/algorithm/interpolate.h +++ b/src/audio_core/algorithm/interpolate.h @@ -6,12 +6,17 @@ #include <array> #include <vector> + #include "common/common_types.h" namespace AudioCore { struct InterpolationState { - int fraction = 0; + static constexpr std::size_t taps{4}; + static constexpr std::size_t history_size{taps * 2 - 1}; + std::array<std::array<s16, 2>, history_size> history{}; + double position{}; + s32 fraction{}; }; /// Interpolates input signal to produce output signal. |
