1
0
Fork 0
Commit graph

68 commits

Author SHA1 Message Date
Robbert van der Helm
6494d1ed5f Store persistent fields as plain JSON strings
On second thought, this is much better. The resulting file size will be
much smaller because only double quotes need to be escaped. It's also
easier to read at a glance.
2022-01-30 18:23:13 +01:00
Robbert van der Helm
3111d75b29 Serialize custom persistent fields as base64
This still takes up more space than plain JSON would, but I don't know
if serde_json would allow inlining that JSON. Presumably not. It would
get hairy quickly as a regular embedded JSON string due to the encoding.
2022-01-30 18:15:01 +01:00
Robbert van der Helm
0c24398234 Target vst3-sys fork with better pointer semantics 2022-01-30 01:37:10 +01:00
Robbert van der Helm
902c3b2bf6 Upgrade vst3-sys dependency 2022-01-29 20:54:52 +01:00
Robbert van der Helm
46cd75ec53 Add an xtask binary target for running tasks 2022-01-29 17:31:51 +01:00
Robbert van der Helm
97a88e0db2 Implement saving parameter state
Restoring is next.
2022-01-29 14:20:14 +01:00
Robbert van der Helm
d357add75a Implement most of the VST3 parameter handling 2022-01-27 00:19:50 +01:00
Robbert van der Helm
a959f7a2ad Add an UTF-16 equivalent for strlcpy() 2022-01-26 21:02:52 +01:00
Robbert van der Helm
1a619c474b Use a vst3-sys fork with support for generics 2022-01-26 15:38:43 +01:00
Robbert van der Helm
070e68c084 Move nih_plug to the repo's root
Makes more sense to have this be on the same level as the workspace
since technically this crate can be used separately.
2022-01-26 12:52:57 +01:00
Robbert van der Helm
52f80de5dc Add a dummy library for testing the macro 2022-01-25 22:18:55 +01:00
Robbert van der Helm
4cd9c6d3d3 Rename packages to snake case
I much prefer kebab case, but snake case is better here since Rust would
convert it to snake case when used as an identifier anyways and you also
can't use snake case modules without explicit module path attributes.
2022-01-25 12:35:13 +01:00
Robbert van der Helm
6357711783 Add another crate for a proc macro 2022-01-25 12:35:13 +01:00
Robbert van der Helm
736468a510 Move nih-plug to a workspace 2022-01-25 12:23:19 +01:00
Robbert van der Helm
e8697d9a74 Redo the parameters without atomics
These atomics make things more difficult and they don't solve the main
problem: storing the parameter objects in an easy to use struct while
still allowing hash based access to them from the plugin wrapper. Going
through this new Params trait makes a lot more sense, and with pinning
this should be safe.
2022-01-25 02:17:30 +01:00
Robbert van der Helm
b1415a36da Rename library to nih-plug
Makes more sense that way.
2022-01-24 21:34:08 +01:00
Robbert van der Helm
64f7dc8148 Add some of the building blocks for param handling 2022-01-24 21:00:37 +01:00
Robbert van der Helm
d748bd62ff Initial commit 2022-01-24 21:00:37 +01:00