Add new Kit Mode: "Crossfade (volume)".
Fix start phase bug for frequency LFOs.
Finish up most of SUBsynth LFO UI integration and sound.
Add remaining SUBnote LFO params, and use in DSP code.
Convert SUBnote->Envelopes and LFO raw pointers to unique_ptr.
Make messages better for FreeMode points, esp. with MIDI Learn.
Implement MIDI Learn for envelope freemode points.
Fix channel aftertouch using the wrong parameter as basis.
Update documentation with new Omni feature.
Implement Omni mode support for each part.
WIP
Remove now obsolete UI tooltip, after 4a268ce25ecf557.
Remove problematic conditional program list population.
Fix regression: Instrument not updated on program change in LV2 host.
Fix indentation.
Tighten adherence to LV2 spec by loading programs in place.
Fix inconsistent naming of `inplace` variable.
Several improvements to program list in LV2.
Fix corruption bug in LV2 program names.
Increase LV2 compatibility by supporting "UI" base class methods.
Prevent unlimited unison count on layered sub voices.
Avoid uninitialized error by making sure `interchange` is constructed.
LV2: Handle hosts that only send BPM while rolling.
Take time signature denominator into account when calculating BPM.
LV2: Limit sample perfect alignment to freewheeling.
LV2: Apply frame alignment to tempo messages too, not just MIDI.
LV2: Simplify audio processing loops, no functional change.
Fix incorrect UI update of Kit mode.
Add missing files to LV2 build.
Fix incorrect phase in ADnote Voice parameters window.
Add support for controlling left and right delay separately.
Remove semicolon which triggers warning in pedantic mode.
Switch text2data conversion to use maps instead.
Don't duplicate text data in every source file.
Fix checkSane being called too late on Adsynth Voice window.
Fix inability to restore windows to secondary screens.
Fix incorrect header in state data when saving with LV2.
Fix old LV2 state data not being saved correctly after loading.
legato: Fix incorrect allocation size in cloneArray, leading to crash.
solo: Replace custom timekeeping with `clock_gettime`.
Spin sortResultsThread only when we need to, instead of all the time.
I think one challenge with presets is also that if they are available, they risk overriding other changes that you make to the patch. So they can be quite destructive. If you just quickly select one, perhaps by mistake, you've ruined everything else you did.
Remove unneeded idle thread from LV2 plugin.
Fix missing phase randomness when importing sub voices.
Fix BPM timing issues when audio/midi drivers are mixed.
Implement fallback BPM.
Fix wrong max value for Tube Model in gx_amp LV2 plugins.
LV2 fix: Mixer Audio Send dropdown disabled when it shouldn't be.
Can you run gdb yoshimi COREFILE on your core file, then run the command bt, and post the output?
Fix system effect volume having no effect.
Fix inability to connect less ports than the maximum.
Fix a startup corruption bug in MIDI handling.
Several fixes for Qt 5.
Fix a few warnings.
Fix echo delay not being updated when disabling BPM sync.
Fix several UI update bugs relating to BPM sync.
Fix Rnd wheels percentage display in AlienWah and DynFilter effects.
Fix remainder bug in Synth LFO.
Fix sporadic crash in Echo effect.
Make it possible to adjust Echo delay without losing tail.
Implement BPM synchronization for all Effects.
Fix "staircase LFO" bug in LV2 and Jack engine when BPM sync is enabled.
Fix Equal Temperament variation when voice is being imported.
Fix inconsistent envelope timing under LV2.
Fix crash in legato mode when playing disabled, external voice.
Fix regression in Oscillator Filter list selection.
Fix random LFO amplitude not working when BPM sync is turned on.
Fix live feedback on filters in SUBsynth and PADsynth engines.
Fix segfault in LV2 instance when displaying scaled MIDI learn window.
Small optimization in LFO calculation.
Fix abrupt phase change when changing frequency and only BPM is on.
Make LFO processing work with variable size block buffers (LV2).
Add gitignore file for some common files.
Fix a bug in oscillator size calculation at high buffer sizes.
Implement syncing of LFOs to BPM, either from host or MIDI clock.
Make sure only the required symbols are exported.
Remove unnecessary class label and semicolon causing warnings.
Fix last remaining windows that cannot be moved to a second monitor.
Update autoconf settings to modern requirements.
Regenerate autoconf files.
Handle MIDI buffer overflow from ALSA properly.
Optimization: Flush simultaneous MIDI events together, not separately.
Fix live feedback inside Envelope Free Mode.
Fix several legato issues when both Osc and Mod use sub voice.
Fix detune accumulation bug in SUB synth when altering live voice.
Avoid out-of-bounds phase when moving the phase slider of live voice.
Fix unison phase randomness not being respected in sub voices.
Optimize: Avoid running a full note update when only one part has changed.
Don't treat failure to write to GUI thread as an error.
New algorithm for FM modulation in sub voices with parent modulation.
Fix incorrect application of amplitude for Ring and Morph modulation.
Get rid of dead code.
Clarify some variables names.
Make sure frequency is set correctly for sub voices when playing legato.
Make sure the original voice pointer is assigned correctly.
Fix forgotten assignment of FMSmp for sub voices.
Remove unneeded if block.
Fix race condition in legato with very quick Note Off -> On sequence.
Fix All Notes Off control message not clearing held legato notes.
Fix legato notes not taking parent voice's detuning into account.