Commit Graph

48 Commits

Author SHA1 Message Date
Robbert van der Helm 34e3f1a1bf Don't set WINEPREFIX for the current process
`native_environment` allows modification of the current process's
environment, so we had to use the plain `environment` class instead.
2020-06-20 13:43:54 +02:00
Robbert van der Helm 56af346277 Show Wine prefix overrides on the startup output
This might otherwise cause confusion, since otherwise the printed Wine
prefix might not actually be the prefix that will be used.
2020-06-20 01:01:48 +02:00
Robbert van der Helm 471d87bc16 Fix dumb memory error when reading buffers
Not sure how this got in, and I'm even less sure why this has not caused
any issues before this. In the particular case that was causing a crash,
the host was sending 138 sample sized buffers. This error likely only
became visible because the lack of memory alignment caused writes to
parts of the vector objects themselves.
2020-06-18 18:37:07 +02:00
Robbert van der Helm c4842ccda6 Make use-* aliases for new with-* build options
The 'use-*' variants will be marked as deprecated in a future version.
2020-06-08 16:02:53 +02:00
Robbert van der Helm 9385360331 Don't statically link Boost by default #20
Since this would only be needed for distribution, and we're already
doing something similar for libstdc++ on the Ubuntu 18.04 build. This
moves the static linking behind a new build option.
2020-06-08 15:46:09 +02:00
Robbert van der Helm 3aab2e9727 Fix plugin group socket name generation
I'm pretty sure you're supposed to be able to format `size_t` values,
why does this break the stringstream?
2020-06-05 22:56:52 +02:00
Robbert van der Helm 047163c6f5 Change spelling in changelog 2020-06-01 16:18:40 +02:00
Robbert van der Helm 150106e0e0 Bump version to 1.2.0 2020-05-29 18:47:51 +02:00
Robbert van der Helm 091e4db2ab Reword parts of the changelog 2020-05-29 18:47:10 +02:00
Robbert van der Helm 06de49ded2 Unify event handling behavior for all cases
This makes the individual plugin host slightly more complex, but now
both individually hosted plugins and plugin groups handle both
dispatcher events and GUI events in the exact same way.
2020-05-28 13:53:25 +02:00
Robbert van der Helm effca96ead Correct capitalization on FabFilter 2020-05-27 17:12:48 +02:00
Robbert van der Helm ab4d35886e Add a fix for the keyboard focus in Bitwig 3.2 2020-05-26 19:39:51 +02:00
Robbert van der Helm e61b70ed97 Add the new plugin groups to the changelog #15
With this the plugin groups functionality is feature complete, although
I still want to do a few rounds of refactoring and the readme has not
yet been updated.
2020-05-23 15:28:54 +02:00
Robbert van der Helm daad6f2f00 Fix empty line spam in log file when Wine crashes 2020-05-19 12:27:32 +02:00
Robbert van der Helm 4e80e23cc0 Revert "Don't link the winelibs with libboost_filesystem"
This reverts commit e728dbe5a2.

`std::filesystem` is broken on wineg++, at least with Wine 5.8. Any path
operations will throw a `std::filesystem::__cxx11::filesystem_error`:

  what():  filesystem error: Cannot convert character sequence: Invalid or incomplete multibyte or wide character
2020-05-18 16:15:07 +02:00
Robbert van der Helm 312200f100 Make the 'this_line_location' hack more reliable
It shouldn't be done if it's not needed.
2020-05-17 14:43:21 +02:00
Robbert van der Helm e728dbe5a2 Don't link the winelibs with libboost_filesystem
It's not actually used anywhere.
2020-05-15 16:30:39 +02:00
Robbert van der Helm 37a74c8f98 Get rid of the dedicated AEffect socket 2020-05-13 13:15:52 +02:00
Robbert van der Helm 1abdeb52c6 Bump version to 1.1.4 2020-05-12 23:02:34 +02:00
Robbert van der Helm 7ff31544cc Fix wording in changelog 2020-05-12 13:34:16 +02:00
Robbert van der Helm de14cbd198 Bump to version 1.1.3 2020-05-12 13:19:05 +02:00
Robbert van der Helm 0900dc9e18 Work around race condition in certain plugins
Some plugins would either crash or freeze on the next Win32 message loop
when `effEditGetRect` gets called before `effEditOpen` and we run the
message loop between these two event calls.

