iiwusynth-devel
[Top][All Lists]
Advanced

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

[iiwusynth-devel] Comparing FluidSynth with EMU10K1


From: Josh Green
Subject: [iiwusynth-devel] Comparing FluidSynth with EMU10K1
Date: 10 Jan 2003 00:54:37 -0800

Well I finally realized that it would be fairly trivial to compare
FluidSynth and the EMU10K1 on my sound blaster live. I'm just running
Smurf and Swami side by side and connecting both to my external
keyboard. I'm surprised at how close FluidSynth and the EMU10k1 sound
(well I was expecting the worst :). There are definately some
differences (and a few bugs) but for the majority of instruments it
actually sounds okay when listening with each one routed to each side of
headphones :) Keep in mind that there could be bugs with the Linux
EMU10k1 driver also, so..

- The most critical problem I have found is concerning the current
restrictions on sample loops. I stressed before the difference between
minimal requirements (as per SF spec) of a synthesis engine and what
actually gets implemented (possibly exceeding requirements). Well the
current setting in FluidSynth of 32 min samples for loop causes many
instruments to not loop (in 8mbgmgs.sf2) and there is another problem I
just discovered, thats the minimum of 8 points on either side of the
loop which causes many sounds to play out of tune! Uggh.. I would just
go ahead and commit my changes but I think these minimums should be set
to the absolute min that FluidSynth can handle, which I don't know (say
1 or 2 samples on each side of loop, 4 point min loop?) I think the out
of tune problem was mentioned once before on this list. Maybe some
variables should be #defined (IIWU_MIN_LOOP, IIWU_MIN_LOOP_PAD) if they
are used elsewhere as well.

- The volume envelope is still a bit excessive. Something seems to be
wrong with the attenuation calculation.

- A click is often produced on note off (usually when set to minimum
volume release time). I'm not sure whether this is because the output is
suddenly cut or if there is a spike in the output signal (a look at the
output waveform would confirm this).

- Filter envelope sweep doesn't match EMU10k1. I'm not sure which is
wrong though (or even if it is wrong). It might be that the FilterQ is
more or less sensitive.

- Crackly static distortion (increases with number of keys being
played), the EMU10k1 will do this as well, but not as easy as FluidSynth
does.



Just my findings, not expecting them to get fixed right away :) I think
it would be good to come up with a nice synthesis test platform. Perhaps
route FluidSynth through JACK to an audio editor to be able to see the
waveform. This would probably really help to figure out where pops,
clicks and other things are coming from.

Still plodding along with Swami devel.. I think I have resigned myself
to the idea that it takes as long as it takes. I hope someday I have
something to show for it :) Cheers.
        Josh Green





reply via email to

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