Superpiano not generating audio

Earlier today I was trying to get superpiano to produce sounds but no sounds were being produced. I could see an error in Supercollider reporting that the superpiano synthdef could not be found.

*** ERROR: SynthDef superpiano not found

It's possible I may have inadvertently broken my startup file? I am not sure, as I've used this synth before.

I am trying to evaluate this:

d1 $ s "superpiano"

Nothing happens, other than the error popping up above.

I think you have to put at least a note in the pattern ... # n 0

When I evaluate d1 $ s "superpiano" then a5 plays, once per cycle.
But it is still best to add notes: d1 $ s "superpiano" #n "c a6 f4 e"

When I use a sound instrument or sample name that isn't in SuperDirt or mis-spell, then I get a similar error in the SuperCollider post window. "no synth or sample named 'superPPianoo' could be found.

If your example produced sound without error previously, it suggests that SuperDirt did not load properly when SuperCollider starts. Try this:

  • Restart SuperCollider
  • From SuperCollider IDE: SuperDirt.start;
  • Make sure that your superdirt_startup.scd file is loading correctly.
  • Try other samples and synthesizers: "supersaw" "superpwm" "bd"
    If they all fail, SuperDirt is clearly not working. If only superpiano fails there is a problem with this specific synthDef.

Thanks - solved it, my scd file wasn't loading properly and now my piano is working :slight_smile:

Hi I'm this issue as well, would you mind sharing some more information on how did you fix the loading issue? In my case some of the other synth sounds work (arpy, supermandolin, superpulse) and some others don't (superpiano, supersaw) I'm also getting several "failure in server" errors.

...
FAILURE IN SERVER /s_new SynthDef not found
FAILURE IN SERVER /n_run Node 1097 not found
FAILURE IN SERVER /n_set Node 1097 not found
FAILURE IN SERVER /n_run Node 1102 not found
FAILURE IN SERVER /n_set Node 1102 not found
FAILURE IN SERVER /n_run Node 1097 not found
FAILURE IN SERVER /n_set Node 1097 not found
FAILURE IN SERVER /n_run Node 1102 not found
FAILURE IN SERVER /n_set Node 1102 not found
FAILURE IN SERVER /n_run Node 1097 not found
FAILURE IN SERVER /n_set Node 1097 not found
FAILURE IN SERVER /n_run Node 1107 not found
FAILURE IN SERVER /n_set Node 1107 not found
*** ERROR: SynthDef superpiano not found
FAILURE IN SERVER /s_new SynthDef not found
FAILURE IN SERVER /n_run Node 1097 not found
FAILURE IN SERVER /n_set Node 1097 not found
...

Appreciate any help.

I have some ideas but note that I am an intermediate level user, not a seasoned expert.

I get FAILURE IN SERVER /n_run Node xxxx not found occasionally also. I don't know what it actually means, but I know it's not good. I always Quit or Kill All Servers, and if I suspect a bigger problem, I quit the IDE and do a full restart.

SynthDef superpiano not found` suggests that something is wrong with your default-synths library file. SuperDirt has one file with all the default SynthDefs (synthesizer definition classes). If you can play supermandolin but not superpiano or supersaw, that is problematic because they should load from the same file.

On MacOs, the file location is: ~/Library/Application Support/SuperCollider/downloaded-quarks/SuperDirt/library.

Inspect that file - it should have ~ 30 synthDef classes, including superpiano and supersaw. You may want to replace it. Here is the source in GH: SuperDirt/library at develop · musikinformatik/SuperDirt · GitHub

The SuperDirt Readme also suggest this general troubleshooting step:

SuperDirt.resetEverything
This looks like a good thing to do.

The last thing to try would be to uninstall SuperDirt and reinstall.

1 Like

Thank you I'm now noticing more errors after reinstalling and rebooting that get me closer to the root of the problem:

loading synthdefs in /Users/benzaiten/Library/Application Support/SuperCollider/downloaded-quarks/SuperDirt/classes/../synths/default-synths.scd
exception in GraphDef_Recv: UGen 'MdaPiano' not installed.
exception in GraphDef_Recv: UGen 'MembraneHexagon' not installed.
exception in GraphDef_Recv: UGen 'SawDPW' not installed.
exception in GraphDef_Recv: UGen 'SawDPW' not installed.
exception in GraphDef_Recv: UGen 'AY' not installed.
exception in GraphDef_Recv: UGen 'BMoog' not installed.
exception in GraphDef_Recv: exceeded number of interconnect buffers.
exception in GraphDef_Load: UGen 'FM7' not installed.
...

I notice all these exceptions are namespaces referenced by the synths that are not working, the question now is what's causing all of these exceptions

Those UGens are part of SC3plugins extensions. These should be installed at:
~/Library/Application Support/SuperCollider/Extensions/SC3plugins

If you don't have this folder, or if the individual UGen folders are incomplete, that would explain it.

So if you have this folder, I recommend Trash it and do a fresh install. Follow instructions here. It's simple:

Thanks! I think I need to spend some time reading this as I probably have to build Supercollider and sc3 from my machine

If you mean compile them from source code -- you can, but it isn't standard. Most installs work fine by downloading and following instructions.

  • Sc3-plugins downloads: Releases · supercollider/sc3-plugins · GitHub
  • unzip the download
  • Check your Extensions folder:
    • Create an Extensions folder if it doesn't already exist: /Users/benzaiten/Library/Application Support/SuperCollider/Extensions/
    • or you can use Library/Application Support/SuperCollider/Extensions/
  • move the SC3plugins to your Extensions folder
  • restart SuperCollider
1 Like

This finally did it!! Thank you thank you!