Two new suggested granular synths

Hi, I’m new here, discovered Sonic Pi recently and successfully used it for a programming introduction to kids, love it!

I have created two simple granular synths and would be willing to contribute them, but before finalizing their integration I wanted to check if people think they’d be a good addition.

Synthdefs, Sonic Pi and audio examples are here:

For now both work using load_synthdefas shown in the examples, and if there’s interest I’ll look at integrating them and preparing two pull requests. I’m an absolute beginner with SuperCollider, coding suggestions are welcome.


Hi @bdelacretaz,

new synths are definitely most welcomed. Thanks so much for considering to submit these - they sound fab! I would love to see a PR with them in it. It could serve as a template for the kind of work that’s required to introduce a new synth.

For a complete new-synth PR we need the following:

  • The supercollider synthdef source (in etc/synthdefs/designs/supercollider)
  • The compiled synthdef (in etc/synthdefs/compiled/supercollider)
  • Metadata describing the synth including argument names and checkers (editing app/server/ruby/lib/sonicpi/synths/synthinfo.rb).

Let me know if you need any assistance with any of this!

Thanks! I’ll prepare a PR.

I don’t know much about Ruby, is ruby server/ruby/lib/sonicpi/synths/synthinfo.rb a valid way to check the syntax of my changes for that file? It seems to work fine.

Almost - to just check the syntax rather than attempting to run it, you need to pass the -wc flags:

ruby -wc server/ruby/lib/sonicpi/synths/synthinfo.rb 
1 Like

Found your github repository and gave these a whirl. Very nice!

1 Like


What happened to these? The link is 404, and believe they are not on dev yet. I am alway curious about new synths :slight_smile:


1 Like

I’m very sorry that I didn’t follow up on this, but believe me it’s still on my list, will get to it eventually! The correct link is sonic-pi-experiments/synths/incubator at master · bdelacretaz/sonic-pi-experiments · GitHub