Commit Graph

801 Commits

Author SHA1 Message Date
Robbert van der Helm d3d57a3fe0 Use UID conversion for GetControllerClassId 2021-01-22 14:13:27 +01:00
Robbert van der Helm ae0d7263b8 Use UID conversion for IsPlugInterfaceSupported
I assume that this would also be necessary here, right?
2021-01-22 13:50:06 +01:00
Robbert van der Helm 4a5c961b63 Get rid of unused bitsery FUID extension
This would need a UID conversion to be safe anyway, so it's better to
just get rid of it.
2021-01-22 13:47:11 +01:00
Robbert van der Helm 249b82f846 Add conversions for the garbled UIDs
We'll need this to make sure the reported class IDs match up with the
actual IDs.
2021-01-22 13:47:11 +01:00
Robbert van der Helm 29410e3992 Add fixmes for incorrect byte orders
As pointed out on the Discord. Fixing this will require a breaking
change, but right we report incorrect plugin IDs meaning that projects
saved under Windows cannot be opened under Linux with yabridge so this
really needs a fix.
2021-01-22 01:28:25 +01:00
Robbert van der Helm 4812757f1a Add a function for getting the current priority 2021-01-22 00:44:43 +01:00
Robbert van der Helm 58c687f9d7 Revert "Don't override existing host thread priorities"
This reverts commit 9b0324f4a7.

