Add midi learn

This commit is contained in:
Roland Rabien 2026-01-10 13:47:20 -08:00
commit e93852981a
6 changed files with 19 additions and 6 deletions

View file

@ -1,7 +1,10 @@
1.0.24
- Added MIDI learn
1.0.23:
- Fixed crash
1.0.22:
1.0.22:
- Added microtonal support
1.0.21:
@ -151,7 +154,7 @@
0.0.8:
- Added UI for mod matrix
- Added UI for mod matrix
- Fixed poly params modulated by mono source not showing their live value
0.0.7:

View file

@ -1 +1 @@
1.0.23
1.0.24

@ -1 +1 @@
Subproject commit c2ca60094fdc0488dd3a487b76986096c8b1078d
Subproject commit 0e6c97989c4b506f75fed6e30fe088fccb6ef872

@ -1 +1 @@
Subproject commit 258203706cdfc1357effe8cc752672b793cea37d
Subproject commit bc7339fe07ca1ef7d4708cb6a124932de4af3719

View file

@ -176,6 +176,7 @@ public:
juce::PopupMenu m;
m.setLookAndFeel (&getLookAndFeel());
for (auto itr : menus)
m.addSubMenu (itr.first, itr.second);

View file

@ -508,8 +508,15 @@ void extractWavetables()
#endif
//==============================================================================
static gin::ProcessorOptions createProcessorOptions()
{
gin::ProcessorOptions opts;
opts.hasMidiLearn = true;
return opts;
}
WavetableAudioProcessor::WavetableAudioProcessor()
: gin::Processor (juce::AudioProcessor::BusesProperties().withOutput ("Output", juce::AudioChannelSet::stereo(), true), false),
: gin::Processor (juce::AudioProcessor::BusesProperties().withOutput ("Output", juce::AudioChannelSet::stereo(), true), false, createProcessorOptions()),
bitcrusher (FXBaseCallback ([this] { return gin::Processor::getSampleRate(); })),
fireAmp (FXBaseCallback ([this] { return gin::Processor::getSampleRate(); })),
grindAmp (FXBaseCallback ([this] { return gin::Processor::getSampleRate(); }))
@ -847,6 +854,8 @@ void WavetableAudioProcessor::processBlock (juce::AudioBuffer<float>& buffer, ju
if (buffer.getNumChannels() != 2)
return;
midiLearn->processBlock (midi, buffer.getNumSamples());
if (mtsClient)
for (auto itr : midi)
if (auto m = itr.getMessage(); m.isSysEx())