fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] audio processing stops on ubuntu karmic


From: josh
Subject: Re: [fluid-dev] audio processing stops on ubuntu karmic
Date: Mon, 02 Nov 2009 09:00:26 -0800
User-agent: Internet Messaging Program (IMP) H3 (4.1.6)

Hello,

Quoting Joshua Higgins <address@hidden>:
I'm using fluidsynth 1.0.9 (packaged with karmic) on an old lifebook
b-series laptop. I have a very large Studiologic SL-880 midi controller, so
i'm intergrating this laptop into the body of the keyboard, using fluidsynth
for sound.
The PC is low spec: 500mhz with 192mb ram. I've bootstrapped Ubuntu Karmic
on a 4gb CF card which fluidsynth is running off. Its using the realtime
kernel, with jackd running with the --realtime parameter.

For normal playing, the performance is excellent. Jack seems to be stable,
running with 512 frames and 2 periods yeilding a latency of 10.7ms.

However, if I press down lots of keys simulatenously, i.e. more than 3
octaves at once, the audio stops straight away with the error message on the
console:


subgraph starting at fluidsynth timed out (subgraph_wait_fd=9, status = 0,
state = Running, pollret = 0 revents = 0x0)
bad status (1) for client fluidsynth handing event (type = 8)


The strange thing is that both the jack server and fluidsynth are still
running, just audio processing has stopped.

Can anyone shed any light on the situation? Is this computer just too slow?

Thanks.

My guess is that FluidSynth may be consuming all CPU and Jack is therefore timing out waiting for it to finish an audio block and subsequently disconnecting from FluidSynth. You probably want to set synth.polyphony to a value that that system can handle. This is probably going to be something rather low for that system, like 32 (3 octaves would be 36 keys). I'd start small, play a bunch of keys, see where the CPU usage is at, then increase it, until you find the point at which it breaks. You may also want to increase the Jack timeout value ("jackd -t 2000" for example would set it to 2 seconds). Turning off Reverb and/or Chorus might save you a little CPU usage as well, if you can do without one or the other.

Note that once the max polyphony value is reached, voice stealing will occur, where "less audible" voices will be turned off to make room for new ones. This logic currently needs some improvement in FluidSynth, since sometimes voices are turned off which aren't ideal.

--
joshua higgins
------


Hope that helps!

Josh Green





reply via email to

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