Commit Graph

480 Commits

Author SHA1 Message Date
Robbert van der Helm fd25010aca Replace Boost.Interprocess for audio-shm 2022-04-16 20:37:10 +02:00
Robbert van der Helm e4966a6245 Remove the now obsolete with-static-boost option 2022-04-16 20:37:10 +02:00
Robbert van der Helm 556b0e38f9 Replace Boost.Asio with standalone Asio library
We had to add an even hackier hack now to get Boost.Process to
interoperate with Asio's IO contexts. This will be replaced later when
we replace Boost.Process.
2022-04-14 23:42:12 +02:00
Robbert van der Helm 49b2ad46ab Add a Meson wrap for ghc::filesystem
Which can replace Boost.Filesystem for us so we can get rid of the
runtime dependency.
2022-04-14 23:42:12 +02:00
Robbert van der Helm 45e5b06099 Fix Meson deprecation warning 2022-04-14 23:42:11 +02:00
Robbert van der Helm 2f76a17aa3 Revert "[yabridgectl] Handle non-lowercase file extensions"
This reverts commit eee3d218c1.

This sounded good in theory, but in practice this doesn't work, because
there's no real way to find the matching .dll file form an .so file
without brute forcing it using a bunch of directory listings.
2022-04-14 23:40:29 +02:00
Robbert van der Helm 6d02ceb277 Filter out effProcessEvents on verbosity level 1 2022-04-11 12:39:09 +02:00
Robbert van der Helm eee3d218c1 [yabridgectl] Handle non-lowercase file extensions
Hopefully this shouldn't be needed, but I didn't realize we only parsed
lower case file names. Wouldn't be surprised if some installer ends up
creating an uppercased `.DLL` file.
2022-04-09 23:24:29 +02:00
Robbert van der Helm 9ca2559fef Mention parameter queue change in the changelog 2022-03-09 18:04:17 +01:00
Robbert van der Helm b2ac08436f Bump to version 3.8.1 2022-03-08 22:28:49 +01:00
Robbert van der Helm a533531bca Reword the changelog 2022-03-08 22:23:47 +01:00
Robbert van der Helm c528a9ef49 Explicitly handle no and pointer root input focus
This will never happen under normal X11. Apparently Crostini isn't
normal X11.

See #167.
2022-03-05 00:39:01 +01:00
Robbert van der Helm f298a8ae2b Delay VST2 editor window sizing
To work around a buggy plugin.
2022-02-27 00:59:50 +01:00
Robbert van der Helm 823f6bb239 Prevent realtime scheduling for ad-hoc acceptors
I noticed that there were some realtime adhoc-acceptors running on my
system. That should of course not happen, since these only exist to
catch some sporadic (and likely as a result of a badly behaving plugin)
mutual recursion on the audio thread.
2022-02-08 02:20:18 +01:00
Robbert van der Helm de470d345a Fix building under Wine 7.2
Which isn't out yet, but this already affects the current master branch.
2022-02-02 13:56:05 +01:00
Robbert van der Helm d6260c1d6b Delay editor_force_xdnd until the reparent #160
This fixes the option not working correctly when REAPER reparents the
plugin's window to a new FX window.
2022-01-29 01:46:08 +01:00
Robbert van der Helm 7f14cdf208 [yabridgectl] Don't mention installation methods
Unless the symlink-based installation method is enabled.
2022-01-28 00:08:16 +01:00
Robbert van der Helm 1b8248d672 Process offline audio from the GUI thread
Because T-RackS 5 won't have it any other way.
2022-01-19 18:18:20 +01:00
Robbert van der Helm 9eb1d2af3d Change RTTIME warnings and doc for next PW release
The next release will use regular realtime scheduling with no
`RLIMIT_RTTIME` when the user has the permissions to do so by default.
2022-01-17 15:33:42 +01:00
Robbert van der Helm 28217f6c20 Bump version to 3.8.0 2022-01-15 16:14:22 +01:00
Robbert van der Helm 08b765fce1 Reword changelog 2022-01-15 15:51:01 +01:00
Robbert van der Helm 02a66cba16 Update tomlplusplus dependency to 3.0.1
Last minute update because Arch started packaging this version yesterday
and there are breaking API changes compared to version 2.5.x.
2022-01-15 14:27:34 +01:00
Robbert van der Helm a7381f008b [yabridgectl] Update to Rust 2021
Rust 1.58 will be released tomorrow, so now that Rust 2021 has been out
for two releases bumping this should be fine.
2022-01-12 14:48:16 +01:00
Robbert van der Helm 1f16c2bf1a [yabridgectl] Disallow adding individual files 2022-01-12 13:56:48 +01:00
Robbert van der Helm 4767b758b8 Delay showing editor the window
This fixes Waves V13 VST3 plugins crashing when opening the editor. They
will likely still crash later on anyways because they're kinda broken.
Amazing.
2022-01-09 00:41:14 +01:00
Robbert van der Helm 41127f28c0 Fix changelog formatting 2022-01-09 00:32:57 +01:00
Robbert van der Helm 263b192daa [yabridgectl] Canonicalize when checking blacklist
As mentioned in #156.
2022-01-07 19:00:35 +01:00
Robbert van der Helm c625deadef Proxy host context menu items for VST3 plugins
This wasn't implemented yet because no plugin tried using the interface
in this way before this, but Surge XT incorporates the host's context
menu items into their own (much more elaborate) context menu. To
accommodate this, we now copy over all of the host's prepopulated
context menu items to the Wine plugin host, and calling the targets
associated with any of those items will cause the target on the
associated context menu item on the host to be called.

