Commit Graph

62 Commits

Author SHA1 Message Date
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
d8ce91e666
successfully setting banks and presets 2019-07-15 22:12:07 +01:00
Alex Birch
fc1d45d77c
separate functions to refresh presets, banks. update list of presets when bank changes. filter presets list by current bank. 2019-07-15 21:28:35 +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
8c1be957fe
decoupling achieved. compiles. doesn't immediately explode. but neither banks nor presets visible. 2019-07-14 17:22:36 +01:00
Alex Birch
58574425f3
further progress making TableComponent use valueTree for its model. begin doing the same for Pills. 2019-07-14 14:19:27 +01:00
Alex Birch
4140b3b85b
progress integrating table with store, decoupling from fluidsynth model 2019-07-13 22:37:26 +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
e02188b7f4
start hooking up fileChooser to use valueTree instead of coupling to fluidSynth model 2019-07-10 23:52:15 +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
568495ea74
picking soundfont no longer crashes synth 2019-07-09 20:44:26 +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
23c0a2dd37
make sliders send MIDI CC to FluidSynth. Make name column in table wider. Make synth wider. 2019-06-30 21:40:24 +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
1d7fdc6860
put sliders next to table 2019-06-30 11:39:39 +01:00
Alex Birch
a7d375a2bb
sliders in groups 2019-06-30 10:59:07 +01:00
Alex Birch
542994d672
try to find the ranges of these filters, and curves that give access to the useful parts 2019-06-29 22:10:28 +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
bcf0d7dd7d
envelope, filter cutoff/resonance mapped to default modulators (with semi-random magic numbers) 2019-06-23 19:40:36 +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
cbfae52348
add privacy notice 2019-06-23 00:22:05 +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
06691aa744
update XCode project from Projucer (e.g. for C++17, and to put VST SDKs on include path) 2019-06-22 22:59:28 +01:00
Alex Birch
370d599f62
failed attempt to add a particular modulator 2019-06-22 19:07:10 +01:00
Alex Birch
6c96994946
update fluidsynth2 to commit b6b6931. fixes 'no audio' https://github.com/FluidSynth/fluidsynth/issues/399 2019-06-22 19:07:10 +01:00
Alex Birch
95f0f2b35b
repaint table when changing banks 2019-06-22 19:07:10 +01:00
Alex Birch
f220cbb6e2
rewrite source to compile against new public APIs of FluidSynth 2 2019-06-22 19:07:09 +01:00
Birch-san
02e43baca9
fix another not-include 2018-06-14 00:47:06 +01:00
Birch-san
559337564d
fix include 2018-06-14 00:43:17 +01:00
Alex Birch
6e88039085
we don't need an audio driver anyway 2018-04-17 22:10:01 +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
649a1fcf36
looks like we do not listen to our own events, so move that elsewhere 2018-04-10 01:28:05 +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