OSCbuddy - Max for Live patches for VJs

Created by Tom Cosm


OSCbuddy is a collection of Max for Live patches that send parameter, amplitude, note, CC and frequency information over OSC so that other applications can receive and use the information, with VJs and Visual Performers in mind.

OSCbuddy Screenshot

The original concept was conceived by myself (Tom Cosm) and artist Andy Thomas. We used a prototype of this software to perform a fully synced live AV act at Ozora Festival 2016. Since then, many VJs have hit me up for the software, so I have turned the patches into a public version which is free to download.


It is currently in ALPHA state, so there may be some bugs and problems not yet addressed. If you have feature requests or have found a bug, please post over here.

Download OSCbuddy 1.0.0-alpha for free


If you wish to support its development and get early access to releases, read on.

I’ve spent a lot of hours on this as I am passionate about bridging the gap between Audio and Visual artists, especially in the realm of live performance. After 10+ years of performing, I’ve decided I’m sick of seeing VJs stuck down the back of the dancefloor in a dark corner, not getting the recognition they deserve.

If you decide to make a donation (thanks!) you will be added to the alpha testing list, and receive new versions with bug fixes / new features as I release them before the public versions are released.

If you make a donation that’s more than the current average, you will be added to the “super awesome contributor” list, and will receive the betas and full releases several weeks before they are made public.

The donations received will determine how many hours I can throw at this per week, as I work on other projects to pay my rent and bills.




Use the slider to choose an amount:

Or enter an amount manually:
current average is: 21.25
Amount is in USD

Top 10 Contributors

Jon Bierman40
Jon Bierman40
Rubin Bingham20

Alternative Donation Options

Bitcoin - 18Uofqw16oEYJhxH85fXxfBgGRN5aiWMxn
Litecoin - LiBmoHaqRguPrywPvU361LhA6XAxpSaJnX
Namecoin - NFfY1ec3mtAQDEZXhpd4Nm92GvApnDCGhZ
Novacoin - 4HPksKnn9y5F5c9puTKP6akZeff5UvFXB1
Peercoin - PFGcsh1oM8rRiMCXYPRrNxqSruiWqMzaaj
Dashcoin - XjR67cbTZzjFpReFaTe4mkU8MDpLVCZ21j
Etherium - 0x8a640917bfd33f75330d92f67af21e489875fd0b

OSCbuddy Guide

View the tutorial video below, or read on.

In its current Alpha state, you can send up to 4 pipes to your application using 5 different methods. These are:

The pack consists of a Master patch, and 3 Insert patches that send information to the Master patch. The insert patches are:

The Param and Freq options are built into the Master patch and do not require an insert.

Master Patch

OSCbuddy Master Overview

The Master Patch is to be placed on the Master Channel of Ableton Live and will recieve information from the Insert patches, as well as allow you to “shape” the data before it is sent over OSC to an IP, port and address you specify. Here’s an overview of it’s functions.

  1. Sets the IP and Port for all 4 of the senders. This is where you would add the local IP address of the computer running the software to receive the OSC. If you are running the receiving software on the same machine, use the IP address to feed it back to localhost. Ensure that the port number you specify is not being used by another application, and that the receiving software is setup to receive OSC messages on that port. Clicking “UPDATE” will overwrite all the ports for the 4 senders, and this can not be undone.
  2. Sets the OSC address for all 4 of the senders. Each application will have different addresses for each parameter. For example in Resolume, the first macro knob of the dashboard for Layer 1 is /layer1/link1/values. Clicking “UPDATE” will overwrite all the addresses for the 4 senders, and this can not be undone.
  3. This is the sender type area, where you can specify what type of information from Ableton Live can be sent, and update the middle area with relevant information based on your selection. I will cover each of these a bit further down.
  4. This allows you to adjust the Signal, Rise and Fall of the data. Signal allows you to reduce or amplify the signal it is sending (0 means send no value, 1 means send the original value), Rise adds a slope or attack to the start of the data stream, Fall adds a slow or decay to the end of the data stream. These are MIDI mappable.
  5. The display area shows a level indicator of the signal being sent based on your shaping, and a running graph of the data to help visualize how it would change the parameters in the software you are sending it to.
  6. This allows you to set invidual IP, Port and Addresses for each of the 4 senders. Usually you would only need to adjust the Address area, unless you want a sender to send it’s information to a different computer. Once you have entered an OSC address, you need to hit enter in order for it to update.
  7. This allows you to either send the data at a range of 0-127, or 0.-1. as some applications handle OSC numbers different. The box at the end shows the final value being sent real time.