This is slightly more complicated than what would otherwise be necessary
because Bitwig does not assign tags to their context menu items and
instead always uses 0.
2022-01-03 17:04:00 +01:00
Robbert van der Helm f5af027847 Print a deprecation warning on sync for symlinks 2022-01-02 20:23:37 +01:00
Robbert van der Helm 1507e4f574 Use multiple reader single writer locks for VST3
This would also need to be done on the plugin side.
2021-12-28 18:51:14 +01:00
Robbert van der Helm 2137d79229 Disconnect the correct connection point proxy 2021-12-28 17:09:36 +01:00
Robbert van der Helm ce29e5e990 Update the targetted VST3 SDK to version 3.7.4 2021-12-20 23:15:40 +01:00
Robbert van der Helm 18862279e1 Mention the recent dependency handling changes 2021-12-19 22:47:38 +01:00
Robbert van der Helm d48dbe71da Redundantly limit number of drag-and-drop formats
As reported in #149, the DrumCore 3 plugin would segfault when trying to
drag files from it. This happened because the plugin presumably
underflows somewhere and then reports that it supports 4294967282
different drag-and-drop formats, even though yabridge asked for a
maximum of 16.
2021-12-16 01:52:37 +01:00
Robbert van der Helm e5c27e833b Fix Wine version detection in build config
The non-greedy match would obviously not work with versions like `Wine
6.23`. Just matching `MAJOR.MINOR` is sufficient anyways.
2021-12-07 01:07:04 +01:00
Robbert van der Helm 35244d2c7f Support Wine 6.23's fixed winedbg arg handling
I was about to rebase the patch I've been resubmitting to Wine that
fixed this when I noticed that
https://github.com/wine-mirror/wine/commit/94ca4be2a62cdb05adaee524084875b04b283afb
now does the same thing.
2021-12-07 00:59:07 +01:00
Robbert van der Helm c054398965 Increase Win32 message limit for JUCE plugins
They aggressively use the message loop when parts of a plugin's UI
change, sometimes sending as many is 2300 events at once. The old 20
messages per tick limit would cause severe slowdowns in this case.
2021-11-30 03:48:08 +01:00
Robbert van der Helm 75c64e6be8 Bump version to 3.7.0 2021-11-21 16:04:49 +01:00
Robbert van der Helm 20dda7e023 Reword changelog 2021-11-21 15:13:02 +01:00
Robbert van der Helm aa35be3cc0 Update tomlplusplus to slightly after 2.5.0
This issue otherwise breaks compilation under Meson 0.60.0:

https://github.com/marzer/tomlplusplus/issues/121
2021-11-12 12:15:23 +01:00
Robbert van der Helm 52d0232c91 Update tomlplusplus wrap to 2.5.0 2021-11-11 03:40:12 +01:00
Robbert van der Helm fe1c2e3848 Update bitsery wrap to 5.2.2 and patch_directory
And switch to wrap-git.
2021-11-11 03:40:12 +01:00
Robbert van der Helm 43c66b6dc3 Update function2 wrap to 4.2.0 and patch_directory
And switch to wrap-git.
2021-11-11 03:26:56 +01:00
Robbert van der Helm 5b3210eed6 Inhibit event loop during VST3 offline processing
This prevents T-RackS 5 from causing the export in Bitwig Studio 4.1.0
beta 2 to freeze.
2021-11-10 21:29:40 +01:00
Robbert van der Helm 5be149cb52 Prevent wineg++ from including the SAL headers
This otherwise breaks compilation under Wine 6.20:

https://bugs.winehq.org/show_bug.cgi?id=51919
2021-10-23 20:21:10 +02:00
Robbert van der Helm 1b662c07a7 Clean up group host socket endpoint files
Apparently we just left these behind. Now all yabridge related files
should be gone from the temporary directories if yabridge exits cleanly.
2021-10-16 01:58:15 +02:00
Robbert van der Helm 3257b9c32e Add an environment variable for custom temp dirs
This would be useful if you need to do some elaborate namespacing setup
and want all sockets and other temporary files in a single directory
instead of in `${XDG_RUNTIME_DIR:/tmp}`.

This resolves #139.
2021-10-16 01:41:48 +02:00
Robbert van der Helm e79d1ec03a Bump to version 3.6.0 2021-10-15 10:34:31 +02:00
Robbert van der Helm b792a9006a Reword the changelog once more 2021-10-15 10:33:38 +02:00
Robbert van der Helm 15e6e60010 Remove note about editor_double_embed from readme 2021-10-15 10:20:08 +02:00