iiwusynth-devel
[Top][All Lists]
Advanced

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

Re: [iiwusynth-devel] FluidSynth roadmap


From: Josh Green
Subject: Re: [iiwusynth-devel] FluidSynth roadmap
Date: 26 Nov 2002 20:06:21 -0800

On Tue, 2002-11-26 at 08:22, Peter Hanappe wrote:
> > 
> > - I think that the sfloader API is really heavy, especially knowing that 
> > only one sfloader exists : the default one. Is it really necessary ?
> 
> I agree that it's heavy. C simply doesn't handle subclassing very
> well ;)
> 
> I've been thinking about something that maybe controversial: start
> a parallel development branch to rewrite Fluid in C++. Initially, the
> synth was going to be very simple and it's "class" structure as good
> as flat. Now we have drivers, plugins, soundfont loaders to handle.
> If we want to stream large samples, it might be nice to have a
> Sample class as well. Just some thoughts. Hardcore-C-coders, don't
> shoot me, yet.
> 

I think the goal of Swami covers a lot of what you are talking about.
Not sure if anyone has been keeping up with the design of the
development branch of Swami (well I haven't actually posted the code yet
:)

Its based on GObject which is a Object Oriented library for C which I
believe has C++ bindings through gtkmm (not sure though). Swami
basically consists of this:

libInstPatch - GObject multi-threaded object oriented patch library.
Currently only has support for SoundFont files, but I want to add DLS2
soon. Many nice things here like signals and properties, etc.

libSwami - Everything else that isn't directly connected to the GUI.
This includes plugins, wavetable driver class, MIDI driver class, sample
library interface class, a patch conversion registry, action state
history with advanced undo/redo capabilities (not completely functional
yet), etc.

SwamiUI - Currently built as a program linked with the other 2 shared
libraries, though it might become a library itself in the future. The
development branch uses GTK 2.0 although I may back port it to GTK 1.2.

Anyways. The API is already in place for manipulating SoundFont files
and managing plugins etc. There is still a lot of work that needs to be
done of course. This has been quite a lot of work, I'd hate to see
someone try to re-produce it :)

The only things I can think of that would make it not so desirable to
use is that glib/gobject does not run on every OS. Well I can think of
only one that it does not (MacOS classic). I have heard mention of a
project to port Film Gimp to MacOS classic, so perhaps this will be
remedied in the near future?

Not sure if this is something anyone here is interested in, but I do
feel that the goals of Swami fit closely with this, and much has already
been accomplished. I'm actually kind of surprised that no one has really
expressed interest in this project from a development stand point. I've
kind of assumed that its just not really known of, as I haven't heard
anything else.

<cut>

> 
> Cheers,
> P
> 

Cheers.
        Josh Green





reply via email to

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