Abstract
dc:description.abstractSince its introduction in 1983, Musical Instrument Digital Interface (MIDI) has been the standard for connecting electronic music instruments, computers, and other audio devices to play, edit, and record music. The MIDI Association recently announced a new specification, MIDI 2.0, to add more flexibility to the MIDI protocol while still being backwards compatible with the MIDI 1.0 specification. This thesis presents an analysis of MIDI 2.0 by comparing it to previous versions of MIDI and the limitations of those specifications including keyboard bias, 12-tone bias, limited controller value resolution, and limited per note expression. In addition, we examine the core features of the MIDI 2.0 specification including MIDI Capability Inquiry (MIDI-CI) and Universal MIDI Packets (UMPs). To further demonstrate the capabilities of MIDI 2.0, we provide examples of MIDICI messages and implement a Python library for creating and sending UMPs using Apple’s CoreMIDI framework to explore creative use cases of UMPs. Several Python applications are presented to demonstrate the use of new features of MIDI 2.0 such as note attributes, new pitch representations, and per-note expression. Finally, we analyze MIDI 2.0 to investigate implications of the updated specification, how it can increase musical expression, and how it can be used creatively by independent developers and musicians.
Degree
thesis:*- Name thesis:degree_name
- Master
- Department dc:contributor.department
- Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
- Grantor dc:publisher
- Massachusetts Institute of Technology
- Year dc:date.issued
- 2023
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Hamelberg, Julian
- Advisor dc:contributor.advisor
-
- Hattwick, Ian
Rights
dc:rights- Statement dc:rights
-
- In Copyright - Educational Use Permitted
- Copyright retained by author(s)
- Licence dc:rights.uri
Identifiers
dc:identifier.*- Handle dc:identifier.uri
- https://hdl.handle.net/1721.1/151396
- OAI identifier oai:identifier
- oai:dspace.mit.edu:1721.1/151396