diff --git a/CHANGELOG.md b/CHANGELOG.md index 75d7b23d..a4b55521 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,12 @@ Versioning](https://semver.org/spec/v2.0.0.html). ### Added +- Yabridge will now also show desktop notifications when encountering low + `RLIMIT_RTTIME` and `RLIMIT_MEMLOCK` values. This can happen on systems that + have not yet been configured correctly for pro audio work, and certain plugins + will crash during initialization until this is fixed. We would already print + warnings about this to the terminal, but since some don't read those it seems + like a good idea to make them more visible. - Added a new `editor_coordinate_hack` option which replaces `editor_double_embed`. This can be useful with buggy plugins that have their editor GUIs misaligned after resizing the window because they draw their GUI diff --git a/src/plugin/bridges/common.h b/src/plugin/bridges/common.h index aa35f9dd..63a25c3f 100644 --- a/src/plugin/bridges/common.h +++ b/src/plugin/bridges/common.h @@ -159,8 +159,23 @@ class PluginBridge { init_msg << " using PipeWire. yabridge may crash when " "loading plugins" << std::endl; - init_msg << " until you fix this." << std::endl; + init_msg << " until you fix this. Check the readme for " + "instructions" + << std::endl; + init_msg << " on how to fix this." << std::endl; init_msg << std::endl; + + send_notification( + "Low RTTIME limit detected", + "RLIMIT_RTTIME is set to " + + std::to_string(*rttime_limit) + + " us. This can happen when using PipeWire's JACK " + "backend with the default settings. Some plugins " + "may crash during initialization because of this, " + "so it's recommended to either increase or to " + "remove this limit. Check the readme for " + "instructions on how to do that.", + false); } else { init_msg << "'yes'" << std::endl; }