iiwusynth-devel
[Top][All Lists]
Advanced

[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





reply via email to

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