1
0
Fork 0
Commit graph

605 commits

Author SHA1 Message Date
Robbert van der Helm
78caa0f78d Move Q constant to the biquad module 2022-06-07 14:19:29 +02:00
Robbert van der Helm
06f5048b0b Add a crossover type parameter 2022-06-07 14:19:29 +02:00
Robbert van der Helm
694996dcf4 Move Crossover biquads to their own module 2022-06-07 14:19:29 +02:00
Robbert van der Helm
f7bfbb8d95 Add stable IDs to the plugin's enum parameters
Existing instances will automatically be upgraded to these IDs when the
instance gets saved. This makes it possible to rearrange things later
when needed.
2022-06-04 13:36:17 +02:00
Robbert van der Helm
d72bd56fe7 Change the limiter recommendation on Diopser
And explain what can happen and why when you start sweeping parameters
around.
2022-06-03 18:22:23 +02:00
Robbert van der Helm
82565592fa Mention Safety Limiter in Diopser readme 2022-06-02 16:34:25 +02:00
Robbert van der Helm
24140494a2 Add a screenshot to the Crossover readme 2022-06-02 15:59:09 +02:00
Robbert van der Helm
96fe176d53 Remove Crossover filter monotonicity check 2022-06-02 14:40:12 +02:00
Robbert van der Helm
330d6d1359 Fix phase response in the Crossover plugin
Didn't have time to do this, now I do. This nudges the phases from the
lower bands to match the higher bands, making the frequency response
magnitudes sum to unity again.
2022-06-02 14:30:48 +02:00
Robbert van der Helm
bfc472e49b Introduce a new enum for CLAP features
Based on the new CLAP 0.26 clap-features.h.
2022-06-02 01:16:30 +02:00
Robbert van der Helm
6996fdaed1 Update features names for CLAP 0.26 2022-06-02 00:52:13 +02:00
Robbert van der Helm
c9332d332b Somewhat mitigate phasing in crossovers 2022-05-29 16:57:39 +02:00
Robbert van der Helm
ebe2b24146 Add the actual crossovers to the Crossover plugin
That feeling when you write a whole bunch of garbage in one without
testing it go and it actually works.
2022-05-29 16:21:36 +02:00
Robbert van der Helm
33120ecfe7 Add biquad low- and high pass filters
We'll use these for LR24 crossovers.
2022-05-29 14:54:40 +02:00
Robbert van der Helm
99ba25d1bd Enable simd for the Crossover plugin 2022-05-29 14:54:28 +02:00
Robbert van der Helm
c83fb2863e Clear the main output in Crossover 2022-05-29 14:43:15 +02:00
Robbert van der Helm
c7f5cd1cec Fix NaNs in negative out of bounds skewed params
This would result in a NaN, and the clamping wouldn't catch that.
2022-05-29 14:33:16 +02:00
Robbert van der Helm
c1d72f0e80 Add parameters for the Crossover plugin 2022-05-29 14:25:48 +02:00
Robbert van der Helm
87813fb9dc Add an empty crossover plugin 2022-05-29 13:42:45 +02:00
Robbert van der Helm
ee900f74c2 Support auxiliary inputs and outputs for CLAP
This does not yet work for VST3. You'll always get empty slices there.
2022-05-27 02:30:57 +02:00
Robbert van der Helm
b2e6bd5515 Create a separate InitContext
Only a couple of these functions would be needed during initialization.
In the next couple commits ProcessContext will get a way to access
auxiliary IO, so this really had to be separated.
2022-05-27 01:17:15 +02:00
Robbert van der Helm
c555aff768 Fix plugin names in readmes
Closes #7.
2022-05-26 13:32:30 +02:00
Robbert van der Helm
7fce56d863 Actually add the SOS morse code to Safety Limiter 2022-05-26 01:07:19 +02:00
Robbert van der Helm
df30662071 Add an equal power fade to Safety Limiter 2022-05-26 00:47:41 +02:00
Robbert van der Helm
9ab5af0027 Add a fadeout start to Safety Limiter 2022-05-25 00:59:46 +02:00
Robbert van der Helm
3e5393b236 Make the Safety Limiter threshold automatable
Bitwig doesn't like it if it isn't automatable.
2022-05-25 00:44:01 +02:00
Robbert van der Helm
c07942cfc3 Reset Safety Limiter properly 2022-05-25 00:43:19 +02:00
Robbert van der Helm
3ba2a0807b Make Safety Limiter danker 2022-05-25 00:38:02 +02:00
Robbert van der Helm
96dc409a0f Add a sine wave to Safety Limiter
This needs to be upgraded to full Morse status
2022-05-25 00:35:30 +02:00
Robbert van der Helm
ccb8422a9c Add a morse-less version of Safety Limiter 2022-05-25 00:18:43 +02:00
Robbert van der Helm
c95af5f83e Don't engage Safety Limiter while bouncing 2022-05-25 00:06:32 +02:00
Robbert van der Helm
a3fc65e91c Add boilerplate for Safety Limiter 2022-05-24 23:57:18 +02:00
Robbert van der Helm
1f0094c920 Link plugin downloads in readme 2022-05-24 23:56:21 +02:00
Robbert van der Helm
535ae1260e Remove now unnecessary explicit dyn casts
Rust-analyzer used to not infer this, seems like now it does.
2022-05-24 23:55:48 +02:00
Robbert van der Helm
487ff3d566 Don't let the sine test tone plugin sleep 2022-05-24 13:17:40 +02:00
Robbert van der Helm
f4f54029eb Add a deactivation callback
This is the equivalent of initialize()
2022-05-24 13:05:06 +02:00
Robbert van der Helm
596b04af0a Add preliminary support for auxiliary IO
The missing parts are allocating buffers for these busses, copying data
to those buffers, and adding methods to the ProcessContext to interact
with these inputs and outputs.
2022-05-23 17:13:49 +02:00
Robbert van der Helm
0459405ced Remove STFT example readme
This hasn't been using fftw for a while now so it's no longer relevant.
2022-05-20 03:23:57 +02:00
Robbert van der Helm
3233174292 Add missing parts of the disclaimer
Courtesy of The Simpsons.
2022-05-14 00:53:09 +02:00
Robbert van der Helm
743998e388 Add a second just as bad mode to Puberty Simulator 2022-05-09 16:49:43 +02:00
Robbert van der Helm
c6acdfa020 Add a pitch shifting mode parameter
I experimented with some other equally broken but broken in slightly
different ways pitch shifting algorithms that also sound kind of fun.
2022-05-09 16:29:46 +02:00
Robbert van der Helm
081487fdcb Adjust windowing behavior in Puberty Simulator
We should indeed be windowing twice like we did before. A squared Hann
window doesn't work at 2x overlap, so that option has been removed. The
gain compensation is now also correct.
2022-05-09 16:22:26 +02:00
Robbert van der Helm
d589f81228 Change last to latest 2022-05-09 02:47:29 +02:00
Robbert van der Helm
c5841cbe33 Add missing latency compensation in STFT example
The latency introduced by the linear phase filter wasn't compensated
for.
2022-05-08 03:14:56 +02:00
Robbert van der Helm
6400e2d71d Fix gain compensation in new STFT example 2022-05-08 02:25:44 +02:00
Robbert van der Helm
3fe24e7dc6 Use more typical convolution FFT in STFT example 2022-05-08 02:22:36 +02:00
Robbert van der Helm
55eeb689dd Add a padding option to StftHelper 2022-05-08 02:12:37 +02:00
Robbert van der Helm
98876670f8 Re-export debug macros from the debug module
This makes it easy to import just the macros without having to use the
oldschool `#[macro_use] extern crate ...;` syntax.
2022-04-30 02:10:54 +02:00
Robbert van der Helm
58d7dc034c Fix gain compensation in STFT examples 2022-04-28 17:24:35 +02:00
Robbert van der Helm
e35886c216 Move window function handling out of StftHelper
And apply the window function only once at the end of the process
function for the plugins that used it.
2022-04-28 17:20:39 +02:00