Inclusive Improv


This API can be used while programming for the speakers within the Max/MSP environment. It offers up 36 audio receive objects connected to the appropriate dsp outputs. In addition to this core functionality it also offers three levels of volume control; channel, user and overall.


API code and examples available here.


The main help file can be loaded directly or as an abstraction and offers all interface required to setup audio usage. It is designed to be setup locally but may be controlled over a network. It seeks a single unique string identifier to provide control over the dsp created.

The patch creates dsp audio outputs named 1’string’ to 36’string’. So for unique string ‘dave’ and channel 1.

receive~ 1dave -> dac~ 1 

Therefore user code within Max/MSP needs to end with audio sent to correctly named send~.

send~ 1dave

Network Implementation

wofsdacserver~ offers three network controllable volume controls.

Master Volume (affects all active DSP)

/app/wofs/speakercontrol/master 0.9

User Gain (affects all active dsp within user name)

/app/wofs/speakercontrol/usergain/dave 0.9

Chanel Gain (affects individual user channel gain) for user dave channel 2

/app/wofs/speakercontrol/userchancon 2dave 0.9

Correctly formatted messages can be sent across mxj net.maxhole to control amplitude within these various groups.

The chosen user name (dave) is sent across the network when it is selected within namespace.

/app/wofs/speakercontrol/username dave

The current individual user channel amplitude is also exposed across the network. eg. for dave channel 11

/app/wofs/speakercontrol/levelmon/user/dave/11 0.8

This can be disabled if required to reduce network traffic.



Required dependencies are included within the download. These are,