Commit graph

110 commits

Author SHA1 Message Date
KIRA Ryouta
4055582671 Fixes an issue that caused stuck notes.
Fixes an issue that caused a crash when using a loop.
2024-03-20 08:59:08 +01:00
Paul Fd
897ddc1a8f Correct a bug with dynamic updates on offed EGs
When offing a voice, the release time is cut to a minimum. Dynamic
updates would reset this to the original value. The commit adds a way to
disable dynamic EG updates and does so when offing the voice.
The engine will also steal the oldest offed voice as a last resort to
hopefully sound the newly played note every time.
2022-05-15 14:13:43 +02:00
Paul Fd
a0b2542ea9 Change a test 2021-12-19 23:21:04 +01:00
Paul Ferrand
b1d7d6b039
Merge branch 'develop' into remember-midistate 2021-11-09 22:16:25 +01:00
Paul Fd
bdc9522662 Add multiple output capabilities to the library and plugins
Add a fast path to effect busses

Get the number of outputs in the Synth

Duplicate effect buses and process outputs separately

Update the API wrappers to handle multichannel processing

Accomodate multiple outputs in the VST plugin

Publish a 8 stereo version of the LV2 plugin

Publish a 8 stereo version of the VST3 plugin

WIP

Remove the duplication of effects

Cleanups

Debugs

Tweaks

Windows free error

Port numbers change between plugin versions

Fix warning

Proper meter backgrounds
2021-11-09 19:40:06 +01:00
Paul Ferrand
4d80c7bcf9 Differentiate between loading and reloading 2021-11-09 15:00:15 +01:00
Paul Fd
cd6bba5378 Reset note and octave offset when resetting the synth 2021-10-14 23:48:23 +02:00
Elmo
06cf476fb3 Add failing test case for staccato off grops 2021-08-17 16:57:07 +03:00
Paul Ferrand
af902ee8b0
Merge pull request #938 from paulfd/veltrack-oncc
veltrack_oncc and veltrack_curvecc
2021-07-11 00:31:02 +02:00
Paul Ferrand
6748c1ed02
Merge pull request #935 from paulfd/pianobook
Store files to load and their offset and defer loading
2021-07-05 23:46:48 +02:00
Paul Fd
559464684a CC Triggers also considers sequences 2021-07-05 11:31:24 +02:00
Paul Fd
66ec8c4423 Move the stateful region value computations in a separate file 2021-07-04 19:32:17 +02:00
Paul Fd
c382b8894e Negative group IDs 2021-06-27 22:35:41 +02:00
Paul Fd
92f741687e Differentiate between releasing and "offed"
The goal is to be able to off voices in their release stage, possibly shortening the release tail
2021-06-25 17:59:48 +02:00
Paul Ferrand
3d6987d47c
Merge pull request #917 from praashie/develop
Fix group cutting behavior with CC triggered samples (such as sustain pedals)
2021-06-23 08:17:20 +02:00
Paul Fd
e4b4dcd655 Add a test case 2021-06-23 00:17:02 +02:00
Paul Ferrand
0c8beed6ca
Merge branch 'develop' into release-sustain 2021-06-23 00:08:15 +02:00
Paul Fd
4defdce04a Reset to default CC values 2021-05-23 17:31:48 +02:00
Paul Fd
8e13b232a3 Add tests 2021-05-23 15:31:59 +02:00
Jean Pierre Cimalando
8551caebf6 Build time optimization: resources 2021-04-25 04:55:30 +02:00
Paul Fd
93f907f0ca Update channel aftertouch API
and version numbers in new APIs
2021-04-15 23:17:46 +02:00
Paul Fd
16a790a33d Small, all zero files are replaced by *silence 2021-04-15 11:02:04 +02:00
Paul Fd
2d6b99e1ab Deprecate the internal oversampling factor
- Removed it completely from the library
- Kept the API for future work
2021-04-14 08:21:12 +02:00
Jean Pierre Cimalando
94be9902c1 Sample quality controls in UI 2021-04-10 20:52:16 +02:00
Paul Fd
cfb9eae68f Test and API doc update w.r.t. ordering
Updated tests mostly to call on `renderBlock()` before testing things like number of active voices and such, in case we buffer/reorder events in the library later on.
2021-04-05 14:13:34 +02:00
Paul Fd
0c1687b5fa Voices can also be offed by note-off events
Also add a check to see if a voice is already released in checkOffGroup,
preventing and endless recursion
2021-04-04 22:24:43 +02:00
Paul Fd
f189292a60 CC events can also off notes
Same as note-on events
2021-04-04 21:54:19 +02:00
Paul Fd
7f02c413c1 Correct the sostenuto/sustain logic
Only release if the received CC is one of the above AND if the region is not a one-shot
2021-04-04 21:23:05 +02:00
Jean Pierre Cimalando
da621bf5ec Move all regional state into Layer 2021-03-26 03:21:20 +01:00
Paul Fd
65ea4a27bf Working state 2021-03-24 13:32:38 +01:00
Paul Fd
8539508e0a WIP on the region state 2021-03-24 13:32:38 +01:00
Paul Fd
ed09e30fcf Missing the delayed release logic for sostenuto 2021-03-24 13:32:38 +01:00
Paul Fd
0a065a392c WIP 2021-03-24 13:32:38 +01:00
Jean Pierre Cimalando
a2cbec8c5e Update tests: increase delays to account ADSR fadeout 2021-03-22 22:25:53 +01:00
Jean Pierre Cimalando
e45dfbc50b Have bit_array as a distinct library 2021-02-23 02:57:28 +01:00
Paul Ferrand
ce1dda54e6
Merge pull request #630 from paulfd/aftertouch
Preliminary work for aftertouch handling
2021-02-12 10:04:07 +01:00
Paul Ferrand
da41ed5076
Merge pull request #632 from paulfd/noexcept-compile-error
Corrected a compile error on gcc 9.3
2021-02-12 10:03:37 +01:00
Paul Fd
293e7a935f WIP 2021-02-11 06:10:10 +01:00
Paul Ferrand
b1f7a4bd66 Change the way the defaults and bounds for the opcodes are handled and read 2021-02-11 06:10:10 +01:00
Paul Ferrand
6b4f535d9c Add tests for extended cc triggers on aftertouch 2021-02-11 06:08:36 +01:00
Paul Ferrand
a7cfb8429c Fixups for MOD 2021-02-08 12:02:26 +01:00
Jean Pierre Cimalando
751e4f96bb Add the reception of CC messages for editor 2021-02-02 20:13:15 +01:00
Jean Pierre Cimalando
aa29e1a411 Add test 2020-11-12 08:17:19 +01:00
Paul Ferrand
1fcfbdbaf7 move getNumActiveVoices in the voiceList 2020-11-01 08:33:18 +01:00
Paul Ferrand
f21864cdc7 Reinsert default hdcc 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
e6ecbc6fcd Make the Region::sampleId shared_ptr 2020-10-21 01:36:09 +02:00
Paul Ferrand
51459c8f2d Updated/added tests 2020-09-23 13:34:01 +02:00
Jean Pierre Cimalando
3cf7536c57 Store the initial values of controllers 2020-09-16 14:45:32 +02:00
Paul Ferrand
f9cf9b35e6 Move NumericId into utility 2020-09-11 17:04:13 +02:00