Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

441 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Živa

Syntax sugar for live coding in supercollider.

Quick Start

// boot the server
Ziva.boot;

// check the current BPM
Ziva.bpm;
// set the BPM - defaults to random value on every boot
Ziva.bpm = 96;

// set scale - defaults to \major
Ziva.scale = \minor;
// set the root (0 = C, 1 = C#, .. 11 = B) - defaults to 0 (C)
Ziva.root = 2;

// load samples - no samples by default
Ziva.samples("/path/to/your/samples/dir");
// list samples
Ziva.listSamples;

// list synth sounds
Ziva.synths;
// get list of controls (parameters) of a synth
Ziva.controls(\pulse);

// create track #1 starting the
// line with a number followed by a sound: (or s:)
1 s: \trisaw;
// mute the track
1.mute;
// unmute the track
1.unmute;

// add parameters
// arrays result in chords
// r: creates a rhythm from a hexadecimal string with a leading backslash
// sus: and dec: are ADSR values (there's also atk: and rel:)
1 s: \trisaw octave: 3 degree: [0,2,4] dur: (1/2) sus: 0 dec: 0.4 r: \fa;

// add an effect
1 s: \trisaw octave: 3 degree: [0,2,4] sus: 0 fx1: fbdelay(0.3, 0.89) wet1: 0.6;

// remove the previous effect
1 s: \trisaw octave: 3 degree: [0,2,4] sus: 0 fx1: nil;

// reverb amount (same reverb for all tracks)
1 s: \trisaw sus: 0 reverb: 1;

// sequence notes in the scale
1 s: \trisaw degree: [0,2,4].pseq;
// random sequence
1 s: \trisaw degree: [0,2,4].prand;
// lace sequence
1 s: \trisaw degree: [0,2,[0,7]].place;
// etc...
// this also works with sclang Pattern syntax
1 s: \trisaw degree: Pseq([0,2,4], inf);

About

Live coding with SuperCollider patterns made easy (hopefully)

Resources

Stars

32 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages