Skip to content

Releases: orchetect/MIDIKit

0.2.8

17 Dec 05:44
7599a32
Compare
Choose a tag to compare
  • MIDI.Note.Name: Added .name and .octave properties
  • NoteRange is now NoteNumberRange, new NoteRange is ClosedRange<MIDI.Note>
  • Renamed MIDI.Note.pianoKey to .isSharp, also added to MIDI.Note.Name

0.2.7

07 Dec 08:26
c9a654f
Compare
Choose a tag to compare
  • Added MIDI.NoteRange and MIDI.Note .pianoKey property
  • MIDI.Note.Name improvements

0.2.6

06 Dec 01:08
e33e304
Compare
Choose a tag to compare
  • Fixed Note.On Equatable behavior
  • Added translateMIDI1NoteOnZeroVelocityToNoteOff flag to ReceiveHandler.Events
  • Improved unit tests

0.2.5

12 Nov 09:11
3497393
Compare
Choose a tag to compare
  • Fixed MIDI.Byte.Pair.uInt16Value returning incorrect value
  • Fixed possible overflow in UInt32(bipolarUnitInterval:) init from Float
  • MIDI.UInt7.Pair: Added .uInt14Value property
  • Added unit tests

0.2.4

05 Nov 07:29
419a143
Compare
Choose a tag to compare
  • Added public inits to all MIDI.Event.* concrete types
  • Made MIDI.Event.sysEx(rawBytes:group:) public access level
  • SysEx/UniversalSysEx: Added leading/trailing F0/F7 overloads for midi1RawBytes()

0.2.3

04 Nov 03:15
5f9917f
Compare
Choose a tag to compare
  • MIDI1Parser: Added translateNoteOnZeroVelocityToNoteOff flag
  • MIDI.Event.Note.On: Added midi1ZeroVelocityAsNoteOff flag

0.2.2

02 Nov 08:39
e6727e5
Compare
Choose a tag to compare
  • Added MIDI.Note struct represent abstract MIDI note, constructing and converting between
    • note number
    • note name string (such as "C3", "A#4")
    • note name & octave (such as name: .C, octave: 3)
    • frequency in Hz

0.2.1

19 Oct 23:58
cb016a5
Compare
Choose a tag to compare
  • Renamed @AtomicAccess to @Atomic with improvements
    • This property wrapper is not used in MIDIKit, but it is used in MIDIKit extensions such as MIDIKitSync

0.2.0

07 Oct 05:26
8371091
Compare
Choose a tag to compare

Initial release.

macOS 10.12 High Sierra - 12.0 Monterey
iOS 10 - 15

  • Stable, thread-safe MIDI I/O
  • Full MIDI 1.0 support, with MIDI 2.0 coming in a future update
  • Central MIDI port/connection manager
  • Rich MIDI event types and value types
  • Simple and powerful MIDI event filters
  • Unit tested
  • Production tested in wide-release commercial software

Known Issues:

  • MIDI 2.0 implementation on supported OS versions is still in active development and will be available in a future MIDIKit update. For the time being, MIDIKit will internally default to MIDI 1.0 which is fully operational.
  • Back-porting a limited subset of MIDI 2.0 features to older platforms (macOS Catalina or older, and iOS 13 or older) is planned, but not yet supported.
  • Beta support for tvOS 14+ and watchOS 7+ in development and is planned to be added in future.

0.1.19

19 Sep 03:02
ca01e68
Compare
Choose a tag to compare
0.1.19 Pre-release
Pre-release
  • Stability improvements