Jean Pierre Cimalando
6895d44cec
parser: make opcode values stop at the '<' character
2020-09-25 04:08:57 +02:00
JP Cimalando
2b790f4efd
Merge pull request #434 from jpcima/oscillators-detunecc
...
Add oscillator_detune_oncc
2020-09-23 17:42:56 +02:00
Paul Ferrand
51459c8f2d
Updated/added tests
2020-09-23 13:34:01 +02:00
Jean Pierre Cimalando
bd6a5af035
Update tests for new keycenter behavior
2020-09-22 20:39:17 +02:00
Jean Pierre Cimalando
fdfcee78f6
Make sure the test files are not processed as wavetables
2020-09-22 20:33:57 +02:00
Jean Pierre Cimalando
e310a4efe9
Support overriding with key opcode
2020-09-22 20:30:42 +02:00
Jean Pierre Cimalando
ffb8e2c52a
Add tests
2020-09-22 20:30:38 +02:00
Jean Pierre Cimalando
5c1931de2c
Add oscillator_detune_oncc
2020-09-22 18:26:49 +02:00
Jean Pierre Cimalando
85883481c9
Auto-enable oscillator=on when a wavetable is provided
2020-09-22 16:12:42 +02:00
Paul Ferrand
8012829000
Merge pull request #424 from paulfd/eg-lfo-filters-eq
...
EGs and LFOs sources for the filters and EQs
2020-09-21 13:14:12 +02:00
Paul Ferrand
61146448a1
Merge pull request #426 from paulfd/arm-pan-tweaks
...
Arm pan tweaks
2020-09-20 21:58:17 +02:00
Paul Ferrand
3bac650498
Add a NEON codepath for panning and width
2020-09-20 19:50:19 +01:00
Paul Ferrand
83cd4b6317
EG and LFO sources for the filters and EQs
2020-09-18 01:03:45 +02:00
Paul Ferrand
fd8b00b9a1
Update tests and connect all cc opcodes
2020-09-16 16:28:49 +02:00
Paul Ferrand
f07000dd88
Remove the cc maps
2020-09-16 16:09:59 +02:00
Jean Pierre Cimalando
3cf7536c57
Store the initial values of controllers
2020-09-16 14:45:32 +02:00
JP Cimalando
f0dd146361
Merge pull request #388 from jpcima/flex-eg
...
Add the Flex EG
2020-09-16 12:02:42 +02:00
Jean Pierre Cimalando
169ba940c9
Print the modulation key more compactly
2020-09-16 11:55:25 +02:00
Jean Pierre Cimalando
3ca11652dc
Add tests
2020-09-16 11:37:55 +02:00
Paul Ferrand
f317e2f6b9
Add flex eg tests, move test helpers around, and add a more verbose mod matrix graph output
2020-09-16 09:03:39 +02:00
Paul Ferrand
19540e821a
Add a circular test case for the curve
2020-09-15 22:23:42 +02:00
Paul Ferrand
f9cf9b35e6
Move NumericId into utility
2020-09-11 17:04:13 +02:00
JP Cimalando
ed6c9557f7
Merge pull request #413 from paulfd/choking-across-cc-switches
...
Regions on the same note but with different groups do get muted
2020-09-10 08:06:25 +02:00
Paul Ferrand
1fcd3077ae
Correct the condition for the envelope to free-run
2020-09-09 15:23:15 +02:00
Paul Ferrand
d2e8c0548f
Regions on the same note but with different groups do get muted
...
This happens e.g. with keyswitches. This behavior is slightly different from Cakewalk's apparently.
2020-09-09 13:06:24 +02:00
Paul Ferrand
afadb171a4
Merge pull request #393 from paulfd/polyphony-cleanups
...
Polyphony cleanups
2020-09-09 10:29:09 +02:00
Paul Ferrand
48b8011354
Add SIMD helpers targeted for the mod matrix and plug them in
...
On my machine now the previous code path was probably vectorized
but this way we have the structure to handle platforms where it's not
2020-09-08 23:00:19 +02:00
Paul Ferrand
863a08c421
Use Cakewalk/RGC behavior for self-choking notes
...
Basically if group=off_by, a note will not choke other voices with the same note number
2020-09-07 23:18:02 +02:00
Paul Ferrand
bb621282c9
Note polyphony tests and bugs
2020-09-07 22:25:29 +02:00
Paul Ferrand
fa37669e08
Add checks for release voices and note_polyphony
2020-09-07 22:25:29 +02:00
Paul Ferrand
dda10e8530
Use a trigger event type instead of passing 3 parameters
2020-09-07 22:25:29 +02:00
Jean Pierre Cimalando
0c8a57e843
Enable fast-math only on sfizz DSP targets
2020-09-02 00:36:49 +02:00
Paul Ferrand
81169b8209
Merge pull request #384 from paulfd/simpler-envelope-follower
...
Simpler power/envelope follower
2020-08-27 17:03:18 +02:00
Jean Pierre Cimalando
a5c72375a9
Move the div operation out of the SIMD helper
2020-08-27 08:46:12 +02:00
Jean Pierre Cimalando
a71c1eb0f3
Allow modulations to trigger at a frame-accurate instant (LFO)
2020-08-21 14:39:55 +02:00
JP Cimalando
68712140d6
Merge pull request #385 from paulfd/offset-ccs
...
offset_cc were not taken into account
2020-08-21 00:54:03 +02:00
Paul Ferrand
c61ab364af
Merge pull request #380 from paulfd/end-disabling-regions
...
End disabling regions
2020-08-21 00:25:30 +02:00
Paul Ferrand
d649cec10b
offset_cc were not taken into account
2020-08-21 00:24:22 +02:00
Paul Ferrand
f6f1e68f18
Sustain tweaks:
...
- Separate the sustain value from the sustain threshold after which the envelope goes from decay to sustain
- If the sustain value is set to 0, the envelope is freerunning
2020-08-19 19:13:50 +02:00
Paul Ferrand
66bdaafbe7
Only override the loop mode if unset
2020-08-19 12:50:02 +02:00
Paul Ferrand
1cf5e8d571
Set loop_mode to one_shot for release regions
2020-08-19 12:36:07 +02:00
Paul Ferrand
fae0cda971
Correct a compilation woe
2020-08-19 12:12:48 +02:00
Paul Ferrand
17568510ac
Disable with sampleEnd == 0
2020-08-19 12:12:48 +02:00
Paul Ferrand
cef44cbdb6
Disabled regions don't need to take up polyphony
...
The tests were a bit flaky and the did not seem justified by any behavior in e.g. ARIA
The new tests cover a similar situation which is validated in sforzando
2020-08-19 11:08:18 +02:00
Paul Ferrand
5c61298f08
A region is disabled by end=-1
2020-08-19 11:07:12 +02:00
Paul Ferrand
80aee5a9cd
Add a helper for playing voices
2020-08-19 11:07:12 +02:00
Jean Pierre Cimalando
f217c90619
Update tests
2020-08-19 07:18:36 +02:00
JP Cimalando
cc40e7ad3d
Merge pull request #377 from paulfd/sustaincc-fixes
...
The sustain cc is still a CC and has to be registered in the regions
2020-08-19 03:57:58 +02:00
JP Cimalando
d442812604
Merge pull request #378 from paulfd/loop-start-0
...
Explicitely signify if a loop if present
2020-08-19 03:44:23 +02:00
Paul Ferrand
42da5ff810
Merge pull request #358 from paulfd/simd-clamp-and-within
...
Additional SIMD helpers
2020-08-19 01:02:04 +02:00