Superdirt synth reference

Hi all, I've put together a reference of available Superdirt synths. I noticed that the TidalCycles synth reference was missing superfm, and I also missed having the default values at a glance, so I went through the source code in order to document parameters, and tried for a more uniform editing style.

You can find the list in this HackMD pad. Feel free to add, edit and reuse. It's in the Tidal docs now!


This is great thank you!
I wonder if it should be edited into the main doc wiki?

Excellent! That's just I was looking for. Thank you very much.

Great! Agreed it'd be ace to have this in the wiki

Hey, thanks for the kind words, I'm happy that this could help.

I can also go ahead and place this on the wiki. Should I replace the synths section of this page?

(btw, that page has lots of comments like <!--T:5--> for translation purposes, is there any way to add those automatically? I shudder at the idea of doing it by hand :^)

1 Like

Oh, and I'd love to help document the Superdirt samples as well. The flat list that's printed out when SuperCollider is started is a good quick reference of what's there, but at times it'd be nice to have a minimally categorised list (e.g. all kick drums). Is there such a thing already?

1 Like

@luluganeta thanks for the heads-up. i was not aware of superfm and the version of SuperDirt i was using didn't carry it. same for superprimes. after upgrading my SuperDirt quark and recompiling, i now get this error in my SC output:

WARNING: SynthDef superfm too big for sending. Retrying via synthdef file

any clue how to fix?

@luluganeta I confess I haven't got my head around the translation side of things, even though this was the main reason for moving to a wiki. It's great to see the translations but as I'm sadly monolingual I don't have the skills to get involved. The problem with it is, that if the text in the source language changes, there's a lot of work involved in updating all the translations.
There's info about how the translation works here:
In particular under the 'how to translate' bit.

I've seen a couple of attempts to document the Superdirt samples, most recently from @tedthetrumpet, I think. It'd be great to sort this properly, and in the process mark out a subset of clean, usable samples. Then we can try and establish their provenance/licensing.

@kit-christopher That warning isn't really a warning, it's just for information and isn't important. If I remember right, @julian made it look less worrying in newer versions of supercollider.


My 'documentation' of the default set of dirt samples is here:

It's a bit opinionated, but could be the basis of something more generaly useful.


we could add a json/yaml file in each folder or in the folder for the folders, which could be read in superdirt. This might be a good first step for adding metadata?


That was the pointer I needed, thank you! I went ahead and updated the page with the new list. I still see some editing improvements to be made, but some other day :^)

@tedthetrumpet that's a fantastic resource! I love the simple yet clear descriptions. I'll try my hand at dividing those into sample groups/themes.

1 Like

great idea, you've just made me realise I need this in my life - some of the synth samples base note values are not C for example :stuck_out_tongue:

concerning the "superfm too big for sending" warning : doesn't this mean that superfm won't work? @loopier ?

That "too big for sending" warning isn't important, and I think will be removed/rephrased in a future supercollider so that it's less alarming.. It does get sent, just in a different way.

1 Like

sorry @laelume, I think @yaxu is more informed than me about this : ) Glad to hear it's just verbosity.

The docs are fantastic, by the way. Thanks!


doesn't work. Should be this?


For superpiano, muffle and stereo doesn't work here

* `muffle` (1)
* `stereo`
<interactive>:6283:7: error:
    • Variable not in scope: muffle :: Integer -> Pattern ControlMap
    • Perhaps you meant ‘shuffle’ (imported from Sound.Tidal.Context)
<interactive>:6296:7: error:
    Variable not in scope:
      stereo :: Double -> IO () -> Pattern ControlMap