Using RoseGarden (Jack method)
- Tested on Ubuntu Mate 20.04.1 x86_64, from the live CD.
- This guide looks rather long but it's very screenshot heavy
- This can be done almost entirely through the GUI after the initial setup is done, hopefully this will help people get more familiar with all the "moving parts" involved.
Prerequisites
sudo apt install rosegarden pulseaudio-module-jack qsynth
A window showed up asking me if I wanted to run jackd with realtime priorities, I selected "Yes". I am not sure if this setup will work if I would have selected "No".
Configuring PulseAudio to work with Jack
Why this is necessary
- When you run Jack, it will pretty much take over the audio system on your OS.
- Most of the sounds in Ubuntu (e.g., system sounds, your browser, etc.) use PulseAudio
- If you want any program on your computer to make sounds while Jack is active, I suggest running this step.
- There are other ways to work around this like having a second sound card, but this can get cumbersome (I can only wear one pair of headphones at a time)
Process
Run these commands
pacmd load-module module-jack-sink
pacmd load-module module-jack-source
pacmd set-default-sink jack_out
(it will run and end displaying no message)
At this point we need to start QSynth, but I think this is a good time to provide a bit of background information:
QSynth
What is QSynth
- QSynth is a GUI frontend to FluidSynth.
- FluidSynth is a SoftSynth
- A SoftSynth is basically a piece of software that interprets MIDI events as sounds.
- A midi event is basically a note being played on a given instrument.
So basically QSynth is what actually "makes the instrument noises" to be played back through your speakers.
What would somebody use instead of FluidSynth?
- There have been a lot of other output devices than a SoftSynth that can interpret MIDI events as sound
- For example, the Roland MT-32 can accept MIDI events and play it in its own (built in to the hardware) soundfont.
- If you had one of these devices, you could have Jack send MIDI output to one of these instead, e.g., over a MIDI cable or USB cable.
Setting up QSynth
For me, this program is in Sound & Video -> QSynth.
You can also start it from command line, starting it with the qsynth
command.

- Click Setup... on the main window

- Go to the soundfonts tab

- Click Open to select a soundfont.
There are some soundfonts in /usr/share/sounds/sf2, you can use these, or provide your own.
Personally I selected FluidR3_GM.sf2 for this test for convenience's sake, because it appears to be downloaded with Fluidsynth but for my own use I use SGM-v2.0.1.sf2
In Ubuntu 19, a user LKTS points out that you may need to also do this step:
- On the Audio tab, set the Audio Driver to "jack"

Click OK, and let it restart the fluidsynth engine. You're done with QSynth but leave it open.
Jack
What is Jack?
Jack stands for JACK Audio Connection Kit.
- If you are trying to search for documentation / help on this online something I would recommend searching for "jack audio connection kit ..."
- There are quite a lot of unrelated search hits for "jack"
- In this setup Jack is responsible for connecting our input (RoseGarden) to our output (QSynth)
Setting up Jack
This tutorial will use QJackCtl. For me this program was found in Sound & Video -> QJackCtl, but you can also start it command line with qjackctl
.
The main window of the UI will look like this:

Click the Connect button to show connectable devices.
Expand All Nodes, your Audio tab should look something like this:

Notes about the audio tab
- I didn't have to do anything here (it was wired up like this by default), but here's some information about this tab:
- The "PulseAudio JACK Sink" inputs are connected to the "system" outputs (playback_1-6), you can think of these playback_# outputs as your speakers.
- capture_1 and capture_2 represent my microphone.
- qsynth left and right are also connected to my speakers, this is how we will hear the midi events (notes) being played through RoseGarden while we are composing.
- If your audio tab is not set up correctly, you may not hear system sounds or Rosegarden sounds.
ALSA Tab: Connecting FluidSynth
- Switch to the ALSA tab and expand all nodes, it should look something like this:

- Click and drag to connect a wire:
- from:
14:Midi Through/0:Midi Through Port-0
on the left
- to
129:FLUID Synth (8169)/0:Synth input port (8169:0)
on the right
The numbers on these entries may be different on your system.
After you do that, it should look like this:

We're done in this window, close the connections window, but leave the Jack window open.
Start RoseGarden
For me the menu entry was just in Sound & Audio -> RoseGarden
If for some reason it's not there, you can run it with just the rosegarden
command.
1. Configure Midi Devices
In the main menu, click Studio -> Manage MIDI Devices
Your setup should look something like this:

2. To test our setup, using the pencil tool, just draw a track somewhere

3. Double click on that track
4. Click to insert notes on the staff
You should hear piano sounds coming from your speakers when you click to insert a note.

Additional note: Drum tracks.
This is a bit off topic from the setup, but I figured I'd include it here.
- If you are adding a drum track, you should set the track to use the D channel.
I guess the "D" stands for "Drums"?

- Then you can right click on the track and use the Percusson Matrix Editor, which will give you a nice labeled interface so you can see which instrument is which.
Testing PulseAudio
At this point I think it is a good idea to verify that the sound on your PC still works.
You should be able to go to a youtube video or play some music on your PC and it should work without shutting down Jack or closing RoseGarden.
Starting RoseGarden after setup
If you want to start RoseGarden after the initial setup, here's what you need to do:
- Start QSynth
- Start QJackCTL
- Run these commands
pacmd load-module module-jack-sink
pacmd load-module module-jack-source
pacmd set-default-sink jack_out
- Start RoseGarden