Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Aloe-LADSPA
aloe-ladspa
is a Rust crate providing comprehensive management and instantiation of LADSPA audio plugins on Unix-like systems. This crate primarily focuses on implementing a plugin format manager capable of loading, scanning, and operating LADSPA plugins in an audio processing environment, leveraging dynamic libraries via libladspa
. It supports Linux and BSD platforms.
Features
- Plugin Format Management: Offers structure and functionality to manage and recognize LADSPA plugins.
- Dynamic Module Handling: Loads and interacts with modules via dynamic library utilities.
- Instance Creation and Lifecycle: Provides methods for creating plugin instances, initializing audio parameters, and executing plugins.
- Efficient Resource Management: Ensures proper resource allocation and deallocation with
Drop
traits and recursive searches. - Thread Safety: Utilizes critical sections to ensure thread-safe operations during plugin interactions.
Introduction to Core Components
The crate comprises several core constructs that define its functionality:
LADSPAPluginFormat
- Manages plugin formats and scanning processes.
- Provides methods to determine a file's plugin validity and manage search directories.
LADSPAModuleHandle
- Handles the loading and management of dynamic libraries, maintaining active module lists.
- Implements RAII for module opening and closing.
LADSPAPluginInstance
- Represents individual plugin instances, dealing with initialization and execution.
- Manages audio buffers and ports, facilitating seamless audio processing.
Usage
Add aloe-ladspa
to your Cargo.toml
:
[]
= "0.1"
Include the crate in your project:
use ;
// Example usage creating and initializing a LADSPA plugin instance
Note: This README was generated by an AI model, it may not be fully accurate, but it strives to offer a useful overview.
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.