E85.2607 - Class Project

About half of your final grade will be determined by a programming project. You are free to choose any topic that interests you, provided that it is somewhat relevant to the topics we've discussed in class, e.g. audio effects, synthesis algorithms. You are encouraged to reuse and build on the homeworks and in-class demos from the class. A list of ideas is given below. I will have to approve the topic near the middle of the semester, so please come to my office hours to discuss your plans.

The projects will be graded based on two in-class presentations and a final project report. See the timeline for more details.

Projects can be done individually, or by teams of two students. I encourage you to consider teaming up, primarily because it will allow you to do a more interesting project. I will naturally be judging two-person projects differently from individual projects, but I won't be applying a tougher standard - just looking for a more extensive investigation. The best arrangement is to choose a division of the project so that each of you can work on separate but interlocking parts.

The use of Matlab is strongly encouraged, though other languages or systems can be used by prior arrangement.


2010-03-04 Thu: Select a topic

Send me an email containing a short project proposal. A couple of paragraphs with a high level description of what you intend to do and why it is interesting is sufficient. Please name the group members as well.

2010-03-11 Thu: Midterm project proposal presentation (10% of final grade)

Each group should prepare a 15 minute presentation with a more detailed project proposal. The presentation should describe the context of the project, review any previous work in detail (please include references), and outline a tentative work plan including a set of milestones and the division of work amongst the group members. There will be about 5 minutes after each presentation for questions.

The presentations will be run off the main computer in the classroom so please come prepared with your slides on a CD or flash drive. You should test your presentation out on the lab computers before class to ensure that you won't have any problems.

Attendance and participation is mandatory for all presentations (ask questions, make comments).

2010-05-06 Thu: Final project presentation (15% of final grade)

Each group should prepare a presentation describing the work undertaken what they accomplished, how their software works, and demonstrating their project in action.

Don't worry about making the presentations terribly formal or polished; think of them rather as an opportunity to explain to the rest of the class some key ideas leading to or learned from the project. The emphasis is on communication and sharing ideas and knowledge.

The format will be the same as for the midterm presentation — 15 minutes for the talk/demo followed by 5 minutes for questions.

2010-05-10 Mon: Project reports due (25% of final grade)

The final project report should not exceed 10 pages, including figures. It should be written like a conference paper, with a structure more or less as follows: introduction (including motivation), theoretical background, your approach, implementation, discussion, conclusions and future work.

Project Ideas

You can search for more project ideas by looking at the proceedings from recent audio processing conferences. E.g. the DAFX conferences or recent AES conventions (warning: its hard to download full papers from the AES without paying, but you can often find free copies via a search engine).

  1. Build an autotune effect in Matlab/Pd. (This is not an endorsement of the artistic merits of autotune, but the effect is quite relevant to the class.)
  2. Experiment with spatial audio effects. Build a realistic room simulator to and allow you to place sound sources at different locations (and move them around) with realistic reverb.
  3. Build a realistic physical model of a musical instrument and turn it into a MIDI synthesizer.
  4. Research approaches to digital modeling of nonlinear analog systems. Build a guitar amp simulator in Matlab.

You can fine lots of other suitable ideas from a related class at Columbia University.

Last updated on March 4, 2010.