music.Sequencer¶
- class music.Sequencer(sample_rate=44100, events=<factory>)[source]¶
Bases:
objectSchedules notes and renders them as audio.
- Attributes:
- sample_rate
integer The sampling frequency in Hertz, used for every note rendered and for turning each event’s start time into a sample offset.
- events
listofNoteEvent The scheduled notes. Normally built with
add_note()rather than passed in, and rendered in order of their start times rather than the order they were added.
- sample_rate
- Parameters:
See also
music.StimulationSessionphases in sequence rather than notes at offsets, for stimulation protocols.
Examples
>>> seq = Sequencer() >>> for i, freq in enumerate([440, 550, 660]): ... seq.add_note(freq, start=i * 0.25, duration=1.0) >>> len(seq.events) 3 >>> seq.write("chord.wav")
- __init__(sample_rate=44100, events=<factory>)¶
Methods
__init__([sample_rate, events])add_note(freq, start, duration[, ...])Add a note event to the sequencer.
render()Render all scheduled events and return the audio array.
write(filename[, bit_depth])Write the rendered audio to a WAV file.
Attributes
- add_note(freq, start, duration, vibrato_freq=0.0, max_pitch_dev=0.0, adsr_params=None, spatial=None)[source]¶
Add a note event to the sequencer.
- Raises:
ValueErrorIf
startis negative. Rendering placed such a note at a negative sample offset and failed with a broadcasting error.
- Parameters:
- Return type:
None