Builders for the MIDI messages that configure an MPE device: the MPE Configuration Message (zone member counts) and the pitch-bend-range Registered Parameter. More...
#include <pulp/midi/device.hpp>#include <pulp/midi/message.hpp>#include <pulp/midi/ump.hpp>#include <array>#include <cstddef>#include <cstdint>Go to the source code of this file.
Classes | |
| struct | pulp::midi::MpeMessageList< Capacity > |
| Fixed-capacity, allocation-free list of events returned by the builders. More... | |
Namespaces | |
| namespace | pulp |
| namespace | pulp::midi |
Functions | |
| MpeMessageList< 3 > | pulp::midi::mpe_configuration_message (uint8_t manager_channel, uint8_t member_count) |
| MPE Configuration Message: RPN 6 on a manager channel. | |
| MpeMessageList< 4 > | pulp::midi::mpe_pitch_bend_range_message (uint8_t channel, float semitones) |
| Pitch-bend range (RPN 0) for one channel: whole semitones in Data Entry MSB and the remaining hundredths in Data Entry LSB. | |
| MpeMessageList< 6 > | pulp::midi::mpe_zone_layout_messages (const MpeConfig &config) |
| Zone layout: one Configuration Message for each zone, lower first. | |
| MpeMessageList< 64 > | pulp::midi::mpe_zone_pitch_bend_range_messages (const MpeZone &zone, float manager_semitones, float member_semitones) |
| Pitch-bend ranges for a whole zone: the manager channel gets manager_semitones and every member channel gets member_semitones. | |
| template<std::size_t N> | |
| void | pulp::midi::send_mpe_messages (MidiOutput &output, const MpeMessageList< N > &list) |
| Send every event in list to output, in order. | |
Builders for the MIDI messages that configure an MPE device: the MPE Configuration Message (zone member counts) and the pitch-bend-range Registered Parameter.
MpeVoiceTracker understands the same messages on input, so a sender built with these helpers and a tracker round-trip.