David:

My former optimism may have been misplaced.  

I just tried it on Xubuntu 11.10, and have seen evidence that the
problem exists there, too.  

I won't know for sure until I get everything downloaded & installed.  

- 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

_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev

Reply via email to