Spring2018.CITA180Homework4 History

Show minor edits - Show changes to markup

Changed line 43 from:
  • NEW: Try the new JEM editor. It includes an experimental Play.sound() function, which allows you to combine audio and MIDI instruments within the same score.
to:
  • NEW: Try the new JEM editor. It includes an experimental Play.sound() function, which allows you to combine audio and MIDI instruments within the same score.
Changed lines 43-44 from:
  • NEW: Try the new JEM editor. It includes an experimental Play.sound() function, which allows you to combine audio and MIDI instruments within the same score.
to:
  • NEW: Try the new JEM editor. It includes an experimental Play.sound() function, which allows you to combine audio and MIDI instruments within the same score.
    • For example, try Play.sound( score, [a1, PIANO] ).
Added lines 42-43:
  • NEW: Try the new JEM editor. It includes an experimental Play.sound() function, which allows you to combine audio and MIDI instruments within the same score.
Changed lines 9-10 from:

In homework 3., you were asked to write a Jython program that generates an interesting piece of music using pre-recorded sound material.

to:

In homework 3, you were asked to write a Jython program that generates an interesting piece of music using pre-recorded sound material.

Changed line 29 from:

Create a sketch of your score on paper (use MS Word, Google docs,or by hand). It should explain [1]:

to:

Create a sketch of your score on paper (use MS Word, Google docs, or by hand). It should explain [1]:

Added lines 25-26:

Use at least 3 different Mod functions to construct your Score.

Deleted lines 27-28:

You should use at least 3 different Mod functions to construct your Score.

Added lines 26-27:

You should use at least 3 different Mod functions to construct your Score.

Added lines 1-108:

Assigned Date: Friday, Feb. 16, 2018
Due Date: Friday, Feb. 23
Due Time: 30 mins before class

Last modified on February 21, 2018, at 03:55 AM (see updates)

Assignment

In homework 3., you were asked to write a Jython program that generates an interesting piece of music using pre-recorded sound material.

Here, we revisit this with the following added implications:

  • create a high-level structure (e.g., ABA, AABA, AABACA, etc.),
  • think carefully about your interest curve (i.e., how you keep your audience engaged throughout the piece),
  • also remember that - sometimes - subtracting something may be as powerful as adding something new.

To Do

Use about 3 to 7 different AudioSamples (more or less is OK - with approval).

  • Each audio sample should be relatively small (e.g., less than 12 secs).
  • You may use loops (see example below) to create longer ambient or drone backgrounds.
  • For polyphony, it is OK to load multiple copies of the same audio file - these do NOT count as separate files.

The piece should last about about 1 to 3 minutes approximately.

Create a sketch of your score on paper (use MS Word, Google docs,or by hand). It should explain [1]:

  • the concept of the piece (i.e., what is this piece about, what you are trying to communicate).
  • the high-level structure of the piece (e.g., ABA, AABA, ABCA, AABACA, etc.),
  • the sonic entities used and their symbolism
    • mention something about each sound - what it is, how it was captured, why you included it, etc.
    • if you use other people's material, provide references (i.e., names and URLs)
  • the macrocomposition or how sonic entities line up (and why)
  • (for bonus points), the microcomposition or low-level interactions of the sonic elements (i.e., creating or assembling complex timbres from the sonic material).

Notes:

  • Make sure your computer's CPU and memory can handle all your audio files, before working on your score.

Submissions

Do all four:

  1. Hand in a sketch of your score on paper.
  2. Hand in a printout of your Python program in class on the due date. Attach the sketch of your score.
  3. Upload your program file and audio files on OAKS.
  4. Be ready to perform it in class.

Your program should have a meaningful name, e.g., birdsAndSeaguls.py or desertMoon.py, or nightAlone.py, etc.

Program Documentation

Follow the documentation instructions from Homework 1.

In addition, your header documentation copy and paste the same information as in your score (see above):

  • the concept of the piece (i.e., what is this piece about, what is it trying to communicate / achieve, etc.).
  • the high-level structure of the piece (e.g., ABA, AABA, ABCA, AABACA, etc.),
  • the sonic entities used and their symbolism
    • mention something about each recording - what it is, how it was recorded, why you included it, etc.
    • if you use other people's material, provide references (i.e., names and URLs)
  • the macrocomposition or how sonic entities line up (and why)
  • (for bonus points), the microcomposition or low-level interactions of the sonic elements (i.e., creating or assembling complex timbres from the sonic material).

Grading

Your grade will be based on how well you followed the above instructions, and the depth/quality of your work.

Example

The following code demonstrates how to create a loop. This may be used for ambient or drone backdrops of sound to build on.

(:source lang=Python tabwidth=3 -trim :) from music import *

loopTimes = 4

  1. load audio instruments

a1 = AudioSample("moondog.Bird_sLament.wav")

  1. create musical data structure

score = Score()

part1 = Part(0, 0)

phrase1 = Phrase()

  1. create musical data

pitches = [A4] * loopTimes durations = [4.12152] * loopTimes # duration is in seconds (assuming 60bpm) volumes = [120] * loopTimes pannings = [0.5] * loopTimes lengths = durations # force playing length to be same as noted duration!

phrase1.addNoteList(pitches, durations, volumes, pannings, lengths)

part1.addPhrase(phrase1)

score.addPart(part1)

  1. play it!

Play.audio( score, [a1] ) (:sourcend:)

Reference

[1] Xenakis, I. (1971). Formalized Music: Thought and Mathematics in Composition. Indiana University Press, p. 22.