Robbert van der Helm
6e89d3737b
Change the scaling on Safety Limiter's threshold
...
With the addition of negative values the linear scale doesn't work
anymore.
2022-07-22 22:49:59 +02:00
Robbert van der Helm
f5459e95a5
Fix typo in Crossover description
...
Closes #19 .
2022-07-22 18:46:53 +02:00
Robbert van der Helm
2c9945db79
Allow negative thresholds for Safety Limiter
2022-07-20 19:45:29 +02:00
Robbert van der Helm
8e2650e43a
Merge pull request #15 from AmaiKinono/typo
...
Fix typos in the gain example
2022-07-18 23:38:03 +02:00
AmaiKinono
00fa9e9703
Fix typos in the gain example
2022-07-17 00:51:01 +08:00
Robbert van der Helm
ba7b5a3b32
Fix examples for out of order events
...
This would be a host bug, but in theory CLAP hosts could provide out of
order events this way.
2022-07-14 12:50:16 +02:00
Robbert van der Helm
0469bdf806
Persist the editor states for all plugins
2022-07-13 23:16:54 +02:00
Robbert van der Helm
2a1abf10e1
Fix typo in Diopser readme
2022-07-13 23:16:54 +02:00
Robbert van der Helm
c24d4062e4
Add an attack-release amp envelope to PolyModSynth
2022-07-06 20:49:21 +02:00
Robbert van der Helm
1510cbb884
Remove assertion failure on polymod voice mismatch
2022-07-06 19:30:48 +02:00
Robbert van der Helm
35e584b3c8
Add a poly mod gain parameter to PolyModSynth
2022-07-06 19:18:49 +02:00
Robbert van der Helm
097d6c9fc4
Terminate all matches voices in PolyModSynth
...
This is needed for a single NoteOff followed by multiple NoteOns for the
same key/channel with different note IDs.
2022-07-06 18:03:53 +02:00
Robbert van der Helm
95b4d9785e
Remove the MIDI output from PolyModSynth
2022-07-06 17:16:19 +02:00
Robbert van der Helm
efc32f3944
Add a basic aliasing sawtooth wave to PolyModSynth
2022-07-06 17:16:19 +02:00
Robbert van der Helm
4ad4f8f76d
Add more basic fields for PolyModSynth
2022-07-06 17:16:19 +02:00
Robbert van der Helm
c36f29e3ca
Add basic voice management for PolyModSynth
...
This of course still misses important things like amplitude envelopes,
so notes will never end on their own. Those will be added as part of
audio processing.
2022-07-06 17:16:19 +02:00
Robbert van der Helm
69aa8433fa
Configure the voice capacity for PolyModSynth
2022-07-06 14:40:27 +02:00
Robbert van der Helm
89b2d0a66c
Add a stub for poly_mod_synth
...
This will serve as an example implementation for polyphonic modulation.
2022-07-06 13:55:59 +02:00
Robbert van der Helm
2ac5eaadf8
Handle choke events in MidiInverter
2022-07-06 13:41:20 +02:00
Robbert van der Helm
a2f8a9bebf
Add voice ID fields for all non-MIDI note events
...
This will be useful when adding polyphonic modulation.
2022-07-04 18:31:59 +02:00
Robbert van der Helm
7cd7294b22
Make CLAP descriptions and special URLs optional
...
This closes #14 .
2022-07-04 12:46:34 +02:00
Robbert van der Helm
883b43b6a7
Support string->value conversions for Diopser's most important parameter
2022-07-02 00:45:01 +02:00
Robbert van der Helm
29e9d620ca
Fix the sine test tone CLAP category
2022-06-29 01:32:39 +02:00
sonata-chen
a284ba020f
fix typo
2022-06-28 19:42:46 +08:00
Robbert van der Helm
b7bfa5f18e
Update Vizia
...
With two months of breaking changes, hooray! But everything should still
work after some bug squashing in Vizia.
2022-06-18 01:59:57 +02:00
Robbert van der Helm
abe7fec0db
Fix channel layout check in sine example
2022-06-15 00:10:27 +02:00
Robbert van der Helm
aa60d616fe
Handle infinite and NaN values in Safety Limiter
2022-06-13 18:47:48 +02:00
Robbert van der Helm
6e37353c67
Link to the correct CI pipeline for builds
2022-06-10 15:59:18 +02:00
Robbert van der Helm
e0fde8b891
Fix very important typo
2022-06-10 01:26:14 +02:00
Robbert van der Helm
014c183eab
Allocate FirCrossover data on the heap
...
Windows has tiny stack sizes and it doesn't seem to like this.
2022-06-08 02:09:11 +02:00
Robbert van der Helm
5a6ec5595b
Remove duplicate biquad module
...
This was moved elsewhere, but I guess another copy got saved and I
didn't notice.
2022-06-08 00:11:46 +02:00
Robbert van der Helm
92a3acdd0a
Mention the linear-phase mode for Crossover
2022-06-07 21:39:32 +02:00
Robbert van der Helm
b389268168
Fix FFT FIR crossover latency calculation
2022-06-07 20:46:23 +02:00
Robbert van der Helm
c23cf8e7ee
Announce zero latency when switching back to IIR
2022-06-07 20:36:02 +02:00
Robbert van der Helm
469e47e8bf
Drop experimental label on FIR crossover
2022-06-07 20:32:55 +02:00
Robbert van der Helm
5a51dce00d
Rework FIR crossover to use FFT convolution
2022-06-07 20:32:27 +02:00
Robbert van der Helm
2c48ceb392
Refactor IIR crossover process loop, disable FIR
...
The FIR crossover will need to use FFT convolution, so it can't use the
same loop. Because of that we'll need to rework the FIR crossover to not
use channel SIMD and to work on channel slices instead.
2022-06-07 16:13:39 +02:00
Robbert van der Helm
7e3dfe904d
Parameterize FirCoefficients over the kernel size
2022-06-07 15:32:29 +02:00
Robbert van der Helm
b32cd27e8c
Move FIR filters to their own module
2022-06-07 15:19:18 +02:00
Robbert van der Helm
ac5796ee59
Move the Crossover biquad definition
2022-06-07 15:10:55 +02:00
Robbert van der Helm
4fad759d06
Mark the linear-phase LR24 crossover experimental
...
The low frequency performance is too poor at this filter size and the
DSP load impact is too high. This needs to be implemented using FFT
convolution instead.
2022-06-07 14:19:29 +02:00
Robbert van der Helm
50317baba2
Fix normalization in biquad->LP FIR conversion
2022-06-07 14:19:29 +02:00
Robbert van der Helm
dd18c7a08a
Fix classic off by one error
2022-06-07 14:19:29 +02:00
Robbert van der Helm
8d70f172c3
Add a linear-phase FIR LR24 crossover option
2022-06-07 14:19:29 +02:00
Robbert van der Helm
73919b6805
Add a process function for the FIR crossover
2022-06-07 14:19:29 +02:00
Robbert van der Helm
43980ec459
Add the function to design the FIR band filters
...
Using the previously added biquad->linear phase FIR conversion function.
2022-06-07 14:19:29 +02:00
Robbert van der Helm
f4b3999916
Rename linear-phase low-pass FIR design function
2022-06-07 14:19:29 +02:00
Robbert van der Helm
a1fe3b157b
Simplify biquad -> linear-phase FIR conversion
2022-06-07 14:19:29 +02:00
Robbert van der Helm
de13f8c42a
Add part of an FIR crossover
...
This includes an algorithm that efficiently converts biquad coefficients
to a linear-phase FIR filter kernel.
2022-06-07 14:19:29 +02:00
Robbert van der Helm
78caa0f78d
Move Q constant to the biquad module
2022-06-07 14:19:29 +02:00