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 https://svn.sourceforge.net/svnroot/osctools/trunk/oscbonjour oscbonjour

svn co https://svn.sourceforge.net/svnroot/osctools/trunk/zeroconf 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 )

NIME06 day four 
Saturday, June 10, 2006 00:30 - NIME06

  |  permalink   |   ( 3 / 5184 )

Open Sound Control meeting @ NIME06 
Friday, June 9, 2006 17:50 - OpenSoundControl

We had a very interresting meeting with about 20 OSC developpers on thurday June 8th 2006 about the future of OSC standardization.

the meeting was lead by Matt Wright(CNMAT) with participation from David Wessel(CNMAT), Ali Momeni(CNMAT?), Emmanuel Flety(IRCAM), Seb Beaulieu (Plogue), me(IRCAM) the JazzMutant's team and many others whose names I don't remember.

Matt has put online an overview of the hot topics of the meeting:

the highlights are on the usage of ZeroConf/Bonjour/Rendez-Vous for service discovery and registration,
OSC namespace discovery

  |  permalink   |  related link   |   ( 3 / 4985 )

NIME06 day two 
Wednesday, June 7, 2006 11:36 - NIME06

  |  permalink   |   ( 3 / 4922 )