On Mon, 2005-12-05 at 21:08 +0100, Antoine Schmitt wrote: > Hello, > a (maybe straightforward) question on framerate and smoothing in > fluid. Suppose that I use fluid as a library in a client application > (like Director or Virtools) which has an internal framerate (usually > 24 or 50 fps). If the client app continuously changes some parameter > in fluid (like volume, pan or any controller for that matter), this > "continuous" will only happen as fast as the client's frame rate, > resulting in potentially audible steps. The question is : is there > some automatic smoothing functionnality in fluid that filters out > abrupt changes in controllers or other parameters. The idea behind > this question is to ensure that sound will be processed as smoothiny > on slow systems where the client's framerate may be much slower than > on the development machine. > If there is no such functionnality (which I suppose) : > - is this is a non-problem really because it will never be audible... > - if this is a problem, is there another solution than integrating > smoothing deep inside the fluid dps engine? Like having another > client thread, that is called as often as fluid's thread and that > does the smoothing for example... > > Thanks for any hints or food for thought,
Hello Antoine, I think FluidSynth processes controller changes per its internal buffer size, which I believe is usually 64 samples. So updating at only 24 or 50 fps I think would likely be very perceptible. Of course it all depends on how fast the controller is changing. If you are using FluidSynth as a library, you could provide this functionality yourself of course. You can render a buffer of audio at a time, of any length, using fluid_synth_write_s16 and fluid_synth_write_float. So you could create your own thread at that point, and interpolate controller changes. Your software would likely have a better idea of the best way to interpolate those values as well. This type of functionality could be nice in FluidSynth as well, but it probably wouldn't get added for a while. Best regards, Josh Green
signature.asc
Description: This is a digitally signed message part
_______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org http://lists.nongnu.org/mailman/listinfo/fluid-dev