|
From: | EarMaster - Hans Jakobsen |
Subject: | [fluid-dev] How to optimize Fluidsynth latency in Windows? |
Date: | Fri, 16 Apr 2010 15:30:53 +0200 |
Hi, I make the ear training program EarMaster
and would like to include a softsynth with low latency that works right out of
the box. Fluidsynth looks great for that! The critical part for me is latency and I
am currently trying to optimize it in Fluidsynth. For that I made a small test
program that plays a sound when I click with the mouse (this is the way it
would be used in EarMaster to play real-time sound). I then use Reaper to record the sound of
the mouseclick and the sound produced by Fluidsynth. With the waveform on the
screen, I can measure the total delay. The default value on Windows is
Audio.periods=8 and Audio.Period-Size=512, which gives an unacceptable high
measured latency (>100 ms). I tried different settings for the
parameters and found that the setting with lowest latency, that still produces
fluid sound, is Audio.periods=26 and Audio.Period-Size=64. This gives a
theoretical latency of 33.4 ms for the buffers and I measured the total latency
to about 80 ms. This is still too much. How can I reduce
the latency on Windows? (I did see the Wiki about Latency, but it
focuses only on Linux) Are there better combinations of periods
and Period-Size? - or other parameters I can adjust? I believe some of the latency is caused by the
use of Directsound, but what are the alternatives? I see that ASIO support is not yet
implemented, but how much improvement can I expect from ASIO compared to the 80
ms with DirectSound? Best regards, Hans Jakobsen |
[Prev in Thread] | Current Thread | [Next in Thread] |