Intro

Gibber is a browser-based live coding environment for creating music and experimenting with audio synthesis. Gibber code is written in pure JavaScript with no syntactical additions or modifications; this means that Gibber code can be easily run from within any webpage. The one rather giant caveat to this is that Gibber currently only runs efficiently in Google Chrome.

The audio synthesis in Gibber is based on the excellent audioLib.js library by Jussi Kalliokoski. Gibber layers automated audio graph management and an extremely terse syntax on top of this library in addition to extending it with extra effects and a myriad of sequencing options. Other features of Gibber include:

  • Sample acccurate timing for all synthesis and sequencing commands
  • A very simple model for conducted multi-coder networked performances
  • A terse, simple syntax geared towards beginning programemrs
  • Basic knowledge of music theory thanks to teoria.js

Here is a simple example of Gibber code that plays a simple bass/snare drum pattern and an arpeggiated bass line.

1 2 3 4 5 6 7 8 9
d = Drums("xoxo", _4); // x = kick, o = snare, quarter note (_4) gets the beat
 
s = Synth(); // create an oscillator accepting note messages
s.fx.add( Reverb() ); // add Reverb to our synth
 
s.note("A#4"); // test synth by telling it to play a note
 
a = Arp("C2m7", _4); // arpeggiate a C minor 7 chord with quarter notes
a.slave(s); // control the synth with our arpeggiator
view raw intro2.js This Gist brought to you by GitHub.

If you have Chrome installed, try it out!

This work is licensed under GPL - 2009 | Powered by Wordpress using a heavily modified version of the theme aav1