fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] About documentation and code


From: Josh Green
Subject: Re: [fluid-dev] About documentation and code
Date: Wed, 07 Jan 2009 12:21:55 -0800

Hello Bernat,

On Wed, 2009-01-07 at 18:00 +0100, Bernat Arlandis i Mañó wrote:

<cut>

> Could we start this kind of manual in the wiki? Some of you will know a
> lot better about fluidsynth so you can join me or just review what I do.
> 

The Wiki is perfect for that kind of undertaking.  Improving the inline
documentation is a good one too.

> Besides, some things to note about the code so far:
> - It has a disabled and (apparently) non-working implementation for
> LADSPA output filters that could be interesting for some uses, specially
> when embedded in other apps. Maybe even channel chorus and reverb
> effects could be fully implemented as external LADSPA plugins as an
> option, although feasibility and performance should be checked.

LADSPA was indeed working at one point, but I believe currently has some
stability issues, which I didn't get around to looking into.  It would
be nice to get it up and running again and properly document the syntax
for adding plugin effects.

> - It has a number of functions that seem obsolete, probably leftovers
> from old implementations. Mainly duplicated functions that were probably
> used to check changes, but also pieces of code of (old?) missing features.

Originally the author (Peter Hanappe) did not want FluidSynth to have
any external dependencies.  In particular the SoundFont loading code was
borrowed from my previous application Smurf SoundFont Editor and also
Swami.  Rather than depending on the glib library, he opted to include
some of this code into the application directly.  I think glib is a
fairly minor dependency though these days and it runs on just about
every currently supported FluidSynth platform.  I think it would clean
up a lot of the code to use glib and would provide some of the
portability features that are currently kludged into FluidSynth.

> - There's a feature that allows to output reverb and chorus in separate
> lines to Jack. I don't think this is used very much, it doesn't seem to
> work from the QSynth version I have. Some code could be disabled when
> this feature is off to save some cycles. In general, it seems like some
> barely used or even extinct features might have some code executing for
> nothing.

That is new to me ;)

> - In general the code seems in very good shape for collaborative work,
> except that some files have tabs and spaces mixed thus breaking the
> indentation. Using just spaces and good indenting is considered good
> practice for better collaboration. Submitters should configure their
> editors to put spaces instead of tabs and we could fix existing tabs in
> one go or along the away.
> 

Indeed, using a standard code indentation/syntax would be nice.  I
personally like 2 space indentation, with braces always on a new line
and some other specifics (described by the indent command: indent -bli0
-sc -ncs).  Using spaces instead of tabs would be fine too.

FluidSynth is a bit overdue for a release.  Provided everything seems to
be working as it should (feedback anyone?), a release could be made and
then indent could be run on all the code and checked in.  That would
give us a new start as far as formatting is concerned.

> After documenting features and fixing bugs, I think the next best thing
> coud be cleanning the code up a bit from all unused code. This would
> pave the way for further development.
> 
> I can try to put my hands on some of these, but I'd like to hear any
> comments first.
> 
> Happy new year!
> 

Sounds good to me!  You seem to be a good candidate for a FluidSynth
subversion account.  If you are interested, email me personally your
desired login information.

Happy new year to you as well.
        Josh Green






reply via email to

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