Strawberry.Sound.Midi Namespace
Documentation for types in the Strawberry.Sound.Midi namespace.
Classes
| Type | Description |
|---|---|
Strawberry.Sound.Midi.ManagedSynthBackend |
Pure managed C# MIDI synthesizer backend. Produces basic waveform output (sine, square, sawtooth, triangle, noise) with simple ADSR envelopes. |
Strawberry.Sound.Midi.MidiController |
Standard MIDI Control Change controller numbers (CC). |
Strawberry.Sound.Midi.MidiEvent |
Represents a single parsed MIDI event with absolute timing. Events are sorted by AbsoluteTicks after track merging. TimeSeconds is computed from the tempo map after parsing. |
Strawberry.Sound.Midi.MidiFile |
Parses a standard MIDI file (SMF) into a sorted list of {{cref:Strawberry.Sound.Midi.MidiEvent}}s with absolute tick positions and computed time-in-seconds. |
Strawberry.Sound.Midi.MidiReader |
An {{cref:Strawberry.Sound.ISoundReader}} that synthesises PCM audio from a MIDI file, compatible with the Strawberry engine's streaming system. |
Strawberry.Sound.Midi.TinySoundFontBackend |
High-quality MIDI synthesis backend using TinySoundFont v0.9 via P/Invoke. Requires a compiled libtsf native library on the system library path. |
Enums
| Type | Description |
|---|---|
Strawberry.Sound.Midi.MidiEventType |
MIDI channel voice message types (high nibble of status byte). |
Strawberry.Sound.Midi.MidiMetaType |
MIDI meta event types (second byte after 0xFF). |
Interfaces
| Type | Description |
|---|---|
Strawberry.Sound.Midi.ISynthBackend |
Abstraction over a MIDI synthesis engine. Two implementations are provided: - - |