Here are the list of options for the data stream types and how they work.


Current sender is disabled


OSCbuddy Note

The Note option takes input from the Note Insert (more information below), which can be added before any instruments on a MIDI track. It triggers whenever note on and note off messages are received, and sends the current note velocity as a value. You can disable the note off message by choosing “Ignore 0 Value” for a constant stream of data that does not go back to 0 when the MIDI note is finished playing. You can also disable the velocity information by choosing “Ignore Velocity” for when you want a static pulse when any midi note is played (like on a kick drum track for example).


OSCbuddy CC

The CC option takes input from the CC Insert (more information below), which can be added before any instruments on a MIDI track. It keeps track of CC automation within the clip playing on the track the insert is on, and follows the data produced by it. As there are 127 different CC options, you need to specify which CC it is going to follow (such as Pitch Bend, or CC 18) in the CC Insert Patch (more information below).


OSCbuddy Amp

The Amp option takes input from the AMP Insert (more information below), which can be added anywhere in a chain of audio in Ableton Live. It will take the amplitude coming into the device, and convert it to a data stream, sending it to the Master patch. You can add the AMP insert in many different ways, for example in an Audio Effect Rack after an EQ isolating the sub frequency range, which can then be muted, to take the signal from only the sub frequencies of a signal.


OSCbuddy Param

The PARAM option is built into the Master patch and does not require an insert. You are able to map this option to almost any parameter in Ableton Live, and it will track the behaviour of that parameter and send data accordingly. For example, you could map this to the Frequency of a Low Pass Filter on a Bassline track, and as that is tweaked real time, it will send the information out over OSC.


OSCbuddy Freq

The FREQ option is built into the Master patch and does not require an insert. It takes the entire audio fed into the Master patch on the Master Track, then allows you to click and drag to specify which frequency ranges you want to track. It then takes the sum of that range and creates the data stream. This option is geared more towards people who DJ with Ableton Live, or are playing pre-mixed files. For example, you could have three FREQ senders, one focused on the Low frequencies, one on the Mid and one on the High.


NOTE Insert

OSCbuddy Note Insert

The Note Insert can be placed before any Instrument or Instrument rack on a MIDI Track. It listens for notes that are played on the track, and sends the note on, note off and velocity of each track over to the Master patch for further processing. You need to specify which of the 4 senders on the Master patch the information will be sent to.

CC Insert

OSCbuddy CC Insert

The CC Insert can be placed before any Instrument or Instrument rack on a MIDI Track. It listens for an CC value change for the CC you specify in the “CC Number” box. Any change will be captured and sent to the Master Patch. You need to specify which of the 4 senders on the Master patch the information will be sent to.

AMP Insert

OSCbuddy Amp Insert

The Amp Insert can be placed anywhere where audio is flowing in Ableton Live, such as after an instrument, or after an Audio Effect chain. It will listen to the incoming amplitude (or volume), convert this to data stream, and send it to the Master Patch. There is a Speed Limiter which determines how quickly it gathers information, which is set to 50 milliseconds by default. If you find it’s not sending a smooth enough data stream, you can reduce this, however lower numbers may result in larger CPU usage. If you find that things are slow and lagging, increase the Speed Limit level. You need to specify which of the 4 senders on the Master patch the information will be sent to.

If you have any questions, comments, problems or feature requests, please visit this post here. I hope this tool is useful for you, have fun!

OSCbuddy is released under the Creative Commons Attribution-NonCommercial-ShareAlike License

Tom Cosm : website | facebook | twitter | youtube | soundcloud | bookings and enquiries