Commit Graph
41 Commits
Author SHA1 Message Date
Alex Birch 7dd9bb4c22 fix choice of preset via plugin host (safely updates table from non-message thread) 2019-07-30 21:36:54 +01:00
Alex Birch 84caf499b0 remove unused interfaces and data classes 2019-07-28 23:17:19 +01:00
Alex Birch 39f9d86bd1 remove shared access to fluidsynth instance 2019-07-28 22:51:51 +01:00
Alex Birch d4a060b769 move message-routing, midi-rendering concerns into FluidSynthModel 2019-07-28 22:22:25 +01:00
Alex Birch e772b4bcf0 fix typo that was causing soundfont loading to fail 2019-07-28 20:17:03 +01:00
Alex Birch f87ec7c8e4 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. 2019-07-27 23:04:20 +01:00
Alex Birch 0587e2f68a 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. 2019-07-20 18:49:39 +01:00
Alex Birch 99bb294ece render pills. use cheat to notify that tree of presets/banks has changed. 2019-07-14 19:31:10 +01:00
Alex Birch 11d7296813 try to correctly modify value tree and listen for changes 2019-07-14 17:45:08 +01:00
Alex Birch e1a8df9e8f progress moving table model to be managed by fluidsynth, de-generalizing and decoupling table component 2019-07-13 00:16:35 +01:00
Alex Birch d972a23ce8 move soundFont to its own tag. remove extraneous valueTree. listen directly to relevant part of tree. 2019-07-10 23:13:58 +01:00
Alex Birch 374394330f successfully save/load ui width/height 2019-07-08 23:36:27 +01:00
Alex Birch a990072f1f progress moving uiWidth/Height into audio params, and moving soundFontPath out of SharesParams (for better listener support, and to generalize) 2019-07-07 17:35:31 +01:00
Alex Birch 6d2267e23a prefer references where owner will definitely outlive recipient. replace some fluidsynth raw pointers with smart pointers. 2019-07-07 00:22:47 +01:00
Alex Birch 7582fbcc9e 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) 2019-07-04 23:48:20 +01:00
Alex Birch 82f18ed4a0 successfully notified release slider UI to move 2019-07-03 23:38:56 +01:00
Alex Birch 1fe64e31f7 start setting up a global shared state and listeners 2019-07-02 23:27:56 +01:00
Alex Birch 218beb00e7 encapsulate responsibility of params. add params for ADSR and filter. attempt to sync Slider. not obviously working yet. 2019-07-01 23:55:14 +01:00
Alex Birch e1f8eb9268 fix pitch wheel. make logging debug-only. 2019-07-01 21:15:33 +01:00
Alex Birch 070f0d2a87 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') 2019-06-30 19:25:02 +01:00
Alex Birch b0f10b7940 add aftertouch. correct system reset 2019-06-23 23:17:28 +01:00
Alex Birch 13fd1c60e0 send to fluidsynth: program change, channel pressure, reset, and sysex (whatever that is). also attempt pitchbend. 2019-06-23 23:06:24 +01:00
Alex Birch c8ae1b0e9a send control change events to fluidsynth! 2019-06-23 18:12:25 +01:00
Alex Birch 78e6f71e81 disable (unused) microphone input 2019-06-23 11:13:25 +01:00
Alex Birch 9677dbfc56 set effects channels to 0, since none were used. this fixes the 'no sound' problem 2019-06-22 23:24:16 +01:00
Alex Birch b5a807fe91 make sample rate changeable, probably 2018-04-15 21:32:26 +01:00
Alex Birch a82e7e450b presets and banks saved correctly in audio plugin host. display seems to work also. 2018-04-13 01:14:07 +01:00
Alex Birch 7dc05c72c9 progress in saving/loading presets/banks 2018-04-13 00:40:27 +01:00
Alex Birch e8177d51cd set displayed filepath when loading in state 2018-04-11 00:52:44 +01:00
Alex Birch 114bb2f10a make file picker contruct using whatever soundfont path is available at construction-time. work towards giving Processor access to change its File on load. 2018-04-11 00:08:15 +01:00
Alex Birch 191641ddd1 switch to JUCE Strings so we can copy and compare more easily. make state load attempt to load soundfont and restore window size. 2018-04-10 23:29:32 +01:00
Alex Birch d7b87fe84f change to construction-time reference 2018-04-10 01:20:23 +01:00
Alex Birch 9427a029b9 fixed circular reference 2018-04-10 01:17:50 +01:00
Alex Birch 27b9dfb9df try to hook up soundfont path. perhaps encountering circular dependency on FSModel's inclusion of my plugin processor 2018-04-10 00:51:21 +01:00
Alex Birch 9bbb27d780 copy JUCE demo plugin more closely. worry about coupling later; for now get ownership in right place. update lastUIW/H on resize. 2018-04-10 00:11:22 +01:00
Alex Birch 89b12b132a make a pattern for notifying subscribers about VST state save/load. but it seems to run too early for Editor to benefit. 2018-03-18 23:35:29 +00:00
Alex Birch 289ddff4da rename editor 2018-02-27 23:34:22 +00:00
Alex Birch f89da1834c audio plugin host appears to invoke initialise twice. use singleton fluidsynth model now to survive that. also, clear midi output to make VST3 stop complaining 2018-02-27 23:33:19 +00:00
Alex Birch c129ce78a0 rename main class 2018-02-27 00:39:50 +00:00
Alex Birch dc16a231fe add lazarus source 2018-02-27 00:25:20 +00:00
Alex Birch 65303fd885 initial output 2018-02-27 00:17:27 +00:00