pub enum ChannelVoiceMsg {
NoteOn {
note: u8,
velocity: u8,
},
NoteOff {
note: u8,
velocity: u8,
},
ControlChange {
control: ControlChange,
},
HighResNoteOn {
note: u8,
velocity: u16,
},
HighResNoteOff {
note: u8,
velocity: u16,
},
PolyPressure {
note: u8,
pressure: u8,
},
ChannelPressure {
pressure: u8,
},
ProgramChange {
program: u8,
},
PitchBend {
bend: u16,
},
}Expand description
Channel-level messages that act on a voice. For instance, turning notes on off,
or modifying sounding notes. Used in MidiMsg.
Variants§
NoteOn
Turn on a note
Fields
NoteOff
Turn off a note
Fields
ControlChange
Generally used for modifying the tones being played. Frequently shortened to ‘CC’
Fields
control: ControlChangeHighResNoteOn
A note on with a preceding HighResVelocity CC per CA-031
HighResNoteOff
A note off with a preceding HighResVelocity CC per CA-031
PolyPressure
The amount of pressure being applied to a given note, which is a signal some controllers
after an initial NoteOn.
Can act on multiple notes at a time, thus it is “polyphonic”.
Fields
ChannelPressure
Similar to PolyPressure, but only applies at the channel-level.
ProgramChange
Which “program”, “patch” or “sound” to use when playing any preceding notes, 0-127.
Use GMSoundSet when targeting General MIDI
PitchBend
Apply a pitch bend to all sounding notes. 0-8191 represent negative bends,
8192 is no bend and8193-16383 are positive bends, with the standard bend rang
being +/-2 semitones per GM2. See Parameter::PitchBendSensitivity
Trait Implementations§
source§impl Clone for ChannelVoiceMsg
impl Clone for ChannelVoiceMsg
source§fn clone(&self) -> ChannelVoiceMsg
fn clone(&self) -> ChannelVoiceMsg
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for ChannelVoiceMsg
impl Debug for ChannelVoiceMsg
source§impl PartialEq for ChannelVoiceMsg
impl PartialEq for ChannelVoiceMsg
impl Copy for ChannelVoiceMsg
impl Eq for ChannelVoiceMsg
impl StructuralPartialEq for ChannelVoiceMsg
Auto Trait Implementations§
impl Freeze for ChannelVoiceMsg
impl RefUnwindSafe for ChannelVoiceMsg
impl Send for ChannelVoiceMsg
impl Sync for ChannelVoiceMsg
impl Unpin for ChannelVoiceMsg
impl UnwindSafe for ChannelVoiceMsg
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)