Commit graph

111 commits

Author SHA1 Message Date
Jean Pierre Cimalando
06755812db Mechanism for case-sensitivity on Unix-style OS, integration code by @paulfd 2020-01-26 20:38:59 +01:00
Paul Ferrand
3abb63639b Less verbose license text 2020-01-25 13:13:07 +01:00
Paul Ferrand
56be9c8b7c Updated licenses and copyright date 2020-01-25 10:13:33 +01:00
Paul Ferrand
cb396ba7a6 NOOP - whitespace 2020-01-24 11:15:11 +01:00
Paul Ferrand
aef8352cfc Added a C++ opaque API for the shared lib 2020-01-23 22:17:06 +01:00
Paul Ferrand
f66aedfc4f Added pitch wheel region activation 2020-01-20 07:07:41 +01:00
Paul Ferrand
a52625044e MSVC warnings/errors for the logger 2020-01-18 16:51:58 +01:00
Paul Ferrand
c7ecaaa060 Logger now works as expected 2020-01-14 17:26:08 +01:00
Paul Ferrand
24bd0d8119 Removed cout logging and put the wait time with load times 2020-01-14 17:26:08 +01:00
Paul Ferrand
2588ec2822 Added logging in callbacks and loading threads 2020-01-14 17:26:08 +01:00
Paul Ferrand
60a08863c6 Handle the stricter iterators of msvc 2020-01-04 16:37:46 +01:00
Paul Ferrand
5cbd21af51 For libraries that do not specify keyswitch ranges
only add regions to the activation list
if it has actual keyswitch opcodes
2019-12-30 00:32:15 +01:00
Paul Ferrand
0d0cf64405 Changed the legato logic
The midistate now counts the active notes instead of it
being per-region
2019-12-30 00:10:20 +01:00
Paul Ferrand
126e4674db One more level of dispatch in the synth
This is in order to be able to trigger note-off regions without killing
all notes of the same group
2019-12-29 23:00:20 +01:00
Paul Ferrand
63cc8ef26e Cosmetics 2019-12-29 21:17:57 +01:00
Paul Ferrand
8dc532b58d Enable looping if unset in the region 2019-12-29 10:50:07 +01:00
Paul Ferrand
3aa341e0aa Only update the loop points if set to defaults 2019-12-29 10:38:15 +01:00
Paul Ferrand
f02f96cad5 Moved the file modification checks in the library
This allows to transparently check the included files
2019-12-27 18:41:26 +01:00
Paul Ferrand
8e39ffc18e Remove the channels from the inner engine 2019-12-23 01:25:20 +01:00
Paul Ferrand
ed7d5369a7 Added note_offset and octave_offset 2019-12-21 18:57:32 +01:00
Paul Ferrand
8bc0a9c2f5 Clear the default path on a new control header 2019-12-21 18:20:04 +01:00
Paul Ferrand
8d2be44c57 Change default_path to handle partial paths 2019-12-21 17:37:09 +01:00
Paul Ferrand
a966020c73 Removed an unnecessary copy 2019-12-18 00:20:09 +01:00
Paul Ferrand
f2c6ac95a7 Support for the reset CC 2019-12-17 23:04:45 +01:00
Paul Ferrand
2317c4dd4b Change assertion for extended CCs 2019-12-17 22:48:31 +01:00
Paul Ferrand
7ea5f4611c Added a maxBlockSize at 8192 2019-12-17 22:48:06 +01:00
Paul Ferrand
393984e3f3 Corrected a bug where ref to freed memory was kept
When changing instrument the unknown opcodes should be clear as they
are string views and not strings.
2019-12-17 21:25:19 +01:00
Paul Ferrand
81cd4db0c4 Adapt the array size to account for possibly extended CCs 2019-12-17 18:50:07 +01:00
Paul Ferrand
1c748e8c94 Change the unsupported control assert to a message 2019-12-17 15:26:23 +01:00
Paul Ferrand
4ea288a533 Moved the ccRange to a ccNumber and ccValue 2019-12-17 14:07:12 +01:00
Paul Ferrand
92254e8c98 Corrected a bug with default_path
The default path was not properly reset when loading a new file
2019-12-15 23:53:11 +01:00
Paul Ferrand
194816ef58 The midi channels should now be 0-based everywhere 2019-12-15 23:48:21 +01:00
Paul Ferrand
4916b94fc3 Corrected the default path logic 2019-12-15 17:48:12 +01:00
Paul Ferrand
a0a6ab1d65 Removed the global and control unicity checks 2019-12-15 16:37:57 +01:00
Paul Ferrand
1eaa2a5c5f Root directory != default path 2019-12-15 16:30:04 +01:00
Paul Ferrand
5dfeb7d6dc Refactor the name for the root directory to act more as a default path 2019-12-15 16:18:36 +01:00
Paul Ferrand
a6e9666f92 Disable the <control> unicity check 2019-12-15 02:43:08 +01:00
Paul Ferrand
a70316c24c Translate the channel for noteOn at the right place 2019-12-15 02:20:58 +01:00
Paul Ferrand
dd14d7a9ae Big refactor of midi state to integrate channels 2019-12-15 02:05:43 +01:00
Paul Ferrand
f5c095ebda Trying to pinpoint the segfault in JALV but it seems it's not in sfizz 2019-12-14 00:00:55 +01:00
Paul Ferrand
722073b670 Don't bother if the voice is not playing 2019-12-13 17:08:34 +01:00
Paul Ferrand
8461d1b4f3 Corrected a stupid assertion... 2019-12-13 13:09:51 +01:00
Paul Ferrand
5e1419ffe4 Dispatch the pitch bends to the midi state for memory 2019-12-13 10:16:07 +01:00
Paul Ferrand
e150c644f1 Dispatch bend messages to the voices 2019-12-09 23:41:06 +01:00
Paul Ferrand
c6a9ba88da API BREAK: MIDI channels are now 0-based 2019-12-08 21:11:54 +01:00
Paul Ferrand
0710f90881 Updated docs and comments 2019-12-08 20:25:22 +01:00
Paul Ferrand
f80da93cfc Proper coding is better; enabling and disabling freewheeling for real. 2019-12-08 18:48:08 +01:00
Paul Ferrand
a5b8bfb6ac Added a freewheeling option to the synth 2019-12-08 18:11:17 +01:00
Paul Ferrand
eb0b84a7a6 Removed debug messages in the hot path 2019-12-08 17:11:12 +01:00
Paul Ferrand
19b475ed94 Move the spsc queues to mpmc queues 2019-12-03 21:30:00 +01:00