Link Search Menu Expand Document

Prerequisites

This guide assumes that a development environment with all required dependencies has been set-up. Check the “hacking on score” guide for more information on how to do that.

Choosing the plug-in API to use

ossia score provides two plug-in APIs:

Fx API

A simple API that can be used to implement quick audio / midi / control effects and generators in a single file.

Processes implemented with that API are available at the following address.

To create a new plug-in, simply duplicate one of the files, change the metadata (name, UUID, etc. to differentiate it from other score plug-ins), and add it to the list in this file.

When building score again, the plug-in should appear in the process list.

A video explains the whole process:

Score API

A more advanced API that allows to customize pretty much every aspect of the software, but requires more work.

The major part of the software is built with that API: every process in score comes from plug-ins. These plug-ins are located in the score git repository.

The addon tutorial is an example of usage of the score API to showcase its capabilities. It is documented here.

To develop new plug-ins that way, a set-up script is provided. Simply invoke it with the name of your plug-in and it will create it in the score/src/addons folder:

$ cd score
$ tools/create-addon.sh fireworks
Addon score-addon-fireworks successfully initialized
$ ls src/addons
CMakeLists.txt  score-addon-fireworks

All the folders in that score/src/addons folder are treated by ossia score as custom addons that must be built along with the software.