MIDI CC mappings for daisy seed synth examples

This commit is contained in:
Stefano D'Angelo 2023-02-15 12:45:21 +01:00
parent aed3357957
commit f2f04264d3
3 changed files with 55 additions and 28 deletions

14
TODO
View File

@ -4,9 +4,8 @@ code:
* audio rate optional pulse width/slope inputs?
* one pole process const input? (return also if const out)
* optimize triangle generation for constant pulse width
* API for buffer fill, scale, offset, zero, copy...?
* web examples construction/destruction
* web effect multichannel in?
* web effect mono->stereo and stereo->mono inputs? or display "input needs to be n channels"?
* check const restrict etc.
* define BW_RESTRICT to __restrict or similar when the compiler supports it
* empty functions etc. to keep consistency and forward compatibility?
@ -14,23 +13,24 @@ code:
* should clip slope in triangle?
* fix vst3 mapped values (visible in Ableton Live) and short names
* polish examples (ranges, etc.)
* change name of vst3 template folders to something that doesn't look like a vst3 folder itself
* compute bit depth reduction only when input changes? (state, option?)
* common smoothing policy (as control rate as possible?) - smoothing control?
* avoid "force" in coeffs update by using inline functions?
* should rather use backward Euler in bw_onepole?
* Q to slope and viceversa functions in 2nd order shelf filters? keep updated values (seamless switch, syncrhonicity)?
* treat unused variable/function warnings
* csch for bw_peak bandwidth -> Q
* sample rate-constant coeffs? (pan case)
* pan process with no out: should just reset coeffs?
* trace calls (debug)
* svf bandpass out polarity too confusing?
* better common config.h (less stuff maybe)
* svf bandpass out polarity too confusing (inverted in mm2)?
* better common config.h (less stuff maybe, or more stuff - decide)
* separate tests an examples?
* define common midi CCs for examples
build system:
* make makefiles handle paths with spaces etc
* can run su on windows? (system-wide install)
* make autodependencies (.d?)
* make autodependencies (.d?) - https://make.mad-scientist.net/papers/advanced-auto-dependency-generation/
* make from... directories
* recursive make?
* make hashdeps (https://github.com/olipratt/hashdeps)?

View File

@ -26,19 +26,46 @@ struct config_cc {
unsigned char cc;
};
#define NUM_CCS 10
#define NUM_CCS 37
static struct config_cc config_ccs[NUM_CCS] = {
{ 0, 20 },
{ 1, 21 },
{ 2, 22 },
{ 3, 23 },
{ 4, 24 },
{ 5, 25 },
{ 6, 26 },
{ 7, 27 },
{ 8, 52 },
{ 9, 53 }
{ 0, 7 }, // Volume
{ 1, 3 }, // Master tune
{ 2, 5 }, // Portamento
{ 3, 9 }, // Modulation mix
{ 4, 14 }, // VCO1 modulation
{ 5, 15 }, // VCO1 coarse
{ 6, 20 }, // VCO1 fine
{ 7, 21 }, // VCO1 waveform
{ 8, 22 }, // VCO1 pulse width/slope
{ 9, 23 }, // VCO1 level
{ 10, 24 }, // VCO2 modulation
{ 11, 25 }, // VCO2 coarse
{ 12, 26 }, // VCO2 fine
{ 13, 27 }, // VCO2 waveform
{ 14, 28 }, // VCO2 pulse width/slope
{ 15, 29 }, // VCO2 level
{ 16, 30 }, // VCO3 keyboard control
{ 17, 31 }, // VCO3 coarse
{ 18, 85 }, // VCO3 fine
{ 19, 86 }, // VCO3 waveform
{ 20, 87 }, // VCO3 level
{ 21, 89 }, // Noise color
{ 22, 90 }, // Noise level
{ 23, 102 }, // VCF modulation
{ 24, 103 }, // VCF keyboard control
{ 25, 74 }, // VCF cutoff
{ 26, 71 }, // VCF Q
{ 27, 104 }, // VCF contour
{ 28, 105 }, // VCF attack
{ 29, 106 }, // VCF decay
{ 30, 107 }, // VCF sustain
{ 31, 108 }, // VCF release
{ 32, 73 }, // VCA attack
{ 33, 109 }, // VCA decay
{ 34, 110 }, // VCA sustain
{ 35, 72 }, // VCA release
{ 36, 111 } // A440
};
#endif

View File

@ -29,16 +29,16 @@ struct config_cc {
#define NUM_CCS 10
static struct config_cc config_ccs[NUM_CCS] = {
{ 0, 20 },
{ 1, 21 },
{ 2, 22 },
{ 3, 23 },
{ 4, 24 },
{ 5, 25 },
{ 6, 26 },
{ 7, 27 },
{ 8, 52 },
{ 9, 53 }
{ 0, 7 }, // Volume
{ 1, 3 }, // Master tune
{ 2, 5 }, // Portamento
{ 3, 28 }, // Pulse width
{ 4, 74 }, // Cutoff
{ 5, 71 }, // Q
{ 6, 73 }, // Attack
{ 7, 109 }, // Decay
{ 8, 110 }, // Sustain
{ 9, 72 } // Release
};
#endif