Difference between revisions of "220b-winter-2008/hw1"

From CCRMA Wiki
Jump to: navigation, search
m (Specification (part 3 of 3): Brainstormin')
 
(11 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
= Homework #1: Timbre-scapes =
 
= Homework #1: Timbre-scapes =
 +
 +
 +
<div style="text-align: left;">[[Image:Timber.jpg]]</div>
 +
  
 
Due date: 2008.1.30 11:59:59pm (or thereabout), Wednesday.
 
Due date: 2008.1.30 11:59:59pm (or thereabout), Wednesday.
Line 8: Line 12:
 
** sections 4.0, 4.1, and 4.2
 
** sections 4.0, 4.1, and 4.2
 
** chapter 10
 
** chapter 10
* skim through articles on [http://en.wikipedia.org/wiki/Aleatoric_music chance music], John Cage's [http://en.wikipedia.org/wiki/Music_of_Changes Music of Changes], and the [http://en.wikipedia.org/wiki/I_Ching I Ching]
+
* skim through articles on [http://en.wikipedia.org/wiki/Aleatoric_music chance music], John Cage's [http://en.wikipedia.org/wiki/Music_of_Changes Music of Changes] (also see [http://ccrma.stanford.edu/courses/220b/listening/ listening page]), and the [http://en.wikipedia.org/wiki/I_Ching I Ching]
 
+
 
+
<div style="text-align: left;">[[Image:Timber.jpg]]</div>
+
  
  
Line 24: Line 25:
 
*** [http://ccrma.stanford.edu/courses/220b/ck/Drone-2.ck Drone-2.ck] : the above with an added, time-varying "demon bunny" filter
 
*** [http://ccrma.stanford.edu/courses/220b/ck/Drone-2.ck Drone-2.ck] : the above with an added, time-varying "demon bunny" filter
 
*** [http://ccrma.stanford.edu/courses/220b/ck/Drone-3.ck Drone-3.ck] : layering three of the above, controlling each independently
 
*** [http://ccrma.stanford.edu/courses/220b/ck/Drone-3.ck Drone-3.ck] : layering three of the above, controlling each independently
 +
*** [http://ccrma.stanford.edu/courses/220b/ck/fm-mod.ck fm-mod.ck] : interpolating FM synthesis parameters, example from class
 
* using FM synthesis in ChucK, create the following:
 
* using FM synthesis in ChucK, create the following:
 
** 3 different "static" timbres
 
** 3 different "static" timbres
Line 34: Line 36:
 
** next, take a timbre from above, and apply an ADSR envelope to "carve" out an attack, decay, sustain, and release
 
** next, take a timbre from above, and apply an ADSR envelope to "carve" out an attack, decay, sustain, and release
 
*** test this by making some bleeps and bloops
 
*** test this by making some bleeps and bloops
 +
 +
 +
<div style="text-align: left;">[[Image:Lumberjack.jpg]]</div>
  
  
Line 49: Line 54:
 
*** texture
 
*** texture
 
*** many, many others
 
*** many, many others
** plan/score your composition somehow
+
** plan/score your composition somehow, pay attention to the above, and especially to the control of timbre
** write ChucK programs to generate the different passages/sections/layers; for each, run/record the program several times, and choose the best result for each part.
+
** take advantage of the timbre, time-varying control, and "bleepin'"/note/pitched event capabilities you've developed in part 1
 +
** write ChucK programs to generate the different passages/sections/layers; for each, run/record the program multiple times, tweak parameters, and choose the best result for each part.
 
** put them together in audacity/ardour, or a bigger ChucK program
 
** put them together in audacity/ardour, or a bigger ChucK program
  
Line 59: Line 65:
 
** control timbre
 
** control timbre
 
* no right/wrong answers - but try to think it through
 
* no right/wrong answers - but try to think it through
* convey what you come up with in word, diagrams, etc.
+
* convey what you come up with in words, diagrams, etc.
 
+
* (you won't need to implement any of this in a future assignment - this is a thought excercise)
  
 
=== Deliverables ===
 
=== Deliverables ===
Line 67: Line 73:
 
your Library/Web/220b/hw1.html'''
 
your Library/Web/220b/hw1.html'''
  
* 1) your static timbres (part 1)
+
* 1) your static timbres (part 1): 3 chuck files
* 2) your time-varying timbres (part 1)
+
* 2) your time-varying timbres + bleeps/bloops (part 1): 3 chuck files + 1 bleepin' chuck file
* 3) your Computer Music of Changes musical statement (part 2)
+
* 3) your ''Computer Music of Changes'' musical statement (part 2): chuck files + final mix
* 4) a short README text ('''readme.txt''') file that:
+
* 4) your brainstormin' write-up/draw-up/x-up | details of your plan for mapping cellular automata (part 3)
 +
* 5) a short README text ('''readme.txt''') file that:
 
** conveys your ideas/comments in constructing each program  
 
** conveys your ideas/comments in constructing each program  
 
** contains instructions on running your programs
 
** contains instructions on running your programs
 
** describes any difficulties you encountered in the process
 
** describes any difficulties you encountered in the process
** details your plan for mapping cellular automata (part 3)
+
* 6) your hw1.html should link to these files (optionally, you can include your README in your hw1.html)

