fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] [Rosegarden-devel] Problems With Rosegarden Using Qsynth


From: Aere Greenway
Subject: Re: [fluid-dev] [Rosegarden-devel] Problems With Rosegarden Using Qsynth or Fluidsynth When Using PulseAudio Instead Of JACK
Date: Thu, 31 Jan 2013 10:15:53 -0700
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130106 Thunderbird/17.0.2

On 01/31/2013 01:38 AM, Holger Marzen wrote:
On Wed, 30 Jan 2013, Aere Greenway wrote:

On 01/30/2013 12:33 AM, Holger Marzen wrote:
On Tue, 29 Jan 2013, Aere Greenway wrote:

Rosegarden and Fluidsynth Developers:

In working with Fluidsynth problems, the Fluidsynth developers have
wondered why I insist on using JACK with Qsynth, rather than just
configuring it to use PulseAudio.  Yesterday I finally found out why I
do this, but what the cause of the problem is, possibly both sets of
developers (together) might be able to postulate.

Here are the steps of a test you can do to illustrate the problem:

1. Configure Qsynth to use "pulseaudio" instead of "jack".  Even doing
this can cause hangs if you have more than one engine configured.  Best
approach is to not restart the engine when it prompts you, instead,
terminating Qsynth, and bring it back up after completing the
configuration changes.
Using Pulse and JACK works here by disabling Pulseaudio clients to start
it (autospawn = no in /etc/pulse/client.conf) and starting Pulseaudio in
QjackCtl. See http://www.marzen.de/Holger/pulseaudio_and_jack/

Fluidsynth is available as a DSSI module to be used in Rosegarden. No
problems at all AND lower latencies.

Holger:

Thank you very much for the information.  It could help me a lot.  I will save
it for reference.

I have tested the Fluidsynth DSSI before.  It seemed to work fine, but it
seemed to me there was a lot of per-track special setup I had to do in order
to use it.  Qsynth seems to work better for me, but perhaps it's because I
have vanquished one set of demons, and have not worked long enough to defeat
the other set.
I use Fluidsynth-DSSI because *everything* important is stored when
Rosegarden writes its .rg-file. Different soundfonts, different
instruments... no problem. I use separate instances of Fluidsynth-DSSI
for bass drum, snare, left tom and so on.

Specially for drum and bass sounds you won't notice any latency or
jitter. Rosegarden and DSSI-plugins (Fluidsynth-DSSI, Hexter, Whysynth)
is a very good combination when you need exact timings.

If you have more than 15 instruments/instances then you have to
recompile Fluidsynth-DSSI and change
#define FSD_CHANNEL_COUNT  25
in fluidsynth-dssi.h

24 because Rosegarden allows 24 synth plugin instruments and "plus 1"
because of a strange initialization race condition. If FSD_CHANNEL_COUNT
is set to N then the Nth instrument isn't restored when loading the
.rg-file.

Best regards
Holger

Holger:

Thank you once again for some very useful information.

The "different soundfonts" aspect of it especially caught my attention.

I have been dealing with that by having two Qsynth 'engines', which in effect, supplies two separate synhesizers, each with 16 channels, and (in my case) using different soundfonts. But that only gives you two soundfonts. I have used three Qsynth 'engines' successfully.

I think I will re-visit using the Fluidsynth-DSSI, if only as another tool in creating music.

It would be more useful to me if there were a way of firing up a collection of DSSI instruments, each with their own configuration restored (and saved), that I could access using the ALSA sequencer interface.

-- Sincerely, Aere



reply via email to

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