Skip to content

jamshark70/ddwChucklib-livecode

Repository files navigation

chucklib-livecode

An framework for live-coding using ddwChucklib objects in the SuperCollider programming language.

Design overview

In chucklib, BP objects play patterns to make sounds. Using this framework, BPs inherit from a specific process prototype, PR(\abstractLiveCode), which provides hooks that accept new patterns from chucklib-livecode. Instances of this process can play any SuperCollider SynthDefs or Voicers, with a flexible default system.

Chucklib-livecode installs a preProcessor into the SuperCollider interpreter, which translates compact livecoding commands into full SC syntax. The most important of these commands divides a bar’s worth of musical time into events, generally indicated by single characters, which may also be grouped into subdivisions. This style of notation is inspired by http://www.ixi-audio.net/ixilang/ and is fairly straightforward to correlate to the sounding rhythm. Generator functions may produce new content in every bar.

/kik = "xxxx";   // 4otf

/kik.fill1 = "x|x|x|x  x";  // trailing 16th-note

/kik.triple = "xxx";  // 3 divided over the bar

/hh = ".-.-.-.-";  // normal offbeats

/hh = ".-|. -^| ^- |.-";  // extra emphasis on 2-a and 3-e

/kik/hh/snr+  // play
/kik/hh/snr+4  // play on next quant = 4
/kik/hh/snr-  // stop

Full documentation is in PDF form: https://github.com/jamshark70/chucklib-livecode/blob/master/cl-manual.pdf

Pitch support and Voicer

There was a note in this space about using the topic/rearticulation branch of the ddwVoicer quark. That’s no longer necessary; I’ve merged that branch into the quark’s master branch.

You might need to update ddwVoicer.

License

chucklib-livecode is licensed this under Creative Commons CC-BY-NC-SA 4.0. You may create a derivative project, provided you don’t use the code commercially and, if you release your code, you should credit me and license it under CC-BY-NC-SA or a more permissive license.

http://creativecommons.org/licenses/by-nc-sa/4.0/

About

A live-coding interface for chucklib objects

Resources

Stars

Watchers

Forks

Packages

No packages published