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
957d4b3a53
Document the breaking event loop changes
2023-01-07 14:24:23 +01:00
Robbert van der Helm
57e751d277
Remove todo about single message queues
...
Because we just did that.
2023-01-06 18:05:52 +01:00
Robbert van der Helm
47b75fd020
Fix missing generic arguments on BackgroundThread
2023-01-06 17:59:33 +01:00
Robbert van der Helm
6f7f2e30ed
Fix debug assertion failure in smoother
2023-01-06 17:58:13 +01:00
Robbert van der Helm
28cd25d501
Implement Linux event loop using BackgroundThread
...
This reduces duplication a lot.
2023-01-06 17:53:07 +01:00
Robbert van der Helm
5c9be077e7
Allow BackgroundThread sharing between instances
...
This removes the need for every instance to have its own background
thread.
2023-01-06 17:51:38 +01:00
Robbert van der Helm
8d242b45ad
Remove old overeager clippy lint silence
...
This is no longer enabled by default.
2023-01-06 16:13:01 +01:00
Robbert van der Helm
dfeb8164ca
Fix new Clippy lints
2023-01-06 16:13:01 +01:00
Robbert van der Helm
935bf6f7f3
Fix allocation failures in BackgroundThread
2023-01-06 16:03:48 +01:00
Robbert van der Helm
c0e9b29bf4
Remove macOS deprecation warning from event loop
2023-01-06 15:58:01 +01:00
Robbert van der Helm
d5006d109e
Code style cleanup for macOS event loop
2023-01-06 15:46:29 +01:00
Robbert van der Helm
498e503a89
Reorder Cargo.toml
2023-01-06 15:14:57 +01:00
Robbert van der Helm
700a15f528
Merge branch 'maxjvh/master' #48
...
native macOS event loop: https://github.com/robbert-vdh/nih-plug/pull/48
2023-01-06 15:14:29 +01:00
Robbert van der Helm
a0c1fc2e01
Link a default Bitwig preset for Crossover
...
And update the screenshot to show remote controls.
2023-01-05 16:34:50 +01:00
Robbert van der Helm
300e112ede
Rename Block::len() to Block::samples()
...
For the same reason mentioned in the last commit.
2023-01-05 16:13:58 +01:00
Robbert van der Helm
cb2824021b
Fix buffer adapter size hints for zero channels
...
And the SamplesIter one was simply not correct when yielded by the block
iterator.
2023-01-05 16:12:09 +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
9e1a888b38
Store sample count in Buffer
...
This fixes the sample count not being correct for MIDI-only plugins.
2023-01-05 15:58:55 +01:00
Robbert van der Helm
19be530ba3
Rename Buffer::with_raw_vec to set_slices
2023-01-05 15:36:04 +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
3b57ebe895
Add test for fast decibel<->gain functions
2023-01-04 17:01:25 +01:00
Robbert van der Helm
c55fb02982
Add faster decibel<->gain conversion functions
2023-01-04 16:58:28 +01:00
Robbert van der Helm
74a9e294b1
Make gain_to_db() branchless
2023-01-04 16:45:11 +01:00
max
1e83730ba9
rename variable
2023-01-02 19:30:31 +02:00
max
edca84a42c
address comments
2023-01-02 19:29:13 +02:00
max
6024a85663
fix incorrect conditional import
2023-01-02 19:29:00 +02:00
max
1fbe3efb79
update comment
2023-01-01 20:22:17 +02:00
max
9fd88ffd48
initial event loop implementation for macOS
2023-01-01 20:14:55 +02: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
069053ca50
Also defer latency change for CLAP plugins
...
In case a future host does the same thing Ardour does right now for VST3
plugins.
2022-12-28 01:34:42 +01:00
Robbert van der Helm
5cbef6ec03
Fix alloc failures in VST3 with many events
...
Or well, work around. We should use a different non-allocating sorting
implementation here. This only crept up in Ardour because they for some
reason send all parameter values after loading a VST3 plugin.
2022-12-28 01:30:26 +01:00
Robbert van der Helm
fd28a95231
Defer set_latency_samples() in VST3 plugin init
...
The host might otherwise restart the plugin while the `Plugin::init()`
call is still active, resulting in a deadlock because the plugin mutex
is still locked. This was causing issues when loading state in Ardour7.
The new approach also removes the need for a previous hack added for
Ardour6.
2022-12-28 01:28:33 +01:00
Robbert van der Helm
46752fc7f0
Make the definition of buffer length more explicit
...
This is the standard definition, but apparently it's still confusing.
Resolves #47 .
2022-12-23 20:34:57 +01:00
Robbert van der Helm
78c84b7596
Update dependencies
2022-12-16 23:29:03 +01:00
Robbert van der Helm
f58b69f10a
Update baseplug for better resizing support
...
This should now fully support resizing in nih_plug_vizia on all
platforms.
2022-12-02 20:17:53 +01:00
Robbert van der Helm
2747714640
Silence warning for standalone config on macOS
2022-12-02 19:42:51 +01:00
Robbert van der Helm
1767e6abe4
Update nih_plug_iced to the latest baseview
...
The feature branch used to add mouse modifiers has long been merged into
upstream baseview.
2022-12-02 19:25:27 +01:00
Robbert van der Helm
ec34e54bfe
Update dependencies, allow resizing on Win/macOS
...
This was implemented for Linux in March, but it should now also work on
Windows and macOS.
2022-12-01 20:21:56 +01:00
Robbert van der Helm
50fa1008c0
Allow assert_process_allocs+mingw-w64 in release
...
This causes the application to halt in debug builds, but it shouldn't be
an issue in release builds.
2022-12-01 20:18:30 +01:00
Robbert van der Helm
5115ff7b47
Mention safe mode in Diopser readme
2022-11-29 20:59:41 +01:00
Robbert van der Helm
0d2af71180
Increase minimum frequency in Diopser safe mode
2022-11-29 20:53:51 +01:00
Robbert van der Helm
d7acd6573a
Only set parameter values on safe mode when needed
...
Otherwise this resets the filters every time.
2022-11-29 20:48:47 +01:00
Robbert van der Helm
035e345e21
Limit Diopser frequency range in safe mode
2022-11-29 20:45:06 +01:00
Robbert van der Helm
afd8830636
Clamp scrolling in RestrictedParamSlider
2022-11-29 20:36:30 +01:00
Robbert van der Helm
3ba0ddffee
Simmplify safe mode granular drag mapping
2022-11-29 20:34:02 +01:00
Robbert van der Helm
3635cfb78e
Default Diopser automation precision to 100%
...
This is fine with the limited range.
2022-11-29 20:11:20 +01:00
Robbert van der Helm
aca09c49c7
Auto-disable Diopser safe mode for older instances
...
Since this used to not do anything.
2022-11-29 20:00:21 +01:00
Robbert van der Helm
836a72dbc4
Implement Diopser's safe mode for filter stages
...
These are now limited to 40 by default.
2022-11-29 19:47:42 +01:00
Robbert van der Helm
32f123b47d
Add a RestrictedParamSlider to Diopser
...
This currently is just a stripped down ParamSlider, but it will allow
the slider's range to be capped when safe mode is enabled.
2022-11-29 19:09:55 +01:00