Robbert van der Helm
905e60b9b2
Rename find_plugin_*() -> find_vst_*()
...
For cinsistency's sake.
2020-05-06 14:42:13 +02:00
Robbert van der Helm
e4cfc8f43b
Fix typo in .dll loading error message
2020-05-06 01:39:14 +02:00
Robbert van der Helm
e40f90085c
Revert accidental removal of audioMaster logging
...
Got removed in af060054d3 .
2020-05-06 01:22:07 +02:00
Robbert van der Helm
af060054d3
Implement audioMasterProcessEvents, closing #5
...
This allows plugins to output MIDI events.
2020-05-06 01:04:20 +02:00
Robbert van der Helm
e71fd433f9
Clarify LoadLibrary() related startup error
...
The old message sounds too much like something that would come from
Linux's dynamic linker.
2020-05-06 00:06:46 +02:00
Robbert van der Helm
750130e4a5
Print errors that happen early during startup
2020-05-05 23:23:37 +02:00
Robbert van der Helm
ad03d870ee
Allow yet another symlinking method, fixing #3
...
This allows symlinking to a copy of `libyabridge.so.` Now we support:
- A symlink to `libyabridge.so` with a `.dll` file in the same directory
as that symlink.
- A symlink to `libyabridge.so` with a symlinked `.dll`.
- A copy of `libyabridge.so` with a `.dll` file in the same directory as
that copy.
- A symlink to a copy of `libyabridge.so` with a `.dll` file in the same
directory as that copy.
- A symlink to a copy of `libyabridge.so` with a symlinked `.dll` file.
That seems a bit overkill, but hey, more options are always better,
right?
2020-05-04 13:15:28 +02:00
Robbert van der Helm
ae92e61bcc
Rename find_wine_vst_host -> find_vst_hsot
...
This way it's a bit more coherent and it's easier to see what's going on
with this function ordering.
2020-05-04 12:52:56 +02:00
Robbert van der Helm
592b5acdf1
Fix small typos
2020-05-04 00:21:44 +02:00
Robbert van der Helm
40d607353b
Clarify and update documentation
2020-05-03 13:45:46 +02:00
Robbert van der Helm
9c6fc78471
Fix editor window handling in Reaper
...
And other hosts that embed the parent window into another window.
2020-05-02 18:28:43 +02:00
Robbert van der Helm
1f404511d9
Make sure docstrings are at the declarations
2020-05-02 17:46:05 +02:00
Robbert van der Helm
4d7724c5b6
Add a workaround for a bug in Ardour 5.X
...
Ardour will send events to the plugin before it has even finished
initializing. This has been fixed back in 2018 but Ardour has not seen a
stable release since then.
https://tracker.ardour.org/view.php?id=7668
2020-05-01 17:53:06 +02:00
Robbert van der Helm
ed8e3ba114
Refactor event receiving to optimize MIDI handlign
...
This keeps compatibility with some weirdly designed plugins (such as
Kontakt) while avoiding some unnecessary data transformations. Before
this we'd convert from a `DynamicVstEvents` object to a `VstEvents`
object, back to a `DynamicVstEvents` and then finally back into another
`VstEvents` object. With this change we can skip the second half of the
conversions.
2020-05-01 14:06:06 +02:00
Robbert van der Helm
6c496da455
Clean up after reverting buffer handling change
...
This is what you get from not taking any breaks.
2020-04-30 22:45:22 +02:00
Robbert van der Helm
eb94f63e2c
Revert "Clean up chunk buffer retrieval for effGetChunk"
...
This reverts commit fb8fe035d8 .
I was getting things mixed up.
2020-04-30 22:41:07 +02:00
Robbert van der Helm
6266072641
Explicitly list opcodes that should return strings
...
The automatic detection works fine in every case I've tested other than
Fabfilter plugins, but this is probably for the best.
2020-04-30 20:55:49 +02:00
Robbert van der Helm
efe5017788
Clarify comments in the PE architecture detection
2020-04-30 19:09:31 +02:00
Robbert van der Helm
2701907614
Improve the 'invalid architecture' error message
...
Not that I'm expecting to ever see this error message.
2020-04-30 19:07:26 +02:00
Robbert van der Helm
67c3e151d8
Choose a host application by parsing PE headers
...
Now yabridge can load both 64 and 32 bit plugins without having to
specify which are which.
2020-04-30 18:45:33 +02:00
Robbert van der Helm
c051123796
Improve the look of the enabled features list
2020-04-30 16:44:26 +02:00
Robbert van der Helm
dcc1a34a41
Use a better check for the 32-bit host
2020-04-30 15:09:13 +02:00
Robbert van der Helm
5958f8058a
Print out a list of enabled compile time features
2020-04-30 13:40:55 +02:00
Robbert van der Helm
79e8a37c39
Simplify the 32-bit mode detection
2020-04-30 12:59:11 +02:00
Robbert van der Helm
6ca7eae16a
Mention 32-bit support in the readme
2020-04-30 12:48:03 +02:00
Robbert van der Helm
2e9adbe310
Always write message sizes in 64-bit integers
...
This will make sure the sizes match on both the 32 and 64 bit host
applications. This way only the 32-bit application will have to convert
between 32 and 64 bit integers.
2020-04-30 12:32:27 +02:00
Robbert van der Helm
e33f418206
Add a notice when the host is in 23-bit mode
2020-04-29 19:12:29 +02:00
Robbert van der Helm
027d9a96d5
Always use 64-bit pointer types for serialization
...
This way the 32-bit host can cast them down to 32-bit integers when
needed, and the serialization pipeline can stay fixed. We're not passing
any pointers directly to the other application anyway so this should be
safe!
2020-04-29 17:17:33 +02:00
Robbert van der Helm
c9060e984d
Add another flag for enabling a bit bridge build
2020-04-29 16:55:47 +02:00
Robbert van der Helm
7ce42e4306
Add support for effGetMidiKeyName
...
Not a lot of plugins use it, but it's really nice to have when they do.
2020-04-28 12:54:36 +02:00
Robbert van der Helm
fb8fe035d8
Clean up chunk buffer retrieval for effGetChunk
2020-04-28 12:48:31 +02:00
Robbert van der Helm
ed9428da83
Fix chunk size formatting in log messages
2020-04-28 12:28:41 +02:00
Robbert van der Helm
e414c1a341
Fix screen resolution detection
2020-04-28 12:22:56 +02:00
Robbert van der Helm
641351d525
Also filter out the event with opcode 52
...
Not sure what this is, but it's called by Bitwig every time a buffer is
being processed.
2020-04-28 12:04:09 +02:00
Robbert van der Helm
8adb944445
Use maximum display resolution for the window size
...
Instead of it being hardcoded to 1440p.
2020-04-28 11:47:39 +02:00
Robbert van der Helm
e515547d5a
Add a todo on another event to filter
2020-04-27 18:56:14 +02:00
Robbert van der Helm
4b84f663ab
Always run the event loop, fixing processing issue
...
Also remove any special `effEditIdle` handling.
Apparently plugins rely on the message loop for their internal tasks,
even for things that have nothing to do with GUIs, such as deferring
initialization.
2020-04-27 18:53:06 +02:00
Robbert van der Helm
e69d08c503
Add assertion for bytes written while sending
...
To avoid problems like 13dcb2f74a in the
future.
2020-04-27 18:00:01 +02:00
Robbert van der Helm
7f0a8c8efd
Extend the midi event lock
...
This should not make any difference, but if this event ever gets called
at the same time as the processing then this at least won't cause any
issues with plugins that are not thread safe themselves.
2020-04-27 16:53:44 +02:00
Robbert van der Helm
f0d16c4afb
Add note on potentially misbehaving type detection
2020-04-27 16:42:04 +02:00
Robbert van der Helm
13dcb2f74a
Fix handling of large chunk data
2020-04-27 16:41:55 +02:00
Robbert van der Helm
527db1f49f
Use different types for strings and binary data
2020-04-27 00:51:36 +02:00
Robbert van der Helm
bdd83de7a9
Strip the 'yabridge-' prefix from log messages
2020-04-27 00:50:28 +02:00
Robbert van der Helm
af6ae2c2ad
Fix capitalization of the word MIDI
2020-04-26 18:19:10 +02:00
Robbert van der Helm
85afd4107e
Extend the lifetime of MIDI events, fixing Kontakt
2020-04-26 18:17:30 +02:00
Robbert van der Helm
aeac8e87fa
Implement effGetParameterProperties
2020-04-26 16:53:34 +02:00
Robbert van der Helm
aee890fbf6
Remove the now unused ability to skip opcodes
...
If this is needed again in the future (it shouldn't be), then it should
be re-implemented using a separate function.
2020-04-26 16:30:11 +02:00
Robbert van der Helm
0ce9c1e3a4
Add another less verbose debug level
2020-04-26 15:42:01 +02:00
Robbert van der Helm
b17c413de4
Add the generated version header to the file list
...
Otherwise it may not be generated yet on first build.
2020-04-26 14:29:08 +02:00
Robbert van der Helm
5ce20be9d9
Allow storing and loading of larger chunks
2020-04-25 17:35:02 +02:00