Releases: orchetect/MIDIKit
Releases · orchetect/MIDIKit
0.8.11
0.8.10
0.8.9
Changes
- Bumped to Swift 5.7 minimum requirement
MIDIEvent.NoteCC.PerNoteController
: Addedregistered(UInt8)
static method
Docs
- Cleaned up example projects
- Added documentation for
MIDIEvent
0.8.8
0.8.7
0.8.6
New
- New
MIDIKItUI
module with reusable SwiftUI views for endpoint lists and pickers (WIP) - see new MIDIKitUIExample project MIDIIOObject
: Added image property to return SwiftUI Image
Improvements
MIDIEndpointIdentity
:locate(in:)
is now public, added newmatches(endpoint:)
sister methodCollection
ofMIDIEndpoint
: addedfilter(using: MIDIEndpointFilter)
method
Fixes
MIDIFile
: Fixed extended characters in text events failing to parse (#171)
0.8.5
0.8.4
New
- MIDIKit now requires Xcode 14 to build. It still supports macOS 10.12+ and iOS 10+ once compiled.
MIDIDevice
: Addedinputs
andoutputs
convenience properties to return endpoint arrays (#129)MIDIDevices
: Addedinputs
andoutputs
convenience properties to return endpoint dictionaries (#129)
Improvements
MIDIInput
/MIDIInputConnection
: Resolved potential race condition in receiver- Memory access for legacy
MIDIPacket
/MIDIPacketList
is more stable MIDIPacketList
: Fixed bug when sending legacy packet list containing multiple packets- Minor documentation & unit test updates
0.8.3
0.8.2
Fixes
-
MIDI thru connections are now available on all supported platforms (#164)
Background
- A Core MIDI bug where all MIDI thru connections were non-functional affected all Apple platforms for two generations:
- macOS 11.x through 12.x and iOS 14.x through 15.x were affected
- The issue was resolved in macOS 13.0 and iOS 16.0
Resolution
- For non-persistent thru connections on affected platforms, MIDIKit now transparently implements an internal event pipe that replicates the functionality of Core MIDI. This means
midiManager.addThruConnection()
can be called and will always function as expected, regardless of platform. - For persistent thru connections on affected platforms, no internal/automatic workaround is possible, and calling
midiManager.addThruConnection()
will result in an error being thrown. For this reason it is recommended to not utilize or rely on these persistent connections, and to defer to non-persistent ones instead.
- A Core MIDI bug where all MIDI thru connections were non-functional affected all Apple platforms for two generations: