• Stars
    star
    174
  • Rank 211,742 (Top 5 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 3 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A collection of plugins for the SuperCollider sound environment, all of which are ported / remixed from elsewhere

.github/workflows/cmake.yml

PortedPlugins

A collection of plugins for the SuperCollider sound environment, all of which are ported / remixed from elsewhere - including hardware synthesizers, research papers / demos, VST plugins, VCV rack and other programming environments.

Included plugins

See the PortedPlugins.schelp help file for an overview inside of SuperCollider and the respective help files for each plugin for more information about the particularities of each plugin.

Installation

Instructions for most systems:

  1. Download one of the prebuilt releases. Choose the one that fits your operating system.
  2. Unzip the contents in your extensions directory (If you don't know where this is, open up SuperCollider and evaluate Platform.userExtensionDir - the path will be posted in the post window).
  3. Recompile class library.

Building and installing from within SuperCollider

If you have Plugins.quark installed in your SuperCollider system, you can run the following line of code from SuperCollider. This will get the dependencies, build and install the plugins.

Plugins.installPlugin("portedplugins")

Arch Linux:

yay -S supercollider-portedplugins

RaspberryPi OS / ALARM:

See the accompanying script for downloading, building and installing the plugins.

Building

Requirements

  • CMake >= 3.5
  • SuperCollider source code

Preparations for a build

Clone the project:

git clone https://github.com/madskjeldgaard/portedplugins
cd portedplugins
git submodule update --init --recursive

This will get you the portedplugins.

Before continuing, you need two things:

First, the SuperCollider source code :

git clone https://github.com/supercollider/supercollider.git

Note where you placed this source code on your computer and copy the full path to it for use with CMake.

Secondly, you need the path to your SuperCollider extensions directory. This is where CMake will install the plugins.

You can get this by opening up SuperCollider and running this line of code

Platform.userExtensionDir

Note the path that it posts to your post window in SuperCollider, copy it and save it for the next part of the build process.

Actually Building

To build the plugins, run these commands. Note the two paths you need to put in to the CMake command, these are the ones you got from the preparatory steps above.

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE='Release' -DSC_PATH=/path/to/sc/source -DCMAKE_INSTALL_PREFIX=/path/to/extensions
cmake --build . --config Release
cmake --build . --config Release --target install

Building for Raspberry Pi

This repository includes a script for the Raspberry Pi users (Raspberry Pi OS- / ALARM based) that installs the prerequisites for building (cmake), downloads all of the source code needed and compiles and installs it.

Building for Rosetta on the Mac M1

If you are compiling these plugins on a Mac M1, it will detect your architecture as arm and install an arm version of the plugins. Chances are you've installed the x86 version of SuperCollider and if so you will get architecture mismatches between the two.

To explicitly build for a Mac M1 running SuperCollider under the Rosetta compatibility layer, run these commands:

# Location of SuperCollider source code
SC_LOCATION="/path/to/sc/source"

# Force this architecture:
OSX_ARCH="x86_64"

# Install here:
INSTALL_LOCATION="$HOME/Library/Application Support/SuperCollider/Extensions"

cmake .. -DCMAKE_BUILD_TYPE=Release -DSC_PATH="$SC_LOCATION" -DCMAKE_INSTALL_PREFIX="$INSTALL_LOCATION" -DCMAKE_OSX_ARCHITECTURES="$OSX_ARCH"
cmake --build . --config Release
cmake --build . --config Release --target install 

Contributing

Contributions are welcome!

If you experience any problems, post it as an issue or if you have the skills to fix it yourself you may open up a PR with a suggested change.

If you see any problems in the documentation, feel free to do the same here (please submit a PR if you can - otherwise feel free to post an issue).

See CONTRIBUTING.md for more information on how to contribute.

Credits

Thank you to Notam for the support.

Most of these plugins build on code, research and ideas of others, including:

A massive thank you to them and everyone who contributed to the sub projects this relies on for sharing knowledge and ideas and making new sounds possible!

You can find more information about sources of information and code in the help files for the plugins.

More Repositories

1

awesome-supercollider

ARCHIVED:💻🎹🎛🔊 A community curated list of SuperCollider stuff
446
star
2

sox-tricks

Command line tools that make batch processing, editing and organization of audio files a fast and painless task. Based on the SoX audio tool.
Shell
68
star
3

Cookiejuce

🍪 Generate modern JUCE projects from the command line. Includes CLAP, c++20, Rust, CMAKE, etc. 🍪
C++
64
star
4

reaper-nvim

Reaper plugin for neovim. Remote control your daw with almost 4000 actions without leaving your favourite text editor.
Lua
54
star
5

scbookcode

The code examples used in the SuperCollider book published by MIT
HTML
47
star
6

tidal-maxmsp

Connecting the Tidal live coding environment to MaxMSP
Max
39
star
7

tree-sitter-supercollider

SuperCollider grammar for the tree-sitter code parser
C
36
star
8

SpectralTricks

A haskell package adding spectral effects to Tidal
SuperCollider
32
star
9

faustgen-supercollider

Livecode Faust in SuperCollider using an embedded Faust compiler.
CMake
29
star
10

guttersynth-sc

Chaotic physical modelling in SuperCollider
C++
27
star
11

supercollider-h4x-nvim

Neovim plugin for SuperCollider hack(er)s
Lua
23
star
12

nornsgenerate

A command line tool for generating a basic project for the monome norns sound computing platform.
Shell
21
star
13

tidal4live

m4l devices for TidalCycles live coding in Ableton Live
20
star
14

PolyBuf

Easily load and access a bunch of audio files into collections of buffers in SuperCollider
SuperCollider
20
star
15

fzf-sc

Combine the magic of fuzzy searching with the magic of SuperCollider in NeoVim
Lua
18
star
16

faust-nvim

NeoVim plugin for writing Faust DSP code
Lua
18
star
17

nodeproxygui2

An alternative to SuperCollider's built-in Ndef.gui method.
SuperCollider
17
star
18

cc14

14 bit midi for SuperCollider
SuperCollider
15
star
19

mico

Matchbox sized 14 bit midi controller based on the Raspberry Pi Pico
G-code
15
star
20

cppman.nvim

Search cppman (cplusplus.com and cppreference) from within neovim
Lua
15
star
21

komet

Komet is a computer music / sound system by Mads Kjeldgaard
SuperCollider
15
star
22

vortex

A system for turbulent tape music
SuperCollider
15
star
23

supercollider-rust-plugin-template

🦀 Template for Rust-based SuperCollider plugins
CMake
15
star
24

sox.quark

A SuperCollider interface for SoX
SuperCollider
14
star
25

cookiecutter-quark

A cookiecutter template to help you automatically generate a SuperCollider Quark (package)
SuperCollider
14
star
26

Drums.quark

(WORK IN PROGRESS) A collection of drum synthdefs for SuperCollider
SuperCollider
14
star
27

PicoOSC

OSC communication for the Raspberry Pi Pico using the C++ SDK
C++
13
star
28

sc-scratchpad.nvim

Throwaway buffers for chaotic SuperCollider coders in Neovim.
Lua
13
star
29

Sleet

A library / factory for SuperCollider sound effects
SuperCollider
12
star
30

Birdhouse

An OSC to Midi Bridge. Cross-platform. VST, CLAP, Standalone.
C++
12
star
31

plugins.quark

A package manager for SuperCollider plugins
SuperCollider
11
star
32

workshop-materials-3d-music-supercollider

Workshop material: Composing 3D music using SuperCollider and ambisonics
SuperCollider
10
star
33

osccli

Fast and simple cli tool for Open Sound Control communication, written in Rust
Rust
10
star
34

vim-norns

NeoVim plugin for remotely working on projects on the Norns sound computer platform
Vim Script
10
star
35

sc-plugins-build-scripts

Scripts for building and installing SuperCollider plugins on MacOS
Shell
9
star
36

Monolithic

A collection of SuperCollider extensions
SuperCollider
9
star
37

faust.quark

Create SuperCollider packages with automatically compiled Faust plugins
SuperCollider
8
star
38

nvim-supercollider-piano

Play SuperCollider synths using your (computer) keyboard in neovim!
Lua
8
star
39

rofi-jack

Keyboard centric jack audio management using the rofi app launcher
Shell
8
star
40

Particular

A SuperCollider package for particle synthesis
SuperCollider
8
star
41

Else

A collection of useful and/or weird pattern classes for SuperCollider
SuperCollider
8
star
42

esp32-receive-osc-simple

A simple Platformio based project for the ESP32 microcontroller to receive OSC
C++
7
star
43

mkfaustplugins

SuperCollider plugins written in Faust
Faust
7
star
44

allbuf

Create all possible buffer player patches as SynthDefs in SuperCollider (all = many)
SuperCollider
7
star
45

binauraldecoders

Easy to use binaural stereo decoders for High Order Ambisonics in SuperCollider
SuperCollider
7
star
46

tree-sitter-faust

ARCHIVED. Please use https://github.com/khiner/tree-sitter-faust
C
7
star
47

vim-supercollider-snippets

Vim plugin adding snippet files for SuperCollider filetypes
Vim Snippet
7
star
48

outputfx

Easily manage output effect chains on the main output of SuperCollider.
SuperCollider
7
star
49

linuxutils-quark

Supercollider convenience functions for interfacing with Linux Audio utilities
SuperCollider
7
star
50

SimplePicoMidiController

A simple Raspberry Pi Pico MIDI-USB controller written in C++ using the pico-sdk
CMake
6
star
51

persistentmainfx

Meta class for easily creating persistent main output effects (like limiters, dc filters or decoders)
SuperCollider
6
star
52

sclang-format.nvim

SuperCollider formatter for neovim
Lua
6
star
53

trillbar-teensy-lc-controller

14 bit midi capacitive touch controller using Bela's Trill Bar and the Teensy LC microcontroller
C++
5
star
54

KModules

A synth library including factory functions for creating and managing synths
SuperCollider
5
star
55

ranger-lame

mp3 conversion plugin for the the Ranger File Manager
Python
5
star
56

ranger-sox

Audio conversion and manipulation plugin for the Ranger File Manager
Python
5
star
57

launchpadx-sc

A Simple SuperCollider interface for the Novation LaunchpadX controller
SuperCollider
5
star
58

puredata-rust-template

A template to create Rust-based Pure Data externals
Rust
5
star
59

KFilter

Tiny SuperCollider quark that adds a nodeproxy role for \kfilter
SuperCollider
4
star
60

microcontroller-nvim

Lua
4
star
61

cheeky-snippets.nvim

Cheeky LuaSnip snippets for NeoVim
Lua
4
star
62

faust2supercollider2

Lua
4
star
63

raspberry-pi-pico-usbmidi-platformio-template

Make a usb midi controller with a Pico board and the Arduino framework in Platformio
C++
4
star
64

fxpatterns

Pattern -> fx
SuperCollider
4
star
65

stereodecoders

Easy to use stereo decoders for High Order Ambisonics in SuperCollider
SuperCollider
4
star
66

reapernrt.quark

SuperCollider
3
star
67

14bit-midi-teensy-supercollider

An example of a simple 14 bit midi controller setup with Teensy, cpp and SuperCollider
C++
3
star
68

madskjeldgaard

3
star
69

lua-supercollider-snippets

Supercollider snippets for the neovim plugin snippets.vim
Lua
3
star
70

nannou-sketches

Sketches and apps written using the nannou creative coding framework for Rust
Rust
3
star
71

launchpadmini-sc

SuperCollider interface for the Launchpad Mini controller
SuperCollider
3
star
72

faust2sc.py

Generate SuperCollider plugins using Faust code [WIP]
Python
3
star
73

mk_scripts

My reaper scripts
Lua
3
star
74

telescope-supercollider.nvim

Telescope extension for SuperCollider
Lua
3
star
75

mico-sc

SuperCollider interface for the Mico controller
SuperCollider
2
star
76

faustscfilters

faust filters as SuperCollider UGens
2
star
77

akkorder

Code for the release "Akkorder"
SuperCollider
2
star
78

PicoDebounceButton

Debounce button presses on the Raspberry Pi Pico / RP2040
CMake
2
star
79

simplepresets

Preset system for SuperCollider's NodeProxy objects
SuperCollider
2
star
80

Plines

Very simple exponential line patterns for SuperCollider
SuperCollider
1
star
81

autopan

SuperCollider
1
star
82

mk-synthlib

My SynthDef factory
SuperCollider
1
star
83

guibuttonmatrix

Simple SuperCollider quark for creating Button matrices in a gui window
SuperCollider
1
star
84

dotbot-quark

Install SuperCollider packages (quarks) in dotbot
Python
1
star
85

daf342wregsf_live

SuperCollider based live interface for the piece 'DAF342wregsf' with visuals made in Max/MSP
Max
1
star
86

PicoResponsiveAnalogRead

Less noise analog readings on the Raspberry Pi Pico
CMake
1
star
87

supercolliderplugin-catch2

An example plugin for SuperCollider with the Catch2 testing framework setup for automatic testing
CMake
1
star
88

faustquark-example

An example of how to use Faust.quark
Faust
1
star
89

supercollider-github-action-example

Example of running SuperCollider tests in a github action
1
star
90

buchla-208-card-holder

A parametric, 3d-printable holder for Buchla Music Easel program cards
OpenSCAD
1
star
91

openscad-esp-models

OpenSCAD models of ESP32/ESP8266 based development boards
OpenSCAD
1
star
92

vim-scdoc-snippets

scdoc snippets for NeoVim (both UltiSnips and Snippets.nvim)
Vim Snippet
1
star