083885a40c
This is a breaking change requiring a small change to plugin implementations. The reason why `Pin<&dyn Params>` was used was more as a hint to indicate that the object must last for the plugin's lifetime, but `Pin` doesn't enforce that. It also makes the APIs a lot more awkward. Requiring the use of `Arc` fixes the following problems: - When storing the params object in the wrapper, the `ParamPtr`s are guaranteed to be stable. - This makes it possible to access the `Params` object without acquiring a lock on the plugin, this is very important for implementing plugin-side preset management. - It enforces immutability on the `Params` object. - And of course the API is much nicer without a bunch of unsafe code to work around Pin's limitations. |
||
---|---|---|
.. | ||
src | ||
Cargo.toml | ||
README.md |
NIH-plug: iced support
This provides an adapter to create iced based GUIs with NIH-plug through iced_baseview.
By default this targets OpenGL as wgpu causes segfaults on a number of configurations. To use wgpu instead, include the crate with the following options:
nih_plug_iced = { git = "https://github.com/robbert-vdh/nih-plug.git", default_features = false, features = ["wgpu"] }
Iced has many more optional features. Check the Cargo.toml
file for more
information.