Adrien Prokopowicz
eb7dcf60ec
Fix unreachable code warning
2023-05-23 00:52:38 +02:00
Adrien Prokopowicz
d61f3c885d
Clean up ScopedFtz conditional compilation even more (remove the need for the cfg_if! macro)
2023-05-23 00:52:38 +02:00
Adrien Prokopowicz
d20b9a19ee
Clean up ScopedFtz conditional compilation for MIRI
2023-05-23 00:52:38 +02:00
Adrien Prokopowicz
4c87db906a
Various MIRI fixes
2023-05-23 00:52:38 +02:00
Robbert van der Helm
727b15aa93
Remove the Default bound from SysExMessage::Buffer
2023-05-13 22:39:54 +02:00
Robbert van der Helm
4753cd95ce
Fix typo in changelog
2023-05-13 22:38:57 +02:00
Robbert van der Helm
68b3b864d6
Assert that parameter ranges are valid
2023-04-30 21:28:23 +02:00
Robbert van der Helm
0afe6852b3
Avoid returning negative zeroes in v2s_f32_rounded
...
This ensures that values roundtrip correctly since -0.0 and 0.0
correspond to the same normalized value.
2023-04-27 12:30:45 +02:00
Robbert van der Helm
af12853644
Enable sample accurate automation in SoftVacuum
2023-04-25 00:22:14 +02:00
Robbert van der Helm
1cedd1fd7e
Upgrade NIH-log to 0.3.1
...
This fixes the local time offsets on Linux.
2023-04-24 23:57:58 +02:00
Robbert van der Helm
5e69910616
Consider block start with buffer management
...
This broke sample accurate automation.
2023-04-24 23:47:29 +02:00
Robbert van der Helm
4912962551
Fix broken links in docs
2023-04-24 14:54:20 +02:00
Robbert van der Helm
808782df05
Take &mut self for editor() and task_executor()
2023-04-24 14:51:40 +02:00
Robbert van der Helm
44476ad696
Better describe the Plugin
trait
2023-04-24 14:37:14 +02:00
Robbert van der Helm
5075f88687
Update dependencies
2023-04-24 14:00:43 +02:00
Robbert van der Helm
9af37968b5
Add a docstring for add_spacer
2023-04-22 17:26:40 +02:00
Robbert van der Helm
6f1f7e66ab
Rename CLAP main control page name
2023-04-22 17:00:49 +02:00
Robbert van der Helm
56c0a21989
Define remote controls for Crossover
2023-04-22 16:59:18 +02:00
Robbert van der Helm
911c0d57d5
Allow declaratively defining CLAP remote controls
2023-04-22 16:59:03 +02:00
Robbert van der Helm
841fe2424c
Update to CLAP 1.1.8
2023-04-22 16:09:58 +02:00
Robbert van der Helm
a7e4e8b31e
Add a context for defining remote control pages
2023-04-22 15:53:04 +02:00
Robbert van der Helm
2dbd835778
Also prefer importing from prelude internally
...
Less breakage when restructuring modules.
2023-04-22 15:13:39 +02:00
Robbert van der Helm
34b416ecb6
Move API-specific traits and structs to submodules
2023-04-22 14:52:01 +02:00
Robbert van der Helm
1deb907c38
Fix header name in changelog
2023-04-22 14:43:28 +02:00
Robbert van der Helm
f2ac4660ca
Replace Crossover preset URL
2023-04-14 14:52:00 +02:00
Robbert van der Helm
2187aa96ab
Fix formatting in formatters.rs
...
Rustfmt changed the way it formats this a while back.
2023-04-07 13:33:39 +02:00
Robbert van der Helm
699c2b99f9
Update Soft Vacuum's descriptions
2023-04-07 13:18:13 +02:00
Robbert van der Helm
2e28797bed
Install missing libraries
...
These are no longer shipped by default on the Ubuntu 20.04 image.
2023-04-05 20:28:10 +02:00
Robbert van der Helm
ffb9fb378c
Change runners to use Ubuntu 20.04
...
Seems like GitHub finally pulled the plug out of 18.04.
2023-04-05 20:21:23 +02:00
Robbert van der Helm
e1c7508624
Rename the Soft Vacuum package
2023-04-05 20:07:13 +02:00
Robbert van der Helm
ad5f0ce72a
Upsample the slews in Soft Vacuum
...
Now the oversampled versions sound similar to the non-oversampled
version.
2023-04-05 19:52:41 +02:00
Robbert van der Helm
f922e668b7
Add an upsampling-only option to the oversamplers
...
This will be used to upsample the slew control signal.
2023-04-05 19:52:09 +02:00
Robbert van der Helm
b9045a2aa8
Split slew computation in Hard Vacuum
2023-04-05 19:45:30 +02:00
Robbert van der Helm
c748d79963
Temporarily remove slew compensation
...
We should probably just upsample the slews as a control signal and use
that instead.
2023-04-05 19:08:59 +02:00
Robbert van der Helm
4e0a0d4cd5
Move smoothing scratch buffers to the heap
...
This is probably a good idea to keep the stack sizes small. A couple 32
element buffers should be fine, but these fit 512 elements each and
Windows can be fussy about stack sizes.
2023-04-05 19:05:51 +02:00
Robbert van der Helm
d3f820dc8c
Set the default oversampling amount to 2x
...
Oversampling is not always needed, so this is probably a better default.
2023-04-05 18:54:13 +02:00
Robbert van der Helm
913aa4bef9
Decrease Soft Vacuum output gain range
...
-40 dB sounds reasonable. No need to go down all the way to -100.0. The
original version was in the linear domain.
2023-04-05 18:46:47 +02:00
Robbert van der Helm
4b5f52252a
Make the oversampling in Soft Vacuum configurable
2023-04-05 18:40:40 +02:00
Robbert van der Helm
c6765d91ac
Modify oversampler to allow variable no of stages
...
This is needed to be able to add a control for the oversampler amount.
2023-04-05 18:22:28 +02:00
Robbert van der Helm
40db21277e
Fix debug assertions in oversampling
...
These were leftover from before the addition of delays.
2023-04-05 18:22:28 +02:00
Robbert van der Helm
1711efa11e
Add a basic 4x oversampled version of Hard Vacuum
...
The oversampling amount should be configurable, and it would work better
if the slew signal was oversampled independently instead of doing this
compensation thing.
2023-04-05 18:22:28 +02:00
Robbert van der Helm
6a368c1ac6
Add a Lanczos3-based linear phase oversampler
2023-04-05 18:22:28 +02:00
Robbert van der Helm
4b706acac5
Mention Soft Vacuum in the readme
2023-04-05 18:22:28 +02:00
Robbert van der Helm
41b513541d
Rename Soft Vacuum plugin name
2023-04-05 18:22:28 +02:00
Robbert van der Helm
f4c3c96364
Add parameters for the Hard Vacuum port
2023-04-05 18:22:28 +02:00
Robbert van der Helm
456a22119e
Port the Hard Vacuum algorithm
2023-04-05 18:22:28 +02:00
Robbert van der Helm
1abcb02647
Add an abstraction for the Hard Vacuum algorithm
2023-04-05 18:22:28 +02:00
Robbert van der Helm
3e26fcf912
Add a skeleton for a Hard Vacuum port
2023-04-05 18:22:28 +02:00
Robbert van der Helm
4502eaec3a
Change wrapped smoothing style to be a static ref
...
Instead of having to wrap this in an `Arc`. This makes the interface a
bit nicer to use.
2023-04-05 18:16:58 +02:00
Robbert van der Helm
8a7100ac3e
Add an OversamplingAware smoothing style
...
This can be used to have an ergonomic way to do multi-rate smoothing
with variable oversampling amounts that only the `Arc<AtomicF32>` to be
updated from a parameter callback.
2023-04-05 18:08:22 +02:00