guard against out-of-bounds when looking up what text to write into each row of preset table (which for some reason didn't cause any problems on macOS)
Birch-san
2019-08-12 14:58:20 +0100
add license for libgcc_s_dw2-1.dll (this is a runtime library for gcc). libgmodule should be covered by the libglib license anyway.
Birch-san
2019-08-03 17:24:08 +0100
guess we shouldn't take the easy route of defaulting to 0, since the other parts of fluidsynthmodel are diligent enough to grab their initial values from the value tree (even if it's all-but-certain that the value tree won't have been inited yet)
Alex Birch
2019-07-30 21:52:44 +0100
remove some unused methods on FluidSynthModel. make FilePicker update displayed text upon load. read and write into XML just the bits that we need, and take advantage of attribute names' being indexed. take more care in setting sfont_id.
Alex Birch
2019-07-27 23:04:20 +0100
keyboard left/right triggers pill button click (as it used to). pills now send you to first valid preset in bank (as they used to).
Alex Birch
2019-07-21 16:25:22 +0100
pills no longer listen to valueTree; I didn't like the idea of having up to 128 listeners when the parent could do dispatch with just one listener
Alex Birch
2019-07-21 15:04:19 +0100
decided against maintaining a separate 'presets' property in the ValueTree, since this is a view modelling concern that only the table cares about. instead, store as a tree. let the table component be responsible for maintaining a view over a subset of presets, instead of bothering the ValueTree with this. this is an effort to dial back the use of the store, and prefer to use it where it provides the most value rather than using it for everything.
Alex Birch
2019-07-20 18:49:39 +0100
separate functions to refresh presets, banks. update list of presets when bank changes. filter presets list by current bank.
Alex Birch
2019-07-15 21:28:35 +0100
progress moving uiWidth/Height into audio params, and moving soundFontPath out of SharesParams (for better listener support, and to generalize)
Alex Birch
2019-07-07 17:35:31 +0100
prefer references where owner will definitely outlive recipient. replace some fluidsynth raw pointers with smart pointers.
Alex Birch
2019-07-07 00:22:47 +0100
sliders control fluidsynth when user interacts with them, but also update their position to reflect incoming MIDI messages, without attempting to control fluidsynth (since audio processor will have already done so)
Alex Birch
2019-07-04 23:48:20 +0100
encapsulate responsibility of params. add params for ADSR and filter. attempt to sync Slider. not obviously working yet.
Alex Birch
2019-07-01 23:55:14 +0100
add sustain modulator. increase range of release to cover all positives (though there is still a range of negatives that are duplicated). set all sound controller CCs to 0. this breaks MIDI spec (64 = middle = no change) to accommodate soundfont spec (middle of range on envelope generators is far from 'no change')
Alex Birch
2019-06-30 19:25:02 +0100
send to fluidsynth: program change, channel pressure, reset, and sysex (whatever that is). also attempt pitchbend.
Alex Birch
2019-06-23 23:06:12 +0100
upgrade to JUCE 5.4.3. Remove (probably) unused JUCE modules. Remove VST2 target (it's been end-of-life'd by Steinberg and by JUCE)
Alex Birch
2019-06-22 20:41:38 +0100
update to master version of fluidsynth to get more public API. fix make_portable.sh issue with copying same file multiple times into same place (you would clash with a previous attempt, which was not yet writeable)
Alex Birch
2018-06-17 17:18:03 +0100
built fluidsynth commit v2.0.0.beta1 like so: 'cd fluidsynth; mkdir -p build; cd build; cmake -Denable-framework=OFF -Denable-portaudio=OFF -Denable-libsndfile=ON ..; make' and then made it portable using make_portable.sh: https://gist.github.com/Birch-san/e84cfa3b93ffa104af2bd9a047d14109
Alex Birch
2018-06-17 15:51:44 +0100