Midi Programming
A.Y. 2020/2021
Learning objectives
Il corso ha l'obiettivo di trattare i diversi aspetti del protocollo MIDI, e in particolare:
- basi della comunicazione MIDI e rudimenti sulla creazione di catene hardware
- trattazione dei messaggi previsti dalle specifiche MIDI 1.0
- standard General MIDI (GM) e codifica binaria degli Standard MIDI File (SMF)
- Network Musical Performance e protocollo RTP MIDI
- Implementazione di software per la manipolazione del MIDI
- basi della comunicazione MIDI e rudimenti sulla creazione di catene hardware
- trattazione dei messaggi previsti dalle specifiche MIDI 1.0
- standard General MIDI (GM) e codifica binaria degli Standard MIDI File (SMF)
- Network Musical Performance e protocollo RTP MIDI
- Implementazione di software per la manipolazione del MIDI
Expected learning outcomes
Undefined
Lesson period: First semester
Assessment methods: Esame
Assessment result: voto verbalizzato in trentesimi
Single course
This course cannot be attended as a single course. Please check our list of single courses to find the ones available for enrolment.
Course syllabus and organization
Single session
Responsible
Lesson period
First semester
The lessons will be held via the Zoom platform. Students can follow them both synchronously, based on the published timetable, and asynchronously, thanks to the recording made available to students on the Ariel platform.
If the numbers and regulations concerning social distancing allow it, it will be possible for students to attend the course even in presence.
If the numbers and regulations concerning social distancing allow it, it will be possible for students to attend the course even in presence.
Course syllabus
MIDI protocol fundamentals
Families of MIDI messages
General MIDI and other extensions
Standard MIDI Files
MIDI 2.0
Programming via the Web MIDI API
Families of MIDI messages
General MIDI and other extensions
Standard MIDI Files
MIDI 2.0
Programming via the Web MIDI API
Prerequisites for admission
The course starts from the fundamentals of the MIDI protocol. However, previous knowledge of basic music theory is recommended. In addition, the second part of the course requires familiarity with the main languages and formats for the web: HTML, CSS, and JavaScript.
These prerequisites are already satisfied for students coming from the Bachelor's Degree in Music Informatics.
These prerequisites are already satisfied for students coming from the Bachelor's Degree in Music Informatics.
Teaching methods
Lessons take place mostly in presence, in classrooms equipped with personal computers. During the first part of the course, two laboratory meetings are scheduled for hands-on practicing with MIDI devices and their connection. In the second part of the course, focusing on programming, frontal explanations and individual exercises guided by the professor are alternated.
Teaching Resources
Dedicated page on the Ariel website, with presentations and code examples shown in class
Teacher's notes, also available as an open-access volume
MIDI reference guide and additional materials accessible at MIDI.org website (https://www.midi.org/)
Web MIDI API reference guide (https://webaudio.github.io/web-midi-api/)
Teacher's notes, also available as an open-access volume
MIDI reference guide and additional materials accessible at MIDI.org website (https://www.midi.org/)
Web MIDI API reference guide (https://webaudio.github.io/web-midi-api/)
Assessment methods and Criteria
Learning results are assessed through a final exam. Grades are measured in thirtieths (0-30 scale), where the minimum grade is 18/30 and the maximum grade is 30/30.
The test consists of a written part concerning theory made of multiple-choice questions and a part focusing on web programming with exercises to be performed on the computer.
Students are provided with a test simulator available via web in advance.
The test consists of a written part concerning theory made of multiple-choice questions and a part focusing on web programming with exercises to be performed on the computer.
Students are provided with a test simulator available via web in advance.
Educational website(s)
Professor(s)
Reception:
Tuesday, 10.30 - 12.30 or by appointment
Laboratory of Music Informatics (LIM), Department of Computer Science, 4th floor