Latest revision as of 17:41, 30 January 2008

Homework #1: Timbre-scapes

Timber.jpg


Due date: 2008.1.30 11:59:59pm (or thereabout), Wednesday.

Reading


Specification (part 1 of 3): Crafting Timbres with FM

  • check out the FM synthesis/drone examples here, in particular
    • FM synthesis basics in ChucK
      • fm-by-hand.ck : fm synthesis, 1::samp at a time
      • fm-synth.ck : more commonly used FM synth basis, setting sync to 2
      • fm-synth2.ck : yet another way to do FM synthesis in ChucK, via the Step UGen
    • time varying Drone example (from class)
      • Drone-1.ck : FM synthesis with SinOsc modulating a SqrOsc
      • Drone-2.ck : the above with an added, time-varying "demon bunny" filter
      • Drone-3.ck : layering three of the above, controlling each independently
      • fm-mod.ck : interpolating FM synthesis parameters, example from class
  • using FM synthesis in ChucK, create the following:
    • 3 different "static" timbres
      • building blocks: oscillators, filters, etc.
      • experiment with various parameters such as carrier frequency, modulator frequency, index of modulation, etc.
    • 3 time-varying timbres
      • building blocks: oscillators, filters, time-based control code
      • can be a "drone" (but doesn't have to be)
      • the time-varying process(s) should be somehow coupled to one or more of the FM/filter parameters
    • next, take a timbre from above, and apply an ADSR envelope to "carve" out an attack, decay, sustain, and release
      • test this by making some bleeps and bloops


Lumberjack.jpg


Specification (part 2 of 3): Computer Music of Changes

  • explore and employ controlled randomness and chance, and compose a musical statement
    • macro-level structure/form: as an exercise, the piece should contain at least 3 sections (think about the flow and relationship between sections)
    • think about how to leverage randomness to controllably generate passages...
    • potential parameters that can be influenced by chance:
      • pitch
      • rhythm
      • meter
      • timbre / synthesis parameters (e.g., FM parameters)
      • dynamics
      • tempo
      • texture
      • many, many others
    • plan/score your composition somehow, pay attention to the above, and especially to the control of timbre
    • take advantage of the timbre, time-varying control, and "bleepin'"/note/pitched event capabilities you've developed in part 1
    • write ChucK programs to generate the different passages/sections/layers; for each, run/record the program multiple times, tweak parameters, and choose the best result for each part.
    • put them together in audacity/ardour, or a bigger ChucK program


Specification (part 3 of 3): Brainstormin'

  • without writing any code, imagine and think through how you might map a cellular automata to:
    • create/help create a piece of music
    • control timbre
  • no right/wrong answers - but try to think it through
  • convey what you come up with in words, diagrams, etc.
  • (you won't need to implement any of this in a future assignment - this is a thought excercise)

Deliverables

turn in all files by putting them in your Library/Web/220b/hw1/ directory, and then linking to them from your Library/Web/220b/hw1.html

  • 1) your static timbres (part 1): 3 chuck files
  • 2) your time-varying timbres + bleeps/bloops (part 1): 3 chuck files + 1 bleepin' chuck file
  • 3) your Computer Music of Changes musical statement (part 2): chuck files + final mix
  • 4) your brainstormin' write-up/draw-up/x-up | details of your plan for mapping cellular automata (part 3)
  • 5) a short README text (readme.txt) file that:
    • conveys your ideas/comments in constructing each program
    • contains instructions on running your programs
    • describes any difficulties you encountered in the process
  • 6) your hw1.html should link to these files (optionally, you can include your README in your hw1.html)