- a number of dict abstractions that make it easy to use dictionaries to manage the state of a patch (get items, set item, create subdicts, dict item based gate, etc)
- use LEDs on KMI QuNeo pads as audio meters
- a standard audio output bpatcher for patches
- Apple multitouch trackpad input conditioning – tries to map finger data intelligently to one parameter per finger
- td.rota shader with offset values absolute rather than relative to rotation
- an example multitrack recorder bpatcher for all channels of a MOTU Ultralite
- ~equal loudness pan and balance objects
- various path operations:
- get parent folder of patch
- check if a file exists anywhere in max’s searchpath
- return the path of the current patch so saved files dont go willy-nilly to the last place used in Max’s searchpath
- remove file extensions
- operate on value objects
- quick data recorder/looper bpatcher
- bpatchers for managing preset slots and JSON files for pattrstorage
A Max object written in java to communicate over a single persistent TCP/IP socket with a TCP/IP server. Opens a socket, then sends and receives info without closing it. Closes the socket only when you tell it to, or when the server disconnects (ie from inactivity). Useful for connecting to hardware network devices like EZ Web Lynx and other microcontrollers/DSPs that don’t easily support something nicer like OSC.
Tested on MaxOS X 10.5 and Windows XP, Max/MSP 5.1.x
Put this folder in your java classes folder
On Mac that would be /Applications/Max5/Cycling ‘74/java/classes
On Windows that would probably be C:\Program Files\Cycling ‘74\MaxMSP\Cycling ‘74\java\classes (I think)
In Max/MSP create a new object with the text “mxj tcpClient” (careful - this is case sensitive)
Check out the help patch to see how it works.
developed by Arvid Tomayko-Peters for Your Heaven, LLC™
No warranty, no gurantees, etc. I don’t even really know java! So if you can improve this code, please do so and let me know.
Thanks to David Reilly for his TimedSocket class on JavaWorld.