fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] Major degradation in sound quality & cpu usage going fro


From: Aere Greenway
Subject: Re: [fluid-dev] Major degradation in sound quality & cpu usage going from Ubuntu 11.04 to 11.10
Date: Sun, 23 Oct 2011 13:45:06 -0600

David:

I will attempt to test the older version on Ubuntu 11.10. 

I am assuming I can get the different versions somewhere (perhaps the FluidSynth web-site). 

When installing from the Ubuntu repositories, I haven't seen any way to choose levels of the software to be installed. 

You can download package files only (not install), but it doesn't tell you where the packages are that you downloaded.  I can probably find them, but I may miss dependencies I need. 

I will give it a try. 

Thanks,
Aere


On Sun, 2011-10-23 at 20:35 +0200, David Henningsson wrote:
On 2011-10-22 21:11, Aere Greenway wrote:
> FluidSynth Developers:
>
> In trying out FluidSynth on Ubuntu Linux 11.10 (Oneiric Ocelot), I
> encountered a serious degradation in sound generation (quality), and a
> much higher CPU usage than in the prior releases.
>
> The CPU-usage problem alone causes MIDI sequences that played fine on
> FluidSynth on a 1-gigahertz machine, to have many under-runs in JACK, on
> even a machine twice as fast.
>
> The sound generation problem doesn't appear as obviously, until you play
> sequences with many different tracks, and many notes playing together
> (which played well on Ubuntu 11.04, even on slower machines).
>
> What is happening, is that it sounds fine for the first few seconds,
> then from that point on, in many cases, new notes fail to play. For
> example, the oboe part may occasionally sound a note, but most of them
> are missing. Same thing for the flute part, and others.
>
> I noticed this immediately in trying out Ubuntu 11.10, because as a
> matter of course, I have found it to be a good idea to configure the
> polyphony parameter (Qsynth setup) to a value of 64, rather than the
> default of 256. I have been doing this to avoid JACK under-runs, playing
> the piano sound on FluidSynth with heavy (perhaps sloppy) sustain-pedal
> usage.
>
> When I set the polyphony value up to 256 (the default), the sequence
> that failed to play properly, sounded much better, but it was still bad.
> I had to set the polyphony parameter all the way up to 384 before it
> seemed to play the piece, but still sounded worse than on earlier
> releases. I suspect the reason for this, is that newer notes are being
> discarded instead of older notes (that faded, and are no longer sounding
> anyway).
>
> Of course, with the entire sound-generation 'table' full all the time
> (and with 6 times as many notes to be sounded by the processor), the CPU
> usage has shot up to levels where only my fastest machine can play it at
> all, where before, they played fine on a 1-gigahertz machine, and even
> on an 800 megahertz machine (with occasional under-runs).
>
> I experimented with this by setting the polyphony parameter down to 16
> (the minimum allowed), and then playing notes, going up the keyboard
> from left to right. The notes were each held down for about 2 seconds,
> then I went to the next note. I did not use the sustain pedal.
>
> Several (some) notes past 16 notes, it seemed that most notes (every
> other note?) would play for maybe 1/4 second, then stop playing, even
> though the note was still depressed.
>
> I experimented with the sustain pedal, and things seemed actually to
> work better when using it, though I can't definitively say how.
>
> My suspicion is (and it is only speculation) that complex code for
> dropping the oldest notes from the sound-generation 'table' has been
> removed, hoping to reduce overhead, and some other scheme of removing
> the 'old' notes from being played has been substituted. This new scheme
> ends up with new notes being discarded in favor of notes already in the
> sound generation 'table', even though those old notes have already faded
> to an inaudible level. It also ends up requiring a much larger
> sound-generation 'table', and every note 'sounded' uses processor time.
>
> In the old version (Ubuntu 11.04, and prior), it seemed to remove the
> oldest notes (from the sound-generation 'table') in favor of the new
> notes. So if I set the polyphony level lower (64, or 48), it would sound
> great, and avoid under-runs, even on a slower machine.
>
> Could someone please comment on this?
>
> I have been relying on Qsynth/Fluidsynth (which has been extraordinarily
> reliable) as the basis of a major music education initiative, which I am
> (was) about to unveil.
>
> Everything still works fine using the Soundblaster card emu10k1 hardware
> synthesizer. But that isn't going to help you if you have a laptop.
> Qsynth/Fluidsynth is the component that is now failing, and with it
> failing, I cannot go forward to future Linux releases.
>
> Another work-around would be to use an external synthesizer, but the
> midisport-firmware package is no longer available in Ubuntu 10.10, so
> you can't even hook up your external synthesizer without a Soundblaster
> card (which you can't use on a laptop or half-high machine).

Ubuntu 11.04 ships with FluidSynth 1.1.3 and Ubuntu 11.10 ships with 
FluidSynth 1.1.4, so there are indeed differences in the engine. I can't 
think of any that would cause a lot of difference in CPU usage, so 
chances are the problem are in lower layers. Are you using the same 
latency settings (which?) in both distributions? Would it be possible 
for you to test either FS 1.1.4 on Ubuntu 11.04 or FS 1.1.3 on Ubuntu 
11.10 to ensure that the problem is in FS and not anywhere else?

// David


-- 

Sincerely,
Aere

reply via email to

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