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
New method to send multiple MIDIEventPacket in a single MIDIEventList (similar to existing MIDIPacketList method)
Formalize ReceivesMIDIEvents and SendsMIDIEvents protocols and how they are used internally.
When using events: [MIDIEvent] variations of send or receive, I/O should attempt to pack all events into a single MIDIPacketList/MIDIEventList
getConnectionUniqueID() can be Int32 or CFData - see Core MIDI docs:
The value provided may be an integer. To indicate that a driver connects to multiple external objects, pass the array of big-endian SInt32 values as a CFData object.
MIDI thru connections: add transforms that exist in Core MIDI to thru params
Legacy (non-UMP MIDI 1.0)
Multi-packet chunking of legacy MIDI 1.0 SysEx messages
Add compoundEventParsing: Bool property to MIDI1Parser that buffers received events that match certain RPN, NRPN messages and return compound events (ie: .rpn() instead of a series of .cc() events) upon receipt of all messages that comprise the compound event.
Done
Carry MIDI packet timestamp through to MIDIEvent consumers? (ReceivesMIDIEvents protocol) Or at least provide it in the receive handler.
MIDI non-persistent thru connections:
do they need to be reconnected (refreshed) when a received MIDI notification indicates setup has changed or things were added/removed in the Core MIDI subsystem? or does Core MIDI handle some of that autonomously?
what happens when ports involved disappear and reappear in the system? Do we need to worry about a refreshConnections(in:) method like with the inputs and outputs?
The text was updated successfully, but these errors were encountered:
General
MIDIManager
: Add remaining accessors for things like Core MIDI ExternalDevices, etc.MIDIIOObjectProtocol
: Add remainingset...()
property methods (counterparts toget...()
property methods)MIDIEventPacket
in a singleMIDIEventList
(similar to existingMIDIPacketList
method)ReceivesMIDIEvents
andSendsMIDIEvents
protocols and how they are used internally.When using
events: [MIDIEvent]
variations of send or receive, I/O should attempt to pack all events into a singleMIDIPacketList
/MIDIEventList
getConnectionUniqueID()
can beInt32
orCFData
- see Core MIDI docs:Legacy (non-UMP MIDI 1.0)
compoundEventParsing: Bool
property toMIDI1Parser
that buffers received events that match certain RPN, NRPN messages and return compound events (ie:.rpn()
instead of a series of.cc()
events) upon receipt of all messages that comprise the compound event.Done
MIDIEvent
consumers? (ReceivesMIDIEvents
protocol) Or at least provide it in the receive handler.The text was updated successfully, but these errors were encountered: