{"id":{"repo_id":"mit","oai_identifier":"oai:dspace.mit.edu:1721.1/151396"},"canonical_url":"https://search.dev.ndltd.org/etd/mit/oai:dspace.mit.edu:1721.1/151396","repository":{"repo_id":"mit","name":"MIT","base_url":"https://dspace.mit.edu/oai/request"},"display":{"title":"Applications and Implications of MIDI 2.0","abstract":"Since 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.","abstract_html":"Since 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.","abstract_has_math":false,"creators":["Hamelberg, Julian"],"institution":"Massachusetts Institute of Technology","degree_name":"Master","degree_level":null,"degree_discipline":null,"degree_department":"Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science","school":null,"contributors":[],"advisors":["Hattwick, Ian"],"committee_chairs":[],"committee_members":[],"year":2023,"date_issued":"2023-06","date_published":"2023-06","updated_at":"2026-07-22T22:22:02Z","subjects":[],"languages":[],"rights":["In Copyright - Educational Use Permitted","Copyright retained by author(s)"],"rights_urls":["https://rightsstatements.org/page/InC-EDU/1.0/"],"identifier_entries":[]},"links":{"outbound_url":"https://hdl.handle.net/1721.1/151396","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Hattwick, Ian"]},{"key":"dc:contributor.department","label":"Department","values":["Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science"]},{"key":"dc:creator","label":"Author","values":["Hamelberg, Julian"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2023-07-31T19:36:36Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2023-07-31T19:36:36Z"]},{"key":"dc:date.issued","label":"Date","values":["2023-06"]},{"key":"dc:publisher","label":"Institution","values":["Massachusetts Institute of Technology"]},{"key":"dc:type","label":"Dc Type","values":["Thesis"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Master","Master of Engineering in Electrical Engineering and Computer Science"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:rights","label":"Dc Rights","values":["In Copyright - Educational Use Permitted","Copyright retained by author(s)"]},{"key":"dc:rights.uri","label":"Rights URI","values":["https://rightsstatements.org/page/InC-EDU/1.0/"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier.uri","label":"Identifier URI","values":["https://hdl.handle.net/1721.1/151396"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["Since 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."]},{"key":"dc:description.degree","label":"Dc Description Degree","values":["M.Eng."]},{"key":"dc:title","label":"Title","values":["Applications and Implications of MIDI 2.0"]}]}],"canonical_facts":{"dc:contributor.advisor":["Hattwick, Ian"],"dc:contributor.department":["Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science"],"dc:creator":["Hamelberg, Julian"],"dc:date.accessioned":["2023-07-31T19:36:36Z"],"dc:date.available":["2023-07-31T19:36:36Z"],"dc:date.issued":["2023-06"],"dc:description.abstract":["Since 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."],"dc:description.degree":["M.Eng."],"dc:identifier.uri":["https://hdl.handle.net/1721.1/151396"],"dc:publisher":["Massachusetts Institute of Technology"],"dc:rights":["In Copyright - Educational Use Permitted","Copyright retained by author(s)"],"dc:rights.uri":["https://rightsstatements.org/page/InC-EDU/1.0/"],"dc:title":["Applications and Implications of MIDI 2.0"],"dc:type":["Thesis"],"thesis:degree_name":["Master","Master of Engineering in Electrical Engineering and Computer Science"]},"updated_at":"2026-07-22T22:22:02Z"}