pub enum OfflineRenderSemanticEventKind {
InstrumentChange {
instrument_id: String,
channel: u8,
program: u8,
transpose_semitones: i8,
},
Controller {
channel: u8,
controller: u8,
value: u8,
},
PitchBend {
channel: u8,
value: i16,
},
ProgramChange {
channel: u8,
program: u8,
},
Aftertouch {
channel: u8,
key: Option<u8>,
value: u8,
},
Tempo {
bpm: u16,
ramp_to_bpm: Option<u16>,
},
Navigation {
marker: String,
},
Pedal {
down: bool,
},
Articulation {
articulation: Articulation,
},
GuitarBend {
points: Vec<GuitarBendPoint>,
},
ReleaseTail,
}Expand description
A non-note semantic action expressed on the same sample-frame clock as
OfflineRenderFrameEvent. Audio providers can consume these without
reverse-engineering notation from a note schedule.
Variants§
InstrumentChange
A measure-local instrument routing change. Providers apply this before attacks at the same frame rather than inferring it from note events.
Controller
PitchBend
Signed MIDI 14-bit pitch bend retained from the interchange timeline.
ProgramChange
MIDI program selection at a canonical score tick.
Aftertouch
Channel pressure or key pressure at a canonical score tick.
Tempo
Pedal
Articulation
Fields
§
articulation: ArticulationGuitarBend
Fields
§
points: Vec<GuitarBendPoint>ReleaseTail
A semantic release boundary. It intentionally has no synthesis parameters: providers decide how a release tail is rendered.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for OfflineRenderSemanticEventKind
impl<'de> Deserialize<'de> for OfflineRenderSemanticEventKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for OfflineRenderSemanticEventKind
Auto Trait Implementations§
impl Freeze for OfflineRenderSemanticEventKind
impl RefUnwindSafe for OfflineRenderSemanticEventKind
impl Send for OfflineRenderSemanticEventKind
impl Sync for OfflineRenderSemanticEventKind
impl Unpin for OfflineRenderSemanticEventKind
impl UnsafeUnpin for OfflineRenderSemanticEventKind
impl UnwindSafe for OfflineRenderSemanticEventKind
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
Mutably borrows from an owned value. Read more