Skip to content

ikag/SuperDirt

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperDirt 0.8

SuperCollider implementation of the Dirt sampler for the Tidal programming language

Alex McLean and Julian Rohrhuber

Requirements

Installation from SuperCollider

include("SuperDirt");

Note: this also automatically installs the DirtSamples quark, which contains a large collection of sound files. It downloads them as a zip file. Sometimes, git fails to unpack these samples and they don't get listed. In this case, you have to unpack them "manually".

Simple Setup

SuperDirt.start

You can pass port, outBusses, senderAddr as arguments.

Setup with options

(
// configure the sound server: here you could add hardware specific options
// see http://doc.sccode.org/Classes/ServerOptions.html
s.options.numBuffers = 1024 * 16; // increase this if you need to load more samples
s.options.memSize = 8192 * 16; // increase this if you get "alloc failed" messages
s.options.maxNodes = 1024 * 32; // increase this if you are getting drop outs and the message "too many nodes"
s.options.numOutputBusChannels = 2; // set this to your hardware output channel size, if necessary
s.options.numInputBusChannels = 2; // set this to your hardware input channel size, if necessary
// boot the server and start SuperDirt
s.waitForBoot {
	~dirt = SuperDirt(2, s); // two output channels, increase if you want to pan across more channels
	~dirt.loadSoundFiles;   // load samples (path containing a wildcard can be passed in)
	// for example: ~dirt.loadSoundFiles("/Users/myUserName/Dirt/samples/*");
	s.sync; // wait for samples to be read
	~dirt.start(57120, [0, 0]);   // start listening on port 57120, create two orbits, each sending audio to channel 0. You can direct sounds to the orbits from tidal e.g. by: `# orbit "0 1 1"
}
)
// now you should be able to send from tidal via port 57120

Setup from Tidal

(cps, getNow) <- bpsUtils
(d1, t1) <- superDirtSetters getNow
(d2, t2) <- superDirtSetters getNow

Now you can run a pattern, e.g.

d1 $ sound "[bd bd bd, sn cp sn cp]"

d2 $ sound "[sn*2 imp bd*3]" |+| speed "1"

Automatic startup

If you want SuperDirt to start automatically, you can load it from the startup file. To do this, open the sc startup file (File>Open startup file) and add: load("... path to your tidal startup file ..."). This path you can get by dropping the file onto the text editor.

Options on startup

Options on-the-fly

Using SuperDirt with SuperCollider 3.6

It is possible to use SuperCollider 3.6, but startup will be much slower by comparison.

The install works differently: don't do include("SuperDirt"), but instead download the three quarks to the SuperCollider Extensions folder:

Note that for automatically loading the sound files, the folder Dirt-Samples should have this name (not Dirt-Samples-master e.g.) and should be next to the SuperDirt folder.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • SuperCollider 100.0%