Crate elemaudio_rs

Crate elemaudio_rs 

Source
Expand description

Safe Rust bindings for the Elementary audio runtime.

This crate exposes a small wrapper around the native runtime handle, JSON instruction batches, a Rust-native resource manager, and audio processing entrypoints.

Re-exports§

pub use authoring::el;
pub use authoring::extra;
pub use authoring::mc;
pub use core::create_node;
pub use core::is_node;
pub use core::resolve;
pub use core::unpack;
pub use core::ElemNode;
pub use engine::DspGraph;
pub use engine::Engine;
pub use engine::KeyedConst;
pub use engine::NativeProp;
pub use graph::Graph;
pub use graph::MountError;
pub use graph::MountedGraph;
pub use graph::MountedNode;
pub use graph::Node;

Modules§

authoring
Authoring surface for graph composition.
core
engine
Generic DSP engine that pairs a DspGraph implementation with a Runtime, handling graph mounting, parameter diffing, and audio processing.
graph
Minimal Rust-native graph DSL for Elementary-style node composition.
logging
Framework-level file logger.

Structs§

AudioBuffer
Rust-native resource registry and resource values. Decoded audio stored in Rust-owned memory.
AudioRingBuffer
Lock-free audio transport for producer/consumer playback. Lock-free SPSC ring buffer for interleaved audio samples.
InstructionBatch
Instruction types and the runtime wrapper. A batch of instructions serialized to the runtime JSON array shape.
ResourceId
Rust-native resource registry and resource values. Identifier used to address a resource.
ResourceManager
Rust-native resource registry and resource values. Simple resource registry with safe add, replace, remove, and rename operations.
Runtime
Instruction types and the runtime wrapper. Safe owner for a native runtime handle.

Enums§

Error
Error types and helpers used by the public API. Errors returned by the safe wrapper.
Instruction
Instruction types and the runtime wrapper. Instruction supported by the current wrapper surface.
Resource
Rust-native resource registry and resource values. A resource stored in the manager.

Type Aliases§

NodeId
Instruction types and the runtime wrapper. Runtime node identifier used by instruction batches and GC results.
Result
Error types and helpers used by the public API. Result type used by the public API.