|From:||S. Christian Collins|
|Subject:||Re: [fluid-dev] problems with fluidsynth 1.1.6 on a raspberry pi|
|Date:||Tue, 20 Nov 2012 11:29:33 -0600|
|User-agent:||Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121028 Thunderbird/16.0.2|
On 11/20/2012 01:58 AM, Jan Newmarch wrote:
A lot of CPU is being consumed by the 4th order interpolation. Try changing the interpolation to see if that reduces the CPU usage (it should). To change to linear interpolation, you would use this command in fluidsynth: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 ...
Here are the possible interpolation values, to my knowledge:
0 - No interpolation: lowest CPU usage, but samples will contain high-frequency aliasing (a "grainy" sound) when pitch-shifted.
1 - Linear interpolation: low CPU usage, but some aliasing is still audible, especially with low-bitrate samples
2 - 4th order (cubic) interpolation: higher CPU usage, but no aliasing is present when pitch-shifting samples. This gives a very professional sound, and is the default interpolation method used by FluidSynth.
3 - 7th order interpolation: highest CPU usage and best possible sound quality.
|[Prev in Thread]||Current Thread||[Next in Thread]|