1 unstable release
Uses new Rust 2024
new 0.1.2 | Apr 3, 2025 |
---|
#29 in #synthesis
Used in 2 crates
7MB
61K
SLoC
Aloe Ex Plugins
Overview
Aloe Ex Plugins is a comprehensive Rust crate designed to facilitate advanced audio processing and synthesis capabilities. It leverages high-performant abstractions to manage audio effects, sample processing, and MIDI control.
This crate provides various components including audio processors, synthesis voices, and audio format readers. It is highly customizable and serves as a robust foundation for building intricate audio applications, be it standalone instruments or effects plugins.
Key Components
- MPESamplerVoiceDirection & LoopMode: Enumerations representing sample voice direction and loop modes, crucial for defining audio playback and loop strategies.
- MeterListener & EmbeddedUI: Traits designed to monitor audio levels and handle embedded user interface messages for integrated audio processors.
- AudioProcessor Architectures: A collection of audio processor structures such as
AloeDemoPluginAudioProcessor
andIAAEffectProcessor
which provide foundational processing logic. - Integration and Control: Features like
MPESettingsDataModel
andVisibleRangeDataModel
assist in handling MIDI Polyphonic Expression (MPE) configurations and visual range adjustments.
Getting Started
To integrate Aloe Ex Plugins into your Rust project, add the following to your Cargo.toml
:
[dependencies]
aloe-ex-plugins = "0.1.0"
Usage
This crate is designed for developers with an understanding of audio signal processing and Rust's trait system. Implement the provided traits to create custom audio processors or synth voices:
use aloe_ex_plugins::{MPESamplerVoiceDirection, LoopMode, MeterListener};
struct MyProcessor;
impl MeterListener for MyProcessor {
fn handle_new_meter_value(&mut self, _0: i32, _1: f32) {
// Custom handling of meter values
}
}
Note
The contents of this README.md file were generated by an AI model. While every effort has been made to ensure accuracy, be aware there may be subtleties that require human verification.
License
Licensed under the GPL-3.0.
For more information, please refer to the repository: GitHub
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
~47MB
~826K SLoC