Expand description
Audio visualization primitives for nannou sketches.
bbx_draw provides visualizers that can be embedded in any nannou application,
with lock-free communication between audio and visualization threads via
bbx_core::SpscRingBuffer.
§Visualizers
GraphTopologyVisualizer- DSP graph topology displayWaveformVisualizer- Oscilloscope-style waveformSpectrumAnalyzer- FFT-based spectrum displayMidiActivityVisualizer- MIDI note activity
§Example
ⓘ
use bbx_draw::{Visualizer, visualizers::GraphTopologyVisualizer};
use bbx_dsp::graph::GraphBuilder;
// Capture topology from graph builder
let mut builder = GraphBuilder::<f32>::new(44100.0, 512, 2);
builder.add_oscillator(440.0, Waveform::Sine, None);
let topology = builder.capture_topology();
// Create visualizer
let visualizer = GraphTopologyVisualizer::new(topology);Re-exports§
pub use bridge::AudioBridgeConsumer;pub use bridge::AudioBridgeProducer;pub use bridge::MidiBridgeConsumer;pub use bridge::MidiBridgeProducer;pub use bridge::audio_bridge;pub use bridge::midi_bridge;pub use visualizers::GraphTopologyVisualizer;pub use visualizers::MidiActivityVisualizer;pub use visualizers::SpectrumAnalyzer;pub use visualizers::WaveformVisualizer;
Modules§
- bridge
- Audio and MIDI data bridges for thread-safe communication.
- color
- Color palette utilities for visualizations.
- config
- Visualization configuration types.
- sketch
- Sketch trait and sketchbook system.
- visualizers
- Audio and DSP visualizers.
Structs§
- Frame
- A frame of audio data for visualization or inter-thread communication.
Constants§
- MAX_
FRAME_ SAMPLES - Maximum number of interleaved samples per frame. Supports up to 512 samples per channel for stereo (1024 total).
Traits§
- Visualizer
- Core trait for all visualizers.
Type Aliases§
- Audio
Frame - Type alias for
Frameto avoid confusion with visual frames in nannou.