Upload files to "Source"

This commit is contained in:
ed
2025-10-25 17:56:23 +00:00
parent 7231f66689
commit a43db68120
3 changed files with 368 additions and 86 deletions

View File

@@ -3,13 +3,14 @@
#include <atomic>
#include <unordered_map>
#include <string>
#include <vector>
struct SliderDetail {
std::string label;
float min, max, interval, defValue;
};
using ParamMap = std::unordered_map<std::string, SliderDetail>;
using ParamMap = std::vector<std::pair<std::string, SliderDetail>>;
// Each SliderDetail: { label, min, max, step, defaultValue }
const std::unordered_map<std::string, ParamMap> PARAM_SETTINGS = {
@@ -67,12 +68,30 @@ const std::unordered_map<std::string, ParamMap> PARAM_SETTINGS = {
{ "bias", { "Bias", -1.0f, 1.0f, 0.01f, 0.0f } },
{ "tone", { "Tone", 100.0f, 8000.0f, 10.0f, 3000.0f } },
{ "shape", { "Shape", 0.0f, 2.0f, 1.0f, 0.0f } }
}},
{ "wt", {
{ "morph", { "Morph", 0.0f, 15.0f, 0.001f, 0.0f } },
{ "phase", { "Phase", 0.0f, 1.0f, 0.001f, 0.0f } },
{ "bank", { "Bank", 0.0f,255.0f, 1.0f, 0.0f } },
{ "lfoRate", { "LFO Rate", 0.01f, 10.0f, 0.001f, 1.0f } },
{ "lfoDepth",{ "LFO Depth", 0.0f, 8.0f, 0.001f, 0.0f } },
{ "lfoShape",{ "LFO Shape", 0.0f, 3.0f, 1.0f, 0.0f } },
{ "level", { "Level", 0.0f, 1.0f, 0.001f, 0.8f } }
}},
{ "wt2", {
{ "morph", { "Morph", 0.0f, 15.0f, 0.001f, 0.0f } },
{ "phase", { "Phase", 0.0f, 1.0f, 0.001f, 0.0f } },
{ "bank", { "Bank", 0.0f,255.0f, 1.0f, 0.0f } },
{ "lfoRate", { "LFO Rate", 0.01f, 10.0f, 0.001f, 1.0f } },
{ "lfoDepth",{ "LFO Depth", 0.0f, 8.0f, 0.001f, 0.0f } },
{ "lfoShape",{ "LFO Shape", 0.0f, 3.0f, 1.0f, 0.0f } },
{ "level", { "Level", 0.0f, 1.0f, 0.001f, 0.0f } }
}}
};
struct NeuralSharedParams
{
std::atomic<int> waveform{ -1 };
std::atomic<float>* wtPhase{};
// Amp ADSR
std::atomic<float>* adsrAttack{};
@@ -137,9 +156,28 @@ struct NeuralSharedParams
std::atomic<float>* filterOn{};
std::atomic<float>* eqOn{};
// Wavetable
std::atomic<float>* wtOn{};
std::atomic<float>* wtMorph{};
std::atomic<float>* wtBank{};
std::atomic<float>* wtLfoRate{};
std::atomic<float>* wtLfoDepth{};
std::atomic<float>* wtLfoShape{};
std::atomic<float>* wtLevel{};
// EQ + Master
std::atomic<float>* lowGainDbls{};
std::atomic<float>* midGainDbls{};
std::atomic<float>* highGainDbls{};
std::atomic<float>* masterDbls{};
// Wavetable Layer B
std::atomic<float>* wt2Phase{};
std::atomic<float>* wt2On{};
std::atomic<float>* wt2Morph{};
std::atomic<float>* wt2Bank{};
std::atomic<float>* wt2LfoRate{};
std::atomic<float>* wt2LfoDepth{};
std::atomic<float>* wt2LfoShape{};
std::atomic<float>* wt2Level{};
};