|
From: | David Henningsson |
Subject: | Re: [fluid-dev] Major degradation in sound quality & cpu usage going from Ubuntu 11.04 to 11.10 |
Date: | Fri, 28 Oct 2011 07:12:21 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.23) Gecko/20110922 Thunderbird/3.1.15 |
On 2011-10-28 03:09, Aere Greenway wrote:
David: I downloaded the source for the older level of FluidSynth, but didn't know how to build it. But I remembered the file structure in Unix (and Linux), and looked for the executables in /usr/bin. I use qsynth (which uses FluidSynth). On finding it in the Ubuntu 11.04 system, and in the 11.10 system, I substituted the different executables in each system, and what I found was surprising, from the symptoms I had observed. First, the old version (from 11.04) of qsynth on Ubuntu 11.10 also failed. The new version (from 11.10) on 11.04 worked fine. I therefore conclude that the cause is in Ubuntu 11.10.
Ok, so this is completely wrong. First, FluidSynth's main functionality is in a library (.so) file, so you have not changed FluidSynth by just moving the executables. Second, while ABI breakage is quite rare these days, subtle library differences can still make moving files between distro versions fail. Recompiling the program on the distribution you want to run it on (or in pbuilder, but that's a separate story) is both easier and gives correct results.
Here is a mini-howto for how to do that on Ubuntu. Let's assume you have a directory ~/fluidsynth-code, you are in Ubuntu 11.10 and want to compile FluidSynth 1.1.3. First download the source, e g from launchpad by going to https://launchpad.net/ubuntu/+source/fluidsynth, click the arrow for the selected version, then click to save the files ending with ".dsc", ".debian.tar.gz" and ".orig.tar.bz2".
Then execute the following commands: cd ~/fluidsynth-code dpkg-source -x fluidsynth_1.1.3-3.dsc cd fluidsynth-1.1.3 dpkg-buildpackage -bThis will create files named "fluidsynth_1.1.3-3_i386.deb" and "libfluidsynth1_1.1.3-3_i386.deb" in the ~/fluidsynth-code directory. (Or amd64 instead of i386, if that's what your machine is running.) There will also be a libfluidsynth-dev_1.1.3-3_i386.deb", but you don't need that right now. Now run
cd .. sudo dpkg -i fluidsynth_1.1.3-3_i386.deb libfluidsynth1_1.1.3-3_i386.deb...to install you new packages. After that, just restart qsynth or whatever program is using fluidsynth, and test.
To return to the distribution supplied version again run "sudo apt-get install fluidsynth libfluidsynth1"
Perhaps the path-lengths with interrupts locked out are too long. Perhaps something is causing problems by other means. What I notice on 11.10 (also with the old version of qsynth), is that everything seems fine until I try playing one of my sequences with many parts, and many simultaneous notes. Within about 30 seconds, things 'go bad', and stay bad. After that point, even simple sequences play poorly. Even playing notes on the keyboard is bad.
This sounds similar to a bug fixed a while ago, here: http://sourceforge.net/apps/trac/fluidsynth/changeset/435/trunk/fluidsynth/src/synth
// David
[Prev in Thread] | Current Thread | [Next in Thread] |