What problem does it solve?
Integrates optional Audio Random Access (ARA) support into the Pulp framework to enable timeline-aware, non-linear audio editing and document-based audio workflows for plugins and hosts without committing vendor SDKs into the repository.
Core Features & Use Cases
- Developer-supplied SDK setup: Guidance for cloning and verifying the Celemony ARA SDK as an out-of-tree, opt-in dependency.
- Build and enablement: CMake knobs and build-time guards to enable or disable ARA (PULP_ENABLE_ARA, PULP_ARA_SDK_DIR) and fast-fail on missing headers.
- Adapter & plugin guidance: Adapter companion factory bindings for CLAP, VST3, and AU plus instructions for subclassing AraDocumentController and translating between Pulp types and SDK structs.
- Validation & tests: ABI and runtime verification steps, smoke tests, and expectations for factory/controller behavior across hosts.
Quick Start
Build Pulp with ARA enabled by configuring CMake with PULP_ENABLE_ARA=ON and PULP_ARA_SDK_DIR pointing to your cloned external/ara-sdk.