Simon Leiner
67808fd9ae
Fix typos in test names
2022-09-29 15:13:43 +02:00
Simon Leiner
0caef90b1a
Fix typos in comments
2022-09-29 15:13:43 +02:00
Simon Leiner
f4995abf88
Fix typos in documentation
2022-09-29 15:13:43 +02:00
joshnatis
d1600a9dce
Fix link to disabling Gatekeeper in README.md
...
Not sure what happened with the Markdown here :P
2022-09-29 03:37:19 +02:00
Simon Leiner
958767acf2
Fix off-by-1 error in VST3 parameter range
...
Running the VST3 SDK Validator [1] for the midi_inverter plugin shows
one failing test:
[Scan Parameters]
Info: ===Scan Parameters ====================================
Info: This component exports 2080 parameter(s)
Info: Parameter 000 (id=2147481569): [title="MIDI Ch. 1 CC 0"] [unit=""] [type = F, default = 0.000000, unit = 0]
Info: Parameter 001 (id=2147481570): [title="MIDI Ch. 1 CC 1"] [unit=""] [type = F, default = 0.000000, unit = 0]
Info: Parameter 002 (id=2147481571): [title="MIDI Ch. 1 CC 2"] [unit=""] [type = F, default = 0.000000, unit = 0]
[...]
Info: Parameter 2077 (id=2147483646): [title="MIDI Ch. 16 CC 127"] [unit=""] [type = F, default = 0.000000, unit = 0]
Info: Parameter 2078 (id=2147483647): [title="MIDI Ch. 16 Channel Pressure"] [unit=""] [type = F, default = 0.000000, unit = 0]
ERROR: =>Parameter 2079 (id=-2147483648): Invalid Id!!!
[XXXXXXX Failed]
The relevant part of the test code [2] looks like this:
int32 paramId = paramInfo.id;
if (paramId < 0)
{
// Error
}
This shows that the parameter ID must be INT32_MAX = (1 << 31) - 1 at
most. As far as I see, even Steinberg's own documentation [3] gets
this wrong.
[1]: 55d7ed3c6a/samples/vst-hosting/validator
[2]: 55d7ed3c6a/source/vst/testsuite/general/scanparameters.cpp (L100)
[3]: https://steinbergmedia.github.io/vst3_dev_portal/pages/Technical+Documentation/Parameters+Automation/Index.html
2022-09-29 00:24:41 +02:00
Robbert van der Helm
fae7050113
Add helper to compensate smoother for oversampling
2022-09-25 17:37:25 +02:00
Robbert van der Helm
ccff4f1444
Change macOS test runner to macOS 11
...
They're disabling the macOS 10.15 runner:
https://github.com/actions/runner-images/issues/5583
2022-09-23 16:35:34 +02:00
Robbert van der Helm
6ffdfc009f
Update readme
2022-09-23 16:11:17 +02:00
Robbert van der Helm
ca22806f8c
Fix double click handling after Vizia update
2022-09-22 20:07:04 +02:00
Robbert van der Helm
85543e1668
Update Vizia
2022-09-22 19:53:21 +02:00
Robbert van der Helm
21078bcae0
Fix Vizia resize handle for HiDPI windows
2022-09-22 19:48:08 +02:00
Robbert van der Helm
d3fe4c0d06
Use upstream egui-baseview
...
Now that all patches have been merged.
2022-09-22 19:42:03 +02:00
Robbert van der Helm
fff713d066
Fix resizing with HiDPI standalones
2022-09-22 19:36:43 +02:00
Robbert van der Helm
e4d1ad39ab
Remove old todo
2022-09-22 17:39:22 +02:00
Robbert van der Helm
347cbae430
Use egui's own redraw forcing function
2022-09-22 17:08:17 +02:00
Robbert van der Helm
51b8f64092
Update nih_plug_egui from egui 0.17 to egui 0.19
2022-09-22 15:35:51 +02:00
Robbert van der Helm
b008f129f2
Merge pull request #33 from geom3trik/param-slider-update
...
Move ParamSliderInternal variables to ParamSlider [vizia]
2022-09-21 19:23:25 +02:00
George Atkinson
ec79bb36be
Fix some spelling errors
2022-09-21 17:32:24 +01:00
George Atkinson
eb33a55fcc
Move ParamSliderInternal variables to ParamSlider
2022-09-21 17:30:02 +01:00
Robbert van der Helm
269c2a51e1
Re-enable assert_process_allocs for gain_gui_egui
2022-09-21 16:25:07 +02:00
Robbert van der Helm
eb11da731d
Enable the standalone for gain_gui_egui
2022-09-21 16:11:17 +02:00
Robbert van der Helm
16010c076c
Target macOS 10.13 on the CI
2022-09-15 14:27:51 +02:00
Robbert van der Helm
45b609791d
Create bundle metadata for universal binaries
2022-09-15 13:28:26 +02:00
Robbert van der Helm
0475c7000b
Add support for building universal macOS binaries
...
This resolves #17 .
2022-09-15 03:48:12 +02:00
Robbert van der Helm
a51c359c0b
Fix Spectral Compressor high frequency rolloff
2022-09-15 01:39:16 +02:00
Robbert van der Helm
5ac9c32c19
Fix SC high freq rolloff at 22.05 kHz
...
This prevents the effect from getting brighter as you increase the
sample rate.
2022-09-14 17:47:07 +02:00
Robbert van der Helm
374dfc9052
Clarify you can pass other options to xtask
2022-09-14 15:11:04 +02:00
Robbert van der Helm
963d1bd14f
Fix bar start position calculation
2022-09-12 14:17:06 +02:00
Robbert van der Helm
5fa2382c8c
Add a Spectral Compressor todo for rolloff
2022-09-12 02:42:43 +02:00
Robbert van der Helm
b883a611ab
Fix resizing aux input storage on buffer size
...
This nested `resize_with()` of course wouldn't resize the inner vectors
of the outer ones were already the correct size.
2022-09-11 16:41:31 +02:00
Robbert van der Helm
4c9a2726f3
Fix s2v_bool_bypass()
2022-09-07 20:43:47 +02:00
Robbert van der Helm
c980fe2b4b
Add backtraces for allocation failures #30
2022-09-07 20:02:35 +02:00
Robbert van der Helm
cf72a796f4
Fix GUI context state loading in standalones
2022-09-07 18:38:07 +02:00
Robbert van der Helm
910a90d47a
Respect assert_process_allocs in standalones
...
This fixes #29 .
2022-09-07 18:29:58 +02:00
Robbert van der Helm
591f3710bd
Add missing reset call to standalone init
...
The plugin versions also do this, and the docs mention that this always
happens.
2022-09-07 18:23:36 +02:00
Robbert van der Helm
997249a293
Notify about unsupported aux IO in standalones
...
None of the backends support this at the moment.
2022-09-07 15:58:09 +02:00
Robbert van der Helm
9536842a15
Only show CPAL MIDI support warning if applicable
2022-09-07 15:55:36 +02:00
Robbert van der Helm
c566888fa3
💥 Use interior mutability for parameters
...
Instead of the previous technically-unsound approach. While it wouldn't
cause any issues in practice, it did break Rust's guarantees. That was a
design choice after adding support for editors in NIH-plug, but this is
probably the better long term solution.
The downside is that all uses of `param.value` now need to be changed to
`param.value()`.
2022-09-06 21:57:24 +02:00
Robbert van der Helm
5966e353da
Use only interior mutability for smoothers
...
This is needed in preparation for removing the need to have `*mut`
pointers to parameters.
2022-09-06 21:21:46 +02:00
Robbert van der Helm
7f33f172cb
Clean up optimized block smoothing
...
This is easier to follow and avoids computing and subsequently
overwriting the last smoothed value.
2022-09-05 14:00:56 +02:00
Robbert van der Helm
a21daef96b
Redesign mapped block smoothing
...
The non-mapped version is now split off and the mapped version is much
better suited for array based modulation. Check the breaking changes
document and the new docstring for more information.
2022-09-04 20:17:06 +02:00
Robbert van der Helm
99437c6011
Optimize block smoothing
2022-09-04 19:52:17 +02:00
Robbert van der Helm
cd02ebb839
Use less arbitrary decay weights for the gain GUIs
...
This solves the same problem as #27 but in a cleaner way. The previous
commits refactored the smoothing to make it possible to use the
calculations in plugin code to do the same thing as #27 , but then I
realized that that doesn't make much sense since the time to decay into
complete silence isn't very meaningful for this kind of computation.
2022-09-04 19:09:22 +02:00
Robbert van der Helm
3a9d56e956
Rename step_size() current parameter to start
2022-09-04 18:40:18 +02:00
Robbert van der Helm
8e17972da5
Also move num steps computation to SmoothingStyle
2022-09-04 18:26:36 +02:00
Robbert van der Helm
bb6e9c237f
Add equivalence tests for next() and next_step()
2022-09-04 18:20:51 +02:00
Robbert van der Helm
9f990cc3b9
Rename step_size() parameter for SmoothingStyle
2022-09-04 18:20:28 +02:00
Robbert van der Helm
17a928647e
Optimize single step Smoother::next()
...
By not having to take multiple steps into account.
2022-09-04 18:08:31 +02:00
Robbert van der Helm
dd320c4c1f
Add dedicated single step next() to SmoothingStyle
...
This avoids some computations for single stepping. And we can use this
for block smoothing later.
2022-09-04 18:08:19 +02:00
Robbert van der Helm
e47899d421
Move calculation in next_step() to SmoothingStyle
2022-09-04 18:04:31 +02:00