Commit Graph

1333 Commits

Author SHA1 Message Date
Robbert van der Helm 18bfc5cc54 Fix unity size argument in the CI build 2021-01-01 22:55:35 +01:00
Robbert van der Helm 872a6aa304 Don't enable unity builds by default
But do suggest enabling them in the readme and enable them on the CI.
Having them enabled by default breaks clangd/ccls, which doesn't sound
like a great idea.

https://github.com/mesonbuild/meson/issues/8146
2021-01-01 22:53:08 +01:00
Robbert van der Helm 7c133e18da Enable unity builds by default 2021-01-01 22:11:30 +01:00
Robbert van der Helm cee0627449 Patch the VST3 module loading for Unity builds
The narrow overload gets picked here by default.
2021-01-01 21:57:21 +01:00
Robbert van der Helm c6276d03a1 Add a proxy class for INoteExpressionController 2021-01-01 21:37:38 +01:00
Robbert van der Helm 34f8d3b1d2 Update the copyright notices for 2021 2021-01-01 18:54:02 +01:00
Robbert van der Helm 5f8926f8ae Defer Win32 window closing
This gets rid of all potential delays when closing windows.
2020-12-31 14:18:26 +01:00
Robbert van der Helm fa0753f520 Use atomic fetch-and-add for unique window classes 2020-12-31 14:12:14 +01:00
Robbert van der Helm c3c0f96585 Get rid of CS_HREDRAW and CS_VREDRAW
This causes the window to black out to fully redraw even when the
plugin's editor window can just draw over the new parts.
2020-12-31 13:31:44 +01:00
Robbert van der Helm 9d24d422d1 Log successful FUnknown::queryInterface calls 2020-12-31 13:13:39 +01:00
Robbert van der Helm 26bc97e273 Fix spelling in readme 2020-12-31 00:04:32 +01:00
Robbert van der Helm 8d79bcfa02 Print a warning when using Ardour 2020-12-30 23:01:17 +01:00
Robbert van der Helm ef53e3b050 Update Ardour's VST3 status
Since the change that would fix these issues in some cases (but probably
not all) got reverted. We'll have to wait for Ardour to support more
flexible IO arrangements.
2020-12-30 22:03:07 +01:00
Robbert van der Helm 350b99e368 Update the VST3 host bugs status in the readme 2020-12-30 18:56:26 +01:00
Robbert van der Helm 76caab2d86 Update the status on Ardour in the readme 2020-12-30 18:09:51 +01:00
Robbert van der Helm b6a2752882 Log bus types and flags 2020-12-30 17:12:06 +01:00
Robbert van der Helm 42b9cf902c Swap read_object arguments to match write_object 2020-12-30 16:38:19 +01:00
Robbert van der Helm ecd9d6c2df Change YaAudioBusBuffers parameter order
So it matches the other constructor.
2020-12-30 15:55:58 +01:00
Robbert van der Helm 1ecdc5f270 Add a better list with unimplemented interfaces 2020-12-30 14:43:29 +01:00
Robbert van der Helm 651ebd4db3 Update the ViewRect in checkSizeConstraint() 2020-12-30 14:35:18 +01:00
Robbert van der Helm 8458ea041f Add a TODO for a missing return value 2020-12-30 14:18:42 +01:00
Robbert van der Helm ed7ff3db4a Rewrite the manual installation section
There were still some mentions of the old symlink based installation
method there. Since this tends to be a source of issues, it's better to
just remove all mentions of it from the main readme.
2020-12-29 23:24:00 +01:00
Robbert van der Helm b94e8dde4d Change style in CI build to match everywhere else 2020-12-29 23:15:23 +01:00
Robbert van der Helm 83e2157ee4 Fix typo in readme 2020-12-29 23:15:23 +01:00
Robbert van der Helm 775ed62277 Merge branch 'feature/vst3' 2020-12-29 22:10:04 +01:00
Robbert van der Helm 2b0fb8f954 Change wording in changelog 2020-12-29 22:09:09 +01:00
Robbert van der Helm fa4bd4bb24 Update the VST3 notice in the readme 2020-12-29 22:02:29 +01:00
Robbert van der Helm 3553b080fe Implement IUnitData
With this all VST 3.0.0 interfaces are finally supported.
2020-12-29 22:00:22 +01:00
Robbert van der Helm f85912fd25 Add logging for IUnitData structs 2020-12-29 21:51:53 +01:00
Robbert van der Helm 53c5e46b4c Add the request and response structs for IUnitData 2020-12-29 21:48:38 +01:00
Robbert van der Helm 104cdef919 Add a proxy class for IUnitData 2020-12-29 21:48:29 +01:00
Robbert van der Helm bddcc40e24 Implement IProgramListData on the plugin side
With this the interface is fully implemented.
2020-12-29 19:11:12 +01:00
Robbert van der Helm 96fe8b16a5 Add more explicit moves in VST3 message handling
The compiler might be smart enough to do this for us, but doing it
manually doesn't hurt.
2020-12-29 18:54:57 +01:00
Robbert van der Helm 38211d0fb3 Implement IProgramListData on the Wine side 2020-12-29 18:50:17 +01:00
Robbert van der Helm 3704ca8cb0 Add logging for the YaProgramListData structs 2020-12-29 18:37:28 +01:00
Robbert van der Helm 1c7a5e08a0 Check for null pointers in input parameter changes
This is not allowed to be a null pointer, but the SDK's plugin validator
will pass a null pointer anyways.
2020-12-29 17:32:33 +01:00
Robbert van der Helm ccba1ce36c Add IProgramListData request and response objects 2020-12-29 16:11:25 +01:00
Robbert van der Helm 22269570d0 Add stubs for IProgramListData 2020-12-29 15:53:01 +01:00
Robbert van der Helm c2f1722f14 Add a proxy class for IProgramListData 2020-12-29 15:47:25 +01:00
Robbert van der Helm c1118af21c Update the readmes for merging into master 2020-12-29 15:39:41 +01:00
Robbert van der Helm b34762db29 Mention that XEmbed is only available on master 2020-12-29 15:23:22 +01:00
Robbert van der Helm 5a3b6319bd Add VST3 status to supported DAWs list 2020-12-29 15:17:19 +01:00
Robbert van der Helm 7946a1d874 Set the global bridge instance to null on deinit
Hosts like Qtractor will deinitialize the module only to then
immediately initialize it again, so without this we would get an
assertion failure in `InitModule()`.
2020-12-29 14:57:45 +01:00
Robbert van der Helm 902b05ddc0 Update todos in the readme 2020-12-29 14:42:36 +01:00
Robbert van der Helm 1e1eaee69c Log the entire speaker arrangement bitsets
This makes it very clear why lots of plugins don't work in Ardour right
now.
2020-12-29 13:13:15 +01:00
Robbert van der Helm c42c05a795 Make BusInfo logging more verbose 2020-12-29 01:26:25 +01:00
Robbert van der Helm 49745d23f1 Fix IEditController::createView log message 2020-12-29 00:50:27 +01:00
Robbert van der Helm 0a05558a8c Make the persistent buffer thread local
Now that we allow ad hoc socket spawning for the audio sockets.
2020-12-29 00:39:23 +01:00
Robbert van der Helm 33806139e9 Revert "Allow disabling ad-hoc socket spawning"
It turns out we can't safely disable this, because in some situations we
still have these mutually recursive function calls. We could optimize
this a bit to have those calls be handled by the general sockets, but
this is much more manageable.

This reverts commit 415c1b5683.
2020-12-29 00:25:44 +01:00
Robbert van der Helm 4226ab6e43 Pass pointers to IMessage objects around
Instead of serializing the actual `YaMessage`, for the reasons mentioned
in the comments. This was needed to stop iZotope VocalSynth 2 in Ardour
from segfaulting when editing parameters, because that plugin is
apparently being very naughty.
2020-12-29 00:22:42 +01:00