Enum midi_msg::ChannelVoiceMsg

source ·
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

§note: u8

A MIDI note number 0-127. Per GM1, 69 = A440

§velocity: u8

The velocity the note should be played at, 0-127

§

NoteOff

Turn off a note

Fields

§note: u8

Stop playing the given MIDI note at this channel, 0-127

§velocity: u8

The velocity the note should stop being played at, 0-127

§

ControlChange

Generally used for modifying the tones being played. Frequently shortened to ‘CC’

Fields

§

HighResNoteOn

A note on with a preceding HighResVelocity CC per CA-031

Fields

§note: u8
§velocity: u16
§

HighResNoteOff

A note off with a preceding HighResVelocity CC per CA-031

Fields

§note: u8
§velocity: u16
§

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

§note: u8

The note to apply this pressure signal to, 0-127

§pressure: u8

The amount of pressure to apply, 0-127

§

ChannelPressure

Similar to PolyPressure, but only applies at the channel-level.

Fields

§pressure: u8
§

ProgramChange

Which “program”, “patch” or “sound” to use when playing any preceding notes, 0-127. Use GMSoundSet when targeting General MIDI

Fields

§program: u8
§

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

Fields

§bend: u16

Trait Implementations§

source§

impl Clone for ChannelVoiceMsg

source§

fn clone(&self) -> ChannelVoiceMsg

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ChannelVoiceMsg

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for ChannelVoiceMsg

source§

fn eq(&self, other: &ChannelVoiceMsg) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for ChannelVoiceMsg

source§

impl Eq for ChannelVoiceMsg

source§

impl StructuralPartialEq for ChannelVoiceMsg

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.