Field (not Fluid) 
Monday, March 3, 2008 11:30 - Dance
Marc Downie finally released its Digital Art framework called Field written in Jython and released under the GPL3 license.
  |  permalink   |  related link   |   ( 3 / 5861 )

Monday, January 28, 2008 11:48 - News
I'm no longer working at Ircam. So I will no longer update this page in the future.

However I'll keep this page online for backup and I can still be contacted from there or from my independent smartelectronix webpage.
  |  permalink   |   ( 3 / 5728 )

Comments disabled 
Wednesday, January 24, 2007 11:59
I've disabled comments until there's a better anti-stam for sphplog.
  |  permalink   |   ( 3 / 5664 )

Oscbonjour update 
Friday, November 10, 2006 19:37 - OpenSoundControl
Thanks to Charles Bascou from GMEM there's an update to the oscbonjour maxmsp externals for UniversalBinary.

see the old article for the download location

  |  permalink   |  related link   |   ( 3 / 5726 )

MaxMSP externals with ObjectiveC 
Thursday, November 9, 2006 11:05 - Code
yes, it's possible because ObjectiveC is a strict superset of C. You just need to use a *.m extension so that Xcode compiles it as ObjectiveC and not just C.

I already used C++ to write maxmsp externals so I knew it should be possible with another C based language. But I needed a proof of concept. here it is:

#include "ext.h"
#import <Foundation/NSObject.h>

@interface Fraction : NSObject
int num;
int den;
- (void) setNumerator: (int) d;
- (void) setDenominator: (int) d;
- (int) numerator;
- (int) denominator;
- (void) print;

@implementation Fraction
- (void) setNumerator: (int) d
num = d;
- (void) setDenominator: (int) d
den = d;
- (int) numerator
return num;
- (int) denominator
return den;
- (void) print

typedef struct
t_object o;
Fraction *frac; // to show how we can store an ObjectiveC instance inside a C struct.
} objc_t;

static t_messlist *objc_class = NULL;

static void *objc_new(Symbol *s, short ac, Atom *at)
objc_t *o = (objc_t *)newobject(objc_class);
Fraction *frac = [[Fraction alloc] init];
[frac setNumerator: 1];
[frac setDenominator: 4];
[frac print];
o->frac = frac;
return o;
static void objc_free(objc_t *o)
Fraction *frac = o->frac;
[frac release];
int main(void)
(short)sizeof(objc_t), 0L,
A_GIMME, 0);

  |  permalink   |  related link   |   ( 3 / 5956 )

oscbonjour for maxmsp draft 
Friday, June 16, 2006 17:36 - OpenSoundControl

beware this is just a draft

here is a max/msp external for OSX (UniversalBinary) and windows doing Bonjour/ZeroConf service discovery and announcement:

basically there are only 3 messages:
browse: browse for available services of type _osc._udp
resolve name: get hostname and port number from service name
register name port: register and a service of type _osc._udp with specificied name and UDP port number

here is the download link:

and the old one

for the windows version you'll need to install Bonjour for windows:


the sourcecode is available on sourceforge under a BSD license, you'll need 2 modules: oscbonjour and zeroconf, here are the commands you need to run:

svn co oscbonjour

svn co zeroconf


osc-bonjour for Max/MSP is no longer maintained, please use the more general zeroconf.browse, zeroconf.resolve and zeroconf.register externals instead.
They are much simpler and powerful and let you work with any kind of zeronf services, not just _osc._udp.
  |  permalink   |   ( 3 / 3234 )