Open Sound Control (OSC)

Many application support automation through the Open Sound Control (OSC) protocol. This is a network protocol that uses UDP and usually requires the client/server applications to be on the same network sub-net (IP address range).

An example of such and application is Resolume.

There is a great .Net library that can be used with PowerShell to send OSC messages to applications which support OSC. Download it from GitHub

Example PowerShell script to play a clip in Resolume


add-type -path 'C:\Users\imorrish\OneDrive\PowerShell\OSC\SharpOSC.dll'
#Connection for Resolume
$sender = new-object SharpOSC.UDPSender "192.168.1.67", 7000
#start a layer clip
$message = new-object SharpOSC.OscMessage "/layer3/clip1/connect", 1;
$sender.Send($message);
#Enable or dissable a video effect on a clip. 1 = disable, 0 = enabled
$message = new-object SharpOSC.OscMessage "/activeclip/video/effect1/bypassed", 1;
$sender.Send($message);

I have also blogged about using this to automate Behringer audio mixers.
https://wordpress.com/pages/ianmorrish.wordpress.com