fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] fluidsynth~


From: Peter Hanappe
Subject: Re: [fluid-dev] fluidsynth~
Date: Thu, 26 Feb 2004 11:01:32 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031107 Debian/1.5-3

Norbert Schnell wrote:
Hi Peter!
Hi others!

Hi Norbert,
Hi mailing list,

As you might have heard, finally I did a Max/MSP object fluidsynth~
based on your code.

So I heard!

The technique I used to integrate FluidSynth with Max/MSP is to grab
the files into a CodeWarrior project (simply requiring a
fluidsynth directory containing the FluidSynth sources next to the
directory of the CodeWarrior project) and add one file faking some
functions of the other files (essentially fluid_sys.c for the threads,
timers and logs). This has the advantage of avoiding stupid #ifdef
PP-instructions and messing up the code with Max/MSP API related stuff.

1. Would you have a better idea for handling the FluidSynth Max/MSP integration? 2. Shell we integrate fluidsynth~ somehow (and how?) into the FluidSynth sources?

I'd suggest to make a directory called 'bindings', or something similar,
in the fluidsynth root directory. The projects that 'bind' fluidsynth to
an application can go in there. For example, I have some Java
classes and JNI code to use the synth in Java that I would like to add
to CVS. So, if we take that option the codewarrior project could move to
the directory 'bindings/max_msp'.

About fluid_sys.c. It would be nice if you could reuse the existing
code, despite the #ifdef's (I don't like them neither, will find a
better solution). However, there is really not much you need from
fluid_sys.c. I don't think you need timers, threads, nor sockets
for the fluidsynth~ object. The log function is platform independent.
In fact, we could put that code in a new file. There are two functions
that you may need: fluid_curtime() and fluid_utime(). The synth only
uses them for profiling and to estimate the CPU load. You could
get away with returning 0 in both functions to get started.

So my suggestion would be to add a file 'config_maxmsp.h' in which you
put some of the defines you need and do keep the existing fluid_sys.c
with some minor tweaking.


Here is a web page of the fluidsynth~ I published some minutes ago on
our ATR IRCAM site:
   http://www.ircam.fr/equipes/temps-reel/maxmsp/fluidsynth.html

Fancy!


Cheers and see you soon!
Peter


   Norbert





reply via email to

[Prev in Thread] Current Thread [Next in Thread]