Robbert van der Helm
ab30b7dc9d
Don't filter ELF exports by functions
...
Since we export a constant for CLAP.
2022-02-28 15:17:04 +01:00
Robbert van der Helm
f0504ed59a
Rework the bundler to use a CompilationTarget enum
...
This removes a lot of redundancy.
2022-02-28 15:06:36 +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
8c63cebc07
Add a readme section on plugin formats
2022-02-28 13:47:45 +01:00
Robbert van der Helm
b209c9caf3
Move the event loop to its own module
...
Now that the context module is becoming larger and larger.
2022-02-28 12:57:01 +01:00
Robbert van der Helm
07d8f81f44
Update to egui 0.17
2022-02-27 16:49:18 +01:00
Robbert van der Helm
b40c43a862
Temporarily use egui's system scale factor
...
Until we support HiDPI ourselves. This fixes #1 .
2022-02-27 12:59:41 +01:00
Robbert van der Helm
9d137fe813
Use reflinks when supported
2022-02-27 01:06:45 +01:00
Robbert van der Helm
0675feb54b
Keep a reference to WrapperView in WrapperInner
2022-02-27 00:51:41 +01:00
Robbert van der Helm
8ddad4e893
Store the IPlugFrame instance
2022-02-27 00:51:41 +01:00
Robbert van der Helm
95f0183d27
Add VST3 smart pointers for regular objects
2022-02-27 00:51:41 +01:00
Robbert van der Helm
7fb1547f95
Fix Info.plist location after 72c3e00
2022-02-26 21:00:25 +01:00
Robbert van der Helm
a8f66af147
Fix exported symbol detection on macOS
...
Apparently all exported symbols in Mach-O are prefixed with an
underscore.
2022-02-26 20:55:33 +01:00
Robbert van der Helm
e4e0fd2da2
Allow bundling multiple packages at once
2022-02-26 20:40:53 +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
72c3e00510
Create plugin bundles in target/bundled
...
It's going to get a bit crowded otherwise once we add more formats.
2022-02-26 20:04:41 +01:00
Robbert van der Helm
d39ebb5b51
Add a bundler module for parsing exported symbols
...
We can use this to detect which plugin formats are supported by a
plugin. Otherwise the bundler would be very awkward to use when
supporting multiple formats.
2022-02-26 20:00:32 +01:00
Robbert van der Helm
fefc2de9ba
Update vst3-sys dependency to allow pub fields
2022-02-16 20:11:30 +01:00
Robbert van der Helm
b8383abb47
Compile the xtask target in release mode
...
This avoids having to compile serde(-derive) twice when doing a one
off-compile. That was the main issue with parsing toml files from the
xtask bundler, but with this change that's no longer an issue.
2022-02-16 16:51:36 +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
c92f0ea861
Change the build artifact archive name
2022-02-16 13:42:15 +01:00
Robbert van der Helm
c5c966c0cc
Avoid awk on macOS
...
I was hoping they'd have gawk installed, but I guess not.
2022-02-16 13:34:20 +01:00
Robbert van der Helm
9b41017f36
Package all built plugin artifacts
2022-02-16 13:27:24 +01:00
Robbert van der Helm
b0a7b7402e
Create a proper macOS bundle
...
At least, I think that's what this is.
2022-02-16 00:37:12 +01:00
Robbert van der Helm
dcca3f8bf4
Fix events not working in release builds
2022-02-15 23:11:50 +01:00
Robbert van der Helm
80feb320db
Add slightly more info to the bundler config
2022-02-15 22:33:44 +01:00
Robbert van der Helm
41a05eddc2
Capitalize the Diopser bundle name
2022-02-15 22:28:23 +01:00
Robbert van der Helm
95446cb2bf
Allow specifying custom names for bundles
2022-02-15 22:28:15 +01:00
Robbert van der Helm
6fbec6393d
Include the Linux event loop module on macOS
2022-02-15 21:31:02 +01:00
Robbert van der Helm
0d401cf83a
Run the CI on macOS
2022-02-15 21:26:43 +01:00
Robbert van der Helm
b7904126ac
Allow the Linux event loop on macOS
2022-02-15 21:25:55 +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
15f27e2746
Move features section in main Cargo.toml
2022-02-15 18:13:47 +01:00
Robbert van der Helm
7789432879
Use the nightly toolchain on the CI
2022-02-15 18:07:47 +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
5d9f268d4c
Don't doctest the enum example
2022-02-14 16:21:34 +01:00
Robbert van der Helm
ecd1be8965
Add a derive macro for Enum parameters
2022-02-14 16:16:05 +01:00
Robbert van der Helm
4f08dce975
Remove now unused strum dependency
2022-02-14 15:36:31 +01:00
Robbert van der Helm
4f0e2b70b5
Rework EnumParam to be a whole lot less sketchy
...
Now it no longer needs to do any unsound type punning. The internal
parameter that the wrapper has access to has been completely type
erased, and only the outer parameter knows about enum T. This also gets
rid of strum and replaces it with a custom trait.
2022-02-14 15:34:46 +01:00
Robbert van der Helm
0e930668f2
Move EnumParam to its own module
2022-02-14 14:35:57 +01:00