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 / 5949 )
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.
Wednesday, January 24, 2007 11:59
I've disabled comments until there's a better anti-stam for sphplog.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
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);
}
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
Update
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.
http://sourceforge.net/projects/osctools/files/
Next