pub enum Meta {
Show 16 variants
SequenceNumber(u16),
Text(String),
Copyright(String),
TrackName(String),
InstrumentName(String),
Lyric(String),
Marker(String),
CuePoint(String),
ChannelPrefix(Channel),
EndOfTrack,
SetTempo(u32),
SmpteOffset(HighResTimeCode),
TimeSignature(FileTimeSignature),
KeySignature(KeySignature),
SequencerSpecific(Vec<u8>),
Unknown {
meta_type: u8,
data: Vec<u8>,
},
}Expand description
A meta event in a Standard Midi File
Variants§
SequenceNumber(u16)
Must occur at the start of a track, and specifies the sequence number of the track. In a MultiSong file, this is the “pattern” number that identifies the song for cueing purposes.
Text(String)
Any text, describing anything
Copyright(String)
A copyright notice
TrackName(String)
The name of the track
InstrumentName(String)
The name of the instrument used in the track
Lyric(String)
A lyric. See RP-017 for guidance on the use of this meta event.
Marker(String)
Normally only used in a SingleTrack file, or the first track of a MultiTrack file. Used to mark significant points in the music.
CuePoint(String)
A description of something happening at a point in time
ChannelPrefix(Channel)
The MIDI channel that the following track events are intended for. Effective until the next event that specifies a channel.
EndOfTrack
Marks the end of a track. This event is not optional. It must be the last event in every track.
SetTempo(u32)
The tempo in microseconds per quarter note.
SmpteOffset(HighResTimeCode)
If present, the time at which the track is supposed to start. Should be present at the start of the track.
TimeSignature(FileTimeSignature)
A time signature.
KeySignature(KeySignature)
A key signature.
SequencerSpecific(Vec<u8>)
A chunk of data that is specific to the sequencer that created the file.
Unknown
Any other meta event that is not recognized
Trait Implementations§
impl StructuralPartialEq for Meta
Auto Trait Implementations§
impl Freeze for Meta
impl RefUnwindSafe for Meta
impl Send for Meta
impl Sync for Meta
impl Unpin for Meta
impl UnwindSafe for Meta
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)