View Single Post
Old 12-27-2020, 08:07 AM   #222
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 293
Default

Adding notes for the next development. From what I've observed :

- ReaControlMIDI always outputs MSB+LSB for 14-bit controls. So it does not try to make the economy of the MSB when emitting. REAPER's choice here is greedy (and I think that's for the best).
- When drawing in a 14-bit CC lane, REAPER always adds a MSB and a LSB event. So same remark as precedent.
- When sending unconnected LSB and MSB events for a same 14-bit control, REAPER does not show LSB events in the 14-bit CC Lane. It only shows MSB events. So in the way it displays the 14-bit CC Lane, REAPER considers that a 14-bit CC event is made of a necessary MSB event and an optional LSB event. If both MSB and LSB are present at the same time, the aggregated value in the 14-bit CC lane is the sum of the MSB + LSB.
- If a LSB event precedes an MSB event but is not synchronized with it, the value in the 14-bit CC Lane does only take the MSB event into account and does not aggregate the preceding LSB.
- Selecting an event in the 14-bit CC Lane will select corresponding events in the MSB AND LSB lanes if they are synchronized. Of course, the reverse is not true. So it's easy to screw up the synchronization between the MSB and LSB lanes and end up with unsynchronized events when editing things separately.

Pheeeewwww. It's gonna be hard to make a clean, easy to understand implementation.

Last edited by Talagan; 12-27-2020 at 08:16 AM.
Talagan is offline   Reply With Quote