Since the plugin is initialized from the GUI thread, this doesn't make
any sense.
2021-01-22 00:38:44 +01:00
Robbert van der Helm e84f7425cf Fix reverting to SCHED_OTHER
This still seemed to work, but the `sched_setscheduler` would return an
error code when the priority is set to 5 for SCHED_OTHER (which is of
course not a valid value here).
2021-01-21 20:34:43 +01:00
Robbert van der Helm 9b0324f4a7 Don't override existing host thread priorities
If the thread that's hosting yabridge's plugin is already using realtime
scheduling.
2021-01-21 20:30:08 +01:00
Robbert van der Helm f8ac296ec7 Print the tempo part of VstTimeInfo
At debug level 2. This was needed to debug an issue with Renoise.
2021-01-21 20:04:35 +01:00
Robbert van der Helm dac817323b Add an option to force drag-and-drop under REAPER
This works around a long standing bug in REAPER itself that would
prevent you from dragging files onto any plugin editor window.
2021-01-19 15:11:27 +01:00
Robbert van der Helm 197aadad69 Fix style 2021-01-17 15:32:22 +01:00
Robbert van der Helm 029f797377 Update readme for the current VST3 support status
We still need to do a lot of testing, and before that there are quite a
few things I need to fix or take a look at, but now we at least
technically support all VST 3.7.1 features.
2021-01-17 14:33:24 +01:00
Robbert van der Helm 1c6d3f8fd9 Fully implement IParameterFunctionName
We now support all VST 3.7.1 interfaces! At least, in theory we do.
2021-01-17 14:17:46 +01:00
Robbert van der Helm 6b992e7c9a Add logging for IParameterFunctionName 2021-01-17 14:10:01 +01:00
Robbert van der Helm 4804174dae Add message structs for IParameterFunctionName 2021-01-17 13:42:08 +01:00
Robbert van der Helm 3d8ee1ddf1 Add stubs for IParameterFunctionName 2021-01-17 13:23:17 +01:00
Robbert van der Helm 06f6e6acfc Add a proxy class for IParameterFunctionName
This is the last official VST3 interface we have to implement!
2021-01-17 13:09:29 +01:00
Robbert van der Helm aa1a7a1588 Fully implement IProgress
`IParameterFunctionName` will be the last interface before we _in
theory_ support all VST3 features.
2021-01-17 00:19:48 +01:00
Robbert van der Helm 1dc900aff9 Add logging for IProgress 2021-01-17 00:19:01 +01:00
Robbert van der Helm 30ad506552 Add message structs for IProgress 2021-01-17 00:19:01 +01:00
Robbert van der Helm e840fe3114 Add stubs for IProgress 2021-01-16 18:09:39 +01:00
Robbert van der Helm bfdfd9c341 Add proxy classes for IProgress 2021-01-16 18:02:15 +01:00
Robbert van der Helm 9ddf4b2ae1 Fully implement IProcessContextRequirements 2021-01-16 16:29:21 +01:00
Robbert van der Helm 1ab9056a82 Add logging for IProcessContextRequirements 2021-01-16 16:17:34 +01:00
Robbert van der Helm 77ff3f23d5 Add message structs for IProcessContextRequirements 2021-01-16 16:11:48 +01:00
Robbert van der Helm a2203cfef7 Add stubs for IProcessContextRequirements 2021-01-16 16:09:31 +01:00
Robbert van der Helm 4f416e135a Add a proxy class for IProcessContextRequirements 2021-01-16 15:51:48 +01:00
Robbert van der Helm 73fda0b568 Fully implement IPlugInterfaceSupport
With this we support all VST 3.6.12 interfaces.
2021-01-16 15:19:10 +01:00
Robbert van der Helm 701271c273 Add logging for IPlugInterfaceSupport 2021-01-16 14:49:24 +01:00
Robbert van der Helm faf4abd91d Add message structs for IPlugInterfaceSupport 2021-01-16 14:47:40 +01:00
Robbert van der Helm 6c40cd5ad1 Add stubs for IPlugInterfaceSupport 2021-01-16 14:47:40 +01:00
Robbert van der Helm a8699eed18 Add a proxy class for IPlugInterfaceSupport 2021-01-16 14:33:09 +01:00
Robbert van der Helm 7fdf646270 Fully implement IMidiLearn 2021-01-16 14:25:00 +01:00
Robbert van der Helm 26c78df37c Add logging for IMidiLearn 2021-01-16 13:57:43 +01:00
Robbert van der Helm 1a66c67ec7 Add message structs for IMidiLearn 2021-01-15 23:13:51 +01:00
Robbert van der Helm 85c1972c1f Add stubs for IMidiLearn 2021-01-15 22:36:25 +01:00
Robbert van der Helm 64507828bb Add a proxy class for IMidiLearn 2021-01-15 22:33:29 +01:00
Robbert van der Helm 6e8d56923c Fully implement INoteExpressionPhysicalUIMapping
With this we support all VST 3.6.11 features.
2021-01-15 19:33:05 +01:00
Robbert van der Helm d9d389bebf Fix the semantics of YaPhysicalUIMapList
We're supposed to take the list provided by the host, and modify the
target note expression values.
2021-01-15 19:30:08 +01:00
Robbert van der Helm cc35e89252 Add logging for INoteExpressionPhysicalUIMapping 2021-01-15 19:17:42 +01:00
Robbert van der Helm f50ed52073 Add message structs for INoteExpressionPhysicalUIMapping 2021-01-15 19:15:45 +01:00
Robbert van der Helm c485677987 Add stubs for INoteExpressionPhysicalUIMapping 2021-01-15 19:08:06 +01:00
Robbert van der Helm be7fccc920 Add a proxy class for INoteExpressionPhysicalUIMapping 2021-01-15 18:09:51 +01:00
Robbert van der Helm dd271a8c7f Add a serialization wrapper for PhysicalUIMap
Which we'll need for INoteExpressionPhysicalUIMapping.
2021-01-14 23:32:04 +01:00
Robbert van der Helm 9d5d8c1b60 Update the status on vst3_no_scaling and HiDPI
Apparently 200% scaling with Wine's font DPI set to 192 often does work
correctly.
2021-01-14 17:51:05 +01:00
Robbert van der Helm 5dcedbace5 Add an option to disable VST3 content scaling
This might be necessary when using a HiDPI screen as plugin GUIs often
don't scale correctly under Wine.
2021-01-14 17:36:00 +01:00
Robbert van der Helm 07e84c78b3 Add a TODO for Wine logging prefixes 2021-01-14 17:32:49 +01:00
Robbert van der Helm 1d9b60b481 Fully implement IComponentHandlerBusActivation
We now support all VST 3.6.8 features. (or technically, also all VST
3.6.10 features)
2021-01-14 16:42:19 +01:00
Robbert van der Helm d9d508a47e Add logging for IComponentHandlerBusActivation 2021-01-14 16:24:46 +01:00