Easily add Remote Procedure Call(s) to your CLAP audio plugin(s).
I wanted a fast and reliable way to enable out-of-process communication for plugins. This library allows any client to connect and start interacting with the plugin, whether on the same machine or over a private network. It provides an efficient and flexible way for bidirectional communication between a plugin instance and its clients, which can be written in any of the supported client-languages
The protobuf messages in clapservice.proto defines the exposed interface. In combination with gRPC, we exchange messages between clients and plugins through (long-lived) streams. A client can connect to any plugin in the CLAP bundle. The server runs on the plugin side and should be shared across plugin instances.
gRPC is a required dependency of this project.