[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[fluid-dev] Problems With Rosegarden Using Qsynth or Fluidsynth When Usi
From: |
Aere Greenway |
Subject: |
[fluid-dev] Problems With Rosegarden Using Qsynth or Fluidsynth When Using PulseAudio Instead Of JACK |
Date: |
Tue, 29 Jan 2013 10:52:58 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130106 Thunderbird/17.0.2 |
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.
2. Bring up the newly-re-configured Qsynth, which now uses PulseAudio.
If you were using JACK (QjackCtl) before, you may have to reboot before
doing it.
3. In a terminal window, cd to a folder having MIDI ('.mid') files, then
enter the following statement:
pmidi -l
On my machine, it produces the following lines referencing the Qsynth
ports (I have 2 qsynth engines):
129:0 FLUID Synth (Qsynth1) Synth input port (Qsynth1:0)
130:0 FLUID Synth (Qsynth2) Synth input port (Qsynth2:0)
4. In the terminal window, use the information printed by the prior
statement to enter a statement to play a MIDI file. On my machine, I
did the following:
pmidi -p 129:0 TheCarpenters-MaybeItsYou.mid
5. Notice that it plays, and you can hear the sound. Notice that the
indicator light of the engine shows activity. You can terminate it
early after hearing that it plays (control-c will stop it).
6. Launch Rosegarden (it doesn't matter if it is the latest version, or
the oldest version you have). Answer any welcome message.
7. Return to the terminal window without doing anything in the
Rosegarden window (other than answering the welcome message), and
re-enter the statement that you used to play the MIDI-file using pmidi.
Notice that the indicator-light of the Qsynth engine flashes, showing
activity, but also notice that there is no sound. Terminate pmidi using
control-c.
8. Terminate Rosegarden, and repeat step 7, noticing the result (no
sound) is the same.
9. Terminate Qsynth, noticing (if you have a memory-space monitor
running) that the memory used for the soundfonts of both engines is not
released.
10. In the terminal window, enter the following statement:
pmidi -l
You will see that the client and port for the 2nd engine is still there.
11. At this point, the only way to allow Qsynth to produce sound again,
is to reboot. If you log-out, and log back in, the memory will be
reclaimed, but when you fire-up a new Qsynth, and attempt to play the
MIDI-file again, there is still no sound.
It appears that bringing-up Rosegarden is the step that causes the
problem. If instead, I brought up MusE, there was no problem, and MusE
could even use the Qsynth ports for playing. In another test, when I
tried to use the Qsynth ports in Rosegarden for playing, Qsynth showed
activity, but there was no sound.
If you configure Qsynth to use JACK for its audio, you don't encounter
this problem. I use Qsynth with Rosegarden all the time. I'm sure I've
run into this problem before - probably multiple times. But all I
remember of it, is that you have to use jack (the default) with Qsynth.
But before we conclude it to be a problem with Qsynth alone, be aware
that what started me down this line of testing, is that I fired-up
Fluidsynth in a terminal window, using pulseaudio for its audio, and it
worked fine with my new MIDI device.
But when I tried to use it with Rosegarden, though it saw the Fluidsynth
device, and I could map my MIDI playback device to use it, there was no
sound. And that thereafter, though my new MIDI device seemed to be
sending to it okay, but there was no sound. In this case, eventually
error messages started coming out of Fluidsynth, saying it couldn't
allocate (something) for each specific note played.
-- Sincerely, Aere
- [fluid-dev] Problems With Rosegarden Using Qsynth or Fluidsynth When Using PulseAudio Instead Of JACK,
Aere Greenway <=
- Message not available
- Message not available
- Message not available