Interactive music systems

Master

In Maynard (USA)

Price on request

Description

  • Type

    Master

  • Location

    Maynard (USA)

  • Start date

    Different dates available

This course explores audio synthesis, musical structure, human computer interaction (HCI), and visual presentation for the creation of interactive musical experiences. Topics include audio synthesis; mixing and looping; MIDI sequencing; generative composition; motion sensors; music games; and graphics for UI, visualization, and aesthetics. Weekly programming assignments in python are included. Student teams build an original, dynamic, and engaging interactive music system for their final project.

Facilities

Location

Start date

Maynard (USA)
See map
02139

Start date

Different dates availableEnrolment now open

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Presentation
  • Design
  • Project
  • Systems
  • Team Training
  • Programming
  • Music
  • Musical

Course programme

Lectures: 2 sessions / week, 1.5 hours / session


21M.301 Harmony and Counterpoint I, 6.01 Introduction to EECS (or python proficiency), or permission from the instructor. 6.005 Software Construction is recommended.


Interactive Music Systems is a hands-on programming and design course that explores audio synthesis, musical structure, HCI (human computer interaction), and visual presentation as the ingredients for the creation of engaging real-time interactive musical experiences.


These experiences allow users to connect with music more deeply than through passive listening. The most successful ones (such as Harmonix's Guitar Hero, Rock Band, Fantasia: Music Evolved) give users intuitive control, greater musical insight, and a deeper emotional response to the musical experience.


Students will learn about the principles, design considerations, and aesthetic qualities of interactive music systems by exploring the following topics:


Lectures occur on Mondays and Wednesdays and consist of both conceptual presentation and “live coding” to demonstrate how concepts are put into practice. We will use the python programming language in conjunction with the Kivy application framework to create interactive music systems. On Wednesdays, you will do an in-class coding exercise related to the week’s material, so please bring your laptop.


Assignments are released on Monday and are due the following week on Tuesday at 8:00am. You may work on assignments alone or with a partner from class. However, if you do work together, you should accompany your pset submission with a paragraph describing how you worked together.


All psets (except pset6, in which you play a game!) are coding assignments that have a creative component in addition to an engineering component. On the Wednesday due date, 2-3 students will volunteer to demonstrate the creative parts of their solution to class. Students may present multiple times, but each student is required to present at least once during the semester.


Note that each assignment builds on the material of the previous assignment.


Throughout the term, each student will discover, analyze, and present in class an interesting new media work related to music technology, interactive music, generative music, or music visualization. The intent is for you to deepen your knowledge of interactive music by exploring what other practitioners in the field have done. There are many individuals and small teams making interesting technology-based art, and there are good blog sites that can get you started in your search (in addition to your own web searches).


This class has a final project lasting the final 5 weeks of the semester. Final projects are done in teams of two or three students per team. During this time, teams will meet individually with the instructor in lieu of regular lectures. Each team is required to make four presentations to the class:


Class assignments and final projects will be constructed using the python framework Kivy. You will also need a few freely available software packages. See the Tools section for the software requirements.


For some assignments, we will use special hardware input devices (like the Microsoft Kinect sensor). All hardware required for assignments will be made available to residential students as a loan. Hardware for final projects can be borrowed or purchased by students, depending on the nature of the project and the desired hardware.


There is no required text and relatively little required reading. All topics are conveyed during Lecture. Lecture notes are relatively sparse. Class attendance is mandatory and attendance is taken at the start of each class.


Late assignments are penalized 10% per day that they are late, with a maximum penalty of 50%. Every student is allowed one assignment extension, which must be coordinated ahead of time with the instructor.


There is no final exam.


Read MIT’s Academic Integrity Policy. It applies here. In particular, we will be coding for this class, so read the coding section.


If working as a team, each team member should contribute an equal share of the work for the assignment. Every collaborative assignment submission must include a paragraph describing the nature of the collaboration – who did what, and how the collaboration worked.


You may look online for python implementation tips and ideas when doing assignments. Stackoverflow is a great resource, for example. Cite the source as a code comment. If you do copy, you should limit yourself to a few lines of code. Do not copy or use whole modules or large functions for assignments.


You are allowed to copy / use / modify code provided to you by the instructor, or code that you wrote for previous assignments. In fact, many assignments assume you have access to working code from the previous assignments.


For the Final project, your design may call for copying larger amounts of code than is permitted for assignments. The specific nature of external code usage for the final project must be discussed with the Instructor.


The only permitted electronic device is your laptop. You may only use your laptop for taking notes and coding on material related to the class. Do not tweet, check email, Facebook, IM, browse web sites.


Attendance is mandatory. If you know you must miss a class due to illness or some other circumstance, please let the instructor know ahead of time.


If you do miss a class, it is your responsibility to find out what happened by first contacting your fellow classmates. Only after that, you can contact the instructor or TA for additional help.


Don't show me this again


This is one of over 2,200 courses on OCW. Find materials for this course in the pages linked along the left.


MIT OpenCourseWare is a free & open publication of material from thousands of MIT courses, covering the entire MIT curriculum.


No enrollment or registration. Freely browse and use OCW materials at your own pace. There's no signup, and no start or end dates.


Knowledge is your reward. Use OCW to guide your own life-long learning, or to teach others. We don't offer credit or certification for using OCW.


Made for sharing. Download files for later. Send to friends and colleagues. Modify, remix, and reuse (just remember to cite OCW as the source.)


Learn more at Get Started with MIT OpenCourseWare


Interactive music systems

Price on request