Software

Report bugs to me by email.

micro-OSC

micro-OSC is a sensor/actuation interface firmware for the PIC18F USB-FS series embedded microprocessor that runs on low-cost general purpose prototype boards.  micro-OSC implements the Open Sound Control protocol directly in the hardware, including support for clock synchronization, state-machine-free operation, scheduling and high-speed floating point data streams. The project is supported by CNMAT and driven by needs in research and design of new electronic musical instruments.

Objects for Max/MSP/Jitter

I have written several objects for the Max/MSP/Jitter graphical dataflow environment, they are available here:
  • accumulate~: signal integration and leaky integration with signal control model
  • firbank~: an efficient FIR filterbank implemented with FFT overlap-save
  • OSC-timetag: support for high-resolution NTP timestamps
  • OSC-schedule: millisecond-accuracy scheduling for timestamped OSC bundles

PyJack

Jack client for Python. This project project is now on sourceforge.net.

Open Sound Control for PHP

A small PHP class which can format and send OSC messages. It has no parsing capability, so it can only be used for uni-directional communication.

18K 2007 OSC.php

Changelog:

Version 0.2: March 22, 2007. Fixes a bug in timetag encoding for bundles.
Version 0.1: 2004 Initial release.

Open Sound Control for MATLAB

A very fast OSC implementation for Matlab with good type support that maps naturally into the native Matlab type system. Formatting and parsing is done in C using liblo. Precompiled binaries are provided for Windows (so you don't have to suffer what I did) and Mac-Intel (YMMV). The windows binaries are known to work with Matlab 6.5 or later.

Jan 23 2009 osc-mexsrc.zip
Jan 23 2009 osc-mexmaci.zip
Jan 18 2006 osc-mexwin.zip

Old version for Mac-PPC (No longer supported)
115K Jan 18 2006 osc-mexmac.zip

Version 0.2: Jan 23, 2009. Fixed a bug causing crash on long string arguments.
Version 0.1: 2006 Initial release.

Serverutils

A small collection of utilities for server management (typically Debian or a related distro (Ubuntu)).
  • web-stresstest.py: multithreaded "reload" performance benchmark for a webserver
  • dump-rotate.sh: keep rotating backups on multiple schedules (for mysql dumps, svn exports, file system snapshots)
  • ssh-blacklist.py: automatically monitor SSH bruteforce-attacks and temporarily block offenders
  • ssh-key-propagate.sh: automate the task of propagating a public key for passwordless SSH authentication
serverutils.zip