Skip to content

sets of supercollider classes and bindings to libossia

Notifications You must be signed in to change notification settings

thibaudk/ossia-supercollider

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ossia-supercollider : libossia bindings for supercollider

Installing

macOS (tested on Sierra & High Sierra)

  • recursive-clone this repository (git clone --recursive https://github.com/OSSIA/ossia-supercollider.git), cd into it
  • make sure homebrew is installed, otherwise run /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • run ./build.sh
  • resulting .app will be located in install/supercollider/SuperCollider

the script clones a fresh version of supercollider (as of this day, version 3.9), adds and builds the libossia dependencies for sclang. Depending on your connection, the install process may take a little while, because of the complete download and build of the two libs/applications.

Linux (tested on debian-like systems)

  • recursive-clone this repository (git clone --recursive https://github.com/OSSIA/ossia-supercollider.git), cd into it

if you have boost 1.65 already installed on your system:

  • run ./build.sh online /path/to/boost/include/dir /path/to/boost/libs/dir
  • e.g ./build.sh online /usr/local/include /usr/local/lib

otherwise:

  • just run ./build.sh this will install the required boost 1.65 libraries manually and locally (this may take quite a while)
  • local install folder with sc binaries will be located in your system paths (note: this overrides your previously installed binaries if you had any)

builds on linux are not as thoroughly tested as on macOS, please report any problem with the building process in the Issues section.

Windows

not yet supported, we welcome any help!

Documentation

the install provides a guide in the SuperCollider HelpSource's home (the one displayed at startup in the sc-ide) it is also available here: https://ossia.github.io/?javascript#introduction

quick usage example

(
d = OSSIA.device("ossia-collider").exposeOSCQueryServer(1234, 5678, {
  ~freq = OSSIA.parameter(d, 'frequency', Float, [0, 20000], 440);
  ~mul = OSSIA.parameter(d, 'mul', Float, [0, 1], 0.125);
  ~pan = OSSIA.parameter(d, 'pan', Float, [-1, 1], 0);
});
)

// see the tree-structure of your device
// see OSSIA.score if you want to start making a scenario out of it
"http://localhost:5678".openOS();
"https://github.com/OSSIA/score".openOS();

s.boot();

SynthDef('sinosc', {
	Out.ar(0, Pan2.ar(SinOsc.ar(~freq.kr, 0, ~mul.kr), ~pan.kr));
}).add;

// create synth with parameters' current values
x = Synth('sinosc', d.snapshot);

// now every change in the parameters' values will be reported on the sc-server
~freq.value = 220;
~pan.value = 1;
~mul.value = 0.125;

About

sets of supercollider classes and bindings to libossia

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 78.5%
  • CMake 15.0%
  • SuperCollider 4.2%
  • Shell 2.3%