Module rsynth::backend

source ·
Expand description

Backends.

Pre-defined backends

rsynth currently supports the following back-ends:

  • combined combine different back-ends for audio input, audio output, midi input and midi output, mostly for offline rendering and testing (behind various features)
  • jack (behind the backend-jack feature)
  • vst (behind the backend-vst)

These backends are currently in the rsynth crate, but we may eventually move them to separate crates.

Custom backends

You can write a backend in a separate crate. If you encounter problems that prevent you from writing your backend in a separate crate (e.g., we have forgotten to mark something as pub), let us know by opening an issue.

Publishing a backend crate

When you publish a backend crate, let us know by opening an issue or pull request so that we can link to it in the documentation of rsynth.

Modules

  • Combine different back-ends for audio input, audio output, midi input and midi output, mostly for offline rendering and testing.
  • Wrapper for the JACK backend. Support is only enabled if you compile with the “backend-jack” feature, see the cargo reference for more information on setting cargo features.
  • Wrapper for the VST backend.

Traits

  • Defines an interface for communicating with the host or server of the backend, e.g. the VST host when using VST or the Jack server when using Jack.
  • A marker trait that indicates that the backend can be stopped.