Commit Graph

83 Commits

Author SHA1 Message Date
Robbert van der Helm ae402aa805 Fix plugin groups outside of Wine prefixes
Boost.Process's `boost::process::environment::at` throws when the
environment variable does not exist, as opposed to `operator[]` which
falls back to an empty value.
2020-09-27 17:26:16 +02:00
Robbert van der Helm f67e1923cc Also search through /usr/local/lib in yabridgectl
For automatic path detection. It's still not recommended to install
yabridge there, but if you know what you're doing then this would at
least be a good default to have.
2020-09-27 13:33:53 +02:00
Robbert van der Helm 4c89558457 Resolve relative paths in yabridgectl 2020-09-22 23:15:51 +02:00
Robbert van der Helm 844ef7a8c5 Bump to version 1.6.0
This has been a bit overdue, but since this only fixes a few niche
issues with Renoise and REAPER I wanted to make sure that it actually
worked.
2020-09-17 14:47:16 +02:00
Robbert van der Helm f40d922f91 Reword changelog 2020-09-17 14:45:43 +02:00
Robbert van der Helm 15b6442a5a Remove the notice about double precision audio
Now that yabridge 1.6.0 will finally get a release.
2020-09-17 14:42:45 +02:00
Robbert van der Helm 504102ef79 Increase the maximum number of audio channels #35
Not sure why it's doing this, but Renoise seems to report 112 speakers
per audio channel, so the 256 audio channel limit would be exceeded when
using more than 2 output channels.
2020-08-31 23:42:24 +02:00
Robbert van der Helm 0f0b24506e Add a todo to the changelog about updating readme 2020-08-24 16:15:54 +02:00
Robbert van der Helm 8198a73742 Add support for double precision audio #34
So far I've only seen REAPER running iZotope Rx plugins utilize this.
2020-08-24 16:13:29 +02:00
Robbert van der Helm 1db10aa694 Reword the changelog 2020-08-21 15:18:30 +02:00
Robbert van der Helm 8ce4ebfc28 Bump to version 1.5.0 2020-08-21 15:11:36 +02:00
Robbert van der Helm b452f961db Add option to work around bugs in REAPER/Renoise
This is not ideal since it requires the user to know about this option
and to create a config file, but I think it's the best we can do without
compromising on yabridge's transparency and 'zero hacks' philosophy.

See #29 and #32.
2020-08-17 15:49:16 +02:00
Robbert van der Helm becb73928e Add a limit to all Win32 message loops #28
This works around Waves plugins causing an infinite message loop. Since
we run the loop 30 times per second anyways splitting the loop up into
chunks of 20 shouldn't be an issue.
2020-08-14 11:36:55 +02:00
Robbert van der Helm c64fdb21d7 Don't print calls to effIdle with debug level 1
REAPER seems to be the only DAW that uses this.
2020-08-11 15:26:11 +02:00
Robbert van der Helm c3638a7d5d Reword changelog 2020-07-27 16:36:10 +02:00
Robbert van der Helm 56c939012d Bump to version 1.4.1 2020-07-27 16:33:41 +02:00
Robbert van der Helm f02dbb3755 Fix TOML parsing with large unsigned integers
The parser parses everything as signed integers so the configuration
file will fail to parse large numbers that don't fit in an i64.

https://github.com/alexcrichton/toml-rs/issues/256
2020-07-27 16:25:36 +02:00
Robbert van der Helm 81696f4dde Fix broken symlinks not being removed
`Path::exists()` returns false for broken symlinks:

https://doc.rust-lang.org/std/path/struct.Path.html#method.exists
2020-07-27 16:10:27 +02:00
Robbert van der Helm 6838c5d263 Reword fix in changelog 2020-07-26 15:38:26 +02:00
Robbert van der Helm f5b1d48d96 Bump version to 1.4.0 2020-07-26 15:20:48 +02:00
Robbert van der Helm 32fef158a7 Reword changelog 2020-07-26 15:18:48 +02:00
Robbert van der Helm 126f021236 Remove note about Wine check in the next version
Since we're releasing yabridge 1.4.0 now.
2020-07-26 15:10:30 +02:00
Robbert van der Helm 6f5dae90a6 Set realtime priorities if available
This significantly reduces the latency with no real drawbacks from what
I've noticed. Wineserver is still run using the normal scheduling
policies because from my testing running that with realtime priority
that can actually increase latencies, although doing so will greatly
reduce the variance in processing time.
2020-07-23 19:57:50 +02:00
Robbert van der Helm de1979781f Add double editor embedding mode to the changelog 2020-07-23 16:56:58 +02:00
Robbert van der Helm c83680a21a Remove old workaround for rare Ubuntu path issue
This got fixed properly in `get_file_location()`, but this function
still contained an old hack.
2020-07-21 01:04:20 +02:00
Robbert van der Helm 6bba1a9bf8 Check for Wine and yabridge compatibility on sync
This will probably solve the last common setup issue. Starting Wine can
take a second so this check is only repeated when either Wine or
yabridge get updated.
2020-07-19 16:57:18 +02:00
Robbert van der Helm 3e438be302 Add an option to disable setup checks
The path check should only take a few milliseconds to run, but checking
whether yabridge-host.exe runs correctly could take over a second when
wineserver isn't already running in the background.
2020-07-19 13:54:12 +02:00
Robbert van der Helm fdb0cf49d6 Fix link to yabridgectl readme in changelog 2020-07-18 19:44:43 +02:00
Robbert van der Helm c5ec9b9dd3 Bump to version 1.3.0 2020-07-17 15:19:51 +02:00
Robbert van der Helm ec062af9e0 Rewrite the changelog entry for yabridgectl 2020-07-16 17:00:36 +02:00
Robbert van der Helm 410d92aa8b Deprecate 'use-bitbridge' and 'use-winedbg'
Following the addition of 'with-bitbridge' and 'with-winedbg' in
yabridge 1.2.1 to stay consistent with the other options.
2020-07-16 13:31:12 +02:00
Robbert van der Helm 6dda4f9683 Add a changelog entry for yabridgectl 2020-07-15 17:47:03 +02:00
Robbert van der Helm 6a01856f37 Bump the version 2020-06-20 18:05:09 +02:00
Robbert van der Helm 4122b644f2 Change wording in the changelog 2020-06-20 18:04:20 +02:00
Robbert van der Helm d86b57681b Distinguish between active group hosts and zombies 2020-06-20 16:58:43 +02:00
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