New Quark: SCLOrkSynths

Hi all,

SCLOrkSynths is a new Quark that collects over one hundred SynthDefs (some original, some found online) with accompanying Pattern demos of each. Initially made for use by the Santa Clara Laptop Orchestra (SCLOrk), and now we are happy to share with everyone who may find it useful.

Some highlights:

  • You can browse and audition each SynthDef through an easy-to-use graphical interface.
  • Patterns are organized by banks (bass, percussion, pads, miscellaneous, etc)
  • There is a handy button in the GUI (“show me the code”) that opens a copy of the SynthDef and Pattern demo code into a new SuperCollider Document for you to edit and experiment with.
  • Growing collection of SynthDefs (we hope to add more every Summer) – & everyone is invited to contribute
  • Author credits are given as metadata within the SynthDef code (a few are missing or are unknown as of yet – if you know the author of any SynthDef that is not credited, please let me know)
  • Includes helpfile with all basic info to get started

Special shout out to my student Josh Mitchell who worked hard over two Summer internships to put a lot of this together, including writing many of the original SynthDefs in there.

We appreciate any feedback. If you find this useful in your own work or in your teaching, I would appreciate if you’d let me know at some point.

Bruno

EDIT: Installation instructions:

Quarks.fetchDirectory;
Quarks.install("SCLOrkSynths");

Then recompile class library (or restart SuperCollider), and start browsing synths through the GUI:

SCLOrkSynths.gui;

Screenshot:

8 Likes

This is a wonderful initiative. There have been many attempts over the years to provide collections of instruments, but this one, because of its more uniform api and easy to explore user interface may have what it takes to become popular. I’m certainly interested in exploring the available instruments, and in the future perhaps to contribute a few.

A few small suggestions: maybe also very visibly include installation and getting started instructions:

// to install
Quarks.install("https://github.com/SCLOrkHub/SCLOrkSynths");

// to start the ui
SCLOrkSynths.gui;

As a second small suggestion, perhaps consider graying out the “open more demos” if none are available for a given synthdef.

I’m looking forward to exploring the available synthdefs in more detail.

1 Like

Thanks for sharing this. If I install it on a Macbook OSX 10.14.6 via Quarks.gui I don’t get SCLOrksSynths

With Quarks.install("https://github.com/SCLOrkHub/SCLOrkSynths") SCLOrksSynths appears…

1 Like

Thanks for the feedback! Are you unable to install just using the Quark name?

Quarks.install("SCLOrkSynths");

If that does not work, can you try again after running this:

Quarks.fetchDirectory;

Thanks for the info. Try running Quarks.fetchDirectory; then maybe restart SuperCollider, and then hopefully it should show up on the Quarks gui?

Bruno

With Quarks.gui I found the whole package and installed it with succes. I didn’t fetch a new Directory before. When typing “SCLOrkS” in the code window it only proposed “SCLOrkSamples” and “SCLOrkSoundfile” not “SCLOrkSynth”.

After reinstalling with (“https://github.com/SCLOrkHub/SCLOrkSynths”) suddenly “SCLOrkSynth” was there.

Don’t know if the following is a bug and maybe only on Mac. I’m on OSX 10.14.6 or due to my double installing? While testing several synths in the GUI, “show me the code” doesn’t work after a while. Killing the server or quitting SC doesn’t work either. I have to force quit. I’ll try soon on Ubuntu.

Definitely, much appreciated! Especially nice for students to study writing their own instruments! At the moment I encounter troubles showing the source code. It worked only once (the first SynthDef I tried).

1 Like

Thanks for the feedback! Are you on Mac, Windows, or Linux? And which SC version? I have tested the show me the code button on Linux using 3.11 and it works.

You can also try this and see if it works – if you can open any source code using this line, then the issue is somewhere in the GUI part…

SCLOrkSynths.showMeTheCode(\doubleBass);
SCLOrkSynths.showMeTheCode(\hihat1);
…etc

Let me know when you have a moment. Thanks!

Bruno

I can confirm now that it works on my Laptop with latest Catalina and 3.11.1. It doesn’t work on my Desktop where I checked with OS 10.10 and SC 3.9.3. So the old SC seemed to be the reason, independant from the gui. I tried and it works also on SC 3.10.4.

1 Like

Thanks, this is good information. Yes, the old SC version was the likely culprit. Glad it’s working on your laptop!

I’m on OSX 10.14.6 and SC 3.10.4

After several buttonpushes “play demo” and “show code”, I get FAILURE IN SERVER /n_set Node 5863 not found.

From this point “play demo” and “show code” buttons don’t work anymore

When I want to kill servers I get

server ‘localhost’ disconnected shared memory interface
‘/quit’ message sent to server ‘localhost’.
Server ‘localhost’ exited with exit code 0.

Sorry you are experiencing these bugs. I don’t have a 3.10.4 installation to test on, but from previous posts by @dkmayer it seems this Quark won’t work on older SC versions. Are you able to update to 3.11 and try again?

Could it be because I first installed via Quarks.gui and a second time via
Quarks.install("https://github.com/SCLOrkHub/SCLOrkSynths");
?

I’ll try 3.11 tomorrow

No, for me it worked ok on SC 3.10.4, but not on 3.9.3.

With SC 3.11 and OSX 10.14.6 I still get “FAILURE IN SERVER /n_set Node…” once in a while, but “play demo” and “show code” continue to work

@dkmayer Thanks for the correction, I read your post too quickly.
@Benu The “FAILURE IN SERVER…” is a bug that I need to fix in the playback code – I’ll get to it soon. It’s a harmless bug and hopefully does not interfere with general usage. Glad to hear “play demo” and “show me the code” buttons are working for you on 3.11

Ps. @Benu I forgot to mention, in answering to your earlier post — there is a separate Quark called SCLOrkTools, independent from SCLOrkSynths. The classes you saw showing up in your autocomplete (SCLOrkSamples, SCLOrkSoundFile) belong to SCLOrkTools, so you had the wrong Quark installed.

B

Really great stuff, thank you so much.

I did not have the time yet to have a closer look, but especially the option to view the source code is phantastic for someone like me that is just starting out to learn supercollider.

I am running SC on Debian testing and on my old 3.8 installation the quark did install witout errors but it did not run.

Upgraded to 3.10 and it works.

How would I learn that you’ve added stuff?

Good question :slight_smile:
I will make small incremental changes periodically, and when these amount to a significant chunk, I will create a new release number (0.2, 0.3, etc). When I make one of these bigger ‘releases’, I will announce here on the forum. But even before those, if you want to check whether there is any new stuff, you can always do Quarks.update("SCLOrkTools"); to pull in any new files. You can also look directly at the repo page (https://github.com/SCLOrkHub/SCLOrkSynths) to see exactly what has been added recently.
Hope this helps!
Bruno

I have no understanding of the code, but it seems to me that you are doing two things that are not necessarily dependent:

One is implementing a GUI (for convenient access) and the other is collecting synths.

Maybe in the longer run it would be better to split two aspects these into two repositories.

But I have no understanding how the quark-ecosystem works, so maybe there is a good reason for just using one repo…