Jean Pierre Cimalando
e31bf1381f
Provide the interpolated beat position
2020-11-15 11:23:02 +01:00
Jean Pierre Cimalando
04fdfc4de2
Remove old clock code which suffers rounding errors
2020-11-15 01:00:06 +01:00
Jean Pierre Cimalando
baf228802b
Add the beat clock
2020-11-15 00:42:13 +01:00
Jean Pierre Cimalando
dcc7ac0472
Add new alias: bendstep
2020-11-12 10:24:29 +01:00
Jean Pierre Cimalando
95d3343341
Add API to process CC events received by automation
2020-11-12 08:04:55 +01:00
Jean Pierre Cimalando
d74bcd140f
Cache the set of used CCs for quick access
2020-11-11 14:24:14 +01:00
Jean Pierre Cimalando
e02a30f56c
Rename some internal functions related to used CCs
2020-11-11 14:04:06 +01:00
Jean Pierre Cimalando
425889c949
Add test
2020-11-09 14:47:12 +01:00
Jean Pierre Cimalando
9b044a4eb9
Skip message processing if no callback
2020-11-09 14:13:54 +01:00
Jean Pierre Cimalando
e1c607e28a
Type-safe OSC message sending
2020-11-09 14:12:32 +01:00
Paul Ferrand
bb5cd652f5
Move the Synth p-impl to the header file SynthPrivate
2020-11-09 11:34:27 +01:00
Jean Pierre Cimalando
92b01eecb2
Fix the hashing function for OSC dispatch
2020-11-09 08:22:01 +01:00
Jean Pierre Cimalando
722225f9f2
Add OSC and plugin-side communication
2020-11-05 05:48:24 +01:00
Jean Pierre Cimalando
65ca3adf65
Allow sfizz library targets to expose st_audiofile publicly
...
This fixes the problems with programs which link sfizz internal
API: the tests, benchmarks, demos. The MSVC comfiguration would
fail to fail "sndfile.h" while building the tests.
2020-11-04 10:17:04 +01:00
Jean Pierre Cimalando
0bcf626786
Fix AudioReader::getInstrument under libsndfile
2020-11-04 08:55:34 +01:00
Jean Pierre Cimalando
cda079eef8
Fix the sndfile conditional not well handled in demo programs
...
The conditional ST_AUDIO_FILE_USE_SNDFILE appears in private headers,
which are used by some demo programs. Linking to sfizz does not inherit
this flag, and FileInstrument gets wrong values for loop constants.
2020-11-04 08:45:57 +01:00
Jean Pierre Cimalando
d8e8a46729
Fix a mismatch of struct/class
2020-11-01 10:26:53 +01:00
Paul Ferrand
faadb70b02
Include cleanups
2020-11-01 09:10:53 +01:00
Paul Ferrand
cfae639d5f
Final cleanups
2020-11-01 08:33:18 +01:00
Paul Ferrand
81a4ed22eb
Final refactor into VoiceManager
...
Cleanups..
2020-11-01 08:33:18 +01:00
Paul Ferrand
1b87fa3764
Move even more stuff in the voiceList_
2020-11-01 08:33:18 +01:00
Paul Ferrand
4aeb12446e
move findFreeVoice to the voiceList
2020-11-01 08:33:18 +01:00
Paul Ferrand
1fcfbdbaf7
move getNumActiveVoices in the voiceList
2020-11-01 08:33:18 +01:00
Paul Ferrand
ed151880d9
Move the polyphony logic in the voice list and refactor
2020-11-01 08:33:18 +01:00
Paul Ferrand
0f7fadc7a9
Cave in for clang-tidy
2020-11-01 08:33:18 +01:00
Paul Ferrand
13ff2350d3
Move the playing attack voice method in the voiceList
2020-11-01 08:33:18 +01:00
Paul Ferrand
887f475317
Cosmetics
2020-11-01 08:33:18 +01:00
Paul Ferrand
f21864cdc7
Reinsert default hdcc
2020-11-01 08:33:18 +01:00
Paul Ferrand
77e3562f2b
Mark moves noexcept and remove the assert
2020-11-01 08:33:18 +01:00
Paul Ferrand
3214211a06
Refactor of Synth and Voice into a pimpl pattern
2020-11-01 08:33:18 +01:00
Jean Pierre Cimalando
7bde1e32ec
Process WAV chunk padding correctly
2020-11-01 04:34:09 +01:00
Jean Pierre Cimalando
0825f034c2
Support the AIFF instrument
2020-10-31 15:32:58 +01:00
JP Cimalando
401e0a4e21
Merge pull request #482 from jpcima/st-audiofile
...
Audio file reader without sndfile
2020-10-28 17:08:00 +01:00
Jean Pierre Cimalando
d5aad58366
Eliminate the strict requirement of libsndfile
2020-10-28 16:34:52 +01:00
Paul Ferrand
8dd169c9d2
Handle sw_default in <region>
2020-10-28 16:12:42 +01:00
Paul Ferrand
a654458c55
Merge pull request #528 from paulfd/free-running-flex-ampeg
...
Let the flex eg free-run when set as the ampeg
2020-10-28 10:38:24 +01:00
Paul Ferrand
84019a00e4
Let the flex eg free-run when set as the ampeg
2020-10-28 09:17:10 +01:00
Paul Ferrand
74a676b493
sw_default with sw_lolast and sw_hilast
2020-10-27 15:11:51 +01:00
Paul Ferrand
5ea4b876df
Add sw_lolast/sw_hilast
2020-10-27 14:50:31 +01:00
Paul Ferrand
9c3de9dadd
Rename for consistency
2020-10-27 11:19:12 +01:00
Paul Ferrand
6bfc9074d7
Move the keyswitch logic in the synth rather than the regions
2020-10-27 11:04:25 +01:00
Paul Ferrand
c27cb69a83
Build a set of "effective" keyswitches anduse it instead of sw_lokey/sw_hikey
2020-10-27 10:00:24 +01:00
JP Cimalando
6a66d2256f
Merge pull request #509 from jpcima/auto-pointers
...
Add * on auto pointers everywhere
2020-10-23 23:30:15 +02:00
Paul Ferrand
354b68fc9f
Remove the callback mutex for the clear method
...
Take it globally in the loading functions
2020-10-23 23:07:05 +02:00
Jean Pierre Cimalando
969bae15e1
Remove the assertion on a valid code path of the FilePool
2020-10-23 20:40:33 +02:00
Paul Ferrand
1d2c3a4244
Upon clearing the file pool, clear the last used files and garbage queue
...
I also added an early exit with an assertion to catch unintended behavior
2020-10-23 14:47:10 +02:00
Paul Ferrand
a372d40c48
Use a single mutex for both the garbage and last used file data structures
...
They're more or less jointly updated anyway by the garbage collection thread
2020-10-23 14:46:18 +02:00
Paul Ferrand
49b66c2ba9
Clear the loading queues before changing the file
2020-10-23 14:44:20 +02:00
Jean Pierre Cimalando
10565e99be
Make it a tiny bit more efficient
2020-10-21 04:00:52 +02:00
Jean Pierre Cimalando
0e24daf26d
Auto-cleaning file pool
2020-10-21 01:51:38 +02:00