Crate autosam

Source
Expand description

Utilities and infrastructure for building an auto-sampler

§Example

let config = Config { notes: 48..=72, ..Default::default() };
let mut sequencer = Sequencer::new(config, 48_000).unwrap();

let AdvanceResult::Event { position, note } = sequencer.advance(1) else { panic!() };
assert_eq!(position, 0);
assert_eq!(note.state(), midi::NoteState::On);
assert_eq!(note.pitch().note_number(), 48);
assert_eq!(note.velocity(), 127);

Modules§

midi
Data types representing MIDI concepts
util
Internal utilities for the library

Structs§

Config
Configuration for an autosampling run
Sequencer
An entity that can drive the auto-sampling process
SequencerIntoIter
An iterator that produces all note events in a Sequencer

Enums§

AdvanceResult
The outcome of trying to advance the state of a Sequencer
SequencerError
A problem encountered when creating a Sequencer