Fall 2014»HONS 381 Homework 5

HONS 381 Homework 5

Assigned Date: Friday, Nov 21, 2014
Due Date (Intermediate results): TBA
Due Date (Final Piece Performances): noon-3pm, Friday, Dec. 5, 2014
Due Time: 11:50am

NOTE: No late days can be used for this assignment.

Last modified on November 25, 2014, at 10:56 AM (see updates)

This is an assignment that could be pursued either in pairs, or teams of three.


This assignment aims to develop and apply skills in:

  • Planning, designing and executing a sound-based composition.
  • Recording, collecting, or generating primary sound source material.
  • Gaining experience with audio recording/manipulation software and generating soundscapes and textures.
  • Combining use of samples and MIDI generated sounds.
  • Shaping formal structures building upon experience acquired throughout the semester.
  • Developing GUI’s, MIDI, and/or OSC controls for realization of live performance.
  • Realizing finalized compositions in performance.

For instance, see photos from last time the class was offered.


Compose a 4-5 minute piece for 2-3 live performers.

Design and implement interactive components using Python (and the music, gui, midi, and/or osc libraries) to facilitate performance of the piece and interaction between performers. In addition to the above libraries, you may find the following library useful - guicontrols.py. Also explore various OSC apps, such as Touch OSC, and Control OSC, among others.

The piece should be designed in a way that all performers are actively engaged throughout the duration of the piece in meaningful ways, contributing to the sound world or formal progress of the piece.

The piece can use the sounds and/or general concept of Assignment #4, but should be a significant improvement or extended version of it taking into account the following:

  • Open Sound Control and/or MIDI should be used in structuring interactivity in performance.
  • Laptops and/or other devices such as iPhones, iPads etc may be used.
  • Each performer should engage with/control an average of 8 different sounds through the piece.
  • The piece should have clear structure and form (beginning, middle, end), though elements of chance, aleatoric or automatic processes and improvisation can definitely be incorporated.
  • The performance of the piece is a significant component. Each team should set aside time to rehearse and hone the delivery of the piece to a live audience. The equivalent of a Dress Rehearsal will be presented and critiqued by the instructors, before the final performance.

Composition Details

Musical Process

Follow these steps:

  1. Decide what "kind" of piece you want to compose: Are you interested in creating an ambient piece? a speech/text based piece? an industrial/mechanical piece? a noisy piece? a beat-based piece? This is an important decision that will guide your search for sound material.
  2. Select a title for your piece. Write it down.
  3. Familiarize yourself with Audacity: Experiment with loading pre-existing soundfiles, splicing them (cutting and pasting), processing them (by using some of the following found in the Effects menu: Change Speed, Change Pitch, Equalization (try extreme settings), Invert, Reverse, Sliding time Scale/Pitch Shift, Echo, Reverb), and assembling them in various ways by creating new tracks and layering them up against each other.
    • Explore how to make a loop of your own here and here.
  4. Decisively begin searching for source material: Try to have an idea of what "kinds" of sounds you are seeking (i.e., metallic, vocal, grainy, ambient, etc.). This will make your search more directed and fruitful. Look for sounds with interesting identity, rich in timbre and/or envelope. You can record sounds yourself, using your iphone, or computer (good mics will give you better sound quality). Alternatively, you can find great recorded sounds (audio files) here:
  5. Catalogue your sounds and categorize them by description, source, etc. Start loading them on Audacity and process them in any and every way that seems appropriate/relevant. Save every interesting result and re-name it. It is very important that you document your work in every step of the way. Frequently pause and audition what you have, and reassess/revise your original composing plan.
  6. Finalize your piece conceptually, and create a sketch diagram/score: Decide what needs to be pre-assembled and what can be put together live in performance. How many performers will be needed? How will sounds be projected? What is the best method in presenting the material?

Interactive Musical Interface

Follow these steps:

  1. How many individual musical objects does your piece have? What types of actions does your piece require for each of these objects (e.g., start/stop, loop, pause/resume, change volume, change pitch (frequency), etc.)?
  2. What types of GUI widgets or graphical objects would you like to use on your interface? Does your interface make use of the computer keyboard or the mouse? In what ways?
  3. Carefully read the paper prototyping section in Ch. 8 of the textbook (pp. 15-17).
  4. Create a paper prototype of your musical interface(s) - each performer may have a different one. It should be hand-drawn, but feel free to use color to make it more realistic.
  5. Bring your paper prototype in class on the first due date (see above) for presentation and comments. Your classmates are your target audience (some of them may be your performers).
  6. Once the paper prototype has been presented and commented on, you may begin implementing your GUI design in Python. Carefully follow the steps in "A Simple Methodology for Developing GUIs" in Ch. 8.
  7. Observe all coding style guidelines presented in class (e.g., top-level documentation, in-line comments, good variable names, etc.).


Your submission will consist of the following:

  • A hardcopy of a written report (created via Google Docs or similar), to include:
    1. Your name, class, assignment, and title of piece.
    2. Your composition work journal.
    3. List of sounds (for those obtained from a website, include URLs).
    4. Formal designs, sketch diagram/score description of sound processing.
    5. Your final GUI paper prototype (as a digital image) with caption/description.
    6. Your Python source code (in an Appendix).
  • A USB stick (will NOT be returned), to include:
    1. Your name, class, and assignment on an envelope containing the USB stick.
    2. Your report in PDF format (see above).
    3. All your source sound material (strictly WAV or AIFF format), in a separate folder called "sounds".
    4. All your Audacity project file(s), in a separate folder called "Audacity files".
    5. All your Python programs (source code, sound files, any images used, etc.) in a separate folder called "code". Include a "README.txt" file providing instructions on how to perform the piece (e.g., which programs to run, in what order, etc.).

Important Note

We should be able to perform your piece simply by dragging-and-droping the contents of your "code" folder (from your USB stick) into our jythonMusic folder. Make sure everything is there.

Test this before you submit your USB stick.


Your grade will be based on how well you followed the above instructions. Also on:

  • How interesting your music is.
  • The variety of ideas you tried in your composition.
  • The aesthetics and usability of your GUI design(s).
  • Quality of coding (e.g., comments, variable names, etc.)
  • Live performance of your piece in class.