Robbert van der Helm
03eef2c832
Require PartialEq on plain parameter types
...
So you can compare them in parameter widgets.
2022-03-05 19:50:12 +01:00
Robbert van der Helm
b70af50fcd
Add a simple generic UI to Diopser
2022-03-05 19:39:57 +01:00
Robbert van der Helm
7fd3c31a0f
Remove support for the non-SIMD Diopser version
2022-03-04 12:49:36 +01:00
Robbert van der Helm
1083ee95b6
Still include the #[macro_use] for Diopser
...
Since it's also used in the filter module.
2022-03-04 12:21:29 +01:00
Robbert van der Helm
d758dd652f
Re-export all macros in the prelude
...
Now you don't need the `#[macro_use] extern crate nih_plug;` anymore
2022-03-04 12:01:47 +01:00
Robbert van der Helm
4c0b07c578
💥 Move re-exports to a prelude module
...
So you can import everything at once, because you're likely going to
need at least 90% of it anyways.
2022-03-03 23:23:51 +01:00
Robbert van der Helm
f581294d7b
Update rustdoc formatting for links
...
Apparently it showed this text verbatim, and not in monospace.
2022-03-03 23:05:12 +01:00
Robbert van der Helm
6c9db8fee8
Change sample iterator variable names in examples
2022-03-03 21:38:50 +01:00
Robbert van der Helm
0666743cc7
Fix Gain GUI CLAP identifier
2022-03-03 21:31:43 +01:00
Robbert van der Helm
be4bbd4400
Allow nested parameter structs
...
See the Parameters docstring for the caveats.
2022-03-03 20:38:28 +01:00
Robbert van der Helm
76369ad1e1
💥 Rework FloatParam and IntParam
...
They are now two separate types with slightly different options. I had
these merged initially because they're 95% the same, and I thought it
would be fun to have weird distributions for integer parameters, but
that doesn't really work because hosts and the plugin APIs expect the
steps to be linear. And if you're going to have an unstepped integer
parameter, might as well use FloatParam with rounding.
Because non-linear ranges are no longer possible with IntParam, the
types have been split up to make everything much more readable instead
of adding a parameterizing the range type with another type family.
2022-03-03 19:24:40 +01:00
Robbert van der Helm
c7d7a790c2
Add a todo for SIMD Diopser coefficent generation
2022-03-02 17:04:01 +01:00
Robbert van der Helm
75b1b13599
Fix the linear spread in Diopser
...
The old one wasn't what it said on the tin. Thing is, it actually
sounded much cooler, so I may bring it back as an option.
2022-03-02 16:49:16 +01:00
Robbert van der Helm
161d86ab49
Use the new SIMD helpers in Diopser
2022-03-01 21:40:21 +01:00
Robbert van der Helm
3f6f472a34
Use portable_simd from std instead of packed_simd
...
Since this seems to be the way forward and they encourage using the
feature flag instead of the using it as a separate crate.
2022-03-01 20:59:31 +01:00
Robbert van der Helm
a26ddbb45e
Change CLAP_KEYWORDS to CLAP_FEATURES
...
This name was changed in CLAP 0.19, but in 0.18 it's still called
features.
2022-02-28 17:29:53 +01:00
Robbert van der Helm
1151a80769
Add the other CLAP metadata fields
2022-02-28 17:18:11 +01:00
Robbert van der Helm
c7f1c46f18
Add a reverse DNS ID field to ClapPlugin
2022-02-28 17:04:47 +01:00
Robbert van der Helm
56c1545196
Add a basic nih_export_clap!() macro
...
This does not do anything useful yet.
2022-02-28 14:45:31 +01:00
Robbert van der Helm
d5d90e3e61
Add a ClapPlugin trait
...
Just like the Vst3Plugin trait
2022-02-28 14:45:07 +01:00
Robbert van der Helm
70378be6e9
Replace --bundle-vst3 with export detection
...
We'll need this for when we support other plugin formats.
2022-02-26 20:12:08 +01:00
Robbert van der Helm
6cc1e4f73f
Add nightly links that don't require a login
2022-02-16 16:02:41 +01:00
Robbert van der Helm
d37b866115
Explicitly mention the nightly toolchain
2022-02-15 20:13:28 +01:00
Robbert van der Helm
1d7a6a870b
Reset Diopser filters when changing certain params
...
Parameters that cannot be interpolated might cause fun artifacts if we
don't do this. Decreasing the number of stages would be fine without a
reset though.
2022-02-15 19:48:54 +01:00
Robbert van der Helm
2f803915eb
Allow compiling Diopser without SIMD
2022-02-15 18:30:45 +01:00
Robbert van der Helm
d0f1a79279
Use SIMD for Diopser
...
It's pretty damn fast now, especially compared to the JUCE version.
2022-02-15 18:05:26 +01:00
Robbert van der Helm
935d952d81
Make the biquads SIMD capable
2022-02-15 18:00:01 +01:00
Robbert van der Helm
8c30eccb27
Add an identity function for biquad coefficients
2022-02-15 17:13:49 +01:00
Robbert van der Helm
7632b21a95
Remove debug code from sine example
...
Not sure how this ended up here.
2022-02-15 03:45:39 +01:00
Robbert van der Helm
fc8aec5afa
Explain not using the inner iterator in Diopser
2022-02-15 00:39:30 +01:00
Robbert van der Helm
24f81e2542
Fix Diopser DSP load
2022-02-15 00:33:34 +01:00
Robbert van der Helm
fa8b87ec71
Remove mentions of Diopser port being unfinished
2022-02-15 00:00:41 +01:00
Robbert van der Helm
b84022caed
Add the filter spread parameters to Diopser
...
This includes a much better octave-based version instead of the old
'exponential' version.
2022-02-14 23:59:53 +01:00
Robbert van der Helm
c1d91498e1
Update the todo list for Diopser
2022-02-13 20:21:59 +01:00
Robbert van der Helm
f399b30dba
Implement the smoothing interval on Diopser
2022-02-13 19:54:49 +01:00
Robbert van der Helm
0bd0ea6af2
Add an automation precision parameter to Diopser
2022-02-13 19:41:31 +01:00
Robbert van der Helm
c9a9f76dce
Update note on Diopser's status
...
The port is unfinished, but the origin version's feature are all there
and it works well.
2022-02-13 18:42:35 +01:00
Robbert van der Helm
19d2dc0a67
Implement step snapping for parameters
2022-02-13 17:52:54 +01:00
Robbert van der Helm
3d8cfd7477
Use the step sizes
2022-02-13 16:43:11 +01:00
Robbert van der Helm
adf59c192b
Add a step size for float parameters
2022-02-13 16:41:31 +01:00
Robbert van der Helm
eea05cc748
Rename reset_iter to iter_mut
...
So it's more consistent.
2022-02-12 23:28:15 +01:00
Robbert van der Helm
2c394aabd5
Add nicer adapter for repeating channel iteration
2022-02-12 23:16:07 +01:00
Robbert van der Helm
fb382520af
Fix typo in comment
2022-02-12 21:53:19 +01:00
Robbert van der Helm
2f371874d0
Add a super basic port of Diopser
2022-02-12 21:51:58 +01:00
Robbert van der Helm
2241000c20
Fix the biquad
...
Oops.
2022-02-12 21:11:44 +01:00
Robbert van der Helm
710fbf0c7d
Remove now unused parameter
2022-02-12 20:02:32 +01:00
Robbert van der Helm
cd0b870682
Directly pass a style to .with_smoother()
2022-02-12 19:56:37 +01:00
Robbert van der Helm
d6b358f8ca
Don't require importing Param for derive macro
2022-02-12 19:55:39 +01:00
Robbert van der Helm
e3d445cea6
Add a simple biquad filter
2022-02-12 18:07:40 +01:00
Robbert van der Helm
fe881cbdc9
Add the GPL header for Diopser
2022-02-12 17:28:40 +01:00