Robbert van der Helm
510bc3f131
Define a struct for SC analyzer data
2023-03-19 13:54:28 +01:00
Robbert van der Helm
234a5f5334
Rename SC visualizer to analyzer
...
Slightly more fitting term.
2023-03-19 13:38:30 +01:00
Robbert van der Helm
6f070150ea
Disable open::that() on Windows
...
Until there's an alternative that doesn't panic.
2023-03-19 13:36:50 +01:00
Robbert van der Helm
66ba8f2872
Default to 16x overlap in Spectral Compressor
2023-03-18 23:28:37 +01:00
Robbert van der Helm
74eb6fe2e5
Add a placeholder for the SC spectrum analyzer
2023-03-18 16:30:35 +01:00
Robbert van der Helm
4e304fc65a
Add a visualizer toggle button to SC
2023-03-18 15:19:19 +01:00
Robbert van der Helm
0d5247ee2f
Fix ParamButton hover state and styling
2023-03-18 15:16:52 +01:00
Robbert van der Helm
83ea930ab8
Use the new declarative resizes in SC
2023-03-18 14:27:44 +01:00
Robbert van der Helm
da61acc7b9
Compute SC editor size based on the editor mode
...
Using the new declarative editor size interface.
2023-03-18 14:25:41 +01:00
Robbert van der Helm
3be5e3fa99
Add a widget that controls the SC editor mode
2023-03-18 14:25:41 +01:00
Robbert van der Helm
c9793c6901
Add an editor mode enum for Spectral Compressor
...
To indicate that the GUI has been expanded.
2023-03-18 14:25:41 +01:00
Robbert van der Helm
f6041789cd
Use computed sizes for ViziaState
2023-03-07 21:22:15 +01:00
Robbert van der Helm
e3a923ff3b
Avoid restoring window sizes with ViziaState
...
Unless specified otherwise. This avoids some bugs where old, now
incorrect sizes are being recalled.
2023-02-28 18:50:15 +01:00
Robbert van der Helm
a14b4cf61e
Fix years in copyright headers
2023-02-27 00:59:56 +01:00
Robbert van der Helm
338f79e6be
Save and restore Spectral Compressor editor state
2023-02-26 17:35:04 +01:00
Robbert van der Helm
083326a933
Revert addition of Spectral Compressor standalones
...
Until the standalones at least have some way to change parameter values
without a GUI these probably shouldn't be published with standalones.
2023-02-26 16:25:11 +01:00
Robbert van der Helm
49e99eef53
Update the JACK bindings
...
We should no longer have to use our own fork for this.
2023-02-26 16:23:24 +01:00
Robbert van der Helm
72c43adda6
Mark the Spectral Compressor struct as pub
...
For testing with standalones.
2023-02-23 22:55:15 +01:00
Robbert van der Helm
e8fd18ab80
Completely reword the audio IO layout system
...
Instead of a VST3-style polling function to test if a plugin supports a
certain layout, the plugin now explicitly enumerates the supported
layouts. This aligns better with non-VST3 plugin formats.
2023-02-20 16:57:32 +01:00
Robbert van der Helm
d6184ea06e
Replace VST3 category string with enum slice
...
I've been putting this off for a while, but now is finally the day. We
already did this for CLAP a while back. This is both simpler and less
error prone.
2023-02-01 16:09:03 +01:00
Robbert van der Helm
c8ed795524
Add a SysExMessage type to Plugin
...
This is needed to enable sending and receiving SysEx #54 . Because
associated type defaults still are not stable, this requires every
plugin that doesn't need this to set this to the unit type:
```rust
type SysExMessage = ();
```
2023-01-31 18:18:41 +01:00
Robbert van der Helm
cf52d60a61
Make the Spectral Compressor title link to GitHub
2023-01-16 01:18:32 +01:00
Robbert van der Helm
77cbef5f82
Add the Spectral Compressor version to the GUI
2023-01-16 01:17:07 +01:00
Robbert van der Helm
b56d8771f3
Add a changelog for Spectral Compressor
2023-01-16 00:58:46 +01:00
Robbert van der Helm
9f560b2c5c
Bump Spectral Compressor version
2023-01-15 18:28:49 +01:00
Robbert van der Helm
1e83d29fab
Change SC to work in the decibel domain
...
This makes the soft-knee function differentiable and the performance
should in theory be slightly higher when using these fast gain<->dB
conversion functions. This also fixes the high-frequency rolloff not
working correctly for the downwards compressors.
2023-01-15 18:28:49 +01:00
Robbert van der Helm
1c80331829
Fix incorrect MIN_OVERLAP_TIMES calculations
...
These aren't actually used which is why this never came up. The
other (similarly unused) constants were calculated correctly.
2023-01-14 00:16:57 +01:00
Robbert van der Helm
8a4720e427
Update Spectral Compressor for cosmic-text changes
2023-01-12 19:03:02 +01:00
Robbert van der Helm
bb521fcb82
Upgrade Vizia for the cosmic-text changes
...
This brings some breaking changes, and vertical positioning of text may
have changed slightly.
2023-01-12 19:03:02 +01:00
Robbert van der Helm
bdc8537f3f
Add explicit .max(f32::EPSILON) back in SC
...
`util::db_to_gain_fast()` doesn't snap to 0, but for low enough values
it will still become 0 eventually.
2023-01-11 15:21:18 +01:00
Robbert van der Helm
27acce3237
Remove the DC filter from Spectral Compressor
...
It's not needed anymore and the behavior is confusing. This was added to
prevent upwards compression and gain increases on DC values from blowing
up. But we no longer do upwards compression on DC bins anyways.
2023-01-08 00:03:38 +01:00
Robbert van der Helm
cb827d18dd
Rename Buffer::len() to Buffer::samples()
...
To reduce ambiguity.
2023-01-05 16:04:38 +01:00
Robbert van der Helm
11d9476a5f
Use db_to_gain_fast() in plugins
2023-01-04 17:05:13 +01:00
Robbert van der Helm
ab9adaf13e
Update copyright notices for 2023
...
Happy new year!
2023-01-01 18:52:44 +01:00
Robbert van der Helm
82b7426689
Namespace custom CLAP features
2022-11-22 21:09:32 +01:00
Robbert van der Helm
babe271556
Fix font size in Spectral Compressor disclaimer
2022-11-17 18:17:58 +01:00
Robbert van der Helm
aa7d5195ce
Grab plugin URLs from the Cargo.toml file
2022-11-11 20:26:39 +01:00
Robbert van der Helm
d4b93cfdee
Add URLs to the plugin Cargo.toml files
2022-11-11 20:26:39 +01:00
Robbert van der Helm
922a81f654
Drop all mentions of vizia point scale
...
It does use pixels instead of points.
2022-11-11 16:21:30 +01:00
Robbert van der Helm
a7e425581f
Use CARGO_PKG_VERSION for plugin versions
...
Instead of duplicating this. Means that plugin versions only need to be
updated in the Cargo.toml file.
2022-11-11 03:15:05 +01:00
Robbert van der Helm
6f7780bdeb
Don't register any fonts by default for vizia
...
These now need to be registered individually by the plugin. This saves
on binary size.
2022-11-06 14:05:12 +01:00
Robbert van der Helm
89c2b1f84e
Replace create_vizia_editor_without_theme w/ enum
...
This involves a small breaking change. You can now also completely
disable all of Vizia's theming.
2022-11-06 14:04:55 +01:00
Robbert van der Helm
c980576102
Add an AsyncExecutor for editor GUIs
...
This is decoupled form `GuiContext` as that would require invasive
changes all over the place.
2022-10-22 15:05:39 +02:00
Robbert van der Helm
5ea2377c18
Replace AsyncExecutor with simple closure
...
This makes everything much simpler. The task type is now defined
directly on `Plugin`.
2022-10-22 02:01:03 +02:00
Robbert van der Helm
84f834abb6
Add AsyncExecutor support to ProcessContext
2022-10-22 02:01:03 +02:00
Robbert van der Helm
6ffa23971e
Add AsyncExecutor support to InitContext
2022-10-22 00:21:08 +02:00
Robbert van der Helm
297ad2a83e
Add an AsyncExecutor associated type to Plugin
...
This will make it possible to run background tasks in a type safe way.
Sadly, this does mean that every plugin now needs to define the type
alias and constructor function since Rust does not yet support defaults
for associated types.
2022-10-21 23:52:46 +02:00
Robbert van der Helm
81bdad87b5
Replace custom Params in SC with #[nested]
...
Using the new `id_prefix` attribute. This doesn't break backwards
compatibility.
2022-10-13 01:32:48 +02:00
Robbert van der Helm
727d88c4d7
Add ID renaming superpowers to #[nested(...)]
...
This can now be used for most common use cases where you previously had
to do a manual `Params` implementation, like arrays of parameter objects
and duplicate parameter objects.
2022-10-13 01:28:05 +02:00
Robbert van der Helm
d57003a0e9
Update macOS instructions in plugin readmes
2022-10-09 21:35:25 +02:00