Difference between revisions of "SLOrk/Instruments/Permutations"

From CCRMA Wiki
Jump to: navigation, search
Line 7: Line 7:
 
This is a unique instrument whose player controls note playback as well as scoring. It works by displaying a GUI (shown at top of page) through which the slorker plays with algorithms for note-playback. Extensive real-time controls affect the texture and rhythm of the sound.
 
This is a unique instrument whose player controls note playback as well as scoring. It works by displaying a GUI (shown at top of page) through which the slorker plays with algorithms for note-playback. Extensive real-time controls affect the texture and rhythm of the sound.
  
==Sweet Spots!==
+
==Sweet Spots==
  
 
If you are playing around with the instrument and you come across a sound texture that works well, it belongs in this sweet spot list and should be given in the following format:
 
If you are playing around with the instrument and you come across a sound texture that works well, it belongs in this sweet spot list and should be given in the following format:

Revision as of 01:53, 27 April 2009

by J3 (Jacob Shenker, Jay Bhat, and Jason Riggs)

Gui.png

Overview

This is a unique instrument whose player controls note playback as well as scoring. It works by displaying a GUI (shown at top of page) through which the slorker plays with algorithms for note-playback. Extensive real-time controls affect the texture and rhythm of the sound.

Sweet Spots

If you are playing around with the instrument and you come across a sound texture that works well, it belongs in this sweet spot list and should be given in the following format:

(title of sweet spot):

Timbre: (# of timbre)

Register: (# of register)

Envelope: (# of digit selected)

Filter: (open/closed/midway?)

Detuning: (none/low/medium/high)

Tempo: (value of tempo in console)

The Sweet Spot List

Eerie Triangle Pads:

Timbre: 1

Register: 4 or 5

Envelope: 9

Filter: open

Detuning: high

Tempo: 1.0

How to Play

Keyboard Controls

The keyboard primarily controls the shape of the sound.

"[" and "]" change the timbre of the sound. "[" scrolls down through the list of timbres, while "]" scrolls up. As you scroll upward, the sound becomes more harmonically rich.

"<-" and "->" (arrow keys) change the register (in octaves).

"-^" and "-v" (arrow keys) increase and decrease tempo.

"1, 2, ... 9, 0" (digits) set the amplitude envelope of the notes. The digits are arranged in a logical progression such that the sound become less percussive and more fluid/pad-like as the digits move to the right.

Trackpad Controls (hold "." to activate!)

IMPORTANT: For the following trackpad commands to be active, you must be holding down the "." key.

X-axis: Traversing the x-axis sweeps a low-pass filter with a moderate resonance.

Y-axis: Traversing the y-axis internally detunes the pitch slightly around its note.

GUI Controls

The GUI is controlled by both clicking and keyboard commands.

Click on a square: Swaps the value in that square the value in the square immediately to its right.

" " (spacebar) or clicking "next note" plays the next note in the sequence.

"`" (tildé) or clicking "play" sets the GUI to loop through the sequence.

Known Bugs (arranged by priority)

Priority 1 (absolutely needs to be fixed asap):

Polyphony issue. If you set the envelope to a longer decay (3 or above) and then loop notes at a fast tempo, many of the notes get skipped because when they are triggered, a "kMaxPolyphony" amount of notes is already playing. This needs to be fixed.

Priority 2 (Would make the instrument run more smoothly/efficiently):

We can make the instrument able to handle more of a payload by eliminating MAUI entirely and using command-line Chuck to run it. This means that we need to use a GUI (probably an altered version of the Gamelan-Taiko-Fusion piece's GUI) via OSC messages from the command-line version.

Priority 3 (Minor issues):

The current envelope setting for the digit "5" doesn't make sense in the progression of envelopes.

Whiteboard

Priority 1 (Should totally be in there asap):

i) Currently, all oscillators are sent out all channels (in function "playSound". We should make it so that each time an oscillator is created, it gets randomly sent to one of the six channels. This is crucial to spatializing the sound.

ii) The list of available timbres should be expanded, and those currently in place should be improved.


iii) There should be a toggle that kills the sound. If pressed again, it resumes at the previous volume.

Priority 2 (Would be nice):

Priority 3 (Might considering experimenting with):

Files

Here is the chuck file:

permutations.ck

Related Projects

This permutations project was created out of a merging of three prior projects.

Jason's Supersaw project is located here: Supersaw

Jacob's Permutations code is located here: permutations_original.ck

Jay's Arpeggiator code is located here: arpeggiator.ck