Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dosbox-staging/dosbox-staging.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Novak <jnovak@skedulo.com>2022-08-30 01:58:12 +0300
committerkcgen <1557255+kcgen@users.noreply.github.com>2022-09-08 18:55:05 +0300
commit90fcd90418ceeaef22ef0e218b2e5d6ee11d6eb9 (patch)
tree7d2085f5b46abff305d1524c37c2289cf8d9aea0 /include
parent98f7f7b9b718f761eb2bcfc8f478b38c76ee8638 (diff)
Introduce ResampleMethod & refactor enabling the ZOH upsampler
Diffstat (limited to 'include')
-rw-r--r--include/mixer.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/mixer.h b/include/mixer.h
index 59a9eb19f..e27f6bea7 100644
--- a/include/mixer.h
+++ b/include/mixer.h
@@ -136,6 +136,12 @@ using channel_features_t = std::set<ChannelFeature>;
enum class FilterState { Off, On, ForcedOn };
+enum class ResampleMethod {
+ LinearInterpolation,
+ ZeroOrderHoldAndResample,
+ Resample
+};
+
using work_index_t = uint16_t;
// forward declarations
@@ -171,7 +177,7 @@ public:
void ConfigureLowPassFilter(const uint8_t order, const uint16_t cutoff_freq);
bool TryParseAndSetCustomFilter(const std::string &filter_prefs);
- void EnableZeroOrderHoldUpsampler(const bool enabled = true);
+ void SetResampleMethod(const ResampleMethod method);
void ConfigureZeroOrderHoldUpsampler(const uint16_t target_freq);
void SetCrossfeedStrength(const float strength);