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   |   ( 2.9 / 608 )

Closed 
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 / 622 )

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

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 / 544 )

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;
@end

@implementation Fraction
- (void) setNumerator: (int) d
{
num = d;
}
- (void) setDenominator: (int) d
{
den = d;
}
- (int) numerator
{
return num;
}
- (int) denominator
{
return den;
}
- (void) print
{
post("%i/%i",num,den);
}
@end

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;
if(frac)
{
[frac release];
}
}
int main(void)
{
setup(&objc_class,
(method)objc_new,
(method)objc_free,
(short)sizeof(objc_t), 0L,
A_GIMME, 0);
}

  |  permalink   |  related link   |   ( 3 / 581 )

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:
oscbonjour.zip

and the old one
oscbonjour_ppc_win.zip

for the windows version you'll need to install Bonjour for windows:
http://www.apple.com/fr/macosx/features/bonjour/

SourceCode


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
  |  permalink   |   ( 3 / 674 )


Next