#vst #api-bindings #interapp #hostcommunication #presetmanagement

aloe-vst-inter-app

Provides advanced interfaces for VST plug-in control, preset management, and inter-app audio connections in Rust. This crate is a translation of the c++ juce module serving the same function.

1 unstable release

Uses new Rust 2024

new 0.1.1 Apr 4, 2025

#23 in #vst


Used in 2 crates

GPL-3.0 license

230KB
2.5K SLoC

Aloe VST Inter-App

Overview

Aloe VST Inter-App is a Rust crate facilitating advanced interaction between audio applications via Inter-App Audio protocols. It provides robust interfaces for improved plug-in control and host communication in VST 3.6.0 environments.

Features

  • Preset Management:

    • Manage plugin presets with seamless open and save functionalities.
    • Navigate through presets using forward and backward controls.
  • Connection Notifications:

    • Receive real-time notifications on audio connection state changes.
  • Host Interface:

    • Interact with host applications to obtain screen dimensions and connectivity status.
    • Enable host switching and remote control event handling.
    • Access host icons and schedule user interface events efficiently.

Usage

Implement the IInterAppAudioPresetManager to integrate preset management features facilitating intuitive preset access and manipulation. Utilize the IInterAppAudioConnectionNotification to react to audio connection state changes, ensuring responsiveness and reliability in host environments.

The IInterAppAudioHost interface permits integration with host applications, providing methods for screen size retrieval, host connectivity checks, and interface customizations.

Getting Started

To use Aloe VST Inter-App, add the crate to your Cargo.toml:

[dependencies]
aloe-vst-inter-app = "0.1.0"

Ensure compliance with GPL-3.0 licensing terms.

Contribution

Contributions are welcome! Please visit the GitHub repository to create issues or pull requests.


This README was generated by an AI model and may not capture all details, although it should be generally reliable.

This crate is a translation of the JUCE module.

JUCE is a c++ software framework for developing high performance audio applications.

Usage falls under the GPLv3 as well as the JUCE commercial license.

See github.com/juce-framework/JUCE and the JUCE license page for details.

This crate is in the process of being translated from c++ to rust. For progress updates, please see the workspacer rust project. designed specifically for rust projects.

Dependencies

~39MB
~631K SLoC