Skip to content

ideoforms/python-supercollider

Repository files navigation

Python client for SuperCollider

A lightweight Python module to control the SuperCollider audio synthesis engine.

Installation

To install the client library:

pip3 install supercollider

Usage

Before using the library, start the SuperCollider server, either through the SuperCollider GUI or with scsynth -u 57110.

Within the SC client, create the below SynthDef:

SynthDef(\sine, { |out = 0, freq = 440.0, gain = 0.0|
    Out.ar(out, SinOsc.ar(freq) * gain.dbamp);
}).store;

From Python, you can now create and trigger Synths:

from supercollider import Server, Synth

server = Server()

synth = Synth(server, "sine", { "freq" : 440.0, "gain" : -12.0 })
synth.set("freq", 880.0)

For further examples, see examples.

License

This library is made available under the terms of the MIT license.

Contributors

  • Thanks to Itaborala for porting from liblo to python-osc

See also

  • If you want a more comprehensive framework that lets you construct and compile SynthDefs from Python, take a look at Supriya.
  • For an excellent Python + SuperCollider live coding environment, check out FoxDot

About

Python client for the SuperCollider audio synthesis server

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages