Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
ump_buffer.hpp File Reference

Sample-accurate MIDI 2.0 UMP packet stream. More...

#include <pulp/midi/ump.hpp>
#include <algorithm>
#include <cstddef>
#include <cstdint>
#include <limits>
#include <vector>

Go to the source code of this file.

Classes

struct  pulp::midi::UmpEvent
 One UMP packet with a block-relative sample offset. More...
class  pulp::midi::UmpBuffer
 A time-ordered list of UMP events for one audio block. More...

Namespaces

namespace  pulp
namespace  pulp::midi

Detailed Description

Sample-accurate MIDI 2.0 UMP packet stream.

UmpBuffer parallels MidiBuffer: while MidiBuffer carries MIDI 1.0 short messages, UmpBuffer carries native Universal MIDI Packets with full MIDI 2.0 resolution (16-bit velocity, per-note pitch bend, per-note CCs). Processors that set PluginDescriptor::supports_ump access the buffer via Processor::ump_input() during process().

Packets carry a sample_offset so hosts can deliver sample-accurate timing (same semantics as MidiEvent::sample_offset).