Containers
MIDI containers — Pattern and Track.
A MIDI file is represented as a hierarchical set of objects: a
Pattern holds one or more Track objects, and each
Track holds a sequence of MIDI events. Both implement
MutableSequence so they behave like lists.
Pattern
- class midi.Pattern(tracks=None, resolution=220, format=1, tick_relative=True)
Bases:
MutableSequence[Track]Top-level MIDI container holding one or more tracks.
Implements
MutableSequence— supports indexing, iteration,append, slicing, etc.- Parameters:
- __init__(tracks=None, resolution=220, format=1, tick_relative=True)
- insert(index, value)
S.insert(index, value) – insert value before index
Track
- class midi.Track(events=None, tick_relative=True)
Bases:
MutableSequence[AbstractEvent]An ordered sequence of MIDI events forming a single track.
Implements
MutableSequence— supports indexing, iteration,append, slicing, etc.- Parameters:
events (
Iterable[AbstractEvent] |None) – Initial events to include.tick_relative (
bool) – Whether event ticks are delta times (True) or absolute (False).
- __init__(events=None, tick_relative=True)
- Parameters:
events (Iterable[AbstractEvent] | None)
tick_relative (bool)
- Return type:
None
- insert(index, value)
S.insert(index, value) – insert value before index
- Return type:
- Parameters:
index (int)
value (AbstractEvent)
- make_ticks_abs()
Convert event ticks from relative (delta) to absolute.
Each event’s tick becomes the cumulative sum of all preceding delta ticks. Has no effect if ticks are already absolute.
- Return type: