You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
to convert a MIDI 1 Channel Voice Message to its MIDI 2 counterpart.
82
98
83
-
**Note:** MIDI 1 <-> MIDI 2 translation rules do require some sequences of MIDI 1 messages to be translated to single MIDI 2 messages and vice versa. The above mentioned functions do not follow these rules. Actually they filter some _Control Change_ messages (mostly related to (N)RPNs) and cannot handle MIDI 2 _Program Change_ messages with `bank` data.
99
+
**Note:** MIDI 1 <-> MIDI 2 translation rules do require some sequences of MIDI 1 messages to be translated to single MIDI 2 messages and vice versa. The above mentioned functions do not follow these rules. Actually they filter some _Control Change_ messages (mostly related to (N)RPNs) and cannot handle MIDI 2 _Program Change_ messages with `bank` data.
Copy file name to clipboardExpand all lines: docs/data_message.md
+42-30Lines changed: 42 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,63 +6,75 @@ Code examples can be found in [`data_message.examples.cpp`](data_message.example
6
6
7
7
Data Messages are represented by a
8
8
9
-
struct data_message : universal_packet
10
-
{
11
-
explicit data_message(status_t);
12
-
};
9
+
```cpp
10
+
structdata_message : universal_packet
11
+
{
12
+
explicit data_message(status_t);
13
+
};
14
+
```
13
15
14
16
Usually one will not use this class directly, but instead
15
17
16
-
struct sysex7_packet : data_message
17
-
{
18
-
sysex7_packet(status_t, group_t);
18
+
```cpp
19
+
structsysex7_packet : data_message
20
+
{
21
+
sysex7_packet(status_t, group_t);
19
22
20
-
packet_format format() const;
23
+
packet_format format() const;
21
24
22
-
uint8_t payload_byte(size_t b) const;
23
-
void set_payload_byte(size_t, uint8_t);
25
+
uint8_t payload_byte(size_t b) const;
26
+
void set_payload_byte(size_t, uint8_t);
24
27
25
-
size_t payload_size() const;
26
-
void set_payload_size(size_t);
28
+
size_t payload_size() const;
29
+
void set_payload_size(size_t);
27
30
28
-
void add_payload_byte(uint8_t);
29
-
};
31
+
void add_payload_byte(uint8_t);
32
+
};
33
+
```
30
34
31
35
A `sysex7_packet` can hold a payload of up to six bytes and provides APIs to add or read the payload bytes. Be aware that the payload shall only be 7 bit data.
32
36
33
37
Instead of using sysex7_packet constructors one can create messages using factory functions:
0 commit comments