[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [iiwusynth-devel] FluidSynth roadmap
From: |
Antoine Schmitt |
Subject: |
Re: [iiwusynth-devel] FluidSynth roadmap |
Date: |
Thu, 21 Nov 2002 12:39:07 +0100 |
Hello all,
Answering a few emails, including one that I realized Markus sent
only to me. Sorry for answering late, my schedule is hecktic these
days.
:::::::::6/11/02::::22:46 +0200::::address@hidden:::::::::
-Chorus: Have you checked out a version from CVS recently? The
chorus was completely rewritten some months ago. The original sox
chorus did make some strange noises.
I'm not fond o fthe chorus sound, but I must say that I have little
experience with chorus sound in general.
One thing is that the API accepts a 'number' of lines up to 99, which
seems quite a lot, and the sound is really distorted after you pass
10 lines...
- Clicking noises: I'd guess, that hardware cards limit the smallest
possible attack time. The SF 2.01 standard says explicitly, that the
smallest attack time is instantaneous. I have that problem myself
occasionally with sound fonts from the web, it's quite annoying.
Could be fixed easy (some compatibility mode switch for the synth).
It seems that these clicking sounds only happen on a certain
hardware/system/software configuration. Forget about it.
The only thing is that the default gain of the FluidSynth is 0.1,
which makes a real difference with the volume of a soundfont-enabled
soundcard. Maybe it should be changed to something like 0.5.
- Reverb parameter query: exists, forgot to move it to the API :-(
Chorus should be fine, though.
Right.
- Stereo: The standard allows to explicitly lock the phases of two
voices, iiwusynth keeps them separate. If L/R voice are identical,
this does not matter. There might be a chance, that a random time
delay occurs between L/R voice, but I have never noticed anything by
ear (stereo piano with headphones).
Does that mean that stereo is implemented as two instrument zones in
FluidSynth ?
- Filter? Any problems?
I haven't mastered yet all the API of soundfont, and following my
discussions with Peter, I was under the impression that the filter
feature of the Fuidsynth was not accessible through the API. Maybe I
misunderstood. Could you point me to the API to control it ?
- Unloading sound fonts: Maybe stopping the voices using it before
freeing the sample mem helps, that would be easy to fix.
That would be really nice. I dont know where to look for to do this
(how to get the voices using a certain soundfont).
:::::::::20/11/02::::20:42 +0000::::Josh Green:::::::::
So thank you guys!
Peter Hanappe
Markus Nentwig
2 great persons helping to bring open music composition to the world at
large :) Three cheers.. Hip hip hooray!
I agree ! hooray !
:::::::::6/11/02::::9:46 -0800::::Josh Green:::::::::
On Wed, 2002-11-06 at 07:31, Antoine Schmitt wrote:
> Some other topics I'd like to submit to your sagacity:
- have FluidSynth automatically take advantage of hardware devices
if available
How? Do you mean like a hardware SoundFont device like SB Live! etc?
Yes.
Using one of these means you don't need FluidSynth. Of course there are
many draw backs to hardware SoundFont devices (not well supported in
Linux, not very portable between platforms, usually a pain to route
synthesized audio to other applications).
Right, but on an end-user point of view, in certain contexts that are
not rare, it would be interesting if a client program, written on top
of FluidSynth, could take advantage of the CPU acceleration of an
SBLive automatically if it is present and accessible.
>
The only thing that is quite complex I think, and which is not caused
by iiwu but by the opensource process, is that it is very difficult
to rely on a stable version, as it changes all the time with bug
fixes and new features. So for the production of a client of iiwu,
one has to have the full development environment available, CVS, as
well as all the other free software libraries (portaudio, MidiShare,
now linsndfile for the Xtra...) + update regularely and recompile
everything. I dont know how things are done usually with OpenSource
> software (I come more from the industry - NeXT, etc..), and I know
that all this is done gracefully by all of us, but I think that it
would be good to have stable releases from time to time, fully built
and available in binary format, with documentation.
What is your development platform? Are you using Linux or a win32
environment?
I'm on Macintosh + Windows. Our project is targetted toward standard
end-users, and our integration platform is Director. This explains
the choice.
And this explains the difficulties of using CVS clients...
`
CVS changes ::
For your information, I will be working this week-end with Peter
Hanappe to integrate my mods to the CVS tree, related to the
integration of FluidSynth to the Xtra:
src/iiwusynth.h, src/iiwu_synth.c : ADDED synth_get_cc and synth_get_pitch_bend
src/iiwu_defsfont.c : FIXED unloadsoundfont memory leak
src/ iiwu_event.c : FIXED bug in heap allocation, that caused a crash
during sequencer free.
winbuild/iiwusynth.dsw : ADDED a LIB and a DLL project
macbuild/iiwusynth.mcp : ADDED a shared lib and a lib project
src/iiwu_event.h, src/iiwu_seq.h, src/iiwu_synth.h,
macbuild/iiwusynth.mcp : EXPORTS symbols using the __declspec(export)
pragma on Macintosh (the iiwusynth.exp file is not used any more).
src/iiwu_sys.h : exported iiwu_curtime on Macintosh (for sequencer).
src/iiwu_seq.c : FIXED bug when changing the sequencer timeScale.
src/iiwu_ramsfont.h, iiwu_ramsfont.c : ADDED these two files for
dynamic creation of soundfont in RAM, using API.
bindings/director : full implementation of the Director Xtra.
Everything has changed.
Cheers !
++ as