Difference between revisions of "220b-winter-2008/hw1"
From CCRMA Wiki
m (→Specification (part 3 of 3): Brainstormin') |
|||
(16 intermediate revisions by 2 users 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] |
− | === Specification (part 1 of 3): Crafting | + | === Specification (part 1 of 3): Crafting Timbres with FM === |
* check out the FM synthesis/drone examples [http://ccrma.stanford.edu/courses/220b/ck/ here], in particular | * check out the FM synthesis/drone examples [http://ccrma.stanford.edu/courses/220b/ck/ here], in particular | ||
** FM synthesis basics in ChucK | ** FM synthesis basics in ChucK | ||
Line 21: | 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 31: | 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 46: | 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 | + | ** 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 56: | 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 | + | * 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 64: | 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 | ||
− | * | + | * 6) your hw1.html should link to these files (optionally, you can include your README in your hw1.html) |
Latest revision as of 16:41, 30 January 2008
Contents
Homework #1: Timbre-scapes
Due date: 2008.1.30 11:59:59pm (or thereabout), Wednesday.
Reading
- Real-Sound-Synthesis:
- chapter 3
- sections 4.0, 4.1, and 4.2
- chapter 10
- skim through articles on chance music, John Cage's Music of Changes (also see listening page), and the I Ching
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
- FM synthesis basics in ChucK
- 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
- 3 different "static" timbres
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)