Hello, and welcome to the first score tutorial.
In this tutorial we will see how to communicate with a simple PureData patch.
When you first open score, you will be greeted by the following blank score.
At the left is the Device Explorer, which will show the parameters of the software or hardware that you wish to control.
In the center, the actual Score is present, and at the right, an element Inspector is shown. It is currently empty because no element is selected.
At the top, the transport section allows to start playing and stop the score, and we can zoom the main score view.
Multiple options and buttons are present in the top menu; we will leave them for now.
Creation of a PureData patch
First install PureData if you have not, and add the « mrpeach » extension in « Help > Find Externals ».
This patch will listen for OSC messages on the port 9001 and print them on the console :
Connecting to the PureData patch from score
Then, we will add a corresponding device to score.
At the bottom of the Device Explorer, there is a blue Plus sign.
Click on it and select « Add device ». Alternatively, you can right-click
on the background of the Device Explorer.
A new window will open, with multiple fields.
If the Protocol field isn’t « OSC », select « OSC ».
Then, set the device listening port to the Pd patch’s port, here 9001 :
Any name can be given instead of OSCDevice; this is useful if you want to connect
to more than one patch.
Then press OK.
A new line appears in the Device Explorer :
This line represents a Device, it is an abstraction over a remote software or a remote hardware
controllable via OSC or any other protocol that score supports.
To communicate with it, we have to add an address to this device.
Right-click on the created Device, and select : « Add child ».
Any name can be given. The allowed characters are integers, letters, dots and parentheses, e.g. « Fr.ui.t(36) ».
For this example we choose the name « aValue ».
In the « Value Type » field, put « Int ».
This means that this address on the remote device expects to receive integer values (1, 2, 3, -5, 8192).
The other fields can be left as they are :
Upon validation, the tree can now be unfold and has a new node :
To test the behaviour, you can write numeric values in the « Value » column – for instance 42 –
They are sent to the PureData patch when pressing « Enter ».
The PureData console should then display : « /aValue 42 »