1
0
Fork 0
Commit graph

73 commits

Author SHA1 Message Date
Robbert van der Helm ee9e3701f3 Implement dragging for the parameter slider 2022-03-14 14:17:06 +01:00
Robbert van der Helm df4b56d818 Update targeted iced_baseview fork
feature/update-dependencies now uses upstream baseview.
2022-03-14 13:34:03 +01:00
Robbert van der Helm 291abb8bcf Add a placeholder for a parameter slider widget 2022-03-14 00:53:22 +01:00
Robbert van der Helm 664267745a Replace gain_gui's editor with an iced stub 2022-03-13 21:59:13 +01:00
Robbert van der Helm fe1db50678 Update iced_baseview dependency 2022-03-13 19:07:51 +01:00
Robbert van der Helm 1fa2b5f74f Add an Editor callback to notify parameter changes
This will be needed to allow iced to be reactive in our model.
2022-03-13 18:03:23 +01:00
Robbert van der Helm 5f0c7d0ac7 Update iced_baseview dependency 2022-03-13 15:09:04 +01:00
Robbert van der Helm 812f6d86f8 Fix Cargo.lock
Apparently this was causing the macOS CI to fail.
2022-03-13 01:08:06 +01:00
Robbert van der Helm ab1e170f74 Replace Diopser egui GUI with empty iced GUI 2022-03-12 23:28:18 +01:00
Robbert van der Helm 3ebe34c870 Add most bits and pieces for iced support 2022-03-12 23:15:33 +01:00
Robbert van der Helm cd5a4f01bf Mirror the flags and re-exports from iced_baseview 2022-03-12 22:24:01 +01:00
Robbert van der Helm 4105a887a8 Add a generic UI for Crisp 2022-03-09 15:15:09 +01:00
Robbert van der Helm 48bc64ebb1 Update for CLAP 0.21 2022-03-09 00:27:44 +01:00
Robbert van der Helm bb341fdf50 Add an empty plugin for Crisp 2022-03-08 18:03:38 +01:00
Robbert van der Helm dfaa19d998 Update clap-sys dependency 2022-03-08 00:54:09 +01:00
Robbert van der Helm 8ee380864c Update for CLAP 0.20 2022-03-08 00:21:51 +01:00
Robbert van der Helm 55e258bd27 Add the one and only Puberty Simulator plugin 2022-03-07 19:51:38 +01:00
Robbert van der Helm e1e6b2137e Compute a spectrum in Diopser
This will be used in the GUI.
2022-03-07 15:03:49 +01:00
Robbert van der Helm 0f78b02685 Add a simple filter example with FFTW 2022-03-06 17:54:23 +01:00
Robbert van der Helm b416d1630b Add the basis for a simple STFT example
Right now it doesn't do any FFT operations yet, but all the pieces are
in place using the new STFT helper.
2022-03-06 02:07:53 +01:00
Robbert van der Helm b70af50fcd Add a simple generic UI to Diopser 2022-03-05 19:39:57 +01:00
Robbert van der Helm 9d5de10d16 Use upstream vst3-sys again
Now that https://github.com/RustAudio/vst3-sys/pull/46 has been merged.
2022-03-02 10:36:38 +01:00
Robbert van der Helm fa7f9fd85b Provide a cargo subcommand for NIH-plug's bundler 2022-03-02 10:27:55 +01:00
Robbert van der Helm 8e0597b780 Move the xtask binary to a library
So you can use it in your own projects with minimal copying and pasting.
2022-03-02 10:02:03 +01:00
Robbert van der Helm 3f6f472a34 Use portable_simd from std instead of packed_simd
Since this seems to be the way forward and they encourage using the
feature flag instead of the using it as a separate crate.
2022-03-01 20:59:31 +01:00
Robbert van der Helm 3e8b2b3759 Use AtomicRef instead of Mutexes for block smooth 2022-03-01 19:52:56 +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 07d8f81f44 Update to egui 0.17 2022-02-27 16:49:18 +01:00
Robbert van der Helm 9d137fe813 Use reflinks when supported 2022-02-27 01:06:45 +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 95446cb2bf Allow specifying custom names for bundles 2022-02-15 22:28:15 +01:00
Robbert van der Helm 935d952d81 Make the biquads SIMD capable 2022-02-15 18:00:01 +01:00
Robbert van der Helm 4f08dce975 Remove now unused strum dependency 2022-02-14 15:36:31 +01:00
Robbert van der Helm 39e8dfc83c Add somewhat shady enum parameters 2022-02-14 02:04:17 +01:00
Robbert van der Helm 342aebee89 Add a plugin skeleton for a Diopser port 2022-02-12 16:29:23 +01:00
Robbert van der Helm f645b6a92f Relicense under the ISC license 2022-02-12 16:04:46 +01:00
Robbert van der Helm ed5e0f673b Use an updated vst3-sys for cross compilation 2022-02-10 19:59:36 +01:00
Robbert van der Helm 057d0cbf56 Use a patched patched baseview fixing modifiers
This should fix https://github.com/RustAudio/baseview/issues/116.
2022-02-09 18:41:30 +01:00
Robbert van der Helm 7eb8622736 Drag very granularly with Shift+Drag 2022-02-09 12:24:01 +01:00
Robbert van der Helm 57297cc04c Update the patched baseview
This version adds back Windows and macOS OpenGL context creation.
NIH-plug does not yet have a functional event loop for those platforms
though.
2022-02-08 12:38:17 +01:00
Robbert van der Helm 02115d5004 Use a patched {egui-,}baseview for X11 GL contexts 2022-02-07 21:58:59 +01:00
Robbert van der Helm 611c0a4c39 Update baseview dependencies
These got updated to use more recent dependencies.
2022-02-07 11:45:12 +01:00
Robbert van der Helm 0fb8ce6f7e Add part of a Windows event loop implementation 2022-02-07 00:33:41 +01:00
Robbert van der Helm 556bec7c0b Move editor handling to its own struct
This makes the API much, much nicer (especially consuming the egui
wrapper), and it also avoids having to lock the plugin instance which is
obviously very bad if the plugin is also supposed to be processing audio
on another thread.
2022-02-06 17:12:57 +01:00
Robbert van der Helm bad5d0ace6 Use a patched baseview with fixed window visual
Otherwise trying to embed the GUI in REAPER will panic.

https://github.com/RustAudio/baseview/pull/113
2022-02-06 13:33:28 +01:00
Robbert van der Helm 5017dad7d3 Add a semi-broken GUI example
This needs a lot of work. We need widgets that know how to deal with our
parameters, and also basic widgets for things like meters. Egui-baseview
also has a couple quirks left. Most notably it only updates when
actively moving over the GUI (which means VU meters look pretty janky)
and it randomly panics.
2022-02-06 13:16:28 +01:00
Robbert van der Helm 2486368d08 Use AtomicF32 for the smoothing
This should at least not have a big performance impact since we can use
relaxed memory ordering here. AtomicCell always uses acquire/release
ordering.
2022-02-06 03:43:59 +01:00
Robbert van der Helm 021c183331 Add an egui editor adapter 2022-02-06 00:22:33 +01:00
Robbert van der Helm b1afe0b224 Downgrade raw-window-handle for baseview compat 2022-02-06 00:22:15 +01:00