Fixes the issue with Superior Drummer 3 in Bitwig mentioned in #12 and a
similar issue with the Roland Cloud synths.
2020-05-12 13:17:24 +02:00
Robbert van der Helm 36668bbe72 Reorder changelog 2020-05-12 13:17:07 +02:00
Robbert van der Helm 901d985080 Fix potential issue with plugins reporting size
I thought this was a problem for a plugin when it was not, but I can
still see this being a source of segfaults.
2020-05-11 22:54:42 +02:00
Robbert van der Helm 33e5d2bd56 Add a workaround for compilation with Wine 5.7+ 2020-05-11 18:11:44 +02:00
Robbert van der Helm 686ca11ba8 Work around improperly late initializing plugins
This fixes the Roland Cloud plugins.
2020-05-10 13:42:20 +02:00
Robbert van der Helm e4ca95397f Fix wording in changelog 2020-05-09 22:53:41 +02:00
Robbert van der Helm 65ab7bd19b Bump to version 1.1.2 2020-05-09 22:47:58 +02:00
Robbert van der Helm f4bfeca2ad Change wording in chagenlog 2020-05-09 21:42:51 +02:00
Robbert van der Helm 54295f3a27 Fix shutdown cleanup issue for Ardour and Mixbus
Instead of just detaching the threads, it's much better to terminate the
Wine process and let the threads terminate themselves.

This fixes #11 on my machine.
2020-05-09 21:31:57 +02:00
Robbert van der Helm 129c0a81d2 Bump version to 1.1.1 2020-05-09 16:35:14 +02:00
Robbert van der Helm 484032202a Stop accepting sockets if Wine crashes on startup 2020-05-09 16:31:11 +02:00
Robbert van der Helm 57cb404f6b Use a Logger to print initialization errors
This way the errors will get written to a file instead of to STDERR if
`YABRIDGE_DEBUG_FILE` is set.
2020-05-09 11:15:27 +02:00
Robbert van der Helm c76992bb66 Only suggest using symlinks with sandboxed plugins
Now that I think about it it's pretty obvious why symlinks only work
with hosts that support plugin sandboxing (since your OS will never load
two instaces of an identical .so file into the same process). Still, I
find using symlinks in hosts that do sandbox their plugins to be very
user friendly, especially while developing.
2020-05-08 13:00:19 +02:00
Robbert van der Helm af800c7ecb Fix typos in the changelog 2020-05-08 11:40:57 +02:00
Robbert van der Helm 8e6d273944 Change use of emphasis in the changelog 2020-05-07 19:09:37 +02:00
Robbert van der Helm e30ad2ccb5 Bump to version 1.1.0 2020-05-07 18:29:05 +02:00
Robbert van der Helm 868b0fd357 Finally implement eff{Set,Get}SpeakerConfiguration
As mentioned in #1. This also indirectly allows yabridge to work under
Renoise.
2020-05-07 18:23:41 +02:00
Robbert van der Helm 192154f869 Print the used Wine version on startup 2020-05-07 14:42:38 +02:00
Robbert van der Helm dd684c26e1 Increase the maximum number of audio channels
This fixes #10, as Scaler was reporting 64 inputs.
2020-05-06 23:47:05 +02:00
Robbert van der Helm 261cf0554c Change prefix detection to be relative to the .dll 2020-05-06 19:16:19 +02:00
Robbert van der Helm f79115992b Work around issue with invalid plugin paths #2
I'm not sure what would be causing this in some cases.
2020-05-06 18:30:38 +02:00
Robbert van der Helm 8a094dacb5 Mention the automated builds in the changelog 2020-05-06 18:21:20 +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 37d262f427 Add a changelog 2020-05-03 15:56:40 +02:00