[Top][All Lists]

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

Re: [fluid-dev] problems with fluidsynth 1.1.6 on a raspberry pi

From: Louis B.
Subject: Re: [fluid-dev] problems with fluidsynth 1.1.6 on a raspberry pi
Date: Tue, 20 Nov 2012 23:47:57 +0000

Try adding the flag -r22050 as this halves the CPU through put. See: "fluidsynth on NetBooks and low performance computers" on this page: http://sourceforge.net/apps/trac/fluidsynth/wiki/ExampleCommandLines

On Nov 20, 2012 9:57 PM, "David Henningsson" <address@hidden> wrote:
On 11/20/2012 08:58 AM, Jan Newmarch wrote:

I recompiled 1.1.6 with polyphony set to 64. There doesn't seem to be a
command line option to reset parameters like this, but it shouldn't be
too hard to add one. Yes I know, use fluid_settings_setXXX in the code...

The option is:
"fluidsynth -o synth.polyphony=64"
see "fluidsynth -o help" for more settings.

Unfortunately it does not seem like the interpolation method is settable in the same way, which seems strange to me. You have to do it inside the shell.

Turning off reverb and chorus, as suggested by others, is done by "-o synth.reverb.active=False" and "-o synth.chorus.active=False", which might also speed up fluid_rvoice_buffers_mix (no need to render into reverb and chorus buffers).

Anyway... no better. Still hits CPU above 99% (!) and distorts

(The pidstat command I used was
        pidtat -C fluidsynth - u -r 5
for 5 second periods.)

David gives perf figures of

         30% - fluid_rvoice_dsp_interpolate_4th_order
         27% - fluid_rvoice_buffers_mix
         13% - fluid_iir_filter_apply
           9% - fluid_revmodel_processmix

I ran perf (from linux-tools Debian pkg) on the RPi for nightsin.kar using two soundfonts and got

     32.07%   fluid_rvoice_buffers_mix
     26.89%   fluid_rvoice_dsp_interpolate_4th_order
     12.99%   fluid_iir_filter_apply
     11.00%   fluid_revmodel_processmi

for the FluidR3_Gm  and

     29.49%   fluid_rvoice_buffers_mix
     23.71%   fluid_rvoice_dsp_interpolate_4th_order
     14.89%   fluid_revmodel_processmix
     12.53%   fluid_iir_filter_apply

for the GeneralUser soundfont (which sounds a bit better).
No significant difference.

Thanks, seems like the statistics are about the same; with fluid_rvoice_buffers_mix being on the top.

Are you running this with floats or doubles, (-Denable-floats=on when compiling for single-precision floats) and is there a significance in performance?


On Sun, 2012-11-18 at 08:31 -0700, Aere Greenway wrote:
Jan & David:

In my opinion, limiting the polyphony (I presume that is what you mean
by "limiting the voices") does not adversely affect the sound.

What is using up the CPU, is voices still being 'sounded' that have
long before faded to where they are inaudible.  sysstat

If Fluidsynth works similarly to the EMU10K1/2 (Soundblaster & Audigy)
chip, it should 'take-out' the oldest voices first, though I don't
know if that is actually the case.

This is controlled by the synth.overflow.* parameters which I implemented a while ago to give you others some room for experimenting with which settings work best. I don't remember if I got any feedback for changing the default parameters.

// David

fluid-dev mailing list

reply via email to

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