You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
distances-bending/readme.md

71 lines
3.2 KiB

# distances bending
supercollider patch for *distances bending (future tones)* composed and performed by clara de asís and rebecca lane.
## materials
the code and its player have four different voices at their disposal: *difference tones*, *noise flute*, *breath noise*, and *future tones*.
### tones
difference and future tones are generated live by supercollider oscillators.
the **difference tones** range from 20 to 160 herz. we call them difference tones because their frequencies are defined by differences between some of the frequencies played by clara and bec.
the **future tones** range from 800 to 6000 herz. at the times when they are played, they anticipate tones that clara and bec will play later in the piece.
### samples
noise flute and breath noise are samples provided by clara and bec.
**noise flute** consists of eight mono samples (the files `S2_480_mix.wav`, `S2_560_mix.wav`, `S2_640_mix.wav`, etc. are named according to frequency; in the score, these will be sample `a`, `b`, `c`, etc.).
**breath noise** is a single stereo sample that lasts for around five minutes. in one-hour versions of the piece, it is triggered once, at the 35-minute mark.
## organization
in 2023 a one-hour version of the piece was presented (at oscillation and again at p.a.s.).
this version had six sections numbered II to VII. the table in `DB 1H Time distribution table V3.pdf` sets out the framework within which the code specified scores for playing the samples and tones.
for example, in section II, the palette is constrained to:
- difference tones at 20 40 herz,
- noise flute samples a–c,
- future tones ranging from 800 to 1100 herz.
the hand-written notes in `IMG_3122.jpg` specify minimum and maximum numbers of occurrences for each class of event.
for example, in section II, these are:
- difference tones: at least 0 events, at most 1 event,
- noise flute: at least 0, at most 2 events,
- future tones: at least 1, at most 3 events, no frequency to be played more than once.
## code
init.scd
- instructions for setting up Babyface sound card with bbfpromix (linux)
- initialize server
- set up SynthDefs `\difference`, `\future`, `\mono_sampler`, `\stereo_sampler`
- amplitudes for the samples are hard-coded as arguments to `\mono_sampler` and `\stereo_sampler`
- populate Dicts and set up TUI triggers (with durations) for tones
- load samples
- instantiate sample synths and set up TUI triggers for samples
generate-score_2023.scd
- each section of the piece gets a Dictionary containing its sound materials (frequencies, sample identifiers) and its start time and duration (in minutes)
- post the temporal contraints we're working with
- specify the events and post them: this is the score a player can play from
- re-initialize some variables (in case we want to generate a new score)
triggers.scd
- pink noise for sound checking
- code blocks for triggering events. for each block, the first line or lines functions as a play button. for tones, the amplitude is also set (and can be altered) here. example:
```
( ~play_dTone.value(
"20hz", amp: 0.18, out: 1); )
~dTone_synths["20hz"].set(\gate, 0);
```
- note that samples don't have amplitudes modifiable at in the trigger blocks; as noted above, they're in init.scd
- the last line in each trigger block is the stop button